Content-Type: multipart/related; start=; boundary=----------ovrp3U8y8KC3rcvqsh3ZpB Content-Location: http://www.psychologytoday.com/print/38617 Subject: =?utf-8?Q?Mother=20Guilty=20of=20Murder--Pediatric=20Bipolar=20Disorder=20Innocent?= MIME-Version: 1.0 ------------ovrp3U8y8KC3rcvqsh3ZpB Content-Disposition: inline; filename=38617.htm Content-Type: text/html; charset=utf-8; name=38617.htm Content-ID: Content-Location: http://www.psychologytoday.com/print/38617 Content-Transfer-Encoding: Quoted-Printable Mother Guilty of Murder--Pediatric Bipolar Disorder Innocent<= /title> <meta http-equiv=3D"Content-Type" content=3D"text/html; charset=3Dut= f-8" /> <script type=3D"text/javascript" src=3D"/misc/jquery.js?D"></script>= <script type=3D"text/javascript" src=3D"/misc/drupal.js?D"></script> <script type=3D"text/javascript" src=3D"/sites/all/modules/contrib/light= box2/js/lightbox.js?D"></script> <script type=3D"text/javascript" src=3D"/sites/all/modules/contrib/nice_= menus/nice_menus.js?D"></script> <script type=3D"text/javascript" src=3D"/sites/all/modules/contrib/pngfi= x/jquery.pngFix.js?D"></script> <script type=3D"text/javascript" src=3D"/sites/all/modules/pt/pt_content= /pt-conditions-widget.js?D"></script> <script type=3D"text/javascript" src=3D"/sites/all/modules/contrib/extli= nk/extlink.js?D"></script> <script type=3D"text/javascript" src=3D"/sites/all/themes/pt_www/pt_www.= js?D"></script> <script type=3D"text/javascript"> <!--//--><![CDATA[//><!-- jQuery.extend(Drupal.settings, { "basePath": "/", "googleanalytics": { "= trackOutgoing": 1, "trackMailto": 1, "trackDownload": 1, "trackDownloadE= xtensions": "7z|aac|avi|csv|doc|exe|flv|gif|gz|jpe?g|js|mp(3|4|e?g)|mov|= pdf|phps|png|ppt|rar|sit|tar|torrent|txt|wma|wmv|xls|xml|zip" }, "lightb= ox2": { "rtl": 0, "file_path": "/(\\w\\w/)files", "default_image": "/sit= es/all/modules/contrib/lightbox2/images/brokenimage.jpg", "border_size":= "10", "font_color": "000", "box_color": "fff", "top_position": "", "ove= rlay_opacity": "0.8", "overlay_color": "000", "disable_close_click": 1, = "resize_sequence": "0", "resize_speed": 400, "fade_in_speed": 400, "slid= e_down_speed": 600, "use_alt_layout": 0, "disable_resize": 0, "disable_z= oom": 1, "force_show_nav": 1, "loop_items": 0, "node_link_text": "", "no= de_link_target": "_blank", "image_count": "Image !current of !total", "v= ideo_count": "Video !current of !total", "page_count": "Page !current of= !total", "lite_press_x_close": "press \x3ca href=3D\"#\" onclick=3D\"hi= deLightbox(); return FALSE;\"\x3e\x3ckbd\x3ex\x3c/kbd\x3e\x3c/a\x3e to c= lose", "download_link_text": "", "enable_login": false, "enable_contact"= : false, "keys_close": "c x 27", "keys_previous": "p 37", "keys_next": "= n 39", "keys_zoom": "z", "keys_play_pause": "32", "display_image_size": = "", "image_node_sizes": "()", "trigger_lightbox_classes": "", "trigger_l= ightbox_group_classes": "", "trigger_slideshow_classes": "", "trigger_li= ghtframe_classes": "", "trigger_lightframe_group_classes": "", "custom_c= lass_handler": 0, "custom_trigger_classes": "", "disable_for_gallery_lis= ts": true, "disable_for_acidfree_gallery_lists": true, "enable_acidfree_= videos": true, "slideshow_interval": 5000, "slideshow_automatic_start": = true, "slideshow_automatic_exit": true, "show_play_pause": true, "pause_= on_next_click": false, "pause_on_previous_click": true, "loop_slides": f= alse, "iframe_width": 600, "iframe_height": 400, "iframe_border": 1, "en= able_video": 0 }, "extlink": { "extTarget": "_blank", "extClass": "ext",= "extSubdomains": 1, "extExclude": "(psychologytoday\\.psychtests\\.com)= |(psychologytoday\\.tests\\.psychtests\\.com)|(healthprofs\\.com)|(build= ingpros\\.com)|(sussexdirectories\\.com)|(argifocus\\.com)|(psychologyto= day\\.com)|(www.neodata\\.com)|(www2.neodata\\.com)", "extInclude": "", = "extAlert": 0, "extAlertText": "This link will take you to an external w= eb site. We are not responsible for their content.", "mailtoClass": "mai= lto" }, "pt_stats": { "node_print": { "id": "38617", "type": "node", "no= de_type": "blog_entry", "uid": "56" } } }); //--><!]]> </script> <script type=3D"text/javascript"> <!--//--><![CDATA[//><!-- $(document).ready(function(){ $('.author-image,.ui-tabs-panel,#feature-t= abs-overlay-container,.node-feature,.pngfix').pngFix(); }); //--><!]]> </script> <meta name=3D'robots' content=3D'noindex, nofollow, noarchive' /> <base href=3D'http://www.psychologytoday.com/blog/the-last-normal-ch= ild/201002/mother-guilty-murder-pediatric-bipolar-disorder-innocent' /> <link rel=3D'shortcut icon' href=3D'/files/pt_favicon.ico' type=3D'i= mage/x-icon' /> <link type=3D"text/css" rel=3D"stylesheet" media=3D"all" href=3D"/mo= dules/book/book.css?D" /> <link type=3D"text/css" rel=3D"stylesheet" media=3D"all" href=3D"/module= s/node/node.css?D" /> <link type=3D"text/css" rel=3D"stylesheet" media=3D"all" href=3D"/module= s/poll/poll.css?D" /> <link type=3D"text/css" rel=3D"stylesheet" media=3D"all" href=3D"/module= s/system/defaults.css?D" /> <link type=3D"text/css" rel=3D"stylesheet" media=3D"all" href=3D"/module= s/system/system.css?D" /> <link type=3D"text/css" rel=3D"stylesheet" media=3D"all" href=3D"/module= s/system/system-menus.css?D" /> <link type=3D"text/css" rel=3D"stylesheet" media=3D"all" href=3D"/module= s/user/user.css?D" /> <link type=3D"text/css" rel=3D"stylesheet" media=3D"all" href=3D"/sites/= all/modules/contrib/amazon/amazon.css?D" /> <link type=3D"text/css" rel=3D"stylesheet" media=3D"all" href=3D"/sites/= all/modules/contrib/cck/theme/content-module.css?D" /> <link type=3D"text/css" rel=3D"stylesheet" media=3D"all" href=3D"/sites/= all/modules/contrib/date/date.css?D" /> <link type=3D"text/css" rel=3D"stylesheet" media=3D"all" href=3D"/sites/= all/modules/contrib/date/date_popup/themes/datepicker.css?D" /> <link type=3D"text/css" rel=3D"stylesheet" media=3D"all" href=3D"/sites/= all/modules/contrib/date/date_popup/themes/timeentry.css?D" /> <link type=3D"text/css" rel=3D"stylesheet" media=3D"all" href=3D"/sites/= all/modules/contrib/filefield/filefield.css?D" /> <link type=3D"text/css" rel=3D"stylesheet" media=3D"all" href=3D"/sites/= all/modules/contrib/lightbox2/css/lightbox.css?D" /> <link type=3D"text/css" rel=3D"stylesheet" media=3D"all" href=3D"/sites/= all/modules/contrib/nice_menus/nice_menus.css?D" /> <link type=3D"text/css" rel=3D"stylesheet" media=3D"all" href=3D"/sites/= all/modules/contrib/nice_menus/nice_menus_default.css?D" /> <link type=3D"text/css" rel=3D"stylesheet" media=3D"all" href=3D"/sites/= all/modules/contrib/extlink/extlink.css?D" /> <link type=3D"text/css" rel=3D"stylesheet" media=3D"all" href=3D"/sites/= all/modules/contrib/cck/modules/fieldgroup/fieldgroup.css?D" /> <link type=3D"text/css" rel=3D"stylesheet" media=3D"all" href=3D"/sites/= all/modules/contrib/print/css/print.css?D" /> </head> <body> <div class=3D"print-site_name">Published on <em>Psychology Today</em= > (<a href=3D"http://www.psychologytoday.com">http://www.psychologytoday= .com</a>)</div> <br /> <hr class=3D"print-hr" /> <h1 class=3D"print-title">Mother Guilty of Murder--Pediatric Bipolar= Disorder Innocent</h1> <div class=3D"print-submitted">By <em>Lawrence Diller, M.D.</e= m></div> <div class=3D"print-created">Created <em>Feb 20 2010 - 2:38pm</e= m></div> <div class=3D"print-content"><a href=3D"/basics/laughter" title=3D"P= sychology Today looks at Laughter" class=3D"pt-basics-link"> </a><p>On F= ebruary 9th a jury at the Plymouth Superior Court in Massachusetts convi= cted Carolyn Riley of second degree murder of her daughter, Rebecca, a 4= year old, who died three years ago. Rebecca's father, Michael, will be= tried separately for first degree murder next month. A county coroner = determined an overdose of the <a href=3D"/basics/psychopharmacology" tit= le=3D"Psychology Today looks at Psychopharmacology" class=3D"pt-basics-l= ink">medication</a>, clonidine obtained from a child psychiatrist, cause= d Rebecca's death. Prosecutors maintained that the <a href=3D"/basics/p= arenting" title=3D"Psychology Today looks at Parenting" class=3D"pt-basi= cs-link">parents</a> intentionally overdosed their daughter to "keep her= quiet". Apparently the jury didn't accept the parents' defense which h= ad them "just following the doctor's orders."</p><p>In essence, Kayoko K= ifuji, the child psychiatrist who prescribed clonidine to Rebecca, was e= xonerated with the mother's conviction. Kifuji worked at the Tufts New E= ngland Medical Center. She also prescribed two other medications to Reb= ecca used frequently in children's <a href=3D"/basics/psychiatry" title=3D= "Psychology Today looks at Psychiatry" class=3D"pt-basics-link">psychiat= ric</a> problems, Seroquel, approved for use by the Food and Drug Admini= stration (FDA) for treating <a href=3D"/conditions/schizophrenia" title=3D= "Psychology Today looks at Schizophrenia" class=3D"pt-basics-link">schiz= ophrenia</a> and Depakote, studied and approved for epilepsy. Clonidine= , also known as Catapress, was approved and studied for the treatment of= hypertension. However, all three drugs are widely used in the treatmen= t of pediatric <a href=3D"/basics/bipolar-disorder" title=3D"Psychology = Today looks at Bipolar Disorder" class=3D"pt-basics-link">bipolar disord= er</a> - although the FDA has approved none of them for this use. All t= hree are potentially heavily sedating.</p><p>In America doctors have the= equivalent power afforded gun owners by the "right to bear arms" second= amendment to the Constitution. Once awarded a medical license a doctor= can prescribe any drug approved by the FDA for any purpose. The doctor= is guided by her medical judgment and <a href=3D"/basics/morality" titl= e=3D"Psychology Today looks at Morality" class=3D"pt-basics-link">ethics= </a>. However, doctors can be sued or have their licenses terminated if= their treatment does not conform to "current medical standards."</p><p>= Dr. Kifuji determined that Rebecca at age two had hyperactivity and bega= n prescribing drugs to her at that time. Kifuji changed her diagnosis t= o bipolar disorder at age three. She also made the same diagnosis for R= ebecca's brother and sister who were nine and seven. All three were rec= eiving variations of these sedating psychiatric medications. Kifuji, wh= o was granted immunity against prosecution to gain her <a href=3D"/basic= s/teamwork" title=3D"Psychology Today looks at Teamwork" class=3D"pt-bas= ics-link">cooperation</a>, testified during the trial that she relied al= most exclusively on reports from Rebecca's mother on the children's aggr= essive behavior, <a href=3D"/basics/sleep" title=3D"Psychology Today loo= ks at Sleep" class=3D"pt-basics-link">sleep</a> problems and history of = mental illness in the family to make the diagnosis for the three childre= n.</p><p>When Rebecca died, Dr. Kifuji initially withdrew from practice.= Her license was temporarily suspended. But she is now back working at = Tufts. Right from the start, the University defended her, saying her pr= actice with Rebecca was" within medical standards." Subsequently Kifuji= , herself, underwent hours of testimony in front of a grand jury but was= not indicted. The Board of Registration in Medicine, Massachusetts' me= dical licensing organization, also allowed her last year to return to pr= actice.</p><p>Yet when I tell non-psychiatric colleagues and friends tha= t a three year old was prescribed three psychiatric drugs for bipolar di= sorder, they are uniformly incredulous or shocked. So apparently were t= he jurors. Requesting anonymity after the trial, jurors told the Boston= Globe, "Every one of us was very angry. Dr. Kifuji should be sitting in= the defendant's chair, too. It blew me away." Clearly the jurors and mo= st of the country were unaware of this practice of medicating younger an= d younger children with these powerful drugs.</p><p>However, it is not a= ll that surprising that Tufts and the licensing board backed Kifuji's ac= tions. It is only about 27 miles between where she worked and the Massa= chusetts General Hospital where Joseph Biederman, head of Harvard's Pedi= atric Psychopharmacology Clinic, has long espoused the <a href=3D"/condi= tions/bipolar-disorder" title=3D"Psychology Today looks at Bipolar Disor= der" class=3D"pt-basics-link">bipolar</a> diagnosis in children. He and= his group have claimed the diagnosis can be made in children as young a= s two and should be followed by aggressive psychiatric drug intervention= s. I wonder if this crime had taken place anywhere in the country but N= ew England whether the powers that be would have been as supportive of K= ifuji.</p><p>Biederman has been arguably the most powerful and influenti= al child psychiatrist in the country. Drug companies, eager to promote = his views and their wares to other doctors, paid and flew him all over t= he country. More recently his "science" has come under scrutiny over a = series of conflict of interest charges with the drug industry. Even bef= ore his public scandals, the American Academy of Child and Adolescent Ps= ychiatry, the official organization of American child psychiatry, publis= hed guidelines declaring that bipolar disorder could not be diagnosed in= children under six and was a difficult diagnosis to establish in any pr= e-teen child.</p><p>A psychiatrist cynically once remarked, "<a href=3D"= /basics/addadhd" title=3D"Psychology Today looks at ADD/ADHD" class=3D"p= t-basics-link">ADHD</a> drugs are for irritable and irritating kids. Bi= polar drugs are for very irritable and very irritating kids." The point= is even with controversy over the bipolar diagnosis, the use of anti-ps= ychotic drugs like Seroquel, Risperdal and Zyprexa in the five and under= population has doubled in the last five years, particularly among Medic= aid and foster children. There are several hundred thousand toddlers in= America currently being managed (sedated) by their parents and doctors = with these drugs.</p><p>Clearly, Kifuji didn't literally put the teaspoo= ns of clonidine that killed Rebecca into her mouth. Still, like gun man= ufacturers who claim they bear no responsibility when someone misuses a = handgun for murder, there's something disingenuous about a doctor who pr= escribed these drugs and then acknowledges no moral culpability in the d= eath of this unfortunate child.</p><p>I question whether the bipolar dia= gnosis can be reliably made in any child. The new version of the Diagno= stic Statistical Manual of Psychiatry V, "the bible" of American Psychia= try is due out in 2013. In news releases anticipating its publication, = the plan apparently is to junk the bipolar diagnosis in children for som= ething called temper dysregulation disorder emphasizing the transient na= ture of the problem (as opposed to the life long implications of bipolar= disorder diagnosis) and an emphasis on changing the children's environm= ent rather than using drugs.</p><p>So many of these children currently d= iagnosed as bipolar come from chaotic and turbulent family environments.= Still I can imagine situations where these drugs, whatever label is ap= plied to the children, will be used. I don't <a href=3D"/basics/jealous= y" title=3D"Psychology Today looks at Jealousy" class=3D"pt-basics-link"= >envy</a> Kifuji and other child psychiatrists who work with indigent fa= milies with problem kids. Non-drug interventions, particularly family a= nd parenting therapies are hard to come by and deliver. The child psych= iatrist and her medications may be the last resort for keeping these chi= ldren in their home and out of foster care where they are even more like= ly to get multiple medications. I am glad I don't have to face that eth= ical decision several time a day in a busy tertiary care university clin= ic.</p><p>Those that support and back pediatric bipolar disorder and its= treatment have an obligation to speak out about the abuse of these drug= s in the sedation and occasional deaths of children. Their silence in t= his case has been deafening. Unfortunately, it will take several more R= ebecca Riley tragedies before the public makes it unacceptable for docto= rs to put these drugs in hands of parents to manage or mismanage the beh= avior of their very young children.</p><p> </p> </div> <div class=3D"print-footer"></div> <hr class=3D"print-hr" /> <div class=3D"print-source_url"><strong>Source URL:</strong> <a href= =3D"http://www.psychologytoday.com/node/38617">http://www.psychologytoda= y.com/node/38617</a></div> <div class=3D"print-links"><p><strong>Links:</strong><br />[1] http:= //www.psychologytoday.com/files/teaser/2010/02/images.jpg<br /> [2] http://www.psychologytoday.com/blog/the-last-normal-child<br /> </p></div> </body> </html> ------------ovrp3U8y8KC3rcvqsh3ZpB Content-Disposition: inline; filename=jquery.js Content-Type: application/javascript; charset=utf-8; name=jquery.js Content-Location: http://www.psychologytoday.com/misc/jquery.js?D Content-Transfer-Encoding: Base64 Ly8gJElkOiBqcXVlcnkuanMsdiAxLjEyLjIuMyAyMDA4LzA2LzI1IDA5OjM4OjM5 IGdvYmEgRXhwICQgCgovKgogKiBqUXVlcnkgMS4yLjYgLSBOZXcgV2F2ZSBKYXZh c2NyaXB0CiAqCiAqIENvcHlyaWdodCAoYykgMjAwOCBKb2huIFJlc2lnIChqcXVl cnkuY29tKQogKiBEdWFsIGxpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgKE1JVC1MSUNF TlNFLnR4dCkKICogYW5kIEdQTCAoR1BMLUxJQ0VOU0UudHh0KSBsaWNlbnNlcy4K ICoKICogRGF0ZTogMjAwOC0wNS0yNCAxNDoyMjoxNyAtMDQwMCAoU2F0LCAyNCBN YXkgMjAwOCkKICogUmV2OiA1Njg1CiAqLwpldmFsKGZ1bmN0aW9uKHAsYSxjLGss ZSxyKXtlPWZ1bmN0aW9uKGMpe3JldHVybihjPGE/Jyc6ZShwYXJzZUludChjL2Ep KSkrKChjPWMlYSk+MzU/U3RyaW5nLmZyb21DaGFyQ29kZShjKzI5KTpjLnRvU3Ry aW5nKDM2KSl9O2lmKCEnJy5yZXBsYWNlKC9eLyxTdHJpbmcpKXt3aGlsZShjLS0p cltlKGMpXT1rW2NdfHxlKGMpO2s9W2Z1bmN0aW9uKGUpe3JldHVybiByW2VdfV07 ZT1mdW5jdGlvbigpe3JldHVybidcXHcrJ307Yz0xfTt3aGlsZShjLS0paWYoa1tj XSlwPXAucmVwbGFjZShuZXcgUmVnRXhwKCdcXGInK2UoYykrJ1xcYicsJ2cnKSxr W2NdKTtyZXR1cm4gcH0oJyhIKCl7SiB3PTFiLjRNLDNtJD0xYi4kO0ogRD0xYi40 TT0xYi4kPUgoYSxiKXtJIDJCIEQuMTcuNWooYSxiKX07SiB1PS9eW148XSooPCgu fFxccykrPilbXj5dKiR8XiMoXFx3KykkLyw2Mj0vXi5bXjojXFxbXFwuXSokLywx MjtELjE3PUQuNDQ9ezVqOkgoZCxiKXtkPWR8fFM7RyhkLjE2KXs3WzBdPWQ7Ny5L PTE7SSA3fUcoMWogZD09IjIzIil7SiBjPXUuMkQoZCk7RyhjJiYoY1sxXXx8IWIp KXtHKGNbMV0pZD1ELjRoKFtjWzFdXSxiKTtOe0ogYT1TLjYxKGNbM10pO0coYSl7 RyhhLjJ2IT1jWzNdKUkgRCgpLjJxKGQpO0kgRChhKX1kPVtdfX1OIEkgRChiKS4y cShkKX1OIEcoRC4xRChkKSlJIEQoUylbRC4xNy4yNz8iMjciOiI0MyJdKGQpO0kg Ny42WShELjJkKGQpKX0sNXc6IjEuMi42Iiw4RzpIKCl7SSA3Lkt9LEs6MCwzcDpI KGEpe0kgYT09MTI/RC4yZCg3KTo3W2FdfSwySTpIKGIpe0ogYT1EKGIpO2EuNW49 NztJIGF9LDZZOkgoYSl7Ny5LPTA7MnAuNDQuMXAuMXcoNyxhKTtJIDd9LFA6SChh LGIpe0kgRC5QKDcsYSxiKX0sNWk6SChiKXtKIGE9LTE7SSBELjJMKGImJmIuNXc/ YlswXTpiLDcpfSwxSzpIKGMsYSxiKXtKIGQ9YztHKGMuMXE9PTU2KUcoYT09PTEy KUkgN1swXSYmRFtifHwiMUsiXSg3WzBdLGMpO057ZD17fTtkW2NdPWF9SSA3LlAo SChpKXtSKGMgMW4gZClELjFLKGI/Ny5WOjcsYyxELjFpKDcsZFtjXSxiLGksYykp fSl9LDFnOkgoYixhKXtHKChiPT1cJzJoXCd8fGI9PVwnMVpcJykmJjNkKGEpPDAp YT0xMjtJIDcuMUsoYixhLCIyYSIpfSwxcjpIKGIpe0coMWogYiE9IjQ5IiYmYiE9 VSlJIDcuNEUoKS4zdigoN1swXSYmN1swXS4yenx8UykuNUYoYikpO0ogYT0iIjtE LlAoYnx8NyxIKCl7RC5QKDcuM3QsSCgpe0coNy4xNiE9OClhKz03LjE2IT0xPzcu NzY6RC4xNy4xcihbN10pfSl9KTtJIGF9LDV6OkgoYil7Ryg3WzBdKUQoYiw3WzBd LjJ6KS41eSgpLjM5KDdbMF0pLjJsKEgoKXtKIGE9NzsxQihhLjF4KWE9YS4xeDtJ IGF9KS4zdig3KTtJIDd9LDhZOkgoYSl7SSA3LlAoSCgpe0QoNykuNlEoKS41eihh KX0pfSw4UjpIKGEpe0kgNy5QKEgoKXtEKDcpLjV6KGEpfSl9LDN2OkgoKXtJIDcu M1coMTksTSxRLEgoYSl7Ryg3LjE2PT0xKTcuM1UoYSl9KX0sNkY6SCgpe0kgNy4z VygxOSxNLE0sSChhKXtHKDcuMTY9PTEpNy4zOShhLDcuMXgpfSl9LDZFOkgoKXtJ IDcuM1coMTksUSxRLEgoYSl7Ny4xZC4zOShhLDcpfSl9LDVxOkgoKXtJIDcuM1co MTksUSxNLEgoYSl7Ny4xZC4zOShhLDcuMkgpfSl9LDNsOkgoKXtJIDcuNW58fEQo W10pfSwycTpIKGIpe0ogYz1ELjJsKDcsSChhKXtJIEQuMnEoYixhKX0pO0kgNy4y SSgvW14rPl0gW14rPl0vLjExKGIpfHxiLjFoKCIuLiIpPi0xP0QuNHIoYyk6Yyl9 LDV5OkgoZSl7SiBmPTcuMmwoSCgpe0coRC4xNC4xZiYmIUQuNG4oNykpe0ogYT03 LjZvKE0pLDVoPVMuM2goIjF2Iik7NWguM1UoYSk7SSBELjRoKFs1aC40SF0pWzBd fU4gSSA3LjZvKE0pfSk7SiBkPWYuMnEoIioiKS41YygpLlAoSCgpe0coN1tFXSE9 MTIpN1tFXT1VfSk7RyhlPT09TSk3LjJxKCIqIikuNWMoKS5QKEgoaSl7Ryg3LjE2 PT0zKUk7SiBjPUQuTCg3LCIzdyIpO1IoSiBhIDFuIGMpUihKIGIgMW4gY1thXSlE LlcuMWUoZFtpXSxhLGNbYV1bYl0sY1thXVtiXS5MKX0pO0kgZn0sMUU6SChiKXtJ IDcuMkkoRC4xRChiKSYmRC4zQyg3LEgoYSxpKXtJIGIuMWsoYSxpKX0pfHxELjNn KGIsNykpfSw0WTpIKGIpe0coYi4xcT09NTYpRyg2Mi4xMShiKSlJIDcuMkkoRC4z ZyhiLDcsTSkpO04gYj1ELjNnKGIsNyk7SiBhPWIuSyYmYltiLkstMV0hPT0xMiYm IWIuMTY7SSA3LjFFKEgoKXtJIGE/RC4yTCg3LGIpPDA6NyE9Yn0pfSwxZTpIKGEp e0kgNy4ySShELjRyKEQuMlIoNy4zcCgpLDFqIGE9PVwnMjNcJz9EKGEpOkQuMmQo YSkpKSl9LDNGOkgoYSl7SSEhYSYmRC4zZyhhLDcpLks+MH0sN1Q6SChhKXtJIDcu M0YoIi4iK2EpfSw2ZTpIKGIpe0coYj09MTIpe0coNy5LKXtKIGM9N1swXTtHKEQu WShjLCIyQSIpKXtKIGU9Yy42NCw2Mz1bXSwxNT1jLjE1LDJWPWMuTz09IjJBLTJW IjtHKGU8MClJIFU7UihKIGk9MlY/ZTowLDJmPTJWP2UrMToxNS5LO2k8MmY7aSsr KXtKIGQ9MTVbaV07RyhkLjJXKXtiPUQuMTQuMWYmJiFkLmF0LjJ4LmFuP2QuMXI6 ZC4yeDtHKDJWKUkgYjs2My4xcChiKX19SSA2M31OIEkoN1swXS4yeHx8IiIpLjFv KC9cXHIvZywiIil9SSAxMn1HKGIuMXE9PTRMKWIrPVwnXCc7SSA3LlAoSCgpe0co Ny4xNiE9MSlJO0coYi4xcT09MnAmJi81T3w1TC8uMTEoNy5PKSk3LjRKPShELjJM KDcuMngsYik+PTB8fEQuMkwoNy4zNCxiKT49MCk7TiBHKEQuWSg3LCIyQSIpKXtK IGE9RC4yZChiKTtEKCI5UiIsNykuUChIKCl7Ny4yVz0oRC4yTCg3LjJ4LGEpPj0w fHxELjJMKDcuMXIsYSk+PTApfSk7RyghYS5LKTcuNjQ9LTF9TiA3LjJ4PWJ9KX0s Mks6SChhKXtJIGE9PTEyPyg3WzBdPzdbMF0uNEg6VSk6Ny40RSgpLjN2KGEpfSw3 YjpIKGEpe0kgNy41cShhKS4yMSgpfSw3OTpIKGkpe0kgNy4zcyhpLGkrMSl9LDNz OkgoKXtJIDcuMkkoMnAuNDQuM3MuMXcoNywxOSkpfSwybDpIKGIpe0kgNy4ySShE LjJsKDcsSChhLGkpe0kgYi4xayhhLGksYSl9KSl9LDVjOkgoKXtJIDcuMWUoNy41 bil9LEw6SChkLGIpe0ogYT1kLjFSKCIuIik7YVsxXT1hWzFdPyIuIithWzFdOiIi O0coYj09PTEyKXtKIGM9Ny41QygiOXoiK2FbMV0rIiEiLFthWzBdXSk7RyhjPT09 MTImJjcuSyljPUQuTCg3WzBdLGQpO0kgYz09PTEyJiZhWzFdPzcuTChhWzBdKTpj fU4gSSA3LjFQKCI5dSIrYVsxXSsiISIsW2FbMF0sYl0pLlAoSCgpe0QuTCg3LGQs Yil9KX0sM2I6SChhKXtJIDcuUChIKCl7RC4zYig3LGEpfSl9LDNXOkgoZyxmLGgs ZCl7SiBlPTcuSz4xLDN4O0kgNy5QKEgoKXtHKCEzeCl7M3g9RC40aChnLDcuMnop O0coaCkzeC45bygpfUogYj03O0coZiYmRC5ZKDcsIjFUIikmJkQuWSgzeFswXSwi NEYiKSliPTcuM0goIjIyIilbMF18fDcuM1UoNy4yei4zaCgiMjIiKSk7SiBjPUQo W10pO0QuUCgzeCxIKCl7SiBhPWU/RCg3KS41eShNKVswXTo3O0coRC5ZKGEsIjFt IikpYz1jLjFlKGEpO057RyhhLjE2PT0xKWM9Yy4xZShEKCIxbSIsYSkuMjEoKSk7 ZC4xayhiLGEpfX0pO2MuUCg2VCl9KX19O0QuMTcuNWouNDQ9RC4xNztIIDZUKGks YSl7RyhhLjRkKUQuM1koezFhOmEuNGQsMzE6USwxTzoiMW0ifSk7TiBELjV1KGEu MXJ8fGEuNk98fGEuNEh8fCIiKTtHKGEuMWQpYS4xZC4zNyhhKX1IIDF6KCl7SSsy QiA4Sn1ELjFsPUQuMTcuMWw9SCgpe0ogYj0xOVswXXx8e30saT0xLEs9MTkuSyw0 eD1RLDE1O0coYi4xcT09OEkpezR4PWI7Yj0xOVsxXXx8e307aT0yfUcoMWogYiE9 IjQ5IiYmMWogYiE9IkgiKWI9e307RyhLPT1pKXtiPTc7LS1pfVIoO2k8SztpKysp RygoMTU9MTlbaV0pIT1VKVIoSiBjIDFuIDE1KXtKIGE9YltjXSwydz0xNVtjXTtH KGI9PT0ydyk2TTtHKDR4JiYydyYmMWogMnc9PSI0OSImJiEydy4xNiliW2NdPUQu MWwoNHgsYXx8KDJ3LkshPVU/W106e30pLDJ3KTtOIEcoMnchPT0xMiliW2NdPTJ3 fUkgYn07SiBFPSI0TSIrMXooKSw2Sz0wLDVyPXt9LDZHPS96LT81aXw4Qi0/OEF8 MXl8NkJ8OHYtPzFaL2ksM1A9Uy4zUHx8e307RC4xbCh7OHU6SChhKXsxYi4kPTNt JDtHKGEpMWIuNE09dztJIER9LDFEOkgoYSl7SSEhYSYmMWogYSE9IjIzIiYmIWEu WSYmYS4xcSE9MnAmJi9eW1xcc1tdP0gvLjExKGErIiIpfSw0bjpIKGEpe0kgYS4x QyYmIWEuMWN8fGEuMmomJmEuMnomJiFhLjJ6LjFjfSw1dTpIKGEpe2E9RC4zayhh KTtHKGEpe0ogYj1TLjNIKCI2dyIpWzBdfHxTLjFDLDFtPVMuM2goIjFtIik7MW0u Tz0iMXIvNHQiO0coRC4xNC4xZikxbS4xcj1hO04gMW0uM1UoUy41RihhKSk7Yi4z OSgxbSxiLjF4KTtiLjM3KDFtKX19LFk6SChiLGEpe0kgYi5ZJiZiLlkuMnIoKT09 YS4ycigpfSwxWTp7fSxMOkgoYyxkLGIpe2M9Yz09MWI/NXI6YztKIGE9Y1tFXTtH KCFhKWE9Y1tFXT0rKzZLO0coZCYmIUQuMVlbYV0pRC4xWVthXT17fTtHKGIhPT0x MilELjFZW2FdW2RdPWI7SSBkP0QuMVlbYV1bZF06YX0sM2I6SChjLGIpe2M9Yz09 MWI/NXI6YztKIGE9Y1tFXTtHKGIpe0coRC4xWVthXSl7MlUgRC4xWVthXVtiXTti PSIiO1IoYiAxbiBELjFZW2FdKTFYO0coIWIpRC4zYihjKX19TnsxVXsyVSBjW0Vd fTFWKGUpe0coYy41bCljLjVsKEUpfTJVIEQuMVlbYV19fSxQOkgoZCxhLGMpe0og ZSxpPTAsSz1kLks7RyhjKXtHKEs9PTEyKXtSKGUgMW4gZClHKGEuMXcoZFtlXSxj KT09PVEpMVh9TiBSKDtpPEs7KUcoYS4xdyhkW2krK10sYyk9PT1RKTFYfU57RyhL PT0xMil7UihlIDFuIGQpRyhhLjFrKGRbZV0sZSxkW2VdKT09PVEpMVh9TiBSKEog Yj1kWzBdO2k8SyYmYS4xayhiLGksYikhPT1RO2I9ZFsrK2ldKXt9fUkgZH0sMWk6 SChiLGEsYyxpLGQpe0coRC4xRChhKSlhPWEuMWsoYixpKTtJIGEmJmEuMXE9PTRM JiZjPT0iMmEiJiYhNkcuMTEoZCk/YSsiMlgiOmF9LDFGOnsxZTpIKGMsYil7RC5Q KChifHwiIikuMVIoL1xccysvKSxIKGksYSl7RyhjLjE2PT0xJiYhRC4xRi4zVChj LjFGLGEpKWMuMUYrPShjLjFGPyIgIjoiIikrYX0pfSwyMTpIKGMsYil7RyhjLjE2 PT0xKWMuMUY9YiE9MTI/RC4zQyhjLjFGLjFSKC9cXHMrLyksSChhKXtJIUQuMUYu M1QoYixhKX0pLjZzKCIgIik6IiJ9LDNUOkgoYixhKXtJIEQuMkwoYSwoYi4xRnx8 YikuNnIoKS4xUigvXFxzKy8pKT4tMX19LDZxOkgoYixjLGEpe0ogZT17fTtSKEog ZCAxbiBjKXtlW2RdPWIuVltkXTtiLlZbZF09Y1tkXX1hLjFrKGIpO1IoSiBkIDFu IGMpYi5WW2RdPWVbZF19LDFnOkgoZCxlLGMpe0coZT09IjJoInx8ZT09IjFaIil7 SiBiLDNYPXszMDoiNXgiLDVnOiIxRyIsMTg6IjNJIn0sMzU9ZT09IjJoIj9bIjVl IiwiNmsiXTpbIjVHIiwiNmkiXTtIIDViKCl7Yj1lPT0iMmgiP2QuOGY6ZC44YztK IGE9MCwyQz0wO0QuUCgzNSxIKCl7YSs9M2QoRC4yYShkLCI1NyIrNyxNKSl8fDA7 MkMrPTNkKEQuMmEoZCwiMkMiKzcrIjRiIixNKSl8fDB9KTtiLT0yOS44MyhhKzJD KX1HKEQoZCkuM0YoIjo0aiIpKTViKCk7TiBELjZxKGQsM1gsNWIpO0kgMjkuMmYo MCxiKX1JIEQuMmEoZCxlLGMpfSwyYTpIKGYsbCxrKXtKIGUsVj1mLlY7SCAzRShi KXtHKCFELjE0LjJrKUkgUTtKIGE9M1AuNTQoYixVKTtJIWF8fGEuNTIoIjNFIik9 PSIifUcobD09IjF5IiYmRC4xNC4xZil7ZT1ELjFLKFYsIjF5Iik7SSBlPT0iIj8i MSI6ZX1HKEQuMTQuMkcmJmw9PSIxOCIpe0ogZD1WLjUwO1YuNTA9IjAgN1kgN1ci O1YuNTA9ZH1HKGwuMUkoLzRpL2kpKWw9eTtHKCFrJiZWJiZWW2xdKWU9VltsXTtO IEcoM1AuNTQpe0cobC4xSSgvNGkvaSkpbD0iNGkiO2w9bC4xbygvKFtBLVpdKS9n LCItJDEiKS4zeSgpO0ogYz0zUC41NChmLFUpO0coYyYmITNFKGYpKWU9Yy41Mihs KTtOe0ogZz1bXSwyRT1bXSxhPWYsaT0wO1IoO2EmJjNFKGEpO2E9YS4xZCkyRS42 aChhKTtSKDtpPDJFLks7aSsrKUcoM0UoMkVbaV0pKXtnW2ldPTJFW2ldLlYuMTg7 MkVbaV0uVi4xOD0iM0kifWU9bD09IjE4IiYmZ1syRS5LLTFdIT1VPyIyRiI6KGMm JmMuNTIobCkpfHwiIjtSKGk9MDtpPGcuSztpKyspRyhnW2ldIT1VKTJFW2ldLlYu MTg9Z1tpXX1HKGw9PSIxeSImJmU9PSIiKWU9IjEifU4gRyhmLjRnKXtKIGg9bC4x bygvXFwtKFxcdykvZyxIKGEsYil7SSBiLjJyKCl9KTtlPWYuNGdbbF18fGYuNGdb aF07RyghL15cXGQrKDJYKT8kL2kuMTEoZSkmJi9eXFxkLy4xMShlKSl7SiBqPVYu MUEsNjY9Zi42NS4xQTtmLjY1LjFBPWYuNGcuMUE7Vi4xQT1lfHwwO2U9Vi5hTSsi MlgiO1YuMUE9ajtmLjY1LjFBPTY2fX1JIGV9LDRoOkgobCxoKXtKIGs9W107aD1o fHxTO0coMWogaC4zaD09XCcxMlwnKWg9aC4yenx8aFswXSYmaFswXS4yenx8UztE LlAobCxIKGksZCl7RyghZClJO0coZC4xcT09NEwpZCs9XCdcJztHKDFqIGQ9PSIy MyIpe2Q9ZC4xbygvKDwoXFx3KylbXj5dKj8pXFwvPi9nLEgoYixhLGMpe0kgYy4x SSgvXihhS3w0Znw3RXxhR3w0VHw3QXxhQnwzbnxhenxheXxhdikkL2kpP2I6YSsi PjwvIitjKyI+In0pO0ogZj1ELjNrKGQpLjN5KCksMXY9aC4zaCgiMXYiKTtKIGU9 IWYuMWgoIjxhdSIpJiZbMSwiPDJBIDd3PVwnN3dcJz4iLCI8LzJBPiJdfHwhZi4x aCgiPGFyIikmJlsxLCI8N3Y+IiwiPC83dj4iXXx8Zi4xSSgvXjwoYXF8MjJ8YW18 YWt8YWkpLykmJlsxLCI8MVQ+IiwiPC8xVD4iXXx8IWYuMWgoIjw0RiIpJiZbMiwi PDFUPjwyMj4iLCI8LzIyPjwvMVQ+Il18fCghZi4xaCgiPGFmIil8fCFmLjFoKCI8 YWQiKSkmJlszLCI8MVQ+PDIyPjw0Rj4iLCI8LzRGPjwvMjI+PC8xVD4iXXx8IWYu MWgoIjw3RSIpJiZbMiwiPDFUPjwyMj48LzIyPjw3cT4iLCI8LzdxPjwvMVQ+Il18 fEQuMTQuMWYmJlsxLCIxdjwxdj4iLCI8LzF2PiJdfHxbMCwiIiwiIl07MXYuNEg9 ZVsxXStkK2VbMl07MUIoZVswXS0tKTF2PTF2LjVUO0coRC4xNC4xZil7SiBnPSFm LjFoKCI8MVQiKSYmZi4xaCgiPDIyIik8MD8xdi4xeCYmMXYuMXguM3Q6ZVsxXT09 IjwxVD4iJiZmLjFoKCI8MjIiKTwwPzF2LjN0OltdO1IoSiBqPWcuSy0xO2o+PTA7 LS1qKUcoRC5ZKGdbal0sIjIyIikmJiFnW2pdLjN0LkspZ1tqXS4xZC4zNyhnW2pd KTtHKC9eXFxzLy4xMShkKSkxdi4zOShoLjVGKGQuMUkoL15cXHMqLylbMF0pLDF2 LjF4KX1kPUQuMmQoMXYuM3QpfUcoZC5LPT09MCYmKCFELlkoZCwiM1YiKSYmIUQu WShkLCIyQSIpKSlJO0coZFswXT09MTJ8fEQuWShkLCIzViIpfHxkLjE1KWsuMXAo ZCk7TiBrPUQuMlIoayxkKX0pO0kga30sMUs6SChkLGYsYyl7RyghZHx8ZC4xNj09 M3x8ZC4xNj09OClJIDEyO0ogZT0hRC40bihkKSw0MD1jIT09MTIsMWY9RC4xNC4x ZjtmPWUmJkQuM1hbZl18fGY7RyhkLjJqKXtKIGc9LzVRfDRkfFYvLjExKGYpO0co Zj09IjJXIiYmRC4xNC4yaylkLjFkLjY0O0coZiAxbiBkJiZlJiYhZyl7Ryg0MCl7 RyhmPT0iTyImJkQuWShkLCI0VCIpJiZkLjFkKTdwIk8gYTMgYTFcJ3QgOVYgOVUi O2RbZl09Y31HKEQuWShkLCIzViIpJiZkLjdpKGYpKUkgZC43aShmKS43NjtJIGRb Zl19RygxZiYmZSYmZj09IlYiKUkgRC4xSyhkLlYsIjlUIixjKTtHKDQwKWQuOVEo ZiwiIitjKTtKIGg9MWYmJmUmJmc/ZC40RyhmLDIpOmQuNEcoZik7SSBoPT09VT8x MjpofUcoMWYmJmY9PSIxeSIpe0coNDApe2QuNkI9MTtkLjFFPShkLjFFfHwiIiku MW8oLzdmXFwoW14pXSpcXCkvLCIiKSsoM3IoYykrXCdcJz09IjlMIj8iIjoiN2Yo MXk9IitjKjdhKyIpIil9SSBkLjFFJiZkLjFFLjFoKCIxeT0iKT49MD8oM2QoZC4x RS4xSSgvMXk9KFteKV0qKS8pWzFdKS83YSkrXCdcJzoiIn1mPWYuMW8oLy0oW2Et el0pLzlILEgoYSxiKXtJIGIuMnIoKX0pO0coNDApZFtmXT1jO0kgZFtmXX0sM2s6 SChhKXtJKGF8fCIiKS4xbygvXlxccyt8XFxzKyQvZywiIil9LDJkOkgoYil7SiBh PVtdO0coYiE9VSl7SiBpPWIuSztHKGk9PVV8fGIuMVJ8fGIuNEl8fGIuMWspYVsw XT1iO04gMUIoaSlhWy0taV09YltpXX1JIGF9LDJMOkgoYixhKXtSKEogaT0wLEs9 YS5LO2k8SztpKyspRyhhW2ldPT09YilJIGk7SS0xfSwyUjpIKGEsYil7SiBpPTAs VCwyUz1hLks7RyhELjE0LjFmKXsxQihUPWJbaSsrXSlHKFQuMTYhPTgpYVsyUysr XT1UfU4gMUIoVD1iW2krK10pYVsyUysrXT1UO0kgYX0sNHI6SChhKXtKIGM9W10s Mm89e307MVV7UihKIGk9MCxLPWEuSztpPEs7aSsrKXtKIGI9RC5MKGFbaV0pO0co ITJvW2JdKXsyb1tiXT1NO2MuMXAoYVtpXSl9fX0xVihlKXtjPWF9SSBjfSwzQzpI KGMsYSxkKXtKIGI9W107UihKIGk9MCxLPWMuSztpPEs7aSsrKUcoIWQhPSFhKGNb aV0saSkpYi4xcChjW2ldKTtJIGJ9LDJsOkgoZCxhKXtKIGM9W107UihKIGk9MCxL PWQuSztpPEs7aSsrKXtKIGI9YShkW2ldLGkpO0coYiE9VSljW2MuS109Yn1JIGMu N2QuMXcoW10sYyl9fSk7SiB2PTlCLjlBLjN5KCk7RC4xND17NUI6KHYuMUkoLy4r KD86OXl8OXh8OXd8OXYpW1xcLzogXShbXFxkLl0rKS8pfHxbXSlbMV0sMms6Lzc1 Ly4xMSh2KSwyRzovMkcvLjExKHYpLDFmOi8xZi8uMTEodikmJiEvMkcvLjExKHYp LDQyOi80Mi8uMTEodikmJiEvKDlzfDc1KS8uMTEodil9O0ogeT1ELjE0LjFmPyI3 byI6IjcyIjtELjFsKHs3MTohRC4xNC4xZnx8Uy43MD09IjZaIiwzWDp7IlIiOiI5 biIsIjlrIjoiMUYiLCI0aSI6eSw3Mjp5LDdvOnksOWg6IjlmIiw5ZToiOWQiLDli OiI5OSJ9fSk7RC5QKHs2VzpIKGEpe0kgYS4xZH0sOTc6SChhKXtJIEQuNFMoYSwi MWQiKX0sOTU6SChhKXtJIEQuM2EoYSwyLCIySCIpfSw5MTpIKGEpe0kgRC4zYShh LDIsIjRsIil9LDhaOkgoYSl7SSBELjRTKGEsIjJIIil9LDhYOkgoYSl7SSBELjRT KGEsIjRsIil9LDhXOkgoYSl7SSBELjV2KGEuMWQuMXgsYSl9LDhWOkgoYSl7SSBE LjV2KGEuMXgpfSw2UTpIKGEpe0kgRC5ZKGEsIjhVIik/YS44VHx8YS44Uy5TOkQu MmQoYS4zdCl9fSxIKGMsZCl7RC4xN1tjXT1IKGIpe0ogYT1ELjJsKDcsZCk7Ryhi JiYxaiBiPT0iMjMiKWE9RC4zZyhiLGEpO0kgNy4ySShELjRyKGEpKX19KTtELlAo ezZQOiIzdiIsOFE6IjZGIiwzOToiNkUiLDhQOiI1cSIsOE86IjdiIn0sSChjLGIp e0QuMTdbY109SCgpe0ogYT0xOTtJIDcuUChIKCl7UihKIGk9MCxLPWEuSztpPEs7 aSsrKUQoYVtpXSlbYl0oNyl9KX19KTtELlAoezhOOkgoYSl7RC4xSyg3LGEsIiIp O0coNy4xNj09MSk3LjVsKGEpfSw4TTpIKGEpe0QuMUYuMWUoNyxhKX0sOEw6SChh KXtELjFGLjIxKDcsYSl9LDhLOkgoYSl7RC4xRltELjFGLjNUKDcsYSk/IjIxIjoi MWUiXSg3LGEpfSwyMTpIKGEpe0coIWF8fEQuMUUoYSxbN10pLnIuSyl7RCgiKiIs NykuMWUoNykuUChIKCl7RC5XLjIxKDcpO0QuM2IoNyl9KTtHKDcuMWQpNy4xZC4z Nyg3KX19LDRFOkgoKXtEKCI+KiIsNykuMjEoKTsxQig3LjF4KTcuMzcoNy4xeCl9 fSxIKGEsYil7RC4xN1thXT1IKCl7SSA3LlAoYiwxOSl9fSk7RC5QKFsiNk4iLCI0 YiJdLEgoaSxjKXtKIGI9Yy4zeSgpO0QuMTdbYl09SChhKXtJIDdbMF09PTFiP0Qu MTQuMkcmJlMuMWNbIjV0IitjXXx8RC4xNC4yayYmMWJbIjVzIitjXXx8Uy43MD09 IjZaIiYmUy4xQ1siNXQiK2NdfHxTLjFjWyI1dCIrY106N1swXT09Uz8yOS4yZigy OS4yZihTLjFjWyI0eSIrY10sUy4xQ1siNHkiK2NdKSwyOS4yZihTLjFjWyIyaSIr Y10sUy4xQ1siMmkiK2NdKSk6YT09MTI/KDcuSz9ELjFnKDdbMF0sYik6VSk6Ny4x ZyhiLGEuMXE9PTU2P2E6YSsiMlgiKX19KTtIIDI1KGEsYil7SSBhWzBdJiYzcihE LjJhKGFbMF0sYixNKSwxMCl8fDB9SiBDPUQuMTQuMmsmJjNyKEQuMTQuNUIpPDhI PyIoPzpbXFxcXHcqM20tXXxcXFxcXFxcXC4pIjoiKD86W1xcXFx3XFw4Ri1cXDhF KjNtLV18XFxcXFxcXFwuKSIsNkw9MkIgNHYoIl4+XFxcXHMqKCIrQysiKykiKSw2 Sj0yQiA0digiXigiK0MrIispKCMpKCIrQysiKykiKSw2ST0yQiA0digiXihbIy5d PykoIitDKyIqKSIpO0QuMWwoezZIOnsiIjpIKGEsaSxtKXtJIG1bMl09PSIqInx8 RC5ZKGEsbVsyXSl9LCIjIjpIKGEsaSxtKXtJIGEuNEcoIjJ2Iik9PW1bMl19LCI6 Ijp7OEQ6SChhLGksbSl7SSBpPG1bM10tMH0sOEM6SChhLGksbSl7SSBpPm1bM10t MH0sM2E6SChhLGksbSl7SSBtWzNdLTA9PWl9LDc5OkgoYSxpLG0pe0kgbVszXS0w PT1pfSwzbzpIKGEsaSl7SSBpPT0wfSwzUzpIKGEsaSxtLHIpe0kgaT09ci5LLTF9 LDZEOkgoYSxpKXtJIGklMj09MH0sNkM6SChhLGkpe0kgaSUyfSwiM28tNHUiOkgo YSl7SSBhLjFkLjNIKCIqIilbMF09PWF9LCIzUy00dSI6SChhKXtJIEQuM2EoYS4x ZC41VCwxLCI0bCIpPT1hfSwiOHotNHUiOkgoYSl7SSFELjNhKGEuMWQuNVQsMiwi NGwiKX0sNlc6SChhKXtJIGEuMXh9LDRFOkgoYSl7SSFhLjF4fSw4eTpIKGEsaSxt KXtJKGEuNk98fGEuOHh8fEQoYSkuMXIoKXx8IiIpLjFoKG1bM10pPj0wfSw0ajpI KGEpe0kiMUciIT1hLk8mJkQuMWcoYSwiMTgiKSE9IjJGIiYmRC4xZyhhLCI1ZyIp IT0iMUcifSwxRzpIKGEpe0kiMUciPT1hLk98fEQuMWcoYSwiMTgiKT09IjJGInx8 RC4xZyhhLCI1ZyIpPT0iMUcifSw4dzpIKGEpe0khYS4zUn0sM1I6SChhKXtJIGEu M1J9LDRKOkgoYSl7SSBhLjRKfSwyVzpIKGEpe0kgYS4yV3x8RC4xSyhhLCIyVyIp fSwxcjpIKGEpe0kiMXIiPT1hLk99LDVPOkgoYSl7SSI1TyI9PWEuT30sNUw6SChh KXtJIjVMIj09YS5PfSw1cDpIKGEpe0kiNXAiPT1hLk99LDNROkgoYSl7SSIzUSI9 PWEuT30sNW86SChhKXtJIjVvIj09YS5PfSw2QTpIKGEpe0kiNkEiPT1hLk99LDZ6 OkgoYSl7SSI2eiI9PWEuT30sMnM6SChhKXtJIjJzIj09YS5PfHxELlkoYSwiMnMi KX0sNFQ6SChhKXtJLzRUfDJBfDZ5fDJzL2kuMTEoYS5ZKX0sM1Q6SChhLGksbSl7 SSBELjJxKG1bM10sYSkuS30sOHQ6SChhKXtJL2hcXGQvaS4xMShhLlkpfSw4czpI KGEpe0kgRC4zQyhELjNPLEgoYil7SSBhPT1iLlR9KS5LfX19LDZ4OlsvXihcXFsp ICpAPyhbXFx3LV0rKSAqKFshKiRefj1dKikgKihcJz8iPykoLio/KVxcNCAqXFxd LywvXig6KShbXFx3LV0rKVxcKCI/XCc/KC4qPyhcXCguKj9cXCkpP1teKF0qPyki P1wnP1xcKS8sMkIgNHYoIl4oWzouI10qKSgiK0MrIispIildLDNnOkgoYSxjLGIp e0ogZCwxdD1bXTsxQihhJiZhIT1kKXtkPWE7SiBmPUQuMUUoYSxjLGIpO2E9Zi50 LjFvKC9eXFxzKixcXHMqLywiIik7MXQ9Yj9jPWYucjpELjJSKDF0LGYucil9SSAx dH0sMnE6SCh0LG8pe0coMWogdCE9IjIzIilJW3RdO0cobyYmby4xNiE9MSYmby4x NiE9OSlJW107bz1vfHxTO0ogZD1bb10sMm89W10sM1MsWTsxQih0JiYzUyE9dCl7 SiByPVtdOzNTPXQ7dD1ELjNrKHQpO0ogbD1RLDNqPTZMLG09M2ouMkQodCk7Ryht KXtZPW1bMV0uMnIoKTtSKEogaT0wO2RbaV07aSsrKVIoSiBjPWRbaV0uMXg7Yztj PWMuMkgpRyhjLjE2PT0xJiYoWT09IioifHxjLlkuMnIoKT09WSkpci4xcChjKTtk PXI7dD10LjFvKDNqLCIiKTtHKHQuMWgoIiAiKT09MCk2TTtsPU19Tnszaj0vXihb Pit+XSlcXHMqKFxcdyopL2k7RygobT0zai4yRCh0KSkhPVUpe3I9W107SiBrPXt9 O1k9bVsyXS4ycigpO209bVsxXTtSKEogaj0wLDNpPWQuSztqPDNpO2orKyl7SiBu PW09PSJ+Inx8bT09IisiP2Rbal0uMkg6ZFtqXS4xeDtSKDtuO249bi4ySClHKG4u MTY9PTEpe0ogZz1ELkwobik7RyhtPT0ifiImJmtbZ10pMVg7RyghWXx8bi5ZLjJy KCk9PVkpe0cobT09In4iKWtbZ109TTtyLjFwKG4pfUcobT09IisiKTFYfX1kPXI7 dD1ELjNrKHQuMW8oM2osIiIpKTtsPU19fUcodCYmIWwpe0coIXQuMWgoIiwiKSl7 RyhvPT1kWzBdKWQuNHMoKTsybz1ELjJSKDJvLGQpO3I9ZD1bb107dD0iICIrdC42 digxLHQuSyl9TntKIGg9Nko7SiBtPWguMkQodCk7RyhtKXttPVswLG1bMl0sbVsz XSxtWzFdXX1Oe2g9Nkk7bT1oLjJEKHQpfW1bMl09bVsyXS4xbygvXFxcXC9nLCIi KTtKIGY9ZFtkLkstMV07RyhtWzFdPT0iIyImJmYmJmYuNjEmJiFELjRuKGYpKXtK IHA9Zi42MShtWzJdKTtHKChELjE0LjFmfHxELjE0LjJHKSYmcCYmMWogcC4ydj09 IjIzIiYmcC4ydiE9bVsyXSlwPUQoXCdbQDJ2PSJcJyttWzJdK1wnIl1cJyxmKVsw XTtkPXI9cCYmKCFtWzNdfHxELlkocCxtWzNdKSk/W3BdOltdfU57UihKIGk9MDtk W2ldO2krKyl7SiBhPW1bMV09PSIjIiYmbVszXT9tWzNdOm1bMV0hPSIifHxtWzBd PT0iIj8iKiI6bVsyXTtHKGE9PSIqIiYmZFtpXS5ZLjN5KCk9PSI0OSIpYT0iM24i O3I9RC4yUihyLGRbaV0uM0goYSkpfUcobVsxXT09Ii4iKXI9RC41bShyLG1bMl0p O0cobVsxXT09IiMiKXtKIGU9W107UihKIGk9MDtyW2ldO2krKylHKHJbaV0uNEco IjJ2Iik9PW1bMl0pe2U9W3JbaV1dOzFYfXI9ZX1kPXJ9dD10LjFvKGgsIiIpfX1H KHQpe0ogYj1ELjFFKHQscik7ZD1yPWIucjt0PUQuM2soYi50KX19Ryh0KWQ9W107 RyhkJiZvPT1kWzBdKWQuNHMoKTsybz1ELjJSKDJvLGQpO0kgMm99LDVtOkgocixt LGEpe209IiAiK20rIiAiO0ogYz1bXTtSKEogaT0wO3JbaV07aSsrKXtKIGI9KCIg IityW2ldLjFGKyIgIikuMWgobSk+PTA7RyghYSYmYnx8YSYmIWIpYy4xcChyW2ld KX1JIGN9LDFFOkgodCxyLGgpe0ogZDsxQih0JiZ0IT1kKXtkPXQ7SiBwPUQuNngs bTtSKEogaT0wO3BbaV07aSsrKXttPXBbaV0uMkQodCk7RyhtKXt0PXQuOHIobVsw XS5LKTttWzJdPW1bMl0uMW8oL1xcXFwvZywiIik7MVh9fUcoIW0pMVg7RyhtWzFd PT0iOiImJm1bMl09PSI0WSIpcj02Mi4xMShtWzNdKT9ELjFFKG1bM10scixNKS5y OkQocikuNFkobVszXSk7TiBHKG1bMV09PSIuIilyPUQuNW0ocixtWzJdLGgpO04g RyhtWzFdPT0iWyIpe0ogZz1bXSxPPW1bM107UihKIGk9MCwzaT1yLks7aTwzaTtp Kyspe0ogYT1yW2ldLHo9YVtELjNYW21bMl1dfHxtWzJdXTtHKHo9PVV8fC81UXw0 ZHwyVy8uMTEobVsyXSkpej1ELjFLKGEsbVsyXSl8fFwnXCc7RygoTz09IiImJiEh enx8Tz09Ij0iJiZ6PT1tWzVdfHxPPT0iIT0iJiZ6IT1tWzVdfHxPPT0iXj0iJiZ6 JiYhei4xaChtWzVdKXx8Tz09IiQ9IiYmei42dih6LkstbVs1XS5LKT09bVs1XXx8 KE89PSIqPSJ8fE89PSJ+PSIpJiZ6LjFoKG1bNV0pPj0wKV5oKWcuMXAoYSl9cj1n fU4gRyhtWzFdPT0iOiImJm1bMl09PSIzYS00dSIpe0ogZT17fSxnPVtdLDExPS8o LT8pKFxcZCopbigoPzpcXCt8LSk/XFxkKikvLjJEKG1bM109PSI2RCImJiIybiJ8 fG1bM109PSI2QyImJiIybisxInx8IS9cXEQvLjExKG1bM10pJiYiOHErIittWzNd fHxtWzNdKSwzbz0oMTFbMV0rKDExWzJdfHwxKSktMCxkPTExWzNdLTA7UihKIGk9 MCwzaT1yLks7aTwzaTtpKyspe0ogaj1yW2ldLDFkPWouMWQsMnY9RC5MKDFkKTtH KCFlWzJ2XSl7SiBjPTE7UihKIG49MWQuMXg7bjtuPW4uMkgpRyhuLjE2PT0xKW4u NHE9YysrO2VbMnZdPU19SiBiPVE7Rygzbz09MCl7RyhqLjRxPT1kKWI9TX1OIEco KGouNHEtZCklM289PTAmJihqLjRxLWQpLzNvPj0wKWI9TTtHKGJeaClnLjFwKGop fXI9Z31Oe0ogZj1ELjZIW21bMV1dO0coMWogZj09IjQ5IilmPWZbbVsyXV07Rygx aiBmPT0iMjMiKWY9NnUoIlF8fEgoYSxpKXtJICIrZisiO30iKTtyPUQuM0MocixI KGEsaSl7SSBmKGEsaSxtLHIpfSxoKX19SXtyOnIsdDp0fX0sNFM6SChiLGMpe0og YT1bXSwxdD1iW2NdOzFCKDF0JiYxdCE9Uyl7RygxdC4xNj09MSlhLjFwKDF0KTsx dD0xdFtjXX1JIGF9LDNhOkgoYSxlLGMsYil7ZT1lfHwxO0ogZD0wO1IoO2E7YT1h W2NdKUcoYS4xNj09MSYmKytkPT1lKTFYO0kgYX0sNXY6SChuLGEpe0ogcj1bXTtS KDtuO249bi4ySCl7RyhuLjE2PT0xJiZuIT1hKXIuMXAobil9SSByfX0pO0QuVz17 MWU6SChmLGksZyxlKXtHKGYuMTY9PTN8fGYuMTY9PTgpSTtHKEQuMTQuMWYmJmYu NEkpZj0xYjtHKCFnLjI0KWcuMjQ9Ny4yNCsrO0coZSE9MTIpe0ogaD1nO2c9Ny4z TShoLEgoKXtJIGguMXcoNywxOSl9KTtnLkw9ZX1KIGo9RC5MKGYsIjN3Iil8fEQu TChmLCIzdyIse30pLDFIPUQuTChmLCIxSCIpfHxELkwoZiwiMUgiLEgoKXtHKDFq IEQhPSIxMiImJiFELlcuNWspSSBELlcuMUguMXcoMTkuM0wuVCwxOSl9KTsxSC5U PWY7RC5QKGkuMVIoL1xccysvKSxIKGMsYil7SiBhPWIuMVIoIi4iKTtiPWFbMF07 Zy5PPWFbMV07SiBkPWpbYl07RyghZCl7ZD1qW2JdPXt9O0coIUQuVy4ydFtiXXx8 RC5XLjJ0W2JdLjRwLjFrKGYpPT09USl7RyhmLjNLKWYuM0soYiwxSCxRKTtOIEco Zi42dClmLjZ0KCI0byIrYiwxSCl9fWRbZy4yNF09ZztELlcuMjZbYl09TX0pO2Y9 VX0sMjQ6MSwyNjp7fSwyMTpIKGUsaCxmKXtHKGUuMTY9PTN8fGUuMTY9PTgpSTtK IGk9RC5MKGUsIjN3IiksMUwsNWk7RyhpKXtHKGg9PTEyfHwoMWogaD09IjIzIiYm aC44cCgwKT09Ii4iKSlSKEogZyAxbiBpKTcuMjEoZSxnKyhofHwiIikpO057Ryho Lk8pe2Y9aC4yeTtoPWguT31ELlAoaC4xUigvXFxzKy8pLEgoYixhKXtKIGM9YS4x UigiLiIpO2E9Y1swXTtHKGlbYV0pe0coZikyVSBpW2FdW2YuMjRdO04gUihmIDFu IGlbYV0pRyghY1sxXXx8aVthXVtmXS5PPT1jWzFdKTJVIGlbYV1bZl07UigxTCAx biBpW2FdKTFYO0coITFMKXtHKCFELlcuMnRbYV18fEQuVy4ydFthXS40QS4xayhl KT09PVEpe0coZS42cCllLjZwKGEsRC5MKGUsIjFIIiksUSk7TiBHKGUuNm4pZS42 bigiNG8iK2EsRC5MKGUsIjFIIikpfTFMPVU7MlUgaVthXX19fSl9UigxTCAxbiBp KTFYO0coITFMKXtKIGQ9RC5MKGUsIjFIIik7RyhkKWQuVD1VO0QuM2IoZSwiM3ci KTtELjNiKGUsIjFIIil9fX0sMVA6SChoLGMsZixnLGkpe2M9RC4yZChjKTtHKGgu MWgoIiEiKT49MCl7aD1oLjNzKDAsLTEpO0ogYT1NfUcoIWYpe0coNy4yNltoXSlE KCIqIikuMWUoWzFiLFNdKS4xUChoLGMpfU57RyhmLjE2PT0zfHxmLjE2PT04KUkg MTI7SiBiLDFMLDE3PUQuMUQoZltoXXx8VSksVz0hY1swXXx8IWNbMF0uMzI7RyhX KXtjLjZoKHtPOmgsMko6ZiwzMjpIKCl7fSwzSjpIKCl7fSw0QzoxeigpfSk7Y1sw XVtFXT1NfWNbMF0uTz1oO0coYSljWzBdLjZtPU07SiBkPUQuTChmLCIxSCIpO0co ZCliPWQuMXcoZixjKTtHKCghMTd8fChELlkoZixcJ2FcJykmJmg9PSI0ViIpKSYm ZlsiNG8iK2hdJiZmWyI0byIraF0uMXcoZixjKT09PVEpYj1RO0coVyljLjRzKCk7 RyhpJiZELjFEKGkpKXsxTD1pLjF3KGYsYj09VT9jOmMuN2QoYikpO0coMUwhPT0x MiliPTFMfUcoMTcmJmchPT1RJiZiIT09USYmIShELlkoZixcJ2FcJykmJmg9PSI0 ViIpKXs3LjVrPU07MVV7ZltoXSgpfTFWKGUpe319Ny41az1RfUkgYn0sMUg6SChi KXtKIGEsMUwsMzgsNWYsNG07Yj0xOVswXT1ELlcuNmwoYnx8MWIuVyk7Mzg9Yi5P LjFSKCIuIik7Yi5PPTM4WzBdOzM4PTM4WzFdOzVmPSEzOCYmIWIuNm07NG09KEQu TCg3LCIzdyIpfHx7fSlbYi5PXTtSKEogaiAxbiA0bSl7SiBjPTRtW2pdO0coNWZ8 fGMuTz09Mzgpe2IuMnk9YztiLkw9Yy5MOzFMPWMuMXcoNywxOSk7RyhhIT09USlh PTFMO0coMUw9PT1RKXtiLjMyKCk7Yi4zSigpfX19SSBhfSw2bDpIKGIpe0coYltF XT09TSlJIGI7SiBkPWI7Yj17OG86ZH07SiBjPSI4biA4bSA4bCA4ayAycyA4aiA0 NyA1ZCA2aiA1RSA4aSBMIDhoIDhnIDRLIDJ5IDVhIDU5IDhlIDhiIDU4IDZmIDhh IDg4IDRrIDg3IDg2IDg0IDZkIDJKIDRDIDZjIE8gODIgODEgMzUiLjFSKCIgIik7 UihKIGk9Yy5LO2k7aS0tKWJbY1tpXV09ZFtjW2ldXTtiW0VdPU07Yi4zMj1IKCl7 RyhkLjMyKWQuMzIoKTtkLjgwPVF9O2IuM0o9SCgpe0coZC4zSilkLjNKKCk7ZC43 Wj1NfTtiLjRDPWIuNEN8fDF6KCk7RyghYi4ySiliLjJKPWIuNmR8fFM7RyhiLjJK LjE2PT0zKWIuMko9Yi4ySi4xZDtHKCFiLjRrJiZiLjRLKWIuNGs9Yi40Sz09Yi4y Sj9iLjZjOmIuNEs7RyhiLjU4PT1VJiZiLjVkIT1VKXtKIGE9Uy4xQywxYz1TLjFj O2IuNTg9Yi41ZCsoYSYmYS4yZXx8MWMmJjFjLjJlfHwwKS0oYS42Ynx8MCk7Yi42 Zj1iLjZqKyhhJiZhLjJjfHwxYyYmMWMuMmN8fDApLShhLjZhfHwwKX1HKCFiLjM1 JiYoKGIuNDd8fGIuNDc9PT0wKT9iLjQ3OmIuNWEpKWIuMzU9Yi40N3x8Yi41YTtH KCFiLjU5JiZiLjVFKWIuNTk9Yi41RTtHKCFiLjM1JiZiLjJzKWIuMzU9KGIuMnMm MT8xOihiLjJzJjI/MzooYi4ycyY0PzI6MCkpKTtJIGJ9LDNNOkgoYSxiKXtiLjI0 PWEuMjQ9YS4yNHx8Yi4yNHx8Ny4yNCsrO0kgYn0sMnQ6ezI3Ons0cDpIKCl7NTUo KTtJfSw0QTpIKCl7SX19LDNEOns0cDpIKCl7RyhELjE0LjFmKUkgUTtEKDcpLjJP KCI1MyIsRC5XLjJ0LjNELjJ5KTtJIE19LDRBOkgoKXtHKEQuMTQuMWYpSSBRO0Qo NykuNGUoIjUzIixELlcuMnQuM0QuMnkpO0kgTX0sMnk6SChhKXtHKEYoYSw3KSlJ IE07YS5PPSIzRCI7SSBELlcuMUguMXcoNywxOSl9fSwzTjp7NHA6SCgpe0coRC4x NC4xZilJIFE7RCg3KS4yTygiNTEiLEQuVy4ydC4zTi4yeSk7SSBNfSw0QTpIKCl7 RyhELjE0LjFmKUkgUTtEKDcpLjRlKCI1MSIsRC5XLjJ0LjNOLjJ5KTtJIE19LDJ5 OkgoYSl7RyhGKGEsNykpSSBNO2EuTz0iM04iO0kgRC5XLjFILjF3KDcsMTkpfX19 fTtELjE3LjFsKHsyTzpIKGMsYSxiKXtJIGM9PSI0WCI/Ny4yVihjLGEsYik6Ny5Q KEgoKXtELlcuMWUoNyxjLGJ8fGEsYiYmYSl9KX0sMlY6SChkLGIsYyl7SiBlPUQu Vy4zTShjfHxiLEgoYSl7RCg3KS40ZShhLGUpO0koY3x8YikuMXcoNywxOSl9KTtJ IDcuUChIKCl7RC5XLjFlKDcsZCxlLGMmJmIpfSl9LDRlOkgoYSxiKXtJIDcuUChI KCl7RC5XLjIxKDcsYSxiKX0pfSwxUDpIKGMsYSxiKXtJIDcuUChIKCl7RC5XLjFQ KGMsYSw3LE0sYil9KX0sNUM6SChjLGEsYil7SSA3WzBdJiZELlcuMVAoYyxhLDdb MF0sUSxiKX0sMm06SChiKXtKIGM9MTksaT0xOzFCKGk8Yy5LKUQuVy4zTShiLGNb aSsrXSk7SSA3LjRWKEQuVy4zTShiLEgoYSl7Ny40Wj0oNy40Wnx8MCklaTthLjMy KCk7SSBjWzcuNForK10uMXcoNywxOSl8fFF9KSl9LDdYOkgoYSxiKXtJIDcuMk8o XCczRFwnLGEpLjJPKFwnM05cJyxiKX0sMjc6SChhKXs1NSgpO0coRC4yUSlhLjFr KFMsRCk7TiBELjNBLjFwKEgoKXtJIGEuMWsoNyxEKX0pO0kgN319KTtELjFsKHsy UTpRLDNBOltdLDI3OkgoKXtHKCFELjJRKXtELjJRPU07RyhELjNBKXtELlAoRC4z QSxIKCl7Ny4xayhTKX0pO0QuM0E9VX1EKFMpLjVDKCIyNyIpfX19KTtKIHg9UTtI IDU1KCl7Ryh4KUk7eD1NO0coUy4zSyYmIUQuMTQuMkcpUy4zSygiNjkiLEQuMjcs USk7RyhELjE0LjFmJiYxYj09MVMpKEgoKXtHKEQuMlEpSTsxVXtTLjFDLjdWKCIx QSIpfTFWKDNlKXszQigxOS4zTCwwKTtJfUQuMjcoKX0pKCk7RyhELjE0LjJHKVMu M0soIjY5IixIKCl7RyhELjJRKUk7UihKIGk9MDtpPFMuNFcuSztpKyspRyhTLjRX W2ldLjNSKXszQigxOS4zTCwwKTtJfUQuMjcoKX0sUSk7RyhELjE0LjJrKXtKIGE7 KEgoKXtHKEQuMlEpSTtHKFMuM2YhPSI2OCImJlMuM2YhPSIxSiIpezNCKDE5LjNM LDApO0l9RyhhPT09MTIpYT1EKCJWLCA3QVs3VT03U10iKS5LO0coUy40Vy5LIT1h KXszQigxOS4zTCwwKTtJfUQuMjcoKX0pKCl9RC5XLjFlKDFiLCI0MyIsRC4yNyl9 RC5QKCgiN1IsN1EsNDMsODUsNHksNFgsNFYsN1AsIisiN08sN04sODksNTMsNTEs N00sMkEsIisiNW8sN0wsN0ssOGQsM2UiKS4xUigiLCIpLEgoaSxiKXtELjE3W2Jd PUgoYSl7SSBhPzcuMk8oYixhKTo3LjFQKGIpfX0pO0ogRj1IKGEsYyl7SiBiPWEu NGs7MUIoYiYmYiE9YykxVXtiPWIuMWR9MVYoM2Upe2I9Y31JIGI9PWN9O0QoMWIp LjJPKCI0WCIsSCgpe0QoIioiKS4xZShTKS40ZSgpfSk7RC4xNy4xbCh7Njc6RC4x Ny40Myw0MzpIKGcsZCxjKXtHKDFqIGchPVwnMjNcJylJIDcuNjcoZyk7SiBlPWcu MWgoIiAiKTtHKGU+PTApe0ogaT1nLjNzKGUsZy5LKTtnPWcuM3MoMCxlKX1jPWN8 fEgoKXt9O0ogZj0iMlAiO0coZClHKEQuMUQoZCkpe2M9ZDtkPVV9TntkPUQuM24o ZCk7Zj0iNmcifUogaD03O0QuM1koezFhOmcsTzpmLDFPOiIySyIsTDpkLDFKOkgo YSxiKXtHKGI9PSIxVyJ8fGI9PSI3SiIpaC4ySyhpP0QoIjwxdi8+IikuM3YoYS40 VS4xbygvPDFtKC58XFxzKSo/XFwvMW0+L2csIiIpKS4ycShpKTphLjRVKTtoLlAo YyxbYS40VSxiLGFdKX19KTtJIDd9LGFMOkgoKXtJIEQuM24oNy43SSgpKX0sN0k6 SCgpe0kgNy4ybChIKCl7SSBELlkoNywiM1YiKT9ELjJkKDcuYUgpOjd9KS4xRShI KCl7SSA3LjM0JiYhNy4zUiYmKDcuNEp8fC8yQXw2eS9pLjExKDcuWSl8fC8xcnwx R3wzUS9pLjExKDcuTykpfSkuMmwoSChpLGMpe0ogYj1EKDcpLjZlKCk7SSBiPT1V P1U6Yi4xcT09MnA/RC4ybChiLEgoYSxpKXtJezM0OmMuMzQsMng6YX19KTp7MzQ6 Yy4zNCwyeDpifX0pLjNwKCl9fSk7RC5QKCI3SCw3Ryw3Riw3RCw3Qyw3QiIuMVIo IiwiKSxIKGksbyl7RC4xN1tvXT1IKGYpe0kgNy4yTyhvLGYpfX0pO0ogQj0xeigp O0QuMWwoezNwOkgoZCxiLGEsYyl7RyhELjFEKGIpKXthPWI7Yj1VfUkgRC4zWSh7 TzoiMlAiLDFhOmQsTDpiLDFXOmEsMU86Y30pfSxhRTpIKGIsYSl7SSBELjNwKGIs VSxhLCIxbSIpfSxhRDpIKGMsYixhKXtJIEQuM3AoYyxiLGEsIjN6Iil9LGFDOkgo ZCxiLGEsYyl7RyhELjFEKGIpKXthPWI7Yj17fX1JIEQuM1koe086IjZnIiwxYTpk LEw6YiwxVzphLDFPOmN9KX0sYUE6SChhKXtELjFsKEQuNjAsYSl9LDYwOnsxYTo1 Wi41USwyNjpNLE86IjJQIiwyVDowLDd6OiI0Ui94LWF4LTNWLWF3Iiw3eDpNLDMx Ok0sTDpVLDVZOlUsM1E6VSw0UTp7Mk46IjRSLzJOLCAxci8yTiIsMks6IjFyLzJL IiwxbToiMXIvNHQsIDRSLzR0IiwzejoiNFIvM3osIDFyLzR0IiwxcjoiMXIvYXMi LDR3OiIqLyoifX0sNHo6e30sM1k6SChzKXtzPUQuMWwoTSxzLEQuMWwoTSx7fSxE LjYwLHMpKTtKIGcsMlo9Lz1cXD8oJnwkKS9nLDF1LEwsTz1zLk8uMnIoKTtHKHMu TCYmcy43eCYmMWogcy5MIT0iMjMiKXMuTD1ELjNuKHMuTCk7RyhzLjFPPT0iNFAi KXtHKE89PSIyUCIpe0coIXMuMWEuMUkoMlopKXMuMWErPShzLjFhLjFJKC9cXD8v KT8iJiI6Ij8iKSsocy40UHx8Ijd1IikrIj0/In1OIEcoIXMuTHx8IXMuTC4xSSgy Wikpcy5MPShzLkw/cy5MKyImIjoiIikrKHMuNFB8fCI3dSIpKyI9PyI7cy4xTz0i M3oifUcocy4xTz09IjN6IiYmKHMuTCYmcy5MLjFJKDJaKXx8cy4xYS4xSSgyWikp KXtnPSI0UCIrQisrO0cocy5MKXMuTD0ocy5MKyIiKS4xbygyWiwiPSIrZysiJDEi KTtzLjFhPXMuMWEuMW8oMlosIj0iK2crIiQxIik7cy4xTz0iMW0iOzFiW2ddPUgo YSl7TD1hOzFXKCk7MUooKTsxYltnXT0xMjsxVXsyVSAxYltnXX0xVihlKXt9Ryhp KWkuMzcoaCl9fUcocy4xTz09IjFtIiYmcy4xWT09VSlzLjFZPVE7RyhzLjFZPT09 USYmTz09IjJQIil7SiBqPTF6KCk7SiBrPXMuMWEuMW8oLyhcXD98JikzbT0uKj8o JnwkKS8sIiRhcD0iK2orIiQyIik7cy4xYT1rKygoaz09cy4xYSk/KHMuMWEuMUko L1xcPy8pPyImIjoiPyIpKyIzbT0iK2o6IiIpfUcocy5MJiZPPT0iMlAiKXtzLjFh Kz0ocy4xYS4xSSgvXFw/Lyk/IiYiOiI/Iikrcy5MO3MuTD1VfUcocy4yNiYmIUQu NE8rKylELlcuMVAoIjdIIik7SiBuPS9eKD86XFx3KzopP1xcL1xcLyhbXlxcLz8j XSspLztHKHMuMU89PSIxbSImJk89PSIyUCImJm4uMTEocy4xYSkmJm4uMkQocy4x YSlbMV0hPTVaLmFsKXtKIGk9Uy4zSCgiNnciKVswXTtKIGg9Uy4zaCgiMW0iKTto LjRkPXMuMWE7RyhzLjd0KWguYWo9cy43dDtHKCFnKXtKIGw9UTtoLmFoPWguYWc9 SCgpe0coIWwmJighNy4zZnx8Ny4zZj09IjY4Inx8Ny4zZj09IjFKIikpe2w9TTsx VygpOzFKKCk7aS4zNyhoKX19fWkuM1UoaCk7SSAxMn1KIG09UTtKIGM9MWIuN3M/ MkIgN3MoImFlLmFjIik6MkIgN3IoKTtHKHMuNVkpYy42UihPLHMuMWEscy4zMSxz LjVZLHMuM1EpO04gYy42UihPLHMuMWEscy4zMSk7MVV7RyhzLkwpYy40QigiYWIt YWEiLHMuN3opO0cocy41UyljLjRCKCJhOS01Ui1hOCIsRC40eltzLjFhXXx8ImE3 LCBhNiBhNSBhNCA1Tjo1Tjo1TiBhMiIpO2MuNEIoIlgtOVotOVkiLCI3ciIpO2Mu NEIoIjlXIixzLjFPJiZzLjRRW3MuMU9dP3MuNFFbcy4xT10rIiwgKi8qIjpzLjRR LjR3KX0xVihlKXt9RyhzLjdtJiZzLjdtKGMscyk9PT1RKXtzLjI2JiZELjRPLS07 Yy43bCgpO0kgUX1HKHMuMjYpRC5XLjFQKCI3QiIsW2Msc10pO0ogZD1IKGEpe0co IW0mJmMmJihjLjNmPT00fHxhPT0iMlQiKSl7bT1NO0coZil7N2soZik7Zj1VfTF1 PWE9PSIyVCImJiIyVCJ8fCFELjdqKGMpJiYiM2UifHxzLjVTJiZELjdoKGMscy4x YSkmJiI3SiJ8fCIxVyI7RygxdT09IjFXIil7MVV7TD1ELjZYKGMscy4xTyxzLjlT KX0xVihlKXsxdT0iNUoifX1HKDF1PT0iMVciKXtKIGI7MVV7Yj1jLjVJKCI3Zy01 UiIpfTFWKGUpe31HKHMuNVMmJmIpRC40eltzLjFhXT1iO0coIWcpMVcoKX1OIEQu NUgocyxjLDF1KTsxSigpO0cocy4zMSljPVV9fTtHKHMuMzEpe0ogZj00SShkLDEz KTtHKHMuMlQ+MCkzQihIKCl7RyhjKXtjLjdsKCk7RyghbSlkKCIyVCIpfX0scy4y VCl9MVV7Yy45UChzLkwpfTFWKGUpe0QuNUgocyxjLFUsZSl9Ryghcy4zMSlkKCk7 SCAxVygpe0cocy4xVylzLjFXKEwsMXUpO0cocy4yNilELlcuMVAoIjdDIixbYyxz XSl9SCAxSigpe0cocy4xSilzLjFKKGMsMXUpO0cocy4yNilELlcuMVAoIjdGIixb YyxzXSk7RyhzLjI2JiYhLS1ELjRPKUQuVy4xUCgiN0ciKX1JIGN9LDVIOkgocyxh LGIsZSl7RyhzLjNlKXMuM2UoYSxiLGUpO0cocy4yNilELlcuMVAoIjdEIixbYSxz LGVdKX0sNE86MCw3ajpIKGEpezFVe0khYS4xdSYmNVouOU89PSI1cDoifHwoYS4x dT49N2UmJmEuMXU8OU4pfHxhLjF1PT03Y3x8YS4xdT09OUt8fEQuMTQuMmsmJmEu MXU9PTEyfTFWKGUpe31JIFF9LDdoOkgoYSxjKXsxVXtKIGI9YS41SSgiN2ctNVIi KTtJIGEuMXU9PTdjfHxiPT1ELjR6W2NdfHxELjE0LjJrJiZhLjF1PT0xMn0xVihl KXt9SSBRfSw2WDpIKGEsYyxiKXtKIGQ9YS41SSgiOUotTyIpLDJOPWM9PSIyTiJ8 fCFjJiZkJiZkLjFoKCIyTiIpPj0wLEw9Mk4/YS45STphLjRVO0coMk4mJkwuMUMu Mmo9PSI1SiIpN3AiNUoiO0coYilMPWIoTCxjKTtHKGM9PSIxbSIpRC41dShMKTtH KGM9PSIzeiIpTD02dSgiKCIrTCsiKSIpO0kgTH0sM246SChhKXtKIHM9W107Ryhh LjFxPT0ycHx8YS41dylELlAoYSxIKCl7cy4xcCgzdSg3LjM0KSsiPSIrM3UoNy4y eCkpfSk7TiBSKEogaiAxbiBhKUcoYVtqXSYmYVtqXS4xcT09MnApRC5QKGFbal0s SCgpe3MuMXAoM3UoaikrIj0iKzN1KDcpKX0pO04gcy4xcCgzdShqKSsiPSIrM3Uo RC4xRChhW2pdKT9hW2pdKCk6YVtqXSkpO0kgcy42cygiJiIpLjFvKC8lMjAvZywi KyIpfX0pO0QuMTcuMWwoezFOOkgoYyxiKXtJIGM/Ny4yZyh7MVo6IjFOIiwyaDoi MU4iLDF5OiIxTiJ9LGMsYik6Ny4xRSgiOjFHIikuUChIKCl7Ny5WLjE4PTcuNUR8 fCIiO0coRC4xZyg3LCIxOCIpPT0iMkYiKXtKIGE9RCgiPCIrNy4yaisiIC8+Iiku NlAoIjFjIik7Ny5WLjE4PWEuMWcoIjE4Iik7Ryg3LlYuMTg9PSIyRiIpNy5WLjE4 PSIzSSI7YS4yMSgpfX0pLjNsKCl9LDFNOkgoYixhKXtJIGI/Ny4yZyh7MVo6IjFN IiwyaDoiMU0iLDF5OiIxTSJ9LGIsYSk6Ny4xRSgiOjRqIikuUChIKCl7Ny41RD03 LjVEfHxELjFnKDcsIjE4Iik7Ny5WLjE4PSIyRiJ9KS4zbCgpfSw3ODpELjE3LjJt LDJtOkgoYSxiKXtJIEQuMUQoYSkmJkQuMUQoYik/Ny43OC4xdyg3LDE5KTphPzcu MmcoezFaOiIybSIsMmg6IjJtIiwxeToiMm0ifSxhLGIpOjcuUChIKCl7RCg3KVtE KDcpLjNGKCI6MUciKT8iMU4iOiIxTSJdKCl9KX0sOUc6SChiLGEpe0kgNy4yZyh7 MVo6IjFOIn0sYixhKX0sOUY6SChiLGEpe0kgNy4yZyh7MVo6IjFNIn0sYixhKX0s OUU6SChiLGEpe0kgNy4yZyh7MVo6IjJtIn0sYixhKX0sOUQ6SChiLGEpe0kgNy4y Zyh7MXk6IjFOIn0sYixhKX0sOU06SChiLGEpe0kgNy4yZyh7MXk6IjFNIn0sYixh KX0sOUM6SChjLGEsYil7SSA3LjJnKHsxeTphfSxjLGIpfSwyZzpIKGssaixpLGcp e0ogaD1ELjc3KGosaSxnKTtJIDdbaC4zNj09PVE/IlAiOiIzNiJdKEgoKXtHKDcu MTYhPTEpSSBRO0ogZj1ELjFsKHt9LGgpLHAsMUc9RCg3KS4zRigiOjFHIiksNDY9 NztSKHAgMW4gayl7RyhrW3BdPT0iMU0iJiYxR3x8a1twXT09IjFOIiYmITFHKUkg Zi4xSi4xayg3KTtHKHA9PSIxWiJ8fHA9PSIyaCIpe2YuMTg9RC4xZyg3LCIxOCIp O2YuMzM9Ny5WLjMzfX1HKGYuMzMhPVUpNy5WLjMzPSIxRyI7Zi40NT1ELjFsKHt9 LGspO0QuUChrLEgoYyxhKXtKIGU9MkIgRC4yOCg0NixmLGMpO0coLzJtfDFOfDFN Ly4xMShhKSllW2E9PSIybSI/MUc/IjFOIjoiMU0iOmFdKGspO057SiBiPWEuNnIo KS4xSSgvXihbKy1dPSk/KFtcXGQrLS5dKykoLiopJC8pLDJiPWUuMXQoTSl8fDA7 RyhiKXtKIGQ9M2QoYlsyXSksMk09YlszXXx8IjJYIjtHKDJNIT0iMlgiKXs0Ni5W W2NdPShkfHwxKSsyTTsyYj0oKGR8fDEpL2UuMXQoTSkpKjJiOzQ2LlZbY109MmIr Mk19RyhiWzFdKWQ9KChiWzFdPT0iLT0iPy0xOjEpKmQpKzJiO2UuM0coMmIsZCwy TSl9TiBlLjNHKDJiLGEsIiIpfX0pO0kgTX0pfSwzNjpIKGEsYil7RyhELjFEKGEp fHwoYSYmYS4xcT09MnApKXtiPWE7YT0iMjgifUcoIWF8fCgxaiBhPT0iMjMiJiYh YikpSSBBKDdbMF0sYSk7SSA3LlAoSCgpe0coYi4xcT09MnApQSg3LGEsYik7TntB KDcsYSkuMXAoYik7RyhBKDcsYSkuSz09MSliLjFrKDcpfX0pfSw5WDpIKGIsYyl7 SiBhPUQuM087RyhiKTcuMzYoW10pOzcuUChIKCl7UihKIGk9YS5LLTE7aT49MDtp LS0pRyhhW2ldLlQ9PTcpe0coYylhW2ldKE0pO2EuN24oaSwxKX19KTtHKCFjKTcu NUEoKTtJIDd9fSk7SiBBPUgoYixjLGEpe0coYil7Yz1jfHwiMjgiO0ogcT1ELkwo YixjKyIzNiIpO0coIXF8fGEpcT1ELkwoYixjKyIzNiIsRC4yZChhKSl9SSBxfTtE LjE3LjVBPUgoYSl7YT1hfHwiMjgiO0kgNy5QKEgoKXtKIHE9QSg3LGEpO3EuNHMo KTtHKHEuSylxWzBdLjFrKDcpfSl9O0QuMWwoezc3OkgoYixhLGMpe0ogZD1iJiZi LjFxPT1hMD9iOnsxSjpjfHwhYyYmYXx8RC4xRChiKSYmYiwydTpiLDQxOmMmJmF8 fGEmJmEuMXEhPTl0JiZhfTtkLjJ1PShkLjJ1JiZkLjJ1LjFxPT00TD9kLjJ1OkQu MjguNUtbZC4ydV0pfHxELjI4LjVLLjc0O2QuNU09ZC4xSjtkLjFKPUgoKXtHKGQu MzYhPT1RKUQoNykuNUEoKTtHKEQuMUQoZC41TSkpZC41TS4xayg3KX07SSBkfSw0 MTp7NzM6SChwLG4sYixhKXtJIGIrYSpwfSw1UDpIKHAsbixiLGEpe0koKC0yOS45 cihwKjI5LjlxKS8yKSswLjUpKmErYn19LDNPOltdLDQ4OlUsMjg6SChiLGMsYSl7 Ny4xNT1jOzcuVD1iOzcuMWk9YTtHKCFjLjNaKWMuM1o9e319fSk7RC4yOC40ND17 NEQ6SCgpe0coNy4xNS4yWSk3LjE1LjJZLjFrKDcuVCw3LjF6LDcpOyhELjI4LjJZ WzcuMWldfHxELjI4LjJZLjR3KSg3KTtHKDcuMWk9PSIxWiJ8fDcuMWk9PSIyaCIp Ny5ULlYuMTg9IjNJIn0sMXQ6SChhKXtHKDcuVFs3LjFpXSE9VSYmNy5ULlZbNy4x aV09PVUpSSA3LlRbNy4xaV07SiByPTNkKEQuMWcoNy5ULDcuMWksYSkpO0kgciYm cj4tOXA/cjozZChELjJhKDcuVCw3LjFpKSl8fDB9LDNHOkgoYyxiLGQpezcuNVY9 MXooKTs3LjJiPWM7Ny4zbD1iOzcuMk09ZHx8Ny4yTXx8IjJYIjs3LjF6PTcuMmI7 Ny4yUz03LjROPTA7Ny40RCgpO0ogZT03O0ggdChhKXtJIGUuMlkoYSl9dC5UPTcu VDtELjNPLjFwKHQpO0coRC40OD09VSl7RC40OD00SShIKCl7SiBhPUQuM087UihK IGk9MDtpPGEuSztpKyspRyghYVtpXSgpKWEuN24oaS0tLDEpO0coIWEuSyl7N2so RC40OCk7RC40OD1VfX0sMTMpfX0sMU46SCgpezcuMTUuM1pbNy4xaV09RC4xSyg3 LlQuViw3LjFpKTs3LjE1LjFOPU07Ny4zRygwLDcuMXQoKSk7Ryg3LjFpPT0iMmgi fHw3LjFpPT0iMVoiKTcuVC5WWzcuMWldPSI5bSI7RCg3LlQpLjFOKCl9LDFNOkgo KXs3LjE1LjNaWzcuMWldPUQuMUsoNy5ULlYsNy4xaSk7Ny4xNS4xTT1NOzcuM0co Ny4xdCgpLDApfSwyWTpIKGEpe0ogdD0xeigpO0coYXx8dD43LjE1LjJ1KzcuNVYp ezcuMXo9Ny4zbDs3LjJTPTcuNE49MTs3LjREKCk7Ny4xNS40NVs3LjFpXT1NO0og Yj1NO1IoSiBpIDFuIDcuMTUuNDUpRyg3LjE1LjQ1W2ldIT09TSliPVE7RyhiKXtH KDcuMTUuMTghPVUpezcuVC5WLjMzPTcuMTUuMzM7Ny5ULlYuMTg9Ny4xNS4xODtH KEQuMWcoNy5ULCIxOCIpPT0iMkYiKTcuVC5WLjE4PSIzSSJ9Ryg3LjE1LjFNKTcu VC5WLjE4PSIyRiI7Ryg3LjE1LjFNfHw3LjE1LjFOKVIoSiBwIDFuIDcuMTUuNDUp RC4xSyg3LlQuVixwLDcuMTUuM1pbcF0pfUcoYik3LjE1LjFKLjFrKDcuVCk7SSBR fU57SiBuPXQtNy41Vjs3LjROPW4vNy4xNS4ydTs3LjJTPUQuNDFbNy4xNS40MXx8 KEQuNDEuNVA/IjVQIjoiNzMiKV0oNy40TixuLDAsMSw3LjE1LjJ1KTs3LjF6PTcu MmIrKCg3LjNsLTcuMmIpKjcuMlMpOzcuNEQoKX1JIE19fTtELjFsKEQuMjgsezVL Ons5bDo5aiw5aTo3ZSw3NDo5Z30sMlk6ezJlOkgoYSl7YS5ULjJlPWEuMXp9LDJj OkgoYSl7YS5ULjJjPWEuMXp9LDF5OkgoYSl7RC4xSyhhLlQuViwiMXkiLGEuMXop fSw0dzpIKGEpe2EuVC5WW2EuMWldPWEuMXorYS4yTX19fSk7RC4xNy4yaT1IKCl7 SiBiPTAsMVM9MCxUPTdbMF0sM3E7RyhUKWFvKEQuMTQpe0ogZD1ULjFkLDRhPVQs MXM9VC4xcywxUT1ULjJ6LDVVPTJrJiYzcig1Qik8OWMmJiEvOWEvaS4xMSh2KSwx Zz1ELjJhLDNjPTFnKFQsIjMwIik9PSIzYyI7RyhULjd5KXtKIGM9VC43eSgpOzFl KGMuMUErMjkuMmYoMVEuMUMuMmUsMVEuMWMuMmUpLGMuMVMrMjkuMmYoMVEuMUMu MmMsMVEuMWMuMmMpKTsxZSgtMVEuMUMuNmIsLTFRLjFDLjZhKX1OezFlKFQuNVgs VC41Vyk7MUIoMXMpezFlKDFzLjVYLDFzLjVXKTtHKDQyJiYhL150KDk4fGR8aCkk L2kuMTEoMXMuMmopfHwyayYmITVVKTJDKDFzKTtHKCEzYyYmMWcoMXMsIjMwIik9 PSIzYyIpM2M9TTs0YT0vXjFjJC9pLjExKDFzLjJqKT80YToxczsxcz0xcy4xc30x QihkJiZkLjJqJiYhL14xY3wySyQvaS4xMShkLjJqKSl7RyghL145NnwxVC4qJC9p LjExKDFnKGQsIjE4IikpKTFlKC1kLjJlLC1kLjJjKTtHKDQyJiYxZyhkLCIzMyIp IT0iNGoiKTJDKGQpO2Q9ZC4xZH1HKCg1VSYmKDNjfHwxZyg0YSwiMzAiKT09IjV4 IikpfHwoNDImJjFnKDRhLCIzMCIpIT0iNXgiKSkxZSgtMVEuMWMuNVgsLTFRLjFj LjVXKTtHKDNjKTFlKDI5LjJmKDFRLjFDLjJlLDFRLjFjLjJlKSwyOS4yZigxUS4x Qy4yYywxUS4xYy4yYykpfTNxPXsxUzoxUywxQTpifX1IIDJDKGEpezFlKEQuMmEo YSwiNlYiLE0pLEQuMmEoYSwiNlUiLE0pKX1IIDFlKGwsdCl7Yis9M3IobCwxMCl8 fDA7MVMrPTNyKHQsMTApfHwwfUkgM3F9O0QuMTcuMWwoezMwOkgoKXtKIGE9MCwx Uz0wLDNxO0coN1swXSl7SiBiPTcuMXMoKSwyaT03LjJpKCksNGM9L14xY3wySyQv aS4xMShiWzBdLjJqKT97MVM6MCwxQTowfTpiLjJpKCk7MmkuMVMtPTI1KDcsXCc5 NFwnKTsyaS4xQS09MjUoNyxcJ2FGXCcpOzRjLjFTKz0yNShiLFwnNlVcJyk7NGMu MUErPTI1KGIsXCc2VlwnKTszcT17MVM6MmkuMVMtNGMuMVMsMUE6MmkuMUEtNGMu MUF9fUkgM3F9LDFzOkgoKXtKIGE9N1swXS4xczsxQihhJiYoIS9eMWN8MkskL2ku MTEoYS4yaikmJkQuMWcoYSxcJzMwXCcpPT1cJzkzXCcpKWE9YS4xcztJIEQoYSl9 fSk7RC5QKFtcJzVlXCcsXCc1R1wnXSxIKGksYil7SiBjPVwnNHlcJytiO0QuMTdb Y109SChhKXtHKCE3WzBdKUk7SSBhIT0xMj83LlAoSCgpezc9PTFifHw3PT1TPzFi LjkyKCFpP2E6RCgxYikuMmUoKSxpP2E6RCgxYikuMmMoKSk6N1tjXT1hfSk6N1sw XT09MWJ8fDdbMF09PVM/NDZbaT9cJ2FJXCc6XCdhSlwnXXx8RC43MSYmUy4xQ1tj XXx8Uy4xY1tjXTo3WzBdW2NdfX0pO0QuUChbIjZOIiwiNGIiXSxIKGksYil7SiBj PWk/IjVlIjoiNUciLDRmPWk/IjZrIjoiNmkiO0QuMTdbIjVzIitiXT1IKCl7SSA3 W2IuM3koKV0oKSsyNSg3LCI1NyIrYykrMjUoNywiNTciKzRmKX07RC4xN1siOTAi K2JdPUgoYSl7SSA3WyI1cyIrYl0oKSsyNSg3LCIyQyIrYysiNGIiKSsyNSg3LCIy QyIrNGYrIjRiIikrKGE/MjUoNywiNlMiK2MpKzI1KDcsIjZTIis0Zik6MCl9fSl9 KSgpOycsNjIsNjY5LCd8fHx8fHx8dGhpc3x8fHx8fHx8fHx8fHx8fHx8fHx8fHx8 fHx8fHx8fHx8fHx8aWZ8ZnVuY3Rpb258cmV0dXJufHZhcnxsZW5ndGh8ZGF0YXx0 cnVlfGVsc2V8dHlwZXxlYWNofGZhbHNlfGZvcnxkb2N1bWVudHxlbGVtfG51bGx8 c3R5bGV8ZXZlbnR8fG5vZGVOYW1lfHx8dGVzdHx1bmRlZmluZWR8fGJyb3dzZXJ8 b3B0aW9uc3xub2RlVHlwZXxmbnxkaXNwbGF5fGFyZ3VtZW50c3x1cmx8d2luZG93 fGJvZHl8cGFyZW50Tm9kZXxhZGR8bXNpZXxjc3N8aW5kZXhPZnxwcm9wfHR5cGVv ZnxjYWxsfGV4dGVuZHxzY3JpcHR8aW58cmVwbGFjZXxwdXNofGNvbnN0cnVjdG9y fHRleHR8b2Zmc2V0UGFyZW50fGN1cnxzdGF0dXN8ZGl2fGFwcGx5fGZpcnN0Q2hp bGR8b3BhY2l0eXxub3d8bGVmdHx3aGlsZXxkb2N1bWVudEVsZW1lbnR8aXNGdW5j dGlvbnxmaWx0ZXJ8Y2xhc3NOYW1lfGhpZGRlbnxoYW5kbGV8bWF0Y2h8Y29tcGxl dGV8YXR0cnxyZXR8aGlkZXxzaG93fGRhdGFUeXBlfHRyaWdnZXJ8ZG9jfHNwbGl0 fHRvcHx0YWJsZXx0cnl8Y2F0Y2h8c3VjY2Vzc3xicmVha3xjYWNoZXxoZWlnaHR8 fHJlbW92ZXx0Ym9keXxzdHJpbmd8Z3VpZHxudW18Z2xvYmFsfHJlYWR5fGZ4fE1h dGh8Y3VyQ1NTfHN0YXJ0fHNjcm9sbFRvcHxtYWtlQXJyYXl8c2Nyb2xsTGVmdHxt YXh8YW5pbWF0ZXx3aWR0aHxvZmZzZXR8dGFnTmFtZXxzYWZhcml8bWFwfHRvZ2ds ZXx8ZG9uZXxBcnJheXxmaW5kfHRvVXBwZXJDYXNlfGJ1dHRvbnxzcGVjaWFsfGR1 cmF0aW9ufGlkfGNvcHl8dmFsdWV8aGFuZGxlcnxvd25lckRvY3VtZW50fHNlbGVj dHxuZXd8Ym9yZGVyfGV4ZWN8c3RhY2t8bm9uZXxvcGVyYXxuZXh0U2libGluZ3xw dXNoU3RhY2t8dGFyZ2V0fGh0bWx8aW5BcnJheXx1bml0fHhtbHxiaW5kfEdFVHxp c1JlYWR5fG1lcmdlfHBvc3x0aW1lb3V0fGRlbGV0ZXxvbmV8c2VsZWN0ZWR8cHh8 c3RlcHxqc3JlfHBvc2l0aW9ufGFzeW5jfHByZXZlbnREZWZhdWx0fG92ZXJmbG93 fG5hbWV8d2hpY2h8cXVldWV8cmVtb3ZlQ2hpbGR8bmFtZXNwYWNlfGluc2VydEJl Zm9yZXxudGh8cmVtb3ZlRGF0YXxmaXhlZHxwYXJzZUZsb2F0fGVycm9yfHJlYWR5 U3RhdGV8bXVsdGlGaWx0ZXJ8Y3JlYXRlRWxlbWVudHxybHxyZXx0cmltfGVuZHxf fHBhcmFtfGZpcnN0fGdldHxyZXN1bHRzfHBhcnNlSW50fHNsaWNlfGNoaWxkTm9k ZXN8ZW5jb2RlVVJJQ29tcG9uZW50fGFwcGVuZHxldmVudHN8ZWxlbXN8dG9Mb3dl ckNhc2V8anNvbnxyZWFkeUxpc3R8c2V0VGltZW91dHxncmVwfG1vdXNlZW50ZXJ8 Y29sb3J8aXN8Y3VzdG9tfGdldEVsZW1lbnRzQnlUYWdOYW1lfGJsb2NrfHN0b3BQ cm9wYWdhdGlvbnxhZGRFdmVudExpc3RlbmVyfGNhbGxlZXxwcm94eXxtb3VzZWxl YXZlfHRpbWVyc3xkZWZhdWx0Vmlld3xwYXNzd29yZHxkaXNhYmxlZHxsYXN0fGhh c3xhcHBlbmRDaGlsZHxmb3JtfGRvbU1hbmlwfHByb3BzfGFqYXh8b3JpZ3xzZXR8 ZWFzaW5nfG1vemlsbGF8bG9hZHxwcm90b3R5cGV8Y3VyQW5pbXxzZWxmfGNoYXJD b2RlfHRpbWVySWR8b2JqZWN0fG9mZnNldENoaWxkfFdpZHRofHBhcmVudE9mZnNl dHxzcmN8dW5iaW5kfGJyfGN1cnJlbnRTdHlsZXxjbGVhbnxmbG9hdHx2aXNpYmxl fHJlbGF0ZWRUYXJnZXR8cHJldmlvdXNTaWJsaW5nfGhhbmRsZXJzfGlzWE1MRG9j fG9ufHNldHVwfG5vZGVJbmRleHx1bmlxdWV8c2hpZnR8amF2YXNjcmlwdHxjaGls ZHxSZWdFeHB8X2RlZmF1bHR8ZGVlcHxzY3JvbGx8bGFzdE1vZGlmaWVkfHRlYXJk b3dufHNldFJlcXVlc3RIZWFkZXJ8dGltZVN0YW1wfHVwZGF0ZXxlbXB0eXx0cnxn ZXRBdHRyaWJ1dGV8aW5uZXJIVE1MfHNldEludGVydmFsfGNoZWNrZWR8ZnJvbUVs ZW1lbnR8TnVtYmVyfGpRdWVyeXxzdGF0ZXxhY3RpdmV8anNvbnB8YWNjZXB0c3xh cHBsaWNhdGlvbnxkaXJ8aW5wdXR8cmVzcG9uc2VUZXh0fGNsaWNrfHN0eWxlU2hl ZXRzfHVubG9hZHxub3R8bGFzdFRvZ2dsZXxvdXRsaW5lfG1vdXNlb3V0fGdldFBy b3BlcnR5VmFsdWV8bW91c2VvdmVyfGdldENvbXB1dGVkU3R5bGV8YmluZFJlYWR5 fFN0cmluZ3xwYWRkaW5nfHBhZ2VYfG1ldGFLZXl8a2V5Q29kZXxnZXRXSHxhbmRT ZWxmfGNsaWVudFh8TGVmdHxhbGx8dmlzaWJpbGl0eXxjb250YWluZXJ8aW5kZXh8 aW5pdHx0cmlnZ2VyZWR8cmVtb3ZlQXR0cmlidXRlfGNsYXNzRmlsdGVyfHByZXZP YmplY3R8c3VibWl0fGZpbGV8YWZ0ZXJ8d2luZG93RGF0YXxpbm5lcnxjbGllbnR8 Z2xvYmFsRXZhbHxzaWJsaW5nfGpxdWVyeXxhYnNvbHV0ZXxjbG9uZXx3cmFwQWxs fGRlcXVldWV8dmVyc2lvbnx0cmlnZ2VySGFuZGxlcnxvbGRibG9ja3xjdHJsS2V5 fGNyZWF0ZVRleHROb2RlfFRvcHxoYW5kbGVFcnJvcnxnZXRSZXNwb25zZUhlYWRl cnxwYXJzZXJlcnJvcnxzcGVlZHN8Y2hlY2tib3h8b2xkfDAwfHJhZGlvfHN3aW5n fGhyZWZ8TW9kaWZpZWR8aWZNb2RpZmllZHxsYXN0Q2hpbGR8c2FmYXJpMnxzdGFy dFRpbWV8b2Zmc2V0VG9wfG9mZnNldExlZnR8dXNlcm5hbWV8bG9jYXRpb258YWph eFNldHRpbmdzfGdldEVsZW1lbnRCeUlkfGlzU2ltcGxlfHZhbHVlc3xzZWxlY3Rl ZEluZGV4fHJ1bnRpbWVTdHlsZXxyc0xlZnR8X2xvYWR8bG9hZGVkfERPTUNvbnRl bnRMb2FkZWR8Y2xpZW50VG9wfGNsaWVudExlZnR8dG9FbGVtZW50fHNyY0VsZW1l bnR8dmFsfHBhZ2VZfFBPU1R8dW5zaGlmdHxCb3R0b218Y2xpZW50WXxSaWdodHxm aXh8ZXhjbHVzaXZlfGRldGFjaEV2ZW50fGNsb25lTm9kZXxyZW1vdmVFdmVudExp c3RlbmVyfHN3YXB8dG9TdHJpbmd8am9pbnxhdHRhY2hFdmVudHxldmFsfHN1YnN0 cnxoZWFkfHBhcnNlfHRleHRhcmVhfHJlc2V0fGltYWdlfHpvb218b2RkfGV2ZW58 YmVmb3JlfHByZXBlbmR8ZXhjbHVkZXxleHByfHF1aWNrQ2xhc3N8cXVpY2tJRHx1 dWlkfHF1aWNrQ2hpbGR8Y29udGludWV8SGVpZ2h0fHRleHRDb250ZW50fGFwcGVu ZFRvfGNvbnRlbnRzfG9wZW58bWFyZ2lufGV2YWxTY3JpcHR8Ym9yZGVyVG9wV2lk dGh8Ym9yZGVyTGVmdFdpZHRofHBhcmVudHxodHRwRGF0YXxzZXRBcnJheXxDU1Mx Q29tcGF0fGNvbXBhdE1vZGV8Ym94TW9kZWx8Y3NzRmxvYXR8bGluZWFyfGRlZnx3 ZWJraXR8bm9kZVZhbHVlfHNwZWVkfF90b2dnbGV8ZXF8MTAwfHJlcGxhY2VXaXRo fDMwNHxjb25jYXR8MjAwfGFscGhhfExhc3R8aHR0cE5vdE1vZGlmaWVkfGdldEF0 dHJpYnV0ZU5vZGV8aHR0cFN1Y2Nlc3N8Y2xlYXJJbnRlcnZhbHxhYm9ydHxiZWZv cmVTZW5kfHNwbGljZXxzdHlsZUZsb2F0fHRocm93fGNvbGdyb3VwfFhNTEh0dHBS ZXF1ZXN0fEFjdGl2ZVhPYmplY3R8c2NyaXB0Q2hhcnNldHxjYWxsYmFja3xmaWVs ZHNldHxtdWx0aXBsZXxwcm9jZXNzRGF0YXxnZXRCb3VuZGluZ0NsaWVudFJlY3R8 Y29udGVudFR5cGV8bGlua3xhamF4U2VuZHxhamF4U3VjY2Vzc3xhamF4RXJyb3J8 Y29sfGFqYXhDb21wbGV0ZXxhamF4U3RvcHxhamF4U3RhcnR8c2VyaWFsaXplQXJy YXl8bm90bW9kaWZpZWR8a2V5cHJlc3N8a2V5ZG93bnxjaGFuZ2V8bW91c2V1cHxt b3VzZWRvd258ZGJsY2xpY2t8Zm9jdXN8Ymx1cnxzdHlsZXNoZWV0fGhhc0NsYXNz fHJlbHxkb1Njcm9sbHxibGFja3xob3Zlcnxzb2xpZHxjYW5jZWxCdWJibGV8cmV0 dXJuVmFsdWV8d2hlZWxEZWx0YXx2aWV3fHJvdW5kfHNoaWZ0S2V5fHJlc2l6ZXxz Y3JlZW5ZfHNjcmVlblh8cmVsYXRlZE5vZGV8bW91c2Vtb3ZlfHByZXZWYWx1ZXxv cmlnaW5hbFRhcmdldHxvZmZzZXRIZWlnaHR8a2V5dXB8bmV3VmFsdWV8b2Zmc2V0 V2lkdGh8ZXZlbnRQaGFzZXxkZXRhaWx8Y3VycmVudFRhcmdldHxjYW5jZWxhYmxl fGJ1YmJsZXN8YXR0ck5hbWV8YXR0ckNoYW5nZXxhbHRLZXl8b3JpZ2luYWxFdmVu dHxjaGFyQXR8MG58c3Vic3RyaW5nfGFuaW1hdGVkfGhlYWRlcnxub0NvbmZsaWN0 fGxpbmV8ZW5hYmxlZHxpbm5lclRleHR8Y29udGFpbnN8b25seXx3ZWlnaHR8Zm9u dHxndHxsdHx1RkZGRnx1MDEyOHxzaXplfDQxN3xCb29sZWFufERhdGV8dG9nZ2xl Q2xhc3N8cmVtb3ZlQ2xhc3N8YWRkQ2xhc3N8cmVtb3ZlQXR0cnxyZXBsYWNlQWxs fGluc2VydEFmdGVyfHByZXBlbmRUb3x3cmFwfGNvbnRlbnRXaW5kb3d8Y29udGVu dERvY3VtZW50fGlmcmFtZXxjaGlsZHJlbnxzaWJsaW5nc3xwcmV2QWxsfHdyYXBJ bm5lcnxuZXh0QWxsfG91dGVyfHByZXZ8c2Nyb2xsVG98c3RhdGljfG1hcmdpblRv cHxuZXh0fGlubGluZXxwYXJlbnRzfGFibGV8Y2VsbFNwYWNpbmd8YWRvYmVhaXJ8 Y2VsbHNwYWNpbmd8NTIyfG1heExlbmd0aHxtYXhsZW5ndGh8cmVhZE9ubHl8NDAw fHJlYWRvbmx5fGZhc3R8NjAwfGNsYXNzfHNsb3d8MXB4fGh0bWxGb3J8cmV2ZXJz ZXwxMDAwMHxQSXxjb3N8Y29tcGF0aWJsZXxGdW5jdGlvbnxzZXREYXRhfGllfHJh fGl0fHJ2fGdldERhdGF8dXNlckFnZW50fG5hdmlnYXRvcnxmYWRlVG98ZmFkZUlu fHNsaWRlVG9nZ2xlfHNsaWRlVXB8c2xpZGVEb3dufGlnfHJlc3BvbnNlWE1MfGNv bnRlbnR8MTIyM3xOYU58ZmFkZU91dHwzMDB8cHJvdG9jb2x8c2VuZHxzZXRBdHRy aWJ1dGV8b3B0aW9ufGRhdGFGaWx0ZXJ8Y3NzVGV4dHxjaGFuZ2VkfGJlfEFjY2Vw dHxzdG9wfFdpdGh8UmVxdWVzdGVkfE9iamVjdHxjYW58R01UfHByb3BlcnR5fDE5 NzB8SmFufDAxfFRodXxTaW5jZXxJZnxUeXBlfENvbnRlbnR8WE1MSFRUUHx0aHxN aWNyb3NvZnR8dGR8b25yZWFkeXN0YXRlY2hhbmdlfG9ubG9hZHxjYXB8Y2hhcnNl dHxjb2xnfGhvc3R8dGZvb3R8c3BlY2lmaWVkfHdpdGh8MV98dGhlYWR8bGVnfHBs YWlufGF0dHJpYnV0ZXN8b3B0fGVtYmVkfHVybGVuY29kZWR8d3d3fGFyZWF8aHJ8 YWpheFNldHVwfG1ldGF8cG9zdHxnZXRKU09OfGdldFNjcmlwdHxtYXJnaW5MZWZ0 fGltZ3xlbGVtZW50c3xwYWdlWU9mZnNldHxwYWdlWE9mZnNldHxhYmJyfHNlcmlh bGl6ZXxwaXhlbExlZnQnLnNwbGl0KCd8JyksMCx7fSkp ------------ovrp3U8y8KC3rcvqsh3ZpB Content-Disposition: inline; filename=drupal.js Content-Type: application/javascript; charset=utf-8; name=drupal.js Content-Location: http://www.psychologytoday.com/misc/drupal.js?D Content-Transfer-Encoding: Base64 Ly8gJElkOiBkcnVwYWwuanMsdiAxLjQxLjIuNCAyMDA5LzA3LzIxIDA4OjU5OjEw IGdvYmEgRXhwICQKCnZhciBEcnVwYWwgPSBEcnVwYWwgfHwgeyAnc2V0dGluZ3Mn OiB7fSwgJ2JlaGF2aW9ycyc6IHt9LCAndGhlbWVzJzoge30sICdsb2NhbGUnOiB7 fSB9OwoKLyoqCiAqIFNldCB0aGUgdmFyaWFibGUgdGhhdCBpbmRpY2F0ZXMgaWYg SmF2YVNjcmlwdCBiZWhhdmlvcnMgc2hvdWxkIGJlIGFwcGxpZWQKICovCkRydXBh bC5qc0VuYWJsZWQgPSBkb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSAmJiBk b2N1bWVudC5jcmVhdGVFbGVtZW50ICYmIGRvY3VtZW50LmNyZWF0ZVRleHROb2Rl ICYmIGRvY3VtZW50LmRvY3VtZW50RWxlbWVudCAmJiBkb2N1bWVudC5nZXRFbGVt ZW50QnlJZDsKCi8qKgogKiBBdHRhY2ggYWxsIHJlZ2lzdGVyZWQgYmVoYXZpb3Jz IHRvIGEgcGFnZSBlbGVtZW50LgogKgogKiBCZWhhdmlvcnMgYXJlIGV2ZW50LXRy aWdnZXJlZCBhY3Rpb25zIHRoYXQgYXR0YWNoIHRvIHBhZ2UgZWxlbWVudHMsIGVu aGFuY2luZwogKiBkZWZhdWx0IG5vbi1KYXZhc2NyaXB0IFVJcy4gQmVoYXZpb3Jz IGFyZSByZWdpc3RlcmVkIGluIHRoZSBEcnVwYWwuYmVoYXZpb3JzCiAqIG9iamVj dCBhcyBmb2xsb3dzOgogKiBAY29kZQogKiAgICBEcnVwYWwuYmVoYXZpb3JzLmJl aGF2aW9yTmFtZSA9IGZ1bmN0aW9uICgpIHsKICogICAgICAuLi4KICogICAgfTsK ICogQGVuZGNvZGUKICoKICogRHJ1cGFsLmF0dGFjaEJlaGF2aW9ycyBpcyBhZGRl ZCBiZWxvdyB0byB0aGUgalF1ZXJ5IHJlYWR5IGV2ZW50IGFuZCBzbwogKiBydW5z IG9uIGluaXRpYWwgcGFnZSBsb2FkLiBEZXZlbG9wZXJzIGltcGxlbWVudGluZyBB SEFIL0FKQVggaW4gdGhlaXIKICogc29sdXRpb25zIHNob3VsZCBhbHNvIGNhbGwg dGhpcyBmdW5jdGlvbiBhZnRlciBuZXcgcGFnZSBjb250ZW50IGhhcyBiZWVuCiAq IGxvYWRlZCwgZmVlZGluZyBpbiBhbiBlbGVtZW50IHRvIGJlIHByb2Nlc3NlZCwg aW4gb3JkZXIgdG8gYXR0YWNoIGFsbAogKiBiZWhhdmlvcnMgdG8gdGhlIG5ldyBj b250ZW50LgogKgogKiBCZWhhdmlvcnMgc2hvdWxkIHVzZSBhIGNsYXNzIGluIHRo ZSBmb3JtIGJlaGF2aW9yTmFtZS1wcm9jZXNzZWQgdG8gZW5zdXJlCiAqIHRoZSBi ZWhhdmlvciBpcyBhdHRhY2hlZCBvbmx5IG9uY2UgdG8gYSBnaXZlbiBlbGVtZW50 LiAoRG9pbmcgc28gZW5hYmxlcwogKiB0aGUgcmVwcm9jZXNzaW5nIG9mIGdpdmVu IGVsZW1lbnRzLCB3aGljaCBtYXkgYmUgbmVlZGVkIG9uIG9jY2FzaW9uIGRlc3Bp dGUKICogdGhlIGFiaWxpdHkgdG8gbGltaXQgYmVoYXZpb3IgYXR0YWNobWVudCB0 byBhIHBhcnRpY3VsYXIgZWxlbWVudC4pCiAqCiAqIEBwYXJhbSBjb250ZXh0CiAq ICAgQW4gZWxlbWVudCB0byBhdHRhY2ggYmVoYXZpb3JzIHRvLiBJZiBub25lIGlz IGdpdmVuLCB0aGUgZG9jdW1lbnQgZWxlbWVudAogKiAgIGlzIHVzZWQuCiAqLwpE cnVwYWwuYXR0YWNoQmVoYXZpb3JzID0gZnVuY3Rpb24oY29udGV4dCkgewogIGNv bnRleHQgPSBjb250ZXh0IHx8IGRvY3VtZW50OwogIGlmIChEcnVwYWwuanNFbmFi bGVkKSB7CiAgICAvLyBFeGVjdXRlIGFsbCBvZiB0aGVtLgogICAgalF1ZXJ5LmVh Y2goRHJ1cGFsLmJlaGF2aW9ycywgZnVuY3Rpb24oKSB7CiAgICAgIHRoaXMoY29u dGV4dCk7CiAgICB9KTsKICB9Cn07CgovKioKICogRW5jb2RlIHNwZWNpYWwgY2hh cmFjdGVycyBpbiBhIHBsYWluLXRleHQgc3RyaW5nIGZvciBkaXNwbGF5IGFzIEhU TUwuCiAqLwpEcnVwYWwuY2hlY2tQbGFpbiA9IGZ1bmN0aW9uKHN0cikgewogIHN0 ciA9IFN0cmluZyhzdHIpOwogIHZhciByZXBsYWNlID0geyAnJic6ICcmYW1wOycs ICciJzogJyZxdW90OycsICc8JzogJyZsdDsnLCAnPic6ICcmZ3Q7JyB9OwogIGZv ciAodmFyIGNoYXJhY3RlciBpbiByZXBsYWNlKSB7CiAgICB2YXIgcmVnZXggPSBu ZXcgUmVnRXhwKGNoYXJhY3RlciwgJ2cnKTsKICAgIHN0ciA9IHN0ci5yZXBsYWNl KHJlZ2V4LCByZXBsYWNlW2NoYXJhY3Rlcl0pOwogIH0KICByZXR1cm4gc3RyOwp9 OwoKLyoqCiAqIFRyYW5zbGF0ZSBzdHJpbmdzIHRvIHRoZSBwYWdlIGxhbmd1YWdl IG9yIGEgZ2l2ZW4gbGFuZ3VhZ2UuCiAqCiAqIFNlZSB0aGUgZG9jdW1lbnRhdGlv biBvZiB0aGUgc2VydmVyLXNpZGUgdCgpIGZ1bmN0aW9uIGZvciBmdXJ0aGVyIGRl dGFpbHMuCiAqCiAqIEBwYXJhbSBzdHIKICogICBBIHN0cmluZyBjb250YWluaW5n IHRoZSBFbmdsaXNoIHN0cmluZyB0byB0cmFuc2xhdGUuCiAqIEBwYXJhbSBhcmdz CiAqICAgQW4gb2JqZWN0IG9mIHJlcGxhY2VtZW50cyBwYWlycyB0byBtYWtlIGFm dGVyIHRyYW5zbGF0aW9uLiBJbmNpZGVuY2VzCiAqICAgb2YgYW55IGtleSBpbiB0 aGlzIGFycmF5IGFyZSByZXBsYWNlZCB3aXRoIHRoZSBjb3JyZXNwb25kaW5nIHZh bHVlLgogKiAgIEJhc2VkIG9uIHRoZSBmaXJzdCBjaGFyYWN0ZXIgb2YgdGhlIGtl eSwgdGhlIHZhbHVlIGlzIGVzY2FwZWQgYW5kL29yIHRoZW1lZDoKICogICAgLSAh dmFyaWFibGU6IGluc2VydGVkIGFzIGlzCiAqICAgIC0gQHZhcmlhYmxlOiBlc2Nh cGUgcGxhaW4gdGV4dCB0byBIVE1MIChEcnVwYWwuY2hlY2tQbGFpbikKICogICAg LSAldmFyaWFibGU6IGVzY2FwZSB0ZXh0IGFuZCB0aGVtZSBhcyBhIHBsYWNlaG9s ZGVyIGZvciB1c2VyLXN1Ym1pdHRlZAogKiAgICAgIGNvbnRlbnQgKGNoZWNrUGxh aW4gKyBEcnVwYWwudGhlbWUoJ3BsYWNlaG9sZGVyJykpCiAqIEByZXR1cm4KICog ICBUaGUgdHJhbnNsYXRlZCBzdHJpbmcuCiAqLwpEcnVwYWwudCA9IGZ1bmN0aW9u KHN0ciwgYXJncykgewogIC8vIEZldGNoIHRoZSBsb2NhbGl6ZWQgdmVyc2lvbiBv ZiB0aGUgc3RyaW5nLgogIGlmIChEcnVwYWwubG9jYWxlLnN0cmluZ3MgJiYgRHJ1 cGFsLmxvY2FsZS5zdHJpbmdzW3N0cl0pIHsKICAgIHN0ciA9IERydXBhbC5sb2Nh bGUuc3RyaW5nc1tzdHJdOwogIH0KCiAgaWYgKGFyZ3MpIHsKICAgIC8vIFRyYW5z Zm9ybSBhcmd1bWVudHMgYmVmb3JlIGluc2VydGluZyB0aGVtCiAgICBmb3IgKHZh ciBrZXkgaW4gYXJncykgewogICAgICBzd2l0Y2ggKGtleS5jaGFyQXQoMCkpIHsK ICAgICAgICAvLyBFc2NhcGVkIG9ubHkKICAgICAgICBjYXNlICdAJzoKICAgICAg ICAgIGFyZ3Nba2V5XSA9IERydXBhbC5jaGVja1BsYWluKGFyZ3Nba2V5XSk7CiAg ICAgICAgYnJlYWs7CiAgICAgICAgLy8gUGFzcy10aHJvdWdoCiAgICAgICAgY2Fz ZSAnISc6CiAgICAgICAgICBicmVhazsKICAgICAgICAvLyBFc2NhcGVkIGFuZCBw bGFjZWhvbGRlcgogICAgICAgIGNhc2UgJyUnOgogICAgICAgIGRlZmF1bHQ6CiAg ICAgICAgICBhcmdzW2tleV0gPSBEcnVwYWwudGhlbWUoJ3BsYWNlaG9sZGVyJywg YXJnc1trZXldKTsKICAgICAgICAgIGJyZWFrOwogICAgICB9CiAgICAgIHN0ciA9 IHN0ci5yZXBsYWNlKGtleSwgYXJnc1trZXldKTsKICAgIH0KICB9CiAgcmV0dXJu IHN0cjsKfTsKCi8qKgogKiBGb3JtYXQgYSBzdHJpbmcgY29udGFpbmluZyBhIGNv dW50IG9mIGl0ZW1zLgogKgogKiBUaGlzIGZ1bmN0aW9uIGVuc3VyZXMgdGhhdCB0 aGUgc3RyaW5nIGlzIHBsdXJhbGl6ZWQgY29ycmVjdGx5LiBTaW5jZSBEcnVwYWwu dCgpIGlzCiAqIGNhbGxlZCBieSB0aGlzIGZ1bmN0aW9uLCBtYWtlIHN1cmUgbm90 IHRvIHBhc3MgYWxyZWFkeS1sb2NhbGl6ZWQgc3RyaW5ncyB0byBpdC4KICoKICog U2VlIHRoZSBkb2N1bWVudGF0aW9uIG9mIHRoZSBzZXJ2ZXItc2lkZSBmb3JtYXRf cGx1cmFsKCkgZnVuY3Rpb24gZm9yIGZ1cnRoZXIgZGV0YWlscy4KICoKICogQHBh cmFtIGNvdW50CiAqICAgVGhlIGl0ZW0gY291bnQgdG8gZGlzcGxheS4KICogQHBh cmFtIHNpbmd1bGFyCiAqICAgVGhlIHN0cmluZyBmb3IgdGhlIHNpbmd1bGFyIGNh c2UuIFBsZWFzZSBtYWtlIHN1cmUgaXQgaXMgY2xlYXIgdGhpcyBpcwogKiAgIHNp bmd1bGFyLCB0byBlYXNlIHRyYW5zbGF0aW9uIChlLmcuIHVzZSAiMSBuZXcgY29t bWVudCIgaW5zdGVhZCBvZiAiMSBuZXciKS4KICogICBEbyBub3QgdXNlIEBjb3Vu dCBpbiB0aGUgc2luZ3VsYXIgc3RyaW5nLgogKiBAcGFyYW0gcGx1cmFsCiAqICAg VGhlIHN0cmluZyBmb3IgdGhlIHBsdXJhbCBjYXNlLiBQbGVhc2UgbWFrZSBzdXJl IGl0IGlzIGNsZWFyIHRoaXMgaXMgcGx1cmFsLAogKiAgIHRvIGVhc2UgdHJhbnNs YXRpb24uIFVzZSBAY291bnQgaW4gcGxhY2Ugb2YgdGhlIGl0ZW0gY291bnQsIGFz IGluICJAY291bnQKICogICBuZXcgY29tbWVudHMiLgogKiBAcGFyYW0gYXJncwog KiAgIEFuIG9iamVjdCBvZiByZXBsYWNlbWVudHMgcGFpcnMgdG8gbWFrZSBhZnRl ciB0cmFuc2xhdGlvbi4gSW5jaWRlbmNlcwogKiAgIG9mIGFueSBrZXkgaW4gdGhp cyBhcnJheSBhcmUgcmVwbGFjZWQgd2l0aCB0aGUgY29ycmVzcG9uZGluZyB2YWx1 ZS4KICogICBCYXNlZCBvbiB0aGUgZmlyc3QgY2hhcmFjdGVyIG9mIHRoZSBrZXks IHRoZSB2YWx1ZSBpcyBlc2NhcGVkIGFuZC9vciB0aGVtZWQ6CiAqICAgIC0gIXZh cmlhYmxlOiBpbnNlcnRlZCBhcyBpcwogKiAgICAtIEB2YXJpYWJsZTogZXNjYXBl IHBsYWluIHRleHQgdG8gSFRNTCAoRHJ1cGFsLmNoZWNrUGxhaW4pCiAqICAgIC0g JXZhcmlhYmxlOiBlc2NhcGUgdGV4dCBhbmQgdGhlbWUgYXMgYSBwbGFjZWhvbGRl ciBmb3IgdXNlci1zdWJtaXR0ZWQKICogICAgICBjb250ZW50IChjaGVja1BsYWlu ICsgRHJ1cGFsLnRoZW1lKCdwbGFjZWhvbGRlcicpKQogKiAgIE5vdGUgdGhhdCB5 b3UgZG8gbm90IG5lZWQgdG8gaW5jbHVkZSBAY291bnQgaW4gdGhpcyBhcnJheS4K ICogICBUaGlzIHJlcGxhY2VtZW50IGlzIGRvbmUgYXV0b21hdGljYWxseSBmb3Ig dGhlIHBsdXJhbCBjYXNlLgogKiBAcmV0dXJuCiAqICAgQSB0cmFuc2xhdGVkIHN0 cmluZy4KICovCkRydXBhbC5mb3JtYXRQbHVyYWwgPSBmdW5jdGlvbihjb3VudCwg c2luZ3VsYXIsIHBsdXJhbCwgYXJncykgewogIHZhciBhcmdzID0gYXJncyB8fCB7 fTsKICBhcmdzWydAY291bnQnXSA9IGNvdW50OwogIC8vIERldGVybWluZSB0aGUg aW5kZXggb2YgdGhlIHBsdXJhbCBmb3JtLgogIHZhciBpbmRleCA9IERydXBhbC5s b2NhbGUucGx1cmFsRm9ybXVsYSA/IERydXBhbC5sb2NhbGUucGx1cmFsRm9ybXVs YShhcmdzWydAY291bnQnXSkgOiAoKGFyZ3NbJ0Bjb3VudCddID09IDEpID8gMCA6 IDEpOwoKICBpZiAoaW5kZXggPT0gMCkgewogICAgcmV0dXJuIERydXBhbC50KHNp bmd1bGFyLCBhcmdzKTsKICB9CiAgZWxzZSBpZiAoaW5kZXggPT0gMSkgewogICAg cmV0dXJuIERydXBhbC50KHBsdXJhbCwgYXJncyk7CiAgfQogIGVsc2UgewogICAg YXJnc1snQGNvdW50WycrIGluZGV4ICsnXSddID0gYXJnc1snQGNvdW50J107CiAg ICBkZWxldGUgYXJnc1snQGNvdW50J107CiAgICByZXR1cm4gRHJ1cGFsLnQocGx1 cmFsLnJlcGxhY2UoJ0Bjb3VudCcsICdAY291bnRbJysgaW5kZXggKyddJykpOwog IH0KfTsKCi8qKgogKiBHZW5lcmF0ZSB0aGUgdGhlbWVkIHJlcHJlc2VudGF0aW9u IG9mIGEgRHJ1cGFsIG9iamVjdC4KICoKICogQWxsIHJlcXVlc3RzIGZvciB0aGVt ZWQgb3V0cHV0IG11c3QgZ28gdGhyb3VnaCB0aGlzIGZ1bmN0aW9uLiBJdCBleGFt aW5lcwogKiB0aGUgcmVxdWVzdCBhbmQgcm91dGVzIGl0IHRvIHRoZSBhcHByb3By aWF0ZSB0aGVtZSBmdW5jdGlvbi4gSWYgdGhlIGN1cnJlbnQKICogdGhlbWUgZG9l cyBub3QgcHJvdmlkZSBhbiBvdmVycmlkZSBmdW5jdGlvbiwgdGhlIGdlbmVyaWMg dGhlbWUgZnVuY3Rpb24gaXMKICogY2FsbGVkLgogKgogKiBGb3IgZXhhbXBsZSwg dG8gcmV0cmlldmUgdGhlIEhUTUwgdGhhdCBpcyBvdXRwdXQgYnkgdGhlbWVfcGxh Y2Vob2xkZXIodGV4dCksCiAqIGNhbGwgRHJ1cGFsLnRoZW1lKCdwbGFjZWhvbGRl cicsIHRleHQpLgogKgogKiBAcGFyYW0gZnVuYwogKiAgIFRoZSBuYW1lIG9mIHRo ZSB0aGVtZSBmdW5jdGlvbiB0byBjYWxsLgogKiBAcGFyYW0gLi4uCiAqICAgQWRk aXRpb25hbCBhcmd1bWVudHMgdG8gcGFzcyBhbG9uZyB0byB0aGUgdGhlbWUgZnVu Y3Rpb24uCiAqIEByZXR1cm4KICogICBBbnkgZGF0YSB0aGUgdGhlbWUgZnVuY3Rp b24gcmV0dXJucy4gVGhpcyBjb3VsZCBiZSBhIHBsYWluIEhUTUwgc3RyaW5nLAog KiAgIGJ1dCBhbHNvIGEgY29tcGxleCBvYmplY3QuCiAqLwpEcnVwYWwudGhlbWUg PSBmdW5jdGlvbihmdW5jKSB7CiAgZm9yICh2YXIgaSA9IDEsIGFyZ3MgPSBbXTsg aSA8IGFyZ3VtZW50cy5sZW5ndGg7IGkrKykgewogICAgYXJncy5wdXNoKGFyZ3Vt ZW50c1tpXSk7CiAgfQoKICByZXR1cm4gKERydXBhbC50aGVtZVtmdW5jXSB8fCBE cnVwYWwudGhlbWUucHJvdG90eXBlW2Z1bmNdKS5hcHBseSh0aGlzLCBhcmdzKTsK fTsKCi8qKgogKiBQYXJzZSBhIEpTT04gcmVzcG9uc2UuCiAqCiAqIFRoZSByZXN1 bHQgaXMgZWl0aGVyIHRoZSBKU09OIG9iamVjdCwgb3IgYW4gb2JqZWN0IHdpdGgg J3N0YXR1cycgMCBhbmQgJ2RhdGEnIGFuIGVycm9yIG1lc3NhZ2UuCiAqLwpEcnVw YWwucGFyc2VKc29uID0gZnVuY3Rpb24gKGRhdGEpIHsKICBpZiAoKGRhdGEuc3Vi c3RyaW5nKDAsIDEpICE9ICd7JykgJiYgKGRhdGEuc3Vic3RyaW5nKDAsIDEpICE9 ICdbJykpIHsKICAgIHJldHVybiB7IHN0YXR1czogMCwgZGF0YTogZGF0YS5sZW5n dGggPyBkYXRhIDogRHJ1cGFsLnQoJ1Vuc3BlY2lmaWVkIGVycm9yJykgfTsKICB9 CiAgcmV0dXJuIGV2YWwoJygnICsgZGF0YSArICcpOycpOwp9OwoKLyoqCiAqIEZy ZWV6ZSB0aGUgY3VycmVudCBib2R5IGhlaWdodCAoYXMgbWluaW11bSBoZWlnaHQp LiBVc2VkIHRvIHByZXZlbnQKICogdW5uZWNlc3NhcnkgdXB3YXJkcyBzY3JvbGxp bmcgd2hlbiBkb2luZyBET00gbWFuaXB1bGF0aW9ucy4KICovCkRydXBhbC5mcmVl emVIZWlnaHQgPSBmdW5jdGlvbiAoKSB7CiAgRHJ1cGFsLnVuZnJlZXplSGVpZ2h0 KCk7CiAgdmFyIGRpdiA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2RpdicpOwog ICQoZGl2KS5jc3MoewogICAgcG9zaXRpb246ICdhYnNvbHV0ZScsCiAgICB0b3A6 ICcwcHgnLAogICAgbGVmdDogJzBweCcsCiAgICB3aWR0aDogJzFweCcsCiAgICBo ZWlnaHQ6ICQoJ2JvZHknKS5jc3MoJ2hlaWdodCcpCiAgfSkuYXR0cignaWQnLCAn ZnJlZXplLWhlaWdodCcpOwogICQoJ2JvZHknKS5hcHBlbmQoZGl2KTsKfTsKCi8q KgogKiBVbmZyZWV6ZSB0aGUgYm9keSBoZWlnaHQKICovCkRydXBhbC51bmZyZWV6 ZUhlaWdodCA9IGZ1bmN0aW9uICgpIHsKICAkKCcjZnJlZXplLWhlaWdodCcpLnJl bW92ZSgpOwp9OwoKLyoqCiAqIFdyYXBwZXIgYXJvdW5kIGVuY29kZVVSSUNvbXBv bmVudCgpIHdoaWNoIGF2b2lkcyBBcGFjaGUgcXVpcmtzIChlcXVpdmFsZW50IG9m CiAqIGRydXBhbF91cmxlbmNvZGUoKSBpbiBQSFApLiBUaGlzIGZ1bmN0aW9uIHNo b3VsZCBvbmx5IGJlIHVzZWQgb24gcGF0aHMsIG5vdAogKiBvbiBxdWVyeSBzdHJp bmcgYXJndW1lbnRzLgogKi8KRHJ1cGFsLmVuY29kZVVSSUNvbXBvbmVudCA9IGZ1 bmN0aW9uIChpdGVtLCB1cmkpIHsKICB1cmkgPSB1cmkgfHwgbG9jYXRpb24uaHJl ZjsKICBpdGVtID0gZW5jb2RlVVJJQ29tcG9uZW50KGl0ZW0pLnJlcGxhY2UoLyUy Ri9nLCAnLycpOwogIHJldHVybiAodXJpLmluZGV4T2YoJz9xPScpICE9IC0xKSA/ IGl0ZW0gOiBpdGVtLnJlcGxhY2UoLyUyNi9nLCAnJTI1MjYnKS5yZXBsYWNlKC8l MjMvZywgJyUyNTIzJykucmVwbGFjZSgvXC9cLy9nLCAnLyUyNTJGJyk7Cn07Cgov KioKICogR2V0IHRoZSB0ZXh0IHNlbGVjdGlvbiBpbiBhIHRleHRhcmVhLgogKi8K RHJ1cGFsLmdldFNlbGVjdGlvbiA9IGZ1bmN0aW9uIChlbGVtZW50KSB7CiAgaWYg KHR5cGVvZihlbGVtZW50LnNlbGVjdGlvblN0YXJ0KSAhPSAnbnVtYmVyJyAmJiBk b2N1bWVudC5zZWxlY3Rpb24pIHsKICAgIC8vIFRoZSBjdXJyZW50IHNlbGVjdGlv bgogICAgdmFyIHJhbmdlMSA9IGRvY3VtZW50LnNlbGVjdGlvbi5jcmVhdGVSYW5n ZSgpOwogICAgdmFyIHJhbmdlMiA9IHJhbmdlMS5kdXBsaWNhdGUoKTsKICAgIC8v IFNlbGVjdCBhbGwgdGV4dC4KICAgIHJhbmdlMi5tb3ZlVG9FbGVtZW50VGV4dChl bGVtZW50KTsKICAgIC8vIE5vdyBtb3ZlICdkdW1teScgZW5kIHBvaW50IHRvIGVu ZCBwb2ludCBvZiBvcmlnaW5hbCByYW5nZS4KICAgIHJhbmdlMi5zZXRFbmRQb2lu dCgnRW5kVG9FbmQnLCByYW5nZTEpOwogICAgLy8gTm93IHdlIGNhbiBjYWxjdWxh dGUgc3RhcnQgYW5kIGVuZCBwb2ludHMuCiAgICB2YXIgc3RhcnQgPSByYW5nZTIu dGV4dC5sZW5ndGggLSByYW5nZTEudGV4dC5sZW5ndGg7CiAgICB2YXIgZW5kID0g c3RhcnQgKyByYW5nZTEudGV4dC5sZW5ndGg7CiAgICByZXR1cm4geyAnc3RhcnQn OiBzdGFydCwgJ2VuZCc6IGVuZCB9OwogIH0KICByZXR1cm4geyAnc3RhcnQnOiBl bGVtZW50LnNlbGVjdGlvblN0YXJ0LCAnZW5kJzogZWxlbWVudC5zZWxlY3Rpb25F bmQgfTsKfTsKCi8qKgogKiBCdWlsZCBhbiBlcnJvciBtZXNzYWdlIGZyb20gYWhh aCByZXNwb25zZS4KICovCkRydXBhbC5haGFoRXJyb3IgPSBmdW5jdGlvbih4bWxo dHRwLCB1cmkpIHsKICBpZiAoeG1saHR0cC5zdGF0dXMgPT0gMjAwKSB7CiAgICBp ZiAoalF1ZXJ5LnRyaW0oJCh4bWxodHRwLnJlc3BvbnNlVGV4dCkudGV4dCgpKSkg ewogICAgICB2YXIgbWVzc2FnZSA9IERydXBhbC50KCJBbiBlcnJvciBvY2N1cnJl ZC4gXG5AdXJpXG5AdGV4dCIsIHsnQHVyaSc6IHVyaSwgJ0B0ZXh0JzogeG1saHR0 cC5yZXNwb25zZVRleHQgfSk7CiAgICB9CiAgICBlbHNlIHsKICAgICAgdmFyIG1l c3NhZ2UgPSBEcnVwYWwudCgiQW4gZXJyb3Igb2NjdXJyZWQuIFxuQHVyaVxuKG5v IGluZm9ybWF0aW9uIGF2YWlsYWJsZSkuIiwgeydAdXJpJzogdXJpLCAnQHRleHQn OiB4bWxodHRwLnJlc3BvbnNlVGV4dCB9KTsKICAgIH0KICB9CiAgZWxzZSB7CiAg ICB2YXIgbWVzc2FnZSA9IERydXBhbC50KCJBbiBIVFRQIGVycm9yIEBzdGF0dXMg b2NjdXJyZWQuIFxuQHVyaSIsIHsnQHVyaSc6IHVyaSwgJ0BzdGF0dXMnOiB4bWxo dHRwLnN0YXR1cyB9KTsKICB9CiAgcmV0dXJuIG1lc3NhZ2U7Cn0KCi8vIEdsb2Jh bCBLaWxsc3dpdGNoIG9uIHRoZSA8aHRtbD4gZWxlbWVudAppZiAoRHJ1cGFsLmpz RW5hYmxlZCkgewogIC8vIEdsb2JhbCBLaWxsc3dpdGNoIG9uIHRoZSA8aHRtbD4g ZWxlbWVudAogICQoZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50KS5hZGRDbGFzcygn anMnKTsKICAvLyAnanMgZW5hYmxlZCcgY29va2llCiAgZG9jdW1lbnQuY29va2ll ID0gJ2hhc19qcz0xOyBwYXRoPS8nOwogIC8vIEF0dGFjaCBhbGwgYmVoYXZpb3Jz LgogICQoZG9jdW1lbnQpLnJlYWR5KGZ1bmN0aW9uKCkgewogICAgRHJ1cGFsLmF0 dGFjaEJlaGF2aW9ycyh0aGlzKTsKICB9KTsKfQoKLyoqCiAqIFRoZSBkZWZhdWx0 IHRoZW1lcy4KICovCkRydXBhbC50aGVtZS5wcm90b3R5cGUgPSB7CgogIC8qKgog ICAqIEZvcm1hdHMgdGV4dCBmb3IgZW1waGFzaXplZCBkaXNwbGF5IGluIGEgcGxh Y2Vob2xkZXIgaW5zaWRlIGEgc2VudGVuY2UuCiAgICoKICAgKiBAcGFyYW0gc3Ry CiAgICogICBUaGUgdGV4dCB0byBmb3JtYXQgKHBsYWluLXRleHQpLgogICAqIEBy ZXR1cm4KICAgKiAgIFRoZSBmb3JtYXR0ZWQgdGV4dCAoaHRtbCkuCiAgICovCiAg cGxhY2Vob2xkZXI6IGZ1bmN0aW9uKHN0cikgewogICAgcmV0dXJuICc8ZW0+JyAr IERydXBhbC5jaGVja1BsYWluKHN0cikgKyAnPC9lbT4nOwogIH0KfTsK ------------ovrp3U8y8KC3rcvqsh3ZpB Content-Disposition: inline; filename=lightbox.js Content-Type: application/javascript; charset=utf-8; name=lightbox.js Content-Location: http://www.psychologytoday.com/sites/all/modules/contrib/lightbox2/js/lightbox.js?D Content-Transfer-Encoding: Base64 LyogJElkOiBsaWdodGJveC5qcyx2IDEuNS4yLjYuMi4xMTQgMjAwOS8wMS8wNSAx NDoyMTo1MiBzbnBvd2VyIEV4cCAkICovCgovKioKICogalF1ZXJ5IExpZ2h0Ym94 CiAqIEBhdXRob3IKICogICBTdGVsbGEgUG93ZXIsIDxodHRwOi8vZHJ1cGFsLm9y Zy91c2VyLzY2ODk0PgogKgogKiBCYXNlZCBvbiBMaWdodGJveCB2Mi4wMy4zIGJ5 IExva2VzaCBEaGFrYXIKICogPGh0dHA6Ly93d3cuaHVkZGxldG9nZXRoZXIuY29t L3Byb2plY3RzL2xpZ2h0Ym94Mi8+CiAqIEFsc28gcGFydGlhbGx5IGJhc2VkIG9u IHRoZSBqUXVlcnkgTGlnaHRib3ggYnkgV2FycmVuIEtyZXdlbmtpCiAqICAgPGh0 dHA6Ly93YXJyZW4ubWVzb3plbi5jb20+CiAqCiAqIFBlcm1pc3Npb24gaGFzIGJl ZW4gZ3JhbnRlZCB0byBNYXJrIEFzaG1lYWQgJiBvdGhlciBEcnVwYWwgTGlnaHRi b3gyIG1vZHVsZQogKiBtYWludGFpbmVycyB0byBkaXN0cmlidXRlIHRoaXMgZmls ZSB2aWEgRHJ1cGFsLm9yZwogKiBVbmRlciBHUEwgbGljZW5zZS4KICoKICogU2xp ZGVzaG93LCBpZnJhbWUgYW5kIHZpZGVvIGZ1bmN0aW9uYWxpdHkgYWRkZWQgYnkg U3RlbGxhIFBvd2VyLgogKi8KCnZhciBMaWdodGJveCA9IHsKICBvdmVybGF5T3Bh Y2l0eSA6IDAuOCwgLy8gQ29udHJvbHMgdHJhbnNwYXJlbmN5IG9mIHNoYWRvdyBv dmVybGF5LgogIG92ZXJsYXlDb2xvciA6ICcwMDAnLCAvLyBDb250cm9scyBjb2xv dXIgb2Ygc2hhZG93IG92ZXJsYXkuCiAgZGlzYWJsZUNsb3NlQ2xpY2sgOiB0cnVl LAogIC8vIENvbnRyb2xzIHRoZSBvcmRlciBvZiB0aGUgbGlnaHRib3ggcmVzaXpp bmcgYW5pbWF0aW9uIHNlcXVlbmNlLgogIHJlc2l6ZVNlcXVlbmNlOiAwLCAvLyAw OiBzaW11bHRhbmVvdXMsIDE6IHdpZHRoIHRoZW4gaGVpZ2h0LCAyOiBoZWlnaHQg dGhlbiB3aWR0aC4KICByZXNpemVTcGVlZDogJ25vcm1hbCcsIC8vIENvbnRyb2xz IHRoZSBzcGVlZCBvZiB0aGUgbGlnaHRib3ggcmVzaXppbmcgYW5pbWF0aW9uLgog IGZhZGVJblNwZWVkOiAnbm9ybWFsJywgLy8gQ29udHJvbHMgdGhlIHNwZWVkIG9m IHRoZSBpbWFnZSBhcHBlYXJhbmNlLgogIHNsaWRlRG93blNwZWVkOiAnc2xvdycs IC8vIENvbnRyb2xzIHRoZSBzcGVlZCBvZiB0aGUgaW1hZ2UgZGV0YWlscyBhcHBl YXJhbmNlLgogIG1pbldpZHRoOiAyNDAsCiAgYm9yZGVyU2l6ZSA6IDEwLAogIGJv eENvbG9yIDogJ2ZmZicsCiAgZm9udENvbG9yIDogJzAwMCcsCiAgdG9wUG9zaXRp b24gOiAnJywKICBpbmZvSGVpZ2h0OiAyMCwKICBhbHRlcm5hdGl2ZV9sYXlvdXQg OiBmYWxzZSwKICBpbWFnZUFycmF5IDogW10sCiAgaW1hZ2VOdW0gOiBudWxsLAog IHRvdGFsIDogMCwKICBhY3RpdmVJbWFnZSA6IG51bGwsCiAgaW5wcm9ncmVzcyA6 IGZhbHNlLAogIGRpc2FibGVSZXNpemUgOiBmYWxzZSwKICBkaXNhYmxlWm9vbSA6 IGZhbHNlLAogIGlzWm9vbWVkSW4gOiBmYWxzZSwKICBydGwgOiBmYWxzZSwKICBs b29wSXRlbXMgOiBmYWxzZSwKICBrZXlzQ2xvc2UgOiBbJ2MnLCAneCcsIDI3XSwK ICBrZXlzUHJldmlvdXMgOiBbJ3AnLCAzN10sCiAga2V5c05leHQgOiBbJ24nLCAz OV0sCiAga2V5c1pvb20gOiBbJ3onXSwKICBrZXlzUGxheVBhdXNlIDogWzMyXSwK CiAgLy8gU2xpZGVzaG93IG9wdGlvbnMuCiAgc2xpZGVJbnRlcnZhbCA6IDUwMDAs IC8vIEluIG1pbGxpc2Vjb25kcy4KICBzaG93UGxheVBhdXNlIDogdHJ1ZSwKICBh dXRvU3RhcnQgOiB0cnVlLAogIGF1dG9FeGl0IDogdHJ1ZSwKICBwYXVzZU9uTmV4 dENsaWNrIDogZmFsc2UsIC8vIFRydWUgdG8gcGF1c2UgdGhlIHNsaWRlc2hvdyB3 aGVuIHRoZSAiTmV4dCIgYnV0dG9uIGlzIGNsaWNrZWQuCiAgcGF1c2VPblByZXZD bGljayA6IHRydWUsIC8vIFRydWUgdG8gcGF1c2UgdGhlIHNsaWRlc2hvdyB3aGVu IHRoZSAiUHJldiIgYnV0dG9uIGlzIGNsaWNrZWQuCiAgc2xpZGVJZEFycmF5IDog W10sCiAgc2xpZGVJZENvdW50IDogMCwKICBpc1NsaWRlc2hvdyA6IGZhbHNlLAog IGlzUGF1c2VkIDogZmFsc2UsCiAgbG9vcFNsaWRlcyA6IGZhbHNlLAoKICAvLyBJ ZnJhbWUgb3B0aW9ucy4KICBpc0xpZ2h0ZnJhbWUgOiBmYWxzZSwKICBpZnJhbWVf d2lkdGggOiA2MDAsCiAgaWZyYW1lX2hlaWdodCA6IDQwMCwKICBpZnJhbWVfYm9y ZGVyIDogMSwKCiAgLy8gVmlkZW8gYW5kIG1vZGFsIG9wdGlvbnMuCiAgZW5hYmxl VmlkZW8gOiBmYWxzZSwKICBmbHZQbGF5ZXIgOiAnL2ZsdnBsYXllci5zd2YnLAog IGZsdkZsYXNodmFycyA6ICcnLAogIGlzTW9kYWwgOiBmYWxzZSwKICBpc1ZpZGVv IDogZmFsc2UsCiAgdmlkZW9JZCA6IGZhbHNlLAogIG1vZGFsV2lkdGggOiA0MDAs CiAgbW9kYWxIZWlnaHQgOiA0MDAsCiAgbW9kYWxIVE1MIDogbnVsbCwKCgogIC8v IGluaXRpYWxpemUoKQogIC8vIENvbnN0cnVjdG9yIHJ1bnMgb24gY29tcGxldGlv biBvZiB0aGUgRE9NIGxvYWRpbmcuCiAgLy8gVGhlIGZ1bmN0aW9uIGluc2VydHMg aHRtbCBhdCB0aGUgYm90dG9tIG9mIHRoZSBwYWdlIHdoaWNoIGlzIHVzZWQKICAv LyB0byBkaXNwbGF5IHRoZSBzaGFkb3cgb3ZlcmxheSBhbmQgdGhlIGltYWdlIGNv bnRhaW5lci4KICBpbml0aWFsaXplOiBmdW5jdGlvbigpIHsKCiAgICB2YXIgcyA9 IERydXBhbC5zZXR0aW5ncy5saWdodGJveDI7CiAgICBMaWdodGJveC5vdmVybGF5 T3BhY2l0eSA9IHMub3ZlcmxheV9vcGFjaXR5OwogICAgTGlnaHRib3gub3Zlcmxh eUNvbG9yID0gcy5vdmVybGF5X2NvbG9yOwogICAgTGlnaHRib3guZGlzYWJsZUNs b3NlQ2xpY2sgPSBzLmRpc2FibGVfY2xvc2VfY2xpY2s7CiAgICBMaWdodGJveC5y ZXNpemVTZXF1ZW5jZSA9IHMucmVzaXplX3NlcXVlbmNlOwogICAgTGlnaHRib3gu cmVzaXplU3BlZWQgPSBzLnJlc2l6ZV9zcGVlZDsKICAgIExpZ2h0Ym94LmZhZGVJ blNwZWVkID0gcy5mYWRlX2luX3NwZWVkOwogICAgTGlnaHRib3guc2xpZGVEb3du U3BlZWQgPSBzLnNsaWRlX2Rvd25fc3BlZWQ7CiAgICBMaWdodGJveC5ib3JkZXJT aXplID0gcy5ib3JkZXJfc2l6ZTsKICAgIExpZ2h0Ym94LmJveENvbG9yID0gcy5i b3hfY29sb3I7CiAgICBMaWdodGJveC5mb250Q29sb3IgPSBzLmZvbnRfY29sb3I7 CiAgICBMaWdodGJveC50b3BQb3NpdGlvbiA9IHMudG9wX3Bvc2l0aW9uOwogICAg TGlnaHRib3gucnRsID0gcy5ydGw7CiAgICBMaWdodGJveC5sb29wSXRlbXMgPSBz Lmxvb3BfaXRlbXM7CiAgICBMaWdodGJveC5rZXlzQ2xvc2UgPSBzLmtleXNfY2xv c2Uuc3BsaXQoIiAiKTsKICAgIExpZ2h0Ym94LmtleXNQcmV2aW91cyA9IHMua2V5 c19wcmV2aW91cy5zcGxpdCgiICIpOwogICAgTGlnaHRib3gua2V5c05leHQgPSBz LmtleXNfbmV4dC5zcGxpdCgiICIpOwogICAgTGlnaHRib3gua2V5c1pvb20gPSBz LmtleXNfem9vbS5zcGxpdCgiICIpOwogICAgTGlnaHRib3gua2V5c1BsYXlQYXVz ZSA9IHMua2V5c19wbGF5X3BhdXNlLnNwbGl0KCIgIik7CiAgICBMaWdodGJveC5k aXNhYmxlUmVzaXplID0gcy5kaXNhYmxlX3Jlc2l6ZTsKICAgIExpZ2h0Ym94LmRp c2FibGVab29tID0gcy5kaXNhYmxlX3pvb207CiAgICBMaWdodGJveC5zbGlkZUlu dGVydmFsID0gcy5zbGlkZXNob3dfaW50ZXJ2YWw7CiAgICBMaWdodGJveC5zaG93 UGxheVBhdXNlID0gcy5zaG93X3BsYXlfcGF1c2U7CiAgICBMaWdodGJveC5hdXRv U3RhcnQgPSBzLnNsaWRlc2hvd19hdXRvbWF0aWNfc3RhcnQ7CiAgICBMaWdodGJv eC5hdXRvRXhpdCA9IHMuc2xpZGVzaG93X2F1dG9tYXRpY19leGl0OwogICAgTGln aHRib3gucGF1c2VPbk5leHRDbGljayA9IHMucGF1c2Vfb25fbmV4dF9jbGljazsK ICAgIExpZ2h0Ym94LnBhdXNlT25QcmV2Q2xpY2sgPSBzLnBhdXNlX29uX3ByZXZp b3VzX2NsaWNrOwogICAgTGlnaHRib3gubG9vcFNsaWRlcyA9IHMubG9vcF9zbGlk ZXM7CiAgICBMaWdodGJveC5hbHRlcm5hdGl2ZV9sYXlvdXQgPSBzLnVzZV9hbHRf bGF5b3V0OwogICAgTGlnaHRib3guaWZyYW1lX3dpZHRoID0gcy5pZnJhbWVfd2lk dGg7CiAgICBMaWdodGJveC5pZnJhbWVfaGVpZ2h0ID0gcy5pZnJhbWVfaGVpZ2h0 OwogICAgTGlnaHRib3guaWZyYW1lX2JvcmRlciA9IHMuaWZyYW1lX2JvcmRlcjsK ICAgIExpZ2h0Ym94LmVuYWJsZVZpZGVvID0gcy5lbmFibGVfdmlkZW87CiAgICBp ZiAocy5lbmFibGVfdmlkZW8pIHsKICAgICAgTGlnaHRib3guZmx2UGxheWVyID0g cy5mbHZQbGF5ZXI7CiAgICAgIExpZ2h0Ym94LmZsdkZsYXNodmFycyA9IHMuZmx2 Rmxhc2h2YXJzOwogICAgfQoKICAgIC8vIE1ha2UgdGhlIGxpZ2h0Ym94IGRpdnMu CiAgICB2YXIgb3V0cHV0ID0gJzxkaXYgaWQ9Im92ZXJsYXkiIHN0eWxlPSJkaXNw bGF5OiBub25lOyI+PC9kaXY+XAogICAgICA8ZGl2IGlkPSJsaWdodGJveCIgc3R5 bGU9ImRpc3BsYXk6IG5vbmU7Ij5cCiAgICAgICAgPGRpdiBpZD0ib3V0ZXJJbWFn ZUNvbnRhaW5lciI+PC9kaXY+XAogICAgICAgIDxkaXYgaWQ9ImltYWdlRGF0YUNv bnRhaW5lciIgY2xhc3M9ImNsZWFyZml4Ij5cCiAgICAgICAgICA8ZGl2IGlkPSJp bWFnZURhdGEiPjwvZGl2PlwKICAgICAgICA8L2Rpdj5cCiAgICAgIDwvZGl2Pic7 CiAgICB2YXIgbG9hZGluZyA9ICc8ZGl2IGlkPSJsb2FkaW5nIj48YSBocmVmPSIj IiBpZD0ibG9hZGluZ0xpbmsiPjwvYT48L2Rpdj4nOwogICAgdmFyIG1vZGFsID0g JzxkaXYgaWQ9Im1vZGFsQ29udGFpbmVyIiBzdHlsZT0iZGlzcGxheTogbm9uZTsi PjwvZGl2Pic7CiAgICB2YXIgZnJhbWUgPSAnPGRpdiBpZD0iZnJhbWVDb250YWlu ZXIiIHN0eWxlPSJkaXNwbGF5OiBub25lOyI+PC9kaXY+JzsKICAgIHZhciBpbWFn ZUNvbnRhaW5lciA9ICc8ZGl2IGlkPSJpbWFnZUNvbnRhaW5lciIgc3R5bGU9ImRp c3BsYXk6IG5vbmU7Ij48L2Rpdj4nOwogICAgdmFyIGRldGFpbHMgPSAnPGRpdiBp ZD0iaW1hZ2VEZXRhaWxzIj48L2Rpdj4nOwogICAgdmFyIGJvdHRvbU5hdiA9ICc8 ZGl2IGlkPSJib3R0b21OYXYiPjwvZGl2Pic7CiAgICB2YXIgaW1hZ2UgPSAnPGlt ZyBpZD0ibGlnaHRib3hJbWFnZSIgLz4nOwogICAgdmFyIGhvdmVyTmF2ID0gJzxk aXYgaWQ9ImhvdmVyTmF2Ij48YSBpZD0icHJldkxpbmsiIGhyZWY9IiMiPjwvYT48 YSBpZD0ibmV4dExpbmsiIGhyZWY9IiMiPjwvYT48L2Rpdj4nOwogICAgdmFyIGZy YW1lTmF2ID0gJzxkaXYgaWQ9ImZyYW1lSG92ZXJOYXYiPjxhIGlkPSJmcmFtZVBy ZXZMaW5rIiBocmVmPSIjIj48L2E+PGEgaWQ9ImZyYW1lTmV4dExpbmsiIGhyZWY9 IiMiPjwvYT48L2Rpdj4nOwogICAgdmFyIGNhcHRpb24gPSAnPHNwYW4gaWQ9ImNh cHRpb24iPjwvc3Bhbj4nOwogICAgdmFyIG51bWJlckRpc3BsYXkgPSAnPHNwYW4g aWQ9Im51bWJlckRpc3BsYXkiPjwvc3Bhbj4nOwogICAgdmFyIGNsb3NlID0gJzxh IGlkPSJib3R0b21OYXZDbG9zZSIgaHJlZj0iIyI+PC9hPic7CiAgICB2YXIgem9v bSA9ICc8YSBpZD0iYm90dG9tTmF2Wm9vbSIgaHJlZj0iIyI+PC9hPic7CiAgICB2 YXIgem9vbU91dCA9ICc8YSBpZD0iYm90dG9tTmF2Wm9vbU91dCIgaHJlZj0iIyI+ PC9hPic7CiAgICB2YXIgcGF1c2UgPSAnPGEgaWQ9ImxpZ2h0c2hvd1BhdXNlIiBo cmVmPSIjIiBzdHlsZT0iZGlzcGxheTogbm9uZTsiPjwvYT4nOwogICAgdmFyIHBs YXkgPSAnPGEgaWQ9ImxpZ2h0c2hvd1BsYXkiIGhyZWY9IiMiIHN0eWxlPSJkaXNw bGF5OiBub25lOyI+PC9hPic7CgogICAgJCgiYm9keSIpLmFwcGVuZChvdXRwdXQp OwogICAgJCgnI291dGVySW1hZ2VDb250YWluZXInKS5hcHBlbmQobW9kYWwgKyBm cmFtZSArIGltYWdlQ29udGFpbmVyICsgbG9hZGluZyk7CiAgICBpZiAoIXMudXNl X2FsdF9sYXlvdXQpIHsKICAgICAgJCgnI2ltYWdlQ29udGFpbmVyJykuYXBwZW5k KGltYWdlICsgaG92ZXJOYXYpOwogICAgICAkKCcjaW1hZ2VEYXRhJykuYXBwZW5k KGZyYW1lTmF2ICsgZGV0YWlscyArIGJvdHRvbU5hdik7CiAgICAgICQoJyNpbWFn ZURldGFpbHMnKS5hcHBlbmQoY2FwdGlvbiArIG51bWJlckRpc3BsYXkpOwogICAg ICAkKCcjYm90dG9tTmF2JykuYXBwZW5kKGNsb3NlICsgem9vbSArIHpvb21PdXQg KyBwYXVzZSArIHBsYXkpOwogICAgfQogICAgZWxzZSB7CiAgICAgICQoJyNvdXRl ckltYWdlQ29udGFpbmVyJykuYXBwZW5kKGJvdHRvbU5hdik7CiAgICAgICQoJyNp bWFnZUNvbnRhaW5lcicpLmFwcGVuZChpbWFnZSk7CiAgICAgICQoJyNib3R0b21O YXYnKS5hcHBlbmQoY2xvc2UgKyB6b29tICsgem9vbU91dCk7CiAgICAgICQoJyNp bWFnZURhdGEnKS5hcHBlbmQoaG92ZXJOYXYgKyBkZXRhaWxzKTsKICAgICAgJCgn I2ltYWdlRGV0YWlscycpLmFwcGVuZChjYXB0aW9uICsgbnVtYmVyRGlzcGxheSAr IHBhdXNlICsgcGxheSk7CiAgICB9CgogICAgLy8gU2V0dXAgb25jbGljayBoYW5k bGVycy4KICAgIGlmIChMaWdodGJveC5kaXNhYmxlQ2xvc2VDbGljaykgewogICAg ICAkKCcjb3ZlcmxheScpLmNsaWNrKGZ1bmN0aW9uKCkgeyBMaWdodGJveC5lbmQo KTsgcmV0dXJuIGZhbHNlOyB9ICkuaGlkZSgpOwogICAgfQogICAgJCgnI2xvYWRp bmdMaW5rLCAjYm90dG9tTmF2Q2xvc2UnKS5jbGljayhmdW5jdGlvbigpIHsgTGln aHRib3guZW5kKCdmb3JjZUNsb3NlJyk7IHJldHVybiBmYWxzZTsgfSApOwogICAg JCgnI3ByZXZMaW5rLCAjZnJhbWVQcmV2TGluaycpLmNsaWNrKGZ1bmN0aW9uKCkg eyBMaWdodGJveC5jaGFuZ2VEYXRhKExpZ2h0Ym94LmFjdGl2ZUltYWdlIC0gMSk7 IHJldHVybiBmYWxzZTsgfSApOwogICAgJCgnI25leHRMaW5rLCAjZnJhbWVOZXh0 TGluaycpLmNsaWNrKGZ1bmN0aW9uKCkgeyBMaWdodGJveC5jaGFuZ2VEYXRhKExp Z2h0Ym94LmFjdGl2ZUltYWdlICsgMSk7IHJldHVybiBmYWxzZTsgfSApOwogICAg JCgnI2JvdHRvbU5hdlpvb20nKS5jbGljayhmdW5jdGlvbigpIHsgTGlnaHRib3gu Y2hhbmdlRGF0YShMaWdodGJveC5hY3RpdmVJbWFnZSwgdHJ1ZSk7IHJldHVybiBm YWxzZTsgfSApOwogICAgJCgnI2JvdHRvbU5hdlpvb21PdXQnKS5jbGljayhmdW5j dGlvbigpIHsgTGlnaHRib3guY2hhbmdlRGF0YShMaWdodGJveC5hY3RpdmVJbWFn ZSwgZmFsc2UpOyByZXR1cm4gZmFsc2U7IH0gKTsKICAgICQoJyNsaWdodHNob3dQ YXVzZScpLmNsaWNrKGZ1bmN0aW9uKCkgeyBMaWdodGJveC50b2dnbGVQbGF5UGF1 c2UoImxpZ2h0c2hvd1BhdXNlIiwgImxpZ2h0c2hvd1BsYXkiKTsgcmV0dXJuIGZh bHNlOyB9ICk7CiAgICAkKCcjbGlnaHRzaG93UGxheScpLmNsaWNrKGZ1bmN0aW9u KCkgeyBMaWdodGJveC50b2dnbGVQbGF5UGF1c2UoImxpZ2h0c2hvd1BsYXkiLCAi bGlnaHRzaG93UGF1c2UiKTsgcmV0dXJuIGZhbHNlOyB9ICk7CgogICAgLy8gRml4 IHBvc2l0aW9uaW5nLgogICAgJCgnI3ByZXZMaW5rLCAjbmV4dExpbmssICNmcmFt ZVByZXZMaW5rLCAjZnJhbWVOZXh0TGluaycpLmNzcyh7ICdwYWRkaW5nVG9wJzog TGlnaHRib3guYm9yZGVyU2l6ZSArICdweCd9KTsKICAgICQoJyNpbWFnZUNvbnRh aW5lciwgI2ZyYW1lQ29udGFpbmVyLCAjbW9kYWxDb250YWluZXInKS5jc3MoeyAn cGFkZGluZyc6IExpZ2h0Ym94LmJvcmRlclNpemUgKyAncHgnfSk7CiAgICAkKCcj b3V0ZXJJbWFnZUNvbnRhaW5lciwgI2ltYWdlRGF0YUNvbnRhaW5lciwgI2JvdHRv bU5hdkNsb3NlJykuY3NzKHsnYmFja2dyb3VuZENvbG9yJzogJyMnICsgTGlnaHRi b3guYm94Q29sb3IsICdjb2xvcic6ICcjJytMaWdodGJveC5mb250Q29sb3J9KTsK ICAgIGlmIChMaWdodGJveC5hbHRlcm5hdGl2ZV9sYXlvdXQpIHsKICAgICAgJCgn I2JvdHRvbU5hdlpvb20sICNib3R0b21OYXZab29tT3V0JykuY3NzKHsnYm90dG9t JzogTGlnaHRib3guYm9yZGVyU2l6ZSArICdweCcsICdyaWdodCc6IExpZ2h0Ym94 LmJvcmRlclNpemUgKyAncHgnfSk7CiAgICB9CiAgICBlbHNlIGlmIChMaWdodGJv eC5ydGwgPT0gMSAmJiAkLmJyb3dzZXIubXNpZSkgewogICAgICAkKCcjYm90dG9t TmF2Wm9vbSwgI2JvdHRvbU5hdlpvb21PdXQnKS5jc3MoeydsZWZ0JzogJzBweCd9 KTsKICAgIH0KCiAgICAvLyBGb3JjZSBuYXZpZ2F0aW9uIGxpbmtzIHRvIGFsd2F5 cyBiZSBkaXNwbGF5ZWQKICAgIGlmIChzLmZvcmNlX3Nob3dfbmF2KSB7CiAgICAg ICQoJyNwcmV2TGluaywgI25leHRMaW5rJykuYWRkQ2xhc3MoImZvcmNlX3Nob3df bmF2Iik7CiAgICB9CgogIH0sCgogIC8vIGluaXRMaXN0KCkKICAvLyBMb29wcyB0 aHJvdWdoIGFuY2hvciB0YWdzIGxvb2tpbmcgZm9yICdsaWdodGJveCcsICdsaWdo dHNob3cnIGFuZAogIC8vICdsaWdodGZyYW1lJywgZXRjLCByZWZlcmVuY2VzIGFu ZCBhcHBsaWVzIG9uY2xpY2sgZXZlbnRzIHRvIGFwcHJvcHJpYXRlCiAgLy8gbGlu a3MuIFlvdSBjYW4gcmVydW4gYWZ0ZXIgZHluYW1pY2FsbHkgYWRkaW5nIGltYWdl cyB3L2FqYXguCiAgaW5pdExpc3QgOiBmdW5jdGlvbigpIHsKCiAgICAvLyBBdHRh Y2ggbGlnaHRib3ggdG8gYW55IGxpbmtzIHdpdGggcmVsICdsaWdodGJveCcsICds aWdodHNob3cnIG9yCiAgICAvLyAnbGlnaHRmcmFtZScsIGV0Yy4KICAgICQoImFb QHJlbF49J2xpZ2h0Ym94J106bm90KC5saWdodGJveC1wcm9jZXNzZWQpLCBhcmVh W0ByZWxePSdsaWdodGJveCddOm5vdCgubGlnaHRib3gtcHJvY2Vzc2VkKSIpLmFk ZENsYXNzKCdsaWdodGJveC1wcm9jZXNzZWQnKS5jbGljayhmdW5jdGlvbihlKSB7 CiAgICAgIGlmIChMaWdodGJveC5kaXNhYmxlQ2xvc2VDbGljaykgewogICAgICAg ICQoJyNsaWdodGJveCcpLnVuYmluZCgnY2xpY2snKTsKICAgICAgICAkKCcjbGln aHRib3gnKS5jbGljayhmdW5jdGlvbigpIHsgTGlnaHRib3guZW5kKCdmb3JjZUNs b3NlJyk7IH0gKTsKICAgICAgfQogICAgICBMaWdodGJveC5zdGFydCh0aGlzLCBm YWxzZSwgZmFsc2UsIGZhbHNlLCBmYWxzZSk7CiAgICAgIGlmIChlLnByZXZlbnRE ZWZhdWx0KSB7IGUucHJldmVudERlZmF1bHQoKTsgfQogICAgICByZXR1cm4gZmFs c2U7CiAgICB9KTsKICAgICQoImFbQHJlbF49J2xpZ2h0c2hvdyddOm5vdCgubGln aHRib3gtcHJvY2Vzc2VkKSwgYXJlYVtAcmVsXj0nbGlnaHRzaG93J106bm90KC5s aWdodGJveC1wcm9jZXNzZWQpIikuYWRkQ2xhc3MoJ2xpZ2h0Ym94LXByb2Nlc3Nl ZCcpLmNsaWNrKGZ1bmN0aW9uKGUpIHsKICAgICAgaWYgKExpZ2h0Ym94LmRpc2Fi bGVDbG9zZUNsaWNrKSB7CiAgICAgICAgJCgnI2xpZ2h0Ym94JykudW5iaW5kKCdj bGljaycpOwogICAgICAgICQoJyNsaWdodGJveCcpLmNsaWNrKGZ1bmN0aW9uKCkg eyBMaWdodGJveC5lbmQoJ2ZvcmNlQ2xvc2UnKTsgfSApOwogICAgICB9CiAgICAg IExpZ2h0Ym94LnN0YXJ0KHRoaXMsIHRydWUsIGZhbHNlLCBmYWxzZSwgZmFsc2Up OwogICAgICBpZiAoZS5wcmV2ZW50RGVmYXVsdCkgeyBlLnByZXZlbnREZWZhdWx0 KCk7IH0KICAgICAgcmV0dXJuIGZhbHNlOwogICAgfSk7CiAgICAkKCJhW0ByZWxe PSdsaWdodGZyYW1lJ106bm90KC5saWdodGJveC1wcm9jZXNzZWQpLCBhcmVhW0By ZWxePSdsaWdodGZyYW1lJ106bm90KC5saWdodGJveC1wcm9jZXNzZWQpIikuYWRk Q2xhc3MoJ2xpZ2h0Ym94LXByb2Nlc3NlZCcpLmNsaWNrKGZ1bmN0aW9uKGUpIHsK ICAgICAgaWYgKExpZ2h0Ym94LmRpc2FibGVDbG9zZUNsaWNrKSB7CiAgICAgICAg JCgnI2xpZ2h0Ym94JykudW5iaW5kKCdjbGljaycpOwogICAgICAgICQoJyNsaWdo dGJveCcpLmNsaWNrKGZ1bmN0aW9uKCkgeyBMaWdodGJveC5lbmQoJ2ZvcmNlQ2xv c2UnKTsgfSApOwogICAgICB9CiAgICAgIExpZ2h0Ym94LnN0YXJ0KHRoaXMsIGZh bHNlLCB0cnVlLCBmYWxzZSwgZmFsc2UpOwogICAgICBpZiAoZS5wcmV2ZW50RGVm YXVsdCkgeyBlLnByZXZlbnREZWZhdWx0KCk7IH0KICAgICAgcmV0dXJuIGZhbHNl OwogICAgfSk7CiAgICBpZiAoTGlnaHRib3guZW5hYmxlVmlkZW8pIHsKICAgICAg JCgiYVtAcmVsXj0nbGlnaHR2aWRlbyddOm5vdCgubGlnaHRib3gtcHJvY2Vzc2Vk KSwgYXJlYVtAcmVsXj0nbGlnaHR2aWRlbyddOm5vdCgubGlnaHRib3gtcHJvY2Vz c2VkKSIpLmFkZENsYXNzKCdsaWdodGJveC1wcm9jZXNzZWQnKS5jbGljayhmdW5j dGlvbihlKSB7CiAgICAgICAgaWYgKExpZ2h0Ym94LmRpc2FibGVDbG9zZUNsaWNr KSB7CiAgICAgICAgICAkKCcjbGlnaHRib3gnKS51bmJpbmQoJ2NsaWNrJyk7CiAg ICAgICAgICAkKCcjbGlnaHRib3gnKS5jbGljayhmdW5jdGlvbigpIHsgTGlnaHRi b3guZW5kKCdmb3JjZUNsb3NlJyk7IH0gKTsKICAgICAgICB9CiAgICAgICAgTGln aHRib3guc3RhcnQodGhpcywgZmFsc2UsIGZhbHNlLCB0cnVlLCBmYWxzZSk7CiAg ICAgICAgaWYgKGUucHJldmVudERlZmF1bHQpIHsgZS5wcmV2ZW50RGVmYXVsdCgp OyB9CiAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICB9KTsKICAgIH0KICAgICQo ImFbQHJlbF49J2xpZ2h0bW9kYWwnXTpub3QoLmxpZ2h0Ym94LXByb2Nlc3NlZCks IGFyZWFbQHJlbF49J2xpZ2h0bW9kYWwnXTpub3QoLmxpZ2h0Ym94LXByb2Nlc3Nl ZCkiKS5hZGRDbGFzcygnbGlnaHRib3gtcHJvY2Vzc2VkJykuY2xpY2soZnVuY3Rp b24oZSkgewogICAgICAkKCcjbGlnaHRib3gnKS51bmJpbmQoJ2NsaWNrJyk7CiAg ICAgIExpZ2h0Ym94LnN0YXJ0KHRoaXMsIGZhbHNlLCBmYWxzZSwgZmFsc2UsIHRy dWUpOwogICAgICBpZiAoZS5wcmV2ZW50RGVmYXVsdCkgeyBlLnByZXZlbnREZWZh dWx0KCk7IH0KICAgICAgcmV0dXJuIGZhbHNlOwogICAgfSk7CiAgfSwKCiAgLy8g c3RhcnQoKQogIC8vIERpc3BsYXkgb3ZlcmxheSBhbmQgbGlnaHRib3guIElmIGlt YWdlIGlzIHBhcnQgb2YgYSBzZXQsIGFkZCBzaWJsaW5ncyB0bwogIC8vIGltYWdl QXJyYXkuCiAgc3RhcnQ6IGZ1bmN0aW9uKGltYWdlTGluaywgc2xpZGVzaG93LCBs aWdodGZyYW1lLCBsaWdodHZpZGVvLCBsaWdodG1vZGFsKSB7CgogICAgTGlnaHRi b3guaXNQYXVzZWQgPSAhTGlnaHRib3guYXV0b1N0YXJ0OwoKICAgIC8vIFJlcGxh Y2VzIGhpZGVTZWxlY3RCb3hlcygpIGFuZCBoaWRlRmxhc2goKSBjYWxscyBpbiBv cmlnaW5hbCBsaWdodGJveDIuCiAgICBMaWdodGJveC50b2dnbGVTZWxlY3RzRmxh c2goJ2hpZGUnKTsKCiAgICAvLyBTdHJldGNoIG92ZXJsYXkgdG8gZmlsbCBwYWdl IGFuZCBmYWRlIGluLgogICAgdmFyIGFycmF5UGFnZVNpemUgPSBMaWdodGJveC5n ZXRQYWdlU2l6ZSgpOwogICAgJCgiI292ZXJsYXkiKS5oaWRlKCkuY3NzKHsKICAg ICAgJ3dpZHRoJzogJzEwMCUnLAogICAgICAnekluZGV4JzogJzEwMDkwJywKICAg ICAgJ2hlaWdodCc6IGFycmF5UGFnZVNpemVbMV0gKyAncHgnLAogICAgICAnYmFj a2dyb3VuZENvbG9yJyA6ICcjJyArIExpZ2h0Ym94Lm92ZXJsYXlDb2xvcgogICAg fSk7CiAgICAvLyBEZXRlY3QgT1MgWCBGRjIgb3BhY2l0eSArIGZsYXNoIGlzc3Vl LgogICAgaWYgKGxpZ2h0dmlkZW8gJiYgdGhpcy5kZXRlY3RNYWNGRjIoKSkgewog ICAgICAkKCIjb3ZlcmxheSIpLnJlbW92ZUNsYXNzKCJvdmVybGF5X2RlZmF1bHQi KTsKICAgICAgJCgiI292ZXJsYXkiKS5hZGRDbGFzcygib3ZlcmxheV9tYWNmZjIi KTsKICAgICAgJCgiI292ZXJsYXkiKS5jc3MoeydvcGFjaXR5JyA6IG51bGx9KTsK ICAgIH0KICAgIGVsc2UgewogICAgICAkKCIjb3ZlcmxheSIpLnJlbW92ZUNsYXNz KCJvdmVybGF5X21hY2ZmMiIpOwogICAgICAkKCIjb3ZlcmxheSIpLmFkZENsYXNz KCJvdmVybGF5X2RlZmF1bHQiKTsKICAgICAgJCgiI292ZXJsYXkiKS5jc3Moeydv cGFjaXR5JyA6IExpZ2h0Ym94Lm92ZXJsYXlPcGFjaXR5fSk7CiAgICB9CiAgICAk KCIjb3ZlcmxheSIpLmZhZGVJbihMaWdodGJveC5mYWRlSW5TcGVlZCk7CgoKICAg IExpZ2h0Ym94LmlzU2xpZGVzaG93ID0gc2xpZGVzaG93OwogICAgTGlnaHRib3gu aXNMaWdodGZyYW1lID0gbGlnaHRmcmFtZTsKICAgIExpZ2h0Ym94LmlzVmlkZW8g PSBsaWdodHZpZGVvOwogICAgTGlnaHRib3guaXNNb2RhbCA9IGxpZ2h0bW9kYWw7 CiAgICBMaWdodGJveC5pbWFnZUFycmF5ID0gW107CiAgICBMaWdodGJveC5pbWFn ZU51bSA9IDA7CgogICAgdmFyIGFuY2hvcnMgPSAkKGltYWdlTGluay50YWdOYW1l KTsKICAgIHZhciBhbmNob3IgPSBudWxsOwogICAgdmFyIHJlbF9wYXJ0cyA9IExp Z2h0Ym94LnBhcnNlUmVsKGltYWdlTGluayk7CiAgICB2YXIgcmVsID0gcmVsX3Bh cnRzWyJyZWwiXTsKICAgIHZhciByZWxfZ3JvdXAgPSByZWxfcGFydHNbImdyb3Vw Il07CiAgICB2YXIgdGl0bGUgPSAocmVsX3BhcnRzWyJ0aXRsZSJdID8gcmVsX3Bh cnRzWyJ0aXRsZSJdIDogaW1hZ2VMaW5rLnRpdGxlKTsKICAgIHZhciByZWxfc3R5 bGUgPSBudWxsOwogICAgdmFyIGkgPSAwOwoKCiAgICAvLyBTZXQgdGhlIHRpdGxl IGZvciBpbWFnZSBhbHRlcm5hdGl2ZSB0ZXh0LgogICAgdmFyIGFsdCA9IGltYWdl TGluay50aXRsZTsKICAgIGlmICghYWx0KSB7CiAgICAgIHZhciBpbWcgPSAkKGlt YWdlTGluaykuZmluZCgiaW1nIik7CiAgICAgIGlmIChpbWcgJiYgJChpbWcpLmF0 dHIoImFsdCIpKSB7CiAgICAgICAgYWx0ID0gJChpbWcpLmF0dHIoImFsdCIpOwog ICAgICB9CiAgICAgIGVsc2UgewogICAgICAgIGFsdCA9IHRpdGxlOwogICAgICB9 CiAgICB9CgogICAgaWYgKCQoaW1hZ2VMaW5rKS5hdHRyKCdpZCcpID09ICdsaWdo dGJveEF1dG9Nb2RhbCcpIHsKICAgICAgcmVsX3N0eWxlID0gcmVsX3BhcnRzWyJz dHlsZSJdOwogICAgICBMaWdodGJveC5pbWFnZUFycmF5LnB1c2goWycjbGlnaHRi b3hBdXRvTW9kYWwgPiAqJywgdGl0bGUsIGFsdCwgcmVsX3N0eWxlLCAxXSk7CiAg ICB9CiAgICBlbHNlIHsKICAgICAgLy8gSGFuZGxlIGxpZ2h0Ym94IGltYWdlcyB3 aXRoIG5vIGdyb3VwaW5nLgogICAgICBpZiAoKHJlbCA9PSAnbGlnaHRib3gnIHx8 IHJlbCA9PSAnbGlnaHRzaG93JykgJiYgIXJlbF9ncm91cCkgewogICAgICAgIExp Z2h0Ym94LmltYWdlQXJyYXkucHVzaChbaW1hZ2VMaW5rLmhyZWYsIHRpdGxlLCBh bHRdKTsKICAgICAgfQoKICAgICAgLy8gSGFuZGxlIG90aGVyIGl0ZW1zIHdpdGgg bm8gZ3JvdXBpbmcuCiAgICAgIGVsc2UgaWYgKCFyZWxfZ3JvdXApIHsKICAgICAg ICByZWxfc3R5bGUgPSByZWxfcGFydHNbInN0eWxlIl07CiAgICAgICAgTGlnaHRi b3guaW1hZ2VBcnJheS5wdXNoKFtpbWFnZUxpbmsuaHJlZiwgdGl0bGUsIGFsdCwg cmVsX3N0eWxlXSk7CiAgICAgIH0KCiAgICAgIC8vIEhhbmRsZSBncm91cGVkIGl0 ZW1zLgogICAgICBlbHNlIHsKCiAgICAgICAgLy8gTG9vcCB0aHJvdWdoIGFuY2hv cnMgYW5kIGFkZCB0aGVtIHRvIGltYWdlQXJyYXkuCiAgICAgICAgZm9yIChpID0g MDsgaSA8IGFuY2hvcnMubGVuZ3RoOyBpKyspIHsKICAgICAgICAgIGFuY2hvciA9 IGFuY2hvcnNbaV07CiAgICAgICAgICBpZiAoYW5jaG9yLmhyZWYgJiYgJChhbmNo b3IpLmF0dHIoJ3JlbCcpKSB7CiAgICAgICAgICAgIHZhciByZWxfZGF0YSA9IExp Z2h0Ym94LnBhcnNlUmVsKGFuY2hvcik7CiAgICAgICAgICAgIHZhciBhbmNob3Jf dGl0bGUgPSAocmVsX2RhdGFbInRpdGxlIl0gPyByZWxfZGF0YVsidGl0bGUiXSA6 IGFuY2hvci50aXRsZSk7CiAgICAgICAgICAgIGlmIChyZWxfZGF0YVsicmVsIl0g PT0gcmVsKSB7CiAgICAgICAgICAgICAgaWYgKHJlbF9kYXRhWyJncm91cCJdID09 IHJlbF9ncm91cCkgewogICAgICAgICAgICAgICAgaWYgKExpZ2h0Ym94LmlzTGln aHRmcmFtZSB8fCBMaWdodGJveC5pc01vZGFsKSB7CiAgICAgICAgICAgICAgICAg IHJlbF9zdHlsZSA9IHJlbF9kYXRhWyJzdHlsZSJdOwogICAgICAgICAgICAgICAg fQogICAgICAgICAgICAgICAgTGlnaHRib3guaW1hZ2VBcnJheS5wdXNoKFthbmNo b3IuaHJlZiwgYW5jaG9yX3RpdGxlLCBhbHQsIHJlbF9zdHlsZV0pOwogICAgICAg ICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgIH0KCiAg ICAgICAgLy8gUmVtb3ZlIGR1cGxpY2F0ZXMuCiAgICAgICAgZm9yIChpID0gMDsg aSA8IExpZ2h0Ym94LmltYWdlQXJyYXkubGVuZ3RoOyBpKyspIHsKICAgICAgICAg IGZvciAoaiA9IExpZ2h0Ym94LmltYWdlQXJyYXkubGVuZ3RoLTE7IGogPiBpOyBq LS0pIHsKICAgICAgICAgICAgaWYgKExpZ2h0Ym94LmltYWdlQXJyYXlbaV1bMF0g PT0gTGlnaHRib3guaW1hZ2VBcnJheVtqXVswXSkgewogICAgICAgICAgICAgIExp Z2h0Ym94LmltYWdlQXJyYXkuc3BsaWNlKGosMSk7CiAgICAgICAgICAgIH0KICAg ICAgICAgIH0KICAgICAgICB9CiAgICAgICAgd2hpbGUgKExpZ2h0Ym94LmltYWdl QXJyYXlbTGlnaHRib3guaW1hZ2VOdW1dWzBdICE9IGltYWdlTGluay5ocmVmKSB7 CiAgICAgICAgICBMaWdodGJveC5pbWFnZU51bSsrOwogICAgICAgIH0KICAgICAg fQogICAgfQoKICAgIGlmIChMaWdodGJveC5pc1NsaWRlc2hvdyAmJiBMaWdodGJv eC5zaG93UGxheVBhdXNlICYmIExpZ2h0Ym94LmlzUGF1c2VkKSB7CiAgICAgICQo JyNsaWdodHNob3dQbGF5Jykuc2hvdygpOwogICAgICAkKCcjbGlnaHRzaG93UGF1 c2UnKS5oaWRlKCk7CiAgICB9CgogICAgLy8gQ2FsY3VsYXRlIHRvcCBhbmQgbGVm dCBvZmZzZXQgZm9yIHRoZSBsaWdodGJveC4KICAgIHZhciBhcnJheVBhZ2VTY3Jv bGwgPSBMaWdodGJveC5nZXRQYWdlU2Nyb2xsKCk7CiAgICB2YXIgbGlnaHRib3hU b3AgPSBhcnJheVBhZ2VTY3JvbGxbMV0gKyAoTGlnaHRib3gudG9wUG9zaXRpb24g PT0gJycgPyAoYXJyYXlQYWdlU2l6ZVszXSAvIDEwKSA6IExpZ2h0Ym94LnRvcFBv c2l0aW9uKSAqIDE7CiAgICB2YXIgbGlnaHRib3hMZWZ0ID0gYXJyYXlQYWdlU2Ny b2xsWzBdOwogICAgJCgnI2ZyYW1lQ29udGFpbmVyLCAjbW9kYWxDb250YWluZXIs ICNsaWdodGJveEltYWdlJykuaGlkZSgpOwogICAgJCgnI2hvdmVyTmF2LCAjcHJl dkxpbmssICNuZXh0TGluaywgI2ZyYW1lSG92ZXJOYXYsICNmcmFtZVByZXZMaW5r LCAjZnJhbWVOZXh0TGluaycpLmhpZGUoKTsKICAgICQoJyNpbWFnZURhdGFDb250 YWluZXIsICNudW1iZXJEaXNwbGF5LCAjYm90dG9tTmF2Wm9vbSwgI2JvdHRvbU5h dlpvb21PdXQnKS5oaWRlKCk7CiAgICAkKCcjb3V0ZXJJbWFnZUNvbnRhaW5lcicp LmNzcyh7J3dpZHRoJzogJzI1MHB4JywgJ2hlaWdodCc6ICcyNTBweCd9KTsKICAg ICQoJyNsaWdodGJveCcpLmNzcyh7CiAgICAgICd6SW5kZXgnOiAnMTA1MDAnLAog ICAgICAndG9wJzogbGlnaHRib3hUb3AgKyAncHgnLAogICAgICAnbGVmdCc6IGxp Z2h0Ym94TGVmdCArICdweCcKICAgIH0pLnNob3coKTsKCiAgICBMaWdodGJveC50 b3RhbCA9IExpZ2h0Ym94LmltYWdlQXJyYXkubGVuZ3RoOwogICAgTGlnaHRib3gu Y2hhbmdlRGF0YShMaWdodGJveC5pbWFnZU51bSk7CiAgfSwKCiAgLy8gY2hhbmdl RGF0YSgpCiAgLy8gSGlkZSBtb3N0IGVsZW1lbnRzIGFuZCBwcmVsb2FkIGltYWdl IGluIHByZXBhcmF0aW9uIGZvciByZXNpemluZyBpbWFnZQogIC8vIGNvbnRhaW5l ci4KICBjaGFuZ2VEYXRhOiBmdW5jdGlvbihpbWFnZU51bSwgem9vbUluKSB7Cgog ICAgaWYgKExpZ2h0Ym94LmlucHJvZ3Jlc3MgPT09IGZhbHNlKSB7CiAgICAgIGlm IChMaWdodGJveC50b3RhbCA+IDEgJiYgKChMaWdodGJveC5pc1NsaWRlc2hvdyAm JiBMaWdodGJveC5sb29wU2xpZGVzKSB8fCAoIUxpZ2h0Ym94LmlzU2xpZGVzaG93 ICYmIExpZ2h0Ym94Lmxvb3BJdGVtcykpKSB7CiAgICAgICAgaWYgKGltYWdlTnVt ID49IExpZ2h0Ym94LnRvdGFsKSBpbWFnZU51bSA9IDA7CiAgICAgICAgaWYgKGlt YWdlTnVtIDwgMCkgaW1hZ2VOdW0gPSBMaWdodGJveC50b3RhbCAtIDE7CiAgICAg IH0KCiAgICAgIGlmIChMaWdodGJveC5pc1NsaWRlc2hvdykgewogICAgICAgIGZv ciAodmFyIGkgPSAwOyBpIDwgTGlnaHRib3guc2xpZGVJZENvdW50OyBpKyspIHsK ICAgICAgICAgIHdpbmRvdy5jbGVhclRpbWVvdXQoTGlnaHRib3guc2xpZGVJZEFy cmF5W2ldKTsKICAgICAgICB9CiAgICAgIH0KICAgICAgTGlnaHRib3guaW5wcm9n cmVzcyA9IHRydWU7CiAgICAgIExpZ2h0Ym94LmFjdGl2ZUltYWdlID0gaW1hZ2VO dW07CgogICAgICBpZiAoTGlnaHRib3guZGlzYWJsZVJlc2l6ZSAmJiAhTGlnaHRi b3guaXNTbGlkZXNob3cpIHsKICAgICAgICB6b29tSW4gPSB0cnVlOwogICAgICB9 CiAgICAgIExpZ2h0Ym94LmlzWm9vbWVkSW4gPSB6b29tSW47CgoKICAgICAgLy8g SGlkZSBlbGVtZW50cyBkdXJpbmcgdHJhbnNpdGlvbi4KICAgICAgJCgnI2xvYWRp bmcnKS5jc3Moeyd6SW5kZXgnOiAnMTA1MDAnfSkuc2hvdygpOwogICAgICBpZiAo IUxpZ2h0Ym94LmFsdGVybmF0aXZlX2xheW91dCkgewogICAgICAgICQoJyNpbWFn ZUNvbnRhaW5lcicpLmhpZGUoKTsKICAgICAgfQogICAgICAkKCcjZnJhbWVDb250 YWluZXIsICNtb2RhbENvbnRhaW5lciwgI2xpZ2h0Ym94SW1hZ2UnKS5oaWRlKCk7 CiAgICAgICQoJyNob3Zlck5hdiwgI3ByZXZMaW5rLCAjbmV4dExpbmssICNmcmFt ZUhvdmVyTmF2LCAjZnJhbWVQcmV2TGluaywgI2ZyYW1lTmV4dExpbmsnKS5oaWRl KCk7CiAgICAgICQoJyNpbWFnZURhdGFDb250YWluZXIsICNudW1iZXJEaXNwbGF5 LCAjYm90dG9tTmF2Wm9vbSwgI2JvdHRvbU5hdlpvb21PdXQnKS5oaWRlKCk7Cgog ICAgICAvLyBQcmVsb2FkIGltYWdlIGNvbnRlbnQsIGJ1dCBub3QgaWZyYW1lIHBh Z2VzLgogICAgICBpZiAoIUxpZ2h0Ym94LmlzTGlnaHRmcmFtZSAmJiAhTGlnaHRi b3guaXNWaWRlbyAmJiAhTGlnaHRib3guaXNNb2RhbCkgewogICAgICAgIGltZ1By ZWxvYWRlciA9IG5ldyBJbWFnZSgpOwogICAgICAgIGltZ1ByZWxvYWRlci5vbmVy cm9yID0gZnVuY3Rpb24oKSB7IExpZ2h0Ym94LmltZ05vZGVMb2FkaW5nRXJyb3Io dGhpcyk7IH07CgogICAgICAgIGltZ1ByZWxvYWRlci5vbmxvYWQgPSBmdW5jdGlv bigpIHsKICAgICAgICAgIHZhciBwaG90byA9IGRvY3VtZW50LmdldEVsZW1lbnRC eUlkKCdsaWdodGJveEltYWdlJyk7CiAgICAgICAgICBwaG90by5zcmMgPSBMaWdo dGJveC5pbWFnZUFycmF5W0xpZ2h0Ym94LmFjdGl2ZUltYWdlXVswXTsKICAgICAg ICAgIHBob3RvLmFsdCA9IExpZ2h0Ym94LmltYWdlQXJyYXlbTGlnaHRib3guYWN0 aXZlSW1hZ2VdWzJdOwoKICAgICAgICAgIHZhciBpbWFnZVdpZHRoID0gaW1nUHJl bG9hZGVyLndpZHRoOwogICAgICAgICAgdmFyIGltYWdlSGVpZ2h0ID0gaW1nUHJl bG9hZGVyLmhlaWdodDsKCiAgICAgICAgICAvLyBSZXNpemUgY29kZS4KICAgICAg ICAgIHZhciBhcnJheVBhZ2VTaXplID0gTGlnaHRib3guZ2V0UGFnZVNpemUoKTsK ICAgICAgICAgIHZhciB0YXJnID0geyB3OmFycmF5UGFnZVNpemVbMl0gLSAoTGln aHRib3guYm9yZGVyU2l6ZSAqIDIpLCBoOmFycmF5UGFnZVNpemVbM10gLSAoTGln aHRib3guYm9yZGVyU2l6ZSAqIDYpIC0gKExpZ2h0Ym94LmluZm9IZWlnaHQgKiA0 KSAtIChhcnJheVBhZ2VTaXplWzNdIC8gMTApIH07CiAgICAgICAgICB2YXIgb3Jp ZyA9IHsgdzppbWdQcmVsb2FkZXIud2lkdGgsIGg6aW1nUHJlbG9hZGVyLmhlaWdo dCB9OwoKICAgICAgICAgIC8vIEltYWdlIGlzIHZlcnkgbGFyZ2UsIHNvIHNob3cg YSBzbWFsbGVyIHZlcnNpb24gb2YgdGhlIGxhcmdlciBpbWFnZQogICAgICAgICAg Ly8gd2l0aCB6b29tIGJ1dHRvbi4KICAgICAgICAgIGlmICh6b29tSW4gIT09IHRy dWUpIHsKICAgICAgICAgICAgdmFyIHJhdGlvID0gMS4wOyAvLyBTaHJpbmsgaW1h Z2Ugd2l0aCB0aGUgc2FtZSBhc3BlY3QuCiAgICAgICAgICAgICQoJyNib3R0b21O YXZab29tT3V0LCAjYm90dG9tTmF2Wm9vbScpLmhpZGUoKTsKICAgICAgICAgICAg aWYgKChvcmlnLncgPj0gdGFyZy53IHx8IG9yaWcuaCA+PSB0YXJnLmgpICYmIG9y aWcuaCAmJiBvcmlnLncpIHsKICAgICAgICAgICAgICByYXRpbyA9ICgodGFyZy53 IC8gb3JpZy53KSA8ICh0YXJnLmggLyBvcmlnLmgpKSA/IHRhcmcudyAvIG9yaWcu dyA6IHRhcmcuaCAvIG9yaWcuaDsKICAgICAgICAgICAgICBpZiAoIUxpZ2h0Ym94 LmRpc2FibGVab29tICYmICFMaWdodGJveC5pc1NsaWRlc2hvdykgewogICAgICAg ICAgICAgICAgJCgnI2JvdHRvbU5hdlpvb20nKS5jc3Moeyd6SW5kZXgnOiAnMTA1 MDAnfSkuc2hvdygpOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQoKICAg ICAgICAgICAgaW1hZ2VXaWR0aCAgPSBNYXRoLmZsb29yKG9yaWcudyAqIHJhdGlv KTsKICAgICAgICAgICAgaW1hZ2VIZWlnaHQgPSBNYXRoLmZsb29yKG9yaWcuaCAq IHJhdGlvKTsKICAgICAgICAgIH0KCiAgICAgICAgICBlbHNlIHsKICAgICAgICAg ICAgJCgnI2JvdHRvbU5hdlpvb20nKS5oaWRlKCk7CiAgICAgICAgICAgIC8vIE9u bHkgZGlzcGxheSB6b29tIG91dCBidXR0b24gaWYgdGhlIGltYWdlIGlzIHpvb21l ZCBpbiBhbHJlYWR5LgogICAgICAgICAgICBpZiAoKG9yaWcudyA+PSB0YXJnLncg fHwgb3JpZy5oID49IHRhcmcuaCkgJiYgb3JpZy5oICYmIG9yaWcudykgewogICAg ICAgICAgICAgIC8vIE9ubHkgZGlzcGxheSB6b29tIG91dCBidXR0b24gaWYgbm90 IGEgc2xpZGVzaG93IGFuZCBpZiB0aGUKICAgICAgICAgICAgICAvLyBidXR0b25z IGFyZW4ndCBkaXNhYmxlZC4KICAgICAgICAgICAgICBpZiAoIUxpZ2h0Ym94LmRp c2FibGVSZXNpemUgJiYgTGlnaHRib3guaXNTbGlkZXNob3cgPT09IGZhbHNlICYm ICFMaWdodGJveC5kaXNhYmxlWm9vbSkgewogICAgICAgICAgICAgICAgJCgnI2Jv dHRvbU5hdlpvb21PdXQnKS5jc3Moeyd6SW5kZXgnOiAnMTA1MDAnfSkuc2hvdygp OwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgICAgfQoKICAg ICAgICAgIHBob3RvLnN0eWxlLndpZHRoID0gKGltYWdlV2lkdGgpICsgJ3B4JzsK ICAgICAgICAgIHBob3RvLnN0eWxlLmhlaWdodCA9IChpbWFnZUhlaWdodCkgKyAn cHgnOwogICAgICAgICAgTGlnaHRib3gucmVzaXplQ29udGFpbmVyKGltYWdlV2lk dGgsIGltYWdlSGVpZ2h0KTsKCiAgICAgICAgICAvLyBDbGVhciBvbkxvYWQsIElF IGJlaGF2ZXMgaXJyYXRpY2FsbHkgd2l0aCBhbmltYXRlZCBnaWZzIG90aGVyd2lz ZS4KICAgICAgICAgIGltZ1ByZWxvYWRlci5vbmxvYWQgPSBmdW5jdGlvbigpIHt9 OwogICAgICAgIH07CgogICAgICAgIGltZ1ByZWxvYWRlci5zcmMgPSBMaWdodGJv eC5pbWFnZUFycmF5W0xpZ2h0Ym94LmFjdGl2ZUltYWdlXVswXTsKICAgICAgICBp bWdQcmVsb2FkZXIuYWx0ID0gTGlnaHRib3guaW1hZ2VBcnJheVtMaWdodGJveC5h Y3RpdmVJbWFnZV1bMl07CiAgICAgIH0KCiAgICAgIC8vIFNldCB1cCBmcmFtZSBz aXplLCBldGMuCiAgICAgIGVsc2UgaWYgKExpZ2h0Ym94LmlzTGlnaHRmcmFtZSkg ewogICAgICAgIHZhciBzcmMgPSBMaWdodGJveC5pbWFnZUFycmF5W0xpZ2h0Ym94 LmFjdGl2ZUltYWdlXVswXTsKICAgICAgICAkKCcjZnJhbWVDb250YWluZXInKS5o dG1sKCc8aWZyYW1lIGlkPSJsaWdodGJveEZyYW1lIiBzdHlsZT0iZGlzcGxheTog bm9uZTsiIHNyYz0iJytzcmMrJyI+PC9pZnJhbWU+Jyk7CgogICAgICAgIC8vIEVu YWJsZSBzd2Ygc3VwcG9ydCBpbiBHZWNrbyBicm93c2Vycy4KICAgICAgICBpZiAo JC5icm93c2VyLm1vemlsbGEgJiYgc3JjLmluZGV4T2YoJy5zd2YnKSAhPSAtMSkg ewogICAgICAgICAgc2V0VGltZW91dChmdW5jdGlvbiAoKSB7CiAgICAgICAgICAg IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJsaWdodGJveEZyYW1lIikuc3JjID0g TGlnaHRib3guaW1hZ2VBcnJheVtMaWdodGJveC5hY3RpdmVJbWFnZV1bMF07CiAg ICAgICAgICB9LCAxMDAwKTsKICAgICAgICB9CgogICAgICAgIGlmICghTGlnaHRi b3guaWZyYW1lX2JvcmRlcikgewogICAgICAgICAgJCgnI2xpZ2h0Ym94RnJhbWUn KS5jc3Moeydib3JkZXInOiAnbm9uZSd9KTsKICAgICAgICAgICQoJyNsaWdodGJv eEZyYW1lJykuYXR0cignZnJhbWVib3JkZXInLCAnMCcpOwogICAgICAgIH0KICAg ICAgICB2YXIgaWZyYW1lID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2xpZ2h0 Ym94RnJhbWUnKTsKICAgICAgICB2YXIgaWZyYW1lU3R5bGVzID0gTGlnaHRib3gu aW1hZ2VBcnJheVtMaWdodGJveC5hY3RpdmVJbWFnZV1bM107CiAgICAgICAgaWZy YW1lID0gTGlnaHRib3guc2V0U3R5bGVzKGlmcmFtZSwgaWZyYW1lU3R5bGVzKTsK ICAgICAgICBMaWdodGJveC5yZXNpemVDb250YWluZXIocGFyc2VJbnQoaWZyYW1l LndpZHRoLCAxMCksIHBhcnNlSW50KGlmcmFtZS5oZWlnaHQsIDEwKSk7CiAgICAg IH0KICAgICAgZWxzZSBpZiAoTGlnaHRib3guaXNWaWRlbyB8fCBMaWdodGJveC5p c01vZGFsKSB7CiAgICAgICAgdmFyIGNvbnRhaW5lciA9IGRvY3VtZW50LmdldEVs ZW1lbnRCeUlkKCdtb2RhbENvbnRhaW5lcicpOwogICAgICAgIHZhciBtb2RhbFN0 eWxlcyA9IExpZ2h0Ym94LmltYWdlQXJyYXlbTGlnaHRib3guYWN0aXZlSW1hZ2Vd WzNdOwogICAgICAgIGNvbnRhaW5lciA9IExpZ2h0Ym94LnNldFN0eWxlcyhjb250 YWluZXIsIG1vZGFsU3R5bGVzKTsKICAgICAgICBpZiAoTGlnaHRib3guaXNWaWRl bykgewogICAgICAgICAgTGlnaHRib3gubW9kYWxIZWlnaHQgPSAgcGFyc2VJbnQo Y29udGFpbmVyLmhlaWdodCwgMTApOwogICAgICAgICAgTGlnaHRib3gubW9kYWxX aWR0aCA9ICBwYXJzZUludChjb250YWluZXIud2lkdGgsIDEwKTsKICAgICAgICAg IExpZ2h0dmlkZW8uc3RhcnRWaWRlbyhMaWdodGJveC5pbWFnZUFycmF5W0xpZ2h0 Ym94LmFjdGl2ZUltYWdlXVswXSk7CiAgICAgICAgfQogICAgICAgIExpZ2h0Ym94 LnJlc2l6ZUNvbnRhaW5lcihwYXJzZUludChjb250YWluZXIud2lkdGgsIDEwKSwg cGFyc2VJbnQoY29udGFpbmVyLmhlaWdodCwgMTApKTsKICAgICAgfQogICAgfQog IH0sCgogIC8vIGltZ05vZGVMb2FkaW5nRXJyb3IoKQogIGltZ05vZGVMb2FkaW5n RXJyb3I6IGZ1bmN0aW9uKGltYWdlKSB7CiAgICB2YXIgcyA9IERydXBhbC5zZXR0 aW5ncy5saWdodGJveDI7CiAgICB2YXIgb3JpZ2luYWxfaW1hZ2UgPSBMaWdodGJv eC5pbWFnZUFycmF5W0xpZ2h0Ym94LmFjdGl2ZUltYWdlXVswXTsKICAgIGlmIChz LmRpc3BsYXlfaW1hZ2Vfc2l6ZSAhPT0gIiIpIHsKICAgICAgb3JpZ2luYWxfaW1h Z2UgPSBvcmlnaW5hbF9pbWFnZS5yZXBsYWNlKG5ldyBSZWdFeHAoIi4iK3MuZGlz cGxheV9pbWFnZV9zaXplKSwgIiIpOwogICAgfQogICAgTGlnaHRib3guaW1hZ2VB cnJheVtMaWdodGJveC5hY3RpdmVJbWFnZV1bMF0gPSBvcmlnaW5hbF9pbWFnZTsK ICAgIGltYWdlLm9uZXJyb3IgPSBmdW5jdGlvbigpIHsgTGlnaHRib3guaW1nTG9h ZGluZ0Vycm9yKGltYWdlKTsgfTsKICAgIGltYWdlLnNyYyA9IG9yaWdpbmFsX2lt YWdlOwogIH0sCgogIC8vIGltZ0xvYWRpbmdFcnJvcigpCiAgaW1nTG9hZGluZ0Vy cm9yOiBmdW5jdGlvbihpbWFnZSkgewogICAgdmFyIHMgPSBEcnVwYWwuc2V0dGlu Z3MubGlnaHRib3gyOwogICAgTGlnaHRib3guaW1hZ2VBcnJheVtMaWdodGJveC5h Y3RpdmVJbWFnZV1bMF0gPSBzLmRlZmF1bHRfaW1hZ2U7CiAgICBpbWFnZS5zcmMg PSBzLmRlZmF1bHRfaW1hZ2U7CiAgfSwKCiAgLy8gcmVzaXplQ29udGFpbmVyKCkK ICByZXNpemVDb250YWluZXI6IGZ1bmN0aW9uKGltZ1dpZHRoLCBpbWdIZWlnaHQp IHsKCiAgICBpbWdXaWR0aCA9IChpbWdXaWR0aCA8IExpZ2h0Ym94Lm1pbldpZHRo ID8gTGlnaHRib3gubWluV2lkdGggOiBpbWdXaWR0aCk7CgogICAgdGhpcy53aWR0 aEN1cnJlbnQgPSAkKCcjb3V0ZXJJbWFnZUNvbnRhaW5lcicpLndpZHRoKCk7CiAg ICB0aGlzLmhlaWdodEN1cnJlbnQgPSAkKCcjb3V0ZXJJbWFnZUNvbnRhaW5lcicp LmhlaWdodCgpOwoKICAgIHZhciB3aWR0aE5ldyA9IChpbWdXaWR0aCAgKyAoTGln aHRib3guYm9yZGVyU2l6ZSAqIDIpKTsKICAgIHZhciBoZWlnaHROZXcgPSAoaW1n SGVpZ2h0ICArIChMaWdodGJveC5ib3JkZXJTaXplICogMikpOwoKICAgIC8vIFNj YWxhcnMgYmFzZWQgb24gY2hhbmdlIGZyb20gb2xkIHRvIG5ldy4KICAgIHRoaXMu eFNjYWxlID0gKCB3aWR0aE5ldyAvIHRoaXMud2lkdGhDdXJyZW50KSAqIDEwMDsK ICAgIHRoaXMueVNjYWxlID0gKCBoZWlnaHROZXcgLyB0aGlzLmhlaWdodEN1cnJl bnQpICogMTAwOwoKICAgIC8vIENhbGN1bGF0ZSBzaXplIGRpZmZlcmVuY2UgYmV0 d2VlbiBuZXcgYW5kIG9sZCBpbWFnZSwgYW5kIHJlc2l6ZSBpZgogICAgLy8gbmVj ZXNzYXJ5LgogICAgd0RpZmYgPSB0aGlzLndpZHRoQ3VycmVudCAtIHdpZHRoTmV3 OwogICAgaERpZmYgPSB0aGlzLmhlaWdodEN1cnJlbnQgLSBoZWlnaHROZXc7Cgog ICAgJCgnI21vZGFsQ29udGFpbmVyJykuY3NzKHsnd2lkdGgnOiBpbWdXaWR0aCwg J2hlaWdodCc6IGltZ0hlaWdodH0pOwogICAgLy8gRGV0ZWN0IGFuaW1hdGlvbiBz ZXF1ZW5jZS4KICAgIGlmIChMaWdodGJveC5yZXNpemVTZXF1ZW5jZSkgewogICAg ICB2YXIgYW5pbWF0ZTEgPSB7d2lkdGg6IHdpZHRoTmV3fTsKICAgICAgdmFyIGFu aW1hdGUyID0ge2hlaWdodDogaGVpZ2h0TmV3fTsKICAgICAgaWYgKExpZ2h0Ym94 LnJlc2l6ZVNlcXVlbmNlID09IDIpIHsKICAgICAgICBhbmltYXRlMSA9IHtoZWln aHQ6IGhlaWdodE5ld307CiAgICAgICAgYW5pbWF0ZTIgPSB7d2lkdGg6IHdpZHRo TmV3fTsKICAgICAgfQogICAgICAkKCcjb3V0ZXJJbWFnZUNvbnRhaW5lcicpLmFu aW1hdGUoYW5pbWF0ZTEsIExpZ2h0Ym94LnJlc2l6ZVNwZWVkKS5hbmltYXRlKGFu aW1hdGUyLCBMaWdodGJveC5yZXNpemVTcGVlZCwgJ2xpbmVhcicsIGZ1bmN0aW9u KCkgeyBMaWdodGJveC5zaG93RGF0YSgpOyB9KTsKICAgIH0KICAgIC8vIFNpbXVs dGFuZW91cy4KICAgIGVsc2UgewogICAgICAkKCcjb3V0ZXJJbWFnZUNvbnRhaW5l cicpLmFuaW1hdGUoeyd3aWR0aCc6IHdpZHRoTmV3LCAnaGVpZ2h0JzogaGVpZ2h0 TmV3fSwgTGlnaHRib3gucmVzaXplU3BlZWQsICdsaW5lYXInLCBmdW5jdGlvbigp IHsgTGlnaHRib3guc2hvd0RhdGEoKTsgfSk7CiAgICB9CgogICAgLy8gSWYgbmV3 IGFuZCBvbGQgaW1hZ2UgYXJlIHNhbWUgc2l6ZSBhbmQgbm8gc2NhbGluZyB0cmFu c2l0aW9uIGlzIG5lY2Vzc2FyeQogICAgLy8gZG8gYSBxdWljayBwYXVzZSB0byBw cmV2ZW50IGltYWdlIGZsaWNrZXIuCiAgICBpZiAoKGhEaWZmID09PSAwKSAmJiAo d0RpZmYgPT09IDApKSB7CiAgICAgIGlmICgkLmJyb3dzZXIubXNpZSkgewogICAg ICAgIExpZ2h0Ym94LnBhdXNlKDI1MCk7CiAgICAgIH0KICAgICAgZWxzZSB7CiAg ICAgICAgTGlnaHRib3gucGF1c2UoMTAwKTsKICAgICAgfQogICAgfQoKICAgIHZh ciBzID0gRHJ1cGFsLnNldHRpbmdzLmxpZ2h0Ym94MjsKICAgIGlmICghcy51c2Vf YWx0X2xheW91dCkgewogICAgICAkKCcjcHJldkxpbmssICNuZXh0TGluaycpLmNz cyh7J2hlaWdodCc6IGltZ0hlaWdodCArICdweCd9KTsKICAgIH0KICAgICQoJyNp bWFnZURhdGFDb250YWluZXInKS5jc3Moeyd3aWR0aCc6IHdpZHRoTmV3ICsgJ3B4 J30pOwogIH0sCgogIC8vIHNob3dEYXRhKCkKICAvLyBEaXNwbGF5IGltYWdlIGFu ZCBiZWdpbiBwcmVsb2FkaW5nIG5laWdoYm9ycy4KICBzaG93RGF0YTogZnVuY3Rp b24oKSB7CiAgICAkKCcjbG9hZGluZycpLmhpZGUoKTsKCiAgICBpZiAoTGlnaHRi b3guaXNMaWdodGZyYW1lIHx8IExpZ2h0Ym94LmlzVmlkZW8gfHwgTGlnaHRib3gu aXNNb2RhbCkgewogICAgICBMaWdodGJveC51cGRhdGVEZXRhaWxzKCk7CiAgICAg IGlmIChMaWdodGJveC5pc0xpZ2h0ZnJhbWUpIHsKICAgICAgICAkKCcjZnJhbWVD b250YWluZXInKS5zaG93KCk7CiAgICAgICAgaWYgKCQuYnJvd3Nlci5zYWZhcmkp IHsKICAgICAgICAgICQoJyNsaWdodGJveEZyYW1lJykuY3NzKHsnekluZGV4Jzog JzEwNTAwJ30pLnNob3coKTsKICAgICAgICB9CiAgICAgICAgZWxzZSB7CiAgICAg ICAgICAkKCcjbGlnaHRib3hGcmFtZScpLmNzcyh7J3pJbmRleCc6ICcxMDUwMCd9 KS5mYWRlSW4oTGlnaHRib3guZmFkZUluU3BlZWQpOwogICAgICAgIH0KICAgICAg fQogICAgICBlbHNlIHsKICAgICAgICBpZiAoTGlnaHRib3guaXNWaWRlbykgewog ICAgICAgICAgJCgiI21vZGFsQ29udGFpbmVyIikuaHRtbChMaWdodGJveC5tb2Rh bEhUTUwpOwogICAgICAgICAgJCgiI21vZGFsQ29udGFpbmVyIikuY2xpY2soZnVu Y3Rpb24oKSB7IHJldHVybiBmYWxzZTsgfSApOwogICAgICAgIH0KICAgICAgICBl bHNlIHsKICAgICAgICAgIHZhciBzcmMgPSB1bmVzY2FwZShMaWdodGJveC5pbWFn ZUFycmF5W0xpZ2h0Ym94LmFjdGl2ZUltYWdlXVswXSk7CiAgICAgICAgICBpZiAo TGlnaHRib3guaW1hZ2VBcnJheVtMaWdodGJveC5hY3RpdmVJbWFnZV1bNF0pIHsK ICAgICAgICAgICAgJChzcmMpLmFwcGVuZFRvKCIjbW9kYWxDb250YWluZXIiKTsK ICAgICAgICAgIH0KICAgICAgICAgIGVsc2UgewogICAgICAgICAgICAkKCIjbW9k YWxDb250YWluZXIiKS5sb2FkKHNyYyk7CiAgICAgICAgICB9CiAgICAgICAgICAk KCcjbW9kYWxDb250YWluZXInKS51bmJpbmQoJ2NsaWNrJyk7CiAgICAgICAgfQog ICAgICAgICQoJyNtb2RhbENvbnRhaW5lcicpLmNzcyh7J3pJbmRleCc6ICcxMDUw MCd9KS5zaG93KCk7CiAgICAgIH0KICAgIH0KCiAgICAvLyBIYW5kbGUgZGlzcGxh eSBvZiBpbWFnZSBjb250ZW50LgogICAgZWxzZSB7CiAgICAgICQoJyNpbWFnZUNv bnRhaW5lcicpLnNob3coKTsKICAgICAgaWYoJC5icm93c2VyLnNhZmFyaSkgewog ICAgICAgICQoJyNsaWdodGJveEltYWdlJykuY3NzKHsnekluZGV4JzogJzEwNTAw J30pLnNob3coKTsKICAgICAgfQogICAgICBlbHNlIHsKICAgICAgICAkKCcjbGln aHRib3hJbWFnZScpLmNzcyh7J3pJbmRleCc6ICcxMDUwMCd9KS5mYWRlSW4oTGln aHRib3guZmFkZUluU3BlZWQpOwogICAgICB9CiAgICAgIExpZ2h0Ym94LnVwZGF0 ZURldGFpbHMoKTsKICAgICAgdGhpcy5wcmVsb2FkTmVpZ2hib3JJbWFnZXMoKTsK ICAgIH0KICAgIExpZ2h0Ym94LmlucHJvZ3Jlc3MgPSBmYWxzZTsKCiAgICAvLyBT bGlkZXNob3cgc3BlY2lmaWMgc3R1ZmYuCiAgICBpZiAoTGlnaHRib3guaXNTbGlk ZXNob3cpIHsKICAgICAgaWYgKCFMaWdodGJveC5sb29wU2xpZGVzICYmIExpZ2h0 Ym94LmFjdGl2ZUltYWdlID09IChMaWdodGJveC50b3RhbCAtIDEpKSB7CiAgICAg ICAgaWYgKExpZ2h0Ym94LmF1dG9FeGl0KSB7CiAgICAgICAgICBMaWdodGJveC5z bGlkZUlkQXJyYXlbTGlnaHRib3guc2xpZGVJZENvdW50KytdID0gc2V0VGltZW91 dChmdW5jdGlvbiAoKSB7TGlnaHRib3guZW5kKCdzbGlkZXNob3cnKTt9LCBMaWdo dGJveC5zbGlkZUludGVydmFsKTsKICAgICAgICB9CiAgICAgIH0KICAgICAgZWxz ZSB7CiAgICAgICAgaWYgKCFMaWdodGJveC5pc1BhdXNlZCAmJiBMaWdodGJveC50 b3RhbCA+IDEpIHsKICAgICAgICAgIExpZ2h0Ym94LnNsaWRlSWRBcnJheVtMaWdo dGJveC5zbGlkZUlkQ291bnQrK10gPSBzZXRUaW1lb3V0KGZ1bmN0aW9uICgpIHtM aWdodGJveC5jaGFuZ2VEYXRhKExpZ2h0Ym94LmFjdGl2ZUltYWdlICsgMSk7fSwg TGlnaHRib3guc2xpZGVJbnRlcnZhbCk7CiAgICAgICAgfQogICAgICB9CiAgICAg IGlmIChMaWdodGJveC5zaG93UGxheVBhdXNlICYmIExpZ2h0Ym94LnRvdGFsID4g MSAmJiAhTGlnaHRib3guaXNQYXVzZWQpIHsKICAgICAgICAkKCcjbGlnaHRzaG93 UGF1c2UnKS5zaG93KCk7CiAgICAgICAgJCgnI2xpZ2h0c2hvd1BsYXknKS5oaWRl KCk7CiAgICAgIH0KICAgICAgZWxzZSBpZiAoTGlnaHRib3guc2hvd1BsYXlQYXVz ZSAmJiBMaWdodGJveC50b3RhbCA+IDEpIHsKICAgICAgICAkKCcjbGlnaHRzaG93 UGF1c2UnKS5oaWRlKCk7CiAgICAgICAgJCgnI2xpZ2h0c2hvd1BsYXknKS5zaG93 KCk7CiAgICAgIH0KICAgIH0KCiAgICAvLyBBZGp1c3QgdGhlIHBhZ2Ugb3Zlcmxh eSBzaXplLgogICAgdmFyIGFycmF5UGFnZVNpemUgPSBMaWdodGJveC5nZXRQYWdl U2l6ZSgpOwogICAgdmFyIGFycmF5UGFnZVNjcm9sbCA9IExpZ2h0Ym94LmdldFBh Z2VTY3JvbGwoKTsKICAgIHZhciBwYWdlSGVpZ2h0ID0gYXJyYXlQYWdlU2l6ZVsx XTsKICAgIGlmIChMaWdodGJveC5pc1pvb21lZEluICYmIGFycmF5UGFnZVNpemVb MV0gPiBhcnJheVBhZ2VTaXplWzNdKSB7CiAgICAgIHZhciBsaWdodGJveFRvcCA9 IChMaWdodGJveC50b3BQb3NpdGlvbiA9PSAnJyA/IChhcnJheVBhZ2VTaXplWzNd IC8gMTApIDogTGlnaHRib3gudG9wUG9zaXRpb24pICogMTsKICAgICAgcGFnZUhl aWdodCA9IHBhZ2VIZWlnaHQgKyBhcnJheVBhZ2VTY3JvbGxbMV0gKyBsaWdodGJv eFRvcDsKICAgIH0KICAgICQoJyNvdmVybGF5JykuY3NzKHsnaGVpZ2h0JzogcGFn ZUhlaWdodCArICdweCcsICd3aWR0aCc6IGFycmF5UGFnZVNpemVbMF0gKyAncHgn fSk7CgogICAgLy8gR2Vja28gYnJvd3NlcnMgKGUuZy4gRmlyZWZveCwgU2VhTW9u a2V5LCBldGMpIGRvbid0IGhhbmRsZSBwZGZzIGFzCiAgICAvLyBleHBlY3RlZC4K ICAgIGlmICgkLmJyb3dzZXIubW96aWxsYSkgewogICAgICBpZiAoTGlnaHRib3gu aW1hZ2VBcnJheVtMaWdodGJveC5hY3RpdmVJbWFnZV1bMF0uaW5kZXhPZigiLnBk ZiIpICE9IC0xKSB7CiAgICAgICAgc2V0VGltZW91dChmdW5jdGlvbiAoKSB7CiAg ICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgibGlnaHRib3hGcmFtZSIp LnNyYyA9IExpZ2h0Ym94LmltYWdlQXJyYXlbTGlnaHRib3guYWN0aXZlSW1hZ2Vd WzBdOwogICAgICAgIH0sIDEwMDApOwogICAgICB9CiAgICB9CiAgfSwKCiAgLy8g dXBkYXRlRGV0YWlscygpCiAgLy8gRGlzcGxheSBjYXB0aW9uLCBpbWFnZSBudW1i ZXIsIGFuZCBib3R0b20gbmF2LgogIHVwZGF0ZURldGFpbHM6IGZ1bmN0aW9uKCkg ewoKICAgICQoIiNpbWFnZURhdGFDb250YWluZXIiKS5oaWRlKCk7CgogICAgdmFy IGNhcHRpb24gPSBMaWdodGJveC5pbWFnZUFycmF5W0xpZ2h0Ym94LmFjdGl2ZUlt YWdlXVsxXTsKICAgIGlmICghY2FwdGlvbikgY2FwdGlvbiA9ICcmbmJzcDsnOwog ICAgJCgnI2NhcHRpb24nKS5odG1sKGNhcHRpb24pLmNzcyh7J3pJbmRleCc6ICcx MDUwMCd9KS5zaG93KCk7CgogICAgLy8gSWYgaW1hZ2UgaXMgcGFydCBvZiBzZXQg ZGlzcGxheSAnSW1hZ2UgeCBvZiB4Jy4KICAgIHZhciBzID0gRHJ1cGFsLnNldHRp bmdzLmxpZ2h0Ym94MjsKICAgIHZhciBudW1iZXJEaXNwbGF5ID0gbnVsbDsKICAg IGlmIChMaWdodGJveC50b3RhbCA+IDEpIHsKICAgICAgdmFyIGN1cnJlbnRJbWFn ZSA9IExpZ2h0Ym94LmFjdGl2ZUltYWdlICsgMTsKICAgICAgaWYgKCFMaWdodGJv eC5pc0xpZ2h0ZnJhbWUgJiYgIUxpZ2h0Ym94LmlzTW9kYWwgJiYgIUxpZ2h0Ym94 LmlzVmlkZW8pIHsKICAgICAgICBudW1iZXJEaXNwbGF5ID0gcy5pbWFnZV9jb3Vu dC5yZXBsYWNlKC9cIWN1cnJlbnQvLCBjdXJyZW50SW1hZ2UpLnJlcGxhY2UoL1wh dG90YWwvLCBMaWdodGJveC50b3RhbCk7CiAgICAgIH0KICAgICAgZWxzZSBpZiAo TGlnaHRib3guaXNWaWRlbykgewogICAgICAgIG51bWJlckRpc3BsYXkgPSBzLnZp ZGVvX2NvdW50LnJlcGxhY2UoL1whY3VycmVudC8sIGN1cnJlbnRJbWFnZSkucmVw bGFjZSgvXCF0b3RhbC8sIExpZ2h0Ym94LnRvdGFsKTsKICAgICAgfQogICAgICBl bHNlIHsKICAgICAgICBudW1iZXJEaXNwbGF5ID0gcy5wYWdlX2NvdW50LnJlcGxh Y2UoL1whY3VycmVudC8sIGN1cnJlbnRJbWFnZSkucmVwbGFjZSgvXCF0b3RhbC8s IExpZ2h0Ym94LnRvdGFsKTsKICAgICAgfQogICAgICAkKCcjbnVtYmVyRGlzcGxh eScpLmh0bWwobnVtYmVyRGlzcGxheSkuY3NzKHsnekluZGV4JzogJzEwNTAwJ30p LnNob3coKTsKICAgIH0KCiAgICAkKCIjaW1hZ2VEYXRhQ29udGFpbmVyIikuaGlk ZSgpLnNsaWRlRG93bihMaWdodGJveC5zbGlkZURvd25TcGVlZCwgZnVuY3Rpb24o KSB7CiAgICAgICQoIiNib3R0b21OYXYiKS5zaG93KCk7CiAgICB9KTsKICAgIGlm IChMaWdodGJveC5ydGwgPT0gMSkgewogICAgICAkKCIjYm90dG9tTmF2IikuY3Nz KHsnZmxvYXQnOiAnbGVmdCd9KTsKICAgIH0KICAgIExpZ2h0Ym94LnVwZGF0ZU5h digpOwogIH0sCgogIC8vIHVwZGF0ZU5hdigpCiAgLy8gRGlzcGxheSBhcHByb3By aWF0ZSBwcmV2aW91cyBhbmQgbmV4dCBob3ZlciBuYXZpZ2F0aW9uLgogIHVwZGF0 ZU5hdjogZnVuY3Rpb24oKSB7CgogICAgJCgnI2hvdmVyTmF2JykuY3NzKHsneklu ZGV4JzogJzEwNTAwJ30pLnNob3coKTsKICAgIHZhciBwcmV2TGluayA9ICcjcHJl dkxpbmsnOwogICAgdmFyIG5leHRMaW5rID0gJyNuZXh0TGluayc7CgogICAgLy8g U2xpZGVzaG93IGlzIHNlcGFyYXRlZCBhcyB3ZSBuZWVkIHRvIHNob3cgcGxheSAv IHBhdXNlIGJ1dHRvbi4KICAgIGlmIChMaWdodGJveC5pc1NsaWRlc2hvdykgewog ICAgICBpZiAoKExpZ2h0Ym94LnRvdGFsID4gMSAmJiBMaWdodGJveC5sb29wU2xp ZGVzKSB8fCBMaWdodGJveC5hY3RpdmVJbWFnZSAhPT0gMCkgewogICAgICAgICQo cHJldkxpbmspLmNzcyh7J3pJbmRleCc6ICcxMDUwMCd9KS5zaG93KCkuY2xpY2so ZnVuY3Rpb24oKSB7CiAgICAgICAgICBpZiAoTGlnaHRib3gucGF1c2VPblByZXZD bGljaykgewogICAgICAgICAgICBMaWdodGJveC50b2dnbGVQbGF5UGF1c2UoImxp Z2h0c2hvd1BhdXNlIiwgImxpZ2h0c2hvd1BsYXkiKTsKICAgICAgICAgIH0KICAg ICAgICAgIExpZ2h0Ym94LmNoYW5nZURhdGEoTGlnaHRib3guYWN0aXZlSW1hZ2Ug LSAxKTsgcmV0dXJuIGZhbHNlOwogICAgICAgIH0pOwogICAgICB9CiAgICAgIGVs c2UgewogICAgICAgICQocHJldkxpbmspLmhpZGUoKTsKICAgICAgfQoKICAgICAg Ly8gSWYgbm90IGxhc3QgaW1hZ2UgaW4gc2V0LCBkaXNwbGF5IG5leHQgaW1hZ2Ug YnV0dG9uLgogICAgICBpZiAoKExpZ2h0Ym94LnRvdGFsID4gMSAmJiBMaWdodGJv eC5sb29wU2xpZGVzKSB8fCBMaWdodGJveC5hY3RpdmVJbWFnZSAhPSAoTGlnaHRi b3gudG90YWwgLSAxKSkgewogICAgICAgICQobmV4dExpbmspLmNzcyh7J3pJbmRl eCc6ICcxMDUwMCd9KS5zaG93KCkuY2xpY2soZnVuY3Rpb24oKSB7CiAgICAgICAg ICBpZiAoTGlnaHRib3gucGF1c2VPbk5leHRDbGljaykgewogICAgICAgICAgICBM aWdodGJveC50b2dnbGVQbGF5UGF1c2UoImxpZ2h0c2hvd1BhdXNlIiwgImxpZ2h0 c2hvd1BsYXkiKTsKICAgICAgICAgIH0KICAgICAgICAgIExpZ2h0Ym94LmNoYW5n ZURhdGEoTGlnaHRib3guYWN0aXZlSW1hZ2UgKyAxKTsgcmV0dXJuIGZhbHNlOwog ICAgICAgIH0pOwogICAgICB9CiAgICAgIC8vIFNhZmFyaSBicm93c2VycyBuZWVk IHRvIGhhdmUgaGlkZSgpIGNhbGxlZCBhZ2Fpbi4KICAgICAgZWxzZSB7CiAgICAg ICAgJChuZXh0TGluaykuaGlkZSgpOwogICAgICB9CiAgICB9CgogICAgLy8gQWxs IG90aGVyIHR5cGVzIG9mIGNvbnRlbnQuCiAgICBlbHNlIHsKCiAgICAgIGlmICgo TGlnaHRib3guaXNMaWdodGZyYW1lIHx8IExpZ2h0Ym94LmlzTW9kYWwgfHwgTGln aHRib3guaXNWaWRlbykgJiYgIUxpZ2h0Ym94LmFsdGVybmF0aXZlX2xheW91dCkg ewogICAgICAgICQoJyNmcmFtZUhvdmVyTmF2JykuY3NzKHsnekluZGV4JzogJzEw NTAwJ30pLnNob3coKTsKICAgICAgICAkKCcjaG92ZXJOYXYnKS5jc3Moeyd6SW5k ZXgnOiAnMTA1MDAnfSkuaGlkZSgpOwogICAgICAgIHByZXZMaW5rID0gJyNmcmFt ZVByZXZMaW5rJzsKICAgICAgICBuZXh0TGluayA9ICcjZnJhbWVOZXh0TGluayc7 CiAgICAgIH0KCiAgICAgIC8vIElmIG5vdCBmaXJzdCBpbWFnZSBpbiBzZXQsIGRp c3BsYXkgcHJldiBpbWFnZSBidXR0b24uCiAgICAgIGlmICgoTGlnaHRib3gudG90 YWwgPiAxICYmIExpZ2h0Ym94Lmxvb3BJdGVtcykgfHwgTGlnaHRib3guYWN0aXZl SW1hZ2UgIT09IDApIHsKICAgICAgICAkKHByZXZMaW5rKS5jc3Moeyd6SW5kZXgn OiAnMTA1MDAnfSkuc2hvdygpLmNsaWNrKGZ1bmN0aW9uKCkgewogICAgICAgICAg TGlnaHRib3guY2hhbmdlRGF0YShMaWdodGJveC5hY3RpdmVJbWFnZSAtIDEpOyBy ZXR1cm4gZmFsc2U7CiAgICAgICAgfSk7CiAgICAgIH0KICAgICAgLy8gU2FmYXJp IGJyb3dzZXJzIG5lZWQgdG8gaGF2ZSBoaWRlKCkgY2FsbGVkIGFnYWluLgogICAg ICBlbHNlIHsKICAgICAgICAkKHByZXZMaW5rKS5oaWRlKCk7CiAgICAgIH0KCiAg ICAgIC8vIElmIG5vdCBsYXN0IGltYWdlIGluIHNldCwgZGlzcGxheSBuZXh0IGlt YWdlIGJ1dHRvbi4KICAgICAgaWYgKChMaWdodGJveC50b3RhbCA+IDEgJiYgTGln aHRib3gubG9vcEl0ZW1zKSB8fCBMaWdodGJveC5hY3RpdmVJbWFnZSAhPSAoTGln aHRib3gudG90YWwgLSAxKSkgewogICAgICAgICQobmV4dExpbmspLmNzcyh7J3pJ bmRleCc6ICcxMDUwMCd9KS5zaG93KCkuY2xpY2soZnVuY3Rpb24oKSB7CiAgICAg ICAgICBMaWdodGJveC5jaGFuZ2VEYXRhKExpZ2h0Ym94LmFjdGl2ZUltYWdlICsg MSk7IHJldHVybiBmYWxzZTsKICAgICAgICB9KTsKICAgICAgfQogICAgICAvLyBT YWZhcmkgYnJvd3NlcnMgbmVlZCB0byBoYXZlIGhpZGUoKSBjYWxsZWQgYWdhaW4u CiAgICAgIGVsc2UgewogICAgICAgICQobmV4dExpbmspLmhpZGUoKTsKICAgICAg fQogICAgfQoKICAgIC8vIERvbid0IGVuYWJsZSBrZXlib2FyZCBzaG9ydGN1dHMg c28gZm9ybXMgd2lsbCB3b3JrLgogICAgaWYgKCFMaWdodGJveC5pc01vZGFsKSB7 CiAgICAgIHRoaXMuZW5hYmxlS2V5Ym9hcmROYXYoKTsKICAgIH0KICB9LAoKCiAg Ly8gZW5hYmxlS2V5Ym9hcmROYXYoKQogIGVuYWJsZUtleWJvYXJkTmF2OiBmdW5j dGlvbigpIHsKICAgICQoZG9jdW1lbnQpLmJpbmQoImtleWRvd24iLCB0aGlzLmtl eWJvYXJkQWN0aW9uKTsKICB9LAoKICAvLyBkaXNhYmxlS2V5Ym9hcmROYXYoKQog IGRpc2FibGVLZXlib2FyZE5hdjogZnVuY3Rpb24oKSB7CiAgICAkKGRvY3VtZW50 KS51bmJpbmQoImtleWRvd24iLCB0aGlzLmtleWJvYXJkQWN0aW9uKTsKICB9LAoK ICAvLyBrZXlib2FyZEFjdGlvbigpCiAga2V5Ym9hcmRBY3Rpb246IGZ1bmN0aW9u KGUpIHsKICAgIGlmIChlID09PSBudWxsKSB7IC8vIElFLgogICAgICBrZXljb2Rl ID0gZXZlbnQua2V5Q29kZTsKICAgICAgZXNjYXBlS2V5ID0gMjc7CiAgICB9CiAg ICBlbHNlIHsgLy8gTW96aWxsYS4KICAgICAga2V5Y29kZSA9IGUua2V5Q29kZTsK ICAgICAgZXNjYXBlS2V5ID0gZS5ET01fVktfRVNDQVBFOwogICAgfQoKICAgIGtl eSA9IFN0cmluZy5mcm9tQ2hhckNvZGUoa2V5Y29kZSkudG9Mb3dlckNhc2UoKTsK CiAgICAvLyBDbG9zZSBsaWdodGJveC4KICAgIGlmIChMaWdodGJveC5jaGVja0tl eShMaWdodGJveC5rZXlzQ2xvc2UsIGtleSwga2V5Y29kZSkpIHsKICAgICAgTGln aHRib3guZW5kKCdmb3JjZUNsb3NlJyk7CiAgICB9CiAgICAvLyBEaXNwbGF5IHBy ZXZpb3VzIGltYWdlIChwLCA8LSkuCiAgICBlbHNlIGlmIChMaWdodGJveC5jaGVj a0tleShMaWdodGJveC5rZXlzUHJldmlvdXMsIGtleSwga2V5Y29kZSkpIHsKICAg ICAgaWYgKChMaWdodGJveC50b3RhbCA+IDEgJiYgKChMaWdodGJveC5pc1NsaWRl c2hvdyAmJiBMaWdodGJveC5sb29wU2xpZGVzKSB8fCAoIUxpZ2h0Ym94LmlzU2xp ZGVzaG93ICYmIExpZ2h0Ym94Lmxvb3BJdGVtcykpKSB8fCBMaWdodGJveC5hY3Rp dmVJbWFnZSAhPT0gMCkgewogICAgICAgIExpZ2h0Ym94LmNoYW5nZURhdGEoTGln aHRib3guYWN0aXZlSW1hZ2UgLSAxKTsKICAgICAgfQoKICAgIH0KICAgIC8vIERp c3BsYXkgbmV4dCBpbWFnZSAobiwgLT4pLgogICAgZWxzZSBpZiAoTGlnaHRib3gu Y2hlY2tLZXkoTGlnaHRib3gua2V5c05leHQsIGtleSwga2V5Y29kZSkpIHsKICAg ICAgaWYgKChMaWdodGJveC50b3RhbCA+IDEgJiYgKChMaWdodGJveC5pc1NsaWRl c2hvdyAmJiBMaWdodGJveC5sb29wU2xpZGVzKSB8fCAoIUxpZ2h0Ym94LmlzU2xp ZGVzaG93ICYmIExpZ2h0Ym94Lmxvb3BJdGVtcykpKSB8fCBMaWdodGJveC5hY3Rp dmVJbWFnZSAhPSAoTGlnaHRib3gudG90YWwgLSAxKSkgewogICAgICAgIExpZ2h0 Ym94LmNoYW5nZURhdGEoTGlnaHRib3guYWN0aXZlSW1hZ2UgKyAxKTsKICAgICAg fQogICAgfQogICAgLy8gWm9vbSBpbi4KICAgIGVsc2UgaWYgKExpZ2h0Ym94LmNo ZWNrS2V5KExpZ2h0Ym94LmtleXNab29tLCBrZXksIGtleWNvZGUpICYmICFMaWdo dGJveC5kaXNhYmxlUmVzaXplICYmICFMaWdodGJveC5kaXNhYmxlWm9vbSAmJiAh TGlnaHRib3guaXNTbGlkZXNob3cgJiYgIUxpZ2h0Ym94LmlzTGlnaHRmcmFtZSkg ewogICAgICBpZiAoTGlnaHRib3guaXNab29tZWRJbikgewogICAgICAgIExpZ2h0 Ym94LmNoYW5nZURhdGEoTGlnaHRib3guYWN0aXZlSW1hZ2UsIGZhbHNlKTsKICAg ICAgfQogICAgICBlbHNlIGlmICghTGlnaHRib3guaXNab29tZWRJbikgewogICAg ICAgIExpZ2h0Ym94LmNoYW5nZURhdGEoTGlnaHRib3guYWN0aXZlSW1hZ2UsIHRy dWUpOwogICAgICB9CiAgICAgIHJldHVybiBmYWxzZTsKICAgIH0KICAgIC8vIFRv Z2dsZSBwbGF5IC8gcGF1c2UgKHNwYWNlKS4KICAgIGVsc2UgaWYgKExpZ2h0Ym94 LmNoZWNrS2V5KExpZ2h0Ym94LmtleXNQbGF5UGF1c2UsIGtleSwga2V5Y29kZSkg JiYgTGlnaHRib3guaXNTbGlkZXNob3cpIHsKCiAgICAgIGlmIChMaWdodGJveC5p c1BhdXNlZCkgewogICAgICAgIExpZ2h0Ym94LnRvZ2dsZVBsYXlQYXVzZSgibGln aHRzaG93UGxheSIsICJsaWdodHNob3dQYXVzZSIpOwogICAgICB9CiAgICAgIGVs c2UgewogICAgICAgIExpZ2h0Ym94LnRvZ2dsZVBsYXlQYXVzZSgibGlnaHRzaG93 UGF1c2UiLCAibGlnaHRzaG93UGxheSIpOwogICAgICB9CiAgICAgIHJldHVybiBm YWxzZTsKICAgIH0KICB9LAoKICBwcmVsb2FkTmVpZ2hib3JJbWFnZXM6IGZ1bmN0 aW9uKCkgewoKICAgIGlmICgoTGlnaHRib3gudG90YWwgLSAxKSA+IExpZ2h0Ym94 LmFjdGl2ZUltYWdlKSB7CiAgICAgIHByZWxvYWROZXh0SW1hZ2UgPSBuZXcgSW1h Z2UoKTsKICAgICAgcHJlbG9hZE5leHRJbWFnZS5zcmMgPSBMaWdodGJveC5pbWFn ZUFycmF5W0xpZ2h0Ym94LmFjdGl2ZUltYWdlICsgMV1bMF07CiAgICB9CiAgICBp ZiAoTGlnaHRib3guYWN0aXZlSW1hZ2UgPiAwKSB7CiAgICAgIHByZWxvYWRQcmV2 SW1hZ2UgPSBuZXcgSW1hZ2UoKTsKICAgICAgcHJlbG9hZFByZXZJbWFnZS5zcmMg PSBMaWdodGJveC5pbWFnZUFycmF5W0xpZ2h0Ym94LmFjdGl2ZUltYWdlIC0gMV1b MF07CiAgICB9CgogIH0sCgogIGVuZDogZnVuY3Rpb24oY2FsbGVyKSB7CiAgICB2 YXIgY2xvc2VDbGljayA9IChjYWxsZXIgPT0gJ3NsaWRlc2hvdycgPyBmYWxzZSA6 IHRydWUpOwogICAgaWYgKExpZ2h0Ym94LmlzU2xpZGVzaG93ICYmIExpZ2h0Ym94 LmlzUGF1c2VkICYmICFjbG9zZUNsaWNrKSB7CiAgICAgIHJldHVybjsKICAgIH0K ICAgIC8vIFRvIHByZXZlbnQgZG91YmxlIGNsaWNrcyBvbiBuYXZpZ2F0aW9uIGxp bmtzLgogICAgaWYgKExpZ2h0Ym94LmlucHJvZ3Jlc3MgPT09IHRydWUgJiYgY2Fs bGVyICE9ICdmb3JjZUNsb3NlJykgewogICAgICByZXR1cm47CiAgICB9CiAgICBM aWdodGJveC5kaXNhYmxlS2V5Ym9hcmROYXYoKTsKICAgICQoJyNsaWdodGJveCcp LmhpZGUoKTsKICAgICQoIiNvdmVybGF5IikuZmFkZU91dCgpOwogICAgTGlnaHRi b3guaXNQYXVzZWQgPSB0cnVlOwogICAgTGlnaHRib3guaW5wcm9ncmVzcyA9IGZh bHNlOwogICAgLy8gUmVwbGFjZXMgY2FsbHMgdG8gc2hvd1NlbGVjdEJveGVzKCkg YW5kIHNob3dGbGFzaCgpIGluIG9yaWdpbmFsCiAgICAvLyBsaWdodGJveDIuCiAg ICBMaWdodGJveC50b2dnbGVTZWxlY3RzRmxhc2goJ3Zpc2libGUnKTsKICAgIGlm IChMaWdodGJveC5pc1NsaWRlc2hvdykgewogICAgICBmb3IgKHZhciBpID0gMDsg aSA8IExpZ2h0Ym94LnNsaWRlSWRDb3VudDsgaSsrKSB7CiAgICAgICAgd2luZG93 LmNsZWFyVGltZW91dChMaWdodGJveC5zbGlkZUlkQXJyYXlbaV0pOwogICAgICB9 CiAgICAgICQoJyNsaWdodHNob3dQYXVzZSwgI2xpZ2h0c2hvd1BsYXknKS5oaWRl KCk7CiAgICB9CiAgICBlbHNlIGlmIChMaWdodGJveC5pc0xpZ2h0ZnJhbWUpIHsK ICAgICAgJCgnI2ZyYW1lQ29udGFpbmVyJykuZW1wdHkoKS5oaWRlKCk7CiAgICB9 CiAgICBlbHNlIGlmIChMaWdodGJveC5pc1ZpZGVvIHx8IExpZ2h0Ym94LmlzTW9k YWwpIHsKICAgICAgJCgnI21vZGFsQ29udGFpbmVyJykuaGlkZSgpLmh0bWwoIiIp OwogICAgfQogIH0sCgoKICAvLyBnZXRQYWdlU2Nyb2xsKCkKICAvLyBSZXR1cm5z IGFycmF5IHdpdGggeCx5IHBhZ2Ugc2Nyb2xsIHZhbHVlcy4KICAvLyBDb3JlIGNv ZGUgZnJvbSAtIHF1aXJrc21vZGUuY29tLgogIGdldFBhZ2VTY3JvbGwgOiBmdW5j dGlvbigpIHsKCiAgICB2YXIgeFNjcm9sbCwgeVNjcm9sbDsKCiAgICBpZiAoc2Vs Zi5wYWdlWU9mZnNldCkgewogICAgICB5U2Nyb2xsID0gc2VsZi5wYWdlWU9mZnNl dDsKICAgICAgeFNjcm9sbCA9IHNlbGYucGFnZVhPZmZzZXQ7CiAgICB9CiAgICBl bHNlIGlmIChkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQgJiYgZG9jdW1lbnQuZG9j dW1lbnRFbGVtZW50LnNjcm9sbFRvcCkgeyAgLy8gRXhwbG9yZXIgNiBTdHJpY3Qu CiAgICAgIHlTY3JvbGwgPSBkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuc2Nyb2xs VG9wOwogICAgICB4U2Nyb2xsID0gZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LnNj cm9sbExlZnQ7CiAgICB9CiAgICBlbHNlIGlmIChkb2N1bWVudC5ib2R5KSB7Ly8g QWxsIG90aGVyIEV4cGxvcmVycy4KICAgICAgeVNjcm9sbCA9IGRvY3VtZW50LmJv ZHkuc2Nyb2xsVG9wOwogICAgICB4U2Nyb2xsID0gZG9jdW1lbnQuYm9keS5zY3Jv bGxMZWZ0OwogICAgfQoKICAgIGFycmF5UGFnZVNjcm9sbCA9IFt4U2Nyb2xsLHlT Y3JvbGxdOwogICAgcmV0dXJuIGFycmF5UGFnZVNjcm9sbDsKICB9LAoKICAvLyBn ZXRQYWdlU2l6ZSgpCiAgLy8gUmV0dXJucyBhcnJheSB3aXRoIHBhZ2Ugd2lkdGgs IGhlaWdodCBhbmQgd2luZG93IHdpZHRoLCBoZWlnaHQuCiAgLy8gQ29yZSBjb2Rl IGZyb20gLSBxdWlya3Ntb2RlLmNvbS4KICAvLyBFZGl0IGZvciBGaXJlZm94IGJ5 IHBIYWV6LgogIGdldFBhZ2VTaXplIDogZnVuY3Rpb24oKSB7CgogICAgdmFyIHhT Y3JvbGwsIHlTY3JvbGw7CgogICAgaWYgKGRvY3VtZW50LmJvZHkuc2Nyb2xsSGVp Z2h0ID4gZG9jdW1lbnQuYm9keS5vZmZzZXRIZWlnaHQpIHsgLy8gYWxsIGJ1dCBF eHBsb3JlciBNYWMKICAgICAgeFNjcm9sbCA9IGRvY3VtZW50LmJvZHkuc2Nyb2xs V2lkdGg7CiAgICAgIHlTY3JvbGwgPSBkb2N1bWVudC5ib2R5LnNjcm9sbEhlaWdo dDsKICAgIH0KICAgIGVsc2UgaWYgKHdpbmRvdy5pbm5lckhlaWdodCAmJiB3aW5k b3cuc2Nyb2xsTWF4WSkgewogICAgICB4U2Nyb2xsID0gd2luZG93LmlubmVyV2lk dGggKyB3aW5kb3cuc2Nyb2xsTWF4WDsKICAgICAgeVNjcm9sbCA9IHdpbmRvdy5p bm5lckhlaWdodCArIHdpbmRvdy5zY3JvbGxNYXhZOwogICAgfQogICAgLy8gRXhw bG9yZXIgTWFjLi4ud291bGQgYWxzbyB3b3JrIGluIEV4cGxvcmVyIDYgU3RyaWN0 LCBNb3ppbGxhIGFuZCBTYWZhcmkuCiAgICBlbHNlIHsKICAgICAgeFNjcm9sbCA9 IGRvY3VtZW50LmJvZHkub2Zmc2V0V2lkdGg7CiAgICAgIHlTY3JvbGwgPSBkb2N1 bWVudC5ib2R5Lm9mZnNldEhlaWdodDsKICAgIH0KCiAgICB2YXIgd2luZG93V2lk dGgsIHdpbmRvd0hlaWdodDsKCiAgICBpZiAoc2VsZi5pbm5lckhlaWdodCkgeyAv LyBBbGwgZXhjZXB0IEV4cGxvcmVyLgogICAgICBpZiAoZG9jdW1lbnQuZG9jdW1l bnRFbGVtZW50LmNsaWVudFdpZHRoKSB7CiAgICAgICAgd2luZG93V2lkdGggPSBk b2N1bWVudC5kb2N1bWVudEVsZW1lbnQuY2xpZW50V2lkdGg7CiAgICAgIH0KICAg ICAgZWxzZSB7CiAgICAgICAgd2luZG93V2lkdGggPSBzZWxmLmlubmVyV2lkdGg7 CiAgICAgIH0KICAgICAgd2luZG93SGVpZ2h0ID0gc2VsZi5pbm5lckhlaWdodDsK ICAgIH0KICAgIC8vIEV4cGxvcmVyIDYgU3RyaWN0IE1vZGUuCiAgICBlbHNlIGlm IChkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQgJiYgZG9jdW1lbnQuZG9jdW1lbnRF bGVtZW50LmNsaWVudEhlaWdodCkgewogICAgICB3aW5kb3dXaWR0aCA9IGRvY3Vt ZW50LmRvY3VtZW50RWxlbWVudC5jbGllbnRXaWR0aDsKICAgICAgd2luZG93SGVp Z2h0ID0gZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LmNsaWVudEhlaWdodDsKICAg IH0KICAgIGVsc2UgaWYgKGRvY3VtZW50LmJvZHkpIHsgLy8gT3RoZXIgRXhwbG9y ZXJzLgogICAgICB3aW5kb3dXaWR0aCA9IGRvY3VtZW50LmJvZHkuY2xpZW50V2lk dGg7CiAgICAgIHdpbmRvd0hlaWdodCA9IGRvY3VtZW50LmJvZHkuY2xpZW50SGVp Z2h0OwogICAgfQoKCiAgICAvLyBGb3Igc21hbGwgcGFnZXMgd2l0aCB0b3RhbCBo ZWlnaHQgbGVzcyB0aGVuIGhlaWdodCBvZiB0aGUgdmlld3BvcnQuCiAgICBpZiAo eVNjcm9sbCA8IHdpbmRvd0hlaWdodCkgewogICAgICBwYWdlSGVpZ2h0ID0gd2lu ZG93SGVpZ2h0OwogICAgfQogICAgZWxzZSB7CiAgICAgIHBhZ2VIZWlnaHQgPSB5 U2Nyb2xsOwogICAgfQoKCiAgICAvLyBGb3Igc21hbGwgcGFnZXMgd2l0aCB0b3Rh bCB3aWR0aCBsZXNzIHRoZW4gd2lkdGggb2YgdGhlIHZpZXdwb3J0LgogICAgaWYg KHhTY3JvbGwgPCB3aW5kb3dXaWR0aCkgewogICAgICBwYWdlV2lkdGggPSB3aW5k b3dXaWR0aDsKICAgIH0KICAgIGVsc2UgewogICAgICBwYWdlV2lkdGggPSB4U2Ny b2xsOwogICAgfQoKICAgIGFycmF5UGFnZVNpemUgPSBbcGFnZVdpZHRoLCBwYWdl SGVpZ2h0LCB3aW5kb3dXaWR0aCwgd2luZG93SGVpZ2h0XTsKICAgIHJldHVybiBh cnJheVBhZ2VTaXplOwogIH0sCgoKICAvLyBwYXVzZShudW1iZXJNaWxsaXMpCiAg cGF1c2UgOiBmdW5jdGlvbihtcykgewogICAgdmFyIGRhdGUgPSBuZXcgRGF0ZSgp OwogICAgdmFyIGN1ckRhdGUgPSBudWxsOwogICAgZG8geyBjdXJEYXRlID0gbmV3 IERhdGUoKTsgfQogICAgd2hpbGUgKGN1ckRhdGUgLSBkYXRlIDwgbXMpOwogIH0s CgoKICAvLyB0b2dnbGVTZWxlY3RzRmxhc2goKQogIC8vIEhpZGUgLyB1bmhpZGUg c2VsZWN0IGxpc3RzIGFuZCBmbGFzaCBvYmplY3RzIGFzIHRoZXkgYXBwZWFyIGFi b3ZlIHRoZQogIC8vIGxpZ2h0Ym94IGluIHNvbWUgYnJvd3NlcnMuCiAgdG9nZ2xl U2VsZWN0c0ZsYXNoOiBmdW5jdGlvbiAoc3RhdGUpIHsKICAgIGlmIChzdGF0ZSA9 PSAndmlzaWJsZScpIHsKICAgICAgJCgic2VsZWN0LmxpZ2h0Ym94X2hpZGRlbiwg ZW1iZWQubGlnaHRib3hfaGlkZGVuLCBvYmplY3QubGlnaHRib3hfaGlkZGVuIiku c2hvdygpOwogICAgfQogICAgZWxzZSBpZiAoc3RhdGUgPT0gJ2hpZGUnKSB7CiAg ICAgICQoInNlbGVjdDp2aXNpYmxlLCBlbWJlZDp2aXNpYmxlLCBvYmplY3Q6dmlz aWJsZSIpLmFkZENsYXNzKCJsaWdodGJveF9oaWRkZW4iKTsKICAgICAgJCgic2Vs ZWN0LmxpZ2h0Ym94X2hpZGRlbiwgZW1iZWQubGlnaHRib3hfaGlkZGVuLCBvYmpl Y3QubGlnaHRib3hfaGlkZGVuIikuaGlkZSgpOwogICAgfQogIH0sCgoKICAvLyBw YXJzZVJlbCgpCiAgcGFyc2VSZWw6IGZ1bmN0aW9uIChsaW5rKSB7CiAgICB2YXIg cGFydHMgPSBbXTsKICAgIHBhcnRzWyJyZWwiXSA9IHBhcnRzWyJ0aXRsZSJdID0g cGFydHNbImdyb3VwIl0gPSBwYXJ0c1sic3R5bGUiXSA9IG51bGw7CiAgICBpZiAo ISQobGluaykuYXR0cigncmVsJykpIHJldHVybiBwYXJ0czsKICAgIHBhcnRzWyJy ZWwiXSA9ICQobGluaykuYXR0cigncmVsJykubWF0Y2goL1x3Ky8pWzBdOwoKICAg IGlmICgkKGxpbmspLmF0dHIoJ3JlbCcpLm1hdGNoKC9cWyguKilcXS8pKSB7CiAg ICAgIHZhciBpbmZvID0gJChsaW5rKS5hdHRyKCdyZWwnKS5tYXRjaCgvXFsoLio/ KVxdLylbMV0uc3BsaXQoJ3wnKTsKICAgICAgcGFydHNbImdyb3VwIl0gPSBpbmZv WzBdOwogICAgICBwYXJ0c1sic3R5bGUiXSA9IGluZm9bMV07CiAgICB9CiAgICBp ZiAoJChsaW5rKS5hdHRyKCdyZWwnKS5tYXRjaCgvXFsuKlxdXFsoLiopXF0vKSkg ewogICAgICBwYXJ0c1sidGl0bGUiXSA9ICQobGluaykuYXR0cigncmVsJykubWF0 Y2goL1xbLipcXVxbKC4qKVxdLylbMV07CiAgICB9CiAgICByZXR1cm4gcGFydHM7 CiAgfSwKCiAgLy8gc2V0U3R5bGVzKCkKICBzZXRTdHlsZXM6IGZ1bmN0aW9uKGl0 ZW0sIHN0eWxlcykgewogICAgaXRlbS53aWR0aCA9IExpZ2h0Ym94LmlmcmFtZV93 aWR0aDsKICAgIGl0ZW0uaGVpZ2h0ID0gTGlnaHRib3guaWZyYW1lX2hlaWdodDsK ICAgIGl0ZW0uc2Nyb2xsaW5nID0gImF1dG8iOwoKICAgIGlmICghc3R5bGVzKSBy ZXR1cm4gaXRlbTsKICAgIHZhciBzdHlsZXNBcnJheSA9IHN0eWxlcy5zcGxpdCgn OycpOwogICAgZm9yICh2YXIgaSA9IDA7IGk8IHN0eWxlc0FycmF5Lmxlbmd0aDsg aSsrKSB7CiAgICAgIGlmIChzdHlsZXNBcnJheVtpXS5pbmRleE9mKCd3aWR0aDon KSA+PSAwKSB7CiAgICAgICAgdmFyIHcgPSBzdHlsZXNBcnJheVtpXS5yZXBsYWNl KCd3aWR0aDonLCAnJyk7CiAgICAgICAgaXRlbS53aWR0aCA9IGpRdWVyeS50cmlt KHcpOwogICAgICB9CiAgICAgIGVsc2UgaWYgKHN0eWxlc0FycmF5W2ldLmluZGV4 T2YoJ2hlaWdodDonKSA+PSAwKSB7CiAgICAgICAgdmFyIGggPSBzdHlsZXNBcnJh eVtpXS5yZXBsYWNlKCdoZWlnaHQ6JywgJycpOwogICAgICAgIGl0ZW0uaGVpZ2h0 ID0galF1ZXJ5LnRyaW0oaCk7CiAgICAgIH0KICAgICAgZWxzZSBpZiAoc3R5bGVz QXJyYXlbaV0uaW5kZXhPZignc2Nyb2xsaW5nOicpID49IDApIHsKICAgICAgICB2 YXIgc2Nyb2xsaW5nID0gc3R5bGVzQXJyYXlbaV0ucmVwbGFjZSgnc2Nyb2xsaW5n OicsICcnKTsKICAgICAgICBpdGVtLnNjcm9sbGluZyA9IGpRdWVyeS50cmltKHNj cm9sbGluZyk7CiAgICAgIH0KICAgICAgZWxzZSBpZiAoc3R5bGVzQXJyYXlbaV0u aW5kZXhPZignb3ZlcmZsb3c6JykgPj0gMCkgewogICAgICAgIHZhciBvdmVyZmxv dyA9IHN0eWxlc0FycmF5W2ldLnJlcGxhY2UoJ292ZXJmbG93OicsICcnKTsKICAg ICAgICBpdGVtLm92ZXJmbG93ID0galF1ZXJ5LnRyaW0ob3ZlcmZsb3cpOwogICAg ICB9CiAgICB9CiAgICByZXR1cm4gaXRlbTsKICB9LAoKCiAgLy8gdG9nZ2xlUGxh eVBhdXNlKCkKICAvLyBIaWRlIHRoZSBwYXVzZSAvIHBsYXkgYnV0dG9uIGFzIGFw cHJvcHJpYXRlLiAgSWYgcGF1c2luZyB0aGUgc2xpZGVzaG93IGFsc28KICAvLyBj bGVhciB0aGUgdGltZXJzLCBvdGhlcndpc2UgbW92ZSBvbnRvIHRoZSBuZXh0IGlt YWdlLgogIHRvZ2dsZVBsYXlQYXVzZTogZnVuY3Rpb24oaGlkZUlkLCBzaG93SWQp IHsKICAgIGlmIChMaWdodGJveC5pc1NsaWRlc2hvdyAmJiBoaWRlSWQgPT0gImxp Z2h0c2hvd1BhdXNlIikgewogICAgICBmb3IgKHZhciBpID0gMDsgaSA8IExpZ2h0 Ym94LnNsaWRlSWRDb3VudDsgaSsrKSB7CiAgICAgICAgd2luZG93LmNsZWFyVGlt ZW91dChMaWdodGJveC5zbGlkZUlkQXJyYXlbaV0pOwogICAgICB9CiAgICB9CiAg ICAkKCcjJyArIGhpZGVJZCkuaGlkZSgpOwogICAgJCgnIycgKyBzaG93SWQpLnNo b3coKTsKCiAgICBpZiAoaGlkZUlkID09ICJsaWdodHNob3dQbGF5IikgewogICAg ICBMaWdodGJveC5pc1BhdXNlZCA9IGZhbHNlOwogICAgICBpZiAoIUxpZ2h0Ym94 Lmxvb3BTbGlkZXMgJiYgTGlnaHRib3guYWN0aXZlSW1hZ2UgPT0gKExpZ2h0Ym94 LnRvdGFsIC0gMSkpIHsKICAgICAgICBMaWdodGJveC5lbmQoKTsKICAgICAgfQog ICAgICBlbHNlIGlmIChMaWdodGJveC50b3RhbCA+IDEpIHsKICAgICAgICBMaWdo dGJveC5jaGFuZ2VEYXRhKExpZ2h0Ym94LmFjdGl2ZUltYWdlICsgMSk7CiAgICAg IH0KICAgIH0KICAgIGVsc2UgewogICAgICBMaWdodGJveC5pc1BhdXNlZCA9IHRy dWU7CiAgICB9CiAgfSwKCiAgdHJpZ2dlckxpZ2h0Ym94OiBmdW5jdGlvbiAocmVs X3R5cGUsIHJlbF9ncm91cCkgewogICAgaWYgKHJlbF90eXBlLmxlbmd0aCkgewog ICAgICBpZiAocmVsX2dyb3VwICYmIHJlbF9ncm91cC5sZW5ndGgpIHsKICAgICAg ICAkKCJhW0ByZWxePSciICsgcmVsX3R5cGUgKyJcWyIgKyByZWxfZ3JvdXAgKyAi XF0nXSwgYXJlYVtAcmVsXj0nIiArIHJlbF90eXBlICsiXFsiICsgcmVsX2dyb3Vw ICsgIlxdJ10iKS5lcSgwKS50cmlnZ2VyKCJjbGljayIpOwogICAgICB9CiAgICAg IGVsc2UgewogICAgICAgICQoImFbQHJlbF49JyIgKyByZWxfdHlwZSArIiddLCBh cmVhW0ByZWxePSciICsgcmVsX3R5cGUgKyInXSIpLmVxKDApLnRyaWdnZXIoImNs aWNrIik7CiAgICAgIH0KICAgIH0KICB9LAoKICBkZXRlY3RNYWNGRjI6IGZ1bmN0 aW9uKCkgewogICAgdmFyIHVhID0gbmF2aWdhdG9yLnVzZXJBZ2VudC50b0xvd2Vy Q2FzZSgpOwogICAgaWYgKC9maXJlZm94W1wvXHNdKFxkK1wuXGQrKS8udGVzdCh1 YSkpIHsKICAgICAgdmFyIGZmdmVyc2lvbiA9IG5ldyBOdW1iZXIoUmVnRXhwLiQx KTsKICAgICAgaWYgKGZmdmVyc2lvbiA8IDMgJiYgdWEuaW5kZXhPZignbWFjJykg IT0gLTEpIHsKICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgfQogICAgfQogICAg cmV0dXJuIGZhbHNlOwogIH0sCgogIGNoZWNrS2V5OiBmdW5jdGlvbihrZXlzLCBr ZXksIGNvZGUpIHsKICAgIHJldHVybiAoalF1ZXJ5LmluQXJyYXkoa2V5LCBrZXlz KSAhPSAtMSB8fCBqUXVlcnkuaW5BcnJheShTdHJpbmcoY29kZSksIGtleXMpICE9 IC0xKTsKICB9CgoKfTsKCi8vIEluaXRpYWxpemUgdGhlIGxpZ2h0Ym94LgpEcnVw YWwuYmVoYXZpb3JzLmluaXRMaWdodGJveCA9IGZ1bmN0aW9uIChjb250ZXh0KSB7 CiAgJCgnYm9keTpub3QoLmxpZ2h0Ym94LXByb2Nlc3NlZCknLCBjb250ZXh0KS5h ZGRDbGFzcygnbGlnaHRib3gtcHJvY2Vzc2VkJykuZWFjaChmdW5jdGlvbigpIHsK ICAgIExpZ2h0Ym94LmluaXRpYWxpemUoKTsKICAgICQoJyNsaWdodGJveEF1dG9N b2RhbCcpLnRyaWdnZXJIYW5kbGVyKCdjbGljaycpOwogICAgcmV0dXJuIGZhbHNl OyAvLyBCcmVhayB0aGUgZWFjaCBsb29wLgogIH0pOwoKICAvLyBBdHRhY2ggbGln aHRib3ggdG8gYW55IGxpbmtzIHdpdGggbGlnaHRib3ggcmVscy4KICBMaWdodGJv eC5pbml0TGlzdCgpOwp9OwoK ------------ovrp3U8y8KC3rcvqsh3ZpB Content-Disposition: inline; filename=nice_menus.js Content-Type: application/javascript; charset=utf-8; name=nice_menus.js Content-Location: http://www.psychologytoday.com/sites/all/modules/contrib/nice_menus/nice_menus.js?D Content-Transfer-Encoding: Base64 Ly8gJElkOiBuaWNlX21lbnVzLmpzLHYgMS4xMC4yLjYgMjAwOC8wOC8wNCAyMzo0 NTo1MSBhZGQxc3VuIEV4cCAkCgovLyBXZSBuZWVkIHRvIGRvIHNvbWUgYnJvd3Nl ciBzbmlmZmluZyB0byB3ZWVkIG91dCBJRSA2IG9ubHkKLy8gYmVjYXVzZSBvbmx5 IElFNiBuZWVkcyB0aGlzIGhvdmVyIGhhY2suCmlmIChkb2N1bWVudC5hbGwgJiYg IXdpbmRvdy5vcGVyYSAmJiAobmF2aWdhdG9yLmFwcFZlcnNpb24uc2VhcmNoKCJN U0lFIDYuMCIpICE9IC0xKSAmJiAkLmJyb3dzZXIubXNpZSkgewogIGZ1bmN0aW9u IElFSG92ZXJQc2V1ZG8oKSB7CiAgICAgICQoInVsLm5pY2UtbWVudSBsaS5tZW51 cGFyZW50IikuaG92ZXIoZnVuY3Rpb24oKXsKICAgICAgICAgICQodGhpcykuYWRk Q2xhc3MoIm92ZXIiKS5maW5kKCI+IHVsIikuc2hvdygpLmFkZFNoaW0oKTsKICAg ICAgICB9LGZ1bmN0aW9uKCl7CiAgICAgICAgICAkKHRoaXMpLnJlbW92ZUNsYXNz KCJvdmVyIikuZmluZCgiPiB1bCIpLnJlbW92ZVNoaW0oKS5oaWRlKCk7CiAgICAg ICAgfQogICAgICApOwogICAgICAvLyBBZGQgYSBob3ZlciBjbGFzcyB0byBhbGwg bGkgZm9yIENTUyBzdHlsaW5nLiBTaWxseSBuYW1pbmcgaXMgZG9uZQogICAgICAv LyBzbyB3ZSBkb24ndCBicmVhayBDU1MgY29tcGF0aWJpbGl0eSBmb3IgLm92ZXIg Y2xhc3MgYWxyZWFkeSBpbiB1c2UKICAgICAgLy8gYW5kIGR1ZSB0byB0aGUgZmFj dCB0aGF0IElFNiBkb2Vzbid0IHVuZGVyc3RhbmQgbXVsdGlwbGUgc2VsZWN0b3Jz LgogICAgICAkKCJ1bC5uaWNlLW1lbnUgbGkiKS5ob3ZlcihmdW5jdGlvbigpewog ICAgICAgICAgJCh0aGlzKS5hZGRDbGFzcygiaWUtb3ZlciIpOwogICAgICAgIH0s ZnVuY3Rpb24oKXsKICAgICAgICAgICQodGhpcykucmVtb3ZlQ2xhc3MoImllLW92 ZXIiKTsKICAgICAgICB9CiAgICAgICk7CiAgICB9CgogICAgLy8gVGhpcyBpcyB0 aGUganF1ZXJ5IG1ldGhvZCBvZiBhZGRpbmcgYSBmdW5jdGlvbgogICAgLy8gdG8g dGhlIEJPRFkgb25sb2FkIGV2ZW50LiAgKFNlZSBqcXVlcnkuY29tKQogICAgJChk b2N1bWVudCkucmVhZHkoZnVuY3Rpb24oKXsgSUVIb3ZlclBzZXVkbygpIH0pOwp9 CgokLmZuLmFkZFNoaW0gPSBmdW5jdGlvbigpIHsKICByZXR1cm4gdGhpcy5lYWNo KGZ1bmN0aW9uKCl7CgkgIGlmKGRvY3VtZW50LmFsbCAmJiAkKCJzZWxlY3QiKS5z aXplKCkgPiAwKSB7CgkgICAgdmFyIGlmU2hpbSA9IGRvY3VtZW50LmNyZWF0ZUVs ZW1lbnQoJ2lmcmFtZScpOwoJICAgIGlmU2hpbS5zcmMgPSAiamF2YXNjcmlwdDpm YWxzZSI7CgkJCWlmU2hpbS5zdHlsZS53aWR0aD0kKHRoaXMpLndpZHRoKCkrMSsi cHgiOwogICAgICBpZlNoaW0uc3R5bGUuaGVpZ2h0PSQodGhpcykuZmluZCgiPiBs aSIpLnNpemUoKSoyMysyMCsicHgiOwoJCQlpZlNoaW0uc3R5bGUuZmlsdGVyPSJw cm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuQWxwaGEoc3R5bGU9MCxv cGFjaXR5PTApIjsKCQkgIGlmU2hpbS5zdHlsZS56SW5kZXg9IjAiOwogICAgJCh0 aGlzKS5wcmVwZW5kKGlmU2hpbSk7CiAgICAgICQodGhpcykuY3NzKCJ6SW5kZXgi LCI5OSIpOwoJCX0KCX0pOwp9OwoKJC5mbi5yZW1vdmVTaGltID0gZnVuY3Rpb24o KSB7CiAgcmV0dXJuIHRoaXMuZWFjaChmdW5jdGlvbigpewoJICBpZiAoZG9jdW1l bnQuYWxsKSAkKCJpZnJhbWUiLCB0aGlzKS5yZW1vdmUoKTsKCX0pOwp9Owo= ------------ovrp3U8y8KC3rcvqsh3ZpB Content-Disposition: inline; filename=jquery.pngFix.js Content-Type: application/javascript; charset=utf-8; name=jquery.pngFix.js Content-Location: http://www.psychologytoday.com/sites/all/modules/contrib/pngfix/jquery.pngFix.js?D Content-Transfer-Encoding: Base64 LyoqCiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAqIGpRdWVyeS1QbHVnaW4gInBu Z0ZpeCIKICogVmVyc2lvbjogMS4xLCAxMS4wOS4yMDA3CiAqIGJ5IEFuZHJlYXMg RWJlcmhhcmQsIGFuZHJlYXMuZWJlcmhhcmRAZ21haWwuY29tCiAqICAgICAgICAg ICAgICAgICAgICAgIGh0dHA6Ly9qcXVlcnkuYW5kcmVhc2ViZXJoYXJkLmRlLwog KgogKiBDb3B5cmlnaHQgKGMpIDIwMDcgQW5kcmVhcyBFYmVyaGFyZAogKiBMaWNl bnNlZCB1bmRlciBHUEwgKGh0dHA6Ly93d3cub3BlbnNvdXJjZS5vcmcvbGljZW5z ZXMvZ3BsLWxpY2Vuc2UucGhwKQogKgogKiBDaGFuZ2Vsb2c6CiAqICAgIDExLjA5 LjIwMDcgVmVyc2lvbiAxLjEKICogICAgLSByZW1vdmVkIG5vQ29uZmxpY3QKICog ICAgLSBhZGRlZCBwbmctc3VwcG9ydCBmb3IgaW5wdXQgdHlwZT1pbWFnZQogKiAg ICAtIDAxLjA4LjIwMDcgQ1NTIGJhY2tncm91bmQtaW1hZ2Ugc3VwcG9ydCBleHRl bnNpb24gYWRkZWQgYnkgU2NvdHQgSmVobCwgc2NvdHRAZmlsYW1lbnRncm91cC5j b20sIGh0dHA6Ly93d3cuZmlsYW1lbnRncm91cC5jb20KICogICAgMzEuMDUuMjAw NyBpbml0aWFsIFZlcnNpb24gMS4wCiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAq IEBleGFtcGxlICQoZnVuY3Rpb24oKXskKGRvY3VtZW50KS5wbmdGaXgoKTt9KTsK ICogQGRlc2MgRml4ZXMgYWxsIFBORydzIGluIHRoZSBkb2N1bWVudCBvbiBkb2N1 bWVudC5yZWFkeQogKgogKiBqUXVlcnkoZnVuY3Rpb24oKXtqUXVlcnkoZG9jdW1l bnQpLnBuZ0ZpeCgpO30pOwogKiBAZGVzYyBGaXhlcyBhbGwgUE5HJ3MgaW4gdGhl IGRvY3VtZW50IG9uIGRvY3VtZW50LnJlYWR5IHdoZW4gdXNpbmcgbm9Db25mbGlj dAogKgogKiBAZXhhbXBsZSAkKGZ1bmN0aW9uKCl7JCgnZGl2LmV4YW1wbGVzJyku cG5nRml4KCk7fSk7CiAqIEBkZXNjIEZpeGVzIGFsbCBQTkcncyB3aXRoaW4gZGl2 IHdpdGggY2xhc3MgZXhhbXBsZXMKICoKICogQGV4YW1wbGUgJChmdW5jdGlvbigp eyQoJ2Rpdi5leGFtcGxlcycpLnBuZ0ZpeCggeyBibGFua2dpZjonZXh0LmdpZicg fSApO30pOwogKiBAZGVzYyBGaXhlcyBhbGwgUE5HJ3Mgd2l0aGluIGRpdiB3aXRo IGNsYXNzIGV4YW1wbGVzLCBwcm92aWRlcyBibGFuayBnaWYgZm9yIGlucHV0IHdp dGggcG5nCiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAqLwoKKGZ1bmN0aW9uKCQp IHsKCmpRdWVyeS5mbi5wbmdGaXggPSBmdW5jdGlvbihzZXR0aW5ncykgewoKCS8v IFNldHRpbmdzCglzZXR0aW5ncyA9IGpRdWVyeS5leHRlbmQoewoJCWJsYW5rZ2lm OiAnYmxhbmsuZ2lmJwoJfSwgc2V0dGluZ3MpOwoKCXZhciBpZTU1ID0gKG5hdmln YXRvci5hcHBOYW1lID09ICJNaWNyb3NvZnQgSW50ZXJuZXQgRXhwbG9yZXIiICYm IHBhcnNlSW50KG5hdmlnYXRvci5hcHBWZXJzaW9uKSA9PSA0ICYmIG5hdmlnYXRv ci5hcHBWZXJzaW9uLmluZGV4T2YoIk1TSUUgNS41IikgIT0gLTEpOwoJdmFyIGll NiA9IChuYXZpZ2F0b3IuYXBwTmFtZSA9PSAiTWljcm9zb2Z0IEludGVybmV0IEV4 cGxvcmVyIiAmJiBwYXJzZUludChuYXZpZ2F0b3IuYXBwVmVyc2lvbikgPT0gNCAm JiBuYXZpZ2F0b3IuYXBwVmVyc2lvbi5pbmRleE9mKCJNU0lFIDYuMCIpICE9IC0x KTsKCglpZiAoalF1ZXJ5LmJyb3dzZXIubXNpZSAmJiAoaWU1NSB8fCBpZTYpKSB7 CgoJCS8vZml4IGltYWdlcyB3aXRoIHBuZy1zb3VyY2UKCQlqUXVlcnkodGhpcyku ZmluZCgiaW1nW0BzcmMkPS5wbmddIikuZWFjaChmdW5jdGlvbigpIHsKCgkJCWpR dWVyeSh0aGlzKS5hdHRyKCd3aWR0aCcsalF1ZXJ5KHRoaXMpLndpZHRoKCkpOwoJ CQlqUXVlcnkodGhpcykuYXR0cignaGVpZ2h0JyxqUXVlcnkodGhpcykuaGVpZ2h0 KCkpOwoKCQkJdmFyIHByZXZTdHlsZSA9ICcnOwoJCQl2YXIgc3RyTmV3SFRNTCA9 ICcnOwoJCQl2YXIgaW1nSWQgPSAoalF1ZXJ5KHRoaXMpLmF0dHIoJ2lkJykpID8g J2lkPSInICsgalF1ZXJ5KHRoaXMpLmF0dHIoJ2lkJykgKyAnIiAnIDogJyc7CgkJ CXZhciBpbWdDbGFzcyA9IChqUXVlcnkodGhpcykuYXR0cignY2xhc3MnKSkgPyAn Y2xhc3M9IicgKyBqUXVlcnkodGhpcykuYXR0cignY2xhc3MnKSArICciICcgOiAn JzsKCQkJdmFyIGltZ1RpdGxlID0gKGpRdWVyeSh0aGlzKS5hdHRyKCd0aXRsZScp KSA/ICd0aXRsZT0iJyArIGpRdWVyeSh0aGlzKS5hdHRyKCd0aXRsZScpICsgJyIg JyA6ICcnOwoJCQl2YXIgaW1nQWx0ID0gKGpRdWVyeSh0aGlzKS5hdHRyKCdhbHQn KSkgPyAnYWx0PSInICsgalF1ZXJ5KHRoaXMpLmF0dHIoJ2FsdCcpICsgJyIgJyA6 ICcnOwoJCQl2YXIgaW1nQWxpZ24gPSAoalF1ZXJ5KHRoaXMpLmF0dHIoJ2FsaWdu JykpID8gJ2Zsb2F0OicgKyBqUXVlcnkodGhpcykuYXR0cignYWxpZ24nKSArICc7 JyA6ICcnOwoJCQl2YXIgaW1nSGFuZCA9IChqUXVlcnkodGhpcykucGFyZW50KCku YXR0cignaHJlZicpKSA/ICdjdXJzb3I6aGFuZDsnIDogJyc7CgkJCWlmICh0aGlz LnN0eWxlLmJvcmRlcikgewoJCQkJcHJldlN0eWxlICs9ICdib3JkZXI6Jyt0aGlz LnN0eWxlLmJvcmRlcisnOyc7CgkJCQl0aGlzLnN0eWxlLmJvcmRlciA9ICcnOwoJ CQl9CgkJCWlmICh0aGlzLnN0eWxlLnBhZGRpbmcpIHsKCQkJCXByZXZTdHlsZSAr PSAncGFkZGluZzonK3RoaXMuc3R5bGUucGFkZGluZysnOyc7CgkJCQl0aGlzLnN0 eWxlLnBhZGRpbmcgPSAnJzsKCQkJfQoJCQlpZiAodGhpcy5zdHlsZS5tYXJnaW4p IHsKCQkJCXByZXZTdHlsZSArPSAnbWFyZ2luOicrdGhpcy5zdHlsZS5tYXJnaW4r JzsnOwoJCQkJdGhpcy5zdHlsZS5tYXJnaW4gPSAnJzsKCQkJfQoJCQl2YXIgaW1n U3R5bGUgPSAodGhpcy5zdHlsZS5jc3NUZXh0KTsKCgkJCXN0ck5ld0hUTUwgKz0g JzxzcGFuICcraW1nSWQraW1nQ2xhc3MraW1nVGl0bGUraW1nQWx0OwoJCQlzdHJO ZXdIVE1MICs9ICdzdHlsZT0icG9zaXRpb246cmVsYXRpdmU7d2hpdGUtc3BhY2U6 cHJlLWxpbmU7ZGlzcGxheTppbmxpbmUtYmxvY2s7YmFja2dyb3VuZDp0cmFuc3Bh cmVudDsnK2ltZ0FsaWduK2ltZ0hhbmQ7CgkJCXN0ck5ld0hUTUwgKz0gJ3dpZHRo OicgKyBqUXVlcnkodGhpcykud2lkdGgoKSArICdweDsnICsgJ2hlaWdodDonICsg alF1ZXJ5KHRoaXMpLmhlaWdodCgpICsgJ3B4Oyc7CgkJCXN0ck5ld0hUTUwgKz0g J2ZpbHRlcjpwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuQWxwaGFJ bWFnZUxvYWRlcicgKyAnKHNyYz1cJycgKyBqUXVlcnkodGhpcykuYXR0cignc3Jj JykgKyAnXCcsIHNpemluZ01ldGhvZD1cJ3NjYWxlXCcpOyc7CgkJCXN0ck5ld0hU TUwgKz0gaW1nU3R5bGUrJyI+PC9zcGFuPic7CgkJCWlmIChwcmV2U3R5bGUgIT0g JycpewoJCQkJc3RyTmV3SFRNTCA9ICc8c3BhbiBzdHlsZT0icG9zaXRpb246cmVs YXRpdmU7ZGlzcGxheTppbmxpbmUtYmxvY2s7JytwcmV2U3R5bGUraW1nSGFuZCsn d2lkdGg6JyArIGpRdWVyeSh0aGlzKS53aWR0aCgpICsgJ3B4OycgKyAnaGVpZ2h0 OicgKyBqUXVlcnkodGhpcykuaGVpZ2h0KCkgKyAncHg7JysnIj4nICsgc3RyTmV3 SFRNTCArICc8L3NwYW4+JzsKCQkJfQoKCQkJalF1ZXJ5KHRoaXMpLmhpZGUoKTsK CQkJalF1ZXJ5KHRoaXMpLmFmdGVyKHN0ck5ld0hUTUwpOwoKCQl9KTsKCgkJLy8g Zml4IGNzcyBiYWNrZ3JvdW5kIHBuZ3MKCQlqUXVlcnkodGhpcykuZmluZCgiKiIp LmVhY2goZnVuY3Rpb24oKXsKCQkJdmFyIGJnSU1HID0galF1ZXJ5KHRoaXMpLmNz cygnYmFja2dyb3VuZC1pbWFnZScpOwoJCQlpZihiZ0lNRy5pbmRleE9mKCIucG5n IikhPS0xKXsKCQkJCXZhciBpZWJnID0gYmdJTUcuc3BsaXQoJ3VybCgiJylbMV0u c3BsaXQoJyIpJylbMF07CgkJCQlqUXVlcnkodGhpcykuY3NzKCdiYWNrZ3JvdW5k LWltYWdlJywgJ25vbmUnKTsKCQkJCWpRdWVyeSh0aGlzKS5nZXQoMCkucnVudGlt ZVN0eWxlLmZpbHRlciA9ICJwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3Nv ZnQuQWxwaGFJbWFnZUxvYWRlcihzcmM9JyIgKyBpZWJnICsgIicsc2l6aW5nTWV0 aG9kPSdzY2FsZScpIjsKCQkJfQoJCX0pOwoJCQoJCS8vZml4IGlucHV0IHdpdGgg cG5nLXNvdXJjZQoJCWpRdWVyeSh0aGlzKS5maW5kKCJpbnB1dFtAc3JjJD0ucG5n XSIpLmVhY2goZnVuY3Rpb24oKSB7CgkJCXZhciBiZ0lNRyA9IGpRdWVyeSh0aGlz KS5hdHRyKCdzcmMnKTsKCQkJalF1ZXJ5KHRoaXMpLmdldCgwKS5ydW50aW1lU3R5 bGUuZmlsdGVyID0gJ3Byb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5B bHBoYUltYWdlTG9hZGVyJyArICcoc3JjPVwnJyArIGJnSU1HICsgJ1wnLCBzaXpp bmdNZXRob2Q9XCdzY2FsZVwnKTsnOwogICAJCWpRdWVyeSh0aGlzKS5hdHRyKCdz cmMnLCBzZXR0aW5ncy5ibGFua2dpZikKCQl9KTsKCQoJfQoJCglyZXR1cm4galF1 ZXJ5OwoKfTsKCn0pKGpRdWVyeSk7Cg== ------------ovrp3U8y8KC3rcvqsh3ZpB Content-Disposition: inline; filename=pt-conditions-widget.js Content-Type: application/javascript; charset=utf-8; name=pt-conditions-widget.js Content-Location: http://www.psychologytoday.com/sites/all/modules/pt/pt_content/pt-conditions-widget.js?D Content-Transfer-Encoding: Base64 JChkb2N1bWVudCkucmVhZHkoZnVuY3Rpb24oKSB7CiAgLy8gSW5pdGlhbGl6ZSBj b25kaXRpb25zIGJveAogICQoJyNjb25kaXRpb25zLWluZGV4IGE6Zmlyc3QnKS5w YXJlbnQoKS5wYXJlbnQoKS5wYXJlbnQoKS5hZGRDbGFzcygnc2VsZWN0ZWQnKTsK ICAkKCcjY29uZGl0aW9ucy1pbmRleCBhJykuY2xpY2soZnVuY3Rpb24oKSB7CiAg ICB2YXIgdXJsID0gJCh0aGlzKS5hdHRyKCdocmVmJykuc3BsaXQoJy8nKTsKICAg IHZhciB0b0xvYWQgPSB1cmxbdXJsLmxlbmd0aC0xXTsKICAgICQoJyNjb25kaXRp b25zLWluZGV4IC5zZWxlY3RlZCcpLnJlbW92ZUNsYXNzKCdzZWxlY3RlZCcpOwog ICAgJCh0aGlzKS5wYXJlbnQoKS5wYXJlbnQoKS5wYXJlbnQoKS5hZGRDbGFzcygn c2VsZWN0ZWQnKTsKICAgICQoJyNjb25kaXRpb25zLWxpc3QnKS5mYWRlT3V0KCJm YXN0IiwgZnVuY3Rpb24oKSB7CiAgICAgICQoJyNjb25kaXRpb25zLWxpc3QnKS5s b2FkKCcvY29uZGl0aW9ucy93aWRnZXQvZGlzb3JkZXIvJyt0b0xvYWQse3ZpZXc6 ICJkaXNvcmRlciIsIHNlbDogdG9Mb2FkIH0sZnVuY3Rpb24oKSB7CiAgICAgICAg JCgnI2NvbmRpdGlvbnMtbGlzdCcpLmZhZGVJbigiZmFzdCIpOwogICAgICB9KTsK ICAgIH0pOwoJCSAgcmV0dXJuIGZhbHNlOwoJCX0pOwp9KTs= ------------ovrp3U8y8KC3rcvqsh3ZpB Content-Disposition: inline; filename=extlink.js Content-Type: application/javascript; charset=utf-8; name=extlink.js Content-Location: http://www.psychologytoday.com/sites/all/modules/contrib/extlink/extlink.js?D Content-Transfer-Encoding: Base64 Ly8gJElkOiBleHRsaW5rLmpzLHYgMS40LjIuOSAyMDA5LzEyLzIwIDAwOjIwOjI1 IHF1aWNrc2tldGNoIEV4cCAkCihmdW5jdGlvbiAoJCkgewoKZnVuY3Rpb24gZXh0 bGlua0F0dGFjaChjb250ZXh0KSB7CiAgLy8gU3RyaXAgdGhlIGhvc3QgbmFtZSBk b3duLCByZW1vdmluZyBzdWJkb21haW5zIG9yIHd3dy4KICB2YXIgaG9zdCA9IHdp bmRvdy5sb2NhdGlvbi5ob3N0LnJlcGxhY2UoL14oKFteXC9dKz9cLikqKShbXlwu XXs0LH0pKChcLlthLXpdezEsNH0pKikkLywgJyQzJDQnKTsKICB2YXIgc3ViZG9t YWluID0gd2luZG93LmxvY2F0aW9uLmhvc3QucmVwbGFjZSgvXigoW15cL10rP1wu KSopKFteXC5dezQsfSkoKFwuW2Etel17MSw0fSkqKSQvLCAnJDEnKTsKCiAgLy8g RGV0ZXJtaW5lIHdoYXQgc3ViZG9tYWlucyBhcmUgY29uc2lkZXJlZCBpbnRlcm5h bC4KICBpZiAoRHJ1cGFsLnNldHRpbmdzLmV4dGxpbmsuZXh0U3ViZG9tYWlucykg ewogICAgdmFyIHN1YmRvbWFpbnMgPSAiKFteL10qXFwuKT8iOwogIH0KICBlbHNl IGlmIChzdWJkb21haW4gPT0gJ3d3dy4nIHx8IHN1YmRvbWFpbiA9PSAnJykgewog ICAgdmFyIHN1YmRvbWFpbnMgPSAiKHd3d1xcLik/IjsKICB9CiAgZWxzZSB7CiAg ICB2YXIgc3ViZG9tYWlucyA9IHN1YmRvbWFpbi5yZXBsYWNlKCIuIiwgIlxcLiIp OwogIH0KCiAgLy8gQnVpbGQgcmVndWxhciBleHByZXNzaW9ucyB0aGF0IGRlZmlu ZSBhbiBpbnRlcm5hbCBsaW5rLgogIHZhciBpbnRlcm5hbF9saW5rID0gbmV3IFJl Z0V4cCgiXmh0dHBzPzovLyIgKyBzdWJkb21haW5zICsgaG9zdCwgImkiKTsKCiAg Ly8gRXh0cmEgaW50ZXJuYWwgbGluayBtYXRjaGluZy4KICB2YXIgZXh0SW5jbHVk ZSA9IGZhbHNlOwogIGlmIChEcnVwYWwuc2V0dGluZ3MuZXh0bGluay5leHRJbmNs dWRlKSB7CiAgICBleHRJbmNsdWRlID0gbmV3IFJlZ0V4cChEcnVwYWwuc2V0dGlu Z3MuZXh0bGluay5leHRJbmNsdWRlLnJlcGxhY2UoL1xcLywgJ1xcJykpOwogIH0K CiAgLy8gRXh0cmEgZXh0ZXJuYWwgbGluayBtYXRjaGluZy4KICB2YXIgZXh0RXhj bHVkZSA9IGZhbHNlOwogIGlmIChEcnVwYWwuc2V0dGluZ3MuZXh0bGluay5leHRF eGNsdWRlKSB7CiAgICBleHRFeGNsdWRlID0gbmV3IFJlZ0V4cChEcnVwYWwuc2V0 dGluZ3MuZXh0bGluay5leHRFeGNsdWRlLnJlcGxhY2UoL1xcLywgJ1xcJykpOwog IH0KCiAgLy8gRmluZCBhbGwgbGlua3Mgd2hpY2ggYXJlIE5PVCBpbnRlcm5hbCBh bmQgYmVnaW4gd2l0aCBodHRwIChhcyBvcHBvc2VkCiAgLy8gdG8gZnRwOi8vLCBq YXZhc2NyaXB0OiwgZXRjLiBvdGhlciBraW5kcyBvZiBsaW5rcy4KICAvLyBXaGVu IG9wZXJhdGluZyBvbiB0aGUgJ3RoaXMnIHZhcmlhYmxlLCB0aGUgaG9zdCBoYXMg YmVlbiBhcHBlbmRlZCB0bwogIC8vIGFsbCBsaW5rcyBieSB0aGUgYnJvd3Nlciwg ZXZlbiBsb2NhbCBvbmVzLgogIC8vIEluIGpRdWVyeSAxLjEgYW5kIGhpZ2hlciwg d2UnZCB1c2UgYSBmaWx0ZXIgbWV0aG9kIGhlcmUsIGJ1dCBpdCBpcyBub3QKICAv LyBhdmFpbGFibGUgaW4galF1ZXJ5IDEuMCAoRHJ1cGFsIDUgZGVmYXVsdCkuCiAg dmFyIGV4dGVybmFsX2xpbmtzID0gbmV3IEFycmF5KCk7CiAgdmFyIG1haWx0b19s aW5rcyA9IG5ldyBBcnJheSgpOwogICQoImE6bm90KC4iICsgRHJ1cGFsLnNldHRp bmdzLmV4dGxpbmsuZXh0Q2xhc3MgKyAiLCAuIiArIERydXBhbC5zZXR0aW5ncy5l eHRsaW5rLm1haWx0b0NsYXNzICsgIikiLCBjb250ZXh0KS5lYWNoKGZ1bmN0aW9u KGVsKSB7CiAgICB0cnkgewogICAgICB2YXIgdXJsID0gdGhpcy5ocmVmLnRvTG93 ZXJDYXNlKCk7CiAgICAgIGlmICh1cmwuaW5kZXhPZignaHR0cCcpID09IDAgJiYg KCF1cmwubWF0Y2goaW50ZXJuYWxfbGluaykgfHwgKGV4dEluY2x1ZGUgJiYgdXJs Lm1hdGNoKGV4dEluY2x1ZGUpKSkgJiYgIShleHRFeGNsdWRlICYmIHVybC5tYXRj aChleHRFeGNsdWRlKSkpIHsKICAgICAgICBleHRlcm5hbF9saW5rcy5wdXNoKHRo aXMpOwogICAgICB9CiAgICAgIGVsc2UgaWYgKHVybC5pbmRleE9mKCdtYWlsdG86 JykgPT0gMCkgewogICAgICAgIG1haWx0b19saW5rcy5wdXNoKHRoaXMpOwogICAg ICB9CiAgICB9CiAgICAvLyBJRTcgdGhyb3dzIGVycm9ycyBvZnRlbiB3aGVuIGRl YWxpbmcgd2l0aCBpcnJlZ3VsYXIgbGlua3MsIHN1Y2ggYXM6CiAgICAvLyA8YSBo cmVmPSJub2RlLzEwIj48L2E+IEVtcHR5IHRhZ3MuCiAgICAvLyA8YSBocmVmPSJo dHRwOi8vdXNlcjpwYXNzQGV4YW1wbGUuY29tIj5leGFtcGxlPC9hPiBVc2VyOnBh c3Mgc3ludGF4LgogICAgY2F0Y2goZXJyb3IpIHsKICAgICAgcmV0dXJuIGZhbHNl OwogICAgfQogIH0pOwoKICBpZiAoRHJ1cGFsLnNldHRpbmdzLmV4dGxpbmsuZXh0 Q2xhc3MpIHsKICAgIC8vIEFwcGx5IHRoZSAiZXh0IiBjbGFzcyB0byBhbGwgbGlu a3Mgbm90IGNvbnRhaW5pbmcgaW1hZ2VzLgogICAgaWYgKHBhcnNlRmxvYXQoJCgp LmpxdWVyeSkgPCAxLjIpIHsKICAgICAgJChleHRlcm5hbF9saW5rcykubm90KCdb aW1nXScpLmFkZENsYXNzKERydXBhbC5zZXR0aW5ncy5leHRsaW5rLmV4dENsYXNz KS5lYWNoKGZ1bmN0aW9uKCkgeyBpZiAoJCh0aGlzKS5jc3MoJ2Rpc3BsYXknKSA9 PSAnaW5saW5lJykgJCh0aGlzKS5hZnRlcignPHNwYW4gY2xhc3M9JyArIERydXBh bC5zZXR0aW5ncy5leHRsaW5rLmV4dENsYXNzICsgJz48L3NwYW4+Jyk7IH0pOwog ICAgfQogICAgZWxzZSB7CiAgICAgICQoZXh0ZXJuYWxfbGlua3MpLm5vdCgkKGV4 dGVybmFsX2xpbmtzKS5maW5kKCdpbWcnKS5wYXJlbnRzKCdhJykpLmFkZENsYXNz KERydXBhbC5zZXR0aW5ncy5leHRsaW5rLmV4dENsYXNzKS5lYWNoKGZ1bmN0aW9u KCkgeyBpZiAoJCh0aGlzKS5jc3MoJ2Rpc3BsYXknKSA9PSAnaW5saW5lJykgJCh0 aGlzKS5hZnRlcignPHNwYW4gY2xhc3M9JyArIERydXBhbC5zZXR0aW5ncy5leHRs aW5rLmV4dENsYXNzICsgJz48L3NwYW4+Jyk7IH0pOwogICAgfQogIH0KCiAgaWYg KERydXBhbC5zZXR0aW5ncy5leHRsaW5rLm1haWx0b0NsYXNzKSB7CiAgICAvLyBB cHBseSB0aGUgIm1haWx0byIgY2xhc3MgdG8gYWxsIG1haWx0byBsaW5rcyBub3Qg Y29udGFpbmluZyBpbWFnZXMuCiAgICBpZiAocGFyc2VGbG9hdCgkKCkuanF1ZXJ5 KSA8IDEuMikgewogICAgICAkKG1haWx0b19saW5rcykubm90KCdbaW1nXScpLmFk ZENsYXNzKERydXBhbC5zZXR0aW5ncy5leHRsaW5rLm1haWx0b0NsYXNzKS5lYWNo KGZ1bmN0aW9uKCkgeyBpZiAoJCh0aGlzKS5jc3MoJ2Rpc3BsYXknKSA9PSAnaW5s aW5lJykgJCh0aGlzKS5hZnRlcignPHNwYW4gY2xhc3M9JyArIERydXBhbC5zZXR0 aW5ncy5leHRsaW5rLm1haWx0b0NsYXNzICsgJz48L3NwYW4+Jyk7IH0pOwogICAg fQogICAgZWxzZSB7CiAgICAgICQobWFpbHRvX2xpbmtzKS5ub3QoJChtYWlsdG9f bGlua3MpLmZpbmQoJ2ltZycpLnBhcmVudHMoJ2EnKSkuYWRkQ2xhc3MoRHJ1cGFs LnNldHRpbmdzLmV4dGxpbmsubWFpbHRvQ2xhc3MpLmVhY2goZnVuY3Rpb24oKSB7 IGlmICgkKHRoaXMpLmNzcygnZGlzcGxheScpID09ICdpbmxpbmUnKSAkKHRoaXMp LmFmdGVyKCc8c3BhbiBjbGFzcz0nICsgRHJ1cGFsLnNldHRpbmdzLmV4dGxpbmsu bWFpbHRvQ2xhc3MgKyAnPjwvc3Bhbj4nKTsgfSk7CiAgICB9CiAgfQoKICBpZiAo RHJ1cGFsLnNldHRpbmdzLmV4dGxpbmsuZXh0VGFyZ2V0KSB7CiAgICAvLyBBcHBs eSB0aGUgdGFyZ2V0IGF0dHJpYnV0ZSB0byBhbGwgbGlua3MuCiAgICAkKGV4dGVy bmFsX2xpbmtzKS5hdHRyKCd0YXJnZXQnLCBEcnVwYWwuc2V0dGluZ3MuZXh0bGlu ay5leHRUYXJnZXQpOwogIH0KCiAgaWYgKERydXBhbC5zZXR0aW5ncy5leHRsaW5r LmV4dEFsZXJ0KSB7CiAgICAvLyBBZGQgcG9wLXVwIGNsaWNrLXRocm91Z2ggZGlh bG9nLgogICAgJChleHRlcm5hbF9saW5rcykuY2xpY2soZnVuY3Rpb24oZSkgewog ICAgIHJldHVybiBjb25maXJtKERydXBhbC5zZXR0aW5ncy5leHRsaW5rLmV4dEFs ZXJ0VGV4dCk7CiAgICB9KTsKICB9Cgp9CgpEcnVwYWwuYmVoYXZpb3JzLmV4dGxp bmsgPSBmdW5jdGlvbihjb250ZXh0KSB7CiAgZXh0bGlua0F0dGFjaChjb250ZXh0 KTsKfQoKfSkoalF1ZXJ5KTsK ------------ovrp3U8y8KC3rcvqsh3ZpB Content-Disposition: inline; filename=pt_www.js Content-Type: application/javascript; charset=utf-8; name=pt_www.js Content-Location: http://www.psychologytoday.com/sites/all/themes/pt_www/pt_www.js?D Content-Transfer-Encoding: Base64 alF1ZXJ5LnByZWxvYWRJbWFnZXMgPSBmdW5jdGlvbigpCnsKICBmb3IodmFyIGkg PSAwOyBpPGFyZ3VtZW50cy5sZW5ndGg7IGkrKykKICB7CiAgICBqUXVlcnkoIjxp bWc+IikuYXR0cigic3JjIiwgYXJndW1lbnRzW2ldKTsKICB9Cn0= ------------ovrp3U8y8KC3rcvqsh3ZpB Content-Disposition: inline; filename=pt_favicon.ico Content-Type: image/x-icon; name=pt_favicon.ico Content-Location: http://www.psychologytoday.com/files/pt_favicon.ico Content-Transfer-Encoding: Base64 R0lGODdhEAAQAPIAANfl/+Hr/2ea/4K1/3+y/4G0/////2aZ/yH5BAAAAAAALAAA AAAQABAAAANOOLXcPeTISWmJMpgABPiABE3GZhBAGYjYYXznAQQCSwJDPNfHmMGR nU2y0dSEvZZqcKQNXaEJ0gelTJVRyfVmdSalA2vnWSkXFI70YpAAADs= ------------ovrp3U8y8KC3rcvqsh3ZpB Content-Disposition: inline; filename=book.css Content-Type: text/css; charset=utf-8; name=book.css Content-Location: http://www.psychologytoday.com/modules/book/book.css?D Content-Transfer-Encoding: 8bit /* $Id: book.css,v 1.6 2007/11/26 16:19:37 dries Exp $ */ .book-navigation .menu { border-top: 1px solid #888; padding: 1em 0 0 3em; } .book-navigation .page-links { border-top: 1px solid #888; border-bottom: 1px solid #888; text-align: center; padding: 0.5em; } .book-navigation .page-previous { text-align: left; width: 42%; display: block; float: left; /* LTR */ } .book-navigation .page-up { margin: 0 5%; width: 4%; display: block; float: left; /* LTR */ } .book-navigation .page-next { text-align: right; width: 42%; display: block; float: right; } #book-outline { min-width: 56em; } .book-outline-form .form-item { margin-top: 0; margin-bottom: 0; } #edit-book-bid-wrapper .description { clear: both; } #book-admin-edit select { margin-right: 24px; } #book-admin-edit select.progress-disabled { margin-right: 0; } #book-admin-edit tr.ahah-new-content { background-color: #ffd; } #book-admin-edit .form-item { float: left; } ------------ovrp3U8y8KC3rcvqsh3ZpB Content-Disposition: inline; filename=node.css Content-Type: text/css; charset=utf-8; name=node.css Content-Location: http://www.psychologytoday.com/modules/node/node.css?D Content-Transfer-Encoding: 8bit /* $Id: node.css,v 1.5 2008/01/25 21:21:44 goba Exp $ */ .node-unpublished { background-color: #fff4f4; } .preview .node { background-color: #ffffea; } #node-admin-filter ul { list-style-type: none; padding: 0; margin: 0; width: 100%; } #node-admin-buttons { float: left; /* LTR */ margin-left: 0.5em; /* LTR */ clear: right; /* LTR */ } td.revision-current { background: #ffc; } .node-form .form-text { display: block; width: 95%; } .node-form .container-inline .form-text { display: inline; width: auto; } .node-form .standard { clear: both; } .node-form textarea { display: block; width: 95%; } .node-form .attachments fieldset { float: none; display: block; } .terms-inline { display: inline; } ------------ovrp3U8y8KC3rcvqsh3ZpB Content-Disposition: inline; filename=poll.css Content-Type: text/css; charset=utf-8; name=poll.css Content-Location: http://www.psychologytoday.com/modules/poll/poll.css?D Content-Transfer-Encoding: 8bit /* $Id: poll.css,v 1.6 2008/01/22 07:47:57 goba Exp $ */ .poll .bar { height: 1em; margin: 1px 0; background-color: #ddd; } .poll .bar .foreground { background-color: #000; height: 1em; float: left; /* LTR */ } .poll .links { text-align: center; } .poll .percent { text-align: right; /* LTR */ } .poll .total { text-align: center; } .poll .vote-form { text-align: center; } .poll .vote-form .choices { text-align: left; /* LTR */ margin: 0 auto; display: table; } .poll .vote-form .choices .title { font-weight: bold; } .node-form #edit-poll-more { margin: 0; } td.poll-chtext { width: 80%; } td.poll-chvotes .form-text { width: 85%; } ------------ovrp3U8y8KC3rcvqsh3ZpB Content-Disposition: inline; filename=defaults.css Content-Type: text/css; charset=utf-8; name=defaults.css Content-Location: http://www.psychologytoday.com/modules/system/defaults.css?D Content-Transfer-Encoding: 8bit /* $Id: defaults.css,v 1.5 2007/10/02 12:10:40 dries Exp $ */ /* ** HTML elements */ fieldset { margin-bottom: 1em; padding: .5em; } form { margin: 0; padding: 0; } hr { height: 1px; border: 1px solid gray; } img { border: 0; } table { border-collapse: collapse; } th { text-align: left; /* LTR */ padding-right: 1em; /* LTR */ border-bottom: 3px solid #ccc; } /* ** Markup free clearing ** Details: http://www.positioniseverything.net/easyclearing.html */ .clear-block:after { content: "."; display: block; height: 0; clear: both; visibility: hidden; } .clear-block { display: inline-block; } /* Hides from IE-mac \*/ * html .clear-block { height: 1%; } .clear-block { display: block; } /* End hide from IE-mac */ ------------ovrp3U8y8KC3rcvqsh3ZpB Content-Disposition: inline; filename=system.css Content-Type: text/css; charset=utf-8; name=system.css Content-Location: http://www.psychologytoday.com/modules/system/system.css?D Content-Transfer-Encoding: 8bit /* $Id: system.css,v 1.48 2008/01/09 09:56:39 goba Exp $ */ /* ** HTML elements */ body.drag { cursor: move; } th.active img { display: inline; } tr.even, tr.odd { background-color: #eee; border-bottom: 1px solid #ccc; padding: 0.1em 0.6em; } tr.drag { background-color: #fffff0; } tr.drag-previous { background-color: #ffd; } td.active { background-color: #ddd; } td.checkbox, th.checkbox { text-align: center; } tbody { border-top: 1px solid #ccc; } tbody th { border-bottom: 1px solid #ccc; } thead th { text-align: left; /* LTR */ padding-right: 1em; /* LTR */ border-bottom: 3px solid #ccc; } /* ** Other common styles */ .breadcrumb { padding-bottom: .5em } div.indentation { width: 20px; height: 1.7em; margin: -0.4em 0.2em -0.4em -0.4em; /* LTR */ padding: 0.42em 0 0.42em 0.6em; /* LTR */ float: left; /* LTR */ } div.tree-child { background: url(../../misc/tree.png) no-repeat 11px center; /* LTR */ } div.tree-child-last { background: url(../../misc/tree-bottom.png) no-repeat 11px center; /* LTR */ } div.tree-child-horizontal { background: url(../../misc/tree.png) no-repeat -11px center; } .error { color: #e55; } div.error { border: 1px solid #d77; } div.error, tr.error { background: #fcc; color: #200; padding: 2px; } .warning { color: #e09010; } div.warning { border: 1px solid #f0c020; } div.warning, tr.warning { background: #ffd; color: #220; padding: 2px; } .ok { color: #008000; } div.ok { border: 1px solid #00aa00; } div.ok, tr.ok { background: #dfd; color: #020; padding: 2px; } .item-list .icon { color: #555; float: right; /* LTR */ padding-left: 0.25em; /* LTR */ clear: right; /* LTR */ } .item-list .title { font-weight: bold; } .item-list ul { margin: 0 0 0.75em 0; padding: 0; } .item-list ul li { margin: 0 0 0.25em 1.5em; /* LTR */ padding: 0; list-style: disc; } ol.task-list li.active { font-weight: bold; } .form-item { margin-top: 1em; margin-bottom: 1em; } tr.odd .form-item, tr.even .form-item { margin-top: 0; margin-bottom: 0; white-space: nowrap; } tr.merge-down, tr.merge-down td, tr.merge-down th { border-bottom-width: 0 !important; } tr.merge-up, tr.merge-up td, tr.merge-up th { border-top-width: 0 !important; } .form-item input.error, .form-item textarea.error, .form-item select.error { border: 2px solid red; } .form-item .description { font-size: 0.85em; } .form-item label { display: block; font-weight: bold; } .form-item label.option { display: inline; font-weight: normal; } .form-checkboxes, .form-radios { margin: 1em 0; } .form-checkboxes .form-item, .form-radios .form-item { margin-top: 0.4em; margin-bottom: 0.4em; } .marker, .form-required { color: #f00; } .more-link { text-align: right; /* LTR */ } .more-help-link { font-size: 0.85em; text-align: right; /* LTR */ } .nowrap { white-space: nowrap; } .item-list .pager { clear: both; text-align: center; } .item-list .pager li { background-image:none; display:inline; list-style-type:none; padding: 0.5em; } .pager-current { font-weight:bold; } .tips { margin-top: 0; margin-bottom: 0; padding-top: 0; padding-bottom: 0; font-size: 0.9em; } dl.multiselect dd.b, dl.multiselect dd.b .form-item, dl.multiselect dd.b select { font-family: inherit; font-size: inherit; width: 14em; } dl.multiselect dd.a, dl.multiselect dd.a .form-item { width: 8em; } dl.multiselect dt, dl.multiselect dd { float: left; /* LTR */ line-height: 1.75em; padding: 0; margin: 0 1em 0 0; /* LTR */ } dl.multiselect .form-item { height: 1.75em; margin: 0; } /* ** Inline items (need to override above) */ .container-inline div, .container-inline label { display: inline; } /* ** Tab navigation */ ul.primary { border-collapse: collapse; padding: 0 0 0 1em; /* LTR */ white-space: nowrap; list-style: none; margin: 5px; height: auto; line-height: normal; border-bottom: 1px solid #bbb; } ul.primary li { display: inline; } ul.primary li a { background-color: #ddd; border-color: #bbb; border-width: 1px; border-style: solid solid none solid; height: auto; margin-right: 0.5em; /* LTR */ padding: 0 1em; text-decoration: none; } ul.primary li.active a { background-color: #fff; border: 1px solid #bbb; border-bottom: #fff 1px solid; } ul.primary li a:hover { background-color: #eee; border-color: #ccc; border-bottom-color: #eee; } ul.secondary { border-bottom: 1px solid #bbb; padding: 0.5em 1em; margin: 5px; } ul.secondary li { display: inline; padding: 0 1em; border-right: 1px solid #ccc; /* LTR */ } ul.secondary a { padding: 0; text-decoration: none; } ul.secondary a.active { border-bottom: 4px solid #999; } /* ** Autocomplete styles */ /* Suggestion list */ #autocomplete { position: absolute; border: 1px solid; overflow: hidden; z-index: 100; } #autocomplete ul { margin: 0; padding: 0; list-style: none; } #autocomplete li { background: #fff; color: #000; white-space: pre; cursor: default; } #autocomplete li.selected { background: #0072b9; color: #fff; } /* Animated throbber */ html.js input.form-autocomplete { background-image: url(../../misc/throbber.gif); background-repeat: no-repeat; background-position: 100% 2px; /* LTR */ } html.js input.throbbing { background-position: 100% -18px; /* LTR */ } /* ** Collapsing fieldsets */ html.js fieldset.collapsed { border-bottom-width: 0; border-left-width: 0; border-right-width: 0; margin-bottom: 0; height: 1em; } html.js fieldset.collapsed * { display: none; } html.js fieldset.collapsed legend { display: block; } html.js fieldset.collapsible legend a { padding-left: 15px; /* LTR */ background: url(../../misc/menu-expanded.png) 5px 75% no-repeat; /* LTR */ } html.js fieldset.collapsed legend a { background-image: url(../../misc/menu-collapsed.png); /* LTR */ background-position: 5px 50%; /* LTR */ } /* Note: IE-only fix due to '* html' (breaks Konqueror otherwise). */ * html.js fieldset.collapsed legend, * html.js fieldset.collapsed legend *, * html.js fieldset.collapsed table * { display: inline; } /* For Safari 2 to prevent collapsible fieldsets containing tables from dissapearing due to tableheader.js. */ html.js fieldset.collapsible { position: relative; } html.js fieldset.collapsible legend a { display: block; } /* Avoid jumping around due to margins collapsing into collapsible fieldset border */ html.js fieldset.collapsible .fieldset-wrapper { overflow: auto; } /* ** Resizable text areas */ .resizable-textarea { width: 95%; } .resizable-textarea .grippie { height: 9px; overflow: hidden; background: #eee url(../../misc/grippie.png) no-repeat center 2px; border: 1px solid #ddd; border-top-width: 0; cursor: s-resize; } html.js .resizable-textarea textarea { margin-bottom: 0; width: 100%; display: block; } /* ** Table drag and drop. */ .draggable a.tabledrag-handle { cursor: move; float: left; /* LTR */ height: 1.7em; margin: -0.4em 0 -0.4em -0.5em; /* LTR */ padding: 0.42em 1.5em 0.42em 0.5em; /* LTR */ text-decoration: none; } a.tabledrag-handle:hover { text-decoration: none; } a.tabledrag-handle .handle { margin-top: 4px; height: 13px; width: 13px; background: url(../../misc/draggable.png) no-repeat 0 0; } a.tabledrag-handle-hover .handle { background-position: 0 -20px; } /* ** Teaser splitter */ .joined + .grippie { height: 5px; background-position: center 1px; margin-bottom: -2px; } /* Keeps inner content contained in Opera 9. */ .teaser-checkbox { padding-top: 1px; } div.teaser-button-wrapper { float: right; /* LTR */ padding-right: 5%; /* LTR */ margin: 0; } .teaser-checkbox div.form-item { float: right; /* LTR */ margin: 0 5% 0 0; /* LTR */ padding: 0; } textarea.teaser { display: none; } html.js .no-js { display: none; } /* ** Progressbar styles */ .progress { font-weight: bold; } .progress .bar { background: #fff url(../../misc/progress.gif); border: 1px solid #00375a; height: 1.5em; margin: 0 0.2em; } .progress .filled { background: #0072b9; height: 1em; border-bottom: 0.5em solid #004a73; width: 0%; } .progress .percentage { float: right; /* LTR */ } .progress-disabled { float: left; /* LTR */ } .ahah-progress { float: left; /* LTR */ } .ahah-progress .throbber { width: 15px; height: 15px; margin: 2px; background: transparent url(../../misc/throbber.gif) no-repeat 0px -18px; float: left; /* LTR */ } tr .ahah-progress .throbber { margin: 0 2px; } .ahah-progress-bar { width: 16em; } /* ** Formatting for welcome page */ #first-time strong { display: block; padding: 1.5em 0 .5em; } /* ** To be used with tableselect.js */ tr.selected td { background: #ffc; } /* ** Floating header for tableheader.js */ table.sticky-header { margin-top: 0; background: #fff; } /* ** Installation clean URLs */ #clean-url.install { display: none; } /* ** For anything you want to hide on page load when JS is enabled, so ** that you can use the JS to control visibility and avoid flicker. */ html.js .js-hide { display: none; } /* ** Styles for the system modules page (admin/build/modules) */ #system-modules div.incompatible { font-weight: bold; } /* ** Styles for the system themes page (admin/build/themes) */ #system-themes-form div.incompatible { font-weight: bold; } /* ** Password strength indicator */ span.password-strength { visibility: hidden; } input.password-field { margin-right: 10px; /* LTR */ } div.password-description { padding: 0 2px; margin: 4px 0 0 0; font-size: 0.85em; max-width: 500px; } div.password-description ul { margin-bottom: 0; } .password-parent { margin: 0 0 0 0; } /* ** Password confirmation checker */ input.password-confirm { margin-right: 10px; /* LTR */ } .confirm-parent { margin: 5px 0 0 0; } span.password-confirm { visibility: hidden; } span.password-confirm span { font-weight: normal; } ------------ovrp3U8y8KC3rcvqsh3ZpB Content-Disposition: inline; filename=system-menus.css Content-Type: text/css; charset=utf-8; name=system-menus.css Content-Location: http://www.psychologytoday.com/modules/system/system-menus.css?D Content-Transfer-Encoding: 8bit /* $Id: system-menus.css,v 1.1 2007/10/05 14:50:25 goba Exp $ */ ul.menu { list-style: none; border: none; text-align:left; /* LTR */ } ul.menu li { margin: 0 0 0 0.5em; /* LTR */ } li.expanded { list-style-type: circle; list-style-image: url(../../misc/menu-expanded.png); padding: 0.2em 0.5em 0 0; /* LTR */ margin: 0; } li.collapsed { list-style-type: disc; list-style-image: url(../../misc/menu-collapsed.png); /* LTR */ padding: 0.2em 0.5em 0 0; /* LTR */ margin: 0; } li.leaf { list-style-type: square; list-style-image: url(../../misc/menu-leaf.png); padding: 0.2em 0.5em 0 0; /* LTR */ margin: 0; } li a.active { color: #000; } td.menu-disabled { background: #ccc; } ul.links { margin: 0; padding: 0; } ul.links.inline { display: inline; } ul.links li { display: inline; list-style-type: none; padding: 0 0.5em; } .block ul { margin: 0; padding: 0 0 0.25em 1em; /* LTR */ } ------------ovrp3U8y8KC3rcvqsh3ZpB Content-Disposition: inline; filename=user.css Content-Type: text/css; charset=utf-8; name=user.css Content-Location: http://www.psychologytoday.com/modules/user/user.css?D Content-Transfer-Encoding: 8bit /* $Id: user.css,v 1.7 2007/06/21 04:38:41 unconed Exp $ */ #permissions td.module { font-weight: bold; } #permissions td.permission { padding-left: 1.5em; /* LTR */ } #access-rules .access-type, #access-rules .rule-type { margin-right: 1em; /* LTR */ float: left; /* LTR */ } #access-rules .access-type .form-item, #access-rules .rule-type .form-item { margin-top: 0; } #access-rules .mask { clear: both; } #user-login-form { text-align: center; } #user-admin-filter ul { list-style-type: none; padding: 0; margin: 0; width: 100%; } #user-admin-buttons { float: left; /* LTR */ margin-left: 0.5em; /* LTR */ clear: right; /* LTR */ } #user-admin-settings fieldset .description { font-size: 0.85em; padding-bottom: .5em; } /* Generated by user.module but used by profile.module: */ .profile { clear: both; margin: 1em 0; } .profile .picture { float: right; /* LTR */ margin: 0 1em 1em 0; /* LTR */ } .profile h3 { border-bottom: 1px solid #ccc; } .profile dl { margin: 0 0 1.5em 0; } .profile dt { margin: 0 0 0.2em 0; font-weight: bold; } .profile dd { margin: 0 0 1em 0; } ------------ovrp3U8y8KC3rcvqsh3ZpB Content-Disposition: inline; filename=amazon.css Content-Type: text/css; charset=utf-8; name=amazon.css Content-Location: http://www.psychologytoday.com/sites/all/modules/contrib/amazon/amazon.css?D Content-Transfer-Encoding: 8bit div.field-type-asin { display: block; clear: both; border-top: 2px solid #DDD; padding-top: 3px; } div.amazon-item { clear: both; } div.amazon-item img { float: left; padding-left: 3px; margin-bottom: 1em; margin-right: 1em; } div.amazon-item div { padding-left: 1em; margin-left: 100px; height: 4em; } ------------ovrp3U8y8KC3rcvqsh3ZpB Content-Disposition: inline; filename=content-module.css Content-Type: text/css; charset=utf-8; name=content-module.css Content-Location: http://www.psychologytoday.com/sites/all/modules/contrib/cck/theme/content-module.css?D Content-Transfer-Encoding: 8bit /* $Id: content-module.css,v 1.1.2.6 2009/03/14 18:45:38 yched Exp $ */ /* Node display */ .field .field-label, .field .field-label-inline, .field .field-label-inline-first { font-weight:bold; } .field .field-label-inline, .field .field-label-inline-first { display:inline; } .field .field-label-inline { visibility:hidden; } /* Node form display */ .node-form .content-multiple-table td.content-multiple-drag { width:30px; padding-right:0;/*LTR*/ } .node-form .content-multiple-table td.content-multiple-drag a.tabledrag-handle{ padding-right:.5em;/*LTR*/ } .node-form .content-add-more .form-submit{ margin:0; } .node-form .number { display:inline; width:auto; } .node-form .text { width:auto; } /* CSS overrides for Views-based autocomplete results. - #autocomplete uses "white-space:pre", which is no good with Views' template-based rendering - Field titles are rendered with <label> in default templates, but we don't want the 'form' styling it gets under .form-item */ .form-item #autocomplete .reference-autocomplete { white-space:normal; } .form-item #autocomplete .reference-autocomplete label { display:inline; font-weight:normal; } /* 'Manage fields' overview */ #content-field-overview-form .advanced-help-link, #content-display-overview-form .advanced-help-link { margin: 4px 4px 0 0;/*LTR*/ } #content-field-overview-form .label-group, #content-display-overview-form .label-group, #content-copy-export-form .label-group { font-weight: bold; } table#content-field-overview .label-add-new-field, table#content-field-overview .label-add-existing-field, table#content-field-overview .label-add-new-group { float: left;/*LTR*/ } table#content-field-overview tr.content-add-new .tabledrag-changed { display: none; } table#content-field-overview tr.content-add-new .description { margin-bottom: 0; } table#content-field-overview .content-new { font-weight: bold; padding-bottom: .5em; } /* 'Advanced help' pages */ .advanced-help-topic h3, .advanced-help-topic h4, .advanced-help-topic h5, .advanced-help-topic h6 { margin:1em 0 .5em 0; } .advanced-help-topic dd { margin-bottom: .5em; } .advanced-help-topic span.code { background-color:#EDF1F3; font-family:"Bitstream Vera Sans Mono",Monaco,"Lucida Console",monospace; font-size:0.9em; padding:1px; } .advanced-help-topic .content-border { border:1px solid #AAA } ------------ovrp3U8y8KC3rcvqsh3ZpB Content-Disposition: inline; filename=date.css Content-Type: text/css; charset=utf-8; name=date.css Content-Location: http://www.psychologytoday.com/sites/all/modules/contrib/date/date.css?D Content-Transfer-Encoding: 8bit /* Force from/to dates to float using inline-block, where it works, otherwise inline. */ .container-inline-date { width:auto; clear:both; display: inline-block; vertical-align:top; margin-right: 0.5em; /* LTR */ } .container-inline-date .form-item { float:none; padding:0; margin:0; } .container-inline-date .form-item .form-item { float: left; /* LTR */ } .container-inline-date .form-item, .container-inline-date .form-item input { width:auto; } .container-inline-date .description { clear: both; } .container-inline-date .form-item input, .container-inline-date .form-item select, .container-inline-date .form-item option { margin-right: 5px; /* LTR */ } .container-inline-date .date-spacer { margin-left: -5px; /* LTR */ } .views-right-60 .container-inline-date div { padding:0; margin:0; } .container-inline-date .date-timezone .form-item { float:none; width:auto; clear:both; } /* Fixes for date popup css so it will behave in Drupal */ #calendar_div, #calendar_div td, #calendar_div th { margin:0; padding:0; } #calendar_div, .calendar_control, .calendar_links, .calendar_header, .calendar { width: 185px; border-collapse: separate; margin: 0; } .calendar td { padding: 0; } /* formatting for from/to dates in nodes and views */ span.date-display-single { } span.date-display-start { } span.date-display-end { } span.date-display-separator { } .date-repeat-input { float: left; /* LTR */ width:auto; margin-right: 5px; /* LTR */ } .date-repeat-input select { min-width:7em; } .date-repeat fieldset { clear:both; float:none; } .date-views-filter-wrapper { min-width:250px; } .date-views-filter input { float: left !important; /* LTR */ margin-right: 2px !important; /* LTR */ padding:0 !important; width:12em; min-width:12em; } .date-nav { width:100%; } .date-nav div.date-prev { text-align: left; /* LTR */ width:24%; float: left; /* LTR */ } .date-nav div.date-next { text-align: right; /* LTR */ width:24%; float: right; /* LTR */ } .date-nav div.date-heading { text-align:center; width:50%; float: left; /* LTR */ } .date-nav div.date-heading h3 { margin:0; padding:0; } .date-clear { float:none; clear:both; display:block; } .date-clear-block { float:none; width:auto; clear:both; } /* ** Markup free clearing that fixes unwanted scrollbars ** @see http://drupal.org/node/232959 */ .date-clear-block:after { content: " "; display: block; height: 0; clear: both; visibility: hidden; } .date-clear-block { display: inline-block; } /* Hides from IE-mac \*/ * html .date-clear-block { height: 1%; } .date-clear-block { display: block; } /* End hide from IE-mac */ .date-container .date-format-delete { margin-top: 1.8em; margin-left: 1.5em; float: left; } .date-container .date-format-name { float: left; } .date-container .date-format-type { float: left; padding-left: 10px; } .date-container .select-container { clear: left; float: left; } /* Calendar day css */ div.date-calendar-day { line-height: 1; width: 40px; float: left; margin: 6px 10px 0 0; background: #F3F3F3; border-top: 1px solid #eee; border-left: 1px solid #eee; border-right: 1px solid #bbb; border-bottom: 1px solid #bbb; color: #999; text-align: center; font-family: Georgia, Arial, Verdana, sans; } div.date-calendar-day span { display: block; text-align: center; } div.date-calendar-day span.month { font-size: .9em; background-color: #B5BEBE; color: white; padding: 2px; text-transform: uppercase; } div.date-calendar-day span.day { font-weight: bold; font-size: 2em; } div.date-calendar-day span.year { font-size: .9em; padding: 2px; } ------------ovrp3U8y8KC3rcvqsh3ZpB Content-Disposition: inline; filename=datepicker.css Content-Type: text/css; charset=utf-8; name=datepicker.css Content-Location: http://www.psychologytoday.com/sites/all/modules/contrib/date/date_popup/themes/datepicker.css?D Content-Transfer-Encoding: 8bit /* Smoothness Theme for jQuery UI Datepicker */ #ui-datepicker-div table, #ui-datepicker-div td, #ui-datepicker-div th { margin: 0; padding: 0; } #ui-datepicker-div, #ui-datepicker-div table, .ui-datepicker-div, .ui-datepicker-div table, .ui-datepicker-inline, .ui-datepicker-inline table { font-size: 12px !important; } .ui-datepicker-div, .ui-datepicker-inline, #ui-datepicker-div { /*resets*/margin: 0; padding: 0; border: 0; outline: 0; line-height: 1.3; text-decoration: none; font-size: 100%; list-style: none; background: #ffffff; border: 2px solid #d3d3d3; font-family: Verdana, Arial, sans-serif; font-size: 1.1em; margin: 0; padding: 2.5em .5em .5em .5em; position: relative; width: 15.5em; } #ui-datepicker-div { background: #ffffff; display: none; z-index: 9999; /*must have*/ } .ui-datepicker-inline { display: block; float: left; /* LTR */ } .ui-datepicker-control { display: none; } .ui-datepicker-current { display: none; } .ui-datepicker-next, .ui-datepicker-prev { background: #e6e6e6 url(images/e6e6e6_40x100_textures_02_glass_75.png) 0 50% repeat-x; /* LTR */ left: .5em; /* LTR */ position: absolute; top: .5em; } .ui-datepicker-next { left: 14.6em; } .ui-datepicker-next:hover, .ui-datepicker-prev:hover { background: #dadada url(images/dadada_40x100_textures_02_glass_75.png) 0 50% repeat-x; /* LTR */ } .ui-datepicker-next a, .ui-datepicker-prev a { background: url(images/888888_7x7_arrow_left.gif) 50% 50% no-repeat; /* LTR */ border: 1px solid #d3d3d3; cursor: pointer; display: block; font-size: 1em; height: 1.4em; text-indent: -999999px; width: 1.3em; } .ui-datepicker-next a { background: url(images/888888_7x7_arrow_right.gif) 50% 50% no-repeat; /* LTR */ } .ui-datepicker-prev a:hover { background: url(images/454545_7x7_arrow_left.gif) 50% 50% no-repeat; /* LTR */ } .ui-datepicker-next a:hover { background: url(images/454545_7x7_arrow_right.gif) 50% 50% no-repeat; /* LTR */ } .ui-datepicker-prev a:active { background: url(images/222222_7x7_arrow_left.gif) 50% 50% no-repeat; /* LTR */ } .ui-datepicker-next a:active { background: url(images/222222_7x7_arrow_right.gif) 50% 50% no-repeat; /* LTR */ } .ui-datepicker-header select { background: #e6e6e6; border: 1px solid #d3d3d3; color: #555555; font-size: 1em; line-height: 1.4em; margin: 0 !important; padding: 0 !important; position: absolute; top: .5em; } .ui-datepicker-header select.ui-datepicker-new-month { left: 2.2em; /* LTR */ width: 7em; } .ui-datepicker-header select.ui-datepicker-new-year { left: 9.4em; /* LTR */ width: 5em; } table.ui-datepicker { text-align: right; /* LTR */ width: 15.5em; } table.ui-datepicker td a { color: #555555; display: block; padding: .1em .3em .1em 0; /* LTR */ text-decoration: none; } table.ui-datepicker tbody { border-top: none; } table.ui-datepicker tbody td a { background: #e6e6e6 url(images/e6e6e6_40x100_textures_02_glass_75.png) 0 50% repeat-x; /* LTR */ border: 1px solid #ffffff; cursor: pointer; } table.ui-datepicker tbody td a:hover { background: #dadada url(images/dadada_40x100_textures_02_glass_75.png) 0 50% repeat-x; /* LTR */ border: 1px solid #999999; color: #212121; } table.ui-datepicker tbody td a:active { background: #ffffff url(images/ffffff_40x100_textures_02_glass_65.png) 0 50% repeat-x; /* LTR */ border: 1px solid #dddddd; color: #222222; } table.ui-datepicker .ui-datepicker-title-row td { /*border-bottom: 1px solid #d3d3d3;*/ color: #222222; font-size: .9em; padding: .3em 0; text-align: center; text-transform: uppercase; } table.ui-datepicker .ui-datepicker-title-row td a { color: #222222; } ------------ovrp3U8y8KC3rcvqsh3ZpB Content-Disposition: inline; filename=timeentry.css Content-Type: text/css; charset=utf-8; name=timeentry.css Content-Location: http://www.psychologytoday.com/sites/all/modules/contrib/date/date_popup/themes/timeentry.css?D Content-Transfer-Encoding: 8bit /* timeEntry styles */ .timeEntry_control { vertical-align: middle; margin-left: 2px; } * html .timeEntry_control { /* IE only */ margin-top: -4px; } /* Make sure background colors from other styles don't obscure the current element highlight */ .timeEntry { background-color:transparent !important; } /* This is to keep FF from offering a drop-down list of previous values. */ /* For some reason hiding the div where the image belongs keeps that from happening. */ .timeEntry_control { display:none; } ------------ovrp3U8y8KC3rcvqsh3ZpB Content-Disposition: inline; filename=filefield.css Content-Type: text/css; charset=utf-8; name=filefield.css Content-Location: http://www.psychologytoday.com/sites/all/modules/contrib/filefield/filefield.css?D Content-Transfer-Encoding: 8bit /* $Id: filefield.css,v 1.21 2009/04/08 20:04:52 quicksketch Exp $ */ /** * Overall styles */ /** * Formatter styles */ .filefield-icon { float: left; /* RTL */ margin-right: 0.4em; /* RTL */ } /* End formatter styles. */ /** * General widget form styles (applicable to all widgets). */ .filefield-element { margin: 1em 0; white-space: normal; } .filefield-element .widget-preview { float: left; /* RTL */ padding-right: 10px; /* RTL */ border-right: 1px solid #CCC; /* RTL */ margin-right: 10px; /* RTL */ max-width: 30%; } .filefield-element .widget-edit { float: left; /* RTL */ max-width: 70%; } .filefield-element .filefield-preview { width: 16em; overflow: hidden; } .filefield-element .widget-edit .form-item { margin: 0 0 1em 0; } .filefield-element input.form-submit, .filefield-element input.form-file { margin: 0; } .filefield-element input.progress-disabled { float: none; display: inline; } .filefield-element div.ahah-progress, .filefield-element div.throbber { display: inline; float: none; padding: 1px 13px 2px 3px; /* RTL */ } .filefield-element div.ahah-progress-bar { display: none; margin-top: 4px; width: 28em; padding: 0; } .filefield-element div.ahah-progress-bar div.bar { margin: 0; } /* End general widget form styles. */ /** * Generic file edit widget styles. Not applicable to other widgets that * might hook into filefield (say, a widget with an image preview). */ .filefield-generic-edit .filefield-icon { float: left; /* RTL */ margin-right: 0.7em; /* RTL */ margin-top: 0.3em; } .filefield-generic-edit-description { margin-right: 6em; /* RTL */ } /* The text field is made unnecessarily long by node.css - shorten it. */ .filefield-generic-edit .form-text { width: 99%; } .filefield-generic-edit .description { white-space: normal; margin-bottom: 0; overflow: auto; /* Indent on line wraps, don't float around the icon. */ } /* End widget form styles. */ ------------ovrp3U8y8KC3rcvqsh3ZpB Content-Disposition: inline; filename=lightbox.css Content-Type: text/css; charset=utf-8; name=lightbox.css Content-Location: http://www.psychologytoday.com/sites/all/modules/contrib/lightbox2/css/lightbox.css?D Content-Transfer-Encoding: 8bit /* $Id: lightbox.css,v 1.1.4.23 2009/01/01 14:05:58 snpower Exp $ */ #lightbox { position: absolute; top: 40px; left: 0; width: 100%; z-index: 100; text-align: center; line-height: 0; } #lightbox a img { border: none; } #outerImageContainer { position: relative; background-color: #fff; width: 250px; height: 250px; margin: 0 auto; min-width: 240px; overflow: hidden; } #imageContainer, #frameContainer, #modalContainer { padding: 10px; } #modalContainer { line-height: 1em; overflow: auto; } #loading { height: 25%; width: 100%; text-align: center; line-height: 0; position: absolute; top: 40%; left: 45%; *left: 0%; } #hoverNav { position: absolute; top: 0; left: 0; height: 100%; width: 100%; z-index: 10; } #imageContainer>#hoverNav { left: 0; } #frameHoverNav { z-index: 10; margin-left: auto; margin-right: auto; width: 20%; position: relative; top: -60px; } #imageData>#frameHoverNav { left: 0; } #hoverNav a, #frameHoverNav a { outline: none; } #prevLink, #nextLink { width: 49%; height: 100%; background: transparent url(../images/blank.gif) no-repeat; /* Trick IE into showing hover */ display: block; } #prevLink, #framePrevLink { left: 0; float: left; } #nextLink, #frameNextLink { right: 0; float: right; } #prevLink:hover, #prevLink:visited:hover, #prevLink.force_show_nav, #framePrevLink { background: url(../images/prev.gif) left 15% no-repeat; } #nextLink:hover, #nextLink:visited:hover, #nextLink.force_show_nav, #frameNextLink { background: url(../images/next.gif) right 15% no-repeat; } #prevLink:hover.force_show_nav, #prevLink:visited:hover.force_show_nav, #framePrevLink:hover, #framePrevLink:visited:hover { background: url(../images/prev_hover.gif) left 15% no-repeat; } #nextLink:hover.force_show_nav, #nextLink:visited:hover.force_show_nav, #frameNextLink:hover, #frameNextLink:visited:hover { background: url(../images/next_hover.gif) right 15% no-repeat; } #framePrevLink, #frameNextLink { width: 45px; height: 45px; display: block; margin-bottom: -60px; position: relative; top: 60px; } #imageDataContainer { font: 10px Verdana, Helvetica, sans-serif; background-color: #fff; margin: 0 auto; line-height: 1.4em; min-width: 240px; } #imageData { padding: 0 10px; } #imageData #imageDetails { width: 70%; float: left; text-align: left; } #imageData #caption { font-weight: bold; } #imageData #numberDisplay { display: block; clear: left; padding-bottom: 1.0em; } #imageData #node_link_text { display: block; padding-bottom: 1.0em; } #imageData #bottomNav { height: 66px; } #overlay { position: absolute; top: 0; left: 0; z-index: 90; width: 100%; height: 500px; background-color: #000; } #overlay_default { opacity: 0.6; } #overlay_macff2 { background: transparent url(../images/overlay.png) repeat; } .clearfix:after { content: "."; display: block; height: 0; clear: both; visibility: hidden; } * html>body .clearfix { display: inline; width: 100%; } * html .clearfix { /* Hides from IE-mac \*/ height: 1%; /* End hide from IE-mac */ } /* Image location mod */ #bottomNavClose { display: block; background: url(../images/close.gif) left no-repeat; margin-top: 33px; float: right; padding-top: 0.7em; height: 26px; width: 26px; } #bottomNavClose:hover { background-position: right; } #loadingLink { display: block; background: url(../images/loading.gif) no-repeat; width: 32px; height: 32px; } #bottomNavZoom { display: none; background: url(../images/expand.gif) no-repeat; width: 34px; height: 34px; position: relative; left: 30px; float: right; } #bottomNavZoomOut { display: none; background: url(../images/contract.gif) no-repeat; width: 34px; height: 34px; position: relative; left: 30px; float: right; } #lightshowPlay { margin-top: 42px; float: right; margin-right: 5px; margin-bottom: 1px; height: 20px; width: 20px; background: url(../images/play.png) no-repeat; } #lightshowPause { margin-top: 42px; float: right; margin-right: 5px; margin-bottom: 1px; height: 20px; width: 20px; background: url(../images/pause.png) no-repeat; } .lightbox_hide_image { display: none; } ------------ovrp3U8y8KC3rcvqsh3ZpB Content-Disposition: inline; filename=nice_menus.css Content-Type: text/css; charset=utf-8; name=nice_menus.css Content-Location: http://www.psychologytoday.com/sites/all/modules/contrib/nice_menus/nice_menus.css?D Content-Transfer-Encoding: 8bit /* $Id: nice_menus.css,v 1.27.2.1 2008/07/11 16:05:10 add1sun Exp $ */ /* This file contains the basic logic for nice menus, and should not be edited. To customize the menus, it's recommended to create a custom CSS file using nice_menus_default.css as a template, then configure the module to use your custom CSS file (this is done in the global settings tab of the theme administration.) */ /* Below should fix menu being a few pixels away in some themes, and menus disappearing behind other stuff. */ .block-nice_menus { line-height: normal; z-index: 10; } ul.nice-menu, ul.nice-menu ul { z-index: 5; position: relative; } ul.nice-menu li { position: relative; } ul.nice-menu a { display: block; } ul.nice-menu ul, /* For Garland header. */ #header-region ul.nice-menu ul { position: absolute; visibility: hidden; } ul.nice-menu li.over ul { visibility: visible; } ul.nice-menu ul li { display: block; } ul.nice-menu:after { content: "."; display: block; height: 0; clear: both; visibility: hidden; } /* Show submenus when over their parents. */ ul.nice-menu li:hover ul, ul.nice-menu li.menuparent li:hover ul, ul.nice-menu li.menuparent li.menuparent li:hover ul, ul.nice-menu li.menuparent li.menuparent li.menuparent li:hover ul, ul.nice-menu li.over ul, ul.nice-menu li.menuparent li.over ul, ul.nice-menu li.menuparent li.menuparent li.over ul, ul.nice-menu li.menuparent li.menuparent li.menuparent li.over ul, /* Repeat all this stuff just for Garland headers. */ #header-region ul.nice-menu li:hover ul, #header-region ul.nice-menu li.menuparent li:hover ul, #header-region ul.nice-menu li.menuparent li.menuparent li:hover ul, #header-region ul.nice-menu li.over ul, #header-region ul.nice-menu li.menuparent li.over ul, #header-region ul.nice-menu li.menuparent li.menuparent li.over ul { visibility: visible; } /* Hide sub-menus initially. */ ul.nice-menu li:hover ul ul, ul.nice-menu li:hover ul ul ul, ul.nice-menu li:hover li:hover ul ul, ul.nice-menu li:hover li:hover ul ul ul, ul.nice-menu li:hover li:hover li:hover ul ul, ul.nice-menu li:hover li:hover li:hover ul ul ul, ul.nice-menu li.over ul ul, ul.nice-menu li.over ul ul ul, ul.nice-menu li.over li.over ul ul, ul.nice-menu li.over li.over ul ul ul, ul.nice-menu li.over li.over li.over ul ul, ul.nice-menu li.over li.over li.over ul ul ul, /* Repeat all this stuff just for Garland headers. */ #header-region ul.nice-menu li:hover ul ul, #header-region ul.nice-menu li:hover ul ul ul, #header-region ul.nice-menu li:hover li:hover ul ul, #header-region ul.nice-menu li:hover li:hover ul ul ul, #header-region ul.nice-menu li:hover li:hover li:hover ul ul, #header-region ul.nice-menu li:hover li:hover li:hover ul ul ul, #header-region ul.nice-menu li.over ul ul, #header-region ul.nice-menu li.over ul ul ul, #header-region ul.nice-menu li.over li.over ul ul, #header-region ul.nice-menu li.over li.over ul ul ul, #header-region ul.nice-menu li.over li.over li.over ul ul, #header-region ul.nice-menu li.over li.over li.over ul ul ul { visibility: hidden; } /*************** IE 6 Fixes ***************/ /* Iframe to fix z-index bug when menu hovers over <select> fields. */ ul.nice-menu li.menuparent ul, /* For Garland header. */ #header-region ul.nice-menu li.menuparent ul { overflow: visible !important; /* overflow: hidden; */ } ul.nice-menu li.menuparent ul iframe, /* For Garland header. */ #header-region ul.nice-menu li.menuparent ul iframe { display: none; display/**/: block; position: absolute; top: 0; left: 0; z-index: -1; filter: mask(); width: 20px; height: 20px; } ------------ovrp3U8y8KC3rcvqsh3ZpB Content-Disposition: inline; filename=nice_menus_default.css Content-Type: text/css; charset=utf-8; name=nice_menus_default.css Content-Location: http://www.psychologytoday.com/sites/all/modules/contrib/nice_menus/nice_menus_default.css?D Content-Transfer-Encoding: 8bit /* $Id: nice_menus_default.css,v 1.6 2007/10/29 16:38:28 add1sun Exp $ */ /* This is the default layout template for nice menus, and will provide a starting point for the look of your menus. To customize, it's recommended to create a custom CSS file using this file as a template, then configure the module to use your custom CSS file (this is done in the global settings tab of the theme administration.) To help understand the CSS, the HTML looks like this, where x is a number; TYPE is down/left/right; PATH is the menu path such as node/343; MID is the menu id such as 33): <ul id='nice-menu-x' class='nice-menu nice-menu-TYPE'> <li id='menu-MID' class='menu-path-PATH'><a href='#'>This is a menu item</a></li> <li class='menuparent menu-path-PATH'><a href='#'>A submenu</a> <ul...><li...>...</li> </ul> </li> ... </ul> If you have more than one nice-menu and want to target a particular one, use its id (e.g. ul#nice-menu-2). See README.txt and the handbook page (http://drupal.org/node/185543) for some CSS customization examples. */ /****************************** Global CSS for ALL menu types ******************************/ ul.nice-menu, ul.nice-menu ul { list-style: none; padding: 0; margin: 0; border-top: 1px solid #ccc; } ul.nice-menu li { border: 1px solid #ccc; border-top: 0; float: left; background-color: #eee; /* Additional overrides to deal with Garland theme. */ margin: 0; padding-left: 0; background-image: none; } /* Overrides for Garland header. */ #header-region ul.nice-menu li { margin: 0; /* Padding rules are needed to deal with Garland's header line-height. */ padding-top: 0.1em; padding-bottom: 0.1em; background: #eee; } ul.nice-menu a { padding: 0.3em 5px 0.3em 5px; } ul.nice-menu ul, /* Repeat for Garland header. */ #header-region ul.nice-menu ul { top: 1.8em; left: -1px; border: 0; border-top: 1px solid #ccc; margin-right: 0; } /* Override for Garland header. */ #header-region ul.nice-menu ul { top: 1.7em; } ul.nice-menu ul li { width: 12.5em; } /****************************** VERTICAL (left/right) menus ******************************/ /* This is the default width of all vertical menus. */ ul.nice-menu-right, ul.nice-menu-left, ul.nice-menu-right li, ul.nice-menu-left li { width: 12.5em; } /* VERTICAL menus where submenus pop RIGHT (default). */ ul.nice-menu-right ul { width: 12.5em; left: 12.5em; top: -1px; } ul.nice-menu-right ul ul { width: 12.5em; left: 12.5em; top: -1px; } ul.nice-menu-right li.menuparent, ul.nice-menu-right li li.menuparent { background: #eee url(arrow-right.png) right center no-repeat; } ul.nice-menu-right li.menuparent:hover, ul.nice-menu-right li.over, ul.nice-menu-right li li.menuparent:hover, ul.nice-menu-right li li.over { background: #ccc url(arrow-right.png) right center no-repeat; } /* VERTICAL menus where submenus pop LEFT. */ ul.nice-menu-left li ul { width: 12.5em; left: -12.65em; top: -1px; } ul.nice-menu-left li ul li ul { width: 12.5em; left: -12.65em; top: -1px; } ul.nice-menu-left li.menuparent, ul.nice-menu-left li li.menuparent { background: #eee url(arrow-left.png) left center no-repeat; } ul.nice-menu-left li.menuparent:hover, ul.nice-menu-left li.over, ul.nice-menu-left li li.menuparent:hover, ul.nice-menu-left li li.over { background: #ccc url(arrow-left.png) left center no-repeat; } ul.nice-menu-left a, ul.nice-menu-left ul a { padding-left: 14px; } /****************************** HORIZONTAL (down) menus ******************************/ ul.nice-menu-down { float: left; border: 0; } ul.nice-menu-down li { border-top: 1px solid #ccc; } ul.nice-menu-down li li { border-top: 0; } ul.nice-menu-down ul { left: 0; } ul.nice-menu-down ul li { clear: both; } ul.nice-menu-down li ul li ul, /* Repeat for Garland header. */ #header-region ul.nice-menu-down li ul li ul { left: 12.5em; top: -1px; } ul.nice-menu-down .menuparent a { padding-right: 15px; } ul.nice-menu-down li.menuparent, /* Repeat for Garland header. */ #header-region ul.nice-menu-down li.menuparent { background: #eee url(arrow-down.png) right center no-repeat; } ul.nice-menu-down li.menuparent:hover, ul.nice-menu-down li.over, /* Repeat for Garland header. */ #header-region ul.nice-menu-down li.menuparent:hover, #header-region ul.nice-menu-down li.over { background: #ccc url(arrow-down.png) right center no-repeat; } ul.nice-menu-down li li.menuparent, /* Repeat for Garland header. */ #header-region ul.nice-menu-down li li.menuparent { background: #eee url(arrow-right.png) right center no-repeat; } ul.nice-menu-down li li.menuparent:hover, ul.nice-menu-down li li.over, /* Repeat for Garland header. */ #header-region ul.nice-menu-down li li.menuparent:hover, #header-region ul.nice-menu-down li li.over { background: #ccc url(arrow-right.png) right center no-repeat; } ------------ovrp3U8y8KC3rcvqsh3ZpB Content-Disposition: inline Content-Type: image/png Content-Location: http://www.psychologytoday.com/sites/all/modules/contrib/extlink/extlink.png Content-Transfer-Encoding: Base64 iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAMAAAC67D+PAAAABGdBTUEAANbY1E9Y MgAAABl0RVh0U29mdHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAAJUExURZmZ mczMzAAAANmeCzsAAAADdFJOU///ANfKDUEAAAAySURBVHjaTIxRDgAACEHp/oeO tJYPe02gJEQiIvf5RgzK6B/jUHoE7dNwehP1JowtwAAXDABpSdB7KgAAAABJRU5E rkJggg== ------------ovrp3U8y8KC3rcvqsh3ZpB Content-Disposition: inline; filename=extlink.css Content-Type: text/css; charset=utf-8; name=extlink.css Content-Location: http://www.psychologytoday.com/sites/all/modules/contrib/extlink/extlink.css?D Content-Transfer-Encoding: 8bit span.ext { background: url(extlink.png) right center no-repeat; padding-right: 12px; zoom: 1; } span.mailto { background: url(mailto.png) right center no-repeat; padding-right: 12px; zoom: 1; } ------------ovrp3U8y8KC3rcvqsh3ZpB Content-Disposition: inline; filename=fieldgroup.css Content-Type: text/css; charset=utf-8; name=fieldgroup.css Content-Location: http://www.psychologytoday.com/sites/all/modules/contrib/cck/modules/fieldgroup/fieldgroup.css?D Content-Transfer-Encoding: 8bit /* $Id: fieldgroup.css,v 1.2.2.2 2009/03/14 18:55:20 yched Exp $ */ div.fieldgroup { margin:.5em 0 1em 0; } div.fieldgroup .content { padding-left:1em;/*LTR*/ } ------------ovrp3U8y8KC3rcvqsh3ZpB Content-Disposition: inline; filename=print.css Content-Type: text/css; charset=utf-8; name=print.css Content-Location: http://www.psychologytoday.com/sites/all/modules/contrib/print/css/print.css?D Content-Transfer-Encoding: 8bit /* $Id: print.css,v 1.1.2.2 2008/08/21 22:03:40 jcnventura Exp $ */ body { margin: 1em; background-color: #fff; font-family: sans-serif; } th { text-align: left; /* LTR */ color: #006; border-bottom: 1px solid #ccc; } tr.odd { background-color: #ddd; } tr.even { background-color: #fff; } td { padding: 5px; } #menu { visibility: hidden; } #main { margin: 1em; } a:link {color: #000;} a:visited {color: #000;} a:hover {color: #00f;} a:link img, a:visited img {border: 0;} .print-footnote {font-size: xx-small;} img.print-logo {border: 0;} .print-site_name {} .print-breadcrumb {font-size: x-small;} .print-title {} .print-submitted {font-size: small;} .print-created {font-size: small;} .print-taxonomy { text-align: right; } .print-taxonomy li {display: inline;} .print-content {} .print-hr { border: 0; height: 1px; width: 100%; color: #9E9E9E; background-color: #9E9E9E; } .print-message { border: medium dotted blue; padding: 1em; } .print-source_url {font-size: small;} .print-links {font-size: small;} .print-footer {text-align: center;} ------------ovrp3U8y8KC3rcvqsh3ZpB--