Overview

URL www.orion2007.ru/
IP195.208.1.134
ASNAS25535 Autonomous Non-commercial Organization 'Regional Network Information Center'
Location Russian Federation
Report completed2017-08-25 11:28:59 CEST
StatusLoading report..
urlquery Alerts No alerts detected


Settings

UserAgentMozilla/5.0 (Windows; U; Windows NT 6.1; en-US; rv:1.9.2.13) Gecko/20101203 Firefox/3.6.13
Referer
Pool
Access Level


Intrusion Detection Systems

Suricata /w Emerging Threats Pro  No alerts detected


Blacklists

MDL  No alerts detected
OpenPhish  No alerts detected
PhishTank  No alerts detected
Fortinet's Web Filter
Added / Verified Severity Host Comment
2017-08-25 2 cdn.callbackkiller.com/widget/cbk.js?wcb_code=19099 Malware
DNS-BH  No alerts detected
mnemonic secure dns  No alerts detected


Recent reports on same IP/ASN/Domain

Last 10 reports on IP: 195.208.1.134

Date UQ / IDS / BL URL IP
2019-06-04 13:41:36 +0200
0 - 0 - 0 belenkayavodka.com 195.208.1.134
2019-06-04 12:16:12 +0200
0 - 0 - 0 195.208.1.134 195.208.1.134
2019-05-16 14:39:44 +0200
0 - 7 - 0 kmebel.su/ 195.208.1.134
2019-03-05 09:25:17 +0100
0 - 0 - 0 www.normann.ru/ 195.208.1.134
2019-01-26 21:31:30 +0100
0 - 4 - 0 fagot.su/ 195.208.1.134
2019-01-16 12:42:06 +0100
0 - 4 - 0 kmebel.su/ 195.208.1.134
2018-07-09 18:06:23 +0200
0 - 1 - 0 kartavs.ru/suspensionxk.html 195.208.1.134
2018-07-09 05:53:17 +0200
0 - 0 - 0 cosmobrand.ru/components/com_jcomments/tpl/de (...) 195.208.1.134
2018-07-05 04:53:44 +0200
0 - 0 - 0 cosmobrand.ru/ 195.208.1.134
2018-07-02 11:45:55 +0200
0 - 0 - 0 cosmobrand.ru/templates/a4joomla-energic-free (...) 195.208.1.134

Last 10 reports on ASN: AS25535 Autonomous Non-commercial Organization 'Regional Network Information Center'

Date UQ / IDS / BL URL IP
2019-06-17 09:02:09 +0200
0 - 0 - 0 izplastika.ru/vzfpqeic/development.html 195.208.1.105
2019-06-15 16:53:42 +0200
0 - 0 - 10 www.teslateam.online 195.208.1.105
2019-06-11 00:14:58 +0200
0 - 6 - 0 ist.spb.su/ 195.208.1.132
2019-06-10 22:28:48 +0200
0 - 1 - 0 iftp.ru/ 195.208.1.119
2019-06-10 20:31:36 +0200
0 - 0 - 1 millenniumplaza.ru/vdu1mdv0enhmodgyoxv4 195.208.1.105
2019-06-10 20:22:11 +0200
0 - 0 - 1 npobastion.ru/catalog/istochniki-pitaniya-dly (...) 195.208.1.167
2019-06-10 19:53:04 +0200
0 - 0 - 1 v2.amtrade-eng.ru/sources/primary/cont/onstep (...) 195.208.1.107
2019-06-10 19:37:41 +0200
0 - 0 - 1 ostmedic.ru/netflix-web-serveraccounts-www 195.208.1.105
2019-06-10 19:15:03 +0200
0 - 0 - 1 socio-research.ru/new/s-mg5.mail.yahoo.com.htm 195.208.1.107
2019-06-10 18:49:22 +0200
0 - 4 - 1 stomatologia.spb.su/sites/default/files/ctool (...) 178.210.89.119

No other reports on domain: orion2007.ru



JavaScript

Executed Scripts (30)


Executed Evals (0)


Executed Writes (1)

#1 JavaScript::Write (size: 858426, repeated: 1) - SHA256: a981cb6944029db84d284d3a8bbedc97abec4508c98fe3eeb9a95cfecc3b2b36

                                        < !doctype HTML > < head > < meta name = "google"
content = "notranslate" > < meta http - equiv = "X-UA-Compatible"
content = "IE=edge" / > < script type = "text/javascript" > window.modularCSS = ".globalClass_ET a,.globalClass_ET svg{all:initial!important}.globalClass_ET a{-webkit-text-size-adjust:inherit!important}jdiv{all:initial;-webkit-text-size-adjust:inherit}.vkIcon_3c svg{fill:#507299!important}.fbIcon_Yq svg{fill:#0084ff!important}.wrap_mW{position:fixed;bottom:0;z-index:2147483646;opacity:0;visibility:hidden;display:block;-webkit-tap-highlight-color:rgba(0,0,0,0)}.button_1O{width:65px;height:65px;display:block;border-radius:50px;margin-bottom:20px;text-align:center;box-shadow:0 19px 38px 0 rgba(34,36,43,.3);position:relative}.iconWrap_2n{display:block;-webkit-transform-style:preserve-3d;transform-style:preserve-3d;position:absolute;left:0;right:0;top:0;bottom:0}.iconWrap_2n._animationJivoIcon_30{-webkit-animation:iconAnimation_1s 18s infinite;animation:iconAnimation_1s 18s infinite}.messagesLabel_FQ{display:none;text-align:center;background-color:#fc576b;position:absolute;font-size:12px;font-family:sans-serif;color:#fff;top:0;right:0;border-radius:16px;padding:3px 7px;-webkit-transform:translateZ(2px);transform:translateZ(2px)}.logoIconJivo_1o{display:inline-block;position:absolute;top:0;left:0;right:0;bottom:0;margin:auto;width:10px;height:35px;-webkit-backface-visibility:hidden;backface-visibility:hidden;-webkit-transform-style:preserve-3d;transform-style:preserve-3d;-webkit-transform:rotateY(180deg);transform:rotateY(180deg)}.logoIconJivo_1o svg{display:block!important;width:10px!important;height:35px!important;vertical-align:top!important;fill:#fff!important}.logoIconJivo_1o._iconDark_2a svg{fill:#3e414f!important}.logoIconCloud_q-{display:inline-block;position:absolute;top:0;left:0;right:0;bottom:0;margin:auto;width:35px;height:30px;padding-top:1px;backface-visibility:hidden;-webkit-backface-visibility:hidden;-webkit-transform-style:preserve-3d;transform-style:preserve-3d;-webkit-transform:rotateY(0deg);transform:rotateY(0deg)}.logoIconCloud_q- svg{display:block!important;width:35px!important;height:30px!important;vertical-align:top!important;fill:#fff!important}.logoIconCloud_q-._iconDark_2a svg{fill:#3e414f!important}.envelopeIcon_3E{display:inline-block;position:absolute;top:0;left:0;right:0;bottom:0;margin:auto;width:25px;height:20px;padding-top:1px;backface-visibility:hidden;-webkit-backface-visibility:hidden;-webkit-transform-style:preserve-3d;transform-style:preserve-3d;-webkit-transform:rotateY(0deg);transform:rotateY(0deg)}.envelopeIcon_3E svg{display:block!important;width:25px!important;height:20px!important;vertical-align:top!important;fill:#fff!important}.envelopeIcon_3E._iconDark_2a svg{fill:#3e414f!important}@keyframes iconAnimation_1s{0%,83.3%{-webkit-transform:rotateY(0deg);transform:rotateY(0deg)}86%,98.1%{-webkit-transform:rotateY(180deg);transform:rotateY(180deg)}to{-webkit-transform:rotateY(0deg);transform:rotateY(0deg)}}._show_1e.wrap_mW{opacity:1;visibility:visible;z-index:2147483647}._orinationRight_25.wrap_mW{right:0}._orinationRight_25 .button_1O{margin-right:20px}._orinationLeft_3O.wrap_mW{left:0}._orinationLeft_3O .button_1O{margin-left:20px}._animationBtn_Rc.wrap_mW{-webkit-transition:opacity .15s ease;transition:opacity .15s ease}.container_3P{display:block;position:absolute;z-index:-5;top:-100%;left:-125%}.wrap_2g{display:block;position:relative;width:100%;height:100%}._show_10 .overlay_2X{visibility:visible;opacity:.6}._show_10 .menuWrap_2V{bottom:0}.overlay_2X{display:block;left:0;top:0;height:100%;width:100%;position:absolute;opacity:0;visibility:hidden;background-color:#000;z-index:0;-webkit-transition:visibility .3s ease,opacity .3s ease;transition:visibility .3s ease,opacity .3s ease}.overlay_2X._extraPadding_YL{padding:3px;margin:-1px}.deviceLandscape_3t{display:none;position:absolute;top:0;bottom:0;left:0;right:0;width:125px;height:115px;margin:auto;background:url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAH0AAABzCAQAAAAfg8XeAAAHT0lEQVR42u3daVATVxwA8Ad4BdoRW6U6OrXFWnVab8cba9uxYkc/dHR0nI62Fq+OvUbR8exUHIuIDiIIWiEJb6EeqNUWRxnHSlBEQBB15BYhITaRmIOQc9n994MS7sTIbq7d//8bSV7ej+y7NvNeEPKgkAvqxt9bmbk5f5skktm8sVW7smlSgcCTtLag/Qpnqk42PwXWwqAsS/svzOPgBj96nVUJrIdBeXb94gCPouu/Az24Jizp6z0IHjeXfAYuC1qVOddD4FFvXD0FLo18IirQI+j/zlbLXUu3ahOnegSd3AQuj5jVHkGH31+phTJKL9zhGfQYx1U16YzHlQlWNQBQILPcNOWabtky13ITGpz732gSPYN+wHFV60QIIaQRA1D1TYu1giZBU5AtAw1Bz+Y5NyswpnoNXf3PvSHW4ZZrAKba2uldy5CONjs1D2w+yThD66cYWi5gnk63NOW23AYKoIUylJJ/w5UOeRlKoMXN9Aq/6iWqbHpf2QLxQCbpTAcLdIQqQukqoKwafTkpOvXNjfHFQZyhx/tn7W59A5IklQ3XdPvzw3NCdAKfpyO0d2rn3pakjbXqjIII0/SikPgBPkxPEshSenjHphrJxa98mI6QfL7heQ/vqb0+x4fpecGqNbpuFyQ03Nljt61baQttAbbSDKbWIZAF+q/BDT8ockgV3e200lQcMahnuuG5dBUsoZdQbOVCag1dwQq9NEi7VnGXNPV0kVEtT1fY6+G1skyWbxtSw+h8FujlU5VZlNle+9JdLH7THl3fIHybZfpIupBhumZA7gaNwn7H0mLI+sT+uK5vwINZpr/HMD3nHUh2vGLMiz86wMfoolGVWd0MHpXV8fqMtiVFY/3eCT2V4KX0lDFleZ0HMF2hebt8IkLJQ6yy1r9m79zo51N0IvTRnY5wTXnzL7LQ1seL4l4OW3dTh/dcihfS6WHK7I5TdWlS3Yftn/FoKqgBzIaqCHvleB09oT8lbO82am5sKOzUkf3Yt+QMwOOsg4E+RA/3O72l/X0Ry7PoZbHdtOa0Fc1q0WL7ZXkZ/einelm7T7xx37Lun7d/sOynhD4+RP8rWHW1XRM3Za7tTYW8ip6zsX0rVx/qXYW8iL7pfUWZbUkCqhzDII7QL/inb273kT+/Mqe3FfIaunKwoaxNXnWw9xXyGvrDr9vghsdnRnGGLulTf7lttl4QhQM4Q8+eaFLZ6MqcSUxUyEvo535uW5mriOxAztBvB8jPtLX0yyuYqZBX0E+EmCptcumlcRyiR89u0rbKC89HD+QQvXEdZbvVfC2aqQp5BZ3cB9TLCSypj+AQfbRfEbZNZjT3wzlEnxxWUt1Kfyy9NJND9A1RNjk8epA8jkP0nVvrKNt3xcVVH3CIvmtnXdt8phLGcIi+Z0TdXJgHYRAG82EKLeAQna3g6Vykk3s9go7fxZ/hRa5L0UJxeM1Zt9PxULwV52FwZYohFR6Am+l4PM52LfsFXQSP3EvHE3CJo2oSkMF4EoCh3J10PASfdwhXi08nxScmHWM0ExKPxBeXupO+ClMO6U9E0+L7xfU7wmge7ne0X2mM2+h4IL7wCu1SRkxmp0K0G+ljce2r0PEUdioEse6jz8SNPJ2n83SeztN5Ok/n6Tydp/N0ns7TebqX0AkTIcdybOQgXVwpDE//Fks5RyfgWCFCpyYTTzlHT4eEOwf8T8/hJD2xICaAp/N0ns7TfZjO4R7+WBFCp2Zg7tExpFWJw4hlHJzNYSBMhAI3YjMX6UBocS3hcrrwLZbpIx21dTrl8aFl8R8dJzrgWadrZedYPpyF7nw4Sxe6NXYzQghtH5FamOFCukEjjYSN8D1rGQE76Gr7KzcyMWFPAEK7Zwor0l1Id0nQDhatIl1CTOKqlNsEjX2NDg67uQxIN2a4+AaVR9Ddc2/OqeuWpissqc3RFhE8BDOX6A26HZoQc39dH/MAGGKMtKq4QlfByo4l1K0mn3OATlPaWG3fzmWY45w7ONk76fLq2V3LMC8Ane9f8A91Y7uWkR2sr+EAnexmm9lZgbbSmUJeHpeNZ2GVW+mHnLrgZc2zupahmUE51cu/PCQdT8NKt9IPOvWptxh3dy2DjALSmULytr+gj8JV7qQ3LLcYncJLodN+WtXnlifODW75L4ZHHIiFjunp9fhjduh1oS13nRzZazTLDcEWf4Ss/jXB9UuhwrmXW2WNrf0FXtTpW9Vu8k/FyS8Qwn7Yn9kU+iNU4/T5waTecsG6S7/KulN70WJy9tXapPv9W+mBONnx9g9hkfgwjsNHmc7kqMxLzfA68Xo/jaFuqG9/sgoegS85xhMsbf75A24z/AsfPYdCnbW0U4vDw/AJx9tA2Nr3JIZcaHIB/Fn1xe5OxsNBeCnOxDXYgGlXp5gW0ufpClrNGpqG5gpF7K2ed93jwfg3fA8rsNzVmSYXyVPk555KFBJlr1MlkUquSw5KtkgiJZE3t17dVrTG8mVtqKwv4gMhhP4HwwXxEviqKqAAAAAASUVORK5CYII=\") 50% no-repeat}._landscape_3F .overlay_2X{z-index:2;opacity:.9;background-color:#333}._landscape_3F .deviceLandscape_3t{display:block}._landscape_3F .menuWrap_2V{display:none}.menuWrap_2V{position:absolute;width:100%;left:0;bottom:-100%;background-color:#fff;-webkit-transition:bottom .3s ease-in-out;transition:bottom .3s ease-in-out}.menuTitle_gc{display:block;font-size:16px;color:#8194a4;font-family:sans-serif;margin-left:15px;margin-top:25px;margin-bottom:20px;-webkit-transition:opacity .3s ease;transition:opacity .3s ease}.menu_Xi,.menuItem_1i{display:block}.menuItem_1i{position:relative;padding-top:3px;margin-bottom:10px;font-size:16px;color:#2f3a44;font-family:sans-serif}.menuItemIcon_gq{width:20px;height:20px;position:absolute;top:10px;left:15px;padding:1px}.menuItemIcon_gq svg{height:19px!important;width:19px!important}.menuItemText_1y{padding:10px;display:inline-block;margin-left:60px;font-size:16px;color:#2f3a44;font-family:sans-serif}.menuItemTextHighlight_3u{color:red}.copyrightWrap_3g{position:absolute;display:block;top:0;left:0;right:0;margin-top:-35px;text-align:center}.copyright_Iv{display:inline-block}.copyright_Iv a{color:#fff!important;font-size:12px!important;font-family:sans-serif!important}.logoIcon_2E{display:inline-block;vertical-align:middle;margin-left:5px;margin-bottom:-2px}.logoIcon_2E svg{height:15px!important;width:50px!important}.closeBtn_3r{position:relative;display:block;border-top:1px solid #e9e9e9;padding:20px 0}.closeIcon_2G{color:#314254;position:absolute;left:20px;top:18px;font-size:18px}.closeText_2a{font-size:16px;color:#314254;margin-left:70px;font-family:sans-serif}.wrap_2F{display:block;position:relative;width:100%;height:100%}._show_1l .overlay_3z{visibility:visible;opacity:.6}._show_1l .menuWrap_2D{bottom:0}.overlay_3z{display:block;left:0;top:0;height:100%;width:100%;position:absolute;opacity:0;background-color:#000;visibility:hidden;-webkit-transition:visibility .3s ease,opacity .3s ease;transition:visibility .3s ease,opacity .3s ease}.overlay_3z._extraPadding_1j{padding:3px;margin:-1px}.deviceLandscape_2G{display:none;position:absolute;top:0;bottom:0;left:0;right:0;width:125px;height:115px;margin:auto;background:url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAH0AAABzCAQAAAAfg8XeAAAHT0lEQVR42u3daVATVxwA8Ad4BdoRW6U6OrXFWnVab8cba9uxYkc/dHR0nI62Fq+OvUbR8exUHIuIDiIIWiEJb6EeqNUWRxnHSlBEQBB15BYhITaRmIOQc9n994MS7sTIbq7d//8bSV7ej+y7NvNeEPKgkAvqxt9bmbk5f5skktm8sVW7smlSgcCTtLag/Qpnqk42PwXWwqAsS/svzOPgBj96nVUJrIdBeXb94gCPouu/Az24Jizp6z0IHjeXfAYuC1qVOddD4FFvXD0FLo18IirQI+j/zlbLXUu3ahOnegSd3AQuj5jVHkGH31+phTJKL9zhGfQYx1U16YzHlQlWNQBQILPcNOWabtky13ITGpz732gSPYN+wHFV60QIIaQRA1D1TYu1giZBU5AtAw1Bz+Y5NyswpnoNXf3PvSHW4ZZrAKba2uldy5CONjs1D2w+yThD66cYWi5gnk63NOW23AYKoIUylJJ/w5UOeRlKoMXN9Aq/6iWqbHpf2QLxQCbpTAcLdIQqQukqoKwafTkpOvXNjfHFQZyhx/tn7W59A5IklQ3XdPvzw3NCdAKfpyO0d2rn3pakjbXqjIII0/SikPgBPkxPEshSenjHphrJxa98mI6QfL7heQ/vqb0+x4fpecGqNbpuFyQ03Nljt61baQttAbbSDKbWIZAF+q/BDT8ockgV3e200lQcMahnuuG5dBUsoZdQbOVCag1dwQq9NEi7VnGXNPV0kVEtT1fY6+G1skyWbxtSw+h8FujlU5VZlNle+9JdLH7THl3fIHybZfpIupBhumZA7gaNwn7H0mLI+sT+uK5vwINZpr/HMD3nHUh2vGLMiz86wMfoolGVWd0MHpXV8fqMtiVFY/3eCT2V4KX0lDFleZ0HMF2hebt8IkLJQ6yy1r9m79zo51N0IvTRnY5wTXnzL7LQ1seL4l4OW3dTh/dcihfS6WHK7I5TdWlS3Yftn/FoKqgBzIaqCHvleB09oT8lbO82am5sKOzUkf3Yt+QMwOOsg4E+RA/3O72l/X0Ry7PoZbHdtOa0Fc1q0WL7ZXkZ/einelm7T7xx37Lun7d/sOynhD4+RP8rWHW1XRM3Za7tTYW8ip6zsX0rVx/qXYW8iL7pfUWZbUkCqhzDII7QL/inb273kT+/Mqe3FfIaunKwoaxNXnWw9xXyGvrDr9vghsdnRnGGLulTf7lttl4QhQM4Q8+eaFLZ6MqcSUxUyEvo535uW5mriOxAztBvB8jPtLX0yyuYqZBX0E+EmCptcumlcRyiR89u0rbKC89HD+QQvXEdZbvVfC2aqQp5BZ3cB9TLCSypj+AQfbRfEbZNZjT3wzlEnxxWUt1Kfyy9NJND9A1RNjk8epA8jkP0nVvrKNt3xcVVH3CIvmtnXdt8phLGcIi+Z0TdXJgHYRAG82EKLeAQna3g6Vykk3s9go7fxZ/hRa5L0UJxeM1Zt9PxULwV52FwZYohFR6Am+l4PM52LfsFXQSP3EvHE3CJo2oSkMF4EoCh3J10PASfdwhXi08nxScmHWM0ExKPxBeXupO+ClMO6U9E0+L7xfU7wmge7ne0X2mM2+h4IL7wCu1SRkxmp0K0G+ljce2r0PEUdioEse6jz8SNPJ2n83SeztN5Ok/n6Tydp/N0ns7TebqX0AkTIcdybOQgXVwpDE//Fks5RyfgWCFCpyYTTzlHT4eEOwf8T8/hJD2xICaAp/N0ns7TfZjO4R7+WBFCp2Zg7tExpFWJw4hlHJzNYSBMhAI3YjMX6UBocS3hcrrwLZbpIx21dTrl8aFl8R8dJzrgWadrZedYPpyF7nw4Sxe6NXYzQghtH5FamOFCukEjjYSN8D1rGQE76Gr7KzcyMWFPAEK7Zwor0l1Id0nQDhatIl1CTOKqlNsEjX2NDg67uQxIN2a4+AaVR9Ddc2/OqeuWpissqc3RFhE8BDOX6A26HZoQc39dH/MAGGKMtKq4QlfByo4l1K0mn3OATlPaWG3fzmWY45w7ONk76fLq2V3LMC8Ane9f8A91Y7uWkR2sr+EAnexmm9lZgbbSmUJeHpeNZ2GVW+mHnLrgZc2zupahmUE51cu/PCQdT8NKt9IPOvWptxh3dy2DjALSmULytr+gj8JV7qQ3LLcYncJLodN+WtXnlifODW75L4ZHHIiFjunp9fhjduh1oS13nRzZazTLDcEWf4Ss/jXB9UuhwrmXW2WNrf0FXtTpW9Vu8k/FyS8Qwn7Yn9kU+iNU4/T5waTecsG6S7/KulN70WJy9tXapPv9W+mBONnx9g9hkfgwjsNHmc7kqMxLzfA68Xo/jaFuqG9/sgoegS85xhMsbf75A24z/AsfPYdCnbW0U4vDw/AJx9tA2Nr3JIZcaHIB/Fn1xe5OxsNBeCnOxDXYgGlXp5gW0ufpClrNGpqG5gpF7K2ed93jwfg3fA8rsNzVmSYXyVPk555KFBJlr1MlkUquSw5KtkgiJZE3t17dVrTG8mVtqKwv4gMhhP4HwwXxEviqKqAAAAAASUVORK5CYII=\") 50% no-repeat}._landscape_9O .overlay_3z{z-index:2;opacity:.9;background-color:#333}._landscape_9O .deviceLandscape_2G{display:block}._landscape_9O .menuWrap_2D{display:none}.menuWrap_2D{position:absolute;z-index:1;width:100%;left:0;bottom:-100%;-webkit-transition:bottom .3s ease-in-out;transition:bottom .3s ease-in-out}.menuTitle_1e{display:block;font-size:13px;color:#949494;font-family:sans-serif;text-align:center;padding:20px 0}.menu_3e{display:block;background-color:#f2f2f2;font-size:18px;color:#0076ff;margin:10px;margin-bottom:8px;border-radius:12px}.menuItem_2A{display:block;position:relative;text-align:center;border-top:1px solid #dddde0}.menuItemIcon_V0{display:inline-block;width:16px;height:16px;margin-bottom:2px;vertical-align:middle}.menuItemIcon_V0 svg{height:16px!important;width:16px!important}.menuItemText_19{padding:16px 10px;display:inline-block;font-size:18px;color:#0076ff;font-family:sans-serif}.menuItemTextHighlight_3I{color:red}.copyrightWrap_2o{position:absolute;display:block;top:-35px;left:0;right:0;margin:15px;text-align:center}.copyright_2u{display:inline-block}.copyright_2u a{color:#fff!important;font-size:12px!important;font-family:sans-serif!important}.logoIcon_5N{display:inline-block;vertical-align:middle;margin-left:5px;margin-bottom:-2px}.logoIcon_5N svg{height:15px!important;width:50px!important}.closeBtn_2k{display:block;padding:16px 0;border-radius:12px;margin:10px;margin-top:0;margin-bottom:15px;text-align:center;background-color:#fff;color:#0076ff;font-size:18px;font-weight:600;font-family:sans-serif}.wrap_3s{bottom:0;right:0;position:fixed;left:auto;top:auto;z-index:-5;opacity:0;visibility:hidden;margin-right:90px;margin-bottom:90px;-webkit-transition:all .15s ease;transition:all .15s ease;display:block;width:70px;height:70px;border-radius:50%;box-shadow:1px 2px 3px 0 rgba(15,65,33,.08),5px 10px 20px 0 rgba(18,43,26,.12)}.wrap_3s:hover{box-shadow:1px 2px 3px 2px rgba(15,65,33,.08),5px 10px 20px 2px rgba(18,43,26,.2)}.wrap_3s._show_3w{z-index:2147483646;opacity:1;visibility:visible}.wrap_3s *,.wrap_3s svg{cursor:pointer!important}.button_3b,.iconWrap_1u{display:block;position:absolute;left:0;right:0;top:0;bottom:0;border-radius:50%;text-align:center}.button_3b{-webkit-animation:animationBtn_36 14s linear infinite;animation:animationBtn_36 14s linear infinite}@-webkit-keyframes animationBtn_36{0%{box-shadow:0 0 0 0;opacity:0}73%{box-shadow:0 0 0 0;opacity:.5}80%{box-shadow:0 0 0 50px;opacity:0}81%{box-shadow:0 0 0 0;opacity:0}83%{box-shadow:0 0 0 0;opacity:.5}90%{box-shadow:0 0 0 50px;opacity:0}91%{box-shadow:0 0 0 0;opacity:0}93%{box-shadow:0 0 0 0;opacity:.5}to{box-shadow:0 0 0 50px;opacity:0}}@keyframes animationBtn_36{0%{box-shadow:0 0 0 0;opacity:0}73%{box-shadow:0 0 0 0;opacity:.5}80%{box-shadow:0 0 0 50px;opacity:0}81%{box-shadow:0 0 0 0;opacity:0}83%{box-shadow:0 0 0 0;opacity:.5}90%{box-shadow:0 0 0 50px;opacity:0}91%{box-shadow:0 0 0 0;opacity:0}93%{box-shadow:0 0 0 0;opacity:.5}to{box-shadow:0 0 0 50px;opacity:0}}.logoCallback_w0{display:inline-block;width:47%;height:47%;margin:29% auto 0;text-align:center}.logoCallback_w0 svg{width:100%!important;height:100%!important}.nowrap_QY{white-space:nowrap}.bull_1d{content:\"\";position:absolute;left:12px;top:12px;width:6px;height:6px;-webkit-border-radius:3px 3px 3px 3px;-khtml-border-radius:3px 3px 3px 3px;-moz-border-radius:3px 3px 3px 3px;-ms-border-radius:3px 3px 3px 3px;-o-border-radius:3px 3px 3px 3px;border-radius:3px 3px 3px 3px;background-color:#3cb868}.jivoLabelButtons_3H{display:none;position:absolute;border-radius:4px;font-family:Helvetica,Arial,sans-serif;font-weight:400;font-size:15px;line-height:20px;background-color:#fff;color:#545d6b;z-index:1000000;-webkit-font-smoothing:antialiased;-moz-font-smoothing:antialiased;font-smoothing:antialiased;max-width:100%;box-shadow:0 5px 20px 0 rgba(0,0,0,.2);width:100%;min-width:300px;max-height:none!important}.jivoLabelButtons_3H._bottom_34{left:0;right:auto}.jivoLabelButtons_3H._bottom_34:after{content:\"\";display:block;position:absolute;background:transparent;left:-22px;top:-22px;bottom:-22px;right:-20px;z-index:0}.jivoLabelButtons_3H._right_1S{width:300px;min-width:300px}.jivoLabelButtons_3H._right_1S:before{width:23px;height:auto;top:-60px;bottom:-60px;right:-23px;content:\"\";position:absolute;cursor:default}.jivoLabelButtons_3H._right_1S:after{left:-22px;bottom:-22px;right:-22px;z-index:0}.jivoLabelButtons_3H._right_1S:after,.jivoLabelButtons_3H._top_20:after{content:\"\";display:block;position:absolute;background:transparent;top:-22px}.jivoLabelButtons_3H._top_20:after{height:22px;left:0;right:0}.jivoLabelButtons_3H._left_ok{width:300px;min-width:300px}.jivoLabelButtons_3H._left_ok:before{width:60px;bottom:-40px;left:-22px;top:-60px;content:\"\";position:absolute;cursor:default;background:transparent;z-index:0}.jivoLabelButtons_3H._left_ok:after{content:\"\";display:block;position:absolute;background:transparent;left:-22px;top:-22px;bottom:-22px;right:-20px;z-index:0}.jivoLabelButtons_3H .callme_Tt{background:transparent url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20'%3E%3Cpath d='M3.6 7.8c1.4 2.8 3.8 5.1 6.6 6.6l2.2-2.2c.3-.3.7-.4 1-.2 1.1.4 2.3.6 3.6.6.6 0 1 .4 1 1V17c0 .6-.4 1-1 1A16.986 16.986 0 0 1 0 1c0-.6.4-1 1-1h3.5c.6 0 1 .4 1 1 0 1.2.2 2.4.6 3.6.1.3 0 .7-.2 1L3.6 7.8z' fill-rule='evenodd' fill='%2300bd63'/%3E%3C/svg%3E\") 30px 50% no-repeat}.jivoLabelButtons_3H .chat_2j{background:transparent url(\"data:image/svg+xml;charset=utf-8,%3Csvg width='23' height='23' viewBox='0 0 23 23' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle%3E0641267D-B556-4361-BFAD-3620D814E0BF%3C/title%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cpath d='M1 14.7V21l4.176-3H21c.56 0 .999-.448.999-1V2c0-.545-.447-1-.999-1H2A.994.994 0 0 0 1 2v12.7z' stroke='%2300BE64' stroke-width='2'/%3E%3Cpath fill='%2300BE64' d='M5 6h14v2H5zM5 11h11v2H5z'/%3E%3C/g%3E%3C/svg%3E\") 28px 51% no-repeat}.jivoLabelButtons_3H._right_1S{max-width:300px}.jivoLabelButtons_3H._right_1S .callme_Tt,.jivoLabelButtons_3H._right_1S .chat_2j{clear:inherit}.jivoLabelButtons_3H._right_1S .callme_Tt a,.jivoLabelButtons_3H._right_1S .chat_2j a{padding-right:0}.jivoLabelButtons_3H._left_ok{right:auto}.jivoLabelButtons_3H .callme_Tt,.jivoLabelButtons_3H .chat_2j{width:100%;height:38px;line-height:38px;clear:both;overflow:hidden;cursor:pointer}.jivoLabelButtons_3H .labelButton_2w:first-child:hover~.topCorner_2X:after,.jivoLabelButtons_3H :hover+.bottomCorner_34:after,.jivoLabelButtons_3H :hover+.leftCorner_Ts:after,.jivoLabelButtons_3H :hover+.rightCorner_1x:after{border-color:transparent transparent #f4f8fa #f4f8fa!important}.jivoLabelButtons_3H .chat_2j:hover{border-radius:0 0 4px 4px}.jivoLabelButtons_3H .callme_Tt a:hover{border-radius:4px 4px 0 0}.buttonsCorner_3T{position:absolute;width:0;height:0}.buttonsCorner_3T ._top_20{top:-10px;right:30px;border-left:5px solid transparent;border-right:5px solid transparent;border-bottom:5px solid #fff}.buttonsCorner_3T ._bottom_34:after{content:\"\";position:absolute;width:0;height:0;left:21px;bottom:-18px;box-sizing:border-box;border:10px solid #000;border-color:transparent transparent #fff #fff;-webkit-transform-origin:0 0;transform-origin:0 0;-webkit-transform:rotate(-45deg);transform:rotate(-45deg);box-shadow:-3px 3px 5px 0 rgba(0,0,0,.07)}.buttonsCorner_3T ._left_ok{top:52px;left:-10px;margin-top:-2.5px;border-top:5px solid transparent;border-bottom:5px solid transparent;border-right:5px solid #fff}.buttonsCorner_3T ._left_ok:after{content:\"\";position:absolute;width:0;height:0;left:21px;bottom:-18px;box-sizing:border-box;border:10px solid #fff;border-color:transparent transparent #fff #fff;-webkit-transform-origin:0 0;transform-origin:0 0;-webkit-transform:rotate(-45deg);transform:rotate(-45deg);box-shadow:-3px 3px 5px 0 rgba(0,0,0,.07)}.buttonsCorner_3T ._right_1S{top:52px;right:-10px;margin-top:-2.5px;border-top:10px solid transparent;border-bottom:10px solid transparent;border-left:10px solid #fff}.buttonsCorner_3T ._right_1S:after{content:\"\";position:absolute;width:0;height:0;left:21px;bottom:-18px;box-sizing:border-box;border:10px solid #fff;border-color:transparent transparent #fff #fff;-webkit-transform-origin:0 0;transform-origin:0 0;-webkit-transform:rotate(-45deg);transform:rotate(-45deg);box-shadow:-3px 3px 5px 0 rgba(0,0,0,.07)}.bottomCorner_34{border-top-color:#fff}.bottomCorner_34:after{content:\"\";position:absolute;width:0;height:0;left:25px;bottom:-19px;box-sizing:border-box;border:10px solid #000;border-color:transparent transparent #fff #fff;-webkit-transform-origin:0 0;transform-origin:0 0;-webkit-transform:rotate(-45deg);transform:rotate(-45deg);box-shadow:-3px 3px 5px 0 rgba(0,0,0,.07)}.leftCorner_Ts{left:0;border-right-color:#fff}.leftCorner_Ts:after{content:\"\";position:absolute;width:0;height:0;left:0;bottom:25px;box-sizing:border-box;border:10px solid #000;border-color:transparent transparent #fff #fff;-webkit-transform-origin:0 0;transform-origin:0 0;-webkit-transform:rotate(45deg);transform:rotate(45deg);box-shadow:-3px 3px 5px 0 rgba(0,0,0,.07)}.rightCorner_1x{border-left-color:#fff;right:0}.rightCorner_1x:after{content:\"\";position:absolute;width:0;height:0;left:-1px;bottom:-5px;box-sizing:border-box;border:10px solid #fff;border-color:transparent transparent #fff #fff;-webkit-transform-origin:0 0;transform-origin:0 0;-webkit-transform:rotate(-135deg);transform:rotate(-135deg);box-shadow:-3px 3px 5px 0 rgba(0,0,0,.07)}.topCorner_2X{top:17px;right:58px;border-bottom-color:#fff}.topCorner_2X:after{content:\"\";position:absolute;width:0;height:0;left:45px;top:-16px;box-sizing:border-box;border:10px solid #fff;border-color:transparent transparent #fff #fff;-webkit-transform-origin:0 0;transform-origin:0 0;-webkit-transform:rotate(135deg);transform:rotate(135deg);box-shadow:-4px 3px 5px 0 rgba(0,0,0,.07)}.labelButton_2w:first-child,.labelButton_2w:first-child .text_A-:hover:first-child{border-radius:4px 4px 0 0}.labelButton_2w:last-child{border-radius:0 0 4px 4px}.labelButton_2w{height:66px;display:block;cursor:pointer;position:relative;z-index:1;max-height:66px}.labelButton_2w:hover{background-color:#f4f8fa;cursor:pointer}.labelButton_2w .title_yB{cursor:pointer}.labelButton_2w .text_A-{box-sizing:border-box;padding-left:80px;padding-right:0;line-height:20px;text-decoration:none;font-size:15px;vertical-align:middle;display:table-cell;height:66px;font-weight:400;color:#545d6b;cursor:pointer;width:310px}.labelButton_2w .text_A- .title_yB{cursor:pointer}.labelButton_2w .text_A-:hover{background-color:#f4f8fa;cursor:pointer}.labelButton_2w .text_A-:hover .title_yB{color:#2562c1}.labelButton_2w .text_A- .info_CT{font-size:12px;color:#a2adb9;display:block}.labelButton_2w .text_A- .info_CT:hover{cursor:pointer}.labelButton_2w a,.labelButton_2w jdiv{font-size:15px;font-family:Helvetica,Arial,sans-serif}.labelButton_2w .labelVk_1P{background:transparent url(\"data:image/svg+xml;charset=utf-8,%3Csvg width='30' height='17' viewBox='0 0 30 17' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M25.82 10.81c.994.972 2.045 1.888 2.937 2.959.395.476.768.967 1.053 1.519.405.785.039 1.65-.665 1.696l-4.37-.002c-1.127.094-2.027-.36-2.783-1.132-.605-.618-1.165-1.274-1.747-1.912a4.14 4.14 0 0 0-.786-.7c-.597-.388-1.115-.27-1.456.354-.347.633-.426 1.335-.46 2.041-.047 1.03-.358 1.302-1.392 1.349-2.209.104-4.306-.23-6.253-1.346-1.718-.984-3.05-2.373-4.208-3.946C3.433 8.63 1.705 5.264.15 1.806-1.802 1.026.058.608.916.593A118.46 118.46 0 0 1 5.195.591c.58.009.963.342 1.187.89.771 1.9 1.715 3.706 2.9 5.381.315.446.637.892 1.095 1.206.507.347.893.232 1.131-.333.152-.359.218-.745.252-1.129.113-1.32.128-2.64-.07-3.956-.122-.821-.584-1.353-1.403-1.508-.417-.08-.355-.235-.153-.474.352-.412.682-.668 1.34-.668h4.94c.777.154.95.503 1.057 1.287l.004 5.494c-.009.303.151 1.203.697 1.404.436.143.724-.207.986-.484 1.183-1.257 2.027-2.742 2.78-4.28.335-.677.623-1.379.902-2.08.207-.521.53-.778 1.117-.766l4.753.004c.141 0 .284.002.42.025.802.137 1.021.482.774 1.265-.39 1.23-1.149 2.253-1.89 3.282-.793 1.099-1.64 2.16-2.427 3.264-.722 1.01-.665 1.518.232 2.394z' fill='%23507299' fill-rule='evenodd'/%3E%3C/svg%3E\") 24px 50% no-repeat}.labelButton_2w .labelFb_3d{background:transparent url(\"data:image/svg+xml;charset=utf-8,%3Csvg width='26' height='26' viewBox='0 0 26 26' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M13 0C5.82 0 0 5.39 0 12.037c0 3.788 1.89 7.167 4.845 9.373V26l4.426-2.43c1.181.328 2.433.504 3.729.504 7.18 0 13-5.39 13-12.037C26 5.389 20.18 0 13 0zm1.292 16.21l-3.31-3.531-6.46 3.53 7.105-7.542 3.392 3.53 6.379-3.53-7.106 7.543z' fill='%230084FF' fill-rule='evenodd'/%3E%3C/svg%3E\") 27px 50% no-repeat}";
window.containerCSS = 'div#jivo-iframe-container *{max-height:100%}body#jivo_outer_body{height:100% !important}body#jivo_outer_body div#jivo-iframe-container.jivo-custom-label{z-index:2147483647 !important;-webkit-transition:all .3s cubic-bezier(.39, .24, .21, .99) !important;transition:all .3s cubic-bezier(.39, .24, .21, .99) !important;-webkit-animation-fill-mode:forwards !important}body.jivo-block-scroll{overflow:hidden}.jivo-mobile-widget{overflow:visible}.jivo-mobile-widget body{position:fixed !important;width:100% !important;height:100% !important;overflow:hidden;margin:0;bottom:0}.jivo-mobile-widget.jivo-mobile-overlay body:after{content:"";display:block;position:fixed;top:0;left:0;height:100% !important;width:100% !important;z-index:10;background-color:rgba(0,0,0,0.2)}div#jivo-iframe-container:not(.jivo-c-mobile){z-index:2147483647;-webkit-transition:all .3s cubic-bezier(.39, .24, .21, .99) !important;transition:all .3s cubic-bezier(.39, .24, .21, .99) !important;-webkit-animation-fill-mode:forwards !important;animation-fill-mode:forwards !important;position:fixed !important;transform:scale(1) !important;transform-origin:0 100%;font-size:0 !important;min-width:38px !important;max-width:100% !important;display:inline-block !important;overflow:visible !important;background:transparent !important;max-height:100% !important;min-height:0 !important;-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box;padding:0;margin:0;top:auto}div#jivo-iframe-container:not(.jivo-c-mobile) #jivo-action-container{display:block !important;position:static !important;left:0 !important;right:0 !important;bottom:0 !important;padding:0 !important;margin:0 !important;opacity:1 !important}div#jivo-iframe-container:not(.jivo-c-mobile).jivo-custom-label{transition:none !important}div#jivo-iframe-container:not(.jivo-c-mobile).jivo-custom-label.jivo-state-widget{display:none !important}div#jivo-iframe-container:not(.jivo-c-mobile).jivo-separate-window{bottom:0 !important;top:0 !important;right:0 !important;left:0 !important;width:100% !important;height:100% !important}div#jivo-iframe-container:not(.jivo-c-mobile).jivo_shadow.jivo-opening div#jivo-iframe-container:not(.jivo-c-mobile).jivo_shadow:after{height:100% !important}div#jivo-iframe-container:not(.jivo-c-mobile).jivo_shadow.jivo-state-widget div#jivo-iframe-container:not(.jivo-c-mobile).jivo_shadow.jivo-iframe-container-bottom:after,div#jivo-iframe-container:not(.jivo-c-mobile).jivo_shadow.jivo-state-widget div#jivo-iframe-container:not(.jivo-c-mobile).jivo_shadow.jivo-iframe-container-top:after{height:38px}div#jivo-iframe-container:not(.jivo-c-mobile).jivo_shadow:after{position:absolute !important;width:100%;bottom:0 !important;right:0 !important;border-radius:3px 30px 0 0 !important;content:" "}div#jivo-iframe-container:not(.jivo-c-mobile).jivo-expanded{overflow:visible !important}div#jivo-iframe-container:not(.jivo-c-mobile).jivo-expanded #jivo_close_button{opacity:1}div#jivo-iframe-container:not(.jivo-c-mobile).jivo-expanded:after{background:transparent;position:absolute !important;width:100% !important;bottom:0 !important;right:0 !important;border-radius:3px 30px 0 0 !important;content:" " !important;height:100% !important}div#jivo-iframe-container:not(.jivo-c-mobile) iframe body{overflow:hidden}div#jivo-iframe-container:not(.jivo-c-mobile).jivo-ie8{border-top-width:2px;border-left-width:2px;border-right-width:2px;border-bottom-width:0;border-style:solid}div#jivo-iframe-container:not(.jivo-c-mobile).jivo-ie8:after{display:none;border-width:0}.jivo-c-mobile{position:fixed !important;height:100% !important;width:100% !important;top:0 !important;left:0 !important;bottom:0 !important;right:0 !important;transition:none !important;margin:0 !important;padding:0 !important;z-index:2147483647 !important;transform:initial !important}html.jivo-site-full-block{position:fixed !important;height:100% !important;width:100% !important}html.jivo-site-full-block body{z-index:auto !important}html.jivo-site-full-block body:after{position:absolute;left:0;right:0;top:0;bottom:0;width:100% !important;height:100% !important;background-color:#fff;content:" ";z-index:2147483646 !important}iframe#jivo_container{z-index:2147483647 !important;position:relative !important;padding:0 !important;margin:auto !important;left:auto !important;right:auto !important;width:100% !important;height:100% !important;max-width:100% !important;min-width:100% !important;min-height:0 !important;max-height:100% !important;display:block !important;background:transparent !important;top:0 !important;bottom:0 !important;opacity:1;visibility:visible;-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none}div#jivo-iframe-container.jivo-iframe-container-bottom{right:30px;bottom:0;border-radius:3px 30px 0 0 !important;min-width:300px !important}div#jivo-iframe-container.jivo-iframe-container-bottom.jivo_shadow.jivo-expanded:after,div#jivo-iframe-container.jivo-iframe-container-bottom.jivo_shadow.jivo-state-widget:after{height:38px;-webkit-box-shadow:0 12px 25px 8px rgba(0,0,0,0.17);-moz-box-shadow:0 12px 25px 8px rgba(0,0,0,0.17);box-shadow:0 12px 25px 8px rgba(0,0,0,0.17)}div#jivo-iframe-container.jivo-iframe-container-bottom.jivo_shadow:after{height:100%;-webkit-box-shadow:0 12px 25px 8px rgba(0,0,0,0.17);-moz-box-shadow:0 12px 25px 8px rgba(0,0,0,0.17);box-shadow:0 12px 25px 8px rgba(0,0,0,0.17)}div#jivo-iframe-container.jivo-iframe-container-bottom.jivo-expanded{bottom:0}div#jivo-iframe-container.jivo-iframe-container-bottom.jivo-ie8{min-width:0 !important;width:300px}div#jivo-iframe-container.jivo-iframe-container-bottom.jivo-ie8.jivo-state-widget-expanded{border-top-width:0;border-left-width:0;border-right-width:0;border-bottom-width:0}div#jivo-iframe-container.jivo-iframe-container-bottom.jivo-wp{bottom:5px !important}div#jivo-iframe-container.jivo-iframe-container-left{left:-48px;bottom:10px}div#jivo-iframe-container.jivo-iframe-container-left.jivo-collapsed{min-height:124px}div#jivo-iframe-container.jivo-iframe-container-left.jivo-state-widget{border-radius:0 30px 3px 0 !important}div#jivo-iframe-container.jivo-iframe-container-left.jivo_shadow.jivo-state-widget:after{width:38px;height:100%}div#jivo-iframe-container.jivo-iframe-container-left.jivo_shadow.jivo-expanded:after{width:100%}div#jivo-iframe-container.jivo-iframe-container-left.jivo_shadow.jivo-collapsed:after{width:38px;height:100%}div#jivo-iframe-container.jivo-iframe-container-left.jivo_shadow:after{border-radius:0 30px 3px 0 !important;right:auto !important;left:0 !important;-webkit-box-shadow:0 12px 25px 8px rgba(0,0,0,0.17);-moz-box-shadow:0 12px 25px 8px rgba(0,0,0,0.17);box-shadow:0 12px 25px 8px rgba(0,0,0,0.17)}div#jivo-iframe-container.jivo-iframe-container-left.jivo_shadow.jivo-opening:after,div#jivo-iframe-container.jivo-iframe-container-left.jivo_shadow.jivo-closing:after{-webkit-box-shadow:none !important;-moz-box-shadow:none !important;box-shadow:none !important}div#jivo-iframe-container.jivo-iframe-container-left.jivo-expanded{left:0}div#jivo-iframe-container.jivo-iframe-container-right{right:-48px;bottom:10px}div#jivo-iframe-container.jivo-iframe-container-right.jivo-collapsed{min-height:124px}div#jivo-iframe-container.jivo-iframe-container-right.jivo-state-widget{border-radius:30px 0 0 3px !important}div#jivo-iframe-container.jivo-iframe-container-right.jivo_shadow.jivo-expanded:after{border-radius:3px 30px 0 3px !important;width:100%;visibility:visible}div#jivo-iframe-container.jivo-iframe-container-right.jivo_shadow:after{top:1px;border-radius:30px 0 0 3px !important;width:38px !important;height:99% !important;-webkit-box-shadow:0 12px 25px 8px rgba(0,0,0,0.17);-moz-box-shadow:0 12px 25px 8px rgba(0,0,0,0.17);box-shadow:0 12px 25px 8px rgba(0,0,0,0.17)}div#jivo-iframe-container.jivo-iframe-container-right.jivo-opening:after,div#jivo-iframe-container.jivo-iframe-container-right.jivo-closing:after{-webkit-box-shadow:none !important;-moz-box-shadow:none !important;box-shadow:none !important}div#jivo-iframe-container.jivo-iframe-container-right.jivo-expanded{right:0}div#jivo-iframe-container.jivo-iframe-container-top{right:30px;min-width:300px !important}div#jivo-iframe-container.jivo-iframe-container-top.jivo-cbenabled{min-width:300px !important}div#jivo-iframe-container.jivo-iframe-container-top.jivo_shadow.jivo-expanded:after{border-radius:0 30px 3px 0 !important}div#jivo-iframe-container.jivo-iframe-container-top.jivo_shadow.jivo-opening:after{border-radius:3px 30px 0 0 !important}div#jivo-iframe-container.jivo-iframe-container-top.jivo_shadow.jivo-closing:after{border-radius:0 0 3px 30px !important}div#jivo-iframe-container.jivo-iframe-container-top.jivo_shadow:after{top:0 !important;border-radius:0 0 3px 30px !important;-webkit-box-shadow:0 0 25px 8px rgba(0,0,0,0.17);-moz-box-shadow:0 0 25px 8px rgba(0,0,0,0.17);box-shadow:0 0 25px 8px rgba(0,0,0,0.17);height:38px}div#jivo-iframe-container.jivo-iframe-container-top.jivo-expanded{top:0}div#jivo-iframe-container.jivo-iframe-container-topdiv.jivo-resizing{top:auto}div#jivo-iframe-container.jivo-no-transition{transition:none !important}div#jivo_action{position:absolute !important;top:0 !important;bottom:0 !important;left:-10px !important;right:0 !important;display:block;overflow:visible;max-height:initial !important;-webkit-touch-callout:none !important;user-select:none !important;-webkit-user-select:none !important;-moz-user-select:none !important;-ms-user-select:none !important;direction:ltr !important}div#jivo_action:hover{opacity:.9 !important}div.jivo-visible{left:-25px !important;display:block !important}div#jivo_close_button{margin-top:0 !important;margin-left:-20px !important;width:23px !important;height:23px !important;cursor:pointer !important;overflow:visible !important;opacity:0;-webkit-transition:all .3s cubic-bezier(.39, .24, .21, .99) !important;transition:all .3s cubic-bezier(.39, .24, .21, .99) !important;transition-delay:.3s}div#jivo_close_button.jivo-tablet{width:34px !important;height:34px !important}div#jivo_close_button.jivo-tablet svg{width:34px !important;height:34px !important;left:-10px !important;max-height:initial}div#jivo_close_button svg{width:23px !important;height:23px !important;position:relative !important;top:0 !important;left:0 !important;margin:0 !important;padding:0;display:block !important;opacity:1;visibility:visible !important}div#jivo-mouse-tracker{position:fixed !important;width:auto !important;height:auto !important;max-height:initial !important;z-index:2147483647 !important;left:-300px !important;right:-300px !important;top:-200px !important;bottom:0 !important;display:block;background-color:transparent !important;opacity:0 !important;-webkit-touch-callout:none !important;-webkit-user-select:none !important;-khtml-user-select:none !important;-moz-user-select:none !important;-ms-user-select:none !important;-o-user-select:none !important;user-select:none !important;transform:initial !important}div#jivo-drag-handle{position:absolute !important;top:0 !important;left:0 !important;width:79% !important;height:70px !important;background-color:transparent !important;z-index:2147483647 !important;cursor:move !important;-webkit-touch-callout:none !important;-webkit-user-select:none !important;-khtml-user-select:none !important;-moz-user-select:none !important;-ms-user-select:none !important;-o-user-select:none !important;user-select:none !important}#jivo_magic_iframe{width:100%;height:100%;position:fixed;margin:0;padding:0;left:0;top:0;border:0;z-index:200000;background-color:white;-webkit-overflow-scrolling:touch;overflow:auto;filter:none}.jivo-frame-visible{display:block;visibility:visible}.jivo-frame-hidden{display:block;visibility:hidden;width:100%;height:100%;position:absolute;left:-10000px;top:-10000px}.jivo_cobrowsing_element{border:8px solid #c8f70c;-webkit-border-radius:10px;-khtml-border-radius:10px;-moz-border-radius:10px;-ms-border-radius:10px;-o-border-radius:10px;border-radius:10px;behavior:url(corners.htc);box-shadow:0 3px 11px rgba(0,0,0,0.2);-webkit-box-shadow:0 3px 11px rgba(0,0,0,0.2);position:absolute;z-index:199998;pointer-events:none;margin-top:-10px;min-height:auto !important}.jivo_cobrowsing_element .jivo_cobrowsing_element_inner{width:100%;height:100%;background-color:rgba(200,247,12,0.15)}.jivo_cobrowsing_tooltip{position:absolute;width:300px;z-index:199999;min-height:auto !important}.jivo_cobrowsing_tooltip #jivo_action{height:15px !important;z-index:auto}.jivo_cobrowsing_tooltip #jivo_action #jivo_close_button{margin-left:25px}.jivo_cobrowsing_tooltip>div{font-family:"Arial",sans-serif;font-size:13px;background-color:#3cb868;color:#fff;padding:10px;border:0;-webkit-border-radius:15px;-moz-border-radius:15px;border-radius:15px}.jivo_cobrowsing_tooltip>div:after{width:0;height:0;position:absolute;content:" ";border-left:9px solid transparent;border-right:9px solid transparent;border-top:9px solid #3cb868;left:50%;bottom:-9px;margin-left:-9px}.jivo_cobrowsing_tooltip>div.jivo-top:after{border-top-color:transparent;border-bottom:9px solid #3cb868;top:-17px;bottom:auto}.jivo_cobrowsing_tooltip>div.jivo-top.jivo-left #jivo_action{right:-45px !important;left:initial}.jivo_cobrowsing_tooltip>div.jivo-left #jivo_action{right:-25px !important;left:initial}.jivo_cobrowsing_tooltip>div.jivo-left:after{left:20px;margin:0}.jivo_cobrowsing_tooltip>div.jivo-right:after{right:20px;left:auto;margin:0}.jivo_cobrowsing_tooltip>div .jivo_cobrowsing_tooltip_agent{font-weight:bold;padding-bottom:2px}.jivo_cobrowsing_tooltip>div .jivo_cobrowsing_tooltip_text{overflow:hidden;word-wrap:break-word}#jivo_copyright{position:fixed;display:none;font-family:"Helvetica","Arial",sans-serif;font-weight:normal;font-size:12px;line-height:14px;cursor:pointer;background-color:#414243;color:#fff;padding:11px 15px;min-height:18px !important;z-index:2147483647;-webkit-font-smoothing:antialiased;-moz-font-smoothing:antialiased;font-smoothing:antialiased;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}#jivo_copyright a{text-decoration:none;color:#54d181}#jivo_copyright #jivosite-copyright{display:inline-block;width:51px;height:18px;margin:0 0 -4px 5px}#jivo_copyright #jivosite-copyright.jivo-light{background-image:url("data:image/svg+xml,%3Csvg%20width%3D%2249%22%20height%3D%2218%22%20viewBox%3D%220%200%2049%2018%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cg%20fill%3D%22none%22%20fill-rule%3D%22evenodd%22%3E%3Cpath%20d%3D%22M7.35%206.347h-.942c-.095%200-.19%200-.283.095-.094.095-.094.19-.094.284v7.01c0%20.096%200%20.19.095.285.094.096.188.096.283.096h.942c.094%200%20.188%200%20.283-.095.094-.094.094-.188.094-.283v-7.01c0-.095%200-.19-.094-.285-.095%200-.19-.095-.283-.095zm8.67%200h-.755c-.282%200-.47.095-.565.19l-2.167%204.737-2.073-4.737c-.095-.19-.19-.19-.377-.19H9.046c-.188%200-.283%200-.283.095-.094.095-.094.19%200%20.284l3.393%207.295c.094.096.188.19.377.19h.094c.188%200%20.283-.094.283-.19l3.392-7.294c.094-.094.094-.19%200-.284%200%200-.094-.095-.283-.095zm4.617-.19c-1.13%200-2.074.38-2.827%201.232-.754.757-1.225%201.705-1.225%202.842%200%201.136.377%202.084%201.225%202.842.753.852%201.696%201.23%202.827%201.23%201.13%200%202.073-.378%202.826-1.23.754-.853%201.13-1.8%201.13-2.842%200-1.137-.376-2.085-1.224-2.843-.755-.758-1.697-1.232-2.733-1.232zm1.6%205.875c-.47.473-1.035.757-1.695.757-.66%200-1.225-.19-1.696-.664-.47-.473-.66-1.042-.66-1.8%200-.663.19-1.326.66-1.705.47-.473%201.037-.662%201.696-.662.66%200%201.225.19%201.696.663.472.475.66%201.043.66%201.706s-.188%201.232-.66%201.706zm8.01-1.61c-.282-.19-.564-.38-.753-.475-.282-.094-.565-.284-1.036-.473-.47-.19-.754-.38-1.037-.57-.187-.188-.376-.378-.376-.567%200-.19.094-.38.283-.474.188-.095.377-.19.754-.19.566%200%201.037.095%201.697.38.283.094.377.094.47-.19l.284-.568c.095-.19.095-.38-.188-.57-.565-.378-1.32-.567-2.26-.567-.85%200-1.51.19-1.98.663-.47.475-.66.948-.66%201.517%200%20.568.19%201.042.566%201.42.377.38.848.664%201.602%201.043.565.284%201.036.474%201.32.663.282.19.376.38.376.663%200%20.19-.094.38-.283.57-.188.093-.47.188-.754.188-.566%200-1.226-.19-1.98-.568-.282-.095-.377-.095-.47.095l-.378.758c-.094.19%200%20.285.095.38.753.568%201.6.757%202.544.757.85%200%201.508-.19%202.074-.663.47-.474.754-.947.754-1.61%200-.38-.095-.664-.19-.948%200-.19-.187-.473-.47-.663zm3.393-4.075h-.942c-.094%200-.188%200-.283.095-.094.095-.094.19-.094.284v7.01c0%20.096%200%20.19.095.285.095.096.19.096.283.096h.942c.095%200%20.19%200%20.283-.095.094-.094.094-.188.094-.283v-7.01c0-.095%200-.19-.094-.285-.094%200-.188-.095-.283-.095zm6.785%206.158c-.094-.19-.283-.284-.47-.19-.378.285-.85.38-1.226.38a.718.718%200%200%201-.472-.19c-.095-.094-.19-.284-.19-.663V7.674h2.074c.095%200%20.19%200%20.283-.095.094%200%20.094-.096.094-.19v-.664c0-.094%200-.19-.095-.284-.094-.095-.188-.095-.283-.095H38.07v-2.18c0-.093%200-.188-.095-.283-.094%200-.094-.095-.283-.095h-.942c-.094%200-.188%200-.283.094-.094.095-.094.19-.094.284v2.18h-.942c-.282%200-.376.094-.376.378v.663c0%20.094%200%20.19.094.284.094.094.19.094.283.094h.943v4.264c0%20.757.19%201.326.47%201.705.284.38.85.568%201.51.568.376%200%20.847-.094%201.224-.19.377-.094.754-.283.942-.378.188-.095.282-.284.188-.474l-.283-.758zm7.35-5.305c-.66-.663-1.508-1.042-2.544-1.042-1.13%200-2.072.38-2.826%201.23-.754.76-1.13%201.707-1.13%202.844%200%201.136.376%202.084%201.13%202.936.754.758%201.696%201.137%202.827%201.137%201.226%200%202.168-.284%202.922-.947.188-.19.188-.38%200-.57l-.47-.662c-.095-.19-.284-.19-.472%200-.66.474-1.225.663-1.885.663-.66%200-1.225-.19-1.696-.664-.472-.473-.66-.947-.66-1.515h5.37c.19%200%20.377-.094.377-.378v-.57c.095-.946-.282-1.8-.942-2.462zm-4.712%202.18c.095-.475.283-.948.66-1.233.377-.38.848-.473%201.414-.473.565%200%201.036.19%201.32.473.376.38.564.758.564%201.232h-3.957zM3.77%206.346H1.13c-.093%200-.188%200-.282.095-.094.095-.094.19-.094.284v.948c0%20.094%200%20.19.094.284.094.095.19.095.283.095h1.32v6.82c0%20.664-.565%201.232-1.225%201.232H1.13c-.093%200-.188%200-.282.095-.094.095-.094.19-.094.284v.948c0%20.094%200%20.19.094.284.094.095.19.095.283.095h.095c1.602%200%202.92-1.326%202.92-2.842V6.82c0-.094%200-.188-.093-.283-.094-.095-.094-.19-.283-.19z%22%20fill%3D%22%23FFF%22%2F%3E%3Cpath%20d%3D%22M4.146%205.78C3.958.946.754.757.754.757c-.19%204.358%203.392%205.02%203.392%205.02z%22%20fill%3D%22%2344BB6E%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E");background-repeat:no-repeat}#jivo_copyright #jivosite-copyright.jivo-light.jivo-en{width:58px;background-image:url("data:image/svg+xml,%3Csvg%20width%3D%2255%22%20height%3D%2218%22%20viewBox%3D%220%200%2055%2018%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cg%20fill%3D%22none%22%20fill-rule%3D%22evenodd%22%3E%3Cpath%20d%3D%22M3.5%206H.8c-.1%200-.2%200-.3.1%200%20.1-.1.1-.1.2v1c0%20.1%200%20.2.1.3.1.1.2.1.3.1h1.4v7.2c0%20.7-.6%201.3-1.2%201.3H.8c-.1%200-.2%200-.3.1-.1.1-.1.2-.1.3v1c0%20.1%200%20.2.1.3.1.1.2.1.3.1h.1c1.6%200%202.9-1.4%202.9-3V6.3c0-.1%200-.2-.1-.3h-.2zM7%206H6c-.1%200-.1%200-.2.1s-.1.1-.1.2v7.4c0%20.1%200%20.2.1.3.1.1.2.1.3.1H7c.1%200%20.2%200%20.3-.1.1-.1.1-.2.1-.3V6.3c0-.1%200-.2-.1-.3H7zm8.6%200h-.8c-.3%200-.5.1-.5.2l-2.2%205-2.1-5c0-.2-.2-.2-.3-.2h-1c-.2%200-.3%200-.3.1-.1.1-.1.2%200%20.3l3.4%207.7c.1.1.2.2.3.2h.1c.1%200%20.3-.1.3-.2l3.4-7.7c.1-.1.1-.2%200-.3-.1-.1-.2-.1-.3-.1zm4.6-.2c-1.1%200-2%20.4-2.8%201.3-.8.8-1.2%201.8-1.2%203s.4%202.2%201.2%203c.8.9%201.7%201.3%202.8%201.3%201.1%200%202-.4%202.8-1.3.8-.9%201.2-1.9%201.2-3%200-1.2-.4-2.2-1.2-3-.8-.9-1.8-1.3-2.8-1.3zm1.6%206.1c-.4.5-1%20.8-1.6.8-.7%200-1.2-.2-1.7-.7-.4-.5-.7-1.1-.7-1.9%200-.7.2-1.4.7-1.8.4-.5%201-.7%201.7-.7s1.2.2%201.6.7c.4.5.7%201.1.7%201.8s-.3%201.3-.7%201.8zm9.6-.3c-.2-.2-.4-.1-.5%200l-.2.2-.3.3c-.1.1-.2.1-.3.2-.1.1-.3.2-.4.2-.2%200-.3.1-.5.1-.7%200-1.2-.3-1.6-.8-.4-.5-.7-1.1-.7-1.9%200-.7.2-1.4.7-1.9.5-.5%201-.7%201.7-.7.6%200%201.1.3%201.6.8.2.2.4.2.5.1l.6-.6s0-.2-.2-.4c-.7-.9-1.7-1.4-2.8-1.4-1.1%200-2%20.4-2.8%201.3-.8.8-1.2%201.8-1.2%203s.4%202.2%201.2%203.1c.8.8%201.7%201.2%202.8%201.2%201.3%200%202.3-.6%203-1.7.1-.2.1-.4-.1-.6l-.5-.5zm5.8-5.8c-.8%200-1.5.3-2.3.9V2.5c0-.1%200-.2-.1-.3-.1-.1-.2-.1-.3-.1h-.9c-.1%200-.2%200-.3.1-.1.1-.1.2-.1.3v11.3c0%20.1%200%20.2.1.3.1.1.2.1.3.1h.9c.3%200%20.4-.1.4-.4V8.7c.1-.3.4-.5.7-.8.4-.3.9-.4%201.4-.4.5%200%20.9.2%201.2.6.3.4.4.9.4%201.6v4.2c0%20.1%200%20.2.1.3.1.1.2.1.3.1h.9c.1%200%20.2%200%20.3-.1.1-.1.1-.2.1-.3V9.8c-.1-2.7-1.1-4-3.1-4zm10.1%201c-.2-.4-.5-.6-.8-.8-.4-.2-.9-.3-1.5-.3-1%200-1.9.2-2.7.5-.2.1-.3.2-.3.5l.2.7c.1.3.2.4.4.3.8-.3%201.6-.4%202.2-.4.5%200%20.8.1%201%20.4.2.3.3.8.2%201.4l-.2-.1c-.1%200-.3-.1-.6-.1-.2.1-.4.1-.7.1-1%200-1.7.2-2.3.7-.6.5-.8%201.1-.8%201.9%200%20.8.2%201.5.7%202%20.5.5%201.1.7%201.8.7.9%200%201.7-.3%202.4-1l.2.6c.1.2.2.3.3.3h.6c.1%200%20.2%200%20.3-.1.1-.1.1-.2.1-.3V9.4c0-.6%200-1.1-.1-1.5-.1-.3-.2-.7-.4-1.1zm-1.2%205.1c-.1.2-.4.5-.7.7-.4.2-.7.3-1.1.3-.4%200-.7-.1-.9-.4-.2-.2-.3-.6-.3-.9%200-.4.1-.7.4-1%20.3-.2.7-.4%201.2-.4.3%200%20.6%200%20.9.1.3.1.5.1.5.2v1.4zm8.3%201.4l-.3-.8c-.1-.2-.2-.3-.5-.2-.4.3-.8.4-1.2.4-.2%200-.4-.1-.5-.2-.1-.1-.2-.3-.2-.7V7.5h2.1c.1%200%20.2%200%20.3-.1.1-.1.1-.2.1-.3v-.8c0-.1%200-.2-.1-.3h-2.4V3.7c0-.1%200-.2-.1-.3-.1-.1-.2-.1-.3-.1h-1c-.1%200-.2%200-.3.1-.1.1-.1.2-.1.3V6H49c-.2%200-.4.1-.4.4v.7c0%20.1%200%20.2.1.3.1.1.2.1.3.1h.9V12c0%20.8.1%201.4.4%201.8.3.4.8.6%201.5.6.4%200%20.8-.1%201.2-.2.4-.1.7-.3.9-.4.5-.1.6-.3.5-.5z%22%20fill%3D%22%23FFF%22%2F%3E%3Cpath%20d%3D%22M3.8%205.4C3.6.2.4%200%20.4%200%20.2%204.7%203.8%205.4%203.8%205.4z%22%20fill%3D%22%2344BB6E%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E")}#jivo_copyright #jivosite-copyright.jivo-dark{background:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2249%22%20height%3D%2218%22%3E%3Cpath%20d%3D%22M7.35%206.347h-.942c-.095%200-.19%200-.283.095-.094.095-.094.19-.094.284v7.01c0%20.096%200%20.19.095.285.094.096.188.096.283.096h.942c.094%200%20.188%200%20.283-.095.094-.094.094-.188.094-.283v-7.01c0-.095%200-.19-.094-.285-.095%200-.19-.095-.283-.095m8.67%200h-.755c-.282%200-.47.095-.565.19l-2.167%204.737-2.073-4.737c-.095-.19-.19-.19-.377-.19H9.046c-.188%200-.283%200-.283.095-.094.095-.094.19%200%20.284l3.393%207.295c.094.096.188.19.377.19h.094c.188%200%20.283-.094.283-.19l3.392-7.294c.094-.094.094-.19%200-.284%200%200-.094-.095-.283-.095m4.617-.19c-1.13%200-2.073.38-2.827%201.232-.754.757-1.225%201.705-1.225%202.842%200%201.136.377%202.084%201.225%202.842.754.852%201.696%201.23%202.827%201.23%201.13%200%202.073-.378%202.827-1.23.753-.853%201.13-1.8%201.13-2.842%200-1.137-.377-2.085-1.225-2.843-.755-.758-1.697-1.232-2.733-1.232m1.602%205.874c-.473.473-1.038.758-1.698.758s-1.225-.19-1.696-.664c-.47-.473-.66-1.042-.66-1.8%200-.663.19-1.326.66-1.705.47-.473%201.037-.662%201.696-.662s1.225.19%201.696.663c.472.475.66%201.043.66%201.706s-.188%201.232-.66%201.706m8.01-1.61c-.283-.19-.565-.38-.754-.475-.283-.094-.565-.284-1.036-.473-.47-.19-.754-.38-1.037-.57-.187-.188-.376-.378-.376-.567%200-.19.094-.38.283-.474.188-.095.377-.19.754-.19.566%200%201.037.095%201.697.38.283.094.377.094.47-.19l.284-.568c.095-.19.095-.38-.188-.57-.565-.378-1.32-.567-2.26-.567-.85%200-1.51.19-1.98.663-.47.475-.66.948-.66%201.517%200%20.568.19%201.042.566%201.42.377.38.848.664%201.602%201.043.565.284%201.036.474%201.32.663.28.19.376.38.376.663%200%20.19-.095.38-.283.57-.188.094-.47.188-.754.188-.566%200-1.226-.19-1.98-.568-.282-.095-.377-.095-.47.095l-.378.758c-.094.19%200%20.285.094.38.754.568%201.602.757%202.545.757.85%200%201.508-.19%202.074-.663.47-.474.754-.947.754-1.61%200-.38-.095-.664-.19-.948%200-.19-.187-.474-.47-.663m3.392-4.073h-.942c-.094%200-.188%200-.283.095-.094.095-.094.19-.094.284v7.01c0%20.096%200%20.19.095.285.095.096.19.096.283.096h.942c.095%200%20.19%200%20.283-.095.094-.094.094-.188.094-.283v-7.01c0-.095%200-.19-.094-.285-.094%200-.188-.095-.283-.095m6.785%206.158c-.094-.19-.283-.284-.47-.19-.378.285-.85.38-1.226.38a.718.718%200%200%201-.472-.19c-.095-.094-.19-.284-.19-.663V7.674h2.074c.094%200%20.19%200%20.283-.095.094%200%20.094-.096.094-.19v-.664c0-.094%200-.19-.095-.284-.094-.095-.19-.095-.283-.095H38.07v-2.18c0-.093%200-.188-.095-.283-.094%200-.094-.095-.283-.095h-.942c-.094%200-.189%200-.283.094s-.094.19-.094.284v2.18h-.942c-.282%200-.376.094-.376.378v.663c0%20.094%200%20.19.094.284.094.094.188.094.283.094h.943v4.264c0%20.757.188%201.326.47%201.705.284.38.85.568%201.51.568.376%200%20.847-.095%201.224-.19.377-.094.754-.283.942-.378.188-.095.282-.284.188-.474l-.283-.758m7.35-5.305c-.66-.663-1.508-1.042-2.544-1.042-1.13%200-2.072.38-2.826%201.23-.754.76-1.13%201.707-1.13%202.844%200%201.136.376%202.084%201.13%202.936.754.758%201.696%201.137%202.827%201.137%201.226%200%202.168-.284%202.922-.947.188-.19.188-.38%200-.568l-.47-.664c-.095-.19-.284-.19-.472%200-.66.474-1.225.664-1.885.664s-1.225-.19-1.696-.664c-.472-.473-.66-.947-.66-1.515h5.37c.19%200%20.377-.094.377-.378v-.57c.095-.946-.282-1.8-.942-2.462m-4.71%202.18c.093-.475.28-.948.658-1.233.377-.38.848-.473%201.414-.473.565%200%201.036.19%201.32.473.376.38.564.758.564%201.232h-3.957M3.77%206.346H1.13c-.093%200-.188%200-.282.095-.094.095-.094.19-.094.284v.948c0%20.094%200%20.19.094.284.094.095.19.095.283.095h1.32v6.82c0%20.664-.565%201.232-1.225%201.232H1.13c-.093%200-.188%200-.282.095-.094.095-.094.19-.094.284v.948c0%20.094%200%20.19.094.284.094.094.19.094.283.094h.095c1.602%200%202.92-1.326%202.92-2.842V6.82c0-.094%200-.188-.093-.283-.094-.095-.094-.19-.283-.19z%22%20fill-rule%3D%22evenodd%22%20fill%3D%22%233e414f%22%2F%3E%3Cpath%20d%3D%22M4.146%205.78C3.958.946.754.757.754.757c-.19%204.358%203.392%205.02%203.392%205.02z%22%20fill-rule%3D%22evenodd%22%20fill%3D%22%2344bb6e%22%2F%3E%3C%2Fsvg%3E");background-repeat:no-repeat}#jivo_copyright #jivosite-copyright.jivo-dark.jivo-en{width:58px;background-image:url("data:image/svg+xml,%3Csvg%20width%3D%2255%22%20height%3D%2218%22%20viewBox%3D%220%200%2055%2018%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cg%20fill%3D%22none%22%20fill-rule%3D%22evenodd%22%3E%3Cpath%20d%3D%22M3.5%206H.8c-.1%200-.2%200-.3.1%200%20.1-.1.1-.1.2v1c0%20.1%200%20.2.1.3.1.1.2.1.3.1h1.4v7.2c0%20.7-.6%201.3-1.2%201.3H.8c-.1%200-.2%200-.3.1-.1.1-.1.2-.1.3v1c0%20.1%200%20.2.1.3.1.1.2.1.3.1h.1c1.6%200%202.9-1.4%202.9-3V6.3c0-.1%200-.2-.1-.3h-.2zM7%206H6c-.1%200-.1%200-.2.1s-.1.1-.1.2v7.4c0%20.1%200%20.2.1.3.1.1.2.1.3.1H7c.1%200%20.2%200%20.3-.1.1-.1.1-.2.1-.3V6.3c0-.1%200-.2-.1-.3H7zm8.6%200h-.8c-.3%200-.5.1-.5.2l-2.2%205-2.1-5c0-.2-.2-.2-.3-.2h-1c-.2%200-.3%200-.3.1-.1.1-.1.2%200%20.3l3.4%207.7c.1.1.2.2.3.2h.1c.1%200%20.3-.1.3-.2l3.4-7.7c.1-.1.1-.2%200-.3-.1-.1-.2-.1-.3-.1zm4.6-.2c-1.1%200-2%20.4-2.8%201.3-.8.8-1.2%201.8-1.2%203s.4%202.2%201.2%203c.8.9%201.7%201.3%202.8%201.3%201.1%200%202-.4%202.8-1.3.8-.9%201.2-1.9%201.2-3%200-1.2-.4-2.2-1.2-3-.8-.9-1.8-1.3-2.8-1.3zm1.6%206.1c-.4.5-1%20.8-1.6.8-.7%200-1.2-.2-1.7-.7-.4-.5-.7-1.1-.7-1.9%200-.7.2-1.4.7-1.8.4-.5%201-.7%201.7-.7s1.2.2%201.6.7c.4.5.7%201.1.7%201.8s-.3%201.3-.7%201.8zm9.6-.3c-.2-.2-.4-.1-.5%200l-.2.2-.3.3c-.1.1-.2.1-.3.2-.1.1-.3.2-.4.2-.2%200-.3.1-.5.1-.7%200-1.2-.3-1.6-.8-.4-.5-.7-1.1-.7-1.9%200-.7.2-1.4.7-1.9.5-.5%201-.7%201.7-.7.6%200%201.1.3%201.6.8.2.2.4.2.5.1l.6-.6s0-.2-.2-.4c-.7-.9-1.7-1.4-2.8-1.4-1.1%200-2%20.4-2.8%201.3-.8.8-1.2%201.8-1.2%203s.4%202.2%201.2%203.1c.8.8%201.7%201.2%202.8%201.2%201.3%200%202.3-.6%203-1.7.1-.2.1-.4-.1-.6l-.5-.5zm5.8-5.8c-.8%200-1.5.3-2.3.9V2.5c0-.1%200-.2-.1-.3-.1-.1-.2-.1-.3-.1h-.9c-.1%200-.2%200-.3.1-.1.1-.1.2-.1.3v11.3c0%20.1%200%20.2.1.3.1.1.2.1.3.1h.9c.3%200%20.4-.1.4-.4V8.7c.1-.3.4-.5.7-.8.4-.3.9-.4%201.4-.4.5%200%20.9.2%201.2.6.3.4.4.9.4%201.6v4.2c0%20.1%200%20.2.1.3.1.1.2.1.3.1h.9c.1%200%20.2%200%20.3-.1.1-.1.1-.2.1-.3V9.8c-.1-2.7-1.1-4-3.1-4zm10.1%201c-.2-.4-.5-.6-.8-.8-.4-.2-.9-.3-1.5-.3-1%200-1.9.2-2.7.5-.2.1-.3.2-.3.5l.2.7c.1.3.2.4.4.3.8-.3%201.6-.4%202.2-.4.5%200%20.8.1%201%20.4.2.3.3.8.2%201.4l-.2-.1c-.1%200-.3-.1-.6-.1-.2.1-.4.1-.7.1-1%200-1.7.2-2.3.7-.6.5-.8%201.1-.8%201.9%200%20.8.2%201.5.7%202%20.5.5%201.1.7%201.8.7.9%200%201.7-.3%202.4-1l.2.6c.1.2.2.3.3.3h.6c.1%200%20.2%200%20.3-.1.1-.1.1-.2.1-.3V9.4c0-.6%200-1.1-.1-1.5-.1-.3-.2-.7-.4-1.1zm-1.2%205.1c-.1.2-.4.5-.7.7-.4.2-.7.3-1.1.3-.4%200-.7-.1-.9-.4-.2-.2-.3-.6-.3-.9%200-.4.1-.7.4-1%20.3-.2.7-.4%201.2-.4.3%200%20.6%200%20.9.1.3.1.5.1.5.2v1.4zm8.3%201.4l-.3-.8c-.1-.2-.2-.3-.5-.2-.4.3-.8.4-1.2.4-.2%200-.4-.1-.5-.2-.1-.1-.2-.3-.2-.7V7.5h2.1c.1%200%20.2%200%20.3-.1.1-.1.1-.2.1-.3v-.8c0-.1%200-.2-.1-.3h-2.4V3.7c0-.1%200-.2-.1-.3-.1-.1-.2-.1-.3-.1h-1c-.1%200-.2%200-.3.1-.1.1-.1.2-.1.3V6H49c-.2%200-.4.1-.4.4v.7c0%20.1%200%20.2.1.3.1.1.2.1.3.1h.9V12c0%20.8.1%201.4.4%201.8.3.4.8.6%201.5.6.4%200%20.8-.1%201.2-.2.4-.1.7-.3.9-.4.5-.1.6-.3.5-.5z%22%20fill%3D%22%233E414F%22%2F%3E%3Cpath%20d%3D%22M3.8%205.4C3.6.2.4%200%20.4%200%20.2%204.7%203.8%205.4%203.8%205.4z%22%20fill%3D%22%2344BB6E%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E")}#jivo_copyright #jivo_copyright_corner{position:absolute;width:0;height:0}#jivo_copyright #jivo_copyright_corner.jivo-top{top:-5px;left:10px;border-left:5px solid transparent;border-right:5px solid transparent;border-bottom:5px solid #414243}#jivo_copyright #jivo_copyright_corner.jivo-bottom{bottom:-5px;right:10px;border-left:5px solid transparent;border-right:5px solid transparent;border-top:5px solid #414243}#jivo_copyright #jivo_copyright_corner.jivo-left{top:50%;left:-5px;margin-top:-3px;border-top:5px solid transparent;border-bottom:5px solid transparent;border-right:5px solid #414243}#jivo_copyright #jivo_copyright_corner.jivo-right{top:50%;right:-5px;margin-top:-3px;border-top:5px solid transparent;border-bottom:5px solid transparent;border-left:5px solid #414243}';
! function() {
    function e() {
        var e = window.containerCSS + window.modularCSS,
            t = window.parent.document,
            n = t.getElementById("jivo-iframe-container"),
            i = t.createElement("style");
        i.type = "text/css", i.styleSheet ? i.styleSheet.cssText = e : i.appendChild(t.createTextNode(e)), n.appendChild(i)
    }
    window.parent.__jivoBundleInit(window), e()
}();
window.base_langpack = {
    "byYandex": "G5@57 /=45:A",
    "cancel": "B<5=0",
    "continue": "@>4>;68BL",
    "cw_callAfter": "5@572>=8< 20< G5@57",
    "cw_callButtonText": "5@572>=8B5 <=5",
    "cw_call_to": "2>=>: =0",
    "cw_code_restrict": " A>60;5=8N, <K =5 <>65< ?>72>=8BL =0 MB>B =><5@",
    "cw_connecting": "!>548=O5<...",
    "cw_enterPhonePlaceholder": "2548B5 20H B5;5D>=",
    "cw_errInfoText": ">?@>1C9B5 ?>72>=8BL 5I5 @07, 8;8 =0?8H8B5 =0< 2 G0B.",
    "cw_form_second": "A5:C=4C",
    "cw_form_secondd": "A5:C=4",
    "cw_form_seconds": "A5:C=4K",
    "cw_pickUpPhone": ">7L<8B5 B@C1:C",
    "cw_rate_limit": "K7>2 =0 C:070==K9 =><5@ =52>7<>65=",
    "cw_repeatCall": "5@572>=8B5 <=5",
    "cw_repeatCallAgain": "5@572>=8BL 5I5 @07",
    "cw_thxForCall": "!?0A81> 20< 70 72>=>:!",
    "cw_typeInChat": "0?8A0BL 2 G0B",
    "cw_unableToConnect": "5 A<>3;8 A>548=8BLAO?",
    "cw_weCalling": "K 20< 72>=8<",
    "cw_weRecallAfter": "2548B5 =><5@ B5;5D>=0, 8 <K ?5@572>=8< 20< 70",
    "c_callDisconnected": "K7>2 7025@H5=",
    "defCallformTitle": "C6=0 ?><>IL? <br>K ?5@572>=8< G5@57 <span style='color: #40cd72'>_SEC_</span> A5:C=4!",
    "defOfflineFormText": "AB02LB5 A2>5 A>>1I5=85 2 MB>9 D>@<5, <K ?>;CG8< 53> =0 e-mail 8 >1O70B5;L=> >B25B8<!",
    "defOfflineWidgetLabel": "B?@02LB5 =0< A>>1I5=85",
    "defOfflineWidgetLabelMobile": "!>>1I5=85",
    "defOnlineWidgetLabel": "0?8H8B5 =0<, <K >=;09=!",
    "defOnlineWidgetLabelMobile": "'0B",
    "defRuleInvitationText": "4@02AB2C9B5! / <>3C 20< G5<-B> ?><>GL?",
    "defRuleRetaining": ">60;C9AB0, ?>4>648B5. !59G0A >?5@0B>@K 70=OBK, => A:>@> :B>-=81C4L >A2>1>48BAO 8 >B25B8B 20<!",
    "defRuleRetainingEmail": "5B 2@5<5=8 640BL >B25B? >;CG8B5 C254><;5=85 =0 ?>GBC!",
    "enterEmailPlaceholder": "2548B5 20H email",
    "error_send": "5 4>AB02;5=>",
    "eula_link": ">;L7>20B5;LA:>5 A>3;0H5=85",
    "file_upl_cancel": "03@C7:0 >B<5=5=0",
    "file_upl_download": "!:0G0BL",
    "file_upl_error": "H81:0 703@C7:8",
    "file_upl_error_max_size": "H81:0  D09; 4>;65= 1KBL =5 1>;LH5 _FILESIZE_",
    "file_upl_error_no_ext": "H81:0  2K15@8B5 D09; A @0AH8@5=85<",
    "invoiceEmail": "Email 4;O >B?@02:8 G5:0",
    "label_fb_text": "!>>1I5=85 2 Facebook",
    "label_vk_text": "!>>1I5=85 >=B0:B5",
    "lblCallMe": ">72>=8BL",
    "lblCaptcha": "2548B5 :>4 A :0@B8=:8",
    "lblCaptchaError": "525@=K9 :>4, 22548B5 5I5 @07",
    "lblConnectedToAgent": "0?8H8B5 20H5 A>>1I5=85",
    "lblDeclineFile": "B:;>=8BL",
    "lblDefaultCobrowseComment": "1@0B8B5 2=8<0=85",
    "lblEnterMessageHere": "2548B5 A>>1I5=85 8 =06<8B5 Enter",
    "lblEnterMessageOrPhoneHere": "2548B5 A>>1I5=85 8;8 =><5@ B5;5D>=0 (?5@572>=8< <3=>25==>)",
    "lblEvaluateCancel": "B<5=8BL",
    "lblEvaluatePlease": "F5=8B5 :0G5AB2> >1A;C6820=8O",
    "lblEvaluateThanks": "!?0A81> 70 >F5=:C!",
    "lblHangUp": "025@H8BL A>548=5=85",
    "lblIntroduceName": "0H5 8<O",
    "lblIntroduceRequest": "@54AB02LB5AL, ?>60;C9AB0",
    "lblIntroduceRequestBefore": "@54AB02LB5AL 8 =0G=8B5 G0B!",
    "lblLeaveMessage": "AB028BL A>>1I5=85",
    "lblMessageHere": "2548B5 A>>1I5=85",
    "lblNewMessage": ">2>5 A>>1I5=85!",
    "lblOfflineMessageSend": "!>>1I5=85 >B?@02;5=>",
    "lblOperatorsOnline": "?5@0B>@K >=;09=!",
    "lblPencilHint": "?5@0B>@ =018@05B A>>1I5=85",
    "lblPwrBy": "'0B ?@54>AB02;5= <a href=\"http://www.jivosite.ru/_URL_\" target=\"_blank\"><span class=\"j1\">Jivo</span><span class=\"j2\">Site</span></a>",
    "lblReceiveFile": "@8=OBL",
    "lblReply": "B25B8BL",
    "lblSelectDep": "K15@8B5 >B45;",
    "lblSend": "B?@028BL",
    "lblSendBefore": "0G0BL 480;>3",
    "lblSendingFile": "_AGENT_ ?5@5405B 20< D09;: _FILE_",
    "lblThanks": "!?0A81>!",
    "lblThankYouMessage": "!?0A81> 70 20H5 A>>1I5=85! K&nbsp;>1O70B5;L=> A2O65<AO A&nbsp;20<8 2 1;8609H55 2@5<O",
    "lblTransferred": "80;>3 ?5@540= >?5@0B>@C _AGENT_",
    "lblView": ">A<>B@5BL",
    "lblYourEmail": "0H e-mail",
    "lblYourMessage": "0H5 A>>1I5=85",
    "lblYourPhone": "0H B5;5D>=",
    "lnkCloseThisWindow": "0:@KBL",
    "onlineChat": "=;09= G0B",
    "paymentsInvoice": "!G5B ",
    "paymentsPay": "0?;0B8BL",
    "paymentsSuccess": "CA?5H=> >?;0G5=",
    "powerBtnMenuTitle": "0: 20< C4>1=55 A =0<8 A2O70BLAO?",
    "seo_copyrightTextNew": "'0B ?@54>AB02;5= {0}",
    "social_fb": "2 Facebook",
    "social_get_access": "5 E>B8B5 640BL? >;CG8B5 C254><;5=85 2 >=B0:B5!",
    "social_get_access_fb": "5>1O70B5;L=> 640BL =0 A09B5! K >B?@028< >B25B 2 Facebook Messenger",
    "social_online_text": "?5@0B>@K 2 A5B8 8 A:>@> >B25BOB",
    "social_process_in": "@>4>;68BL 480;>3",
    "social_process_in_fb": "@>4>;68BL 2",
    "social_process_vk": "@>4>;68BL 480;>3 _ICON_>=B0:B5",
    "social_success_email": "!?0A81>, GB> >AB028;8 20H 04@5A! >340 ?@845B >B25B, >B?@028< 53> =0 _EMAIL_ 8 2 MB>B G0B.",
    "social_success_fb": "Facebook Messenger ?>4:;NG5=! =M A;8 2K C945B5 A A09B0, B> A>>1I5=8O ?@84CB 2 MB>B G0B 8 2 Facebook",
    "social_success_vk": "#254><;5=8O >=B0:B5 2:;NG5=K! =M A;8 2K C945B5 A A09B0, B> A>>1I5=8O ?@84CB 2 MB>B G0B 8 2> >=B0:B5",
    "social_text_1": "1KG=> >B25G05< <><5=B0;L=>",
    "social_text_2": "1KG=> >B25G05< 2 B5G5=85 =5A:>;L:8E <8=CB",
    "social_text_3": "1KG=> >B25G05< 2 B5G5=85 G0A0",
    "social_text_4": "1KG=> >B25G05< 2 B5G5=85 =5A:>;L:8E G0A>2",
    "social_text_5": "1KG=> >B25G05< 2 B5G5=85 >4=>3> 4=O",
    "social_vk": ">=B0:B5"
};
! function(e) {
    function t(a) {
        if (i[a]) return i[a].exports;
        var o = i[a] = {
            exports: {},
            id: a,
            loaded: !1
        };
        return e[a].call(o.exports, o, o.exports, t), o.loaded = !0, o.exports
    }
    var i = {};
    return t.m = e, t.c = i, t.p = "", t(0)
}(function(e) {
    for (var t in e)
        if (Object.prototype.hasOwnProperty.call(e, t)) switch (typeof e[t]) {
            case "function":
                break;
            case "object":
                e[t] = function(t) {
                    var i = t.slice(1),
                        a = e[t[0]];
                    return function(e, t, o) {
                        a.apply(this, [e, t, o].concat(i))
                    }
                }(e[t]);
                break;
            default:
                e[t] = e[e[t]]
        }
        return e
}([function(e, t, i) {
        e.exports = i(169)
    }, function(e, t, i) {
        "use strict";

        function a(e) {
            return e && e.__esModule ? e : {
                default: e
            }
        }

        function o(e) {
            return x.default.isArray(e) ? e : e.replace(/^\s+|\s+$/g, "").split(/\s+/)
        }

        function n(e) {
            e.offsetHeight
        }

        function r(e) {
            return o(e.className)
        }

        function l(e, t) {
            var i = t.join(" ");
            e.className !== i && (e.className = i, n(e))
        }
        var s, c, d = i(104),
            u = a(d),
            f = i(103),
            p = a(f),
            h = i(33),
            m = a(h),
            g = i(24),
            v = a(g),
            b = i(2),
            w = a(b),
            y = i(4),
            x = a(y),
            _ = i(5),
            k = a(_),
            j = i(172),
            E = a(j),
            C = i(174),
            M = a(C),
            S = i(14),
            z = a(S),
            T = i(15),
            I = a(T),
            N = i(13),
            O = a(N),
            A = i(100),
            P = a(A),
            L = k.default.name("utils"),
            B = "classList" in document.documentElement,
            D = 0,
            H = navigator.userAgent.search(/google/gi) >= 0,
            F = (s = {
                addListener: function(e, t, i) {
                    e.addEventListener ? e.addEventListener(t, i, !1) : e.attachEvent && (e.attachEvent("on" + t, function(e) {
                        return function() {
                            i.call(e, window.event)
                        }
                    }(e)), e = null)
                },
                cookie: P.default,
                removeEvent: function(e, t, i) {
                    if (window.removeEventListener) e.removeEventListener(t, i, !1);
                    else {
                        if (!window.detachEvent) return !1;
                        var a = function() {
                            i.call(e)
                        };
                        e.detachEvent("on" + t, a)
                    }
                },
                showAd: function() {
                    return !(8 & w.default.options && w.default.hide_ad)
                },
                css3AnimationIsSupported: function() {
                    var e = E.default.name;
                    return !!("Firefox" === e && E.default.mV > 23 || "Chrome" === e && E.default.mV > 28 || "Safari" === e && E.default.mV > 5)
                },
                isWixIframe: function() {
                    return "undefined" != typeof F.getPageWindow().jivo_in_wix_iframe
                },
                isWixContext: function() {
                    var e = F.getPageWindow().wix_context;
                    return e && e.Utils && e.Utils.getViewMode()
                },
                isBitrix: function e() {
                    var t = document.cookie.split(";"),
                        e = !1;
                    return x.default.each(t, function(t) {
                        t.indexOf("BITRIX_") >= 0 && (e = !0)
                    }), e && F.telemetry("Bitrix Skip Iframe"), e
                },
                hasClass: B ? function(e, t) {
                    return e.classList.contains(t)
                } : function(e, t) {
                    return "" !== e.className && x.default.contains(r(e), t)
                },
                addClass: B ? function(e, t) {
                    x.default.each(o(t), function(t) {
                        e && e.classList.add(t)
                    }), e && n(e)
                } : function(e, t) {
                    var i = r(e),
                        a = x.default.union(i, o(t));
                    l(e, a)
                },
                removeClass: B ? function(e, t) {
                    x.default.each(o(t), function(t) {
                        e && e.classList.remove(t)
                    }), e && n(e)
                } : function(e, t) {
                    var i = r(e),
                        a = x.default.difference(i, o(t));
                    l(e, a)
                },
                toggleClass: B ? function(e, t, i) {
                    t = x.default.uniq(o(t)), x.default.each(t, function(t) {
                        e.classList.toggle(t, i)
                    }), n(e)
                } : function(e, t, i) {
                    var a, n = r(e),
                        s = [],
                        c = [];
                    x.default.each(o(t), function(e) {
                        var t = x.default.contains(n, e) ? i !== !0 && c : i !== !1 && s;
                        t && t.push(e)
                    }), a = x.default.union(x.default.difference(n, c), s), l(e, a)
                },
                isVisible: function(e) {
                    return e && e.offsetWidth > 0 && e.offsetHeight > 0
                },
                pageVisible: function() {
                    return "visibilityState" in document ? "visible" === document.visibilityState : "webkitVisibilityState" in document && "visible" === document.webkitVisibilityState
                },
                listenVisibility: function(e) {
                    var t = x.default.debounce(e, 50);
                    L.log("Installing visibility event handler");
                    var i, a, o;
                    "undefined" != typeof document.hidden ? (i = "hidden", o = "visibilitychange", a = "visibilityState") : "undefined" != typeof document.mozHidden ? (i = "mozHidden", o = "mozvisibilitychange", a = "mozVisibilityState") : "undefined" != typeof document.msHidden ? (i = "msHidden", o = "msvisibilitychange", a = "msVisibilityState") : "undefined" != typeof document.webkitHidden && (i = "webkitHidden", o = "webkitvisibilitychange", a = "webkitVisibilityState"), "addEventListener" in document && "undefined" != typeof o && (document.addEventListener(o, x.default.bind(t, this, a), !1), parent.document.addEventListener(o, x.default.bind(t, this, a), !1), parent.document.addEventListener("focus", x.default.bind(t, this, a), !1), parent.document.addEventListener("blur", x.default.bind(t, this, a), !1), parent.window.addEventListener("focus", x.default.bind(t, this, a), !1), parent.window.addEventListener("blur", x.default.bind(t, this, a), !1))
                },
                telemetry: function(e, t) {
                    if (!w.default.disable_telemetry && !H) {
                        "object" != ("undefined" == typeof t ? "undefined" : (0, v.default)(t)) && (t = {}), t.event = e, t.widget_id = w.default.widget_id, t.chat_mode = w.default.chat_mode, t.site_id = w.default.site_id, t.device = O.default.getDevice(), t.visitor_id = z.default.visitorId, z.default.client_id && (t.client_id = z.default.client_id.split(".")[0]);
                        try {
                            F.getJSONPWithData("//telemetry.jivosite.com/w", t, L.log)
                        } catch (e) {
                            L.error(e.message)
                        }
                    }
                },
                getCurrentPage: function() {
                    if (L.log("getCurrentPage", F._forcedCurrentPage, window.location.href, F.getPageWindow().document.title), F._forcedCurrentPage) return F._forcedCurrentPage;
                    var e = F.getPageWindow(),
                        t = e.location.href,
                        i = e.document.title;
                    return {
                        url: t,
                        title: i.substr(0, 255)
                    }
                },
                getPageWindow: function() {
                    return window.parent || window
                },
                setGetParam: function(e, t, i) {
                    e = encodeURI(e), t = encodeURI(t);
                    for (var a = i.substr(1).split("&"), o = a.length, n = void 0; o--;)
                        if (n = a[o].split("="), n[0] === e) {
                            n[1] = t, a[o] = n.join("=");
                            break
                        }
                    return o < 0 && (a[a.length] = [e, t].join("=")), a.join("&")
                },
                getURLParam: function(e, t) {
                    for (var i = (t || window.location || "").search.substring(1), a = i.split("&"), o = 0; o < a.length; o++) {
                        var n = a[o].split("=");
                        if (n[0] == e) return decodeURIComponent(n[1])
                    }
                },
                getCopyrightSiteByLocale: function(e) {
                    var t = "https://www.jivochat.com";
                    ["ru_RU", "be", "kk", "uk"].indexOf(e) != -1 ? t = "https://www.jivosite.ru" : ["pt", "pt_BR"].indexOf(e) != -1 ? t = "https://www.jivochat.com.br" : ["es"].indexOf(e) != -1 ? t = "https://www.jivochat.es" : ["de"].indexOf(w.default.locale) != -1 && (t = "https://www.jivochat.de");
                    var i = location.hostname.split(".");
                    return "de" == i[i.length - 1] && (t = "https://www.jivochat.de"), t
                },
                reportException: function(e) {
                    if (L.error(e.message), w.default.disable_error_reporting || H) L.warn("REPORT", e);
                    else {
                        if (++D > 3) return;
                        try {
                            F.getJSONPWithData("//err.jivosite.com/widget", {
                                widget_id: w.default.widget_id,
                                message: e.message,
                                url: window.top.location.href,
                                lineNumber: e.lineNumber,
                                fileName: e.fileName,
                                column: e.columnNumber,
                                stack: (0, m.default)(e.stack)
                            }, L.log)
                        } catch (e) {
                            L.error(e.message)
                        }
                    }
                },
                getRandomString: function() {
                    var e = Math.floor(65536 * Math.random()).toString(16);
                    return 4 === e.length ? e : F.getRandomString()
                },
                generateGUID: function() {
                    var e = F.getRandomString;
                    return e() + e() + "-" + e() + "-" + e() + "-" + e() + "-" + e() + e() + e()
                },
                generateGUIDCount: function(e) {
                    for (var t = ""; e--;) t += F.getRandomString();
                    return t
                },
                getJSONP: function(e, t) {
                    var i = new M.default;
                    i.open("GET", e), i.onload = t, i.send()
                },
                getJSONPWithData: function(e, t, i) {
                    e += "?cb=?", t.t = (new Date).getTime();
                    for (var a in t) e += "&" + a + "=" + encodeURIComponent(t[a]);
                    return F.getJSONP(e, i)
                },
                stripBrackets: function(e) {
                    return x.default.isUndefined(e) ? "" : e.replace(/</g, "&lt;").replace(/>/g, "&gt;")
                },
                stripHashFromLocation: function(e) {
                    var t = window.top;
                    t.location.href.indexOf("#jvhs_" + e) > 0 && F.changeBrowserLocation(t.location.href.replace("#jvhs_" + e, ""), document.title, t)
                },
                changeBrowserLocation: function(e, t) {
                    var i = window.top;
                    "function" == typeof i.history.replaceState ? i.history.replaceState({}, t, e) : "function" == typeof i.history.pushState && i.history.pushState({}, t, e)
                },
                setSubstrTitle: function(e) {
                    return e.substr(0, 255)
                },
                staticUrl: function(e, t) {
                    if (t || (e += "?rnd=" + (new Date).getTime()), globalStore.hasStorage) var i = parseInt(localStorage.getItem("jv_store_cdn_resolve_time"), 10);
                    var a = i && i >= (new Date).getTime() || globalStore.cdnUnavailableState,
                        o = w.default.bundle_folder ? w.default.bundle_folder : "";
                    return w.default.static_host && !a ? "//" + w.default.static_host + o + e : w.default.base_url + o + e
                },
                chatServerUrl: function() {
                    var e = window.location.protocol + "//";
                    return "comet" in w.default ? (e += w.default.comet.host, "https:" == window.location.protocol ? "secure_port" in w.default.comet && (e += ":" + w.default.comet.secure_port) : "plain_port" in w.default.comet && (e += ":" + w.default.comet.plain_port)) : e += "node.jivosite.com", e + "/jsonp/" + x.default.toArray(arguments).join("/")
                },
                callWidgetPing: function(e, t) {
                    if (x.default.isEmpty(w.default.callback_settings)) return void L.log("callback disabled");
                    var i = {
                        name: "cw_ping"
                    };
                    z.default.client_id && (i.jv_client_id = z.default.client_id), z.default.jv_sess_id && (i.jv_sess_id = z.default.jv_sess_id), t && (i = x.default.extend(i, t)), F.getJSONPWithData(F.chatServerUrl(w.default.widget_id, w.default.site_id), i, function(t) {
                        "ok" === t.result && e(t)
                    })
                },
                setImplicitGuiMessage: function(e, t) {
                    var i = 0,
                        a = t || "";
                    return x.default.each(x.default.pairs(e), function(e) {
                        i < 10 && (a = a + e[0] + ": " + e[1] + "; \n", i += 1)
                    }), a
                },
                _callUserFunction: function(e, t) {
                    if (L.log("_callUserFunction", e, t), e = "jivo_" + e, "function" == typeof window.parent.window[e]) {
                        try {
                            L.log("JIVO: calling user function " + e), window.parent.window[e](t), L.log("JIVO: user function " + e + " returned")
                        } catch (e) {
                            L.log("ERROR: _callUserFunction", e)
                        }
                        F.telemetry(e)
                    }
                },
                getTextColor: function() {
                    return "dark" == w.default.widget_font_color ? "#222222" : "#F0F1F1"
                },
                getTextSeconds: function(e) {
                    var t = [(0, I.default)("cw_form_second"), (0, I.default)("cw_form_seconds"), (0, I.default)("cw_form_secondd")],
                        i = [2, 0, 1, 1, 1, 2];
                    return t[e % 100 > 4 && e % 100 < 20 ? 2 : i[e % 10 < 5 ? e % 10 : 5]]
                },
                getElementPosition: function(e) {
                    if (!e) return {
                        width: 0,
                        height: 0,
                        top: 0,
                        left: 0,
                        windowWidth: 0,
                        windowHeight: 0
                    };
                    var t, i = e.ownerDocument,
                        a = i.defaultView || i.parentWindow,
                        o = {
                            left: 0,
                            top: 0
                        };
                    if (e.getBoundingClientRect) o = x.default.extend(o, e.getBoundingClientRect());
                    else
                        for (t = e; t;) o.left += t.offsetLeft, o.top += t.offsetTop, t = t.offsetParent;
                    return o.width = e.offsetWidth, o.height = e.offsetHeight, o.windowWidth = a.innerWidth, o.windowHeight = a.innerHeight, o
                },
                getCobrowseElementPosition: function(e) {
                    var t, i, a = 0,
                        o = 0,
                        n = 0,
                        r = 0,
                        l = {
                            top: 0,
                            left: 0
                        },
                        s = document,
                        c = s.body;
                    return t = s.documentElement, e && "undefined" != typeof e.getBoundingClientRect ? (l = e.getBoundingClientRect(), e && !F.elementOrParentIsFixed(e) && (i = F.getPageWindow(), a = t.clientTop || c.clientTop || 0, o = t.clientLeft || c.clientLeft || 0, n = i.pageYOffset || t.scrollTop, r = i.pageXOffset || t.scrollLeft), {
                        top: l.top + n - a,
                        left: l.left + r - o,
                        width: e.offsetWidth,
                        height: e.offsetHeight,
                        windowWidth: c.innerWidth,
                        windowHeight: c.innerHeight
                    }) : (F.telemetry("cobrowse_failed"), !1)
                },
                elementOrParentIsFixed: function(e) {
                    var t = !1;
                    if (e)
                        for (var i = e, a = []; i && "HTML" !== i.tagName;) {
                            if (a.unshift(i), window.parent.window.Polymer && !window.parent.jivo_cobrowse && i.treeScope_) {
                                var o = i[(0, p.default)(i)[0]];
                                "fixed" === getComputedStyle(o).position && (t = !0)
                            } else "fixed" === getComputedStyle(i).position && (t = !0);
                            i = i.parentNode
                        }
                    return t
                },
                getNextSiblingNodeFocus: function(e) {
                    if (e.keyCode && 13 == e.keyCode) {
                        var t = e.currentTarget.parentNode.nextSibling.childNodes[0];
                        if (t && "INPUT" === t.tagName && t.focus) t.focus();
                        else {
                            var i = O.default.tablet() ? "touchstart" : "mousedown",
                                a = document.createEvent("MouseEvents");
                            a.initEvent(i, !0, !0), document.getElementById("submit").dispatchEvent(a)
                        }
                    }
                },
                isAnyRequired: function() {
                    var e = !1;
                    return (w.default.contacts_settings.phone.required || w.default.contacts_settings.email.required) && (e = !0), e
                },
                getScrollBarWidth: function() {
                    if (void 0 !== c) return c;
                    var e = document.createElement("div");
                    e.style.visibility = "hidden", e.style.width = "100px", document.body.appendChild(e);
                    var t = e.offsetWidth;
                    e.style.overflow = "scroll";
                    var i = document.createElement("div");
                    i.style.width = "100%", e.appendChild(i);
                    var a = i.offsetWidth;
                    return e.parentNode.removeChild(e), c = t - a
                },
                getInnerHeight: function(e) {
                    var t = e.clientHeight,
                        i = getComputedStyle(e),
                        a = i.paddingTop,
                        o = i.paddingBottom;
                    return t - parseFloat(a) - parseFloat(o)
                },
                getInnerWidth: function(e) {
                    var t = e.clientWidth,
                        i = getComputedStyle(e),
                        a = i.paddingLeft,
                        o = i.paddingRight;
                    return t - parseFloat(a) - parseFloat(o)
                },
                hasScroll: function(e) {
                    var t = F.getPageWindow().document;
                    return e ? t.body.scrollHeight > F.getPageWindow().window.innerHeight : t.getElementById("jivo_magic_iframe").contentDocument.body.scrollHeight > F.getPageWindow().innerHeight
                },
                isValidValue_phone: function(e) {
                    return e.replace(/\D+/g, "").length >= 5 && /^\+?[0-9() -]+$/i.test(e)
                },
                isValidValue_client_name: function(e) {
                    return e.length > 0 && e.length < 100
                },
                isValidValue_email: function(e) {
                    return e.length >= 4 && /^(([^<>()[\]\.,;:\s@\"]+(\.[^<>()[\]\.,;:\s@\"]+)*)|(\".+\"))@(([^<>()[\]\.,;:\s@\"]+\.)+[^<>()[\]\.,;:\s@\"]{2,})$/i.test(e)
                },
                isValidValue_message: function(e) {
                    return e.length > 0
                },
                isValidValue_description: function(e) {
                    return e.length > 0
                },
                getPhoneNumberInfo: function(e) {
                    var t = e.replace(/\D+/g, ""),
                        i = w.default.callback_settings.countries,
                        a = "",
                        o = void 0,
                        n = 1,
                        r = "",
                        l = void 0;
                    if (w.default.geoip && (r = w.default.geoip.split(";")[0]), 10 === t.length && (l = {
                            code: r
                        }, o = x.default.findWhere(i, l), o && (t = o.phone_code + t)), t.length < 11 || t.length > 15) return null;
                    for (; !o && a.length < 4;) a = t.slice(0, n++), l = {
                        phone_code: a
                    }, o = x.default.where(i, l), o.length > 1 ? (l.code = r, o = x.default.findWhere(i, l)) : o = o[0];
                    if (o) {
                        var s = t.slice(o.phone_code.length);
                        return {
                            countryCode: o.code,
                            countryName: o.name,
                            phoneCode: o.phone_code,
                            innerNumber: s,
                            number: t
                        }
                    }
                    return null
                },
                onIframeWindowUnload: function() {
                    var e = window.parent,
                        t = e.document.getElementById("jivo_container");
                    if (t && "javascript:false" == t.getAttribute("src")) return void L.log("windowUnload src = js:false");
                    try {
                        if (e.window != window.top && window.top.jivo_magic_var === e.window.jivo_magic_var && !O.default.mobile()) return void(0, k.default)("window.onunload INIFRAME")
                    } catch (e) {
                        L.log(e)
                    }
                    F.telemetry("onIframeWindowUnload");
                    var i = e.document.getElementById("jivo-iframe-container");
                    i && (i.style.visibility = "hidden", i.style.display = "none");
                    try {
                        window.top.postMessage({
                            name: "iframe_url_changed"
                        }, "*")
                    } catch (e) {
                        L.log(e)
                    }
                },
                fixSVGaddClass: function() {
                    if (L.log("fixSVGaddClass"), window.parent && window.parent.Element.prototype && window.parent.Element.prototype.hasClass) try {
                        window.parent.Element.prototype.hasClass.call(document.getElementsByTagName("jivo-icon-closewidget"), "a")
                    } catch (e) {
                        L.log("SVGaddClass fixed", e), window.parent.Element.prototype.hasClass = function(e) {
                            return "function" == typeof this.getAttribute && new RegExp("(\\s|^)" + e + "(\\s|$)").test(this.getAttribute("class"))
                        }
                    }
                },
                hideOffline: function() {
                    return w.default.hide_offline > 0
                },
                trackCallLogo: function() {
                    var e = "https://www.jivochat.com/",
                        t = w.default.locale;
                    return "ru_RU" === t ? e = "http://www.jivosite.ru/" : "pt_PT" !== t && "pt_BR" !== t || (e = "http://www.jivochat.com.br/"), e + "calls?utm_source=" + window.location.host + "&utm_medium=link&utm_content=callback_popup&utm_campaign=self_ad"
                },
                genSocialIframeUrl: function(e) {
                    var t = ["mode=" + e];
                    return w.default.joint.vk && (t.push("vk_app_id=" + w.default.joint.vk.app_id), t.push("vk_joint_id=" + w.default.joint.vk.joint_id), t.push("vk_key=" + F.genVkRandomKey())), w.default.joint.fb && (t.push("fb_app_id=" + w.default.joint.fb.app_id), t.push("fb_joint_id=" + w.default.joint.fb.joint_id), t.push("fb_key=" + z.default.client_id + "_" + w.default.widget_id)), F.staticUrl("/social.min.html?" + t.join("&"), !0)
                },
                genVkRandomKey: function() {
                    return (z.default.client_id + "=" + w.default.widget_id).replace(/./g, function(e) {
                        return e.charCodeAt(0).toString(16)
                    })
                },
                scrollPosition: !1,
                movedToCloseButton: !1,
                firstMessageTime: null,
                checkTimeConditions: function(e, t, i) {
                    var a, o = !1;
                    for (a = 0; a < e.length; a++)
                        if (F.checkCondition(e[a], i)) o = !0;
                        else if ("all" === t) return !1;
                    return o
                },
                isTimeCondition: function(e) {
                    return e.condition.indexOf("time") >= 0
                },
                isGoalCondition: function(e) {
                    return "goal_close" === e || "goal_scroll" === e
                },
                checkCondition: function(e, t) {
                    var i = F.getValue(e.condition);
                    "page_url" === e.condition && (e.value = e.value.replace(/http(|s):\/\//, "")), "pages_count" === e.condition && (e.value = parseInt(e.value));
                    var a = F.compare(i, e.value, e.comparator),
                        o = (t ? t : "") + "; " + (a ? "success" : "failed") + " condition " + e.condition + "; comparator=" + e.comparator;
                    return L.info(o + "; expected=" + e.value + "; actual=" + i), a
                },
                getValue: function(e) {
                    switch (e) {
                        case "online":
                            return "online" === w.default.chat_mode;
                        case "page_url":
                            return F.getPageWindow().location.href.replace("http://", "").replace("https://", "");
                        case "hour":
                            return (new Date).getHours();
                        case "page_title":
                            return F.getCurrentPage().title;
                        case "week_day":
                            var t = (new Date).getDay();
                            return 0 === t ? 7 : t;
                        case "time_after_close":
                            var i = (0, P.default)("close_time");
                            return i ? F.timeDiff(i) : Number.MAX_VALUE;
                        case "time_after_first_message":
                            return F.firstMessageTime ? F.timeDiff(F.firstMessageTime.getTime()) : NaN;
                        case "time_after_invitation":
                            var a = (0, P.default)("invitation_time");
                            return null === a || "" === a ? Number.MAX_VALUE : F.timeDiff(a);
                        case "time_on_page":
                            return F.timeDiff(F.pageEnterTime);
                        case "time_on_site":
                            return F.timeDiff((0, P.default)("enter_ts"));
                        case "number_of_visits":
                            return (0, P.default)("visits_count");
                        case "goal_close":
                            return F.movedToCloseButton;
                        case "goal_scroll":
                            return F.scrollPosition;
                        case "pages_count":
                            return parseInt((0, P.default)("pages_count"));
                        default:
                            return (0, P.default)(e)
                    }
                },
                timeDiff: function(e) {
                    return Math.round(((new Date).getTime() - e) / 1e3)
                },
                compare: function(e, t, i) {
                    switch (i) {
                        case "contain":
                            return e.toLowerCase().indexOf(t.toLowerCase()) != -1;
                        case "greater":
                            return e > t;
                        case "greater_equal":
                            return e >= t;
                        case "lower":
                            return e < t;
                        case "lower_equal":
                            return e <= t;
                        case "not_contain":
                            return e.toLowerCase().indexOf(t.toLowerCase()) === -1;
                        case "not_equal":
                            return t != e;
                        case "regexp":
                            return new RegExp(e, "i").test(t);
                        default:
                            return t == e
                    }
                }
            }, (0, u.default)(s, "genVkRandomKey", function() {
                return (z.default.client_id + "=" + w.default.widget_id).replace(/./g, function(e) {
                    return e.charCodeAt(0).toString(16)
                })
            }), (0, u.default)(s, "addPageView", function() {
                (0, P.default)("pages_count") ? (0, P.default)("pages_count", parseInt((0, P.default)("pages_count")) + 1) : (0, P.default)("pages_count", 1)
            }), (0, u.default)(s, "checkSocial", function() {
                if (w.default.joint) {
                    var e = "check";
                    w.default.joint.vk && !w.default.joint.fb && (e = "checkvk"), w.default.joint.fb && !w.default.joint.vk && (e = "checkfb");
                    var t = document.getElementsByClassName("check-iframe");
                    return !(t && t.length > 0) && (!(!w.default.joint.vk && !w.default.joint.fb) && e)
                }
            }), (0, u.default)(s, "humanFileSize", function(e) {
                if (!e || 0 == e) return "";
                var t = Math.floor(Math.log(e) / Math.log(1024));
                return 1 * (e / Math.pow(1024, t)).toFixed(2) + ["B", "KB", "MB", "gB", "tB"][t]
            }), (0, u.default)(s, "scrollBottom", function() {
                var e = document.getElementById("scrollbar-container");
                e && (e.scrollTop = e.scrollHeight)
            }), (0, u.default)(s, "scrollRedraw", function() {
                var e = document.getElementById("messages-div-inner-clear");
                e.style.clear = "none", setTimeout(function() {
                    e.style.clear = "both"
                }, 1)
            }), s);
        e.exports = F
    }, function(e, t) {
        "use strict";
        Object.defineProperty(t, "__esModule", {
            value: !0
        });
        var i = window.jivo_config || window.parent.jivo_config;
        i.callback_settings || (i.callback_settings = {}), t.default = i
    }, function(e, t, i) {
        (function(t) {
            ! function(t, a) {
                e.exports = a(i(261), i(259))
            }(this, function(e, i) {
                function a() {
                    return null
                }

                function o(e) {
                    var t = e.nodeName,
                        i = e.attributes;
                    e.attributes = {}, t.defaultProps && x(e.attributes, t.defaultProps), i && x(e.attributes, i)
                }

                function n(e, t) {
                    var i, a, o;
                    if (t) {
                        for (o in t)
                            if (i = V.test(o)) break;
                        if (i) {
                            a = e.attributes = {};
                            for (o in t) t.hasOwnProperty(o) && (a[V.test(o) ? o.replace(/([A-Z0-9])/, "-$1").toLowerCase() : o] = t[o])
                        }
                    }
                }

                function r(e, t, a) {
                    var o = t && t._preactCompatRendered;
                    o && o.parentNode !== t && (o = null), o || (o = t.children[0]);
                    for (var n = t.childNodes.length; n--;) t.childNodes[n] !== o && t.removeChild(t.childNodes[n]);
                    var r = i.render(e, t, o);
                    return t && (t._preactCompatRendered = r), "function" == typeof a && a(), r && r._component || r.base
                }

                function l(e, t, a, o) {
                    var n = i.h(Y, {
                            context: e.context
                        }, t),
                        l = r(n, a);
                    return o && o(l), l
                }

                function s(e) {
                    var t = e._preactCompatRendered;
                    return !(!t || t.parentNode !== e) && (i.render(i.h(a), e, t), !0)
                }

                function c(e) {
                    return h.bind(null, e)
                }

                function d(e, t) {
                    for (var i = t || 0; i < e.length; i++) {
                        var a = e[i];
                        Array.isArray(a) ? d(a) : a && "object" == typeof a && !v(a) && (a.props && a.type || a.attributes && a.nodeName || a.children) && (e[i] = h(a.type || a.nodeName, a.props || a.attributes, a.children))
                    }
                }

                function u(e) {
                    return "function" == typeof e && !(e.prototype && e.prototype.render)
                }

                function f(e) {
                    return E({
                        displayName: e.displayName || e.name,
                        render: function(t, i, a) {
                            return e(t, a)
                        }
                    })
                }

                function p(e) {
                    var t = e[F];
                    return t ? t === !0 ? e : t : (t = f(e), Object.defineProperty(t, F, {
                        configurable: !0,
                        value: !0
                    }), t.displayName = e.displayName, t.propTypes = e.propTypes, t.defaultProps = e.defaultProps, Object.defineProperty(e, F, {
                        configurable: !0,
                        value: t
                    }), t)
                }

                function h() {
                    for (var e = [], t = arguments.length; t--;) e[t] = arguments[t];
                    return d(e, 2), m(i.h.apply(void 0, e))
                }

                function m(e) {
                    e.preactCompatNormalized = !0, y(e), u(e.nodeName) && (e.nodeName = p(e.nodeName));
                    var t = e.attributes.ref,
                        i = t && typeof t;
                    return !Z || "string" !== i && "number" !== i || (e.attributes.ref = b(t, Z)), w(e), e
                }

                function g(e, t) {
                    for (var a = [], o = arguments.length - 2; o-- > 0;) a[o] = arguments[o + 2];
                    if (!v(e)) return e;
                    var n = e.attributes || e.props,
                        r = i.h(e.nodeName || e.type, n, e.children || n && n.children);
                    return m(i.cloneElement.apply(void 0, [r, t].concat(a)))
                }

                function v(e) {
                    return e && (e instanceof U || e.$$typeof === H)
                }

                function b(e, t) {
                    return t._refProxies[e] || (t._refProxies[e] = function(i) {
                        t && t.refs && (t.refs[e] = i, null === i && (delete t._refProxies[e], t = null))
                    })
                }

                function w(e) {
                    var t = e.nodeName,
                        i = e.attributes;
                    if (i && "string" == typeof t) {
                        var a = {};
                        for (var o in i) a[o.toLowerCase()] = o;
                        if (a.ondoubleclick && (i.ondblclick = i[a.ondoubleclick], delete i[a.ondoubleclick]), a.onchange) {
                            t = t.toLowerCase();
                            var n = "input" === t && /^che|rad/i.test(i.type) ? "onclick" : "oninput",
                                r = a[n] || n;
                            i[r] || (i[r] = T([i[a[n]], i[a.onchange]]), delete i[a.onchange])
                        }
                    }
                }

                function y(e) {
                    var t = e.attributes;
                    if (t) {
                        var i = t.className || t.class;
                        i && (t.className = i)
                    }
                }

                function x(e, t) {
                    for (var i in t) t.hasOwnProperty(i) && (e[i] = t[i]);
                    return e
                }

                function _(e, t) {
                    for (var i in e)
                        if (!(i in t)) return !0;
                    for (var a in t)
                        if (e[a] !== t[a]) return !0;
                    return !1
                }

                function k(e) {
                    return e && e.base || e
                }

                function j() {}

                function E(e) {
                    function t(e, t) {
                        S(this), P.call(this, e, t, W), I.call(this, e, t)
                    }
                    return e = x({
                        constructor: t
                    }, e), e.mixins && M(e, C(e.mixins)), e.statics && x(t, e.statics), e.propTypes && (t.propTypes = e.propTypes), e.defaultProps && (t.defaultProps = e.defaultProps), e.getDefaultProps && (t.defaultProps = e.getDefaultProps()), j.prototype = P.prototype, t.prototype = x(new j, e), t.displayName = e.displayName || "Component", t
                }

                function C(e) {
                    for (var t = {}, i = 0; i < e.length; i++) {
                        var a = e[i];
                        for (var o in a) a.hasOwnProperty(o) && "function" == typeof a[o] && (t[o] || (t[o] = [])).push(a[o])
                    }
                    return t
                }

                function M(e, t) {
                    for (var i in t) t.hasOwnProperty(i) && (e[i] = T(t[i].concat(e[i] || J), "getDefaultProps" === i || "getInitialState" === i || "getChildContext" === i))
                }

                function S(e) {
                    for (var t in e) {
                        var i = e[t];
                        "function" != typeof i || i.__bound || R.hasOwnProperty(t) || ((e[t] = i.bind(e)).__bound = !0)
                    }
                }

                function z(e, t, i) {
                    if ("string" == typeof t && (t = e.constructor.prototype[t]), "function" == typeof t) return t.apply(e, i)
                }

                function T(e, t) {
                    return function() {
                        for (var i, a = arguments, o = this, n = 0; n < e.length; n++) {
                            var r = z(o, e[n], a);
                            if (t && null != r) {
                                i || (i = {});
                                for (var l in r) r.hasOwnProperty(l) && (i[l] = r[l])
                            } else "undefined" != typeof r && (i = r)
                        }
                        return i
                    }
                }

                function I(e, t) {
                    N.call(this, e, t), this.componentWillReceiveProps = T([N, this.componentWillReceiveProps || "componentWillReceiveProps"]), this.render = T([N, O, this.render || "render", A])
                }

                function N(e, t) {
                    var i = this;
                    if (e) {
                        var a = e.children;
                        if (a && Array.isArray(a) && 1 === a.length && (e.children = a[0], e.children && "object" == typeof e.children && (e.children.length = 1, e.children[0] = e.children)), q) {
                            var o = "function" == typeof this ? this : this.constructor,
                                n = this.propTypes || o.propTypes;
                            if (n)
                                for (var r in n)
                                    if (n.hasOwnProperty(r) && "function" == typeof n[r]) {
                                        var l = i.displayName || o.name,
                                            s = n[r](e, r, l, "prop");
                                        s && console.error(new Error(s.message || s))
                                    }
                        }
                    }
                }

                function O(e) {
                    Z = this
                }

                function A() {
                    Z === this && (Z = null)
                }

                function P(e, t, a) {
                    i.Component.call(this, e, t), this.state = this.getInitialState ? this.getInitialState() : {}, this.refs = {}, this._refProxies = {}, a !== W && I.call(this, e, t)
                }

                function L(e, t) {
                    P.call(this, e, t)
                }
                e = "default" in e ? e.default : e;
                var B = "15.1.0",
                    D = "a abbr address area article aside audio b base bdi bdo big blockquote body br button canvas caption cite code col colgroup data datalist dd del details dfn dialog div dl dt em embed fieldset figcaption figure footer form h1 h2 h3 h4 h5 h6 head header hgroup hr html i iframe img input ins kbd keygen label legend li link main map mark menu menuitem meta meter nav noscript object ol optgroup option output p param picture pre progress q rp rt ruby s samp script section select small source span strong style sub summary sup table tbody td textarea tfoot th thead time title tr track u ul var video wbr circle clipPath defs ellipse g image line linearGradient mask path pattern polygon polyline radialGradient rect stop svg text tspan".split(" "),
                    H = "undefined" != typeof Symbol && Symbol.for && Symbol.for("react.element") || 60103,
                    F = "undefined" != typeof Symbol ? Symbol.for("__preactCompatWrapper") : "__preactCompatWrapper",
                    R = {
                        constructor: 1,
                        render: 1,
                        shouldComponentUpdate: 1,
                        componentWillReceiveProps: 1,
                        componentWillUpdate: 1,
                        componentDidUpdate: 1,
                        componentWillMount: 1,
                        componentDidMount: 1,
                        componentWillUnmount: 1,
                        componentDidUnmount: 1
                    },
                    V = /^(?:accent|alignment|arabic|baseline|cap|clip|color|fill|flood|font|glyph|horiz|marker|overline|paint|stop|strikethrough|stroke|text|underline|unicode|units|v|vert|word|writing|x)[A-Z]/,
                    W = {},
                    q = "undefined" == typeof t || !t.env || "production" !== t.env.NODE_ENV,
                    U = i.h("a", null).constructor;
                U.prototype.$$typeof = H, U.prototype.preactCompatUpgraded = !1, U.prototype.preactCompatNormalized = !1, Object.defineProperty(U.prototype, "type", {get: function() {
                        return this.nodeName
                    },
                    set: function(e) {
                        this.nodeName = e
                    },
                    configurable: !0
                }), Object.defineProperty(U.prototype, "props", {get: function() {
                        return this.attributes
                    },
                    set: function(e) {
                        this.attributes = e
                    },
                    configurable: !0
                });
                var G = i.options.event;
                i.options.event = function(e) {
                    return G && (e = G(e)), e.persist = Object, e.nativeEvent = e, e
                };
                var X = i.options.vnode;
                i.options.vnode = function(e) {
                    if (!e.preactCompatUpgraded) {
                        e.preactCompatUpgraded = !0;
                        var t = e.nodeName,
                            i = e.attributes;
                        i || (i = e.attributes = {}), "function" == typeof t ? (t[F] === !0 || t.prototype && "isReactComponent" in t.prototype) && (e.children && !e.children.length && (e.children = void 0), e.children && (i.children = e.children), e.preactCompatNormalized || m(e), o(e)) : (e.children && !e.children.length && (e.children = void 0), e.children && (i.children = e.children), i.defaultValue && (i.value || 0 === i.value || (i.value = i.defaultValue), delete i.defaultValue), n(e, i))
                    }
                    X && X(e)
                };
                var Y = function() {};
                Y.prototype.getChildContext = function() {
                    return this.props.context
                }, Y.prototype.render = function(e) {
                    return e.children[0]
                };
                for (var Z, J = [], K = {
                        map: function(e, t, i) {
                            return null == e ? null : (e = K.toArray(e), i && i !== e && (t = t.bind(i)), e.map(t))
                        },
                        forEach: function(e, t, i) {
                            return null == e ? null : (e = K.toArray(e), i && i !== e && (t = t.bind(i)), void e.forEach(t))
                        },
                        count: function(e) {
                            return e && e.length || 0
                        },
                        only: function(e) {
                            if (e = K.toArray(e), 1 !== e.length) throw new Error("Children.only() expects only one child.");
                            return e[0]
                        },
                        toArray: function(e) {
                            return Array.isArray && Array.isArray(e) ? e : J.concat(e)
                        }
                    }, Q = {}, $ = D.length; $--;) Q[D[$]] = c(D[$]);
                x(P.prototype = new i.Component, {
                    constructor: P,
                    isReactComponent: {},
                    replaceState: function(e, t) {
                        var i = this;
                        this.setState(e, t);
                        for (var a in i.state) a in e || delete i.state[a]
                    },
                    getDOMNode: function() {
                        return this.base
                    },
                    isMounted: function() {
                        return !!this.base
                    }
                }), j.prototype = P.prototype, L.prototype = new j, L.prototype.shouldComponentUpdate = function(e, t) {
                    return _(this.props, e) || _(this.state, t)
                };
                var ee = {
                    version: B,
                    DOM: Q,
                    PropTypes: e,
                    Children: K,
                    render: r,
                    createClass: E,
                    createFactory: c,
                    createElement: h,
                    cloneElement: g,
                    isValidElement: v,
                    findDOMNode: k,
                    unmountComponentAtNode: s,
                    Component: P,
                    PureComponent: L,
                    unstable_renderSubtreeIntoContainer: l
                };
                return ee
            })
        }).call(t, i(53))
    }, function(e, t, i) {
        var a, o;
        (function() {
            function i(e) {
                function t(t, i, a, o, n, r) {
                    for (; n >= 0 && n < r; n += e) {
                        var l = o ? o[n] : n;
                        a = i(a, t[l], l, t)
                    }
                    return a
                }
                return function(i, a, o, n) {
                    a = k(a, n, 4);
                    var r = !T(i) && _.keys(i),
                        l = (r || i).length,
                        s = e > 0 ? 0 : l - 1;
                    return arguments.length < 3 && (o = i[r ? r[s] : s], s += e), t(i, a, o, r, s, l)
                }
            }

            function n(e) {
                return function(t, i, a) {
                    i = j(i, a);
                    for (var o = z(t), n = e > 0 ? 0 : o - 1; n >= 0 && n < o; n += e)
                        if (i(t[n], n, t)) return n;
                    return -1
                }
            }

            function r(e, t, i) {
                return function(a, o, n) {
                    var r = 0,
                        l = z(a);
                    if ("number" == typeof n) e > 0 ? r = n >= 0 ? n : Math.max(n + l, r) : l = n >= 0 ? Math.min(n + 1, l) : n + l + 1;
                    else if (i && n && l) return n = i(a, o), a[n] === o ? n : -1;
                    if (o !== o) return n = t(h.call(a, r, l), _.isNaN), n >= 0 ? n + r : -1;
                    for (n = e > 0 ? r : l - 1; n >= 0 && n < l; n += e)
                        if (a[n] === o) return n;
                    return -1
                }
            }

            function l(e, t) {
                var i = P.length,
                    a = e.constructor,
                    o = _.isFunction(a) && a.prototype || u,
                    n = "constructor";
                for (_.has(e, n) && !_.contains(t, n) && t.push(n); i--;) n = P[i], n in e && e[n] !== o[n] && !_.contains(t, n) && t.push(n)
            }
            var s = this,
                c = s._,
                d = Array.prototype,
                u = Object.prototype,
                f = Function.prototype,
                p = d.push,
                h = d.slice,
                m = u.toString,
                g = u.hasOwnProperty,
                v = Array.isArray,
                b = Object.keys,
                w = f.bind,
                y = Object.create,
                x = function() {},
                _ = function(e) {
                    return e instanceof _ ? e : this instanceof _ ? void(this._wrapped = e) : new _(e)
                };
            "undefined" != typeof e && e.exports && (t = e.exports = _), t._ = _, _.VERSION = "1.8.3";
            var k = function(e, t, i) {
                    if (void 0 === t) return e;
                    switch (null == i ? 3 : i) {
                        case 1:
                            return function(i) {
                                return e.call(t, i)
                            };
                        case 2:
                            return function(i, a) {
                                return e.call(t, i, a)
                            };
                        case 3:
                            return function(i, a, o) {
                                return e.call(t, i, a, o)
                            };
                        case 4:
                            return function(i, a, o, n) {
                                return e.call(t, i, a, o, n)
                            }
                    }
                    return function() {
                        return e.apply(t, arguments)
                    }
                },
                j = function(e, t, i) {
                    return null == e ? _.identity : _.isFunction(e) ? k(e, t, i) : _.isObject(e) ? _.matcher(e) : _.property(e)
                };
            _.iteratee = function(e, t) {
                return j(e, t, 1 / 0)
            };
            var E = function(e, t) {
                    return function(i) {
                        var a = arguments.length;
                        if (a < 2 || null == i) return i;
                        for (var o = 1; o < a; o++)
                            for (var n = arguments[o], r = e(n), l = r.length, s = 0; s < l; s++) {
                                var c = r[s];
                                t && void 0 !== i[c] || (i[c] = n[c])
                            }
                        return i
                    }
                },
                C = function(e) {
                    if (!_.isObject(e)) return {};
                    if (y) return y(e);
                    x.prototype = e;
                    var t = new x;
                    return x.prototype = null, t
                },
                M = function(e) {
                    return function(t) {
                        return null == t ? void 0 : t[e]
                    }
                },
                S = Math.pow(2, 53) - 1,
                z = M("length"),
                T = function(e) {
                    var t = z(e);
                    return "number" == typeof t && t >= 0 && t <= S
                };
            _.each = _.forEach = function(e, t, i) {
                t = k(t, i);
                var a, o;
                if (T(e))
                    for (a = 0, o = e.length; a < o; a++) t(e[a], a, e);
                else {
                    var n = _.keys(e);
                    for (a = 0, o = n.length; a < o; a++) t(e[n[a]], n[a], e)
                }
                return e
            }, _.map = _.collect = function(e, t, i) {
                t = j(t, i);
                for (var a = !T(e) && _.keys(e), o = (a || e).length, n = Array(o), r = 0; r < o; r++) {
                    var l = a ? a[r] : r;
                    n[r] = t(e[l], l, e)
                }
                return n
            }, _.reduce = _.foldl = _.inject = i(1), _.reduceRight = _.foldr = i(-1), _.find = _.detect = function(e, t, i) {
                var a;
                if (a = T(e) ? _.findIndex(e, t, i) : _.findKey(e, t, i), void 0 !== a && a !== -1) return e[a]
            }, _.filter = _.select = function(e, t, i) {
                var a = [];
                return t = j(t, i), _.each(e, function(e, i, o) {
                    t(e, i, o) && a.push(e)
                }), a
            }, _.reject = function(e, t, i) {
                return _.filter(e, _.negate(j(t)), i)
            }, _.every = _.all = function(e, t, i) {
                t = j(t, i);
                for (var a = !T(e) && _.keys(e), o = (a || e).length, n = 0; n < o; n++) {
                    var r = a ? a[n] : n;
                    if (!t(e[r], r, e)) return !1
                }
                return !0
            }, _.some = _.any = function(e, t, i) {
                t = j(t, i);
                for (var a = !T(e) && _.keys(e), o = (a || e).length, n = 0; n < o; n++) {
                    var r = a ? a[n] : n;
                    if (t(e[r], r, e)) return !0
                }
                return !1
            }, _.contains = _.includes = _.include = function(e, t, i, a) {
                return T(e) || (e = _.values(e)), ("number" != typeof i || a) && (i = 0), _.indexOf(e, t, i) >= 0
            }, _.invoke = function(e, t) {
                var i = h.call(arguments, 2),
                    a = _.isFunction(t);
                return _.map(e, function(e) {
                    var o = a ? t : e[t];
                    return null == o ? o : o.apply(e, i)
                })
            }, _.pluck = function(e, t) {
                return _.map(e, _.property(t))
            }, _.where = function(e, t) {
                return _.filter(e, _.matcher(t))
            }, _.findWhere = function(e, t) {
                return _.find(e, _.matcher(t))
            }, _.max = function(e, t, i) {
                var a, o, n = -(1 / 0),
                    r = -(1 / 0);
                if (null == t && null != e) {
                    e = T(e) ? e : _.values(e);
                    for (var l = 0, s = e.length; l < s; l++) a = e[l], a > n && (n = a)
                } else t = j(t, i), _.each(e, function(e, i, a) {
                    o = t(e, i, a), (o > r || o === -(1 / 0) && n === -(1 / 0)) && (n = e, r = o)
                });
                return n
            }, _.min = function(e, t, i) {
                var a, o, n = 1 / 0,
                    r = 1 / 0;
                if (null == t && null != e) {
                    e = T(e) ? e : _.values(e);
                    for (var l = 0, s = e.length; l < s; l++) a = e[l], a < n && (n = a)
                } else t = j(t, i), _.each(e, function(e, i, a) {
                    o = t(e, i, a), (o < r || o === 1 / 0 && n === 1 / 0) && (n = e, r = o)
                });
                return n
            }, _.shuffle = function(e) {
                for (var t, i = T(e) ? e : _.values(e), a = i.length, o = Array(a), n = 0; n < a; n++) t = _.random(0, n), t !== n && (o[n] = o[t]), o[t] = i[n];
                return o
            }, _.sample = function(e, t, i) {
                return null == t || i ? (T(e) || (e = _.values(e)), e[_.random(e.length - 1)]) : _.shuffle(e).slice(0, Math.max(0, t))
            }, _.sortBy = function(e, t, i) {
                return t = j(t, i), _.pluck(_.map(e, function(e, i, a) {
                    return {
                        value: e,
                        index: i,
                        criteria: t(e, i, a)
                    }
                }).sort(function(e, t) {
                    var i = e.criteria,
                        a = t.criteria;
                    if (i !== a) {
                        if (i > a || void 0 === i) return 1;
                        if (i < a || void 0 === a) return -1
                    }
                    return e.index - t.index
                }), "value")
            };
            var I = function(e) {
                return function(t, i, a) {
                    var o = {};
                    return i = j(i, a), _.each(t, function(a, n) {
                        var r = i(a, n, t);
                        e(o, a, r)
                    }), o
                }
            };
            _.groupBy = I(function(e, t, i) {
                _.has(e, i) ? e[i].push(t) : e[i] = [t]
            }), _.indexBy = I(function(e, t, i) {
                e[i] = t
            }), _.countBy = I(function(e, t, i) {
                _.has(e, i) ? e[i] ++ : e[i] = 1
            }), _.toArray = function(e) {
                return e ? _.isArray(e) ? h.call(e) : T(e) ? _.map(e, _.identity) : _.values(e) : []
            }, _.size = function(e) {
                return null == e ? 0 : T(e) ? e.length : _.keys(e).length
            }, _.partition = function(e, t, i) {
                t = j(t, i);
                var a = [],
                    o = [];
                return _.each(e, function(e, i, n) {
                    (t(e, i, n) ? a : o).push(e)
                }), [a, o]
            }, _.first = _.head = _.take = function(e, t, i) {
                if (null != e) return null == t || i ? e[0] : _.initial(e, e.length - t)
            }, _.initial = function(e, t, i) {
                return h.call(e, 0, Math.max(0, e.length - (null == t || i ? 1 : t)))
            }, _.last = function(e, t, i) {
                if (null != e) return null == t || i ? e[e.length - 1] : _.rest(e, Math.max(0, e.length - t))
            }, _.rest = _.tail = _.drop = function(e, t, i) {
                return h.call(e, null == t || i ? 1 : t)
            }, _.compact = function(e) {
                return _.filter(e, _.identity)
            };
            var N = function(e, t, i, a) {
                for (var o = [], n = 0, r = a || 0, l = z(e); r < l; r++) {
                    var s = e[r];
                    if (T(s) && (_.isArray(s) || _.isArguments(s))) {
                        t || (s = N(s, t, i));
                        var c = 0,
                            d = s.length;
                        for (o.length += d; c < d;) o[n++] = s[c++]
                    } else i || (o[n++] = s)
                }
                return o
            };
            _.flatten = function(e, t) {
                return N(e, t, !1)
            }, _.without = function(e) {
                return _.difference(e, h.call(arguments, 1))
            }, _.uniq = _.unique = function(e, t, i, a) {
                _.isBoolean(t) || (a = i, i = t, t = !1), null != i && (i = j(i, a));
                for (var o = [], n = [], r = 0, l = z(e); r < l; r++) {
                    var s = e[r],
                        c = i ? i(s, r, e) : s;
                    t ? (r && n === c || o.push(s), n = c) : i ? _.contains(n, c) || (n.push(c), o.push(s)) : _.contains(o, s) || o.push(s)
                }
                return o
            }, _.union = function() {
                return _.uniq(N(arguments, !0, !0))
            }, _.intersection = function(e) {
                for (var t = [], i = arguments.length, a = 0, o = z(e); a < o; a++) {
                    var n = e[a];
                    if (!_.contains(t, n)) {
                        for (var r = 1; r < i && _.contains(arguments[r], n); r++);
                        r === i && t.push(n)
                    }
                }
                return t
            }, _.difference = function(e) {
                var t = N(arguments, !0, !0, 1);
                return _.filter(e, function(e) {
                    return !_.contains(t, e)
                })
            }, _.zip = function() {
                return _.unzip(arguments)
            }, _.unzip = function(e) {
                for (var t = e && _.max(e, z).length || 0, i = Array(t), a = 0; a < t; a++) i[a] = _.pluck(e, a);
                return i
            }, _.object = function(e, t) {
                for (var i = {}, a = 0, o = z(e); a < o; a++) t ? i[e[a]] = t[a] : i[e[a][0]] = e[a][1];
                return i
            }, _.findIndex = n(1), _.findLastIndex = n(-1), _.sortedIndex = function(e, t, i, a) {
                i = j(i, a, 1);
                for (var o = i(t), n = 0, r = z(e); n < r;) {
                    var l = Math.floor((n + r) / 2);
                    i(e[l]) < o ? n = l + 1 : r = l
                }
                return n
            }, _.indexOf = r(1, _.findIndex, _.sortedIndex), _.lastIndexOf = r(-1, _.findLastIndex), _.range = function(e, t, i) {
                null == t && (t = e || 0, e = 0), i = i || 1;
                for (var a = Math.max(Math.ceil((t - e) / i), 0), o = Array(a), n = 0; n < a; n++, e += i) o[n] = e;
                return o
            };
            var O = function(e, t, i, a, o) {
                if (!(a instanceof t)) return e.apply(i, o);
                var n = C(e.prototype),
                    r = e.apply(n, o);
                return _.isObject(r) ? r : n
            };
            _.bind = function(e, t) {
                if (w && e.bind === w) return w.apply(e, h.call(arguments, 1));
                if (!_.isFunction(e)) throw new TypeError("Bind must be called on a function");
                var i = h.call(arguments, 2),
                    a = function() {
                        return O(e, a, t, this, i.concat(h.call(arguments)))
                    };
                return a
            }, _.partial = function(e) {
                var t = h.call(arguments, 1),
                    i = function() {
                        for (var a = 0, o = t.length, n = Array(o), r = 0; r < o; r++) n[r] = t[r] === _ ? arguments[a++] : t[r];
                        for (; a < arguments.length;) n.push(arguments[a++]);
                        return O(e, i, this, this, n)
                    };
                return i
            }, _.bindAll = function(e) {
                var t, i, a = arguments.length;
                if (a <= 1) throw new Error("bindAll must be passed function names");
                for (t = 1; t < a; t++) i = arguments[t], e[i] = _.bind(e[i], e);
                return e
            }, _.memoize = function(e, t) {
                var i = function(a) {
                    var o = i.cache,
                        n = "" + (t ? t.apply(this, arguments) : a);
                    return _.has(o, n) || (o[n] = e.apply(this, arguments)), o[n]
                };
                return i.cache = {}, i
            }, _.delay = function(e, t) {
                var i = h.call(arguments, 2);
                return setTimeout(function() {
                    return e.apply(null, i)
                }, t)
            }, _.defer = _.partial(_.delay, _, 1), _.throttle = function(e, t, i) {
                var a, o, n, r = null,
                    l = 0;
                i || (i = {});
                var s = function() {
                    l = i.leading === !1 ? 0 : _.now(), r = null, n = e.apply(a, o), r || (a = o = null)
                };
                return function() {
                    var c = _.now();
                    l || i.leading !== !1 || (l = c);
                    var d = t - (c - l);
                    return a = this, o = arguments, d <= 0 || d > t ? (r && (clearTimeout(r), r = null), l = c, n = e.apply(a, o), r || (a = o = null)) : r || i.trailing === !1 || (r = setTimeout(s, d)), n
                }
            }, _.debounce = function(e, t, i) {
                var a, o, n, r, l, s = function() {
                    var c = _.now() - r;
                    c < t && c >= 0 ? a = setTimeout(s, t - c) : (a = null, i || (l = e.apply(n, o), a || (n = o = null)))
                };
                return function() {
                    n = this, o = arguments, r = _.now();
                    var c = i && !a;
                    return a || (a = setTimeout(s, t)), c && (l = e.apply(n, o), n = o = null), l
                }
            }, _.wrap = function(e, t) {
                return _.partial(t, e)
            }, _.negate = function(e) {
                return function() {
                    return !e.apply(this, arguments)
                }
            }, _.compose = function() {
                var e = arguments,
                    t = e.length - 1;
                return function() {
                    for (var i = t, a = e[t].apply(this, arguments); i--;) a = e[i].call(this, a);
                    return a
                }
            }, _.after = function(e, t) {
                return function() {
                    if (--e < 1) return t.apply(this, arguments)
                }
            }, _.before = function(e, t) {
                var i;
                return function() {
                    return --e > 0 && (i = t.apply(this, arguments)), e <= 1 && (t = null), i
                }
            }, _.once = _.partial(_.before, 2);
            var A = !{
                    toString: null
                }.propertyIsEnumerable("toString"),
                P = ["valueOf", "isPrototypeOf", "toString", "propertyIsEnumerable", "hasOwnProperty", "toLocaleString"];
            _.keys = function(e) {
                if (!_.isObject(e)) return [];
                if (b) return b(e);
                var t = [];
                for (var i in e) _.has(e, i) && t.push(i);
                return A && l(e, t), t
            }, _.allKeys = function(e) {
                if (!_.isObject(e)) return [];
                var t = [];
                for (var i in e) t.push(i);
                return A && l(e, t), t
            }, _.values = function(e) {
                for (var t = _.keys(e), i = t.length, a = Array(i), o = 0; o < i; o++) a[o] = e[t[o]];
                return a
            }, _.mapObject = function(e, t, i) {
                t = j(t, i);
                for (var a, o = _.keys(e), n = o.length, r = {}, l = 0; l < n; l++) a = o[l], r[a] = t(e[a], a, e);
                return r
            }, _.pairs = function(e) {
                for (var t = _.keys(e), i = t.length, a = Array(i), o = 0; o < i; o++) a[o] = [t[o], e[t[o]]];
                return a
            }, _.invert = function(e) {
                for (var t = {}, i = _.keys(e), a = 0, o = i.length; a < o; a++) t[e[i[a]]] = i[a];
                return t
            }, _.functions = _.methods = function(e) {
                var t = [];
                for (var i in e) _.isFunction(e[i]) && t.push(i);
                return t.sort()
            }, _.extend = E(_.allKeys), _.extendOwn = _.assign = E(_.keys), _.findKey = function(e, t, i) {
                t = j(t, i);
                for (var a, o = _.keys(e), n = 0, r = o.length; n < r; n++)
                    if (a = o[n], t(e[a], a, e)) return a
            }, _.pick = function(e, t, i) {
                var a, o, n = {},
                    r = e;
                if (null == r) return n;
                _.isFunction(t) ? (o = _.allKeys(r), a = k(t, i)) : (o = N(arguments, !1, !1, 1), a = function(e, t, i) {
                    return t in i
                }, r = Object(r));
                for (var l = 0, s = o.length; l < s; l++) {
                    var c = o[l],
                        d = r[c];
                    a(d, c, r) && (n[c] = d)
                }
                return n
            }, _.omit = function(e, t, i) {
                if (_.isFunction(t)) t = _.negate(t);
                else {
                    var a = _.map(N(arguments, !1, !1, 1), String);
                    t = function(e, t) {
                        return !_.contains(a, t)
                    }
                }
                return _.pick(e, t, i)
            }, _.defaults = E(_.allKeys, !0), _.create = function(e, t) {
                var i = C(e);
                return t && _.extendOwn(i, t), i
            }, _.clone = function(e) {
                return _.isObject(e) ? _.isArray(e) ? e.slice() : _.extend({}, e) : e
            }, _.tap = function(e, t) {
                return t(e), e
            }, _.isMatch = function(e, t) {
                var i = _.keys(t),
                    a = i.length;
                if (null == e) return !a;
                for (var o = Object(e), n = 0; n < a; n++) {
                    var r = i[n];
                    if (t[r] !== o[r] || !(r in o)) return !1
                }
                return !0
            };
            var L = function(e, t, i, a) {
                if (e === t) return 0 !== e || 1 / e === 1 / t;
                if (null == e || null == t) return e === t;
                e instanceof _ && (e = e._wrapped), t instanceof _ && (t = t._wrapped);
                var o = m.call(e);
                if (o !== m.call(t)) return !1;
                switch (o) {
                    case "[object RegExp]":
                    case "[object String]":
                        return "" + e == "" + t;
                    case "[object Number]":
                        return +e !== +e ? +t !== +t : 0 === +e ? 1 / +e === 1 / t : +e === +t;
                    case "[object Date]":
                    case "[object Boolean]":
                        return +e === +t
                }
                var n = "[object Array]" === o;
                if (!n) {
                    if ("object" != typeof e || "object" != typeof t) return !1;
                    var r = e.constructor,
                        l = t.constructor;
                    if (r !== l && !(_.isFunction(r) && r instanceof r && _.isFunction(l) && l instanceof l) && "constructor" in e && "constructor" in t) return !1
                }
                i = i || [], a = a || [];
                for (var s = i.length; s--;)
                    if (i[s] === e) return a[s] === t;
                if (i.push(e), a.push(t), n) {
                    if (s = e.length, s !== t.length) return !1;
                    for (; s--;)
                        if (!L(e[s], t[s], i, a)) return !1
                } else {
                    var c, d = _.keys(e);
                    if (s = d.length, _.keys(t).length !== s) return !1;
                    for (; s--;)
                        if (c = d[s], !_.has(t, c) || !L(e[c], t[c], i, a)) return !1
                }
                return i.pop(), a.pop(), !0
            };
            _.isEqual = function(e, t) {
                return L(e, t)
            }, _.isEmpty = function(e) {
                return null == e || (T(e) && (_.isArray(e) || _.isString(e) || _.isArguments(e)) ? 0 === e.length : 0 === _.keys(e).length)
            }, _.isElement = function(e) {
                return !(!e || 1 !== e.nodeType)
            }, _.isArray = v || function(e) {
                return "[object Array]" === m.call(e)
            }, _.isObject = function(e) {
                var t = typeof e;
                return "function" === t || "object" === t && !!e
            }, _.each(["Arguments", "Function", "String", "Number", "Date", "RegExp", "Error"], function(e) {
                _["is" + e] = function(t) {
                    return m.call(t) === "[object " + e + "]"
                }
            }), _.isArguments(arguments) || (_.isArguments = function(e) {
                return _.has(e, "callee")
            }), "function" != typeof /./ && "object" != typeof Int8Array && (_.isFunction = function(e) {
                return "function" == typeof e || !1
            }), _.isFinite = function(e) {
                return isFinite(e) && !isNaN(parseFloat(e))
            }, _.isNaN = function(e) {
                return _.isNumber(e) && e !== +e
            }, _.isBoolean = function(e) {
                return e === !0 || e === !1 || "[object Boolean]" === m.call(e)
            }, _.isNull = function(e) {
                return null === e
            }, _.isUndefined = function(e) {
                return void 0 === e
            }, _.has = function(e, t) {
                return null != e && g.call(e, t)
            }, _.noConflict = function() {
                return s._ = c, this
            }, _.identity = function(e) {
                return e
            }, _.constant = function(e) {
                return function() {
                    return e
                }
            }, _.noop = function() {}, _.property = M, _.propertyOf = function(e) {
                return null == e ? function() {} : function(t) {
                    return e[t]
                }
            }, _.matcher = _.matches = function(e) {
                return e = _.extendOwn({}, e),
                    function(t) {
                        return _.isMatch(t, e)
                    }
            }, _.times = function(e, t, i) {
                var a = Array(Math.max(0, e));
                t = k(t, i, 1);
                for (var o = 0; o < e; o++) a[o] = t(o);
                return a
            }, _.random = function(e, t) {
                return null == t && (t = e, e = 0), e + Math.floor(Math.random() * (t - e + 1))
            }, _.now = Date.now || function() {
                return (new Date).getTime()
            };
            var B = {
                    "&": "&amp;",
                    "<": "&lt;",
                    ">": "&gt;",
                    '"': "&quot;",
                    "'": "&#x27;",
                    "`": "&#x60;"
                },
                D = _.invert(B),
                H = function(e) {
                    var t = function(t) {
                            return e[t]
                        },
                        i = "(?:" + _.keys(e).join("|") + ")",
                        a = RegExp(i),
                        o = RegExp(i, "g");
                    return function(e) {
                        return e = null == e ? "" : "" + e, a.test(e) ? e.replace(o, t) : e
                    }
                };
            _.escape = H(B), _.unescape = H(D), _.result = function(e, t, i) {
                var a = null == e ? void 0 : e[t];
                return void 0 === a && (a = i), _.isFunction(a) ? a.call(e) : a
            };
            var F = 0;
            _.uniqueId = function(e) {
                var t = ++F + "";
                return e ? e + t : t
            }, _.templateSettings = {
                evaluate: /<%([\s\S]+?)%>/g,
                interpolate: /<%=([\s\S]+?)%>/g,
                escape: /<%-([\s\S]+?)%>/g
            };
            var R = /(.)^/,
                V = {
                    "'": "'",
                    "\\": "\\",
                    "\r": "r",
                    "\n": "n",
                    "\u2028": "u2028",
                    "\u2029": "u2029"
                },
                W = /\\|'|\r|\n|\u2028|\u2029/g,
                q = function(e) {
                    return "\\" + V[e]
                };
            _.template = function(e, t, i) {
                !t && i && (t = i), t = _.defaults({}, t, _.templateSettings);
                var a = RegExp([(t.escape || R).source, (t.interpolate || R).source, (t.evaluate || R).source].join("|") + "|$", "g"),
                    o = 0,
                    n = "__p+='";
                e.replace(a, function(t, i, a, r, l) {
                    return n += e.slice(o, l).replace(W, q), o = l + t.length, i ? n += "'+\n((__t=(" + i + "))==null?'':_.escape(__t))+\n'" : a ? n += "'+\n((__t=(" + a + "))==null?'':__t)+\n'" : r && (n += "';\n" + r + "\n__p+='"), t
                }), n += "';\n", t.variable || (n = "with(obj||{}){\n" + n + "}\n"), n = "var __t,__p='',__j=Array.prototype.join,print=function(){__p+=__j.call(arguments,'');};\n" + n + "return __p;\n";
                try {
                    var r = new Function(t.variable || "obj", "_", n)
                } catch (e) {
                    throw e.source = n, e
                }
                var l = function(e) {
                        return r.call(this, e, _)
                    },
                    s = t.variable || "obj";
                return l.source = "function(" + s + "){\n" + n + "}", l
            }, _.chain = function(e) {
                var t = _(e);
                return t._chain = !0, t
            };
            var U = function(e, t) {
                return e._chain ? _(t).chain() : t
            };
            _.mixin = function(e) {
                _.each(_.functions(e), function(t) {
                    var i = _[t] = e[t];
                    _.prototype[t] = function() {
                        var e = [this._wrapped];
                        return p.apply(e, arguments), U(this, i.apply(_, e))
                    }
                })
            }, _.mixin(_), _.each(["pop", "push", "reverse", "shift", "sort", "splice", "unshift"], function(e) {
                var t = d[e];
                _.prototype[e] = function() {
                    var i = this._wrapped;
                    return t.apply(i, arguments), "shift" !== e && "splice" !== e || 0 !== i.length || delete i[0], U(this, i)
                }
            }), _.each(["concat", "join", "slice"], function(e) {
                var t = d[e];
                _.prototype[e] = function() {
                    return U(this, t.apply(this._wrapped, arguments))
                }
            }), _.prototype.value = function() {
                return this._wrapped
            }, _.prototype.valueOf = _.prototype.toJSON = _.prototype.value, _.prototype.toString = function() {
                return "" + this._wrapped
            }, a = [], o = function() {
                return _
            }.apply(t, a), !(void 0 !== o && (e.exports = o))
        }).call(this)
    }, function(e, t, i) {
        "use strict";

        function a(e) {
            return e && e.__esModule ? e : {
                default: e
            }
        }
        Object.defineProperty(t, "__esModule", {
            value: !0
        });
        var o = i(2),
            n = a(o);
        "undefined" == typeof window.console && (window.console = {
            log: function() {},
            warn: function() {},
            error: function() {},
            info: function() {}
        });
        var r = function(e, t, i) {
                n.default.logs && (t && (t += ":", "warn" == e && (t += " WARN"), "error" == e && (t += " ERROR"), i.unshift(t)), console[e].apply ? console[e].apply(console, i) : console[e](i.join()))
            },
            l = function(e) {
                return {
                    log: function() {
                        var t = Array.prototype.slice.call(arguments);
                        r("log", e, t)
                    },
                    info: function() {
                        var t = Array.prototype.slice.call(arguments);
                        r("info", e, t)
                    },
                    warn: function() {
                        var t = Array.prototype.slice.call(arguments);
                        r("warn", e, t)
                    },
                    error: function() {
                        var t = Array.prototype.slice.call(arguments);
                        r("error", e, t)
                    }
                }
            };
        t.default = {
            name: l
        }
    }, function(e, t) {
        "use strict";
        t.__esModule = !0, t.default = function(e, t) {
            if (!(e instanceof t)) throw new TypeError("Cannot call a class as a function")
        }
    }, function(e, t, i) {
        "use strict";

        function a(e) {
            return e && e.__esModule ? e : {
                default: e
            }
        }
        t.__esModule = !0;
        var o = i(73),
            n = a(o);
        t.default = function() {
            function e(e, t) {
                for (var i = 0; i < t.length; i++) {
                    var a = t[i];
                    a.enumerable = a.enumerable || !1, a.configurable = !0, "value" in a && (a.writable = !0), (0, n.default)(e, a.key, a)
                }
            }
            return function(t, i, a) {
                return i && e(t.prototype, i), a && e(t, a), t
            }
        }()
    }, function(e, t, i) {
        e.exports = {
            default: i(189),
            __esModule: !0
        }
    }, function(e, t, i) {
        "use strict";

        function a(e) {
            return e && e.__esModule ? e : {
                default: e
            }
        }
        t.__esModule = !0;
        var o = i(181),
            n = a(o),
            r = i(180),
            l = a(r),
            s = i(24),
            c = a(s);
        t.default = function(e, t) {
            if ("function" != typeof t && null !== t) throw new TypeError("Super expression must either be null or a function, not " + ("undefined" == typeof t ? "undefined" : (0, c.default)(t)));
            e.prototype = (0, l.default)(t && t.prototype, {
                constructor: {
                    value: e,
                    enumerable: !1,
                    writable: !0,
                    configurable: !0
                }
            }), t && (n.default ? (0, n.default)(e, t) : e.__proto__ = t)
        }
    }, function(e, t, i) {
        "use strict";

        function a(e) {
            return e && e.__esModule ? e : {
                default: e
            }
        }
        t.__esModule = !0;
        var o = i(24),
            n = a(o);
        t.default = function(e, t) {
            if (!e) throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
            return !t || "object" !== ("undefined" == typeof t ? "undefined" : (0, n.default)(t)) && "function" != typeof t ? e : t
        }
    }, function(e, t, i) {
        "use strict";

        function a(e) {
            return e && e.__esModule ? e : {
                default: e
            }
        }
        Object.defineProperty(t, "__esModule", {
            value: !0
        });
        var o = i(24),
            n = a(o),
            r = i(2),
            l = a(r),
            s = i(4),
            c = a(s),
            d = i(14),
            u = a(d),
            f = i(27),
            p = (a(f), i(18)),
            h = a(p),
            m = i(41),
            g = a(m),
            v = i(13),
            b = a(v),
            w = i(1),
            y = a(w),
            x = {
                route: "label",
                is_online: 0,
                is_focused: 0,
                is_input_focused: 0,
                chat_started: !1,
                show_label_buttons: !1,
                show_outer_copyright: !1,
                widget_color: l.default.widget_color,
                widget_font_color: l.default.widget_font_color,
                cap_id: null,
                cap_result: null,
                is_custom_label: !1,
                current_title: y.default.getCurrentPage().title,
                proactiveName: !1,
                forcedOffline: !1,
                callText: null,
                isSeparateWindow: !1,
                proactive: !1,
                isShowNativeMobileMenu: !1,
                eula_accepted: !1,
                show_eula: !1
            },
            _ = (0, g.default)(x, l.default.widget_id + "_app");
        _.widget_color = l.default.widget_color, _.widget_font_color = l.default.widget_font_color, _.is_online = "online" == l.default.chat_mode, ("offline" == l.default.chat_mode && _.chat_started || c.default.indexOf(["preview", "editor"], (0, w.isWixContext)()) !== -1) && (_.is_online = !0), c.default.indexOf(["preview", "editor"], (0, w.isWixContext)()) !== -1 && (_.chat_started = !1), _.chat_started ? "cw_call_end" != u.default.cw_call.status && "cw_error" != u.default.cw_call.status || (u.default.cw_call.status = !1) : (_.route = "label", u.default.evaluate = !1, u.default.cw_call.status = !1, u.default.cw_call.error = !1), b.default.mobile() && (_.isSeparateWindow = !1, _.route = "label"), c.default.defaults(l.default, {
            contacts_settings: {
                name: {
                    show: !1,
                    required: !1
                },
                phone: {
                    show: !1,
                    required: !1
                },
                email: {
                    show: !1,
                    required: !1
                }
            }
        });
        var k = !0;
        c.default.each(["name", "phone", "email"], function(e) {
            l.default.contacts_settings[e].show && (k = !1)
        }, void 0), k && (l.default.contacts_ask = 2), 1 != l.default.hide_offline || 512 & l.default.options || (l.default.hide_offline = 0), 1 != l.default.show_rate_form || 64 & l.default.options || (l.default.show_rate_form = 0);
        var j = !1;
        if (c.default.each(l.default.rules, function(e) {
                "hide" === e.commands[0].command && (0, w.checkTimeConditions)(e.conditions, e.type, e.name) && (j = !0)
            }), (!_.is_online && l.default.hide_offline || u.default.is_blacklisted || j || b.default.mobileOrTablet() && l.default.disable_mobile || window.parent.jivo_cobrowse || "client_site" === window.parent.name) && (_.route = "hidden"), "object" === (0, n.default)(_.proactive)) {
            var E = !1;
            c.default.each(l.default.rules, function(e) {
                var t = e.commands[0];
                "proactive" === t.command && (E = t.params.message === _.proactive.text)
            }, void 0), E || (_.proactive = !1, 1 == h.default.data.length && h.default.getProactive && h.default.data.pop())
        }!b.default.mobile() && _.zoom && (_.zoom = null), _.isShowNativeMobileMenu = !1, _.show_eula = !1, t.default = _
    }, function(e, t, i) {
        "use strict";

        function a(e) {
            return e && e.__esModule ? e : {
                default: e
            }
        }
        Object.defineProperty(t, "__esModule", {
            value: !0
        });
        var o = i(24),
            n = a(o),
            r = i(8),
            l = a(r),
            s = i(6),
            c = a(s),
            d = i(7),
            u = a(d),
            f = i(10),
            p = a(f),
            h = i(9),
            m = a(h),
            g = i(3),
            v = a(g),
            b = i(5),
            w = a(b),
            y = i(4),
            x = a(y),
            _ = w.default.name("BaseComponent"),
            k = i(52),
            j = k.EventEmitter,
            E = function(e) {
                function t(e) {
                    (0, c.default)(this, t);
                    var i = (0, p.default)(this, (t.__proto__ || (0, l.default)(t)).call(this, e));
                    return i.listeners = [], i.emitter = new j, i
                }
                return (0, m.default)(t, e), (0, u.default)(t, [{
                    key: "subscribe",
                    value: function(e, t) {
                        return this.emitter.addListener(e, t)
                    }
                }, {
                    key: "trigger",
                    value: function(e, t) {
                        this.emitter.emit(e, t)
                    }
                }, {
                    key: "delegate",
                    value: function(e, t) {
                        return function(i) {
                            for (var a = i.target; a !== i.currentTarget;) {
                                var o = a.getAttribute("dgName");
                                if (o && o === e) return i.delegateTarget = a, t(i);
                                a = a.parentNode
                            }
                        }
                    }
                }, {
                    key: "on",
                    value: function() {
                        var e = Array.prototype.slice.call(arguments),
                            t = e[0],
                            i = "JivoStore" == t.__type ? e[1] : e[2],
                            a = "JivoStore" == t.__type ? "update" : e[1];
                        if ("object" != ("undefined" == typeof a ? "undefined" : (0, n.default)(a))) {
                            var o;
                            if ("function" == typeof t.on ? o = "on" : "function" == typeof t.addListener && (o = "addListener"), o) {
                                var r = t[o](a, i);
                                this.listeners.push({
                                    type: o,
                                    target: t,
                                    event: a,
                                    callback: i,
                                    subscription: r
                                })
                            } else _.error("error cant find type")
                        } else
                            for (var l in a) "string" == typeof l && this.on(t, l, a[l])
                    }
                }, {
                    key: "off",
                    value: function() {
                        for (var e; e = this.listeners.shift();) {
                            var t;
                            t = "on" == e.type ? "off" : "removeListener", e.target[t] ? e.target[t](e.event, e.callback) : e.subscription && "function" == typeof e.subscription.remove ? e.subscription.remove() : _.error("error cant find type")
                        }
                    }
                }, {
                    key: "getClasses",
                    value: function(e) {
                        var t = {},
                            i = e.styles || {};
                        return x.default.each(i, function(i, a) {
                            t[a] = {};
                            var o = "";
                            i[1] && (t[a].style = i[1]), x.default.each(i[0], function(t, i) {
                                o += t ? e.style[i] + " " : ""
                            }), " " === o.charAt(o.length - 1) && (o = o.substr(0, o.length - 1)), t[a].className = o
                        }), t
                    }
                }, {
                    key: "getRenderData",
                    value: function() {}
                }, {
                    key: "renderData",
                    value: function() {}
                }, {
                    key: "render",
                    value: function() {
                        var e = this.getRenderData(),
                            t = this.getClasses(e);
                        return this.renderData(e.data || {}, t)
                    }
                }, {
                    key: "componentWillUnmount",
                    value: function() {
                        this.off(), this.emitter.removeAllListeners()
                    }
                }]), t
            }(v.default.Component);
        t.default = E
    }, function(e, t, i) {
        "use strict";

        function a(e) {
            return e && e.__esModule ? e : {
                default: e
            }
        }
        Object.defineProperty(t, "__esModule", {
            value: !0
        });
        var o = i(24),
            n = a(o),
            r = void 0,
            l = void 0,
            s = void 0,
            c = void 0,
            d = void 0;
        l = window.device, r = {}, window.device = r, d = window.navigator.userAgent.toLowerCase(), r.safari = function() {
            return s("safari") && !r.chrome()
        }, r.chrome = function() {
            return s("chrome")
        }, r.ios = function() {
            return r.iphone() || r.ipod() || r.ipad()
        }, r.iphone = function() {
            return !r.windows() && s("iphone")
        }, r.ipod = function() {
            return s("ipod")
        }, r.ipad = function() {
            return s("ipad")
        }, r.chromeIOS = function() {
            return s("crios")
        }, r.android = function() {
            return !r.windows() && s("android")
        }, r.androidPhone = function() {
            return r.android() && s("mobile")
        }, r.androidTablet = function() {
            return r.android() && !s("mobile")
        }, r.blackberry = function() {
            return s("blackberry") || s("bb10") || s("rim")
        }, r.blackberryPhone = function() {
            return r.blackberry() && !s("tablet")
        }, r.blackberryTablet = function() {
            return r.blackberry() && s("tablet")
        }, r.windows = function() {
            return s("windows")
        }, r.windowsPhone = function() {
            return r.windows() && s("phone")
        }, r.windowsTablet = function() {
            return r.windows() && s("touch") && !r.windowsPhone() && !s("trident")
        }, r.fxos = function() {
            return (s("(mobile;") || s("(tablet;")) && s("; rv:")
        }, r.fxosPhone = function() {
            return r.fxos() && s("mobile")
        }, r.fxosTablet = function() {
            return r.fxos() && s("tablet")
        }, r.meego = function() {
            return s("meego")
        }, r.cordova = function() {
            return window.cordova && "file:" === location.protocol
        }, r.svgSupportFix = function() {
            var e = "undefined" != typeof SVGRect;
            return window.parent.SVGElement && (window.parent.SVGElement.prototype.hasClass || (window.parent.SVGElement.prototype.hasClass = function(e) {
                return new RegExp("(\\s|^)" + e + "(\\s|$)").test(this.getAttribute("class"))
            }), window.parent.SVGElement.prototype.hasClass || (window.parent.SVGElement.prototype.addClass = function(e) {
                this.hasClass(e) || this.setAttribute("class", this.getAttribute("class") + " " + e)
            }), window.parent.SVGElement.prototype.removeClass || (window.parent.SVGElement.prototype.removeClass = function(e) {
                var t = this.getAttribute("class").replace(new RegExp("(\\s|^)" + e + "(\\s|$)", "g"), "$2");
                this.hasClass(e) && this.setAttribute("class", t)
            }), window.parent.SVGElement.prototype.toggleClass || (SVGElement.prototype.toggleClass = function(e) {
                this.hasClass(e) ? this.removeClass(e) : this.addClass(e)
            })), e
        }, r.nodeWebkit = function() {
            return "object" === (0, n.default)(window.process)
        }, r.mobile = function() {
            return r.androidPhone() || r.iphone() || r.ipod() || r.windowsPhone() || r.blackberryPhone() || r.fxosPhone() || r.meego()
        }, r.tablet = function() {
            return r.ipad() || r.androidTablet() || r.blackberryTablet() || r.windowsTablet() || r.fxosTablet()
        }, r.mobileOrTablet = function() {
            return r.tablet() || r.mobile()
        }, r.desktop = function() {
            return !r.tablet() && !r.mobile()
        }, r.television = function() {
            var e = void 0,
                t = ["googletv", "viera", "smarttv", "internet.tv", "netcast", "nettv", "appletv", "boxee", "kylo", "roku", "dlnadoc", "roku", "pov_tv", "hbbtv", "ce-html"];
            for (e = 0; e < t.length;) {
                if (s(t[e])) return !0;
                e++
            }
            return !1
        }, r.portrait = function() {
            return window.innerHeight / window.innerWidth > 1
        }, r.landscape = function() {
            return window.innerHeight / window.innerWidth < 1
        }, r.noConflict = function() {
            return window.device = l, this
        }, r.osVersion = function() {
            var e = null;
            if (r.ios) {
                var t = /OS (\d+)_(\d+)_?(\d+)?/.exec(window.navigator.appVersion);
                t && (e = parseFloat(t[1] + "." + t[2]))
            }
            return e
        }, r.getDevice = function() {
            return c ? c : (r.desktop() ? c = "desktop" : r.mobile() ? c = "mobile" : r.tablet() && (c = "tablet"), c)
        }, s = function(e) {
            return d.indexOf(e) !== -1
        };
        var u = r.noConflict();
        t.default = u
    }, function(e, t, i) {
        "use strict";

        function a(e) {
            return e && e.__esModule ? e : {
                default: e
            }
        }
        Object.defineProperty(t, "__esModule", {
            value: !0
        });
        var o = i(2),
            n = a(o),
            r = i(41),
            l = a(r),
            s = {
                jv_sess_id: null,
                client_id: null,
                pa_id: null,
                is_blacklisted: !1,
                is_introduced: !1,
                client_info: {
                    client_name: null,
                    phone: null,
                    email: null,
                    description: null
                },
                cw_call: {
                    status: !1
                },
                cw_call_enabled: !1,
                department_id: null,
                evaluate: !1,
                last_message: null,
                last_typing: 0,
                has_integration: !1,
                utm: {},
                visitorId: 0
            },
            c = (0, l.default)(s, n.default.widget_id + "_client");
        n.default.callback_settings.time || (c.cw_call_enabled = !1), n.default.joint || (c.has_integration = !1), t.default = c
    }, function(e, t, i) {
        "use strict";

        function a(e) {
            return e && e.__esModule ? e : {
                default: e
            }
        }

        function o(e) {
            return window.base_langpack && window.base_langpack[e] ? window.base_langpack[e].replace(/\n/g, "<br />").replace(/&nbsp;/g, "�") : e
        }

        function n(e) {
            return "custom_langpack" in s.default && e in s.default.custom_langpack ? s.default.custom_langpack[e].replace(/\n/g, "<br />").replace(/&quot;/g, '"').replace(/&#039;/g, "'") : o(e)
        }

        function r(e) {
            var t = window.parent.currentDownloadLocale,
                i = window.parent.customLocale,
                a = window.parent.domKeys;
            return a && a[e] && t && t[e] ? i[e] || t[e] : "{{_" + e + "_}}"
        }
        Object.defineProperty(t, "__esModule", {
            value: !0
        });
        var l = i(2),
            s = a(l);
        t.default = function() {
            return window.parent && window.parent.__jivoPhraseappEditor ? r : n
        }()
    }, function(e, t, i) {
        "use strict";

        function a(e) {
            return e && e.__esModule ? e : {
                default: e
            }
        }

        function o() {
            var e = m.default.getProactive(),
                t = p.default.agent_id || !!w.default.proactive && w.default.proactive.agent_info.agent_id;
            return !(!t || !e) && e
        }
        Object.defineProperty(t, "__esModule", {
            value: !0
        });
        var n, r = i(21),
            l = a(r),
            s = i(33),
            c = a(s),
            d = i(14),
            u = a(d),
            f = i(27),
            p = a(f),
            h = i(18),
            m = a(h),
            g = i(56),
            v = a(g),
            b = i(11),
            w = a(b),
            y = i(49),
            x = (a(y), i(29)),
            _ = a(x),
            k = i(1),
            j = a(k),
            E = i(2),
            C = a(E),
            M = i(13),
            S = a(M),
            z = i(55),
            T = a(z),
            I = i(4),
            N = a(I),
            O = i(32),
            A = a(O),
            P = i(48),
            L = a(P),
            B = i(26),
            D = a(B),
            H = i(94),
            F = a(H),
            R = i(15),
            V = a(R),
            W = i(5),
            q = a(W),
            U = q.default.name("Actions"),
            G = function() {
                var e = C.default.departments && C.default.departments.length && N.default.indexOf([-1, 0, 2, 3], C.default.contacts_ask) != -1;
                return !(!e || p.default.agent_id || w.default.chat_started || u.default.department_id || 1 != w.default.is_online) && (w.default.route = "chat/departments", !0)
            },
            X = null,
            Y = {
                result: null
            },
            Z = N.default.debounce(function() {
                if (!u.default.jv_sess_id) return void U.log("updateClient no session.");
                var e = !1;
                0 == w.default.route.indexOf("chat") && w.default.route.indexOf("min") == -1 && (e = !0);
                var t = {
                        name: "update_client",
                        chat_opened: e,
                        page_visible: !!(0, k.pageVisible)(),
                        jv_sess_id: u.default.jv_sess_id
                    },
                    i = N.default.findWhere(m.default.data, {
                        proactive: 1
                    });
                !w.default.chat_started && p.default.agent_id && i && (t.proactive_rule = {
                    invitation_text: i.text,
                    agent_id: i.agent_id
                }), X != (0, c.default)(t) && (X = (0, c.default)(t), _.default.sendIfConnected(t))
            }, 50),
            J = "",
            K = 0,
            Q = !1,
            $ = {
                vk: !1,
                fb: !1
            };
        t.default = {
            systemMessage: function(e) {
                var t = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : "systemMessage";
                m.default.push(new v.default({
                    text: e,
                    type: t
                }))
            },
            requestCWAvailable: function(e) {
                j.default.callWidgetPing(function(t) {
                    u.default.cw_call_enabled = 1 == t.show_form, u.default.cw_call_enabled && "function" == typeof e && e()
                })
            },
            requestApiCWAvailable: function(e) {
                j.default.callWidgetPing(function(t) {
                    u.default.cw_call_enabled = 1 == t.show_form, e(u.default.cw_call_enabled && "function" == typeof e ? {
                        result: "ok"
                    } : {
                        result: "fail",
                        reason: "Callback unavaiable"
                    })
                })
            },
            navigate: function(e) {
                return U.log("navigate", e, G()), "hidden" === e || "hidden" === w.default.route ? (U.log("Offline form disabled."), w.default.route = "hidden") : (S.default.desktop() ? (w.default.show_label_buttons = !1, w.default.show_outer_copyright = !1) : S.default.mobile() ? "label" !== e && (w.default.isSeparateWindow = !0) : S.default.tablet() && ("label" === e ? t.default.restoreScroll() : t.default.getScroll()), "chat" == e && 1 === C.default.contacts_ask && !u.default.is_introduced && 0 === m.default.data.length && w.default.is_focused ? w.default.route = "chat/introduce" : "chat" == e && G() || (w.default.route = e), S.default.mobile() && w.default.isSeparateWindow && G() && (w.default.route = "chat/departments"), (0, k._callUserFunction)("onChangeState", w.default.route), void(w.default.is_online || 0 != w.default.route.indexOf("chat") || t.default.offlineAck()))
            },
            setOnline: function() {
                w.default.is_online = !0
            },
            setOffline: function() {
                w.default.is_online = N.default.indexOf(["preview", "editor"], (0, k.isWixContext)()) !== -1 || !1
            },
            toggleCallChat: function() {
                w.default.is_online ? "chat" == w.default.route || "chat/departments" == w.default.route ? (w.default.route = "chat/call", (0, k.telemetry)("cw_online_header_button")) : "chat/min" == w.default.route ? w.default.route = "chat/call" : w.default.route = "chat" : (w.default.route = "call", (0, k.telemetry)("cw_offline_header_button")), U.log("toggleCallChat", w.default.route)
            },
            pingAndOpenCall: function() {
                U.info("pindAndOpenCall"), j.default.callWidgetPing(function(e) {
                    u.default.cw_call_enabled = !!e.show_form, !e.show_form || "label" != w.default.route && w.default.is_online ? e.show_form && "label" != w.default.route && w.default.is_online && (U.log("api toggle call form"), t.default.toggleCallChat()) : ((0, k.telemetry)("cw_api_call_open"), w.default.callText = null, t.default.navigate("call"), "function" == typeof cb && cb()), A.default.trackCallWidgetRequested("apiCall")
                }, {
                    title: !1,
                    invitation: "jivo_api.open"
                })
            },
            openMobileNativeMenu: function() {
                w.default.isShowNativeMobileMenu = !0
            },
            closeMobileNativeMenu: function() {
                w.default.isShowNativeMobileMenu = !1
            },
            getScroll: function() {
                (0, k.getPageWindow)().document.body.scrollTop && (n = (0, k.getPageWindow)().document.body.scrollTop)
            },
            restoreScroll: function() {
                setTimeout(function() {
                    n > 0 && ((0, k.getPageWindow)().document.body.scrollTop = n), n = null
                }, 50)
            },
            closeWidget: function(e) {
                if (w.default.is_focused = 0, S.default.mobile()) w.default.route = "label", w.default.isSeparateWindow = !1, e || (0, k._callUserFunction)("onClose");
                else {
                    if (w.default.chat_started && w.default.is_online ? 0 == w.default.route.indexOf("call") ? w.default.route = "label" : 0 == w.default.route.indexOf("chat") && p.default.agent_id && 0 != p.default.agent_id ? w.default.route = "chat/min" : w.default.route = "label" : w.default.route = "label", S.default.tablet()) {
                        var i = 1 == m.default.data.length && N.default.findWhere(m.default.data, {
                            proactive: 1
                        });
                        i || t.default.restoreScroll()
                    }
                    if ((0, k.cookie)("close_time", (new Date).getTime()), "chat/min" != w.default.route && "call/min" != w.default.route) {
                        var a = o();
                        a && w.default.proactiveName && (A.default.trackProactiveInvitationRejected(w.default.proactiveName || a), w.default.proactiveName = !1), (0, k._callUserFunction)("onClose")
                    } else parent.document.getElementById("jivo_custom_widget") || (0, k._callUserFunction)("onClose")
                }(0, k._callUserFunction)("onChangeState", w.default.route)
            },
            hideWidget: function() {
                t.default.navigate("hidden")
            },
            showLabelButtons: function(e) {
                w.default.show_label_buttons = e
            },
            showOuterCopyright: function(e) {
                S.default.tablet() && (e = !1), w.default.show_outer_copyright = e
            },
            setWidgetColor: function(e) {
                w.default.widget_color = e
            },
            setClientContactInfo: function(e) {
                U.log("setClientContactInfo", e), (0, l.default)(u.default.client_info, {
                    client_name: e.name || e.client_name,
                    phone: e.phone,
                    email: e.email,
                    description: e.description
                }), u.default.is_introduced = !0, w.default.is_online && (_.default.sendIfConnected((0, l.default)({
                    name: "introduction"
                }, u.default.client_info)), A.default.trackGaveContacts(), (0, k._callUserFunction)("onIntroduction"))
            },
            sendClientMessage: function(e, i) {
                var a = new v.default({
                    type: "clientMessage",
                    text: e,
                    sended: !0
                });
                Q || m.default.push(a);
                var n = {
                    name: "client_message",
                    message: a.text,
                    private_id: a.private_id
                };
                u.default.department_id && (n.widget_department_id = u.default.department_id);
                var r = o();
                r ? A.default.trackProactiveInvitationAccepted(w.default.proactiveName || r) : m.default.hasAgentMessages() ? 1 === m.default.getClientMessages() && A.default.trackClientAnswerAgentChatRequest() : 1 === m.default.data.length && A.default.trackClientInitChat(), 1 === m.default.getClientMessages() && ((0, k._callUserFunction)("onMessageSent"), C.default.visitors_insight || _.default.isConnected() || (a.sended = !0)), setTimeout(function() {
                    var e = N.default.findWhere(m.default.data, {
                        private_id: a.private_id
                    });
                    if (e && !e.msg_id) {
                        e.sended = !1;
                        var t = N.default.findWhere(_.default.msg_buf, {
                            private_id: a.private_id
                        });
                        t || _.default.msg_buf.push(n), m.default.dispatch(), (0, k.telemetry)("client_message_send_error")
                    }
                }, 2e3), 3 == C.default.contacts_ask && ($.fb || $.vk) && t.default.initSocial(), Q && (n.media = Q.file, n.private_id = Q.privateId, Q = !1), w.default.chat_started = !0, _.default.send(n)
            },
            storeMediaFile: function(e, t) {
                Q = {
                    file: e,
                    privateId: t
                }
            },
            setSocial: function(e) {
                $ = e
            },
            getSocial: function() {
                if ($.vk || $.fb) return $
            },
            initSocial: function() {
                1 !== m.default.getClientMessages() || S.default.mobileOrTablet() || setTimeout(function() {
                    m.default.push(new v.default({
                        text: (0, V.default)("social_online_text"),
                        type: "systemMessageSocialOp"
                    })), setTimeout(function() {
                        t.default.addSocialMessage()
                    }, 2e3)
                }, 2e3)
            },
            addSocialMessage: function() {
                u.default.client_info.email || u.default.has_integration || S.default.mobileOrTablet() || m.default.getSocialMessage("systemSocial") || !(m.default.getClientMessages() > 0) || m.default.push(new v.default({
                    text: "",
                    type: "systemSocial"
                }))
            },
            sendOfflineMessage: function(e) {
                _.default.send({
                    name: "offline_message",
                    message: e.message,
                    email: e.email,
                    phone: e.phone,
                    client_name: e.name || e.client_name,
                    cap_symbols: e.cap_symbols || "",
                    from_online: w.default.forcedOffline,
                    description: u.default.client_info.description
                }), A.default.trackOfflineMessageSent()
            },
            setDepartmentId: function(e) {
                u.default.department_id = e, U.log("set department id", e)
            },
            startCall: function(e) {
                var t = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : "some invitation text",
                    i = arguments[2];
                U.log("startCall from chat", e), u.default.client_info.phone = e, w.default.chat_started = !0, _.default.send({
                    name: "cw_call",
                    tel: e,
                    invitation_text: t || !1
                }), A.default.trackCallWidgetRequested(), (0, k.telemetry)("cw_start_call", {
                    param1: i
                })
            },
            pageVisible: function(e) {
                U.log("pageVisible", e), Z()
            },
            sendEvaluation: function(e) {
                (0, k.telemetry)("client_rate_form", {
                    param1: e
                }), u.default.evaluate = "0" !== e;
                var t = void 0;
                N.default.each(m.default.data, function(e) {
                    "agentMessage" === e.type && e.chat_id && (t = e.chat_id)
                }), t ? _.default.send({
                    name: "rate",
                    chat_id: t,
                    rate: e
                }) : U.log("sendEvaluation", "error: no chat_id for rate form")
            },
            markEvaluated: function() {
                u.default.evaluate = !0
            },
            markIntroduced: function() {
                u.default.is_introduced = !0
            },
            handleFile: function(e, t, i) {
                var a = {
                    name: "client_service_message",
                    service: "file_transfer",
                    file_id: t,
                    file_name: i,
                    event: "file_received"
                };
                U.log("handleFile", e, t, i, a), e || (a.event = "file_declined"), _.default.send(a), T.default.stopBlink()
            },
            clientTyping: function e(t) {
                var e = t ? 1 : 0;
                1 == C.default.typing_insight && K != e && (K = e, _.default.sendIfConnected({
                    name: "client_typing",
                    typing: e
                }))
            },
            typingInsight: function(e) {
                1 == C.default.typing_insight && J != e && (J = e, _.default.sendIfConnected({
                    name: "client_service_message",
                    service: "typing_insight",
                    event: "input_changed",
                    new_val: e
                }))
            },
            updateTitle: function(e, t) {
                if (U.log("updateTitle", e), !window || !window.location) return void U.log("no window");
                if (!S.default.mobileOrTablet() || !w.default.isSeparateWindow) {
                    var i = t || window.location.href;
                    U.log("updateTitle url", i), !w.default.is_online || w.default.chat_started && L.default.isCreated() || (0, k.changeBrowserLocation)(i, e), _.default.sendIfConnected({
                        name: "url_change",
                        url: i,
                        title: (0, k.setSubstrTitle)(e)
                    })
                }
            },
            agentMessageAck: function(e) {
                _.default.sendIfConnected({
                    name: "agent_message_ack",
                    ack_msg_ids: e
                })
            },
            onFocus: function() {
                w.default.is_input_focused = 1, S.default.tablet() && D.default.addOverpay()
            },
            onBlur: function(e) {
                w.default.is_input_focused = 0, S.default.tablet() && D.default.removeOverpay()
            },
            offlineAck: function(e) {
                Y = e || Y, "ok" === Y.result ? (w.default.cap_result = null, w.default.route = "chat/msg") : "error" === Y.result ? (null === w.default.cap_result ? w.default.cap_result = "ok" : w.default.cap_result = "error", w.default.route = "chat/captcha") : (w.default.cap_result = null, w.default.route = "chat")
            },
            navigateServiceMessage: function() {
                !S.default.mobile() && ["label", "chat/min"].indexOf(w.default.route) >= 0 && t.default.navigate("chat")
            },
            showEula: function(e, t) {
                C.default.eula && (w.default.show_eula = e, t && F.default.setEulaLink(t), S.default.desktop() && document.activeElement && "function" == typeof document.activeElement.blur && document.activeElement.blur(), (0, k.telemetry)("eula_shown"))
            },
            acceptEula: function() {
                w.default.eula_accepted = !0, _.default.sendIfConnected({
                    name: "accept_eula"
                }), (0, k.telemetry)("eula_accepted")
            }
        }
    }, , function(e, t, i) {
        "use strict";

        function a(e) {
            return e && e.__esModule ? e : {
                default: e
            }
        }
        Object.defineProperty(t, "__esModule", {
            value: !0
        });
        var o = i(33),
            n = a(o),
            r = i(90),
            l = a(r),
            s = i(63),
            c = a(s),
            d = i(41),
            u = a(d),
            f = i(1),
            p = i(4),
            h = a(p),
            m = i(11),
            g = a(m),
            v = i(14),
            b = a(v),
            w = i(13),
            y = a(w),
            x = {
                data: [],
                push: function(e) {
                    var t = this.yandexKassaHelper(e);
                    e.media && ("agentMessage" == e.type ? e.type = "agentMediaMessage" : e.type = "mediaMessage"), this.data.push(t), this.dispatch()
                },
                yandexKassaHelper: function(e) {
                    if (void 0 !== e.meta) {
                        e.type = "yandexInvoice";
                        var t = e.meta.invoice_status;
                        if ("pending" === t) {
                            var i = window.parent.location.href,
                                a = ["&shopSuccessURL", "shopFailURL", "shopDefaultUrl"],
                                o = c.default.parse(l.default.parse(e.meta.url).query),
                                r = JSON.parse(o.ym_merchant_receipt) || {},
                                s = [];
                            for (var d in a) s.push(a[d] + "=" + encodeURIComponent(i));
                            !r.customerContact && b.default.client_info.email && (r.customerContact = b.default.client_info.email, (0, f.setGetParam)("ym_merchant_receipt", (0, n.default)(r), e.meta.url)), e.meta.ymMerchantReceipt = r, e.meta.url += s.join("&")
                        } else if ("confirmed" === t) {
                            var u = h.default.filter(this.data, function(t) {
                                return "yandexInvoice" === t.type && t.meta.chat_invoice_id === e.meta.chat_invoice_id
                            });
                            u.length && (u[0].meta.invoice_status = "confirmed")
                        }
                    }
                    return e
                },
                hasAgentMessages: function() {
                    var e = h.default.filter(this.data, function(e) {
                        return ("agentMessage" === e.type || "agentMediaMessage" === e.type) && e.msg_id
                    });
                    return e.length > 0
                },
                getClientMessages: function() {
                    var e = h.default.filter(this.data, function(e) {
                        return "clientMessage" === e.type || "mediaMessage" === e.type
                    });
                    return e.length
                },
                getClientMessageById: function(e) {
                    var t = h.default.filter(this.data, function(t) {
                        return t.msg_id == e
                    });
                    return t
                },
                getSocialMessage: function(e) {
                    var t = h.default.filter(this.data, function(t) {
                        return t.type === e
                    });
                    return t.length > 0
                },
                getProactive: function() {
                    var e = h.default.findWhere(this.data, {
                        proactive: 1
                    });
                    return g.default.isSeparateWindow && y.default.mobileOrTablet() && !e && (e = h.default.findWhere(this.data, {
                        id: "proactive"
                    })), !!e && e.text
                }
            };
        t.default = (0, u.default)(x)
    }, function(e, t) {
        e.exports = function() {
            var e = [];
            return e.toString = function() {
                for (var e = [], t = 0; t < this.length; t++) {
                    var i = this[t];
                    i[2] ? e.push("@media " + i[2] + "{" + i[1] + "}") : e.push(i[1])
                }
                return e.join("")
            }, e.i = function(t, i) {
                "string" == typeof t && (t = [
                    [null, t, ""]
                ]);
                for (var a = {}, o = 0; o < this.length; o++) {
                    var n = this[o][0];
                    "number" == typeof n && (a[n] = !0)
                }
                for (o = 0; o < t.length; o++) {
                    var r = t[o];
                    "number" == typeof r[0] && a[r[0]] || (i && !r[2] ? r[2] = i : i && (r[2] = "(" + r[2] + ") and (" + i + ")"), e.push(r))
                }
            }, e
        }
    }, function(e, t, i) {
        function a(e, t) {
            for (var i = 0; i < e.length; i++) {
                var a = e[i],
                    o = p[a.id];
                if (o) {
                    o.refs++;
                    for (var n = 0; n < o.parts.length; n++) o.parts[n](a.parts[n]);
                    for (; n < a.parts.length; n++) o.parts.push(c(a.parts[n], t))
                } else {
                    for (var r = [], n = 0; n < a.parts.length; n++) r.push(c(a.parts[n], t));
                    p[a.id] = {
                        id: a.id,
                        refs: 1,
                        parts: r
                    }
                }
            }
        }

        function o(e) {
            for (var t = [], i = {}, a = 0; a < e.length; a++) {
                var o = e[a],
                    n = o[0],
                    r = o[1],
                    l = o[2],
                    s = o[3],
                    c = {
                        css: r,
                        media: l,
                        sourceMap: s
                    };
                i[n] ? i[n].parts.push(c) : t.push(i[n] = {
                    id: n,
                    parts: [c]
                })
            }
            return t
        }

        function n(e, t) {
            var i = g(),
                a = w[w.length - 1];
            if ("top" === e.insertAt) a ? a.nextSibling ? i.insertBefore(t, a.nextSibling) : i.appendChild(t) : i.insertBefore(t, i.firstChild), w.push(t);
            else {
                if ("bottom" !== e.insertAt) throw new Error("Invalid value for parameter 'insertAt'. Must be 'top' or 'bottom'.");
                i.appendChild(t)
            }
        }

        function r(e) {
            e.parentNode.removeChild(e);
            var t = w.indexOf(e);
            t >= 0 && w.splice(t, 1)
        }

        function l(e) {
            var t = document.createElement("style");
            return t.type = "text/css", n(e, t), t
        }

        function s(e) {
            var t = document.createElement("link");
            return t.rel = "stylesheet", n(e, t), t
        }

        function c(e, t) {
            var i, a, o;
            if (t.singleton) {
                var n = b++;
                i = v || (v = l(t)), a = d.bind(null, i, n, !1), o = d.bind(null, i, n, !0)
            } else e.sourceMap && "function" == typeof URL && "function" == typeof URL.createObjectURL && "function" == typeof URL.revokeObjectURL && "function" == typeof Blob && "function" == typeof btoa ? (i = s(t), a = f.bind(null, i), o = function() {
                r(i), i.href && URL.revokeObjectURL(i.href)
            }) : (i = l(t), a = u.bind(null, i), o = function() {
                r(i)
            });
            return a(e),
                function(t) {
                    if (t) {
                        if (t.css === e.css && t.media === e.media && t.sourceMap === e.sourceMap) return;
                        a(e = t)
                    } else o()
                }
        }

        function d(e, t, i, a) {
            var o = i ? "" : a.css;
            if (e.styleSheet) e.styleSheet.cssText = y(t, o);
            else {
                var n = document.createTextNode(o),
                    r = e.childNodes;
                r[t] && e.removeChild(r[t]), r.length ? e.insertBefore(n, r[t]) : e.appendChild(n)
            }
        }

        function u(e, t) {
            var i = t.css,
                a = t.media;
            if (a && e.setAttribute("media", a), e.styleSheet) e.styleSheet.cssText = i;
            else {
                for (; e.firstChild;) e.removeChild(e.firstChild);
                e.appendChild(document.createTextNode(i))
            }
        }

        function f(e, t) {
            var i = t.css,
                a = t.sourceMap;
            a && (i += "\n/*# sourceMappingURL=data:application/json;base64," + btoa(unescape(encodeURIComponent(JSON.stringify(a)))) + " */");
            var o = new Blob([i], {
                    type: "text/css"
                }),
                n = e.href;
            e.href = URL.createObjectURL(o), n && URL.revokeObjectURL(n)
        }
        var p = {},
            h = function(e) {
                var t;
                return function() {
                    return "undefined" == typeof t && (t = e.apply(this, arguments)), t
                }
            },
            m = h(function() {
                return /msie [6-9]\b/.test(window.navigator.userAgent.toLowerCase())
            }),
            g = h(function() {
                return document.head || document.getElementsByTagName("head")[0]
            }),
            v = null,
            b = 0,
            w = [];
        e.exports = function(e, t) {
            t = t || {}, "undefined" == typeof t.singleton && (t.singleton = m()), "undefined" == typeof t.insertAt && (t.insertAt = "bottom");
            var i = o(e);
            return a(i, t),
                function(e) {
                    for (var n = [], r = 0; r < i.length; r++) {
                        var l = i[r],
                            s = p[l.id];
                        s.refs--, n.push(s)
                    }
                    if (e) {
                        var c = o(e);
                        a(c, t)
                    }
                    for (var r = 0; r < n.length; r++) {
                        var s = n[r];
                        if (0 === s.refs) {
                            for (var d = 0; d < s.parts.length; d++) s.parts[d]();
                            delete p[s.id]
                        }
                    }
                }
        };
        var y = function() {
            var e = [];
            return function(t, i) {
                return e[t] = i, e.filter(Boolean).join("\n")
            }
        }()
    }, function(e, t, i) {
        e.exports = {
            default: i(186),
            __esModule: !0
        }
    }, function(e, t, i) {
        "use strict";

        function a(e) {
            return e && e.__esModule ? e : {
                default: e
            }
        }
        t.__esModule = !0;
        var o = i(21),
            n = a(o);
        t.default = n.default || function(e) {
            for (var t = 1; t < arguments.length; t++) {
                var i = arguments[t];
                for (var a in i) Object.prototype.hasOwnProperty.call(i, a) && (e[a] = i[a])
            }
            return e
        }
    }, , function(e, t, i) {
        "use strict";

        function a(e) {
            return e && e.__esModule ? e : {
                default: e
            }
        }
        t.__esModule = !0;
        var o = i(183),
            n = a(o),
            r = i(182),
            l = a(r),
            s = "function" == typeof l.default && "symbol" == typeof n.default ? function(e) {
                return typeof e
            } : function(e) {
                return e && "function" == typeof l.default && e.constructor === l.default && e !== l.default.prototype ? "symbol" : typeof e
            };
        t.default = "function" == typeof l.default && "symbol" === s(n.default) ? function(e) {
            return "undefined" == typeof e ? "undefined" : s(e)
        } : function(e) {
            return e && "function" == typeof l.default && e.constructor === l.default && e !== l.default.prototype ? "symbol" : "undefined" == typeof e ? "undefined" : s(e)
        }
    }, , function(e, t, i) {
        "use strict";

        function a(e) {
            return e && e.__esModule ? e : {
                default: e
            }
        }
        Object.defineProperty(t, "__esModule", {
            value: !0
        });
        var o = i(6),
            n = a(o),
            r = i(7),
            l = a(r),
            s = i(2),
            c = (a(s), i(11)),
            d = a(c),
            u = i(14),
            f = (a(u), i(4)),
            p = a(f),
            h = i(13),
            m = a(h),
            g = i(1),
            v = a(g),
            b = i(49),
            w = (a(b), function() {
                function e() {
                    var t = this;
                    (0, n.default)(this, e), this.window = v.default.getPageWindow(), this.document = this.window.document, this.bodyEl = this.document.body, this.documentEl = this.document.documentElement, this.pageZoom = null, this.userZoom = null, this.appZoom = null, this.isSiteOptimizedForMobile = !1, this.changeZoomSubscription = [], this.checkZoomsFn = p.default.throttle(function() {
                        t.checkZooms()
                    }, 200), m.default.mobile() && (this.checkViewport(), this.initListenChangeZooms())
                }
                return (0, l.default)(e, [{
                    key: "initListenChangeZooms",
                    value: function() {
                        var e = this;
                        v.default.addListener(this.window, "scroll", this.checkZoomsFn), v.default.addListener(this.window, "resize", this.checkZoomsFn), v.default.addListener(this.window, "orientationchange", this.checkZoomsFn), d.default.addListener("update", function() {
                            "label" !== d.default.route && "hidden" !== d.default.route ? e.setZoomChangeIterval(500) : e.setZoomChangeIterval(1e3)
                        })
                    }
                }, {
                    key: "setZoomChangeIterval",
                    value: function(e) {
                        e !== this.intervalTime && (clearInterval(this.intervalId), this.intervalTime = e, this.intervalId = setInterval(this.checkZoomsFn, e))
                    }
                }, {
                    key: "checkZooms",
                    value: function() {
                        var e = this.getUserZoom(),
                            t = this.getPageZoom(),
                            i = this.getAppZoom();
                        e === this.userZoom && t === this.pageZoom && i === this.appZoom || (this.userZoom = e, this.pageZoom = t, this.appZoom = i, this.triggerChangeZoom())
                    }
                }, {
                    key: "checkViewport",
                    value: function() {
                        var e = this.document.querySelector("meta[name=viewport]");
                        if (e && e.content)
                            for (var t = e.getAttribute("content").split(","), i = 0; i < t.length; i++) {
                                t[i] = t[i].replace(/^\s+/, "");
                                var a = t[i].split("=");
                                "width" == a[0] && "device-width" === a[1] && (this.isSiteOptimizedForMobile = !0)
                            }
                    }
                }, {
                    key: "triggerChangeZoom",
                    value: function() {
                        var e = this;
                        p.default.each(this.changeZoomSubscription, function(t) {
                            t({
                                userZoom: e.userZoom,
                                pageZoom: e.pageZoom,
                                appZoom: e.appZoom
                            })
                        })
                    }
                }, {
                    key: "blockScroll",
                    value: function() {
                        v.default.addClass(this.bodyEl, "jivo-block-scroll"), v.default.addListener(this.window, "scroll", this.preventDefault), v.default.addListener(this.document, "touchmove", this.preventDefault)
                    }
                }, {
                    key: "unblockScroll",
                    value: function() {
                        v.default.removeClass(this.bodyEl, "jivo-block-scroll"), v.default.removeEvent(this.window, "scroll", this.preventDefault), v.default.removeEvent(this.document, "touchmove", this.preventDefault)
                    }
                }, {
                    key: "addOverpay",
                    value: function() {
                        v.default.addClass(this.documentEl, "jivo-mobile-overlay")
                    }
                }, {
                    key: "removeOverpay",
                    value: function() {
                        v.default.removeClass(this.documentEl, "jivo-mobile-overlay")
                    }
                }, {
                    key: "addTabletPosition",
                    value: function() {
                        var e = this;
                        v.default.addClass(this.documentEl, "jivo-mobile-widget"), m.default.ipad() && setTimeout(function() {
                            if ("label" !== d.default.route && "chat/min" !== d.default.route) {
                                var t = e.document.getElementById("jivo-iframe-container"),
                                    i = t.offsetTop;
                                t.style.setProperty("position", "absolute", "important"), t.style.setProperty("top", i + "px", "important"), e.bodyEl.style.position = "relative"
                            }
                        }, 500)
                    }
                }, {
                    key: "removeTabletPosition",
                    value: function() {
                        var e = this;
                        v.default.removeClass(this.documentEl, "jivo-mobile-widget"), m.default.ipad() && setTimeout(function() {
                            var t = e.document.getElementById("jivo-iframe-container");
                            t.style.setProperty("position", null), t.style.setProperty("top", null), e.bodyEl.style.position = null
                        }, 10)
                    }
                }, {
                    key: "blockSite",
                    value: function() {
                        void 0 === this.blockState && (this.resetScrollPositions(), v.default.addClass(this.documentEl, "jivo-site-full-block"), this.blockState = !0)
                    }
                }, {
                    key: "unblockSite",
                    value: function() {
                        v.default.removeClass(this.documentEl, "jivo-site-full-block"), this.restoreScrollPositions(), delete this.blockState
                    }
                }, {
                    key: "resetScrollPositions",
                    value: function() {
                        this.originalScrollTop = this.bodyEl.scrollTop, this.originalScrollLeft = this.bodyEl.scrollLeft, this.bodyEl.scrollTop = 0, this.bodyEl.scrollLeft = 0
                    }
                }, {
                    key: "restoreScrollPositions",
                    value: function() {
                        (this.originalScrollTop || this.originalScrollleft) && (this.bodyEl.scrollTop = this.originalScrollTop, this.bodyEl.scrollLeft = this.originalScrollLeft, delete this.originalScrollTop, delete this.originalScrollLeft)
                    }
                }, {
                    key: "preventDefault",
                    value: function(e) {
                        return e.preventDefault(), e.stopPropagation(), !1
                    }
                }, {
                    key: "getUserZoom",
                    value: function() {
                        var e = this.documentEl.clientWidth / this.window.innerWidth;
                        return !this.isSiteOptimizedForMobile && e >= .97 && e <= 1.03 && (e = 1), e
                    }
                }, {
                    key: "getPageZoom",
                    value: function() {
                        return m.default.ios() && "landscape" === this.getOrientation() ? this.window.screen.height / this.window.innerWidth : this.window.screen.width / this.window.innerWidth
                    }
                }, {
                    key: "getAppZoom",
                    value: function() {
                        return m.default.ios() && "landscape" === this.getOrientation() ? this.window.innerWidth / this.window.screen.height : this.window.innerWidth / this.window.screen.width
                    }
                }, {
                    key: "getTextSize",
                    value: function() {
                        var e = null;
                        if (!m.default.mobile()) return e;
                        var t = this.getAppZoom();
                        return 1 !== t && (e = 100 * t + "%"), e
                    }
                }, {
                    key: "getLineHeight",
                    value: function() {
                        var e = null,
                            t = this.getAppZoom();
                        return 1 !== t && (e = 1.25 / t + "em"), e
                    }
                }, {
                    key: "getOrientation",
                    value: function() {
                        var e, t = 0;
                        switch (this.window.orientation ? t = this.window.orientation : this.window.screen && this.window.screen.orientation && (t = this.window.screen.orientation.angle), t) {
                            case -90:
                            case 90:
                                e = "landscape";
                                break;
                            default:
                                e = "portrait"
                        }
                        return e
                    }
                }, {
                    key: "listenChangeZoom",
                    value: function(e) {
                        this.changeZoomSubscription.push(e)
                    }
                }]), e
            }());
        t.default = new w
    }, function(e, t, i) {
        "use strict";

        function a(e) {
            return e && e.__esModule ? e : {
                default: e
            }
        }
        Object.defineProperty(t, "__esModule", {
            value: !0
        });
        var o = i(41),
            n = a(o),
            r = {
                agent_id: 0,
                display_name: null,
                title: null,
                avatar_url: null,
                vox_name: "",
                typing: !1,
                state: {
                    available_for_calls: !1
                }
            };
        t.default = (0, n.default)(r)
    }, function(e, t, i) {
        "use strict";

        function a(e) {
            return e && e.__esModule ? e : {
                default: e
            }
        }
        Object.defineProperty(t, "__esModule", {
            value: !0
        });
        var o = i(22),
            n = a(o),
            r = i(8),
            l = a(r),
            s = i(6),
            c = a(s),
            d = i(7),
            u = a(d),
            f = i(10),
            p = a(f),
            h = i(9),
            m = a(h),
            g = i(3),
            v = a(g),
            b = i(89),
            w = a(b),
            y = i(88),
            x = a(y),
            _ = i(87),
            k = a(_),
            j = i(120),
            E = a(j),
            C = i(277),
            M = a(C),
            S = i(121),
            z = a(S),
            T = i(291),
            I = a(T),
            N = i(268),
            O = a(N),
            A = i(280),
            P = a(A),
            L = i(272),
            B = a(L),
            D = i(271),
            H = a(D),
            F = i(289),
            R = a(F),
            V = i(290),
            W = a(V),
            q = i(285),
            U = a(q),
            G = i(287),
            X = a(G),
            Y = i(286),
            Z = a(Y),
            J = i(288),
            K = a(J),
            Q = function(e) {
                function t(e) {
                    (0, c.default)(this, t);
                    var i = (0, p.default)(this, (t.__proto__ || (0, l.default)(t)).call(this, e));
                    return i.displayName = "JivoSvg", i
                }
                return (0, m.default)(t, e), (0, u.default)(t, [{
                    key: "getIcon",
                    value: function() {
                        var e;
                        switch (this.props.src) {
                            case "icon_ok.svg":
                                e = M.default;
                                break;
                            case "icon_ok_white.svg":
                                e = z.default;
                                break;
                            case "logo_jivosite.svg":
                                e = w.default;
                                break;
                            case "logo_jivochat.svg":
                                e = x.default;
                                break;
                            case "icon_closewidget_dark.svg":
                                e = k.default;
                                break;
                            case "callback_connect.svg":
                                e = E.default;
                                break;
                            case "mobile_send_button.svg":
                                e = I.default;
                                break;
                            case "icon_anonymous.svg":
                                e = O.default;
                                break;
                            case "icon_ruble.svg":
                                e = P.default;
                                break;
                            case "icon_emoji.svg":
                                e = B.default;
                                break;
                            case "icon_attach.svg":
                                e = H.default;
                                break;
                            case "icon_photo.svg":
                                e = R.default;
                                break;
                            case "icon_video.svg":
                                e = W.default;
                                break;
                            case "icon_audio.svg":
                                e = U.default;
                                break;
                            case "icon_document.svg":
                                e = X.default;
                                break;
                            case "icon_error.svg":
                                e = K.default;
                                break;
                            case "icon_cancel.svg":
                                e = Z.default
                        }
                        return e
                    }
                }, {
                    key: "render",
                    value: function() {
                        return this.rawIcon = this.getIcon(), v.default.createElement("div", (0, n.default)({
                            dangerouslySetInnerHTML: {
                                __html: this.rawIcon
                            }
                        }, this.props))
                    }
                }]), t
            }(v.default.Component);
        t.default = Q
    }, function(e, t, i) {
        "use strict";

        function a(e) {
            return e && e.__esModule ? e : {
                default: e
            }
        }
        Object.defineProperty(t, "__esModule", {
            value: !0
        });
        var o = i(33),
            n = a(o),
            r = i(24),
            l = a(r),
            s = i(70),
            c = a(s),
            d = i(138),
            u = a(d),
            f = i(5),
            p = a(f),
            h = i(2),
            m = a(h),
            g = i(4),
            v = a(g),
            b = i(1),
            w = a(b),
            y = i(13),
            x = a(y),
            _ = i(18),
            k = (a(_), i(14)),
            j = a(k),
            E = i(11),
            C = a(E),
            M = i(164),
            S = a(M),
            z = navigator.appVersion,
            T = z.indexOf("MSIE") !== -1,
            I = p.default.name("CONNECTION"),
            N = w.default.cookie,
            O = w.default.telemetry,
            A = new c.default({
                namespace: "CONNECTION",
                msg_buf: [],
                jconnection: null,
                send: function(e) {
                    I.log("SEND: ", e), this.handle("send", e), this.trigger("send", e)
                },
                sendIfConnected: function(e) {
                    I.log("sendIfConnected", this.isConnected(), e), this.isConnected() && (this.handle("send", e), this.trigger("send", e))
                },
                setupConnection: function() {
                    var e = this;
                    if (!this.jconnection && v.default.indexOf(["preview", "editor"], (0, b.isWixContext)()) === -1) {
                        var t = [];
                        t.unshift("https://" + m.default.comet.host + "/cometcn"), N("use_lp") || T || t.unshift("wss://" + m.default.comet.host + "/cometcn"), I.log("url", t), this.jconnection = new u.default(t), this.jconnection.on("connecting", function() {
                            e.handle("socket_connecting")
                        }), this.jconnection.on("open", function() {
                            e.handle("socket_connect")
                        }), this.jconnection.on("close", function(t) {
                            e.handle("socket_disconnect", t)
                        }), this.jconnection.on("error", function(e) {
                            I.error(e)
                        }), this.jconnection.on("message", function(e) {
                            var t = void 0;
                            try {
                                t = JSON.parse(e)
                            } catch (e) {
                                return I.error("parse error", e)
                            }
                            return t && "object" === ("undefined" == typeof t ? "undefined" : (0, l.default)(t)) ? (t.name && I.log(t.name, t), void A.handle("socket_message", t)) : I.error("bad message")
                        }), this.jconnection.open()
                    }
                },
                _sendSocketEvent: function(e) {
                    var t = void 0;
                    try {
                        t = (0, n.default)(e)
                    } catch (e) {
                        return I.error("stringify error", e)
                    }
                    if ("object" == ("undefined" == typeof e ? "undefined" : (0, l.default)(e)))
                        if ("name" in e) {
                            I.log("Sending " + e.name);
                            var i = this.jconnection.send(t);
                            i && ("client_message" == e.name && this._bufferMessage(e), I.error("send error", i))
                        } else I.error("Attempt to send event without name");
                    else I.error("Socket event must be object")
                },
                _bufferMessage: function(e) {
                    this.msg_buf.push(e)
                },
                _flushMessageBuffer: function() {
                    var e = void 0;
                    for (this.msg_buf.length > 0 && O("client_message_flush_buffer"); e = this.msg_buf.shift();) this._sendSocketEvent(e)
                },
                isConnected: function() {
                    return "CONNECTED" === this.state
                },
                setCustomData: function(e) {
                    I.log("setCustomData", e, this.isConnected()), this.isConnected() ? this.send({
                        name: "update_custom_data",
                        custom_data: e
                    }) : this.custom_data = e
                },
                setUserToken: function(e) {
                    I.log("setUserToken", e, this.isConnected()), this.isConnected() ? this.send({
                        name: "update_user_token",
                        user_token: e
                    }) : this.user_token = e
                },
                requestTelemetry: function(e) {
                    var t = this.jconnection,
                        i = {};
                    t && (i.state = t.state, i.url = t.url, i.health = t.health), O(e, i)
                },
                states: {
                    uninitialized: {
                        _onEnter: function() {
                            this.jconnection && (this.jconnection.off(), this.jconnection.close(), this.jconnection = null)
                        },
                        send: function(e) {
                            this._bufferMessage(e), this.transition("CONNECTING")
                        },
                        startup: function() {
                            this.transition("CONNECTING")
                        }
                    },
                    CONNECTING: {
                        _onEnter: function() {
                            this.setupConnection()
                        },
                        socket_connect: function() {
                            0 == this.jconnection.url.indexOf("http") && N("use_lp", 1), this.transition("STARTING_UP")
                        },
                        send: function(e) {
                            this._bufferMessage(e)
                        },
                        socket_disconnect: function() {
                            this.requestTelemetry("Disconnected while connecting"), this.transition("uninitialized")
                        },
                        socket_connecting: function() {}
                    },
                    STARTING_UP: {
                        _onEnter: function() {
                            var e = {
                                name: "startup",
                                jv_widget_id: m.default.widget_id,
                                site_id: m.default.site_id,
                                current_page: w.default.getCurrentPage(),
                                is_mobile: x.default.mobileOrTablet(),
                                visits_count: N("visits_count") - 0,
                                separate_window: C.default.isSeparateWindow,
                                can_resume: 1,
                                jv_client_id: j.default.client_id,
                                pa_id: j.default.pa_id,
                                client_name: j.default.client_info.client_name,
                                email: j.default.client_info.email,
                                phone: j.default.client_info.phone,
                                description: j.default.client_info.description,
                                page_visible: (0, b.pageVisible)(),
                                chat_opened: 0 == C.default.route.indexOf("chat") && C.default.route.indexOf("min") == -1
                            };
                            I.log("STARTING_UP", j.default.client_id), N("__utmz") && (e.g_utmz = N("__utmz")), N("refer") && (e.refer = N("refer")), N("utm") && (e.utm = N("utm")), v.default.isEmpty(j.default.utm) || (e.new_utm = j.default.utm), I.log(C.default.proactive), C.default.proactive && (e.proactive_rule = {
                                invitation_text: C.default.proactive.text,
                                agent_id: C.default.proactive.agent_info.agent_id
                            }), this.custom_data && (e.custom_data = this.custom_data), this.user_token && (e.user_token = this.user_token), (j.default.is_blacklisted || 1 == m.default.hide_offline && !C.default.is_online && !C.default.chat_started) && this.transition("DISCONNECTING"), this._sendSocketEvent(e), this._scheduleEvent("startup_timeout", 3e3)
                        },
                        startup_timeout: function() {
                            this.requestTelemetry("Startup Timeout")
                        },
                        send: function(e) {
                            this._bufferMessage(e)
                        },
                        socket_message: function(e) {
                            "startup_ok" === e.name ? (this._cancelEvent("startup_timeout"), this.transition("CONNECTED")) : "resume_ok" == e.name ? this.transition("CONNECTED") : "startup_error" === e.name && this.transition("DISCONNECTING"), this.emit(e.name, e), this.emit("socket_message", e)
                        }
                    },
                    CONNECTED: {
                        _onEnter: function() {
                            this.emit("startup_ok"), this._flushMessageBuffer()
                        },
                        socket_message: function(e) {
                            switch (e.name) {
                                case "agent_chat_close":
                                    1 !== m.default.visitors_insight && this.transition("DISCONNECTING");
                                    break;
                                case "force_offline":
                                    this.transition("DISCONNECTING");
                                    break;
                                case "blacklist":
                                    this.transition("DISCONNECTING");
                                    break;
                                case "cw_call_end":
                                case "cw_error":
                                    break;
                                case "offline_ack":
                                    "cap_id" in e ? C.default.cap_id = e.cap_id : this.transition("DISCONNECTING")
                            }
                            this.emit(e.name, e), this.emit("socket_message", e)
                        },
                        send: function(e) {
                            this._sendSocketEvent(e)
                        },
                        socket_disconnect: function(e) {
                            I.log("close", e), 1e3 == e.code && this.trigger("disconnecting"), this.transition("uninitialized")
                        },
                        startup: function() {
                            this.emit("startup_ok")
                        },
                        socket_connecting: function() {
                            var e = this;
                            setTimeout(function() {
                                e.requestTelemetry("JC reconnect")
                            }, 2e3), this.transition("CONNECTING")
                        }
                    },
                    DISCONNECTING: {
                        _onEnter: function() {
                            this.jconnection.close(), this.trigger("disconnecting")
                        },
                        socket_disconnect: function(e) {
                            this.transition("uninitialized")
                        }
                    }
                }
            });
        A.ifNeedConnect = function() {
            return I.log("connect", (0, b.pageVisible)()), x.default.mobile() && C.default.isSeparateWindow && !C.default.is_online && "chat/msg" == C.default.route ? (I.log("Page visible but ignore startup in offline"), !1) : !(j.default.is_blacklisted || !C.default.is_online && 1 == m.default.hide_offline && !C.default.chat_started) && (C.default.is_online || C.default.chat_started ? x.default.mobileOrTablet() && 1 == m.default.disable_mobile ? (I.log("Widget disabled on mobile devices."), !1) : m.default.visitors_insight || !j.default.jv_sess_id || C.default.chat_started ? !(A.isConnected() || !(0, b.pageVisible)()) && (v.default.indexOf(["preview", "editor"], (0, b.isWixContext)()) === -1 && (!(!j.default.jv_sess_id && !m.default.visitors_insight || "col_old_page" === window.parent.name) || void 0)) : (I.log('Connection disabled for "Disable Visitors Insight".'), !1) : (I.log("Offline and chat not started from online."), !1))
        };
        var P = function() {
            A.ifNeedConnect() && A.handle("startup")
        };
        P(), (0, b.listenVisibility)(P), A.on("socket_message", function(e) {
            S.default[e.name] && S.default[e.name](e)
        }), A.on("disconnecting", function() {
            S.default.disconnecting && S.default.disconnecting()
        }), t.default = A
    }, function(e, t) {
        var i = e.exports = {
            version: "2.4.0"
        };
        "number" == typeof __e && (__e = i)
    }, , function(e, t, i) {
        "use strict";

        function a(e) {
            return e && e.__esModule ? e : {
                default: e
            }
        }
        Object.defineProperty(t, "__esModule", {
            value: !0
        });
        var o = i(4),
            n = a(o),
            r = i(5),
            l = a(r),
            s = i(1),
            c = a(s),
            d = i(2),
            u = a(d),
            f = l.default.name("analytics"),
            p = {
                _yaCounter: [],
                _trackedEvents: [],
                init: function() {
                    try {
                        var e = c.default.getPageWindow();
                        for (var t in e) 0 === t.indexOf("yaCounter") && "function" == typeof e[t].reachGoal && this._yaCounter.push(t);
                        f.log("Active Yandex counters: ", this._yaCounter.length)
                    } catch (e) {
                        f.log(e.toString())
                    }
                },
                _trackEvent: function(e, t) {
                    if (!(n.default.indexOf(this._trackedEvents, e) >= 0)) {
                        this._trackedEvents.push(e), f.info("_trackEvent: " + e + "/" + t);
                        var i = c.default.getPageWindow();
                        if ("undefined" != typeof i._gaq && i._gaq.push(["_trackEvent", "JivoSite", e, t, void 0, !0]), "function" == typeof i.ga && "function" == typeof i.ga.getAll && n.default.each(i.ga.getAll(), function(i) {
                                i.send("event", "JivoSite", e, t, {
                                    nonInteraction: 1
                                })
                            }), i._gaUA_real && "function" == typeof i._gaUA_real.getAll) {
                            var a = i._gaUA_real.getAll();
                            2 == a.length && (a[1].send("event", "JivoSite", e, t, {
                                nonInteraction: 1
                            }), f.log("Track event to custom tiu client counter", a[1].get("trackingId"), e, t))
                        }
                        if (this._yaCounter.length > 0) {
                            e = ["Jivo"].concat(e.split(" ")).join("_");
                            var o = c.default.getPageWindow();
                            n.default.each(this._yaCounter, function(t) {
                                o && o[t] && "function" == typeof o[t].reachGoal && o[t].reachGoal(e)
                            })
                        }
                        this.trackFBEvents(e)
                    }
                },
                _setCustomVar: function(e, t) {
                    f.log("_setCustomVar: " + e + "/" + t);
                    var i = c.default.getPageWindow();
                    if ("undefined" != typeof i._gaq && i._gaq.push(["_setCustomVar", 1, e, t, 1]), "function" == typeof i.ga && i.ga("set", e, t), this._yaCounter.length > 0) {
                        var a = {};
                        a[e] = t, n.default.each(this._yaCounter, function(e) {
                            i[e].params(a)
                        })
                    }
                },
                trackFBEvents: function(e) {
                    if (!c.default.getPageWindow().fbq || 1 === u.default.site_id) return !1;
                    var t = c.default.getPageWindow().fbq;
                    "Chat established" == e && t("track", "Lead", {
                        content_name: "Chat_established",
                        content_category: "JivoSite"
                    }), "Offline message sent" == e && t("track", "Lead", {
                        content_name: "Offline_message_sent",
                        content_category: "JivoSite"
                    })
                },
                trackChatOpenedByClick: function() {
                    this._trackEvent("Chat requested", "User clicked chat widget")
                },
                trackOfflineFormOpenedByClick: function() {
                    this._trackEvent("Offline form shown", "User offline form")
                },
                trackOfflineMessageSent: function() {
                    this._trackEvent("Offline message sent", "User sent message via offline form")
                },
                trackProactiveInvitationShown: function(e) {
                    this._trackEvent("Proactive invitation shown", e)
                },
                trackProactiveInvitationAccepted: function(e) {
                    this._trackEvent("Proactive invitation accepted", e)
                },
                trackProactiveInvitationRejected: function(e) {
                    this._trackEvent("Proactive invitation rejected", e)
                },
                trackChatConnected: function() {
                    this._trackEvent("Chat established", "User connected to agent")
                },
                trackGaveContacts: function() {
                    this._trackEvent("User gave contacts during chat", "User gave contacts during chat")
                },
                trackCallWidgetInvitationShown: function(e) {
                    this._trackEvent("Callback invitation shown", e)
                },
                trackCallWidgetRequested: function() {
                    this._trackEvent("Callback requested", "User request callback.")
                },
                setABTestGroupContacts: function(e, t) {
                    this._setCustomVar(e, t)
                },
                trackSystemMessageEmailShown: function() {
                    this._trackEvent("In-chat email form shown", "In-chat email form shown.")
                },
                trackSystemMessageEmailSubmitted: function() {
                    this._trackEvent("In-chat email form submitted", "In-chat email form submitted.")
                },
                trackContinueInSocial: function() {
                    this._trackEvent("Continue in VK", "User clicked VK button")
                },
                trackClientInitChat: function() {
                    this._trackEvent("Client initiate chat", "Client initiate chat")
                },
                trackClientAnswerAgentChatRequest: function() {
                    this._trackEvent("Client answer on agent request", "Client answer on agent request")
                }
            };
        t.default = p
    }, function(e, t, i) {
        e.exports = {
            default: i(185),
            __esModule: !0
        }
    }, function(e, t) {
        var i = e.exports = "undefined" != typeof window && window.Math == Math ? window : "undefined" != typeof self && self.Math == Math ? self : Function("return this")();
        "number" == typeof __g && (__g = i)
    }, function(e, t, i) {
        "use strict";

        function a(e) {
            return e && e.__esModule ? e : {
                default: e
            }
        }
        Object.defineProperty(t, "__esModule", {
            value: !0
        });
        var o = i(22),
            n = a(o),
            r = i(8),
            l = a(r),
            s = i(6),
            c = a(s),
            d = i(7),
            u = a(d),
            f = i(10),
            p = a(f),
            h = i(9),
            m = a(h),
            g = i(3),
            v = a(g),
            b = i(252),
            w = a(b),
            y = i(275),
            x = a(y),
            _ = i(279),
            k = a(_),
            j = i(123),
            E = a(j),
            C = i(122),
            M = a(C),
            S = i(293),
            z = a(S),
            T = i(294),
            I = a(T),
            N = i(278),
            O = a(N),
            A = i(284),
            P = a(A),
            L = i(283),
            B = a(L),
            D = i(282),
            H = a(D),
            F = i(276),
            R = a(F),
            V = i(267),
            W = a(V),
            q = i(274),
            U = a(q),
            G = i(269),
            X = a(G),
            Y = i(270),
            Z = a(Y),
            J = i(121),
            K = a(J),
            Q = i(281),
            $ = a(Q),
            ee = i(273),
            te = a(ee),
            ie = i(266),
            ae = a(ie),
            oe = function(e) {
                function t(e) {
                    (0, c.default)(this, t);
                    var i = (0, p.default)(this, (t.__proto__ || (0, l.default)(t)).call(this, e));
                    i.initIcons(), i.rawIcon = i.getIcon();
                    var a = w.default[i.props.iconName + "Icon"];
                    return i.className = i.props.className + (a ? " " + a : ""), i
                }
                return (0, m.default)(t, e), (0, u.default)(t, [{
                    key: "initIcons",
                    value: function() {
                        this.iconsMap = {
                            vk: E.default,
                            fb: M.default,
                            viber: I.default,
                            telegram: z.default,
                            phone: O.default,
                            "phone-outgoing": k.default,
                            "message-text": x.default,
                            "logo-jivosite-white": P.default,
                            "logo-jivochat-white": B.default,
                            "logo-j-white": H.default,
                            "mobile-cloud": R.default,
                            hand: U.default,
                            arrow: X.default,
                            arrow2: Z.default,
                            "callback-btn": W.default,
                            "icon-ok-white": K.default,
                            "icon-v-email": $.default,
                            envelope: te.default,
                            mobileBack: ae.default
                        }
                    }
                }, {
                    key: "getIcon",
                    value: function() {
                        return this.iconsMap[this.props.iconName]
                    }
                }, {
                    key: "render",
                    value: function() {
                        return v.default.createElement("jdiv", (0, n.default)({
                            dangerouslySetInnerHTML: {
                                __html: this.rawIcon
                            }
                        }, this.props, {
                            className: this.className
                        }))
                    }
                }]), t
            }(v.default.Component);
        t.default = oe
    }, function(e, t, i) {
        e.exports = !i(44)(function() {
            return 7 != Object.defineProperty({}, "a", {get: function() {
                    return 7
                }
            }).a
        })
    }, function(e, t, i) {
        var a = i(34),
            o = i(30),
            n = i(106),
            r = i(45),
            l = "prototype",
            s = function(e, t, i) {
                var c, d, u, f = e & s.F,
                    p = e & s.G,
                    h = e & s.S,
                    m = e & s.P,
                    g = e & s.B,
                    v = e & s.W,
                    b = p ? o : o[t] || (o[t] = {}),
                    w = b[l],
                    y = p ? a : h ? a[t] : (a[t] || {})[l];
                p && (i = t);
                for (c in i) d = !f && y && void 0 !== y[c], d && c in b || (u = d ? y[c] : i[c], b[c] = p && "function" != typeof y[c] ? i[c] : g && d ? n(u, a) : v && y[c] == u ? function(e) {
                    var t = function(t, i, a) {
                        if (this instanceof e) {
                            switch (arguments.length) {
                                case 0:
                                    return new e;
                                case 1:
                                    return new e(t);
                                case 2:
                                    return new e(t, i)
                            }
                            return new e(t, i, a)
                        }
                        return e.apply(this, arguments)
                    };
                    return t[l] = e[l], t
                }(u) : m && "function" == typeof u ? n(Function.call, u) : u, m && ((b.virtual || (b.virtual = {}))[c] = u, e & s.R && w && !w[c] && r(w, c, u)))
            };
        s.F = 1, s.G = 2, s.S = 4, s.P = 8, s.B = 16, s.W = 32, s.U = 64, s.R = 128, e.exports = s
    }, function(e, t) {
        var i = {}.hasOwnProperty;
        e.exports = function(e, t) {
            return i.call(e, t)
        }
    }, function(e, t, i) {
        var a = i(50),
            o = i(108),
            n = i(84),
            r = Object.defineProperty;
        t.f = i(36) ? Object.defineProperty : function(e, t, i) {
            if (a(e), t = n(t, !0), a(i), o) try {
                return r(e, t, i)
            } catch (e) {}
            if ("get" in i || "set" in i) throw TypeError("Accessors not supported!");
            return "value" in i && (e[t] = i.value), e
        }
    }, function(e, t, i) {
        var a = i(109),
            o = i(74);
        e.exports = function(e) {
            return a(o(e))
        }
    }, function(e, t, i) {
        "use strict";

        function a(e) {
            return e && e.__esModule ? e : {
                default: e
            }
        }

        function o(e, t) {
            for (var i in t) t[i] && t[i].constructor && t[i].constructor === Object ? (e[i] = e[i] || {}, o(e[i], t[i])) : v.indexOf(["isSeparateWindow", "route"], i) !== -1 && g.default.mobile() || (e[i] = t[i]);
            return e
        }
        Object.defineProperty(t, "__esModule", {
            value: !0
        });
        var n = i(24),
            r = a(n),
            l = i(73),
            s = a(l),
            c = i(33),
            d = a(c),
            u = i(100),
            f = a(u),
            p = i(2),
            h = a(p),
            m = i(13),
            g = a(m),
            v = i(4),
            b = i(52),
            w = b.EventEmitter,
            y = function() {
                var e = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : {},
                    t = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : "";
                if ("JivoStore" == e.__type) return e;
                var i = globalStore.hasStorage,
                    a = new w,
                    n = v.debounce(function() {
                        a.emit("update", e)
                    }, 10),
                    l = v.debounce(function() {
                        i && !h.default.cookie_domain ? window.parent.localStorage.setItem("jv_store_" + t, (0, d.default)(e)) : (0, f.default)("store_" + t, (0, d.default)(e))
                    }, 10),
                    c = function(e, i) {
                        var a = e[i];
                        (0, s.default)(e, i, {set: function(e) {
                                a != e && (a = e, n(), t && l())
                            },
                            get: function() {
                                return a
                            }
                        })
                    },
                    u = function e(t) {
                        v.each(t, function(i, a) {
                            "function" != typeof i && (i && "object" == ("undefined" == typeof i ? "undefined" : (0, r.default)(i)) && "number" != typeof i.length ? e(i) : c(t, a))
                        })
                    },
                    p = function() {
                        if (t) try {
                            i && !h.default.cookie_domain ? (o(e, JSON.parse(window.parent.localStorage.getItem("jv_store_" + t))), o(e, JSON.parse((0, f.default)("store_" + t))), (0, f.default)("store_" + t, null)) : (o(e, JSON.parse((0, f.default)("store_" + t))), i && (o(e, JSON.parse(window.parent.localStorage.getItem("jv_store_" + t))), window.parent.localStorage.removeItem("jv_store_" + t)))
                        } catch (e) {
                            console.error(e)
                        }
                    };
                return u(e), p(), Object.defineProperty(e, "__type", {
                    enumerable: !1,
                    configurable: !1,
                    writable: !1,
                    value: "JivoStore"
                }), Object.defineProperty(e, "addListener", {
                    enumerable: !1,
                    configurable: !1,
                    writable: !1,
                    value: function() {
                        var e = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : "update",
                            t = arguments[1];
                        return "function" == typeof e && (t = e, e = "update"), a.addListener(e, t)
                    }
                }), Object.defineProperty(e, "dispatch", {
                    enumerable: !1,
                    configurable: !1,
                    writable: !1,
                    value: function() {
                        n()
                    }
                }), Object.defineProperty(e, "reload", {
                    enumerable: !1,
                    configurable: !1,
                    writable: !1,
                    value: function() {
                        p()
                    }
                }), e
            };
        t.default = y
    }, function(e, t) {
        "use strict";

        function i(e) {
            return parseInt(r(e).substring(0, 2), 16)
        }

        function a(e) {
            return parseInt(r(e).substring(2, 4), 16)
        }

        function o(e) {
            return parseInt(r(e).substring(4, 6), 16)
        }

        function n(e) {
            return 3 == e.length && (e = e.split("").map(function(e) {
                return e.toString() + e.toString()
            }).join("")), e
        }

        function r(e) {
            return e = "#" == e.charAt(0) ? e.substring(1, 7) : e, n(e)
        }

        function l(e) {
            var t = i(e),
                n = a(e),
                r = o(e),
                l = -.5,
                s = u.toHSV(new c(t, n, r));
            return s.v + s.s * l
        }

        function s(e, t, i) {
            e <= 0 && (e = 0), t <= 0 && (t = 0), i <= 0 && (i = 0), e > 360 && (e = 360), t > 100 && (t = 100), i > 100 && (i = 100), this.h = e, this.s = t, this.v = i
        }

        function c(e, t, i) {
            e <= 0 && (e = 0), t <= 0 && (t = 0), i <= 0 && (i = 0), e > 255 && (e = 255), t > 255 && (t = 255), i > 255 && (i = 255), this.r = e, this.g = t, this.b = i
        }

        function d(e, t, i, a) {
            e <= 0 && (e = 0), t <= 0 && (t = 0), i <= 0 && (i = 0), a <= 0 && (a = 0), e > 100 && (e = 100), t > 100 && (t = 100), i > 100 && (i = 100), a > 100 && (a = 100), this.c = e, this.m = t, this.y = i, this.k = a
        }
        var u = {
            isLightColor: function(e) {
                var t = 47;
                return l(e) > t
            },
            _RGBtoHSV: function(e) {
                var t = new s(0, 0, 0),
                    i = e.r / 255,
                    a = e.g / 255,
                    o = e.b / 255,
                    n = Math.min(i, a, o),
                    r = Math.max(i, a, o),
                    l = r - n;
                if (t.v = r, 0 == l) t.h = 0, t.s = 0;
                else {
                    t.s = l / r;
                    var c = ((r - i) / 6 + l / 2) / l,
                        d = ((r - a) / 6 + l / 2) / l,
                        u = ((r - o) / 6 + l / 2) / l;
                    i == r ? t.h = u - d : a == r ? t.h = 1 / 3 + c - u : o == r && (t.h = 2 / 3 + d - c), t.h < 0 && (t.h += 1), t.h > 1 && (t.h -= 1)
                }
                return t.h = Math.round(360 * t.h), t.s = Math.round(100 * t.s), t.v = Math.round(100 * t.v), t
            },
            _HSVtoRGB: function(e) {
                var t = new c(0, 0, 0),
                    i = e.h / 360,
                    a = e.s / 100,
                    o = e.v / 100;
                if (0 == a) t.r = 255 * o, t.g = 255 * o, t.b = 255 * o;
                else {
                    var n, r, l, s = 6 * i,
                        d = Math.floor(s),
                        u = o * (1 - a),
                        f = o * (1 - a * (s - d)),
                        p = o * (1 - a * (1 - (s - d)));
                    0 == d ? (n = o, r = p, l = u) : 1 == d ? (n = f, r = o, l = u) : 2 == d ? (n = u, r = o, l = p) : 3 == d ? (n = u, r = f, l = o) : 4 == d ? (n = p, r = u, l = o) : (n = o, r = u, l = f), t.r = 255 * n, t.g = 255 * r, t.b = 255 * l, t.r = Math.round(t.r), t.g = Math.round(t.g), t.b = Math.round(t.b)
                }
                return t
            },
            _CMYKtoRGB: function(e) {
                var t = new c(0, 0, 0),
                    i = e.c / 100,
                    a = e.m / 100,
                    o = e.y / 100,
                    n = e.k / 100;
                return t.r = 1 - Math.min(1, i * (1 - n) + n), t.g = 1 - Math.min(1, a * (1 - n) + n), t.b = 1 - Math.min(1, o * (1 - n) + n), t.r = Math.round(255 * t.r), t.g = Math.round(255 * t.g), t.b = Math.round(255 * t.b), t
            },
            _RGBtoCMYK: function(e) {
                var t = new d(0, 0, 0, 0),
                    i = e.r / 255,
                    a = e.g / 255,
                    o = e.b / 255;
                return t.k = Math.min(1 - i, 1 - a, 1 - o), t.c = (1 - i - t.k) / (1 - t.k), t.m = (1 - a - t.k) / (1 - t.k), t.y = (1 - o - t.k) / (1 - t.k), t.c = Math.round(100 * t.c), t.m = Math.round(100 * t.m), t.y = Math.round(100 * t.y), t.k = Math.round(100 * t.k), t
            },
            toRGB: function(e) {
                return e instanceof c ? e : e instanceof s ? this._HSVtoRGB(e) : e instanceof d ? this._CMYKtoRGB(e) : void 0
            },
            toHSV: function(e) {
                return e instanceof s ? e : e instanceof c ? this._RGBtoHSV(e) : e instanceof d ? this._RGBtoHSV(this._CMYKtoRGB(e)) : void 0
            },
            toCMYK: function(e) {
                return e instanceof d ? e : e instanceof c ? this._RGBtoCMYK(e) : e instanceof s ? this._RGBtoCMYK(this._HSVtoRGB(e)) : void 0
            }
        };
        e.exports = u
    }, function(e, t, i) {
        "use strict";

        function a(e) {
            return e && e.__esModule ? e : {
                default: e
            }
        }
        Object.defineProperty(t, "__esModule", {
            value: !0
        });
        var o = i(24),
            n = a(o),
            r = i(21),
            l = a(r),
            s = i(4),
            c = a(s),
            d = i(1),
            u = a(d),
            f = i(5),
            p = a(f),
            h = i(2),
            m = a(h),
            g = i(11),
            v = a(g),
            b = i(14),
            w = a(b),
            y = i(27),
            x = a(y),
            _ = i(13),
            k = a(_),
            j = i(32),
            E = a(j),
            C = i(165),
            M = a(C),
            S = i(16),
            z = a(S),
            T = i(18),
            I = a(T),
            N = p.default.name("ruleManager"),
            O = i(52),
            A = O.EventEmitter,
            P = new A,
            L = (0, l.default)(P, {
                rules: [],
                canInvite: !0,
                init: function() {
                    var e = c.default.defaults(this.rules, m.default.rules);
                    u.default.pageEnterTime = (new Date).getTime(), u.default.addPageView(), 0 === e.length && c.default.isArray(m.default.proactive_rules) && m.default.proactive_rules.length > 0 ? (this.importLegacy(), this.ready()) : this.needGeo() ? this.geoData() : this.ready()
                },
                needGeo: function() {
                    for (var e, t, i = 0; i < this.rules.length; i++)
                        if (e = this.rules[i], e.conditions)
                            for (var a = 0; a < e.conditions.length; a++)
                                if (t = e.conditions[a], ("country" === t.condition || "city" === t.condition) && null === (0, d.cookie)("country")) return !0;
                    return !1
                },
                geoData: function() {
                    N.log("RULE MANAGER GEO DATA");
                    var e = m.default.geoip && m.default.geoip.split(";");
                    e && e.length ? ((0, d.cookie)("country", e[0], {
                        expires: 1
                    }), (0, d.cookie)("city", e[2], {
                        expires: 1
                    }), this.ready()) : N.log("Need geodata is missing.")
                },
                ready: function() {
                    N.log("RULE MANAGER READY");
                    for (var e = 0; e < this.rules.length; e++) this.rules[e] = new D(this.rules[e])
                },
                importLegacy: function() {
                    N.log("importing from proactive_rules"), (0, d.telemetry)("import legacy");
                    for (var e, t = ["contain", "equal", "regexp"], i = 0; i < m.default.proactive_rules.length; i++) {
                        e = m.default.proactive_rules[i], c.default.defaults(e, {
                            name: e.invitationText,
                            urlPrefix: [{
                                url: "/",
                                mm: 0
                            }],
                            page_timeout: 20,
                            close_timeout: 300,
                            enter_timeout: 0,
                            pages_count: 0
                        });
                        for (var a = 0; a < e.urlPrefix.length; a++) this.rules.push({
                            legacyId: e.id,
                            name: e.name,
                            type: "all",
                            conditions: [{
                                condition: "online",
                                value: !0
                            }, {
                                condition: "time_on_page",
                                comparator: "greater_equal",
                                value: e.page_timeout
                            }, {
                                condition: "time_after_close",
                                comparator: "greater_equal",
                                value: e.close_timeout
                            }, {
                                condition: "time_on_site",
                                comparator: "greater_equal",
                                value: e.enter_timeout
                            }, {
                                condition: "pages_count",
                                comparator: "greater_equal",
                                value: e.pages_count
                            }, {
                                condition: "page_url",
                                comparator: t[e.urlPrefix[a].mm],
                                value: e.urlPrefix[a].url
                            }],
                            commands: [{
                                command: "proactive",
                                params: {
                                    message: e.invitationText
                                }
                            }]
                        })
                    }
                },
                moveCloseButton: function() {
                    c.default.each(this.rules, function(e) {
                        u.default.movedToCloseButton = !0, e.tick()
                    }, this)
                },
                mouseScroll: function(e) {
                    c.default.each(this.rules, function(t) {
                        u.default.scrollPosition = e, t.tick()
                    }, this)
                },
                cancelRule: function(e) {
                    for (var t = 0; t < this.rules.length; t += 1) !this.rules[t].isTriggered && this.rules[t].cancel && this.rules[t].commands[0].command === e && this.rules[t].cancel();
                    "proactive" === e && (this.canInvite = !1)
                },
                allRulesCancel: function() {
                    N.log("allRulesCancel");
                    for (var e = 0; e < this.rules.length; e++) !this.rules[e].isTriggered && this.rules[e].cancel && this.rules[e].cancel()
                },
                restoreAgentInfo: function() {
                    return !!x.default.agent_id && {
                        agent_id: x.default.agent_id
                    }
                },
                addOnceADayCookie: function(e) {
                    (0, d.cookie)(e, 1, {
                        expires: 1,
                        path: "/"
                    })
                },
                showProactive: function(e, t, i, a) {
                    if (!this.canInvite) return void N.log("showProactive cant invite");
                    if ("number" == typeof e) {
                        var o = parseInt(e),
                            n = !1;
                        if (o) {
                            for (var r = 0; r < this.rules.length; r++)
                                if ("proactive" === this.rules[r].commands[0].command && this.rules[r].legacyId === o) {
                                    e = this.rules[r].commands[0].params.message, N.log("legacy rule found by ID=" + o + "; message=" + e), n = !0;
                                    break
                                }
                            if (!n) return void N.log("legacy rule not found by ID=" + o)
                        }
                    }
                    var l = this.restoreAgentInfo(),
                        s = {
                            name: "active_agent"
                        };
                    t && m.default.departments && c.default.findWhere(m.default.departments, {
                        id: t
                    }) && (s.department = t), l && (s.agent_id = l.agent_id), w.default.client_id && (s.jv_client_id = w.default.client_id), u.default.getJSONPWithData(u.default.chatServerUrl(m.default.widget_id, m.default.site_id), s, c.default.bind(function(t) {
                        t && "label" == v.default.route ? (v.default.proactive = {
                            text: e,
                            agent_info: t
                        }, M.default.proactive(e, t), (0, d.cookie)("invitation_time", (new Date).getTime()), this.emit("play_sound"), a && this.addOnceADayCookie(a), E.default.trackProactiveInvitationShown(i)) : N.log('invitation failed, no agent OR route != "label"')
                    }, this))
                },
                showCallForm: function(e, t, i) {
                    var a = this;
                    M.default.showCallForm(e, function() {
                        a.emit("play_sound"), (0, d.cookie)("invitation_time", (new Date).getTime()), E.default.trackCallWidgetInvitationShown(i), t && a.addOnceADayCookie(t)
                    })
                }
            }),
            B = (0, l.default)(P, {
                inited: !1,
                initialize: function() {
                    this.inited || (this.initScroll(), this.initClose(), this.inited = !0)
                },
                initScroll: function() {
                    u.default.addListener(window.parent, "scroll", c.default.throttle(c.default.bind(this._scroll, this), 150))
                },
                initClose: function() {
                    this.last_position = {}, u.default.addListener(window.parent, "mousemove", c.default.throttle(c.default.bind(this._mouse, this), 150))
                },
                _mouse: function(e) {
                    if ("undefined" != typeof this.last_position.x) {
                        var t = this.last_position.x - e.clientX,
                            i = this.last_position.y - e.clientY;
                        Math.abs(i) > Math.abs(t) && i > 0 && e.clientY < 30 && L.moveCloseButton()
                    }
                    this.last_position = {
                        x: e.clientX,
                        y: e.clientY
                    }
                },
                _scroll: function() {
                    var e = window.parent.document,
                        t = e.documentElement.clientHeight;
                    t === e.documentElement.scrollHeight && (t = e.body.clientHeight), L.mouseScroll(Math.round((e.documentElement.scrollTop + e.body.scrollTop) / (e.documentElement.scrollHeight - t) * 100))
                }
            }),
            D = function(e) {
                var t = {
                    initialize: function() {
                        c.default.defaults(this, e), c.default.each(this.conditions, function(e) {
                            "week_day" === e.condition && "0" === e.value && (e.value = "7")
                        });
                        var t = [],
                            i = !1,
                            a = this.commands[0];
                        if (!(0, d.cookie)(a.command + "_onceADay")) {
                            if (this.conditions)
                                for (var o = 0; o < this.conditions.length; o++) {
                                    var n = this.conditions[o];
                                    if (u.default.isGoalCondition(n.condition) && B.initialize(), u.default.isTimeCondition(n) || u.default.isGoalCondition(n)) {
                                        var r = u.default.getValue(n.condition);
                                        N.info(this.name + "; init condition " + n.condition + "; expected=" + n.value + "; actual=" + r), t.push(n)
                                    } else {
                                        if ("page_url" === n.condition) n.value = n.value.replace(/http(|s):\/\//, "");
                                        else if ("ab_test_group" === n.condition && !(0, d.cookie)("ab_test_group")) {
                                            var l = Math.round(Math.random()),
                                                s = n.group_name ? n.group_name : "JivoSite A/B Group";
                                            (0, d.cookie)("ab_test_group", l ? "group_a" : "group_b"), E.default.setABTestGroupContacts(s, l ? "Group A" : "Group B")
                                        }
                                        if (u.default.checkCondition(n, this.name)) i = !0;
                                        else if ("all" === this.type) return
                                    }
                                }
                            t.length > 0 ? (this.conditions = t, u.default.checkTimeConditions(this.conditions, this.type, this.name) ? this.triggered() : this.timeWait()) : i && this.triggered()
                        }
                    },
                    timeWait: function() {
                        var e = this;
                        clearTimeout(this.timeWaitTimeout), this.timeWaitTimeout = setTimeout(function() {
                            e.tick()
                        }, 1e3)
                    },
                    tick: function() {
                        !this.isTriggered && u.default.checkTimeConditions(this.conditions, this.type, this.name) ? this.triggered() : this.timeWait()
                    },
                    cancel: function() {
                        clearTimeout(this.timeWaitTimeout), this.isTriggered = !0
                    },
                    triggered: function() {
                        var e, t = this.commands[0];
                        if (clearTimeout(this.timeWaitTimeout), this.isTriggered = !0, "object" === (0, n.default)(t.params) && t.params.onceADay && (e = t.command + "_onceADay"), "label" == v.default.route || c.default.indexOf(["proactive", "open_offline", "show_callform"], t.command) === -1) switch (t.command) {
                            case "proactive":
                                I.default.data.length <= 1 && (L.showProactive(t.params.message, t.params.department, this.name, e), v.default.proactiveName = this.name);
                                break;
                            case "open_offline":
                                if ("online" === m.default.chat_mode) return;
                                (0, d.cookie)("invitation_time", (new Date).getTime()), t.params && (t.params.title && (m.default.offline_form_title = t.params.title), t.params.message && (m.default.offline_form_text = t.params.message)), (0, d.telemetry)("offline invite"), e && L.addOnceADayCookie(e), M.default.openOffline(t), L.emit("play_sound"), E.default.trackProactiveInvitationShown(this.name);
                                break;
                            case "hide":
                                z.default.hideWidget();
                                break;
                            case "system_message":
                                v.default.is_online && M.default.systemMessage(t.params.message);
                                break;
                            case "system_message_email":
                                if (w.default.client_info.email && v.default.is_online && 3 != m.default.contacts_ask) return void N.log("Cant show system message email.");
                                M.default.systemMessageEmail(t.params.message);
                                break;
                            case "show_callform":
                                k.default.mobileOrTablet() || L.showCallForm(t.params.title, e, this.name)
                        }
                    }
                };
                return t.initialize(), t
            };
        x.default.addListener(function() {
            x.default.agent_id && v.default.chat_started && L.allRulesCancel()
        }), I.default.addListener(function() {
            I.default.data && I.default.data.length && (!c.default.findWhere(I.default.data, {
                type: "clientMessage"
            }) && !c.default.findWhere(I.default.data, {
                type: "mediaMessage"
            }) || u.default.firstMessageTime || (u.default.firstMessageTime = new Date, N.log("cancelRules, we have client messsages."), L.cancelRule("proactive"), L.cancelRule("show_callform")), c.default.where(I.default.data, {
                type: "agentMessage"
            }).length - c.default.where(I.default.data, {
                type: "agentMessage",
                proactive: 1
            }).length > 0 && L.cancelRule("system_message"))
        }), t.default = L
    }, function(e, t) {
        e.exports = function(e) {
            try {
                return !!e()
            } catch (e) {
                return !0
            }
        }
    }, function(e, t, i) {
        var a = i(39),
            o = i(59);
        e.exports = i(36) ? function(e, t, i) {
            return a.f(e, t, o(1, i))
        } : function(e, t, i) {
            return e[t] = i, e
        }
    }, function(e, t, i) {
        var a = i(114),
            o = i(75);
        e.exports = Object.keys || function(e) {
            return a(e, o)
        }
    }, function(e, t, i) {
        var a = i(82)("wks"),
            o = i(61),
            n = i(34).Symbol,
            r = "function" == typeof n,
            l = e.exports = function(e) {
                return a[e] || (a[e] = r && n[e] || (r ? n : o)("Symbol." + e))
            };
        l.store = a
    }, function(e, t, i) {
        "use strict";

        function a(e) {
            return e && e.__esModule ? e : {
                default: e
            }
        }

        function o(e, t) {
            e.readyState ? (w.log("Using readyState callback"), e.onreadystatechange = function() {
                "loaded" != e.readyState && "complete" != e.readyState || (e.onreadystatechange = null, t())
            }) : (w.log("Using onload callback"), (0, n.addListener)(e, "load", function() {
                "about:blank" != e.contentWindow.location.href && (t(), e.onload = null, (0, n.removeEvent)(e, "load"))
            }))
        }
        Object.defineProperty(t, "__esModule", {
            value: !0
        });
        var n = i(1),
            r = i(5),
            l = a(r),
            s = i(18),
            c = a(s),
            d = i(57),
            u = a(d),
            f = i(11),
            p = a(f),
            h = i(2),
            m = a(h),
            g = i(4),
            v = (a(g), i(13)),
            b = a(v),
            w = l.default.name("magicIframe"),
            y = !1,
            x = !1,
            _ = (0, n.getPageWindow)(),
            k = _.history;
        if (!(0, n.isWixContext)()) try {
            window.parent && window.parent.window != window.top && window.top.jivo_magic_var === window.parent.window.jivo_magic_var && !(0, n.isWixIframe)() && window.parent.window.parent && window.parent.window.parent.jivo_api && window.parent.window.parent.__jivo_magic_frame_created === !0 && (y = !0)
        } catch (e) {
            w.log(e)
        }
        var j = {
                frm: 0,
                isCreated: function() {
                    return y
                },
                isLoaded: function() {
                    return x
                },
                create: function() {
                    this.frm || b.default.mobile() || b.default.tablet() || p.default.isSeparateWindow || (0, n.isWixIframe)() || (0, n.isWixContext)() || (0, n.isBitrix)() || this.init()
                },
                init: function() {
                    if (m.default.disable_iframe || (0, n.isWixContext)()) return void w.log("Magic iframe is disabled");
                    var e = window.parent.document.getElementById("jivo_magic_iframe");
                    return e || this.frm ? void w.log("Magic iframe already created") : (0, n.cookie)("mframe_protected") ? (w.log("Magic iframe create cancelled, page may be protected from iframe"), void(0, n.telemetry)("iframe protected")) : ((0, n.cookie)("mframe_protected", 1), w.log("Creating iframe"), e = window.parent.document.createElement("iframe"), e.setAttribute("id", "jivo_magic_iframe"), e.setAttribute("class", "jivo-frame-hidden"), e.setAttribute("frameborder", "0px"), e.setAttribute("name", "col_old_page"), window.parent.document.body.appendChild(e), e.contentWindow.location = window.parent.window.location, window.parent.__jivo_magic_frame_created = !0, this.frm = e, (0, n.addListener)(_, "popstate", function(e) {
                        e.preventDefault(), k.back()
                    }, !1), (0, n.addListener)(window, "popstate", function(e) {
                        e.preventDefault()
                    }, !1), void o(e, this.onFrameLoaded.bind(this)))
                },
                onFrameLoaded: function() {
                    w.log("Magic frame content loaded. Time to show the frame...");
                    var e = window.parent.document,
                        t = e.getElementById("jivo-iframe-container"),
                        i = (0, n.getScrollBarWidth)(),
                        a = (0, n.hasScroll)(!0);
                    w.log("Page has scroll", a), x && (a = (0, n.hasScroll)()), (0, n.addClass)(t, "jivo-no-transition"), e.body.setAttribute("id", "jivo_outer_body"), e.body.style.overflow = "hidden", e.body.scroll = "no", 100 == m.default.widget_padding && i > 0 && a ? u.default.right ? t.style.right = parseInt(u.default.right) + i + "px" : t.style.right = 30 + i + "px" : t.style.right = u.default.right ? u.default.right : "30px";
                    for (var o = e.getElementsByTagName("iframe"), r = 0; r < o.length; r++) {
                        var l = o[r];
                        "jivo_magic_iframe" != l.id && "jivo_container" != l.id && (l.style.display = "none")
                    }
                    this.frm.setAttribute("class", "jivo-frame-visible"), this.frm.style.display = "block", this.hasScroll().vScrollbar && (i += "px", w.log("Adjusting right margin. Scroll width=" + i), document.getElementById("jivo-chat").style.marginRight = i, document.getElementById("jivo-label").style.marginRight = i), this.syncPageScroll(), (0, n.cookie)("mframe_protected", null), x = !0
                },
                navigate: function(e) {
                    w.log("navigating iframe to ", e), j.frm.contentDocument.location.href = e
                },
                getDoc: function() {
                    var e = this.frm.contentWindow.document;
                    return e || (e = this.frm.contentDocument), e ? e : (w.log("Cannot find document!! :("), 0)
                },
                syncPageScroll: function() {
                    var e = 0,
                        t = 0,
                        i = window.parent.window;
                    "number" == typeof i.pageYOffset ? (t = i.pageYOffset, e = i.pageXOffset) : i.document.body && (i.document.body.scrollLeft || i.document.body.scrollTop) ? (t = i.document.body.scrollTop, e = i.document.body.scrollLeft) : i.document.documentElement && (i.document.documentElement.scrollLeft || i.document.documentElement.scrollTop) && (t = i.document.documentElement.scrollTop, e = i.document.documentElement.scrollLeft), w.log("scroll pos x=" + e + " y=" + t), this.frm.contentWindow.scrollTo(e, t)
                },
                hasScroll: function() {
                    var e = {
                        vScrollbar: !0,
                        hScrollbar: !0
                    };
                    try {
                        var t = "BackCompat" == document.compatMode ? document.body : document.documentElement;
                        e.vScrollbar = t.scrollHeight > t.clientHeight, e.hScrollbar = t.scrollWidth > t.clientWidth
                    } catch (e) {}
                    return e
                }
            },
            E = !1;
        c.default.addListener(function() {
            !E && c.default.data && c.default.getClientMessages() > 0 && (j.create(), E = !0)
        }), t.default = j
    }, function(e, t, i) {
        "use strict";

        function a(e) {
            return e && e.__esModule ? e : {
                default: e
            }
        }
        Object.defineProperty(t, "__esModule", {
            value: !0
        });
        var o = i(1),
            n = i(11),
            r = a(n),
            l = i(26),
            s = a(l),
            c = {
                tabletInit: function() {
                    var e, t = (0, o.getPageWindow)();
                    (0, o.addListener)(t.document, "touchstart", function() {
                        (0, o.hasClass)(t.document.body, "jivo-mobile-overlay") && (e = document.activeElement || document.getElementById("input-field"), e.blur())
                    }), (0, o.addListener)(t.document, "touchmove", function(e) {
                        0 == r.default.route.indexOf("chat") && r.default.is_input_focused && (0, o.hasClass)(t.document.body, "jivo-mobile-overlay") && e.preventDefault()
                    })
                },
                mobileInit: function() {
                    (0, o.addListener)(document, "touchmove", function(e) {
                        s.default.getUserZoom() <= 1 && "chat" === r.default.route && null === e.target.closest("#scrollbar-container") && e.preventDefault()
                    })
                }
            };
        t.default = c
    }, function(e, t, i) {
        var a = i(51);
        e.exports = function(e) {
            if (!a(e)) throw TypeError(e + " is not an object!");
            return e
        }
    }, function(e, t) {
        e.exports = function(e) {
            return "object" == typeof e ? null !== e : "function" == typeof e
        }
    }, function(e, t, i) {
        var a = {
            EventEmitter: i(253),
            EmitterSubscription: i(118)
        };
        e.exports = a
    }, function(e, t) {
        function i() {
            throw new Error("setTimeout has not been defined")
        }

        function a() {
            throw new Error("clearTimeout has not been defined")
        }

        function o(e) {
            if (d === setTimeout) return setTimeout(e, 0);
            if ((d === i || !d) && setTimeout) return d = setTimeout, setTimeout(e, 0);
            try {
                return d(e, 0)
            } catch (t) {
                try {
                    return d.call(null, e, 0)
                } catch (t) {
                    return d.call(this, e, 0)
                }
            }
        }

        function n(e) {
            if (u === clearTimeout) return clearTimeout(e);
            if ((u === a || !u) && clearTimeout) return u = clearTimeout, clearTimeout(e);
            try {
                return u(e)
            } catch (t) {
                try {
                    return u.call(null, e)
                } catch (t) {
                    return u.call(this, e)
                }
            }
        }

        function r() {
            m && p && (m = !1, p.length ? h = p.concat(h) : g = -1, h.length && l())
        }

        function l() {
            if (!m) {
                var e = o(r);
                m = !0;
                for (var t = h.length; t;) {
                    for (p = h, h = []; ++g < t;) p && p[g].run();
                    g = -1, t = h.length
                }
                p = null, m = !1, n(e)
            }
        }

        function s(e, t) {
            this.fun = e, this.array = t
        }

        function c() {}
        var d, u, f = e.exports = {};
        ! function() {
            try {
                d = "function" == typeof setTimeout ? setTimeout : i
            } catch (e) {
                d = i
            }
            try {
                u = "function" == typeof clearTimeout ? clearTimeout : a
            } catch (e) {
                u = a
            }
        }();
        var p, h = [],
            m = !1,
            g = -1;
        f.nextTick = function(e) {
            var t = new Array(arguments.length - 1);
            if (arguments.length > 1)
                for (var i = 1; i < arguments.length; i++) t[i - 1] = arguments[i];
            h.push(new s(e, t)), 1 !== h.length || m || o(l)
        }, s.prototype.run = function() {
            this.fun.apply(null, this.array)
        }, f.title = "browser", f.browser = !0, f.env = {}, f.argv = [], f.version = "", f.versions = {}, f.on = c, f.addListener = c, f.once = c, f.off = c, f.removeListener = c, f.removeAllListeners = c, f.emit = c, f.prependListener = c, f.prependOnceListener = c, f.listeners = function(e) {
            return []
        }, f.binding = function(e) {
            throw new Error("process.binding is not supported")
        }, f.cwd = function() {
            return "/"
        }, f.chdir = function(e) {
            throw new Error("process.chdir is not supported")
        }, f.umask = function() {
            return 0
        }
    }, function(e, t, i) {
        "use strict";

        function a(e) {
            return e && e.__esModule ? e : {
                default: e
            }
        }
        Object.defineProperty(t, "__esModule", {
            value: !0
        });
        var o = i(22),
            n = a(o),
            r = i(8),
            l = a(r),
            s = i(6),
            c = a(s),
            d = i(7),
            u = a(d),
            f = i(10),
            p = a(f),
            h = i(9),
            m = a(h),
            g = i(3),
            v = a(g),
            b = i(12),
            w = a(b),
            y = i(15),
            x = a(y),
            _ = i(11),
            k = a(_),
            j = i(1),
            E = a(j),
            C = i(2),
            M = a(C),
            S = E.default.getCopyrightSiteByLocale(M.default.locale) + "?utm_source=" + encodeURIComponent(location.hostname) + "&utm_medium=link&utm_content=widget_popup&utm_campaign=self_ad",
            z = (0, x.default)("seo_copyrightTextNew").split("{0}")[0],
            T = (0, x.default)("seo_copyrightTextNew").split("{0}")[1],
            I = function(e) {
                function t() {
                    return (0, c.default)(this, t), (0, p.default)(this, (t.__proto__ || (0, l.default)(t)).apply(this, arguments))
                }
                return (0, m.default)(t, e), (0, u.default)(t, [{
                    key: "componentDidMount",
                    value: function() {
                        var e = this;
                        this.widget_color = k.default.widget_color, this.on(k.default, function() {
                            e.widget_color != k.default.widget_color && e.forceUpdate()
                        })
                    }
                }, {
                    key: "render",
                    value: function() {
                        var e = (0, n.default)({
                                id: "jivosite-adword",
                                className: "jivosite-adword-" + M.default.locale
                            }, this.props),
                            t = "jivo-" + k.default.widget_font_color + "  jivo-" + ("ru_RU" === M.default.locale ? "ru" : "en");
                        return v.default.createElement("div", e, z, v.default.createElement("a", {
                            href: S,
                            rel: "nofollow",
                            target: "_blank",
                            id: "jivosite-copyright",
                            className: t
                        }), T)
                    }
                }]), t
            }(w.default);
        t.default = I
    }, function(e, t, i) {
        "use strict";

        function a(e) {
            return e && e.__esModule ? e : {
                default: e
            }
        }
        Object.defineProperty(t, "__esModule", {
            value: !0
        });
        var o = i(70),
            n = a(o),
            r = i(5),
            l = a(r),
            s = i(15),
            c = a(s),
            d = i(11),
            u = a(d),
            f = i(18),
            p = (a(f), i(29)),
            h = a(p),
            m = i(16),
            g = a(m),
            v = i(13),
            b = a(v),
            w = i(4),
            y = (a(w), i(48)),
            x = a(y),
            _ = i(1),
            k = l.default.name("Title"),
            j = new n.default({
                namespace: "TITLE",
                title: "",
                startBlink: function() {
                    (0, _.pageVisible)() || this.handle("start")
                },
                stopBlink: function() {
                    this.handle("stop")
                },
                _messageShown: !1,
                _showMessage: function() {
                    (0, _.getPageWindow)().document.title = (0, c.default)("lblNewMessage"), this._messageShown = !0
                },
                _showTitle: function() {
                    (0, _.getPageWindow)().document.title = this.title, this._messageShown = !1
                },
                states: {
                    uninitialized: {
                        _onEnter: function() {
                            this.title = (0, _.getCurrentPage)().title, k.log("old title:", u.default.current_title, "new title:", this.title), u.default.current_title == this.title || b.default.mobileOrTablet() || (x.default.isCreated() ? ((0, _.addPageView)(), window.top && window.top.jivo_api && window.top.jivo_api.sendPageTitle(this.title, !1, (0, _.getCurrentPage)().url)) : g.default.updateTitle(this.title)), u.default.current_title = this.title
                        },
                        start: "blinking"
                    },
                    blinking: {
                        _onEnter: function() {
                            this._showMessage(), this._scheduleEvent("blink", 1e3)
                        },
                        blink: function() {
                            this._messageShown ? this._showTitle() : this._showMessage(), this._scheduleEvent("blink", 1e3)
                        },
                        stop: function() {
                            this._showTitle(), this._cancelEvent("blink"), this.transition("uninitialized")
                        }
                    }
                }
            });
        u.default.addListener(function() {
            u.default.is_online || j.stopBlink()
        }), h.default.on("agent_message", function() {
            j.startBlink()
        }), h.default.on("agent_service_message", function() {
            j.startBlink()
        }), h.default.on("socket_disconnect", function() {
            j.stopBlink()
        }), h.default.on("receive_file", function() {
            j.stopBlink()
        }), (0, _.listenVisibility)(function() {
            (0, _.pageVisible)() && j.stopBlink()
        }), t.default = j
    }, function(e, t, i) {
        "use strict";

        function a(e) {
            return e && e.__esModule ? e : {
                default: e
            }
        }
        Object.defineProperty(t, "__esModule", {
            value: !0
        });
        var o = i(21),
            n = a(o);
        t.default = function(e) {
            return e.private_id || (e.private_id = (0, s.generateGUID)()), e.time || (e.time = new Date), e = (0, n.default)({}, c, e), (0, l.default)(e)
        };
        var r = i(41),
            l = a(r),
            s = i(1),
            c = {
                private_id: null,
                msg_id: null,
                text: null,
                type: null,
                time: null
            }
    }, function(e, t, i) {
        "use strict";

        function a(e) {
            return e && e.__esModule ? e : {
                default: e
            }
        }
        Object.defineProperty(t, "__esModule", {
            value: !0
        });
        var o = i(2),
            n = a(o),
            r = i(41),
            l = a(r),
            s = (i(1), {
                height: null,
                left: null,
                right: null
            }),
            c = (0, l.default)(s, n.default.widget_id + "_position");
        c.height && parseInt(c.height) < 302 && (c.height = "410px"), t.default = c
    }, function(e, t) {
        t.f = {}.propertyIsEnumerable
    }, function(e, t) {
        e.exports = function(e, t) {
            return {
                enumerable: !(1 & e),
                configurable: !(2 & e),
                writable: !(4 & e),
                value: t
            }
        }
    }, function(e, t, i) {
        var a = i(74);
        e.exports = function(e) {
            return Object(a(e))
        }
    }, function(e, t) {
        var i = 0,
            a = Math.random();
        e.exports = function(e) {
            return "Symbol(".concat(void 0 === e ? "" : e, ")_", (++i + a).toString(36))
        }
    }, function(e, t) {
        function i(e, t, i, a) {
            for (a = 0, t = t.split ? t.split(".") : t; e && a < t.length;) e = e[t[a++]];
            return void 0 === e ? i : e
        }

        function a(e, t, a) {
            var o = t.split(".");
            return function(t) {
                for (var n = t && t.target || this, r = {}, l = r, s = "string" == typeof a ? i(t, a) : n.nodeName ? n.type.match(/^che|rad/) ? n.checked : n.value : t, c = 0; c < o.length - 1; c++) l = l[o[c]] || (l[o[c]] = !c && e.state[o[c]] || {});
                l[o[c]] = s, e.setState(r)
            }
        }
        e.exports = a
    }, function(e, t, i) {
        "use strict";
        t.decode = t.parse = i(262), t.encode = t.stringify = i(263)
    }, function(e, t, i) {
        "use strict";

        function a(e) {
            return e && e.__esModule ? e : {
                default: e
            }
        }
        Object.defineProperty(t, "__esModule", {
            value: !0
        });
        var o = i(8),
            n = a(o),
            r = i(6),
            l = a(r),
            s = i(7),
            c = a(s),
            d = i(10),
            u = a(d),
            f = i(9),
            p = a(f),
            h = i(3),
            m = a(h),
            g = i(12),
            v = a(g),
            b = i(2),
            w = a(b),
            y = i(11),
            x = a(y),
            _ = i(14),
            k = a(_),
            j = function(e) {
                function t(e) {
                    return (0, l.default)(this, t), (0, u.default)(this, (t.__proto__ || (0, n.default)(t)).call(this, e))
                }
                return (0, p.default)(t, e), (0, c.default)(t, [{
                    key: "render",
                    value: function() {
                        var e = {},
                            t = {},
                            i = "jivo-bottom-left-square",
                            a = "chat" == this.props.state;
                        switch (w.default.widget_orientation) {
                            case "top":
                                e = {
                                    borderTopColor: x.default.widget_color
                                };
                                break;
                            case "right":
                                e = {
                                    borderRightColor: x.default.widget_color
                                };
                                break;
                            case "left":
                                e = {
                                    borderColor: x.default.widget_color
                                };
                                break;
                            case "bottom":
                                e = {
                                    borderLeftColor: x.default.widget_color
                                }
                        }
                        return a && (e = {
                            borderTopColor: "transparent",
                            borderLeftColor: x.default.widget_color
                        }), 1 == x.default.is_online ? t = {
                            backgroundColor: "rgb(68, 187, 110)"
                        } : (i += " jivo-offline", t = {
                            backgroundColor: x.default.widget_color
                        }), "call" != x.default.route || "cw_wait" != k.default.cw_call.status && "cw_connecting" != k.default.cw_call.status || (t = {
                            backgroundColor: "rgb(68, 187, 110)"
                        }, e = {
                            borderLeftColor: "#ffffff"
                        }), m.default.createElement("div", {
                            className: "leaf"
                        }, m.default.createElement("div", {
                            className: "jivo-triangle",
                            style: e
                        }), m.default.createElement("div", {
                            id: "jivo-css-leaf",
                            className: "jivo-css-leaf jivo-online jivo-light",
                            style: "display: block;"
                        }, m.default.createElement("div", {
                            className: "jivo-top-right-square"
                        }, m.default.createElement("div", {
                            className: i,
                            style: t
                        }))))
                    }
                }]), t
            }(v.default);
        t.default = j
    }, function(e, t, i) {
        "use strict";

        function a(e) {
            return e && e.__esModule ? e : {
                default: e
            }
        }
        Object.defineProperty(t, "__esModule", {
            value: !0
        });
        var o = i(21),
            n = a(o),
            r = i(8),
            l = a(r),
            s = i(6),
            c = a(s),
            d = i(7),
            u = a(d),
            f = i(10),
            p = a(f),
            h = i(9),
            m = a(h),
            g = i(3),
            v = a(g),
            b = i(12),
            w = a(b),
            y = i(5),
            x = a(y),
            _ = i(15),
            k = a(_),
            j = i(11),
            E = a(j),
            C = i(18),
            M = (a(C), i(14)),
            S = a(M),
            z = i(16),
            T = a(z),
            I = i(1),
            N = a(I),
            O = i(13),
            A = a(O),
            P = i(2),
            L = a(P),
            B = i(4),
            D = a(B),
            H = (x.default.name("Buttons"), function(e) {
                function t(e) {
                    (0, c.default)(this, t);
                    var i = (0, p.default)(this, (t.__proto__ || (0, l.default)(t)).call(this, e));
                    return i.successCallback = e.successCallback || function() {}, i.focusPopupInput = e.focusPopupInput || function() {}, i
                }
                return (0, m.default)(t, e), (0, u.default)(t, [{
                    key: "submitForm",
                    value: function(e) {
                        var t = document.getElementsByClassName("input-field"),
                            i = {};
                        this.focusPopupInput && this.focusPopupInput(), D.default.each(t, function(e) {
                            "name" == e.id && (e.id = "client_name"), i[e.id] = e.value ? e.value : null
                        }), this.isValid(i) ? L.default.eula && !E.default.eula_accepted ? (this.values = i, E.default.is_online ? T.default.showEula(!0) : T.default.showEula(!0)) : this.resetForm(i) : (e.preventDefault(), this.values = !1)
                    }
                }, {
                    key: "componentDidMount",
                    value: function() {
                        var e = this;
                        this.on(E.default, function() {
                            e.refs.submitBtn && e.refs.submitBtn.disabled && "chat/msg" == E.default.route && (e.refs.submitBtn.disabled = !1), L.default.eula && E.default.eula_accepted && e.values && (e.resetForm(e.values), e.values = !1)
                        }), N.default.addListener(v.default.findDOMNode(this.refs.submitBtn), A.default.tablet() ? "touchstart" : "mousedown", this.submitForm.bind(this))
                    }
                }, {
                    key: "cancel",
                    value: function() {
                        S.default.is_introduced = !0, "chat/introduce" === E.default.route ? T.default.navigate("chat") : T.default.closeWidget()
                    }
                }, {
                    key: "isValid",
                    value: function(e) {
                        for (var t in e)
                            if (t) {
                                var i = document.getElementById(t).parentNode,
                                    a = t;
                                "client_name" == t && (a = "name"), e[t] || "message" === t || L.default.contacts_settings[a] && L.default.contacts_settings[a].required ? N.default["isValidValue_" + t](e[t] || "") ? N.default.removeClass(i, "error-field") : N.default.addClass(i, "error-field") : N.default.removeClass(i, "error-field")
                            }
                        return !(document.getElementsByClassName("error-field").length > 0)
                    }
                }, {
                    key: "resetForm",
                    value: function(e) {
                        return L.default.eula ? void(E.default.eula_accepted && this.setInfo(e)) : void this.setInfo(e)
                    }
                }, {
                    key: "setInfo",
                    value: function(e) {
                        this.refs.submitBtn.disabled = !0, T.default.setClientContactInfo((0, n.default)(S.default.client_info, e)), this.successCallback(e.message)
                    }
                }, {
                    key: "render",
                    value: function() {
                        var e = this,
                            t = 1 === L.default.contacts_ask && E.default.is_online ? (0, k.default)("lblSendBefore") : (0, k.default)("lblSend"),
                            i = "buttons";
                        return L.default.eula && !E.default.eula_accepted && (t = (0, k.default)("continue")), (E.default.is_online && 1 === L.default.contacts_ask || !E.default.is_online) && (i += " single"), v.default.createElement("div", {
                            className: i
                        }, 0 !== L.default.contacts_ask && L.default.contacts_ask !== -1 || !E.default.is_online ? v.default.createElement("div", {
                            className: "left-button"
                        }, v.default.createElement("a", {
                            id: "cancel",
                            className: "jivoBtn cancel",
                            href: "#",
                            onClick: function() {
                                return e.cancel()
                            }
                        }, (0, k.default)("lblEvaluateCancel"))) : "", v.default.createElement("div", null, v.default.createElement("input", {
                            id: "submit",
                            type: "button",
                            value: t,
                            className: "jivoBtn accept",
                            ref: "submitBtn"
                        })))
                    }
                }]), t
            }(w.default));
        t.default = H
    }, function(e, t, i) {
        "use strict";

        function a(e) {
            return e && e.__esModule ? e : {
                default: e
            }
        }
        Object.defineProperty(t, "__esModule", {
            value: !0
        });
        var o = i(8),
            n = a(o),
            r = i(6),
            l = a(r),
            s = i(7),
            c = a(s),
            d = i(10),
            u = a(d),
            f = i(9),
            p = a(f),
            h = i(3),
            m = a(h),
            g = i(12),
            v = a(g),
            b = i(5),
            w = a(b),
            y = i(15),
            x = a(y),
            _ = i(2),
            k = a(_),
            j = i(1),
            E = a(j),
            C = i(4),
            M = a(C),
            S = i(14),
            z = a(S),
            T = i(13),
            I = a(T),
            N = i(11),
            O = a(N),
            A = i(62),
            P = a(A),
            L = (w.default.name("Email"), function(e) {
                function t(e) {
                    (0, l.default)(this, t);
                    var i = (0, u.default)(this, (t.__proto__ || (0, n.default)(t)).call(this, e));
                    return i.state = {
                        text: z.default.client_info.email ? z.default.client_info.email : ""
                    }, i.onBlur = e.onBlur || function() {}, i.onFocus = function() {
                        E.default.removeClass(m.default.findDOMNode(i.refs.email).parentNode, "error-field"), e.onFocus && e.onFocus()
                    }, (O.default.is_online || (0, j.isAnyRequired)()) && (O.default.is_online || k.default.contacts_settings.email.show || k.default.contacts_settings.phone.show && k.default.contacts_settings.phone.required) || (k.default.contacts_settings.email = {
                        show: !0,
                        required: !0
                    }), O.default.is_online || (0, j.isAnyRequired)() || k.default.contacts_settings.email.show || !k.default.contacts_settings.phone.show || (k.default.contacts_settings.email = {
                        show: !1,
                        required: !1
                    }), i
                }
                return (0, p.default)(t, e), (0, c.default)(t, [{
                    key: "componentDidMount",
                    value: function() {
                        var e = this;
                        this.on(O.default, function() {
                            setTimeout(M.default.bind(function() {
                                O.default.is_focused && this.refs.email && !m.default.findDOMNode(this.refs.email).value && 0 == O.default.route.indexOf("chat") && O.default.route.indexOf("min") == -1 && !I.default.tablet() && (m.default.findDOMNode(this.refs.email).focus(), O.default.is_focused = 0)
                            }, e), 500)
                        })
                    }
                }, {
                    key: "render",
                    value: function() {
                        return k.default.contacts_settings && k.default.contacts_settings.email && k.default.contacts_settings.email.show ? m.default.createElement("div", {
                            className: "field-wrapper"
                        }, m.default.createElement("input", {
                            id: "email",
                            type: "email",
                            onKeyPress: j.getNextSiblingNodeFocus.bind(this),
                            onBlur: this.onBlur.bind(this),
                            onFocus: this.onFocus.bind(this),
                            className: "input-field",
                            placeholder: (0, x.default)("lblYourEmail") + (k.default.contacts_settings.email.required ? "*" : ""),
                            value: this.state.text,
                            onInput: (0, P.default)(this, "text"),
                            ref: "email"
                        })) : ""
                    }
                }]), t
            }(v.default));
        t.default = L
    }, function(e, t, i) {
        "use strict";

        function a(e) {
            return e && e.__esModule ? e : {
                default: e
            }
        }
        Object.defineProperty(t, "__esModule", {
            value: !0
        });
        var o = i(8),
            n = a(o),
            r = i(6),
            l = a(r),
            s = i(7),
            c = a(s),
            d = i(10),
            u = a(d),
            f = i(9),
            p = a(f),
            h = i(3),
            m = a(h),
            g = i(12),
            v = a(g),
            b = i(5),
            w = a(b),
            y = i(15),
            x = a(y),
            _ = i(2),
            k = a(_),
            j = i(1),
            E = a(j),
            C = i(4),
            M = a(C),
            S = i(14),
            z = a(S),
            T = i(13),
            I = a(T),
            N = i(11),
            O = a(N),
            A = i(62),
            P = a(A),
            L = (w.default.name("Name"), function(e) {
                function t(e) {
                    (0, l.default)(this, t);
                    var i = (0, u.default)(this, (t.__proto__ || (0, n.default)(t)).call(this, e));
                    return i.state = {
                        text: z.default.client_info.client_name ? z.default.client_info.client_name : ""
                    }, i.onBlur = e.onBlur || function() {}, i.onFocus = function() {
                        E.default.removeClass(m.default.findDOMNode(i.refs.name).parentNode, "error-field"), e.onFocus && e.onFocus()
                    }, i
                }
                return (0, p.default)(t, e), (0, c.default)(t, [{
                    key: "componentDidMount",
                    value: function() {
                        var e = this;
                        this.on(O.default, function() {
                            setTimeout(M.default.bind(function() {
                                O.default.is_focused && this.refs.name && !m.default.findDOMNode(this.refs.name).value && 0 == O.default.route.indexOf("chat") && O.default.route.indexOf("min") == -1 && !I.default.tablet() && (m.default.findDOMNode(this.refs.name).focus(), O.default.is_focused = 0)
                            }, e), 500)
                        })
                    }
                }, {
                    key: "render",
                    value: function() {
                        return k.default.contacts_settings && k.default.contacts_settings.name && k.default.contacts_settings.name.show ? m.default.createElement("div", {
                            className: "field-wrapper"
                        }, m.default.createElement("input", {
                            id: "client_name",
                            type: "text",
                            onKeyPress: j.getNextSiblingNodeFocus.bind(this),
                            onBlur: this.onBlur.bind(this),
                            onFocus: this.onFocus.bind(this),
                            className: "input-field",
                            placeholder: (0, x.default)("lblIntroduceName") + (k.default.contacts_settings.name.required ? "*" : ""),
                            value: this.state.text,
                            onInput: (0, P.default)(this, "text"),
                            ref: "name"
                        })) : ""
                    }
                }]), t
            }(v.default));
        t.default = L
    }, function(e, t, i) {
        "use strict";

        function a(e) {
            return e && e.__esModule ? e : {
                default: e
            }
        }
        Object.defineProperty(t, "__esModule", {
            value: !0
        });
        var o = i(8),
            n = a(o),
            r = i(6),
            l = a(r),
            s = i(7),
            c = a(s),
            d = i(10),
            u = a(d),
            f = i(9),
            p = a(f),
            h = i(3),
            m = a(h),
            g = i(12),
            v = a(g),
            b = i(5),
            w = a(b),
            y = i(15),
            x = a(y),
            _ = i(2),
            k = a(_),
            j = i(1),
            E = a(j),
            C = i(4),
            M = a(C),
            S = i(14),
            z = a(S),
            T = i(11),
            I = a(T),
            N = i(13),
            O = a(N),
            A = i(62),
            P = a(A),
            L = (w.default.name("Phone"), function(e) {
                function t(e) {
                    (0, l.default)(this, t);
                    var i = (0, u.default)(this, (t.__proto__ || (0, n.default)(t)).call(this, e));
                    return i.state = {
                        text: z.default.client_info.phone ? z.default.client_info.phone : ""
                    }, i.onBlur = e.onBlur || function() {}, i.onFocus = function() {
                        E.default.removeClass(m.default.findDOMNode(i.refs.phone).parentNode, "error-field"), e.onFocus && e.onFocus()
                    }, I.default.is_online || (0, j.isAnyRequired)() || k.default.contacts_settings.email.show || !k.default.contacts_settings.phone.show || (k.default.contacts_settings.phone = {
                        show: !0,
                        required: !0
                    }), i
                }
                return (0, p.default)(t, e), (0, c.default)(t, [{
                    key: "componentDidMount",
                    value: function() {
                        var e = this;
                        this.on(I.default, function() {
                            setTimeout(M.default.bind(function() {
                                I.default.is_focused && this.refs.phone && !m.default.findDOMNode(this.refs.phone).value && 0 == I.default.route.indexOf("chat") && I.default.route.indexOf("min") == -1 && !O.default.tablet() && (m.default.findDOMNode(this.refs.phone).focus(), I.default.is_focused = 0)
                            }, e), 500)
                        }), this.on(z.default, function() {
                            z.default.client_info.phone && e.setState({
                                text: z.default.client_info.phone
                            })
                        })
                    }
                }, {
                    key: "render",
                    value: function() {
                        return k.default.contacts_settings && k.default.contacts_settings.phone && k.default.contacts_settings.phone.show ? m.default.createElement("div", {
                            className: "field-wrapper"
                        }, m.default.createElement("input", {
                            id: "phone",
                            type: "tel",
                            onKeyPress: j.getNextSiblingNodeFocus.bind(this),
                            onBlur: this.onBlur.bind(this),
                            onFocus: this.onFocus.bind(this),
                            className: "input-field",
                            placeholder: (0, x.default)("lblYourPhone") + (k.default.contacts_settings.phone.required ? "*" : ""),
                            value: this.state.text,
                            onInput: (0, P.default)(this, "text"),
                            ref: "phone"
                        })) : ""
                    }
                }]), t
            }(v.default));
        t.default = L
    }, function(e, t, i) {
        "use strict";

        function a(e) {
            return e && e.__esModule ? e : {
                default: e
            }
        }

        function o(e) {
            var t = n(e),
                i = I.querySelector(e);
            return i ? i : I.evaluate(t, I, null, E.default.XPathResultType.FIRST_ORDERED_NODE_TYPE, null).singleNodeValue
        }

        function n(e) {
            var t = "",
                i = e.split(" > ");
            return k.default.each(i, function(e) {
                t += "/*", e.indexOf(":") !== -1 && (t += "[" + e.substr(e.indexOf("(") + 1, e.indexOf(")") - e.indexOf("(") - 1) + "]")
            }), t
        }
        Object.defineProperty(t, "__esModule", {
            value: !0
        });
        var r = i(3),
            l = (a(r), i(3)),
            s = (a(l), i(15)),
            c = a(s),
            d = i(1),
            u = i(28),
            f = (a(u), i(5)),
            p = a(f),
            h = i(48),
            m = a(h),
            g = i(13),
            v = a(g),
            b = i(2),
            w = a(b),
            y = i(55),
            x = a(y),
            _ = i(4),
            k = a(_),
            j = i(322),
            E = a(j),
            C = i(16),
            M = a(C),
            S = i(87),
            z = a(S),
            T = p.default.name("cobrowse"),
            I = window.parent.document,
            N = {
                init: function() {
                    var e, t, i, a, o = !1,
                        n = {};
                    E.default.install(window.parent), this._process = a = function(e, t) {
                        o ? (T.log("controller of childSandboxBridge set as for NodeWebkit"), i = A, i.setLangpack(n), i.init()) : i = O, i[e] && "is_node_webkit" !== e && i[e](t)
                    }, (0, d.addListener)(window.parent, "message", function(i) {
                        if (i) {
                            var r = i.data;
                            null !== (0, d.cookie)("langpack") && (r.langpack = JSON.parse((0, d.cookie)("langpack"))), k.default.indexOf(["startSelection", "stopSelection", "in_node_webkit"], r.name) !== -1 && i.source && i.origin && (e = i.source, t = i.origin, o = !0, n = r.langpack, a(r.name, r))
                        }
                    }, !1)
                },
                process: function(e, t) {
                    this._process || this.init(), this._process(e, t)
                },
                create: function(e, t) {
                    v.default.tablet() && (0, d.removeClass)(window.parent.document.body, "jivo-mobile-widget"), N.process("highlight", e), N.process("renderTooltip", e), (0, d.changeBrowserLocation)(t, I.title)
                },
                postMessage: function(e) {
                    setTimeout(function() {
                        window.parent.jivo_cobrowse.source.postMessage(e, window.parent.jivo_cobrowse.origin)
                    }, 0)
                },
                isNodeWebkit: function(e) {
                    function t() {
                        return e.apply(this, arguments)
                    }
                    return t.toString = function() {
                        return e.toString()
                    }, t
                }(function() {
                    return isNodeWebkit
                }),
                getCobrowseData: function(e, t) {
                    var i = w.default.base_url + "/script/cobrowsing?cb=?&hash=" + e;
                    (0, d.getJSONP)(i, function(i) {
                        if (k.default.isObject(i)) {
                            0 === i.comment.length && (i.comment = (0, c.default)("lblDefaultCobrowseComment")), i.comment = (0, d.stripBrackets)(i.comment), x.default.stopBlink();
                            var a = I.location.href.split("#")[0],
                                o = t && t + "#jvhs_" + e,
                                n = I.getElementById("jivo_magic_iframe");
                            t && a !== t && a !== encodeURI(t) ? n ? m.default.navigate(o) : window.parent.document.location.href = o : v.default.mobile() ? (M.default.closeWidget(), setTimeout(function() {
                                N.create(i, o)
                            }, 1e3)) : N.create(i, o)
                        }
                    })
                }
            },
            O = {
                is_inited: !1,
                isCobrowseVisible: function(e) {
                    return (0, d.isVisible)(e) && "HTML" != e.tagName && "hidden" != e.style.visibility && "jivo-iframe-container" != e.id && "jivo_container" != e.id
                },
                highlight: function(e) {
                    function t(e, t, i) {
                        l.style.width = t + 10 + "px", l.style.height = i + 10 + "px", l.style.left = e.left - 12 + "px", l.style.top = e.top - 3 + "px", (0, d.elementOrParentIsFixed)(r) && (l.style.position = "fixed")
                    }

                    function i() {
                        l || (l = I.createElement("div"), l.className = "jivo_cobrowsing_element", l.id = "jivo_cobrowsing_element_id_" + e.hash, I.body.appendChild(l))
                    }

                    function a() {
                        if (!l) {
                            var e = I.createElement("div");
                            l.className = "jivo_cobrowsing_element_inner", l.appendChild(e)
                        }
                    }
                    if (T.log("highlight"), !this.is_inited && !A.is_inited) {
                        var n = I.createElement("link");
                        n.setAttribute("rel", "stylesheet"), n.setAttribute("href", (0, d.staticUrl)("/css/for_app.css")), I.body.appendChild(n), this.is_inited = !0
                    }
                    var r;
                    if (r = "string" == typeof e.element ? o(e.element) : e.element, !(0, d.getCobrowseElementPosition)(r)) return void T.log("cobrowse element position failed.");
                    if (e.hash && null !== I.getElementById("#jivo_cobrowsing_element_id_" + e.hash)) return this.animateScroll(e);
                    k.default.each(["jivo_cobrowsing_element", "jivo_cobrowsing_tooltip"], function(e) {
                        k.default.each(I.getElementsByClassName(e), function(e) {
                            e.parentNode.removeChild(e)
                        })
                    });
                    var l, s = (0, d.getCobrowseElementPosition)(r),
                        c = s.width,
                        u = s.height;
                    if (T.log(r, e), !r || !this.isCobrowseVisible(r)) return void(0, d.telemetry)("cobrowse_failed");
                    T.log("overlayCreate"), i(), T.log("overlayCss"), t(s, c, u), T.log("overlayAppend"), a(), (0, d.telemetry)("cobrowse_success");
                    var f = function() {
                        var n;
                        if (n = "string" == typeof e.element ? o(e.element) : e.element, l || (i(), a()), n) {
                            var r = (0, d.getCobrowseElementPosition)(n),
                                s = r.width,
                                c = r.height;
                            t(r, s, c)
                        }
                        if (l) return l
                    };
                    return setTimeout(function() {
                        f()
                    }, 50), (0, d.addListener)(window.parent, "resize", f), l ? l : void 0
                },
                renderTooltip: function(e) {
                    T.log("renderTooltip");
                    var t = null !== I.getElementById("#jivo_cobrowsing_element_id_" + e.hash);
                    if (t !== !1) return this.animateScroll(e), t;
                    var i;
                    if (i = "string" == typeof e.element ? o(e.element) : e.element, !i || !this.isCobrowseVisible(i)) return void T.log("Error render tooltip, element not visible");
                    var a = I.createElement("div");
                    a.className = "", a.id = "jivo_content_cobrowsing_tooltip", a.style.width = "100%", a.style.height = "auto";
                    var n = I.createElement("div");
                    return n.className = "jivo_cobrowsing_tooltip", v.default.mobile() && (n.style.width = "200px"), n.id = "jivo_cobrowsing_tooltip_" + e.hash, (0, d.elementOrParentIsFixed)(i) && (n.style.position = "fixed"), n.appendChild(a), e.show && (n = this.addTooltipContent(n, e, i)), n
                },
                appendTooltip: function(e, t) {
                    var i = e.childNodes[0];
                    I.body.appendChild(e);
                    var a = function() {
                        if ((0, d.addClass)(i, "bottom"), (0, d.removeClass)(i, "top left right"), t) {
                            var a = (0, d.getCobrowseElementPosition)(t),
                                o = 30,
                                n = a.width,
                                r = a.height,
                                l = a.left + n / 2 - o / 2,
                                s = a.top - o + 15,
                                c = (0, d.getCobrowseElementPosition)(e),
                                u = (0, d.getCobrowseElementPosition)(i),
                                f = window.parent.window.outerWidth || window.parent.window.innerWidth,
                                p = c.width / 2 * -1;
                            s < u.height + 10 ? (s = a.top + r, i.className += " top") : (i.style.position = "absolute", i.style.bottom = "10px"), l + p < 10 && (l = a.left, p = 0, i.className += " left"), v.default.mobile() ? l + c.width + p > f && (p = 0, l = f - c.width) : l + c.width > f && (p = c.width * -1, l = a.left + n - o, i.className += " right"), e.style.left = (0 !== l ? l : 35) + "px", e.style.top = s + "px", e.style.marginLeft = p + "px"
                        }
                    };
                    a(), e.style.opacity = 1, this.animateScroll(null, t, i), setTimeout(function() {
                        a()
                    }, 50), (0, d.addListener)(window.parent, "resize", a)
                },
                addTooltipContent: function(e, t, i) {
                    var a = e.childNodes[0],
                        o = 32 & w.default.options && "string" == typeof t.agent.avatar_url && t.agent.avatar_url.length > 0;
                    o && w.default.avatar_url && (t.agent.avatar_url = w.default.avatar_url + "/avatars/" + t.agent.avatar_url);
                    var n = I.createElement("div");
                    n.dir = "ltr", n.id = "jivo_action", n.className = "jivo-desktop";
                    var r = window.parent.document.createElement("div");
                    r.id = "jivo_close_button", r.innerHTML = z.default, n.appendChild(r), a.appendChild(n), r.addEventListener("click", function(i) {
                        i.preventDefault();
                        var a = I.getElementsByClassName("jivo_cobrowsing_element")[0];
                        a.parentNode.removeChild(a), (0, d.stripHashFromLocation)(t.hash), e.parentNode.removeChild(e)
                    });
                    var l = I.createElement("div");
                    l.innerText = t.agent.display_name, l.className = "jivo_cobrowsing_tooltip_agent", a.appendChild(l);
                    var s = I.createElement("div");
                    return s.innerHTML = t.comment.split("\n").join("<br />"), s.className = "jivo_cobrowsing_tooltip_text", a.appendChild(s), this.appendTooltip(e, i), e
                },
                animateScroll: function(e, t, i) {
                    function a(e, t, i) {
                        if (!(i <= 0)) {
                            var o = t - e.scrollTop,
                                n = o / i * 10;
                            setTimeout(function() {
                                e.scrollTop = e.scrollTop + n, e.scrollTop !== t && a(e, t, i - 10)
                            }, 10)
                        }
                    }
                    var o;
                    e && (t = I.getElementById("#jivo_cobrowsing_element_id_" + e.hash), i = I.getElementById("#jivo_cobrowsing_tooltip_" + e.hash).childNodes[0]), o = i && (0, d.hasClass)(i, "top") ? (0, d.getCobrowseElementPosition)(t).top : (0, d.getCobrowseElementPosition)(i.parentNode).top, a(I.documentElement, o - 300, 300), a(I.body, o - 300, 300)
                }
            },
            A = {
                is_selecting: !1,
                is_tooltip_open: !1,
                is_inited: !1,
                langpack: {},
                init: function() {
                    if (!this.is_inited) {
                        var e = I.createElement("link");
                        e.setAttribute("rel", "stylesheet"), e.setAttribute("href", (0, d.staticUrl)("/css/for_app.css")), I.body.appendChild(e), (0, d.removeEvent)(window.parent, "keydown", this.keydownListener), (0, d.addListener)(window.parent, "keydown", this.keydownListener), this.is_inited = !0
                    }
                },
                keydownListener: function(e) {
                    27 === e.keyCode && A.onEsc()
                },
                setLangpack: function(e) {
                    this.langpack = e
                },
                i18n: function(e) {
                    return this.langpack[e] ? this.langpack[e] : e
                },
                startSelection: function() {
                    var e = A;
                    (0, d.addClass)(I.body, "jivo_selecting"), e.is_selecting = !0, k.default.each(["input", "textarea", "select", "button"], function(e) {
                        k.default.each(I.getElementsByTagName(e), function(e) {
                            var t = I.createElement("div"),
                                i = (0, d.getCobrowseElementPosition)(e);
                            t.style.width = i.width + "px", t.style.height = i.height + "px", t.style.left = i.left + "px", t.style.top = i.top + "px", t.style.position = "absolute", t.realNode = e, e.disabled = !0, I.body.appendChild(t)
                        })
                    }), k.default.each(I.getElementsByTagName("*"), function(t) {
                        (0, d.addListener)(t, "mouseover", e.mouseoverListener), (0, d.addListener)(t, "mouseout", e.clearSelection)
                    })
                },
                stopTagsA: function() {
                    k.default.each(I.getElementsByTagName("a"), function(e) {
                        (0, d.addListener)(e, "click", function(e) {
                            return e.preventDefault(), e.stopPropagation(), !1
                        })
                    })
                },
                mouseoverListener: function(e) {
                    var t = A;
                    return "OPTION" !== this.tagName && (t.clearSelection(), O.highlight({
                        element: e.target
                    }), t.stopTagsA(), (0, d.removeEvent)(e.currentTarget, "click", t.clickListener), void(0, d.addListener)(e.currentTarget, "click", t.clickListener))
                },
                clickListener: function(e) {
                    var t = A;
                    e.preventDefault(), e.stopPropagation();
                    var i = this.realNode ? this.realNode : this;
                    t.stopSelection(), t.toolTip(i)
                },
                stopSelection: function() {
                    var e = A;
                    (0, d.removeClass)(I.body, "jivo_selecting"), k.default.each(["input", "textarea", "select", "button"], function(e) {
                        k.default.each(I.getElementsByTagName(e), function(e) {
                            e.disabled = !1
                        })
                    }), k.default.each(I.getElementsByClassName("fake_cb_element"), function(e) {
                        e.parentNode.removeChild(e)
                    }), k.default.each(I.getElementsByTagName("*"), function(t) {
                        (0, d.removeEvent)(t, "mouseover", e.mouseoverListener), (0, d.removeEvent)(t, "mouseout", e.clearSelection), (0, d.removeEvent)(t, "click", e.clickListener)
                    }), e.is_selecting = !1
                },
                clearSelection: function() {
                    k.default.each(["jivo_cobrowsing_element", "jivo_cobrowsing_tooltip"], function(e) {
                        k.default.each(I.getElementsByClassName(e), function(e) {
                            e.parentNode.removeChild(e)
                        })
                    })
                },
                toolTip: function(e) {
                    var t = A,
                        i = O.renderTooltip({
                            element: e
                        }),
                        a = i.childNodes[0];
                    i.className += " air", i.style.width = "auto", a.style.padding = "8px", a.style.width = "auto", a.style.backgroundColor = "";
                    var o = I.createElement("textarea");
                    o.id = "cobrowsing_textarea_comment", o.placeholder = t.i18n("cb_enterComment"), o.onkeypress = function(i) {
                        13 === i.keyCode && (i.preventDefault(), i.stopPropagation(), t.send(e))
                    }, t.textInput = o;
                    var n = I.createElement("button");
                    n.className = "btn btn-mimi blue on_dark large", n.innerText = t.i18n("cb_send"), n.style.float = "right", n.style.position = "relative", n.style.marginRight = "8px", n.onclick = function() {
                        t.send(e)
                    };
                    var r = I.createElement("button");
                    r.className = "btn btn-mimi grey on_dark large", r.innerText = t.i18n("cb_cancel"), r.style.float = "right", r.style.position = "relative", r.style.marginRight = "5px", r.onclick = function() {
                        t.closeTooltip()
                    };
                    var l = I.createElement("div");
                    l.style.clear = "both", a.appendChild(o), a.appendChild(r), a.appendChild(n), a.appendChild(l), O.appendTooltip(i, e), o.value = t.i18n("cb_enterComment"), o.focus(), o.select(), t.is_tooltip_open = !0
                },
                send: function(e) {
                    function t(e) {
                        for (var t = []; e.parentNode;) {
                            if (e.id) {
                                t.unshift("#" + e.id);
                                break
                            }
                            if (e == e.ownerDocument.documentElement) t.unshift(e.tagName);
                            else {
                                for (var i = 1, a = e; a.previousElementSibling; a = a.previousElementSibling, i++);
                                t.unshift(e.tagName + ":nth-child(" + i + ")")
                            }
                            e = e.parentNode
                        }
                        return t.join(" > ")
                    }
                    var i = this.textInput.value;
                    if (i.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g, ""), "" !== i) {
                        var a = t(e),
                            o = {
                                name: "on_send",
                                page_element: a,
                                page_url: window.parent.location.href,
                                comment: i
                            };
                        N.postMessage(o)
                    }
                },
                closeTooltip: function() {
                    var e = A;
                    e.stopSelection(), e.is_tooltip_open = !1, e.startSelection(), N.postMessage({
                        name: "on_cancel"
                    })
                },
                onEsc: function() {
                    this.is_tooltip_open ? this.closeTooltip() : this.is_selecting ? (this.stopSelection(), N.postMessage({
                        name: "reset"
                    })) : N.postMessage({
                        name: "close"
                    })
                }
            };
        t.default = N
    }, function(e, t, i) {
        "use strict";

        function a(e) {
            return e && e.__esModule ? e : {
                default: e
            }
        }
        Object.defineProperty(t, "__esModule", {
            value: !0
        });
        var o = i(4),
            n = a(o),
            r = i(175),
            l = a(r),
            s = i(5),
            c = a(s),
            d = c.default.name(!1);
        l.default.on("newfsm", function(e) {
            e.on("handling", function(e) {
                d.log(this.namespace + ": handling " + e.inputType + " in state " + this.state)
            }), e.on("nohandler", function(e) {
                d.log(this.namespace + ": unhandled " + e.inputType + " in state " + this.state)
            }), e.on("transition", function(e) {
                d.log([this.namespace + ":", "transition from:", e.fromState, "to:", e.toState, "action:", e.action].join(" "))
            })
        }), t.default = l.default.Fsm.extend({
            _fireEvent: function(e) {
                delete this._scheduled_events[e], this.handle(e)
            },
            _scheduleEvent: function(e, t) {
                e in this._scheduled_events ? d.log(this.namespace + ": attempt to re-schedule event" + e) : (d.log(this.namespace + ": scheduling " + e + " for " + t), this._scheduled_events[e] = setTimeout(n.default.bind(this._fireEvent, this, e), t))
            },
            _cancelEvent: function(e) {
                e in this._scheduled_events ? (clearTimeout(this._scheduled_events[e]), delete this._scheduled_events[e]) : d.log(this.namespace + ": attempt to cancel not scheduled event", e)
            },
            constructor: function() {
                this._scheduled_events = {}, l.default.Fsm.apply(this, arguments)
            }
        })
    }, function(e, t, i) {
        "use strict";
        Object.defineProperty(t, "__esModule", {
            value: !0
        });
        var a = i(1),
            o = {
                isInited: !1,
                update: function(e) {
                    this.settings = {
                        topMargin: e + 5
                    }, this.viewport = document.getElementById("scrollbar-container"), this.overview = document.getElementById("messages-div-inner"), this.scrollbarY = document.getElementsByClassName("scrollbar")[0], this.scrollbarYRail = document.getElementsByClassName("scrollbar-rail")[0], this.virtualTop = 0, this.virtualBottom = 0, this.scrollbarYBottom = 0, this.bottomPositionCSS = this.getBottomCSSValue(), this.viewport && this.overview && this.updateBarSizeAndPosition(!1);
                    var t, i;
                    if (!this.isInited) {
                        var o = this;
                        (0, a.addListener)(this.scrollbarY, "mousedown", function(e) {
                            i = e.pageY, t = o.getBottomCSSValueScrollBarY(), (0, a.addClass)(o.scrollbarYRail, "in-scrolling"), e.stopPropagation(), e.preventDefault()
                        }), (0, a.addListener)(document.body, "mousemove", function(e) {
                            (0, a.hasClass)(o.scrollbarYRail, "in-scrolling") && (o.updateContentScrollTop(), o.moveBarY(o.getBottomCSSValueScrollBarY(), e.pageY - i), i = e.pageY, e.stopPropagation(), e.preventDefault())
                        }), (0, a.addListener)(document.body, "mouseup", function() {
                            (0, a.hasClass)(o.scrollbarYRail, "in-scrolling") && (0, a.removeClass)(o.scrollbarYRail, "in-scrolling")
                        }), this.isInited = !0
                    }
                },
                updateContentScrollTop: function() {
                    var e = this.viewport.offsetHeight - this.settings.topMargin,
                        t = this.overview.offsetHeight - this.settings.topMargin;
                    this.bottomPositionCSS = parseInt(this.scrollbarYBottom * (t - e) / (e - this.scrollbarY.offsetHeight), 10), this.updateContent(t, e)
                },
                moveBarY: function(e, t) {
                    var i = this.viewport.offsetHeight - this.settings.topMargin,
                        a = e - t,
                        o = i - this.scrollbarY.offsetHeight;
                    a < 0 ? this.scrollbarYBottom = 0 : a > o ? this.scrollbarYBottom = o : this.scrollbarYBottom = a, this.scrollbarY.style.bottom = this.scrollbarYBottom + "px"
                },
                whell: function(e) {
                    this.bottomPositionCSS = this.bottomPositionCSS + -1 * e, this.updateBarSizeAndPosition()
                },
                touchMove: function(e) {
                    this.bottomPositionCSS = this.bottomPositionCSS + e + this.touchPosition, this.updateBarSizeAndPosition()
                },
                touchStart: function(e) {
                    this.touchPosition = -1 * e, this.updateBarSizeAndPosition()
                },
                updateBarSizeAndPosition: function(e) {
                    if (this.viewport && this.overview) {
                        var t = this.viewport.offsetHeight - this.settings.topMargin,
                            i = this.overview.offsetHeight - this.settings.topMargin;
                        t < i && !e ? (this.scrollbarYHeight = parseInt(t * t / i, 10), this.updateContent(i, t), this.scrollbarYBottom = parseInt(this.bottomPositionCSS * (t - this.scrollbarYHeight) / (i - t), 10)) : (this.scrollbarYHeight = 0, this.scrollbarYBottom = 0, this.updateOverviewNode(0)), this.scrollbarYBottom >= t - this.scrollbarYHeight && (this.scrollbarYBottom = t - this.scrollbarYHeight), this.updateScrollBarCss(e, t)
                    }
                },
                updateScrollBarCss: function(e) {
                    this.scrollbarYRail.style.display = this.scrollbarYHeight > 0 ? "block" : "none", this.scrollbarY.style.bottom = e ? 0 : this.scrollbarYBottom + "px", this.scrollbarY.style.height = this.scrollbarYHeight + "px"
                },
                updateContent: function(e, t) {
                    var i = e - t + this.settings.topMargin;
                    this.bottomPositionCSS < i ? this.bottomPositionCSS <= 0 ? (this.updateOverviewNode(0), this.bottomPositionCSS = 0) : this.updateOverviewNode(this.bottomPositionCSS * -1, i) : (this.updateOverviewNode(i * -1), this.bottomPositionCSS = i)
                },
                updateOverviewNode: function(e) {
                    this.virtualBottom = e, this.virtualTop = this.virtualBottom * -1, 0 !== this.virtualBottom ? (this.overview.style.bottom = "auto", this.overview.style.top = this.virtualTop + "px") : (this.overview.style.bottom = this.virtualBottom + "px", this.overview.style.top = "auto")
                },
                getBottomCSSValue: function() {
                    try {
                        return parseInt(this.overview.style.bottom) || 0
                    } catch (e) {
                        return console.error(e), 0
                    }
                },
                getBottomCSSValueScrollBarY: function() {
                    try {
                        return parseInt(this.scrollbarY.style.bottom) || 0
                    } catch (e) {
                        return console.error(e), 0
                    }
                }
            };
        t.default = o
    }, function(e, t, i) {
        "use strict";

        function a(e) {
            return e && e.__esModule ? e : {
                default: e
            }
        }
        Object.defineProperty(t, "__esModule", {
            value: !0
        });
        var o = i(21),
            n = a(o),
            r = i(3),
            l = (a(r), i(2)),
            s = a(l),
            c = i(5),
            d = a(c),
            u = i(4),
            f = a(u),
            p = i(15),
            h = a(p),
            m = i(101),
            g = (a(m), i(1)),
            v = d.default.name("fileUploader"),
            b = 10485760,
            w = "1",
            y = "https://api.jivosite.com",
            x = i(52),
            _ = x.EventEmitter,
            k = new _,
            j = {
                isInited: !1,
                xhr: !1,
                getFileInfo: function(e) {
                    if (e.size > b) return void E.emit("error", (0, h.default)("file_upl_error_max_size").replace("_FILESIZE_", (0, g.humanFileSize)(b)), e, !0);
                    var t = e.name.substr(e.name.lastIndexOf(".") + 1);
                    if (e.name.lastIndexOf(".") == -1 || !t) return void E.emit("error", (0, h.default)("file_upl_error_no_ext"), e, !0);
                    t = t.toLowerCase();
                    var i = "/api/" + w + "/sites/" + s.default.site_id + "/widgets/" + s.default.widget_id + "/media/transfer/access/gain?extension=" + t,
                        a = new XMLHttpRequest;
                    a.open("GET", y + i), a.onload = function() {
                        if (200 === a.status) {
                            v.log("API responce:", JSON.parse(a.responseText));
                            var t = JSON.parse(a.responseText);
                            j.uploadFileS3(e, t)
                        } else v.error("API Request failed.  Returned status of ", a.status), E.emit("error", (0, h.default)("file_upl_error"), e)
                    }, a.addEventListener("error", f.default.bind(function(t) {
                        v.log("API error:", t), E.emit("error", (0, h.default)("file_upl_error"), e, !0), (0, g.telemetry)("file_upload_error_api")
                    }, void 0), !1), a.send()
                },
                readFile: function(e, t, i) {
                    var a = new FileReader;
                    a.onload = function(a) {
                        i(e, a.target.result, t)
                    }, a.readAsBinaryString(e)
                },
                uploadFileS3: function(e, t) {
                    v.log("uploadFileS3", e, t), j.startUpload(e, !1, t)
                },
                abort: function() {
                    v.log("abort upload", j.xhr), j.xhr && (j.xhr.abort(), E.emit("abort"))
                },
                startUpload: function(e, t, i) {
                    var a = j.buildBodyFormData(i, e),
                        o = new XMLHttpRequest;
                    o.upload.addEventListener("progress", f.default.bind(function(e) {
                        e.lengthComputable && E.emit("progress", e.loaded, e.total)
                    }, void 0), !1), o.addEventListener("load", f.default.bind(function(t) {
                        t.target && 204 == t.target.status ? (v.log("complete", t), e.icon_type = j.detectType(e.type), E.emit("complete", e, i.url + "/" + a.url)) : (v.log("not received response", t), E.emit("error", (0, h.default)("file_upl_error"), e))
                    }, void 0), !1), o.addEventListener("error", f.default.bind(function(t) {
                        v.log("upload error", t), setTimeout(function() {
                            E.emit("error", (0, h.default)("file_upl_error"), e), (0, g.telemetry)("file_upload_error_s3")
                        }, 50)
                    }, void 0), !1), o.addEventListener("abort", f.default.bind(function(e) {
                        E.emit("cancel")
                    }, void 0), !1), o.open("POST", i.url), o.send(a.formData), v.log("upload started."), E.emit("uploading", e, a, t), j.xhr = o
                },
                detectType: function(e) {
                    return e.indexOf("image") >= 0 ? "photo" : e.indexOf("video") >= 0 ? "video" : e.indexOf("audio") >= 0 ? "audio" : "document"
                },
                getEscapedFileName: function(e) {
                    var t = void 0;
                    try {
                        t = encodeURIComponent(e)
                    } catch (e) {
                        v.log("too ugly file name", e), t = !1
                    }
                    return t
                },
                buildBodyFormData: function(e, t) {
                    v.log("buildBody", e, t);
                    var i = {
                            signature: "X-Amz-Signature",
                            credential: "X-Amz-Credential",
                            algorithm: "X-Amz-Algorithm",
                            policy: "Policy",
                            date: "X-Amz-Date"
                        },
                        a = (new Date, e.key.split("/")[4]),
                        o = new FormData;
                    return o.append("acl", "public-read"), o.append("key", e.key), o.append("Content-disposition", "attachment; filename*=UTF-8''" + j.getEscapedFileName(t.name)), f.default.each(e, function(e, t) {
                        i[t] && o.append(i[t], e)
                    }), o.append("file", t, a), {
                        fileName: a,
                        url: e.key,
                        formData: o
                    }
                },
                isPreviewImage: function(e) {
                    var t = e.toLowerCase();
                    return /\.(gif|jpg|jpeg|png)$/i.test(t)
                },
                getUrlEmoji: function(e, t) {
                    var i = "";
                    return i = e.indexOf("image") >= 0 ? "=�" : e.indexOf("video") >= 0 ? "=�" : e.indexOf("audio") >= 0 ? "=	" : "=�", i + " " + t
                }
            },
            E = (0, n.default)(k, j);
        t.default = E
    }, function(e, t, i) {
        e.exports = {
            default: i(188),
            __esModule: !0
        }
    }, function(e, t) {
        e.exports = function(e) {
            if (void 0 == e) throw TypeError("Can't call method on  " + e);
            return e
        }
    }, function(e, t) {
        e.exports = "constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf".split(",")
    }, function(e, t) {
        e.exports = {}
    }, function(e, t) {
        e.exports = !0
    }, function(e, t, i) {
        var a = i(50),
            o = i(205),
            n = i(75),
            r = i(81)("IE_PROTO"),
            l = function() {},
            s = "prototype",
            c = function() {
                var e, t = i(107)("iframe"),
                    a = n.length,
                    o = "<",
                    r = ">";
                for (t.style.display = "none", i(198).appendChild(t), t.src = "javascript:", e = t.contentWindow.document, e.open(), e.write(o + "script" + r + "document.F=Object" + o + "/script" + r), e.close(), c = e.F; a--;) delete c[s][n[a]];
                return c()
            };
        e.exports = Object.create || function(e, t) {
            var i;
            return null !== e ? (l[s] = a(e), i = new l, l[s] = null, i[r] = e) : i = c(), void 0 === t ? i : o(i, t)
        }
    }, function(e, t) {
        t.f = Object.getOwnPropertySymbols
    }, function(e, t, i) {
        var a = i(39).f,
            o = i(38),
            n = i(47)("toStringTag");
        e.exports = function(e, t, i) {
            e && !o(e = i ? e : e.prototype, n) && a(e, n, {
                configurable: !0,
                value: t
            })
        }
    }, function(e, t, i) {
        var a = i(82)("keys"),
            o = i(61);
        e.exports = function(e) {
            return a[e] || (a[e] = o(e))
        }
    }, function(e, t, i) {
        var a = i(34),
            o = "__core-js_shared__",
            n = a[o] || (a[o] = {});
        e.exports = function(e) {
            return n[e] || (n[e] = {})
        }
    }, function(e, t) {
        var i = Math.ceil,
            a = Math.floor;
        e.exports = function(e) {
            return isNaN(e = +e) ? 0 : (e > 0 ? a : i)(e)
        }
    }, function(e, t, i) {
        var a = i(51);
        e.exports = function(e, t) {
            if (!a(e)) return e;
            var i, o;
            if (t && "function" == typeof(i = e.toString) && !a(o = i.call(e))) return o;
            if ("function" == typeof(i = e.valueOf) && !a(o = i.call(e))) return o;
            if (!t && "function" == typeof(i = e.toString) && !a(o = i.call(e))) return o;
            throw TypeError("Can't convert object to primitive value")
        }
    }, function(e, t, i) {
        var a = i(34),
            o = i(30),
            n = i(77),
            r = i(86),
            l = i(39).f;
        e.exports = function(e) {
            var t = o.Symbol || (o.Symbol = n ? {} : a.Symbol || {});
            "_" == e.charAt(0) || e in t || l(t, e, {
                value: r.f(e)
            })
        }
    }, function(e, t, i) {
        t.f = i(47)
    }, function(e, t) {
        e.exports = '<svg id="jivo-icon-closewidget" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><style>.jivo-st0{opacity:.8;fill:#FFF;stroke:#000;enable-background:new}.jivo-st0,.jivo-st1{stroke-width:1.5;stroke-linecap:round}.jivo-st1{fill:none;stroke:#383d45}</style><circle class="jivo-st0" cx="12" cy="12" r="11"/><path class="jivo-st1" d="M7.5 16.5l9-9M16.5 16.5l-9-9"/></svg>'
    }, function(e, t) {
        e.exports = '<svg xmlns="http://www.w3.org/2000/svg" width="108" height="36" viewBox="0 0 108 36">\n    <g>\n        <path id="text" d="M6.342 11.967H.957c-.2 0-.4 0-.6.2 0 .2-.198.2-.198.4v1.993c0 .2 0 .4.198.6.2.198.4.198.6.198h2.79v14.36c0 1.397-1.196 2.594-2.392 2.594h-.4c-.2 0-.398 0-.598.2-.2.2-.2.398-.2.598v1.994c0 .2 0 .4.2.6.2.198.4.198.6.198h.198c3.192 0 5.785-2.792 5.785-5.984V12.566c0-.2 0-.4-.2-.6h-.398m6.98 0H11.33c-.2 0-.2 0-.4.2s-.2.2-.2.4v14.76c0 .2 0 .398.2.598.2.2.4.2.598.2h1.795c.2 0 .4 0 .598-.2.2-.2.2-.4.2-.598v-14.76c0-.2 0-.4-.198-.6h-.6m17.154 0H28.88c-.598 0-.997.2-.997.4l-4.388 9.973-4.188-9.974c0-.4-.4-.4-.6-.4h-1.993c-.4 0-.598 0-.598.2-.2.2-.2.4 0 .6l6.78 15.357c.2.2.4.4.6.4h.2c.198 0 .597-.2.597-.4l6.782-15.358c.2-.2.2-.4 0-.598-.2-.2-.4-.2-.6-.2m9.176-.4c-2.193.002-3.988.8-5.584 2.594-1.595 1.597-2.393 3.592-2.393 5.985 0 2.393.798 4.388 2.393 5.984 1.596 1.794 3.39 2.592 5.585 2.592s3.99-.798 5.586-2.593c1.596-1.796 2.394-3.79 2.394-5.985 0-2.393-.798-4.388-2.394-5.984-1.596-1.794-3.59-2.591-5.585-2.591m3.193 12.165c-.798.998-1.995 1.596-3.192 1.596-1.395 0-2.392-.398-3.39-1.395-.797-.998-1.396-2.194-1.396-3.79 0-1.396.4-2.792 1.397-3.59.798-.997 1.995-1.396 3.39-1.396 1.398 0 2.395.398 3.193 1.395.797.997 1.396 2.194 1.396 3.59s-.6 2.593-1.397 3.59m19.147-.598c-.398-.4-.797-.2-.997 0l-.4.4-.597.597c-.2.2-.4.2-.6.4-.198.2-.597.398-.796.398-.4 0-.6.2-.998.2-1.396 0-2.393-.6-3.19-1.596-.8-.998-1.397-2.194-1.397-3.79 0-1.396.4-2.792 1.396-3.79.998-.997 1.996-1.396 3.392-1.396 1.197 0 2.194.6 3.19 1.596.4.4.8.4.998.2l1.197-1.197s0-.4-.4-.8c-1.395-1.794-3.39-2.79-5.584-2.79-2.194-.002-3.99.796-5.584 2.59-1.597 1.597-2.395 3.592-2.395 5.985 0 2.393.798 4.388 2.394 6.183 1.594 1.596 3.39 2.394 5.583 2.394 2.593 0 4.588-1.197 5.984-3.39.2-.4.2-.8-.2-1.198l-.997-.997m11.57-11.569c-1.597 0-2.993.6-4.59 1.796V4.986c0-.2 0-.4-.198-.598-.2-.2-.4-.2-.6-.2H66.38c-.2 0-.398 0-.598.2-.2.2-.2.4-.2.598v22.54c0 .198 0 .398.2.597.2.2.4.2.598.2h1.796c.598 0 .797-.2.797-.798V17.353c.2-.6.8-.998 1.398-1.596.797-.598 1.795-.798 2.792-.798.997 0 1.795.398 2.393 1.196.6.798.798 1.795.798 3.19v8.378c0 .2 0 .4.2.6.2.198.4.198.6.198h1.794c.2 0 .4 0 .6-.2.198-.2.198-.398.198-.598v-8.177c-.2-5.386-2.194-7.979-6.183-7.979m20.144 1.995c-.4-.798-.997-1.197-1.596-1.596-.798-.4-1.795-.598-2.992-.598-1.994 0-3.79.398-5.385.996-.398.2-.597.4-.597.998l.4 1.396c.198.598.398.798.796.598a12.823 12.823 0 0 1 4.388-.798c.997 0 1.595.2 1.994.798.4.598.598 1.596.4 2.793l-.4-.2c-.2 0-.598-.198-1.197-.198-.4.2-.797.2-1.396.2-1.995 0-3.392.398-4.588 1.395-1.197.997-1.596 2.194-1.596 3.79s.4 2.992 1.396 3.99c.998.996 2.194 1.395 3.59 1.395 1.796 0 3.39-.598 4.787-1.994l.398 1.196c.2.4.4.6.6.6h1.195c.2 0 .4 0 .6-.2.198-.2.198-.4.198-.6V18.75c0-1.198 0-2.195-.198-2.993-.2-.598-.4-1.396-.798-2.194M91.31 23.735c-.2.4-.797.998-1.396 1.396-.798.4-1.396.6-2.194.6s-1.396-.2-1.795-.798c-.4-.4-.598-1.197-.598-1.795 0-.798.2-1.396.798-1.995.598-.4 1.396-.797 2.393-.797.598 0 1.197 0 1.795.2.6.198.997.198.997.398v2.792m16.555 2.793l-.598-1.596c-.2-.4-.4-.598-.997-.4a3.834 3.834 0 0 1-2.394.8c-.4 0-.798-.2-.997-.4-.2-.2-.4-.598-.4-1.396V14.96h4.19c.198 0 .397 0 .597-.2.2-.2.2-.4.2-.6v-1.594c0-.2 0-.4-.2-.6h-4.788V7.38c0-.2 0-.4-.2-.598-.2-.2-.398-.2-.598-.2h-1.994c-.2 0-.4 0-.6.2-.198.2-.198.398-.198.598v4.587h-1.795c-.4 0-.798.2-.798.798v1.396c0 .2 0 .4.2.6.2.2.398.2.598.2h1.795v8.975c0 1.595.2 2.792.798 3.59.598.798 1.595 1.197 2.99 1.197.8 0 1.597-.2 2.395-.4s1.396-.598 1.795-.797c.997-.2 1.197-.598.997-.997z" fill-rule="evenodd" fill="#3e414f"/>\n        <path id="leaf" d="M6.94 10.77C6.543.4.16 0 .16 0c-.4 9.374 6.78 10.77 6.78 10.77z" fill-rule="evenodd" fill="#44bb6e"/>\n    </g>\n</svg>'
    }, function(e, t) {
        e.exports = '<svg xmlns="http://www.w3.org/2000/svg" width="108" height="36" viewBox="0 0 108 36">\n  <g>\n    <path id="text" d="M14.118 11.775h-1.985c-.198 0-.397 0-.595.2-.2.2-.2.398-.2.598V27.34c0 .2 0 .4.2.6.198.2.397.2.595.2h1.985c.2 0 .397 0 .596-.2.198-.2.198-.4.198-.6V12.574c0-.2 0-.4-.198-.6-.2 0-.397-.198-.596-.198m18.262 0h-1.587c-.596 0-.993.2-1.19.4l-4.567 9.977-4.367-9.978c-.2-.4-.398-.4-.795-.4H17.69c-.396 0-.594 0-.594.2-.2.2-.2.4 0 .6l7.146 15.366c.198.2.397.4.794.4h.198c.397 0 .596-.2.596-.4l7.146-15.367c.2-.2.2-.4 0-.6 0 0-.198-.198-.596-.198m9.727-.4c-2.382 0-4.367.8-5.955 2.595-1.588 1.596-2.58 3.592-2.58 5.987s.793 4.39 2.58 5.987c1.588 1.796 3.573 2.594 5.955 2.594s4.367-.798 5.955-2.594c1.588-1.796 2.382-3.792 2.382-5.987 0-2.395-.794-4.39-2.58-5.987-1.588-1.597-3.573-2.595-5.757-2.595m3.375 12.374c-.993.997-2.184 1.595-3.573 1.595-1.39 0-2.582-.4-3.574-1.397-.993-.998-1.39-2.195-1.39-3.792 0-1.396.397-2.793 1.39-3.592.992-.998 2.183-1.397 3.573-1.397 1.388 0 2.58.4 3.572 1.397.992.998 1.39 2.195 1.39 3.592 0 1.398-.398 2.595-1.39 3.593m16.873-3.394c-.596-.4-1.19-.798-1.59-.998-.594-.2-1.19-.6-2.182-.998-.993-.4-1.588-.798-2.183-1.197-.398-.4-.795-.798-.795-1.197 0-.4.2-.8.596-.998.398-.2.795-.4 1.59-.4 1.19 0 2.182.2 3.572.8.595.198.794.198.992-.4l.596-1.198c.198-.4.198-.798-.397-1.197-1.19-.798-2.78-1.198-4.764-1.198-1.788 0-3.177.4-4.17 1.397-.992.998-1.39 1.996-1.39 3.194 0 1.197.398 2.195 1.192 2.993.794.797 1.787 1.396 3.374 2.194 1.19.6 2.184.998 2.78 1.397.595.4.794.8.794 1.398 0 .4-.2.8-.596 1.198-.397.2-.993.4-1.588.4-1.19 0-2.58-.4-4.17-1.2-.594-.198-.793-.198-.99.2l-.795 1.597c-.198.4 0 .6.2.8 1.587 1.196 3.374 1.595 5.36 1.595 1.785 0 3.175-.4 4.366-1.397.992-.997 1.588-1.994 1.588-3.39 0-.8-.198-1.398-.397-1.997 0-.4-.397-.998-.992-1.397m7.146-8.58h-1.984c-.2 0-.398 0-.596.198-.198.2-.198.4-.198.6V27.34c0 .2 0 .4.198.6.198.2.397.2.596.2H69.5c.2 0 .397 0 .596-.2.2-.2.2-.4.2-.6V12.574c0-.2 0-.4-.2-.6-.2 0-.397-.198-.595-.198m14.293 12.972c-.2-.4-.596-.6-.993-.4-.794.6-1.786.8-2.58.8-.397 0-.794-.2-.993-.4-.198-.2-.397-.6-.397-1.398v-8.782h4.367c.2 0 .397 0 .596-.2.198 0 .198-.2.198-.398v-1.397c0-.2 0-.4-.197-.6-.2-.198-.397-.198-.596-.198H78.83v-4.59c0-.2 0-.4-.198-.6-.2 0-.2-.2-.596-.2H76.05c-.197 0-.396 0-.594.2-.2.2-.2.4-.2.6v4.59h-1.984c-.595 0-.794.2-.794.798v1.397c0 .2 0 .4.2.598.197.2.395.2.594.2h1.985v8.98c0 1.597.397 2.795.993 3.593.595.8 1.786 1.198 3.176 1.198.794 0 1.786-.2 2.58-.4.794-.198 1.588-.598 1.985-.797.398-.2.597-.598.398-.997l-.595-1.596M99.276 13.57c-1.39-1.396-3.176-2.195-5.36-2.195-2.382 0-4.367.8-5.955 2.595-1.587 1.596-2.38 3.592-2.38 5.987s.793 4.39 2.38 6.186c1.59 1.597 3.574 2.395 5.957 2.395 2.58 0 4.565-.598 6.153-1.995.397-.4.397-.8 0-1.198l-.992-1.397c-.2-.4-.596-.4-.993 0-1.39.998-2.58 1.397-3.97 1.397-1.39 0-2.58-.4-3.573-1.397-.993-.998-1.39-1.996-1.39-3.193h11.315c.397 0 .794-.2.794-.798V18.76c.2-1.996-.595-3.792-1.984-5.19m-9.925 4.59c.2-.997.596-1.995 1.39-2.594.794-.798 1.787-.998 2.978-.998 1.19 0 2.183.4 2.78.998.793.8 1.19 1.597 1.19 2.595H89.35M6.576 11.776H1.017c-.198 0-.397 0-.595.2-.2.2-.2.398-.2.598v1.995c0 .2 0 .4.2.6.198.2.397.2.595.2h2.78v14.368c0 1.397-1.192 2.594-2.58 2.594h-.2c-.198 0-.397 0-.595.2-.2.2-.2.4-.2.598v1.996c0 .2 0 .4.2.6.198.198.397.198.595.198h.2c3.373 0 6.152-2.794 6.152-5.987V12.772c0-.2 0-.4-.2-.598-.198-.2-.198-.4-.595-.4z" fill-rule="evenodd" fill="#3e414f"/>\n    <path id="leaf" d="M7.37 10.577C6.97.4.222 0 .222 0-.174 9.18 7.37 10.577 7.37 10.577z" fill-rule="evenodd" fill="#44bb6e"/>\n  </g>\n</svg>'
    }, function(e, t, i) {
        "use strict";

        function a() {
            this.protocol = null,
                this.slashes = null, this.auth = null, this.host = null, this.port = null, this.hostname = null, this.hash = null, this.search = null, this.query = null, this.pathname = null, this.path = null, this.href = null
        }

        function o(e, t, i) {
            if (e && c.isObject(e) && e instanceof a) return e;
            var o = new a;
            return o.parse(e, t, i), o
        }

        function n(e) {
            return c.isString(e) && (e = o(e)), e instanceof a ? e.format() : a.prototype.format.call(e)
        }

        function r(e, t) {
            return o(e, !1, !0).resolve(t)
        }

        function l(e, t) {
            return e ? o(e, !1, !0).resolveObject(t) : t
        }
        var s = i(319),
            c = i(320);
        t.parse = o, t.resolve = r, t.resolveObject = l, t.format = n, t.Url = a;
        var d = /^([a-z0-9.+-]+:)/i,
            u = /:[0-9]*$/,
            f = /^(\/\/?(?!\/)[^\?\s]*)(\?[^\s]*)?$/,
            p = ["<", ">", '"', "`", " ", "\r", "\n", "\t"],
            h = ["{", "}", "|", "\\", "^", "`"].concat(p),
            m = ["'"].concat(h),
            g = ["%", "/", "?", ";", "#"].concat(m),
            v = ["/", "?", "#"],
            b = 255,
            w = /^[+a-z0-9A-Z_-]{0,63}$/,
            y = /^([+a-z0-9A-Z_-]{0,63})(.*)$/,
            x = {
                javascript: !0,
                "javascript:": !0
            },
            _ = {
                javascript: !0,
                "javascript:": !0
            },
            k = {
                http: !0,
                https: !0,
                ftp: !0,
                gopher: !0,
                file: !0,
                "http:": !0,
                "https:": !0,
                "ftp:": !0,
                "gopher:": !0,
                "file:": !0
            },
            j = i(63);
        a.prototype.parse = function(e, t, i) {
            if (!c.isString(e)) throw new TypeError("Parameter 'url' must be a string, not " + typeof e);
            var a = e.indexOf("?"),
                o = a !== -1 && a < e.indexOf("#") ? "?" : "#",
                n = e.split(o),
                r = /\\/g;
            n[0] = n[0].replace(r, "/"), e = n.join(o);
            var l = e;
            if (l = l.trim(), !i && 1 === e.split("#").length) {
                var u = f.exec(l);
                if (u) return this.path = l, this.href = l, this.pathname = u[1], u[2] ? (this.search = u[2], t ? this.query = j.parse(this.search.substr(1)) : this.query = this.search.substr(1)) : t && (this.search = "", this.query = {}), this
            }
            var p = d.exec(l);
            if (p) {
                p = p[0];
                var h = p.toLowerCase();
                this.protocol = h, l = l.substr(p.length)
            }
            if (i || p || l.match(/^\/\/[^@\/]+@[^@\/]+/)) {
                var E = "//" === l.substr(0, 2);
                !E || p && _[p] || (l = l.substr(2), this.slashes = !0)
            }
            if (!_[p] && (E || p && !k[p])) {
                for (var C = -1, M = 0; M < v.length; M++) {
                    var S = l.indexOf(v[M]);
                    S !== -1 && (C === -1 || S < C) && (C = S)
                }
                var z, T;
                T = C === -1 ? l.lastIndexOf("@") : l.lastIndexOf("@", C), T !== -1 && (z = l.slice(0, T), l = l.slice(T + 1), this.auth = decodeURIComponent(z)), C = -1;
                for (var M = 0; M < g.length; M++) {
                    var S = l.indexOf(g[M]);
                    S !== -1 && (C === -1 || S < C) && (C = S)
                }
                C === -1 && (C = l.length), this.host = l.slice(0, C), l = l.slice(C), this.parseHost(), this.hostname = this.hostname || "";
                var I = "[" === this.hostname[0] && "]" === this.hostname[this.hostname.length - 1];
                if (!I)
                    for (var N = this.hostname.split(/\./), M = 0, O = N.length; M < O; M++) {
                        var A = N[M];
                        if (A && !A.match(w)) {
                            for (var P = "", L = 0, B = A.length; L < B; L++) P += A.charCodeAt(L) > 127 ? "x" : A[L];
                            if (!P.match(w)) {
                                var D = N.slice(0, M),
                                    H = N.slice(M + 1),
                                    F = A.match(y);
                                F && (D.push(F[1]), H.unshift(F[2])), H.length && (l = "/" + H.join(".") + l), this.hostname = D.join(".");
                                break
                            }
                        }
                    }
                this.hostname.length > b ? this.hostname = "" : this.hostname = this.hostname.toLowerCase(), I || (this.hostname = s.toASCII(this.hostname));
                var R = this.port ? ":" + this.port : "",
                    V = this.hostname || "";
                this.host = V + R, this.href += this.host, I && (this.hostname = this.hostname.substr(1, this.hostname.length - 2), "/" !== l[0] && (l = "/" + l))
            }
            if (!x[h])
                for (var M = 0, O = m.length; M < O; M++) {
                    var W = m[M];
                    if (l.indexOf(W) !== -1) {
                        var q = encodeURIComponent(W);
                        q === W && (q = escape(W)), l = l.split(W).join(q)
                    }
                }
            var U = l.indexOf("#");
            U !== -1 && (this.hash = l.substr(U), l = l.slice(0, U));
            var G = l.indexOf("?");
            if (G !== -1 ? (this.search = l.substr(G), this.query = l.substr(G + 1), t && (this.query = j.parse(this.query)), l = l.slice(0, G)) : t && (this.search = "", this.query = {}), l && (this.pathname = l), k[h] && this.hostname && !this.pathname && (this.pathname = "/"), this.pathname || this.search) {
                var R = this.pathname || "",
                    X = this.search || "";
                this.path = R + X
            }
            return this.href = this.format(), this
        }, a.prototype.format = function() {
            var e = this.auth || "";
            e && (e = encodeURIComponent(e), e = e.replace(/%3A/i, ":"), e += "@");
            var t = this.protocol || "",
                i = this.pathname || "",
                a = this.hash || "",
                o = !1,
                n = "";
            this.host ? o = e + this.host : this.hostname && (o = e + (this.hostname.indexOf(":") === -1 ? this.hostname : "[" + this.hostname + "]"), this.port && (o += ":" + this.port)), this.query && c.isObject(this.query) && Object.keys(this.query).length && (n = j.stringify(this.query));
            var r = this.search || n && "?" + n || "";
            return t && ":" !== t.substr(-1) && (t += ":"), this.slashes || (!t || k[t]) && o !== !1 ? (o = "//" + (o || ""), i && "/" !== i.charAt(0) && (i = "/" + i)) : o || (o = ""), a && "#" !== a.charAt(0) && (a = "#" + a), r && "?" !== r.charAt(0) && (r = "?" + r), i = i.replace(/[?#]/g, function(e) {
                return encodeURIComponent(e)
            }), r = r.replace("#", "%23"), t + o + i + r + a
        }, a.prototype.resolve = function(e) {
            return this.resolveObject(o(e, !1, !0)).format()
        }, a.prototype.resolveObject = function(e) {
            if (c.isString(e)) {
                var t = new a;
                t.parse(e, !1, !0), e = t
            }
            for (var i = new a, o = Object.keys(this), n = 0; n < o.length; n++) {
                var r = o[n];
                i[r] = this[r]
            }
            if (i.hash = e.hash, "" === e.href) return i.href = i.format(), i;
            if (e.slashes && !e.protocol) {
                for (var l = Object.keys(e), s = 0; s < l.length; s++) {
                    var d = l[s];
                    "protocol" !== d && (i[d] = e[d])
                }
                return k[i.protocol] && i.hostname && !i.pathname && (i.path = i.pathname = "/"), i.href = i.format(), i
            }
            if (e.protocol && e.protocol !== i.protocol) {
                if (!k[e.protocol]) {
                    for (var u = Object.keys(e), f = 0; f < u.length; f++) {
                        var p = u[f];
                        i[p] = e[p]
                    }
                    return i.href = i.format(), i
                }
                if (i.protocol = e.protocol, e.host || _[e.protocol]) i.pathname = e.pathname;
                else {
                    for (var h = (e.pathname || "").split("/"); h.length && !(e.host = h.shift()););
                    e.host || (e.host = ""), e.hostname || (e.hostname = ""), "" !== h[0] && h.unshift(""), h.length < 2 && h.unshift(""), i.pathname = h.join("/")
                }
                if (i.search = e.search, i.query = e.query, i.host = e.host || "", i.auth = e.auth, i.hostname = e.hostname || e.host, i.port = e.port, i.pathname || i.search) {
                    var m = i.pathname || "",
                        g = i.search || "";
                    i.path = m + g
                }
                return i.slashes = i.slashes || e.slashes, i.href = i.format(), i
            }
            var v = i.pathname && "/" === i.pathname.charAt(0),
                b = e.host || e.pathname && "/" === e.pathname.charAt(0),
                w = b || v || i.host && e.pathname,
                y = w,
                x = i.pathname && i.pathname.split("/") || [],
                h = e.pathname && e.pathname.split("/") || [],
                j = i.protocol && !k[i.protocol];
            if (j && (i.hostname = "", i.port = null, i.host && ("" === x[0] ? x[0] = i.host : x.unshift(i.host)), i.host = "", e.protocol && (e.hostname = null, e.port = null, e.host && ("" === h[0] ? h[0] = e.host : h.unshift(e.host)), e.host = null), w = w && ("" === h[0] || "" === x[0])), b) i.host = e.host || "" === e.host ? e.host : i.host, i.hostname = e.hostname || "" === e.hostname ? e.hostname : i.hostname, i.search = e.search, i.query = e.query, x = h;
            else if (h.length) x || (x = []), x.pop(), x = x.concat(h), i.search = e.search, i.query = e.query;
            else if (!c.isNullOrUndefined(e.search)) {
                if (j) {
                    i.hostname = i.host = x.shift();
                    var E = !!(i.host && i.host.indexOf("@") > 0) && i.host.split("@");
                    E && (i.auth = E.shift(), i.host = i.hostname = E.shift())
                }
                return i.search = e.search, i.query = e.query, c.isNull(i.pathname) && c.isNull(i.search) || (i.path = (i.pathname ? i.pathname : "") + (i.search ? i.search : "")), i.href = i.format(), i
            }
            if (!x.length) return i.pathname = null, i.search ? i.path = "/" + i.search : i.path = null, i.href = i.format(), i;
            for (var C = x.slice(-1)[0], M = (i.host || e.host || x.length > 1) && ("." === C || ".." === C) || "" === C, S = 0, z = x.length; z >= 0; z--) C = x[z], "." === C ? x.splice(z, 1) : ".." === C ? (x.splice(z, 1), S++) : S && (x.splice(z, 1), S--);
            if (!w && !y)
                for (; S--; S) x.unshift("..");
            !w || "" === x[0] || x[0] && "/" === x[0].charAt(0) || x.unshift(""), M && "/" !== x.join("/").substr(-1) && x.push("");
            var T = "" === x[0] || x[0] && "/" === x[0].charAt(0);
            if (j) {
                i.hostname = i.host = T ? "" : x.length ? x.shift() : "";
                var E = !!(i.host && i.host.indexOf("@") > 0) && i.host.split("@");
                E && (i.auth = E.shift(), i.host = i.hostname = E.shift())
            }
            return w = w || i.host && x.length, w && !T && x.unshift(""), x.length ? i.pathname = x.join("/") : (i.pathname = null, i.path = null), c.isNull(i.pathname) && c.isNull(i.search) || (i.path = (i.pathname ? i.pathname : "") + (i.search ? i.search : "")), i.auth = e.auth || i.auth, i.slashes = i.slashes || e.slashes, i.href = i.format(), i
        }, a.prototype.parseHost = function() {
            var e = this.host,
                t = u.exec(e);
            t && (t = t[0], ":" !== t && (this.port = t.substr(1)), e = e.substr(0, e.length - t.length)), e && (this.hostname = e)
        }
    }, function(e, t, i) {
        "use strict";

        function a(e) {
            return e && e.__esModule ? e : {
                default: e
            }
        }
        Object.defineProperty(t, "__esModule", {
            value: !0
        });
        var o = i(70),
            n = a(o),
            r = i(5),
            l = a(r),
            s = i(1),
            c = i(4),
            d = a(c),
            u = l.default.name("CallTimer"),
            f = new n.default({
                timer: 0,
                seconds: 0,
                callTimerText: !1,
                initialState: "unitialized",
                namespace: "CALLTIMER",
                setTimerNull: function() {
                    clearInterval(this.timer), (0, s.cookie)("cw_timer", null)
                },
                initialize: function() {
                    u.log("CallTimer initalized.")
                },
                states: {
                    unitialized: {
                        start_timer: "STARTTIMER"
                    },
                    STARTTIMER: {
                        _onEnter: function() {
                            this.handle("start_timer")
                        },
                        start_timer: function() {
                            var e = this.seconds,
                                t = 1e3 * e,
                                i = this.callTimerText;
                            i.innerText = t / 1e3;
                            var a = this.seconds;
                            clearInterval(this.timer), this.timer = setInterval(d.default.bind(function() {
                                if ((0, s.cookie)("cw_timer")) {
                                    var e = parseInt((new Date).getTime()) - parseInt((0, s.cookie)("cw_timer"));
                                    if (t = 1e3 * this.seconds - e, t = 1e3 * (t / 1e3).toFixed(1), t <= 0) return clearInterval(this.timer), this.timer = !1, void this.handle("timer_finished")
                                } else(0, s.cookie)("cw_timer", (new Date).getTime());
                                a = t / 1e3 % 1 === 0 && Number(t) === t ? t / 1e3 + ".0" : t / 1e3, t -= 100, t <= 0 && (a = t, clearInterval(this.timer), this.timer = !1, this.handle("timer_finished")), this.emit("tick", a)
                            }, this), 100)
                        },
                        timer_finished: "STOP",
                        cancel_timer: "unitialized"
                    },
                    STOP: {
                        _onEnter: function() {
                            u.log("STOP, timer_finished")
                        },
                        start_timer: "STARTTIMER"
                    }
                }
            });
        t.default = f
    }, function(e, t, i) {
        "use strict";

        function a(e) {
            return e && e.__esModule ? e : {
                default: e
            }
        }
        Object.defineProperty(t, "__esModule", {
            value: !0
        });
        var o = i(8),
            n = a(o),
            r = i(6),
            l = a(r),
            s = i(7),
            c = a(s),
            d = i(10),
            u = a(d),
            f = i(9),
            p = a(f),
            h = i(3),
            m = a(h),
            g = i(2),
            v = a(g),
            b = i(5),
            w = a(b),
            y = i(15),
            x = (a(y), i(13)),
            _ = a(x),
            k = i(1),
            j = i(16),
            E = a(j),
            C = i(159),
            M = a(C),
            S = i(133),
            z = a(S),
            T = w.default.name("Social"),
            I = function(e) {
                function t(e) {
                    (0, l.default)(this, t);
                    var i = (0, u.default)(this, (t.__proto__ || (0, n.default)(t)).call(this, e));
                    i.state = {
                        vk: !(!v.default.joint || !v.default.joint.vk),
                        fb: !(!v.default.joint || !v.default.joint.fb),
                        mode: !1
                    };
                    var a = E.default.getSocial();
                    return a && i.checkLogin(!0, a), i
                }
                return (0, p.default)(t, e), (0, c.default)(t, [{
                    key: "componentWillMount",
                    value: function() {
                        return v.default.joint && !_.default.mobileOrTablet() || 3 != v.default.contacts_ask ? void(v.default.joint && (v.default.joint.vk || v.default.joint.fb) && (0, k.addListener)(window, "message", this.checkLogin.bind(this), !1)) : void this.setState({
                            mode: "email"
                        })
                    }
                }, {
                    key: "checkLogin",
                    value: function(e, t) {
                        if (!e) return void T.log("postMessage from social failed: ", e);
                        if (t && (e = {
                                data: {
                                    social: t
                                }
                            }), T.log(e.data), e.data && e.data.social) {
                            var i = {},
                                a = e.data.social;
                            a.fb && (i.fb = !0, i.vk = !1, i.mode = "fb", (0, k.telemetry)("social_show_facebook")), a.vk && (i.vk = !0, i.fb = !1, i.mode = "vk", (0, k.telemetry)("social_show_vk")), a.fb || a.vk || (i.vk = !1, i.fb = !1, i.show = !1, i.popup = !1, i.mode = "email", (0, k.telemetry)("social_configured_not_logged")), E.default.setSocial({
                                vk: i.vk,
                                fb: i.fb
                            }), this.setState(i)
                        }
                    }
                }, {
                    key: "renderCheckIframe",
                    value: function() {
                        var e = (0, k.checkSocial)();
                        if (e) {
                            var t = (0, k.genSocialIframeUrl)(e) + "#rand=" + (new Date).getMilliseconds() + ",lang=" + v.default.locale;
                            return m.default.createElement("iframe", {
                                className: "check-iframe",
                                width: "0",
                                border: "0",
                                height: "0",
                                src: t
                            })
                        }
                    }
                }, {
                    key: "render",
                    value: function() {
                        return "input" == this.props.type && this.state.mode ? m.default.createElement("div", {
                            className: "wrap-render"
                        }, m.default.createElement(M.default, {
                            mode: this.state
                        })) : "chat" == this.props.type && this.state.mode ? m.default.createElement("div", {
                            className: "wrap-render"
                        }, m.default.createElement(z.default, {
                            mode: this.state,
                            classes: this.props.classes
                        })) : m.default.createElement("div", {
                            className: "wrap-render"
                        }, this.renderCheckIframe())
                    }
                }]), t
            }(m.default.Component);
        t.default = I
    }, function(e, t, i) {
        "use strict";

        function a(e) {
            return e && e.__esModule ? e : {
                default: e
            }
        }

        function o(e, t) {
            return n(e, t)
        }

        function n(e, t) {
            return String(e).replace(O, t)
        }

        function r(e) {
            var t = "string" == typeof e ? parseInt(e, 16) : e;
            return t < 65536 ? A(t) : (t -= 65536, A(55296 + (t >> 10), 56320 + (1023 & t)))
        }

        function l(e, t) {
            for (var i = [], a = 0, o = 0, n = 0; n < e.length;) a = e.charCodeAt(n++), o ? (i.push((65536 + (o - 55296 << 10) + (a - 56320)).toString(16)), o = 0) : 55296 <= a && a <= 56319 ? o = a : i.push(a.toString(16));
            return i.join(t || "-")
        }

        function s(e) {
            return (0, I.staticUrl)("/images/emoji/" + e + ".svg", !0)
        }
        Object.defineProperty(t, "__esModule", {
            value: !0
        });
        var c = i(22),
            d = a(c),
            u = i(104),
            f = a(u),
            p = i(8),
            h = a(p),
            m = i(6),
            g = a(m),
            v = i(7),
            b = a(v),
            w = i(10),
            y = a(w),
            x = i(9),
            _ = a(x),
            k = i(3),
            j = a(k),
            E = i(12),
            C = a(E),
            M = i(4),
            S = a(M),
            z = i(309),
            T = a(z),
            I = i(1),
            N = {
                angel: "1f607",
                unicorn_face: "1f984",
                confused: "1f615",
                rage: "1f621",
                imp: "1f608",
                disappointed: "1f61e",
                kissing_heart: "1f618",
                yum: "1f60b",
                disappointed_relieved: "1f625",
                weary: "1f629",
                grin: "1f601",
                laughing: "1f606",
                wink: "1f609",
                sunglasses: "1f60e",
                neutral_face: "1f610",
                winking_eye: "1f61c",
                hushed: "1f62e",
                thumbsup: "1f44d",
                thumbsdown: "1f44e",
                smile: "1f603"
            },
            O = /\ud83d\udc68\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc68|\ud83d\udc68\u200d\ud83d\udc68\u200d\ud83d\udc66\u200d\ud83d\udc66|\ud83d\udc68\u200d\ud83d\udc68\u200d\ud83d\udc67\u200d\ud83d[\udc66\udc67]|\ud83d\udc68\u200d\ud83d\udc69\u200d\ud83d\udc66\u200d\ud83d\udc66|\ud83d\udc68\u200d\ud83d\udc69\u200d\ud83d\udc67\u200d\ud83d[\udc66\udc67]|\ud83d\udc69\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d[\udc68\udc69]|\ud83d\udc69\u200d\ud83d\udc69\u200d\ud83d\udc66\u200d\ud83d\udc66|\ud83d\udc69\u200d\ud83d\udc69\u200d\ud83d\udc67\u200d\ud83d[\udc66\udc67]|\ud83d\udc68\u200d\u2764\ufe0f\u200d\ud83d\udc68|\ud83d\udc68\u200d\ud83d\udc68\u200d\ud83d[\udc66\udc67]|\ud83d\udc68\u200d\ud83d\udc69\u200d\ud83d[\udc66\udc67]|\ud83d\udc69\u200d\u2764\ufe0f\u200d\ud83d[\udc68\udc69]|\ud83d\udc69\u200d\ud83d\udc69\u200d\ud83d[\udc66\udc67]|\ud83d\udc41\u200d\ud83d\udde8|(?:[\u0023\u002a\u0030-\u0039])\ufe0f?\u20e3|(?:(?:[\u261d\u270c])(?:\ufe0f|(?!\ufe0e))|\ud83c[\udf85\udfc2-\udfc4\udfc7\udfca\udfcb]|\ud83d[\udc42\udc43\udc46-\udc50\udc66-\udc69\udc6e\udc70-\udc78\udc7c\udc81-\udc83\udc85-\udc87\udcaa\udd75\udd90\udd95\udd96\ude45-\ude47\ude4b-\ude4f\udea3\udeb4-\udeb6\udec0]|\ud83e\udd18|[\u26f9\u270a\u270b\u270d])(?:\ud83c[\udffb-\udfff]|)|\ud83c\udde6\ud83c[\udde8-\uddec\uddee\uddf1\uddf2\uddf4\uddf6-\uddfa\uddfc\uddfd\uddff]|\ud83c\udde7\ud83c[\udde6\udde7\udde9-\uddef\uddf1-\uddf4\uddf6-\uddf9\uddfb\uddfc\uddfe\uddff]|\ud83c\udde8\ud83c[\udde6\udde8\udde9\uddeb-\uddee\uddf0-\uddf5\uddf7\uddfa-\uddff]|\ud83c\udde9\ud83c[\uddea\uddec\uddef\uddf0\uddf2\uddf4\uddff]|\ud83c\uddea\ud83c[\udde6\udde8\uddea\uddec\udded\uddf7-\uddfa]|\ud83c\uddeb\ud83c[\uddee-\uddf0\uddf2\uddf4\uddf7]|\ud83c\uddec\ud83c[\udde6\udde7\udde9-\uddee\uddf1-\uddf3\uddf5-\uddfa\uddfc\uddfe]|\ud83c\udded\ud83c[\uddf0\uddf2\uddf3\uddf7\uddf9\uddfa]|\ud83c\uddee\ud83c[\udde8-\uddea\uddf1-\uddf4\uddf6-\uddf9]|\ud83c\uddef\ud83c[\uddea\uddf2\uddf4\uddf5]|\ud83c\uddf0\ud83c[\uddea\uddec-\uddee\uddf2\uddf3\uddf5\uddf7\uddfc\uddfe\uddff]|\ud83c\uddf1\ud83c[\udde6-\udde8\uddee\uddf0\uddf7-\uddfb\uddfe]|\ud83c\uddf2\ud83c[\udde6\udde8-\udded\uddf0-\uddff]|\ud83c\uddf3\ud83c[\udde6\udde8\uddea-\uddec\uddee\uddf1\uddf4\uddf5\uddf7\uddfa\uddff]|\ud83c\uddf4\ud83c\uddf2|\ud83c\uddf5\ud83c[\udde6\uddea-\udded\uddf0-\uddf3\uddf7-\uddf9\uddfc\uddfe]|\ud83c\uddf6\ud83c\udde6|\ud83c\uddf7\ud83c[\uddea\uddf4\uddf8\uddfa\uddfc]|\ud83c\uddf8\ud83c[\udde6-\uddea\uddec-\uddf4\uddf7-\uddf9\uddfb\uddfd-\uddff]|\ud83c\uddf9\ud83c[\udde6\udde8\udde9\uddeb-\udded\uddef-\uddf4\uddf7\uddf9\uddfb\uddfc\uddff]|\ud83c\uddfa\ud83c[\udde6\uddec\uddf2\uddf8\uddfe\uddff]|\ud83c\uddfb\ud83c[\udde6\udde8\uddea\uddec\uddee\uddf3\uddfa]|\ud83c\uddfc\ud83c[\uddeb\uddf8]|\ud83c\uddfd\ud83c\uddf0|\ud83c\uddfe\ud83c[\uddea\uddf9]|\ud83c\uddff\ud83c[\udde6\uddf2\uddfc]|\ud83c[\udccf\udd8e\udd91-\udd9a\udde6-\uddff\ude01\ude32-\ude36\ude38-\ude3a\ude50\ude51\udf00-\udf21\udf24-\udf84\udf86-\udf93\udf96\udf97\udf99-\udf9b\udf9e-\udfc1\udfc5\udfc6\udfc8\udfc9\udfcc-\udff0\udff3-\udff5\udff7-\udfff]|\ud83d[\udc00-\udc41\udc44\udc45\udc51-\udc65\udc6a-\udc6d\udc6f\udc79-\udc7b\udc7d-\udc80\udc84\udc88-\udca9\udcab-\udcfd\udcff-\udd3d\udd49-\udd4e\udd50-\udd67\udd6f\udd70\udd73\udd74\udd76-\udd79\udd87\udd8a-\udd8d\udda5\udda8\uddb1\uddb2\uddbc\uddc2-\uddc4\uddd1-\uddd3\udddc-\uddde\udde1\udde3\udde8\uddef\uddf3\uddfa-\ude44\ude48-\ude4a\ude80-\udea2\udea4-\udeb3\udeb7-\udebf\udec1-\udec5\udecb-\uded0\udee0-\udee5\udee9\udeeb\udeec\udef0\udef3]|\ud83e[\udd10-\udd17\udd80-\udd84\uddc0]|[\u2328\u23cf\u23e9-\u23f3\u23f8-\u23fa\u2602-\u2604\u2618\u2620\u2622\u2623\u2626\u262a\u262e\u262f\u2638\u2692\u2694\u2696\u2697\u2699\u269b\u269c\u26b0\u26b1\u26c8\u26ce\u26cf\u26d1\u26d3\u26e9\u26f0\u26f1\u26f4\u26f7\u26f8\u2705\u271d\u2721\u2728\u274c\u274e\u2753-\u2755\u2763\u2795-\u2797\u27b0\u27bf\ue50a]|(?:\ud83c[\udc04\udd70\udd71\udd7e\udd7f\ude02\ude1a\ude2f\ude37]|[\u00a9\u00ae\u203c\u2049\u2122\u2139\u2194-\u2199\u21a9\u21aa\u231a\u231b\u24c2\u25aa\u25ab\u25b6\u25c0\u25fb-\u25fe\u2600\u2601\u260e\u2611\u2614\u2615\u2639\u263a\u2648-\u2653\u2660\u2663\u2665\u2666\u2668\u267b\u267f\u2693\u26a0\u26a1\u26aa\u26ab\u26bd\u26be\u26c4\u26c5\u26d4\u26ea\u26f2\u26f3\u26f5\u26fa\u26fd\u2702\u2708\u2709\u270f\u2712\u2714\u2716\u2733\u2734\u2744\u2747\u2757\u2764\u27a1\u2934\u2935\u2b05-\u2b07\u2b1b\u2b1c\u2b50\u2b55\u3030\u303d\u3297\u3299])(?:\ufe0f|(?!\ufe0e))/g,
            A = String.fromCharCode,
            P = /\uFE0F/g,
            L = String.fromCharCode(8205),
            B = function(e) {
                function t(e) {
                    (0, g.default)(this, t);
                    var i = (0, y.default)(this, (t.__proto__ || (0, h.default)(t)).call(this, e));
                    return i.icon = e.icon, i.customStyle = e.style || {}, i.className = e.className || "", i.type = i.getTypeIcon(e.icon), i
                }
                return (0, _.default)(t, e), (0, b.default)(t, [{
                    key: "getTypeIcon",
                    value: function(e) {
                        var t = this,
                            i = "img";
                        return S.default.each(N, function(a, o) {
                            e !== a && e !== o || (i = "div", e === a && (t.icon = o))
                        }), i
                    }
                }, {
                    key: "getRenderData",
                    value: function() {
                        var e;
                        return {
                            data: {},
                            styles: {
                                emojiIcon: [(e = {
                                    emojiIcon: !0
                                }, (0, f.default)(e, "emojiIcon-" + this.icon, !0), (0, f.default)(e, this.className, !0), e)]
                            },
                            style: T.default
                        }
                    }
                }, {
                    key: "renderData",
                    value: function(e, t) {
                        var i = j.default.createElement("img", (0, d.default)({}, t.emojiIcon, {
                                draggable: !1,
                                alt: r(this.icon),
                                style: this.customStyle,
                                src: s(this.icon)
                            })),
                            a = j.default.createElement("jdiv", (0, d.default)({}, t.emojiIcon, {
                                style: this.customStyle,
                                "data-name": this.icon
                            }), r(N[this.icon]));
                        return "img" === this.type ? i : a
                    }
                }], [{
                    key: "cdnLinkToEmoji",
                    value: function(e) {
                        return s(e)
                    }
                }, {
                    key: "fromCodePoint",
                    value: function(e) {
                        return r(e)
                    }
                }, {
                    key: "toCodePoint",
                    value: function(e, t) {
                        return l(e.indexOf(L) < 0 ? e.replace(P, "") : e, t)
                    }
                }, {
                    key: "parse",
                    value: function(e, t) {
                        return o(e, t)
                    }
                }, {
                    key: "replace",
                    value: function(e, t) {
                        return n(e, t)
                    }
                }, {
                    key: "getEmojiList",
                    value: function() {
                        return N
                    }
                }]), t
            }(C.default);
        t.default = B
    }, function(e, t, i) {
        "use strict";

        function a(e) {
            return e && e.__esModule ? e : {
                default: e
            }
        }
        Object.defineProperty(t, "__esModule", {
            value: !0
        });
        var o = i(22),
            n = a(o),
            r = i(8),
            l = a(r),
            s = i(6),
            c = a(s),
            d = i(7),
            u = a(d),
            f = i(10),
            p = a(f),
            h = i(9),
            m = a(h),
            g = i(3),
            v = a(g),
            b = i(12),
            w = a(b),
            y = i(5),
            x = a(y),
            _ = i(11),
            k = a(_),
            j = i(16),
            E = a(j),
            C = i(1),
            M = i(15),
            S = a(M),
            z = i(13),
            T = a(z),
            I = i(28),
            N = a(I),
            O = i(2),
            A = a(O),
            P = i(310),
            L = a(P),
            B = (x.default.name("EulaPopup"), window.parent.location.protocol + A.default.base_url + "/script/eula/" + A.default.widget_id),
            D = null,
            H = function(e) {
                function t(e) {
                    (0, c.default)(this, t);
                    var i = (0, p.default)(this, (t.__proto__ || (0, l.default)(t)).call(this, e));
                    return i.state = {
                        show: !1,
                        animate: !1,
                        checked: !1,
                        text: !1,
                        url: A.default.eula && A.default.eula.external_link ? A.default.eula.external_link : B
                    }, i
                }
                return (0, m.default)(t, e), (0, u.default)(t, [{
                    key: "componentDidMount",
                    value: function() {
                        var e = this;
                        this.on(k.default, function() {
                            k.default.show_eula && !k.default.eula_accepted && (e.setState({
                                show: !0,
                                text: k.default.show_eula
                            }), T.default.tablet() && (0, C.hasClass)((0, C.getPageWindow)().document.documentElement, "jivo-mobile-overlay") && document.activeElement && document.activeElement.blur(), setTimeout(function() {
                                e.setState({
                                    animate: !0
                                })
                            }, 200))
                        })
                    }
                }, {
                    key: "submitCheckbox",
                    value: function() {
                        var e = this;
                        this.setState({
                            checked: !this.state.checked
                        }), this.state.checked && D && (window.open(D), D = null), setTimeout(function() {
                            e.state.checked && (E.default.acceptEula(), E.default.showEula(!1), e.cancel())
                        }, 500)
                    }
                }, {
                    key: "cancel",
                    value: function(e) {
                        var t = this;
                        this.setState({
                            animate: !1
                        }), setTimeout(function() {
                            t.setState({
                                show: !1
                            }), E.default.showEula(!1), e && (0, C.telemetry)("eula_cancel_btn")
                        }, 200)
                    }
                }, {
                    key: "trackClick",
                    value: function() {
                        (0, C.telemetry)("eula_link_clicked")
                    }
                }, {
                    key: "getRenderData",
                    value: function() {
                        return {
                            styles: {
                                wrap: [{
                                    "eula-popup": !0,
                                    "show-popup": this.state.animate,
                                    "mobile-version": T.default.mobile()
                                }, {
                                    display: this.state.show ? "block" : "none"
                                }],
                                checkbox: [{
                                    checkbox: !0,
                                    checked: this.state.checked
                                }],
                                error: [{
                                    error: !0
                                }, {
                                    display: this.state.error ? "block" : "none"
                                }]
                            },
                            style: L.default
                        }
                    }
                }, {
                    key: "renderData",
                    value: function(e, t) {
                        return v.default.createElement("jdiv", t.wrap, v.default.createElement("jdiv", {
                            className: L.default.popupContent
                        }, "string" == typeof this.state.text && v.default.createElement("jdiv", {
                            className: L.default.title,
                            dangerouslySetInnerHTML: {
                                __html: this.state.text
                            }
                        }), v.default.createElement("jdiv", {
                            className: L.default.text
                        }, v.default.createElement("jdiv", {
                            className: L.default.formText
                        }, v.default.createElement("jdiv", {
                            className: L.default.popupCheckbox
                        }, v.default.createElement("jdiv", (0, n.default)({}, t.checkbox, {
                            onClick: this.submitCheckbox.bind(this)
                        }), v.default.createElement(N.default, {
                            src: "icon_ok_white.svg",
                            className: "eula-icon"
                        }))), "!>3;0A5= =0 >1@01>B:C ?5@A>=0;L=KE 40==KE"), "!B02O >B<5B:C, O 40N A2>5 A>3;0A85 =0 >1@01>B:C <>8E ?5@A>=0;L=KE 40==KE 2 A>>B25BAB288 A 70:>=>< 152-$ � ?5@A>=0;L=KE 40==KE� >B 27.07.2006 8 ?@8=8<0N CA;>28O ", v.default.createElement("a", {
                            href: this.state.url,
                            onClick: this.trackClick.bind(this),
                            target: "_blank"
                        }, ">;L7>20B5;LA:>3>�A>3;0H5=8O"))), v.default.createElement("jdiv", {
                            className: L.default.cancel,
                            onClick: this.cancel.bind(this)
                        }, (0, S.default)("cancel")))
                    }
                }], [{
                    key: "setEulaLink",
                    value: function(e) {
                        D = e
                    }
                }]), t
            }(w.default);
        t.default = H
    }, function(e, t, i) {
        "use strict";

        function a(e) {
            return e && e.__esModule ? e : {
                default: e
            }
        }
        Object.defineProperty(t, "__esModule", {
            value: !0
        });
        var o = i(22),
            n = a(o),
            r = i(103),
            l = a(r),
            s = i(8),
            c = a(s),
            d = i(6),
            u = a(d),
            f = i(7),
            p = a(f),
            h = i(10),
            m = a(h),
            g = i(9),
            v = a(g),
            b = i(3),
            w = a(b),
            y = i(12),
            x = a(y),
            _ = i(4),
            k = a(_),
            j = i(1),
            E = a(j),
            C = i(14),
            M = a(C),
            S = i(2),
            z = a(S),
            T = i(131),
            I = a(T),
            N = i(312),
            O = a(N),
            A = function(e) {
                function t(e) {
                    (0, u.default)(this, t);
                    var i = (0, m.default)(this, (t.__proto__ || (0, c.default)(t)).call(this, e));
                    return i.parseCurrentPhone(), i.initState(), i.documentOnClicked = i.documentOnClicked.bind(i), i.documentOnKeyPress = i.documentOnKeyPress.bind(i), i
                }
                return (0, v.default)(t, e), (0, p.default)(t, [{
                    key: "componentDidMount",
                    value: function() {
                        var e = this,
                            t = void 0;
                        this.on(M.default, function() {
                            M.default.client_info.phone !== t && (t = M.default.client_info.phone, e.parseCurrentPhone(), e.initState())
                        })
                    }
                }, {
                    key: "initState",
                    value: function() {
                        this.state = {
                            number: this.getCurrentNumber(),
                            showList: !1,
                            errorPhone: !1,
                            countries: this.getAllowCountries(),
                            currentCountry: this.getCurrentCountry()
                        }
                    }
                }, {
                    key: "parseCurrentPhone",
                    value: function() {
                        M.default.client_info.phone && (this.clientPhoneInfo = E.default.getPhoneNumberInfo(M.default.client_info.phone))
                    }
                }, {
                    key: "getCurrentNumber",
                    value: function() {
                        return this.clientPhoneInfo ? this.clientPhoneInfo.innerNumber : ""
                    }
                }, {
                    key: "getAllowCountries",
                    value: function() {
                        return this.countries = this.countries || k.default.sortBy(z.default.callback_settings.countries, "name")
                    }
                }, {
                    key: "getCurrentCountry",
                    value: function() {
                        var e;
                        e = this.clientPhoneInfo ? this.clientPhoneInfo.countryCode : z.default.geoip.split(";")[0];
                        var t = k.default.findWhere(this.getAllowCountries(), {
                            code: e
                        });
                        return t || this.getAllowCountries()[0]
                    }
                }, {
                    key: "toggleCountriesList",
                    value: function(e) {
                        this.state.countries.length < 2 || (this.state.showList ? this.hideCountriesList() : this.showCountriesList(), e.stopPropagation())
                    }
                }, {
                    key: "showCountriesList",
                    value: function() {
                        this.setState({
                            showList: !0,
                            isFocusedInput: !0
                        }), E.default.addListener(window.document, "keypress", this.documentOnKeyPress), E.default.addListener(window.document, "click", this.documentOnClicked)
                    }
                }, {
                    key: "hideCountriesList",
                    value: function() {
                        this.setState({
                            showList: !1,
                            isFocusedInput: !1
                        }), E.default.removeEvent(window.document, "click", this.documentOnClicked), E.default.removeEvent(window.document, "keypress", this.documentOnKeyPress)
                    }
                }, {
                    key: "validPhoneNumber",
                    value: function() {
                        return this.getFullPhoneNumber().length > 9 && this.getFullPhoneNumber().length < 16
                    }
                }, {
                    key: "getFullPhoneNumber",
                    value: function() {
                        return this.state.currentCountry.phone_code + this.state.number
                    }
                }, {
                    key: "isShowErrorState",
                    value: function() {
                        var e;
                        return e = 0 !== this.state.number.length && !this.validPhoneNumber()
                    }
                }, {
                    key: "inputOnBlur",
                    value: function() {
                        this.setState({
                            isFocusedInput: !1,
                            invalidPhone: this.isShowErrorState()
                        })
                    }
                }, {
                    key: "inputOnFocus",
                    value: function() {
                        this.setState({
                            isFocusedInput: !0,
                            showList: !1
                        })
                    }
                }, {
                    key: "inputOnInput",
                    value: function(e) {
                        var t = e.target.value.toString().replace(/\D+/g, "").slice(0, 15 - this.state.currentCountry.phone_code.length);
                        this.setState({
                            number: t
                        }), this.setState({
                            invalidPhone: this.isShowErrorState()
                        }), this.trigger("onChange", t)
                    }
                }, {
                    key: "inputPhoneKeyUp",
                    value: function(e) {
                        if ("keyup" == e.type && (13 == e.keyCode || 13 == e.which)) {
                            var t = this.validPhoneNumber();
                            t ? this.trigger("onEnter", this.getFullPhoneNumber()) : this.setState({
                                invalidPhone: !0
                            })
                        }
                    }
                }, {
                    key: "codeOnClick",
                    value: function() {
                        this.refs.input.focus()
                    }
                }, {
                    key: "documentOnKeyPress",
                    value: function(e) {
                        var t = this.getChar(e),
                            i = k.default.filter((0, l.default)(this.refs), function(e) {
                                return "link_" === e.substr(0, 5)
                            }),
                            a = k.default.find(i, function(e) {
                                return e.substr(5, 1).toUpperCase() === t.toUpperCase()
                            });
                        a && this.refs[a].scrollIntoView(!0)
                    }
                }, {
                    key: "documentOnClicked",
                    value: function(e) {
                        e.target.closest("#countryList") || this.hideCountriesList()
                    }
                }, {
                    key: "getChar",
                    value: function(e) {
                        return null == e.which ? e.keyCode < 32 ? null : String.fromCharCode(e.keyCode) : 0 != e.which && 0 != e.charCode ? e.which < 32 ? null : String.fromCharCode(e.which) : null
                    }
                }, {
                    key: "countrySelect",
                    value: function(e) {
                        var t = e.delegateTarget.getAttribute("data-code");
                        this.setState({
                            currentCountry: k.default.findWhere(this.state.countries, {
                                code: t
                            })
                        }), this.setState({
                            showList: !1
                        }), this.setState({
                            number: this.state.number.slice(0, 15 - this.state.currentCountry.phone_code.length)
                        }), this.refs.input.focus()
                    }
                }, {
                    key: "getFlagIconLink",
                    value: function(e) {
                        var t = "/images/flags/" + e + ".png",
                            i = E.default.staticUrl(t, !0);
                        return 'url("' + i + '")'
                    }
                }, {
                    key: "getRenderData",
                    value: function() {
                        var e = this.state.currentCountry.phone_code.length + this.state.number.length,
                            t = !1;
                        return "single" === this.props.type && (this.state.currentCountry.phone_code.length > 2 && e > 12 ? t = !0 : e > 13 && (t = !0)), {
                            data: {
                                numberMaxLength: 15 - this.state.currentCountry.phone_code.length
                            },
                            styles: {
                                container: [{
                                    container: !0,
                                    __singleMod: "single" === this.props.type,
                                    __inFormMod: "inForm" === this.props.type
                                }],
                                inputWrap: [{
                                    inputWrap: !0,
                                    __focused: this.state.isFocusedInput,
                                    __error: this.state.invalidPhone,
                                    __smallTextSize: t
                                }],
                                input: [{
                                    phoneInput: !0
                                }]
                            },
                            style: O.default
                        }
                    }
                }, {
                    key: "renderData",
                    value: function(e, t) {
                        var i = this;
                        return w.default.createElement("jdiv", t.container, w.default.createElement("jdiv", t.inputWrap, w.default.createElement("jdiv", {
                            className: O.default.flagWrap,
                            onClick: this.toggleCountriesList.bind(this)
                        }, w.default.createElement("jdiv", {
                            className: O.default.flagIcon,
                            style: {
                                backgroundImage: this.getFlagIconLink(this.state.currentCountry.code)
                            }
                        }), w.default.createElement("jdiv", {
                            className: O.default.flagArrow,
                            style: {
                                display: this.state.countries.length < 2 ? "none" : null
                            }
                        }, "�")), w.default.createElement("jdiv", {
                            className: O.default.phoneCodeWrap,
                            onClick: this.codeOnClick.bind(this)
                        }, "+" + this.state.currentCountry.phone_code), w.default.createElement("input", (0, n.default)({}, t.input, {
                            ref: "input",
                            onBlur: this.inputOnBlur.bind(this),
                            onFocus: this.inputOnFocus.bind(this),
                            type: "text",
                            maxlength: e.numberMaxLength,
                            value: this.state.number,
                            onInput: this.inputOnInput.bind(this),
                            onKeyUp: this.inputPhoneKeyUp.bind(this)
                        }))), w.default.createElement("jdiv", {
                            id: "countryList",
                            className: O.default.countryWrap,
                            style: {
                                display: this.state.showList ? "block" : "none"
                            }
                        }, w.default.createElement(I.default, {
                            ref: "scrollContainer"
                        }, w.default.createElement("jdiv", {
                            className: O.default.countryList,
                            onClick: this.delegate("listItem", this.countrySelect.bind(this))
                        }, this.state.countries.map(function(e, t) {
                            return w.default.createElement("jdiv", {
                                className: O.default.listItem,
                                key: t,
                                dgName: "listItem",
                                "data-code": e.code,
                                ref: "link_" + e.name
                            }, w.default.createElement("jdiv", {
                                className: O.default.flagIcon + " " + O.default.list,
                                style: {
                                    backgroundImage: i.getFlagIconLink(e.code)
                                }
                            }), w.default.createElement("jdiv", {
                                className: O.default.countryName
                            }, e.name), w.default.createElement("jdiv", {
                                className: O.default.countryCode
                            }, "+" + e.phone_code))
                        })))))
                    }
                }, {
                    key: "focus",
                    value: function() {
                        this.refs.input.focus()
                    }
                }, {
                    key: "getValue",
                    value: function() {
                        return "+" + this.getFullPhoneNumber()
                    }
                }, {
                    key: "isValid",
                    value: function e() {
                        var e = this.validPhoneNumber();
                        return this.setState({
                            invalidPhone: !e
                        }), e
                    }
                }]), t
            }(x.default);
        t.default = A
    }, function(e, t, i) {
        "use strict";

        function a(e) {
            return e && e.__esModule ? e : {
                default: e
            }
        }
        Object.defineProperty(t, "__esModule", {
            value: !0
        });
        var o = i(8),
            n = a(o),
            r = i(6),
            l = a(r),
            s = i(7),
            c = a(s),
            d = i(10),
            u = a(d),
            f = i(9),
            p = a(f),
            h = i(3),
            m = a(h),
            g = i(12),
            v = a(g),
            b = i(313),
            w = a(b),
            y = i(5),
            x = a(y),
            _ = i(15),
            k = a(_),
            j = i(1),
            E = i(32),
            C = a(E),
            M = i(16),
            S = a(M),
            z = i(29),
            T = a(z),
            I = i(11),
            N = a(I),
            O = i(14),
            A = a(O),
            P = i(2),
            L = a(P),
            B = i(35),
            D = a(B),
            H = x.default.name("MessageEmail"),
            F = function(e) {
                function t(e) {
                    (0, l.default)(this, t);
                    var i = (0, u.default)(this, (t.__proto__ || (0, n.default)(t)).call(this, e));
                    return i.state = {
                        submit: !1,
                        email: !1,
                        emailForm: !0,
                        emailError: !0,
                        submittedOnce: !1
                    }, i
                }
                return (0, p.default)(t, e), (0, c.default)(t, [{
                    key: "componentDidMount",
                    value: function() {
                        var e = this;
                        H.log("mounted"), this.on(N.default, function() {
                            N.default.eula_accepted && e.email && L.default.eula && e.saveChatEmail()
                        })
                    }
                }, {
                    key: "blurInput",
                    value: function(e) {
                        S.default.onBlur(e)
                    }
                }, {
                    key: "focusInput",
                    value: function(e) {
                        S.default.onFocus(e)
                    }
                }, {
                    key: "saveChatEmail",
                    value: function(e) {
                        e && e.preventDefault(), H.log("saveChatEmail");
                        var t = this.refs.inputChatEmail.value;
                        (0, j.isValidValue_email)(t) ? !N.default.eula_accepted && L.default.eula ? (this.email = t, this.setState({
                            email: t
                        }), S.default.showEula(!0)) : ((0, j.addClass)(this.refs.saveChatEmail, "emailSent"), this.setState({
                            submit: !0,
                            email: t
                        }), C.default.trackSystemMessageEmailSubmitted(), A.default.client_info.email = t, T.default.sendIfConnected({
                            name: "introduction",
                            client_name: A.default.client_info.client_name,
                            phone: A.default.client_info.phone,
                            email: t,
                            description: A.default.client_info.description
                        }), (0, j.telemetry)("Introduce message email submitted"), document.getElementById("input-field").focus(), this.email = !1): this.setState({
                            emailError: !0,
                            submittedOnce: !0
                        })
                    }
                }, {
                    key: "typeEmail",
                    value: function(e) {
                        return e.keyCode && 13 == e.keyCode ? void this.saveChatEmail() : void((0, j.isValidValue_email)(this.refs.inputChatEmail.value) ? this.setState({
                            emailError: !1
                        }) : this.state.submittedOnce && this.setState({
                            emailError: !0
                        }))
                    }
                }, {
                    key: "getRenderData",
                    value: function() {
                        var e = {
                            box: !0,
                            _finished: this.state.submit,
                            socialEmail: !0
                        };
                        e["_" + L.default.bubble_color] = !0;
                        var t = {
                            pip: !0
                        };
                        return t["_" + L.default.bubble_color] = !0, {
                            styles: {
                                box: [e, {
                                    display: this.state.emailForm ? "block" : "none"
                                }],
                                emailBlock: [{
                                    emailBlock: !0,
                                    _error: this.state.emailError && this.state.submittedOnce
                                }],
                                emailFinished: [{
                                    emailFinished: !0
                                }, {
                                    display: this.state.submit ? "block" : "none"
                                }],
                                pip: [t]
                            },
                            style: w.default
                        }
                    }
                }, {
                    key: "renderData",
                    value: function(e, t) {
                        return m.default.createElement("jdiv", {
                            className: w.default.wrap
                        }, m.default.createElement("jdiv", t.box, m.default.createElement("jdiv", {
                            className: w.default.form,
                            ref: "saveChatEmail"
                        }, m.default.createElement("jdiv", {
                            className: w.default.emailText
                        }, this.props.text), m.default.createElement("jdiv", t.emailBlock, m.default.createElement("input", {
                            onKeyUp: this.typeEmail.bind(this),
                            onBlur: this.blurInput.bind(this),
                            onFocus: this.focusInput.bind(this),
                            placeholder: (0, k.default)("lblYourEmail"),
                            className: w.default.emailInput,
                            ref: "inputChatEmail"
                        }), m.default.createElement("jdiv", {
                            onClick: this.saveChatEmail.bind(this),
                            className: w.default.emailButton
                        }, m.default.createElement(D.default, {
                            iconName: "icon-ok-white",
                            className: w.default.emailOk
                        }), m.default.createElement(D.default, {
                            iconName: "icon-v-email",
                            className: w.default.emailError
                        })))), m.default.createElement("jdiv", t.emailFinished, m.default.createElement("jdiv", {
                            className: w.default.emailText
                        }, m.default.createElement("jdiv", {
                            dangerouslySetInnerHTML: {
                                __html: (0, k.default)("social_success_email").replace("_EMAIL_", this.state.email)
                            }
                        })))), m.default.createElement("jdiv", t.pip))
                    }
                }]), t
            }(v.default);
        t.default = F
    }, function(e, t, i) {
        "use strict";

        function a(e) {
            return e && e.__esModule ? e : {
                default: e
            }
        }
        Object.defineProperty(t, "__esModule", {
            value: !0
        });
        var o = i(8),
            n = a(o),
            r = i(6),
            l = a(r),
            s = i(7),
            c = a(s),
            d = i(10),
            u = a(d),
            f = i(9),
            p = a(f),
            h = i(12),
            m = a(h),
            g = i(2),
            v = a(g),
            b = i(16),
            w = a(b),
            y = i(1),
            x = a(y),
            _ = i(32),
            k = a(_),
            j = i(11),
            E = a(j),
            C = i(49),
            M = (a(C),
                i(13)),
            S = a(M),
            z = i(26),
            T = a(z),
            I = function(e) {
                function t(e) {
                    (0, l.default)(this, t);
                    var i = (0, u.default)(this, (t.__proto__ || (0, n.default)(t)).call(this, e));
                    return i.jointsCount = i.getJoints(), 0 === i.jointsCount ? (0, u.default)(i) : (i.state = {
                        isShow: !i.props.hideOnRender,
                        orientation: null
                    }, i.linkProps = {
                        target: "_blank",
                        onClick: i.openMenuItem
                    }, i.getCopyrightInfo(), i.getOrientation(), x.default.addListener(window, "orientationchange", i.onOrientationChange.bind(i)), i)
                }
                return (0, p.default)(t, e), (0, c.default)(t, [{
                    key: "onOrientationChange",
                    value: function() {
                        var e = this;
                        setTimeout(function() {
                            e.getOrientation()
                        }, 300)
                    }
                }, {
                    key: "getOrientation",
                    value: function() {
                        this.setState({
                            orientation: T.default.getOrientation()
                        })
                    }
                }, {
                    key: "getCopyrightInfo",
                    value: function() {
                        x.default.showAd() && (this.logoIconName = "ru_RU" === v.default.locale ? "logo-jivosite-white" : "logo-jivochat-white", this.jivoLink = x.default.getCopyrightSiteByLocale(v.default.locale) + "?utm_source=" + encodeURIComponent(location.hostname) + "&utm_medium=link&utm_content=mobile_widget&utm_campaign=self_ad")
                    }
                }, {
                    key: "getJoints",
                    value: function() {
                        var e, t = 0;
                        this.joints = {};
                        var i = x.default.getPageWindow(),
                            a = i.screen.height * (i.devicePixelRatio || 1),
                            o = 50 * i.devicePixelRatio;
                        return a = S.default.safari() ? a - o : a, e = a <= 960 ? 3 : a <= 1150 ? 4 : 5, v.default.power_button_phone && (this.joints.cbUrl = v.default.power_button_phone, t++), v.default.joint ? (v.default.joint.fb && v.default.joint.fb.joint_id && (this.joints.fbUrl = "https://m.me/" + v.default.joint.fb.joint_id, t++), v.default.joint.vk && v.default.joint.vk.joint_id && (this.joints.vkUrl = "https://vk.me/club" + v.default.joint.vk.joint_id, t++), v.default.joint.vb && v.default.joint.vb.botname && t < e && (this.joints.vbUrl = "viber://pa?chatURI=" + v.default.joint.vb.botname, t++), v.default.joint.tg && v.default.joint.tg.botname && t < e && (this.joints.tgUrl = "https://telegram.me/" + v.default.joint.tg.botname, t++), t) : t
                    }
                }, {
                    key: "openMenuItem",
                    value: function(e) {
                        x.default.telemetry("powerbtn_open_" + e.currentTarget.getAttribute("data-name"))
                    }
                }, {
                    key: "openChat",
                    value: function() {
                        this.close(!0), setTimeout(function() {
                            E.default.is_focused = 1, w.default.navigate("chat"), x.default.telemetry("powerbtn_open_chat"), k.default.trackChatOpenedByClick()
                        }, 100)
                    }
                }, {
                    key: "show",
                    value: function() {
                        return 0 === this.jointsCount ? this.openChat() : void this.setState({
                            isShow: !0,
                            left: "100%",
                            extraPadding: T.default.getUserZoom() > 1
                        })
                    }
                }, {
                    key: "close",
                    value: function(e) {
                        var t = this;
                        w.default.closeMobileNativeMenu(), this.setState({
                            isShow: !1
                        }, function() {
                            setTimeout(function() {
                                t.setState({
                                    left: 0
                                })
                            }, 300)
                        }), !e && x.default.telemetry("powerbtn_close_menu")
                    }
                }]), t
            }(m.default);
        t.default = I
    }, function(e, t, i) {
        "use strict";

        function a(e) {
            return e && e.__esModule ? e : {
                default: e
            }
        }
        Object.defineProperty(t, "__esModule", {
            value: !0
        });
        var o = i(8),
            n = a(o),
            r = i(6),
            l = a(r),
            s = i(7),
            c = a(s),
            d = i(10),
            u = a(d),
            f = i(9),
            p = a(f),
            h = i(3),
            m = a(h),
            g = i(12),
            v = a(g),
            b = i(11),
            w = a(b),
            y = i(14),
            x = a(y),
            _ = i(13),
            k = a(_),
            j = i(16),
            E = a(j),
            C = i(15),
            M = a(C),
            S = i(4),
            z = a(S),
            T = i(1),
            I = a(T),
            N = i(62),
            O = a(N),
            A = function(e) {
                function t(e) {
                    (0, l.default)(this, t);
                    var i = (0, u.default)(this, (t.__proto__ || (0, n.default)(t)).call(this, e));
                    return i.state = {
                        text: x.default.last_message ? x.default.last_message : ""
                    }, i
                }
                return (0, p.default)(t, e), (0, c.default)(t, [{
                    key: "componentDidMount",
                    value: function() {
                        var e = this;
                        this.on(w.default, function() {
                            setTimeout(z.default.bind(function() {
                                w.default.is_focused && this.refs.message && 0 == w.default.route.indexOf("chat") && w.default.route.indexOf("min") == -1 && !k.default.tablet() && (m.default.findDOMNode(this.refs.message).focus(), w.default.is_focused = 0)
                            }, e), 500)
                        }), this.on(x.default, function() {
                            x.default.last_message && e.setState({
                                text: x.default.last_message
                            })
                        })
                    }
                }, {
                    key: "onFocus",
                    value: function() {
                        I.default.removeClass(m.default.findDOMNode(this.refs.message).parentNode, "error-field"), E.default.onFocus()
                    }
                }, {
                    key: "render",
                    value: function() {
                        return m.default.createElement("div", {
                            className: "field-wrapper message"
                        }, m.default.createElement("textarea", {
                            id: "message",
                            maxLength: "1000",
                            className: "input-field",
                            value: this.state.text,
                            onInput: (0, O.default)(this, "text"),
                            onFocus: this.onFocus.bind(this),
                            onBlur: E.default.onBlur.bind(E.default),
                            placeholder: (0, M.default)("lblYourMessage") + "*",
                            ref: "message"
                        }))
                    }
                }]), t
            }(v.default);
        t.default = A
    }, function(e, t, i) {
        "use strict";

        function a(e) {
            return e && e.__esModule ? e : {
                default: e
            }
        }
        Object.defineProperty(t, "__esModule", {
            value: !0
        });
        var o = i(8),
            n = a(o),
            r = i(6),
            l = a(r),
            s = i(7),
            c = a(s),
            d = i(10),
            u = a(d),
            f = i(9),
            p = a(f),
            h = i(3),
            m = a(h),
            g = i(12),
            v = a(g),
            b = i(2),
            w = a(b),
            y = (i(1), i(4)),
            x = a(y),
            _ = i(13),
            k = a(_),
            j = i(130),
            E = a(j),
            C = i(149),
            M = a(C),
            S = i(162),
            z = a(S),
            T = i(153),
            I = a(T),
            N = i(125),
            O = a(N),
            A = i(126),
            P = a(A),
            L = i(64),
            B = a(L),
            D = i(127),
            H = a(D),
            F = i(94),
            R = a(F),
            V = i(11),
            W = a(V),
            q = i(14),
            U = a(q),
            G = i(16),
            X = a(G),
            Y = i(42),
            Z = a(Y),
            J = i(35),
            K = a(J);
        i(307);
        var Q = !k.default.mobileOrTablet() && w.default.callback_settings.time,
            $ = function(e) {
                function t() {
                    (0, l.default)(this, t);
                    var e = (0, u.default)(this, (t.__proto__ || (0, n.default)(t)).call(this));
                    return e.state = {
                        visible: !k.default.mobileOrTablet() || k.default.mobileOrTablet() && "label" !== W.default.route,
                        route: W.default.route,
                        online: W.default.is_online,
                        showHeader: !0
                    }, e
                }
                return (0, p.default)(t, e), (0, c.default)(t, [{
                    key: "componentDidMount",
                    value: function() {
                        var e = this;
                        this.on(W.default, function() {
                            var t = !0;
                            "call" === W.default.route && x.default.indexOf(["form", "cw_error", "cw_call_end"], U.default.client_info.cw_call) !== -1 && (t = !1), k.default.mobileOrTablet() && (e.state.visible = "label" !== W.default.route), W.default.is_online === e.state.online && W.default.route === e.state.route && t === e.state.showHeader || e.setState({
                                online: W.default.is_online,
                                route: W.default.route,
                                showHeader: t
                            })
                        }), this.on(U.default, function() {
                            "call" === W.default.route && e.setState({
                                hideHeader: x.default.indexOf(["form", "cw_error", "cw_call_end"], U.default.client_info.cw_call) !== -1
                            })
                        })
                    }
                }, {
                    key: "componentWillUnmount",
                    value: function() {
                        this.off()
                    }
                }, {
                    key: "render",
                    value: function() {
                        var e = "container-with-leaf jivo-fixed-bottom jivo-" + (W.default.is_online ? "online" : "offline") + " jivo-orientation-" + w.default.widget_orientation,
                            t = w.default.bubble_color + " ",
                            i = {
                                backgroundColor: "call" === W.default.route && x.default.indexOf(["cw_connecting", "cw_wait"], U.default.cw_call.status) !== -1 ? "#fff" : W.default.widget_color
                            },
                            a = {
                                display: this.state.visible ? "table" : "none"
                            },
                            o = "relative",
                            n = "mobileBack " + (Z.default.isLightColor(w.default.power_button_color || "#44BB6E") && "_dark");
                        return k.default.mobile() || (e += " jivo-animated" + (W.default.is_online ? "online" : "offline") + " jivo-orientation-" + w.default.widget_orientation), k.default.mobile() && W.default.isSeparateWindow && (t += "mobile-version"), k.default.tablet() && (e += " mobile-tablet"), "call" !== W.default.route && "call/min" !== W.default.route || "cw_wait" !== U.default.cw_call.status && "cw_connecting" !== U.default.cw_call.status && "cw_connected" !== U.default.cw_call.status || (i.overflow = "hidden", i.borderTopRightRadius = "27px", o = "static"), m.default.createElement("div", {
                            id: "jivo-chat",
                            style: i,
                            className: e
                        }, k.default.desktop() || k.default.tablet() ? m.default.createElement(B.default, {
                            state: "chat"
                        }) : "", m.default.createElement("div", {
                            id: "jivo_iframe_wrap"
                        }, m.default.createElement("div", {
                            id: "jivo_iframe_placeholder"
                        }, m.default.createElement("table", {
                            id: "inner-chat",
                            style: a,
                            className: t
                        }, m.default.createElement("tbody", null, m.default.createElement("tr", null, m.default.createElement("td", {
                            id: "inner-chat-table",
                            style: {
                                display: this.state.showHeader ? "block" : "none"
                            }
                        }, m.default.createElement(E.default, null), Q && 0 === this.state.route.indexOf("call") ? m.default.createElement(H.default, null) : "", k.default.mobile() && m.default.createElement("div", {
                            id: "jivo_action"
                        }, m.default.createElement(K.default, {
                            onClick: function() {
                                X.default.closeWidget()
                            },
                            iconName: "mobileBack",
                            className: n
                        })))), m.default.createElement("tr", null, m.default.createElement("td", {
                            style: {
                                height: "100%",
                                position: o,
                                backgroundColor: 1 === W.default.is_online ? "transparent" : "#ffffff"
                            }
                        }, w.default.eula && !W.default.eula_accepted ? m.default.createElement(R.default, null) : "", this.state.online ? m.default.createElement(M.default, null) : m.default.createElement(z.default, null), Q ? m.default.createElement(O.default, {
                            display: 0 === this.state.route.indexOf("call")
                        }) : "", Q ? m.default.createElement(P.default, {
                            display: 0 !== this.state.route.indexOf("call") && W.default.is_online
                        }) : "", m.default.createElement(I.default, null))))))))
                    }
                }]), t
            }(v.default);
        t.default = $
    }, function(e, t, i) {
        "use strict";

        function a(e) {
            return e && e.__esModule ? e : {
                default: e
            }
        }
        Object.defineProperty(t, "__esModule", {
            value: !0
        });
        var o = i(2),
            n = a(o),
            r = i(5),
            l = a(r),
            s = l.default.name("COOKIE"),
            c = function(e, t, i) {
                if ("__utmz" != e && (e = ["jv", e, n.default.widget_id].join("_")), arguments.length > 1 && "[object Object]" !== String(t)) {
                    if ("undefined" == typeof i && (i = {}), null === t || void 0 === t ? (s.log("Clearing COOKIE " + e), i.expires = -1) : s.log("Set COOKIE " + e + " with value " + t), "number" == typeof i.expires) {
                        var a = i.expires,
                            o = i.expires = new Date;
                        o.setDate(o.getDate() + a)
                    }
                    return t = String(t), document.cookie = [encodeURIComponent(e), "=", encodeURIComponent(t), i.expires ? "; expires=" + i.expires.toUTCString() : "", n.default.cookie_domain ? "; domain=" + n.default.cookie_domain : "", "; path=/"].join("")
                }
                i = t || {};
                var r, l = i.raw ? function(e) {
                    return e
                } : decodeURIComponent;
                r = new RegExp("(?:^|; )" + encodeURIComponent(e) + "=([^;]*)").exec(document.cookie);
                try {
                    r = r && r.length ? l(r[1]) : null
                } catch (e) {
                    r = r[1]
                }
                return r
            };
        t.default = c
    }, function(e, t) {
        "use strict";
        Object.defineProperty(t, "__esModule", {
            value: !0
        });
        var i = function() {
            var e = /d{1,4}|m{1,4}|yy(?:yy)?|([HhMsTt])\1?|[LloSZ]|"[^"]*"|'[^']*'/g,
                t = /\b(?:[PMCEA][SDP]T|(?:Pacific|Mountain|Central|Eastern|Atlantic) (?:Standard|Daylight|Prevailing) Time|(?:GMT|UTC)(?:[-+]\d{4})?)\b/g,
                a = /[^-+\dA-Z]/g,
                o = function(e, t) {
                    for (e = String(e), t = t || 2; e.length < t;) e = "0" + e;
                    return e
                };
            return function(n, r, l) {
                var s = i;
                if (1 != arguments.length || "[object String]" != Object.prototype.toString.call(n) || /\d/.test(n) || (r = n, n = void 0), "string" == typeof n && isNaN(new Date(n)) && (n = n.replace(/-/g, "/").replace("T", " ").split(".").shift() + "Z"), n = n ? new Date(n) : new Date, isNaN(n)) throw SyntaxError("invalid date");
                r = String(s.masks[r] || r || s.masks.default), "UTC:" == r.slice(0, 4) && (r = r.slice(4), l = !0);
                var c = l ? "getUTC" : "get",
                    d = n[c + "Date"](),
                    u = n[c + "Day"](),
                    f = n[c + "Month"](),
                    p = n[c + "FullYear"](),
                    h = n[c + "Hours"](),
                    m = n[c + "Minutes"](),
                    g = n[c + "Seconds"](),
                    v = n[c + "Milliseconds"](),
                    b = l ? 0 : n.getTimezoneOffset(),
                    w = {
                        d: d,
                        dd: o(d),
                        ddd: s.i18n.dayNames[u],
                        dddd: s.i18n.dayNames[u + 7],
                        m: f + 1,
                        mm: o(f + 1),
                        mmm: s.i18n.monthNames[f],
                        mmmm: s.i18n.monthNames[f + 12],
                        yy: String(p).slice(2),
                        yyyy: p,
                        h: h % 12 || 12,
                        hh: o(h % 12 || 12),
                        H: h,
                        HH: o(h),
                        M: m,
                        MM: o(m),
                        s: g,
                        ss: o(g),
                        l: o(v, 3),
                        L: o(v > 99 ? Math.round(v / 10) : v),
                        t: h < 12 ? "a" : "p",
                        tt: h < 12 ? "am" : "pm",
                        T: h < 12 ? "A" : "P",
                        TT: h < 12 ? "AM" : "PM",
                        Z: l ? "UTC" : (String(n).match(t) || [""]).pop().replace(a, ""),
                        o: (b > 0 ? "-" : "+") + o(100 * Math.floor(Math.abs(b) / 60) + Math.abs(b) % 60, 4),
                        S: ["th", "st", "nd", "rd"][d % 10 > 3 ? 0 : (d % 100 - d % 10 != 10) * d % 10]
                    };
                return r.replace(e, function(e) {
                    return e in w ? w[e] : e.slice(1, e.length - 1)
                })
            }
        }();
        i.masks = {
            default: "ddd mmm dd yyyy HH:MM:ss",
            shortDate: "m/d/yy",
            mediumDate: "mmm d, yyyy",
            longDate: "mmmm d, yyyy",
            fullDate: "dddd, mmmm d, yyyy",
            shortTime: "h:MM TT",
            mediumTime: "h:MM:ss TT",
            longTime: "h:MM:ss TT Z",
            isoDate: "yyyy-mm-dd",
            isoTime: "HH:MM:ss",
            isoDateTime: "yyyy-mm-dd'T'HH:MM:ss",
            isoUtcDateTime: "UTC:yyyy-mm-dd'T'HH:MM:ss'Z'"
        }, i.i18n = {
            dayNames: ["Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat", "Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"],
            monthNames: ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec", "January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"]
        }, t.default = i
    }, function(e, t, i) {
        "use strict";

        function a(e) {
            return e && e.__esModule ? e : {
                default: e
            }
        }
        Object.defineProperty(t, "__esModule", {
            value: !0
        });
        var o = i(21),
            n = a(o),
            r = i(1),
            l = window.parent ? window.parent.document : null,
            s = 0,
            c = 0,
            d = i(52),
            u = d.EventEmitter,
            f = new u,
            p = (0, n.default)(f, {
                attach: function(e) {
                    e.style.cursor = "move", (0, r.addListener)(e, "mousedown", function(e) {
                        e.preventDefault(), s = e.screenX, c = e.screenY, w()
                    })
                }
            }),
            h = void 0,
            m = void 0;
        if (l && l.body) {
            var g = l.getElementById("jivo-mouse-tracker");
            g && g.parentNode && g.parentNode.removeChild(g), m = l.createElement("div"), m.setAttribute("id", "jivo-mouse-tracker"), m.style.display = "none", l.body.appendChild(m)
        }
        var v = function(e) {
                e.preventDefault(), p.emit("move", e, s - e.screenX, c - e.screenY), clearTimeout(h), h = setTimeout(function() {
                    y()
                }, 500)
            },
            b = function(e) {
                e.preventDefault(), y()
            },
            w = function() {
                l && (p.emit("start"), m.style.display = "block", (0, r.addListener)(m, "mousemove", v), (0, r.addListener)(m, "mouseup", b))
            },
            y = function() {
                l && (p.emit("stop"), m.style.display = "none", (0, r.removeEvent)(m, "mousemove", v), (0, r.removeEvent)(m, "mouseup", b), clearTimeout(h))
            };
        t.default = p
    }, function(e, t, i) {
        e.exports = {
            default: i(190),
            __esModule: !0
        }
    }, function(e, t, i) {
        "use strict";

        function a(e) {
            return e && e.__esModule ? e : {
                default: e
            }
        }
        t.__esModule = !0;
        var o = i(73),
            n = a(o);
        t.default = function(e, t, i) {
            return t in e ? (0, n.default)(e, t, {
                value: i,
                enumerable: !0,
                configurable: !0,
                writable: !0
            }) : e[t] = i, e
        }
    }, function(e, t) {
        var i = {}.toString;
        e.exports = function(e) {
            return i.call(e).slice(8, -1)
        }
    }, function(e, t, i) {
        var a = i(194);
        e.exports = function(e, t, i) {
            if (a(e), void 0 === t) return e;
            switch (i) {
                case 1:
                    return function(i) {
                        return e.call(t, i)
                    };
                case 2:
                    return function(i, a) {
                        return e.call(t, i, a)
                    };
                case 3:
                    return function(i, a, o) {
                        return e.call(t, i, a, o)
                    }
            }
            return function() {
                return e.apply(t, arguments)
            }
        }
    }, function(e, t, i) {
        var a = i(51),
            o = i(34).document,
            n = a(o) && a(o.createElement);
        e.exports = function(e) {
            return n ? o.createElement(e) : {}
        }
    }, function(e, t, i) {
        e.exports = !i(36) && !i(44)(function() {
            return 7 != Object.defineProperty(i(107)("div"), "a", {get: function() {
                    return 7
                }
            }).a
        })
    }, function(e, t, i) {
        var a = i(105);
        e.exports = Object("z").propertyIsEnumerable(0) ? Object : function(e) {
            return "String" == a(e) ? e.split("") : Object(e)
        }
    }, function(e, t, i) {
        "use strict";
        var a = i(77),
            o = i(37),
            n = i(116),
            r = i(45),
            l = i(38),
            s = i(76),
            c = i(200),
            d = i(80),
            u = i(113),
            f = i(47)("iterator"),
            p = !([].keys && "next" in [].keys()),
            h = "@@iterator",
            m = "keys",
            g = "values",
            v = function() {
                return this
            };
        e.exports = function(e, t, i, b, w, y, x) {
            c(i, t, b);
            var _, k, j, E = function(e) {
                    if (!p && e in z) return z[e];
                    switch (e) {
                        case m:
                            return function() {
                                return new i(this, e)
                            };
                        case g:
                            return function() {
                                return new i(this, e)
                            }
                    }
                    return function() {
                        return new i(this, e)
                    }
                },
                C = t + " Iterator",
                M = w == g,
                S = !1,
                z = e.prototype,
                T = z[f] || z[h] || w && z[w],
                I = T || E(w),
                N = w ? M ? E("entries") : I : void 0,
                O = "Array" == t ? z.entries || T : T;
            if (O && (j = u(O.call(new e)), j !== Object.prototype && (d(j, C, !0), a || l(j, f) || r(j, f, v))), M && T && T.name !== g && (S = !0, I = function() {
                    return T.call(this)
                }), a && !x || !p && !S && z[f] || r(z, f, I), s[t] = I, s[C] = v, w)
                if (_ = {
                        values: M ? I : E(g),
                        keys: y ? I : E(m),
                        entries: N
                    }, x)
                    for (k in _) k in z || n(z, k, _[k]);
                else o(o.P + o.F * (p || S), t, _);
            return _
        }
    }, function(e, t, i) {
        var a = i(58),
            o = i(59),
            n = i(40),
            r = i(84),
            l = i(38),
            s = i(108),
            c = Object.getOwnPropertyDescriptor;
        t.f = i(36) ? c : function(e, t) {
            if (e = n(e), t = r(t, !0), s) try {
                return c(e, t)
            } catch (e) {}
            if (l(e, t)) return o(!a.f.call(e, t), e[t])
        }
    }, function(e, t, i) {
        var a = i(114),
            o = i(75).concat("length", "prototype");
        t.f = Object.getOwnPropertyNames || function(e) {
            return a(e, o)
        }
    }, function(e, t, i) {
        var a = i(38),
            o = i(60),
            n = i(81)("IE_PROTO"),
            r = Object.prototype;
        e.exports = Object.getPrototypeOf || function(e) {
            return e = o(e), a(e, n) ? e[n] : "function" == typeof e.constructor && e instanceof e.constructor ? e.constructor.prototype : e instanceof Object ? r : null
        }
    }, function(e, t, i) {
        var a = i(38),
            o = i(40),
            n = i(196)(!1),
            r = i(81)("IE_PROTO");
        e.exports = function(e, t) {
            var i, l = o(e),
                s = 0,
                c = [];
            for (i in l) i != r && a(l, i) && c.push(i);
            for (; t.length > s;) a(l, i = t[s++]) && (~n(c, i) || c.push(i));
            return c
        }
    }, function(e, t, i) {
        var a = i(37),
            o = i(30),
            n = i(44);
        e.exports = function(e, t) {
            var i = (o.Object || {})[e] || Object[e],
                r = {};
            r[e] = t(i), a(a.S + a.F * n(function() {
                i(1)
            }), "Object", r)
        }
    }, function(e, t, i) {
        e.exports = i(45)
    }, function(e, t) {
        e.exports = {
            globalClass: "globalClass_ET"
        }
    }, function(e, t, i) {
        "use strict";

        function a(e, t) {
            if (!(e instanceof t)) throw new TypeError("Cannot call a class as a function")
        }

        function o(e, t) {
            if ("function" != typeof t && null !== t) throw new TypeError("Super expression must either be null or a function, not " + typeof t);
            e.prototype = Object.create(t && t.prototype, {
                constructor: {
                    value: e,
                    enumerable: !1,
                    writable: !0,
                    configurable: !0
                }
            }), t && (Object.setPrototypeOf ? Object.setPrototypeOf(e, t) : e.__proto__ = t)
        }
        var n = i(254),
            r = function(e) {
                function t(i, o, n) {
                    a(this, t), e.call(this, i), this.listener = o, this.context = n
                }
                return o(t, e), t
            }(n);
        e.exports = r
    }, function(e, t, i) {
        (function(t) {
            "use strict";

            function i(e, i, a, o, n, r, l, s) {
                if ("production" !== t.env.NODE_ENV && void 0 === i) throw new Error("invariant requires an error message argument");
                if (!e) {
                    var c;
                    if (void 0 === i) c = new Error("Minified exception occurred; use the non-minified dev environment for the full error message and additional helpful warnings.");
                    else {
                        var d = [a, o, n, r, l, s],
                            u = 0;
                        c = new Error(i.replace(/%s/g, function() {
                            return d[u++]
                        })), c.name = "Invariant Violation"
                    }
                    throw c.framesToPop = 1, c
                }
            }
            e.exports = i
        }).call(t, i(53))
    }, function(e, t) {
        e.exports = '<svg width="73px" height="51px" viewBox="0 0 73 51" version="1.1" xmlns="http://www.w3.org/2000/svg">\n    <style>\n      @-webkit-keyframes ochange {\n        0%   {opacity: 0}\n        50%  {opacity: 1}\n        100% {opacity: 0}\n      }\n      @keyframes ochange {\n        0%   {opacity: 0}\n        50%  {opacity: 1}\n        100% {opacity: 0}\n      }\n      #dot-1 {\n        opacity: 0;\n        animation-duration: 1.5s;\n        animation-name: ochange;\n        animation-iteration-count: infinite;\n        animation-delay: 0s;\n      }\n      #dot-2 {\n        opacity: 0;\n        animation-duration: 1.5s;\n        animation-name: ochange;\n        animation-iteration-count: infinite;\n        animation-delay: .3s;\n      }\n      #dot-3 {\n        opacity: 0;\n        animation-duration: 1.5s;\n        animation-name: ochange;\n        animation-iteration-count: infinite;\n        animation-delay: 0.6s;\n      }\n    </style>\n    <g>\n        <path d="M48.2,35.7 C44.5,35.7 41.1,35.1 38,34 C37.2,33.4 36,33.7 35.2,34.6 L29,40.8 C21,36.5 14.2,30 10.2,22.1 L16.7,15.9 C17.3,15 17.5,13.9 17.3,13.1 C16.2,9.7 15.6,6.3 15.6,2.9 C15.6,1.2 14.5,0.1 12.8,0.1 L2.8,0.1 C1.1,-1.52655666e-16 0,1.1 0,2.8 C0,29.5 21.5,51 48.2,51 C49.9,51 51,49.9 51,48.2 L51,38.6 C51,36.8 49.9,35.7 48.2,35.7 L48.2,35.7 Z" id="Shape" fill="#44BB6E"></path>\n        <path d="M35.8,20 C37.9,20 39.6,18.2 39.6,16 C39.6,13.8 37.9,12 35.8,12 C33.7,12 32,13.8 32,16 C32,18.2 33.7,20 35.8,20 L35.8,20 Z" id="dot-1" fill="#44BB6E"></path>\n        <path d="M52.2,12 C50.1,12 48.4,13.8 48.4,16 C48.4,18.2 50.1,20 52.2,20 C54.3,20 56,18.2 56,16 C56,13.8 54.3,12 52.2,12 L52.2,12 Z" id="dot-2" fill="#44BB6E"></path>\n        <path d="M69.2,12 C67.1,12 65.4,13.8 65.4,16 C65.4,18.2 67.1,20 69.2,20 C71.3,20 73,18.2 73,16 C73,13.8 71.3,12 69.2,12 L69.2,12 Z" id="dot-3" fill="#44BB6E"></path>\n    </g>\n</svg>'
    }, function(e, t) {
        e.exports = '<svg id="Layer_1" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 21 15"><style>.st0{fill:none;stroke:#FFF;stroke-width:2;stroke-linecap:round}</style><path id="icon_ok" class="st0" d="M1 6.3l7 7 12-12"/></svg>'
    }, function(e, t) {
        e.exports = '<svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="0 0 12 12">\n  <defs>\n    <style>\n      .cls-1 {\n        fill-rule: evenodd;\n      }\n    </style>\n  </defs>\n  <path id="icon_fb.svg" class="cls-1" d="M1166.99,805.011a5.791,5.791,0,0,0-6,5.551,5.383,5.383,0,0,0,2.24,4.323V817l2.04-1.12a6.4,6.4,0,0,0,1.72.232A5.568,5.568,0,1,0,1166.99,805.011Zm0.6,7.475-1.53-1.628L1163,812l3.36-2.992,1.56,1.628L1171,809Z" transform="translate(-1161 -805)"/>\n</svg>\n'
    }, function(e, t) {
        e.exports = '<svg xmlns="http://www.w3.org/2000/svg" width="16" height="9" viewBox="0 0 16 9">\n  <defs>\n    <style>\n      .cls-1 {\n        fill-rule: evenodd;\n      }\n    </style>\n  </defs>\n  <path id="icon_vk.svg" class="cls-1" d="M562.914,739.129a0.922,0.922,0,0,0-.054-0.1,8.161,8.161,0,0,0-1.591-1.816l-0.016-.017-0.009-.008-0.008-.008h-0.009a9.477,9.477,0,0,1-.674-0.674,0.626,0.626,0,0,1-.117-0.666,6.276,6.276,0,0,1,.75-1.076q0.34-.435.541-0.7,1.442-1.89,1.25-2.415l-0.05-.082a0.48,0.48,0,0,0-.258-0.136,1.319,1.319,0,0,0-.533-0.02l-2.4.016a0.317,0.317,0,0,0-.167,0l-0.108.025-0.042.02-0.033.025a0.37,0.37,0,0,0-.092.086,0.56,0.56,0,0,0-.083.144,13.359,13.359,0,0,1-.891,1.849c-0.206.339-.394,0.634-0.567,0.883a4.233,4.233,0,0,1-.433.55,3.067,3.067,0,0,1-.316.284,0.31,0.31,0,0,1-.217.09l-0.141-.033a0.543,0.543,0,0,1-.188-0.2,0.908,0.908,0,0,1-.1-0.321c-0.016-.128-0.026-0.239-0.029-0.332s0-.225,0-0.395,0.009-.285.009-0.345q0-.312.012-0.678c0.009-.243.015-0.436,0.021-0.579s0.008-.293.008-0.452a1.834,1.834,0,0,0-.029-0.374,1.24,1.24,0,0,0-.087-0.262,0.448,0.448,0,0,0-.171-0.2,1,1,0,0,0-.279-0.111A5.631,5.631,0,0,0,554.7,731a5.522,5.522,0,0,0-1.991.2,1.121,1.121,0,0,0-.317.246c-0.1.121-.114,0.187-0.041,0.2a1.027,1.027,0,0,1,.708.354l0.05,0.1a1.637,1.637,0,0,1,.116.378,3.75,3.75,0,0,1,.075.6,6.245,6.245,0,0,1,0,1.027q-0.042.428-.079,0.665a1.325,1.325,0,0,1-.112.387,1.789,1.789,0,0,1-.1.18,0.139,0.139,0,0,1-.042.041,0.615,0.615,0,0,1-.225.041,0.528,0.528,0,0,1-.283-0.115,1.987,1.987,0,0,1-.346-0.316,4.255,4.255,0,0,1-.4-0.563,9.676,9.676,0,0,1-.466-0.854l-0.134-.238q-0.124-.231-0.341-0.67t-0.383-.85a0.545,0.545,0,0,0-.2-0.263l-0.042-.025a0.56,0.56,0,0,0-.133-0.07,0.939,0.939,0,0,0-.192-0.053l-2.282.016a0.587,0.587,0,0,0-.475.156l-0.033.05a0.257,0.257,0,0,0-.025.131,0.659,0.659,0,0,0,.05.222q0.5,1.158,1.087,2.235t1.02,1.733q0.433,0.657.883,1.241c0.3,0.388.5,0.638,0.6,0.747s0.173,0.192.229,0.247l0.208,0.2a4.926,4.926,0,0,0,.587.472,10.12,10.12,0,0,0,.858.543,4.675,4.675,0,0,0,1.1.435,3.869,3.869,0,0,0,1.216.136h0.958a0.669,0.669,0,0,0,.441-0.181l0.033-.041a0.55,0.55,0,0,0,.063-0.152,0.847,0.847,0,0,0,.029-0.226,2.638,2.638,0,0,1,.054-0.637,1.632,1.632,0,0,1,.142-0.427,1.021,1.021,0,0,1,.179-0.242,0.663,0.663,0,0,1,.142-0.119,0.517,0.517,0,0,1,.066-0.029,0.536,0.536,0,0,1,.471.127,2.762,2.762,0,0,1,.508.477q0.237,0.283.57,0.637a3.975,3.975,0,0,0,.583.525l0.167,0.1a2.052,2.052,0,0,0,.433.181,0.95,0.95,0,0,0,.467.041l2.132-.033a0.967,0.967,0,0,0,.491-0.1,0.411,0.411,0,0,0,.209-0.226,0.634,0.634,0,0,0,0-.279A0.994,0.994,0,0,0,562.914,739.129Z" transform="translate(-547 -731)"/>\n</svg>\n'
    }, function(e, t) {
        var i = {
            animationIterationCount: !0,
            boxFlex: !0,
            boxFlexGroup: !0,
            boxOrdinalGroup: !0,
            columnCount: !0,
            flex: !0,
            flexGrow: !0,
            flexPositive: !0,
            flexShrink: !0,
            flexNegative: !0,
            flexOrder: !0,
            gridRow: !0,
            gridColumn: !0,
            fontWeight: !0,
            lineClamp: !0,
            lineHeight: !0,
            opacity: !0,
            order: !0,
            orphans: !0,
            tabSize: !0,
            widows: !0,
            zIndex: !0,
            zoom: !0,
            fillOpacity: !0,
            stopOpacity: !0,
            strokeDashoffset: !0,
            strokeOpacity: !0,
            strokeWidth: !0
        };
        e.exports = function(e, t) {
            return "number" != typeof t || i[e] ? t : t + "px"
        }
    }, function(e, t, i) {
        "use strict";

        function a(e) {
            return e && e.__esModule ? e : {
                default: e
            }
        }
        Object.defineProperty(t, "__esModule", {
            value: !0
        });
        var o = i(8),
            n = a(o),
            r = i(6),
            l = a(r),
            s = i(7),
            c = a(s),
            d = i(10),
            u = a(d),
            f = i(9),
            p = a(f),
            h = i(3),
            m = a(h),
            g = i(12),
            v = a(g),
            b = i(4),
            w = a(b),
            y = i(16),
            x = a(y),
            _ = i(11),
            k = a(_),
            j = i(14),
            E = a(j),
            C = i(27),
            M = a(C),
            S = i(1),
            z = a(S),
            T = i(2),
            I = a(T),
            N = i(15),
            O = a(N),
            A = i(5),
            P = a(A),
            L = i(64),
            B = a(L),
            D = i(91),
            H = a(D),
            F = i(95),
            R = a(F),
            V = i(89),
            W = a(V),
            q = i(88),
            U = a(q),
            G = i(120),
            X = a(G),
            Y = i(265),
            Z = a(Y),
            J = P.default.name("Call");
        i(295);
        var K = function(e) {
            function t(e) {
                (0, l.default)(this, t);
                var i = (0, u.default)(this, (t.__proto__ || (0, n.default)(t)).call(this, e));
                return i.state = {
                    mode: null,
                    percent: 0,
                    deg: 0,
                    agent: null,
                    error: !1,
                    hide_content: !1,
                    hide_form: !1,
                    circleDeg: null,
                    timerValue: ""
                }, i
            }
            return (0, p.default)(t, e), (0, c.default)(t, [{
                key: "getState",
                value: function() {
                    var e = {
                        mode: E.default.cw_call.status,
                        agent: M.default,
                        message: !1
                    };
                    return "cw_error" == e.mode && (e.message = E.default.cw_call.error, e.message || (e.message = (0, O.default)("cw_unableToConnect") + " " + (0, O.default)("cw_errInfoText")), this.callTimer.setTimerNull()), "cw_connected" == e.mode && this.callTimer.setTimerNull(), "call" != k.default.route && "call/min" != k.default.route || (e.hide_content = !1, e.hide_form = !1), e
                }
            }, {
                key: "componentDidMount",
                value: function() {
                    var e = this;
                    I.default.callback_settings.time && (this.on(E.default, function() {
                        e.setState(e.getState())
                    }), this.on(M.default, function() {
                        e.setState({
                            agent: M.default
                        })
                    }), this.on(k.default, function() {
                        e.setState(e.getState()), "call" == k.default.route && w.default.indexOf(["form", !1], e.state.mode) !== -1 && setTimeout(function() {
                            e.refs.inputPhone.focus()
                        }, 300), k.default.eula_accepted && e.phone && I.default.eula && (e.callTimer.setTimerNull(), e.setState({
                            phone: e.phone
                        }), e.startCall(e.phone), e.phone = !1)
                    }), this.initialConfig = I.default.callback_settings, this.initTimer(), this.setState(this.getState()), this.refs.inputPhone.subscribe("onEnter", this.submitPhone.bind(this)))
                }
            }, {
                key: "initTimer",
                value: function() {
                    this.callTimer = H.default, this.callTimer.callTimerText = this.refs.timer, this.callTimer.seconds = I.default.callback_settings.time, this.callTimer.on("handling", w.default.bind(function(e) {
                        J.log("timer_finished", this.state.mode), "timer_finished" == e.inputType && "cw_wait" == this.state.mode && this.showConnecting()
                    }, this)), this.callTimer.on("tick", w.default.bind(function(e) {
                        if ("call" == k.default.route && "cw_wait" == E.default.cw_call.status) {
                            this.setState({
                                timerValue: e
                            });
                            var t = 100 - 1e3 * e / 1e3 / I.default.callback_settings.time * 100;
                            this.drawTimer(t)
                        }
                    }, this))
                }
            }, {
                key: "startChat",
                value: function() {
                    this.setState({
                        hide_content: !0
                    });
                    var e = window.parent.document;
                    e && e.getElementById("jivo-iframe-container") && (e.getElementById("jivo-iframe-container").style.height = k.default.offline_height), this.setState({
                        hide_form: !0
                    }), setTimeout(function() {
                        k.default.is_focused = 1, x.default.navigate("chat"), (0, S.removeClass)(document.getElementById("call-header"), "hide-content")
                    }, 300)
                }
            }, {
                key: "submitPhone",
                value: function() {
                    if (this.refs.inputPhone.isValid()) {
                        var e = this.refs.inputPhone.getValue();
                        !k.default.eula_accepted && I.default.eula ? (this.phone = e, x.default.showEula("5@572>=8BL =0 =><5@<br/>" + e)) : (this.callTimer.setTimerNull(), this.startCall(e))
                    }
                }
            }, {
                key: "startCall",
                value: function(e) {
                    J.log("start call", e), x.default.startCall(e, "", "callback_screen")
                }
            }, {
                key: "showConnecting",
                value: function() {
                    this.setState({
                        mode: "cw_connecting"
                    })
                }
            }, {
                key: "drawTimer",
                value: function(e) {
                    "call" === k.default.route && this.setState({
                        circleDeg: 3.6 * e
                    })
                }
            }, {
                key: "renderLogo",
                value: function() {
                    return m.default.createElement("a", {
                        href: (0, S.trackCallLogo)(),
                        target: "_blank",
                        title: "Jivo" + ("ru_RU" == I.default.locale ? "site" : "chat"),
                        className: "jivo-logo jivo-logo-dark",
                        style: {
                            display: "cw_connected" != this.state.mode && z.default.showAd() ? "block" : "none"
                        },
                        dangerouslySetInnerHTML: {
                            __html: "ru_RU" == I.default.locale ? W.default : U.default
                        }
                    })
                }
            }, {
                key: "render",
                value: function() {
                    if (!I.default.callback_settings.time) return m.default.createElement("div", null);
                    var e, t, i = {};
                    this.state.circleDeg && (e = "rotate(" + this.state.circleDeg + "deg)", t = 100 * this.state.circleDeg / 360, i = {
                        transform: e,
                        OTransform: e,
                        msTransform: e,
                        MozTransform: e,
                        webkitTransform: e
                    });
                    var a = !this.state.mode || w.default.indexOf(["cw_error", "cw_call_end"], this.state.mode) !== -1,
                        o = w.default.indexOf(["cw_connected"], this.state.mode) !== -1,
                        n = "";
                    this.state.agent && this.state.agent.avatar_url && (n = {
                        backgroundImage: 'url("' + I.default.avatar_url + "/avatars/" + this.state.agent.avatar_url + '")'
                    });
                    var r = "jivo-call-form jivo-call-form-low" + (this.state.hide_content ? " hide-content" : ""),
                        l = k.default.is_online ? " jivo-call-content-animate" : " jivo-call-content-animate-offline",
                        s = (0, O.default)("cw_callButtonText");
                    return I.default.eula && !k.default.eula_accepted && (s = (0, O.default)("continue")), m.default.createElement("div", {
                        id: "jivo-call",
                        className: "jivo-animated",
                        style: {
                            position: "absolute",
                            top: 0,
                            left: 0,
                            width: "100%",
                            height: "100%",
                            zIndex: 0,
                            display: this.props.display ? "block" : "none",
                            backgroundColor: o ? k.default.widget_color : "#ffffff",
                            borderTopLeftRadius: "3px",
                            borderTopRightRadius: k.default.show_eula ? "0px" : "30px"
                        }
                    }, a ? "" : m.default.createElement(B.default, {
                        state: "chat"
                    }), m.default.createElement("div", {
                        className: r,
                        style: "display:block;"
                    }, m.default.createElement("div", {
                        className: "jivo-form-box"
                    }, m.default.createElement("div", {
                        className: "jivo-form-inner",
                        style: {
                            display: a ? "block" : "none"
                        }
                    }, m.default.createElement("div", {
                        className: "jivo-call-content" + (this.state.hide_form ? l : "")
                    }, m.default.createElement("div", {
                        id: "jivo-call-form"
                    }, m.default.createElement("div", {
                        className: "jivo-call-form-shadow"
                    }, m.default.createElement(R.default, {
                        ref: "inputPhone",
                        type: "single"
                    })), m.default.createElement("a", {
                        id: "jivo-save-tel",
                        title: "cw_call_end" == this.state.mode ? (0, O.default)("cw_repeatCallAgain") : (0, O.default)("cw_callButtonText"),
                        onClick: this.submitPhone.bind(this)
                    }, m.default.createElement("i", {
                        className: "jivo-call-icon"
                    }), "cw_call_end" == this.state.mode ? (0, O.default)("cw_repeatCallAgain") : s))), m.default.createElement("div", {
                        className: "jivo-call-copy"
                    }, m.default.createElement("a", {
                        href: "#",
                        className: "jivo-start-chat",
                        onClick: this.startChat.bind(this)
                    }, m.default.createElement("i", {
                        className: "jivo-ico-start-chat"
                    }), "online" === I.default.chat_mode ? (0, O.default)("cw_typeInChat") : (0, O.default)("lblLeaveMessage")))), m.default.createElement("div", {
                        id: "jivo-call-container"
                    }, m.default.createElement("div", {
                        className: "jivo-call-action",
                        style: {
                            display: this.state.mode ? "block" : "none"
                        }
                    }, m.default.createElement("div", {
                        className: "jivo-call-step jivo-call-wait",
                        style: {
                            display: "cw_wait" == this.state.mode ? "block" : "none"
                        }
                    }, m.default.createElement("div", {
                        className: "jivo-text-ca " + (1 == I.default.hide_ad ? "hide-logo" : "")
                    }, (0, O.default)("cw_callAfter")), m.default.createElement("div", {
                        id: "jivo-timer-block",
                        className: "cw_wait" == this.state.mode ? "jivo-timer-block jivo-timer-show" : "jivo-timer-block"
                    }, m.default.createElement("div", {
                        className: (t && t > 50 ? "gt50" : "") + " jivo-call-loader",
                        "data-anim": "base wrapper",
                        ref: "callLoader"
                    }, m.default.createElement("div", {
                        className: (t && t > 50 ? "fill" : "") + " jivo-call-circle",
                        "data-anim": "base left",
                        ref: "callCircle1"
                    }), m.default.createElement("div", {
                        id: "callCircle2",
                        className: "jivo-call-circle",
                        "data-anim": "base right",
                        style: i
                    })), m.default.createElement("div", {
                        className: "jivo-action-timer"
                    }, m.default.createElement("span", {
                        id: "jivo-time",
                        className: "jivo-time",
                        ref: "timer"
                    }, this.state.timerValue))), (0, O.default)("cw_form_secondd"), this.renderLogo()), m.default.createElement("div", {
                        className: "jivo-call-step jivo-call-connecting",
                        style: {
                            display: "cw_connecting" == this.state.mode ? "block" : "none"
                        }
                    }, m.default.createElement("div", {
                        className: "jivo-call-box-wrap " + (1 == I.default.hide_ad ? "hide-logo" : "")
                    }, m.default.createElement("div", {
                        className: "jivo-call-box",
                        dangerouslySetInnerHTML: {
                            __html: X.default
                        }
                    })), m.default.createElement("div", {
                        className: "jivo-text-conn"
                    }, (0, O.default)("cw_connecting")), this.renderLogo()), m.default.createElement("div", {
                        className: "jivo-call-step jivo-call-connected",
                        style: {
                            display: "cw_connected" == this.state.mode ? "block" : "none"
                        }
                    }, m.default.createElement("div", {
                        className: "jivo-call-box"
                    }, m.default.createElement("div", {
                        className: "jivo-call-up",
                        style: "display: none;"
                    }, m.default.createElement("div", {
                        dangerouslySetInnerHTML: {
                            __html: Z.default
                        }
                    }), (0, O.default)("cw_weCalling"), m.default.createElement("br", null), m.default.createElement("span", {
                        className: "jivo-calling-up-phone"
                    }, (0, O.default)("cw_pickUpPhone"))), m.default.createElement("div", {
                        className: "jivo-call-online",
                        style: "display: block;"
                    }, m.default.createElement("div", {
                        className: "jivo-operator-icon"
                    }, m.default.createElement("div", {
                        id: "jivo-operator-icon",
                        style: n,
                        className: (o ? "dark" : "light") + "-avatar"
                    }), m.default.createElement("i", {
                        className: "jivo-operator-icon-mobile"
                    })), m.default.createElement("div", {
                        className: "jivo-operator-name " + k.default.widget_font_color
                    }, m.default.createElement("div", {
                        className: "operator-title"
                    }, this.state.agent ? this.state.agent.display_name : ""), m.default.createElement("small", null, this.state.agent ? this.state.agent.title : "")), m.default.createElement("div", {
                        className: "jivo-connected-show-chat",
                        onClick: this.startChat.bind(this)
                    }, m.default.createElement("i", {
                        className: "jivo-ico-start-chat"
                    }), "online" === I.default.chat_mode ? (0, O.default)("cw_typeInChat") : (0, O.default)("lblLeaveMessage"))))))))))
                }
            }]), t
        }(v.default);
        t.default = K
    }, function(e, t, i) {
        "use strict";

        function a(e) {
            return e && e.__esModule ? e : {
                default: e
            }
        }
        Object.defineProperty(t, "__esModule", {
            value: !0
        });
        var o = i(21),
            n = a(o),
            r = i(8),
            l = a(r),
            s = i(6),
            c = a(s),
            d = i(7),
            u = a(d),
            f = i(10),
            p = a(f),
            h = i(9),
            m = a(h),
            g = i(3),
            v = a(g),
            b = i(12),
            w = a(b),
            y = i(4),
            x = a(y),
            _ = i(14),
            k = a(_),
            j = i(11),
            E = a(j),
            C = i(1),
            M = i(2),
            S = a(M),
            z = i(15),
            T = a(z),
            I = i(5),
            N = a(I),
            O = i(91),
            A = a(O),
            P = i(28),
            L = a(P),
            B = i(16),
            D = a(B),
            H = i(95),
            F = a(H),
            R = N.default.name("CallChat");
        i(296);
        var V = (0, C.getTextSeconds)(S.default.callback_settings),
            W = function(e) {
                function t(e) {
                    (0, c.default)(this, t);
                    var i = (0, p.default)(this, (t.__proto__ || (0, l.default)(t)).call(this, e));
                    return i.state = {
                        mode: !1,
                        pin: !0,
                        close: !0,
                        error: !1,
                        hide: !0,
                        is_invalid_phone: !1
                    }, i
                }
                return (0, m.default)(t, e), (0, u.default)(t, [{
                    key: "componentDidMount",
                    value: function() {
                        var e = this;
                        R.log("mounted"), this.on(E.default, function() {
                            "label" != E.default.route && ("chat/call" != E.default.route || e.props.display && !e.state.hide || setTimeout(function() {
                                e.refs.inputPhone.focus()
                            }, 20), E.default.eula_accepted && e.phone && S.default.eula && (e.callTimer.setTimerNull(), e.setState({
                                phone: e.phone,
                                is_invalid_phone: 0
                            }), e.startCall(e.phone), e.values = !1, e.phone = !1), e.setState(e.getState()))
                        }), this.on(k.default, function() {
                            e.setState(e.getState())
                        }), this.initTimer(), this.setState(this.getState(!0)), this.refs.inputPhone.subscribe("onEnter", this.submitPhone.bind(this)), this.refs.inputPhone.subscribe("onChange", function() {
                            e.setState({
                                is_invalid_phone: !e.refs.inputPhone.isValid()
                            })
                        })
                    }
                }, {
                    key: "getState",
                    value: function(e) {
                        var t = {
                            mode: k.default.cw_call.status,
                            error: !1,
                            hide: "chat/call" != E.default.route
                        };
                        switch (k.default.cw_call.status) {
                            case "cw_wait":
                                if (e) {
                                    var i = (0, T.default)("cw_call_to") + " " + k.default.client_info.phone;
                                    D.default.systemMessage(i, "callMessageStart")
                                }(0, n.default)(t, {
                                    hide: !1,
                                    pin: !1,
                                    close: !1
                                }), this.callTimer.handle("start_timer");
                                break;
                            case "cw_connecting":
                                (0, n.default)(t, {
                                    pin: !1,
                                    close: !1,
                                    hide: !1
                                });
                                break;
                            case "cw_connected":
                                t.hide = !0;
                                break;
                            case "cw_error":
                                (0, n.default)(t, {
                                    pin: !0,
                                    close: !0,
                                    error: k.default.cw_call.error
                                });
                                break;
                            case "cw_call_end":
                                this.callTimer.setTimerNull(), (0, n.default)(t, {
                                    pin: !0,
                                    close: !0
                                })
                        }
                        return t
                    }
                }, {
                    key: "initTimer",
                    value: function() {
                        this.callTimer = A.default, this.callTimer.callTimerText = this.refs.timer, this.callTimer.seconds = S.default.callback_settings.time, this.callTimer.on("handling", x.default.bind(function(e) {
                            R.log("timer_finished", this.state.mode), "timer_finished" == e.inputType && "cw_wait" == this.state.mode && this.setState({
                                mode: "cw_connecting"
                            })
                        }, this)), this.callTimer.on("tick", x.default.bind(function(e) {
                            this.refs.timer.innerText = e
                        }, this))
                    }
                }, {
                    key: "submitPhone",
                    value: function() {
                        if (this.refs.inputPhone.isValid()) {
                            var e = this.refs.inputPhone.getValue();
                            !E.default.eula_accepted && S.default.eula ? (this.phone = e, D.default.showEula("5@572>=8BL =0 =><5@<br/>" + e)) : (this.callTimer.setTimerNull(), this.startCall(e))
                        }
                    }
                }, {
                    key: "startCall",
                    value: function(e) {
                        R.log("start call", e), D.default.startCall(e, "", "chat_popup")
                    }
                }, {
                    key: "render",
                    value: function() {
                        var e = "cw_wait" == this.state.mode || "cw_connecting" == this.state.mode;
                        return x.default.isEmpty(S.default.callback_settings) && R.log("Callwidget not configured yet."), v.default.createElement("div", {
                            id: "callme-form",
                            style: {
                                display: this.props.display && !this.state.hide ? "block" : "none"
                            }
                        }, e ? v.default.createElement("div", null) : this.renderInputForm(), v.default.createElement("div", {
                            className: "call-wait call-tab",
                            style: {
                                display: "cw_wait" === this.state.mode ? "block" : "none"
                            }
                        }, v.default.createElement("div", {
                            className: "callme-text"
                        }, " ", (0, T.default)("cw_callAfter")), v.default.createElement("div", {
                            className: "callme-timer",
                            ref: "timer"
                        }, this.state.timer || S.default.callback_settings.time), v.default.createElement("div", {
                            className: "callme-seconds"
                        }, " ", (0, T.default)(V))), v.default.createElement("div", {
                            className: "call-connecting call-tab",
                            style: {
                                display: "cw_connecting" === this.state.mode ? "block" : "none"
                            }
                        }, v.default.createElement("div", {
                            className: "callme-text"
                        }, (0, T.default)("cw_connecting")), v.default.createElement(L.default, {
                            src: "callback_connect.svg",
                            className: "callme-icon"
                        })), v.default.createElement("div", {
                            className: "pin",
                            style: {
                                display: this.state.pin ? "block" : "none"
                            }
                        }), v.default.createElement("div", {
                            className: "callme-close",
                            onClick: function(e) {
                                e.stopPropagation(), D.default.toggleCallChat()
                            },
                            style: {
                                display: this.state.close ? "block" : "none"
                            }
                        }))
                    }
                }, {
                    key: "renderInputForm",
                    value: function() {
                        return v.default.createElement("div", {
                            className: "call-form call-tab",
                            style: {
                                display: "block"
                            }
                        }, v.default.createElement("div", {
                            className: "callme-text"
                        }, this.state.error ? v.default.createElement("div", null, this.state.error) : v.default.createElement("div", null, (0, T.default)("cw_weRecallAfter"), v.default.createElement("span", {
                            className: "jivo-text-time"
                        }, " ", S.default.callback_settings.time), v.default.createElement("span", {
                            className: "jivo-text-sec"
                        }, " ", (0, T.default)(V)), "!")), v.default.createElement("div", {
                            className: "callme-box"
                        }, v.default.createElement("div", {
                            className: "callme-inputphone-ctr"
                        }, v.default.createElement(F.default, {
                            ref: "inputPhone",
                            type: "inForm"
                        })), v.default.createElement("div", {
                            id: "callme-start-call",
                            className: this.state.is_invalid_phone ? "" : "can-call",
                            onClick: this.submitPhone.bind(this),
                            ref: "submitCall"
                        })))
                    }
                }]), t
            }(w.default);
        t.default = W
    }, function(e, t, i) {
        "use strict";

        function a(e) {
            return e && e.__esModule ? e : {
                default: e
            }
        }
        Object.defineProperty(t, "__esModule", {
            value: !0
        });
        var o = i(8),
            n = a(o),
            r = i(6),
            l = a(r),
            s = i(7),
            c = a(s),
            d = i(10),
            u = a(d),
            f = i(9),
            p = a(f),
            h = i(3),
            m = a(h),
            g = i(12),
            v = a(g),
            b = i(4),
            w = a(b),
            y = i(11),
            x = a(y),
            _ = i(14),
            k = a(_),
            j = i(27),
            E = a(j),
            C = i(1),
            M = a(C),
            S = i(2),
            z = a(S),
            T = i(15),
            I = a(T),
            N = i(5),
            O = a(N),
            A = i(89),
            P = a(A),
            L = i(88),
            B = a(L),
            D = (O.default.name("CallHeader"), function(e) {
                function t(e) {
                    (0, l.default)(this, t);
                    var i = (0, u.default)(this, (t.__proto__ || (0, n.default)(t)).call(this, e));
                    return i.state = i.getState(), i
                }
                return (0, p.default)(t, e), (0, c.default)(t, [{
                    key: "getState",
                    value: function() {
                        var e = {
                            mode: k.default.cw_call.status || !1,
                            agent: E.default,
                            message: !1
                        };
                        return "cw_error" == k.default.cw_call.status && (e.message = k.default.cw_call.error, e.message || (e.message = (0, I.default)("cw_unableToConnect") + " " + (0, I.default)("cw_errInfoText"))), e
                    }
                }, {
                    key: "componentDidMount",
                    value: function() {
                        var e = this;
                        this.on(E.default, function() {
                            e.setState(e.getState())
                        }), this.on(k.default, function() {
                            e.setState(e.getState())
                        }), this.on(x.default, function() {
                            e.setState(e.getState())
                        })
                    }
                }, {
                    key: "render",
                    value: function() {
                        var e = w.default.indexOf(["cw_wait", "cw_connecting"], this.state.mode) !== -1,
                            t = "jivo-form-header header-color-" + x.default.widget_font_color + " " + (M.default.showAd() ? "" : "hide-logo"),
                            i = x.default.callText ? m.default.createElement("span", {
                                className: "jivo-text-center",
                                dangerouslySetInnerHTML: {
                                    __html: x.default.callText
                                }
                            }) : m.default.createElement("span", {
                                className: "jivo-text-center"
                            }, (0, I.default)("cw_weRecallAfter"), " ", m.default.createElement("span", {
                                className: "jivo-text-time"
                            }, z.default.callback_settings.time), " ", m.default.createElement("span", {
                                className: "jivo-text-sec"
                            }, (0, I.default)("cw_form_secondd")), "!"),
                            a = x.default.show_eula && !x.default.eula_accepted;
                        return m.default.createElement("div", {
                            id: "call-header",
                            className: t,
                            style: {
                                height: a ? "70px" : "auto"
                            }
                        }, a && m.default.createElement("div", {
                            className: "call-eula-title " + x.default.widget_font_color
                        }, (0, I.default)("cw_callAfter"), " ", z.default.callback_widget, " ", (0, I.default)("cw_form_secondd")), m.default.createElement("a", {
                            href: (0, C.trackCallLogo)(),
                            target: "_blank",
                            title: "Jivo" + ("ru_RU" == z.default.locale ? "site" : "chat"),
                            className: "jivo-logo jivo-logo-" + (e || !this.state.mode && "dark" == x.default.widget_font_color ? "dark" : "light"),
                            style: {
                                display: "cw_connected" == this.state.mode || !M.default.showAd() || a ? "none" : "block"
                            },
                            dangerouslySetInnerHTML: {
                                __html: "ru_RU" == z.default.locale ? P.default : B.default
                            }
                        }), m.default.createElement("div", {
                            className: "jivo-call-text",
                            style: {
                                display: this.state.mode || a ? "none" : "block"
                            }
                        }, i), m.default.createElement("div", {
                            className: "jivo-error-header",
                            style: {
                                display: "cw_error" == this.state.mode ? "block" : "none"
                            }
                        }, m.default.createElement("div", {
                            className: "jivo-error-header-wrapper"
                        }, m.default.createElement("div", {
                            className: "jivo-title-ce"
                        }, this.state.message && (0, I.default)("cw_unableToConnect") + " " + (0, I.default)("cw_errInfoText")))), m.default.createElement("div", {
                            className: "jivo-call-end",
                            style: {
                                display: "cw_call_end" == this.state.mode ? "block" : "none"
                            }
                        }, m.default.createElement("div", {
                            className: "jivo-thx-text"
                        }, (0, I.default)("cw_thxForCall"))))
                    }
                }]), t
            }(v.default));
        t.default = D
    }, function(e, t, i) {
        "use strict";

        function a(e) {
            return e && e.__esModule ? e : {
                default: e
            }
        }
        Object.defineProperty(t, "__esModule", {
            value: !0
        });
        var o = i(21),
            n = a(o),
            r = i(8),
            l = a(r),
            s = i(6),
            c = a(s),
            d = i(7),
            u = a(d),
            f = i(10),
            p = a(f),
            h = i(9),
            m = a(h),
            g = i(3),
            v = a(g),
            b = i(12),
            w = a(b),
            y = i(5),
            x = a(y),
            _ = i(1),
            k = a(_),
            j = i(11),
            E = a(j),
            C = i(16),
            M = a(C),
            S = i(2),
            z = a(S),
            T = i(4),
            I = a(T),
            N = i(54),
            O = a(N),
            A = x.default.name("OuterCopyright"),
            P = function(e) {
                function t(e) {
                    (0, c.default)(this, t);
                    var i = (0, p.default)(this, (t.__proto__ || (0, l.default)(t)).call(this, e));
                    if (i.state = {
                            enabled: !0,
                            show: !1
                        }, i.custom_copyright = window.parent.document.getElementById("jivo_copyright"), i.custom_copyright) {
                        var a = window.parent.document.createElement("div");
                        a.id = "jivo_copyright_corner", i.custom_copyright_corner = a, i.custom_copyright_corner.className = "jivo-" + z.default.widget_orientation, i.custom_copyright.appendChild(i.custom_copyright_corner)
                    }
                    return i
                }
                return (0, m.default)(t, e), (0, u.default)(t, [{
                    key: "componentDidMount",
                    value: function() {
                        var e = this;
                        if (A.log("mounted"), this.on(E.default, function() {
                                e.setState({
                                    enabled: "label" == E.default.route,
                                    show: E.default.show_outer_copyright
                                })
                            }), this.custom_copyright) {
                            var t = void 0,
                                i = "jivo-" + E.default.widget_font_color + "  jivo-" + ("ru_RU" === z.default.locale ? "ru" : "en");
                            I.default.each(this.custom_copyright.childNodes, function(e) {
                                "A" === e.tagName && (t = e)
                            }), t && (t.id = "jivosite-copyright", t.rel = "nofollow", t.target = "_blank", t.className = i, t.innerHTML = ""), k.default.addListener(this.custom_copyright, "mouseover", function() {
                                return e.mouseOver()
                            }), k.default.addListener(this.custom_copyright, "mouseout", function() {
                                return e.mouseOut()
                            })
                        }
                    }
                }, {
                    key: "getCopyStyles",
                    value: function() {
                        var e = this.getTooltipPosition(),
                            t = {
                                color: k.default.getTextColor(),
                                backgroundColor: E.default.widget_color
                            };
                        return (0, n.default)(t, e)
                    }
                }, {
                    key: "getTooltipSize",
                    value: function() {
                        var e = k.default.getElementPosition(this.refs.jivo_copyright);
                        return {
                            width: e.width,
                            height: e.height
                        }
                    }
                }, {
                    key: "getTooltipPosition",
                    value: function() {
                        var e, t, i = k.default.getElementPosition(document.getElementById("jivo-label")),
                            a = {
                                top: 0,
                                left: 0
                            };
                        switch (null !== this.custom_copyright && (t = k.default.getElementPosition(window.parent.document.getElementById("jivo-iframe-container"))), z.default.widget_orientation) {
                            case "left":
                                e = 10, a = {
                                    top: i.top + 20 + (t ? t.top : 0) + "px",
                                    left: i.left + 40 + e + "px"
                                };
                                break;
                            case "right":
                                e = "en" === z.default.iconLocale ? 80 : 60, a = {
                                    top: i.top + 20 + (t ? t.top : 0) + "px",
                                    right: "50px"
                                };
                                break;
                            case "top":
                                a = {
                                    top: i.top + (i.height + 15) + "px",
                                    left: (i.left + 40 + t ? t.left + 30 : 0) + "px"
                                };
                                break;
                            case "bottom":
                                a = {
                                    bottom: i.height + 10 + "px",
                                    right: (t ? t.windowWidth - t.width - t.left + 30 : 42) + "px"
                                }
                        }
                        return a
                    }
                }, {
                    key: "mouseOver",
                    value: function() {
                        A.log("over"), this.setState({
                            hover: !0
                        }), this.state.enabled && M.default.showOuterCopyright(!0)
                    }
                }, {
                    key: "mouseOut",
                    value: function() {
                        A.log("out"), this.setState({
                            hover: !1
                        }), this.state.enabled && M.default.showOuterCopyright(!1)
                    }
                }, {
                    key: "render",
                    value: function() {
                        var e = {},
                            t = this.getCopyStyles();
                        switch (t.display = this.state.show ? "block" : "none", z.default.widget_orientation) {
                            case "top":
                                e.borderBottomColor = E.default.widget_color;
                                break;
                            case "left":
                                e.borderRightColor = E.default.widget_color;
                                break;
                            case "right":
                                e.borderLeftColor = E.default.widget_color;
                                break;
                            case "bottom":
                                e.borderTopColor = E.default.widget_color
                        }
                        return this.custom_copyright ? ((0, n.default)(this.custom_copyright.style, t), void(0, n.default)(this.custom_copyright_corner.style, e)) : v.default.createElement("div", {
                            id: "jivo_copyright",
                            style: t,
                            ref: "jivo_copyright",
                            onMouseOver: this.mouseOver.bind(this),
                            onMouseOut: this.mouseOut.bind(this)
                        }, v.default.createElement(O.default, {
                            id: "",
                            className: ""
                        }), v.default.createElement("div", {
                            id: "jivo_copyright_corner",
                            className: "jivo-" + z.default.widget_orientation,
                            style: e
                        }))
                    }
                }]), t
            }(w.default);
        t.default = P
    }, function(e, t, i) {
        "use strict";

        function a(e) {
            return e && e.__esModule ? e : {
                default: e
            }
        }
        Object.defineProperty(t, "__esModule", {
            value: !0
        });
        var o = i(22),
            n = a(o),
            r = i(8),
            l = a(r),
            s = i(6),
            c = a(s),
            d = i(7),
            u = a(d),
            f = i(10),
            p = a(f),
            h = i(9),
            m = a(h),
            g = i(3),
            v = a(g),
            b = i(12),
            w = a(b),
            y = i(27),
            x = a(y),
            _ = i(14),
            k = a(_),
            j = i(11),
            E = a(j),
            C = i(2),
            M = a(C),
            S = i(5),
            z = a(S),
            T = i(42),
            I = a(T),
            N = i(13),
            O = a(N),
            A = i(308),
            P = a(A),
            L = (z.default.name("Avatar"), function(e) {
                function t() {
                    (0, c.default)(this, t);
                    var e = (0, p.default)(this, (t.__proto__ || (0, l.default)(t)).call(this));
                    return e.state = {}, e.state = e.getState(), e.state.expanded = E.default.route.indexOf("/min") !== -1, e.state.connected = k.default.cw_call.status, e
                }
                return (0, m.default)(t, e), (0, u.default)(t, [{
                    key: "getState",
                    value: function() {
                        if (E.default.is_online) {
                            var e = !!x.default.agent_id && x.default.avatar_url;
                            return {
                                avatar_url: e,
                                avatar_url_load: this.state.avatar_url_load || !1
                            }
                        }
                        return {
                            avatar_url: !1
                        }
                    }
                }, {
                    key: "processState",
                    value: function() {
                        this.setState(this.getState())
                    }
                }, {
                    key: "componentDidMount",
                    value: function() {
                        this.on(E.default, this.processState.bind(this)), this.on(x.default, this.processState.bind(this))
                    }
                }, {
                    key: "componentWillUnmount",
                    value: function() {
                        this.off()
                    }
                }, {
                    key: "getRenderData",
                    value: function() {
                        var e = !!this.state.avatar_url && M.default.avatar_url + "/avatars/" + this.state.avatar_url,
                            t = E.default.is_online && "chat/introduce" !== E.default.route && "chat/departments" !== E.default.route && x.default.agent_id && !(this.state.expanded && !this.state.avatar_url),
                            i = I.default.isLightColor(M.default.power_button_color || "#44BB6E");
                        32 & M.default.options || (e = !1);
                        var a = {
                            display: "none"
                        };
                        return e && (a = {
                            display: "block"
                        }), {
                            data: {
                                avatarUrl: e ? e : ""
                            },
                            styles: {
                                avatar: [{
                                    avatar: !0,
                                    _connected: this.state.connected,
                                    _expanded: this.state.expanded,
                                    _mobile: O.default.mobile()
                                }, {
                                    display: t ? "table-cell" : "none"
                                }],
                                avatarColor: [{
                                    darkAvatar: i,
                                    lightAvatar: !i
                                }],
                                avatarImg: [{
                                    avatarImg: !0
                                }, a]
                            },
                            style: P.default
                        }
                    }
                }, {
                    key: "renderData",
                    value: function(e, t) {
                        return v.default.createElement("jdiv", t.avatar, v.default.createElement("jdiv", t.avatarColor, v.default.createElement("img", (0, n.default)({}, t.avatarImg, {
                            ref: "avatar",
                            src: e.avatarUrl
                        }))))
                    }
                }]), t
            }(w.default));
        t.default = L
    }, function(e, t, i) {
        "use strict";

        function a(e) {
            return e && e.__esModule ? e : {
                default: e
            }
        }
        Object.defineProperty(t, "__esModule", {
            value: !0
        });
        var o = i(22),
            n = a(o),
            r = i(8),
            l = a(r),
            s = i(6),
            c = a(s),
            d = i(7),
            u = a(d),
            f = i(10),
            p = a(f),
            h = i(9),
            m = a(h),
            g = i(4),
            v = a(g),
            b = i(3),
            w = a(b),
            y = i(12),
            x = a(y),
            _ = i(16),
            k = a(_),
            j = i(27),
            E = a(j),
            C = i(14),
            M = a(C),
            S = i(11),
            z = a(S),
            T = i(2),
            I = a(T),
            N = i(5),
            O = a(N),
            A = i(1),
            P = a(A),
            L = i(13),
            B = a(L),
            D = i(15),
            H = a(D),
            F = i(311),
            R = a(F),
            V = i(129),
            W = a(V),
            q = i(42),
            U = a(q),
            G = O.default.name("Header"),
            X = function(e) {
                function t() {
                    (0, c.default)(this, t);
                    var e = (0, p.default)(this, (t.__proto__ || (0, l.default)(t)).call(this));
                    return e.state = {}, e.state = e.getState(), e.state.fadeState = "fade-in", e.state.expanded = z.default.route.indexOf("/min") !== -1, e
                }
                return (0, m.default)(t, e), (0, u.default)(t, [{
                    key: "getState",
                    value: function() {
                        var e = I.default.callback_settings.time && M.default.cw_call_enabled && !B.default.mobile() && "chat/departments" !== z.default.route && "cw_wait" !== M.default.cw_call.status && "cw_connecting" !== M.default.cw_call.status && "cw_connected" !== M.default.cw_call.status,
                            t = void 0,
                            i = "call" === z.default.route;
                        if (z.default.is_online) {
                            var a = void 0,
                                o = "cw_connected" === M.default.cw_call.status;
                            return "chat/departments" !== z.default.route || o || E.default.agent_id || M.default.department_id ? "chat/introduce" !== z.default.route || o ? v.default.indexOf(["preview", "editor"], P.default.isWixContext()) !== -1 && (I.default.wix_agent_display_name || I.default.wix_agent_title) ? (t = I.default.wix_agent_display_name || (0, H.default)("lblConnectedToAgent"), a = I.default.wix_agent_title || (0, H.default)("lblOperatorsOnline")) : (t = E.default.agent_id ? E.default.display_name : (0, H.default)("lblConnectedToAgent"), a = E.default.agent_id ? E.default.title : (0, H.default)("lblOperatorsOnline")) : (t = (0, H.default)("lblIntroduceRequestBefore"), a = "", e = !1) : (t = (0, H.default)("lblSelectDep"), a = ""), {
                                head: t,
                                hide: i,
                                subhead: a,
                                callMe: e,
                                connected: o,
                                chat_started: z.default.chat_started,
                                expanded: z.default.route.indexOf("/min") !== -1
                            }
                        }
                        return t = I.default.offline_form_title || I.default.offline_widget_label, "chat/msg" === z.default.route && (t = (0, H.default)("lblOfflineMessageSend")), {
                            head: t,
                            hide: i,
                            subhead: !1,
                            expanded: !1,
                            callMe: e
                        }
                    }
                }, {
                    key: "stripAgentName",
                    value: function(e) {
                        return !E.default.agent_id || B.default.mobile() ? e : (e.length > 49 && (e = e.substr(0, 49) + "..."), e.length > 38 && this.state.callMe && (e = e.substr(0, 38) + "..."), e)
                    }
                }, {
                    key: "processState",
                    value: function() {
                        var e = this,
                            t = this.getState(),
                            i = !1;
                        t.head === this.state.head && t.subhead === this.state.subhead || (i = !0), i ? (this.setState({
                            fadeState: "fade-out"
                        }), setTimeout(function() {
                            e.setState({
                                fadeState: ""
                            }), setTimeout(function() {
                                var t = e.getState();
                                t.fadeState = "fade-in", e.setState(t)
                            }, 30)
                        }, 150)) : this.setState(this.getState())
                    }
                }, {
                    key: "componentDidMount",
                    value: function() {
                        G.log("mounted");
                        var e = v.default.debounce(this.processState.bind(this), 30);
                        this.on(z.default, e), this.on(M.default, e), this.on(E.default, e)
                    }
                }, {
                    key: "componentWillUnmount",
                    value: function() {
                        this.off()
                    }
                }, {
                    key: "headerClick",
                    value: function(e) {
                        G.log("headerClick", z.default.route), e && e.stopPropagation(), B.default.mobile() || "offline" === I.default.chat_mode && "chat/call" === z.default.route || !this.state.expanded || "chat" === z.default.route || (this.setState({
                            expanded: !1
                        }), k.default.navigate("chat"))
                    }
                }, {
                    key: "getRenderData",
                    value: function() {
                        var e = {
                                width: "100%"
                            },
                            t = I.default.power_button_color || "#44BB6E",
                            i = B.default.mobile() ? U.default.isLightColor(t) : "dark" === z.default.widget_font_color;
                        B.default.mobileOrTablet() || (e = {
                            width: this.state.callMe ? "80%" : "94%"
                        });
                        var a = {
                            display: this.state.hide ? "none" : "block"
                        };
                        return z.default.isSeparateWindow && (B.default.mobile() && (a = {
                            backgroundColor: t
                        }), B.default.tablet() && (a.borderTopRightRadius = "30px")), {
                            styles: {
                                header: [{
                                    header: !0,
                                    _expanded: this.state.expanded,
                                    _light: !i,
                                    _dark: i,
                                    _mobile: B.default.mobile(),
                                    _offline: "offline" === I.default.chat_mode
                                }, a],
                                headerContainer: [{
                                    headerContainer: !0,
                                    "_fade-out": "fade-out" === this.state.fadeState,
                                    "_fade-in": "fade-in" === this.state.fadeState
                                }],
                                info: [{
                                    info: !0
                                }],
                                title: [{
                                    title: !0
                                }],
                                callMe: [{
                                    callMe: !0
                                }, {
                                    display: this.state.callMe ? "block" : "none"
                                }],
                                agentName: [{
                                    agentName: !0
                                }, e]
                            },
                            style: R.default
                        }
                    }
                }, {
                    key: "renderData",
                    value: function(e, t) {
                        return w.default.createElement("jdiv", (0, n.default)({
                            className: t.headerClass
                        }, t.header, {
                            onClick: this.headerClick.bind(this),
                            ref: "header"
                        }), w.default.createElement("jdiv", t.headerContainer, w.default.createElement(W.default, null), w.default.createElement("jdiv", t.info, this.state.head && w.default.createElement("jdiv", t.agentName, this.stripAgentName(this.state.head)), this.state.subhead && w.default.createElement("jdiv", t.title, this.state.subhead))), !B.default.mobileOrTablet() && w.default.createElement("jdiv", (0, n.default)({}, t.callMe, {
                            ref: "callMe",
                            onClick: function(e) {
                                e.stopPropagation(), k.default.toggleCallChat()
                            }
                        }), w.default.createElement("jdiv", null)))
                    }
                }]), t
            }(x.default);
        t.default = X
    }, function(e, t, i) {
        "use strict";

        function a(e) {
            return e && e.__esModule ? e : {
                default: e
            }
        }

        function o(e) {
            return j.default.createElement("jdiv", e)
        }

        function n(e) {
            var t = e.style,
                i = (0, _.default)(e, ["style"]),
                a = (0, y.default)({}, t, {
                    right: 2,
                    bottom: 2,
                    left: 2,
                    borderRadius: 3
                });
            return j.default.createElement("jdiv", (0, y.default)({
                style: a
            }, i))
        }

        function r(e) {
            var t = e.style,
                i = (0, _.default)(e, ["style"]),
                a = (0, y.default)({}, t, {
                    right: 2,
                    bottom: 2,
                    top: 2,
                    borderRadius: 3
                });
            return j.default.createElement("jdiv", (0, y.default)({
                style: a
            }, i))
        }

        function l(e) {
            var t = e.style,
                i = (0, _.default)(e, ["style"]),
                a = (0, y.default)({}, t, {
                    cursor: "pointer",
                    borderRadius: "inherit",
                    backgroundColor: "rgba(0,0,0,.2)"
                });
            return j.default.createElement("jdiv", (0, y.default)({
                style: a
            }, i))
        }

        function s(e) {
            var t = e.style,
                i = (0, _.default)(e, ["style"]),
                a = (0, y.default)({}, t, {
                    cursor: "pointer",
                    borderRadius: "inherit",
                    backgroundColor: "rgba(0,0,0,.2)"
                });
            return j.default.createElement("jdiv", (0, y.default)({
                style: a
            }, i))
        }
        Object.defineProperty(t, "__esModule", {
            value: !0
        });
        var c = i(8),
            d = a(c),
            u = i(6),
            f = a(u),
            p = i(7),
            h = a(p),
            m = i(10),
            g = a(m),
            v = i(9),
            b = a(v),
            w = i(22),
            y = a(w),
            x = i(184),
            _ = a(x),
            k = i(3),
            j = a(k),
            E = i(12),
            C = a(E),
            M = i(1),
            S = a(M),
            z = i(264),
            T = a(z),
            I = i(245),
            N = a(I),
            O = i(132),
            A = S.default.getInnerWidth,
            P = S.default.getInnerHeight,
            L = S.default.getScrollBarWidth,
            B = function() {
                return "string" == typeof maybe
            },
            D = function() {
                return !1
            },
            H = function(e) {
                function t(e) {
                    var i;
                    (0, f.default)(this, t);
                    for (var a = arguments.length, o = Array(a > 1 ? a - 1 : 0), n = 1; n < a; n++) o[n - 1] = arguments[n];
                    var r = (0, g.default)(this, (i = t.__proto__ || (0, d.default)(t)).call.apply(i, [this, e].concat(o)));
                    return r.getScrollLeft = r.getScrollLeft.bind(r), r.getScrollTop = r.getScrollTop.bind(r), r.getScrollWidth = r.getScrollWidth.bind(r), r.getScrollHeight = r.getScrollHeight.bind(r), r.getClientWidth = r.getClientWidth.bind(r), r.getClientHeight = r.getClientHeight.bind(r), r.getValues = r.getValues.bind(r), r.getThumbHorizontalWidth = r.getThumbHorizontalWidth.bind(r), r.getThumbVerticalHeight = r.getThumbVerticalHeight.bind(r), r.getScrollLeftForOffset = r.getScrollLeftForOffset.bind(r), r.getScrollTopForOffset = r.getScrollTopForOffset.bind(r), r.scrollLeft = r.scrollLeft.bind(r), r.scrollTop = r.scrollTop.bind(r), r.scrollToLeft = r.scrollToLeft.bind(r), r.scrollToTop = r.scrollToTop.bind(r), r.scrollToRight = r.scrollToRight.bind(r), r.scrollToBottom = r.scrollToBottom.bind(r), r.handleTrackMouseEnter = r.handleTrackMouseEnter.bind(r), r.handleTrackMouseLeave = r.handleTrackMouseLeave.bind(r), r.handleHorizontalTrackMouseDown = r.handleHorizontalTrackMouseDown.bind(r), r.handleVerticalTrackMouseDown = r.handleVerticalTrackMouseDown.bind(r), r.handleHorizontalThumbMouseDown = r.handleHorizontalThumbMouseDown.bind(r), r.handleVerticalThumbMouseDown = r.handleVerticalThumbMouseDown.bind(r), r.handleWindowResize = r.handleWindowResize.bind(r), r.handleScroll = r.handleScroll.bind(r), r.handleDrag = r.handleDrag.bind(r), r.handleDragEnd = r.handleDragEnd.bind(r), r.state = {
                        didMountUniversal: !1
                    }, r
                }
                return (0, b.default)(t, e), (0, h.default)(t, [{
                    key: "componentDidMount",
                    value: function() {
                        this.addListeners(), this.update(), this.componentDidMountUniversal()
                    }
                }, {
                    key: "componentDidMountUniversal",
                    value: function() {
                        var e = this.props.universal;
                        e && this.setState({
                            didMountUniversal: !0
                        })
                    }
                }, {
                    key: "componentDidUpdate",
                    value: function() {
                        this.update()
                    }
                }, {
                    key: "componentWillUnmount",
                    value: function() {
                        this.removeListeners(), (0, z.cancel)(this.requestFrame), clearTimeout(this.hideTracksTimeout), clearInterval(this.detectScrollingInterval)
                    }
                }, {
                    key: "getScrollLeft",
                    value: function() {
                        return this.view.scrollLeft
                    }
                }, {
                    key: "getScrollTop",
                    value: function() {
                        return this.view.scrollTop
                    }
                }, {
                    key: "getScrollWidth",
                    value: function() {
                        return this.view.scrollWidth
                    }
                }, {
                    key: "getScrollHeight",
                    value: function() {
                        return this.view.scrollHeight
                    }
                }, {
                    key: "getClientWidth",
                    value: function() {
                        return this.view.clientWidth
                    }
                }, {
                    key: "getClientHeight",
                    value: function() {
                        return this.view.clientHeight
                    }
                }, {
                    key: "getValues",
                    value: function() {
                        var e = this.view,
                            t = e.scrollLeft,
                            i = e.scrollTop,
                            a = e.scrollWidth,
                            o = e.scrollHeight,
                            n = e.clientWidth,
                            r = e.clientHeight;
                        return {
                            left: t / (a - n) || 0,
                            top: i / (o - r) || 0,
                            scrollLeft: t,
                            scrollTop: i,
                            scrollWidth: a,
                            scrollHeight: o,
                            clientWidth: n,
                            clientHeight: r
                        }
                    }
                }, {
                    key: "getThumbHorizontalWidth",
                    value: function() {
                        var e = this.props,
                            t = e.thumbSize,
                            i = e.thumbMinSize,
                            a = this.view,
                            o = a.scrollWidth,
                            n = a.clientWidth,
                            r = A(this.trackHorizontal),
                            l = Math.ceil(n / o * r);
                        return r === l ? 0 : t ? t : Math.max(l, i)
                    }
                }, {
                    key: "getThumbVerticalHeight",
                    value: function() {
                        var e = this.props,
                            t = e.thumbSize,
                            i = e.thumbMinSize,
                            a = this.view,
                            o = a.scrollHeight,
                            n = a.clientHeight,
                            r = P(this.trackVertical),
                            l = Math.ceil(n / o * r);
                        return r === l ? 0 : t ? t : Math.max(l, i)
                    }
                }, {
                    key: "getScrollLeftForOffset",
                    value: function(e) {
                        var t = this.view,
                            i = t.scrollWidth,
                            a = t.clientWidth,
                            o = A(this.trackHorizontal),
                            n = this.getThumbHorizontalWidth();
                        return e / (o - n) * (i - a)
                    }
                }, {
                    key: "getScrollTopForOffset",
                    value: function(e) {
                        var t = this.view,
                            i = t.scrollHeight,
                            a = t.clientHeight,
                            o = P(this.trackVertical),
                            n = this.getThumbVerticalHeight();
                        return e / (o - n) * (i - a)
                    }
                }, {
                    key: "scrollLeft",
                    value: function() {
                        var e = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : 0;
                        this.view.scrollLeft = e
                    }
                }, {
                    key: "scrollTop",
                    value: function() {
                        var e = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : 0;
                        this.view.scrollTop = e
                    }
                }, {
                    key: "scrollToLeft",
                    value: function() {
                        this.view.scrollLeft = 0
                    }
                }, {
                    key: "scrollToTop",
                    value: function() {
                        this.view.scrollTop = 0
                    }
                }, {
                    key: "scrollToRight",
                    value: function() {
                        this.view.scrollLeft = this.view.scrollWidth
                    }
                }, {
                    key: "scrollToBottom",
                    value: function() {
                        this.view.scrollTop = this.view.scrollHeight
                    }
                }, {
                    key: "addListeners",
                    value: function() {
                        if ("undefined" != typeof document) {
                            var e = this.view,
                                t = this.trackHorizontal,
                                i = this.trackVertical,
                                a = this.thumbHorizontal,
                                o = this.thumbVertical;
                            e.addEventListener("scroll", this.handleScroll), L() && (t.addEventListener("mouseenter", this.handleTrackMouseEnter), t.addEventListener("mouseleave", this.handleTrackMouseLeave), t.addEventListener("mousedown", this.handleHorizontalTrackMouseDown), i.addEventListener("mouseenter", this.handleTrackMouseEnter), i.addEventListener("mouseleave", this.handleTrackMouseLeave), i.addEventListener("mousedown", this.handleVerticalTrackMouseDown), a.addEventListener("mousedown", this.handleHorizontalThumbMouseDown), o.addEventListener("mousedown", this.handleVerticalThumbMouseDown), window.addEventListener("resize", this.handleWindowResize))
                        }
                    }
                }, {
                    key: "removeListeners",
                    value: function() {
                        if ("undefined" != typeof document) {
                            var e = this.view,
                                t = this.trackHorizontal,
                                i = this.trackVertical,
                                a = this.thumbHorizontal,
                                o = this.thumbVertical;
                            e.removeEventListener("scroll", this.handleScroll), L() && (t.removeEventListener("mouseenter", this.handleTrackMouseEnter), t.removeEventListener("mouseleave", this.handleTrackMouseLeave), t.removeEventListener("mousedown", this.handleHorizontalTrackMouseDown), i.removeEventListener("mouseenter", this.handleTrackMouseEnter), i.removeEventListener("mouseleave", this.handleTrackMouseLeave), i.removeEventListener("mousedown", this.handleVerticalTrackMouseDown), a.removeEventListener("mousedown", this.handleHorizontalThumbMouseDown), o.removeEventListener("mousedown", this.handleVerticalThumbMouseDown), window.removeEventListener("resize", this.handleWindowResize), this.teardownDragging())
                        }
                    }
                }, {
                    key: "handleScroll",
                    value: function(e) {
                        var t = this,
                            i = this.props,
                            a = i.onScroll,
                            o = i.onScrollFrame;
                        a && a(e), this.update(function(e) {
                            var i = e.scrollLeft,
                                a = e.scrollTop;
                            t.viewScrollLeft = i, t.viewScrollTop = a, o && o(e)
                        }), this.detectScrolling()
                    }
                }, {
                    key: "handleScrollStart",
                    value: function() {
                        var e = this.props.onScrollStart;
                        e && e(), this.handleScrollStartAutoHide()
                    }
                }, {
                    key: "handleScrollStartAutoHide",
                    value: function() {
                        var e = this.props.autoHide;
                        e && this.showTracks()
                    }
                }, {
                    key: "handleScrollStop",
                    value: function() {
                        var e = this.props.onScrollStop;
                        e && e(), this.handleScrollStopAutoHide()
                    }
                }, {
                    key: "handleScrollStopAutoHide",
                    value: function() {
                        var e = this.props.autoHide;
                        e && this.hideTracks()
                    }
                }, {
                    key: "handleWindowResize",
                    value: function() {
                        this.update()
                    }
                }, {
                    key: "handleHorizontalTrackMouseDown",
                    value: function(e) {
                        e.preventDefault();
                        var t = e.target,
                            i = e.clientX,
                            a = t.getBoundingClientRect(),
                            o = a.left,
                            n = this.getThumbHorizontalWidth(),
                            r = Math.abs(o - i) - n / 2;
                        this.view.scrollLeft = this.getScrollLeftForOffset(r)
                    }
                }, {
                    key: "handleVerticalTrackMouseDown",
                    value: function(e) {
                        e.preventDefault();
                        var t = e.target,
                            i = e.clientY,
                            a = t.getBoundingClientRect(),
                            o = a.top,
                            n = this.getThumbVerticalHeight(),
                            r = Math.abs(o - i) - n / 2;
                        this.view.scrollTop = this.getScrollTopForOffset(r)
                    }
                }, {
                    key: "handleHorizontalThumbMouseDown",
                    value: function(e) {
                        e.preventDefault(), this.handleDragStart(e);
                        var t = e.target,
                            i = e.clientX,
                            a = t.offsetWidth,
                            o = t.getBoundingClientRect(),
                            n = o.left;
                        this.prevPageX = a - (i - n)
                    }
                }, {
                    key: "handleVerticalThumbMouseDown",
                    value: function(e) {
                        e.preventDefault(), this.handleDragStart(e);
                        var t = e.target,
                            i = e.clientY,
                            a = t.offsetHeight,
                            o = t.getBoundingClientRect(),
                            n = o.top;
                        this.prevPageY = a - (i - n)
                    }
                }, {
                    key: "setupDragging",
                    value: function() {
                        (0, N.default)(document.body, O.disableSelectStyle), document.addEventListener("mousemove", this.handleDrag), document.addEventListener("mouseup", this.handleDragEnd), document.onselectstart = D
                    }
                }, {
                    key: "teardownDragging",
                    value: function() {
                        (0, N.default)(document.body, O.disableSelectStyleReset), document.removeEventListener("mousemove", this.handleDrag), document.removeEventListener("mouseup", this.handleDragEnd), document.onselectstart = void 0
                    }
                }, {
                    key: "handleDragStart",
                    value: function(e) {
                        this.dragging = !0, e.stopImmediatePropagation(), this.setupDragging()
                    }
                }, {
                    key: "handleDrag",
                    value: function(e) {
                        if (this.prevPageX) {
                            var t = e.clientX,
                                i = this.trackHorizontal.getBoundingClientRect(),
                                a = i.left,
                                o = this.getThumbHorizontalWidth(),
                                n = o - this.prevPageX,
                                r = -a + t - n;
                            this.view.scrollLeft = this.getScrollLeftForOffset(r)
                        }
                        if (this.prevPageY) {
                            var l = e.clientY,
                                s = this.trackVertical.getBoundingClientRect(),
                                c = s.top,
                                d = this.getThumbVerticalHeight(),
                                u = d - this.prevPageY,
                                f = -c + l - u;
                            this.view.scrollTop = this.getScrollTopForOffset(f)
                        }
                        return !1
                    }
                }, {
                    key: "handleDragEnd",
                    value: function() {
                        this.dragging = !1, this.prevPageX = this.prevPageY = 0, this.teardownDragging(), this.handleDragEndAutoHide()
                    }
                }, {
                    key: "handleDragEndAutoHide",
                    value: function() {
                        var e = this.props.autoHide;
                        e && this.hideTracks()
                    }
                }, {
                    key: "handleTrackMouseEnter",
                    value: function() {
                        this.trackMouseOver = !0, this.handleTrackMouseEnterAutoHide()
                    }
                }, {
                    key: "handleTrackMouseEnterAutoHide",
                    value: function() {
                        var e = this.props.autoHide;
                        e && this.showTracks()
                    }
                }, {
                    key: "handleTrackMouseLeave",
                    value: function() {
                        this.trackMouseOver = !1, this.handleTrackMouseLeaveAutoHide()
                    }
                }, {
                    key: "handleTrackMouseLeaveAutoHide",
                    value: function() {
                        var e = this.props.autoHide;
                        e && this.hideTracks()
                    }
                }, {
                    key: "showTracks",
                    value: function() {
                        clearTimeout(this.hideTracksTimeout), (0, N.default)(this.trackHorizontal, {
                            opacity: 1
                        }), (0, N.default)(this.trackVertical, {
                            opacity: 1
                        }), console.log("showTracks: ", this.trackHorizontal)
                    }
                }, {
                    key: "hideTracks",
                    value: function() {
                        var e = this;
                        if (!this.dragging && !this.scrolling && !this.trackMouseOver) {
                            var t = this.props.autoHideTimeout;
                            clearTimeout(this.hideTracksTimeout), this.hideTracksTimeout = setTimeout(function() {
                                (0, N.default)(e.trackHorizontal, {
                                    opacity: 0
                                }), (0, N.default)(e.trackVertical, {
                                    opacity: 0
                                })
                            }, t)
                        }
                    }
                }, {
                    key: "detectScrolling",
                    value: function() {
                        var e = this;
                        this.scrolling || (this.scrolling = !0, this.handleScrollStart(), this.detectScrollingInterval = setInterval(function() {
                            e.lastViewScrollLeft === e.viewScrollLeft && e.lastViewScrollTop === e.viewScrollTop && (clearInterval(e.detectScrollingInterval), e.scrolling = !1, e.handleScrollStop()), e.lastViewScrollLeft = e.viewScrollLeft, e.lastViewScrollTop = e.viewScrollTop
                        }, 100))
                    }
                }, {
                    key: "raf",
                    value: function(e) {
                        var t = this;
                        this.requestFrame && T.default.cancel(this.requestFrame), this.requestFrame = (0, T.default)(function() {
                            t.requestFrame = void 0, e()
                        })
                    }
                }, {
                    key: "update",
                    value: function(e) {
                        var t = this;
                        this.raf(function() {
                            return t._update(e)
                        })
                    }
                }, {
                    key: "_update",
                    value: function(e) {
                        var t = this.props,
                            i = t.onUpdate,
                            a = t.hideTracksWhenNotNeeded,
                            o = this.getValues();
                        if (L()) {
                            var n = o.scrollLeft,
                                r = o.clientWidth,
                                l = o.scrollWidth,
                                s = A(this.trackHorizontal),
                                c = this.getThumbHorizontalWidth(),
                                d = n / (l - r) * (s - c),
                                u = {
                                    width: c,
                                    transform: "translateX(" + d + "px)"
                                },
                                f = o.scrollTop,
                                p = o.clientHeight,
                                h = o.scrollHeight,
                                m = P(this.trackVertical),
                                g = this.getThumbVerticalHeight(),
                                v = f / (h - p) * (m - g),
                                b = {
                                    height: g,
                                    transform: "translateY(" + v + "px)"
                                };
                            if (a) {
                                var w = {
                                        visibility: l > r ? "visible" : "hidden"
                                    },
                                    y = {
                                        visibility: h > p ? "visible" : "hidden"
                                    };
                                (0, N.default)(this.trackHorizontal, w), (0, N.default)(this.trackVertical, y)
                            }(0, N.default)(this.thumbHorizontal, u), (0, N.default)(this.thumbVertical, b)
                        }
                        i && i(o), "function" == typeof e && e(o)
                    }
                }, {
                    key: "render",
                    value: function() {
                        var e = this,
                            t = L(),
                            i = this.props,
                            a = (i.onScroll, i.onScrollFrame, i.onScrollStart, i.onScrollStop, i.onUpdate, i.renderView),
                            o = i.renderTrackHorizontal,
                            n = i.renderTrackVertical,
                            r = i.renderThumbHorizontal,
                            l = i.renderThumbVertical,
                            s = i.tagName,
                            c = (i.hideTracksWhenNotNeeded, i.autoHide),
                            d = (i.autoHideTimeout, i.autoHideDuration),
                            u = (i.thumbSize, i.thumbMinSize, i.universal),
                            f = i.autoHeight,
                            p = i.autoHeightMin,
                            h = i.autoHeightMax,
                            m = i.style,
                            g = i.children,
                            v = (0, _.default)(i, ["onScroll", "onScrollFrame", "onScrollStart", "onScrollStop", "onUpdate", "renderView", "renderTrackHorizontal", "renderTrackVertical", "renderThumbHorizontal", "renderThumbVertical", "tagName", "hideTracksWhenNotNeeded", "autoHide", "autoHideTimeout", "autoHideDuration", "thumbSize", "thumbMinSize", "universal", "autoHeight", "autoHeightMin", "autoHeightMax", "style", "children"]),
                            b = this.state.didMountUniversal,
                            w = (0, y.default)({}, O.containerStyleDefault, f && (0, y.default)({}, O.containerStyleAutoHeight, {
                                minHeight: p,
                                maxHeight: h
                            }), m),
                            x = (0, y.default)({}, O.viewStyleDefault, {
                                marginRight: t ? -t : 0,
                                marginBottom: t ? -t : 0
                            }, f && (0, y.default)({}, O.viewStyleAutoHeight, {
                                minHeight: B(p) ? "calc(" + p + " + " + t + "px)" : p + t,
                                maxHeight: B(h) ? "calc(" + h + " + " + t + "px)" : h + t
                            }), f && u && !b && {
                                minHeight: p,
                                maxHeight: h
                            }, u && !b && O.viewStyleUniversalInitial),
                            j = {
                                transition: "opacity " + d + "ms",
                                opacity: 0
                            },
                            E = (0, y.default)({}, O.trackHorizontalStyleDefault, c && j, (!t || u && !b) && {
                                display: "none"
                            }),
                            C = (0, y.default)({}, O.trackVerticalStyleDefault, c && j, (!t || u && !b) && {
                                display: "none"
                            });
                        return (0, k.createElement)(s, (0, y.default)({}, v, {
                            style: w,
                            ref: function(t) {
                                e.container = t
                            }
                        }), [(0, k.cloneElement)(a({
                            style: x
                        }), {
                            key: "view",
                            ref: function(t) {
                                e.view = t
                            }
                        }, g), (0, k.cloneElement)(o({
                            style: E
                        }), {
                            key: "trackHorizontal",
                            ref: function(t) {
                                e.trackHorizontal = t
                            }
                        }, (0, k.cloneElement)(r({
                            style: O.thumbHorizontalStyleDefault
                        }), {
                            ref: function(t) {
                                e.thumbHorizontal = t
                            }
                        })), (0, k.cloneElement)(n({
                            style: C
                        }), {
                            key: "trackVertical",
                            ref: function(t) {
                                e.trackVertical = t
                            }
                        }, (0, k.cloneElement)(l({
                            style: O.thumbVerticalStyleDefault
                        }), {
                            ref: function(t) {
                                e.thumbVertical = t
                            }
                        }))])
                    }
                }]), t
            }(C.default);
        t.default = H, H.defaultProps = {
            renderView: o,
            renderTrackHorizontal: n,
            renderTrackVertical: r,
            renderThumbHorizontal: l,
            renderThumbVertical: s,
            tagName: "jdiv",
            thumbMinSize: 30,
            hideTracksWhenNotNeeded: !1,
            autoHide: !1,
            autoHideTimeout: 1e3,
            autoHideDuration: 200,
            autoHeight: !1,
            autoHeightMin: 0,
            autoHeightMax: 200,
            universal: !0
        }
    }, function(e, t) {
        "use strict";
        Object.defineProperty(t, "__esModule", {
            value: !0
        });
        t.containerStyleDefault = {
            position: "relative",
            overflow: "hidden",
            width: "100%",
            height: "100%"
        }, t.containerStyleAutoHeight = {
            height: "auto"
        }, t.viewStyleDefault = {
            position: "absolute",
            top: 0,
            left: 0,
            right: 0,
            bottom: 0,
            overflow: "scroll",
            WebkitOverflowScrolling: "touch"
        }, t.viewStyleAutoHeight = {
            position: "relative",
            top: void 0,
            left: void 0,
            right: void 0,
            bottom: void 0
        }, t.viewStyleUniversalInitial = {
            overflow: "hidden",
            marginRight: 0,
            marginBottom: 0
        }, t.trackHorizontalStyleDefault = {
            position: "absolute",
            height: 0
        }, t.trackVerticalStyleDefault = {
            position: "absolute",
            width: 6
        }, t.thumbHorizontalStyleDefault = {
            position: "relative",
            display: "block",
            height: "100%"
        }, t.thumbVerticalStyleDefault = {
            position: "relative",
            display: "block",
            width: "100%"
        }, t.disableSelectStyle = {
            userSelect: "none"
        }, t.disableSelectStyleReset = {
            userSelect: ""
        }
    }, function(e, t, i) {
        "use strict";

        function a(e) {
            return e && e.__esModule ? e : {
                default: e
            }
        }
        Object.defineProperty(t, "__esModule", {
            value: !0
        });
        var o = i(8),
            n = a(o),
            r = i(6),
            l = a(r),
            s = i(7),
            c = a(s),
            d = i(10),
            u = a(d),
            f = i(9),
            p = a(f),
            h = i(3),
            m = a(h),
            g = i(12),
            v = a(g),
            b = i(314),
            w = a(b),
            y = i(5),
            x = a(y),
            _ = i(2),
            k = a(_),
            j = i(15),
            E = a(j),
            C = i(4),
            M = a(C),
            S = i(1),
            z = i(13),
            T = a(z),
            I = i(32),
            N = (a(I), i(29)),
            O = (a(N), i(14)),
            A = a(O),
            P = i(18),
            L = a(P),
            B = i(96),
            D = (a(B), x.default.name("SocialButtonChat")),
            H = function(e) {
                function t(e) {
                    (0, l.default)(this, t);
                    var i = (0, u.default)(this, (t.__proto__ || (0, n.default)(t)).call(this, e));
                    return i.state = {
                        show: !0,
                        vk: e.mode.vk,
                        fb: e.mode.fb,
                        mode: e.mode.mode
                    }, i
                }
                return (0, p.default)(t, e), (0, c.default)(t, [{
                    key: "componentDidMount",
                    value: function() {
                        var e = this;
                        return D.log("mounted"), this.on(A.default, function() {
                            "vk" != A.default.has_integration && "fb" != A.default.has_integration || (D.log("Already connected with vk/fb."), M.default.each(L.default.data, function(e, t) {
                                e && e.type && "systemMessageEmail" === e.type && L.default.data.splice(t, 1)
                            }), e.show(!1))
                        }), this.on(L.default, function() {
                            "vk" != A.default.has_integration && "fb" != A.default.has_integration || e.setState({
                                show: !1
                            })
                        }), (k.default.joint || 3 != k.default.contacts_ask) && (3 != k.default.contacts_ask || T.default.desktop()) ? void 0 : void this.setState({
                            vk: !1,
                            fb: !1,
                            mode: "email"
                        })
                    }
                }, {
                    key: "show",
                    value: function(e) {
                        this.setState({
                            show: e
                        })
                    }
                }, {
                    key: "renderIframe",
                    value: function() {
                        var e = (0, S.genSocialIframeUrl)(this.state.mode) + "#rand=" + (new Date).getMilliseconds() + ",lang=" + k.default.locale,
                            t = "vk" == this.state.mode ? 50 : 74,
                            i = {};
                        return "fb" == this.state.mode && (i = {
                            position: "relative",
                            marginLeft: "-10px"
                        }), m.default.createElement("iframe", {
                            width: "100%",
                            border: "0",
                            height: t,
                            src: e,
                            style: i
                        })
                    }
                }, {
                    key: "getRenderData",
                    value: function() {
                        return {
                            styles: {
                                box: [{
                                    box: !0
                                }, {
                                    display: "block"
                                }],
                                iframe: [{
                                    iframe: !0
                                }, {
                                    display: this.state.show ? "block" : "none"
                                }],
                                infoText: [{
                                    infoText: !0
                                }]
                            },
                            style: w.default
                        }
                    }
                }, {
                    key: "renderData",
                    value: function(e, t) {
                        return m.default.createElement("jdiv", t.box, (this.state.vk || this.state.fb) && m.default.createElement("jdiv", t.iframe, m.default.createElement("jdiv", {
                            className: w.default.infoText,
                            dangerouslySetInnerHTML: {
                                __html: "vk" == this.state.mode ? (0, E.default)("social_get_access") : (0, E.default)("social_get_access_fb")
                            }
                        }), this.renderIframe()))
                    }
                }]), t
            }(v.default);
        t.default = H
    }, function(e, t, i) {
        "use strict";

        function a(e) {
            return e && e.__esModule ? e : {
                default: e
            }
        }
        Object.defineProperty(t, "__esModule", {
            value: !0
        });
        var o = i(8),
            n = a(o),
            r = i(6),
            l = a(r),
            s = i(7),
            c = a(s),
            d = i(10),
            u = a(d),
            f = i(9),
            p = a(f),
            h = i(3),
            m = a(h),
            g = i(12),
            v = a(g),
            b = i(315),
            w = a(b),
            y = i(35),
            x = a(y),
            _ = i(26),
            k = a(_),
            j = i(11),
            E = a(j),
            C = function(e) {
                function t(e) {
                    (0, l.default)(this, t);
                    var i = (0, u.default)(this, (t.__proto__ || (0, n.default)(t)).call(this, e));
                    return i.state = {
                        isShow: k.default.getUserZoom() > 1,
                        iconZoom: k.default.getAppZoom()
                    }, i
                }
                return (0, p.default)(t, e), (0, c.default)(t, [{
                    key: "componentDidMount",
                    value: function() {
                        var e = this;
                        k.default.listenChangeZoom(function(t) {
                            t.userZoom > 1 && "label" !== E.default.route && (k.default.bodyEl.scrollTop = 0, k.default.bodyEl.scrollLeft = 0), e.setState({
                                iconZoom: t.appZoom,
                                isShow: 1 !== t.userZoom
                            })
                        })
                    }
                }, {
                    key: "getRenderData",
                    value: function() {
                        return {
                            data: {},
                            styles: {
                                wrap: [{
                                    wrap: !0
                                }, {
                                    display: this.state.isShow ? null : "none"
                                }],
                                iconContainer: [{
                                    iconContainer: !0
                                }, {
                                    width: k.default.window.innerWidth,
                                    height: k.default.window.innerHeight
                                }],
                                iconWrap: [{
                                    iconWrap: !0
                                }, {
                                    zoom: this.state.iconZoom
                                }]
                            },
                            style: w.default
                        }
                    }
                }, {
                    key: "renderData",
                    value: function(e, t) {
                        return m.default.createElement("div", t.wrap, m.default.createElement("div", {
                            className: w.default.substrate
                        }), m.default.createElement("div", t.iconContainer, m.default.createElement("div", t.iconWrap, m.default.createElement(x.default, {
                            iconName: "hand",
                            className: w.default.handIcon
                        }), m.default.createElement(x.default, {
                            iconName: "arrow",
                            className: w.default.arrow1
                        }), m.default.createElement(x.default, {
                            iconName: "arrow2",
                            className: w.default.arrow2
                        }))))
                    }
                }]), t
            }(v.default);
        t.default = C
    }, function(e, t, i) {
        "use strict";

        function a(e) {
            return e && e.__esModule ? e : {
                default: e
            }
        }
        Object.defineProperty(t, "__esModule", {
            value: !0
        });
        var o = i(8),
            n = a(o),
            r = i(6),
            l = a(r),
            s = i(7),
            c = a(s),
            d = i(10),
            u = a(d),
            f = i(9),
            p = a(f),
            h = i(3),
            m = a(h),
            g = i(12),
            v = a(g),
            b = i(28),
            w = (a(b), i(5)),
            y = a(w),
            x = i(1),
            _ = a(x),
            k = i(102),
            j = a(k),
            E = i(11),
            C = a(E),
            M = i(14),
            S = a(M),
            z = i(16),
            T = a(z),
            I = i(13),
            N = a(I),
            O = y.default.name("CloseButton"),
            A = function(e) {
                function t(e) {
                    (0, l.default)(this, t);
                    var i = (0, u.default)(this, (t.__proto__ || (0, n.default)(t)).call(this, e));
                    return i.state = {
                        show: i.canShow()
                    }, i
                }
                return (0, p.default)(t, e), (0, c.default)(t, [{
                    key: "canShow",
                    value: function() {
                        var e = ["label", "call/min", "chat/min"].indexOf(C.default.route) == -1;
                        return "call" == C.default.route && ["cw_wait", "cw_connecting", "cw_connected"].indexOf(S.default.cw_call.status) > -1 && (e = !1), e
                    }
                }, {
                    key: "componentDidMount",
                    value: function() {
                        var e = this;
                        O.log("mount");
                        var t = function() {
                            e.setState({
                                show: e.canShow()
                            })
                        };
                        this.on(C.default, t), this.on(S.default, t);
                        var i = window.parent.document;
                        j.default.attach(i.getElementById("jivo-drag-handle")), _.default.addListener(i.getElementById("jivo_close_button"), N.default.tablet() ? "touchend" : "click", this.closeWidget)
                    }
                }, {
                    key: "closeWidget",
                    value: function() {
                        if (N.default.tablet() && document.activeElement) {
                            var e = document.activeElement;
                            ("TEXTAREA" === e.tagName || "INPUT" === e.tagName && "button" !== e.type) && e.parentNode.removeChild(e)
                        }
                        T.default.closeWidget()
                    }
                }, {
                    key: "render",
                    value: function() {
                        var e = {
                                display: this.state.show ? "block" : "none",
                                height: "call" == C.default.route ? "31px !important" : "70px"
                            },
                            t = window.parent.document,
                            i = t.getElementById("jivo_action"),
                            a = t.getElementById("jivo-drag-handle");
                        return i && (i.style.display = e.display, i.style.height = e.height), a && (a.style.display = e.display, a.style.height = e.height), m.default.createElement("div", {
                            style: "display: none;"
                        }, m.default.createElement("div", {
                            dir: "ltr",
                            id: "jivo_action",
                            style: e
                        }, m.default.createElement("div", {
                            id: "jivo_close_button",
                            className: N.default.tablet() ? "jivo-tablet" : ""
                        })), m.default.createElement("div", {
                            id: "jivo-drag-handle",
                            style: e,
                            ref: "drag"
                        }))
                    }
                }]), t
            }(v.default);
        t.default = A
    }, function(e, t, i) {
        "use strict";

        function a(e) {
            return e && e.__esModule ? e : {
                default: e
            }
        }
        Object.defineProperty(t, "__esModule", {
            value: !0
        });
        var o = i(8),
            n = a(o),
            r = i(6),
            l = a(r),
            s = i(7),
            c = a(s),
            d = i(10),
            u = a(d),
            f = i(9),
            p = a(f),
            h = i(4),
            m = a(h),
            g = i(3),
            v = a(g),
            b = i(3),
            w = a(b),
            y = i(148),
            x = a(y),
            _ = i(2),
            k = a(_),
            j = i(11),
            E = a(j),
            C = i(57),
            M = a(C),
            S = i(1),
            z = i(71),
            T = a(z),
            I = i(13),
            N = a(I),
            O = i(137),
            A = a(O),
            P = i(135),
            L = a(P),
            B = i(163),
            D = a(B),
            H = i(102),
            F = a(H),
            R = i(5),
            V = a(R),
            W = i(26),
            q = a(W),
            U = i(87),
            G = a(U),
            X = V.default.name("IframeContainer"),
            Y = function(e) {
                function t() {
                    (0, l.default)(this, t);
                    var e = (0, u.default)(this, (t.__proto__ || (0, n.default)(t)).call(this));
                    return e.is_online = null, e.is_minimized = null, e.is_opened = null, e.extraSize = 0, e.currentState = null, N.default.desktop() && (document.getElementsByTagName("html")[0].style.position = "fixed"), e
                }
                return (0, p.default)(t, e), (0, c.default)(t, [{
                    key: "getContainer",
                    value: function() {
                        this.defineVariables(), this.widgetContainer ? N.default.mobile() ? this.mobileInit() : this.init() : setTimeout(this.getContainer.bind(this), 500)
                    }
                }, {
                    key: "componentDidMount",
                    value: function() {
                        this.getContainer()
                    }
                }, {
                    key: "hideContainer",
                    value: function() {
                        q.default.unblockSite(), this.widgetContainer.style.setProperty("opacity", "0", "important"), this.widgetContainer.style.setProperty("visibility", "hidden", "important"), this.widgetContainer.style.setProperty("display", "none", "important")
                    }
                }, {
                    key: "showContainer",
                    value: function() {
                        q.default.blockSite(), this.widgetContainer.style.setProperty("opacity", "1", "important"), this.widgetContainer.style.setProperty("visibility", "visible", "important"), this.widgetContainer.style.setProperty("display", "block", "important")
                    }
                }, {
                    key: "mobileInit",
                    value: function() {
                        var e = this;
                        this.widgetContainer.className = "jivo-c-mobile";
                        var t = document.getElementById("widget");
                        q.default.listenChangeZoom(function(e) {
                            t.style.setProperty("zoom", e.appZoom, "important")
                        }), this.on(E.default, function() {
                            "label" === E.default.route || "hidden" === E.default.route ? e.hideContainer() : e.showContainer()
                        }), t.style.setProperty("zoom", q.default.getAppZoom(), "important"), this.hideContainer(), this.initSoundPlayer()
                    }
                }, {
                    key: "initSoundPlayer",
                    value: function() {
                        var e = document.getElementById("player");
                        e || (e = document.createElement("div"), e.id = "player", document.body.appendChild(e)), w.default.render(v.default.createElement(D.default, null), e)
                    }
                }, {
                    key: "init",
                    value: function() {
                        var e = this;
                        (0, S.addClass)(this.widgetContainer, "jivo-iframe-container-" + k.default.widget_orientation);
                        var t = function() {
                                return 0 == E.default.route.indexOf("call") ? "call" : 0 == E.default.route.indexOf("chat") ? "chat" : "label"
                            },
                            i = function() {
                                var i = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : !e.isCustomLabel();
                                N.default.mobile() && E.default.isSeparateWindow || e._setButtonsOffline(!E.default.is_online), e.isCustomLabel() || E.default.is_custom_label ? ((0, S.addClass)(e.widgetContainer, "jivo-custom-label"), "label" == E.default.route && N.default.mobile() && (parent.document.getElementById("jivo_custom_widget").style.display = "block"), E.default.is_custom_label = !1) : (0, S.removeClass)(e.widgetContainer, "jivo-custom-label"), "top" == k.default.widget_orientation && "label" == E.default.route && (E.default.show_label_buttons || E.default.show_outer_copyright ? (e.widgetContainer.style.setProperty("top", "0px"), e.widgetContainer.style.setProperty("margin-bottom", "-130px")) : e.widgetContainer.style.setProperty("margin-bottom", "-38px")), E.default.route == e.currentState && E.default.is_online == e.is_online || (i && "top" != k.default.widget_orientation && e.widgetContainer.style.setProperty("background-color", E.default.widget_color, "important"), (E.default.show_label_buttons || E.default.show_outer_copyright) && e.widgetContainer.style.setProperty("background-color", "transparent", "important"), e.is_online = E.default.is_online, e.currentState = E.default.route, e.is_minimized = E.default.route.indexOf("/min") != -1, e.widgetContainer.style.setProperty ? "hidden" == E.default.route && e.widgetContainer.style.setProperty("display", "none", "important") : e.widgetContainer.style.display = "hidden" == E.default.route ? "none" : "block", "hidden" == E.default.route || ("label" == E.default.route ? (N.default.tablet() && e.widgetContainer.style.setProperty("min-height", null), E.default.show_label_buttons || E.default.show_outer_copyright ? e.setPositionLabel(!1) : e.setPositionLabel(i)) : (N.default.tablet() && ("chat" === E.default.route ? e.widgetContainer.style.setProperty("min-height", "300px", "important") : e.widgetContainer.style.setProperty("min-height", null)), e.setPositionChat(t(), i, e.is_minimized))))
                            };
                        this.on(E.default, function() {
                            var t = E.default.show_outer_copyright || N.default.mobileOrTablet() && !E.default.isSeparateWindow;
                            if (t && e.widgetContainer.style.setProperty("background-color", "transparent", "important"), e.extraSize != t && !N.default.mobileOrTablet()) switch (e.extraSize = t, (0, S.addClass)(e.widgetContainer, "jivo-no-transition"), k.default.widget_orientation) {
                                case "top":
                                case "bottom":
                                    e.widgetContainer.style.setProperty("height", t ? "140px" : "38px");
                                    break;
                                case "left":
                                case "right":
                                    e.widgetContainer.style.setProperty("width", t ? "250px" : "38px")
                            }
                            t ? i(!1) : setTimeout(i, 20)
                        });
                        for (var a = ["webkit", "moz", "MS", "o", ""], o = "transitionEnd", n = 0; n < a.length; n++) a[n] || (o = o.toLowerCase()), this.widgetContainer && (0, S.addListener)(this.widgetContainer, a[n] + o, m.default.debounce(function() {
                            X.log("iframe_transition_end", e.currentState), e.widgetContainer.style.backgroundColor = "transparent", (0, S.removeClass)(e.widgetContainer, "jivo-opening"), (0, S.removeClass)(e.widgetContainer, "jivo-closing"), "label" != e.currentState ? ((0, S.addClass)(e.widgetContainer, "jivo-expanded"), (0, S.removeClass)(e.widgetContainer, "jivo-collapsed")) : ((0, S.addClass)(e.widgetContainer, "jivo-collapsed"), (0, S.removeClass)(e.widgetContainer, "jivo-expanded"))
                        }, 10));
                        this.on(F.default, {
                            start: function() {
                                (0, S.addClass)(e.widgetContainer, "jivo-no-transition");
                                var t = e.widgetContainer;
                                t.style.marginLeft = 0, t.style.marginRight = 0;
                                var i = "left" === k.default.widget_orientation || "0" == k.default.widget_padding && ("bottom" === k.default.widget_orientation || "top" === k.default.widget_orientation) ? "left" : "right";
                                e.originX = parseInt(t.style[i]), e.originHeight = parseInt(t.style.height);
                                var a = (0, S.getElementPosition)(t);
                                a.minLeft = 30, a.maxLeft = a.windowWidth - a.width - a.minLeft;
                                var o = document.getElementsByClassName("popup-social"),
                                    n = document.getElementById("eula-popup");
                                o && 1 == o.length && (0, S.hasClass)(o[0], "popup-open") || n && "block" == n.style.display ? a.minHeight = 410 : a.minHeight = 300, a.height = t.offsetHeight, a.maxHeight = a.windowHeight, e.dragData = a
                            },
                            stop: function() {
                                var t = e.widgetContainer;
                                (0, S.removeClass)(t, "jivo-no-transition"), M.default.left = t.style.left, M.default.right = t.style.right, M.default.height = t.style.height, "[object HTMLDivElement]" === t.toString() && (0, S._callUserFunction)("onResizeCallback", {
                                    width: getComputedStyle(t).width,
                                    height: getComputedStyle(t).height
                                })
                            },
                            move: function(t, i, a) {
                                var o = e.widgetContainer,
                                    n = e.dragData;
                                (0, S.addClass)(o, "jivo-no-transition");
                                var r = "left" === k.default.widget_orientation || "0" == k.default.widget_padding && ("bottom" === k.default.widget_orientation || "top" === k.default.widget_orientation) ? "left" : "right";
                                "left" == r && (i = -i);
                                var l = e.originX + i;
                                l < n.minLeft ? o.style[r] = n.minLeft + "px" : l > n.maxLeft ? o.style[r] = n.maxLeft + "px" : o.style[r] = l + "px";
                                var s = e.originHeight + a;
                                (s !== n.height && s > n.minHeight || s > n.height) && ("chat" !== E.default.route && "chat/call" !== E.default.route || !E.default.is_online ? N.default.desktop() && !E.default.isSeparateWindow && (s = n.height) : T.default.update((0, S.showAd)() ? 30 : 0), e.dragData.height = s, o.style.height = s + "px")
                            }
                        }), (0, S.addListener)((0, S.getPageWindow)(), "resize", m.default.bind(function() {
                            if (!N.default.mobile() && "label" !== E.default.route && e.widgetContainer.getBoundingClientRect()) {
                                var t = (0, S.getPageWindow)(),
                                    i = t.innerWidth || t.document.documentElement.clientWidth || t.document.body.clientWidth,
                                    a = e.widgetContainer.offsetWidth,
                                    o = i - a,
                                    n = e.widgetContainer.getBoundingClientRect().left,
                                    r = "left" == k.default.widget_orientation ? "left" : "right";
                                "left" == r ? n > o && (e.widgetContainer.style.right = "auto", e.widgetContainer.style.left = o - 30 + "px") : n < 30 && (e.widgetContainer.style.left = "auto", e.widgetContainer.style.right = o - 30 + "px")
                            }
                        })), "label" == E.default.route && this._fixMargin(), window.parent.document.getElementById("jivo_copyright") && (this.widgetContainer.style.zIndex = 2147483646), N.default.svgSupportFix();
                        var r = window.parent.document.getElementById("jivo-action-container");
                        if (r && r.parentNode && r.parentNode.removeChild(r), this.initSoundPlayer(), !N.default.mobile()) {
                            var l = window.parent.document.createElement("div");
                            l.id = "jivo-action-container", l.innerHTML = "<div dir='ltr' id='jivo_action' style='display: none;'><div id='jivo_close_button' class='" + (N.default.tablet() ? "jivo-tablet" : "") + "'>" + G.default+"</div></div><div id='jivo-drag-handle' style='display: none;'></div>", this.widgetContainer.appendChild(l);
                            var s = document.createElement("div");
                            document.body.appendChild(s), w.default.render(v.default.createElement(L.default, {
                                show: this.is_opened && !this.is_minimized
                            }), s), (0, S.fixSVGaddClass)()
                        }
                        setTimeout(function() {
                            e.widgetContainer.className += " jivo_shadow jivo_rounded_corners jivo_gradient"
                        }, 100), this.isCustomLabel() ? (0, S.addClass)(this.widgetContainer, "jivo-custom-label") : k.default.callback_settings.time && (this.widgetContainer.className += " jivo-cbenabled"), E.default.show_label_buttons = !1, E.default.show_outer_copyright = !1, setTimeout(function() {
                            i(!1), e.widgetContainer.style.opacity = 1, e.widgetContainer.style.visibility = "visible"
                        }, 60)
                    }
                }, {
                    key: "componentWillUnmount",
                    value: function() {
                        this.off()
                    }
                }, {
                    key: "isCustomLabel",
                    value: function() {
                        return !!parent.document.getElementById("jivo_custom_widget")
                    }
                }, {
                    key: "_setButtonsOffline",
                    value: function(e) {
                        var t = parent.document.querySelectorAll(".jivo-online-btn", window.parent.document),
                            i = "inline-block";
                        t.length > 0 && (i = t[0].style.display || "inline-block"), e && (this._showButtons("jivo-online-btn", "none"), "none" != i && this._showButtons("jivo-offline-btn", i))
                    }
                }, {
                    key: "_showButtons",
                    value: function(e, t) {
                        var i = parent.document.querySelectorAll("." + e, window.parent.document);
                        if (i.length > 0)
                            for (var a = 0; a < i.length; a++) i[a].style.display = t
                    }
                }, {
                    key: "render",
                    value: function() {
                        return v.default.createElement(x.default, null)
                    }
                }]), t
            }(A.default);
        t.default = Y
    }, function(e, t, i) {
        "use strict";

        function a(e) {
            return e && e.__esModule ? e : {
                default: e
            }
        }
        Object.defineProperty(t, "__esModule", {
            value: !0
        });
        var o = i(21),
            n = a(o),
            r = i(8),
            l = a(r),
            s = i(6),
            c = a(s),
            d = i(7),
            u = a(d),
            f = i(10),
            p = a(f),
            h = i(9),
            m = a(h),
            g = i(3),
            v = (a(g), i(12)),
            b = a(v),
            w = i(2),
            y = a(w),
            x = i(11),
            _ = a(x),
            k = i(57),
            j = a(k),
            E = i(14),
            C = a(E),
            M = i(1),
            S = a(M),
            z = i(4),
            T = a(z),
            I = i(13),
            N = a(I),
            O = i(48),
            A = a(O),
            P = i(5),
            L = a(P),
            B = L.default.name("SetPositionIframeComponent"),
            D = N.default.mobile() ? "bottom" : y.default.widget_orientation,
            H = y.default.widget_padding,
            F = "300px",
            R = "410px",
            V = "38px",
            W = 10,
            q = 32,
            U = 111,
            G = 32,
            X = 60,
            Y = 10,
            Z = 30,
            J = 30,
            K = function(e) {
                function t() {
                    return (0, c.default)(this, t), (0, p.default)(this, (t.__proto__ || (0, l.default)(t)).apply(this, arguments))
                }
                return (0, m.default)(t, e), (0, u.default)(t, [{
                    key: "defineVariables",
                    value: function() {
                        var e = this;
                        this.widgetContainer = window.parent.document.getElementById("jivo-iframe-container"), this.innerChat = document.getElementById("inner-chat"), this.labelWidth = 0, this.labelHeight = 0;
                        var t = ["jivo-label-text", "jivo-label-copyright", "jivo-label-status", "jivo-text-container", "jivo-label-inner-text", "jivo-label"];
                        T.default.each(t, function(t) {
                            e[t] = document.getElementById(t)
                        })
                    }
                }, {
                    key: "LABEL_LEFT",
                    value: function() {
                        return {
                            width: V,
                            paddingTop: 0,
                            height: this.labelHeight + "px",
                            marginLeft: "0",
                            left: "0",
                            bottom: "0" == H ? "100%" : "50" == H ? "50%" : "20px"
                        }
                    }
                }, {
                    key: "LABEL_RIGHT",
                    value: function() {
                        return {
                            width: V,
                            paddingTop: 0,
                            height: this.labelHeight + "px",
                            marginRight: "0",
                            left: "auto",
                            right: "0",
                            bottom: "0" == H ? "100%" : "50" == H ? "50%" : "20px"
                        }
                    }
                }, {
                    key: "LABEL_TOP",
                    value: function(e) {
                        var t, i, a;
                        return "0" == H ? (t = "", i = "30px") : "50" == H ? (i = "", a = this.getMarginRight(e.width), t = y.default.widget_padding + "%") : "100" == H && (i = "", t = "30px"), {
                            top: "auto",
                            bottom: "100%",
                            marginBottom: "-" + V + "px",
                            right: t,
                            left: i,
                            height: V,
                            marginRight: a
                        }
                    }
                }, {
                    key: "LABEL_BOTTOM",
                    value: function(e) {
                        var t, i, a;
                        return "0" == H ? (t = "", i = "30px") : "50" == H ? (i = "", a = this.getMarginRight(e.width), t = y.default.widget_padding + "%") : "100" == H && (i = "", t = "30px"), {
                            right: t,
                            left: N.default.mobile() ? "0" : i,
                            paddingTop: 0,
                            marginRight: a,
                            bottom: "0px",
                            height: V
                        }
                    }
                }, {
                    key: "WINDOW_BOTTOM",
                    value: function(e, t, i) {
                        var a = {
                            width: F,
                            top: "auto",
                            bottom: "0%",
                            paddingTop: 0,
                            marginBottom: 0
                        };
                        0 == H && "right" != D && (a.left = "30px"), 50 == H && (a.marginRight = this.getMarginRight(F), a.right = y.default.widget_padding + "%"), "LEFT" == t || 0 == H && ("BOTTOM" === t || "TOP" === t) ? (a.left = j.default.left ? j.default.left : "30px", a.marginLeft = 0) : (a.right = j.default.right ? j.default.right : "30px", a.marginRight = 0);
                        window.parent.document;
                        if (!y.default.disable_iframe && A.default.isLoaded()) {
                            var o = (0, M.getScrollBarWidth)();
                            o > 0 && (0, M.hasScroll)() && _.default.chat_started && (j.default.right ? a.right = parseInt(j.default.right) + o + "px" : a.right = 30 + o + "px")
                        }
                        N.default.tablet() && (0 == H && "right" != D || "LEFT" == t) && (a.left = "45px");
                        var n = j.default.height ? j.default.height : R;
                        return e ? a.height = "call" == i ? "124px" : "54px" : this.is_online ? (("call" == i || "chat" == i && 1 === y.default.contacts_ask && !C.default.is_introduced) && (n = R, y.default.eula && "chat" == i && (n = parseInt(n) + 20 + "px")), a.height = n) : (_.default.offline_height = this.getOfflineFormHeight(), "call" == i ? a.height = R : a.height = _.default.offline_height || R), a
                    }
                }, {
                    key: "getMarginRight",
                    value: function(e) {
                        var t = parseInt(e);
                        return t < 300 && (t = 300), t / 2 * -1 + "px"
                    }
                }, {
                    key: "getOfflineFormHeight",
                    value: function() {
                        B.log("getOfflineFormHeight");
                        var e = function() {
                            var e, t = document.createElement("div");
                            return t.style.position = "absolute", t.style.fontSize = "16px", t.style.fontFamily = "Arial, sans-serif", t.style.lineHeight = "19px", t.style.whiteSpace = "pre-wrap", t.style.visibility = "hidden", t.style.width = "260px", t.innerHTML = y.default.offline_form_text, window.document.body.appendChild(t), e = t.offsetHeight + J, window.document.body.removeChild(t), e
                        }();
                        return e += U + Y, y.default.contacts_settings.email.show && (e += q + W), y.default.contacts_settings.name.show && (e += q + W), y.default.contacts_settings.phone.show && (e += q + W), e += G + 5, e += (0, M.showAd)() ? Z : Y, e += 2 * Y, e += X, e + "px"
                    }
                }, {
                    key: "setPositionLabel",
                    value: function() {
                        var e = !(arguments.length > 0 && void 0 !== arguments[0]) || arguments[0];
                        this._setPosition("label", e)
                    }
                }, {
                    key: "setPositionChat",
                    value: function(e) {
                        var t = !(arguments.length > 1 && void 0 !== arguments[1]) || arguments[1],
                            i = arguments[2];
                        this._setPosition(e, t, i)
                    }
                }, {
                    key: "_setPosition",
                    value: function() {
                        var e = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : "label",
                            t = !(arguments.length > 1 && void 0 !== arguments[1]) || arguments[1],
                            i = arguments[2];
                        B.log("_setPosition", e, t, i);
                        var a, o = this._widgetContainer = window.parent.document.getElementById("jivo-iframe-container"),
                            r = o.style,
                            l = !N.default.mobileOrTablet() && t;
                        l ? (0, M.removeClass)(o, "jivo-no-transition") : (0, M.addClass)(o, "jivo-no-transition"), "label" == e ? ((0, M.removeClass)(o, "jivo-expanded"), (0, M.removeClass)(o, "jivo-iframe-container-bottom"), (0, M.addClass)(o, "jivo-iframe-container-" + y.default.widget_orientation), (0, M.addClass)(o, "jivo-state-widget"), l ? (0, M.addClass)(o, "jivo-closing") : (0, M.addClass)(o, "jivo-collapsed"), (0, M.getPageWindow)().jivo_cstm_widget && !N.default.mobile() && ((0, M.getPageWindow)().jivo_cstm_widget.style.display = "block"), this._fixMargin(), a = this["LABEL_" + D.toUpperCase()](r), "top" == y.default.widget_orientation && (l ? a.top = "auto" : a.top = "0px")) : ((0, M.removeClass)(o, "jivo-state-widget"), l && (0, M.addClass)(o, "jivo-opening"), (0, M.addClass)(o, "jivo-expanded"), this._resetToBottom(), i || "chat/call" == _.default.route ? setTimeout(function() {
                            (0, M.getPageWindow)().jivo_cstm_widget && !N.default.mobile() && ((0, M.getPageWindow)().jivo_cstm_widget.style.display = "none")
                        }, 80) : setTimeout(function() {
                            S.default._callUserFunction("onOpen")
                        }, 60), a = this.WINDOW_BOTTOM(i, D.toUpperCase(), e)), B.log(a), (0, n.default)(r, a), (0, M._callUserFunction)("onResizeCallback", {
                            width: r.width,
                            height: r.height
                        }), N.default.mobileOrTablet() || setTimeout(function() {
                            (0, M.removeClass)(o, "jivo-no-transition")
                        }, 300)
                    }
                }, {
                    key: "_resetToBottom",
                    value: function() {
                        (0, M.removeClass)(this._widgetContainer, "jivo-iframe-container-" + y.default.widget_orientation), (0, M.addClass)(this._widgetContainer, "jivo-iframe-container-bottom")
                    }
                }, {
                    key: "_fixMargin",
                    value: function() {
                        if (!N.default.mobile()) {
                            var e = this["jivo-label-text"].offsetWidth,
                                t = (0, M.showAd)() ? this["jivo-label-copyright"].offsetWidth : 0,
                                i = (0, M.showAd)() ? this["jivo-label-copyright"].offsetHeight : 0,
                                a = this["jivo-label-status"].offsetWidth,
                                o = this["jivo-label-status"].offsetHeight,
                                r = this["jivo-text-container"],
                                l = this["jivo-label-inner-text"],
                                s = 10,
                                c = (0, M.getElementPosition)(this["jivo-label"]),
                                d = {};
                            switch (["left", "right"].indexOf(D) != -1 && (s = "en" === y.default.iconLocale ? V : 48), D) {
                                case "left":
                                case "right":
                                    l.offsetWidth < l.offsetHeight ? (r.style.width = l.offsetWidth + "px", r.style.height = l.offsetHeight + "px") : (r.style.width = l.offsetHeight + "px", r.style.height = l.offsetWidth + "px");
                                    var u = (0, M.getElementPosition)(r).height;
                                    switch (d.width = V, d.height = u + i + o + s, d.height < 76 && (d.height = 76), c = (0, M.getElementPosition)(this["jivo-label"]), y.default.widget_padding) {
                                        case "0":
                                            d.marginBottom = (this.labelHeight || c.height) * -1 - 30 + "px";
                                            break;
                                        case "50":
                                            d.marginBottom = (this.labelHeight || c.height) / 2 * -1 + "px"
                                    }
                                    break;
                                case "top":
                                    d.width = e + t + a + s + "px", d.height = V, "50" == y.default.widget_padding && (d.marginRight = c.width / 2 * -1 + "px");
                                    break;
                                case "bottom":
                                    d.width = e + t + a + s + "px", d.height = V, "50" == y.default.widget_padding && (d.marginRight = c.width / 2 * -1 + "px")
                            }
                            this.labelWidth = d.width, this.labelHeight = d.height, (0, n.default)(this.widgetContainer.style, d)
                        }
                    }
                }]), t
            }(b.default);
        t.default = K
    }, function(e, t, i) {
        "use strict";

        function a(e) {
            return e && e.__esModule ? e : {
                default: e
            }
        }
        Object.defineProperty(t, "__esModule", {
            value: !0
        });
        var o = i(24),
            n = a(o),
            r = {
                CONNECTING: 0,
                OPEN: 1,
                CLOSING: 2,
                CLOSED: 3
            },
            l = {
                1e3: "Normal Closure",
                1001: "Going away",
                1002: "Protocol error",
                1003: "Unsupported data",
                1004: "reserved",
                1005: null,
                1006: null,
                1007: "Invalid frame payload data",
                1008: "Policy violation",
                1009: "Message Too Big",
                1010: "Mandatory Ext.",
                1011: "Internal Error",
                1012: "Service Restart",
                1013: "Try Again Later",
                1014: "Unassigned",
                1015: "TLS handshake",
                3001: "Attempts have Ended",
                3333: "Spam detected",
                4e3: "Application Closure",
                4999: "Last Code"
            },
            s = 1e4,
            c = 2e4,
            d = 20,
            u = 2,
            f = 60,
            p = 2e4,
            h = 0,
            m = 1e3,
            g = function() {},
            v = function() {
                throw new Error("Not implemented")
            },
            b = function() {
                return (new Date).getTime()
            },
            w = function(e, t) {
                this.name = "NetworkError", this.code = t << 0, this.message = String(e)
            };
        w.prototype.toString = function() {
            return this.name + ":" + (this.code << 0 || "") + " " + this.message
        };
        var y, x = function e(t, i, a) {
                if (t && "function" == typeof t[i]) try {
                    t[i](a)
                } catch (a) {
                    if ("onerror" === String(i)) throw a;
                    try {
                        e(t, "onerror", a)
                    } catch (e) {}
                }
            },
            _ = {};
        if (window && ("function" == typeof window.WebSocket || "object" === (0, n.default)(window.WebSocket))) {
            var k = window.WebSocket;
            y = function(e, t) {
                var i, a, o = this;
                this.url = e, this.readyState = r.CONNECTING, this.close = function(e, t) {
                    if (this.readyState === r.CONNECTING) this.readyState = r.CLOSING, clearTimeout(a), a = setTimeout(function() {
                        o.readyState = r.CLOSED, x(o, "onclose", {
                            wasClean: !1,
                            code: 1006,
                            reason: ""
                        })
                    }, d);
                    else if (this.readyState === r.OPEN) {
                        this.readyState = r.CLOSING;
                        try {
                            t ? i.close(e, t) : e ? i.close(e) : i.close(1e3)
                        } catch (e) {
                            x(o, "onerror", e), x(o, "onclose", {
                                wasClean: !1,
                                code: 1006,
                                reason: ""
                            })
                        }
                    }
                }, this.send = function(e) {
                    if (!i || i.OPEN !== i.readyState) throw new Error("Socket is not open");
                    i.send(e)
                }, a = setTimeout(function() {
                    try {
                        i = t ? new k(e, t) : new k(e), i.onclose = function(e) {
                            if (clearTimeout(a), o.readyState = r.CLOSED, /MSIE|Trident|Edge|Lumia/.test(window.navigator.userAgent) && e.wasClean && (1e3 === e.code || 1005 === e.code) && e.reason)
                                for (var t in l)
                                    if (e.reason === l[t]) return void x(o, "onclose", {
                                        wasClean: !0,
                                        code: t << 0,
                                        reason: e.reason
                                    });
                            x(o, "onclose", e)
                        }, i.onerror = function(e) {
                            e.name || e.message || (e.name = "WebSocketError", e.message = "Unknown"), x(o, "onerror", e)
                        }, i.onmessage = function(e) {
                            x(o, "onmessage", e)
                        }, i.onopen = function(e) {
                            o.readyState = r.OPEN, o.protocol = i.protocol, x(o, "onopen", e)
                        }
                    } catch (e) {
                        x(o, "onerror", e)
                    }
                }, d)
            };
            for (var j in r) y.prototype[j] = r[j]
        }
        if (window && window.navigator) {
            if (/iP(hone|od|ad)/.test(window.navigator.platform)) {
                var E = /OS (\d+)_(\d+)_?(\d+)?/.exec(window.navigator.appVersion);
                E && 6 > E[1] && (y = v)
            }
            if (/apple/i.test(window.navigator.vendor)) {
                var E = /\bVersion\/(\d+)\./.exec(window.navigator.userAgent);
                E && 6 > E[1] && (y = v)
            }
        }
        _.ws = _.wss = y;
        var C = function e() {
            var t, i, a, o, n = window.document.getElementsByTagName("head")[0],
                r = this;
            this.withCredentials = !1, this.readyState = 0, this.responseText = "", this.status = 0, this.statusText = "", this.timeout = void 0;
            var l = function() {
                    if (t) {
                        clearTimeout(o), t.onreadystatechange = g, t.onload = g, t.onerror = g, t.parentNode.removeChild(t), t = null, i = null, a = null, r.responseText = "", r.status = 0, r.statusText = "", r.timeout = void 0, r.withCredentials = !1;
                        try {
                            delete window[a]
                        } catch (e) {
                            window[a] = void 0
                        }
                        x(r, "onloadend")
                    }
                },
                s = function() {
                    t && (x(r, "onerror"), l())
                };
            this.open = function(t, o) {
                !i && o && (r.readyState = 1, i = String(o).replace(/#.*$/, ""), a = "_jivo" + e._count++, i += (-1 === i.indexOf("?") ? "?" : "&") + "cb=" + a)
            }, this.send = function(c) {
                i && (c = c ? "&msg=" + encodeURIComponent(c) : "", window[a] = function(t) {
                    r.readyState = 4, e._statusBody.test(t) ? (r.status = e._statusBody.exec(t)[1] << 0, r.statusText = "", r.responseText = "", x(r, "onerror"), l()) : (r.status = 200, r.statusText = "OK", r.responseText = t, x(r, "onload"), l())
                }, t = document.createElement("script"), t.charset = "utf-8", t.type = "text/javascript", t.onreadystatechange = function() {
                    "complete" !== this.readyState && "loaded" !== this.readyState || setTimeout(s, 0)
                }, t.readyState || (t.onload = t.onerror = s), t.src = i + c, n.appendChild(t), r.timeout <<= 0, 0 < r.timeout && (o = setTimeout(function() {
                    x(r, "ontimeout"), l()
                }, r.timeout)))
            }, this.abort = function() {
                x(r, "onabort"), l()
            }, this.setRequestHeader = g
        };
        C._statusBody = /^(\d{3})\n$/m, C._count = 0, C.prototype = {
            UNSENT: 0,
            OPENED: 1,
            HEADERS_RECEIVED: 2,
            LOADING: 3,
            DONE: 4
        };
        var M = 3e3,
            S = function e() {
                if (e._stack.length) return e._stack.pop();
                var t;
                try {
                    t = new XMLHttpRequest, "withCredentials" in t || (t = null)
                } catch (e) {}
                return t = t || new C, t.release = function() {
                    e._stack.push(t)
                }, t
            };
        S._stack = [];
        var z = function(e) {
            for (var t, i, a, o = M, r = g, l = 1; l < arguments.length; l++)
                if (arguments[l]) switch ((0, n.default)(arguments[l])) {
                    case "object":
                        i = arguments[l];
                        break;
                    case "string":
                        a = arguments[l];
                        break;
                    case "number":
                        o = arguments[l];
                        break;
                    case "function":
                        r = arguments[l]
                }
                if ("string" != typeof e) return r(TypeError("Bad URL")), null;
            try {
                t = S(), t.open(a ? "POST" : "GET", e, !0), a && t.setRequestHeader("Content-Type", "text/plain")
            } catch (e) {
                return r(e), t.release(), null
            }
            if (o <<= 0, 0 < o) try {
                t.timeout = o
            } catch (e) {}
            if (t.onloadend = function() {
                    t.release()
                }, t.onload = function() {
                    200 === t.status ? r(null, t.responseText) : r(new w(t.statusText, t.status))
                }, t.onabort = function() {
                    r(new w("Aborted"))
                }, t.ontimeout = function() {
                    r(new w("Timeout"))
                }, t.onerror = function() {
                    r(new w("Unknown"))
                }, i)
                for (var l in i) t.setRequestHeader(l, i[l]);
            try {
                t.send(a || null)
            } catch (e) {
                return r(e), t.release(), null
            }
            return function() {
                r = g
            }
        };
        window.request = z;
        var T = 2e4,
            I = /([^\n]*)\n/gm,
            N = function(e) {
                if ("string" != typeof e) return e;
                var t, i, a = {};
                for (I.lastIndex = 0; null !== (t = I.exec(e));) {
                    if (!t[1]) {
                        a.message = e.substring(t.index + 1);
                        break
                    }
                    t = t[1].split(/\t/), i = t[0], i && (t.shift(), a[i] = t)
                }
                return a
            },
            O = function(e, t) {
                var i = /^([^\?]*)(?:\?+(.*))?$/.exec(e);
                e = i[1] || "/";
                var a = i[2] ? "&" + i[2] : "";
                /[^\/]$/.test(e) && (e += "/");
                var o, n, s, c, u = this,
                    f = g,
                    p = "open",
                    h = T,
                    m = 0;
                this.readyState = r.CONNECTING;
                var v = function(e, t, i) {
                        r.CLOSED !== u.readyState && (clearTimeout(s), u.readyState = r.CLOSED, x(u, "onclose", {
                            wasClean: !!i,
                            code: t || 1006,
                            reason: l[t] || e || ""
                        }))
                    },
                    w = function(t, i) {
                        f(), f = z(e + p + (t ? "/" + t : "") + "?" + b() + a, h, i, y)
                    },
                    y = function(e, t) {
                        var i = N(t);
                        switch (u.readyState) {
                            case r.CONNECTING:
                                if (e) {
                                    x(u, "onerror", e), v("Open error");
                                    break
                                }
                                if (!(i && i.open && i.open[0])) {
                                    v("No response in state open");
                                    break
                                }
                                p = i.open[0], u.protocol = i.open[1], u.readyState = r.OPEN, x(u, "onopen");
                            case r.OPEN:
                                var a = "";
                                if (i) {
                                    if (i.timeout && 0 < i.timeout[0] && (h = Math.ceil(i.timeout[0])), i.etag && i.etag[0]) {
                                        var l = i.etag[0] << 0,
                                            s = l - m;
                                        m = l, 0 < s && (1 !== s && x(u, "onerror", new Error("Missing " + s + " etags")), i.message && setTimeout(function() {
                                            x(u, "onmessage", {
                                                data: i.message
                                            })
                                        }, d)), a = "etag/" + l
                                    }
                                    i.close && (u.readyState = r.CLOSING, a = "close/" + (i.close[0] || "") + "/" + (i.close[1] || ""))
                                } else if (e && 204 !== e.code && (x(u, "onerror", e), !e.code || 404 === e.code)) return void v();
                                w(a);
                                break;
                            case r.CLOSING:
                                if (i && i.close) {
                                    var c = i.close[0] << 0;
                                    v(i.close[1], c, !o || o === c);
                                } else v(n, o, !1);
                                break;
                            case r.CLOSED:
                        }
                    };
                this.close = function(e, t) {
                    r.CONNECTING === this.readyState ? (clearTimeout(c), f(), s = setTimeout(v, d)) : r.OPEN === this.readyState && (o = e << 0 || 1e3, n = t || "", this.readyState = r.CLOSING, w("close/" + o + "/" + n))
                }, this.send = function(e) {
                    if (r.OPEN !== this.readyState) throw new Error("Socket is not open");
                    if (!e || "string" != typeof e) throw new TypeError("Bad data type");
                    w("send", e)
                };
                var _ = [];
                if (t)
                    if ("string" == typeof t) _.push(t);
                    else if (t instanceof Array)
                    for (var k = 0; k < t.length; k++) _.push(String(t[k]));
                c = setTimeout(function() {
                    w(_.join("/"))
                }, d)
            };
        for (var j in r) O.prototype[j] = r[j];
        _.http = _.https = O;
        var A = /^\s*(?:([^\;\/\?\:\@\&\=\+\$\,\#\n\r\s]{1,8})\:\/\/)([^\s\n\r]+)\s*$/,
            P = function e(t, i) {
                if (i || (i = [], i.index = 0, i.add = function(e) {
                        i.unshift({
                            value: String(e),
                            health: h
                        }), i.index = 0
                    }), t)
                    if ("string" == typeof t || t instanceof String) i.push({
                        value: String(t),
                        health: h
                    });
                    else if (0 < t.length)
                    for (var a = 0; a < t.length; a++) e(t[a], i);
                return i
            },
            L = function(e) {
                if ("string" != typeof e) throw new TypeError("Bad URL type");
                var t = A.exec(e);
                if (null === t) throw new Error("Bad URL");
                if (!_[t[1]]) throw new Error("Not supported URL scheme: " + t[1]);
                return new _[t[1]](e)
            },
            B = function(e, t, i) {
                var a = e[t] = i;
                return function(i) {
                    return arguments.length && (a = e[t] = i), a
                }
            },
            D = function(e, t) {
                var i, a = 1e3,
                    o = function o() {
                        e && 0 <= e.health && (t(++e.health), a <<= 1, i = setTimeout(o, a))
                    };
                return i = setTimeout(o, a),
                    function() {
                        clearTimeout(i)
                    }
            },
            H = function() {
                var e = 0;
                return setInterval(function() {
                        0 < e && (e -= u, 0 <= e || (e = 0))
                    }, 1e3),
                    function() {
                        return f < ++e
                    }
            }(),
            F = function(e) {
                var t = P(e),
                    i = null,
                    a = g,
                    o = {
                        connecting: g,
                        open: g,
                        close: g,
                        error: g,
                        message: g
                    },
                    d = B(this, "state", r.CLOSED),
                    u = B(this, "url", void 0),
                    f = B(this, "health", void 0),
                    v = function e(t, i) {
                        clearTimeout(e.value), t && (e.value = setTimeout(t, i))
                    },
                    b = function e() {
                        try {
                            i.send(".")
                        } catch (e) {}
                        v(e, p)
                    },
                    w = function(e) {
                        a(), a = g, v(), d(r.CLOSED);
                        try {
                            o.close(e)
                        } catch (e) {
                            _(e)
                        }
                        u(void 0), f(void 0)
                    },
                    y = function() {
                        if (H()) {
                            if (a(), a = g, i) {
                                i.onclose = null, i.onerror = null, i.onmessage = null, i.onopen = null, i.close(3333), i = null;
                                for (var e = 0; e < t.length; e++) t[e].health = -1
                            }
                            return !0
                        }
                        return !1
                    },
                    x = function(e) {
                        if (a(), a = g, v(), e || (e = {
                                wasClean: !1,
                                code: 1005,
                                reason: "No Status Rcvd"
                            }), e.wasClean || f(--t[t.index].health), 1012 === e.code) {
                            d(r.CONNECTING);
                            try {
                                o.connecting(t[t.index].health)
                            } finally {
                                return v(C, s + (Math.random() * c << 0))
                            }
                        } else 1005 === e.code || 1e3 === e.code || 4e3 <= e.code && 5e3 > e.code ? w(e) : C()
                    },
                    _ = function(e) {
                        try {
                            o.error(e)
                        } catch (e) {
                            throw e
                        }
                    },
                    k = function(e) {
                        if (r.OPEN === d()) {
                            try {
                                1 < e.data.length && o.message(e.data)
                            } catch (e) {
                                _(e)
                            }
                            /^ws/i.test(i.url) && v(b, p)
                        }
                    },
                    j = function() {
                        /^ws/i.test(i.url) ? v(b, p) : v(), d(r.OPEN), a = D(t[t.index], f);
                        try {
                            o.open()
                        } catch (e) {
                            _(e)
                        }
                    },
                    E = function() {
                        var e = t[t.index];
                        try {
                            i = L(e.value)
                        } catch (i) {
                            return e.health = -1, ++t.index, _(i), C()
                        }
                        i.onclose = x, i.onerror = _, i.onmessage = k, i.onopen = j
                    },
                    C = function e(a) {
                        if (v(), t.index >= t.length) u(void 0), f(void 0), w({
                            wasClean: !1,
                            code: 3001,
                            reason: l[3001]
                        });
                        else if (0 > t[t.index].health) _(new Error("Sick URL")), ++t.index, e();
                        else {
                            if (i) {
                                i.onclose = null, i.onerror = null, i.onmessage = null, i.onopen = null;
                                try {
                                    i.close()
                                } catch (e) {}
                            }
                            d(r.CONNECTING);
                            var n = t[t.index];
                            u() !== n.value && (u(n.value), f(n.health));
                            try {
                                o.connecting(n.health)
                            } catch (e) {}
                            a || h === t[t.index].health ? E() : v(E, m)
                        }
                    };
                this.open = function(e) {
                    if (y()) return w({
                        wasClean: !1,
                        code: 3333,
                        reason: l[3333]
                    });
                    if (r.CONNECTING !== d() && r.OPEN !== d()) {
                        if (e) {
                            e = String(e);
                            for (var i = 0; i < t.length; i++)
                                if (e === t[i].value) return t.index = i, C(!0);
                            t.add(e)
                        }
                        C(!0)
                    }
                }, this.close = function(e, t) {
                    v(), r.CLOSING !== d() && r.CLOSED !== d() && (!i || i.CONNECTING !== i.readyState && i.OPEN !== i.readyState ? w({
                        wasClean: !1,
                        code: 1011,
                        reason: l[1011]
                    }) : (e <<= 0, 4e3 > e || 5e3 <= e ? i.close() : t ? i.close(e, String(t)) : i.close(e), i.onclose = w, d(r.CLOSING)))
                }, this.send = function(e) {
                    if (r.OPEN !== d()) return new Error("Connection is not open");
                    if (y()) return w({
                        wasClean: !1,
                        code: 3333,
                        reason: l[3333]
                    }), new Error("Spam detected");
                    try {
                        i.send(e)
                    } catch (e) {
                        return e
                    }
                    return null
                };
                var M = function(e, t) {
                    return function() {
                        t.apply(e, arguments)
                    }
                };
                this.on = function(e, t) {
                    if (e && "object" === ("undefined" == typeof e ? "undefined" : (0, n.default)(e)))
                        for (var i in e) this.on(i, M(e, e[i]));
                    else o[e] && "function" == typeof t && (o[e] = t)
                }, this.off = function() {
                    for (var e in o) o[e] = g
                }, this.getHealthyURLs = function() {
                    for (var e = [], i = 0; i < t.length; i++) 0 <= t[i].health && e.push(t[i]);
                    e.sort(function(e, t) {
                        return t.health - e.health
                    });
                    for (var i = 0; i < e.length; i++) e[i] = e[i].value;
                    return e
                }
            };
        F.prototype = {
            valueOf: function() {
                return this.toString()
            },
            toString: function() {
                return r.OPEN === this.state ? this.url : ""
            },
            toJSON: function(e) {
                switch (e) {
                    case "url":
                        return '"' + this.url + '"';
                    case "state":
                        return this.state;
                    case "health":
                        return this.health
                }
                return arguments.length ? "" : '{"state":' + this.state + ', "health":' + this.health + ', "url":"' + this.url + '"}'
            }
        };
        for (var j in r) F.prototype[j] = r[j];
        window.Connection = F, t.default = F
    }, function(e, t, i) {
        "use strict";

        function a(e) {
            return e && e.__esModule ? e : {
                default: e
            }
        }
        Object.defineProperty(t, "__esModule", {
            value: !0
        });
        var o = i(8),
            n = a(o),
            r = i(6),
            l = a(r),
            s = i(7),
            c = a(s),
            d = i(10),
            u = a(d),
            f = i(9),
            p = a(f),
            h = i(3),
            m = a(h),
            g = i(12),
            v = a(g),
            b = i(5),
            w = a(b),
            y = i(2),
            x = a(y),
            _ = i(28),
            k = a(_),
            j = i(1),
            E = a(j),
            C = i(16),
            M = a(C),
            S = i(13),
            z = a(S),
            T = (w.default.name("Copyright"), function(e) {
                function t() {
                    return (0, l.default)(this, t), (0, u.default)(this, (t.__proto__ || (0, n.default)(t)).apply(this, arguments))
                }
                return (0, p.default)(t, e), (0, c.default)(t, [{
                    key: "mouseOver",
                    value: function() {
                        M.default.showOuterCopyright(!0)
                    }
                }, {
                    key: "mouseOut",
                    value: function() {
                        M.default.showOuterCopyright(!1)
                    }
                }, {
                    key: "setViewBox",
                    value: function() {
                        z.default.mobile() && this.refs.inner.childNodes[0].childNodes[0].setAttribute("viewBox", "0 0 5 36")
                    }
                }, {
                    key: "componentDidUpdate",
                    value: function() {
                        this.setViewBox()
                    }
                }, {
                    key: "componentDidMount",
                    value: function() {
                        this.setViewBox()
                    }
                }, {
                    key: "render",
                    value: function() {
                        var e = this.props,
                            t = e.theme,
                            i = e.locale,
                            a = e.online,
                            o = a ? "online" : "offline";
                        return m.default.createElement("div", {
                            id: "jivo-label-copyright",
                            style: {
                                display: E.default.showAd() ? "block" : "none"
                            },
                            className: "jivo-" + t + " jivo-" + i + " " + o
                        }, m.default.createElement("div", {
                            className: "hover-box",
                            onMouseOver: this.mouseOver.bind(this),
                            onMouseOut: this.mouseOut.bind(this)
                        }), m.default.createElement("div", {
                            className: "inner",
                            ref: "inner"
                        }, "ru_RU" === x.default.locale ? m.default.createElement(k.default, {
                            src: "logo_jivosite.svg"
                        }) : m.default.createElement(k.default, {
                            src: "logo_jivochat.svg"
                        })), m.default.createElement("div", {
                            className: "fallback"
                        }))
                    }
                }]), t
            }(v.default));
        t.default = T
    }, function(e, t, i) {
        "use strict";

        function a(e) {
            return e && e.__esModule ? e : {
                default: e
            }
        }
        Object.defineProperty(t, "__esModule", {
            value: !0
        });
        var o = i(8),
            n = a(o),
            r = i(6),
            l = a(r),
            s = i(7),
            c = a(s),
            d = i(10),
            u = a(d),
            f = i(9),
            p = a(f),
            h = i(3),
            m = a(h),
            g = i(12),
            v = a(g),
            b = i(4),
            w = (a(b), i(139)),
            y = a(w),
            x = i(64),
            _ = a(x),
            k = i(2),
            j = a(k),
            E = i(13),
            C = a(E),
            M = i(1),
            S = i(49),
            z = a(S),
            T = i(5),
            I = a(T),
            N = i(11),
            O = a(N),
            A = i(18),
            P = (a(A), i(16)),
            L = a(P),
            B = i(43),
            D = (a(B), i(15)),
            H = a(D),
            F = i(32),
            R = a(F),
            V = I.default.name("Label"),
            W = C.default.mobile() || C.default.tablet();
        i(298), i(297);
        var q = function(e) {
            function t() {
                (0, l.default)(this, t);
                var e = (0, u.default)(this, (t.__proto__ || (0, n.default)(t)).call(this));
                return C.default.mobile() && (j.default.online_widget_label = (0, H.default)("defOnlineWidgetLabelMobile") || j.default.online_widget_label, j.default.offline_widget_label = (0, H.default)("defOfflineWidgetLabelMobile") || j.default.offline_widget_label, j.default.widget_padding = 100, j.default.widget_orientation = "bottom"), e.state = {
                    online: O.default.is_online,
                    hover: !1
                }, e
            }
            return (0, p.default)(t, e), (0, c.default)(t, [{
                key: "componentDidMount",
                value: function() {
                    var e = this;
                    this.on(O.default, function() {
                        e.setState({
                            online: O.default.is_online
                        })
                    }), C.default.tablet() && z.default.tabletInit(), this.renderCheckIframe()
                }
            }, {
                key: "renderCheckIframe",
                value: function() {
                    var e = (0, M.checkSocial)();
                    if (e) {
                        var t = (0, M.genSocialIframeUrl)(e) + "#rand=" + (new Date).getMilliseconds() + ",lang=" + j.default.locale,
                            i = document.createElement("iframe");
                        i.src = t, i.width = 0, i.height = 0, i.border = 0, setTimeout(function() {
                            document.body.appendChild(i)
                        }, 50)
                    }
                }
            }, {
                key: "componentWillUnmount",
                value: function() {
                    this.off()
                }
            }, {
                key: "mouseOver",
                value: function() {
                    W || (this.setState({
                        hover: !0
                    }), V.log("mouseOver"), L.default.showLabelButtons(!0))
                }
            }, {
                key: "mouseOut",
                value: function() {
                    W || (this.setState({
                        hover: !1
                    }), V.log("mouseOut"), L.default.showLabelButtons(!1))
                }
            }, {
                key: "showChat",
                value: function(e) {
                    W && (O.default.isSeparateWindow = !0), O.default.is_focused = 1, L.default.navigate("chat"), this.state.online ? R.default.trackChatOpenedByClick() : R.default.trackOfflineFormOpenedByClick()
                }
            }, {
                key: "render",
                value: function() {
                    var e = {
                            backgroundColor: O.default.widget_color
                        },
                        t = this.state.online ? "online" : "offline";
                    ["left", "right"].indexOf(j.default.widget_orientation) != -1 ? e.width = j.default.widget_height : e.height = j.default.widget_height, !C.default.mobile() || O.default.isSeparateWindow || j.default.ignore_viewport || (e.right = "auto", e.opacity = 1, e.width = "auto", e.left = "0"), O.default.zoom && (e.zoom = O.default.zoom);
                    var i = "container-with-leaf jivo-fixed-" + j.default.widget_orientation + " jivo-" + t;
                    return C.default.mobile() || (i += " jivo-animate"), m.default.createElement("div", {
                        id: "jivo_chat_widget_online"
                    }, m.default.createElement("div", {
                        id: "jivo-label",
                        style: e,
                        onClick: this.showChat.bind(this),
                        className: i
                    }, m.default.createElement(_.default, {
                        state: "label"
                    }), this.renderWrapper()))
                }
            }, {
                key: "renderWrapper",
                value: function() {
                    var e = this,
                        t = "dark" == O.default.widget_font_color,
                        i = this.state.online ? "online" : "offline",
                        a = {
                            fontSize: j.default.font_size + "px",
                            fontFamily: j.default.font_family + ", Arial",
                            color: (0, M.getTextColor)(t)
                        },
                        o = {
                            fontWeight: ["bold", "bold italic"].indexOf(j.default.font_type) != -1 ? "bold" : "normal",
                            fontStyle: j.default.font_type.indexOf("italic") != -1 ? "italic" : "normal",
                            fontSize: j.default.font_size + "px"
                        },
                        n = this.state.online ? j.default.online_widget_label : j.default.offline_widget_label,
                        r = function() {
                            return m.default.createElement("div", {
                                id: "jivo-label-text",
                                style: o,
                                className: "jivo-" + (1 == O.default.is_online ? "online" : "offline") + " jivo-" + j.default.locale,
                                onMouseOver: e.mouseOver.bind(e),
                                onMouseOut: e.mouseOut.bind(e)
                            }, m.default.createElement("div", {
                                id: "jivo-text-container"
                            }, m.default.createElement("div", {
                                id: "jivo-label-inner-text"
                            }, n)))
                        },
                        l = function() {
                            return m.default.createElement("div", {
                                id: "jivo-label-status",
                                onMouseOver: e.mouseOver.bind(e),
                                onMouseOut: e.mouseOut.bind(e),
                                className: "jivo-" + i + " jivo-" + (t ? "dark" : "light")
                            })
                        },
                        s = function() {
                            var t = {
                                theme: O.default.widget_font_color,
                                locale: j.default.locale,
                                online: e.state.online
                            };
                            return m.default.createElement(y.default, t)
                        },
                        c = function() {
                            return m.default.createElement("div", {
                                style: {
                                    width: "100%"
                                }
                            }, (0, M.showAd)() && s(), r(), l())
                        };
                    return ["left", "right"].indexOf(j.default.widget_orientation) != -1 ? a.width = j.default.widget_height : a.height = j.default.widget_height, "bottom" === j.default.widget_orientation && (c = function() {
                        return m.default.createElement("div", {
                            style: {
                                width: "100%",
                                height: "100%"
                            }
                        }, l(), r(), (0, M.showAd)() && s())
                    }), m.default.createElement("div", {
                        id: "jivo-label-wrapper",
                        style: a
                    }, c())
                }
            }]), t
        }(v.default);
        t.default = q
    }, function(e, t, i) {
        "use strict";

        function a(e) {
            return e && e.__esModule ? e : {
                default: e
            }
        }
        Object.defineProperty(t, "__esModule", {
            value: !0
        });
        var o = i(22),
            n = a(o),
            r = i(8),
            l = a(r),
            s = i(6),
            c = a(s),
            d = i(7),
            u = a(d),
            f = i(10),
            p = a(f),
            h = i(9),
            m = a(h),
            g = i(3),
            v = a(g),
            b = i(12),
            w = a(b),
            y = i(246),
            x = a(y),
            _ = i(11),
            k = a(_),
            j = i(14),
            E = a(j),
            C = i(16),
            M = a(C),
            S = i(2),
            z = a(S),
            T = i(35),
            I = a(T),
            N = i(1),
            O = function(e) {
                function t(e) {
                    (0, c.default)(this, t);
                    var i = (0, p.default)(this, (t.__proto__ || (0, l.default)(t)).call(this, e));
                    return i.state = {
                        isShow: i.getShowState()
                    }, i.on(k.default, function() {
                        i.setState({
                            isShow: i.getShowState()
                        })
                    }), i.on(E.default, function() {
                        i.setState({
                            isShow: i.getShowState()
                        })
                    }), i
                }
                return (0, m.default)(t, e), (0, u.default)(t, [{
                    key: "openCallback",
                    value: function() {
                        k.default.callText = null, M.default.navigate("call"), (0, N.telemetry)("cw_button_click")
                    }
                }, {
                    key: "getShowState",
                    value: function() {
                        return "label" === k.default.route && E.default.cw_call_enabled && !window.parent.jivo_cobrowse && "col_old_page" !== window.parent.name
                    }
                }, {
                    key: "getRenderData",
                    value: function() {
                        return {
                            styles: {
                                wrap: [{
                                    wrap: !0,
                                    _show: this.state.isShow
                                }, {
                                    backgroundColor: z.default.callback_btn_color || "#44BB6E"
                                }],
                                button: [{
                                    button: !0
                                }, {
                                    color: z.default.callback_btn_color || "#44BB6E"
                                }],
                                iconWrap: [{
                                    iconWrap: !0
                                }],
                                logoCallback: [{
                                    logoCallback: !0
                                }]
                            },
                            style: x.default
                        }
                    }
                }, {
                    key: "renderData",
                    value: function(e, t) {
                        return v.default.createElement("jdiv", (0, n.default)({}, t.wrap, {
                            onClick: this.openCallback.bind(this)
                        }), v.default.createElement("jdiv", t.button), v.default.createElement("jdiv", t.iconWrap, v.default.createElement(I.default, (0, n.default)({
                            iconName: "callback-btn"
                        }, t.logoCallback))))
                    }
                }]), t
            }(w.default);
        t.default = O
    }, function(e, t, i) {
        "use strict";

        function a(e) {
            return e && e.__esModule ? e : {
                default: e
            }
        }
        Object.defineProperty(t, "__esModule", {
            value: !0
        });
        var o = i(22),
            n = a(o),
            r = i(8),
            l = a(r),
            s = i(6),
            c = a(s),
            d = i(7),
            u = a(d),
            f = i(10),
            p = a(f),
            h = i(9),
            m = a(h),
            g = i(3),
            v = a(g),
            b = i(12),
            w = a(b),
            y = i(247),
            x = a(y),
            _ = i(5),
            k = a(_),
            j = i(2),
            E = a(j),
            C = i(15),
            M = a(C),
            S = i(1),
            z = i(11),
            T = a(z),
            I = i(14),
            N = a(I),
            O = i(16),
            A = a(O),
            P = i(4),
            L = (a(P), k.default.name("LabelButtons")),
            B = function(e) {
                function t(e) {
                    (0, c.default)(this, t);
                    var i = (0, p.default)(this, (t.__proto__ || (0, l.default)(t)).call(this, e));
                    return i.state = {
                        show: !1,
                        hover: !1,
                        enabled: !1,
                        callback: !1,
                        vk: !1,
                        fb: !1
                    }, i
                }
                return (0, m.default)(t, e), (0, u.default)(t, [{
                    key: "componentDidMount",
                    value: function() {
                        var e = this;
                        L.log("mounted"), this.on(T.default, function() {
                            "label" != T.default.route ? e.hide() : e.state.enabled && T.default.show_label_buttons ? e.show() : e.hide()
                        }), this.on(N.default, function() {
                            N.default.cw_call_enabled ? e.setState({
                                callback: !0,
                                enabled: !0
                            }) : e.setState({
                                callback: !1,
                                enabled: !(!e.state.vk && !e.state.fb)
                            })
                        }), this.init()
                    }
                }, {
                    key: "init",
                    value: function() {
                        var e = this;
                        if (E.default.callback_settings.time && this.setState({
                                callback: !0
                            }), E.default.joint) {
                            var t = {
                                vk: !!E.default.joint.vk,
                                fb: !!E.default.joint.fb
                            };
                            (0, S.addListener)(window, "message", function(i) {
                                if (!i) return void L.log("postMessage from social failed: ", i);
                                if (L.log(i.data), i.data && i.data.social) {
                                    var a = i.data.social;
                                    a.vk && (t.vk = !0, t.fb = !1, t.enabled = !0), a.fb && (t.fb = !0, t.vk = !1, t.enabled = !0), a.fb || a.vk || (t.vk = !1, t.fb = !1), A.default.setSocial({
                                        vk: t.vk,
                                        fb: t.fb
                                    }), e.setState(t)
                                }
                            }, !1)
                        }
                    }
                }, {
                    key: "mouseOver",
                    value: function() {
                        this.state.enabled && !T.default.show_label_buttons && A.default.showLabelButtons(!0)
                    }
                }, {
                    key: "mouseOut",
                    value: function() {
                        this.state.enabled && T.default.show_label_buttons && A.default.showLabelButtons(!1)
                    }
                }, {
                    key: "checkLabelHeight",
                    value: function() {
                        var e = document.getElementById("jivo-label-wrapper").offsetHeight,
                            t = this.refs.lbuttons.offsetHeight;
                        return e < t
                    }
                }, {
                    key: "hide",
                    value: function() {
                        this.setState({
                            show: !1
                        })
                    }
                }, {
                    key: "show",
                    value: function() {
                        if (this.setState({
                                show: !0
                            }), this.refs.corner && ["right", "left"].indexOf(E.default.widget_orientation) >= 0 && "0" == E.default.widget_padding) {
                            var e = document.getElementById("jivo-label-wrapper").offsetHeight;
                            this.refs.lbuttons.offsetHeight;
                            this.checkLabelHeight() && (this.refs.corner.style.top = e - 10 + "px")
                        }
                    }
                }, {
                    key: "openChat",
                    value: function() {
                        T.default.is_focused = 1, A.default.navigate("chat"), (0, S.telemetry)("label_buttons_chat")
                    }
                }, {
                    key: "openCallForm",
                    value: function() {
                        T.default.callText = null, A.default.navigate("call"), (0, S.telemetry)("label_buttons_call")
                    }
                }, {
                    key: "calculatePosition",
                    value: function() {
                        var e = {
                                bottom: "48px",
                                left: "0px"
                            },
                            t = document.getElementById("jivo-chat");
                        t && t.offsetHeight < 90 && (e.bottom = "0px");
                        var i = [{
                            buttonsCorner: !0
                        }, {
                            bottom: "auto"
                        }];
                        switch (i[0][E.default.widget_orientation + "Corner"] = !0, e.display = this.state.show ? "block" : "none", E.default.widget_orientation) {
                            case "top":
                                e.top = "60px", e.bottom = "auto";
                                break;
                            case "left":
                            case "right":
                                e[E.default.widget_orientation] = "60px", "left" == E.default.widget_orientation ? e.right = "auto" : e.left = "auto", e.bottom = "0px", "0" == E.default.widget_padding && (this.state.callback && (this.state.vk || this.state.fb) && this.checkLabelHeight() ? (e.top = "0px", e.bottom = "auto") : (e.top = "auto", e.bottom = "0px", i.top = "0px", i.bottom = "auto"));
                                break;
                            case "bottom":
                                e.top = "auto", e.bottom = "60px"
                        }
                        return {
                            buttonsStyle: e,
                            buttonsCorner: i
                        }
                    }
                }, {
                    key: "socialClick",
                    value: function(e) {
                        L.log("socialClick"), (0, S.telemetry)("label_buttons_" + e.target.getAttribute("data-type"))
                    }
                }, {
                    key: "getRenderData",
                    value: function() {
                        var e = this.calculatePosition(),
                            t = void 0,
                            i = void 0;
                        e && (t = e.buttonsStyle, i = e.buttonsCorner);
                        var a = [{
                                jivoLabelButtons: !0
                            }, t],
                            o = [{
                                text: !0,
                                chat: !0
                            }];
                        return a[0]["_" + E.default.widget_orientation] = !0, {
                            styles: {
                                wrap: a,
                                textVk: [{
                                    text: !0,
                                    labelVk: !0
                                }],
                                textFb: [{
                                    text: !0,
                                    labelFb: !0
                                }],
                                textCall: [{
                                    text: !0,
                                    callme: !0
                                }],
                                textChat: o,
                                buttonsCorner: i
                            },
                            style: x.default
                        }
                    }
                }, {
                    key: "renderData",
                    value: function(e, t) {
                        return v.default.createElement("jdiv", (0, n.default)({}, t.wrap, {
                            id: "jivo-label-buttons",
                            onMouseOver: this.mouseOver.bind(this),
                            onMouseOut: this.mouseOut.bind(this),
                            ref: "lbuttons"
                        }), this.state.vk && v.default.createElement("jdiv", {
                            className: x.default.labelButton
                        }, v.default.createElement("a", (0, n.default)({}, t.textVk, {
                            onClick: this.socialClick.bind(this),
                            target: "_blank",
                            "data-type": "vk",
                            href: "https://vk.com/im?sel=-" + E.default.joint.vk.joint_id
                        }), v.default.createElement("jdiv", {
                            className: x.default.title
                        }, (0, M.default)("label_vk_text")), 1 == T.default.is_online && v.default.createElement("jdiv", {
                            className: x.default.info
                        }, (0, M.default)("social_text_" + (E.default.social_responce || 1))))), this.state.fb && v.default.createElement("jdiv", {
                            className: x.default.labelButton
                        }, v.default.createElement("a", (0, n.default)({}, t.textFb, {
                            onClick: this.socialClick.bind(this),
                            target: "_blank",
                            "data-type": "fb",
                            href: "https://www.facebook.com/messages/t/" + E.default.joint.fb.joint_id
                        }), v.default.createElement("jdiv", {
                            className: x.default.title
                        }, (0, M.default)("label_fb_text")), 1 == T.default.is_online && v.default.createElement("jdiv", {
                            className: x.default.info
                        }, (0, M.default)("social_text_" + (E.default.social_responce || 1))))), this.state.callback && v.default.createElement("jdiv", {
                            className: x.default.labelButton
                        }, v.default.createElement("jdiv", (0, n.default)({}, t.textCall, {
                            onClick: this.openCallForm.bind(this),
                            id: "jivo-show-callme-text"
                        }), v.default.createElement("jdiv", {
                            className: x.default.title
                        }, (0, M.default)("cw_callAfter"), " ", E.default.callback_settings.time, "�", (0, S.getTextSeconds)(E.default.callback_settings.time), "!"))), v.default.createElement("jdiv", {
                            className: x.default.labelButton
                        }, v.default.createElement("jdiv", (0, n.default)({}, t.textChat, {
                            onClick: this.openChat.bind(this),
                            id: "jivo-show-chat-text"
                        }), v.default.createElement("jdiv", {
                            className: x.default.title
                        }, "online" == E.default.chat_mode ? (0, M.default)("cw_typeInChat") : (0, M.default)("lblLeaveMessage")))), v.default.createElement("jdiv", (0, n.default)({}, t.buttonsCorner, {
                            id: "jivo-label-buttons-corner",
                            ref: "corner"
                        })))
                    }
                }]), t
            }(w.default);
        t.default = B
    }, function(e, t, i) {
        "use strict";

        function a(e) {
            return e && e.__esModule ? e : {
                default: e
            }
        }
        Object.defineProperty(t, "__esModule", {
            value: !0
        });
        var o = i(8),
            n = a(o),
            r = i(6),
            l = a(r),
            s = i(7),
            c = a(s),
            d = i(10),
            u = a(d),
            f = i(9),
            p = a(f),
            h = i(3),
            m = a(h),
            g = i(12),
            v = a(g),
            b = i(248),
            w = a(b),
            y = i(144),
            x = a(y),
            _ = i(145),
            k = a(_),
            j = i(13),
            E = a(j),
            C = i(11),
            M = a(C),
            S = i(1),
            z = a(S),
            T = i(26),
            I = a(T),
            N = i(4),
            O = a(N),
            A = function(e) {
                function t(e) {
                    (0, l.default)(this, t);
                    var i = (0, u.default)(this, (t.__proto__ || (0, n.default)(t)).call(this, e));
                    i.showState = !1, i.viewportChangeFn = O.default.throttle(function() {
                        i.getCoordinats()
                    }, 200);
                    var a = I.default,
                        o = a.window.getComputedStyle(a.bodyEl).position;
                    return i.bodyTopOffset = "static" === o ? 0 : a.bodyEl.getBoundingClientRect().top - a.documentEl.getBoundingClientRect().top, i.getCoordinats(!0), i
                }
                return (0, p.default)(t, e), (0, c.default)(t, [{
                    key: "getCoordinats",
                    value: function(e) {
                        var t = I.default,
                            i = t.getAppZoom(),
                            a = t.getPageZoom(),
                            o = t.window.innerWidth,
                            n = t.window.innerHeight;
                        o = i >= 1 ? o / i : o * a, n = i >= 1 ? n / i : n * a;
                        var r = (i >= 1 ? t.window.pageYOffset / i : t.window.pageYOffset * a) - this.bodyTopOffset,
                            l = i >= 1 ? t.window.pageXOffset / i : t.window.pageXOffset * a;
                        l -= t.window.innerWidth * a, this.setState({
                            width: o,
                            height: n,
                            top: r,
                            left: l,
                            appZoom: i,
                            zIndex: this.showState ? 2147483647 : null
                        }), !e && setTimeout(this.getCoordinats.bind(this, !0), 50)
                    }
                }, {
                    key: "componentDidMount",
                    value: function() {
                        var e = this;
                        this.on(M.default, function() {
                            M.default.isShowNativeMobileMenu ? (e.showContainer(), e.refs.menu.show()) : e.hideContainer()
                        })
                    }
                }, {
                    key: "showContainer",
                    value: function() {
                        this.showState = !0, this.getCoordinats(!0), I.default.blockScroll();
                        var e = z.default.getPageWindow();
                        z.default.addListener(e, "orientationchange", this.viewportChangeFn), z.default.addListener(e, "scroll", this.viewportChangeFn), z.default.addListener(e, "resize", this.viewportChangeFn)
                    }
                }, {
                    key: "hideContainer",
                    value: function() {
                        var e = this;
                        I.default.unblockScroll(), setTimeout(function() {
                            e.setState({
                                left: "-125%",
                                top: "-100%",
                                zIndex: null
                            })
                        }, 300);
                        var t = z.default.getPageWindow();
                        z.default.removeEvent(t, "orientationchange", this.viewportChangeFn), z.default.removeEvent(t, "scroll", this.viewportChangeFn), z.default.removeEvent(t, "resize", this.viewportChangeFn), this.showState = !1
                    }
                }, {
                    key: "getRenderData",
                    value: function() {
                        return {
                            data: {},
                            styles: {
                                container: [{
                                    container: !0
                                }, {
                                    width: this.state.width,
                                    height: this.state.height,
                                    top: this.state.top,
                                    left: this.state.left,
                                    zoom: this.state.appZoom,
                                    zIndex: this.state.zIndex,
                                    "-webkit-text-size-adjust": E.default.ios() ? I.default.getTextSize() : null
                                }]
                            },
                            style: w.default
                        }
                    }
                }, {
                    key: "renderData",
                    value: function(e, t) {
                        return m.default.createElement("jdiv", t.container, E.default.ios() && m.default.createElement(k.default, {
                            hideOnRender: !0,
                            ref: "menu"
                        }), !E.default.ios() && m.default.createElement(x.default, {
                            hideOnRender: !0,
                            ref: "menu"
                        }))
                    }
                }]), t
            }(v.default);
        t.default = A
    }, function(e, t, i) {
        "use strict";

        function a(e) {
            return e && e.__esModule ? e : {
                default: e
            }
        }
        Object.defineProperty(t, "__esModule", {
            value: !0
        });
        var o = i(22),
            n = a(o),
            r = i(8),
            l = a(r),
            s = i(6),
            c = a(s),
            d = i(7),
            u = a(d),
            f = i(10),
            p = a(f),
            h = i(9),
            m = a(h),
            g = i(3),
            v = a(g),
            b = i(249),
            w = a(b),
            y = i(35),
            x = a(y),
            _ = i(97),
            k = a(_),
            j = i(15),
            E = a(j),
            C = i(2),
            M = a(C),
            S = function(e) {
                function t() {
                    return (0, c.default)(this, t), (0, p.default)(this, (t.__proto__ || (0, l.default)(t)).apply(this, arguments))
                }
                return (0, m.default)(t, e), (0, u.default)(t, [{
                    key: "getRenderData",
                    value: function() {
                        return {
                            data: {
                                chatText: "online" === M.default.chat_mode ? (0, E.default)("onlineChat") : (0, E.default)("lblLeaveMessage")
                            },
                            styles: {
                                wrap: [{
                                    wrap: !0,
                                    _show: this.state.isShow,
                                    _landscape: "landscape" === this.state.orientation && this.state.isShow
                                }],
                                menuWrap: [{
                                    menuWrap: !0
                                }, {
                                    left: this.state.left
                                }],
                                overlay: [{
                                    overlay: !0,
                                    _extraPadding: this.state.extraPadding
                                }, {
                                    left: this.state.left
                                }]
                            },
                            style: w.default
                        }
                    }
                }, {
                    key: "renderData",
                    value: function(e, t) {
                        return 0 === this.jointsCount ? null : v.default.createElement("jdiv", t.wrap, v.default.createElement("jdiv", (0, n.default)({}, t.overlay, {
                            onClick: this.close.bind(this)
                        }), v.default.createElement("jdiv", {
                            className: w.default.deviceLandscape
                        })), v.default.createElement("jdiv", t.menuWrap, this.jivoLink && v.default.createElement("jdiv", {
                            className: w.default.copyrightWrap
                        }, v.default.createElement("jdiv", {
                            className: w.default.copyright
                        }, v.default.createElement("a", {
                            href: this.jivoLink,
                            target: "_blank",
                            rel: "nofollow noopener noreferrer"
                        }, "Powered by", v.default.createElement(x.default, {
                            iconName: this.logoIconName,
                            className: w.default.logoIcon
                        })))), v.default.createElement("jdiv", {
                            className: w.default.menuTitle
                        }, (0, E.default)("powerBtnMenuTitle")), v.default.createElement("jdiv", {
                            className: w.default.menu
                        }, this.joints.vkUrl && v.default.createElement("a", (0, n.default)({
                            href: this.joints.vkUrl
                        }, this.linkProps, {
                            "data-name": "vk"
                        }), v.default.createElement("jdiv", {
                            className: w.default.menuItem
                        }, v.default.createElement(x.default, {
                            iconName: "vk",
                            className: w.default.menuItemIcon
                        }), v.default.createElement("jdiv", {
                            className: w.default.menuItemText
                        }, (0, E.default)("social_vk")))), this.joints.fbUrl && v.default.createElement("a", (0, n.default)({
                            href: this.joints.fbUrl
                        }, this.linkProps, {
                            "data-name": "fb"
                        }), v.default.createElement("jdiv", {
                            className: w.default.menuItem
                        }, v.default.createElement(x.default, {
                            iconName: "fb",
                            className: w.default.menuItemIcon
                        }), v.default.createElement("jdiv", {
                            className: w.default.menuItemText
                        }, "Facebook Messenger"))), this.joints.tgUrl && v.default.createElement("a", (0, n.default)({
                            href: this.joints.tgUrl
                        }, this.linkProps, {
                            "data-name": "tg"
                        }), v.default.createElement("jdiv", {
                            className: w.default.menuItem
                        }, v.default.createElement(x.default, {
                            iconName: "telegram",
                            className: w.default.menuItemIcon
                        }), v.default.createElement("jdiv", {
                            className: w.default.menuItemText
                        }, "Telegram"))), this.joints.vbUrl && v.default.createElement("a", {
                            href: this.joints.vbUrl,
                            onClick: this.openMenuItem.bind(this),
                            "data-name": "vb"
                        }, v.default.createElement("jdiv", {
                            className: w.default.menuItem
                        }, v.default.createElement(x.default, {
                            iconName: "viber",
                            className: w.default.menuItemIcon
                        }), v.default.createElement("jdiv", {
                            className: w.default.menuItemText
                        }, "Viber"))), this.joints.cbUrl && v.default.createElement("a", {
                            href: "tel:" + this.joints.cbUrl,
                            onClick: this.openMenuItem.bind(this),
                            "data-name": "call"
                        }, v.default.createElement("jdiv", {
                            className: w.default.menuItem
                        }, v.default.createElement(x.default, {
                            iconName: "phone-outgoing",
                            className: w.default.menuItemIcon
                        }), v.default.createElement("jdiv", {
                            className: w.default.menuItemText
                        }, (0, E.default)("lblCallMe"), " ", this.joints.cbUrl))), v.default.createElement("jdiv", {
                            className: w.default.menuItem,
                            onClick: this.openChat.bind(this)
                        }, v.default.createElement(x.default, {
                            iconName: "message-text",
                            className: w.default.menuItemIcon
                        }), v.default.createElement("jdiv", {
                            className: w.default.menuItemTextHighlight
                        }, e.chatText))), v.default.createElement("jdiv", {
                            className: w.default.closeBtn,
                            onClick: this.close.bind(this)
                        }, v.default.createElement("jdiv", {
                            className: w.default.closeIcon
                        }, "<"), v.default.createElement("jdiv", {
                            className: w.default.closeText
                        }, (0, E.default)("cancel")))))
                    }
                }]), t
            }(k.default);
        t.default = S
    }, function(e, t, i) {
        "use strict";

        function a(e) {
            return e && e.__esModule ? e : {
                default: e
            }
        }
        Object.defineProperty(t, "__esModule", {
            value: !0
        });
        var o = i(22),
            n = a(o),
            r = i(8),
            l = a(r),
            s = i(6),
            c = a(s),
            d = i(7),
            u = a(d),
            f = i(10),
            p = a(f),
            h = i(9),
            m = a(h),
            g = i(3),
            v = a(g),
            b = i(250),
            w = a(b),
            y = i(35),
            x = a(y),
            _ = i(97),
            k = a(_),
            j = i(15),
            E = a(j),
            C = i(2),
            M = a(C),
            S = function(e) {
                function t() {
                    return (0, c.default)(this, t), (0, p.default)(this, (t.__proto__ || (0, l.default)(t)).apply(this, arguments))
                }
                return (0, m.default)(t, e), (0, u.default)(t, [{
                    key: "getRenderData",
                    value: function() {
                        return {
                            data: {
                                chatText: "online" === M.default.chat_mode ? (0, E.default)("onlineChat") : (0, E.default)("lblLeaveMessage")
                            },
                            styles: {
                                wrap: [{
                                    wrap: !0,
                                    _show: this.state.isShow,
                                    _landscape: "landscape" === this.state.orientation && this.state.isShow
                                }],
                                menuWrap: [{
                                    menuWrap: !0
                                }, {
                                    left: this.state.left
                                }],
                                overlay: [{
                                    overlay: !0,
                                    _extraPadding: this.state.extraPadding
                                }, {
                                    left: this.state.left
                                }]
                            },
                            style: w.default
                        }
                    }
                }, {
                    key: "renderData",
                    value: function(e, t) {
                        return 0 === this.jointsCount ? null : v.default.createElement("jdiv", t.wrap, v.default.createElement("jdiv", (0, n.default)({}, t.overlay, {
                            onClick: this.close.bind(this)
                        }), v.default.createElement("jdiv", {
                            className: w.default.deviceLandscape
                        })), v.default.createElement("jdiv", t.menuWrap, this.jivoLink && v.default.createElement("jdiv", {
                            className: w.default.copyrightWrap
                        }, v.default.createElement("jdiv", {
                            className: w.default.copyright
                        }, v.default.createElement("a", {
                            href: this.jivoLink,
                            target: "_blank",
                            rel: "nofollow noopener noreferrer"
                        }, "Powered by", v.default.createElement(x.default, {
                            iconName: this.logoIconName,
                            className: w.default.logoIcon
                        })))), v.default.createElement("jdiv", {
                            className: w.default.menu
                        }, v.default.createElement("jdiv", {
                            className: w.default.menuTitle
                        }, (0, E.default)("powerBtnMenuTitle")), this.joints.vkUrl && v.default.createElement("a", (0, n.default)({
                            href: this.joints.vkUrl
                        }, this.linkProps, {
                            "data-name": "vk"
                        }), v.default.createElement("jdiv", {
                            className: w.default.menuItem
                        }, v.default.createElement("jdiv", {
                            className: w.default.menuItemText
                        }, (0, E.default)("social_vk")))), this.joints.fbUrl && v.default.createElement("a", (0, n.default)({
                            href: this.joints.fbUrl
                        }, this.linkProps, {
                            "data-name": "fb"
                        }), v.default.createElement("jdiv", {
                            className: w.default.menuItem
                        }, v.default.createElement("jdiv", {
                            className: w.default.menuItemText
                        }, "Facebook Messenger"))), this.joints.tgUrl && v.default.createElement("a", (0, n.default)({
                            href: this.joints.tgUrl
                        }, this.linkProps, {
                            "data-name": "tg"
                        }), v.default.createElement("jdiv", {
                            className: w.default.menuItem
                        }, v.default.createElement("jdiv", {
                            className: w.default.menuItemText
                        }, "Telegram"))), this.joints.vbUrl && v.default.createElement("a", {
                            href: this.joints.vbUrl,
                            onClick: this.openMenuItem.bind(this),
                            "data-name": "vb"
                        }, v.default.createElement("jdiv", {
                            className: w.default.menuItem
                        }, v.default.createElement("jdiv", {
                            className: w.default.menuItemText
                        }, "Viber"))), this.joints.cbUrl && v.default.createElement("a", {
                            href: "tel:" + this.joints.cbUrl,
                            onClick: this.openMenuItem.bind(this),
                            "data-name": "call"
                        }, v.default.createElement("jdiv", {
                            className: w.default.menuItem
                        }, v.default.createElement(x.default, {
                            iconName: "phone",
                            className: w.default.menuItemIcon
                        }), v.default.createElement("jdiv", {
                            className: w.default.menuItemText
                        }, (0, E.default)("lblCallMe"), " ", this.joints.cbUrl))), v.default.createElement("jdiv", {
                            className: w.default.menuItem,
                            onClick: this.openChat.bind(this)
                        }, v.default.createElement("jdiv", {
                            className: w.default.menuItemTextHighlight
                        }, e.chatText))), v.default.createElement("jdiv", {
                            className: w.default.closeBtn,
                            onClick: this.close.bind(this)
                        }, (0, E.default)("cancel"))))
                    }
                }]), t
            }(k.default);
        t.default = S
    }, function(e, t, i) {
        "use strict";

        function a(e) {
            return e && e.__esModule ? e : {
                default: e
            }
        }
        Object.defineProperty(t, "__esModule", {
            value: !0
        });
        var o = i(22),
            n = a(o),
            r = i(8),
            l = a(r),
            s = i(6),
            c = a(s),
            d = i(7),
            u = a(d),
            f = i(10),
            p = a(f),
            h = i(9),
            m = a(h),
            g = i(3),
            v = a(g),
            b = i(12),
            w = a(b),
            y = i(251),
            x = a(y),
            _ = i(143),
            k = a(_),
            j = i(11),
            E = a(j),
            C = i(1),
            M = a(C),
            S = i(2),
            z = a(S),
            T = i(4),
            I = a(T),
            N = i(35),
            O = a(N),
            A = i(18),
            P = a(A),
            L = i(43),
            B = a(L),
            D = i(16),
            H = a(D),
            F = i(42),
            R = a(F),
            V = i(26),
            W = a(V),
            q = i(13),
            U = a(q),
            G = i(29),
            X = a(G),
            Y = function(e) {
                function t(e) {
                    (0, c.default)(this, t);
                    var i = (0, p.default)(this, (t.__proto__ || (0, l.default)(t)).call(this, e));
                    i.state = {
                        isShow: i.getShowState(),
                        isAnimationJivoIcon: M.default.showAd(),
                        unReadMessages: 0,
                        powerBtnZoom: 1
                    }, i.orientation = z.default.widget_mobile_orientation || "right";
                    var a = M.default.getPageWindow();
                    i.bodyPosition = a.getComputedStyle(a.document.body).position;
                    var o = I.default.throttle(i.onViewportChanged.bind(i, !0), 300);
                    return M.default.addListener(M.default.getPageWindow(), "scroll", o), M.default.addListener(M.default.getPageWindow(), "resize", o), W.default.listenChangeZoom(o), i.on(E.default, function() {
                        i.setState({
                            isShow: i.getShowState()
                        }, function() {
                            i.onViewportChanged(), setTimeout(i.onViewportChanged.bind(i), 500)
                        })
                    }), i.isShowDebounce = I.default.debounce(function() {
                        i.getShowState() && (i.setState({
                            isAnimation: !0
                        }, function() {
                            setTimeout(function() {
                                i.setState({
                                    isShow: !0
                                })
                            }, 50)
                        }), setTimeout(function() {
                            i.setState({
                                isAnimation: !1
                            })
                        }, 300))
                    }, 350), i.onViewportChanged(), i
                }
                return (0, m.default)(t, e), (0, u.default)(t, [{
                    key: "onViewportChanged",
                    value: function(e) {
                        this.zooms = {
                            powerBtnZoom: W.default.getAppZoom(),
                            userZoom: W.default.getUserZoom()
                        }, this.setState({
                            powerBtnZoom: this.zooms.powerBtnZoom
                        }), this.zooms.userZoom >= 1.1 ? (this.setState({
                            position: "absolute",
                            isShow: !e && this.getShowState()
                        }), this.getPosition(this.zooms.powerBtnZoom), this.isShowDebounce()) : this.setState({
                            position: null,
                            left: null,
                            right: null,
                            bottom: null,
                            isShow: this.getShowState()
                        })
                    }
                }, {
                    key: "getPosition",
                    value: function(e) {
                        var t, i, a, o = M.default.getPageWindow(),
                            n = o.document,
                            r = null,
                            l = null;
                        "static" === this.bodyPosition ? (t = Math.max(o.innerHeight, n.documentElement.clientHeight), i = Math.max(o.innerWidth, n.documentElement.clientWidth)) : (t = Math.max(o.innerHeight, n.body.clientHeight), i = Math.max(o.innerWidth, n.body.clientWidth)), "right" === this.orientation ? r = (i - (o.pageXOffset + o.innerWidth)) / e : l = o.pageXOffset / e, a = (t - (o.pageYOffset + o.innerHeight)) / e, this.setState({
                            right: r,
                            left: l,
                            bottom: a
                        })
                    }
                }, {
                    key: "openMenu",
                    value: function(e) {
                        this.setState({
                            isShow: !1
                        }), this.state.unReadMessages ? (E.default.is_focused = 1, H.default.navigate("chat"), this.readMessages()) : (H.default.openMobileNativeMenu(), M.default.telemetry("powerbtn_open_menu")), e.stopPropagation()
                    }
                }, {
                    key: "incUnread",
                    value: function() {
                        "label" == E.default.route && this.setState({
                            unReadMessages: this.state.unReadMessages + 1
                        })
                    }
                }, {
                    key: "componentDidMount",
                    value: function() {
                        var e = this;
                        X.default.on("socket_message", function(t) {
                                if ("resume_ok" == t.name) {
                                    var i = I.default.filter(P.default.data, {
                                        ack: 0
                                    }).length;
                                    I.default.filter(P.default.data, {
                                        id: "proactive"
                                    }).length > 0 && i > 0 && i++, e.setState({
                                        unReadMessages: i
                                    })
                                }
                            }), X.default.on("agent_message", this.incUnread.bind(this)), X.default.on("agent_service_message", this.incUnread.bind(this)),
                            X.default.on("receive_file", this.incUnread.bind(this)), this.on(B.default, {
                                play_sound: function() {
                                    e.setState({
                                        unReadMessages: 1
                                    })
                                }
                            })
                    }
                }, {
                    key: "getShowState",
                    value: function() {
                        return "label" === E.default.route && !E.default.isShowNativeMobileMenu
                    }
                }, {
                    key: "readMessages",
                    value: function() {
                        this.setState({
                            unReadMessages: 0
                        });
                        var e = [];
                        I.default.each(P.default.data, function(t) {
                            t.ack = 1, e.push(t.msg_id)
                        }), H.default.agentMessageAck(e)
                    }
                }, {
                    key: "getRenderData",
                    value: function() {
                        var e = z.default.power_button_color || "#44BB6E";
                        return {
                            data: {
                                isOnlineMode: "offline" !== z.default.chat_mode
                            },
                            styles: {
                                wrap: [{
                                    wrap: !0,
                                    _show: this.state.isShow && this.zooms.powerBtnZoom > .4,
                                    _orinationRight: "right" === this.orientation,
                                    _orinationLeft: "left" === this.orientation,
                                    _animationBtn: this.state.isAnimation
                                }, {
                                    zoom: this.state.powerBtnZoom,
                                    position: this.state.position,
                                    bottom: this.state.bottom,
                                    right: this.state.right,
                                    left: this.state.left,
                                    "-webkit-text-size-adjust": U.default.ios() ? W.default.getTextSize() : null
                                }],
                                button: [{
                                    button: !0
                                }, {
                                    zoom: this.zoom,
                                    backgroundColor: e
                                }],
                                messagesLabel: [{
                                    messagesLabel: !0
                                }, {
                                    display: this.state.unReadMessages ? "inline-block" : "none"
                                }],
                                iconWrap: [{
                                    iconWrap: !0,
                                    _animationJivoIcon: this.state.isAnimationJivoIcon
                                }],
                                jivoIcon: [{
                                    logoIconJivo: !0,
                                    _iconDark: R.default.isLightColor(e)
                                }],
                                cloudIcon: [{
                                    logoIconCloud: !0,
                                    _iconDark: R.default.isLightColor(e)
                                }],
                                envelopeIcon: [{
                                    envelopeIcon: !0,
                                    _iconDark: R.default.isLightColor(e)
                                }]
                            },
                            style: x.default
                        }
                    }
                }, {
                    key: "renderData",
                    value: function(e, t) {
                        return v.default.createElement("jdiv", null, v.default.createElement(k.default, null), v.default.createElement("jdiv", (0, n.default)({}, t.wrap, {
                            onClick: this.openMenu.bind(this)
                        }), v.default.createElement("jdiv", t.button, v.default.createElement("jdiv", t.messagesLabel, this.state.unReadMessages), v.default.createElement("jdiv", t.iconWrap, v.default.createElement(O.default, (0, n.default)({
                            iconName: "logo-j-white"
                        }, t.jivoIcon)), e.isOnlineMode && v.default.createElement(O.default, (0, n.default)({
                            iconName: "mobile-cloud"
                        }, t.cloudIcon)), !e.isOnlineMode && v.default.createElement(O.default, (0, n.default)({
                            iconName: "envelope"
                        }, t.envelopeIcon))))))
                    }
                }]), t
            }(w.default);
        t.default = Y
    }, function(e, t) {
        "use strict";

        function i() {
            Element.prototype.matches || (Element.prototype.matches = Element.prototype.matchesSelector || Element.prototype.mozMatchesSelector || Element.prototype.msMatchesSelector || Element.prototype.oMatchesSelector || Element.prototype.webkitMatchesSelector || function(e) {
                for (var t = (window.document || window.ownerDocument).querySelectorAll(e), i = t.length; --i >= 0 && t.item(i) !== this;);
                return i > -1
            }), Element.prototype.closest || (Element.prototype.closest = function(e) {
                for (var t = this; t;) {
                    if (t.matches(e)) return t;
                    t = t.parentElement
                }
                return null
            })
        }
        Object.defineProperty(t, "__esModule", {
            value: !0
        }), t.default = {
            init: i
        }
    }, function(e, t, i) {
        "use strict";

        function a(e) {
            return e && e.__esModule ? e : {
                default: e
            }
        }
        Object.defineProperty(t, "__esModule", {
            value: !0
        });
        var o = i(8),
            n = a(o),
            r = i(6),
            l = a(r),
            s = i(7),
            c = a(s),
            d = i(10),
            u = a(d),
            f = i(9),
            p = a(f),
            h = i(3),
            m = a(h),
            g = i(140),
            v = a(g),
            b = i(12),
            w = a(b),
            y = i(2),
            x = (a(y), i(13)),
            _ = a(x),
            k = i(1),
            j = i(5),
            E = a(j),
            C = i(99),
            M = a(C),
            S = i(128),
            z = a(S),
            T = i(26),
            I = a(T),
            N = i(16),
            O = a(N),
            A = i(11),
            P = a(A),
            L = i(49),
            B = a(L),
            D = i(18),
            H = (a(D), i(4)),
            F = (a(H), E.default.name("TopWrap"));
        i(300), i(299);
        var R = function(e) {
            function t(e) {
                (0, l.default)(this, t);
                var i = (0, u.default)(this, (t.__proto__ || (0, n.default)(t)).call(this, e));
                return i.state = i.getState(), i
            }
            return (0, p.default)(t, e), (0, c.default)(t, [{
                key: "getState",
                value: function() {
                    var e = void 0;
                    return e = 0 === P.default.route.indexOf("label") ? {
                        mode: "label",
                        expanded: !0
                    } : 0 === P.default.route.indexOf("chat") ? {
                        mode: "chat",
                        expanded: !1
                    } : 0 === P.default.route.indexOf("call") ? {
                        mode: "call",
                        expanded: !1
                    } : {
                        mode: "label",
                        expanded: !1
                    }, e.isLandscaped = this.getOrientation(), e
                }
            }, {
                key: "componentDidMount",
                value: function() {
                    var e = this;
                    this.on(P.default, function() {
                        var t = e.getState();
                        t.mode !== e.state.mode && (_.default.mobile() ? (F.log("transition-end"), e.setState({
                            expanded: t.expanded
                        })) : setTimeout(function() {
                            F.log("transition-end"), e.setState({
                                expanded: t.expanded
                            })
                        }, 300), e.setState({
                            mode: t.mode
                        })), _.default.mobileOrTablet() && e.mobileOrTabletChange()
                    }), _.default.mobileOrTablet() && ((0, k.addListener)(window, "orientationchange", function() {
                        return e.setOrientation()
                    }), this.mobileOrTabletChange()), _.default.mobile() && B.default.mobileInit()
                }
            }, {
                key: "mobileOrTabletChange",
                value: function() {
                    this.setOrientation(), this.setPositionForTablet()
                }
            }, {
                key: "setPositionForTablet",
                value: function() {
                    F.log("setPositionForTablet"), _.default.tablet() && ("chat/introduce" !== P.default.route && "chat" !== P.default.route || !P.default.is_focused && !P.default.is_input_focused ? "chat/introduce" !== P.default.route && "chat" !== P.default.route && I.default.removeTabletPosition() : I.default.addTabletPosition())
                }
            }, {
                key: "getOrientation",
                value: function() {
                    var e = !1;
                    if (P.default.isSeparateWindow) {
                        var t = 0;
                        switch (window.orientation ? t = window.orientation : window.screen && window.screen.orientation && (t = window.screen.orientation.angle), t) {
                            case -90:
                            case 90:
                                e = !0;
                                break;
                            default:
                                e = !1
                        }
                    }
                    return e
                }
            }, {
                key: "setOrientation",
                value: function() {
                    var e = this.getOrientation();
                    e !== this.state.isLandscaped && this.setState({
                        isLandscaped: e
                    })
                }
            }, {
                key: "componentWillUnmount",
                value: function() {
                    this.off()
                }
            }, {
                key: "render",
                value: function() {
                    var e = this.state.mode;
                    "call" === e && (e = "call chat");
                    var t = e + "-mode";
                    (0, k.css3AnimationIsSupported)() && !this.state.expanded || (t += " expanded");
                    var i = {
                        display: "none"
                    };
                    return _.default.mobile() ? (t += " mobile-version", this.state.isLandscaped && (i = {
                        display: "block"
                    })) : _.default.tablet() && (t += " new-tablet-version"), m.default.createElement("div", {
                        style: {
                            height: "100%"
                        }
                    }, m.default.createElement("div", {
                        id: "jivo_top_wrap",
                        ref: "jivo_top_wrap",
                        className: t
                    }, !_.default.mobile() && m.default.createElement(v.default, null), m.default.createElement(M.default, null), _.default.mobile() ? m.default.createElement("div", {
                        id: "device-landscape",
                        onClick: function() {
                            return O.default.closeWidget()
                        },
                        style: i
                    }) : ""), (0, k.showAd)() && !_.default.mobile() ? m.default.createElement(z.default, null) : "")
                }
            }]), t
        }(w.default);
        t.default = R
    }, function(e, t, i) {
        "use strict";

        function a(e) {
            return e && e.__esModule ? e : {
                default: e
            }
        }
        Object.defineProperty(t, "__esModule", {
            value: !0
        });
        var o = i(8),
            n = a(o),
            r = i(6),
            l = a(r),
            s = i(7),
            c = a(s),
            d = i(10),
            u = a(d),
            f = i(9),
            p = a(f),
            h = i(3),
            m = a(h),
            g = i(12),
            v = a(g),
            b = i(2),
            w = a(b),
            y = i(54),
            x = a(y),
            _ = i(161),
            k = a(_),
            j = i(150),
            E = a(j),
            C = i(156),
            M = a(C),
            S = i(151),
            z = a(S),
            T = i(160),
            I = a(T),
            N = i(15),
            O = a(N),
            A = i(18),
            P = a(A),
            L = i(1),
            B = i(13),
            D = a(B),
            H = i(71),
            F = a(H),
            R = i(14),
            V = a(R),
            W = i(11),
            q = a(W),
            U = i(5),
            G = a(U),
            X = G.default.name("ChatBody"),
            Y = D.default.desktop();
        i(305);
        var Z = function(e) {
            function t() {
                (0, l.default)(this, t);
                var e = (0, u.default)(this, (t.__proto__ || (0, n.default)(t)).call(this));
                return e.state = {
                    replyButton: e.showReplyButton()
                }, e
            }
            return (0, p.default)(t, e), (0, c.default)(t, [{
                key: "componentDidMount",
                value: function() {
                    var e = this;
                    X.log("mounted"), this.on(q.default, function() {
                        var t = e.showReplyButton();
                        e.state.replyButton !== t && e.setState({
                            replyButton: t
                        })
                    })
                }
            }, {
                key: "componentWillUnmount",
                value: function() {
                    X.log("will unmount")
                }
            }, {
                key: "showReplyButton",
                value: function() {
                    var e = P.default.data.length,
                        t = e > 0 && P.default.data[e - 1],
                        i = document.activeElement;
                    return D.default.ipad() && "agentMessage" === t.type && !q.default.is_focused && "TEXTRAREA" !== i.tagName && "INPUT" !== i.tagName && ("chat/introduce" === q.default.route || "chat" === q.default.route)
                }
            }, {
                key: "onWhell",
                value: function(e) {
                    Y && (e.preventDefault(), F.default.whell(e.deltaY))
                }
            }, {
                key: "onTouchMove",
                value: function(e) {
                    D.default.ipad() && (e.preventDefault(), F.default.touchMove(e.touches[0].pageY))
                }
            }, {
                key: "onTouchStart",
                value: function(e) {
                    D.default.ipad() && F.default.touchStart(e.touches[0].pageY)
                }
            }, {
                key: "blurInput",
                value: function() {
                    D.default.mobile() && document.activeElement && ["INPUT", "TEXTAREA"].indexOf(document.activeElement.tagName) == -1 && document.activeElement.blur()
                }
            }, {
                key: "render",
                value: function() {
                    var e = "",
                        t = "",
                        i = {
                            width: "100%",
                            height: "100%",
                            bottom: 0,
                            top: "auto"
                        },
                        a = !D.default.ipad() && D.default.tablet() ? "css-scrolling " : "";
                    return Y || D.default.ipad() ? (e = m.default.createElement("div", {
                        className: "scrollbar-rail"
                    }, m.default.createElement("div", {
                        className: "scrollbar"
                    })), i.position = "absolute", a += "ps-container") : i.position = "relative", this.state.replyButton && (t = m.default.createElement("div", {
                        id: "reply-button-contaiter",
                        onClick: function() {
                            return q.default.is_focused = 1
                        }
                    }, m.default.createElement("div", {
                        id: "reply-button"
                    }, (0, O.default)("lblReply")))), m.default.createElement("table", {
                        id: "chat-body",
                        className: !(0, L.showAd)() && "nologo"
                    }, m.default.createElement("tbody", null, m.default.createElement("tr", null, m.default.createElement("td", {
                        id: "jivosite-iframe-chat",
                        style: {
                            height: "100%",
                            position: "relative"
                        },
                        onClick: this.blurInput.bind(this)
                    }, 1 !== w.default.contacts_ask || V.default.is_introduced ? m.default.createElement("div", null) : m.default.createElement(M.default, null), 1 == w.default.typing_insight && m.default.createElement(z.default, null), m.default.createElement("div", {
                        style: {
                            height: "100%",
                            position: "relative"
                        }
                    }, (0, L.showAd)() && m.default.createElement(x.default, null), m.default.createElement("div", {
                        id: "scrollbar-container",
                        className: a,
                        onWheel: this.onWhell,
                        onTouchMove: this.onTouchMove,
                        onTouchStart: this.onTouchStart
                    }, m.default.createElement("table", {
                        style: i,
                        className: "scrollbar-inner"
                    }, m.default.createElement("tbody", null, m.default.createElement("tr", null, m.default.createElement("td", {
                        style: {
                            verticalAlign: "bottom"
                        }
                    }, m.default.createElement("div", {
                        id: "jivo-chat"
                    }, m.default.createElement("div", {
                        id: "messages-div"
                    }, m.default.createElement(k.default, null))))))), e), m.default.createElement(E.default, {
                        fadeIn: !1
                    })))), m.default.createElement("tr", null, m.default.createElement("td", null, t, m.default.createElement(I.default, null)))))
                }
            }]), t
        }(v.default);
        t.default = Z
    }, function(e, t, i) {
        "use strict";

        function a(e) {
            return e && e.__esModule ? e : {
                default: e
            }
        }
        Object.defineProperty(t, "__esModule", {
            value: !0
        });
        var o = i(8),
            n = a(o),
            r = i(6),
            l = a(r),
            s = i(7),
            c = a(s),
            d = i(10),
            u = a(d),
            f = i(9),
            p = a(f),
            h = i(3),
            m = a(h),
            g = i(12),
            v = a(g),
            b = i(18),
            w = a(b),
            y = i(154),
            x = a(y),
            _ = i(157),
            k = a(_),
            j = i(2),
            E = a(j),
            C = i(15),
            M = a(C),
            S = i(5),
            z = a(S),
            T = i(14),
            I = a(T),
            N = i(4),
            O = a(N),
            A = i(16),
            P = a(A),
            L = i(13),
            B = a(L),
            D = z.default.name("ChatPopup");
        i(306);
        var H = function(e) {
            function t(e) {
                (0, l.default)(this, t);
                var i = (0, u.default)(this, (t.__proto__ || (0, n.default)(t)).call(this, e));
                return i.state = {
                    fadeIn: e.fadeIn,
                    popupContent: ""
                }, i
            }
            return (0, p.default)(t, e), (0, c.default)(t, [{
                key: "componentDidMount",
                value: function() {
                    var e = this,
                        t = 0 === E.default.contacts_ask || E.default.contacts_ask === -1;
                    this.on(w.default, function() {
                        var i = void 0;
                        O.default.each(w.default.data, function(e) {
                            "agentMessage" !== e.type && "agentMediaMessage" !== e.type || !e.chat_id || (i = e.chat_id)
                        });
                        var a = w.default.data.length && O.default.where(w.default.data, {
                                chat_id: i
                            }).length >= 5 && w.default.hasAgentMessages(),
                            o = t && !I.default.is_introduced && !I.default.has_integration;
                        e.state.fadeIn || !E.default.show_rate_form || t && !I.default.is_introduced || !a || I.default.evaluate ? !e.state.fadeIn && w.default.data && w.default.data.length && O.default.filter(w.default.data, function(e) {
                            return "clientMessage" === e.type || "mediaMessage" === e.type
                        }).length && o && (D.log("Show introduce dialog."), e.setState({
                            popupContent: "introduce",
                            fadeIn: !0
                        })) : (D.log("Show evaluation dialog."), e.setState({
                            popupContent: "evaluation",
                            fadeIn: !0
                        }))
                    }), this.on(I.default, function() {
                        (I.default.is_introduced && e.state.fadeIn || I.default.has_integration) && (D.log("onclient hide."), e.hide())
                    })
                }
            }, {
                key: "hide",
                value: function(e, t) {
                    var i = this;
                    D.log("hide", t), e instanceof Event && (e.preventDefault(), t = 1), "introduce" === this.state.popupContent && P.default.markIntroduced(), "evaluation" === this.state.popupContent && P.default.markEvaluated(), setTimeout(function() {
                        ("evaluation" != i.state.popupContent || t) && i.setState({
                            fadeIn: !1
                        })
                    }, t)
                }
            }, {
                key: "show",
                value: function(e) {
                    e instanceof Event && e.preventDefault(), this.setState({
                        fadeIn: !0
                    })
                }
            }, {
                key: "render",
                value: function() {
                    var e = "chat-popup" + (this.state.popupContent ? " chat-popup-" + this.state.popupContent : "") + (this.state.fadeIn ? " jivo-fade-in" : ""),
                        t = "evaluation" === this.state.popupContent || "introduce" === this.state.popupContent && 0 == E.default.contacts_ask;
                    return m.default.createElement("div", {
                        ref: "chatPopup",
                        className: e
                    }, m.default.createElement("div", {
                        className: "content-col"
                    }, "evaluation" === this.state.popupContent && m.default.createElement(x.default, {
                        hideCallback: this.hide.bind(this)
                    }), "introduce" === this.state.popupContent && m.default.createElement(k.default, {
                        hideCallback: this.hide.bind(this)
                    })), m.default.createElement("div", {
                        className: "close-col",
                        onClick: B.default.mobile() && this.hide.bind(this)
                    }, t && m.default.createElement("a", {
                        href: "#",
                        id: "close-eval",
                        title: (0, M.default)("lblEvaluateCancel"),
                        onClick: this.hide.bind(this)
                    })))
                }
            }]), t
        }(v.default);
        t.default = H
    }, function(e, t, i) {
        "use strict";

        function a(e) {
            return e && e.__esModule ? e : {
                default: e
            }
        }
        Object.defineProperty(t, "__esModule", {
            value: !0
        });
        var o = i(8),
            n = a(o),
            r = i(6),
            l = a(r),
            s = i(7),
            c = a(s),
            d = i(10),
            u = a(d),
            f = i(9),
            p = a(f),
            h = i(3),
            m = a(h),
            g = i(12),
            v = a(g),
            b = i(5),
            w = a(b),
            y = i(27),
            x = a(y),
            _ = i(15),
            k = a(_),
            j = w.default.name("AgentTyping"),
            E = function(e) {
                function t(e) {
                    (0, l.default)(this, t);
                    var i = (0, u.default)(this, (t.__proto__ || (0, n.default)(t)).call(this, e));
                    return i.state = {
                        hide: !x.default.typing
                    }, i
                }
                return (0, p.default)(t, e), (0, c.default)(t, [{
                    key: "componentDidMount",
                    value: function() {
                        var e = this;
                        j.log("mounted"), this.on(x.default, function() {
                            e.setState({
                                hide: !x.default.typing
                            })
                        })
                    }
                }, {
                    key: "render",
                    value: function() {
                        return m.default.createElement("div", {
                            id: "agent-typing",
                            style: {
                                display: this.state.hide ? "none" : "block"
                            }
                        }, m.default.createElement("div", {
                            class: "agent-typing-wrapper"
                        }, m.default.createElement("div", {
                            class: "agent-typing"
                        }, (0, k.default)("lblPencilHint"))))
                    }
                }]), t
            }(v.default);
        t.default = E
    }, function(e, t, i) {
        "use strict";

        function a(e) {
            return e && e.__esModule ? e : {
                default: e
            }
        }
        Object.defineProperty(t, "__esModule", {
            value: !0
        });
        var o = i(8),
            n = a(o),
            r = i(6),
            l = a(r),
            s = i(7),
            c = a(s),
            d = i(10),
            u = a(d),
            f = i(9),
            p = a(f),
            h = i(3),
            m = a(h),
            g = i(12),
            v = a(g),
            b = i(5),
            w = a(b),
            y = i(16),
            x = a(y),
            _ = i(2),
            k = a(_),
            j = i(4),
            E = a(j),
            C = w.default.name("DepartmensPopup"),
            M = k.default.departments,
            S = function(e) {
                function t(e) {
                    (0, l.default)(this, t);
                    var i = (0, u.default)(this, (t.__proto__ || (0, n.default)(t)).call(this, e));
                    return i.state = {
                        show_list: !1,
                        department_name: M && M.length ? M[0].name : ""
                    }, i
                }
                return (0, p.default)(t, e), (0, c.default)(t, [{
                    key: "componentDidMount",
                    value: function() {
                        C.log("mounted")
                    }
                }, {
                    key: "toggleDepartments",
                    value: function(e) {
                        e.preventDefault(), this.setState({
                            show_list: !this.state.show_list
                        })
                    }
                }, {
                    key: "onDepartmentSelect",
                    value: function(e, t) {
                        this.setState({
                            show_list: !1,
                            department_name: t
                        }), x.default.setDepartmentId(e)
                    }
                }, {
                    key: "render",
                    value: function() {
                        var e = this;
                        return m.default.createElement("div", {
                            className: "departments"
                        }, m.default.createElement("div", {
                            id: "current-department",
                            onClick: this.toggleDepartments.bind(this)
                        }, this.state.department_name), m.default.createElement("ul", {
                            id: "departments-list",
                            style: {
                                display: this.state.show_list ? "block" : "none"
                            }
                        }, E.default.map(M, function(t) {
                            return m.default.createElement("li", {
                                onClick: function() {
                                    return e.onDepartmentSelect(t.id, t.name)
                                }
                            }, t.name)
                        })))
                    }
                }]), t
            }(v.default);
        t.default = S
    }, function(e, t, i) {
        "use strict";

        function a(e) {
            return e && e.__esModule ? e : {
                default: e
            }
        }
        Object.defineProperty(t, "__esModule", {
            value: !0
        });
        var o = i(8),
            n = a(o),
            r = i(6),
            l = a(r),
            s = i(7),
            c = a(s),
            d = i(10),
            u = a(d),
            f = i(9),
            p = a(f),
            h = i(3),
            m = a(h),
            g = i(12),
            v = a(g),
            b = i(5),
            w = a(b),
            y = i(2),
            x = a(y),
            _ = i(15),
            k = (a(_), i(1)),
            j = a(k),
            E = i(42),
            C = (a(E), i(43)),
            M = (a(C), i(27)),
            S = a(M),
            z = i(14),
            T = (a(z), i(11)),
            I = a(T),
            N = i(16),
            O = a(N),
            A = i(26),
            P = a(A),
            L = i(4),
            B = a(L),
            D = w.default.name("Departments");
        i(302);
        var H = function(e) {
            function t(e) {
                (0, l.default)(this, t);
                var i = (0, u.default)(this, (t.__proto__ || (0, n.default)(t)).call(this, e));
                return i.state = {
                    show: "chat/departments" == I.default.route
                }, i.on(S.default, function() {
                    S.default.agent_id || O.default.setDepartmentId(null), i.setState({
                        show: !1
                    })
                }), i
            }
            return (0, p.default)(t, e), (0, c.default)(t, [{
                key: "componentDidMount",
                value: function() {
                    var e = this;
                    D.log("mounted"), this.on(I.default, function() {
                        e.setState({
                            show: "chat/departments" == I.default.route
                        })
                    })
                }
            }, {
                key: "onDepartmentSelect",
                value: function(e) {
                    e = parseInt(e), e && (O.default.setDepartmentId(e), O.default.navigate("chat"), D.log("set department id", e)), this.setState({
                        show: !1
                    })
                }
            }, {
                key: "render",
                value: function() {
                    var e = this,
                        t = x.default.departments;
                    if (!t) return m.default.createElement("div", null);
                    var i = B.default.map(t, function(t) {
                            return m.default.createElement("a", {
                                className: "department",
                                onClick: function() {
                                    e.onDepartmentSelect(t.id)
                                },
                                style: {
                                    "-webkit-text-size-adjust": P.default.getTextSize()
                                }
                            }, t.name)
                        }),
                        a = x.default.bubble_color + " " + (j.default.showAd() ? "with-logo" : "");
                    return m.default.createElement("div", {
                        id: "departments",
                        style: {
                            display: this.state.show ? "block" : "none"
                        },
                        className: a
                    }, i)
                }
            }]), t
        }(v.default);
        t.default = H
    }, function(e, t, i) {
        "use strict";

        function a(e) {
            return e && e.__esModule ? e : {
                default: e
            }
        }
        Object.defineProperty(t, "__esModule", {
            value: !0
        });
        var o = i(8),
            n = a(o),
            r = i(6),
            l = a(r),
            s = i(7),
            c = a(s),
            d = i(10),
            u = a(d),
            f = i(9),
            p = a(f),
            h = i(3),
            m = a(h),
            g = i(12),
            v = a(g),
            b = i(4),
            w = a(b),
            y = i(28),
            x = a(y),
            _ = (i(1), i(2)),
            k = (a(_), i(15)),
            j = a(k),
            E = i(5),
            C = a(E),
            M = i(14),
            S = a(M),
            z = i(16),
            T = a(z);
        C.default.name("EvaluationPopup");
        i(303);
        var I = function(e) {
            function t(e) {
                (0, l.default)(this, t);
                var i = (0, u.default)(this, (t.__proto__ || (0, n.default)(t)).call(this, e));
                return i.state = {
                    step: ""
                }, i
            }
            return (0, p.default)(t, e), (0, c.default)(t, [{
                key: "componentDidMount",
                value: function() {
                    var e = this;
                    this.on(S.default, function() {
                        S.default.evaluate || w.default.indexOf(["positive", "negative"], e.state.step) === -1 || e.setState({
                            step: ""
                        })
                    }), w.default.each(this.refs, function(t, i) {
                        t.onclick = function(a) {
                            a.preventDefault(), i = "cancel" == i ? "" : i, e.setState({
                                step: i
                            }), t.dataset.timeout && e.props.hideCallback(null, t.dataset.timeout), T.default.sendEvaluation(t.dataset.rate)
                        }
                    })
                }
            }, {
                key: "render",
                value: function() {
                    return m.default.createElement("div", {
                        id: "evaluation-popup"
                    }, m.default.createElement("div", {
                        className: "evaluation-text " + ("" != this.state.step ? "" : "visible")
                    }, m.default.createElement("div", {
                        className: "evaluation-text-inner"
                    }, (0, j.default)("lblEvaluatePlease"))), m.default.createElement("div", {
                        className: "evaluation-text evaluation-ok " + ("positive" === this.state.step && "visible")
                    }, m.default.createElement("div", {
                        className: "evaluation-text-inner nowrap"
                    }, m.default.createElement(x.default, {
                        src: "icon_ok.svg",
                        class: "icon-ok"
                    }), (0, j.default)("lblEvaluateThanks"))), m.default.createElement("div", {
                        className: "evaluation-btn-container " + ("" === this.state.step && "visible")
                    }, m.default.createElement("a", {
                        href: "#",
                        className: "button",
                        ref: "negative",
                        "data-rate": "-1",
                        "data-timeout": "15000",
                        id: "negative"
                    }), m.default.createElement("a", {
                        href: "#",
                        className: "button",
                        ref: "positive",
                        "data-rate": "1",
                        "data-timeout": "5000",
                        id: "positive"
                    })), m.default.createElement("div", {
                        className: "evaluation-btn-container no-float " + ("negative" === this.state.step && "visible")
                    }, m.default.createElement("a", {
                        href: "#",
                        className: "button",
                        ref: "cancel",
                        "data-rate": "0",
                        id: "cancel"
                    }, (0, j.default)("lblEvaluateCancel"))))
                }
            }]), t
        }(v.default);
        t.default = I
    }, function(e, t, i) {
        "use strict";

        function a(e) {
            return e && e.__esModule ? e : {
                default: e
            }
        }
        Object.defineProperty(t, "__esModule", {
            value: !0
        });
        var o = i(8),
            n = a(o),
            r = i(6),
            l = a(r),
            s = i(7),
            c = a(s),
            d = i(10),
            u = a(d),
            f = i(9),
            p = a(f),
            h = i(3),
            m = a(h),
            g = i(12),
            v = a(g),
            b = i(11),
            w = (a(b), i(14)),
            y = (a(w), i(13)),
            x = (a(y), i(72)),
            _ = a(x),
            k = i(16),
            j = a(k),
            E = i(28),
            C = a(E),
            M = i(15),
            S = (a(M), i(5)),
            z = a(S),
            T = i(4),
            I = (a(T), i(18)),
            N = a(I),
            O = i(56),
            A = a(O),
            P = i(1),
            L = z.default.name("FileUpload"),
            B = function(e) {
                function t(e) {
                    (0, l.default)(this, t);
                    var i = (0, u.default)(this, (t.__proto__ || (0, n.default)(t)).call(this, e));
                    return i.state = {
                        uploading: !1,
                        file: !1,
                        privateId: null
                    }, i
                }
                return (0, p.default)(t, e), (0, c.default)(t, [{
                    key: "componentDidMount",
                    value: function() {
                        var e = this;
                        L.log("did mount"), this.on(_.default, {
                            uploading: function(t, i) {
                                N.default.push(new A.default({
                                    type: "mediaMessage",
                                    media: t,
                                    sign: i
                                }));
                                var a = N.default.data[N.default.data.length - 1].private_id;
                                e.setState({
                                    uploading: !0,
                                    file: i,
                                    privateId: a
                                })
                            },
                            error: function(t, i, a) {
                                L.log("error", t, e.state), e.setState({
                                    uploading: !1
                                }), e.state.file && !a || N.default.push(new A.default({
                                    type: "mediaMessage",
                                    media: {
                                        file_name: i.name,
                                        file_type: i.type,
                                        file_size: i.size,
                                        error: t
                                    }
                                }))
                            },
                            complete: function(t, i) {
                                L.log("complete", t, i), e.setState({
                                    uploading: !1
                                }), j.default.storeMediaFile({
                                    file: i,
                                    file_name: t.name,
                                    file_url: i,
                                    file_size: t.size,
                                    type: _.default.detectType(t.type),
                                    mime_type: t.type
                                }, e.state.privateId);
                                var a = _.default.getUrlEmoji(t.type, i);
                                j.default.sendClientMessage(a), (0, P.telemetry)("file_upload_success", {
                                    param1: t.type
                                })
                            },
                            abort: function() {
                                e.setState({
                                    uploading: !1
                                }), (0, P.telemetry)("file_upload_canceled")
                            }
                        }), this.refs.fileupload.onchange = this.handleChangeFile.bind(this)
                    }
                }, {
                    key: "handleChangeFile",
                    value: function(e) {
                        if (e.target.files) {
                            var t = e.target.files[0];
                            L.log("fileinfo:", t), t && (t && t.name && _.default.getFileInfo(e.target.files[0]), e.target.value = "")
                        }
                    }
                }, {
                    key: "render",
                    value: function() {
                        return m.default.createElement("div", {
                            className: "upload-wrap",
                            style: {
                                marginRight: this.props.margin
                            }
                        }, m.default.createElement(C.default, {
                            src: "icon_attach.svg",
                            className: "upload-icon"
                        }), m.default.createElement("div", {
                            className: "upload-fwrap"
                        }, m.default.createElement("input", {
                            type: "file",
                            multiple: "false",
                            onChange1: this.handleChangeFile.bind(this),
                            className: "upload-button",
                            style: {
                                display: this.state.uploading ? "none" : "block"
                            },
                            ref: "fileupload"
                        })))
                    }
                }]), t
            }(v.default);
        t.default = B
    }, function(e, t, i) {
        "use strict";

        function a(e) {
            return e && e.__esModule ? e : {
                default: e
            }
        }
        Object.defineProperty(t, "__esModule", {
            value: !0
        });
        var o = i(8),
            n = a(o),
            r = i(6),
            l = a(r),
            s = i(7),
            c = a(s),
            d = i(10),
            u = a(d),
            f = i(9),
            p = a(f),
            h = i(3),
            m = a(h),
            g = i(12),
            v = a(g),
            b = i(5),
            w = a(b),
            y = i(1),
            x = i(11),
            _ = a(x),
            k = i(14),
            j = a(k),
            E = i(13),
            C = a(E),
            M = i(4),
            S = a(M),
            z = i(54),
            T = a(z),
            I = i(28),
            N = a(I),
            O = i(68),
            A = a(O),
            P = i(66),
            L = a(P),
            B = i(67),
            D = a(B),
            H = i(98),
            F = a(H),
            R = i(65),
            V = a(R),
            W = i(152),
            q = a(W),
            U = i(16),
            G = a(U),
            X = i(2),
            Y = a(X),
            Z = i(15),
            J = a(Z),
            K = w.default.name("Introduce"),
            Q = Y.default.departments,
            $ = Q && Q.length > 0;
        i(304);
        var ee = function(e) {
            function t(e) {
                (0, l.default)(this, t);
                var i = (0, u.default)(this, (t.__proto__ || (0, n.default)(t)).call(this, e));
                return i.state = {
                    show: "chat/introduce" == _.default.route
                }, i
            }
            return (0, p.default)(t, e), (0, c.default)(t, [{
                key: "componentDidMount",
                value: function() {
                    var e = this;
                    K.log("mounted"), this.on(_.default, function() {
                        e.setState({
                            show: "chat/introduce" == _.default.route
                        })
                    })
                }
            }, {
                key: "componentDidUpdate",
                value: function() {
                    this.updateAvatar()
                }
            }, {
                key: "updateAvatar",
                value: function() {
                    if (this.refs["introduce-avatar"]) {
                        var e = 0,
                            t = void 0,
                            i = this.refs["introduce-avatar"].childNodes[0],
                            a = this.refs["introduce-form"].offsetHeight;
                        a > 0 && !(0, y.hasClass)(i, "introduce-bg") && (S.default.each(this.refs["introduce-form"].childNodes, function(t) {
                            t.offsetHeight > 0 && (e += t.offsetHeight)
                        }), t = a - e - 50, (0, y.showAd)() && (t += 10), Y.default.eula && (t += 15), t < 0 && (t = 0), t < 21 && (i.style.opacity = 0), K.log("updateAvatar", t, e), i.style.height = t + "px", (0, y.addClass)(i, "introduce-bg"))
                    }
                }
            }, {
                key: "successCallback",
                value: function(e) {
                    $ && !j.default.department_id && G.default.setDepartmentId(Y.default.departments[0].id), G.default.sendClientMessage(e), G.default.navigate("chat")
                }
            }, {
                key: "render",
                value: function() {
                    return m.default.createElement("div", {
                        id: "introduce-form",
                        ref: "introduce-form",
                        className: (0, y.showAd)() ? "" : "nologo",
                        style: {
                            display: this.state.show ? "block" : "none"
                        }
                    }, C.default.mobile() || !(0, y.showAd)() ? "" : m.default.createElement(T.default, null), C.default.mobile() ? "" : m.default.createElement("div", {
                        id: "introduce-avatar",
                        ref: "introduce-avatar"
                    }, m.default.createElement(N.default, {
                        src: "icon_anonymous.svg"
                    })), $ ? "" : m.default.createElement("div", {
                        id: "introduce-caption"
                    }, (0, J.default)("lblIntroduceRequest")), m.default.createElement(D.default, null), m.default.createElement(A.default, null), m.default.createElement(L.default, null), m.default.createElement(F.default, null), $ ? m.default.createElement(q.default, null) : "", m.default.createElement(V.default, {
                        successCallback: this.successCallback.bind(this)
                    }))
                }
            }]), t
        }(v.default);
        t.default = ee
    }, function(e, t, i) {
        "use strict";

        function a(e) {
            return e && e.__esModule ? e : {
                default: e
            }
        }
        Object.defineProperty(t, "__esModule", {
            value: !0
        });
        var o = i(8),
            n = a(o),
            r = i(6),
            l = a(r),
            s = i(7),
            c = a(s),
            d = i(10),
            u = a(d),
            f = i(9),
            p = a(f),
            h = i(3),
            m = a(h),
            g = i(12),
            v = a(g),
            b = i(5),
            w = a(b),
            y = i(68),
            x = a(y),
            _ = i(66),
            k = a(_),
            j = i(67),
            E = a(j),
            C = i(65),
            M = a(C),
            S = i(11),
            z = (a(S), i(16)),
            T = a(z),
            I = (i(1), i(15)),
            N = a(I),
            O = i(13),
            A = a(O),
            P = (w.default.name("IntroducePopup"), function(e) {
                function t(e) {
                    return (0, l.default)(this, t), (0, u.default)(this, (t.__proto__ || (0, n.default)(t)).call(this, e))
                }
                return (0, p.default)(t, e), (0, c.default)(t, [{
                    key: "blurPopupInput",
                    value: function(e) {
                        var t = "87px";
                        A.default.mobile() && (t = "100px"), this.refs["introduce-popup"].style.height = t, T.default.onBlur(e)
                    }
                }, {
                    key: "focusPopupInput",
                    value: function(e) {
                        this.refs["introduce-popup"].style.height = this.refs["introduce-popup-content"].offsetHeight + "px", T.default.onFocus(e)
                    }
                }, {
                    key: "render",
                    value: function() {
                        return m.default.createElement("div", {
                            id: "introduce-popup",
                            ref: "introduce-popup",
                            style: {
                                height: A.default.mobile() ? "100px" : "87px"
                            }
                        }, m.default.createElement("div", {
                            id: "introduce-popup-content",
                            ref: "introduce-popup-content"
                        }, m.default.createElement("div", {
                            className: "text-field"
                        }, (0, N.default)("lblIntroduceRequest"), ":"), m.default.createElement("i", {
                            class: "icon-thx"
                        }), m.default.createElement(E.default, {
                            onBlur: this.blurPopupInput.bind(this),
                            onFocus: this.focusPopupInput.bind(this)
                        }), m.default.createElement(x.default, {
                            onBlur: this.blurPopupInput.bind(this),
                            onFocus: this.focusPopupInput.bind(this)
                        }), m.default.createElement(k.default, {
                            onBlur: this.blurPopupInput.bind(this),
                            onFocus: this.focusPopupInput.bind(this)
                        }), m.default.createElement(M.default, {
                            focusPopupInput: this.focusPopupInput.bind(this),
                            onBlur: this.blurPopupInput.bind(this),
                            onFocus: this.focusPopupInput.bind(this)
                        })))
                    }
                }]), t
            }(v.default));
        t.default = P
    }, function(e, t, i) {
        "use strict";

        function a(e) {
            return e && e.__esModule ? e : {
                default: e
            }
        }
        Object.defineProperty(t, "__esModule", {
            value: !0
        });
        var o = i(8),
            n = a(o),
            r = i(6),
            l = a(r),
            s = i(7),
            c = a(s),
            d = i(10),
            u = a(d),
            f = i(9),
            p = a(f),
            h = i(3),
            m = a(h),
            g = i(12),
            v = a(g),
            b = i(5),
            w = a(b),
            y = i(15),
            x = a(y),
            _ = i(2),
            k = (a(_), i(1)),
            j = i(4),
            E = (a(j), i(18)),
            C = a(E),
            M = i(72),
            S = a(M),
            z = i(26),
            T = a(z),
            I = i(28),
            N = a(I),
            O = i(13),
            A = a(O),
            P = w.default.name("MediaMessage");
        i(301);
        var L = function(e) {
            function t(e) {
                (0, l.default)(this, t);
                var i = (0, u.default)(this, (t.__proto__ || (0, n.default)(t)).call(this, e));
                return i.state = {
                    percentComplete: 0,
                    uploading: !e.complete,
                    complete: e.complete,
                    url: !!e.complete && e.media.file_url,
                    type: !!e.complete && (e.media.type || S.default.detectType(e.media.file_type)),
                    error: !1,
                    loaded: 0,
                    total: e.complete ? e.media.file_size >> 0 : 0,
                    file: !1,
                    textSize: T.default.getTextSize(),
                    classes: e.classes
                }, P.log("CONST PROPS:", e), i
            }
            return (0, p.default)(t, e), (0, c.default)(t, [{
                key: "componentDidMount",
                value: function() {
                    var e = this;
                    this.props.complete || (this.props.media.name ? this.on(S.default, {
                        uploading: function(t) {
                            P.log("uploading", t), e.state.complete || e.setState({
                                uploading: !0,
                                percentComplete: 0,
                                loaded: 0,
                                total: t.size
                            })
                        },
                        error: function(t, i, a) {
                            P.log("ERROR:", t), !a && e.state.complete || e.setState({
                                complete: !1,
                                uploading: !1,
                                error: t,
                                file: i
                            }), e.offListeners()
                        },
                        complete: function(t, i) {
                            if (P.log("complete", i, t), !e.state.complete && (e.setState({
                                    uploading: !1,
                                    complete: !0,
                                    url: i,
                                    type: t.icon_type,
                                    error: !1,
                                    total: t.size
                                }), e.props.msgId)) {
                                var a = C.default.getClientMessageById(e.props.msgId)[0];
                                a.complete || (a.complete = !0, C.default.dispatch())
                            }
                            e.offListeners()
                        },
                        progress: function(t, i) {
                            P.log("progress", t, i);
                            var a = (t / i * 100).toFixed(0),
                                o = a,
                                n = m.default.findDOMNode(e.refs.circle);
                            if (isNaN(o)) o = 100;
                            else if (n) {
                                var r = n.getAttribute("r"),
                                    l = Math.PI * (2 * r),
                                    s = (100 - o) / 100 * l;
                                n.style.strokeDashoffset = s
                            }
                            e.state.complete || e.setState({
                                complete: !1,
                                uploading: !0,
                                error: !1,
                                percentComplete: a,
                                loaded: t,
                                total: i
                            })
                        }
                    }) : this.setState({
                        complete: !1,
                        uploading: !1,
                        error: this.props.media.error,
                        file: this.props.media
                    }), T.default.listenChangeZoom(function() {
                        e.setState({
                            textSize: T.default.getTextSize()
                        })
                    }))
                }
            }, {
                key: "handleAbort",
                value: function() {
                    this.state.uploading && (S.default.abort(), this.setState({
                        error: (0, x.default)("file_upl_cancel"),
                        complete: !1,
                        uploading: !1,
                        file: {}
                    }), this.offListeners())
                }
            }, {
                key: "onLoadPreview",
                value: function() {
                    A.default.mobile() && ((0, k.scrollBottom)(), A.default.iphone() && (0, k.scrollRedraw)())
                }
            }, {
                key: "offListeners",
                value: function() {
                    this.off(S.default, "error"), this.off(S.default, "progress"), this.off(S.default, "complete"), this.off(S.default, "uploading")
                }
            }, {
                key: "renderImage",
                value: function(e) {
                    return m.default.createElement("jdiv", {
                        className: "media-wrapper"
                    }, m.default.createElement("a", {
                        className: "preview-link",
                        href: this.state.url || this.props.url,
                        target: "_blank",
                        rel: "nofollow"
                    }, m.default.createElement("img", {
                        onload: this.onLoadPreview.bind(this),
                        src: this.state.url || this.props.url,
                        title: e,
                        className: "preview-media-photo"
                    })), m.default.createElement("jdiv", {
                        className: "new-time",
                        style: {
                            "-webkit-text-size-adjust": this.state.textSize
                        }
                    }, this.props.time))
                }
            }, {
                key: "checkPreview",
                value: function() {
                    return !!this.props.msgId && (!!this.props.preview || S.default.isPreviewImage(this.props.media.name || this.props.media.file_name) && this.state.complete && "photo" == this.state.type)
                }
            }, {
                key: "getUrl",
                value: function(e) {
                    return A.default.mobile() && A.default.chromeIOS() ? e.replace(/^https?\:\/\//i, "googlechrome://") : e
                }
            }, {
                key: "render",
                value: function() {
                    var e = this.state.error ? this.state.file.file_name || this.props.media.name : this.props.media.name,
                        t = this.state.uploading && this.state.loaded > 1,
                        i = this.checkPreview();
                    return this.props.complete && (e = this.props.media.file_name), i && (this.state.classes += " preview"), m.default.createElement("jdiv", {
                        className: this.state.classes
                    }, m.default.createElement("jdiv", {
                        className: "media-wrapper",
                        key: this.props.key
                    }, i && this.renderImage(e), !i && m.default.createElement("jdiv", {
                        className: "new-msg-body"
                    }, m.default.createElement("jdiv", {
                        className: "new-time",
                        style: {
                            "-webkit-text-size-adjust": this.state.textSize
                        }
                    }, this.props.time), m.default.createElement("jdiv", {
                        className: "pip"
                    }), m.default.createElement("jdiv", {
                        className: "new-msg-body-inner"
                    }, m.default.createElement("jdiv", {
                        className: "new-msg-text"
                    }, m.default.createElement("jdiv", {
                        className: "new-msg-text-inner"
                    }, m.default.createElement("jdiv", {
                        className: "media-icon",
                        onClick: this.handleAbort.bind(this),
                        style: {
                            cursor: this.state.uploading ? "pointer" : "default"
                        }
                    }, m.default.createElement("jdiv", {
                        className: "loader-cont",
                        style: {
                            display: this.state.uploading ? "block" : "none"
                        }
                    }, m.default.createElement("svg", {
                        id: "loader",
                        width: "42",
                        height: "42",
                        viewPort: "0 0 21 21",
                        version: "1.1",
                        xmlns: "http://www.w3.org/2000/svg"
                    }, m.default.createElement("circle", {
                        r: "18",
                        cx: "21",
                        cy: "21",
                        fill: "#ffffff",
                        "stroke-dasharray": "119.38",
                        "stroke-dashoffset": "0"
                    }), m.default.createElement("circle", {
                        ref: "circle",
                        className: "loader-bar",
                        r: "18",
                        cx: "21",
                        cy: "21",
                        fill: "transparent",
                        "stroke-dasharray": "119.38",
                        "stroke-dashoffset": "0"
                    })), m.default.createElement("jdiv", {
                        className: "icon-upload icon-loading"
                    })), m.default.createElement("jdiv", {
                        className: "icon-upload",
                        style: {
                            display: this.state.complete ? "block" : "none"
                        }
                    }, m.default.createElement(N.default, {
                        src: "icon_" + this.state.type + ".svg",
                        className: "icon-" + this.state.type
                    })), m.default.createElement("jdiv", {
                        className: "icon-upload",
                        style: {
                            display: this.state.error ? "block" : "none"
                        }
                    }, m.default.createElement(N.default, {
                        src: "icon_error.svg",
                        className: "icon-error"
                    }))), m.default.createElement("jdiv", {
                        className: "media-text"
                    }, m.default.createElement("jdiv", {
                        className: "media-fname",
                        title: e
                    }, e), t && m.default.createElement("jdiv", {
                        className: "media-perc"
                    }, (0, k.humanFileSize)(this.state.loaded) || "", " / ", (0, k.humanFileSize)(this.state.total) || ""), this.state.complete && m.default.createElement("jdiv", {
                        className: "media-complete"
                    }, (0, k.humanFileSize)(this.state.total), " ", m.default.createElement("a", {
                        href: this.getUrl(this.state.url),
                        target: "_blank"
                    }, (0, x.default)("file_upl_download"))), this.state.error && m.default.createElement("jdiv", {
                        className: "media-complete"
                    }, this.state.error))))))))
                }
            }]), t
        }(v.default);
        t.default = L
    }, function(e, t, i) {
        "use strict";

        function a(e) {
            return e && e.__esModule ? e : {
                default: e
            }
        }
        Object.defineProperty(t, "__esModule", {
            value: !0
        });
        var o = i(8),
            n = a(o),
            r = i(6),
            l = a(r),
            s = i(7),
            c = a(s),
            d = i(10),
            u = a(d),
            f = i(9),
            p = a(f),
            h = i(3),
            m = a(h),
            g = i(12),
            v = a(g),
            b = i(5),
            w = a(b),
            y = i(2),
            x = a(y),
            _ = i(15),
            k = a(_),
            j = i(4),
            E = a(j),
            C = i(1),
            M = i(32),
            S = a(M),
            z = i(14),
            T = a(z),
            I = i(18),
            N = a(I),
            O = i(292),
            A = a(O),
            P = i(123),
            L = a(P),
            B = i(122),
            D = a(B),
            H = w.default.name("SocialButton"),
            F = function(e) {
                function t(e) {
                    (0, l.default)(this, t);
                    var i = (0, u.default)(this, (t.__proto__ || (0, n.default)(t)).call(this, e));
                    return i.state = {
                        show: !!e.mode.mode,
                        vk: e.mode.vk,
                        fb: e.mode.fb,
                        popup: !1
                    }, i
                }
                return (0, p.default)(t, e), (0, c.default)(t, [{
                    key: "checkMessage",
                    value: function() {
                        if ("vk" == T.default.has_integration || "fb" == T.default.has_integration) this.setState({
                            show: !1,
                            popup: !1
                        });
                        else if (0 == this.state.show) {
                            var e = N.default.data[N.default.data.length - 1];
                            !e || "clientMessage" != e.type && "mediaMessage" != e.type || this.setState({
                                show: !0
                            })
                        }
                    }
                }, {
                    key: "componentDidMount",
                    value: function() {
                        var e = this;
                        H.log("mounted"), this.on(T.default, function() {
                            "vk" != T.default.has_integration && "fb" != T.default.has_integration || (H.log("Already connected with vk/fb."), E.default.each(N.default.data, function(e, t) {
                                e && e.type && "systemMessageEmail" === e.type && N.default.data.splice(t, 1)
                            }), e.show(!1))
                        }), this.on(N.default, function() {
                            e.checkMessage()
                        })
                    }
                }, {
                    key: "show",
                    value: function(e) {
                        this.setState({
                            show: e
                        })
                    }
                }, {
                    key: "setContainerHeight",
                    value: function() {
                        var e = window.parent.document.getElementById("jivo-iframe-container");
                        parseInt(e.style.height) < 400 && (e.style.height = "410px")
                    }
                }, {
                    key: "processVk",
                    value: function(e) {
                        e.preventDefault(), H.log("processVk"), (0, C.telemetry)("Continue in VK"), S.default.trackContinueInSocial(), this.setContainerHeight(), this.setState({
                            popup: !0,
                            mode: "vk"
                        })
                    }
                }, {
                    key: "processFb",
                    value: function(e) {
                        e.preventDefault(), H.log("processFb"), (0, C.telemetry)("Continue in FB"), S.default.trackContinueInSocial(), this.setContainerHeight(), this.setState({
                            popup: !0,
                            mode: "fb"
                        })
                    }
                }, {
                    key: "close",
                    value: function() {
                        this.setState({
                            popup: !1
                        })
                    }
                }, {
                    key: "renderIframe",
                    value: function() {
                        var e = (0, C.genSocialIframeUrl)(this.state.mode) + "#rand=" + (new Date).getMilliseconds() + ",lang=" + x.default.locale,
                            t = "vk" == this.state.mode ? 52 : 74;
                        return m.default.createElement("iframe", {
                            width: "300",
                            border: "0",
                            height: t,
                            src: e
                        })
                    }
                }, {
                    key: "render",
                    value: function() {
                        return x.default.joint ? (this.state.vk || this.state.fb || (this.state.show = !1), m.default.createElement("div", {
                            id: "vk-button",
                            style: {
                                display: this.state.show ? "block" : "none"
                            }
                        }, m.default.createElement("div", {
                            class: "social-buttons"
                        }, this.state.vk && m.default.createElement("a", {
                            className: "social-link",
                            onClick: this.processVk.bind(this),
                            href: "javascript:false",
                            title: (0, k.default)("social_vk")
                        }, (0, k.default)("social_process_in"), " ", m.default.createElement("div", {
                            class: "icon-vk",
                            dangerouslySetInnerHTML: {
                                __html: L.default
                            }
                        }), " ", (0, k.default)("social_vk")), this.state.fb && m.default.createElement("a", {
                            className: "social-link",
                            onClick: this.processFb.bind(this),
                            href: "javascript:false",
                            title: (0, k.default)("social_fb")
                        }, (0, k.default)("social_process_in_fb"), "��", m.default.createElement("div", {
                            class: "icon-fb",
                            dangerouslySetInnerHTML: {
                                __html: D.default
                            }
                        }), " Facebook Messenger")), m.default.createElement("div", {
                            className: "popup-social " + (this.state.popup ? "popup-open" : ""),
                            style: {
                                top: this.state.popup ? "0%" : "100%"
                            }
                        }, m.default.createElement("div", {
                            className: "social-close",
                            onClick: this.close.bind(this),
                            dangerouslySetInnerHTML: {
                                __html: A.default
                            }
                        }), m.default.createElement("div", {
                            className: "icon-header " + ("vk" == this.state.mode ? "vk" : "fb")
                        }), m.default.createElement("div", {
                            className: "popup-text",
                            dangerouslySetInnerHTML: {
                                __html: "vk" == this.state.mode ? (0, k.default)("social_get_access") : (0, k.default)("social_get_access_fb")
                            }
                        }), this.state.popup && this.renderIframe(), m.default.createElement("a", {
                            href: "#",
                            onClick: this.close.bind(this),
                            class: "popup-close-link"
                        }, (0, k.default)("cancel"))))) : m.default.createElement("div", null)
                    }
                }]), t
            }(v.default);
        t.default = F
    }, function(e, t, i) {
        "use strict";

        function a(e) {
            return e && e.__esModule ? e : {
                default: e
            }
        }
        Object.defineProperty(t, "__esModule", {
            value: !0
        });
        var o = i(8),
            n = a(o),
            r = i(6),
            l = a(r),
            s = i(7),
            c = a(s),
            d = i(10),
            u = a(d),
            f = i(9),
            p = a(f),
            h = i(3),
            m = a(h),
            g = i(12),
            v = a(g),
            b = i(4),
            w = a(b),
            y = i(13),
            x = a(y),
            _ = i(1),
            k = a(_),
            j = i(28),
            E = a(j),
            C = i(11),
            M = a(C),
            S = i(18),
            z = a(S),
            T = i(171),
            I = a(T),
            N = i(93),
            O = a(N),
            A = i(14),
            P = a(A),
            L = i(15),
            B = a(L),
            D = i(2),
            H = a(D),
            F = i(5),
            R = a(F),
            V = i(16),
            W = a(V),
            q = i(92),
            U = a(q),
            G = i(155),
            X = a(G),
            Y = i(26),
            Z = a(Y),
            J = R.default.name("Input"),
            K = function(e) {
                function t() {
                    (0, l.default)(this, t);
                    var e = (0, u.default)(this, (t.__proto__ || (0, n.default)(t)).call(this));
                    return e.state = {
                        hasError: !1,
                        text: "",
                        emojiListState: !1,
                        scrollbarWidth: 0,
                        social: e.checkSocial(),
                        canCall: !1
                    }, e.startTyping = w.default.throttle(function() {
                        if (e.state.text) {
                            var t = H.default.disable_emoji ? e.state.text : e.replaceEmoji(e.state.text);
                            J.log("startTyping", t), W.default.clientTyping(t), W.default.typingInsight(t)
                        }
                    }, 1e3), e.getScrollbarWidth = function() {
                        var t = m.default.findDOMNode(e.refs.inputField);
                        if (t && !x.default.mobileOrTablet()) {
                            var i = 0;
                            t.scrollHeight > t.clientHeight && "hidden" !== t.style.overflowY && (i = k.default.getScrollBarWidth()), e.setState({
                                scrollbarWidth: i
                            })
                        }
                    }, e.ipadVisibilityChange = e.ipadVisibilityChange.bind(e), e.playSound = e.playSound.bind(e), e
                }
                return (0, p.default)(t, e), (0, c.default)(t, [{
                    key: "componentDidMount",
                    value: function() {
                        var e = this;
                        this.autoResizer = (0, I.default)(m.default.findDOMNode(this.refs.inputField), {
                            animate: !1,
                            maxSize: 65,
                            minSize: x.default.mobile() ? 16 : 31,
                            onResize: function() {},
                            onAfterResize: function() {
                                e.getScrollbarWidth()
                            }
                        }), this.checkPlaceholder(), this.on(M.default, function() {
                            var t = m.default.findDOMNode(e.refs.inputField);
                            M.default.is_focused && t && "chat" === M.default.route && !x.default.mobileOrTablet() && setTimeout(function() {
                                t.focus(), M.default.is_focused = 0
                            }, 500), M.default.eula_accepted && e.phone && H.default.eula && (W.default.startCall(e.phone, "", "input_field"), e.phone = !1)
                        }), this.on(P.default, function() {
                            x.default.mobileOrTablet() || (e.setState(e.state), e.checkPlaceholder(), P.default.cw_call_enabled && P.default.cw_call.status && (e.checkCall(P.default.cw_call.status) ? (e.setPlaceholder((0, B.default)("lblEnterMessageOrPhoneHere")), e.setState({
                                canCall: !0
                            })) : (e.setPlaceholder((0, B.default)("lblEnterMessageHere")), e.setState({
                                canCall: !1
                            }))))
                        }), this.on(z.default, function() {
                            e.checkSocial() && e.setState({
                                social: !0
                            }), e.checkPlaceholder()
                        }), (0, _.addListener)(m.default.findDOMNode(this.refs.inputField), "keypress", this.onKeyPress.bind(this)), x.default.mobile() && k.default.addListener(m.default.findDOMNode(this.refs.inputDiv), "click", this.playSound)
                    }
                }, {
                    key: "checkSocial",
                    value: function() {
                        return !(!H.default.joint || P.default.has_integration || x.default.mobileOrTablet() || !(z.default.getClientMessages() > 0) || !z.default.hasAgentMessages() && 3 == H.default.contacts_ask)
                    }
                }, {
                    key: "checkPlaceholder",
                    value: function() {
                        var e = void 0;
                        x.default.mobileOrTablet() ? e = (0, B.default)("lblMessageHere") : P.default.cw_call_enabled && this.checkCall(P.default.cw_call.status) && !w.default.findWhere(z.default.data, {
                            type: "clientMessage"
                        }) ? (e = (0, B.default)("lblEnterMessageOrPhoneHere"), this.setState({
                            canCall: !0
                        })) : (e = (0, B.default)("lblEnterMessageHere"), this.setState({
                            canCall: !1
                        })), e = this.place || e, this.setPlaceholder(e)
                    }
                }, {
                    key: "setPlaceholder",
                    value: function(e) {
                        m.default.findDOMNode(this.refs.inputField).setAttribute("placeholder", e.replace(/&quot;/g, '"').replace(/&#039;/g, "'"))
                    }
                }, {
                    key: "checkCall",
                    value: function(e) {
                        switch (e) {
                            case "cw_wait":
                            case "cw_connecting":
                            case "cw_connected":
                                return !1;
                            default:
                                return !0
                        }
                    }
                }, {
                    key: "componentWillUnmount",
                    value: function() {
                        this.off(), this.windowOnCliked && k.default.removeEvent(window, "click", this.windowOnCliked)
                    }
                }, {
                    key: "onKeyPress",
                    value: function(e) {
                        return 13 === e.keyCode ? (e.preventDefault(), e.stopPropagation(), this.inputSendMessage()) : 8 === e.keyCode && "" === e.target.value && this.setState({
                            text: ""
                        }), !1
                    }
                }, {
                    key: "onInput",
                    value: function(e) {
                        var t = e.target.value.replace(/[\u202E]/gi, "");
                        return "" === t ? (e.target.value = "", "" !== this.state.text && this.setState({
                            text: ""
                        }), void W.default.typingInsight("")) : (this.setState({
                            text: t
                        }), this.startTyping(), clearTimeout(this.typingTimeout), void(this.typingTimeout = setTimeout(this.stopTyping.bind(this), 5e3)))
                    }
                }, {
                    key: "stopTyping",
                    value: function() {
                        J.log("stopTyping"), W.default.clientTyping(!1)
                    }
                }, {
                    key: "toggleEmojiList",
                    value: function(e) {
                        var t = this;
                        e.stopPropagation(), this.state.emojiListState || this.windowOnCliked || (this.windowOnCliked = function() {
                            t.setState({
                                emojiListState: !1
                            })
                        }, (0, _.addListener)(window, "click", this.windowOnCliked)), this.setState({
                            emojiListState: !this.state.emojiListState
                        }), this.state.emojiListState && k.default.telemetry("emoji_open_smile_list")
                    }
                }, {
                    key: "insertEmoji",
                    value: function(e) {
                        var t = this,
                            i = e.target.getAttribute("data-name");
                        null !== i && (this.setState({
                            text: this.state.text + ":" + i + ":",
                            emojiListState: !1
                        }), this.startTyping(), k.default.telemetry("emoji_insert_smile"), setTimeout(function() {
                            t.autoResizer.check();
                            var e = m.default.findDOMNode(t.refs.inputField);
                            e.focus(), e.setSelectionRange && e.setSelectionRange(t.state.text.length + 2, t.state.text.length + 2), M.default.is_focused = 0
                        }, 150))
                    }
                }, {
                    key: "replaceEmoji",
                    value: function(e) {
                        return e.replace(/:\w+:/g, function(e) {
                            var t = e.replace(/:/g, "");
                            return O.default.getEmojiList()[t] ? O.default.fromCodePoint(O.default.getEmojiList()[t]) : e
                        })
                    }
                }, {
                    key: "inputSendMessage",
                    value: function(e) {
                        var t = this,
                            i = H.default.disable_emoji ? this.state.text : this.replaceEmoji(this.state.text);
                        if (P.default.last_message = i, this.setState({
                                text: ""
                            }), H.default.callback_settings.time && P.default.cw_call_enabled && !x.default.mobileOrTablet() && !w.default.findWhere(z.default.data, {
                                type: "clientMessage"
                            }) && k.default.getPhoneNumberInfo(i)) {
                            var a = i.replace(/[^0-9]/gim, "");
                            return w.default.indexOf(["7", "8"], a.charAt(0)) != -1 ? a = a.substr(1, a.length) : "55" == a.substr(0, 2) && (a = a.substr(2)), void(!M.default.eula_accepted && H.default.eula ? (this.phone = a, P.default.client_info.phone = a, W.default.showEula("5@572>=8BL =0 =><5@<br/>" + a), this.setState({
                                phone: a
                            })) : (P.default.client_info.phone = a, W.default.startCall(a, "", "input_field")))
                        }
                        return 1 === H.default.contacts_ask && !P.default.is_introduced && z.default.data.length >= 0 ? (M.default.is_focused = 1, void W.default.navigate("chat/introduce")) : i.trim() ? (W.default.sendClientMessage(i), W.default.typingInsight(""), W.default.clientTyping(!1), setTimeout(function() {
                            t.autoResizer.check()
                        }, 50), void(x.default.mobileOrTablet() && document.activeElement === this.refs.inputField && e && e.preventDefault())) : (this.setState({
                            hasError: !0
                        }), !1)
                    }
                }, {
                    key: "playSound",
                    value: function() {
                        var e = document.getElementById("sound_player");
                        e.play(), e.pause(), k.default.removeEvent(m.default.findDOMNode(this.refs.inputDiv), "click", this.playSound)
                    }
                }, {
                    key: "onFocus",
                    value: function(e) {
                        var t = this;
                        W.default.onFocus(e), x.default.tablet() && Z.default.addTabletPosition(), x.default.ipad() && setTimeout(function() {
                            (0, _.removeEvent)((0, _.getPageWindow)().document, "visibilitychange", t.ipadVisibilityChange), (0, _.addListener)((0, _.getPageWindow)().document, "visibilitychange", t.ipadVisibilityChange)
                        }, 500)
                    }
                }, {
                    key: "onBlur",
                    value: function(e) {
                        W.default.onBlur(e), x.default.tablet() && Z.default.removeTabletPosition()
                    }
                }, {
                    key: "ipadVisibilityChange",
                    value: function() {
                        var e = this;
                        "visible" === document.visibilityState && (0, _.hasClass)((0, _.getPageWindow)().document.documentElement, "jivo-mobile-overlay") && (setTimeout(function() {
                            m.default.findDOMNode(e.refs.inputField).blur()
                        }, 500), (0, _.removeEvent)((0, _.getPageWindow)().document, "visibilitychange", this.ipadVisibilityChange))
                    }
                }, {
                    key: "render",
                    value: function() {
                        var e = x.default.mobile() ? "input-div-mobile" : "",
                            t = "block",
                            i = "emoji-tooltip " + (this.state.emojiListState ? "emoji-tooltip-show" : ""),
                            a = "";
                        return x.default.mobileOrTablet() && "chat/introduce" == M.default.route && (t = "none"), x.default.windowsPhone() && (e += " windows-phone"), H.default.disable_emoji || x.default.tablet() || (a += "emoji"), 0 == H.default.options || H.default.disable_filetransfer || (e += " filetransfer-enabled", a += " filetransfer"), x.default.desktop() && this.state.canCall && !H.default.disable_emoji && !H.default.disable_filetransfer && (a += " call"), m.default.createElement("div", {
                            id: "input-div",
                            className: e + (this.state.hasError ? " error" : "") + (x.default.tablet() ? " tablet" : ""),
                            style: {
                                display: t
                            },
                            ref: "inputDiv"
                        }, m.default.createElement("div", {
                            className: "input-div-table"
                        }, 0 != H.default.options && !H.default.disable_filetransfer && x.default.mobile() && m.default.createElement(X.default, null), m.default.createElement("div", {
                            className: "td-textarea"
                        }, m.default.createElement("textarea", {
                            maxLength: "1000",
                            id: "input-field",
                            className: a,
                            key: "inputField",
                            onInput: this.onInput.bind(this),
                            onFocus: this.onFocus.bind(this),
                            onBlur: this.onBlur.bind(this),
                            ref: "inputField",
                            value: this.state.text,
                            autoComplete: "off"
                        }), !x.default.mobileOrTablet() && !H.default.disable_emoji && m.default.createElement("div", {
                            className: "emoji-wrap",
                            style: {
                                marginRight: this.state.scrollbarWidth + "px"
                            }
                        }, m.default.createElement(E.default, {
                            src: "icon_emoji.svg",
                            className: "emoji-toggle-icon",
                            onClick: this.toggleEmojiList.bind(this)
                        }), m.default.createElement("div", {
                            className: i,
                            onClick: this.insertEmoji.bind(this)
                        }, m.default.createElement("div", null, w.default.map(O.default.getEmojiList(), function(e, t) {
                            return m.default.createElement(O.default, {
                                icon: t,
                                class: "emoji-icon-wrap"
                            })
                        })), m.default.createElement("div", {
                            className: "emoji-tooltip-pip"
                        }))), 0 != H.default.options && !H.default.disable_filetransfer && !x.default.mobile() && m.default.createElement(X.default, {
                            margin: this.state.scrollbarWidth + "px"
                        })), m.default.createElement("div", {
                            className: "td-button"
                        }, x.default.mobileOrTablet() && m.default.createElement("div", null, m.default.createElement("div", {
                            id: "mobile-send-button",
                            onTouchStart: this.inputSendMessage.bind(this),
                            className: this.state.text ? H.default.bubble_color : ""
                        }, m.default.createElement(E.default, {
                            src: "mobile_send_button.svg"
                        })), m.default.createElement("div", {
                            id: "mobile-send-overlay",
                            onTouchStart: this.inputSendMessage.bind(this)
                        })))), this.state.social && m.default.createElement(U.default, {
                            type: "input"
                        }))
                    }
                }]), t
            }(v.default);
        t.default = K
    }, function(e, t, i) {
        "use strict";

        function a(e) {
            return e && e.__esModule ? e : {
                default: e
            }
        }
        Object.defineProperty(t, "__esModule", {
            value: !0
        });
        var o = i(33),
            n = a(o),
            r = i(21),
            l = a(r),
            s = i(8),
            c = a(s),
            d = i(6),
            u = a(d),
            f = i(7),
            p = a(f),
            h = i(10),
            m = a(h),
            g = i(9),
            v = a(g),
            b = i(3),
            w = a(b),
            y = i(12),
            x = a(y),
            _ = i(3),
            k = a(_),
            j = i(173),
            E = a(j),
            C = i(101),
            M = a(C),
            S = i(93),
            z = a(S),
            T = i(4),
            I = a(T),
            N = i(18),
            O = a(N),
            A = i(2),
            P = a(A),
            L = i(1),
            B = a(L),
            D = i(90),
            H = a(D),
            F = i(15),
            R = a(F),
            V = i(13),
            W = a(V),
            q = i(71),
            U = a(q),
            G = i(69),
            X = a(G),
            Y = i(92),
            Z = a(Y),
            J = i(96),
            K = a(J),
            Q = i(16),
            $ = a(Q),
            ee = i(11),
            te = a(ee),
            ie = i(28),
            ae = a(ie),
            oe = i(29),
            ne = a(oe),
            re = i(26),
            le = a(re),
            se = i(5),
            ce = a(se),
            de = i(158),
            ue = a(de),
            fe = i(72),
            pe = a(fe),
            he = ce.default.name("Messages"),
            me = function(e) {
                function t() {
                    (0, u.default)(this, t);
                    var e = (0, m.default)(this, (t.__proto__ || (0, c.default)(t)).call(this));
                    return e.state = {
                        data: O.default.data,
                        textSize: le.default.getTextSize()
                    }, W.default.iphone() && (0, l.default)(e.state, {
                        lineHeight: le.default.getLineHeight()
                    }), e
                }
                return (0, v.default)(t, e), (0, p.default)(t, [{
                    key: "scrollMessages",
                    value: function() {
                        setTimeout(function() {
                            W.default.desktop() || W.default.ipad() ? U.default.update((0, L.showAd)() ? 30 : 0) : (0, L.scrollBottom)()
                        }, 10)
                    }
                }, {
                    key: "componentDidMount",
                    value: function() {
                        var e = this;
                        this.on(te.default, function() {
                            te.default.is_input_focused && W.default.mobileOrTablet() && te.default.isSeparateWindow && setTimeout(function() {
                                e.scrollMessages()
                            }, 400), e.unReadMessages()
                        }), this.on(O.default, function() {
                            te.default.is_online && (e.setState({
                                data: O.default.data
                            }), he.log("render all messages"), e.scrollMessages(), e.unReadMessages())
                        }), ne.default.on("message_state", function() {
                            e.setState({
                                data: O.default.data
                            })
                        }), le.default.listenChangeZoom(function() {
                            var t = {
                                textSize: le.default.getTextSize()
                            };
                            W.default.iphone() && (0, l.default)(t, {
                                lineHeight: le.default.getLineHeight()
                            }), e.setState(t)
                        })
                    }
                }, {
                    key: "componentWillUnmount",
                    value: function() {
                        this.off()
                    }
                }, {
                    key: "unReadMessages",
                    value: function() {
                        var e = [];
                        I.default.each(O.default.data, function(t) {
                            ["receive_file", "cobrowse_highlight", "agentMessage"].indexOf(t.type) >= 0 && !t.ack && !t.proactive && e.push(t.msg_id)
                        }, this), e.length && 0 == te.default.route.indexOf("chat") && $.default.agentMessageAck(e)
                    }
                }, {
                    key: "openCobrowseHighlight",
                    value: function(e) {
                        e.preventDefault();
                        var t = e.currentTarget.getAttribute("data-hash"),
                            i = e.currentTarget.getAttribute("data-url"),
                            a = window.parent.document.getElementById("jivo_magic_iframe");
                        (0, L.telemetry)("cobrowse_click_button"), a ? a.contentWindow.jivo_api.highlightCobrowse(t, i) : X.default.getCobrowseData(t, i)
                    }
                }, {
                    key: "hideFile",
                    value: function() {
                        var e = document.getElementsByClassName("receiveFile");
                        e.length > 0 && (e[e.length - 1].style.display = "none")
                    }
                }, {
                    key: "replaceEmoji",
                    value: function(e) {
                        var t = 0,
                            i = void 0,
                            a = !1;
                        return z.default.parse(e, function() {
                            return t++, ""
                        }), 1 === t && 1 === e.match(/(?:[\0-\x08\x0E-\x1F!-\x9F\xA1-\u167F\u1681-\u1FFF\u200B-\u2027\u202A-\u202E\u2030-\u205E\u2060-\u2FFF\u3001-\uD7FF\uE000-\uFEFE\uFF00-\uFFFF]|[\uD800-\uDBFF][\uDC00-\uDFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])/g).length && (a = !0), i = z.default.replace(e, function(e) {
                            var t = z.default.toCodePoint(e),
                                i = document.createElement("div"),
                                o = {};
                            return a && (o = {
                                width: "30px",
                                height: "30px",
                                lineHeight: "30px",
                                fontSize: "30px"
                            }), k.default.render(w.default.createElement(z.default, {
                                icon: t,
                                className: "emoji-messages",
                                style: o
                            }), i), i.childNodes[0].outerHTML
                        })
                    }
                }, {
                    key: "acceptFile",
                    value: function(e) {
                        e.preventDefault(), this.hideFile(), $.default.handleFile(!0, e.currentTarget.getAttribute("data-id"), e.currentTarget.getAttribute("data-name")), window.open(e.currentTarget.getAttribute("href"))
                    }
                }, {
                    key: "declineFile",
                    value: function(e) {
                        e.preventDefault(), $.default.handleFile(!1, e.currentTarget.getAttribute("data-id"), e.currentTarget.getAttribute("data-name")), this.hideFile()
                    }
                }, {
                    key: "onChangeYandexEmail",
                    value: function(e, t) {
                        var i = e.target,
                            a = i.value,
                            o = H.default.parse(t.set[0].meta.url),
                            r = i.parentNode.getElementsByClassName("action-btn")[0];
                        B.default.isValidValue_email(a) && (0, L.removeClass)(e.target.parentNode, "invoice-email-error"), t.set[0].meta.ymMerchantReceipt.customerContact = B.default.isValidValue_email(a) ? a : "", r.href = o.protocol + "//" + o.host + o.pathname + "?" + (0, L.setGetParam)("ym_merchant_receipt", (0, n.default)(t.set[0].meta.ymMerchantReceipt), o.search)
                    }
                }, {
                    key: "proceedToInvoice",
                    value: function(e, t) {
                        B.default.isValidValue_email(t.set[0].meta.ymMerchantReceipt.customerContact || "") ? P.default.eula && !te.default.eula_accepted && (e.preventDefault(), $.default.showEula(!0, e.currentTarget.getAttribute("href"))) : (e.preventDefault(), (0, L.addClass)(e.currentTarget.parentNode, "invoice-email-error"))
                    }
                }, {
                    key: "renderSendError",
                    value: function(e) {
                        var t = "",
                            i = {
                                "-webkit-text-size-adjust": this.state.textSize
                            };
                        return "clientMessage" == e.type && (t = e.sended ? "" : w.default.createElement("div", {
                            className: "sended"
                        }, (0, R.default)("error_send"), W.default.mobile() ? w.default.createElement("div", {
                            className: "dot"
                        }, ",�") : "")), W.default.mobile() ? w.default.createElement("div", {
                            className: "new-time",
                            style: i
                        }, t && t, (0, M.default)(e.time, "H:MM")) : w.default.createElement("div", {
                            style: i
                        }, w.default.createElement("div", {
                            className: "new-time"
                        }, (0, M.default)(e.time, "H:MM")), t)
                    }
                }, {
                    key: "render",
                    value: function() {
                        var e = this,
                            t = void 0,
                            i = [],
                            a = {
                                "-webkit-text-size-adjust": this.state.textSize
                            };
                        this.state.data.forEach(function(e) {
                            t !== e.type || "agentMessage" !== e.type && "clientMessage" !== e.type ? ("proactive" === e.id && (e.time = e.date), i.push({
                                type: e.type,
                                time: e.time,
                                set: [e]
                            })) : i[i.length - 1].set.push(e), t = e.type
                        }, this);
                        var o = i.map(function(t, i) {
                            t.sended = !0;
                            var o = P.default.bubble_color + " new-msg-container " + t.type + " new-msg-animate",
                                n = "group-" + t.type + "-" + i,
                                r = t.set.map(function(i) {
                                    var o = i.private_id || i.msg_id,
                                        n = i.text || i.comment,
                                        r = i.sended;
                                    return r || (t.sended = !1), i.proactive || (n = I.default.escape(n)), n = n.replace(/(?:\r\n|\r|\n)/g, "<br />"), n = n ? (0, E.default)(n) : "", n = P.default.disable_emoji ? n : e.replaceEmoji(n), w.default.createElement("div", {
                                        className: "new-msg-text",
                                        key: o,
                                        "data-sended": i.sended ? "true" : "false"
                                    }, w.default.createElement("div", {
                                        className: "new-msg-text-inner",
                                        dangerouslySetInnerHTML: {
                                            __html: n
                                        },
                                        style: e.state.lineHeight ? (0, l.default)({
                                            lineHeight: e.state.lineHeight
                                        }, a) : a
                                    }))
                                }),
                                s = w.default.createElement("div", {
                                    className: "new-time",
                                    style: a
                                }, (0, M.default)(t.time, "H:MM"));
                            switch (t.type) {
                                case "agentMessage":
                                case "clientMessage":
                                    return "clientMessage" == t.type && (t.sended || (o += " error-send")), w.default.createElement("div", {
                                        className: o,
                                        key: n
                                    }, w.default.createElement("div", {
                                        className: "pip"
                                    }), w.default.createElement("div", {
                                        className: "new-msg-body"
                                    }, w.default.createElement("div", {
                                        className: "new-msg-body-inner"
                                    }, r)), e.renderSendError(t));
                                case "mediaMessage":
                                case "agentMediaMessage":
                                    var c = t.set[0].media,
                                        d = t.set[0].sign,
                                        u = t.set[0].url,
                                        f = c.error,
                                        p = !0;
                                    return (d || f) && (p = !1), (t.set[0].complete || p) && pe.default.isPreviewImage(c.name || c.file_name) ? (o += " preview", w.default.createElement(ue.default, {
                                        classes: o,
                                        time: (0, M.default)(t.time, "H:MM"),
                                        url: u,
                                        msgId: t.set[0].msg_id,
                                        preview: !0,
                                        media: c,
                                        sign: d,
                                        key: n,
                                        complete: p
                                    })) : w.default.createElement(ue.default, {
                                        classes: o,
                                        time: (0, M.default)(t.time, "H:MM"),
                                        msgId: t.set[0].msg_id,
                                        media: c,
                                        key: n,
                                        complete: p
                                    });
                                case "yandexInvoice":
                                    var h = t.set[0],
                                        m = h.meta,
                                        g = "confirmed" === m.invoice_status,
                                        v = "invoice-message " + (g ? "invoice-success" : "");
                                    return w.default.createElement("div", {
                                        className: o
                                    }, w.default.createElement("div", {
                                        class: v
                                    }, w.default.createElement("div", {
                                        class: "success-icon"
                                    }), w.default.createElement("div", {
                                        class: "invoice-info"
                                    }, w.default.createElement("span", {
                                        class: "invoice-text"
                                    }, (0, R.default)("paymentsInvoice"), m.chat_invoice_id, ":"), w.default.createElement("span", {
                                        class: "product-name"
                                    }, m.invoice_comment, ", "), w.default.createElement("span", {
                                        className: "invoice-amount"
                                    }, w.default.createElement("span", null, m.amount), w.default.createElement(ae.default, {
                                        src: "icon_ruble.svg",
                                        className: "ruble-icon"
                                    })), w.default.createElement("span", {
                                        class: "success-text"
                                    }, (0, R.default)("paymentsSuccess"))), w.default.createElement("a", {
                                        onClick: function(i) {
                                            return e.proceedToInvoice(i, t)
                                        },
                                        href: m.url,
                                        class: "action-btn",
                                        rel: "nofollow noopener noreferrer",
                                        target: "_blank"
                                    }, w.default.createElement("div", {
                                        className: "action-text"
                                    }, (0, R.default)("paymentsPay")), w.default.createElement("div", {
                                        className: "by-yandex"
                                    }, (0, R.default)("byYandex"))), !g && w.default.createElement("div", {
                                        class: "invoice-email-label"
                                    }, (0, R.default)("invoiceEmail")), !g && w.default.createElement("input", {
                                        onInput: function(i) {
                                            return e.onChangeYandexEmail(i, t)
                                        },
                                        class: "invoice-email-input",
                                        value: m.ymMerchantReceipt.customerContact || "",
                                        placeholder: (0, R.default)("enterEmailPlaceholder")
                                    })), s, w.default.createElement("div", {
                                        className: "pip"
                                    }));
                                case "systemMessage":
                                case "systemMessageSocial":
                                case "systemMessageSocialOp":
                                    var b = (0, E.default)(t.set[0].text);
                                    return b = e.replaceEmoji(b), w.default.createElement("div", {
                                        className: o
                                    }, w.default.createElement("div", {
                                        className: "new-msg-body"
                                    }, w.default.createElement("div", {
                                        className: "new-msg-body-inner"
                                    }, w.default.createElement("div", {
                                        className: "new-msg-text"
                                    }, w.default.createElement("div", {
                                        className: "new-msg-text-inner",
                                        dangerouslySetInnerHTML: {
                                            __html: b
                                        }
                                    })))));
                                case "systemSocial":
                                    return w.default.createElement(Z.default, {
                                        type: "chat",
                                        classes: o
                                    });
                                case "systemMessageEmail":
                                    var y = e.replaceEmoji(t.set[0].text);
                                    return w.default.createElement(K.default, {
                                        text: y
                                    });
                                case "cobrowse_highlight":
                                    return o = "new-msg-container agentHighlight " + P.default.bubble_color + " new-msg-container-history", w.default.createElement("div", {
                                        className: o
                                    }, w.default.createElement("div", {
                                        className: "pip"
                                    }), w.default.createElement("div", {
                                        className: "new-msg-text new-msg-text-history"
                                    }, w.default.createElement("div", {
                                        className: "new-msg-text-inner"
                                    }, r)), w.default.createElement("div", {
                                        className: "cobrowse-btn-container"
                                    }, w.default.createElement("a", {
                                        href: "#",
                                        onClick: function(t) {
                                            return e.openCobrowseHighlight(t)
                                        },
                                        "data-url": t.set[0].page_url,
                                        "data-hash": t.set[0].hash
                                    }, w.default.createElement("div", {
                                        className: "white-cloud"
                                    }), (0, R.default)("lblView"))), s);
                                case "callMessageStart":
                                case "callMessageEnd":
                                    return w.default.createElement("div", {
                                        className: o
                                    }, w.default.createElement("div", {
                                        className: "new-msg-body"
                                    }, w.default.createElement("div", {
                                        className: "new-msg-body-inner"
                                    }, w.default.createElement("div", {
                                        className: "new-msg-text"
                                    }, w.default.createElement("div", {
                                        className: "icon"
                                    }, t.set[0].text)))));
                                case "receiveFile":
                                    return w.default.createElement("div", {
                                        className: "new-msg-container receiveFile"
                                    }, w.default.createElement("div", {
                                        className: "new-msg-body"
                                    }, w.default.createElement("div", {
                                        className: "new-msg-body-inner"
                                    }, w.default.createElement("div", {
                                        className: "new-msg-text"
                                    }, w.default.createElement("div", {
                                        className: "new-msg-text-inner"
                                    }, (0, R.default)("lblSendingFile").replace("_FILE_", t.set[0].fileName).replace("_AGENT_", t.set[0].agentName))), w.default.createElement("div", {
                                        className: "evaluation-btn-container"
                                    }, w.default.createElement("a", {
                                        onClick: e.acceptFile.bind(e),
                                        href: t.set[0].fileUrl,
                                        id: "receive_file_{{ fileId }}",
                                        "data-id": t.set[0].fileId,
                                        "data-name": t.set[0].fileName,
                                        target: "_blank",
                                        class: "button accept",
                                        ref: "acceptFile"
                                    }, (0, R.default)("lblReceiveFile")), w.default.createElement("a", {
                                        onClick: e.declineFile.bind(e),
                                        href: "#",
                                        className: "button decline",
                                        "data-id": t.set[0].fileId,
                                        "data-name": t.set[0].fileName,
                                        ref: "declineFile"
                                    }, (0, R.default)("lblDeclineFile"))))))
                            }
                        });
                        return w.default.createElement("div", {
                            id: "messages-div-inner",
                            className: "overview messages-div-inner"
                        }, o, w.default.createElement("div", {
                            id: "messages-div-inner-clear"
                        }))
                    }
                }]), t
            }(x.default);
        t.default = me
    }, function(e, t, i) {
        "use strict";

        function a(e) {
            return e && e.__esModule ? e : {
                default: e
            }
        }
        Object.defineProperty(t, "__esModule", {
            value: !0
        });
        var o = i(21),
            n = a(o),
            r = i(8),
            l = a(r),
            s = i(6),
            c = a(s),
            d = i(7),
            u = a(d),
            f = i(10),
            p = a(f),
            h = i(9),
            m = a(h),
            g = i(3),
            v = a(g),
            b = i(12),
            w = a(b),
            y = i(54),
            x = a(y),
            _ = i(68),
            k = a(_),
            j = i(66),
            E = a(j),
            C = i(67),
            M = a(C),
            S = i(98),
            z = a(S),
            T = i(65),
            I = a(T),
            N = i(11),
            O = a(N),
            A = i(1),
            P = i(2),
            L = a(P),
            B = i(16),
            D = a(B),
            H = i(14),
            F = a(H),
            R = i(13),
            V = a(R),
            W = i(15),
            q = a(W),
            U = i(5),
            G = a(U),
            X = (G.default.name("OfflineBody"), function(e) {
                function t() {
                    (0, c.default)(this, t);
                    var e = (0, p.default)(this, (t.__proto__ || (0, l.default)(t)).call(this));
                    return e.value = "", e.state = {
                        show: 0 == O.default.route.indexOf("chat") && !O.default.is_online,
                        msg: "chat/msg" === O.default.route,
                        captcha: "chat/captcha" === O.default.route,
                        captchaError: !1,
                        androidTablet: !1,
                        hide: !1
                    }, e
                }
                return (0, m.default)(t, e), (0, u.default)(t, [{
                    key: "componentDidMount",
                    value: function() {
                        var e = this;
                        this.on(O.default, function() {
                            var t = window.orientation,
                                i = O.default.is_input_focused && V.default.android() && V.default.tablet() && 90 != t && t != -90,
                                a = !1;
                            L.default.eula && O.default.show_eula && (a = !0), "chat/msg" === O.default.route ? e.setState({
                                msg: !0,
                                captcha: !1,
                                androidTablet: i,
                                hide: a
                            }) : "chat/captcha" === O.default.route ? e.setState({
                                captcha: !0,
                                captchaError: "error" === O.default.cap_result,
                                androidTablet: i,
                                hide: a
                            }) : e.setState({
                                show: 0 == O.default.route.indexOf("chat") && !O.default.is_online,
                                captcha: !1,
                                msg: !1,
                                androidTablet: i,
                                hide: a
                            })
                        })
                    }
                }, {
                    key: "componentWillUnmount",
                    value: function() {
                        this.off()
                    }
                }, {
                    key: "getOfflineData",
                    value: function() {
                        var e = this.refs.textArea.refs.message.value;
                        "" !== e && (this.value = e);
                        var t = {
                                message: this.value
                            },
                            i = this.refs.cap_symbols.value;
                        return i && (t.cap_symbols = i), this.refs.cap_symbols.value = "", (0, n.default)(t, F.default.client_info)
                    }
                }, {
                    key: "submitCaptcha",
                    value: function() {
                        D.default.sendOfflineMessage(this.getOfflineData.call(this))
                    }
                }, {
                    key: "closeCaptcha",
                    value: function() {
                        D.default.navigate("chat")
                    }
                }, {
                    key: "cancel",
                    value: function() {
                        D.default.closeWidget()
                    }
                }, {
                    key: "successCallback",
                    value: function() {
                        F.default.last_message = null, D.default.sendOfflineMessage(this.getOfflineData.call(this))
                    }
                }, {
                    key: "onKeyPressCaptcha",
                    value: function() {
                        (0, A.removeClass)(this.refs["captcha-container"], "captcha-empty")
                    }
                }, {
                    key: "renderCheckIframe",
                    value: function() {
                        return !1
                    }
                }, {
                    key: "render",
                    value: function() {
                        var e = this,
                            t = "block";
                        this.state.hide && (t = "none");
                        var i = this.state.androidTablet ? {
                            overflow: "auto",
                            background: "transparent",
                            display: t
                        } : {
                            display: t
                        };
                        return v.default.createElement("div", {
                            id: "offline-form",
                            className: (0, A.showAd)() ? "" : "nologo",
                            style: i
                        }, v.default.createElement("div", {
                            id: "offline-form-inner",
                            className: this.state.msg ? "system-message-container" : ""
                        }, v.default.createElement("div", {
                            id: "offline-form-fields",
                            style: {
                                display: this.state.msg || this.state.captcha ? "none" : "block"
                            }
                        }, v.default.createElement("div", {
                            className: "description"
                        }, L.default.offline_form_text), v.default.createElement(z.default, {
                            ref: "textArea"
                        }), v.default.createElement(M.default, {
                            onBlur: D.default.onBlur.bind(this),
                            onFocus: D.default.onFocus.bind(this)
                        }), v.default.createElement(k.default, {
                            onBlur: D.default.onBlur.bind(this),
                            onFocus: D.default.onFocus.bind(this)
                        }), v.default.createElement(E.default, {
                            onBlur: D.default.onBlur.bind(this),
                            onFocus: D.default.onFocus.bind(this)
                        }), v.default.createElement(I.default, {
                            successCallback: this.successCallback.bind(this)
                        })), v.default.createElement("div", {
                            className: "captcha-container" + (this.state.captchaError ? " captcha-empty" : ""),
                            ref: "captcha-container",
                            style: {
                                display: this.state.captcha ? "block" : "none"
                            }
                        }, v.default.createElement("div", {
                            className: "body"
                        }, v.default.createElement("img", {
                            src: O.default.cap_id ? L.default.avatar_url + "/captcha/" + O.default.cap_id + ".png" : "",
                            alt: "captcha code image"
                        }), v.default.createElement("input", {
                            type: "text",
                            ref: "cap_symbols",
                            onKeyPress: function() {
                                return e.onKeyPressCaptcha()
                            },
                            className: "input-field cap_symbols",
                            value: "",
                            placeholder: (0, q.default)("lblCaptcha")
                        }), v.default.createElement("input", {
                            id: "resend",
                            type: "button",
                            onClick: function() {
                                return e.submitCaptcha()
                            },
                            className: "jivoBtn accept",
                            value: "Ok"
                        }), v.default.createElement("div", {
                            className: "error",
                            style: {
                                display: this.state.captchaError ? "block" : "none"
                            }
                        }, (0, q.default)("lblCaptchaError"))), v.default.createElement("a", {
                            id: "cancelCap",
                            className: "jivoBtn cancel",
                            onClick: function() {
                                return e.closeCaptcha()
                            },
                            href: "#"
                        }, (0, q.default)("lblEvaluateCancel"))), v.default.createElement("div", {
                            className: "message-wrapper",
                            style: {
                                display: this.state.msg ? "block" : "none"
                            }
                        }, v.default.createElement("div", {
                            className: "description message"
                        }, (0, q.default)("lblThankYouMessage")), v.default.createElement("div", {
                            id: "buttons"
                        }, v.default.createElement("input", {
                            type: "button",
                            value: (0, q.default)("lnkCloseThisWindow"),
                            onClick: function() {
                                return e.cancel()
                            },
                            className: "jivoBtn accept"
                        }))), (0, A.showAd)() && v.default.createElement(x.default, null), this.renderCheckIframe()))
                    }
                }]), t
            }(w.default));
        t.default = X
    }, function(e, t, i) {
        "use strict";

        function a(e) {
            return e && e.__esModule ? e : {
                default: e
            }
        }
        Object.defineProperty(t, "__esModule", {
            value: !0
        });
        var o = i(24),
            n = a(o),
            r = i(8),
            l = a(r),
            s = i(6),
            c = a(s),
            d = i(7),
            u = a(d),
            f = i(10),
            p = a(f),
            h = i(9),
            m = a(h),
            g = i(3),
            v = a(g),
            b = i(12),
            w = a(b),
            y = i(1),
            x = i(5),
            _ = a(x),
            k = i(29),
            j = a(k),
            E = i(43),
            C = a(E),
            M = _.default.name("Sound"),
            S = function(e) {
                function t() {
                    (0, c.default)(this, t);
                    var e = (0, p.default)(this, (t.__proto__ || (0, l.default)(t)).call(this));
                    return e.windowOnClicked = e.windowOnClicked.bind(e), e
                }
                return (0, m.default)(t, e), (0, u.default)(t, [{
                    key: "componentDidMount",
                    value: function() {
                        var e = this;
                        M.log("mounted"), this.audio = v.default.findDOMNode(this.refs.soundPlayer), this.on(j.default, {
                            agent_message: function() {
                                e.play()
                            },
                            agent_service_message: function() {
                                e.play()
                            }
                        }), this.on(C.default, {
                            play_sound: function() {
                                e.play()
                            }
                        })
                    }
                }, {
                    key: "componentWillUnmount",
                    value: function() {
                        this.off()
                    }
                }, {
                    key: "windowOnClicked",
                    value: function() {
                        this.audio.play(), clearTimeout(this.touchListenerTimeout), this.removeListeners()
                    }
                }, {
                    key: "removeListeners",
                    value: function() {
                        (0, y.removeEvent)(window.parent, "click", this.windowOnClicked), (0, y.removeEvent)(window, "click", this.windowOnClicked), this.touchListenerTimeout = null
                    }
                }, {
                    key: "play",
                    value: function() {
                        var e = this,
                            t = this.audio;
                        if (t && "undefined" != typeof t.play) {
                            var i = t.play();
                            "object" !== ("undefined" == typeof i ? "undefined" : (0, n.default)(i)) && "function" != typeof i || !i.then || "function" != typeof i.then ? t.play() : i.then().catch(function() {
                                e.touchListenerTimeout || ((0, y.addListener)(window.parent, "click", e.windowOnClicked), (0, y.addListener)(window, "click", e.windowOnClicked), e.touchListenerTimeout = setTimeout(function() {
                                    e.removeListeners()
                                }, 3e3))
                            })
                        }
                    }
                }, {
                    key: "pause",
                    value: function() {
                        "undefined" != typeof this.audio.play && this.audio.pause()
                    }
                }, {
                    key: "render",
                    value: function() {
                        var e = "/sounds/incoming_message.",
                            t = (0, y.staticUrl)(e + "mp3", !0),
                            i = (0, y.staticUrl)(e + "ogg", !0),
                            a = (0, y.staticUrl)(e + "wav", !0);
                        return v.default.createElement("audio", {
                            preload: "auto",
                            id: "sound_player",
                            ref: "soundPlayer"
                        }, v.default.createElement("source", {
                            src: t,
                            type: "audio/mpeg"
                        }), v.default.createElement("source", {
                            src: i,
                            type: "audio/ogg; codecs=vorbis"
                        }), v.default.createElement("source", {
                            src: a,
                            type: "audio/wav"
                        }))
                    }
                }]), t
            }(w.default);
        t.default = S
    }, function(t, i, a) {
        "use strict";

        function o(e) {
            return e && e.__esModule ? e : {
                default: e
            }
        }
        Object.defineProperty(i, "__esModule", {
            value: !0
        });
        var n = a(21),
            r = o(n),
            l = a(4),
            s = o(l),
            c = a(14),
            d = o(c),
            u = a(27),
            f = o(u),
            p = a(18),
            h = o(p),
            m = a(56),
            g = o(m),
            v = a(11),
            b = o(v),
            w = a(1),
            y = o(w),
            x = a(2),
            _ = o(x),
            k = a(15),
            j = o(k),
            E = a(55),
            C = o(E),
            M = a(16),
            S = o(M),
            z = a(32),
            T = o(z),
            I = a(13),
            N = o(I),
            O = a(5),
            A = o(O),
            P = A.default.name("actions/connection");
        i.default = {
            accept: function(e) {
                b.default.chat_started = !0, d.default.evaluate = !1, (0, r.default)(f.default, e.agent_info), d.default.pa_id = f.default.agent_id, T.default.trackChatConnected(), (0, w._callUserFunction)("onAccept")
            },
            transferred: function(e) {
                (0, r.default)(f.default, e.agent_info), h.default.push(new g.default({
                    text: (0, j.default)("lblTransferred").replace("_AGENT_", e.agent_info.display_name),
                    type: "systemMessage"
                })), d.default.pa_id = f.default.agent_id
            },
            startup_ok: function(e) {
                P.log(e), b.default.reload(), d.default.reload(), d.default.client_id = e.jv_client_id, d.default.jv_sess_id = e.jv_sess_id, d.default.has_integration = e.client_info.has_integration, d.default.client_info.client_name = e.client_info.name, b.default.chat_started = h.default.data.length > 0, 1 == h.default.data.length && h.default.getProactive() && (b.default.chat_started = !1)
            },
            startup_error: function(e) {
                "blacklisted" == e.err_code ? (d.default.is_blacklisted = !0, S.default.navigate("hidden")) : (P.log("startup_error", e), i.default.force_offline(e))
            },
            resume_ok: function(e) {
                P.log(e), b.default.reload(), d.default.reload();
                var t = e.client_info.cw_call;
                t && ((0, r.default)(d.default.cw_call, t), b.default.is_online ? "chat" == b.default.route && S.default.navigate("chat/call") : "cw_connected" == t.status ? S.default.navigate("call/min") : S.default.navigate("call"));
                var i = e.client_info.msg_history;
                b.default.chat_started = !!(t || e.agent_info || i && i.length), N.default.mobile() && b.default.isSeparateWindow && b.default.is_online && (b.default.is_focused = 1);
                var a = h.default.data;
                s.default.each(i, function(e, t) {
                    e.sended = !0, "clientMessage" == e.type && e.media && (e.type = "mediaMessage"), 1 === e.implicit || s.default.findWhere(h.default.data, {
                        msg_id: e.msg_id
                    }) || s.default.findWhere(h.default.data, {
                        id: e.id
                    }) || s.default.findWhere(h.default.data, {
                        hash: e.hash
                    }) || (0 === t && "proactive" !== e.id && s.default.filter(a, function(e) {
                        return 1 === e.proactive
                    }).length > 0 && 1 === a.length ? h.default.data = [new g.default(e)] : "proactive" === e.id && s.default.filter(a, function(e) {
                        return 1 === e.proactive
                    }).length > 0 || h.default.push(new g.default(e)))
                });
                var o = s.default.filter(h.default.data, function(e) {
                    return 1 == e.proactive
                });
                if (P.log("restore proactive # ", b.default.proactive, o), b.default.proactive && 0 == o.length && !b.default.chat_started) h.default.push(new g.default({
                    type: "agentMessage",
                    text: b.default.proactive.text,
                    proactive: 1,
                    agent_id: b.default.proactive.agent_info.agent_id
                })), e.agent_info || (0, r.default)(f.default, b.default.proactive.agent_info);
                else {
                    var n = s.default.findWhere(h.default.data, {
                        type: "clientMessage"
                    });
                    (!b.default.chat_started && s.default.indexOf(["chat/min", "chat"], b.default.route) !== -1 && 0 == o.length && b.default.is_online && !b.default.isSeparateWindow || N.default.tablet() && (n || !b.default.is_online) && !b.default.isSeparateWindow) && (P.log("resume_ok navigate label", b.default.route), n || "label" == b.default.route || S.default.navigate("label"))
                }
                e.client_info.has_integration && (d.default.has_integration = e.client_info.has_integration), 3 == _.default.contacts_ask && S.default.addSocialMessage(), N.default.mobileOrTablet() && b.default.isSeparateWindow && S.default.updateTitle((0, w.getURLParam)("title")), e.agent_info && (0, r.default)(f.default, e.agent_info)
            },
            cw_wait: function(e) {
                var t = (0, j.default)("cw_call_to") + " " + d.default.client_info.phone;
                S.default.systemMessage(t, "callMessageStart"), d.default.cw_call.status = e.name, (0, w._callUserFunction)("onCallStart")
            },
            cw_call_end: function(e) {
                h.default.push(new g.default({
                    text: (0, j.default)("c_callDisconnected"),
                    type: "callMessageEnd"
                })), d.default.cw_call.status = e.name, d.default.cw_call_enabled = !0, "call/min" == b.default.route && S.default.navigate("call"), "chat/call" == b.default.route && S.default.navigate("chat"), (0, w._callUserFunction)("onCallEnd", {
                    result: "ok"
                }), (0, w.telemetry)("cw_call_end")
            },
            cw_connecting: function(e) {
                d.default.cw_call.status = e.name, (0, r.default)(f.default, {
                    agent_id: 1,
                    display_name: e.display_name,
                    avatar_url: e.avatar_url,
                    title: e.title
                })
            },
            cw_connected: function(e) {
                d.default.cw_call.status = e.name, d.default.cw_call_enabled = !1, "call" == b.default.route && S.default.navigate("call/min")
            },
            cw_error: function(e) {
                var t = (0, j.default)(e.reason);
                t || (t = (0, j.default)("cw_unableToConnect") + " " + (0, j.default)("cw_errInfoText")), h.default.push(new g.default({
                    text: t,
                    type: "callMessageEnd"
                })), d.default.cw_call_enabled = !0, d.default.cw_call.status = e.name, d.default.cw_call.error = t, "call/min" == b.default.route && S.default.navigate("call"), (0, w._callUserFunction)("onCallEnd", {
                    result: "fail",
                    reason: t
                }), (0, w.telemetry)("cw_call_error", {
                    param1: e.reason
                })
            },
            agent_message: function(e) {
                P.log("agent_message");
                var t = 0 == b.default.route.indexOf("chat");
                h.default.push(new g.default({
                    text: e.message,
                    type: "agentMessage",
                    private_id: e.private_id,
                    msg_id: e.msg_id,
                    chat_id: e.chat_id,
                    meta: e.meta,
                    ack: t ? 1 : 0,
                    media: e.media
                })), t && S.default.agentMessageAck([e.msg_id]), d.default.last_message = null, N.default.mobile() || b.default.isSeparateWindow || (S.default.navigate("chat"), f.default.typing = !1, C.default.startBlink())
            },
            agent_chat_close: function() {
                b.default.chat_started = !1, d.default.department_id = null
            },
            agent_service_message: function(t) {
                switch (t.service) {
                    case "file_transfer":
                        "receive_file_request" === t.event && (h.default.push(new g.default({
                            fileUrl: t.file_url,
                            fileName: t.file_name,
                            fileId: t.file_id,
                            state: "pending",
                            type: "receiveFile",
                            agentName: f.default.display_name
                        })), S.default.navigateServiceMessage());
                        break;
                    case "cobrowse":
                        "highlight" === t.event && (h.default.push(new g.default({
                            text: t.comment,
                            type: "cobrowse_highlight",
                            page_url: t.page_url,
                            hash: t.hash
                        })), S.default.navigateServiceMessage());
                        break;
                    default:
                        P.log("unhandled agent_service_message", e)
                }
                C.default.startBlink()
            },
            agent_typing: function(e) {
                f.default.typing = e.typing
            },
            message_state: function(e) {
                var t = s.default.findWhere(h.default.data, {
                    private_id: e.private_id
                });
                delete e.name, t && (t.sended = !0, (0, r.default)(t, e))
            },
            blacklist: function() {
                d.default.is_blacklisted = !0, S.default.navigate("hidden")
            },
            disconnecting: function() {},
            force_offline: function(e) {
                var t = e.err_code ? e.err_code : e.name;
                b.default.forcedOffline = t, (0, w.telemetry)("force_offline", t), y.default.hideOffline() ? S.default.hideWidget() : S.default.setOffline()
            },
            update_client: function(e) {
                !e.has_integration || "vk" != e.has_integration && "fb" != e.has_integration || (d.default.has_integration = e.has_integration, h.default.push(new g.default({
                    text: (0, j.default)("social_success_" + d.default.has_integration),
                    type: "systemMessageSocial"
                })), (0, w.telemetry)("social_receive_has_integration_" + d.default.has_integration))
            },
            connect_failed: function() {
                b.default.forcedOffline = "connect_failed"
            },
            offline_ack: function(e) {
                S.default.offlineAck(e)
            }
        }
    }, function(e, t, i) {
        "use strict";

        function a(e) {
            return e && e.__esModule ? e : {
                default: e
            }
        }
        Object.defineProperty(t, "__esModule", {
            value: !0
        });
        var o = i(21),
            n = a(o),
            r = i(14),
            l = a(r),
            s = i(27),
            c = a(s),
            d = i(18),
            u = a(d),
            f = i(56),
            p = a(f),
            h = i(11),
            m = a(h),
            g = i(1),
            v = i(16),
            b = a(v),
            w = i(13),
            y = a(w),
            x = i(4),
            _ = a(x);
        t.default = {
            proactive: function(e, t) {
                if ((0, n.default)(c.default, t), u.default.getProactive()) {
                    var i = _.default.findWhere(u.default.data, {
                        proactive: 1
                    });
                    i && (i.text = e)
                } else u.default.push(new p.default({
                    ack: y.default.mobile() && "label" === m.default.route ? 0 : 1,
                    type: "agentMessage",
                    text: e,
                    proactive: 1,
                    agent_id: c.default.agent_id
                }));
                (0, g.telemetry)("chat invite"), b.default.pageVisible(), "label" !== m.default.route || y.default.mobile() || b.default.navigate("chat")
            },
            showCallForm: function(e, t) {
                b.default.requestCWAvailable(function() {
                    console.log("RULE MANAGER: ", l.default.cw_call_enabled, "label" == m.default.route), l.default.cw_call_enabled && "label" == m.default.route && (m.default.callText = e, b.default.navigate("call"), "function" == typeof t && t())
                })
            },
            systemMessage: function(e) {
                u.default.push(new p.default({
                    type: "systemMessage",
                    text: e
                })), "label" != m.default.route || y.default.mobile() || b.default.navigate("chat")
            },
            systemMessageEmail: function(e) {
                l.default.has_integration ? console.log("systemMessageEmail failed, client has integration") : (u.default.push(new p.default({
                    type: "systemMessageEmail",
                    text: e
                })), "label" != m.default.route || y.default.mobile() || b.default.navigate("chat"))
            },
            openOffline: function() {
                "label" != m.default.route || y.default.mobile() || b.default.navigate("chat")
            }
        }
    }, function(e, t, i) {
        "use strict";

        function a(e) {
            return e && e.__esModule ? e : {
                default: e
            }
        }
        Object.defineProperty(t, "__esModule", {
            value: !0
        });
        var o = i(24),
            n = a(o),
            r = i(2),
            l = a(r),
            s = i(29),
            c = a(s),
            d = i(1),
            u = a(d),
            f = i(42),
            p = a(f),
            h = i(4),
            m = a(h),
            g = i(5),
            v = a(g),
            b = i(13),
            w = a(b),
            y = i(14),
            x = a(y),
            _ = i(43),
            k = a(_),
            j = i(32),
            E = a(j),
            C = i(69),
            M = a(C),
            S = i(11),
            z = a(S),
            T = i(16),
            I = a(T),
            N = v.default.name("api"),
            O = {},
            A = function(e, t) {
                O[e] || (u.default.telemetry(e, t), O[e] = !0)
            },
            P = {
                open: function(e) {
                    A("api open", e);
                    var t = u.default.getPageWindow();
                    return x.default.is_blacklisted ? {
                        result: "fail"
                    } : (t.jivo_cstm_widget && w.default.mobileOrTablet() && (t.jivo_cstm_widget.style.display = "block"), "object" === ("undefined" == typeof e ? "undefined" : (0, n.default)(e)) && "call" === e.start ? !l.default.callback_settings.time || w.default.mobileOrTablet() ? (N.info("Callback is disabled."), {
                        result: "fail",
                        reason: "Callback is disabled"
                    }) : (k.default.allRulesCancel(), I.default.pingAndOpenCall(), {
                        result: "ok"
                    }) : "chat" == z.default.route ? {
                        result: "ok",
                        opened: !0
                    } : (I.default.navigate("chat"), {
                        result: "ok"
                    }))
                },
                close: function() {
                    return A("api close"), x.default.is_blacklisted ? {
                        result: "fail"
                    } : ["label", "chat/min"].indexOf(z.default.route) >= 0 ? {
                        result: "ok",
                        closed: !0
                    } : ("label" == z.default.route || z.default.chat_started ? "chat" == z.default.route && I.default.navigate("chat/min") : I.default.navigate("label"), {
                        result: "ok"
                    })
                },
                getContactInfo: function() {
                    A("api getContactInfo");
                    var e = x.default.client_info;
                    return {
                        client_name: e.client_name,
                        email: e.email,
                        phone: e.phone,
                        description: e.description
                    }
                },
                getVisitorNumber: function(e) {
                    N.log("getVisitorNumber", e);
                    var t = x.default.client_id;
                    return t && t.indexOf(".") > 0 && "function" == typeof e ? void setTimeout(function() {
                        e(null, t.split(".").shift())
                    }, 0) : (N.error("Error fetching visitor number"), this.callback = e, A("api getVisitorNumber async"), void u.default.getJSONPWithData(u.default.chatServerUrl(l.default.widget_id, l.default.site_id), {
                        name: "visitor_number"
                    }, m.default.bind(function(t) {
                        if ("object" === ("undefined" == typeof t ? "undefined" : (0, n.default)(t)) && t.result && "client_id" in t) {
                            if (x.default.client_id || (x.default.client_id = t.client_id), "function" == typeof e) return void e(null, x.default.client_id.split(".").shift());
                            N.error("Please provide callback in jivo_api.getVisitorNumber(callback)")
                        } else N.error("Error fetching visitor number")
                    }, this)))
                },
                setUserToken: function(e) {
                    return A("api setUserToken"), "string" == typeof e || e instanceof String ? (c.default.setUserToken(e), {
                        result: "ok",
                        token: e
                    }) : (N.error("Bad token. The token must be type of string"), {
                        result: "fail",
                        token: c.default.user_token || !1
                    })
                },
                setCustomData: function(e) {
                    if (A("api setCustomData"), l.default.webhooks_enabled) return {
                        result: "fail",
                        reason: "Webhooks enabled. You must disable it to use setCustomData"
                    };
                    var t = this.validateCustomData(e);
                    return t === !0 ? (c.default.setCustomData(e), {
                        result: "ok"
                    }) : (N.error("Invalid custom data.", t), {
                        result: "fail",
                        reason: t
                    })
                },
                validateCustomData: function(e) {
                    var t = "";
                    if (!Array.isArray(e)) return "Data must be array.";
                    (0 == e.length || e.length > 10) && (t += "Data limit error, data length  must be 1 to 10.");
                    for (var i = 0; i < e.length; i++) N.log("Content must be string", (0, n.default)(e[i].content)), "string" != typeof e[i].content && (t += "Property content must be string. ");
                    return "" == t || t
                },
                sendMessage: function(e, t) {
                    if (A("api sendMessage"), "[object Object]" === Object.prototype.toString.call(e)) {
                        var i = u.default.setImplicitGuiMessage(e, t + " \n"),
                            a = {
                                name: "client_message",
                                message: i,
                                implicit: 1
                            };
                        return c.default.isConnected() ? (c.default.send(a), {
                            result: "ok"
                        }) : {
                            result: "fail",
                            error: "Error send message."
                        }
                    }
                    return N.error("Invalid data, must be object."), {
                        result: "fail",
                        error: "Invalid data provided, must be object."
                    }
                },
                setContactInfo: function(e) {
                    if (A("api setContactInfo"), e && "object" === ("undefined" == typeof e ? "undefined" : (0, n.default)(e))) {
                        N.log("setContactInfo", e);
                        var t = {},
                            i = !1,
                            a = "";
                        for (var o in e) {
                            var r = e[o],
                                l = o;
                            "name" == l && (l = "client_name"), r && u.default["isValidValue_" + l] && u.default["isValidValue_" + l](r) ? (t[o] = r, i = !0) : (N.error(l + " not valid."), a += l + " not valid.")
                        }
                        return i ? (this._sendIntroduce(t), {
                            result: "ok",
                            data: t
                        }) : (u.default.telemetry("api setContantactInfo bad data"), N.error("setContactInfo bad data", e), {
                            result: "fail",
                            error: a
                        })
                    }
                },
                _sendIntroduce: function(e) {
                    e.isEmailSubmitted && E.default.trackSystemMessageEmailSubmitted(), N.log(e), I.default.setClientContactInfo({
                        client_name: e.name || e.client_name,
                        phone: e.phone,
                        email: e.email,
                        description: e.description
                    })
                },
                showProactiveInvitation: function(e, t) {
                    A("api showProactiveInvitation"), k.default.showProactive(e, t, "jivo_api.showProactiveInvitation")
                },
                highlightCobrowse: function(e, t) {
                    M.default.getCobrowseData(e, t)
                },
                sendOfflineMessage: function(e) {
                    if (A("api sendOfflineMessage"), N.log("sendOfflineMessage", e), z.default.is_online) return {
                        result: "fail",
                        error: "Error send offline message when chat is online."
                    };
                    if (e && "object" === ("undefined" == typeof e ? "undefined" : (0, n.default)(e))) {
                        N.log("sendOfflineMessage", e);
                        var t = "";
                        for (var i in e) {
                            var a = e[i],
                                o = i;
                            "name" == o && (o = "client_name"), a && u.default["isValidValue_" + o] && u.default["isValidValue_" + o](a) || (N.error(o + " not valid."), t += o + " not valid. ")
                        }
                        return "" == t ? (I.default.setClientContactInfo(e), I.default.sendOfflineMessage(e), {
                            result: "ok"
                        }) : (u.default.telemetry("api sendOfflineMessage bad data"), N.error("sendOfflineMessage bad data", e), {
                            result: "fail",
                            error: t
                        })
                    }
                    return {
                        result: "fail",
                        error: "Invalid params for offline message"
                    }
                },
                setRules: function(e) {
                    return A("api setRules"), e && "object" === ("undefined" == typeof e ? "undefined" : (0, n.default)(e)) ? (l.default.rules = e, {
                        result: "ok"
                    }) : (N.error("Invalid type of rules, must be object."), {
                        result: "fail"
                    })
                },
                chatMode: function() {
                    return A("api chatMode"), l.default.chat_mode
                },
                setWidgetColor: function(e) {
                    A("api setWidgetColor");
                    var t = p.default.isLightColor(e) ? "dark" : "light",
                        i = document.getElementById("jivo_chat_widget_online");
                    (0, d.addClass)(i, "color-mode"), l.default.widget_color = e, l.default.widget_font_color = t, z.default.widget_color = e, z.default.widget_font_color = t, clearTimeout(this.setWidgetColorTimeout), this.setWidgetColorTimeout = setTimeout(function() {
                        (0, d.removeClass)(i, "color-mode")
                    }, 500)
                },
                sendPageTitle: function(e) {
                    var t = !(arguments.length > 1 && void 0 !== arguments[1]) || arguments[1],
                        i = arguments.length > 2 && void 0 !== arguments[2] && arguments[2];
                    return e && "string" == typeof e ? (I.default.updateTitle(e, i), t && A("api sendPageTitle"), {
                        result: "ok"
                    }) : {
                        result: "fail",
                        reason: "Invalid title"
                    }
                },
                isCallbackEnabled: function(e) {
                    "function" == typeof e && (A("api isCallbackEnabled"), m.default.isEmpty(l.default.callback_settings) ? e({
                        result: "fail",
                        reason: "Callback disabled"
                    }) : I.default.requestApiCWAvailable(e))
                },
                startCall: function(e) {
                    if (!w.default.desktop()) return {
                        result: "fail",
                        reason: "Callback disabled for mobile."
                    };
                    if (!x.default.cw_call_enabled || m.default.isEmpty(l.default.callback_settings)) return {
                        result: "fail",
                        reason: "Callback disabled"
                    };
                    var t = u.default.getPhoneNumberInfo(e);
                    return t ? (e = "+" + t.number, z.default.chat_started ? I.default.navigate("chat") : I.default.navigate("call"), x.default.client_info.phone = e, c.default.send({
                        name: "cw_call",
                        tel: e,
                        invitation_text: !1
                    }), A("cw_start_call", {
                        param1: "from_api"
                    }), {
                        result: "ok"
                    }) : {
                        result: "fail",
                        reason: "Invalid phone"
                    }
                },
                getUtm: function() {
                    A("api getUtm");
                    var e = x.default.utm;
                    return {
                        term: e.keyword || null,
                        campaign: e.campaign || null,
                        content: e.content || null,
                        medium: e.medium || null,
                        source: e.source || null
                    }
                }
            };
        t.default = P
    }, function(e, t, i) {
        "use strict";

        function a(e) {
            return e && e.__esModule ? e : {
                default: e
            }
        }
        var o = i(16),
            n = (a(o), i(29)),
            r = (a(n), i(14)),
            l = (a(r), i(27)),
            s = (a(l), i(11)),
            c = (a(s), i(57)),
            d = (a(c), i(18));
        a(d)
    }, function(e, t, i) {
        "use strict";

        function a(e) {
            return e && e.__esModule ? e : {
                default: e
            }
        }
        Object.defineProperty(t, "__esModule", {
            value: !0
        });
        var o = i(29),
            n = a(o),
            r = i(1),
            l = i(4),
            s = a(l),
            c = i(2),
            d = a(c),
            u = i(5),
            f = a(u),
            p = f.default.name("formObserver"),
            h = function() {
                if (d.default.form_observer) {
                    var e = function(e) {
                            p.log("FORMS SUBMIT EVENT", e);
                            var t = e.target,
                                i = "Form" + (t.id ? ' id="' + t.id + '"' : "") + (t.action ? ' action="' + t.action + '"' : "") + " submitted: \n",
                                a = {};
                            s.default.each(t.elements, function(e) {
                                e.name && (a[e.name] = e.value)
                            }, this), n.default.sendIfConnected({
                                name: "client_message",
                                message: (0, r.setImplicitGuiMessage)(a, i),
                                implicit: 1
                            })
                        },
                        t = (0, r.getPageWindow)().document || document,
                        i = s.default.bind(t.querySelectorAll, t),
                        a = i("form");
                    p.log("FORMS:", a), s.default.each(a, function(t) {
                        if (t.elements.length > 0 && !s.default.findWhere(t.elements, {
                                type: "password"
                            })) {
                            p.log("FORM Observer: ", t), (0, r.addListener)(t, "submit", e);
                            var i = t.submit;
                            t.submit = function() {
                                try {
                                    e({
                                        target: this
                                    })
                                } catch (e) {
                                    (0, r.reportException)(e)
                                }
                                i.call(this)
                            }
                        }
                    })
                }
            };
        t.default = h
    }, function(e, t, i) {
        "use strict";

        function a(e) {
            return e && e.__esModule ? e : {
                default: e
            }
        }
        var o = i(33),
            n = a(o),
            r = i(117),
            l = (a(r), i(55));
        a(l);
        i(167);
        var s = i(3),
            c = a(s),
            d = i(3),
            u = a(d),
            f = i(13),
            p = a(f),
            h = i(4),
            m = a(h),
            g = i(1),
            v = a(g),
            b = i(136),
            w = a(b),
            y = i(99),
            x = (a(y), i(43)),
            _ = a(x),
            k = i(48),
            j = a(k),
            E = i(168),
            C = a(E),
            M = i(32),
            S = a(M),
            z = i(166),
            T = a(z),
            I = i(69),
            N = a(I),
            O = i(5),
            A = a(O),
            P = i(16),
            L = a(P),
            B = i(170),
            D = a(B),
            H = i(11),
            F = a(H),
            R = i(14),
            V = a(R),
            W = i(18),
            q = a(W),
            U = i(29),
            G = a(U),
            X = i(2),
            Y = a(X),
            Z = i(179),
            J = a(Z),
            K = i(134),
            Q = a(K),
            $ = i(147),
            ee = a($),
            te = i(178),
            ie = a(te),
            ae = A.default.name("index"),
            oe = function() {
                function e() {
                    window.parent.window.jivo_api = window.jivo_api = T.default
                }

                function t(t) {
                    if (ae.info("RENDER WIDGET VERSION:", "3.7.3"), u.default.render(t, document.getElementById("widget")), L.default.requestCWAvailable(), !(0, g.cookie)("enter_ts")) {
                        (0, g.cookie)("enter_ts", (new Date).getTime());
                        var i = parseInt((0, g.cookie)("visits_count"));
                        (0, g.cookie)("visits_count", i ? i + 1 : 1, {
                            expires: 365,
                            path: "/"
                        }), (0, g.getPageWindow)().document.referrer && (0, g.cookie)("refer", (0, g.getPageWindow)().document.referrer), ie.default.setUTM((0, g.getPageWindow)().location.href, (0, g.getPageWindow)().document.referrer)
                    }
                    if (S.default.init(), new C.default, e(), setTimeout(function() {
                            (0, g._callUserFunction)("onLoadCallback"), F.default.is_custom_label = !!parent.document.getElementById("jivo_custom_widget"), !(16 & Y.default.options) || p.default.mobileOrTablet() && F.default.isSeparateWindow || _.default.init()
                        }, 50), globalStore.hasStorage) {
                        var a = localStorage.getItem("jv_store_cdn_unavailable");
                        a && (v.default.telemetry("cdn_unavailable_" + a, {}), localStorage.removeItem("jv_store_cdn_unavailable")), (0, J.default)()
                    }
                    window.parent.window != window.top && "hidden" !== F.default.route && v.default.telemetry("in_iframe_started")
                }
                window.jivo_version = "3.7.3", window.parent && (window.parent.jivo_version = jivo_version), ee.default.init(), window.onerror = function(e, t, i, a, o) {
                    !o && (o = {}), (window || arguments || "function" == typeof g.reportException) && (0, g.reportException)({
                        message: e,
                        lineNumber: i,
                        fileName: globalStore.bundleSrc + "&v=3.7.3",
                        columnNumber: a,
                        stack: (0, n.default)(o.stack || o.stacktrace || o)
                    })
                }, V.default.visitorId || (V.default.visitorId = v.default.generateGUIDCount(4)), (0, D.default)(), p.default.mobile() && setTimeout(function() {
                    var e = document.createElement("div");
                    document.body.appendChild(e), u.default.render(c.default.createElement(Q.default, null), e)
                }, 2e3), Y.default.bubble_color || (Y.default.bubble_color = "green");
                var i = p.default.ios() ? "pagehide" : "beforeunload";
                if ((0, g.addListener)(window, i, g.onIframeWindowUnload), j.default.isCreated())(0, g.changeBrowserLocation)(window.location.href, window.top.document.title), ae.log("Magic IFRAME is created"), e();
                else {
                    window.parent.window == window.top || (0, g.isWixIframe)() || (N.default.init(), e()), L.default.pageVisible((0, g.pageVisible)());
                    var a = (0, g.pageVisible)();
                    (0, g.listenVisibility)(function() {
                        a != (0, g.pageVisible)() && (a = (0, g.pageVisible)(), G.default.ifNeedConnect() || (F.default.reload(), V.default.reload()), a && (!p.default.mobile() && (!p.default.tablet() || !m.default.findWhere(q.default.data, {
                            type: "clientMessage"
                        }) && F.default.is_online) || F.default.isSeparateWindow || L.default.navigate("label")), L.default.pageVisible(a))
                    });
                    var o = function e() {
                        var i = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : 20;
                        L.default.navigate(F.default.route), setTimeout(function() {
                            t(c.default.createElement(w.default, null))
                        }, i), G.default.off("socket_message", e)
                    };
                    F.default.chat_started ? G.default.on("socket_message", o) : o(0)
                }
                var r = (0, g.getPageWindow)().location.hash.split("jvhs_")[1];
                "undefined" != typeof r && N.default.getCobrowseData(r)
            };
        oe()
    }, function(e, t, i) {
        "use strict";

        function a(e) {
            return e && e.__esModule ? e : {
                default: e
            }
        }
        Object.defineProperty(t, "__esModule", {
            value: !0
        });
        var o = i(1),
            n = a(o),
            r = i(117),
            l = a(r),
            s = i(146),
            c = a(s),
            d = i(141),
            u = a(d),
            f = i(142),
            p = a(f),
            h = i(13),
            m = a(h),
            g = i(3),
            v = a(g),
            b = i(3),
            w = a(b),
            y = i(2),
            x = a(y),
            _ = i(4),
            k = a(_),
            j = function() {
                function e(e, a) {
                    if ("undefined" != typeof i.Polymer && i.ShadowDOMPolyfill && "undefined" != typeof i.ShadowDOMPolyfill.isWrapper) {
                        var n = i.ShadowDOMPolyfill.isWrapper(a),
                            r = document.createElement;
                        document.createElement = function(e) {
                            var t = r(e);
                            return t.__wrapper8e3dd93a60__ = o, t
                        }, t = document.createElement("jdiv"), w.default.render(e, t), n.appendChild(t)
                    } else "JDIV" !== a.tagName ? (t = document.createElement("jdiv"), w.default.render(e, t), a.appendChild(t)) : w.default.render(e, a), o.parentNode && o.parentNode.removeChild(o)
                }
                var t, i = n.default.getPageWindow(),
                    a = i.document.createElement("jdiv"),
                    o = i.document.createElement("jdiv");
                i.document.body.appendChild(a), i.document.body.appendChild(o), e(v.default.createElement("jdiv", {
                    className: l.default.globalClass
                }, 1 == x.default.callback_settings.button && !m.default.mobileOrTablet() && v.default.createElement(u.default, null), m.default.mobile() && window.parent === window.top && v.default.createElement(c.default, null)), a), m.default.desktop() && (x.default.joint || x.default.callback_settings.time) && e(v.default.createElement(p.default, null), i.document.getElementById("jivo-iframe-container")), m.default.ios() && m.default.osVersion() && m.default.osVersion() < 10 && k.default.each(a.querySelectorAll("jdiv"), function(e) {
                    e.className += " __jfakecls"
                })
            };
        t.default = j
    }, function(e, t, i) {
        "use strict";

        function a(e) {
            return e && e.__esModule ? e : {
                default: e
            }
        }
        Object.defineProperty(t, "__esModule", {
            value: !0
        });
        var o = i(1),
            n = i(13),
            r = a(n),
            l = i(4),
            s = a(l),
            c = function() {
                function e() {
                    return t || (t = document.createElement("div"), (0, o.addClass)(t, "autoresize-clones"), t.style.position = "absolute", t.style.top = "-9999px", t.style.width = "0px", t.style.height = "0px", t.style.padding = "0px", t.style.overflow = "hidden", document.body.appendChild(t)), t
                }
                var t = void 0,
                    i = ["lineHeight", "textDecoration", "letterSpacing", "fontSize", "fontFamily", "fontStyle", "fontWeight", "textTransform", "textAlign", "direction", "wordSpacing", "fontSizeAdjust", "paddingLeft", "paddingRight", "width", "boxSizing", "whiteSpace", "wordWrap"],
                    a = function(e, t) {
                        var i = void 0;
                        this.element = e, this.config = t, i = e.offsetHeight, "original" === t.maxSize && (t.maxSize = i), "original" === t.minSize && (t.minSize = i), this.bind()
                    };
                return a.prototype.bind = function() {
                        (0, o.addListener)(this.element, "keyup", s.default.bind(this.check, this)), (0, o.addListener)(this.element, "change", s.default.bind(this.check, this)), (0, o.addListener)(this.element, "paste", s.default.bind(this.check, this))
                    }, a.prototype.getClone = function() {
                        var t = void 0,
                            a = void 0;
                        return this.clone || (t = this.element, this.clone = a = document.createElement("div"), s.default.each(i, function(e) {
                            a.style[e] = getComputedStyle(t)[e]
                        }), e().appendChild(a)), this.clone
                    }, a.prototype.afterResize = function(e) {
                        var t = this.element,
                            i = this.config;
                        t.offsetHeight >= i.maxSize + 10 ? t.style.overflowY = "auto" : t.style.overflowY = "hidden", i.onAfterResize.call(this.element), e && e.apply(this, arguments)
                    }, a.prototype.check = function() {
                        var e = this.config,
                            t = this.getClone(),
                            i = this.element,
                            a = i.value || "",
                            o = i.offsetHeight,
                            n = void 0,
                            l = void 0;
                        a = a.length ? a : " ", a !== this.prevValue && (t.innerText = a, n = t.offsetHeight, n = Math.min(Math.max(n, e.minSize), e.maxSize), o !== n && (l = {}, l.height = n), this.prevValue = a, l && (e.onResize && e.onResize.call(i), r.default.mobile() && (n += parseInt(getComputedStyle(i).paddingTop) + parseInt(getComputedStyle(i).paddingBottom)), i.style.height = n + "px", this.afterResize()))
                    },
                    function(e, t) {
                        return new a(e, t)
                    }
            }();
        t.default = c
    }, function(e, t) {
        "use strict";
        Object.defineProperty(t, "__esModule", {
            value: !0
        });
        var i = {};
        ! function(e) {
            if (!e.browser) {
                e.browser = {}, e.browser.mozilla = !1, e.browser.webkit = !1, e.browser.opera = !1, e.browser.msie = !1;
                var t = navigator.userAgent;
                e.browser.ua = t, e.browser.name = navigator.appName, e.browser.fV = "" + parseFloat(navigator.appVersion), e.browser.mV = parseInt(navigator.appVersion, 10);
                var i, a, o;
                if ((a = t.indexOf("Opera")) != -1) e.browser.opera = !0, e.browser.name = "Opera", e.browser.fV = t.substring(a + 6), (a = t.indexOf("Version")) != -1 && (e.browser.fV = t.substring(a + 8));
                else if ((a = t.indexOf("MSIE")) != -1) e.browser.msie = !0, e.browser.name = "Microsoft Internet Explorer", e.browser.fV = t.substring(a + 5);
                else if (t.indexOf("Trident") != -1) {
                    e.browser.msie = !0, e.browser.name = "Microsoft Internet Explorer";
                    var n = t.indexOf("rv:") + 3,
                        r = n + 4;
                    e.browser.fV = t.substring(n, r)
                } else(a = t.indexOf("Chrome")) != -1 ? (e.browser.webkit = !0, e.browser.name = "Chrome", e.browser.fV = t.substring(a + 7)) : (a = t.indexOf("Safari")) != -1 ? (e.browser.webkit = !0, e.browser.name = "Safari", e.browser.fV = t.substring(a + 7), (a = t.indexOf("Version")) != -1 && (e.browser.fV = t.substring(a + 8))) : (a = t.indexOf("AppleWebkit")) != -1 ? (e.browser.webkit = !0, e.browser.name = "Safari", e.browser.fV = t.substring(a + 7), (a = t.indexOf("Version")) != -1 && (e.browser.fV = t.substring(a + 8))) : (a = t.indexOf("Firefox")) != -1 ? (e.browser.mozilla = !0, e.browser.name = "Firefox", e.browser.fV = t.substring(a + 8)) : (i = t.lastIndexOf(" ") + 1) < (a = t.lastIndexOf("/")) && (e.browser.name = t.substring(i, a), e.browser.fV = t.substring(a + 1), e.browser.name.toLowerCase() == e.browser.name.toUpperCase() && (e.browser.name = navigator.appName));
                (o = e.browser.fV.indexOf(";")) != -1 && (e.browser.fV = e.browser.fV.substring(0, o)), (o = e.browser.fV.indexOf(" ")) != -1 && (e.browser.fV = e.browser.fV.substring(0, o)), e.browser.mV = parseInt("" + e.browser.fV, 10), isNaN(e.browser.mV) && (e.browser.fV = "" + parseFloat(navigator.appVersion), e.browser.mV = parseInt(navigator.appVersion, 10)), e.browser.version = e.browser.mV
            }
        }(i), t.default = i.browser
    }, function(e, t) {
        "use strict";
        Object.defineProperty(t, "__esModule", {
            value: !0
        });
        var i = function e(t) {
            return linkify(t, {
                callback: function(t, i) {
                    var a = t.indexOf("://");
                    return i && a > 0 && (t = e.getShortText(t.substring(a + 3))), i ? '<a class="msg_link" target="_blank" href="' + i + '" title="' + i + '">' + t + "</a>" : t
                }
            })
        };
        i.getShortText = function(e) {
                var t = 30;
                return e.length > 80 ? e.slice(0, t) + "..." + e.slice(-t) : e
            },
            /*!
             * linkify - v0.3 - 6/27/2009
             * http://benalman.com/code/test/js-linkify/
             *
             * Copyright (c) 2009 "Cowboy" Ben Alman
             * Licensed under the MIT license
             * http://benalman.com/about/license/
             *
             * Some regexps adapted from http://userscripts.org/scripts/review/7122
             */
            window.linkify = function() {
                var e = "[a-z\\d.-]+://",
                    t = "(?:(?:[0-9]|[1-9]\\d|1\\d{2}|2[0-4]\\d|25[0-5])\\.){3}(?:[0-9]|[1-9]\\d|1\\d{2}|2[0-4]\\d|25[0-5])",
                    i = "(?:(?:[^\\s!@#$%^&*()_=+[\\]{}\\\\|;:'\",.<>/?]+)\\.)+",
                    a = "(?:ac|ad|aero|ae|af|ag|ai|al|am|an|ao|aq|arpa|ar|asia|as|at|au|aw|ax|az|ba|bb|bd|be|bf|bg|bh|biz|bi|bj|bm|bn|bo|br|bs|bt|bv|bw|by|bz|cat|ca|cc|cd|cf|cg|ch|ci|ck|cl|cm|cn|coop|com|co|cr|cu|cv|cx|cy|cz|de|dj|dk|dm|do|dz|ec|edu|ee|eg|er|es|et|eu|fi|fj|fk|fm|fo|fr|ga|gb|gd|ge|gf|gg|gh|gi|gl|gm|gn|gov|gp|gq|gr|gs|gt|gu|gw|gy|hk|hm|hn|hr|ht|hu|id|ie|il|im|info|int|in|io|iq|ir|is|it|je|jm|jobs|jo|jp|ke|kg|kh|ki|km|kn|kp|kr|kw|ky|kz|la|lb|lc|li|lk|lr|ls|lt|lu|lv|ly|ma|mc|md|me|mg|mh|mil|mk|ml|mm|mn|mobi|mo|mp|mq|mr|ms|mt|museum|mu|mv|mw|mx|my|mz|name|na|nc|net|ne|nf|ng|ni|nl|no|np|nr|nu|nz|om|org|pa|pe|pf|pg|ph|pk|pl|pm|pn|pro|pr|ps|pt|pw|py|qa|re|ro|rs|ru|rw|sa|sb|sc|sd|se|sg|sh|si|sj|sk|sl|sm|sn|so|sr|st|su|sv|sy|sz|tc|td|tel|tf|tg|th|tj|tk|tl|tm|tn|to|tp|travel|tr|tt|tv|tw|tz|ua|ug|uk|um|us|uy|uz|va|vc|ve|vg|vi|vn|vu|wf|ws|xn--0zwm56d|xn--11b5bs3a9aj6g|xn--80akhbyknj4f|xn--9t4b11yi5a|xn--deba0ad|xn--g6w251d|xn--hgbk6aj7f53bba|xn--hlcj6aya9esc7a|xn--jxalpdlp|xn--kgbechtv|xn--zckzah|ye|yt|yu|za|zm|zw|win)",
                    o = "(?:" + i + a + "|" + t + ")",
                    n = "(?:[;/][^#?<>\\s]*)?",
                    r = "(?:\\?[^#<>\\s]*)?(?:#[^<>\\s]*)?",
                    l = "\\b" + e + "[^<>\\s]+",
                    s = "\\b" + o + n + r + "(?!\\w)",
                    c = "mailto:",
                    d = "(?:" + c + ")?[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@" + o + r + "(?!\\w)",
                    u = new RegExp("(?:" + l + "|" + s + "|" + d + ")", "ig"),
                    f = new RegExp("^" + e, "i"),
                    p = {
                        "'": "`",
                        ">": "<",
                        ")": "(",
                        "]": "[",
                        "}": "{",
                        "�": "�",
                        "2T": "2"
                    },
                    h = {
                        callback: function(e, t) {
                            return t ? '<a href="' + t + '" title="' + t + '">' + e + "</a>" : e
                        },
                        punct_regexp: /(?:[!?.,:;'"]|(?:&|&amp;)(?:lt|gt|quot|apos|raquo|laquo|rsaquo|lsaquo);)$/
                    };
                return function(e, t) {
                    t = t || {};
                    var i, a, o, n, r, l, s, d, m, g, v, b, w = "",
                        y = [];
                    for (a in h) void 0 === t[a] && (t[a] = h[a]);
                    for (; i = u.exec(e);)
                        if (o = i[0], l = u.lastIndex, s = l - o.length, !/[\/:]/.test(e.charAt(s - 1))) {
                            do d = o, b = o.substr(-1), v = p[b], v && (m = o.match(new RegExp("\\" + v + "(?!$)", "g")), g = o.match(new RegExp("\\" + b, "g")), (m ? m.length : 0) < (g ? g.length : 0) && (o = o.substr(0, o.length - 1), l--)), t.punct_regexp && (o = o.replace(t.punct_regexp, function(e) {
                                return l -= e.length, ""
                            })); while (o.length && o !== d);
                            if (n = o, !f.test(n)) {
                                var x = /^(?:[\w\!\#\$\%\&\'\*\+\-\/\=\?\^\`\{\|\}\~]+\.)*[\w\!\#\$\%\&\'\*\+\-\/\=\?\^\`\{\|\}\~]+@(?:(?:(?:[a-zA-Z0-9](?:[a-zA-Z0-9\-](?!\.)){0,61}[a-zA-Z0-9]?\.)+[a-zA-Z0-9](?:[a-zA-Z0-9\-](?!$)){0,61}[a-zA-Z0-9]?)|(?:\[(?:(?:[01]?\d{1,2}|2[0-4]\d|25[0-5])\.){3}(?:[01]?\d{1,2}|2[0-4]\d|25[0-5])\]))$/;
                                n = (x.test(n) ? n.indexOf(c) ? c : "" : n.indexOf("irc.") ? n.indexOf("ftp.") ? "http://" : "ftp://" : "irc://") + n
                            }
                            r != s && (y.push([e.slice(r, s)]), r = l), y.push([o, n])
                        }
                    for (y.push([e.substr(r)]), a = 0; a < y.length; a++) w += t.callback.apply(window, y[a]);
                    return w || e
                }
            }(), t.default = i
    }, function(e, t) {
        "use strict";
        Object.defineProperty(t, "__esModule", {
            value: !0
        });
        var i = window.setTimeout,
            a = window.document,
            o = 0,
            n = function() {
                function e() {
                    try {
                        d.parentNode.removeChild(d)
                    } catch (e) {}
                }

                function t() {
                    c = !1, s = "", e(), d = null
                }

                function n(e) {
                    try {
                        u.onerror.call(u, e, s)
                    } catch (t) {
                        throw new Error(e)
                    }
                }

                function r() {
                    this.readyState && "complete" !== this.readyState && "loaded" !== this.readyState || c || (this.onload = this.onreadystatechange = null, c = !0, 4 !== u.readyState && n("Script failed to load [" + s + "]."), e())
                }

                function l(e) {
                    e = e || [], u.readyState = 4, u.status = 200, "function" == typeof u.onload && u.onload.apply(u, e)
                }
                var s, c, d, u = null;
                return u = {
                    onerror: null,
                    onload: null,
                    readyState: 0,
                    open: function(e, i) {
                        t();
                        var a = "cb" + o++;
                        ! function(e) {
                            window.jivoXHR[e] = function() {
                                try {
                                    l.call(u, arguments)
                                } catch (e) {
                                    u.readyState = -1, n(e.message)
                                }
                                window.jivoXHR[e] = null
                            }
                        }(a), s = i.replace(/=\?/, "=jivoXHR." + a)
                    },
                    send: function() {
                        i(function() {
                            d = a.createElement("script"), d.setAttribute("type", "text/javascript"), d.charset = "UTF-8", d.onload = d.onreadystatechange = function() {
                                r.call(d)
                            }, d.setAttribute("src", s), a.getElementsByTagName("head")[0].appendChild(d)
                        }, 0)
                    },
                    abort: function() {},
                    setRequestHeader: function() {},
                    getResponseHeader: function() {
                        return ""
                    },
                    getAllResponseHeaders: function() {
                        return []
                    }
                }, t(), u
            };
        window.jivoXHR = n, t.default = n
    }, function(e, t, i) {
        "use strict";

        function a(e) {
            return e && e.__esModule ? e : {
                default: e
            }
        }
        Object.defineProperty(t, "__esModule", {
            value: !0
        });
        var o = i(24),
            n = a(o),
            r = i(4),
            l = a(r),
            s = i(1),
            c = function(e, t) {
                var i = [].slice,
                    a = "transition",
                    o = "handler",
                    r = "handling",
                    l = "handled",
                    c = "nohandler",
                    d = "transition",
                    u = "invalidstate",
                    f = "deferred",
                    p = "newfsm",
                    h = {
                        makeFsmNamespace: function() {
                            var e = 0;
                            return function() {
                                return "fsm." + e++
                            }
                        }(),
                        getDefaultOptions: function() {
                            return {
                                initialState: "uninitialized",
                                eventListeners: {
                                    "*": []
                                },
                                states: {},
                                eventQueue: [],
                                namespace: h.makeFsmNamespace(),
                                targetReplayState: "",
                                state: t,
                                priorState: t,
                                _priorAction: "",
                                _currentAction: ""
                            }
                        }
                    };
                if (!e.deepExtend) {
                    var m = {
                            "*": function(e, t, i) {
                                e[t] = i
                            },
                            object: function(e, t, i) {
                                e[t] = b({}, e[t] || {}, i)
                            },
                            array: function(t, i, a) {
                                t[i] = [], e.each(a, function(e, a) {
                                    m[v(e)](t[i], a, e)
                                }, this)
                            }
                        },
                        g = function(t) {
                            return e.isArray(t) ? "array" : e.isDate(t) ? "date" : e.isRegExp(t) ? "regex" : "undefined" == typeof t ? "undefined" : (0, n.default)(t)
                        },
                        v = function(e) {
                            var t = g(e);
                            return m[t] ? t : "*"
                        },
                        b = function(t) {
                            return e.each(i.call(arguments, 1), function(i) {
                                e.each(i, function(e, i) {
                                    m[v(e)](t, i, e)
                                })
                            }), t
                        };
                    e.mixin({
                        deepExtend: b
                    })
                }
                var w = function(t) {
                    e.extend(this, t), e.defaults(this, h.getDefaultOptions()), this.initialize.apply(this, arguments), _.emit(p, this), this.initialState && this.transition(this.initialState)
                };
                e.extend(w.prototype, {
                    initialize: function() {},
                    emit: function(t) {
                        var a = arguments;
                        this.eventListeners["*"] && e.each(this.eventListeners["*"], function(e) {
                            try {
                                e.apply(this, i.call(a, 0))
                            } catch (e) {
                                (0, s.reportException)(e)
                            }
                        }, this), this.eventListeners[t] && e.each(this.eventListeners[t], function(e) {
                            try {
                                e.apply(this, i.call(a, 1))
                            } catch (e) {
                                (0, s.reportException)(e)
                            }
                        }, this)
                    },
                    handle: function(a) {
                        if (!this.inExitHandler) {
                            var n, s, d, u, f = this.states,
                                p = this.state,
                                h = i.call(arguments, 0);
                            this.currentActionArgs = h, f[p][a] || f[p]["*"] || this["*"] ? (n = f[p][a] ? a : "*", d = "*" === n, f[p][n] ? (s = f[p][n], u = p + "." + n) : (s = this["*"], u = "*"), this._currentAction || (this._currentAction = u), this.emit.call(this, r, {
                                inputType: a,
                                args: h.slice(1)
                            }), e.isFunction(s) && (s = s.apply(this, d ? h : h.slice(1))), e.isString(s) && this.transition(s), this.emit.call(this, l, {
                                inputType: a,
                                args: h.slice(1)
                            }), this._priorAction = this._currentAction, this._currentAction = "", this.processQueue(o)) : this.emit.call(this, c, {
                                inputType: a,
                                args: h.slice(1)
                            }), this.currentActionArgs = t
                        }
                    },
                    transition: function(e) {
                        if (!this.inExitHandler && e !== this.state) {
                            var t;
                            if (this.states[e]) {
                                if (this.targetReplayState = e, this.priorState = this.state, this.state = e, t = this.priorState, this.states[t] && this.states[t]._onExit && (this.inExitHandler = !0, this.states[t]._onExit.call(this), this.inExitHandler = !1), this.emit.call(this, d, {
                                        fromState: t,
                                        action: this._currentAction,
                                        toState: e
                                    }), this.states[e]._onEnter) try {
                                    this.states[e]._onEnter.call(this)
                                } catch (e) {
                                    (0, s.reportException)(e)
                                }
                                return void(this.targetReplayState === e && this.processQueue(a))
                            }
                            this.emit.call(this, u, {
                                state: this.state,
                                attemptedState: e
                            })
                        }
                    },
                    processQueue: function(t) {
                        var i = t === a ? function(e) {
                                return e.type === a && (!e.untilState || e.untilState === this.state)
                            } : function(e) {
                                return e.type === o
                            },
                            n = e.filter(this.eventQueue, i, this);
                        this.eventQueue = e.difference(this.eventQueue, n), e.each(n, function(e) {
                            this.handle.apply(this, e.args)
                        }, this)
                    },
                    clearQueue: function(t, i) {
                        if (t) {
                            var n;
                            t === a ? n = function(e) {
                                return e.type === a && (!i || e.untilState === i)
                            } : t === o && (n = function(e) {
                                return e.type === o
                            }), this.eventQueue = e.filter(this.eventQueue, n)
                        } else this.eventQueue = []
                    },
                    deferUntilTransition: function(e) {
                        if (this.currentActionArgs) {
                            var t = {
                                type: a,
                                untilState: e,
                                args: this.currentActionArgs
                            };
                            this.eventQueue.push(t), this.emit.call(this, f, {
                                state: this.state,
                                queuedArgs: t
                            })
                        }
                    },
                    deferUntilNextHandler: function() {
                        if (this.currentActionArgs) {
                            var e = {
                                type: a,
                                args: this.currentActionArgs
                            };
                            this.eventQueue.push(e), this.emit.call(this, f, {
                                state: this.state,
                                queuedArgs: e
                            })
                        }
                    },
                    on: function(e, t) {
                        var i = this;
                        return i.eventListeners[e] || (i.eventListeners[e] = []), i.eventListeners[e].push(t), {
                            eventName: e,
                            callback: t,
                            off: function() {
                                i.off(e, t)
                            }
                        }
                    },
                    off: function(t, i) {
                        t ? this.eventListeners[t] && (i ? this.eventListeners[t] = e.without(this.eventListeners[t], i) : this.eventListeners[t] = []) : this.eventListeners = {}
                    }
                }), w.prototype.trigger = w.prototype.emit;
                var y = function() {},
                    x = function(t, i, a) {
                        var o;
                        return o = i && i.hasOwnProperty("constructor") ? i.constructor : function() {
                            t.apply(this, arguments)
                        }, e.deepExtend(o, t), y.prototype = t.prototype, o.prototype = new y, i && e.deepExtend(o.prototype, i), a && e.deepExtend(o, a), o.prototype.constructor = o, o.__super__ = t.prototype, o
                    };
                w.extend = function(e, t) {
                    var i = x(this, e, t);
                    return i.extend = this.extend, i
                };
                var _ = {
                    Fsm: w,
                    utils: h,
                    on: function(e, t) {
                        return this.eventListeners[e] || (this.eventListeners[e] = []), this.eventListeners[e].push(t), t
                    },
                    off: function(t, i) {
                        this.eventListeners[t] && (this.eventListeners[t] = e.without(this.eventListeners[t], i))
                    },
                    trigger: function(t) {
                        var a = arguments,
                            o = this.eventListeners[t] || [];
                        o && o.length && e.each(o, function(e) {
                            e.apply(null, i.call(a, 1))
                        })
                    },
                    eventListeners: {
                        newFsm: []
                    }
                };
                return _.emit = _.trigger, _
            }(l.default);
        t.default = c
    }, function(e, t, i) {
        "use strict";

        function a(e) {
            return e && e.__esModule ? e : {
                default: e
            }
        }
        Object.defineProperty(t, "__esModule", {
            value: !0
        });
        var o = i(4),
            n = a(o),
            r = i(5),
            l = a(r),
            s = i(90),
            c = i(63),
            d = i(177),
            u = (l.default.name("Referer"), function(e) {
                var t = [];
                for (var i in e) {
                    var a = e[i],
                        o = function(e) {
                            var i = a[e],
                                o = function(a) {
                                    r = i[a], r[0].forEach(function(i) {
                                        var o = {
                                            domain: i,
                                            medium: e,
                                            name: a
                                        };
                                        r[1] && (o.params = r[1]), t.push(o)
                                    })
                                };
                            for (var n in i) o(n)
                        };
                    for (var n in a) {
                        var r;
                        o(n)
                    }
                }
                return t
            }),
            f = u(d),
            p = function(e, t, i) {
                this.known = !1, this.referer = null, this.medium = "unknown", this.search_parameter = null, this.search_term = null, this.referers = i || f;
                var a = s.parse(e),
                    o = a.hostname;
                if (this.known = Boolean(~["http:", "https:"].indexOf(a.protocol)), this.uri = a, this.known) {
                    if (t) {
                        var r = s.parse(t),
                            l = r.hostname;
                        if (l === o) return void(this.medium = "internal")
                    }
                    var d = this._lookup_referer(o, a.pathname, !0);
                    if (!d && (d = this._lookup_referer(o, a.pathname, !1), !d)) return void(this.medium = "unknown");
                    if (this.referer = d.name, this.medium = d.medium, "search" === d.medium) {
                        if (!d.params) return;
                        var u = n.default.extend(c.parse(a.hash), c.parse(a.query));
                        for (var p in u) {
                            var h = u[p];
                            d.params.indexOf(p.toLowerCase()) !== -1 && (this.search_parameter = p, this.search_term = h)
                        }
                    }
                }
            };
        p.prototype.searchReferer = function(e) {
            var t = null;
            return t = n.default.find(this.referers, function(t) {
                return t.domain instanceof RegExp && e.search(t.domain) > -1 || (t.domain === e || void 0)
            })
        }, p.prototype._lookup_referer = function(e, t, i) {
            var a = null;
            if (a = i ? this.searchReferer(e + t) : this.searchReferer(e), !a && i) {
                var o = t.split("/");
                if (o.length > 1) try {
                    a = this.searchReferer(e + "/" + o[1])
                } catch (e) {}
            }
            if (a) return a;
            try {
                var n = e.indexOf(".");
                if (n === -1) return null;
                var r = e.slice(n + 1);
                return this._lookup_referer(r, t, i)
            } catch (e) {
                return null
            }
        }, t.default = p
    }, function(e, t) {
        "use strict";
        Object.defineProperty(t, "__esModule", {
            value: !0
        }), t.default = {
            unknown: {
                Google: [
                    [/\w+.google.(com|co.uk)$/gi]
                ],
                "Yahoo!": [
                    [/\w+.yahoo.(com|net)$/gi]
                ]
            },
            search: {
                TalkTalk: [
                    [/talktalk.co.uk$/gi],
                    ["query"]
                ],
                "1.cz": [
                    [/1.cz$/gi],
                    ["q"]
                ],
                Softonic: [
                    [/^search.softonic./gi],
                    ["q"]
                ],
                GAIS: [
                    [/gais.cs.ccu.edu.tw$/gi],
                    ["q"]
                ],
                Freecause: [
                    [/^search.freecause./gi],
                    ["p"]
                ],
                "360.cn": [
                    [/so.(com|360.cn)$/gi],
                    ["q"]
                ],
                RPMFind: [
                    [/(fr2.)?rpmfind.net$/gi],
                    ["query"]
                ],
                Comcast: [
                    [/^serach.comcast./gi],
                    ["q"]
                ],
                Voila: [
                    ["search.ke.voila.fr", /lemoteur.fr$/gi],
                    ["rdata", "kw"]
                ],
                Nifty: [
                    [/^search.nifty./gi],
                    ["q"]
                ],
                Atlas: [
                    [/^searchatlas.centrum./gi],
                    ["q"]
                ],
                "Lo.st": [
                    ["lo.st"],
                    ["x_query"]
                ],
                DasTelefonbuch: [
                    [/dastelefonbuch.de$/gi],
                    ["kw"]
                ],
                Fireball: [
                    [/fireball.de$/gi],
                    ["q"]
                ],
                "1und1": [
                    [/^search.1und1./gi],
                    ["su"]
                ],
                Virgilio: [
                    [/\w+.virgilio.it$/gi],
                    ["qs"]
                ],
                "Web.nl": [
                    ["www.web.nl"],
                    ["zoekwoord"]
                ],
                Plazoo: [
                    ["www.plazoo.com"],
                    ["q"]
                ],
                "Goyellow.de": [
                    ["www.goyellow.de"],
                    ["mdn"]
                ],
                AOL: [
                    [/\.aol.\w{2,4}(\w{2,4})?/gi, "aolsearch.com"],
                    ["q", "query"]
                ],
                Acoon: [
                    ["www.acoon.de"],
                    ["begriff"]
                ],
                Free: [
                    [/^search(1-(2|1))?.free.fr$/gi],
                    ["q"]
                ],
                HighBeam: [
                    ["www.highbeam.com"],
                    ["q"]
                ],
                "I-play": [
                    ["start.iplay.com"],
                    ["q"]
                ],
                FriendFeed: [
                    ["friendfeed.com"],
                    ["q"]
                ],
                Yasni: [
                    [/.yasni.\w{2,4}(\w{2,4})?/gi],
                    ["query"]
                ],
                Gigablast: [
                    [/.gigablast.com$/gi],
                    ["q"]
                ],
                arama: [
                    ["arama.com"],
                    ["q"]
                ],
                Fixsuche: [
                    ["www.fixsuche.de"],
                    ["q"]
                ],
                Apontador: [
                    [/.apontador.com.$/gi],
                    ["q"]
                ],
                "Search.com": [
                    ["www.search.com"],
                    ["q"]
                ],
                Monstercrawler: [
                    ["www.monstercrawler.com"],
                    ["qry"]
                ],
                "Google Images": [
                    [/^images.google.\w{2,4}(.\w{2,4})?/gi, /google.\w{2,4}(.\w{2,4})?\/imgres$/gi],
                    ["q"]
                ],
                "ABCs�k": [
                    ["abcsolk.no", "verden.abcsok.no"],
                    ["q"]
                ],
                "Google Product Search": [
                    [/google.\w{2,4}(.\w{2,4})?\/products$/gi],
                    ["q"]
                ],
                DasOertliche: [
                    ["www.dasoertliche.de"],
                    ["kw"]
                ],
                InfoSpace: [
                    ["infospace.com", "dogpile.com", "www.dogpile.com", "metacrawler.com", "webfetch.com", "webcrawler.com", "search.kiwee.com", "isearch.babylon.com", "start.facemoods.com", "search.magnetic.com", "search.searchcompletion.com", "clusty.com"],
                    ["q", "s"]
                ],
                Weborama: [
                    ["weborama.com"],
                    ["query"]
                ],
                Bluewin: [
                    ["search.bluewin.ch"],
                    ["searchterm"]
                ],
                Neti: [
                    ["www.neti.ee"],
                    ["query"]
                ],
                Winamp: [
                    ["search.winamp.com"],
                    ["q"]
                ],
                Nigma: [
                    ["nigma.ru"],
                    ["s"]
                ],
                "Yahoo! Images": [
                    ["image.yahoo.cn", "images.search.yahoo.com"],
                    ["p", "q"]
                ],
                Exalead: [
                    ["www.exalead.fr", "www.exalead.com"],
                    ["q"]
                ],
                Teoma: [
                    ["www.teoma.com"],
                    ["q"]
                ],
                Needtofind: [
                    ["ko.search.need2find.com"],
                    ["searchfor"]
                ],
                Looksmart: [
                    ["www.looksmart.com"],
                    ["key"]
                ],
                "Wirtualna Polska": [
                    ["szukaj.wp.pl"],
                    ["szukaj"]
                ],
                Toolbarhome: [
                    ["www.toolbarhome.com", "vshare.toolbarhome.com"],
                    ["q"]
                ],
                Searchalot: [
                    ["searchalot.com"],
                    ["q"]
                ],
                Yandex: [
                    ["yandex.ru", "yandex.ua", "yandex.com", "www.yandex.ru", "www.yandex.ua", "www.yandex.com"],
                    ["text"]
                ],
                "canoe.ca": [
                    ["web.canoe.ca"],
                    ["q"]
                ],
                Compuserve: [
                    ["websearch.cs.com"],
                    ["query"]
                ],
                Blogdigger: [
                    ["www.blogdigger.com"],
                    ["q"]
                ],
                Startpagina: [
                    ["startgoogle.startpagina.nl"],
                    ["q"]
                ],
                eo: [
                    ["eo.st"],
                    ["x_query"]
                ],
                Zhongsou: [
                    ["p.zhongsou.com"],
                    ["w"]
                ],
                "La Toile Du Quebec Via Google": [
                    ["www.toile.com", "web.toile.com"],
                    ["q"]
                ],
                Paperball: [
                    ["www.paperball.de"],
                    ["q"]
                ],
                "Jungle Spider": [
                    ["www.jungle-spider.de"],
                    ["q"]
                ],
                PeoplePC: [
                    ["search.peoplepc.com"],
                    ["q"]
                ],
                "MetaCrawler.de": [
                    [/.metacrawler.de$/gi],
                    ["qry"]
                ],
                Orange: [
                    ["busca.orange.es", "search.orange.co.uk"],
                    ["q"]
                ],
                "Gule Sider": [
                    ["www.gulesider.no"],
                    ["q"]
                ],
                Francite: [
                    ["recherche.francite.com"],
                    ["name"]
                ],
                "Ask Toolbar": [
                    ["search.tb.ask.com"],
                    ["searchfor"]
                ],
                "Trusted-Search": [
                    ["www.trusted--search.com"],
                    ["w"]
                ],
                goo: [
                    ["search.goo.ne.jp", "ocnsearch.goo.ne.jp"],
                    ["mt"]
                ],
                "Fast Browser Search": [
                    ["www.fastbrowsersearch.com"],
                    ["q"]
                ],
                Blogpulse: [
                    ["www.blogpulse.com"],
                    ["query"]
                ],
                Volny: [
                    ["web.volny.cz"],
                    ["search"]
                ],
                Icerockeet: [
                    ["blogs.icerocket.com"],
                    ["q"]
                ],
                Terra: [
                    ["buscador.terra.es", "buscador.terra.cl", "buscador.terra.com.br"],
                    ["query"]
                ],
                Amazon: [
                    ["amazon.com", "www.amazon.com"],
                    ["keywords"]
                ],
                Onet: [
                    ["szukaj.onet.pl"],
                    ["qt"]
                ],
                Digg: [
                    ["digg.com"],
                    ["s"]
                ],
                Abacho: [
                    ["www.abacho.de", "www.abacho.com", "www.abacho.co.uk", "www.se.abacho.com", "www.tr.abacho.com", "www.abacho.at", "www.abacho.fr", "www.abacho.es", "www.abacho.ch", "www.abacho.it"],
                    ["q"]
                ],
                maailm: [
                    ["www.maailm.com"],
                    ["tekst"]
                ],
                Flix: [
                    ["www.flix.de"],
                    ["keyword"]
                ],
                Suchnase: [
                    ["www.suchnase.de"],
                    ["q"]
                ],
                Freenet: [
                    ["suche.freenet.de"],
                    ["query", "Keywords"]
                ],
                DuckDuckGoL: [
                    ["duckduckgo.com"],
                    ["q"]
                ],
                "Poisk.ru": [
                    ["www.plazoo.com"],
                    ["q"]
                ],
                Sharelook: [
                    ["www.sharelook.fr"],
                    ["keyword"]
                ],
                Najdi: [
                    ["www.najdi.si"],
                    ["q"]
                ],
                Picsearch: [
                    ["www.picsearch.com"],
                    ["q"]
                ],
                "Mail.ru": [
                    ["go.mail.ru"],
                    ["q"]
                ],
                Alexa: [
                    ["alexa.com", "search.toolbars.alexa.com"],
                    ["q"]
                ],
                Metager: [
                    ["meta.rrzn.uni-hannover.de", "www.metager.de"],
                    ["eingabe"]
                ],
                Technorati: [
                    ["technorati.com"],
                    ["q"]
                ],
                Globososo: [
                    ["searches.globososo.com", "search.globososo.com"],
                    ["q"]
                ],
                WWW: [
                    ["search.www.ee"],
                    ["query"]
                ],
                "Trouvez.com": [
                    ["www.trouvez.com"],
                    ["query"]
                ],
                IXquick: [
                    [/.?ixquick./gi],
                    ["query"]
                ],
                "Naver Images": [
                    ["image.search.naver.com", "imagesearch.naver.com"],
                    ["query"]
                ],
                Zapmeta: [
                    ["www.zapmeta.com", "www.zapmeta.nl", "www.zapmeta.de", "uk.zapmeta.com"],
                    ["q", "query"]
                ],
                Yippy: [
                    ["search.yippy.com"],
                    ["q", "query"]
                ],
                Gomeo: [
                    ["www.gomeo.com"],
                    ["keywords"]
                ],
                Walhello: [
                    ["www.walhello.info", "www.walhello.com", "www.walhello.de", "www.walhello.nl"],
                    ["key"]
                ],
                Meta: [
                    ["meta.ua"],
                    ["q"]
                ],
                Skynet: [
                    ["www.skynet.be"],
                    ["q"]
                ],
                Searchy: [
                    ["www.searchy.co.uk"],
                    ["q"]
                ],
                Findwide: [
                    ["search.findwide.com"],
                    ["k"]
                ],
                WebSearch: [
                    ["www.websearch.com"],
                    ["qkw", "q"]
                ],
                Rambler: [
                    ["nova.rambler.ru"],
                    ["query", "words"]
                ],
                Latne: [
                    ["www.latne.lv"],
                    ["q"]
                ],
                MySearch: [
                    [/(.mysearch)|(.myway).com$/gi, "search.mywebsearch.com"],
                    ["searchfor", "searchFor"]
                ],
                Cuil: [
                    ["www.cuil.com"],
                    ["q"]
                ],
                Tixuma: [
                    ["www.tixuma.de"],
                    ["sc"]
                ],
                Sapo: [
                    ["pesquisa.sapo.pt"],
                    ["q"]
                ],
                Gnadenmeer: [
                    ["www.gnadenmeer.de"],
                    ["keyword"]
                ],
                Arcor: [
                    ["www.arcor.de"],
                    ["Keywords"]
                ],
                Naver: [
                    ["search.naver.com"],
                    ["query"]
                ],
                Zoeken: [
                    ["www.zoeken.nl"],
                    ["q"]
                ],
                Startsiden: [
                    ["www.startsiden.no"],
                    ["q"]
                ],
                Yam: [
                    ["search.yam.com"],
                    ["k"]
                ],
                Eniro: [
                    ["www.eniro.se"],
                    ["q", "search_word"]
                ],
                APOLL07: [
                    ["apollo7.de"],
                    ["query"]
                ],
                Biglobe: [
                    ["cgi.search.biglobe.ne.jp"],
                    ["q"]
                ],
                Mozbot: [
                    ["www.mozbot.fr", "www.mozbot.co.uk", "www.mozbot.com"],
                    ["q"]
                ],
                ICQ: [
                    ["www.icq.com", "search.icq.com"],
                    ["q"]
                ],
                Baidu: [
                    [/.baidu.com$/gi, "web.gougou.com"],
                    ["wd", "word", "kw", "k"]
                ],
                Conduit: [
                    ["search.conduit.com"],
                    ["q"]
                ],
                Vindex: [
                    ["www.vindex.nl", "search.vindex.nl"],
                    ["search_for"]
                ],
                Babylon: [
                    ["search.babylon.com", "searchassist.babylon.com"],
                    ["q"]
                ],
                TrovaRapido: [
                    ["www.trovarapido.com"],
                    ["q"]
                ],
                "Suchmaschine.com": [
                    ["www.suchmaschine.com"],
                    ["suchstr"]
                ],
                Lycos: [
                    ["search.lycos.com", "www.lycos.com", "lycos.com"],
                    ["query"]
                ],
                Vinden: [
                    ["www.vinden.nl"],
                    ["q"]
                ],
                Altavista: [
                    ["www.altavista.com", "search.altavista.com", "listings.altavista.com", "altavista.de", "altavista.fr", "be-nl.altavista.com", "be-fr.altavista.com"],
                    ["q"]
                ],
                dmoz: [
                    ["dmoz.org", "editors.dmoz.org"],
                    ["q"]
                ],
                Ecosia: [
                    ["ecosia.org"],
                    ["q"]
                ],
                Maxwebsearch: [
                    ["maxwebsearch.com"],
                    ["query"]
                ],
                Euroseek: [
                    ["www.euroseek.com"],
                    ["string"]
                ],
                Bing: [
                    ["bing.com", "www.bing.com", "msnbc.msn.com", "dizionario.it.msn.com", "cc.bingj.com", "m.bing.com"],
                    ["q"]
                ],
                "X-recherche": [
                    ["www.x-recherche.com"],
                    ["mots"]
                ],
                "Yandex Images": [
                    ["images.yandex.ru", "images.yandex.ua", "images.yandex.com"],
                    ["text"]
                ],
                GMX: [
                    ["suche.gmx.net"],
                    ["su"]
                ],
                "Daemon search": [
                    ["daemon-search.com", "my.daemon-search.com"],
                    ["q"]
                ],
                "Jungle Key": [
                    ["junglekey.com", "junglekey.fr"],
                    ["query"]
                ],
                Firstfind: [
                    ["www.firstsfind.com"],
                    ["qry"]
                ],
                Crawler: [
                    ["www.crawler.com"],
                    ["q"]
                ],
                Holmes: [
                    ["holmes.ge"],
                    ["q"]
                ],
                Charter: [
                    ["www.charter.net"],
                    ["q"]
                ],
                Ilse: [
                    ["www.ilse.nl"],
                    ["search_for"]
                ],
                earthlink: [
                    ["search.earthlink.net"],
                    ["q"]
                ],
                Qualigo: [
                    ["www.qualigo.at", "www.qualigo.ch", "www.qualigo.de", "www.qualigo.nl"],
                    ["q"]
                ],
                "El Mundo": [
                    ["ariadna.elmundo.es"],
                    ["q"]
                ],
                Metager2: [
                    ["metager2.de"],
                    ["q"]
                ],
                Forestle: [
                    ["forestle.org", "www.forestle.org", "forestle.mobi"],
                    ["q"]
                ],
                "Search.ch": [
                    ["www.search.ch"],
                    ["q"]
                ],
                Meinestadt: [
                    ["www.meinestadt.de"],
                    ["words"]
                ],
                Freshweather: [
                    ["www.fresh-weather.com"],
                    ["q"]
                ],
                AllTheWeb: [
                    ["www.alltheweb.com"],
                    ["q"]
                ],
                Snapdo: [
                    ["search.snapdo.com"],
                    ["q"]
                ],
                Zoek: [
                    ["www3.zoek.nl"],
                    ["q"]
                ],
                Daum: [
                    ["search.daum.net"],
                    ["q"]
                ],
                Marktplaats: [
                    ["www.marktplaats.nl"],
                    ["query"]
                ],
                "suche.info": [
                    ["suche.info"],
                    ["q"]
                ],
                "Google News": [
                    [/news.google.\w{2,4}(.\w{2,4})?$/gi],
                    ["q"]
                ],
                Zoohoo: [
                    ["zoohoo.cz"],
                    ["q"]
                ],
                Seznam: [
                    ["search.seznam.cz"],
                    ["q"]
                ],
                "Online.no": [
                    ["online.no"],
                    ["q"]
                ],
                Eurip: [
                    ["www.eurip.com"],
                    ["q"]
                ],
                "all.by": [
                    ["all.by"],
                    ["query"]
                ],
                "Road Runner Search": [
                    ["search.rr.com"],
                    ["q"]
                ],
                "Opplysningen 1881": [
                    ["www.1881.no"],
                    ["query"]
                ],
                YouGoo: [
                    ["www.yougoo.fr"],
                    ["q"]
                ],
                "Bing Images": [
                    ["bing.com/images/search", "www.bing.com/images/search"],
                    ["q"]
                ],
                Geona: [
                    ["geona.net"],
                    ["q"]
                ],
                Nate: [
                    ["search.nate.com"],
                    ["q"]
                ],
                "T-Online": [
                    ["suche.t-online.de", "brisbane.t-online.de", "navigationshilfe.t-online.de"],
                    ["q"]
                ],
                Hotbot: [
                    ["www.hotbot.com"],
                    ["query"]
                ],
                Kvasir: [
                    ["www.kvasir.no"],
                    ["q"]
                ],
                Austronaut: [
                    ["www2.austronaut.at", "www1.astronaut.at"],
                    ["q"]
                ],
                Excite: [
                    ["search.excite.it", "search.excite.fr", "search.excite.de", "search.excite.co.uk", "serach.excite.es", "search.excite.nl", "msxml.excite.com", "www.excite.co.jp"],
                    ["q", "search"]
                ],
                qip: [
                    ["search.qip.ru"],
                    ["query"]
                ],
                "Certified-Toolbar": [
                    ["search.certified-toolbar.com"],
                    ["q"]
                ],
                "Yahoo!": [
                    [/.?yahoo./gi, "www.cercato.it", "search.offerbox.com", "ys.mirostart.com"],
                    ["q", "p"]
                ],
                "URL.ORGanizier": [
                    ["www.url.org"],
                    ["q"]
                ],
                Witch: [
                    ["www.witch.de"],
                    ["search"]
                ],
                "Mister Wong": [
                    ["www.mister-wong.com", "www.mister-wong.de"],
                    ["keywords"]
                ],
                Aport: [
                    ["sm.aport.ru"],
                    ["r"]
                ],
                "Web.de": [
                    ["suche.web.de"],
                    ["su"]
                ],
                Ask: [
                    [/.ask.com$/gi, "ask.reference.com", "www.askkids.com", "www.ask.co.uk", "www.qbyrd.com", "search-results.com", "uk.search-results.com", "www.search-results.com", "int.search-results.com"]
                ],
                Centrum: [
                    ["serach.centrum.cz", "morfeo.centrum.cz"],
                    ["q"]
                ],
                Everyclick: [
                    ["www.everyclick.com"],
                    ["keyword"]
                ],
                "Google Video": [
                    ["video.google.com"],
                    ["q"]
                ],
                Delfi: [
                    ["otsing.delfi.ee"],
                    ["q"]
                ],
                blekko: [
                    ["blekko.com"],
                    ["q"]
                ],
                Jyxo: [
                    ["jyxo.1188.cz"],
                    ["q"]
                ],
                Kataweb: [
                    ["www.kataweb.it"],
                    ["q"]
                ],
                "uol.com.br": [
                    ["busca.uol.com.br"],
                    ["q"]
                ],
                Arianna: [
                    ["arianna.libero.it", "www.arianna.com"],
                    ["query"]
                ],
                Mamma: [
                    ["www.mamma.com", "mamma75.mamma.com"],
                    ["query"]
                ],
                Yatedo: [
                    ["www.yatedo.com", "www.yatedo.fr"],
                    ["q"]
                ],
                Twingly: [
                    ["www.twingly.com"],
                    ["q"]
                ],
                "Delfi latvia": [
                    ["smart.delfi.lv"],
                    ["q"]
                ],
                PriceRunner: [
                    ["www.pricerunner.co.uk"],
                    ["q"]
                ],
                Rakuten: [
                    ["websearch.rakuten.co.jp"],
                    ["qt"]
                ],
                Google: [
                    [/^(www.)?google.\w{2,4}(.\w{2,4})?$/gi, /^.incredimail.com$/gi, /.googleearth./gi, "isearch.avg.com", "www.cnn.com", "darkoogle.com", "search.darkoogle.com", "search.foxtab.com", "www.gooofullsearch.com", "search.hiyo.com", "search.sweetim.com", "www.fastweb.it", "search.juno.com", "find.tdc.dk", "searchresults.verizon.com", "search.walla.co.il", "search.alot.com", "webcache.googleusercontent.com", "encrypted.google.com", "googlesyndicatedsearch.com"],
                    ["q", "query", "keywords"]
                ],
                "Google Blogsearch": [
                    [/^(www.)?blogsearch.google.\w{2,4}(.\w{2,4})?$/gi],
                    ["q"]
                ],
                "Hooseek.com": [
                    ["www.hooseek.com"],
                    ["recherche"]
                ],
                Dalesearch: [
                    ["www.dalesearch.com"],
                    ["q"]
                ],
                "Alice Adsl": [
                    ["rechercher.aliceadsl.fr"],
                    ["q"]
                ],
                "soso.com": [
                    ["www.soso.com"],
                    ["w"]
                ],
                Sogou: [
                    ["www.sougou.com"],
                    ["query"]
                ],
                "Hit-Parade": [
                    ["req.-hit-parade.com", "class.hit-parade.com", "www.hit-parade.com"],
                    ["p7"]
                ],
                SearchCanvas: [
                    ["www.searchcanvas.com"],
                    ["q"]
                ],
                Interia: [
                    ["www.google.interia.pl"],
                    ["q"]
                ],
                Genieo: [
                    ["search.genieo.com"],
                    ["q"]
                ],
                Tiscali: [
                    ["search.tiscali.it", "search-dyn.tiscali.it", "hledani.tiscali.cz"],
                    ["q", "key"]
                ],
                Clix: [
                    ["pesquisa.clix.pt"],
                    ["question"]
                ]
            },
            email: {
                Bigpond: [
                    ["webmail.bigpond.com", "webmail2.bigpond.com"]
                ],
                "Naver Mail": [
                    ["mail.naver.com"]
                ],
                "Optus Zoo": [
                    ["webmail.optuszoo.com.au"]
                ],
                "Seznam Mail": [
                    ["email.seznam.cz"]
                ],
                "126 Mail": [
                    ["mail.126.com"]
                ],
                "Outlook.com": [
                    ["mail.live.com"]
                ],
                "AOL Mail": [
                    ["mail.aol.com"]
                ],
                "Daum Mail": [
                    ["mail2.daum.net"]
                ],
                "Yahoo! Mail": [
                    ["mail.yahoo.net", "mail.yahoo.com", "mail.yahoo.co.uk", "mail.yahoo.co.jp"]
                ],
                "163 Mail": [
                    ["mail.163.com"]
                ],
                "Orange Webmail": [
                    ["orange.fr/webmail"]
                ],
                "QQ Mail": [
                    ["mail.qq.com"]
                ],
                Gmail: [
                    ["mail.google.com"]
                ]
            },
            social: {
                hi5: [
                    ["hi5.com"]
                ],
                Friendster: [
                    ["friendster.com"]
                ],
                Weibo: [
                    ["weibo.com", "t.cn"]
                ],
                Xanga: [
                    ["xanga.com"]
                ],
                Myspace: [
                    ["myspace.com"]
                ],
                Buzznet: [
                    ["wayn.com"]
                ],
                MyLife: [
                    ["mylife.ru"]
                ],
                Flickr: [
                    ["flickr.com"]
                ],
                "Sonico.com": [
                    ["sonico.com"]
                ],
                Odnoklassniki: [
                    ["odnoklassniki.ru"]
                ],
                GitHub: [
                    ["github.com"]
                ],
                Classmates: [
                    ["classmates.com"]
                ],
                "Friends Reunited": [
                    ["friendsreunited.com"]
                ],
                Renren: [
                    ["renren.com"]
                ],
                "vKruguDruzei.ru": [
                    ["vkrugudruzei.ru"]
                ],
                "Gaia Online": [
                    ["gaiaonline.com"]
                ],
                Netlog: [
                    ["netlog.com"]
                ],
                Orkut: [
                    ["orkut.com"]
                ],
                MyHeritage: [
                    ["myheritage.com"]
                ],
                Multiply: [
                    ["multiply.com"]
                ],
                myYearbook: [
                    ["myyearbook.com"]
                ],
                WeeWorld: [
                    ["weeworld.com"]
                ],
                Vimeo: [
                    ["vimeo.com"]
                ],
                Geni: [
                    ["geni.com"]
                ],
                SourceForge: [
                    ["sourceforge.net"]
                ],
                Plaxo: [
                    ["plaxo.com"]
                ],
                "Taringa!": [
                    ["taringa.net"]
                ],
                Tagged: [
                    ["login.tagged.com"]
                ],
                XING: [
                    ["xing.com"]
                ],
                Instagram: [
                    ["instagram.com"]
                ],
                Vkontakte: [
                    ["vk.com", "vkontakte.ru"]
                ],
                Twitter: [
                    ["twitter.com", "t.co"]
                ],
                WAYN: [
                    ["wayn.com"]
                ],
                Tuenti: [
                    ["tuenti.com"]
                ],
                "Mail.ru": [
                    ["my.mail.ru"]
                ],
                Badoo: [
                    ["badoo.com"]
                ],
                Habbo: [
                    ["habbo.com"]
                ],
                Pinterest: [
                    ["pinterest.com"]
                ],
                LinkedIn: [
                    ["linkedin.com"]
                ],
                Foursquare: [
                    ["foursquare.com"]
                ],
                Flixster: [
                    ["flixster.com"]
                ],
                "Windows Live Spaces": [
                    ["login.live.com"]
                ],
                BlackPlanet: [
                    ["blackplanet.com"]
                ],
                Cyworld: [
                    ["global.cyworld.com"]
                ],
                Pocket: [
                    ["getpocket.com"]
                ],
                Skyrock: [
                    ["skyrock.com"]
                ],
                Facebook: [
                    ["facebook.com", "fb.me"]
                ],
                StudiVZ: [
                    ["studivz.net"]
                ],
                Fotolog: [
                    ["fotolog.com"]
                ],
                "Google+": [
                    ["url.google.com", "plus.google.com"]
                ],
                "Nasza-klasa.pl": [
                    ["nk.pl"]
                ],
                Qzone: [
                    ["qzone.qq.com"]
                ],
                Douban: [
                    ["douban.com"]
                ],
                Bebo: [
                    ["bebo.com"]
                ],
                Youtube: [
                    ["youtube.com", "youtu.be"]
                ],
                Reddit: [
                    ["reddit.com"]
                ],
                "Identi.ca": [
                    ["identi.ca"]
                ],
                StackOverflow: [
                    ["stackoverflow.com"]
                ],
                Mixi: [
                    ["mixi.jp"]
                ],
                StumbleUpon: [
                    ["stumbleupon.com"]
                ],
                Viadeo: [
                    ["viadeo.com"]
                ],
                "Last.fm": [
                    ["lastfm.ru"]
                ],
                LiveJournal: [
                    ["livejournal.ru"]
                ],
                Tumblr: [
                    ["tumblr.com"]
                ],
                "Hacker News": [
                    ["news.ycombinator.com"]
                ],
                Delicious: [
                    ["delicious.com"]
                ],
                Hyves: [
                    ["hyves.nl"]
                ],
                "Paper.li": [
                    ["paper.li"]
                ],
                "MoiKrug.ru": [
                    ["moikrug.ru"]
                ]
            }
        }
    }, function(e, t, i) {
        "use strict";

        function a(e) {
            return e && e.__esModule ? e : {
                default: e
            }
        }
        Object.defineProperty(t, "__esModule", {
            value: !0
        });
        var o = i(4),
            n = a(o),
            r = i(1),
            l = i(14),
            s = a(l),
            c = i(176),
            d = a(c),
            u = i(5),
            f = a(u),
            p = i(63),
            h = f.default.name("utm"),
            m = {
                utmccn: "campaign",
                utmcsr: "source",
                utmcmd: "medium",
                utmctr: "keyword",
                utmcct: "content"
            },
            g = {
                parseUTM: function(e, t, i) {
                    var a = {},
                        o = !1;
                    if (i)
                        for (var r = i.split("|"), l = void 0, s = n.default.values(m), c = 0; c < r.length; c++) l = r[c].split("="), 2 === l.length && (s.indexOf(l[0]) >= 0 ? (a[l[0]] = l[1], o = !0) : "term" === l[0] && (a.keyword = l[1]));
                    if (!o)
                        if ("string" == typeof t && "" !== t) {
                            h.log("processing_refer", t, e);
                            var u = new d.default(t, e);
                            if (!u.known) return void h.log("unknown_refer");
                            if ("internal" === u.medium) {
                                if (u.uri.query && u.uri.query.length) {
                                    var f = p.parse(u.uri.query);
                                    for (var g in m) f["utm_" + m[g]] && (a[m[g]] = f["utm_" + m[g]])
                                }
                                n.default.isEmpty(a) && n.default.extend(a, {
                                    campaign: "(direct)",
                                    source: "(direct)"
                                }), n.default.extend(a, {
                                    campaign: "(direct)",
                                    source: "(direct)"
                                })
                            } else "unknown" === u.medium ? n.default.extend(a, {
                                campaign: "(referral)",
                                medium: "referral",
                                source: u.uri.hostname,
                                content: u.uri.path
                            }) : n.default.extend(a, {
                                campaign: "(organic)",
                                source: u.referer,
                                medium: u.medium,
                                keyword: u.search_term,
                                content: ""
                            })
                        } else !n.default.isEmpty(a) && n.default.extend(a, {
                            campaign: "(direct)",
                            source: "(direct)"
                        });
                    return a
                },
                getUTMParamsFromUrl: function(e) {
                    for (var t = e.indexOf("?"), i = null; i != -1;) i = e.indexOf("?", t + 1), i > 0 && (t = i);
                    var a, o, n = e.substr(t + 1),
                        r = n.split("&"),
                        l = "";
                    for (o = r.length; o--;) a = r[o].split("="), a[0].indexOf("utm_") >= 0 && (a = r[o], l += (l.length > 0 ? "|" : "") + a.substr(a.indexOf("utm_") + 4));
                    return l
                },
                setUTM: function(e, t) {
                    var i = g.getUTMParamsFromUrl(e);
                    (0, r.cookie)("utm", i), s.default.utm = g.parseUTM(e, t, i)
                }
            };
        t.default = g
    }, function(e, t, i) {
        "use strict";

        function a(e) {
            return e && e.__esModule ? e : {
                default: e
            }
        }

        function o() {
            var e = "0.1",
                t = globalStore.jivoLoaderVersion,
                i = 0;
            try {
                i = JSON.parse(localStorage.getItem("__jivoLoader")).version, i = parseInt(i, 10)
            } catch (e) {}
            t && e > t && e > i ? (window.__loaderOnLoad = function(e) {
                localStorage.setItem("__jivoLoader", (0, r.default)({
                    version: e.version,
                    code: e.code
                }))
            }, globalStore.loadScript(s.default.staticUrl("/js/loader_storage.js"), document)) : t >= e && localStorage.removeItem("__jivoLoader")
        }
        Object.defineProperty(t, "__esModule", {
            value: !0
        });
        var n = i(33),
            r = a(n),
            l = i(1),
            s = a(l);
        t.default = o
    }, function(e, t, i) {
        e.exports = {
            default: i(187),
            __esModule: !0
        }
    }, function(e, t, i) {
        e.exports = {
            default: i(191),
            __esModule: !0
        }
    }, function(e, t, i) {
        e.exports = {
            default: i(192),
            __esModule: !0
        }
    }, function(e, t, i) {
        e.exports = {
            default: i(193),
            __esModule: !0
        }
    }, function(e, t) {
        "use strict";
        t.__esModule = !0, t.default = function(e, t) {
            var i = {};
            for (var a in e) t.indexOf(a) >= 0 || Object.prototype.hasOwnProperty.call(e, a) && (i[a] = e[a]);
            return i
        }
    }, function(e, t, i) {
        var a = i(30),
            o = a.JSON || (a.JSON = {
                stringify: JSON.stringify
            });
        e.exports = function(e) {
            return o.stringify.apply(o, arguments)
        }
    }, function(e, t, i) {
        i(212), e.exports = i(30).Object.assign
    }, function(e, t, i) {
        i(213);
        var a = i(30).Object;
        e.exports = function(e, t) {
            return a.create(e, t)
        }
    }, function(e, t, i) {
        i(214);
        var a = i(30).Object;
        e.exports = function(e, t, i) {
            return a.defineProperty(e, t, i)
        }
    }, function(e, t, i) {
        i(215), e.exports = i(30).Object.getPrototypeOf
    }, function(e, t, i) {
        i(216), e.exports = i(30).Object.keys
    }, function(e, t, i) {
        i(217), e.exports = i(30).Object.setPrototypeOf
    }, function(e, t, i) {
        i(220), i(218), i(221), i(222), e.exports = i(30).Symbol
    }, function(e, t, i) {
        i(219), i(223), e.exports = i(86).f("iterator")
    }, function(e, t) {
        e.exports = function(e) {
            if ("function" != typeof e) throw TypeError(e + " is not a function!");
            return e
        }
    }, function(e, t) {
        e.exports = function() {}
    }, function(e, t, i) {
        var a = i(40),
            o = i(210),
            n = i(209);
        e.exports = function(e) {
            return function(t, i, r) {
                var l, s = a(t),
                    c = o(s.length),
                    d = n(r, c);
                if (e && i != i) {
                    for (; c > d;)
                        if (l = s[d++], l != l) return !0
                } else
                    for (; c > d; d++)
                        if ((e || d in s) && s[d] === i) return e || d || 0; return !e && -1
            }
        }
    }, function(e, t, i) {
        var a = i(46),
            o = i(79),
            n = i(58);
        e.exports = function(e) {
            var t = a(e),
                i = o.f;
            if (i)
                for (var r, l = i(e), s = n.f, c = 0; l.length > c;) s.call(e, r = l[c++]) && t.push(r);
            return t
        }
    }, function(e, t, i) {
        e.exports = i(34).document && document.documentElement
    }, function(e, t, i) {
        var a = i(105);
        e.exports = Array.isArray || function(e) {
            return "Array" == a(e)
        }
    }, function(e, t, i) {
        "use strict";
        var a = i(78),
            o = i(59),
            n = i(80),
            r = {};
        i(45)(r, i(47)("iterator"), function() {
            return this
        }), e.exports = function(e, t, i) {
            e.prototype = a(r, {
                next: o(1, i)
            }), n(e, t + " Iterator")
        }
    }, function(e, t) {
        e.exports = function(e, t) {
            return {
                value: t,
                done: !!e
            }
        }
    }, function(e, t, i) {
        var a = i(46),
            o = i(40);
        e.exports = function(e, t) {
            for (var i, n = o(e), r = a(n), l = r.length, s = 0; l > s;)
                if (n[i = r[s++]] === t) return i
        }
    }, function(e, t, i) {
        var a = i(61)("meta"),
            o = i(51),
            n = i(38),
            r = i(39).f,
            l = 0,
            s = Object.isExtensible || function() {
                return !0
            },
            c = !i(44)(function() {
                return s(Object.preventExtensions({}))
            }),
            d = function(e) {
                r(e, a, {
                    value: {
                        i: "O" + ++l,
                        w: {}
                    }
                })
            },
            u = function(e, t) {
                if (!o(e)) return "symbol" == typeof e ? e : ("string" == typeof e ? "S" : "P") + e;
                if (!n(e, a)) {
                    if (!s(e)) return "F";
                    if (!t) return "E";
                    d(e)
                }
                return e[a].i
            },
            f = function(e, t) {
                if (!n(e, a)) {
                    if (!s(e)) return !0;
                    if (!t) return !1;
                    d(e)
                }
                return e[a].w
            },
            p = function(e) {
                return c && h.NEED && s(e) && !n(e, a) && d(e), e
            },
            h = e.exports = {
                KEY: a,
                NEED: !1,
                fastKey: u,
                getWeak: f,
                onFreeze: p
            }
    }, function(e, t, i) {
        "use strict";
        var a = i(46),
            o = i(79),
            n = i(58),
            r = i(60),
            l = i(109),
            s = Object.assign;
        e.exports = !s || i(44)(function() {
            var e = {},
                t = {},
                i = Symbol(),
                a = "abcdefghijklmnopqrst";
            return e[i] = 7, a.split("").forEach(function(e) {
                t[e] = e
            }), 7 != s({}, e)[i] || Object.keys(s({}, t)).join("") != a
        }) ? function(e, t) {
            for (var i = r(e), s = arguments.length, c = 1, d = o.f, u = n.f; s > c;)
                for (var f, p = l(arguments[c++]), h = d ? a(p).concat(d(p)) : a(p), m = h.length, g = 0; m > g;) u.call(p, f = h[g++]) && (i[f] = p[f]);
            return i
        } : s
    }, function(e, t, i) {
        var a = i(39),
            o = i(50),
            n = i(46);
        e.exports = i(36) ? Object.defineProperties : function(e, t) {
            o(e);
            for (var i, r = n(t), l = r.length, s = 0; l > s;) a.f(e, i = r[s++], t[i]);
            return e
        }
    }, function(e, t, i) {
        var a = i(40),
            o = i(112).f,
            n = {}.toString,
            r = "object" == typeof window && window && Object.getOwnPropertyNames ? Object.getOwnPropertyNames(window) : [],
            l = function(e) {
                try {
                    return o(e)
                } catch (e) {
                    return r.slice()
                }
            };
        e.exports.f = function(e) {
            return r && "[object Window]" == n.call(e) ? l(e) : o(a(e))
        }
    }, function(e, t, i) {
        var a = i(51),
            o = i(50),
            n = function(e, t) {
                if (o(e), !a(t) && null !== t) throw TypeError(t + ": can't set as prototype!")
            };
        e.exports = {set: Object.setPrototypeOf || ("__proto__" in {} ? function(e, t, a) {
                try {
                    a = i(106)(Function.call, i(111).f(Object.prototype, "__proto__").set, 2), a(e, []), t = !(e instanceof Array)
                } catch (e) {
                    t = !0
                }
                return function(e, i) {
                    return n(e, i), t ? e.__proto__ = i : a(e, i), e
                }
            }({}, !1) : void 0),
            check: n
        }
    }, function(e, t, i) {
        var a = i(83),
            o = i(74);
        e.exports = function(e) {
            return function(t, i) {
                var n, r, l = String(o(t)),
                    s = a(i),
                    c = l.length;
                return s < 0 || s >= c ? e ? "" : void 0 : (n = l.charCodeAt(s), n < 55296 || n > 56319 || s + 1 === c || (r = l.charCodeAt(s + 1)) < 56320 || r > 57343 ? e ? l.charAt(s) : n : e ? l.slice(s, s + 2) : (n - 55296 << 10) + (r - 56320) + 65536)
            }
        }
    }, function(e, t, i) {
        var a = i(83),
            o = Math.max,
            n = Math.min;
        e.exports = function(e, t) {
            return e = a(e), e < 0 ? o(e + t, 0) : n(e, t)
        }
    }, function(e, t, i) {
        var a = i(83),
            o = Math.min;
        e.exports = function(e) {
            return e > 0 ? o(a(e), 9007199254740991) : 0
        }
    }, function(e, t, i) {
        "use strict";
        var a = i(195),
            o = i(201),
            n = i(76),
            r = i(40);
        e.exports = i(110)(Array, "Array", function(e, t) {
            this._t = r(e), this._i = 0, this._k = t
        }, function() {
            var e = this._t,
                t = this._k,
                i = this._i++;
            return !e || i >= e.length ? (this._t = void 0, o(1)) : "keys" == t ? o(0, i) : "values" == t ? o(0, e[i]) : o(0, [i, e[i]])
        }, "values"), n.Arguments = n.Array, a("keys"), a("values"), a("entries")
    }, function(e, t, i) {
        var a = i(37);
        a(a.S + a.F, "Object", {
            assign: i(204)
        })
    }, function(e, t, i) {
        var a = i(37);
        a(a.S, "Object", {
            create: i(78)
        })
    }, function(e, t, i) {
        var a = i(37);
        a(a.S + a.F * !i(36), "Object", {
            defineProperty: i(39).f
        })
    }, function(e, t, i) {
        var a = i(60),
            o = i(113);
        i(115)("getPrototypeOf", function() {
            return function(e) {
                return o(a(e))
            }
        })
    }, function(e, t, i) {
        var a = i(60),
            o = i(46);
        i(115)("keys", function() {
            return function(e) {
                return o(a(e))
            }
        })
    }, function(e, t, i) {
        var a = i(37);
        a(a.S, "Object", {
            setPrototypeOf: i(207).set
        })
    }, function(e, t) {}, function(e, t, i) {
        "use strict";
        var a = i(208)(!0);
        i(110)(String, "String", function(e) {
            this._t = String(e), this._i = 0
        }, function() {
            var e, t = this._t,
                i = this._i;
            return i >= t.length ? {
                value: void 0,
                done: !0
            } : (e = a(t, i), this._i += e.length, {
                value: e,
                done: !1
            })
        })
    }, function(e, t, i) {
        "use strict";
        var a = i(34),
            o = i(38),
            n = i(36),
            r = i(37),
            l = i(116),
            s = i(203).KEY,
            c = i(44),
            d = i(82),
            u = i(80),
            f = i(61),
            p = i(47),
            h = i(86),
            m = i(85),
            g = i(202),
            v = i(197),
            b = i(199),
            w = i(50),
            y = i(40),
            x = i(84),
            _ = i(59),
            k = i(78),
            j = i(206),
            E = i(111),
            C = i(39),
            M = i(46),
            S = E.f,
            z = C.f,
            T = j.f,
            I = a.Symbol,
            N = a.JSON,
            O = N && N.stringify,
            A = "prototype",
            P = p("_hidden"),
            L = p("toPrimitive"),
            B = {}.propertyIsEnumerable,
            D = d("symbol-registry"),
            H = d("symbols"),
            F = d("op-symbols"),
            R = Object[A],
            V = "function" == typeof I,
            W = a.QObject,
            q = !W || !W[A] || !W[A].findChild,
            U = n && c(function() {
                return 7 != k(z({}, "a", {get: function() {
                        return z(this, "a", {
                            value: 7
                        }).a
                    }
                })).a
            }) ? function(e, t, i) {
                var a = S(R, t);
                a && delete R[t], z(e, t, i), a && e !== R && z(R, t, a)
            } : z,
            G = function(e) {
                var t = H[e] = k(I[A]);
                return t._k = e, t
            },
            X = V && "symbol" == typeof I.iterator ? function(e) {
                return "symbol" == typeof e
            } : function(e) {
                return e instanceof I
            },
            Y = function(e, t, i) {
                return e === R && Y(F, t, i), w(e), t = x(t, !0), w(i), o(H, t) ? (i.enumerable ? (o(e, P) && e[P][t] && (e[P][t] = !1), i = k(i, {
                    enumerable: _(0, !1)
                })) : (o(e, P) || z(e, P, _(1, {})), e[P][t] = !0), U(e, t, i)) : z(e, t, i)
            },
            Z = function(e, t) {
                w(e);
                for (var i, a = v(t = y(t)), o = 0, n = a.length; n > o;) Y(e, i = a[o++], t[i]);
                return e
            },
            J = function(e, t) {
                return void 0 === t ? k(e) : Z(k(e), t)
            },
            K = function(e) {
                var t = B.call(this, e = x(e, !0));
                return !(this === R && o(H, e) && !o(F, e)) && (!(t || !o(this, e) || !o(H, e) || o(this, P) && this[P][e]) || t)
            },
            Q = function(e, t) {
                if (e = y(e), t = x(t, !0), e !== R || !o(H, t) || o(F, t)) {
                    var i = S(e, t);
                    return !i || !o(H, t) || o(e, P) && e[P][t] || (i.enumerable = !0), i
                }
            },
            $ = function(e) {
                for (var t, i = T(y(e)), a = [], n = 0; i.length > n;) o(H, t = i[n++]) || t == P || t == s || a.push(t);
                return a
            },
            ee = function(e) {
                for (var t, i = e === R, a = T(i ? F : y(e)), n = [], r = 0; a.length > r;) !o(H, t = a[r++]) || i && !o(R, t) || n.push(H[t]);
                return n
            };
        V || (I = function() {
            if (this instanceof I) throw TypeError("Symbol is not a constructor!");
            var e = f(arguments.length > 0 ? arguments[0] : void 0),
                t = function(i) {
                    this === R && t.call(F, i), o(this, P) && o(this[P], e) && (this[P][e] = !1), U(this, e, _(1, i))
                };
            return n && q && U(R, e, {
                configurable: !0,
                set: t
            }), G(e)
        }, l(I[A], "toString", function() {
            return this._k
        }), E.f = Q, C.f = Y, i(112).f = j.f = $, i(58).f = K, i(79).f = ee, n && !i(77) && l(R, "propertyIsEnumerable", K, !0), h.f = function(e) {
            return G(p(e))
        }), r(r.G + r.W + r.F * !V, {
            Symbol: I
        });
        for (var te = "hasInstance,isConcatSpreadable,iterator,match,replace,search,species,split,toPrimitive,toStringTag,unscopables".split(","), ie = 0; te.length > ie;) p(te[ie++]);
        for (var te = M(p.store), ie = 0; te.length > ie;) m(te[ie++]);
        r(r.S + r.F * !V, "Symbol", {
            for: function(e) {
                return o(D, e += "") ? D[e] : D[e] = I(e)
            },
            keyFor: function(e) {
                if (X(e)) return g(D, e);
                throw TypeError(e + " is not a symbol!")
            },
            useSetter: function() {
                q = !0
            },
            useSimple: function() {
                q = !1
            }
        }), r(r.S + r.F * !V, "Object", {
            create: J,
            defineProperty: Y,
            defineProperties: Z,
            getOwnPropertyDescriptor: Q,
            getOwnPropertyNames: $,
            getOwnPropertySymbols: ee
        }), N && r(r.S + r.F * (!V || c(function() {
            var e = I();
            return "[null]" != O([e]) || "{}" != O({
                a: e
            }) || "{}" != O(Object(e))
        })), "JSON", {
            stringify: function(e) {
                if (void 0 !== e && !X(e)) {
                    for (var t, i, a = [e], o = 1; arguments.length > o;) a.push(arguments[o++]);
                    return t = a[1], "function" == typeof t && (i = t), !i && b(t) || (t = function(e, t) {
                        if (i && (t = i.call(this, e, t)), !X(t)) return t
                    }), a[1] = t, O.apply(N, a)
                }
            }
        }), I[A][L] || i(45)(I[A], L, I[A].valueOf), u(I, "Symbol"), u(Math, "Math", !0), u(a.JSON, "JSON", !0)
    }, function(e, t, i) {
        i(85)("asyncIterator")
    }, function(e, t, i) {
        i(85)("observable")
    }, function(e, t, i) {
        i(211);
        for (var a = i(34), o = i(45), n = i(76), r = i(47)("toStringTag"), l = ["NodeList", "DOMTokenList", "MediaList", "StyleSheetList", "CSSRuleList"], s = 0; s < 5; s++) {
            var c = l[s],
                d = a[c],
                u = d && d.prototype;
            u && !u[r] && o(u, r, c), n[c] = n.Array
        }
    }, function(e, t, i) {
        t = e.exports = i(19)(), t.push([e.id, ".nowrap{white-space:nowrap}.bull{content:\"\";position:absolute;left:12px;top:12px;width:6px;height:6px;-webkit-border-radius:3px 3px 3px 3px;-khtml-border-radius:3px 3px 3px 3px;-moz-border-radius:3px 3px 3px 3px;-ms-border-radius:3px 3px 3px 3px;-o-border-radius:3px 3px 3px 3px;border-radius:3px 3px 3px 3px;background-color:#3cb868}.jivo-animate,.jivo-animated{-webkit-animation-duration:.3s;-webkit-animation-iteration-count:1;-webkit-animation-fill-mode:forwards;-moz-animation-duration:.3s;-moz-animation-iteration-count:1;-moz-animation-fill-mode:forwards;-ms-animation-duration:.3s;-ms-animation-iteration-count:1;-ms-animation-fill-mode:forwards;-o-animation-duration:.3s;-o-animation-iteration-count:1;-o-animation-fill-mode:forwards;animation-duration:.3s;animation-iteration-count:1;animation-fill-mode:forwards}.jivo-animate#jivo-label.jivo-fixed-bottom,.jivo-animated#jivo-label.jivo-fixed-bottom{-webkit-animation-name:labelBottom;-moz-animation-name:labelBottom;-o-animation-name:labelBottom;animation-name:labelBottom}.jivo-animate#jivo-label.jivo-fixed-top,.jivo-animated#jivo-label.jivo-fixed-top{-webkit-animation-name:labelTop;-moz-animation-name:labelTop;-o-animation-name:labelTop;animation-name:labelTop}.jivo-animate#jivo-label.jivo-fixed-left,.jivo-animated#jivo-label.jivo-fixed-left{-webkit-animation-name:labelLeft;-moz-animation-name:labelLeft;-o-animation-name:labelLeft;animation-name:labelLeft}.jivo-animate#jivo-label.jivo-fixed-right,.jivo-animated#jivo-label.jivo-fixed-right{-webkit-animation-name:labelRight;-moz-animation-name:labelRight;-o-animation-name:labelRight;animation-name:labelRight}.jivo-animate#jivo-label.jivo-fade-in,.jivo-animated#jivo-label.jivo-fade-in{-webkit-animation-name:fadeIn;-moz-animation-name:fadeIn;-o-animation-name:fadeIn;animation-name:fadeIn}.jivo-animate#jivo-label.jivo-fade-out,.jivo-animated#jivo-label.jivo-fade-out{-webkit-animation-name:fadeOut;-moz-animation-name:fadeOut;-o-animation-name:fadeOut;animation-name:fadeOut}.jivo-animate#jivo-chat #inner-chat,.jivo-animated#jivo-chat #inner-chat{-webkit-animation-duration:.3s;-webkit-animation-iteration-count:1;-webkit-animation-fill-mode:forwards;-moz-animation-duration:.3s;-moz-animation-iteration-count:1;-moz-animation-fill-mode:forwards;-ms-animation-duration:.3s;-ms-animation-iteration-count:1;-ms-animation-fill-mode:forwards;-o-animation-duration:.3s;-o-animation-iteration-count:1;-o-animation-fill-mode:forwards;animation-duration:.3s;animation-iteration-count:1;animation-fill-mode:forwards}.jivo-animate#jivo-chat #inner-chat.jivo-fade-in,.jivo-animated#jivo-chat #inner-chat.jivo-fade-in{-webkit-animation-name:fadeIn;-moz-animation-name:fadeIn;-o-animation-name:fadeIn;animation-name:fadeIn}.jivo-animate#jivo-chat #inner-chat.jivo-fade-out,.jivo-animated#jivo-chat #inner-chat.jivo-fade-out{-webkit-animation-name:fadeOut;-moz-animation-name:fadeOut;-o-animation-name:fadeOut;animation-name:fadeOut}.jivo-animate #jivo_chat_iframe,.jivo-animated #jivo_chat_iframe{-webkit-animation-duration:.3s;-webkit-animation-iteration-count:1;-webkit-animation-fill-mode:forwards;-moz-animation-duration:.3s;-moz-animation-iteration-count:1;-moz-animation-fill-mode:forwards;-ms-animation-duration:.3s;-ms-animation-iteration-count:1;-ms-animation-fill-mode:forwards;-o-animation-duration:.3s;-o-animation-iteration-count:1;-o-animation-fill-mode:forwards;animation-duration:.3s;animation-iteration-count:1;animation-fill-mode:forwards}.jivo-animate #jivo_chat_iframe.jivo-fade-in,.jivo-animated #jivo_chat_iframe.jivo-fade-in{-webkit-animation-name:fadeIn;-moz-animation-name:fadeIn;-o-animation-name:fadeIn;animation-name:fadeIn}.keyframes-bottom 0%{bottom:-200px}.keyframes-bottom to{bottom:0}.keyframes-top 0%{top:-200px}.keyframes-top to{top:0}.keyframes-left 0%{left:-200px}.keyframes-left to{left:0}.keyframes-right 0%{right:-200px}.keyframes-right to{right:0}@-webkit-keyframes labelBottom{0%{bottom:-200px}to{bottom:0}}@-moz-keyframes labelBottom{0%{bottom:-200px}to{bottom:0}}@-o-keyframes labelBottom{0%{bottom:-200px}to{bottom:0}}@keyframes labelBottom{0%{bottom:-200px}to{bottom:0}}@-webkit-keyframes labelTop{0%{top:-200px}to{top:0}}@-moz-keyframes labelTop{0%{top:-200px}to{top:0}}@-o-keyframes labelTop{0%{top:-200px}to{top:0}}@keyframes labelTop{0%{top:-200px}to{top:0}}@-webkit-keyframes labelLeft{0%{left:-200px}to{left:0}}@-moz-keyframes labelLeft{0%{left:-200px}to{left:0}}@-o-keyframes labelLeft{0%{left:-200px}to{left:0}}@keyframes labelLeft{0%{left:-200px}to{left:0}}@-webkit-keyframes labelRight{0%{right:-200px}to{right:0}}@-moz-keyframes labelRight{0%{right:-200px}to{right:0}}@-o-keyframes labelRight{0%{right:-200px}to{right:0}}@keyframes labelRight{0%{right:-200px}to{right:0}}.keyframes-fade-in 0%{-moz-opacity:0;-khtml-opacity:0;-webkit-opacity:0;opacity:0;-ms-filter:progid:DXImageTransform.Microsoft.Alpha(opacity=0 * 100);filter:alpha(opacity=0 * 100)}.keyframes-fade-in to{-moz-opacity:1;-khtml-opacity:1;-webkit-opacity:1;opacity:1;-ms-filter:progid:DXImageTransform.Microsoft.Alpha(opacity=1 * 100);filter:alpha(opacity=1 * 100)}@-webkit-keyframes fadeIn{0%{-moz-opacity:0;-khtml-opacity:0;-webkit-opacity:0;opacity:0;-ms-filter:progid:DXImageTransform.Microsoft.Alpha(opacity=0 * 100);filter:alpha(opacity=0 * 100)}to{-moz-opacity:1;-khtml-opacity:1;-webkit-opacity:1;opacity:1;-ms-filter:progid:DXImageTransform.Microsoft.Alpha(opacity=1 * 100);filter:alpha(opacity=1 * 100)}}@-moz-keyframes fadeIn{0%{-moz-opacity:0;-khtml-opacity:0;-webkit-opacity:0;opacity:0;-ms-filter:progid:DXImageTransform.Microsoft.Alpha(opacity=0 * 100);filter:alpha(opacity=0 * 100)}to{-moz-opacity:1;-khtml-opacity:1;-webkit-opacity:1;opacity:1;-ms-filter:progid:DXImageTransform.Microsoft.Alpha(opacity=1 * 100);filter:alpha(opacity=1 * 100)}}@-o-keyframes fadeIn{0%{-moz-opacity:0;-khtml-opacity:0;-webkit-opacity:0;opacity:0;-ms-filter:progid:DXImageTransform.Microsoft.Alpha(opacity=0 * 100);filter:alpha(opacity=0 * 100)}to{-moz-opacity:1;-khtml-opacity:1;-webkit-opacity:1;opacity:1;-ms-filter:progid:DXImageTransform.Microsoft.Alpha(opacity=1 * 100);filter:alpha(opacity=1 * 100)}}@keyframes fadeIn{0%{-moz-opacity:0;-khtml-opacity:0;-webkit-opacity:0;opacity:0;-ms-filter:progid:DXImageTransform.Microsoft.Alpha(opacity=0 * 100);filter:alpha(opacity=0 * 100)}to{-moz-opacity:1;-khtml-opacity:1;-webkit-opacity:1;opacity:1;-ms-filter:progid:DXImageTransform.Microsoft.Alpha(opacity=1 * 100);filter:alpha(opacity=1 * 100)}}.keyframes-fade-out 0%{-moz-opacity:1;-khtml-opacity:1;-webkit-opacity:1;opacity:1;-ms-filter:progid:DXImageTransform.Microsoft.Alpha(opacity=1 * 100);filter:alpha(opacity=1 * 100)}.keyframes-fade-out to{-moz-opacity:0;-khtml-opacity:0;-webkit-opacity:0;opacity:0;-ms-filter:progid:DXImageTransform.Microsoft.Alpha(opacity=0 * 100);filter:alpha(opacity=0 * 100)}@-webkit-keyframes fadeOut{0%{-moz-opacity:1;-khtml-opacity:1;-webkit-opacity:1;opacity:1;-ms-filter:progid:DXImageTransform.Microsoft.Alpha(opacity=1 * 100);filter:alpha(opacity=1 * 100)}to{-moz-opacity:0;-khtml-opacity:0;-webkit-opacity:0;opacity:0;-ms-filter:progid:DXImageTransform.Microsoft.Alpha(opacity=0 * 100);filter:alpha(opacity=0 * 100)}}@-moz-keyframes fadeOut{0%{-moz-opacity:1;-khtml-opacity:1;-webkit-opacity:1;opacity:1;-ms-filter:progid:DXImageTransform.Microsoft.Alpha(opacity=1 * 100);filter:alpha(opacity=1 * 100)}to{-moz-opacity:0;-khtml-opacity:0;-webkit-opacity:0;opacity:0;-ms-filter:progid:DXImageTransform.Microsoft.Alpha(opacity=0 * 100);filter:alpha(opacity=0 * 100)}}@-o-keyframes fadeOut{0%{-moz-opacity:1;-khtml-opacity:1;-webkit-opacity:1;opacity:1;-ms-filter:progid:DXImageTransform.Microsoft.Alpha(opacity=1 * 100);filter:alpha(opacity=1 * 100)}to{-moz-opacity:0;-khtml-opacity:0;-webkit-opacity:0;opacity:0;-ms-filter:progid:DXImageTransform.Microsoft.Alpha(opacity=0 * 100);filter:alpha(opacity=0 * 100)}}@keyframes fadeOut{0%{-moz-opacity:1;-khtml-opacity:1;-webkit-opacity:1;opacity:1;-ms-filter:progid:DXImageTransform.Microsoft.Alpha(opacity=1 * 100);filter:alpha(opacity=1 * 100)}to{-moz-opacity:0;-khtml-opacity:0;-webkit-opacity:0;opacity:0;-ms-filter:progid:DXImageTransform.Microsoft.Alpha(opacity=0 * 100);filter:alpha(opacity=0 * 100)}}.keyframes-fade-out-and-hide 0%{-moz-opacity:1;-khtml-opacity:1;-webkit-opacity:1;opacity:1;-ms-filter:progid:DXImageTransform.Microsoft.Alpha(opacity=1 * 100);filter:alpha(opacity=1 * 100)}.keyframes-fade-out-and-hide to{-moz-opacity:0;-khtml-opacity:0;-webkit-opacity:0;opacity:0;-ms-filter:progid:DXImageTransform.Microsoft.Alpha(opacity=0 * 100);filter:alpha(opacity=0 * 100);visibility:hidden}@-webkit-keyframes fadeOutHide{0%{-moz-opacity:1;-khtml-opacity:1;-webkit-opacity:1;opacity:1;-ms-filter:progid:DXImageTransform.Microsoft.Alpha(opacity=1 * 100);filter:alpha(opacity=1 * 100)}to{-moz-opacity:0;-khtml-opacity:0;-webkit-opacity:0;opacity:0;-ms-filter:progid:DXImageTransform.Microsoft.Alpha(opacity=0 * 100);filter:alpha(opacity=0 * 100);visibility:hidden}}@-moz-keyframes fadeOutHide{0%{-moz-opacity:1;-khtml-opacity:1;-webkit-opacity:1;opacity:1;-ms-filter:progid:DXImageTransform.Microsoft.Alpha(opacity=1 * 100);filter:alpha(opacity=1 * 100)}to{-moz-opacity:0;-khtml-opacity:0;-webkit-opacity:0;opacity:0;-ms-filter:progid:DXImageTransform.Microsoft.Alpha(opacity=0 * 100);filter:alpha(opacity=0 * 100);visibility:hidden}}@-o-keyframes fadeOutHide{0%{-moz-opacity:1;-khtml-opacity:1;-webkit-opacity:1;opacity:1;-ms-filter:progid:DXImageTransform.Microsoft.Alpha(opacity=1 * 100);filter:alpha(opacity=1 * 100)}to{-moz-opacity:0;-khtml-opacity:0;-webkit-opacity:0;opacity:0;-ms-filter:progid:DXImageTransform.Microsoft.Alpha(opacity=0 * 100);filter:alpha(opacity=0 * 100);visibility:hidden}}@keyframes fadeOutHide{0%{-moz-opacity:1;-khtml-opacity:1;-webkit-opacity:1;opacity:1;-ms-filter:progid:DXImageTransform.Microsoft.Alpha(opacity=1 * 100);filter:alpha(opacity=1 * 100)}to{-moz-opacity:0;-khtml-opacity:0;-webkit-opacity:0;opacity:0;-ms-filter:progid:DXImageTransform.Microsoft.Alpha(opacity=0 * 100);filter:alpha(opacity=0 * 100);visibility:hidden}}.keyframes-animate-height 0%{top:190px}.keyframes-animate-height to{top:70px}@-webkit-keyframes animateHeight{0%{top:190px}to{top:70px}}@-moz-keyframes animateHeight{0%{top:190px}to{top:70px}}@-o-keyframes animateHeight{0%{top:190px}to{top:70px}}@keyframes animateHeight{0%{top:190px}to{top:70px}}.keyframes-animate-height-offline 0%{top:190px}.keyframes-animate-height-offline to{top:60px}@-webkit-keyframes animateHeightOffline{0%{top:190px}to{top:60px}}@-moz-keyframes animateHeightOffline{0%{top:190px}to{top:60px}}@-o-keyframes animateHeightOffline{0%{top:190px}to{top:60px}}@keyframes animateHeightOffline{0%{top:190px}to{top:60px}}.header-color-dark{color:#222}#jivo_top_wrap .jivo-call-form.hide-content #jivo-save-tel,#jivo_top_wrap .jivo-call-form.hide-content .jivo-btn-recall,#jivo_top_wrap .jivo-call-form.hide-content .jivo-call-copy,#jivo_top_wrap .jivo-call-form.hide-content .jivo-call-form-shadow,#jivo_top_wrap .jivo-call-form.hide-content .jivo-call-text,#jivo_top_wrap .jivo-call-form.hide-content .jivo-error-header,#jivo_top_wrap .jivo-call-form.hide-content .jivo-logo{opacity:0!important}#jivo-call{position:absolute;visibility:hidden;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow:visible;opacity:0}#jivo-call .leaf{z-index:3}#call-header.hide-content{opacity:0}#call-header .call-eula-title{font-size:16px;padding-top:27px;padding-left:26px}#call-header .call-eula-title.light{color:#fff}#call-header .jivo-logo{width:62px;height:22px;background:none 0 0 no-repeat;left:50%;margin:0 auto 0 -31px;outline:0 none;position:absolute;top:35px}#call-header .jivo-logo span{display:none}#call-header .jivo-logo svg{margin-top:-7px;width:62px}#call-header .jivo-logo.jivo-logo-light svg #text{fill:#fff}.hide-logo .jivo-call-end,.hide-logo .jivo-call-text,.hide-logo .jivo-error-header{height:180px;line-height:180px;padding:5px 40px}.jivo-call-connecting a.jivo-logo,.jivo-call-wait a.jivo-logo{width:62px;height:22px;background:none 0 0 no-repeat;left:50%;margin-left:-31px!important;outline:0 none;position:absolute;top:35px}.jivo-call-connecting a.jivo-logo svg,.jivo-call-wait a.jivo-logo svg{margin-top:-7px;width:62px}.jivo-call-text{font-size:18px;font-weight:300;height:133px;line-height:133px;overflow:hidden;padding:52px 40px 5px}.jivo-call-text .jivo-text-time{font-size:24px;text-decoration:underline}.jivo-call-text .jivo-green-und{border-bottom:none;line-height:26px}.jivo-call-end{text-align:center;height:133px;line-height:133px;overflow:hidden;padding:52px 40px 5px}.jivo-call-end .jivo-thx-text{font-size:18px;font-weight:300;display:inline-block;vertical-align:middle;width:100%;line-height:20px;opacity:1}.jivo-error-header{height:133px;line-height:133px;padding:52px 20px 5px;overflow:hidden}.jivo-error-header-wrapper{display:inline-block;vertical-align:middle;width:100%}.jivo-error-header-wrapper .jivo-title-ce{color:#fff;font-size:16px;font-weight:300;line-height:20px;padding:0;width:100%;text-align:center}#jivo-call.jivo-fixed-bottom{border-top-left-radius:3px;border-top-right-radius:30px}.jivo-cw-animate{transition:all .5s cubic-bezier(.39,.24,.21,.99);-webkit-transition:all .5s cubic-bezier(.39,.24,.21,.99);-moz-transition:all .5s cubic-bezier(.39,.24,.21,.99);-o-transition:all .5s cubic-bezier(.39,.24,.21,.99);-webkit-transform:translateZ(0);-webkit-backface-visibility:hidden;-webkit-perspective:1000px}.jivo-call-form{top:0;left:0;display:block;opacity:1;height:100%}.jivo-call-form*{box-sizing:border-box}.jivo-call-form.jivo-call-form-low .jivo-title-ce{font-weight:300}.jivo-call-form.jivo-call-form-low .jivo-err-info,.jivo-call-form.jivo-call-form-low .jivo-title-ce{font-size:16px;line-height:20px;padding:0;width:100%;text-align:center}.jivo-call-form.jivo-call-form-low .jivo-form-box.jivo-form-box-transform-call{bottom:-4px;right:29px;left:auto;overflow:hidden}.jivo-call-form.jivo-call-form-low .jivo-form-header{height:190px}.jivo-call-form.jivo-call-form-low .jivo-form-box{position:relative;top:0;left:0;bottom:0;margin-left:0;width:100%;height:100%}.jivo-call-form.jivo-call-form-low .jivo-form-box .jivo-call-copy{bottom:15px;color:#9fabb7;font-family:Arial,sans-serif;font-size:14px;margin:0 auto;padding:0;position:fixed;text-align:center;width:100%}.jivo-call-form.jivo-call-form-low .jivo-form-box .jivo-start-chat{color:#545d6b;outline:0 none;text-decoration:none}.jivo-call-form.jivo-call-form-low .jivo-form-box .jivo-start-chat .jivo-ico-start-chat{vertical-align:middle;background:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20'%3E%3Cpath d='M18 0H2C.9 0 0 .9 0 2v18l4-4h14c1.1 0 2-.9 2-2V2c0-1.1-.9-2-2-2m-.1 13.9H2.2V2H18v11.9h-.1m-2-8.9H4v2h11.9V5M13 9H4v2h9V9z' fill-rule='evenodd' fill='%23838e9a'/%3E%3C/svg%3E\") 0 0 no-repeat;display:inline-block;width:20px;height:20px;margin-right:10px;opacity:1;transition:opacity .1s cubic-bezier(.39,.24,.21,.99);-webkit-transition:opacity .1s cubic-bezier(.39,.24,.21,.99);-moz-transition:opacity .1s cubic-bezier(.39,.24,.21,.99)}.jivo-call-form.jivo-call-form-low .jivo-form-box .jivo-start-chat:hover .jivo-ico-start-chat{opacity:.9}.jivo-call-form.jivo-call-form-low .jivo-form-box .jivo-start-chat:hover{text-decoration:underline}.jivo-call-form.jivo-call-form-low .jivo-form-box.header-color-light{color:#fff}.jivo-call-form.jivo-call-form-low .jivo-form-box.header-color-dark{color:#222}.jivo-call-form.jivo-call-form-low .jivo-form-box #jivo-call-form{padding-left:0;font-family:Arial,sans-serif}.jivo-call-form.jivo-call-form-low .jivo-form-box #jivo-call-form .jivo-call-form-shadow{width:195px;margin:0 auto 13px;padding-top:30px}.jivo-call-form.jivo-call-form-low .jivo-form-box #jivo-call-form #jivo-save-tel{background:#00c05a!important;font-size:13px;color:#fff;width:195px;text-align:center;padding-left:0;margin:0 auto;display:block}.jivo-call-form.jivo-call-form-low .jivo-form-box #jivo-call-form #jivo-save-tel .jivo-call-icon{display:none}.jivo-call-form.jivo-call-form-low .jivo-form-box #jivo-call-form .jivo-btn-recall{text-transform:uppercase;display:block;width:195px;background:#00c05a!important;font-size:13px;font-weight:700;color:#fff;text-align:center;padding-left:0;margin:0 auto;text-decoration:none;height:45px;line-height:45px;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}.jivo-call-form .jivo-form-box{position:relative;top:251px;left:50%;margin-left:-614px/2;width:614px;z-index:2}.jivo-call-form .jivo-form-box.jivo-form-box-transform-call{overflow:hidden;top:0;left:0;color:#fff;text-align:center;width:128px;height:128px;border-radius:64px;position:fixed;margin:0;padding:0;min-height:inherit}.jivo-call-content{background:#fff;bottom:40px;left:0;position:fixed;right:0;top:190px;clear:both;width:100%;z-index:2;-webkit-animation-duration:.3s;-webkit-animation-iteration-count:1;-webkit-animation-fill-mode:forwards;-moz-animation-duration:.3s;-moz-animation-iteration-count:1;-moz-animation-fill-mode:forwards;-ms-animation-duration:.3s;-ms-animation-iteration-count:1;-ms-animation-fill-mode:forwards;-o-animation-duration:.3s;-o-animation-iteration-count:1;-o-animation-fill-mode:forwards;animation-duration:.3s;animation-iteration-count:1;animation-fill-mode:forwards}.jivo-call-content.jivo-call-content-animate{-webkit-animation-name:animateHeight;-moz-animation-name:animateHeight;-o-animation-name:animateHeight;animation-name:animateHeight}.jivo-call-content.jivo-call-content-animate-offline{-webkit-animation-name:animateHeightOffline;-moz-animation-name:animateHeightOffline;-o-animation-name:animateHeightOffline;animation-name:animateHeightOffline}.jivo-text-center{display:inline-block;line-height:normal;text-align:center;vertical-align:middle;width:100%}.header-color-light .jivo-err-info,.header-color-light .jivo-text-center,.header-color-light .jivo-thx-text,.header-color-light .jivo-title-ce{color:#fff}#jivo-call-form{padding-left:45px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#jivo-call-form #jivo-save-tel{border:none;vertical-align:top;text-decoration:none}#jivo-call-form .jivo-focus{outline:5px auto -webkit-focus-ring-color}#jivo-call-form #jivo-call-code{text-align:center;color:#000;width:35px}#jivo-call-form #jivo-call-code:focus{color:#000}#jivo-call-form #jivo-save-tel{height:45px;line-height:45px;display:inline-block;font-family:Arial,sans-serif;font-weight:700;font-size:16px;color:#fff;background-color:#3cb868;padding-left:24px;min-width:193px;width:220px;text-transform:uppercase;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}#jivo-call-form #jivo-save-tel:hover{text-decoration:none;cursor:pointer}#jivo-call-form #jivo-save-tel .jivo-call-icon{background:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 53.2 51'%3E%3Cstyle%3E@-webkit-keyframes ochange{0%25,to{opacity:0}50%25{opacity:1}}@keyframes ochange{0%25,to{opacity:0}50%25{opacity:1}}%23call-1,%23call-2{opacity:0;animation-duration:1.5s;animation-name:ochange;animation-iteration-count:infinite;animation-delay:1s}%23call-1{animation-delay:0s}%3C/style%3E%3Cpath id='call-1' fill='%2344BB6E' d='M52 24.7h-4c0-6.4-1.8-11.5-5.5-15-6-5.9-15-5.7-15.1-5.7l-.1-4c.4 0 10.8-.2 18.1 6.8 4.4 4.3 6.6 10.3 6.6 17.9z'/%3E%3Cpath id='call-2' fill='%2344BB6E' d='M39.7 24h-4c0-2.4-.7-4.3-2-5.6-2.2-2.1-5.6-2.1-5.6-2.1l-.1-4c.2 0 5.1-.1 8.5 3.2 2.1 2.1 3.2 5 3.2 8.5z'/%3E%3Cpath fill='%2344BB6E' d='M48.2 35.7c-3.7 0-7.1-.6-10.2-1.7-.8-.6-2-.3-2.8.6L29 40.8C21 36.5 14.2 30 10.2 22.1l6.5-6.2c.6-.8.8-2 .6-2.8-1.1-3.4-1.7-6.8-1.7-10.2 0-1.7-1.1-2.8-2.8-2.8h-10C1.1 0 0 1.1 0 2.8 0 29.5 21.5 51 48.2 51c1.7 0 2.8-1.1 2.8-2.8v-9.6c0-1.8-1.1-2.9-2.8-2.9z'/%3E%3C/svg%3E\") 0 0 no-repeat;display:inline-block;width:17px;height:15px;margin-right:10px;vertical-align:middle;padding-top:2px}.jivo-call-copy{font-family:Arial,sans-serif;font-size:12px;padding-top:42px;min-height:15px;padding-bottom:20px;text-align:center;color:#bfbfbf}.jivo-call-copy a{text-decoration:none;color:#bfbfbf}.jivo-call-copy a span{opacity:0;padding-left:5px}#jivo-call-container .jivo-call-form-shadow{margin:0 auto 12px}#jivo-call-container .jivo-call-action{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:#fff;text-align:center}#jivo-call-container .jivo-call-action .hidden{display:none}#jivo-call-container .jivo-call-action .jivo-call-step{position:relative;margin-left:auto;margin-right:auto}#jivo-call-container .jivo-call-action .jivo-call-step.jivo-call-end,#jivo-call-container .jivo-call-action .jivo-call-step.jivo-call-error{background:#fff}#jivo-call-container .jivo-call-action .jivo-call-wait{position:relative;text-align:center;color:#3e434c;font-size:20px;line-height:24px;font-weight:300}#jivo-call-container .jivo-call-action .jivo-call-wait .jivo-timer-block{margin:0 auto 15px;position:relative;width:110px;height:110px;-webkit-border-radius:50%;-moz-border-radius:50%;border-radius:50%;background:#6ac489;transform:scale(.5);-webkit-transform:scale(.5);-moz-transform:scale(.5);transition:all .3s ease-in-out;-webkit-transition:all .3s ease-in-out;-moz-transition:all .3s ease-in-out;opacity:.5}#jivo-call-container .jivo-call-action .jivo-call-wait .jivo-timer-block.jivo-timer-show{transform:scale(1);-webkit-transform:scale(1);-moz-transform:scale(1);opacity:1}#jivo-call-container .jivo-call-action .jivo-call-wait .jivo-text-ca{color:#3e434c;font-size:20px;font-weight:300;line-height:24px;padding:120px 60px 15px}#jivo-call-container .jivo-call-action .jivo-call-wait .jivo-text-ca.hide-logo{padding:90px 60px 15px}#jivo-call-container .jivo-call-action .jivo-call-wait .jivo-call-loader{width:110px;height:110px;position:absolute;top:0;z-index:1;clip:rect(0,110px,110px,55px)}#jivo-call-container .jivo-call-action .jivo-call-wait .jivo-call-loader.gt50{clip:rect(auto,auto,auto,auto)}#jivo-call-container .jivo-call-action .jivo-call-wait .jivo-call-circle{width:110px;height:110px;background:#edf2ef;-webkit-border-radius:50%;-moz-border-radius:50%;border-radius:50%;position:absolute;clip:rect(0,55px,110px,0)}#jivo-call-container .jivo-call-action .jivo-call-wait .jivo-call-circle.fill{-moz-transform:rotate(180deg)!important;-webkit-transform:rotate(180deg)!important;-o-transform:rotate(180deg)!important;transform:rotate(180deg)!important}#jivo-call-container .jivo-call-action .jivo-call-wait .jivo-action-timer{z-index:2;margin:3px;width:104px;height:104px;top:3px;position:relative;-webkit-border-radius:50%;-moz-border-radius:50%;border-radius:50%;background:#fff;font-size:12px;font-family:Arial,sans-serif;font-weight:100}#jivo-call-container .jivo-call-action .jivo-call-wait .jivo-action-timer .jivo-time{color:#3cb868;display:block;font-size:36px;line-height:36px;padding-top:35px}#jivo-call-container .jivo-call-action a.jivo-call-close{background:url(\"data:image/svg+xml;charset=utf-8,%3Csvg width='19' height='19' viewBox='0 0 19 19' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle%3EUntitled 3%3C/title%3E%3Cg transform='translate(1 1)' stroke-width='1.5' fill='none' fill-rule='evenodd'%3E%3Ccircle str