diff --git a/CNAME b/CNAME deleted file mode 100644 index 230a938..0000000 --- a/CNAME +++ /dev/null @@ -1 +0,0 @@ -jetoga99.me \ No newline at end of file diff --git a/assets/index-DWNgxAP_.css b/assets/index-Cq6sNrTL.css similarity index 98% rename from assets/index-DWNgxAP_.css rename to assets/index-Cq6sNrTL.css index 67f9950..2cc2dad 100644 --- a/assets/index-DWNgxAP_.css +++ b/assets/index-Cq6sNrTL.css @@ -1,4 +1,4 @@ -@charset "UTF-8";:root{--primary-color: #23bbc9;--accent-color: #057876;--text-color: #ffffff;--hover-color: #29edff;--dark-color:#ffffff}body{font-family:Open Sans,sans-serif!important;background-color:var(--primary-color)!important;color:var(--text-color)!important;position:relative!important;background:transparent}body.dark-theme{--primary-color: #29221f;--accent-color: #29221f;--text-color: #ffffff;--hover-color: #7f7f7e;--dark-color:#23bbc9}body:before{content:"";position:fixed;background:var(--accent-color);background-size:cover;left:0;right:0;top:0;height:100vh;z-index:-1}@media (min-width: 1024px){body:before{background-attachment:fixed}}a{color:var(--primary-color);text-decoration:none}a:hover{color:var(--hover-color)!important;text-decoration:none}h1,h2,h3,h4,h5,h6{font-family:Raleway,sans-serif!important}#bg{width:100%;height:100%;position:fixed;top:0;left:0;display:flex;align-items:center;justify-content:right;z-index:-1;padding:10%}#bg.header-top{width:100%;height:100%;position:fixed;top:0;left:0;display:flex;align-items:center;justify-content:center;z-index:-1}#header{transition:ease-in-out .3s;position:relative;height:100vh;display:flex;align-items:center;z-index:997;overflow-y:auto}#header *{transition:ease-in-out .3s}#header h1{font-size:48px;margin:0;padding:0;line-height:1;font-weight:700;font-family:Poppins,sans-serif!important}#header h1 a,#header h1 a:hover{color:#fff!important;line-height:1;display:inline-block;text-shadow:2px 2px 2px rgba(0,0,0,.5)}#header h2{font-size:24px;margin-top:20px;color:var(--text-color);font-weight:700;text-shadow:2px 2px 2px rgba(0,0,0,.5)}#header h2 span{color:#fff;position:relative}#header h2 span:before{content:"";position:absolute;left:0;bottom:0;width:0;height:2px;background-color:#fc354c;animation:formarBorde 2s forwards}@keyframes formarBorde{to{width:100%}}#header img{padding:0;margin:0}.img-fluid{border-radius:50%}#header .social-links{margin-top:40px;display:flex}#header .social-links a{font-size:16px;display:flex;justify-content:center;align-items:center;background:#ffffff1a;color:#fff;line-height:1;margin-right:8px;border-radius:50%;width:40px;height:40px}.card-icons{display:flex;justify-content:center}.card-icons a{font-size:25px;display:flex;justify-content:center;align-items:center;color:#fff;line-height:1;margin-right:8px;width:40px;height:40px}#header .social-links a:hover{background:#fc354c}@media (max-width: 992px){#header h1{font-size:36px}#header h2{font-size:20px;line-height:30px}#header .social-links{margin-top:15px}#header .container{display:flex;flex-direction:column;align-items:center}.bg{align-items:center;justify-content:center}}#header.header-top{height:80px;position:fixed;left:0;top:0;right:0;padding-inline:75px;background:var(--accent-color);opacity:.7}#header.header-top .social-links,#header.header-top h2{display:none}#header.header-top h1{margin-right:auto;font-size:36px}#header.header-top .container{display:flex;align-items:center}#header.header-top .navbar{margin:0}@media (max-width: 768px){#header.header-top{height:60px}#header.header-top h1{font-size:26px}}.navbar{padding:0;margin-top:35px}.navbar ul{margin:0;padding:0;display:flex;list-style:none;align-items:center}.navbar li{position:relative}.navbar li+li{margin-left:30px}.navbar a,.navbar a:focus{display:flex;align-items:center;justify-content:space-between;padding:0;font-family:Poppins,sans-serif!important;font-size:16px;font-weight:400;color:#fff!important;white-space:nowrap;transition:.3s}.navbar a i,.navbar a:focus i{font-size:12px;line-height:0;margin-left:5px}.navbar a:before{content:"";position:absolute;width:0;height:2px;bottom:-4px;left:0;background-color:#fc354c!important;visibility:hidden;width:0px;transition:all .3s ease-in-out 0s!important}.navbar a:hover:before,.navbar li:hover>a:before,.navbar .active:before{visibility:visible!important;width:25px!important}.navbar a:hover,.navbar .active,.navbar .active:focus,.navbar li:hover>a{color:var(--text-color)!important}.mobile-nav-toggle{color:#fff!important;font-size:28px;cursor:pointer;display:none;line-height:0;transition:.5s;position:fixed;right:15px;top:15px}@media (max-width: 991px){.mobile-nav-toggle{display:block!important}.navbar ul{display:none!important}}.navbar-mobile{position:fixed!important;overflow:hidden;top:0;right:0;left:0;bottom:0;background:#000000e6;transition:.3s;z-index:999;margin-top:0}.navbar-mobile .mobile-nav-toggle{position:absolute;top:15px;right:15px}.navbar-mobile ul{display:block!important;position:absolute;top:55px;right:15px;bottom:45px;left:15px;padding:10px 0;overflow-y:auto;transition:.3s}.navbar-mobile li{padding:12px 20px}.navbar-mobile li+li{margin:0}.navbar-mobile a,.navbar-mobile a:focus{font-size:16px;position:relative}section{overflow:hidden;position:absolute;width:100%;top:140px;bottom:100%;opacity:0;transition:ease-in-out .4s;z-index:2}section.section-show{top:100px;bottom:auto;opacity:1;padding-bottom:45px}section .container{background:var(--accent-color);padding:30px;opacity:.9}@media (max-width: 768px){section{top:120px}section.section-show{top:80px}}.section-title h2{font-size:14px;font-weight:700;padding:0;line-height:1px;margin:0 0 20px;letter-spacing:2px;text-transform:uppercase;color:var(--text-color);font-family:Poppins,sans-serif}.section-title h2:after{content:"";width:120px;height:1px;display:inline-block;background:var(--primary-color);margin:4px 10px}.section-title p{margin:-15px 0 15px;font-size:36px;font-weight:700;text-transform:uppercase;font-family:Poppins,sans-serif;color:#fff}.about-me .content h3{font-weight:700;font-size:26px;color:var(--accent-color)!important}.about-me .content ul{list-style:none!important;list-style-type:none!important;padding:0}.about-me .content ul li{margin-bottom:20px;display:flex;align-items:center;list-style-type:none}li::marker{content:"";color:var(--accent-color)}.bi-chevron-right{color:var(--accent-color)}.about-me .content ul strong{margin-right:10px}.about-me .content ul i{font-size:16px;margin-right:5px;color:var(--accent-color)!important;line-height:0}.about-me .content ul li::marker{color:#000}.about-me .content p:last-child{margin-bottom:0}svg{width:80vmin;height:80vmin;overflow:visible}svg .core circle{fill:url(#gradient)}svg .core circle:first-child{filter:url(#blur);opacity:.5}svg .ring ellipse{stroke:var(--text-color);stroke-width:1.5px;fill:none;transform-origin:center;stroke-dasharray:109 6;stroke-dashoffset:26}svg .ring ellipse:nth-child(1){filter:url(#blur);opacity:.5}svg .ring ellipse:nth-child(3){stroke-dasharray:0 230;animation-name:orbit;animation-duration:3s;animation-timing-function:linear;animation-iteration-count:infinite;stroke-width:7px;stroke-linecap:round}svg .ring ellipse:nth-child(4){stroke-dasharray:0 230;animation-name:orbit;animation-duration:3s;animation-delay:-1.5s;animation-timing-function:linear;animation-iteration-count:infinite;stroke-width:7px;stroke-linecap:round}svg .ring:nth-child(2) ellipse{animation-duration:6s;animation-direction:reverse}svg .ring:nth-child(3) ellipse.ring:nth-child(3){animation-delay:-1s}@keyframes orbit{0%{stroke-dashoffset:0}50%{stroke-width:4px}to{stroke-dashoffset:230}}.interests{justify-content:center!important;align-items:center!important;padding:20px}.box{display:flex;width:100%;justify-content:center;align-items:center;flex-wrap:wrap;padding-inline:10%}.icon-box{display:flex;align-items:center;justify-content:center;width:50px;height:50px;margin-top:4%;margin-right:4%;padding:10px;background:#fff3;transition:ease-in-out .3s;border-radius:50%}.icon-box svg{font-size:30px;padding:20px}.icon-box img{width:40px}.icon-box h3{font-weight:700;margin:0;display:none;font-size:10px;color:#fff;text-align:center}.icon-box:hover{background:var(--hover-color)!important;opacity:.9}.about .resume-title{font-size:26px;font-weight:700;margin-top:20px;margin-bottom:20px;color:#fff}.about .resume-item{padding:0 0 20px 20px;margin-top:-2px;border-left:2px solid rgba(255,255,255,.2);position:relative}.about .resume-item h4{line-height:18px;font-size:18px;font-weight:600;text-transform:uppercase;font-family:Poppins,sans-serif;color:var(--text-color);margin-bottom:10px}.about .resume-item h5{font-size:16px;background:#ffffff26;padding:5px 15px;display:inline-block;font-weight:600;margin-bottom:10px}.about .resume-item ul{padding-left:20px}.about .resume-item ul li{padding-bottom:10px}.about .resume-item ul li i{color:var(--accent-color)!important}.about .resume-item:last-child{padding-bottom:0}.about .resume-item:before{content:"";position:absolute;width:16px;height:16px;border-radius:50px;left:-9px;top:0;background:var(--hover-color);border:2px solid var(--primary-color)}.services .card{text-align:left;background:#cccccc1a;transition:all ease-in-out .3s}.services .icon-box h4{font-weight:700;margin-bottom:15px;font-size:24px}.services .icon-box p{line-height:24px;font-size:14px;margin-bottom:0}.services .card:hover{background:var(--accent-color);border-color:var(--accent-color)}.services .card-img-top{width:100%;height:40%!important;object-fit:cover}.services .icon-box:hover h4 a,.services .icon-box:hover p{color:#fff}@-webkit-keyframes animate-loading{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes animate-loading{0%{transform:rotate(0)}to{transform:rotate(360deg)}}#toggle-language-btn{width:20px;height:20px;position:fixed;top:20px;right:92px;z-index:1000;padding:10px;transition:none;color:var(--text-color)!important;cursor:pointer}#toggle-theme-btn{width:20px;height:20px;position:fixed;top:20px;right:50px;z-index:1000;padding:10px;transition:none;color:var(--dark-color)!important;cursor:pointer}/*! +@charset "UTF-8";:root{--primary-color: #23bbc9;--accent-color: #057876;--text-color: #ffffff;--hover-color: #29edff;--dark-color:#ffffff}body{font-family:Open Sans,sans-serif!important;background-color:var(--primary-color)!important;color:var(--text-color)!important;position:relative!important;background:transparent}body.dark-theme{--primary-color: #29221f;--accent-color: #29221f;--text-color: #ffffff;--hover-color: #7f7f7e;--dark-color:#23bbc9}body:before{content:"";position:fixed;background:var(--accent-color);background-size:cover;left:0;right:0;top:0;height:100vh;z-index:-1}@media (min-width: 1024px){body:before{background-attachment:fixed}}a{color:var(--primary-color);text-decoration:none}a:hover{color:var(--hover-color)!important;text-decoration:none}h1,h2,h3,h4,h5,h6{font-family:Raleway,sans-serif!important}#bg{width:100%;height:100%;position:fixed;top:0;left:0;display:flex;align-items:center;justify-content:right;z-index:-1;padding:10%}#bg.header-top{width:100%;height:100%;position:fixed;top:0;left:0;display:flex;align-items:center;justify-content:center;z-index:-1}#header{transition:ease-in-out .3s;position:relative;height:100vh;display:flex;align-items:center;z-index:997;overflow-y:auto}#header *{transition:ease-in-out .3s}#header h1{font-size:48px;margin:0;padding:0;line-height:1;font-weight:700;font-family:Poppins,sans-serif!important}#header h1 a,#header h1 a:hover{color:#fff!important;line-height:1;display:inline-block;text-shadow:2px 2px 2px rgba(0,0,0,.5)}#header h2{font-size:24px;margin-top:20px;color:var(--text-color);font-weight:700;text-shadow:2px 2px 2px rgba(0,0,0,.5)}#header h2 span{color:#fff;position:relative}#header h2 span:before{content:"";position:absolute;left:0;bottom:0;width:0;height:2px;background-color:#fc354c;animation:formarBorde 2s forwards}@keyframes formarBorde{to{width:100%}}#header img{padding:0;margin:0}.img-fluid{border-radius:50%}#header .social-links{margin-top:40px;display:flex}#header .social-links a{font-size:16px;display:flex;justify-content:center;align-items:center;background:#29221f66;color:#fff;line-height:1;margin-right:8px;border-radius:50%;width:40px;height:40px}.card-icons{display:flex;justify-content:center}.card-icons a{font-size:25px;display:flex;justify-content:center;align-items:center;color:#fff;line-height:1;margin-right:8px;width:40px;height:40px}#header .social-links a:hover{background:#fc354c}@media (max-width: 992px){#header h1{font-size:36px}#header h2{font-size:20px;line-height:30px}#header .social-links{margin-top:15px}#header .container{display:flex;flex-direction:column;align-items:center}.bg{align-items:center;justify-content:center}}#header.header-top{height:80px;position:fixed;left:0;top:0;right:0;padding-inline:75px;background:var(--accent-color);opacity:.7}#header.header-top .social-links,#header.header-top h2{display:none}#header.header-top h1{margin-right:auto;font-size:36px}#header.header-top .container{display:flex;align-items:center}#header.header-top .navbar{margin:0}@media (max-width: 768px){#header.header-top{height:60px}#header.header-top h1{font-size:26px}}.navbar{padding:0;margin-top:35px}.navbar ul{margin:0;padding:0;display:flex;list-style:none;align-items:center}.navbar li{position:relative}.navbar li+li{margin-left:30px}.navbar a,.navbar a:focus{display:flex;align-items:center;justify-content:space-between;padding:0;font-family:Poppins,sans-serif!important;font-size:16px;font-weight:400;color:#fff!important;white-space:nowrap;transition:.3s}.navbar a i,.navbar a:focus i{font-size:12px;line-height:0;margin-left:5px}.navbar a:before{content:"";position:absolute;width:0;height:2px;bottom:-4px;left:0;background-color:#fc354c!important;visibility:hidden;width:0px;transition:all .3s ease-in-out 0s!important}.navbar a:hover:before,.navbar li:hover>a:before,.navbar .active:before{visibility:visible!important;width:25px!important}.navbar a:hover,.navbar .active,.navbar .active:focus,.navbar li:hover>a{color:var(--text-color)!important}.mobile-nav-toggle{color:#fff!important;font-size:28px;cursor:pointer;display:none;line-height:0;transition:.5s;position:fixed;right:15px;top:15px}@media (max-width: 991px){.mobile-nav-toggle{display:block!important}.navbar ul{display:none!important}}.navbar-mobile{position:fixed!important;overflow:hidden;top:0;right:0;left:0;bottom:0;background:#000000e6;transition:.3s;z-index:999;margin-top:0}.navbar-mobile .mobile-nav-toggle{position:absolute;top:15px;right:15px}.navbar-mobile ul{display:block!important;position:absolute;top:55px;right:15px;bottom:45px;left:15px;padding:10px 0;overflow-y:auto;transition:.3s}.navbar-mobile li{padding:12px 20px}.navbar-mobile li+li{margin:0}.navbar-mobile a,.navbar-mobile a:focus{font-size:16px;position:relative}section{overflow:hidden;position:absolute;width:100%;top:140px;bottom:100%;opacity:0;transition:ease-in-out .4s;z-index:2}section.section-show{top:100px;bottom:auto;opacity:1;padding-bottom:45px}section .container{background:var(--accent-color);padding:30px;opacity:.9}@media (max-width: 768px){section{top:120px}section.section-show{top:80px}}.section-title h2{font-size:14px;font-weight:700;padding:0;line-height:1px;margin:0 0 20px;letter-spacing:2px;text-transform:uppercase;color:var(--text-color);font-family:Poppins,sans-serif}.section-title h2:after{content:"";width:120px;height:1px;display:inline-block;background:var(--primary-color);margin:4px 10px}.section-title p{margin:-15px 0 15px;font-size:36px;font-weight:700;text-transform:uppercase;font-family:Poppins,sans-serif;color:#fff}.about-me .content h3{font-weight:700;font-size:26px;color:var(--accent-color)!important}.about-me .content ul{list-style:none!important;list-style-type:none!important;padding:0}.about-me .content ul li{margin-bottom:20px;display:flex;align-items:center;list-style-type:none}li::marker{content:"";color:var(--accent-color)}.bi-chevron-right{color:var(--accent-color)}.about-me .content ul strong{margin-right:10px}.about-me .content ul i{font-size:16px;margin-right:5px;color:var(--accent-color)!important;line-height:0}.about-me .content ul li::marker{color:#000}.about-me .content p:last-child{margin-bottom:0}svg{width:80vmin;height:80vmin;overflow:visible}svg .core circle{fill:url(#gradient)}svg .core circle:first-child{filter:url(#blur);opacity:.5}svg .ring ellipse{stroke:#0ff;stroke-width:1.5px;fill:none;transform-origin:center;stroke-dasharray:109 6;stroke-dashoffset:26}svg .ring ellipse:nth-child(1){filter:url(#blur);opacity:.5}svg .ring ellipse:nth-child(3){stroke-dasharray:0 230;animation-name:orbit;animation-duration:3s;animation-timing-function:linear;animation-iteration-count:infinite;stroke-width:7px;stroke-linecap:round}svg .ring ellipse:nth-child(4){stroke-dasharray:0 230;animation-name:orbit;animation-duration:3s;animation-delay:-1.5s;animation-timing-function:linear;animation-iteration-count:infinite;stroke-width:7px;stroke-linecap:round}svg .ring:nth-child(2) ellipse{animation-duration:6s;animation-direction:reverse}svg .ring:nth-child(3) ellipse.ring:nth-child(3){animation-delay:-1s}@keyframes orbit{0%{stroke-dashoffset:0}50%{stroke-width:4px}to{stroke-dashoffset:230}}.interests{justify-content:center!important;align-items:center!important;padding:20px}.box{display:flex;width:100%;justify-content:center;align-items:center;flex-wrap:wrap;padding-inline:10%}.icon-box{display:flex;align-items:center;justify-content:center;width:50px;height:50px;margin-top:4%;margin-right:4%;padding:10px;background:#29221f33;transition:ease-in-out .3s;border-radius:50%}.icon-box svg{font-size:30px;padding:20px}.icon-box img{width:40px}.icon-box h3{font-weight:700;margin:0;display:none;font-size:10px;color:#fff;text-align:center}.icon-box:hover{background:var(--hover-color)!important;opacity:.9}.about .resume-title{font-size:26px;font-weight:700;margin-top:20px;margin-bottom:20px;color:#fff}.about .resume-item{padding:0 0 20px 20px;margin-top:-2px;border-left:2px solid rgba(255,255,255,.2);position:relative}.about .resume-item h4{line-height:18px;font-size:18px;font-weight:600;text-transform:uppercase;font-family:Poppins,sans-serif;color:var(--text-color);margin-bottom:10px}.about .resume-item h5{font-size:16px;background:#ffffff26;padding:5px 15px;display:inline-block;font-weight:600;margin-bottom:10px}.about .resume-item ul{padding-left:20px}.about .resume-item ul li{padding-bottom:10px}.about .resume-item ul li i{color:var(--accent-color)!important}.about .resume-item:last-child{padding-bottom:0}.about .resume-item:before{content:"";position:absolute;width:16px;height:16px;border-radius:50px;left:-9px;top:0;background:var(--hover-color);border:2px solid var(--primary-color)}.services .card{text-align:left;background:#cccccc1a;transition:all ease-in-out .3s}.services .icon-box h4{font-weight:700;margin-bottom:15px;font-size:24px}.services .icon-box p{line-height:24px;font-size:14px;margin-bottom:0}.services .card:hover{background:var(--accent-color);border-color:var(--accent-color)}.services .card-img-top{width:100%;height:40%!important;object-fit:cover}.services .icon-box:hover h4 a,.services .icon-box:hover p{color:#fff}@-webkit-keyframes animate-loading{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes animate-loading{0%{transform:rotate(0)}to{transform:rotate(360deg)}}#toggle-language-btn{width:20px;height:20px;position:fixed;top:20px;right:92px;z-index:1000;padding:10px;transition:none;color:var(--text-color)!important;cursor:pointer}#toggle-theme-btn{width:20px;height:20px;position:fixed;top:20px;right:50px;z-index:1000;padding:10px;transition:none;color:var(--dark-color)!important;cursor:pointer}/*! * Bootstrap v5.3.3 (https://getbootstrap.com/) * Copyright 2011-2024 The Bootstrap Authors * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) diff --git a/assets/index-Qyyw_Mhb.js b/assets/index-DT3vbGhC.js similarity index 99% rename from assets/index-Qyyw_Mhb.js rename to assets/index-DT3vbGhC.js index 4227e40..f677e87 100644 --- a/assets/index-Qyyw_Mhb.js +++ b/assets/index-DT3vbGhC.js @@ -826,4 +826,4 @@ svg:not(:root).svg-inline--fa, svg:not(:host).svg-inline--fa { }`;function wp(){var e=pp,t=mp,n=j.cssPrefix,r=j.replacementClass,i=Cg;if(n!==e||r!==t){var a=new RegExp("\\.".concat(e,"\\-"),"g"),o=new RegExp("\\--".concat(e,"\\-"),"g"),s=new RegExp("\\.".concat(t),"g");i=i.replace(a,".".concat(n,"-")).replace(o,"--".concat(n,"-")).replace(s,".".concat(r))}return i}var fc=!1;function go(){j.autoAddCss&&!fc&&(yg(wp()),fc=!0)}var Eg={mixout:function(){return{dom:{css:wp,insertCss:go}}},hooks:function(){return{beforeDOMElementCreation:function(){go()},beforeI2svg:function(){go()}}}},ut=It||{};ut[lt]||(ut[lt]={});ut[lt].styles||(ut[lt].styles={});ut[lt].hooks||(ut[lt].hooks={});ut[lt].shims||(ut[lt].shims=[]);var Ve=ut[lt],Sp=[],bg=function e(){B.removeEventListener("DOMContentLoaded",e),pa=1,Sp.map(function(t){return t()})},pa=!1;dt&&(pa=(B.documentElement.doScroll?/^loaded|^c/:/^loaded|^i|^c/).test(B.readyState),pa||B.addEventListener("DOMContentLoaded",bg));function Pg(e){dt&&(pa?setTimeout(e,0):Sp.push(e))}function Jr(e){var t=e.tag,n=e.attributes,r=n===void 0?{}:n,i=e.children,a=i===void 0?[]:i;return typeof e=="string"?xp(e):"<".concat(t," ").concat(wg(r),">").concat(a.map(Jr).join(""),"")}function dc(e,t,n){if(e&&e[t]&&e[t][n])return{prefix:t,iconName:n,icon:e[t][n]}}var vo=function(t,n,r,i){var a=Object.keys(t),o=a.length,s=n,l,u,c;for(r===void 0?(l=1,c=t[a[0]]):(l=0,c=r);l=55296&&i<=56319&&n=55296&&r<=56319&&n>t+1&&(i=e.charCodeAt(t+1),i>=56320&&i<=57343)?(r-55296)*1024+i-56320+65536:r}function pc(e){return Object.keys(e).reduce(function(t,n){var r=e[n],i=!!r.icon;return i?t[r.iconName]=r.icon:t[n]=r,t},{})}function ks(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},r=n.skipHooks,i=r===void 0?!1:r,a=pc(t);typeof Ve.hooks.addPack=="function"&&!i?Ve.hooks.addPack(e,pc(t)):Ve.styles[e]=N(N({},Ve.styles[e]||{}),a),e==="fas"&&ks("fa",t)}var Ci,Ei,bi,Nn=Ve.styles,Og=Ve.shims,jg=(Ci={},ne(Ci,V,Object.values($r[V])),ne(Ci,J,Object.values($r[J])),Ci),_l=null,kp={},Cp={},Ep={},bp={},Pp={},Rg=(Ei={},ne(Ei,V,Object.keys(Dr[V])),ne(Ei,J,Object.keys(Dr[J])),Ei);function Ag(e){return~pg.indexOf(e)}function Tg(e,t){var n=t.split("-"),r=n[0],i=n.slice(1).join("-");return r===e&&i!==""&&!Ag(i)?i:null}var Np=function(){var t=function(a){return vo(Nn,function(o,s,l){return o[l]=vo(s,a,{}),o},{})};kp=t(function(i,a,o){if(a[3]&&(i[a[3]]=o),a[2]){var s=a[2].filter(function(l){return typeof l=="number"});s.forEach(function(l){i[l.toString(16)]=o})}return i}),Cp=t(function(i,a,o){if(i[o]=o,a[2]){var s=a[2].filter(function(l){return typeof l=="string"});s.forEach(function(l){i[l]=o})}return i}),Pp=t(function(i,a,o){var s=a[2];return i[o]=o,s.forEach(function(l){i[l]=o}),i});var n="far"in Nn||j.autoFetchSvg,r=vo(Og,function(i,a){var o=a[0],s=a[1],l=a[2];return s==="far"&&!n&&(s="fas"),typeof o=="string"&&(i.names[o]={prefix:s,iconName:l}),typeof o=="number"&&(i.unicodes[o.toString(16)]={prefix:s,iconName:l}),i},{names:{},unicodes:{}});Ep=r.names,bp=r.unicodes,_l=Da(j.styleDefault,{family:j.familyDefault})};vg(function(e){_l=Da(e.styleDefault,{family:j.familyDefault})});Np();function zl(e,t){return(kp[e]||{})[t]}function Ig(e,t){return(Cp[e]||{})[t]}function Jt(e,t){return(Pp[e]||{})[t]}function Lp(e){return Ep[e]||{prefix:null,iconName:null}}function _g(e){var t=bp[e],n=zl("fas",e);return t||(n?{prefix:"fas",iconName:n}:null)||{prefix:null,iconName:null}}function _t(){return _l}var Ml=function(){return{prefix:null,iconName:null,rest:[]}};function Da(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},n=t.family,r=n===void 0?V:n,i=Dr[r][e],a=Fr[r][e]||Fr[r][i],o=e in Ve.styles?e:null;return a||o||null}var mc=(bi={},ne(bi,V,Object.keys($r[V])),ne(bi,J,Object.keys($r[J])),bi);function Fa(e){var t,n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},r=n.skipLookups,i=r===void 0?!1:r,a=(t={},ne(t,V,"".concat(j.cssPrefix,"-").concat(V)),ne(t,J,"".concat(j.cssPrefix,"-").concat(J)),t),o=null,s=V;(e.includes(a[V])||e.some(function(u){return mc[V].includes(u)}))&&(s=V),(e.includes(a[J])||e.some(function(u){return mc[J].includes(u)}))&&(s=J);var l=e.reduce(function(u,c){var p=Tg(j.cssPrefix,c);if(Nn[c]?(c=jg[s].includes(c)?sg[s][c]:c,o=c,u.prefix=c):Rg[s].indexOf(c)>-1?(o=c,u.prefix=Da(c,{family:s})):p?u.iconName=p:c!==j.replacementClass&&c!==a[V]&&c!==a[J]&&u.rest.push(c),!i&&u.prefix&&u.iconName){var f=o==="fa"?Lp(u.iconName):{},v=Jt(u.prefix,u.iconName);f.prefix&&(o=null),u.iconName=f.iconName||v||u.iconName,u.prefix=f.prefix||u.prefix,u.prefix==="far"&&!Nn.far&&Nn.fas&&!j.autoFetchSvg&&(u.prefix="fas")}return u},Ml());return(e.includes("fa-brands")||e.includes("fab"))&&(l.prefix="fab"),(e.includes("fa-duotone")||e.includes("fad"))&&(l.prefix="fad"),!l.prefix&&s===J&&(Nn.fass||j.autoFetchSvg)&&(l.prefix="fass",l.iconName=Jt(l.prefix,l.iconName)||l.iconName),(l.prefix==="fa"||o==="fa")&&(l.prefix=_t()||"fas"),l}var zg=function(){function e(){Qh(this,e),this.definitions={}}return Xh(e,[{key:"add",value:function(){for(var n=this,r=arguments.length,i=new Array(r),a=0;a0&&c.forEach(function(p){typeof p=="string"&&(n[s][p]=u)}),n[s][l]=u}),n}}]),e}(),hc=[],Ln={},zn={},Mg=Object.keys(zn);function Dg(e,t){var n=t.mixoutsTo;return hc=e,Ln={},Object.keys(zn).forEach(function(r){Mg.indexOf(r)===-1&&delete zn[r]}),hc.forEach(function(r){var i=r.mixout?r.mixout():{};if(Object.keys(i).forEach(function(o){typeof i[o]=="function"&&(n[o]=i[o]),da(i[o])==="object"&&Object.keys(i[o]).forEach(function(s){n[o]||(n[o]={}),n[o][s]=i[o][s]})}),r.hooks){var a=r.hooks();Object.keys(a).forEach(function(o){Ln[o]||(Ln[o]=[]),Ln[o].push(a[o])})}r.provides&&r.provides(zn)}),n}function Cs(e,t){for(var n=arguments.length,r=new Array(n>2?n-2:0),i=2;i1?t-1:0),r=1;r0&&arguments[0]!==void 0?arguments[0]:{};return dt?(sn("beforeI2svg",t),ct("pseudoElements2svg",t),ct("i2svg",t)):Promise.reject("Operation requires a DOM of some kind.")},watch:function(){var t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},n=t.autoReplaceSvgRoot;j.autoReplaceSvg===!1&&(j.autoReplaceSvg=!0),j.observeMutations=!0,Pg(function(){Vg({autoReplaceSvgRoot:n}),sn("watch",t)})}},Ug={icon:function(t){if(t===null)return null;if(da(t)==="object"&&t.prefix&&t.iconName)return{prefix:t.prefix,iconName:Jt(t.prefix,t.iconName)||t.iconName};if(Array.isArray(t)&&t.length===2){var n=t[1].indexOf("fa-")===0?t[1].slice(3):t[1],r=Da(t[0]);return{prefix:r,iconName:Jt(r,n)||n}}if(typeof t=="string"&&(t.indexOf("".concat(j.cssPrefix,"-"))>-1||t.match(lg))){var i=Fa(t.split(" "),{skipLookups:!0});return{prefix:i.prefix||_t(),iconName:Jt(i.prefix,i.iconName)||i.iconName}}if(typeof t=="string"){var a=_t();return{prefix:a,iconName:Jt(a,t)||t}}}},Re={noAuto:Fg,config:j,dom:$g,parse:Ug,library:Op,findIconDefinition:Es,toHtml:Jr},Vg=function(){var t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},n=t.autoReplaceSvgRoot,r=n===void 0?B:n;(Object.keys(Ve.styles).length>0||j.autoFetchSvg)&&dt&&j.autoReplaceSvg&&Re.dom.i2svg({node:r})};function $a(e,t){return Object.defineProperty(e,"abstract",{get:t}),Object.defineProperty(e,"html",{get:function(){return e.abstract.map(function(r){return Jr(r)})}}),Object.defineProperty(e,"node",{get:function(){if(dt){var r=B.createElement("div");return r.innerHTML=e.html,r.children}}}),e}function Hg(e){var t=e.children,n=e.main,r=e.mask,i=e.attributes,a=e.styles,o=e.transform;if(Il(o)&&n.found&&!r.found){var s=n.width,l=n.height,u={x:s/l/2,y:.5};i.style=Ma(N(N({},a),{},{"transform-origin":"".concat(u.x+o.x/16,"em ").concat(u.y+o.y/16,"em")}))}return[{tag:"svg",attributes:i,children:t}]}function Bg(e){var t=e.prefix,n=e.iconName,r=e.children,i=e.attributes,a=e.symbol,o=a===!0?"".concat(t,"-").concat(j.cssPrefix,"-").concat(n):a;return[{tag:"svg",attributes:{style:"display: none;"},children:[{tag:"symbol",attributes:N(N({},i),{},{id:o}),children:r}]}]}function Dl(e){var t=e.icons,n=t.main,r=t.mask,i=e.prefix,a=e.iconName,o=e.transform,s=e.symbol,l=e.title,u=e.maskId,c=e.titleId,p=e.extra,f=e.watchable,v=f===void 0?!1:f,x=r.found?r:n,w=x.width,k=x.height,m=i==="fak",d=[j.replacementClass,a?"".concat(j.cssPrefix,"-").concat(a):""].filter(function(M){return p.classes.indexOf(M)===-1}).filter(function(M){return M!==""||!!M}).concat(p.classes).join(" "),h={children:[],attributes:N(N({},p.attributes),{},{"data-prefix":i,"data-icon":a,class:d,role:p.attributes.role||"img",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 ".concat(w," ").concat(k)})},y=m&&!~p.classes.indexOf("fa-fw")?{width:"".concat(w/k*16*.0625,"em")}:{};v&&(h.attributes[on]=""),l&&(h.children.push({tag:"title",attributes:{id:h.attributes["aria-labelledby"]||"title-".concat(c||Vr())},children:[l]}),delete h.attributes.title);var S=N(N({},h),{},{prefix:i,iconName:a,main:n,mask:r,maskId:u,transform:o,symbol:s,styles:N(N({},y),p.styles)}),b=r.found&&n.found?ct("generateAbstractMask",S)||{children:[],attributes:{}}:ct("generateAbstractIcon",S)||{children:[],attributes:{}},E=b.children,O=b.attributes;return S.children=E,S.attributes=O,s?Bg(S):Hg(S)}function gc(e){var t=e.content,n=e.width,r=e.height,i=e.transform,a=e.title,o=e.extra,s=e.watchable,l=s===void 0?!1:s,u=N(N(N({},o.attributes),a?{title:a}:{}),{},{class:o.classes.join(" ")});l&&(u[on]="");var c=N({},o.styles);Il(i)&&(c.transform=kg({transform:i,startCentered:!0,width:n,height:r}),c["-webkit-transform"]=c.transform);var p=Ma(c);p.length>0&&(u.style=p);var f=[];return f.push({tag:"span",attributes:u,children:[t]}),a&&f.push({tag:"span",attributes:{class:"sr-only"},children:[a]}),f}function Wg(e){var t=e.content,n=e.title,r=e.extra,i=N(N(N({},r.attributes),n?{title:n}:{}),{},{class:r.classes.join(" ")}),a=Ma(r.styles);a.length>0&&(i.style=a);var o=[];return o.push({tag:"span",attributes:i,children:[t]}),n&&o.push({tag:"span",attributes:{class:"sr-only"},children:[n]}),o}var yo=Ve.styles;function bs(e){var t=e[0],n=e[1],r=e.slice(4),i=Ll(r,1),a=i[0],o=null;return Array.isArray(a)?o={tag:"g",attributes:{class:"".concat(j.cssPrefix,"-").concat(Xt.GROUP)},children:[{tag:"path",attributes:{class:"".concat(j.cssPrefix,"-").concat(Xt.SECONDARY),fill:"currentColor",d:a[0]}},{tag:"path",attributes:{class:"".concat(j.cssPrefix,"-").concat(Xt.PRIMARY),fill:"currentColor",d:a[1]}}]}:o={tag:"path",attributes:{fill:"currentColor",d:a}},{found:!0,width:t,height:n,icon:o}}var Yg={found:!1,width:512,height:512};function Kg(e,t){!hp&&!j.showMissingIcons&&e&&console.error('Icon with name "'.concat(e,'" and prefix "').concat(t,'" is missing.'))}function Ps(e,t){var n=t;return t==="fa"&&j.styleDefault!==null&&(t=_t()),new Promise(function(r,i){if(ct("missingIconAbstract"),n==="fa"){var a=Lp(e)||{};e=a.iconName||e,t=a.prefix||t}if(e&&t&&yo[t]&&yo[t][e]){var o=yo[t][e];return r(bs(o))}Kg(e,t),r(N(N({},Yg),{},{icon:j.showMissingIcons&&e?ct("missingIconAbstract")||{}:{}}))})}var vc=function(){},Ns=j.measurePerformance&&vi&&vi.mark&&vi.measure?vi:{mark:vc,measure:vc},lr='FA "6.5.2"',Qg=function(t){return Ns.mark("".concat(lr," ").concat(t," begins")),function(){return jp(t)}},jp=function(t){Ns.mark("".concat(lr," ").concat(t," ends")),Ns.measure("".concat(lr," ").concat(t),"".concat(lr," ").concat(t," begins"),"".concat(lr," ").concat(t," ends"))},Fl={begin:Qg,end:jp},Fi=function(){};function yc(e){var t=e.getAttribute?e.getAttribute(on):null;return typeof t=="string"}function Gg(e){var t=e.getAttribute?e.getAttribute(jl):null,n=e.getAttribute?e.getAttribute(Rl):null;return t&&n}function Xg(e){return e&&e.classList&&e.classList.contains&&e.classList.contains(j.replacementClass)}function Jg(){if(j.autoReplaceSvg===!0)return $i.replace;var e=$i[j.autoReplaceSvg];return e||$i.replace}function Zg(e){return B.createElementNS("http://www.w3.org/2000/svg",e)}function qg(e){return B.createElement(e)}function Rp(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},n=t.ceFn,r=n===void 0?e.tag==="svg"?Zg:qg:n;if(typeof e=="string")return B.createTextNode(e);var i=r(e.tag);Object.keys(e.attributes||[]).forEach(function(o){i.setAttribute(o,e.attributes[o])});var a=e.children||[];return a.forEach(function(o){i.appendChild(Rp(o,{ceFn:r}))}),i}function e0(e){var t=" ".concat(e.outerHTML," ");return t="".concat(t,"Font Awesome fontawesome.com "),t}var $i={replace:function(t){var n=t[0];if(n.parentNode)if(t[1].forEach(function(i){n.parentNode.insertBefore(Rp(i),n)}),n.getAttribute(on)===null&&j.keepOriginalSource){var r=B.createComment(e0(n));n.parentNode.replaceChild(r,n)}else n.remove()},nest:function(t){var n=t[0],r=t[1];if(~Tl(n).indexOf(j.replacementClass))return $i.replace(t);var i=new RegExp("".concat(j.cssPrefix,"-.*"));if(delete r[0].attributes.id,r[0].attributes.class){var a=r[0].attributes.class.split(" ").reduce(function(s,l){return l===j.replacementClass||l.match(i)?s.toSvg.push(l):s.toNode.push(l),s},{toNode:[],toSvg:[]});r[0].attributes.class=a.toSvg.join(" "),a.toNode.length===0?n.removeAttribute("class"):n.setAttribute("class",a.toNode.join(" "))}var o=r.map(function(s){return Jr(s)}).join(` `);n.setAttribute(on,""),n.innerHTML=o}};function xc(e){e()}function Ap(e,t){var n=typeof t=="function"?t:Fi;if(e.length===0)n();else{var r=xc;j.mutateApproach===ag&&(r=It.requestAnimationFrame||xc),r(function(){var i=Jg(),a=Fl.begin("mutate");e.map(i),a(),n()})}}var $l=!1;function Tp(){$l=!0}function Ls(){$l=!1}var ma=null;function wc(e){if(uc&&j.observeMutations){var t=e.treeCallback,n=t===void 0?Fi:t,r=e.nodeCallback,i=r===void 0?Fi:r,a=e.pseudoElementsCallback,o=a===void 0?Fi:a,s=e.observeMutationsRoot,l=s===void 0?B:s;ma=new uc(function(u){if(!$l){var c=_t();Qn(u).forEach(function(p){if(p.type==="childList"&&p.addedNodes.length>0&&!yc(p.addedNodes[0])&&(j.searchPseudoElements&&o(p.target),n(p.target)),p.type==="attributes"&&p.target.parentNode&&j.searchPseudoElements&&o(p.target.parentNode),p.type==="attributes"&&yc(p.target)&&~dg.indexOf(p.attributeName))if(p.attributeName==="class"&&Gg(p.target)){var f=Fa(Tl(p.target)),v=f.prefix,x=f.iconName;p.target.setAttribute(jl,v||c),x&&p.target.setAttribute(Rl,x)}else Xg(p.target)&&i(p.target)})}}),dt&&ma.observe(l,{childList:!0,attributes:!0,characterData:!0,subtree:!0})}}function t0(){ma&&ma.disconnect()}function n0(e){var t=e.getAttribute("style"),n=[];return t&&(n=t.split(";").reduce(function(r,i){var a=i.split(":"),o=a[0],s=a.slice(1);return o&&s.length>0&&(r[o]=s.join(":").trim()),r},{})),n}function r0(e){var t=e.getAttribute("data-prefix"),n=e.getAttribute("data-icon"),r=e.innerText!==void 0?e.innerText.trim():"",i=Fa(Tl(e));return i.prefix||(i.prefix=_t()),t&&n&&(i.prefix=t,i.iconName=n),i.iconName&&i.prefix||(i.prefix&&r.length>0&&(i.iconName=Ig(i.prefix,e.innerText)||zl(i.prefix,Ss(e.innerText))),!i.iconName&&j.autoFetchSvg&&e.firstChild&&e.firstChild.nodeType===Node.TEXT_NODE&&(i.iconName=e.firstChild.data)),i}function i0(e){var t=Qn(e.attributes).reduce(function(i,a){return i.name!=="class"&&i.name!=="style"&&(i[a.name]=a.value),i},{}),n=e.getAttribute("title"),r=e.getAttribute("data-fa-title-id");return j.autoA11y&&(n?t["aria-labelledby"]="".concat(j.replacementClass,"-title-").concat(r||Vr()):(t["aria-hidden"]="true",t.focusable="false")),t}function a0(){return{iconName:null,title:null,titleId:null,prefix:null,transform:Ge,symbol:!1,mask:{iconName:null,prefix:null,rest:[]},maskId:null,extra:{classes:[],styles:{},attributes:{}}}}function Sc(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{styleParser:!0},n=r0(e),r=n.iconName,i=n.prefix,a=n.rest,o=i0(e),s=Cs("parseNodeAttributes",{},e),l=t.styleParser?n0(e):[];return N({iconName:r,title:e.getAttribute("title"),titleId:e.getAttribute("data-fa-title-id"),prefix:i,transform:Ge,mask:{iconName:null,prefix:null,rest:[]},maskId:null,symbol:!1,extra:{classes:a,styles:l,attributes:o}},s)}var o0=Ve.styles;function Ip(e){var t=j.autoReplaceSvg==="nest"?Sc(e,{styleParser:!1}):Sc(e);return~t.extra.classes.indexOf(gp)?ct("generateLayersText",e,t):ct("generateSvgReplacementMutation",e,t)}var zt=new Set;Al.map(function(e){zt.add("fa-".concat(e))});Object.keys(Dr[V]).map(zt.add.bind(zt));Object.keys(Dr[J]).map(zt.add.bind(zt));zt=Gr(zt);function kc(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:null;if(!dt)return Promise.resolve();var n=B.documentElement.classList,r=function(p){return n.add("".concat(cc,"-").concat(p))},i=function(p){return n.remove("".concat(cc,"-").concat(p))},a=j.autoFetchSvg?zt:Al.map(function(c){return"fa-".concat(c)}).concat(Object.keys(o0));a.includes("fa")||a.push("fa");var o=[".".concat(gp,":not([").concat(on,"])")].concat(a.map(function(c){return".".concat(c,":not([").concat(on,"])")})).join(", ");if(o.length===0)return Promise.resolve();var s=[];try{s=Qn(e.querySelectorAll(o))}catch{}if(s.length>0)r("pending"),i("complete");else return Promise.resolve();var l=Fl.begin("onTree"),u=s.reduce(function(c,p){try{var f=Ip(p);f&&c.push(f)}catch(v){hp||v.name==="MissingIcon"&&console.error(v)}return c},[]);return new Promise(function(c,p){Promise.all(u).then(function(f){Ap(f,function(){r("active"),r("complete"),i("pending"),typeof t=="function"&&t(),l(),c()})}).catch(function(f){l(),p(f)})})}function s0(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:null;Ip(e).then(function(n){n&&Ap([n],t)})}function l0(e){return function(t){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},r=(t||{}).icon?t:Es(t||{}),i=n.mask;return i&&(i=(i||{}).icon?i:Es(i||{})),e(r,N(N({},n),{},{mask:i}))}}var u0=function(t){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},r=n.transform,i=r===void 0?Ge:r,a=n.symbol,o=a===void 0?!1:a,s=n.mask,l=s===void 0?null:s,u=n.maskId,c=u===void 0?null:u,p=n.title,f=p===void 0?null:p,v=n.titleId,x=v===void 0?null:v,w=n.classes,k=w===void 0?[]:w,m=n.attributes,d=m===void 0?{}:m,h=n.styles,y=h===void 0?{}:h;if(t){var S=t.prefix,b=t.iconName,E=t.icon;return $a(N({type:"icon"},t),function(){return sn("beforeDOMElementCreation",{iconDefinition:t,params:n}),j.autoA11y&&(f?d["aria-labelledby"]="".concat(j.replacementClass,"-title-").concat(x||Vr()):(d["aria-hidden"]="true",d.focusable="false")),Dl({icons:{main:bs(E),mask:l?bs(l.icon):{found:!1,width:null,height:null,icon:{}}},prefix:S,iconName:b,transform:N(N({},Ge),i),symbol:o,title:f,maskId:c,titleId:x,extra:{attributes:d,styles:y,classes:k}})})}},c0={mixout:function(){return{icon:l0(u0)}},hooks:function(){return{mutationObserverCallbacks:function(n){return n.treeCallback=kc,n.nodeCallback=s0,n}}},provides:function(t){t.i2svg=function(n){var r=n.node,i=r===void 0?B:r,a=n.callback,o=a===void 0?function(){}:a;return kc(i,o)},t.generateSvgReplacementMutation=function(n,r){var i=r.iconName,a=r.title,o=r.titleId,s=r.prefix,l=r.transform,u=r.symbol,c=r.mask,p=r.maskId,f=r.extra;return new Promise(function(v,x){Promise.all([Ps(i,s),c.iconName?Ps(c.iconName,c.prefix):Promise.resolve({found:!1,width:512,height:512,icon:{}})]).then(function(w){var k=Ll(w,2),m=k[0],d=k[1];v([n,Dl({icons:{main:m,mask:d},prefix:s,iconName:i,transform:l,symbol:u,maskId:p,title:a,titleId:o,extra:f,watchable:!0})])}).catch(x)})},t.generateAbstractIcon=function(n){var r=n.children,i=n.attributes,a=n.main,o=n.transform,s=n.styles,l=Ma(s);l.length>0&&(i.style=l);var u;return Il(o)&&(u=ct("generateAbstractTransformGrouping",{main:a,transform:o,containerWidth:a.width,iconWidth:a.width})),r.push(u||a.icon),{children:r,attributes:i}}}},f0={mixout:function(){return{layer:function(n){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},i=r.classes,a=i===void 0?[]:i;return $a({type:"layer"},function(){sn("beforeDOMElementCreation",{assembler:n,params:r});var o=[];return n(function(s){Array.isArray(s)?s.map(function(l){o=o.concat(l.abstract)}):o=o.concat(s.abstract)}),[{tag:"span",attributes:{class:["".concat(j.cssPrefix,"-layers")].concat(Gr(a)).join(" ")},children:o}]})}}}},d0={mixout:function(){return{counter:function(n){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},i=r.title,a=i===void 0?null:i,o=r.classes,s=o===void 0?[]:o,l=r.attributes,u=l===void 0?{}:l,c=r.styles,p=c===void 0?{}:c;return $a({type:"counter",content:n},function(){return sn("beforeDOMElementCreation",{content:n,params:r}),Wg({content:n.toString(),title:a,extra:{attributes:u,styles:p,classes:["".concat(j.cssPrefix,"-layers-counter")].concat(Gr(s))}})})}}}},p0={mixout:function(){return{text:function(n){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},i=r.transform,a=i===void 0?Ge:i,o=r.title,s=o===void 0?null:o,l=r.classes,u=l===void 0?[]:l,c=r.attributes,p=c===void 0?{}:c,f=r.styles,v=f===void 0?{}:f;return $a({type:"text",content:n},function(){return sn("beforeDOMElementCreation",{content:n,params:r}),gc({content:n,transform:N(N({},Ge),a),title:s,extra:{attributes:p,styles:v,classes:["".concat(j.cssPrefix,"-layers-text")].concat(Gr(u))}})})}}},provides:function(t){t.generateLayersText=function(n,r){var i=r.title,a=r.transform,o=r.extra,s=null,l=null;if(dp){var u=parseInt(getComputedStyle(n).fontSize,10),c=n.getBoundingClientRect();s=c.width/u,l=c.height/u}return j.autoA11y&&!i&&(o.attributes["aria-hidden"]="true"),Promise.resolve([n,gc({content:n.innerHTML,width:s,height:l,transform:a,title:i,extra:o,watchable:!0})])}}},m0=new RegExp('"',"ug"),Cc=[1105920,1112319];function h0(e){var t=e.replace(m0,""),n=Lg(t,0),r=n>=Cc[0]&&n<=Cc[1],i=t.length===2?t[0]===t[1]:!1;return{value:Ss(i?t[0]:t),isSecondary:r||i}}function Ec(e,t){var n="".concat(ig).concat(t.replace(":","-"));return new Promise(function(r,i){if(e.getAttribute(n)!==null)return r();var a=Qn(e.children),o=a.filter(function(E){return E.getAttribute(ws)===t})[0],s=It.getComputedStyle(e,t),l=s.getPropertyValue("font-family").match(ug),u=s.getPropertyValue("font-weight"),c=s.getPropertyValue("content");if(o&&!l)return e.removeChild(o),r();if(l&&c!=="none"&&c!==""){var p=s.getPropertyValue("content"),f=~["Sharp"].indexOf(l[2])?J:V,v=~["Solid","Regular","Light","Thin","Duotone","Brands","Kit"].indexOf(l[2])?Fr[f][l[2].toLowerCase()]:cg[f][u],x=h0(p),w=x.value,k=x.isSecondary,m=l[0].startsWith("FontAwesome"),d=zl(v,w),h=d;if(m){var y=_g(w);y.iconName&&y.prefix&&(d=y.iconName,v=y.prefix)}if(d&&!k&&(!o||o.getAttribute(jl)!==v||o.getAttribute(Rl)!==h)){e.setAttribute(n,h),o&&e.removeChild(o);var S=a0(),b=S.extra;b.attributes[ws]=t,Ps(d,v).then(function(E){var O=Dl(N(N({},S),{},{icons:{main:E,mask:Ml()},prefix:v,iconName:h,extra:b,watchable:!0})),M=B.createElementNS("http://www.w3.org/2000/svg","svg");t==="::before"?e.insertBefore(M,e.firstChild):e.appendChild(M),M.outerHTML=O.map(function(T){return Jr(T)}).join(` `),e.removeAttribute(n),r()}).catch(i)}else r()}else r()})}function g0(e){return Promise.all([Ec(e,"::before"),Ec(e,"::after")])}function v0(e){return e.parentNode!==document.head&&!~og.indexOf(e.tagName.toUpperCase())&&!e.getAttribute(ws)&&(!e.parentNode||e.parentNode.tagName!=="svg")}function bc(e){if(dt)return new Promise(function(t,n){var r=Qn(e.querySelectorAll("*")).filter(v0).map(g0),i=Fl.begin("searchPseudoElements");Tp(),Promise.all(r).then(function(){i(),Ls(),t()}).catch(function(){i(),Ls(),n()})})}var y0={hooks:function(){return{mutationObserverCallbacks:function(n){return n.pseudoElementsCallback=bc,n}}},provides:function(t){t.pseudoElements2svg=function(n){var r=n.node,i=r===void 0?B:r;j.searchPseudoElements&&bc(i)}}},Pc=!1,x0={mixout:function(){return{dom:{unwatch:function(){Tp(),Pc=!0}}}},hooks:function(){return{bootstrap:function(){wc(Cs("mutationObserverCallbacks",{}))},noAuto:function(){t0()},watch:function(n){var r=n.observeMutationsRoot;Pc?Ls():wc(Cs("mutationObserverCallbacks",{observeMutationsRoot:r}))}}}},Nc=function(t){var n={size:16,x:0,y:0,flipX:!1,flipY:!1,rotate:0};return t.toLowerCase().split(" ").reduce(function(r,i){var a=i.toLowerCase().split("-"),o=a[0],s=a.slice(1).join("-");if(o&&s==="h")return r.flipX=!0,r;if(o&&s==="v")return r.flipY=!0,r;if(s=parseFloat(s),isNaN(s))return r;switch(o){case"grow":r.size=r.size+s;break;case"shrink":r.size=r.size-s;break;case"left":r.x=r.x-s;break;case"right":r.x=r.x+s;break;case"up":r.y=r.y-s;break;case"down":r.y=r.y+s;break;case"rotate":r.rotate=r.rotate+s;break}return r},n)},w0={mixout:function(){return{parse:{transform:function(n){return Nc(n)}}}},hooks:function(){return{parseNodeAttributes:function(n,r){var i=r.getAttribute("data-fa-transform");return i&&(n.transform=Nc(i)),n}}},provides:function(t){t.generateAbstractTransformGrouping=function(n){var r=n.main,i=n.transform,a=n.containerWidth,o=n.iconWidth,s={transform:"translate(".concat(a/2," 256)")},l="translate(".concat(i.x*32,", ").concat(i.y*32,") "),u="scale(".concat(i.size/16*(i.flipX?-1:1),", ").concat(i.size/16*(i.flipY?-1:1),") "),c="rotate(".concat(i.rotate," 0 0)"),p={transform:"".concat(l," ").concat(u," ").concat(c)},f={transform:"translate(".concat(o/2*-1," -256)")},v={outer:s,inner:p,path:f};return{tag:"g",attributes:N({},v.outer),children:[{tag:"g",attributes:N({},v.inner),children:[{tag:r.icon.tag,children:r.icon.children,attributes:N(N({},r.icon.attributes),v.path)}]}]}}}},xo={x:0,y:0,width:"100%",height:"100%"};function Lc(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;return e.attributes&&(e.attributes.fill||t)&&(e.attributes.fill="black"),e}function S0(e){return e.tag==="g"?e.children:[e]}var k0={hooks:function(){return{parseNodeAttributes:function(n,r){var i=r.getAttribute("data-fa-mask"),a=i?Fa(i.split(" ").map(function(o){return o.trim()})):Ml();return a.prefix||(a.prefix=_t()),n.mask=a,n.maskId=r.getAttribute("data-fa-mask-id"),n}}},provides:function(t){t.generateAbstractMask=function(n){var r=n.children,i=n.attributes,a=n.main,o=n.mask,s=n.maskId,l=n.transform,u=a.width,c=a.icon,p=o.width,f=o.icon,v=Sg({transform:l,containerWidth:p,iconWidth:u}),x={tag:"rect",attributes:N(N({},xo),{},{fill:"white"})},w=c.children?{children:c.children.map(Lc)}:{},k={tag:"g",attributes:N({},v.inner),children:[Lc(N({tag:c.tag,attributes:N(N({},c.attributes),v.path)},w))]},m={tag:"g",attributes:N({},v.outer),children:[k]},d="mask-".concat(s||Vr()),h="clip-".concat(s||Vr()),y={tag:"mask",attributes:N(N({},xo),{},{id:d,maskUnits:"userSpaceOnUse",maskContentUnits:"userSpaceOnUse"}),children:[x,m]},S={tag:"defs",children:[{tag:"clipPath",attributes:{id:h},children:S0(f)},y]};return r.push(S,{tag:"rect",attributes:N({fill:"currentColor","clip-path":"url(#".concat(h,")"),mask:"url(#".concat(d,")")},xo)}),{children:r,attributes:i}}}},C0={provides:function(t){var n=!1;It.matchMedia&&(n=It.matchMedia("(prefers-reduced-motion: reduce)").matches),t.missingIconAbstract=function(){var r=[],i={fill:"currentColor"},a={attributeType:"XML",repeatCount:"indefinite",dur:"2s"};r.push({tag:"path",attributes:N(N({},i),{},{d:"M156.5,447.7l-12.6,29.5c-18.7-9.5-35.9-21.2-51.5-34.9l22.7-22.7C127.6,430.5,141.5,440,156.5,447.7z M40.6,272H8.5 c1.4,21.2,5.4,41.7,11.7,61.1L50,321.2C45.1,305.5,41.8,289,40.6,272z M40.6,240c1.4-18.8,5.2-37,11.1-54.1l-29.5-12.6 C14.7,194.3,10,216.7,8.5,240H40.6z M64.3,156.5c7.8-14.9,17.2-28.8,28.1-41.5L69.7,92.3c-13.7,15.6-25.5,32.8-34.9,51.5 L64.3,156.5z M397,419.6c-13.9,12-29.4,22.3-46.1,30.4l11.9,29.8c20.7-9.9,39.8-22.6,56.9-37.6L397,419.6z M115,92.4 c13.9-12,29.4-22.3,46.1-30.4l-11.9-29.8c-20.7,9.9-39.8,22.6-56.8,37.6L115,92.4z M447.7,355.5c-7.8,14.9-17.2,28.8-28.1,41.5 l22.7,22.7c13.7-15.6,25.5-32.9,34.9-51.5L447.7,355.5z M471.4,272c-1.4,18.8-5.2,37-11.1,54.1l29.5,12.6 c7.5-21.1,12.2-43.5,13.6-66.8H471.4z M321.2,462c-15.7,5-32.2,8.2-49.2,9.4v32.1c21.2-1.4,41.7-5.4,61.1-11.7L321.2,462z M240,471.4c-18.8-1.4-37-5.2-54.1-11.1l-12.6,29.5c21.1,7.5,43.5,12.2,66.8,13.6V471.4z M462,190.8c5,15.7,8.2,32.2,9.4,49.2h32.1 c-1.4-21.2-5.4-41.7-11.7-61.1L462,190.8z M92.4,397c-12-13.9-22.3-29.4-30.4-46.1l-29.8,11.9c9.9,20.7,22.6,39.8,37.6,56.9 L92.4,397z M272,40.6c18.8,1.4,36.9,5.2,54.1,11.1l12.6-29.5C317.7,14.7,295.3,10,272,8.5V40.6z M190.8,50 c15.7-5,32.2-8.2,49.2-9.4V8.5c-21.2,1.4-41.7,5.4-61.1,11.7L190.8,50z M442.3,92.3L419.6,115c12,13.9,22.3,29.4,30.5,46.1 l29.8-11.9C470,128.5,457.3,109.4,442.3,92.3z M397,92.4l22.7-22.7c-15.6-13.7-32.8-25.5-51.5-34.9l-12.6,29.5 C370.4,72.1,384.4,81.5,397,92.4z"})});var o=N(N({},a),{},{attributeName:"opacity"}),s={tag:"circle",attributes:N(N({},i),{},{cx:"256",cy:"364",r:"28"}),children:[]};return n||s.children.push({tag:"animate",attributes:N(N({},a),{},{attributeName:"r",values:"28;14;28;28;14;28;"})},{tag:"animate",attributes:N(N({},o),{},{values:"1;0;1;1;0;1;"})}),r.push(s),r.push({tag:"path",attributes:N(N({},i),{},{opacity:"1",d:"M263.7,312h-16c-6.6,0-12-5.4-12-12c0-71,77.4-63.9,77.4-107.8c0-20-17.8-40.2-57.4-40.2c-29.1,0-44.3,9.6-59.2,28.7 c-3.9,5-11.1,6-16.2,2.4l-13.1-9.2c-5.6-3.9-6.9-11.8-2.6-17.2c21.2-27.2,46.4-44.7,91.2-44.7c52.3,0,97.4,29.8,97.4,80.2 c0,67.6-77.4,63.5-77.4,107.8C275.7,306.6,270.3,312,263.7,312z"}),children:n?[]:[{tag:"animate",attributes:N(N({},o),{},{values:"1;0;0;0;0;1;"})}]}),n||r.push({tag:"path",attributes:N(N({},i),{},{opacity:"0",d:"M232.5,134.5l7,168c0.3,6.4,5.6,11.5,12,11.5h9c6.4,0,11.7-5.1,12-11.5l7-168c0.3-6.8-5.2-12.5-12-12.5h-23 C237.7,122,232.2,127.7,232.5,134.5z"}),children:[{tag:"animate",attributes:N(N({},o),{},{values:"0;0;1;1;0;0;"})}]}),{tag:"g",attributes:{class:"missing"},children:r}}}},E0={hooks:function(){return{parseNodeAttributes:function(n,r){var i=r.getAttribute("data-fa-symbol"),a=i===null?!1:i===""?!0:i;return n.symbol=a,n}}}},b0=[Eg,c0,f0,d0,p0,y0,x0,w0,k0,C0,E0];Dg(b0,{mixoutsTo:Re});Re.noAuto;Re.config;Re.library;Re.dom;var Os=Re.parse;Re.findIconDefinition;Re.toHtml;var P0=Re.icon;Re.layer;Re.text;Re.counter;var _p={exports:{}},N0="SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED",L0=N0,O0=L0;function zp(){}function Mp(){}Mp.resetWarningCache=zp;var j0=function(){function e(r,i,a,o,s,l){if(l!==O0){var u=new Error("Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types");throw u.name="Invariant Violation",u}}e.isRequired=e;function t(){return e}var n={array:e,bigint:e,bool:e,func:e,number:e,object:e,string:e,symbol:e,any:e,arrayOf:t,element:e,elementType:e,instanceOf:t,node:e,objectOf:t,oneOf:t,oneOfType:t,shape:t,exact:t,checkPropTypes:Mp,resetWarningCache:zp};return n.PropTypes=n,n};_p.exports=j0();var R0=_p.exports;const I=$c(R0);function Oc(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),n.push.apply(n,r)}return n}function Ct(e){for(var t=1;t=0)&&(n[i]=e[i]);return n}function T0(e,t){if(e==null)return{};var n=A0(e,t),r,i;if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(i=0;i=0)&&Object.prototype.propertyIsEnumerable.call(e,r)&&(n[r]=e[r])}return n}function js(e){return I0(e)||_0(e)||z0(e)||M0()}function I0(e){if(Array.isArray(e))return Rs(e)}function _0(e){if(typeof Symbol<"u"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function z0(e,t){if(e){if(typeof e=="string")return Rs(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);if(n==="Object"&&e.constructor&&(n=e.constructor.name),n==="Map"||n==="Set")return Array.from(e);if(n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return Rs(e,t)}}function Rs(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n2&&arguments[2]!==void 0?arguments[2]:{};if(typeof t=="string")return t;var r=(t.children||[]).map(function(l){return Fp(e,l)}),i=Object.keys(t.attributes||{}).reduce(function(l,u){var c=t.attributes[u];switch(u){case"class":l.attrs.className=c,delete t.attributes.class;break;case"style":l.attrs.style=V0(c);break;default:u.indexOf("aria-")===0||u.indexOf("data-")===0?l.attrs[u.toLowerCase()]=c:l.attrs[Dp(u)]=c}return l},{attrs:{}}),a=n.style,o=a===void 0?{}:a,s=T0(n,$0);return i.attrs.style=Ct(Ct({},i.attrs.style),o),e.apply(void 0,[t.tag,Ct(Ct({},i.attrs),s)].concat(js(r)))}var $p=!1;try{$p=!0}catch{}function H0(){if(!$p&&console&&typeof console.error=="function"){var e;(e=console).error.apply(e,arguments)}}function jc(e){if(e&&ha(e)==="object"&&e.prefix&&e.iconName&&e.icon)return e;if(Os.icon)return Os.icon(e);if(e===null)return null;if(e&&ha(e)==="object"&&e.prefix&&e.iconName)return e;if(Array.isArray(e)&&e.length===2)return{prefix:e[0],iconName:e[1]};if(typeof e=="string")return{prefix:"fas",iconName:e}}function wo(e,t){return Array.isArray(t)&&t.length>0||!Array.isArray(t)&&t?On({},e,t):{}}var be=Sa.forwardRef(function(e,t){var n=e.icon,r=e.mask,i=e.symbol,a=e.className,o=e.title,s=e.titleId,l=e.maskId,u=jc(n),c=wo("classes",[].concat(js(D0(e)),js(a.split(" ")))),p=wo("transform",typeof e.transform=="string"?Os.transform(e.transform):e.transform),f=wo("mask",jc(r)),v=P0(u,Ct(Ct(Ct(Ct({},c),p),f),{},{symbol:i,title:o,titleId:s,maskId:l}));if(!v)return H0("Could not find icon",u),null;var x=v.abstract,w={ref:t};return Object.keys(e).forEach(function(k){be.defaultProps.hasOwnProperty(k)||(w[k]=e[k])}),B0(x[0],w)});be.displayName="FontAwesomeIcon";be.propTypes={beat:I.bool,border:I.bool,beatFade:I.bool,bounce:I.bool,className:I.string,fade:I.bool,flash:I.bool,mask:I.oneOfType([I.object,I.array,I.string]),maskId:I.string,fixedWidth:I.bool,inverse:I.bool,flip:I.oneOf([!0,!1,"horizontal","vertical","both"]),icon:I.oneOfType([I.object,I.array,I.string]),listItem:I.bool,pull:I.oneOf(["right","left"]),pulse:I.bool,rotation:I.oneOf([0,90,180,270]),shake:I.bool,size:I.oneOf(["2xs","xs","sm","lg","xl","2xl","1x","2x","3x","4x","5x","6x","7x","8x","9x","10x"]),spin:I.bool,spinPulse:I.bool,spinReverse:I.bool,symbol:I.oneOfType([I.bool,I.string]),title:I.string,titleId:I.string,transform:I.oneOfType([I.string,I.object]),swapOpacity:I.bool};be.defaultProps={border:!1,className:"",mask:null,maskId:null,fixedWidth:!1,inverse:!1,flip:!1,icon:null,listItem:!1,pull:null,pulse:!1,rotation:null,size:null,spin:!1,spinPulse:!1,spinReverse:!1,beat:!1,fade:!1,beatFade:!1,bounce:!1,shake:!1,symbol:!1,title:"",titleId:null,transform:null,swapOpacity:!1};var B0=Fp.bind(null,Sa.createElement),Up={prefix:"fas",iconName:"file-word",icon:[384,512,[],"f1c2","M64 0C28.7 0 0 28.7 0 64V448c0 35.3 28.7 64 64 64H320c35.3 0 64-28.7 64-64V160H256c-17.7 0-32-14.3-32-32V0H64zM256 0V128H384L256 0zM111 257.1l26.8 89.2 31.6-90.3c3.4-9.6 12.5-16.1 22.7-16.1s19.3 6.4 22.7 16.1l31.6 90.3L273 257.1c3.8-12.7 17.2-19.9 29.9-16.1s19.9 17.2 16.1 29.9l-48 160c-3 10-12 16.9-22.4 17.1s-19.8-6.2-23.2-16.1L192 336.6l-33.3 95.3c-3.4 9.8-12.8 16.3-23.2 16.1s-19.5-7.1-22.4-17.1l-48-160c-3.8-12.7 3.4-26.1 16.1-29.9s26.1 3.4 29.9 16.1z"]},W0={prefix:"fas",iconName:"language",icon:[640,512,[],"f1ab","M0 128C0 92.7 28.7 64 64 64H256h48 16H576c35.3 0 64 28.7 64 64V384c0 35.3-28.7 64-64 64H320 304 256 64c-35.3 0-64-28.7-64-64V128zm320 0V384H576V128H320zM178.3 175.9c-3.2-7.2-10.4-11.9-18.3-11.9s-15.1 4.7-18.3 11.9l-64 144c-4.5 10.1 .1 21.9 10.2 26.4s21.9-.1 26.4-10.2l8.9-20.1h73.6l8.9 20.1c4.5 10.1 16.3 14.6 26.4 10.2s14.6-16.3 10.2-26.4l-64-144zM160 233.2L179 276H141l19-42.8zM448 164c11 0 20 9 20 20v4h44 16c11 0 20 9 20 20s-9 20-20 20h-2l-1.6 4.5c-8.9 24.4-22.4 46.6-39.6 65.4c.9 .6 1.8 1.1 2.7 1.6l18.9 11.3c9.5 5.7 12.5 18 6.9 27.4s-18 12.5-27.4 6.9l-18.9-11.3c-4.5-2.7-8.8-5.5-13.1-8.5c-10.6 7.5-21.9 14-34 19.4l-3.6 1.6c-10.1 4.5-21.9-.1-26.4-10.2s.1-21.9 10.2-26.4l3.6-1.6c6.4-2.9 12.6-6.1 18.5-9.8l-12.2-12.2c-7.8-7.8-7.8-20.5 0-28.3s20.5-7.8 28.3 0l14.6 14.6 .5 .5c12.4-13.1 22.5-28.3 29.8-45H448 376c-11 0-20-9-20-20s9-20 20-20h52v-4c0-11 9-20 20-20z"]},Vp={prefix:"fas",iconName:"terminal",icon:[576,512,[],"f120","M9.4 86.6C-3.1 74.1-3.1 53.9 9.4 41.4s32.8-12.5 45.3 0l192 192c12.5 12.5 12.5 32.8 0 45.3l-192 192c-12.5 12.5-32.8 12.5-45.3 0s-12.5-32.8 0-45.3L178.7 256 9.4 86.6zM256 416H544c17.7 0 32 14.3 32 32s-14.3 32-32 32H256c-17.7 0-32-14.3-32-32s14.3-32 32-32z"]},Y0={prefix:"fas",iconName:"envelope",icon:[512,512,[128386,9993,61443],"f0e0","M48 64C21.5 64 0 85.5 0 112c0 15.1 7.1 29.3 19.2 38.4L236.8 313.6c11.4 8.5 27 8.5 38.4 0L492.8 150.4c12.1-9.1 19.2-23.3 19.2-38.4c0-26.5-21.5-48-48-48H48zM0 176V384c0 35.3 28.7 64 64 64H448c35.3 0 64-28.7 64-64V176L294.4 339.2c-22.8 17.1-54 17.1-76.8 0L0 176z"]},K0={prefix:"fas",iconName:"file",icon:[384,512,[128196,128459,61462],"f15b","M0 64C0 28.7 28.7 0 64 0H224V128c0 17.7 14.3 32 32 32H384V448c0 35.3-28.7 64-64 64H64c-35.3 0-64-28.7-64-64V64zm384 64H256V0L384 128z"]},Q0={prefix:"fas",iconName:"circle-half-stroke",icon:[512,512,[9680,"adjust"],"f042","M448 256c0-106-86-192-192-192V448c106 0 192-86 192-192zM0 256a256 256 0 1 1 512 0A256 256 0 1 1 0 256z"]},Hp={prefix:"fas",iconName:"database",icon:[448,512,[],"f1c0","M448 80v48c0 44.2-100.3 80-224 80S0 172.2 0 128V80C0 35.8 100.3 0 224 0S448 35.8 448 80zM393.2 214.7c20.8-7.4 39.9-16.9 54.8-28.6V288c0 44.2-100.3 80-224 80S0 332.2 0 288V186.1c14.9 11.8 34 21.2 54.8 28.6C99.7 230.7 159.5 240 224 240s124.3-9.3 169.2-25.3zM0 346.1c14.9 11.8 34 21.2 54.8 28.6C99.7 390.7 159.5 400 224 400s124.3-9.3 169.2-25.3c20.8-7.4 39.9-16.9 54.8-28.6V432c0 44.2-100.3 80-224 80S0 476.2 0 432V346.1z"]},G0={prefix:"fab",iconName:"square-js",icon:[448,512,["js-square"],"f3b9","M448 96c0-35.3-28.7-64-64-64H64C28.7 32 0 60.7 0 96V416c0 35.3 28.7 64 64 64H384c35.3 0 64-28.7 64-64V96zM180.9 444.9c-33.7 0-53.2-17.4-63.2-38.5L152 385.7c6.6 11.7 12.6 21.6 27.1 21.6c13.8 0 22.6-5.4 22.6-26.5V237.7h42.1V381.4c0 43.6-25.6 63.5-62.9 63.5zm85.8-43L301 382.1c9 14.7 20.8 25.6 41.5 25.6c17.4 0 28.6-8.7 28.6-20.8c0-14.4-11.4-19.5-30.7-28l-10.5-4.5c-30.4-12.9-50.5-29.2-50.5-63.5c0-31.6 24.1-55.6 61.6-55.6c26.8 0 46 9.3 59.8 33.7L368 290c-7.2-12.9-15-18-27.1-18c-12.3 0-20.1 7.8-20.1 18c0 12.6 7.8 17.7 25.9 25.6l10.5 4.5c35.8 15.3 55.9 31 55.9 66.2c0 37.8-29.8 58.6-69.7 58.6c-39.1 0-64.4-18.6-76.7-43z"]},X0=G0,J0={prefix:"fab",iconName:"java",icon:[384,512,[],"f4e4","M277.74 312.9c9.8-6.7 23.4-12.5 23.4-12.5s-38.7 7-77.2 10.2c-47.1 3.9-97.7 4.7-123.1 1.3-60.1-8 33-30.1 33-30.1s-36.1-2.4-80.6 19c-52.5 25.4 130 37 224.5 12.1zm-85.4-32.1c-19-42.7-83.1-80.2 0-145.8C296 53.2 242.84 0 242.84 0c21.5 84.5-75.6 110.1-110.7 162.6-23.9 35.9 11.7 74.4 60.2 118.2zm114.6-176.2c.1 0-175.2 43.8-91.5 140.2 24.7 28.4-6.5 54-6.5 54s62.7-32.4 33.9-72.9c-26.9-37.8-47.5-56.6 64.1-121.3zm-6.1 270.5a12.19 12.19 0 0 1-2 2.6c128.3-33.7 81.1-118.9 19.8-97.3a17.33 17.33 0 0 0-8.2 6.3 70.45 70.45 0 0 1 11-3c31-6.5 75.5 41.5-20.6 91.4zM348 437.4s14.5 11.9-15.9 21.2c-57.9 17.5-240.8 22.8-291.6.7-18.3-7.9 16-19 26.8-21.3 11.2-2.4 17.7-2 17.7-2-20.3-14.3-131.3 28.1-56.4 40.2C232.84 509.4 401 461.3 348 437.4zM124.44 396c-78.7 22 47.9 67.4 148.1 24.5a185.89 185.89 0 0 1-28.2-13.8c-44.7 8.5-65.4 9.1-106 4.5-33.5-3.8-13.9-15.2-13.9-15.2zm179.8 97.2c-78.7 14.8-175.8 13.1-233.3 3.6 0-.1 11.8 9.7 72.4 13.6 92.2 5.9 233.8-3.3 237.1-46.9 0 0-6.4 16.5-76.2 29.7zM260.64 353c-59.2 11.4-93.5 11.1-136.8 6.6-33.5-3.5-11.6-19.7-11.6-19.7-86.8 28.8 48.2 61.4 169.5 25.9a60.37 60.37 0 0 1-21.1-12.8z"]},Z0={prefix:"fab",iconName:"css3-alt",icon:[384,512,[],"f38b","M0 32l34.9 395.8L192 480l157.1-52.2L384 32H0zm313.1 80l-4.8 47.3L193 208.6l-.3.1h111.5l-12.8 146.6-98.2 28.7-98.8-29.2-6.4-73.9h48.9l3.2 38.3 52.6 13.3 54.7-15.4 3.7-61.6-166.3-.5v-.1l-.2.1-3.6-46.3L193.1 162l6.5-2.7H76.7L70.9 112h242.2z"]},q0={prefix:"fab",iconName:"git-alt",icon:[448,512,[],"f841","M439.55 236.05L244 40.45a28.87 28.87 0 0 0-40.81 0l-40.66 40.63 51.52 51.52c27.06-9.14 52.68 16.77 43.39 43.68l49.66 49.66c34.23-11.8 61.18 31 35.47 56.69-26.49 26.49-70.21-2.87-56-37.34L240.22 199v121.85c25.3 12.54 22.26 41.85 9.08 55a34.34 34.34 0 0 1-48.55 0c-17.57-17.6-11.07-46.91 11.25-56v-123c-20.8-8.51-24.6-30.74-18.64-45L142.57 101 8.45 235.14a28.86 28.86 0 0 0 0 40.81l195.61 195.6a28.86 28.86 0 0 0 40.8 0l194.69-194.69a28.86 28.86 0 0 0 0-40.81z"]},ev={prefix:"fab",iconName:"react",icon:[512,512,[],"f41b","M418.2 177.2c-5.4-1.8-10.8-3.5-16.2-5.1.9-3.7 1.7-7.4 2.5-11.1 12.3-59.6 4.2-107.5-23.1-123.3-26.3-15.1-69.2.6-112.6 38.4-4.3 3.7-8.5 7.6-12.5 11.5-2.7-2.6-5.5-5.2-8.3-7.7-45.5-40.4-91.1-57.4-118.4-41.5-26.2 15.2-34 60.3-23 116.7 1.1 5.6 2.3 11.1 3.7 16.7-6.4 1.8-12.7 3.8-18.6 5.9C38.3 196.2 0 225.4 0 255.6c0 31.2 40.8 62.5 96.3 81.5 4.5 1.5 9 3 13.6 4.3-1.5 6-2.8 11.9-4 18-10.5 55.5-2.3 99.5 23.9 114.6 27 15.6 72.4-.4 116.6-39.1 3.5-3.1 7-6.3 10.5-9.7 4.4 4.3 9 8.4 13.6 12.4 42.8 36.8 85.1 51.7 111.2 36.6 27-15.6 35.8-62.9 24.4-120.5-.9-4.4-1.9-8.9-3-13.5 3.2-.9 6.3-1.9 9.4-2.9 57.7-19.1 99.5-50 99.5-81.7 0-30.3-39.4-59.7-93.8-78.4zM282.9 92.3c37.2-32.4 71.9-45.1 87.7-36 16.9 9.7 23.4 48.9 12.8 100.4-.7 3.4-1.4 6.7-2.3 10-22.2-5-44.7-8.6-67.3-10.6-13-18.6-27.2-36.4-42.6-53.1 3.9-3.7 7.7-7.2 11.7-10.7zM167.2 307.5c5.1 8.7 10.3 17.4 15.8 25.9-15.6-1.7-31.1-4.2-46.4-7.5 4.4-14.4 9.9-29.3 16.3-44.5 4.6 8.8 9.3 17.5 14.3 26.1zm-30.3-120.3c14.4-3.2 29.7-5.8 45.6-7.8-5.3 8.3-10.5 16.8-15.4 25.4-4.9 8.5-9.7 17.2-14.2 26-6.3-14.9-11.6-29.5-16-43.6zm27.4 68.9c6.6-13.8 13.8-27.3 21.4-40.6s15.8-26.2 24.4-38.9c15-1.1 30.3-1.7 45.9-1.7s31 .6 45.9 1.7c8.5 12.6 16.6 25.5 24.3 38.7s14.9 26.7 21.7 40.4c-6.7 13.8-13.9 27.4-21.6 40.8-7.6 13.3-15.7 26.2-24.2 39-14.9 1.1-30.4 1.6-46.1 1.6s-30.9-.5-45.6-1.4c-8.7-12.7-16.9-25.7-24.6-39s-14.8-26.8-21.5-40.6zm180.6 51.2c5.1-8.8 9.9-17.7 14.6-26.7 6.4 14.5 12 29.2 16.9 44.3-15.5 3.5-31.2 6.2-47 8 5.4-8.4 10.5-17 15.5-25.6zm14.4-76.5c-4.7-8.8-9.5-17.6-14.5-26.2-4.9-8.5-10-16.9-15.3-25.2 16.1 2 31.5 4.7 45.9 8-4.6 14.8-10 29.2-16.1 43.4zM256.2 118.3c10.5 11.4 20.4 23.4 29.6 35.8-19.8-.9-39.7-.9-59.5 0 9.8-12.9 19.9-24.9 29.9-35.8zM140.2 57c16.8-9.8 54.1 4.2 93.4 39 2.5 2.2 5 4.6 7.6 7-15.5 16.7-29.8 34.5-42.9 53.1-22.6 2-45 5.5-67.2 10.4-1.3-5.1-2.4-10.3-3.5-15.5-9.4-48.4-3.2-84.9 12.6-94zm-24.5 263.6c-4.2-1.2-8.3-2.5-12.4-3.9-21.3-6.7-45.5-17.3-63-31.2-10.1-7-16.9-17.8-18.8-29.9 0-18.3 31.6-41.7 77.2-57.6 5.7-2 11.5-3.8 17.3-5.5 6.8 21.7 15 43 24.5 63.6-9.6 20.9-17.9 42.5-24.8 64.5zm116.6 98c-16.5 15.1-35.6 27.1-56.4 35.3-11.1 5.3-23.9 5.8-35.3 1.3-15.9-9.2-22.5-44.5-13.5-92 1.1-5.6 2.3-11.2 3.7-16.7 22.4 4.8 45 8.1 67.9 9.8 13.2 18.7 27.7 36.6 43.2 53.4-3.2 3.1-6.4 6.1-9.6 8.9zm24.5-24.3c-10.2-11-20.4-23.2-30.3-36.3 9.6.4 19.5.6 29.5.6 10.3 0 20.4-.2 30.4-.7-9.2 12.7-19.1 24.8-29.6 36.4zm130.7 30c-.9 12.2-6.9 23.6-16.5 31.3-15.9 9.2-49.8-2.8-86.4-34.2-4.2-3.6-8.4-7.5-12.7-11.5 15.3-16.9 29.4-34.8 42.2-53.6 22.9-1.9 45.7-5.4 68.2-10.5 1 4.1 1.9 8.2 2.7 12.2 4.9 21.6 5.7 44.1 2.5 66.3zm18.2-107.5c-2.8.9-5.6 1.8-8.5 2.6-7-21.8-15.6-43.1-25.5-63.8 9.6-20.4 17.7-41.4 24.5-62.9 5.2 1.5 10.2 3.1 15 4.7 46.6 16 79.3 39.8 79.3 58 0 19.6-34.9 44.9-84.8 61.4zm-149.7-15c25.3 0 45.8-20.5 45.8-45.8s-20.5-45.8-45.8-45.8c-25.3 0-45.8 20.5-45.8 45.8s20.5 45.8 45.8 45.8z"]},tv={prefix:"fab",iconName:"linkedin",icon:[448,512,[],"f08c","M416 32H31.9C14.3 32 0 46.5 0 64.3v383.4C0 465.5 14.3 480 31.9 480H416c17.6 0 32-14.5 32-32.3V64.3c0-17.8-14.4-32.3-32-32.3zM135.4 416H69V202.2h66.5V416zm-33.2-243c-21.3 0-38.5-17.3-38.5-38.5S80.9 96 102.2 96c21.2 0 38.5 17.3 38.5 38.5 0 21.3-17.2 38.5-38.5 38.5zm282.1 243h-66.4V312c0-24.8-.5-56.7-34.5-56.7-34.6 0-39.9 27-39.9 54.9V416h-66.4V202.2h63.7v29.2h.9c8.9-16.8 30.6-34.5 62.9-34.5 67.2 0 79.7 44.3 79.7 101.9V416z"]},Bp={prefix:"fab",iconName:"html5",icon:[384,512,[],"f13b","M0 32l34.9 395.8L191.5 480l157.6-52.2L384 32H0zm308.2 127.9H124.4l4.1 49.4h175.6l-13.6 148.4-97.9 27v.3h-1.1l-98.7-27.3-6-75.8h47.7L138 320l53.5 14.5 53.7-14.5 6-62.2H84.3L71.5 112.2h241.1l-4.4 47.7z"]},nv={prefix:"fab",iconName:"css3",icon:[512,512,[],"f13c","M480 32l-64 368-223.3 80L0 400l19.6-94.8h82l-8 40.6L210 390.2l134.1-44.4 18.8-97.1H29.5l16-82h333.7l10.5-52.7H56.3l16.3-82H480z"]},rv={prefix:"fab",iconName:"python",icon:[448,512,[],"f3e2","M439.8 200.5c-7.7-30.9-22.3-54.2-53.4-54.2h-40.1v47.4c0 36.8-31.2 67.8-66.8 67.8H172.7c-29.2 0-53.4 25-53.4 54.3v101.8c0 29 25.2 46 53.4 54.3 33.8 9.9 66.3 11.7 106.8 0 26.9-7.8 53.4-23.5 53.4-54.3v-40.7H226.2v-13.6h160.2c31.1 0 42.6-21.7 53.4-54.2 11.2-33.5 10.7-65.7 0-108.6zM286.2 404c11.1 0 20.1 9.1 20.1 20.3 0 11.3-9 20.4-20.1 20.4-11 0-20.1-9.2-20.1-20.4.1-11.3 9.1-20.3 20.1-20.3zM167.8 248.1h106.8c29.7 0 53.4-24.5 53.4-54.3V91.9c0-29-24.4-50.7-53.4-55.6-35.8-5.9-74.7-5.6-106.8.1-45.2 8-53.4 24.7-53.4 55.6v40.7h106.9v13.6h-147c-31.1 0-58.3 18.7-66.8 54.2-9.8 40.7-10.2 66.1 0 108.6 7.6 31.6 25.7 54.2 56.8 54.2H101v-48.8c0-35.3 30.5-66.4 66.8-66.4zm-6.7-142.6c-11.1 0-20.1-9.1-20.1-20.3.1-11.3 9-20.4 20.1-20.4 11 0 20.1 9.2 20.1 20.4s-9 20.3-20.1 20.3z"]},iv={prefix:"fab",iconName:"js",icon:[448,512,[],"f3b8","M0 32v448h448V32H0zm243.8 349.4c0 43.6-25.6 63.5-62.9 63.5-33.7 0-53.2-17.4-63.2-38.5l34.3-20.7c6.6 11.7 12.6 21.6 27.1 21.6 13.8 0 22.6-5.4 22.6-26.5V237.7h42.1v143.7zm99.6 63.5c-39.1 0-64.4-18.6-76.7-43l34.3-19.8c9 14.7 20.8 25.6 41.5 25.6 17.4 0 28.6-8.7 28.6-20.8 0-14.4-11.4-19.5-30.7-28l-10.5-4.5c-30.4-12.9-50.5-29.2-50.5-63.5 0-31.6 24.1-55.6 61.6-55.6 26.8 0 46 9.3 59.8 33.7L368 290c-7.2-12.9-15-18-27.1-18-12.3 0-20.1 7.8-20.1 18 0 12.6 7.8 17.7 25.9 25.6l10.5 4.5c35.8 15.3 55.9 31 55.9 66.2 0 37.8-29.8 58.6-69.7 58.6z"]},Wp={prefix:"fab",iconName:"github",icon:[496,512,[],"f09b","M165.9 397.4c0 2-2.3 3.6-5.2 3.6-3.3.3-5.6-1.3-5.6-3.6 0-2 2.3-3.6 5.2-3.6 3-.3 5.6 1.3 5.6 3.6zm-31.1-4.5c-.7 2 1.3 4.3 4.3 4.9 2.6 1 5.6 0 6.2-2s-1.3-4.3-4.3-5.2c-2.6-.7-5.5.3-6.2 2.3zm44.2-1.7c-2.9.7-4.9 2.6-4.6 4.9.3 2 2.9 3.3 5.9 2.6 2.9-.7 4.9-2.6 4.6-4.6-.3-1.9-3-3.2-5.9-2.9zM244.8 8C106.1 8 0 113.3 0 252c0 110.9 69.8 205.8 169.5 239.2 12.8 2.3 17.3-5.6 17.3-12.1 0-6.2-.3-40.4-.3-61.4 0 0-70 15-84.7-29.8 0 0-11.4-29.1-27.8-36.6 0 0-22.9-15.7 1.6-15.4 0 0 24.9 2 38.6 25.8 21.9 38.6 58.6 27.5 72.9 20.9 2.3-16 8.8-27.1 16-33.7-55.9-6.2-112.3-14.3-112.3-110.5 0-27.5 7.6-41.3 23.6-58.9-2.6-6.5-11.1-33.3 2.6-67.9 20.9-6.5 69 27 69 27 20-5.6 41.5-8.5 62.8-8.5s42.8 2.9 62.8 8.5c0 0 48.1-33.6 69-27 13.7 34.7 5.2 61.4 2.6 67.9 16 17.7 25.8 31.5 25.8 58.9 0 96.5-58.9 104.2-114.8 110.5 9.2 7.9 17 22.9 17 46.4 0 33.7-.3 75.4-.3 83.6 0 6.5 4.6 14.4 17.3 12.1C428.2 457.8 496 362.9 496 252 496 113.3 383.5 8 244.8 8zM97.2 352.9c-1.3 1-1 3.3.7 5.2 1.6 1.6 3.9 2.3 5.2 1 1.3-1 1-3.3-.7-5.2-1.6-1.6-3.9-2.3-5.2-1zm-10.8-8.1c-.7 1.3.3 2.9 2.3 3.9 1.6 1 3.6.7 4.3-.7.7-1.3-.3-2.9-2.3-3.9-2-.6-3.6-.3-4.3.7zm32.4 35.6c-1.6 1.3-1 4.3 1.3 6.2 2.3 2.3 5.2 2.6 6.5 1 1.3-1.3.7-4.3-1.3-6.2-2.2-2.3-5.2-2.6-6.5-1zm-11.4-14.7c-1.6 1-1.6 3.6 0 5.9 1.6 2.3 4.3 3.3 5.6 2.3 1.6-1.3 1.6-3.9 0-6.2-1.4-2.3-4-3.3-5.6-2z"]},av={prefix:"fab",iconName:"twitter",icon:[512,512,[],"f099","M459.37 151.716c.325 4.548.325 9.097.325 13.645 0 138.72-105.583 298.558-298.558 298.558-59.452 0-114.68-17.219-161.137-47.106 8.447.974 16.568 1.299 25.34 1.299 49.055 0 94.213-16.568 130.274-44.832-46.132-.975-84.792-31.188-98.112-72.772 6.498.974 12.995 1.624 19.818 1.624 9.421 0 18.843-1.3 27.614-3.573-48.081-9.747-84.143-51.98-84.143-102.985v-1.299c13.969 7.797 30.214 12.67 47.431 13.319-28.264-18.843-46.781-51.005-46.781-87.391 0-19.492 5.197-37.36 14.294-52.954 51.655 63.675 129.3 105.258 216.365 109.807-1.624-7.797-2.599-15.918-2.599-24.04 0-57.828 46.782-104.934 104.934-104.934 30.213 0 57.502 12.67 76.67 33.137 23.715-4.548 46.456-13.32 66.599-25.34-7.798 24.366-24.366 44.833-46.132 57.827 21.117-2.273 41.584-8.122 60.426-16.243-14.292 20.791-32.161 39.308-52.628 54.253z"]};function ov(){const{t:e,i18n:t}=Nl("global"),[n,r]=D.useState("en"),i=()=>{const a=n==="en"?"es":"en";t.changeLanguage(a),r(a)};return g.jsx("header",{id:"header",className:"header",children:g.jsxs("div",{className:"container",children:[g.jsx("h1",{children:g.jsx("a",{children:"Jesús Torres García"})}),g.jsxs("h2",{children:[e("header.desc1"),g.jsx("span",{children:e("header.desc2")})," "]}),g.jsxs("nav",{id:"navbar",className:"navbar",children:[g.jsxs("ul",{children:[g.jsx("li",{children:g.jsx("a",{className:"nav-link active",href:"#header",children:e("header.home")})}),g.jsx("li",{children:g.jsx("a",{className:"nav-link",href:"/about",children:e("header.about")})}),g.jsx("li",{children:g.jsx("a",{className:"nav-link",href:"/portfolio",children:e("header.portfolio")})}),g.jsx("li",{children:g.jsx(be,{id:"toggle-language-btn",icon:W0,onClick:i,title:n==="en"?"Switch to Spanish":"Switch to English"})}),g.jsx("li",{children:g.jsx(be,{id:"toggle-theme-btn",icon:Q0})})]}),g.jsx("i",{id:"mobilen",className:"bi bi-list mobile-nav-toggle"})]}),g.jsxs("div",{className:"social-links",children:[g.jsx("a",{href:"https://twitter.com/jetoga9",target:"_self",children:g.jsx(be,{icon:av})}),g.jsx("a",{href:"https://www.linkedin.com/in/jesustorres-garcia/",target:"_blank",rel:"noopener noreferrer",children:g.jsx(be,{icon:tv})}),g.jsx("a",{href:"mailto:jetoga99@gmail.com",target:"_blank",rel:"noopener noreferrer",children:g.jsx(be,{icon:Y0})}),g.jsx("a",{href:"https://github.com/jetoga99",target:"_blank",rel:"noopener noreferrer",children:g.jsx(be,{icon:Wp})}),g.jsx("a",{href:"/Jesus_Torres_G_CurriculumVitae.pdf",target:"_blank",rel:"noopener noreferrer",children:g.jsx(be,{icon:K0})})]})]})})}function sv(){return g.jsx("div",{id:"bg",className:"bg",children:g.jsxs("svg",{viewBox:"0 0 100 100",children:[g.jsxs("g",{className:"core",children:[g.jsx("circle",{cx:"50",cy:"50",r:"10"}),g.jsx("circle",{cx:"50",cy:"50",r:"10"})]}),g.jsxs("g",{children:[g.jsxs("g",{className:"ring",transform:"rotate(-30, 50, 50)",children:[g.jsx("ellipse",{cx:"50",cy:"50",rx:"20",ry:"50"}),g.jsx("ellipse",{cx:"50",cy:"50",rx:"20",ry:"50"}),g.jsx("ellipse",{cx:"50",cy:"50",rx:"20",ry:"50"}),g.jsx("ellipse",{cx:"50",cy:"50",rx:"20",ry:"50"})]}),g.jsxs("g",{className:"ring",transform:"rotate(30, 50, 50)",children:[g.jsx("ellipse",{cx:"50",cy:"50",rx:"20",ry:"50"}),g.jsx("ellipse",{cx:"50",cy:"50",rx:"20",ry:"50"}),g.jsx("ellipse",{cx:"50",cy:"50",rx:"20",ry:"50"}),g.jsx("ellipse",{cx:"50",cy:"50",rx:"20",ry:"50"})]}),g.jsxs("g",{className:"ring",transform:"rotate(90, 50, 50)",children:[g.jsx("ellipse",{cx:"50",cy:"50",rx:"20",ry:"50"}),g.jsx("ellipse",{cx:"50",cy:"50",rx:"20",ry:"50"}),g.jsx("ellipse",{cx:"50",cy:"50",rx:"20",ry:"50"}),g.jsx("ellipse",{cx:"50",cy:"50",rx:"20",ry:"50"})]})]}),g.jsx("filter",{id:"blur",x:"-20%",y:"-20%",width:"140%",height:"140%",children:g.jsx("feGaussianBlur",{stdDeviation:"2"})}),g.jsx("defs",{children:g.jsxs("linearGradient",{id:"gradient",x1:"0%",y1:"0%",x2:"0%",y2:"100%",children:[g.jsx("stop",{offset:"0%",style:{stopColor:"#ffffff",stopOpacity:1}}),g.jsx("stop",{offset:"100%",style:{stopColor:"#d3d3d3",stopOpacity:1}})]})})]})})}function lv(){const{t:e,i18n:t}=Nl("global"),n=({icon:a,color:o})=>g.jsx("div",{className:"icon-box",children:g.jsx(be,{icon:a,style:{color:o}})});function r(a){return g.jsxs("div",{className:"resume-item",children:[g.jsx("h4",{children:e(a.title)}),g.jsx("h5",{children:a.duration}),g.jsx("p",{children:g.jsx("em",{children:e(a.university)})})]})}function i(a){return g.jsxs("div",{className:"resume-item",children:[g.jsx("h4",{children:e(a.title)}),g.jsxs("h5",{children:[e(a.company)," | ",e(a.location)," | ",a.duration]}),g.jsx("p",{children:e(a.description)}),g.jsx("p",{children:g.jsxs("strong",{children:[" ",e(a.technologies)]})})]})}return g.jsxs("section",{id:"about",className:"about",children:[g.jsxs("div",{className:"about-me container",children:[g.jsx("div",{className:"section-title",children:g.jsx("h2",{children:e("about.header1")})}),g.jsxs("div",{className:"row",children:[g.jsx("div",{className:"col-lg-4","data-aos":"fade-right",children:g.jsx("img",{src:"https://unavatar.io/Jetoga99",className:"img-fluid",alt:""})}),g.jsxs("div",{className:"col-lg-8 pt-4 pt-lg-0","data-aos":"fade-left",children:[g.jsx("h3",{children:e("about.title1")}),g.jsx("p",{className:"fst-italic",children:e("about.desc")}),g.jsxs("div",{className:"row",children:[g.jsx("div",{className:"col-lg-6",children:g.jsxs("ul",{children:[g.jsxs("li",{children:[g.jsx("i",{className:"bi bi-chevron-right"})," ",g.jsx("strong",{children:"Edad:"})," ",g.jsx("span",{children:"24"})]}),g.jsxs("li",{children:[g.jsx("i",{className:"bi bi-chevron-right"})," ",g.jsx("strong",{children:"Ciudad:"})," ",g.jsx("span",{children:"Ciudad de México"})]})]})}),g.jsx("div",{className:"col-lg-6",children:g.jsxs("ul",{children:[g.jsxs("li",{children:[g.jsx("i",{className:"bi bi-chevron-right"})," ",g.jsx("strong",{children:"Email:"})," ",g.jsx("span",{children:"jetoga99@gmail.com"})]}),g.jsxs("li",{children:[g.jsx("i",{className:"bi bi-chevron-right"})," ",g.jsx("strong",{children:"Freelance:"})," ",g.jsx("span",{children:"Disponible"})]})]})})]}),g.jsxs("div",{className:"interests",children:[g.jsx("div",{className:"section-title",children:g.jsx("h2",{children:"Skills"})}),g.jsxs("div",{className:"box",children:[g.jsxs("div",{className:"icon-box",children:[g.jsx("img",{src:"https://raw.githubusercontent.com/kiewic/icons/master/svg/PowerBiLogo100x100.svg",alt:"Power BI"}),g.jsx("h3",{children:"Power BI"})]}),g.jsx(n,{icon:rv,color:"#ffcc25"}),g.jsx(n,{icon:Hp,color:"#5578ff"}),g.jsx(n,{icon:q0,color:"#f84600"}),g.jsx(n,{icon:Wp,color:"#ffffff"}),g.jsx(n,{icon:X0,color:"#fbff00"}),g.jsx(n,{icon:J0,color:"#f18724"}),g.jsx(n,{icon:Vp,color:"#fdfdfd"}),g.jsx(n,{icon:Z0,color:"#264de4"}),g.jsx(n,{icon:Bp,color:"#ff2600"}),g.jsx(n,{icon:Up,color:"#0051ff"})]})]})]})]})]}),g.jsxs("div",{className:"container",children:[g.jsx("div",{className:"section-title",children:g.jsx("h2",{children:e("about.resume")})}),g.jsxs("div",{className:"row",children:[g.jsxs("div",{className:"col-lg-6",children:[g.jsx("h3",{className:"resume-title",children:e("about.education.title")}),e("about.education.degrees",{returnObjects:!0}).map((a,o)=>g.jsx(r,{title:a.degree,duration:a.years,university:a.location},o)),g.jsx("h3",{className:"resume-title",children:e("about.certifications.title")}),e("about.certifications.certs",{returnObjects:!0}).map((a,o)=>g.jsx(r,{title:a.course,duration:a.year,university:a.location},o))]}),g.jsxs("div",{className:"col-lg-6",children:[g.jsx("h3",{className:"resume-title",children:e("about.jobs.title")}),e("about.jobs.exp",{returnObjects:!0}).map((a,o)=>g.jsx(i,{title:a.title,company:a.company,location:a.location,duration:a.duration,description:a.description,technologies:a.technologies},o))]})]})]})]})}const uv=()=>{D.useEffect(()=>{const e=t=>{const n=t.target,r=document.getElementById("navbar"),i=document.getElementById("header"),a=document.getElementById("bg"),o=document.querySelectorAll("section"),s=document.querySelectorAll("#navbar .nav-link"),l=document.getElementById("mobilen");if(document.getElementById("toggle-theme-btn"),n.id==="toggle-theme-btn")document.body.classList.toggle("dark-theme");else if(n.classList.contains("mobile-nav-toggle"))r.classList.toggle("navbar-mobile"),n.classList.toggle("bi-list"),n.classList.toggle("bi-x");else if(n.classList.contains("nav-link")){t.preventDefault();const u=n.getAttribute("href");s.forEach(c=>{c.classList.remove("active")}),n.classList.add("active"),u==="#header"?(i.classList.remove("header-top"),a.classList.remove("header-top"),r.classList.remove("navbar-mobile"),l.classList.add("bi-list"),l.classList.remove("bi-x"),o.forEach(c=>{c.classList.remove("section-show")})):(i.classList.add("header-top"),a.classList.add("header-top"),o.forEach(c=>{c.id===u.substring(1)?(c.classList.add("section-show"),r.classList.remove("navbar-mobile"),l.classList.add("bi-list"),l.classList.remove("bi-x")):(c.classList.remove("section-show"),r.classList.remove("navbar-mobile"),l.classList.add("bi-list"),l.classList.remove("bi-x"))})),window.scrollTo({top:0,behavior:"smooth"})}};return document.addEventListener("click",e),()=>{document.removeEventListener("click",e)}},[])},cv=()=>{const{t:e,i18n:t}=Nl("global"),n=({imageSrc:i,title:a,text:o,icons:s,refs:l})=>g.jsx("div",{className:"col-lg-4 col-md-6 d-flex align-items-stretch mt-4",children:g.jsxs("div",{className:"card text-white",children:[g.jsx("img",{src:i,className:"card-img-top",alt:"..."}),g.jsxs("div",{className:"card-body",children:[g.jsx("h5",{className:"card-title",children:a}),g.jsx("p",{className:"card-text",children:o}),g.jsx("div",{className:"card-icons",children:s.map((u,c)=>g.jsx("a",{children:g.jsx(be,{icon:u})},c))}),g.jsx("a",{href:l,target:"_blank",className:"stretched-link",rel:"noopener noreferrer"})]})]})}),r=e("portfolio.projects",{returnObjects:!0});return g.jsx("section",{id:"portfolio",className:"services",children:g.jsxs("div",{className:"container",children:[g.jsx("div",{className:"section-title",children:g.jsx("h2",{children:e("header.portfolio")})}),g.jsx("div",{className:"row",style:{display:"flex",justifyContent:"center"},children:r.map((i,a)=>g.jsx(n,{imageSrc:i.imageSrc,title:e(i.title),text:e(i.text),icons:i.icons.map(o=>{switch(o){case"faHtml5":return Bp;case"faCss3":return nv;case"faJs":return iv;case"faReact":return ev;case"faDatabase":return Hp;case"faFileWord":return Up;case"faTerminal":return Vp;default:return null}}),refs:i.refs},a))})]})})};function fv(){return g.jsxs(Kh,{children:[g.jsx(uv,{}),g.jsx(sv,{}),g.jsx(ov,{}),g.jsx(lv,{}),g.jsx(cv,{})]})}const dv={home:"Home",about:"About Me",portfolio:"Portfolio",desc1:"Developer and ",desc2:"Data Analyst"},pv={header1:"ABOUT ME",title1:"Developer & Data Analyst",desc:"Hello! I'm Jesús, I'm a data analyst and FullStack developer. During my university studies, I developed a keen interest in programming, statistics, and machine learning techniques.",resume:"Resume",education:{title:"Education",degrees:[{degree:"Software Development Engineering",years:"2024 - 2026",location:"Virtual University of the State of Guanajuato"},{degree:"Bachelor of Physics",years:"2018 - 2023",location:"National Autonomous University of Mexico"}]},certifications:{title:"Courses and Certifications",certs:[{course:"Google Data Analytics",year:"2022",location:"Coursera"},{course:"NMA Deep Learning",year:"2022",location:"Neuromatch Academy"},{course:"Scientific Computing With Python",year:"2022",location:"freeCodeCamp"}]},jobs:{title:"Professional Experience",exp:[{title:"SR BI Analyst Marketing & Promotion",company:"Samsung",location:"CDMX",duration:"Nov 2023 - Present",description:"Maintenance and updating of dashboards in Excel, using formulas and Visual Basic. Proposals for migrating to PowerBI dashboards to enable a more innovative maintenance cycle and less susceptible to human error. Python code creation for data extraction on platforms for subsequent data transformation and analysis.",technologies:"Excel, VBA, Python, PowerBI"},{title:"Data Analyst",company:"SOPRIS Technologies, INC.",location:"CDMX",duration:"Aug - Oct 2023",description:"Maintenance and development of solutions for report creation through Plotly, Dash. Development using Git and data extraction using BigQuery for subsequent manipulation using Python. Creation and maintenance of dashboards using Looker Studio. Study and documentation of load flows in Looker.",technologies:"Python, Dash, Git, BigQuery, Looker Studio"},{title:"Social Service",company:"IIMAS, UNAM",location:"CDMX",duration:"Feb - Sep 2023",description:"Development of improvements on a website dedicated to tweet analysis with a primary focus on COVID-19, creation of forms for user creation, updating of the database through CRUD operations with MySQL, React and integration with Django. Implementation of code for the analysis of tweets stored in MongoDB.",technologies:"Python, Django, React, Postman, MySQL, MongoDB"},{title:"Data Mining and Credit Specialist",company:"Fincomún",location:"CDMX",duration:"May - Jul 2023",description:"Process automation for credit assignment through decision policies through data extraction from Credit Bureau products (Watch, Adviser). Database development for subsequent exploitation and obtaining of indicators or delivery to suppliers.",technologies:"Python, R Studio, Excel, PowerBI"},{title:"Risk Analyst",company:"Fincomún",location:"CDMX",duration:"Jan - Apr 2023",description:"Preparation and updating of daily reports for early detection of portfolio deterioration. Creation of dashboards using Python and PowerBI to observe historical data in order to detect patterns to modify risk policies. Creation of workflows in Power Automate for automatic report delivery.",technologies:"Python, R Studio, Excel, PowerBI, Power Automate"},{title:"Risk Intern",company:"Fincomún",location:"CDMX",duration:"Oct 2022 - In 2023",description:"Workflow design for process automation in Excel through Python with the objective of obtaining metrics. Data cleaning and transformation using Python and R Studio. Creation of reports for management presentation.",technologies:"Python, R Studio, Excel"},{title:"Freelance Web Development",company:"Generation",location:"CDMX",duration:"Aug - Oct 2022",description:"Layout and design of a website using CSS, HTML and Figma, interaction development with the page using JavaScript and back-end development by designing a database with MySQL and integration with Java.",technologies:"CSS, HTML, Figma, JavaScript, MySQL, Java, Git, Github"}]}},mv={projects:[{imageSrc:"./Miopers.png",title:"MiOpERS",text:"Improvements on a website for COVID-19 tweet analysis, including user forms and CRUD operations with MySQL in Django. Integration of React and MongoDB for tweet analysis.",icons:["faReact","faJs","faDatabase"],refs:"http://www.miopers.unam.mx/covid/"}]},hv={header:dv,about:pv,portfolio:mv},gv={home:"Inicio",about:"Acerca de Mí",portfolio:"Portafolio",desc1:"Desarrollador y ",desc2:"Analista de Datos"},vv={header1:"ACERCA DE MÍ",title1:"Desarrollador & Analista de Datos",desc:"¡Hola! Soy Jesús, soy un analista de datos y desarrollador FullStack. En mis estudios universitarios desarrollé un gran interés por la programación, estadística y técnicas de machine learning.",resume:"Resumen",education:{title:"Educación",degrees:[{degree:"Ingeniería en Desarrollo de Software",years:"2024 - 2026",location:"Universidad Virtual del Estado de Guanajuato"},{degree:"Licenciatura en Física",years:"2018 - 2023",location:"Universidad Nacional Autónoma de México"}]},certifications:{title:"Cursos y Certificaciones",certs:[{course:"Analisis de Datos de Google",year:"2022",location:"Coursera"},{course:"NMA Deep Learning",year:"2022",location:"Neuromatch Academy"},{course:"Scientific Computing With Python",year:"2022",location:"freeCodeCamp"}]},jobs:{title:"Experiencia Profesional",exp:[{title:"ANALISTA BI SR Marketing & Promotion",company:"Samsung",location:"CDMX",duration:"Nov 2023 - Presente",description:"Mantenimiento y actualización de dashboards en Excel, mediante el uso de fórmulas y Visual Basic. Propuestas de migración a dashboards en PowerBI que permitieran un ciclo de mantenimiento más innovador y menos susceptible al error humano. Creación de código en Python para la extracción de datos en plataformas para posterior transformación y análisis de los datos.",technologies:"Excel, VBA, Python, PowerBI"},{title:"ANALISTA DE DATOS",company:"SOPRIS Technologies, INC.",location:"CDMX",duration:"Ago - Oct 2023",description:"Mantenimiento y desarrollo de soluciones para creación de reportes a través de Plotly, Dash. Desarrollo mediante Git y extracción de datos mediante BigQuery para su posterior manipulación mediante Python. Creación y mantenimiento de dashboards mediante Looker Studio. Estudio y documentación de flujos de carga en Looker.",technologies:"Python, Dash, Git, BigQuery, Looker Studio"},{title:"SERVICIO SOCIAL",company:"IIMAS, UNAM",location:"CDMX",duration:"Feb - Sep 2023",description:"Desarrollo de mejoras en página web dedicada al análisis de tweets con enfoque principal al COVID-19, creación de formularios para la creación de usuarios, actualización de base de datos mediante operaciones CRUD con MySQL, React e integración con Django. Implementación de código para el análisis de tweets almacenados en MongoDB.",technologies:"Python, Django, React, Postman, MySQL, MongoDB"},{title:"ESPECIALISTA EN MINERÍA DE DATOS Y CRÉDITO",company:"Fincomún",location:"CDMX",duration:"May - Jul 2023",description:"Automatización de procesos para la asignación de créditos mediante políticas de decisión a través de la extracción de datos de productos de Buró de Crédito (Watch, Adviser). Elaboración de bases de datos para su posterior explotación y obtención de indicadores o entrega a proveedores.",technologies:"Python, R Studio, Excel, PowerBI"},{title:"ANALISTA DE RIESGOS",company:"Fincomún",location:"CDMX",duration:"Ene - Abr 2023",description:"Elaboración y actualización de reportes diarios para la detección temprana del deterioro de la cartera. Creación de dashboards mediante Python y PowerBI para observar datos históricos con el fin de detectar patrones para modificar políticas de riesgo. Creación de flujos de trabajo en Power Automate para el envío automático de reportes.",technologies:"Python, R Studio, Excel, PowerBI, Power Automate"},{title:"BECARIO DE RIESGOS",company:"Fincomún",location:"CDMX",duration:"Oct 2022 - En 2023",description:"Diseño de flujos de trabajo para la automatización de procesos en Excel a través de Python con el objetivo de obtención de métricas. Limpieza y transformación de datos mediante Python y R Studio. Creación de reportes para presentar a gerencia.",technologies:"Python, R Studio, Excel"},{title:"DESARROLLO WEB FREELANCE",company:"Generation",location:"CDMX",duration:"Ago - Oct 2022",description:"Maquetación y diseño de página web haciendo uso de CSS, HTML y Figma, desarrollo de interacción con la página mediante JavaScript y desarrollo de back-end al diseñar base de datos con MySQL e integración con Java.",technologies:"CSS, HTML, Figma, JavaScript, MySQL, Java, Git, Github"}]}},yv={projects:[{imageSrc:"./Miopers.png",title:"MiOpERS",text:"Mejoras en página web para análisis de tweets sobre COVID-19, incluyendo formularios de usuario y operaciones CRUD con MySQL en Django. Integración de React y MongoDB para análisis de tweets.",icons:["faReact","faJs","faDatabase"],refs:"http://www.miopers.unam.mx/covid/"}]},xv={header:gv,about:vv,portfolio:yv},wv={type:"logger",log(e){this.output("log",e)},warn(e){this.output("warn",e)},error(e){this.output("error",e)},output(e,t){console&&console[e]&&console[e].apply(console,t)}};class ga{constructor(t){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};this.init(t,n)}init(t){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};this.prefix=n.prefix||"i18next:",this.logger=t||wv,this.options=n,this.debug=n.debug}log(){for(var t=arguments.length,n=new Array(t),r=0;r{this.observers[r]||(this.observers[r]=new Map);const i=this.observers[r].get(n)||0;this.observers[r].set(n,i+1)}),this}off(t,n){if(this.observers[t]){if(!n){delete this.observers[t];return}this.observers[t].delete(n)}}emit(t){for(var n=arguments.length,r=new Array(n>1?n-1:0),i=1;i{let[s,l]=o;for(let u=0;u{let[s,l]=o;for(let u=0;u{e=r,t=i});return n.resolve=e,n.reject=t,n}function Rc(e){return e==null?"":""+e}function Sv(e,t,n){e.forEach(r=>{t[r]&&(n[r]=t[r])})}const kv=/###/g;function wr(e,t,n){function r(s){return s&&s.indexOf("###")>-1?s.replace(kv,"."):s}function i(){return!e||typeof e=="string"}const a=typeof t!="string"?t:t.split(".");let o=0;for(;o":">",'"':""","'":"'","/":"/"};function Pv(e){return typeof e=="string"?e.replace(/[&<>"'\/]/g,t=>bv[t]):e}class Nv{constructor(t){this.capacity=t,this.regExpMap=new Map,this.regExpQueue=[]}getRegExp(t){const n=this.regExpMap.get(t);if(n!==void 0)return n;const r=new RegExp(t);return this.regExpQueue.length===this.capacity&&this.regExpMap.delete(this.regExpQueue.shift()),this.regExpMap.set(t,r),this.regExpQueue.push(t),r}}const Lv=[" ",",","?","!",";"],Ov=new Nv(20);function jv(e,t,n){t=t||"",n=n||"";const r=Lv.filter(o=>t.indexOf(o)<0&&n.indexOf(o)<0);if(r.length===0)return!0;const i=Ov.getRegExp(`(${r.map(o=>o==="?"?"\\?":o).join("|")})`);let a=!i.test(e);if(!a){const o=e.indexOf(n);o>0&&!i.test(e.substring(0,o))&&(a=!0)}return a}function As(e,t){let n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:".";if(!e)return;if(e[t])return e[t];const r=t.split(n);let i=e;for(let a=0;a-1&&l0?e.replace("_","-"):e}class Tc extends Ua{constructor(t){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{ns:["translation"],defaultNS:"translation"};super(),this.data=t||{},this.options=n,this.options.keySeparator===void 0&&(this.options.keySeparator="."),this.options.ignoreJSONStructure===void 0&&(this.options.ignoreJSONStructure=!0)}addNamespaces(t){this.options.ns.indexOf(t)<0&&this.options.ns.push(t)}removeNamespaces(t){const n=this.options.ns.indexOf(t);n>-1&&this.options.ns.splice(n,1)}getResource(t,n,r){let i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:{};const a=i.keySeparator!==void 0?i.keySeparator:this.options.keySeparator,o=i.ignoreJSONStructure!==void 0?i.ignoreJSONStructure:this.options.ignoreJSONStructure;let s;t.indexOf(".")>-1?s=t.split("."):(s=[t,n],r&&(Array.isArray(r)?s.push(...r):typeof r=="string"&&a?s.push(...r.split(a)):s.push(r)));const l=va(this.data,s);return!l&&!n&&!r&&t.indexOf(".")>-1&&(t=s[0],n=s[1],r=s.slice(2).join(".")),l||!o||typeof r!="string"?l:As(this.data&&this.data[t]&&this.data[t][n],r,a)}addResource(t,n,r,i){let a=arguments.length>4&&arguments[4]!==void 0?arguments[4]:{silent:!1};const o=a.keySeparator!==void 0?a.keySeparator:this.options.keySeparator;let s=[t,n];r&&(s=s.concat(o?r.split(o):r)),t.indexOf(".")>-1&&(s=t.split("."),i=n,n=s[1]),this.addNamespaces(n),Ac(this.data,s,i),a.silent||this.emit("added",t,n,r,i)}addResources(t,n,r){let i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:{silent:!1};for(const a in r)(typeof r[a]=="string"||Object.prototype.toString.apply(r[a])==="[object Array]")&&this.addResource(t,n,a,r[a],{silent:!0});i.silent||this.emit("added",t,n,r)}addResourceBundle(t,n,r,i,a){let o=arguments.length>5&&arguments[5]!==void 0?arguments[5]:{silent:!1,skipCopy:!1},s=[t,n];t.indexOf(".")>-1&&(s=t.split("."),i=r,r=n,n=s[1]),this.addNamespaces(n);let l=va(this.data,s)||{};o.skipCopy||(r=JSON.parse(JSON.stringify(r))),i?Yp(l,r,a):l={...l,...r},Ac(this.data,s,l),o.silent||this.emit("added",t,n,r)}removeResourceBundle(t,n){this.hasResourceBundle(t,n)&&delete this.data[t][n],this.removeNamespaces(n),this.emit("removed",t,n)}hasResourceBundle(t,n){return this.getResource(t,n)!==void 0}getResourceBundle(t,n){return n||(n=this.options.defaultNS),this.options.compatibilityAPI==="v1"?{...this.getResource(t,n)}:this.getResource(t,n)}getDataByLanguage(t){return this.data[t]}hasLanguageSomeTranslations(t){const n=this.getDataByLanguage(t);return!!(n&&Object.keys(n)||[]).find(i=>n[i]&&Object.keys(n[i]).length>0)}toJSON(){return this.data}}var Kp={processors:{},addPostProcessor(e){this.processors[e.name]=e},handle(e,t,n,r,i){return e.forEach(a=>{this.processors[a]&&(t=this.processors[a].process(t,n,r,i))}),t}};const Ic={};class xa extends Ua{constructor(t){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};super(),Sv(["resourceStore","languageUtils","pluralResolver","interpolator","backendConnector","i18nFormat","utils"],t,this),this.options=n,this.options.keySeparator===void 0&&(this.options.keySeparator="."),this.logger=Xe.create("translator")}changeLanguage(t){t&&(this.language=t)}exists(t){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{interpolation:{}};if(t==null)return!1;const r=this.resolve(t,n);return r&&r.res!==void 0}extractFromKey(t,n){let r=n.nsSeparator!==void 0?n.nsSeparator:this.options.nsSeparator;r===void 0&&(r=":");const i=n.keySeparator!==void 0?n.keySeparator:this.options.keySeparator;let a=n.ns||this.options.defaultNS||[];const o=r&&t.indexOf(r)>-1,s=!this.options.userDefinedKeySeparator&&!n.keySeparator&&!this.options.userDefinedNsSeparator&&!n.nsSeparator&&!jv(t,r,i);if(o&&!s){const l=t.match(this.interpolator.nestingRegexp);if(l&&l.length>0)return{key:t,namespaces:a};const u=t.split(r);(r!==i||r===i&&this.options.ns.indexOf(u[0])>-1)&&(a=u.shift()),t=u.join(i)}return typeof a=="string"&&(a=[a]),{key:t,namespaces:a}}translate(t,n,r){if(typeof n!="object"&&this.options.overloadTranslationOptionHandler&&(n=this.options.overloadTranslationOptionHandler(arguments)),typeof n=="object"&&(n={...n}),n||(n={}),t==null)return"";Array.isArray(t)||(t=[String(t)]);const i=n.returnDetails!==void 0?n.returnDetails:this.options.returnDetails,a=n.keySeparator!==void 0?n.keySeparator:this.options.keySeparator,{key:o,namespaces:s}=this.extractFromKey(t[t.length-1],n),l=s[s.length-1],u=n.lng||this.language,c=n.appendNamespaceToCIMode||this.options.appendNamespaceToCIMode;if(u&&u.toLowerCase()==="cimode"){if(c){const y=n.nsSeparator||this.options.nsSeparator;return i?{res:`${l}${y}${o}`,usedKey:o,exactUsedKey:o,usedLng:u,usedNS:l,usedParams:this.getUsedParamsDetails(n)}:`${l}${y}${o}`}return i?{res:o,usedKey:o,exactUsedKey:o,usedLng:u,usedNS:l,usedParams:this.getUsedParamsDetails(n)}:o}const p=this.resolve(t,n);let f=p&&p.res;const v=p&&p.usedKey||o,x=p&&p.exactUsedKey||o,w=Object.prototype.toString.apply(f),k=["[object Number]","[object Function]","[object RegExp]"],m=n.joinArrays!==void 0?n.joinArrays:this.options.joinArrays,d=!this.i18nFormat||this.i18nFormat.handleAsObject;if(d&&f&&(typeof f!="string"&&typeof f!="boolean"&&typeof f!="number")&&k.indexOf(w)<0&&!(typeof m=="string"&&w==="[object Array]")){if(!n.returnObjects&&!this.options.returnObjects){this.options.returnedObjectHandler||this.logger.warn("accessing an object - but returnObjects options is not enabled!");const y=this.options.returnedObjectHandler?this.options.returnedObjectHandler(v,f,{...n,ns:s}):`key '${o} (${this.language})' returned an object instead of string.`;return i?(p.res=y,p.usedParams=this.getUsedParamsDetails(n),p):y}if(a){const y=w==="[object Array]",S=y?[]:{},b=y?x:v;for(const E in f)if(Object.prototype.hasOwnProperty.call(f,E)){const O=`${b}${a}${E}`;S[E]=this.translate(O,{...n,joinArrays:!1,ns:s}),S[E]===O&&(S[E]=f[E])}f=S}}else if(d&&typeof m=="string"&&w==="[object Array]")f=f.join(m),f&&(f=this.extendTranslation(f,t,n,r));else{let y=!1,S=!1;const b=n.count!==void 0&&typeof n.count!="string",E=xa.hasDefaultValue(n),O=b?this.pluralResolver.getSuffix(u,n.count,n):"",M=n.ordinal&&b?this.pluralResolver.getSuffix(u,n.count,{ordinal:!1}):"",T=b&&!n.ordinal&&n.count===0&&this.pluralResolver.shouldUseIntlApi(),oe=T&&n[`defaultValue${this.options.pluralSeparator}zero`]||n[`defaultValue${O}`]||n[`defaultValue${M}`]||n.defaultValue;!this.isValidLookup(f)&&E&&(y=!0,f=oe),this.isValidLookup(f)||(S=!0,f=o);const $t=(n.missingKeyNoValueFallbackToKey||this.options.missingKeyNoValueFallbackToKey)&&S?void 0:f,pt=E&&oe!==f&&this.options.updateMissing;if(S||y||pt){if(this.logger.log(pt?"updateKey":"missingKey",u,l,o,pt?oe:f),a){const P=this.resolve(o,{...n,keySeparator:!1});P&&P.res&&this.logger.warn("Seems the loaded translations were in flat JSON format instead of nested. Either set keySeparator: false on init or make sure your translations are published in nested format.")}let Ut=[];const mt=this.languageUtils.getFallbackCodes(this.options.fallbackLng,n.lng||this.language);if(this.options.saveMissingTo==="fallback"&&mt&&mt[0])for(let P=0;P{const W=E&&A!==f?A:$t;this.options.missingKeyHandler?this.options.missingKeyHandler(P,l,R,W,pt,n):this.backendConnector&&this.backendConnector.saveMissing&&this.backendConnector.saveMissing(P,l,R,W,pt,n),this.emit("missingKey",P,l,R,f)};this.options.saveMissing&&(this.options.saveMissingPlurals&&b?Ut.forEach(P=>{const R=this.pluralResolver.getSuffixes(P,n);T&&n[`defaultValue${this.options.pluralSeparator}zero`]&&R.indexOf(`${this.options.pluralSeparator}zero`)<0&&R.push(`${this.options.pluralSeparator}zero`),R.forEach(A=>{fn([P],o+A,n[`defaultValue${A}`]||oe)})}):fn(Ut,o,oe))}f=this.extendTranslation(f,t,n,p,r),S&&f===o&&this.options.appendNamespaceToMissingKey&&(f=`${l}:${o}`),(S||y)&&this.options.parseMissingKeyHandler&&(this.options.compatibilityAPI!=="v1"?f=this.options.parseMissingKeyHandler(this.options.appendNamespaceToMissingKey?`${l}:${o}`:o,y?f:void 0):f=this.options.parseMissingKeyHandler(f))}return i?(p.res=f,p.usedParams=this.getUsedParamsDetails(n),p):f}extendTranslation(t,n,r,i,a){var o=this;if(this.i18nFormat&&this.i18nFormat.parse)t=this.i18nFormat.parse(t,{...this.options.interpolation.defaultVariables,...r},r.lng||this.language||i.usedLng,i.usedNS,i.usedKey,{resolved:i});else if(!r.skipInterpolation){r.interpolation&&this.interpolator.init({...r,interpolation:{...this.options.interpolation,...r.interpolation}});const u=typeof t=="string"&&(r&&r.interpolation&&r.interpolation.skipOnVariables!==void 0?r.interpolation.skipOnVariables:this.options.interpolation.skipOnVariables);let c;if(u){const f=t.match(this.interpolator.nestingRegexp);c=f&&f.length}let p=r.replace&&typeof r.replace!="string"?r.replace:r;if(this.options.interpolation.defaultVariables&&(p={...this.options.interpolation.defaultVariables,...p}),t=this.interpolator.interpolate(t,p,r.lng||this.language,r),u){const f=t.match(this.interpolator.nestingRegexp),v=f&&f.length;c1&&arguments[1]!==void 0?arguments[1]:{},r,i,a,o,s;return typeof t=="string"&&(t=[t]),t.forEach(l=>{if(this.isValidLookup(r))return;const u=this.extractFromKey(l,n),c=u.key;i=c;let p=u.namespaces;this.options.fallbackNS&&(p=p.concat(this.options.fallbackNS));const f=n.count!==void 0&&typeof n.count!="string",v=f&&!n.ordinal&&n.count===0&&this.pluralResolver.shouldUseIntlApi(),x=n.context!==void 0&&(typeof n.context=="string"||typeof n.context=="number")&&n.context!=="",w=n.lngs?n.lngs:this.languageUtils.toResolveHierarchy(n.lng||this.language,n.fallbackLng);p.forEach(k=>{this.isValidLookup(r)||(s=k,!Ic[`${w[0]}-${k}`]&&this.utils&&this.utils.hasLoadedNamespace&&!this.utils.hasLoadedNamespace(s)&&(Ic[`${w[0]}-${k}`]=!0,this.logger.warn(`key "${i}" for languages "${w.join(", ")}" won't get resolved as namespace "${s}" was not yet loaded`,"This means something IS WRONG in your setup. You access the t function before i18next.init / i18next.loadNamespace / i18next.changeLanguage was done. Wait for the callback or Promise to resolve before accessing it!!!")),w.forEach(m=>{if(this.isValidLookup(r))return;o=m;const d=[c];if(this.i18nFormat&&this.i18nFormat.addLookupKeys)this.i18nFormat.addLookupKeys(d,c,m,k,n);else{let y;f&&(y=this.pluralResolver.getSuffix(m,n.count,n));const S=`${this.options.pluralSeparator}zero`,b=`${this.options.pluralSeparator}ordinal${this.options.pluralSeparator}`;if(f&&(d.push(c+y),n.ordinal&&y.indexOf(b)===0&&d.push(c+y.replace(b,this.options.pluralSeparator)),v&&d.push(c+S)),x){const E=`${c}${this.options.contextSeparator}${n.context}`;d.push(E),f&&(d.push(E+y),n.ordinal&&y.indexOf(b)===0&&d.push(E+y.replace(b,this.options.pluralSeparator)),v&&d.push(E+S))}}let h;for(;h=d.pop();)this.isValidLookup(r)||(a=h,r=this.getResource(m,k,h,n))}))})}),{res:r,usedKey:i,exactUsedKey:a,usedLng:o,usedNS:s}}isValidLookup(t){return t!==void 0&&!(!this.options.returnNull&&t===null)&&!(!this.options.returnEmptyString&&t==="")}getResource(t,n,r){let i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:{};return this.i18nFormat&&this.i18nFormat.getResource?this.i18nFormat.getResource(t,n,r,i):this.resourceStore.getResource(t,n,r,i)}getUsedParamsDetails(){let t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};const n=["defaultValue","ordinal","context","replace","lng","lngs","fallbackLng","ns","keySeparator","nsSeparator","returnObjects","returnDetails","joinArrays","postProcess","interpolation"],r=t.replace&&typeof t.replace!="string";let i=r?t.replace:t;if(r&&typeof t.count<"u"&&(i.count=t.count),this.options.interpolation.defaultVariables&&(i={...this.options.interpolation.defaultVariables,...i}),!r){i={...i};for(const a of n)delete i[a]}return i}static hasDefaultValue(t){const n="defaultValue";for(const r in t)if(Object.prototype.hasOwnProperty.call(t,r)&&n===r.substring(0,n.length)&&t[r]!==void 0)return!0;return!1}}function So(e){return e.charAt(0).toUpperCase()+e.slice(1)}class _c{constructor(t){this.options=t,this.supportedLngs=this.options.supportedLngs||!1,this.logger=Xe.create("languageUtils")}getScriptPartFromCode(t){if(t=ya(t),!t||t.indexOf("-")<0)return null;const n=t.split("-");return n.length===2||(n.pop(),n[n.length-1].toLowerCase()==="x")?null:this.formatLanguageCode(n.join("-"))}getLanguagePartFromCode(t){if(t=ya(t),!t||t.indexOf("-")<0)return t;const n=t.split("-");return this.formatLanguageCode(n[0])}formatLanguageCode(t){if(typeof t=="string"&&t.indexOf("-")>-1){const n=["hans","hant","latn","cyrl","cans","mong","arab"];let r=t.split("-");return this.options.lowerCaseLng?r=r.map(i=>i.toLowerCase()):r.length===2?(r[0]=r[0].toLowerCase(),r[1]=r[1].toUpperCase(),n.indexOf(r[1].toLowerCase())>-1&&(r[1]=So(r[1].toLowerCase()))):r.length===3&&(r[0]=r[0].toLowerCase(),r[1].length===2&&(r[1]=r[1].toUpperCase()),r[0]!=="sgn"&&r[2].length===2&&(r[2]=r[2].toUpperCase()),n.indexOf(r[1].toLowerCase())>-1&&(r[1]=So(r[1].toLowerCase())),n.indexOf(r[2].toLowerCase())>-1&&(r[2]=So(r[2].toLowerCase()))),r.join("-")}return this.options.cleanCode||this.options.lowerCaseLng?t.toLowerCase():t}isSupportedCode(t){return(this.options.load==="languageOnly"||this.options.nonExplicitSupportedLngs)&&(t=this.getLanguagePartFromCode(t)),!this.supportedLngs||!this.supportedLngs.length||this.supportedLngs.indexOf(t)>-1}getBestMatchFromCodes(t){if(!t)return null;let n;return t.forEach(r=>{if(n)return;const i=this.formatLanguageCode(r);(!this.options.supportedLngs||this.isSupportedCode(i))&&(n=i)}),!n&&this.options.supportedLngs&&t.forEach(r=>{if(n)return;const i=this.getLanguagePartFromCode(r);if(this.isSupportedCode(i))return n=i;n=this.options.supportedLngs.find(a=>{if(a===i)return a;if(!(a.indexOf("-")<0&&i.indexOf("-")<0)&&(a.indexOf("-")>0&&i.indexOf("-")<0&&a.substring(0,a.indexOf("-"))===i||a.indexOf(i)===0&&i.length>1))return a})}),n||(n=this.getFallbackCodes(this.options.fallbackLng)[0]),n}getFallbackCodes(t,n){if(!t)return[];if(typeof t=="function"&&(t=t(n)),typeof t=="string"&&(t=[t]),Object.prototype.toString.apply(t)==="[object Array]")return t;if(!n)return t.default||[];let r=t[n];return r||(r=t[this.getScriptPartFromCode(n)]),r||(r=t[this.formatLanguageCode(n)]),r||(r=t[this.getLanguagePartFromCode(n)]),r||(r=t.default),r||[]}toResolveHierarchy(t,n){const r=this.getFallbackCodes(n||this.options.fallbackLng||[],t),i=[],a=o=>{o&&(this.isSupportedCode(o)?i.push(o):this.logger.warn(`rejecting language code not found in supportedLngs: ${o}`))};return typeof t=="string"&&(t.indexOf("-")>-1||t.indexOf("_")>-1)?(this.options.load!=="languageOnly"&&a(this.formatLanguageCode(t)),this.options.load!=="languageOnly"&&this.options.load!=="currentOnly"&&a(this.getScriptPartFromCode(t)),this.options.load!=="currentOnly"&&a(this.getLanguagePartFromCode(t))):typeof t=="string"&&a(this.formatLanguageCode(t)),r.forEach(o=>{i.indexOf(o)<0&&a(this.formatLanguageCode(o))}),i}}let Rv=[{lngs:["ach","ak","am","arn","br","fil","gun","ln","mfe","mg","mi","oc","pt","pt-BR","tg","tl","ti","tr","uz","wa"],nr:[1,2],fc:1},{lngs:["af","an","ast","az","bg","bn","ca","da","de","dev","el","en","eo","es","et","eu","fi","fo","fur","fy","gl","gu","ha","hi","hu","hy","ia","it","kk","kn","ku","lb","mai","ml","mn","mr","nah","nap","nb","ne","nl","nn","no","nso","pa","pap","pms","ps","pt-PT","rm","sco","se","si","so","son","sq","sv","sw","ta","te","tk","ur","yo"],nr:[1,2],fc:2},{lngs:["ay","bo","cgg","fa","ht","id","ja","jbo","ka","km","ko","ky","lo","ms","sah","su","th","tt","ug","vi","wo","zh"],nr:[1],fc:3},{lngs:["be","bs","cnr","dz","hr","ru","sr","uk"],nr:[1,2,5],fc:4},{lngs:["ar"],nr:[0,1,2,3,11,100],fc:5},{lngs:["cs","sk"],nr:[1,2,5],fc:6},{lngs:["csb","pl"],nr:[1,2,5],fc:7},{lngs:["cy"],nr:[1,2,3,8],fc:8},{lngs:["fr"],nr:[1,2],fc:9},{lngs:["ga"],nr:[1,2,3,7,11],fc:10},{lngs:["gd"],nr:[1,2,3,20],fc:11},{lngs:["is"],nr:[1,2],fc:12},{lngs:["jv"],nr:[0,1],fc:13},{lngs:["kw"],nr:[1,2,3,4],fc:14},{lngs:["lt"],nr:[1,2,10],fc:15},{lngs:["lv"],nr:[1,2,0],fc:16},{lngs:["mk"],nr:[1,2],fc:17},{lngs:["mnk"],nr:[0,1,2],fc:18},{lngs:["mt"],nr:[1,2,11,20],fc:19},{lngs:["or"],nr:[2,1],fc:2},{lngs:["ro"],nr:[1,2,20],fc:20},{lngs:["sl"],nr:[5,1,2,3],fc:21},{lngs:["he","iw"],nr:[1,2,20,21],fc:22}],Av={1:function(e){return+(e>1)},2:function(e){return+(e!=1)},3:function(e){return 0},4:function(e){return e%10==1&&e%100!=11?0:e%10>=2&&e%10<=4&&(e%100<10||e%100>=20)?1:2},5:function(e){return e==0?0:e==1?1:e==2?2:e%100>=3&&e%100<=10?3:e%100>=11?4:5},6:function(e){return e==1?0:e>=2&&e<=4?1:2},7:function(e){return e==1?0:e%10>=2&&e%10<=4&&(e%100<10||e%100>=20)?1:2},8:function(e){return e==1?0:e==2?1:e!=8&&e!=11?2:3},9:function(e){return+(e>=2)},10:function(e){return e==1?0:e==2?1:e<7?2:e<11?3:4},11:function(e){return e==1||e==11?0:e==2||e==12?1:e>2&&e<20?2:3},12:function(e){return+(e%10!=1||e%100==11)},13:function(e){return+(e!==0)},14:function(e){return e==1?0:e==2?1:e==3?2:3},15:function(e){return e%10==1&&e%100!=11?0:e%10>=2&&(e%100<10||e%100>=20)?1:2},16:function(e){return e%10==1&&e%100!=11?0:e!==0?1:2},17:function(e){return e==1||e%10==1&&e%100!=11?0:1},18:function(e){return e==0?0:e==1?1:2},19:function(e){return e==1?0:e==0||e%100>1&&e%100<11?1:e%100>10&&e%100<20?2:3},20:function(e){return e==1?0:e==0||e%100>0&&e%100<20?1:2},21:function(e){return e%100==1?1:e%100==2?2:e%100==3||e%100==4?3:0},22:function(e){return e==1?0:e==2?1:(e<0||e>10)&&e%10==0?2:3}};const Tv=["v1","v2","v3"],Iv=["v4"],zc={zero:0,one:1,two:2,few:3,many:4,other:5};function _v(){const e={};return Rv.forEach(t=>{t.lngs.forEach(n=>{e[n]={numbers:t.nr,plurals:Av[t.fc]}})}),e}class zv{constructor(t){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};this.languageUtils=t,this.options=n,this.logger=Xe.create("pluralResolver"),(!this.options.compatibilityJSON||Iv.includes(this.options.compatibilityJSON))&&(typeof Intl>"u"||!Intl.PluralRules)&&(this.options.compatibilityJSON="v3",this.logger.error("Your environment seems not to be Intl API compatible, use an Intl.PluralRules polyfill. Will fallback to the compatibilityJSON v3 format handling.")),this.rules=_v()}addRule(t,n){this.rules[t]=n}getRule(t){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};if(this.shouldUseIntlApi())try{return new Intl.PluralRules(ya(t==="dev"?"en":t),{type:n.ordinal?"ordinal":"cardinal"})}catch{return}return this.rules[t]||this.rules[this.languageUtils.getLanguagePartFromCode(t)]}needsPlural(t){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};const r=this.getRule(t,n);return this.shouldUseIntlApi()?r&&r.resolvedOptions().pluralCategories.length>1:r&&r.numbers.length>1}getPluralFormsOfKey(t,n){let r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};return this.getSuffixes(t,r).map(i=>`${n}${i}`)}getSuffixes(t){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};const r=this.getRule(t,n);return r?this.shouldUseIntlApi()?r.resolvedOptions().pluralCategories.sort((i,a)=>zc[i]-zc[a]).map(i=>`${this.options.prepend}${n.ordinal?`ordinal${this.options.prepend}`:""}${i}`):r.numbers.map(i=>this.getSuffix(t,i,n)):[]}getSuffix(t,n){let r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};const i=this.getRule(t,r);return i?this.shouldUseIntlApi()?`${this.options.prepend}${r.ordinal?`ordinal${this.options.prepend}`:""}${i.select(n)}`:this.getSuffixRetroCompatible(i,n):(this.logger.warn(`no plural rule found for: ${t}`),"")}getSuffixRetroCompatible(t,n){const r=t.noAbs?t.plurals(n):t.plurals(Math.abs(n));let i=t.numbers[r];this.options.simplifyPluralSuffix&&t.numbers.length===2&&t.numbers[0]===1&&(i===2?i="plural":i===1&&(i=""));const a=()=>this.options.prepend&&i.toString()?this.options.prepend+i.toString():i.toString();return this.options.compatibilityJSON==="v1"?i===1?"":typeof i=="number"?`_plural_${i.toString()}`:a():this.options.compatibilityJSON==="v2"||this.options.simplifyPluralSuffix&&t.numbers.length===2&&t.numbers[0]===1?a():this.options.prepend&&r.toString()?this.options.prepend+r.toString():r.toString()}shouldUseIntlApi(){return!Tv.includes(this.options.compatibilityJSON)}}function Mc(e,t,n){let r=arguments.length>3&&arguments[3]!==void 0?arguments[3]:".",i=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!0,a=Ev(e,t,n);return!a&&i&&typeof n=="string"&&(a=As(e,n,r),a===void 0&&(a=As(t,n,r))),a}class Mv{constructor(){let t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};this.logger=Xe.create("interpolator"),this.options=t,this.format=t.interpolation&&t.interpolation.format||(n=>n),this.init(t)}init(){let t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};t.interpolation||(t.interpolation={escapeValue:!0});const{escape:n,escapeValue:r,useRawValueToEscape:i,prefix:a,prefixEscaped:o,suffix:s,suffixEscaped:l,formatSeparator:u,unescapeSuffix:c,unescapePrefix:p,nestingPrefix:f,nestingPrefixEscaped:v,nestingSuffix:x,nestingSuffixEscaped:w,nestingOptionsSeparator:k,maxReplaces:m,alwaysFormat:d}=t.interpolation;this.escape=n!==void 0?n:Pv,this.escapeValue=r!==void 0?r:!0,this.useRawValueToEscape=i!==void 0?i:!1,this.prefix=a?pn(a):o||"{{",this.suffix=s?pn(s):l||"}}",this.formatSeparator=u||",",this.unescapePrefix=c?"":p||"-",this.unescapeSuffix=this.unescapePrefix?"":c||"",this.nestingPrefix=f?pn(f):v||pn("$t("),this.nestingSuffix=x?pn(x):w||pn(")"),this.nestingOptionsSeparator=k||",",this.maxReplaces=m||1e3,this.alwaysFormat=d!==void 0?d:!1,this.resetRegExp()}reset(){this.options&&this.init(this.options)}resetRegExp(){const t=(n,r)=>n&&n.source===r?(n.lastIndex=0,n):new RegExp(r,"g");this.regexp=t(this.regexp,`${this.prefix}(.+?)${this.suffix}`),this.regexpUnescape=t(this.regexpUnescape,`${this.prefix}${this.unescapePrefix}(.+?)${this.unescapeSuffix}${this.suffix}`),this.nestingRegexp=t(this.nestingRegexp,`${this.nestingPrefix}(.+?)${this.nestingSuffix}`)}interpolate(t,n,r,i){let a,o,s;const l=this.options&&this.options.interpolation&&this.options.interpolation.defaultVariables||{};function u(x){return x.replace(/\$/g,"$$$$")}const c=x=>{if(x.indexOf(this.formatSeparator)<0){const d=Mc(n,l,x,this.options.keySeparator,this.options.ignoreJSONStructure);return this.alwaysFormat?this.format(d,void 0,r,{...i,...n,interpolationkey:x}):d}const w=x.split(this.formatSeparator),k=w.shift().trim(),m=w.join(this.formatSeparator).trim();return this.format(Mc(n,l,k,this.options.keySeparator,this.options.ignoreJSONStructure),m,r,{...i,...n,interpolationkey:k})};this.resetRegExp();const p=i&&i.missingInterpolationHandler||this.options.missingInterpolationHandler,f=i&&i.interpolation&&i.interpolation.skipOnVariables!==void 0?i.interpolation.skipOnVariables:this.options.interpolation.skipOnVariables;return[{regex:this.regexpUnescape,safeValue:x=>u(x)},{regex:this.regexp,safeValue:x=>this.escapeValue?u(this.escape(x)):u(x)}].forEach(x=>{for(s=0;a=x.regex.exec(t);){const w=a[1].trim();if(o=c(w),o===void 0)if(typeof p=="function"){const m=p(t,a,i);o=typeof m=="string"?m:""}else if(i&&Object.prototype.hasOwnProperty.call(i,w))o="";else if(f){o=a[0];continue}else this.logger.warn(`missed to pass in variable ${w} for interpolating ${t}`),o="";else typeof o!="string"&&!this.useRawValueToEscape&&(o=Rc(o));const k=x.safeValue(o);if(t=t.replace(a[0],k),f?(x.regex.lastIndex+=o.length,x.regex.lastIndex-=a[0].length):x.regex.lastIndex=0,s++,s>=this.maxReplaces)break}}),t}nest(t,n){let r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},i,a,o;function s(l,u){const c=this.nestingOptionsSeparator;if(l.indexOf(c)<0)return l;const p=l.split(new RegExp(`${c}[ ]*{`));let f=`{${p[1]}`;l=p[0],f=this.interpolate(f,o);const v=f.match(/'/g),x=f.match(/"/g);(v&&v.length%2===0&&!x||x.length%2!==0)&&(f=f.replace(/'/g,'"'));try{o=JSON.parse(f),u&&(o={...u,...o})}catch(w){return this.logger.warn(`failed parsing options string in nesting for key ${l}`,w),`${l}${c}${f}`}return o.defaultValue&&o.defaultValue.indexOf(this.prefix)>-1&&delete o.defaultValue,l}for(;i=this.nestingRegexp.exec(t);){let l=[];o={...r},o=o.replace&&typeof o.replace!="string"?o.replace:o,o.applyPostProcessor=!1,delete o.defaultValue;let u=!1;if(i[0].indexOf(this.formatSeparator)!==-1&&!/{.*}/.test(i[1])){const c=i[1].split(this.formatSeparator).map(p=>p.trim());i[1]=c.shift(),l=c,u=!0}if(a=n(s.call(this,i[1].trim(),o),o),a&&i[0]===t&&typeof a!="string")return a;typeof a!="string"&&(a=Rc(a)),a||(this.logger.warn(`missed to resolve ${i[1]} for nesting ${t}`),a=""),u&&(a=l.reduce((c,p)=>this.format(c,p,r.lng,{...r,interpolationkey:i[1].trim()}),a.trim())),t=t.replace(i[0],a),this.regexp.lastIndex=0}return t}}function Dv(e){let t=e.toLowerCase().trim();const n={};if(e.indexOf("(")>-1){const r=e.split("(");t=r[0].toLowerCase().trim();const i=r[1].substring(0,r[1].length-1);t==="currency"&&i.indexOf(":")<0?n.currency||(n.currency=i.trim()):t==="relativetime"&&i.indexOf(":")<0?n.range||(n.range=i.trim()):i.split(";").forEach(o=>{if(!o)return;const[s,...l]=o.split(":"),u=l.join(":").trim().replace(/^'+|'+$/g,"");n[s.trim()]||(n[s.trim()]=u),u==="false"&&(n[s.trim()]=!1),u==="true"&&(n[s.trim()]=!0),isNaN(u)||(n[s.trim()]=parseInt(u,10))})}return{formatName:t,formatOptions:n}}function mn(e){const t={};return function(r,i,a){const o=i+JSON.stringify(a);let s=t[o];return s||(s=e(ya(i),a),t[o]=s),s(r)}}class Fv{constructor(){let t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};this.logger=Xe.create("formatter"),this.options=t,this.formats={number:mn((n,r)=>{const i=new Intl.NumberFormat(n,{...r});return a=>i.format(a)}),currency:mn((n,r)=>{const i=new Intl.NumberFormat(n,{...r,style:"currency"});return a=>i.format(a)}),datetime:mn((n,r)=>{const i=new Intl.DateTimeFormat(n,{...r});return a=>i.format(a)}),relativetime:mn((n,r)=>{const i=new Intl.RelativeTimeFormat(n,{...r});return a=>i.format(a,r.range||"day")}),list:mn((n,r)=>{const i=new Intl.ListFormat(n,{...r});return a=>i.format(a)})},this.init(t)}init(t){const r=(arguments.length>1&&arguments[1]!==void 0?arguments[1]:{interpolation:{}}).interpolation;this.formatSeparator=r.formatSeparator?r.formatSeparator:r.formatSeparator||","}add(t,n){this.formats[t.toLowerCase().trim()]=n}addCached(t,n){this.formats[t.toLowerCase().trim()]=mn(n)}format(t,n,r){let i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:{};return n.split(this.formatSeparator).reduce((s,l)=>{const{formatName:u,formatOptions:c}=Dv(l);if(this.formats[u]){let p=s;try{const f=i&&i.formatParams&&i.formatParams[i.interpolationkey]||{},v=f.locale||f.lng||i.locale||i.lng||r;p=this.formats[u](s,v,{...c,...i,...f})}catch(f){this.logger.warn(f)}return p}else this.logger.warn(`there was no format function for ${u}`);return s},t)}}function $v(e,t){e.pending[t]!==void 0&&(delete e.pending[t],e.pendingCount--)}class Uv extends Ua{constructor(t,n,r){let i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:{};super(),this.backend=t,this.store=n,this.services=r,this.languageUtils=r.languageUtils,this.options=i,this.logger=Xe.create("backendConnector"),this.waitingReads=[],this.maxParallelReads=i.maxParallelReads||10,this.readingCalls=0,this.maxRetries=i.maxRetries>=0?i.maxRetries:5,this.retryTimeout=i.retryTimeout>=1?i.retryTimeout:350,this.state={},this.queue=[],this.backend&&this.backend.init&&this.backend.init(r,i.backend,i)}queueLoad(t,n,r,i){const a={},o={},s={},l={};return t.forEach(u=>{let c=!0;n.forEach(p=>{const f=`${u}|${p}`;!r.reload&&this.store.hasResourceBundle(u,p)?this.state[f]=2:this.state[f]<0||(this.state[f]===1?o[f]===void 0&&(o[f]=!0):(this.state[f]=1,c=!1,o[f]===void 0&&(o[f]=!0),a[f]===void 0&&(a[f]=!0),l[p]===void 0&&(l[p]=!0)))}),c||(s[u]=!0)}),(Object.keys(a).length||Object.keys(o).length)&&this.queue.push({pending:o,pendingCount:Object.keys(o).length,loaded:{},errors:[],callback:i}),{toLoad:Object.keys(a),pending:Object.keys(o),toLoadLanguages:Object.keys(s),toLoadNamespaces:Object.keys(l)}}loaded(t,n,r){const i=t.split("|"),a=i[0],o=i[1];n&&this.emit("failedLoading",a,o,n),r&&this.store.addResourceBundle(a,o,r,void 0,void 0,{skipCopy:!0}),this.state[t]=n?-1:2;const s={};this.queue.forEach(l=>{Cv(l.loaded,[a],o),$v(l,t),n&&l.errors.push(n),l.pendingCount===0&&!l.done&&(Object.keys(l.loaded).forEach(u=>{s[u]||(s[u]={});const c=l.loaded[u];c.length&&c.forEach(p=>{s[u][p]===void 0&&(s[u][p]=!0)})}),l.done=!0,l.errors.length?l.callback(l.errors):l.callback())}),this.emit("loaded",s),this.queue=this.queue.filter(l=>!l.done)}read(t,n,r){let i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:0,a=arguments.length>4&&arguments[4]!==void 0?arguments[4]:this.retryTimeout,o=arguments.length>5?arguments[5]:void 0;if(!t.length)return o(null,{});if(this.readingCalls>=this.maxParallelReads){this.waitingReads.push({lng:t,ns:n,fcName:r,tried:i,wait:a,callback:o});return}this.readingCalls++;const s=(u,c)=>{if(this.readingCalls--,this.waitingReads.length>0){const p=this.waitingReads.shift();this.read(p.lng,p.ns,p.fcName,p.tried,p.wait,p.callback)}if(u&&c&&i{this.read.call(this,t,n,r,i+1,a*2,o)},a);return}o(u,c)},l=this.backend[r].bind(this.backend);if(l.length===2){try{const u=l(t,n);u&&typeof u.then=="function"?u.then(c=>s(null,c)).catch(s):s(null,u)}catch(u){s(u)}return}return l(t,n,s)}prepareLoading(t,n){let r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},i=arguments.length>3?arguments[3]:void 0;if(!this.backend)return this.logger.warn("No backend was added via i18next.use. Will not load resources."),i&&i();typeof t=="string"&&(t=this.languageUtils.toResolveHierarchy(t)),typeof n=="string"&&(n=[n]);const a=this.queueLoad(t,n,r,i);if(!a.toLoad.length)return a.pending.length||i(),null;a.toLoad.forEach(o=>{this.loadOne(o)})}load(t,n,r){this.prepareLoading(t,n,{},r)}reload(t,n,r){this.prepareLoading(t,n,{reload:!0},r)}loadOne(t){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"";const r=t.split("|"),i=r[0],a=r[1];this.read(i,a,"read",void 0,void 0,(o,s)=>{o&&this.logger.warn(`${n}loading namespace ${a} for language ${i} failed`,o),!o&&s&&this.logger.log(`${n}loaded namespace ${a} for language ${i}`,s),this.loaded(t,o,s)})}saveMissing(t,n,r,i,a){let o=arguments.length>5&&arguments[5]!==void 0?arguments[5]:{},s=arguments.length>6&&arguments[6]!==void 0?arguments[6]:()=>{};if(this.services.utils&&this.services.utils.hasLoadedNamespace&&!this.services.utils.hasLoadedNamespace(n)){this.logger.warn(`did not save key "${r}" as the namespace "${n}" was not yet loaded`,"This means something IS WRONG in your setup. You access the t function before i18next.init / i18next.loadNamespace / i18next.changeLanguage was done. Wait for the callback or Promise to resolve before accessing it!!!");return}if(!(r==null||r==="")){if(this.backend&&this.backend.create){const l={...o,isUpdate:a},u=this.backend.create.bind(this.backend);if(u.length<6)try{let c;u.length===5?c=u(t,n,r,i,l):c=u(t,n,r,i),c&&typeof c.then=="function"?c.then(p=>s(null,p)).catch(s):s(null,c)}catch(c){s(c)}else u(t,n,r,i,s,l)}!t||!t[0]||this.store.addResource(t[0],n,r,i)}}}function Dc(){return{debug:!1,initImmediate:!0,ns:["translation"],defaultNS:["translation"],fallbackLng:["dev"],fallbackNS:!1,supportedLngs:!1,nonExplicitSupportedLngs:!1,load:"all",preload:!1,simplifyPluralSuffix:!0,keySeparator:".",nsSeparator:":",pluralSeparator:"_",contextSeparator:"_",partialBundledLanguages:!1,saveMissing:!1,updateMissing:!1,saveMissingTo:"fallback",saveMissingPlurals:!0,missingKeyHandler:!1,missingInterpolationHandler:!1,postProcess:!1,postProcessPassResolved:!1,returnNull:!1,returnEmptyString:!0,returnObjects:!1,joinArrays:!1,returnedObjectHandler:!1,parseMissingKeyHandler:!1,appendNamespaceToMissingKey:!1,appendNamespaceToCIMode:!1,overloadTranslationOptionHandler:function(t){let n={};if(typeof t[1]=="object"&&(n=t[1]),typeof t[1]=="string"&&(n.defaultValue=t[1]),typeof t[2]=="string"&&(n.tDescription=t[2]),typeof t[2]=="object"||typeof t[3]=="object"){const r=t[3]||t[2];Object.keys(r).forEach(i=>{n[i]=r[i]})}return n},interpolation:{escapeValue:!0,format:e=>e,prefix:"{{",suffix:"}}",formatSeparator:",",unescapePrefix:"-",nestingPrefix:"$t(",nestingSuffix:")",nestingOptionsSeparator:",",maxReplaces:1e3,skipOnVariables:!0}}}function Fc(e){return typeof e.ns=="string"&&(e.ns=[e.ns]),typeof e.fallbackLng=="string"&&(e.fallbackLng=[e.fallbackLng]),typeof e.fallbackNS=="string"&&(e.fallbackNS=[e.fallbackNS]),e.supportedLngs&&e.supportedLngs.indexOf("cimode")<0&&(e.supportedLngs=e.supportedLngs.concat(["cimode"])),e}function Pi(){}function Vv(e){Object.getOwnPropertyNames(Object.getPrototypeOf(e)).forEach(n=>{typeof e[n]=="function"&&(e[n]=e[n].bind(e))})}class Hr extends Ua{constructor(){let t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},n=arguments.length>1?arguments[1]:void 0;if(super(),this.options=Fc(t),this.services={},this.logger=Xe,this.modules={external:[]},Vv(this),n&&!this.isInitialized&&!t.isClone){if(!this.options.initImmediate)return this.init(t,n),this;setTimeout(()=>{this.init(t,n)},0)}}init(){var t=this;let n=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},r=arguments.length>1?arguments[1]:void 0;this.isInitializing=!0,typeof n=="function"&&(r=n,n={}),!n.defaultNS&&n.defaultNS!==!1&&n.ns&&(typeof n.ns=="string"?n.defaultNS=n.ns:n.ns.indexOf("translation")<0&&(n.defaultNS=n.ns[0]));const i=Dc();this.options={...i,...this.options,...Fc(n)},this.options.compatibilityAPI!=="v1"&&(this.options.interpolation={...i.interpolation,...this.options.interpolation}),n.keySeparator!==void 0&&(this.options.userDefinedKeySeparator=n.keySeparator),n.nsSeparator!==void 0&&(this.options.userDefinedNsSeparator=n.nsSeparator);function a(c){return c?typeof c=="function"?new c:c:null}if(!this.options.isClone){this.modules.logger?Xe.init(a(this.modules.logger),this.options):Xe.init(null,this.options);let c;this.modules.formatter?c=this.modules.formatter:typeof Intl<"u"&&(c=Fv);const p=new _c(this.options);this.store=new Tc(this.options.resources,this.options);const f=this.services;f.logger=Xe,f.resourceStore=this.store,f.languageUtils=p,f.pluralResolver=new zv(p,{prepend:this.options.pluralSeparator,compatibilityJSON:this.options.compatibilityJSON,simplifyPluralSuffix:this.options.simplifyPluralSuffix}),c&&(!this.options.interpolation.format||this.options.interpolation.format===i.interpolation.format)&&(f.formatter=a(c),f.formatter.init(f,this.options),this.options.interpolation.format=f.formatter.format.bind(f.formatter)),f.interpolator=new Mv(this.options),f.utils={hasLoadedNamespace:this.hasLoadedNamespace.bind(this)},f.backendConnector=new Uv(a(this.modules.backend),f.resourceStore,f,this.options),f.backendConnector.on("*",function(v){for(var x=arguments.length,w=new Array(x>1?x-1:0),k=1;k1?x-1:0),k=1;k{v.init&&v.init(this)})}if(this.format=this.options.interpolation.format,r||(r=Pi),this.options.fallbackLng&&!this.services.languageDetector&&!this.options.lng){const c=this.services.languageUtils.getFallbackCodes(this.options.fallbackLng);c.length>0&&c[0]!=="dev"&&(this.options.lng=c[0])}!this.services.languageDetector&&!this.options.lng&&this.logger.warn("init: no languageDetector is used and no lng is defined"),["getResource","hasResourceBundle","getResourceBundle","getDataByLanguage"].forEach(c=>{this[c]=function(){return t.store[c](...arguments)}}),["addResource","addResources","addResourceBundle","removeResourceBundle"].forEach(c=>{this[c]=function(){return t.store[c](...arguments),t}});const l=rr(),u=()=>{const c=(p,f)=>{this.isInitializing=!1,this.isInitialized&&!this.initializedStoreOnce&&this.logger.warn("init: i18next is already initialized. You should call init just once!"),this.isInitialized=!0,this.options.isClone||this.logger.log("initialized",this.options),this.emit("initialized",this.options),l.resolve(f),r(p,f)};if(this.languages&&this.options.compatibilityAPI!=="v1"&&!this.isInitialized)return c(null,this.t.bind(this));this.changeLanguage(this.options.lng,c)};return this.options.resources||!this.options.initImmediate?u():setTimeout(u,0),l}loadResources(t){let r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:Pi;const i=typeof t=="string"?t:this.language;if(typeof t=="function"&&(r=t),!this.options.resources||this.options.partialBundledLanguages){if(i&&i.toLowerCase()==="cimode"&&(!this.options.preload||this.options.preload.length===0))return r();const a=[],o=s=>{if(!s||s==="cimode")return;this.services.languageUtils.toResolveHierarchy(s).forEach(u=>{u!=="cimode"&&a.indexOf(u)<0&&a.push(u)})};i?o(i):this.services.languageUtils.getFallbackCodes(this.options.fallbackLng).forEach(l=>o(l)),this.options.preload&&this.options.preload.forEach(s=>o(s)),this.services.backendConnector.load(a,this.options.ns,s=>{!s&&!this.resolvedLanguage&&this.language&&this.setResolvedLanguage(this.language),r(s)})}else r(null)}reloadResources(t,n,r){const i=rr();return t||(t=this.languages),n||(n=this.options.ns),r||(r=Pi),this.services.backendConnector.reload(t,n,a=>{i.resolve(),r(a)}),i}use(t){if(!t)throw new Error("You are passing an undefined module! Please check the object you are passing to i18next.use()");if(!t.type)throw new Error("You are passing a wrong module! Please check the object you are passing to i18next.use()");return t.type==="backend"&&(this.modules.backend=t),(t.type==="logger"||t.log&&t.warn&&t.error)&&(this.modules.logger=t),t.type==="languageDetector"&&(this.modules.languageDetector=t),t.type==="i18nFormat"&&(this.modules.i18nFormat=t),t.type==="postProcessor"&&Kp.addPostProcessor(t),t.type==="formatter"&&(this.modules.formatter=t),t.type==="3rdParty"&&this.modules.external.push(t),this}setResolvedLanguage(t){if(!(!t||!this.languages)&&!(["cimode","dev"].indexOf(t)>-1))for(let n=0;n-1)&&this.store.hasLanguageSomeTranslations(r)){this.resolvedLanguage=r;break}}}changeLanguage(t,n){var r=this;this.isLanguageChangingTo=t;const i=rr();this.emit("languageChanging",t);const a=l=>{this.language=l,this.languages=this.services.languageUtils.toResolveHierarchy(l),this.resolvedLanguage=void 0,this.setResolvedLanguage(l)},o=(l,u)=>{u?(a(u),this.translator.changeLanguage(u),this.isLanguageChangingTo=void 0,this.emit("languageChanged",u),this.logger.log("languageChanged",u)):this.isLanguageChangingTo=void 0,i.resolve(function(){return r.t(...arguments)}),n&&n(l,function(){return r.t(...arguments)})},s=l=>{!t&&!l&&this.services.languageDetector&&(l=[]);const u=typeof l=="string"?l:this.services.languageUtils.getBestMatchFromCodes(l);u&&(this.language||a(u),this.translator.language||this.translator.changeLanguage(u),this.services.languageDetector&&this.services.languageDetector.cacheUserLanguage&&this.services.languageDetector.cacheUserLanguage(u)),this.loadResources(u,c=>{o(c,u)})};return!t&&this.services.languageDetector&&!this.services.languageDetector.async?s(this.services.languageDetector.detect()):!t&&this.services.languageDetector&&this.services.languageDetector.async?this.services.languageDetector.detect.length===0?this.services.languageDetector.detect().then(s):this.services.languageDetector.detect(s):s(t),i}getFixedT(t,n,r){var i=this;const a=function(o,s){let l;if(typeof s!="object"){for(var u=arguments.length,c=new Array(u>2?u-2:0),p=2;p`${l.keyPrefix}${f}${x}`):v=l.keyPrefix?`${l.keyPrefix}${f}${o}`:o,i.t(v,l)};return typeof t=="string"?a.lng=t:a.lngs=t,a.ns=n,a.keyPrefix=r,a}t(){return this.translator&&this.translator.translate(...arguments)}exists(){return this.translator&&this.translator.exists(...arguments)}setDefaultNamespace(t){this.options.defaultNS=t}hasLoadedNamespace(t){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};if(!this.isInitialized)return this.logger.warn("hasLoadedNamespace: i18next was not initialized",this.languages),!1;if(!this.languages||!this.languages.length)return this.logger.warn("hasLoadedNamespace: i18n.languages were undefined or empty",this.languages),!1;const r=n.lng||this.resolvedLanguage||this.languages[0],i=this.options?this.options.fallbackLng:!1,a=this.languages[this.languages.length-1];if(r.toLowerCase()==="cimode")return!0;const o=(s,l)=>{const u=this.services.backendConnector.state[`${s}|${l}`];return u===-1||u===2};if(n.precheck){const s=n.precheck(this,o);if(s!==void 0)return s}return!!(this.hasResourceBundle(r,t)||!this.services.backendConnector.backend||this.options.resources&&!this.options.partialBundledLanguages||o(r,t)&&(!i||o(a,t)))}loadNamespaces(t,n){const r=rr();return this.options.ns?(typeof t=="string"&&(t=[t]),t.forEach(i=>{this.options.ns.indexOf(i)<0&&this.options.ns.push(i)}),this.loadResources(i=>{r.resolve(),n&&n(i)}),r):(n&&n(),Promise.resolve())}loadLanguages(t,n){const r=rr();typeof t=="string"&&(t=[t]);const i=this.options.preload||[],a=t.filter(o=>i.indexOf(o)<0&&this.services.languageUtils.isSupportedCode(o));return a.length?(this.options.preload=i.concat(a),this.loadResources(o=>{r.resolve(),n&&n(o)}),r):(n&&n(),Promise.resolve())}dir(t){if(t||(t=this.resolvedLanguage||(this.languages&&this.languages.length>0?this.languages[0]:this.language)),!t)return"rtl";const n=["ar","shu","sqr","ssh","xaa","yhd","yud","aao","abh","abv","acm","acq","acw","acx","acy","adf","ads","aeb","aec","afb","ajp","apc","apd","arb","arq","ars","ary","arz","auz","avl","ayh","ayl","ayn","ayp","bbz","pga","he","iw","ps","pbt","pbu","pst","prp","prd","ug","ur","ydd","yds","yih","ji","yi","hbo","men","xmn","fa","jpr","peo","pes","prs","dv","sam","ckb"],r=this.services&&this.services.languageUtils||new _c(Dc());return n.indexOf(r.getLanguagePartFromCode(t))>-1||t.toLowerCase().indexOf("-arab")>1?"rtl":"ltr"}static createInstance(){let t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},n=arguments.length>1?arguments[1]:void 0;return new Hr(t,n)}cloneInstance(){let t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:Pi;const r=t.forkResourceStore;r&&delete t.forkResourceStore;const i={...this.options,...t,isClone:!0},a=new Hr(i);return(t.debug!==void 0||t.prefix!==void 0)&&(a.logger=a.logger.clone(t)),["store","services","language"].forEach(s=>{a[s]=this[s]}),a.services={...this.services},a.services.utils={hasLoadedNamespace:a.hasLoadedNamespace.bind(a)},r&&(a.store=new Tc(this.store.data,i),a.services.resourceStore=a.store),a.translator=new xa(a.services,i),a.translator.on("*",function(s){for(var l=arguments.length,u=new Array(l>1?l-1:0),c=1;c2&&arguments[2]!==void 0?arguments[2]:{};if(typeof t=="string")return t;var r=(t.children||[]).map(function(l){return Fp(e,l)}),i=Object.keys(t.attributes||{}).reduce(function(l,u){var c=t.attributes[u];switch(u){case"class":l.attrs.className=c,delete t.attributes.class;break;case"style":l.attrs.style=V0(c);break;default:u.indexOf("aria-")===0||u.indexOf("data-")===0?l.attrs[u.toLowerCase()]=c:l.attrs[Dp(u)]=c}return l},{attrs:{}}),a=n.style,o=a===void 0?{}:a,s=T0(n,$0);return i.attrs.style=Ct(Ct({},i.attrs.style),o),e.apply(void 0,[t.tag,Ct(Ct({},i.attrs),s)].concat(js(r)))}var $p=!1;try{$p=!0}catch{}function H0(){if(!$p&&console&&typeof console.error=="function"){var e;(e=console).error.apply(e,arguments)}}function jc(e){if(e&&ha(e)==="object"&&e.prefix&&e.iconName&&e.icon)return e;if(Os.icon)return Os.icon(e);if(e===null)return null;if(e&&ha(e)==="object"&&e.prefix&&e.iconName)return e;if(Array.isArray(e)&&e.length===2)return{prefix:e[0],iconName:e[1]};if(typeof e=="string")return{prefix:"fas",iconName:e}}function wo(e,t){return Array.isArray(t)&&t.length>0||!Array.isArray(t)&&t?On({},e,t):{}}var be=Sa.forwardRef(function(e,t){var n=e.icon,r=e.mask,i=e.symbol,a=e.className,o=e.title,s=e.titleId,l=e.maskId,u=jc(n),c=wo("classes",[].concat(js(D0(e)),js(a.split(" ")))),p=wo("transform",typeof e.transform=="string"?Os.transform(e.transform):e.transform),f=wo("mask",jc(r)),v=P0(u,Ct(Ct(Ct(Ct({},c),p),f),{},{symbol:i,title:o,titleId:s,maskId:l}));if(!v)return H0("Could not find icon",u),null;var x=v.abstract,w={ref:t};return Object.keys(e).forEach(function(k){be.defaultProps.hasOwnProperty(k)||(w[k]=e[k])}),B0(x[0],w)});be.displayName="FontAwesomeIcon";be.propTypes={beat:I.bool,border:I.bool,beatFade:I.bool,bounce:I.bool,className:I.string,fade:I.bool,flash:I.bool,mask:I.oneOfType([I.object,I.array,I.string]),maskId:I.string,fixedWidth:I.bool,inverse:I.bool,flip:I.oneOf([!0,!1,"horizontal","vertical","both"]),icon:I.oneOfType([I.object,I.array,I.string]),listItem:I.bool,pull:I.oneOf(["right","left"]),pulse:I.bool,rotation:I.oneOf([0,90,180,270]),shake:I.bool,size:I.oneOf(["2xs","xs","sm","lg","xl","2xl","1x","2x","3x","4x","5x","6x","7x","8x","9x","10x"]),spin:I.bool,spinPulse:I.bool,spinReverse:I.bool,symbol:I.oneOfType([I.bool,I.string]),title:I.string,titleId:I.string,transform:I.oneOfType([I.string,I.object]),swapOpacity:I.bool};be.defaultProps={border:!1,className:"",mask:null,maskId:null,fixedWidth:!1,inverse:!1,flip:!1,icon:null,listItem:!1,pull:null,pulse:!1,rotation:null,size:null,spin:!1,spinPulse:!1,spinReverse:!1,beat:!1,fade:!1,beatFade:!1,bounce:!1,shake:!1,symbol:!1,title:"",titleId:null,transform:null,swapOpacity:!1};var B0=Fp.bind(null,Sa.createElement),Up={prefix:"fas",iconName:"file-word",icon:[384,512,[],"f1c2","M64 0C28.7 0 0 28.7 0 64V448c0 35.3 28.7 64 64 64H320c35.3 0 64-28.7 64-64V160H256c-17.7 0-32-14.3-32-32V0H64zM256 0V128H384L256 0zM111 257.1l26.8 89.2 31.6-90.3c3.4-9.6 12.5-16.1 22.7-16.1s19.3 6.4 22.7 16.1l31.6 90.3L273 257.1c3.8-12.7 17.2-19.9 29.9-16.1s19.9 17.2 16.1 29.9l-48 160c-3 10-12 16.9-22.4 17.1s-19.8-6.2-23.2-16.1L192 336.6l-33.3 95.3c-3.4 9.8-12.8 16.3-23.2 16.1s-19.5-7.1-22.4-17.1l-48-160c-3.8-12.7 3.4-26.1 16.1-29.9s26.1 3.4 29.9 16.1z"]},W0={prefix:"fas",iconName:"language",icon:[640,512,[],"f1ab","M0 128C0 92.7 28.7 64 64 64H256h48 16H576c35.3 0 64 28.7 64 64V384c0 35.3-28.7 64-64 64H320 304 256 64c-35.3 0-64-28.7-64-64V128zm320 0V384H576V128H320zM178.3 175.9c-3.2-7.2-10.4-11.9-18.3-11.9s-15.1 4.7-18.3 11.9l-64 144c-4.5 10.1 .1 21.9 10.2 26.4s21.9-.1 26.4-10.2l8.9-20.1h73.6l8.9 20.1c4.5 10.1 16.3 14.6 26.4 10.2s14.6-16.3 10.2-26.4l-64-144zM160 233.2L179 276H141l19-42.8zM448 164c11 0 20 9 20 20v4h44 16c11 0 20 9 20 20s-9 20-20 20h-2l-1.6 4.5c-8.9 24.4-22.4 46.6-39.6 65.4c.9 .6 1.8 1.1 2.7 1.6l18.9 11.3c9.5 5.7 12.5 18 6.9 27.4s-18 12.5-27.4 6.9l-18.9-11.3c-4.5-2.7-8.8-5.5-13.1-8.5c-10.6 7.5-21.9 14-34 19.4l-3.6 1.6c-10.1 4.5-21.9-.1-26.4-10.2s.1-21.9 10.2-26.4l3.6-1.6c6.4-2.9 12.6-6.1 18.5-9.8l-12.2-12.2c-7.8-7.8-7.8-20.5 0-28.3s20.5-7.8 28.3 0l14.6 14.6 .5 .5c12.4-13.1 22.5-28.3 29.8-45H448 376c-11 0-20-9-20-20s9-20 20-20h52v-4c0-11 9-20 20-20z"]},Vp={prefix:"fas",iconName:"terminal",icon:[576,512,[],"f120","M9.4 86.6C-3.1 74.1-3.1 53.9 9.4 41.4s32.8-12.5 45.3 0l192 192c12.5 12.5 12.5 32.8 0 45.3l-192 192c-12.5 12.5-32.8 12.5-45.3 0s-12.5-32.8 0-45.3L178.7 256 9.4 86.6zM256 416H544c17.7 0 32 14.3 32 32s-14.3 32-32 32H256c-17.7 0-32-14.3-32-32s14.3-32 32-32z"]},Y0={prefix:"fas",iconName:"envelope",icon:[512,512,[128386,9993,61443],"f0e0","M48 64C21.5 64 0 85.5 0 112c0 15.1 7.1 29.3 19.2 38.4L236.8 313.6c11.4 8.5 27 8.5 38.4 0L492.8 150.4c12.1-9.1 19.2-23.3 19.2-38.4c0-26.5-21.5-48-48-48H48zM0 176V384c0 35.3 28.7 64 64 64H448c35.3 0 64-28.7 64-64V176L294.4 339.2c-22.8 17.1-54 17.1-76.8 0L0 176z"]},K0={prefix:"fas",iconName:"file",icon:[384,512,[128196,128459,61462],"f15b","M0 64C0 28.7 28.7 0 64 0H224V128c0 17.7 14.3 32 32 32H384V448c0 35.3-28.7 64-64 64H64c-35.3 0-64-28.7-64-64V64zm384 64H256V0L384 128z"]},Q0={prefix:"fas",iconName:"circle-half-stroke",icon:[512,512,[9680,"adjust"],"f042","M448 256c0-106-86-192-192-192V448c106 0 192-86 192-192zM0 256a256 256 0 1 1 512 0A256 256 0 1 1 0 256z"]},Hp={prefix:"fas",iconName:"database",icon:[448,512,[],"f1c0","M448 80v48c0 44.2-100.3 80-224 80S0 172.2 0 128V80C0 35.8 100.3 0 224 0S448 35.8 448 80zM393.2 214.7c20.8-7.4 39.9-16.9 54.8-28.6V288c0 44.2-100.3 80-224 80S0 332.2 0 288V186.1c14.9 11.8 34 21.2 54.8 28.6C99.7 230.7 159.5 240 224 240s124.3-9.3 169.2-25.3zM0 346.1c14.9 11.8 34 21.2 54.8 28.6C99.7 390.7 159.5 400 224 400s124.3-9.3 169.2-25.3c20.8-7.4 39.9-16.9 54.8-28.6V432c0 44.2-100.3 80-224 80S0 476.2 0 432V346.1z"]},G0={prefix:"fab",iconName:"square-js",icon:[448,512,["js-square"],"f3b9","M448 96c0-35.3-28.7-64-64-64H64C28.7 32 0 60.7 0 96V416c0 35.3 28.7 64 64 64H384c35.3 0 64-28.7 64-64V96zM180.9 444.9c-33.7 0-53.2-17.4-63.2-38.5L152 385.7c6.6 11.7 12.6 21.6 27.1 21.6c13.8 0 22.6-5.4 22.6-26.5V237.7h42.1V381.4c0 43.6-25.6 63.5-62.9 63.5zm85.8-43L301 382.1c9 14.7 20.8 25.6 41.5 25.6c17.4 0 28.6-8.7 28.6-20.8c0-14.4-11.4-19.5-30.7-28l-10.5-4.5c-30.4-12.9-50.5-29.2-50.5-63.5c0-31.6 24.1-55.6 61.6-55.6c26.8 0 46 9.3 59.8 33.7L368 290c-7.2-12.9-15-18-27.1-18c-12.3 0-20.1 7.8-20.1 18c0 12.6 7.8 17.7 25.9 25.6l10.5 4.5c35.8 15.3 55.9 31 55.9 66.2c0 37.8-29.8 58.6-69.7 58.6c-39.1 0-64.4-18.6-76.7-43z"]},X0=G0,J0={prefix:"fab",iconName:"java",icon:[384,512,[],"f4e4","M277.74 312.9c9.8-6.7 23.4-12.5 23.4-12.5s-38.7 7-77.2 10.2c-47.1 3.9-97.7 4.7-123.1 1.3-60.1-8 33-30.1 33-30.1s-36.1-2.4-80.6 19c-52.5 25.4 130 37 224.5 12.1zm-85.4-32.1c-19-42.7-83.1-80.2 0-145.8C296 53.2 242.84 0 242.84 0c21.5 84.5-75.6 110.1-110.7 162.6-23.9 35.9 11.7 74.4 60.2 118.2zm114.6-176.2c.1 0-175.2 43.8-91.5 140.2 24.7 28.4-6.5 54-6.5 54s62.7-32.4 33.9-72.9c-26.9-37.8-47.5-56.6 64.1-121.3zm-6.1 270.5a12.19 12.19 0 0 1-2 2.6c128.3-33.7 81.1-118.9 19.8-97.3a17.33 17.33 0 0 0-8.2 6.3 70.45 70.45 0 0 1 11-3c31-6.5 75.5 41.5-20.6 91.4zM348 437.4s14.5 11.9-15.9 21.2c-57.9 17.5-240.8 22.8-291.6.7-18.3-7.9 16-19 26.8-21.3 11.2-2.4 17.7-2 17.7-2-20.3-14.3-131.3 28.1-56.4 40.2C232.84 509.4 401 461.3 348 437.4zM124.44 396c-78.7 22 47.9 67.4 148.1 24.5a185.89 185.89 0 0 1-28.2-13.8c-44.7 8.5-65.4 9.1-106 4.5-33.5-3.8-13.9-15.2-13.9-15.2zm179.8 97.2c-78.7 14.8-175.8 13.1-233.3 3.6 0-.1 11.8 9.7 72.4 13.6 92.2 5.9 233.8-3.3 237.1-46.9 0 0-6.4 16.5-76.2 29.7zM260.64 353c-59.2 11.4-93.5 11.1-136.8 6.6-33.5-3.5-11.6-19.7-11.6-19.7-86.8 28.8 48.2 61.4 169.5 25.9a60.37 60.37 0 0 1-21.1-12.8z"]},Z0={prefix:"fab",iconName:"css3-alt",icon:[384,512,[],"f38b","M0 32l34.9 395.8L192 480l157.1-52.2L384 32H0zm313.1 80l-4.8 47.3L193 208.6l-.3.1h111.5l-12.8 146.6-98.2 28.7-98.8-29.2-6.4-73.9h48.9l3.2 38.3 52.6 13.3 54.7-15.4 3.7-61.6-166.3-.5v-.1l-.2.1-3.6-46.3L193.1 162l6.5-2.7H76.7L70.9 112h242.2z"]},q0={prefix:"fab",iconName:"git-alt",icon:[448,512,[],"f841","M439.55 236.05L244 40.45a28.87 28.87 0 0 0-40.81 0l-40.66 40.63 51.52 51.52c27.06-9.14 52.68 16.77 43.39 43.68l49.66 49.66c34.23-11.8 61.18 31 35.47 56.69-26.49 26.49-70.21-2.87-56-37.34L240.22 199v121.85c25.3 12.54 22.26 41.85 9.08 55a34.34 34.34 0 0 1-48.55 0c-17.57-17.6-11.07-46.91 11.25-56v-123c-20.8-8.51-24.6-30.74-18.64-45L142.57 101 8.45 235.14a28.86 28.86 0 0 0 0 40.81l195.61 195.6a28.86 28.86 0 0 0 40.8 0l194.69-194.69a28.86 28.86 0 0 0 0-40.81z"]},ev={prefix:"fab",iconName:"react",icon:[512,512,[],"f41b","M418.2 177.2c-5.4-1.8-10.8-3.5-16.2-5.1.9-3.7 1.7-7.4 2.5-11.1 12.3-59.6 4.2-107.5-23.1-123.3-26.3-15.1-69.2.6-112.6 38.4-4.3 3.7-8.5 7.6-12.5 11.5-2.7-2.6-5.5-5.2-8.3-7.7-45.5-40.4-91.1-57.4-118.4-41.5-26.2 15.2-34 60.3-23 116.7 1.1 5.6 2.3 11.1 3.7 16.7-6.4 1.8-12.7 3.8-18.6 5.9C38.3 196.2 0 225.4 0 255.6c0 31.2 40.8 62.5 96.3 81.5 4.5 1.5 9 3 13.6 4.3-1.5 6-2.8 11.9-4 18-10.5 55.5-2.3 99.5 23.9 114.6 27 15.6 72.4-.4 116.6-39.1 3.5-3.1 7-6.3 10.5-9.7 4.4 4.3 9 8.4 13.6 12.4 42.8 36.8 85.1 51.7 111.2 36.6 27-15.6 35.8-62.9 24.4-120.5-.9-4.4-1.9-8.9-3-13.5 3.2-.9 6.3-1.9 9.4-2.9 57.7-19.1 99.5-50 99.5-81.7 0-30.3-39.4-59.7-93.8-78.4zM282.9 92.3c37.2-32.4 71.9-45.1 87.7-36 16.9 9.7 23.4 48.9 12.8 100.4-.7 3.4-1.4 6.7-2.3 10-22.2-5-44.7-8.6-67.3-10.6-13-18.6-27.2-36.4-42.6-53.1 3.9-3.7 7.7-7.2 11.7-10.7zM167.2 307.5c5.1 8.7 10.3 17.4 15.8 25.9-15.6-1.7-31.1-4.2-46.4-7.5 4.4-14.4 9.9-29.3 16.3-44.5 4.6 8.8 9.3 17.5 14.3 26.1zm-30.3-120.3c14.4-3.2 29.7-5.8 45.6-7.8-5.3 8.3-10.5 16.8-15.4 25.4-4.9 8.5-9.7 17.2-14.2 26-6.3-14.9-11.6-29.5-16-43.6zm27.4 68.9c6.6-13.8 13.8-27.3 21.4-40.6s15.8-26.2 24.4-38.9c15-1.1 30.3-1.7 45.9-1.7s31 .6 45.9 1.7c8.5 12.6 16.6 25.5 24.3 38.7s14.9 26.7 21.7 40.4c-6.7 13.8-13.9 27.4-21.6 40.8-7.6 13.3-15.7 26.2-24.2 39-14.9 1.1-30.4 1.6-46.1 1.6s-30.9-.5-45.6-1.4c-8.7-12.7-16.9-25.7-24.6-39s-14.8-26.8-21.5-40.6zm180.6 51.2c5.1-8.8 9.9-17.7 14.6-26.7 6.4 14.5 12 29.2 16.9 44.3-15.5 3.5-31.2 6.2-47 8 5.4-8.4 10.5-17 15.5-25.6zm14.4-76.5c-4.7-8.8-9.5-17.6-14.5-26.2-4.9-8.5-10-16.9-15.3-25.2 16.1 2 31.5 4.7 45.9 8-4.6 14.8-10 29.2-16.1 43.4zM256.2 118.3c10.5 11.4 20.4 23.4 29.6 35.8-19.8-.9-39.7-.9-59.5 0 9.8-12.9 19.9-24.9 29.9-35.8zM140.2 57c16.8-9.8 54.1 4.2 93.4 39 2.5 2.2 5 4.6 7.6 7-15.5 16.7-29.8 34.5-42.9 53.1-22.6 2-45 5.5-67.2 10.4-1.3-5.1-2.4-10.3-3.5-15.5-9.4-48.4-3.2-84.9 12.6-94zm-24.5 263.6c-4.2-1.2-8.3-2.5-12.4-3.9-21.3-6.7-45.5-17.3-63-31.2-10.1-7-16.9-17.8-18.8-29.9 0-18.3 31.6-41.7 77.2-57.6 5.7-2 11.5-3.8 17.3-5.5 6.8 21.7 15 43 24.5 63.6-9.6 20.9-17.9 42.5-24.8 64.5zm116.6 98c-16.5 15.1-35.6 27.1-56.4 35.3-11.1 5.3-23.9 5.8-35.3 1.3-15.9-9.2-22.5-44.5-13.5-92 1.1-5.6 2.3-11.2 3.7-16.7 22.4 4.8 45 8.1 67.9 9.8 13.2 18.7 27.7 36.6 43.2 53.4-3.2 3.1-6.4 6.1-9.6 8.9zm24.5-24.3c-10.2-11-20.4-23.2-30.3-36.3 9.6.4 19.5.6 29.5.6 10.3 0 20.4-.2 30.4-.7-9.2 12.7-19.1 24.8-29.6 36.4zm130.7 30c-.9 12.2-6.9 23.6-16.5 31.3-15.9 9.2-49.8-2.8-86.4-34.2-4.2-3.6-8.4-7.5-12.7-11.5 15.3-16.9 29.4-34.8 42.2-53.6 22.9-1.9 45.7-5.4 68.2-10.5 1 4.1 1.9 8.2 2.7 12.2 4.9 21.6 5.7 44.1 2.5 66.3zm18.2-107.5c-2.8.9-5.6 1.8-8.5 2.6-7-21.8-15.6-43.1-25.5-63.8 9.6-20.4 17.7-41.4 24.5-62.9 5.2 1.5 10.2 3.1 15 4.7 46.6 16 79.3 39.8 79.3 58 0 19.6-34.9 44.9-84.8 61.4zm-149.7-15c25.3 0 45.8-20.5 45.8-45.8s-20.5-45.8-45.8-45.8c-25.3 0-45.8 20.5-45.8 45.8s20.5 45.8 45.8 45.8z"]},tv={prefix:"fab",iconName:"linkedin",icon:[448,512,[],"f08c","M416 32H31.9C14.3 32 0 46.5 0 64.3v383.4C0 465.5 14.3 480 31.9 480H416c17.6 0 32-14.5 32-32.3V64.3c0-17.8-14.4-32.3-32-32.3zM135.4 416H69V202.2h66.5V416zm-33.2-243c-21.3 0-38.5-17.3-38.5-38.5S80.9 96 102.2 96c21.2 0 38.5 17.3 38.5 38.5 0 21.3-17.2 38.5-38.5 38.5zm282.1 243h-66.4V312c0-24.8-.5-56.7-34.5-56.7-34.6 0-39.9 27-39.9 54.9V416h-66.4V202.2h63.7v29.2h.9c8.9-16.8 30.6-34.5 62.9-34.5 67.2 0 79.7 44.3 79.7 101.9V416z"]},Bp={prefix:"fab",iconName:"html5",icon:[384,512,[],"f13b","M0 32l34.9 395.8L191.5 480l157.6-52.2L384 32H0zm308.2 127.9H124.4l4.1 49.4h175.6l-13.6 148.4-97.9 27v.3h-1.1l-98.7-27.3-6-75.8h47.7L138 320l53.5 14.5 53.7-14.5 6-62.2H84.3L71.5 112.2h241.1l-4.4 47.7z"]},nv={prefix:"fab",iconName:"css3",icon:[512,512,[],"f13c","M480 32l-64 368-223.3 80L0 400l19.6-94.8h82l-8 40.6L210 390.2l134.1-44.4 18.8-97.1H29.5l16-82h333.7l10.5-52.7H56.3l16.3-82H480z"]},rv={prefix:"fab",iconName:"python",icon:[448,512,[],"f3e2","M439.8 200.5c-7.7-30.9-22.3-54.2-53.4-54.2h-40.1v47.4c0 36.8-31.2 67.8-66.8 67.8H172.7c-29.2 0-53.4 25-53.4 54.3v101.8c0 29 25.2 46 53.4 54.3 33.8 9.9 66.3 11.7 106.8 0 26.9-7.8 53.4-23.5 53.4-54.3v-40.7H226.2v-13.6h160.2c31.1 0 42.6-21.7 53.4-54.2 11.2-33.5 10.7-65.7 0-108.6zM286.2 404c11.1 0 20.1 9.1 20.1 20.3 0 11.3-9 20.4-20.1 20.4-11 0-20.1-9.2-20.1-20.4.1-11.3 9.1-20.3 20.1-20.3zM167.8 248.1h106.8c29.7 0 53.4-24.5 53.4-54.3V91.9c0-29-24.4-50.7-53.4-55.6-35.8-5.9-74.7-5.6-106.8.1-45.2 8-53.4 24.7-53.4 55.6v40.7h106.9v13.6h-147c-31.1 0-58.3 18.7-66.8 54.2-9.8 40.7-10.2 66.1 0 108.6 7.6 31.6 25.7 54.2 56.8 54.2H101v-48.8c0-35.3 30.5-66.4 66.8-66.4zm-6.7-142.6c-11.1 0-20.1-9.1-20.1-20.3.1-11.3 9-20.4 20.1-20.4 11 0 20.1 9.2 20.1 20.4s-9 20.3-20.1 20.3z"]},iv={prefix:"fab",iconName:"js",icon:[448,512,[],"f3b8","M0 32v448h448V32H0zm243.8 349.4c0 43.6-25.6 63.5-62.9 63.5-33.7 0-53.2-17.4-63.2-38.5l34.3-20.7c6.6 11.7 12.6 21.6 27.1 21.6 13.8 0 22.6-5.4 22.6-26.5V237.7h42.1v143.7zm99.6 63.5c-39.1 0-64.4-18.6-76.7-43l34.3-19.8c9 14.7 20.8 25.6 41.5 25.6 17.4 0 28.6-8.7 28.6-20.8 0-14.4-11.4-19.5-30.7-28l-10.5-4.5c-30.4-12.9-50.5-29.2-50.5-63.5 0-31.6 24.1-55.6 61.6-55.6 26.8 0 46 9.3 59.8 33.7L368 290c-7.2-12.9-15-18-27.1-18-12.3 0-20.1 7.8-20.1 18 0 12.6 7.8 17.7 25.9 25.6l10.5 4.5c35.8 15.3 55.9 31 55.9 66.2 0 37.8-29.8 58.6-69.7 58.6z"]},Wp={prefix:"fab",iconName:"github",icon:[496,512,[],"f09b","M165.9 397.4c0 2-2.3 3.6-5.2 3.6-3.3.3-5.6-1.3-5.6-3.6 0-2 2.3-3.6 5.2-3.6 3-.3 5.6 1.3 5.6 3.6zm-31.1-4.5c-.7 2 1.3 4.3 4.3 4.9 2.6 1 5.6 0 6.2-2s-1.3-4.3-4.3-5.2c-2.6-.7-5.5.3-6.2 2.3zm44.2-1.7c-2.9.7-4.9 2.6-4.6 4.9.3 2 2.9 3.3 5.9 2.6 2.9-.7 4.9-2.6 4.6-4.6-.3-1.9-3-3.2-5.9-2.9zM244.8 8C106.1 8 0 113.3 0 252c0 110.9 69.8 205.8 169.5 239.2 12.8 2.3 17.3-5.6 17.3-12.1 0-6.2-.3-40.4-.3-61.4 0 0-70 15-84.7-29.8 0 0-11.4-29.1-27.8-36.6 0 0-22.9-15.7 1.6-15.4 0 0 24.9 2 38.6 25.8 21.9 38.6 58.6 27.5 72.9 20.9 2.3-16 8.8-27.1 16-33.7-55.9-6.2-112.3-14.3-112.3-110.5 0-27.5 7.6-41.3 23.6-58.9-2.6-6.5-11.1-33.3 2.6-67.9 20.9-6.5 69 27 69 27 20-5.6 41.5-8.5 62.8-8.5s42.8 2.9 62.8 8.5c0 0 48.1-33.6 69-27 13.7 34.7 5.2 61.4 2.6 67.9 16 17.7 25.8 31.5 25.8 58.9 0 96.5-58.9 104.2-114.8 110.5 9.2 7.9 17 22.9 17 46.4 0 33.7-.3 75.4-.3 83.6 0 6.5 4.6 14.4 17.3 12.1C428.2 457.8 496 362.9 496 252 496 113.3 383.5 8 244.8 8zM97.2 352.9c-1.3 1-1 3.3.7 5.2 1.6 1.6 3.9 2.3 5.2 1 1.3-1 1-3.3-.7-5.2-1.6-1.6-3.9-2.3-5.2-1zm-10.8-8.1c-.7 1.3.3 2.9 2.3 3.9 1.6 1 3.6.7 4.3-.7.7-1.3-.3-2.9-2.3-3.9-2-.6-3.6-.3-4.3.7zm32.4 35.6c-1.6 1.3-1 4.3 1.3 6.2 2.3 2.3 5.2 2.6 6.5 1 1.3-1.3.7-4.3-1.3-6.2-2.2-2.3-5.2-2.6-6.5-1zm-11.4-14.7c-1.6 1-1.6 3.6 0 5.9 1.6 2.3 4.3 3.3 5.6 2.3 1.6-1.3 1.6-3.9 0-6.2-1.4-2.3-4-3.3-5.6-2z"]},av={prefix:"fab",iconName:"twitter",icon:[512,512,[],"f099","M459.37 151.716c.325 4.548.325 9.097.325 13.645 0 138.72-105.583 298.558-298.558 298.558-59.452 0-114.68-17.219-161.137-47.106 8.447.974 16.568 1.299 25.34 1.299 49.055 0 94.213-16.568 130.274-44.832-46.132-.975-84.792-31.188-98.112-72.772 6.498.974 12.995 1.624 19.818 1.624 9.421 0 18.843-1.3 27.614-3.573-48.081-9.747-84.143-51.98-84.143-102.985v-1.299c13.969 7.797 30.214 12.67 47.431 13.319-28.264-18.843-46.781-51.005-46.781-87.391 0-19.492 5.197-37.36 14.294-52.954 51.655 63.675 129.3 105.258 216.365 109.807-1.624-7.797-2.599-15.918-2.599-24.04 0-57.828 46.782-104.934 104.934-104.934 30.213 0 57.502 12.67 76.67 33.137 23.715-4.548 46.456-13.32 66.599-25.34-7.798 24.366-24.366 44.833-46.132 57.827 21.117-2.273 41.584-8.122 60.426-16.243-14.292 20.791-32.161 39.308-52.628 54.253z"]};function ov(){const{t:e,i18n:t}=Nl("global"),[n,r]=D.useState("en"),i=()=>{const a=n==="en"?"es":"en";t.changeLanguage(a),r(a)};return g.jsx("header",{id:"header",className:"header",children:g.jsxs("div",{className:"container",children:[g.jsx("h1",{children:g.jsx("a",{children:"Jesús Torres García"})}),g.jsxs("h2",{children:[e("header.desc1"),g.jsx("span",{children:e("header.desc2")})," "]}),g.jsxs("nav",{id:"navbar",className:"navbar",children:[g.jsxs("ul",{children:[g.jsx("li",{children:g.jsx("a",{className:"nav-link active",href:"#header",children:e("header.home")})}),g.jsx("li",{children:g.jsx("a",{className:"nav-link",href:"/about",children:e("header.about")})}),g.jsx("li",{children:g.jsx("a",{className:"nav-link",href:"/portfolio",children:e("header.portfolio")})}),g.jsx("li",{children:g.jsx(be,{id:"toggle-language-btn",icon:W0,onClick:i,title:n==="en"?"Switch to Spanish":"Switch to English"})}),g.jsx("li",{children:g.jsx(be,{id:"toggle-theme-btn",icon:Q0})})]}),g.jsx("i",{id:"mobilen",className:"bi bi-list mobile-nav-toggle"})]}),g.jsxs("div",{className:"social-links",children:[g.jsx("a",{href:"https://twitter.com/jetoga9",target:"_self",children:g.jsx(be,{icon:av})}),g.jsx("a",{href:"https://www.linkedin.com/in/jesustorres-garcia/",target:"_blank",rel:"noopener noreferrer",children:g.jsx(be,{icon:tv})}),g.jsx("a",{href:"mailto:jetoga99@gmail.com",target:"_blank",rel:"noopener noreferrer",children:g.jsx(be,{icon:Y0})}),g.jsx("a",{href:"https://github.com/jetoga99",target:"_blank",rel:"noopener noreferrer",children:g.jsx(be,{icon:Wp})}),g.jsx("a",{href:"/Jesus_Torres_G_CurriculumVitae.pdf",target:"_blank",rel:"noopener noreferrer",children:g.jsx(be,{icon:K0})})]})]})})}function sv(){return g.jsx("div",{id:"bg",className:"bg",children:g.jsxs("svg",{viewBox:"0 0 100 100",children:[g.jsxs("g",{className:"core",children:[g.jsx("circle",{cx:"50",cy:"50",r:"10"}),g.jsx("circle",{cx:"50",cy:"50",r:"10"})]}),g.jsxs("g",{children:[g.jsxs("g",{className:"ring",transform:"rotate(-30, 50, 50)",children:[g.jsx("ellipse",{cx:"50",cy:"50",rx:"20",ry:"50"}),g.jsx("ellipse",{cx:"50",cy:"50",rx:"20",ry:"50"}),g.jsx("ellipse",{cx:"50",cy:"50",rx:"20",ry:"50"}),g.jsx("ellipse",{cx:"50",cy:"50",rx:"20",ry:"50"})]}),g.jsxs("g",{className:"ring",transform:"rotate(30, 50, 50)",children:[g.jsx("ellipse",{cx:"50",cy:"50",rx:"20",ry:"50"}),g.jsx("ellipse",{cx:"50",cy:"50",rx:"20",ry:"50"}),g.jsx("ellipse",{cx:"50",cy:"50",rx:"20",ry:"50"}),g.jsx("ellipse",{cx:"50",cy:"50",rx:"20",ry:"50"})]}),g.jsxs("g",{className:"ring",transform:"rotate(90, 50, 50)",children:[g.jsx("ellipse",{cx:"50",cy:"50",rx:"20",ry:"50"}),g.jsx("ellipse",{cx:"50",cy:"50",rx:"20",ry:"50"}),g.jsx("ellipse",{cx:"50",cy:"50",rx:"20",ry:"50"}),g.jsx("ellipse",{cx:"50",cy:"50",rx:"20",ry:"50"})]})]}),g.jsx("filter",{id:"blur",x:"-20%",y:"-20%",width:"140%",height:"140%",children:g.jsx("feGaussianBlur",{stdDeviation:"2"})}),g.jsx("defs",{children:g.jsxs("linearGradient",{id:"gradient",x1:"0%",y1:"0%",x2:"0%",y2:"100%",children:[g.jsx("stop",{offset:"0%",style:{stopColor:"#0FFFFF",stopOpacity:1}}),g.jsx("stop",{offset:"100%",style:{stopColor:"#00FFFF",stopOpacity:1}})]})})]})})}function lv(){const{t:e,i18n:t}=Nl("global"),n=({icon:a,color:o})=>g.jsx("div",{className:"icon-box",children:g.jsx(be,{icon:a,style:{color:o}})});function r(a){return g.jsxs("div",{className:"resume-item",children:[g.jsx("h4",{children:e(a.title)}),g.jsx("h5",{children:a.duration}),g.jsx("p",{children:g.jsx("em",{children:e(a.university)})})]})}function i(a){return g.jsxs("div",{className:"resume-item",children:[g.jsx("h4",{children:e(a.title)}),g.jsxs("h5",{children:[e(a.company)," | ",e(a.location)," | ",a.duration]}),g.jsx("p",{children:e(a.description)}),g.jsx("p",{children:g.jsxs("strong",{children:[" ",e(a.technologies)]})})]})}return g.jsxs("section",{id:"about",className:"about",children:[g.jsxs("div",{className:"about-me container",children:[g.jsx("div",{className:"section-title",children:g.jsx("h2",{children:e("about.header1")})}),g.jsxs("div",{className:"row",children:[g.jsx("div",{className:"col-lg-4","data-aos":"fade-right",children:g.jsx("img",{src:"https://unavatar.io/Jetoga99",className:"img-fluid",alt:""})}),g.jsxs("div",{className:"col-lg-8 pt-4 pt-lg-0","data-aos":"fade-left",children:[g.jsx("h3",{children:e("about.title1")}),g.jsx("p",{className:"fst-italic",children:e("about.desc")}),g.jsxs("div",{className:"row",children:[g.jsx("div",{className:"col-lg-6",children:g.jsxs("ul",{children:[g.jsxs("li",{children:[g.jsx("i",{className:"bi bi-chevron-right"})," ",g.jsx("strong",{children:"Edad:"})," ",g.jsx("span",{children:"24"})]}),g.jsxs("li",{children:[g.jsx("i",{className:"bi bi-chevron-right"})," ",g.jsx("strong",{children:"Ciudad:"})," ",g.jsx("span",{children:"Ciudad de México"})]})]})}),g.jsx("div",{className:"col-lg-6",children:g.jsxs("ul",{children:[g.jsxs("li",{children:[g.jsx("i",{className:"bi bi-chevron-right"})," ",g.jsx("strong",{children:"Email:"})," ",g.jsx("span",{children:"jetoga99@gmail.com"})]}),g.jsxs("li",{children:[g.jsx("i",{className:"bi bi-chevron-right"})," ",g.jsx("strong",{children:"Freelance:"})," ",g.jsx("span",{children:"Disponible"})]})]})})]}),g.jsxs("div",{className:"interests",children:[g.jsx("div",{className:"section-title",children:g.jsx("h2",{children:"Skills"})}),g.jsxs("div",{className:"box",children:[g.jsxs("div",{className:"icon-box",children:[g.jsx("img",{src:"https://raw.githubusercontent.com/kiewic/icons/master/svg/PowerBiLogo100x100.svg",alt:"Power BI"}),g.jsx("h3",{children:"Power BI"})]}),g.jsx(n,{icon:rv,color:"#ffcc25"}),g.jsx(n,{icon:Hp,color:"#5578ff"}),g.jsx(n,{icon:q0,color:"#f84600"}),g.jsx(n,{icon:Wp,color:"#ffffff"}),g.jsx(n,{icon:X0,color:"#fbff00"}),g.jsx(n,{icon:J0,color:"#f18724"}),g.jsx(n,{icon:Vp,color:"#fdfdfd"}),g.jsx(n,{icon:Z0,color:"#264de4"}),g.jsx(n,{icon:Bp,color:"#ff2600"}),g.jsx(n,{icon:Up,color:"#0051ff"})]})]})]})]})]}),g.jsxs("div",{className:"container",children:[g.jsx("div",{className:"section-title",children:g.jsx("h2",{children:e("about.resume")})}),g.jsxs("div",{className:"row",children:[g.jsxs("div",{className:"col-lg-6",children:[g.jsx("h3",{className:"resume-title",children:e("about.education.title")}),e("about.education.degrees",{returnObjects:!0}).map((a,o)=>g.jsx(r,{title:a.degree,duration:a.years,university:a.location},o)),g.jsx("h3",{className:"resume-title",children:e("about.certifications.title")}),e("about.certifications.certs",{returnObjects:!0}).map((a,o)=>g.jsx(r,{title:a.course,duration:a.year,university:a.location},o))]}),g.jsxs("div",{className:"col-lg-6",children:[g.jsx("h3",{className:"resume-title",children:e("about.jobs.title")}),e("about.jobs.exp",{returnObjects:!0}).map((a,o)=>g.jsx(i,{title:a.title,company:a.company,location:a.location,duration:a.duration,description:a.description,technologies:a.technologies},o))]})]})]})]})}const uv=()=>{D.useEffect(()=>{const e=t=>{const n=t.target,r=document.getElementById("navbar"),i=document.getElementById("header"),a=document.getElementById("bg"),o=document.querySelectorAll("section"),s=document.querySelectorAll("#navbar .nav-link"),l=document.getElementById("mobilen");if(document.getElementById("toggle-theme-btn"),n.id==="toggle-theme-btn")document.body.classList.toggle("dark-theme");else if(n.classList.contains("mobile-nav-toggle"))r.classList.toggle("navbar-mobile"),n.classList.toggle("bi-list"),n.classList.toggle("bi-x");else if(n.classList.contains("nav-link")){t.preventDefault();const u=n.getAttribute("href");s.forEach(c=>{c.classList.remove("active")}),n.classList.add("active"),u==="#header"?(i.classList.remove("header-top"),a.classList.remove("header-top"),r.classList.remove("navbar-mobile"),l.classList.add("bi-list"),l.classList.remove("bi-x"),o.forEach(c=>{c.classList.remove("section-show")})):(i.classList.add("header-top"),a.classList.add("header-top"),o.forEach(c=>{c.id===u.substring(1)?(c.classList.add("section-show"),r.classList.remove("navbar-mobile"),l.classList.add("bi-list"),l.classList.remove("bi-x")):(c.classList.remove("section-show"),r.classList.remove("navbar-mobile"),l.classList.add("bi-list"),l.classList.remove("bi-x"))})),window.scrollTo({top:0,behavior:"smooth"})}};return document.addEventListener("click",e),()=>{document.removeEventListener("click",e)}},[])},cv=()=>{const{t:e,i18n:t}=Nl("global"),n=({imageSrc:i,title:a,text:o,icons:s,refs:l})=>g.jsx("div",{className:"col-lg-4 col-md-6 d-flex align-items-stretch mt-4",children:g.jsxs("div",{className:"card text-white",children:[g.jsx("img",{src:i,className:"card-img-top",alt:"..."}),g.jsxs("div",{className:"card-body",children:[g.jsx("h5",{className:"card-title",children:a}),g.jsx("p",{className:"card-text",children:o}),g.jsx("div",{className:"card-icons",children:s.map((u,c)=>g.jsx("a",{children:g.jsx(be,{icon:u})},c))}),g.jsx("a",{href:l,target:"_blank",className:"stretched-link",rel:"noopener noreferrer"})]})]})}),r=e("portfolio.projects",{returnObjects:!0});return g.jsx("section",{id:"portfolio",className:"services",children:g.jsxs("div",{className:"container",children:[g.jsx("div",{className:"section-title",children:g.jsx("h2",{children:e("header.portfolio")})}),g.jsx("div",{className:"row",style:{display:"flex",justifyContent:"center"},children:r.map((i,a)=>g.jsx(n,{imageSrc:i.imageSrc,title:e(i.title),text:e(i.text),icons:i.icons.map(o=>{switch(o){case"faHtml5":return Bp;case"faCss3":return nv;case"faJs":return iv;case"faReact":return ev;case"faDatabase":return Hp;case"faFileWord":return Up;case"faTerminal":return Vp;default:return null}}),refs:i.refs},a))})]})})};function fv(){return g.jsxs(Kh,{children:[g.jsx(uv,{}),g.jsx(sv,{}),g.jsx(ov,{}),g.jsx(lv,{}),g.jsx(cv,{})]})}const dv={home:"Home",about:"About Me",portfolio:"Portfolio",desc1:"Developer and ",desc2:"Data Analyst"},pv={header1:"ABOUT ME",title1:"Developer & Data Analyst",desc:"Hello! I'm Jesús, I'm a data analyst and FullStack developer. During my university studies, I developed a keen interest in programming, statistics, and machine learning techniques.",resume:"Resume",education:{title:"Education",degrees:[{degree:"Software Development Engineering",years:"2024 - 2026",location:"Virtual University of the State of Guanajuato"},{degree:"Bachelor of Physics",years:"2018 - 2023",location:"National Autonomous University of Mexico"}]},certifications:{title:"Courses and Certifications",certs:[{course:"Google Data Analytics",year:"2022",location:"Coursera"},{course:"NMA Deep Learning",year:"2022",location:"Neuromatch Academy"},{course:"Scientific Computing With Python",year:"2022",location:"freeCodeCamp"}]},jobs:{title:"Professional Experience",exp:[{title:"SR BI Analyst Marketing & Promotion",company:"Samsung",location:"CDMX",duration:"Nov 2023 - Present",description:"Maintenance and updating of dashboards in Excel, using formulas and Visual Basic. Proposals for migrating to PowerBI dashboards to enable a more innovative maintenance cycle and less susceptible to human error. Python code creation for data extraction on platforms for subsequent data transformation and analysis.",technologies:"Excel, VBA, Python, PowerBI"},{title:"Data Analyst",company:"SOPRIS Technologies, INC.",location:"CDMX",duration:"Aug - Oct 2023",description:"Maintenance and development of solutions for report creation through Plotly, Dash. Development using Git and data extraction using BigQuery for subsequent manipulation using Python. Creation and maintenance of dashboards using Looker Studio. Study and documentation of load flows in Looker.",technologies:"Python, Dash, Git, BigQuery, Looker Studio"},{title:"Social Service",company:"IIMAS, UNAM",location:"CDMX",duration:"Feb - Sep 2023",description:"Development of improvements on a website dedicated to tweet analysis with a primary focus on COVID-19, creation of forms for user creation, updating of the database through CRUD operations with MySQL, React and integration with Django. Implementation of code for the analysis of tweets stored in MongoDB.",technologies:"Python, Django, React, Postman, MySQL, MongoDB"},{title:"Data Mining and Credit Specialist",company:"Fincomún",location:"CDMX",duration:"May - Jul 2023",description:"Process automation for credit assignment through decision policies through data extraction from Credit Bureau products (Watch, Adviser). Database development for subsequent exploitation and obtaining of indicators or delivery to suppliers.",technologies:"Python, R Studio, Excel, PowerBI"},{title:"Risk Analyst",company:"Fincomún",location:"CDMX",duration:"Jan - Apr 2023",description:"Preparation and updating of daily reports for early detection of portfolio deterioration. Creation of dashboards using Python and PowerBI to observe historical data in order to detect patterns to modify risk policies. Creation of workflows in Power Automate for automatic report delivery.",technologies:"Python, R Studio, Excel, PowerBI, Power Automate"},{title:"Risk Intern",company:"Fincomún",location:"CDMX",duration:"Oct 2022 - In 2023",description:"Workflow design for process automation in Excel through Python with the objective of obtaining metrics. Data cleaning and transformation using Python and R Studio. Creation of reports for management presentation.",technologies:"Python, R Studio, Excel"},{title:"Freelance Web Development",company:"Generation",location:"CDMX",duration:"Aug - Oct 2022",description:"Layout and design of a website using CSS, HTML and Figma, interaction development with the page using JavaScript and back-end development by designing a database with MySQL and integration with Java.",technologies:"CSS, HTML, Figma, JavaScript, MySQL, Java, Git, Github"}]}},mv={projects:[{imageSrc:"./Miopers.png",title:"MiOpERS",text:"Improvements on a website for COVID-19 tweet analysis, including user forms and CRUD operations with MySQL in Django. Integration of React and MongoDB for tweet analysis.",icons:["faReact","faJs","faDatabase"],refs:"http://www.miopers.unam.mx/covid/"}]},hv={header:dv,about:pv,portfolio:mv},gv={home:"Inicio",about:"Acerca de Mí",portfolio:"Portafolio",desc1:"Desarrollador y ",desc2:"Analista de Datos"},vv={header1:"ACERCA DE MÍ",title1:"Desarrollador & Analista de Datos",desc:"¡Hola! Soy Jesús, soy un analista de datos y desarrollador FullStack. En mis estudios universitarios desarrollé un gran interés por la programación, estadística y técnicas de machine learning.",resume:"Resumen",education:{title:"Educación",degrees:[{degree:"Ingeniería en Desarrollo de Software",years:"2024 - 2026",location:"Universidad Virtual del Estado de Guanajuato"},{degree:"Licenciatura en Física",years:"2018 - 2023",location:"Universidad Nacional Autónoma de México"}]},certifications:{title:"Cursos y Certificaciones",certs:[{course:"Analisis de Datos de Google",year:"2022",location:"Coursera"},{course:"NMA Deep Learning",year:"2022",location:"Neuromatch Academy"},{course:"Scientific Computing With Python",year:"2022",location:"freeCodeCamp"}]},jobs:{title:"Experiencia Profesional",exp:[{title:"ANALISTA BI SR Marketing & Promotion",company:"Samsung",location:"CDMX",duration:"Nov 2023 - Presente",description:"Mantenimiento y actualización de dashboards en Excel, mediante el uso de fórmulas y Visual Basic. Propuestas de migración a dashboards en PowerBI que permitieran un ciclo de mantenimiento más innovador y menos susceptible al error humano. Creación de código en Python para la extracción de datos en plataformas para posterior transformación y análisis de los datos.",technologies:"Excel, VBA, Python, PowerBI"},{title:"ANALISTA DE DATOS",company:"SOPRIS Technologies, INC.",location:"CDMX",duration:"Ago - Oct 2023",description:"Mantenimiento y desarrollo de soluciones para creación de reportes a través de Plotly, Dash. Desarrollo mediante Git y extracción de datos mediante BigQuery para su posterior manipulación mediante Python. Creación y mantenimiento de dashboards mediante Looker Studio. Estudio y documentación de flujos de carga en Looker.",technologies:"Python, Dash, Git, BigQuery, Looker Studio"},{title:"SERVICIO SOCIAL",company:"IIMAS, UNAM",location:"CDMX",duration:"Feb - Sep 2023",description:"Desarrollo de mejoras en página web dedicada al análisis de tweets con enfoque principal al COVID-19, creación de formularios para la creación de usuarios, actualización de base de datos mediante operaciones CRUD con MySQL, React e integración con Django. Implementación de código para el análisis de tweets almacenados en MongoDB.",technologies:"Python, Django, React, Postman, MySQL, MongoDB"},{title:"ESPECIALISTA EN MINERÍA DE DATOS Y CRÉDITO",company:"Fincomún",location:"CDMX",duration:"May - Jul 2023",description:"Automatización de procesos para la asignación de créditos mediante políticas de decisión a través de la extracción de datos de productos de Buró de Crédito (Watch, Adviser). Elaboración de bases de datos para su posterior explotación y obtención de indicadores o entrega a proveedores.",technologies:"Python, R Studio, Excel, PowerBI"},{title:"ANALISTA DE RIESGOS",company:"Fincomún",location:"CDMX",duration:"Ene - Abr 2023",description:"Elaboración y actualización de reportes diarios para la detección temprana del deterioro de la cartera. Creación de dashboards mediante Python y PowerBI para observar datos históricos con el fin de detectar patrones para modificar políticas de riesgo. Creación de flujos de trabajo en Power Automate para el envío automático de reportes.",technologies:"Python, R Studio, Excel, PowerBI, Power Automate"},{title:"BECARIO DE RIESGOS",company:"Fincomún",location:"CDMX",duration:"Oct 2022 - En 2023",description:"Diseño de flujos de trabajo para la automatización de procesos en Excel a través de Python con el objetivo de obtención de métricas. Limpieza y transformación de datos mediante Python y R Studio. Creación de reportes para presentar a gerencia.",technologies:"Python, R Studio, Excel"},{title:"DESARROLLO WEB FREELANCE",company:"Generation",location:"CDMX",duration:"Ago - Oct 2022",description:"Maquetación y diseño de página web haciendo uso de CSS, HTML y Figma, desarrollo de interacción con la página mediante JavaScript y desarrollo de back-end al diseñar base de datos con MySQL e integración con Java.",technologies:"CSS, HTML, Figma, JavaScript, MySQL, Java, Git, Github"}]}},yv={projects:[{imageSrc:"./Miopers.png",title:"MiOpERS",text:"Mejoras en página web para análisis de tweets sobre COVID-19, incluyendo formularios de usuario y operaciones CRUD con MySQL en Django. Integración de React y MongoDB para análisis de tweets.",icons:["faReact","faJs","faDatabase"],refs:"http://www.miopers.unam.mx/covid/"}]},xv={header:gv,about:vv,portfolio:yv},wv={type:"logger",log(e){this.output("log",e)},warn(e){this.output("warn",e)},error(e){this.output("error",e)},output(e,t){console&&console[e]&&console[e].apply(console,t)}};class ga{constructor(t){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};this.init(t,n)}init(t){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};this.prefix=n.prefix||"i18next:",this.logger=t||wv,this.options=n,this.debug=n.debug}log(){for(var t=arguments.length,n=new Array(t),r=0;r{this.observers[r]||(this.observers[r]=new Map);const i=this.observers[r].get(n)||0;this.observers[r].set(n,i+1)}),this}off(t,n){if(this.observers[t]){if(!n){delete this.observers[t];return}this.observers[t].delete(n)}}emit(t){for(var n=arguments.length,r=new Array(n>1?n-1:0),i=1;i{let[s,l]=o;for(let u=0;u{let[s,l]=o;for(let u=0;u{e=r,t=i});return n.resolve=e,n.reject=t,n}function Rc(e){return e==null?"":""+e}function Sv(e,t,n){e.forEach(r=>{t[r]&&(n[r]=t[r])})}const kv=/###/g;function wr(e,t,n){function r(s){return s&&s.indexOf("###")>-1?s.replace(kv,"."):s}function i(){return!e||typeof e=="string"}const a=typeof t!="string"?t:t.split(".");let o=0;for(;o":">",'"':""","'":"'","/":"/"};function Pv(e){return typeof e=="string"?e.replace(/[&<>"'\/]/g,t=>bv[t]):e}class Nv{constructor(t){this.capacity=t,this.regExpMap=new Map,this.regExpQueue=[]}getRegExp(t){const n=this.regExpMap.get(t);if(n!==void 0)return n;const r=new RegExp(t);return this.regExpQueue.length===this.capacity&&this.regExpMap.delete(this.regExpQueue.shift()),this.regExpMap.set(t,r),this.regExpQueue.push(t),r}}const Lv=[" ",",","?","!",";"],Ov=new Nv(20);function jv(e,t,n){t=t||"",n=n||"";const r=Lv.filter(o=>t.indexOf(o)<0&&n.indexOf(o)<0);if(r.length===0)return!0;const i=Ov.getRegExp(`(${r.map(o=>o==="?"?"\\?":o).join("|")})`);let a=!i.test(e);if(!a){const o=e.indexOf(n);o>0&&!i.test(e.substring(0,o))&&(a=!0)}return a}function As(e,t){let n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:".";if(!e)return;if(e[t])return e[t];const r=t.split(n);let i=e;for(let a=0;a-1&&l0?e.replace("_","-"):e}class Tc extends Ua{constructor(t){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{ns:["translation"],defaultNS:"translation"};super(),this.data=t||{},this.options=n,this.options.keySeparator===void 0&&(this.options.keySeparator="."),this.options.ignoreJSONStructure===void 0&&(this.options.ignoreJSONStructure=!0)}addNamespaces(t){this.options.ns.indexOf(t)<0&&this.options.ns.push(t)}removeNamespaces(t){const n=this.options.ns.indexOf(t);n>-1&&this.options.ns.splice(n,1)}getResource(t,n,r){let i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:{};const a=i.keySeparator!==void 0?i.keySeparator:this.options.keySeparator,o=i.ignoreJSONStructure!==void 0?i.ignoreJSONStructure:this.options.ignoreJSONStructure;let s;t.indexOf(".")>-1?s=t.split("."):(s=[t,n],r&&(Array.isArray(r)?s.push(...r):typeof r=="string"&&a?s.push(...r.split(a)):s.push(r)));const l=va(this.data,s);return!l&&!n&&!r&&t.indexOf(".")>-1&&(t=s[0],n=s[1],r=s.slice(2).join(".")),l||!o||typeof r!="string"?l:As(this.data&&this.data[t]&&this.data[t][n],r,a)}addResource(t,n,r,i){let a=arguments.length>4&&arguments[4]!==void 0?arguments[4]:{silent:!1};const o=a.keySeparator!==void 0?a.keySeparator:this.options.keySeparator;let s=[t,n];r&&(s=s.concat(o?r.split(o):r)),t.indexOf(".")>-1&&(s=t.split("."),i=n,n=s[1]),this.addNamespaces(n),Ac(this.data,s,i),a.silent||this.emit("added",t,n,r,i)}addResources(t,n,r){let i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:{silent:!1};for(const a in r)(typeof r[a]=="string"||Object.prototype.toString.apply(r[a])==="[object Array]")&&this.addResource(t,n,a,r[a],{silent:!0});i.silent||this.emit("added",t,n,r)}addResourceBundle(t,n,r,i,a){let o=arguments.length>5&&arguments[5]!==void 0?arguments[5]:{silent:!1,skipCopy:!1},s=[t,n];t.indexOf(".")>-1&&(s=t.split("."),i=r,r=n,n=s[1]),this.addNamespaces(n);let l=va(this.data,s)||{};o.skipCopy||(r=JSON.parse(JSON.stringify(r))),i?Yp(l,r,a):l={...l,...r},Ac(this.data,s,l),o.silent||this.emit("added",t,n,r)}removeResourceBundle(t,n){this.hasResourceBundle(t,n)&&delete this.data[t][n],this.removeNamespaces(n),this.emit("removed",t,n)}hasResourceBundle(t,n){return this.getResource(t,n)!==void 0}getResourceBundle(t,n){return n||(n=this.options.defaultNS),this.options.compatibilityAPI==="v1"?{...this.getResource(t,n)}:this.getResource(t,n)}getDataByLanguage(t){return this.data[t]}hasLanguageSomeTranslations(t){const n=this.getDataByLanguage(t);return!!(n&&Object.keys(n)||[]).find(i=>n[i]&&Object.keys(n[i]).length>0)}toJSON(){return this.data}}var Kp={processors:{},addPostProcessor(e){this.processors[e.name]=e},handle(e,t,n,r,i){return e.forEach(a=>{this.processors[a]&&(t=this.processors[a].process(t,n,r,i))}),t}};const Ic={};class xa extends Ua{constructor(t){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};super(),Sv(["resourceStore","languageUtils","pluralResolver","interpolator","backendConnector","i18nFormat","utils"],t,this),this.options=n,this.options.keySeparator===void 0&&(this.options.keySeparator="."),this.logger=Xe.create("translator")}changeLanguage(t){t&&(this.language=t)}exists(t){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{interpolation:{}};if(t==null)return!1;const r=this.resolve(t,n);return r&&r.res!==void 0}extractFromKey(t,n){let r=n.nsSeparator!==void 0?n.nsSeparator:this.options.nsSeparator;r===void 0&&(r=":");const i=n.keySeparator!==void 0?n.keySeparator:this.options.keySeparator;let a=n.ns||this.options.defaultNS||[];const o=r&&t.indexOf(r)>-1,s=!this.options.userDefinedKeySeparator&&!n.keySeparator&&!this.options.userDefinedNsSeparator&&!n.nsSeparator&&!jv(t,r,i);if(o&&!s){const l=t.match(this.interpolator.nestingRegexp);if(l&&l.length>0)return{key:t,namespaces:a};const u=t.split(r);(r!==i||r===i&&this.options.ns.indexOf(u[0])>-1)&&(a=u.shift()),t=u.join(i)}return typeof a=="string"&&(a=[a]),{key:t,namespaces:a}}translate(t,n,r){if(typeof n!="object"&&this.options.overloadTranslationOptionHandler&&(n=this.options.overloadTranslationOptionHandler(arguments)),typeof n=="object"&&(n={...n}),n||(n={}),t==null)return"";Array.isArray(t)||(t=[String(t)]);const i=n.returnDetails!==void 0?n.returnDetails:this.options.returnDetails,a=n.keySeparator!==void 0?n.keySeparator:this.options.keySeparator,{key:o,namespaces:s}=this.extractFromKey(t[t.length-1],n),l=s[s.length-1],u=n.lng||this.language,c=n.appendNamespaceToCIMode||this.options.appendNamespaceToCIMode;if(u&&u.toLowerCase()==="cimode"){if(c){const y=n.nsSeparator||this.options.nsSeparator;return i?{res:`${l}${y}${o}`,usedKey:o,exactUsedKey:o,usedLng:u,usedNS:l,usedParams:this.getUsedParamsDetails(n)}:`${l}${y}${o}`}return i?{res:o,usedKey:o,exactUsedKey:o,usedLng:u,usedNS:l,usedParams:this.getUsedParamsDetails(n)}:o}const p=this.resolve(t,n);let f=p&&p.res;const v=p&&p.usedKey||o,x=p&&p.exactUsedKey||o,w=Object.prototype.toString.apply(f),k=["[object Number]","[object Function]","[object RegExp]"],m=n.joinArrays!==void 0?n.joinArrays:this.options.joinArrays,d=!this.i18nFormat||this.i18nFormat.handleAsObject;if(d&&f&&(typeof f!="string"&&typeof f!="boolean"&&typeof f!="number")&&k.indexOf(w)<0&&!(typeof m=="string"&&w==="[object Array]")){if(!n.returnObjects&&!this.options.returnObjects){this.options.returnedObjectHandler||this.logger.warn("accessing an object - but returnObjects options is not enabled!");const y=this.options.returnedObjectHandler?this.options.returnedObjectHandler(v,f,{...n,ns:s}):`key '${o} (${this.language})' returned an object instead of string.`;return i?(p.res=y,p.usedParams=this.getUsedParamsDetails(n),p):y}if(a){const y=w==="[object Array]",S=y?[]:{},b=y?x:v;for(const E in f)if(Object.prototype.hasOwnProperty.call(f,E)){const O=`${b}${a}${E}`;S[E]=this.translate(O,{...n,joinArrays:!1,ns:s}),S[E]===O&&(S[E]=f[E])}f=S}}else if(d&&typeof m=="string"&&w==="[object Array]")f=f.join(m),f&&(f=this.extendTranslation(f,t,n,r));else{let y=!1,S=!1;const b=n.count!==void 0&&typeof n.count!="string",E=xa.hasDefaultValue(n),O=b?this.pluralResolver.getSuffix(u,n.count,n):"",M=n.ordinal&&b?this.pluralResolver.getSuffix(u,n.count,{ordinal:!1}):"",T=b&&!n.ordinal&&n.count===0&&this.pluralResolver.shouldUseIntlApi(),oe=T&&n[`defaultValue${this.options.pluralSeparator}zero`]||n[`defaultValue${O}`]||n[`defaultValue${M}`]||n.defaultValue;!this.isValidLookup(f)&&E&&(y=!0,f=oe),this.isValidLookup(f)||(S=!0,f=o);const $t=(n.missingKeyNoValueFallbackToKey||this.options.missingKeyNoValueFallbackToKey)&&S?void 0:f,pt=E&&oe!==f&&this.options.updateMissing;if(S||y||pt){if(this.logger.log(pt?"updateKey":"missingKey",u,l,o,pt?oe:f),a){const P=this.resolve(o,{...n,keySeparator:!1});P&&P.res&&this.logger.warn("Seems the loaded translations were in flat JSON format instead of nested. Either set keySeparator: false on init or make sure your translations are published in nested format.")}let Ut=[];const mt=this.languageUtils.getFallbackCodes(this.options.fallbackLng,n.lng||this.language);if(this.options.saveMissingTo==="fallback"&&mt&&mt[0])for(let P=0;P{const W=E&&A!==f?A:$t;this.options.missingKeyHandler?this.options.missingKeyHandler(P,l,R,W,pt,n):this.backendConnector&&this.backendConnector.saveMissing&&this.backendConnector.saveMissing(P,l,R,W,pt,n),this.emit("missingKey",P,l,R,f)};this.options.saveMissing&&(this.options.saveMissingPlurals&&b?Ut.forEach(P=>{const R=this.pluralResolver.getSuffixes(P,n);T&&n[`defaultValue${this.options.pluralSeparator}zero`]&&R.indexOf(`${this.options.pluralSeparator}zero`)<0&&R.push(`${this.options.pluralSeparator}zero`),R.forEach(A=>{fn([P],o+A,n[`defaultValue${A}`]||oe)})}):fn(Ut,o,oe))}f=this.extendTranslation(f,t,n,p,r),S&&f===o&&this.options.appendNamespaceToMissingKey&&(f=`${l}:${o}`),(S||y)&&this.options.parseMissingKeyHandler&&(this.options.compatibilityAPI!=="v1"?f=this.options.parseMissingKeyHandler(this.options.appendNamespaceToMissingKey?`${l}:${o}`:o,y?f:void 0):f=this.options.parseMissingKeyHandler(f))}return i?(p.res=f,p.usedParams=this.getUsedParamsDetails(n),p):f}extendTranslation(t,n,r,i,a){var o=this;if(this.i18nFormat&&this.i18nFormat.parse)t=this.i18nFormat.parse(t,{...this.options.interpolation.defaultVariables,...r},r.lng||this.language||i.usedLng,i.usedNS,i.usedKey,{resolved:i});else if(!r.skipInterpolation){r.interpolation&&this.interpolator.init({...r,interpolation:{...this.options.interpolation,...r.interpolation}});const u=typeof t=="string"&&(r&&r.interpolation&&r.interpolation.skipOnVariables!==void 0?r.interpolation.skipOnVariables:this.options.interpolation.skipOnVariables);let c;if(u){const f=t.match(this.interpolator.nestingRegexp);c=f&&f.length}let p=r.replace&&typeof r.replace!="string"?r.replace:r;if(this.options.interpolation.defaultVariables&&(p={...this.options.interpolation.defaultVariables,...p}),t=this.interpolator.interpolate(t,p,r.lng||this.language,r),u){const f=t.match(this.interpolator.nestingRegexp),v=f&&f.length;c1&&arguments[1]!==void 0?arguments[1]:{},r,i,a,o,s;return typeof t=="string"&&(t=[t]),t.forEach(l=>{if(this.isValidLookup(r))return;const u=this.extractFromKey(l,n),c=u.key;i=c;let p=u.namespaces;this.options.fallbackNS&&(p=p.concat(this.options.fallbackNS));const f=n.count!==void 0&&typeof n.count!="string",v=f&&!n.ordinal&&n.count===0&&this.pluralResolver.shouldUseIntlApi(),x=n.context!==void 0&&(typeof n.context=="string"||typeof n.context=="number")&&n.context!=="",w=n.lngs?n.lngs:this.languageUtils.toResolveHierarchy(n.lng||this.language,n.fallbackLng);p.forEach(k=>{this.isValidLookup(r)||(s=k,!Ic[`${w[0]}-${k}`]&&this.utils&&this.utils.hasLoadedNamespace&&!this.utils.hasLoadedNamespace(s)&&(Ic[`${w[0]}-${k}`]=!0,this.logger.warn(`key "${i}" for languages "${w.join(", ")}" won't get resolved as namespace "${s}" was not yet loaded`,"This means something IS WRONG in your setup. You access the t function before i18next.init / i18next.loadNamespace / i18next.changeLanguage was done. Wait for the callback or Promise to resolve before accessing it!!!")),w.forEach(m=>{if(this.isValidLookup(r))return;o=m;const d=[c];if(this.i18nFormat&&this.i18nFormat.addLookupKeys)this.i18nFormat.addLookupKeys(d,c,m,k,n);else{let y;f&&(y=this.pluralResolver.getSuffix(m,n.count,n));const S=`${this.options.pluralSeparator}zero`,b=`${this.options.pluralSeparator}ordinal${this.options.pluralSeparator}`;if(f&&(d.push(c+y),n.ordinal&&y.indexOf(b)===0&&d.push(c+y.replace(b,this.options.pluralSeparator)),v&&d.push(c+S)),x){const E=`${c}${this.options.contextSeparator}${n.context}`;d.push(E),f&&(d.push(E+y),n.ordinal&&y.indexOf(b)===0&&d.push(E+y.replace(b,this.options.pluralSeparator)),v&&d.push(E+S))}}let h;for(;h=d.pop();)this.isValidLookup(r)||(a=h,r=this.getResource(m,k,h,n))}))})}),{res:r,usedKey:i,exactUsedKey:a,usedLng:o,usedNS:s}}isValidLookup(t){return t!==void 0&&!(!this.options.returnNull&&t===null)&&!(!this.options.returnEmptyString&&t==="")}getResource(t,n,r){let i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:{};return this.i18nFormat&&this.i18nFormat.getResource?this.i18nFormat.getResource(t,n,r,i):this.resourceStore.getResource(t,n,r,i)}getUsedParamsDetails(){let t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};const n=["defaultValue","ordinal","context","replace","lng","lngs","fallbackLng","ns","keySeparator","nsSeparator","returnObjects","returnDetails","joinArrays","postProcess","interpolation"],r=t.replace&&typeof t.replace!="string";let i=r?t.replace:t;if(r&&typeof t.count<"u"&&(i.count=t.count),this.options.interpolation.defaultVariables&&(i={...this.options.interpolation.defaultVariables,...i}),!r){i={...i};for(const a of n)delete i[a]}return i}static hasDefaultValue(t){const n="defaultValue";for(const r in t)if(Object.prototype.hasOwnProperty.call(t,r)&&n===r.substring(0,n.length)&&t[r]!==void 0)return!0;return!1}}function So(e){return e.charAt(0).toUpperCase()+e.slice(1)}class _c{constructor(t){this.options=t,this.supportedLngs=this.options.supportedLngs||!1,this.logger=Xe.create("languageUtils")}getScriptPartFromCode(t){if(t=ya(t),!t||t.indexOf("-")<0)return null;const n=t.split("-");return n.length===2||(n.pop(),n[n.length-1].toLowerCase()==="x")?null:this.formatLanguageCode(n.join("-"))}getLanguagePartFromCode(t){if(t=ya(t),!t||t.indexOf("-")<0)return t;const n=t.split("-");return this.formatLanguageCode(n[0])}formatLanguageCode(t){if(typeof t=="string"&&t.indexOf("-")>-1){const n=["hans","hant","latn","cyrl","cans","mong","arab"];let r=t.split("-");return this.options.lowerCaseLng?r=r.map(i=>i.toLowerCase()):r.length===2?(r[0]=r[0].toLowerCase(),r[1]=r[1].toUpperCase(),n.indexOf(r[1].toLowerCase())>-1&&(r[1]=So(r[1].toLowerCase()))):r.length===3&&(r[0]=r[0].toLowerCase(),r[1].length===2&&(r[1]=r[1].toUpperCase()),r[0]!=="sgn"&&r[2].length===2&&(r[2]=r[2].toUpperCase()),n.indexOf(r[1].toLowerCase())>-1&&(r[1]=So(r[1].toLowerCase())),n.indexOf(r[2].toLowerCase())>-1&&(r[2]=So(r[2].toLowerCase()))),r.join("-")}return this.options.cleanCode||this.options.lowerCaseLng?t.toLowerCase():t}isSupportedCode(t){return(this.options.load==="languageOnly"||this.options.nonExplicitSupportedLngs)&&(t=this.getLanguagePartFromCode(t)),!this.supportedLngs||!this.supportedLngs.length||this.supportedLngs.indexOf(t)>-1}getBestMatchFromCodes(t){if(!t)return null;let n;return t.forEach(r=>{if(n)return;const i=this.formatLanguageCode(r);(!this.options.supportedLngs||this.isSupportedCode(i))&&(n=i)}),!n&&this.options.supportedLngs&&t.forEach(r=>{if(n)return;const i=this.getLanguagePartFromCode(r);if(this.isSupportedCode(i))return n=i;n=this.options.supportedLngs.find(a=>{if(a===i)return a;if(!(a.indexOf("-")<0&&i.indexOf("-")<0)&&(a.indexOf("-")>0&&i.indexOf("-")<0&&a.substring(0,a.indexOf("-"))===i||a.indexOf(i)===0&&i.length>1))return a})}),n||(n=this.getFallbackCodes(this.options.fallbackLng)[0]),n}getFallbackCodes(t,n){if(!t)return[];if(typeof t=="function"&&(t=t(n)),typeof t=="string"&&(t=[t]),Object.prototype.toString.apply(t)==="[object Array]")return t;if(!n)return t.default||[];let r=t[n];return r||(r=t[this.getScriptPartFromCode(n)]),r||(r=t[this.formatLanguageCode(n)]),r||(r=t[this.getLanguagePartFromCode(n)]),r||(r=t.default),r||[]}toResolveHierarchy(t,n){const r=this.getFallbackCodes(n||this.options.fallbackLng||[],t),i=[],a=o=>{o&&(this.isSupportedCode(o)?i.push(o):this.logger.warn(`rejecting language code not found in supportedLngs: ${o}`))};return typeof t=="string"&&(t.indexOf("-")>-1||t.indexOf("_")>-1)?(this.options.load!=="languageOnly"&&a(this.formatLanguageCode(t)),this.options.load!=="languageOnly"&&this.options.load!=="currentOnly"&&a(this.getScriptPartFromCode(t)),this.options.load!=="currentOnly"&&a(this.getLanguagePartFromCode(t))):typeof t=="string"&&a(this.formatLanguageCode(t)),r.forEach(o=>{i.indexOf(o)<0&&a(this.formatLanguageCode(o))}),i}}let Rv=[{lngs:["ach","ak","am","arn","br","fil","gun","ln","mfe","mg","mi","oc","pt","pt-BR","tg","tl","ti","tr","uz","wa"],nr:[1,2],fc:1},{lngs:["af","an","ast","az","bg","bn","ca","da","de","dev","el","en","eo","es","et","eu","fi","fo","fur","fy","gl","gu","ha","hi","hu","hy","ia","it","kk","kn","ku","lb","mai","ml","mn","mr","nah","nap","nb","ne","nl","nn","no","nso","pa","pap","pms","ps","pt-PT","rm","sco","se","si","so","son","sq","sv","sw","ta","te","tk","ur","yo"],nr:[1,2],fc:2},{lngs:["ay","bo","cgg","fa","ht","id","ja","jbo","ka","km","ko","ky","lo","ms","sah","su","th","tt","ug","vi","wo","zh"],nr:[1],fc:3},{lngs:["be","bs","cnr","dz","hr","ru","sr","uk"],nr:[1,2,5],fc:4},{lngs:["ar"],nr:[0,1,2,3,11,100],fc:5},{lngs:["cs","sk"],nr:[1,2,5],fc:6},{lngs:["csb","pl"],nr:[1,2,5],fc:7},{lngs:["cy"],nr:[1,2,3,8],fc:8},{lngs:["fr"],nr:[1,2],fc:9},{lngs:["ga"],nr:[1,2,3,7,11],fc:10},{lngs:["gd"],nr:[1,2,3,20],fc:11},{lngs:["is"],nr:[1,2],fc:12},{lngs:["jv"],nr:[0,1],fc:13},{lngs:["kw"],nr:[1,2,3,4],fc:14},{lngs:["lt"],nr:[1,2,10],fc:15},{lngs:["lv"],nr:[1,2,0],fc:16},{lngs:["mk"],nr:[1,2],fc:17},{lngs:["mnk"],nr:[0,1,2],fc:18},{lngs:["mt"],nr:[1,2,11,20],fc:19},{lngs:["or"],nr:[2,1],fc:2},{lngs:["ro"],nr:[1,2,20],fc:20},{lngs:["sl"],nr:[5,1,2,3],fc:21},{lngs:["he","iw"],nr:[1,2,20,21],fc:22}],Av={1:function(e){return+(e>1)},2:function(e){return+(e!=1)},3:function(e){return 0},4:function(e){return e%10==1&&e%100!=11?0:e%10>=2&&e%10<=4&&(e%100<10||e%100>=20)?1:2},5:function(e){return e==0?0:e==1?1:e==2?2:e%100>=3&&e%100<=10?3:e%100>=11?4:5},6:function(e){return e==1?0:e>=2&&e<=4?1:2},7:function(e){return e==1?0:e%10>=2&&e%10<=4&&(e%100<10||e%100>=20)?1:2},8:function(e){return e==1?0:e==2?1:e!=8&&e!=11?2:3},9:function(e){return+(e>=2)},10:function(e){return e==1?0:e==2?1:e<7?2:e<11?3:4},11:function(e){return e==1||e==11?0:e==2||e==12?1:e>2&&e<20?2:3},12:function(e){return+(e%10!=1||e%100==11)},13:function(e){return+(e!==0)},14:function(e){return e==1?0:e==2?1:e==3?2:3},15:function(e){return e%10==1&&e%100!=11?0:e%10>=2&&(e%100<10||e%100>=20)?1:2},16:function(e){return e%10==1&&e%100!=11?0:e!==0?1:2},17:function(e){return e==1||e%10==1&&e%100!=11?0:1},18:function(e){return e==0?0:e==1?1:2},19:function(e){return e==1?0:e==0||e%100>1&&e%100<11?1:e%100>10&&e%100<20?2:3},20:function(e){return e==1?0:e==0||e%100>0&&e%100<20?1:2},21:function(e){return e%100==1?1:e%100==2?2:e%100==3||e%100==4?3:0},22:function(e){return e==1?0:e==2?1:(e<0||e>10)&&e%10==0?2:3}};const Tv=["v1","v2","v3"],Iv=["v4"],zc={zero:0,one:1,two:2,few:3,many:4,other:5};function _v(){const e={};return Rv.forEach(t=>{t.lngs.forEach(n=>{e[n]={numbers:t.nr,plurals:Av[t.fc]}})}),e}class zv{constructor(t){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};this.languageUtils=t,this.options=n,this.logger=Xe.create("pluralResolver"),(!this.options.compatibilityJSON||Iv.includes(this.options.compatibilityJSON))&&(typeof Intl>"u"||!Intl.PluralRules)&&(this.options.compatibilityJSON="v3",this.logger.error("Your environment seems not to be Intl API compatible, use an Intl.PluralRules polyfill. Will fallback to the compatibilityJSON v3 format handling.")),this.rules=_v()}addRule(t,n){this.rules[t]=n}getRule(t){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};if(this.shouldUseIntlApi())try{return new Intl.PluralRules(ya(t==="dev"?"en":t),{type:n.ordinal?"ordinal":"cardinal"})}catch{return}return this.rules[t]||this.rules[this.languageUtils.getLanguagePartFromCode(t)]}needsPlural(t){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};const r=this.getRule(t,n);return this.shouldUseIntlApi()?r&&r.resolvedOptions().pluralCategories.length>1:r&&r.numbers.length>1}getPluralFormsOfKey(t,n){let r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};return this.getSuffixes(t,r).map(i=>`${n}${i}`)}getSuffixes(t){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};const r=this.getRule(t,n);return r?this.shouldUseIntlApi()?r.resolvedOptions().pluralCategories.sort((i,a)=>zc[i]-zc[a]).map(i=>`${this.options.prepend}${n.ordinal?`ordinal${this.options.prepend}`:""}${i}`):r.numbers.map(i=>this.getSuffix(t,i,n)):[]}getSuffix(t,n){let r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};const i=this.getRule(t,r);return i?this.shouldUseIntlApi()?`${this.options.prepend}${r.ordinal?`ordinal${this.options.prepend}`:""}${i.select(n)}`:this.getSuffixRetroCompatible(i,n):(this.logger.warn(`no plural rule found for: ${t}`),"")}getSuffixRetroCompatible(t,n){const r=t.noAbs?t.plurals(n):t.plurals(Math.abs(n));let i=t.numbers[r];this.options.simplifyPluralSuffix&&t.numbers.length===2&&t.numbers[0]===1&&(i===2?i="plural":i===1&&(i=""));const a=()=>this.options.prepend&&i.toString()?this.options.prepend+i.toString():i.toString();return this.options.compatibilityJSON==="v1"?i===1?"":typeof i=="number"?`_plural_${i.toString()}`:a():this.options.compatibilityJSON==="v2"||this.options.simplifyPluralSuffix&&t.numbers.length===2&&t.numbers[0]===1?a():this.options.prepend&&r.toString()?this.options.prepend+r.toString():r.toString()}shouldUseIntlApi(){return!Tv.includes(this.options.compatibilityJSON)}}function Mc(e,t,n){let r=arguments.length>3&&arguments[3]!==void 0?arguments[3]:".",i=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!0,a=Ev(e,t,n);return!a&&i&&typeof n=="string"&&(a=As(e,n,r),a===void 0&&(a=As(t,n,r))),a}class Mv{constructor(){let t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};this.logger=Xe.create("interpolator"),this.options=t,this.format=t.interpolation&&t.interpolation.format||(n=>n),this.init(t)}init(){let t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};t.interpolation||(t.interpolation={escapeValue:!0});const{escape:n,escapeValue:r,useRawValueToEscape:i,prefix:a,prefixEscaped:o,suffix:s,suffixEscaped:l,formatSeparator:u,unescapeSuffix:c,unescapePrefix:p,nestingPrefix:f,nestingPrefixEscaped:v,nestingSuffix:x,nestingSuffixEscaped:w,nestingOptionsSeparator:k,maxReplaces:m,alwaysFormat:d}=t.interpolation;this.escape=n!==void 0?n:Pv,this.escapeValue=r!==void 0?r:!0,this.useRawValueToEscape=i!==void 0?i:!1,this.prefix=a?pn(a):o||"{{",this.suffix=s?pn(s):l||"}}",this.formatSeparator=u||",",this.unescapePrefix=c?"":p||"-",this.unescapeSuffix=this.unescapePrefix?"":c||"",this.nestingPrefix=f?pn(f):v||pn("$t("),this.nestingSuffix=x?pn(x):w||pn(")"),this.nestingOptionsSeparator=k||",",this.maxReplaces=m||1e3,this.alwaysFormat=d!==void 0?d:!1,this.resetRegExp()}reset(){this.options&&this.init(this.options)}resetRegExp(){const t=(n,r)=>n&&n.source===r?(n.lastIndex=0,n):new RegExp(r,"g");this.regexp=t(this.regexp,`${this.prefix}(.+?)${this.suffix}`),this.regexpUnescape=t(this.regexpUnescape,`${this.prefix}${this.unescapePrefix}(.+?)${this.unescapeSuffix}${this.suffix}`),this.nestingRegexp=t(this.nestingRegexp,`${this.nestingPrefix}(.+?)${this.nestingSuffix}`)}interpolate(t,n,r,i){let a,o,s;const l=this.options&&this.options.interpolation&&this.options.interpolation.defaultVariables||{};function u(x){return x.replace(/\$/g,"$$$$")}const c=x=>{if(x.indexOf(this.formatSeparator)<0){const d=Mc(n,l,x,this.options.keySeparator,this.options.ignoreJSONStructure);return this.alwaysFormat?this.format(d,void 0,r,{...i,...n,interpolationkey:x}):d}const w=x.split(this.formatSeparator),k=w.shift().trim(),m=w.join(this.formatSeparator).trim();return this.format(Mc(n,l,k,this.options.keySeparator,this.options.ignoreJSONStructure),m,r,{...i,...n,interpolationkey:k})};this.resetRegExp();const p=i&&i.missingInterpolationHandler||this.options.missingInterpolationHandler,f=i&&i.interpolation&&i.interpolation.skipOnVariables!==void 0?i.interpolation.skipOnVariables:this.options.interpolation.skipOnVariables;return[{regex:this.regexpUnescape,safeValue:x=>u(x)},{regex:this.regexp,safeValue:x=>this.escapeValue?u(this.escape(x)):u(x)}].forEach(x=>{for(s=0;a=x.regex.exec(t);){const w=a[1].trim();if(o=c(w),o===void 0)if(typeof p=="function"){const m=p(t,a,i);o=typeof m=="string"?m:""}else if(i&&Object.prototype.hasOwnProperty.call(i,w))o="";else if(f){o=a[0];continue}else this.logger.warn(`missed to pass in variable ${w} for interpolating ${t}`),o="";else typeof o!="string"&&!this.useRawValueToEscape&&(o=Rc(o));const k=x.safeValue(o);if(t=t.replace(a[0],k),f?(x.regex.lastIndex+=o.length,x.regex.lastIndex-=a[0].length):x.regex.lastIndex=0,s++,s>=this.maxReplaces)break}}),t}nest(t,n){let r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},i,a,o;function s(l,u){const c=this.nestingOptionsSeparator;if(l.indexOf(c)<0)return l;const p=l.split(new RegExp(`${c}[ ]*{`));let f=`{${p[1]}`;l=p[0],f=this.interpolate(f,o);const v=f.match(/'/g),x=f.match(/"/g);(v&&v.length%2===0&&!x||x.length%2!==0)&&(f=f.replace(/'/g,'"'));try{o=JSON.parse(f),u&&(o={...u,...o})}catch(w){return this.logger.warn(`failed parsing options string in nesting for key ${l}`,w),`${l}${c}${f}`}return o.defaultValue&&o.defaultValue.indexOf(this.prefix)>-1&&delete o.defaultValue,l}for(;i=this.nestingRegexp.exec(t);){let l=[];o={...r},o=o.replace&&typeof o.replace!="string"?o.replace:o,o.applyPostProcessor=!1,delete o.defaultValue;let u=!1;if(i[0].indexOf(this.formatSeparator)!==-1&&!/{.*}/.test(i[1])){const c=i[1].split(this.formatSeparator).map(p=>p.trim());i[1]=c.shift(),l=c,u=!0}if(a=n(s.call(this,i[1].trim(),o),o),a&&i[0]===t&&typeof a!="string")return a;typeof a!="string"&&(a=Rc(a)),a||(this.logger.warn(`missed to resolve ${i[1]} for nesting ${t}`),a=""),u&&(a=l.reduce((c,p)=>this.format(c,p,r.lng,{...r,interpolationkey:i[1].trim()}),a.trim())),t=t.replace(i[0],a),this.regexp.lastIndex=0}return t}}function Dv(e){let t=e.toLowerCase().trim();const n={};if(e.indexOf("(")>-1){const r=e.split("(");t=r[0].toLowerCase().trim();const i=r[1].substring(0,r[1].length-1);t==="currency"&&i.indexOf(":")<0?n.currency||(n.currency=i.trim()):t==="relativetime"&&i.indexOf(":")<0?n.range||(n.range=i.trim()):i.split(";").forEach(o=>{if(!o)return;const[s,...l]=o.split(":"),u=l.join(":").trim().replace(/^'+|'+$/g,"");n[s.trim()]||(n[s.trim()]=u),u==="false"&&(n[s.trim()]=!1),u==="true"&&(n[s.trim()]=!0),isNaN(u)||(n[s.trim()]=parseInt(u,10))})}return{formatName:t,formatOptions:n}}function mn(e){const t={};return function(r,i,a){const o=i+JSON.stringify(a);let s=t[o];return s||(s=e(ya(i),a),t[o]=s),s(r)}}class Fv{constructor(){let t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};this.logger=Xe.create("formatter"),this.options=t,this.formats={number:mn((n,r)=>{const i=new Intl.NumberFormat(n,{...r});return a=>i.format(a)}),currency:mn((n,r)=>{const i=new Intl.NumberFormat(n,{...r,style:"currency"});return a=>i.format(a)}),datetime:mn((n,r)=>{const i=new Intl.DateTimeFormat(n,{...r});return a=>i.format(a)}),relativetime:mn((n,r)=>{const i=new Intl.RelativeTimeFormat(n,{...r});return a=>i.format(a,r.range||"day")}),list:mn((n,r)=>{const i=new Intl.ListFormat(n,{...r});return a=>i.format(a)})},this.init(t)}init(t){const r=(arguments.length>1&&arguments[1]!==void 0?arguments[1]:{interpolation:{}}).interpolation;this.formatSeparator=r.formatSeparator?r.formatSeparator:r.formatSeparator||","}add(t,n){this.formats[t.toLowerCase().trim()]=n}addCached(t,n){this.formats[t.toLowerCase().trim()]=mn(n)}format(t,n,r){let i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:{};return n.split(this.formatSeparator).reduce((s,l)=>{const{formatName:u,formatOptions:c}=Dv(l);if(this.formats[u]){let p=s;try{const f=i&&i.formatParams&&i.formatParams[i.interpolationkey]||{},v=f.locale||f.lng||i.locale||i.lng||r;p=this.formats[u](s,v,{...c,...i,...f})}catch(f){this.logger.warn(f)}return p}else this.logger.warn(`there was no format function for ${u}`);return s},t)}}function $v(e,t){e.pending[t]!==void 0&&(delete e.pending[t],e.pendingCount--)}class Uv extends Ua{constructor(t,n,r){let i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:{};super(),this.backend=t,this.store=n,this.services=r,this.languageUtils=r.languageUtils,this.options=i,this.logger=Xe.create("backendConnector"),this.waitingReads=[],this.maxParallelReads=i.maxParallelReads||10,this.readingCalls=0,this.maxRetries=i.maxRetries>=0?i.maxRetries:5,this.retryTimeout=i.retryTimeout>=1?i.retryTimeout:350,this.state={},this.queue=[],this.backend&&this.backend.init&&this.backend.init(r,i.backend,i)}queueLoad(t,n,r,i){const a={},o={},s={},l={};return t.forEach(u=>{let c=!0;n.forEach(p=>{const f=`${u}|${p}`;!r.reload&&this.store.hasResourceBundle(u,p)?this.state[f]=2:this.state[f]<0||(this.state[f]===1?o[f]===void 0&&(o[f]=!0):(this.state[f]=1,c=!1,o[f]===void 0&&(o[f]=!0),a[f]===void 0&&(a[f]=!0),l[p]===void 0&&(l[p]=!0)))}),c||(s[u]=!0)}),(Object.keys(a).length||Object.keys(o).length)&&this.queue.push({pending:o,pendingCount:Object.keys(o).length,loaded:{},errors:[],callback:i}),{toLoad:Object.keys(a),pending:Object.keys(o),toLoadLanguages:Object.keys(s),toLoadNamespaces:Object.keys(l)}}loaded(t,n,r){const i=t.split("|"),a=i[0],o=i[1];n&&this.emit("failedLoading",a,o,n),r&&this.store.addResourceBundle(a,o,r,void 0,void 0,{skipCopy:!0}),this.state[t]=n?-1:2;const s={};this.queue.forEach(l=>{Cv(l.loaded,[a],o),$v(l,t),n&&l.errors.push(n),l.pendingCount===0&&!l.done&&(Object.keys(l.loaded).forEach(u=>{s[u]||(s[u]={});const c=l.loaded[u];c.length&&c.forEach(p=>{s[u][p]===void 0&&(s[u][p]=!0)})}),l.done=!0,l.errors.length?l.callback(l.errors):l.callback())}),this.emit("loaded",s),this.queue=this.queue.filter(l=>!l.done)}read(t,n,r){let i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:0,a=arguments.length>4&&arguments[4]!==void 0?arguments[4]:this.retryTimeout,o=arguments.length>5?arguments[5]:void 0;if(!t.length)return o(null,{});if(this.readingCalls>=this.maxParallelReads){this.waitingReads.push({lng:t,ns:n,fcName:r,tried:i,wait:a,callback:o});return}this.readingCalls++;const s=(u,c)=>{if(this.readingCalls--,this.waitingReads.length>0){const p=this.waitingReads.shift();this.read(p.lng,p.ns,p.fcName,p.tried,p.wait,p.callback)}if(u&&c&&i{this.read.call(this,t,n,r,i+1,a*2,o)},a);return}o(u,c)},l=this.backend[r].bind(this.backend);if(l.length===2){try{const u=l(t,n);u&&typeof u.then=="function"?u.then(c=>s(null,c)).catch(s):s(null,u)}catch(u){s(u)}return}return l(t,n,s)}prepareLoading(t,n){let r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},i=arguments.length>3?arguments[3]:void 0;if(!this.backend)return this.logger.warn("No backend was added via i18next.use. Will not load resources."),i&&i();typeof t=="string"&&(t=this.languageUtils.toResolveHierarchy(t)),typeof n=="string"&&(n=[n]);const a=this.queueLoad(t,n,r,i);if(!a.toLoad.length)return a.pending.length||i(),null;a.toLoad.forEach(o=>{this.loadOne(o)})}load(t,n,r){this.prepareLoading(t,n,{},r)}reload(t,n,r){this.prepareLoading(t,n,{reload:!0},r)}loadOne(t){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"";const r=t.split("|"),i=r[0],a=r[1];this.read(i,a,"read",void 0,void 0,(o,s)=>{o&&this.logger.warn(`${n}loading namespace ${a} for language ${i} failed`,o),!o&&s&&this.logger.log(`${n}loaded namespace ${a} for language ${i}`,s),this.loaded(t,o,s)})}saveMissing(t,n,r,i,a){let o=arguments.length>5&&arguments[5]!==void 0?arguments[5]:{},s=arguments.length>6&&arguments[6]!==void 0?arguments[6]:()=>{};if(this.services.utils&&this.services.utils.hasLoadedNamespace&&!this.services.utils.hasLoadedNamespace(n)){this.logger.warn(`did not save key "${r}" as the namespace "${n}" was not yet loaded`,"This means something IS WRONG in your setup. You access the t function before i18next.init / i18next.loadNamespace / i18next.changeLanguage was done. Wait for the callback or Promise to resolve before accessing it!!!");return}if(!(r==null||r==="")){if(this.backend&&this.backend.create){const l={...o,isUpdate:a},u=this.backend.create.bind(this.backend);if(u.length<6)try{let c;u.length===5?c=u(t,n,r,i,l):c=u(t,n,r,i),c&&typeof c.then=="function"?c.then(p=>s(null,p)).catch(s):s(null,c)}catch(c){s(c)}else u(t,n,r,i,s,l)}!t||!t[0]||this.store.addResource(t[0],n,r,i)}}}function Dc(){return{debug:!1,initImmediate:!0,ns:["translation"],defaultNS:["translation"],fallbackLng:["dev"],fallbackNS:!1,supportedLngs:!1,nonExplicitSupportedLngs:!1,load:"all",preload:!1,simplifyPluralSuffix:!0,keySeparator:".",nsSeparator:":",pluralSeparator:"_",contextSeparator:"_",partialBundledLanguages:!1,saveMissing:!1,updateMissing:!1,saveMissingTo:"fallback",saveMissingPlurals:!0,missingKeyHandler:!1,missingInterpolationHandler:!1,postProcess:!1,postProcessPassResolved:!1,returnNull:!1,returnEmptyString:!0,returnObjects:!1,joinArrays:!1,returnedObjectHandler:!1,parseMissingKeyHandler:!1,appendNamespaceToMissingKey:!1,appendNamespaceToCIMode:!1,overloadTranslationOptionHandler:function(t){let n={};if(typeof t[1]=="object"&&(n=t[1]),typeof t[1]=="string"&&(n.defaultValue=t[1]),typeof t[2]=="string"&&(n.tDescription=t[2]),typeof t[2]=="object"||typeof t[3]=="object"){const r=t[3]||t[2];Object.keys(r).forEach(i=>{n[i]=r[i]})}return n},interpolation:{escapeValue:!0,format:e=>e,prefix:"{{",suffix:"}}",formatSeparator:",",unescapePrefix:"-",nestingPrefix:"$t(",nestingSuffix:")",nestingOptionsSeparator:",",maxReplaces:1e3,skipOnVariables:!0}}}function Fc(e){return typeof e.ns=="string"&&(e.ns=[e.ns]),typeof e.fallbackLng=="string"&&(e.fallbackLng=[e.fallbackLng]),typeof e.fallbackNS=="string"&&(e.fallbackNS=[e.fallbackNS]),e.supportedLngs&&e.supportedLngs.indexOf("cimode")<0&&(e.supportedLngs=e.supportedLngs.concat(["cimode"])),e}function Pi(){}function Vv(e){Object.getOwnPropertyNames(Object.getPrototypeOf(e)).forEach(n=>{typeof e[n]=="function"&&(e[n]=e[n].bind(e))})}class Hr extends Ua{constructor(){let t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},n=arguments.length>1?arguments[1]:void 0;if(super(),this.options=Fc(t),this.services={},this.logger=Xe,this.modules={external:[]},Vv(this),n&&!this.isInitialized&&!t.isClone){if(!this.options.initImmediate)return this.init(t,n),this;setTimeout(()=>{this.init(t,n)},0)}}init(){var t=this;let n=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},r=arguments.length>1?arguments[1]:void 0;this.isInitializing=!0,typeof n=="function"&&(r=n,n={}),!n.defaultNS&&n.defaultNS!==!1&&n.ns&&(typeof n.ns=="string"?n.defaultNS=n.ns:n.ns.indexOf("translation")<0&&(n.defaultNS=n.ns[0]));const i=Dc();this.options={...i,...this.options,...Fc(n)},this.options.compatibilityAPI!=="v1"&&(this.options.interpolation={...i.interpolation,...this.options.interpolation}),n.keySeparator!==void 0&&(this.options.userDefinedKeySeparator=n.keySeparator),n.nsSeparator!==void 0&&(this.options.userDefinedNsSeparator=n.nsSeparator);function a(c){return c?typeof c=="function"?new c:c:null}if(!this.options.isClone){this.modules.logger?Xe.init(a(this.modules.logger),this.options):Xe.init(null,this.options);let c;this.modules.formatter?c=this.modules.formatter:typeof Intl<"u"&&(c=Fv);const p=new _c(this.options);this.store=new Tc(this.options.resources,this.options);const f=this.services;f.logger=Xe,f.resourceStore=this.store,f.languageUtils=p,f.pluralResolver=new zv(p,{prepend:this.options.pluralSeparator,compatibilityJSON:this.options.compatibilityJSON,simplifyPluralSuffix:this.options.simplifyPluralSuffix}),c&&(!this.options.interpolation.format||this.options.interpolation.format===i.interpolation.format)&&(f.formatter=a(c),f.formatter.init(f,this.options),this.options.interpolation.format=f.formatter.format.bind(f.formatter)),f.interpolator=new Mv(this.options),f.utils={hasLoadedNamespace:this.hasLoadedNamespace.bind(this)},f.backendConnector=new Uv(a(this.modules.backend),f.resourceStore,f,this.options),f.backendConnector.on("*",function(v){for(var x=arguments.length,w=new Array(x>1?x-1:0),k=1;k1?x-1:0),k=1;k{v.init&&v.init(this)})}if(this.format=this.options.interpolation.format,r||(r=Pi),this.options.fallbackLng&&!this.services.languageDetector&&!this.options.lng){const c=this.services.languageUtils.getFallbackCodes(this.options.fallbackLng);c.length>0&&c[0]!=="dev"&&(this.options.lng=c[0])}!this.services.languageDetector&&!this.options.lng&&this.logger.warn("init: no languageDetector is used and no lng is defined"),["getResource","hasResourceBundle","getResourceBundle","getDataByLanguage"].forEach(c=>{this[c]=function(){return t.store[c](...arguments)}}),["addResource","addResources","addResourceBundle","removeResourceBundle"].forEach(c=>{this[c]=function(){return t.store[c](...arguments),t}});const l=rr(),u=()=>{const c=(p,f)=>{this.isInitializing=!1,this.isInitialized&&!this.initializedStoreOnce&&this.logger.warn("init: i18next is already initialized. You should call init just once!"),this.isInitialized=!0,this.options.isClone||this.logger.log("initialized",this.options),this.emit("initialized",this.options),l.resolve(f),r(p,f)};if(this.languages&&this.options.compatibilityAPI!=="v1"&&!this.isInitialized)return c(null,this.t.bind(this));this.changeLanguage(this.options.lng,c)};return this.options.resources||!this.options.initImmediate?u():setTimeout(u,0),l}loadResources(t){let r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:Pi;const i=typeof t=="string"?t:this.language;if(typeof t=="function"&&(r=t),!this.options.resources||this.options.partialBundledLanguages){if(i&&i.toLowerCase()==="cimode"&&(!this.options.preload||this.options.preload.length===0))return r();const a=[],o=s=>{if(!s||s==="cimode")return;this.services.languageUtils.toResolveHierarchy(s).forEach(u=>{u!=="cimode"&&a.indexOf(u)<0&&a.push(u)})};i?o(i):this.services.languageUtils.getFallbackCodes(this.options.fallbackLng).forEach(l=>o(l)),this.options.preload&&this.options.preload.forEach(s=>o(s)),this.services.backendConnector.load(a,this.options.ns,s=>{!s&&!this.resolvedLanguage&&this.language&&this.setResolvedLanguage(this.language),r(s)})}else r(null)}reloadResources(t,n,r){const i=rr();return t||(t=this.languages),n||(n=this.options.ns),r||(r=Pi),this.services.backendConnector.reload(t,n,a=>{i.resolve(),r(a)}),i}use(t){if(!t)throw new Error("You are passing an undefined module! Please check the object you are passing to i18next.use()");if(!t.type)throw new Error("You are passing a wrong module! Please check the object you are passing to i18next.use()");return t.type==="backend"&&(this.modules.backend=t),(t.type==="logger"||t.log&&t.warn&&t.error)&&(this.modules.logger=t),t.type==="languageDetector"&&(this.modules.languageDetector=t),t.type==="i18nFormat"&&(this.modules.i18nFormat=t),t.type==="postProcessor"&&Kp.addPostProcessor(t),t.type==="formatter"&&(this.modules.formatter=t),t.type==="3rdParty"&&this.modules.external.push(t),this}setResolvedLanguage(t){if(!(!t||!this.languages)&&!(["cimode","dev"].indexOf(t)>-1))for(let n=0;n-1)&&this.store.hasLanguageSomeTranslations(r)){this.resolvedLanguage=r;break}}}changeLanguage(t,n){var r=this;this.isLanguageChangingTo=t;const i=rr();this.emit("languageChanging",t);const a=l=>{this.language=l,this.languages=this.services.languageUtils.toResolveHierarchy(l),this.resolvedLanguage=void 0,this.setResolvedLanguage(l)},o=(l,u)=>{u?(a(u),this.translator.changeLanguage(u),this.isLanguageChangingTo=void 0,this.emit("languageChanged",u),this.logger.log("languageChanged",u)):this.isLanguageChangingTo=void 0,i.resolve(function(){return r.t(...arguments)}),n&&n(l,function(){return r.t(...arguments)})},s=l=>{!t&&!l&&this.services.languageDetector&&(l=[]);const u=typeof l=="string"?l:this.services.languageUtils.getBestMatchFromCodes(l);u&&(this.language||a(u),this.translator.language||this.translator.changeLanguage(u),this.services.languageDetector&&this.services.languageDetector.cacheUserLanguage&&this.services.languageDetector.cacheUserLanguage(u)),this.loadResources(u,c=>{o(c,u)})};return!t&&this.services.languageDetector&&!this.services.languageDetector.async?s(this.services.languageDetector.detect()):!t&&this.services.languageDetector&&this.services.languageDetector.async?this.services.languageDetector.detect.length===0?this.services.languageDetector.detect().then(s):this.services.languageDetector.detect(s):s(t),i}getFixedT(t,n,r){var i=this;const a=function(o,s){let l;if(typeof s!="object"){for(var u=arguments.length,c=new Array(u>2?u-2:0),p=2;p`${l.keyPrefix}${f}${x}`):v=l.keyPrefix?`${l.keyPrefix}${f}${o}`:o,i.t(v,l)};return typeof t=="string"?a.lng=t:a.lngs=t,a.ns=n,a.keyPrefix=r,a}t(){return this.translator&&this.translator.translate(...arguments)}exists(){return this.translator&&this.translator.exists(...arguments)}setDefaultNamespace(t){this.options.defaultNS=t}hasLoadedNamespace(t){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};if(!this.isInitialized)return this.logger.warn("hasLoadedNamespace: i18next was not initialized",this.languages),!1;if(!this.languages||!this.languages.length)return this.logger.warn("hasLoadedNamespace: i18n.languages were undefined or empty",this.languages),!1;const r=n.lng||this.resolvedLanguage||this.languages[0],i=this.options?this.options.fallbackLng:!1,a=this.languages[this.languages.length-1];if(r.toLowerCase()==="cimode")return!0;const o=(s,l)=>{const u=this.services.backendConnector.state[`${s}|${l}`];return u===-1||u===2};if(n.precheck){const s=n.precheck(this,o);if(s!==void 0)return s}return!!(this.hasResourceBundle(r,t)||!this.services.backendConnector.backend||this.options.resources&&!this.options.partialBundledLanguages||o(r,t)&&(!i||o(a,t)))}loadNamespaces(t,n){const r=rr();return this.options.ns?(typeof t=="string"&&(t=[t]),t.forEach(i=>{this.options.ns.indexOf(i)<0&&this.options.ns.push(i)}),this.loadResources(i=>{r.resolve(),n&&n(i)}),r):(n&&n(),Promise.resolve())}loadLanguages(t,n){const r=rr();typeof t=="string"&&(t=[t]);const i=this.options.preload||[],a=t.filter(o=>i.indexOf(o)<0&&this.services.languageUtils.isSupportedCode(o));return a.length?(this.options.preload=i.concat(a),this.loadResources(o=>{r.resolve(),n&&n(o)}),r):(n&&n(),Promise.resolve())}dir(t){if(t||(t=this.resolvedLanguage||(this.languages&&this.languages.length>0?this.languages[0]:this.language)),!t)return"rtl";const n=["ar","shu","sqr","ssh","xaa","yhd","yud","aao","abh","abv","acm","acq","acw","acx","acy","adf","ads","aeb","aec","afb","ajp","apc","apd","arb","arq","ars","ary","arz","auz","avl","ayh","ayl","ayn","ayp","bbz","pga","he","iw","ps","pbt","pbu","pst","prp","prd","ug","ur","ydd","yds","yih","ji","yi","hbo","men","xmn","fa","jpr","peo","pes","prs","dv","sam","ckb"],r=this.services&&this.services.languageUtils||new _c(Dc());return n.indexOf(r.getLanguagePartFromCode(t))>-1||t.toLowerCase().indexOf("-arab")>1?"rtl":"ltr"}static createInstance(){let t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},n=arguments.length>1?arguments[1]:void 0;return new Hr(t,n)}cloneInstance(){let t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:Pi;const r=t.forkResourceStore;r&&delete t.forkResourceStore;const i={...this.options,...t,isClone:!0},a=new Hr(i);return(t.debug!==void 0||t.prefix!==void 0)&&(a.logger=a.logger.clone(t)),["store","services","language"].forEach(s=>{a[s]=this[s]}),a.services={...this.services},a.services.utils={hasLoadedNamespace:a.hasLoadedNamespace.bind(a)},r&&(a.store=new Tc(this.store.data,i),a.services.resourceStore=a.store),a.translator=new xa(a.services,i),a.translator.on("*",function(s){for(var l=arguments.length,u=new Array(l>1?l-1:0),c=1;c jetoga99.me - - + +