/*! * imagesLoaded PACKAGED v5.0.0 * JavaScript is all like "You images are done yet or what?" * MIT License */ !function(t,e){"object"==typeof module&&module.exports?module.exports=e():t.EvEmitter=e()}("undefined"!=typeof window?window:this,(function(){function t(){}let e=t.prototype;return e.on=function(t,e){if(!t||!e)return this;let i=this._events=this._events||{},s=i[t]=i[t]||[];return s.includes(e)||s.push(e),this},e.once=function(t,e){if(!t||!e)return this;this.on(t,e);let i=this._onceEvents=this._onceEvents||{};return(i[t]=i[t]||{})[e]=!0,this},e.off=function(t,e){let i=this._events&&this._events[t];if(!i||!i.length)return this;let s=i.indexOf(e);return-1!=s&&i.splice(s,1),this},e.emitEvent=function(t,e){let i=this._events&&this._events[t];if(!i||!i.length)return this;i=i.slice(0),e=e||[];let s=this._onceEvents&&this._onceEvents[t];for(let n of i){s&&s[n]&&(this.off(t,n),delete s[n]),n.apply(this,e)}return this},e.allOff=function(){return delete this._events,delete this._onceEvents,this},t})), /*! * imagesLoaded v5.0.0 * JavaScript is all like "You images are done yet or what?" * MIT License */ function(t,e){"object"==typeof module&&module.exports?module.exports=e(t,require("ev-emitter")):t.imagesLoaded=e(t,t.EvEmitter)}("undefined"!=typeof window?window:this,(function(t,e){let i=t.jQuery,s=t.console;function n(t,e,o){if(!(this instanceof n))return new n(t,e,o);let r=t;var h;("string"==typeof t&&(r=document.querySelectorAll(t)),r)?(this.elements=(h=r,Array.isArray(h)?h:"object"==typeof h&&"number"==typeof h.length?[...h]:[h]),this.options={},"function"==typeof e?o=e:Object.assign(this.options,e),o&&this.on("always",o),this.getImages(),i&&(this.jqDeferred=new i.Deferred),setTimeout(this.check.bind(this))):s.error(`Bad element for imagesLoaded ${r||t}`)}n.prototype=Object.create(e.prototype),n.prototype.getImages=function(){this.images=[],this.elements.forEach(this.addElementImages,this)};const o=[1,9,11];n.prototype.addElementImages=function(t){"IMG"===t.nodeName&&this.addImage(t),!0===this.options.background&&this.addElementBackgroundImages(t);let{nodeType:e}=t;if(!e||!o.includes(e))return;let i=t.querySelectorAll("img");for(let t of i)this.addImage(t);if("string"==typeof this.options.background){let e=t.querySelectorAll(this.options.background);for(let t of e)this.addElementBackgroundImages(t)}};const r=/url\((['"])?(.*?)\1\)/gi;function h(t){this.img=t}function d(t,e){this.url=t,this.element=e,this.img=new Image}return n.prototype.addElementBackgroundImages=function(t){let e=getComputedStyle(t);if(!e)return;let i=r.exec(e.backgroundImage);for(;null!==i;){let s=i&&i[2];s&&this.addBackground(s,t),i=r.exec(e.backgroundImage)}},n.prototype.addImage=function(t){let e=new h(t);this.images.push(e)},n.prototype.addBackground=function(t,e){let i=new d(t,e);this.images.push(i)},n.prototype.check=function(){if(this.progressedCount=0,this.hasAnyBroken=!1,!this.images.length)return void this.complete();let t=(t,e,i)=>{setTimeout((()=>{this.progress(t,e,i)}))};this.images.forEach((function(e){e.once("progress",t),e.check()}))},n.prototype.progress=function(t,e,i){this.progressedCount++,this.hasAnyBroken=this.hasAnyBroken||!t.isLoaded,this.emitEvent("progress",[this,t,e]),this.jqDeferred&&this.jqDeferred.notify&&this.jqDeferred.notify(this,t),this.progressedCount===this.images.length&&this.complete(),this.options.debug&&s&&s.log(`progress: ${i}`,t,e)},n.prototype.complete=function(){let t=this.hasAnyBroken?"fail":"done";if(this.isComplete=!0,this.emitEvent(t,[this]),this.emitEvent("always",[this]),this.jqDeferred){let t=this.hasAnyBroken?"reject":"resolve";this.jqDeferred[t](this)}},h.prototype=Object.create(e.prototype),h.prototype.check=function(){this.getIsImageComplete()?this.confirm(0!==this.img.naturalWidth,"naturalWidth"):(this.proxyImage=new Image,this.img.crossOrigin&&(this.proxyImage.crossOrigin=this.img.crossOrigin),this.proxyImage.addEventListener("load",this),this.proxyImage.addEventListener("error",this),this.img.addEventListener("load",this),this.img.addEventListener("error",this),this.proxyImage.src=this.img.currentSrc||this.img.src)},h.prototype.getIsImageComplete=function(){return this.img.complete&&this.img.naturalWidth},h.prototype.confirm=function(t,e){this.isLoaded=t;let{parentNode:i}=this.img,s="PICTURE"===i.nodeName?i:this.img;this.emitEvent("progress",[this,s,e])},h.prototype.handleEvent=function(t){let e="on"+t.type;this[e]&&this[e](t)},h.prototype.onload=function(){this.confirm(!0,"onload"),this.unbindEvents()},h.prototype.onerror=function(){this.confirm(!1,"onerror"),this.unbindEvents()},h.prototype.unbindEvents=function(){this.proxyImage.removeEventListener("load",this),this.proxyImage.removeEventListener("error",this),this.img.removeEventListener("load",this),this.img.removeEventListener("error",this)},d.prototype=Object.create(h.prototype),d.prototype.check=function(){this.img.addEventListener("load",this),this.img.addEventListener("error",this),this.img.src=this.url,this.getIsImageComplete()&&(this.confirm(0!==this.img.naturalWidth,"naturalWidth"),this.unbindEvents())},d.prototype.unbindEvents=function(){this.img.removeEventListener("load",this),this.img.removeEventListener("error",this)},d.prototype.confirm=function(t,e){this.isLoaded=t,this.emitEvent("progress",[this,this.element,e])},n.makeJQueryPlugin=function(e){(e=e||t.jQuery)&&(i=e,i.fn.imagesLoaded=function(t,e){return new n(this,t,e).jqDeferred.promise(i(this))})},n.makeJQueryPlugin(),n}));.redux-main .redux-typography-container{display:block;position:relative;margin:0;padding:0;width:100%;max-width:660px}.redux-main .redux-typography-container .clearfix{clear:both}.redux-main .redux-typography-container .clearfix:after{visibility:hidden;display:block;font-size:0;content:" ";clear:both;height:0}.redux-main .redux-typography-container input.wp-picker-default,.redux-main .redux-typography-container .redux-typography-color{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;-o-box-sizing:border-box;box-sizing:border-box;height:24px;padding:0px 14px !important;margin-top:0;margin-bottom:0;margin-left:4px !important;font-size:12px !important}.redux-main .redux-typography-container .select_wrapper{display:block;position:relative;float:left;clear:none;margin:0 10px 0 0;width:48% !important;min-width:210px !important;max-width:324px !important;height:57px;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;-o-box-sizing:border-box;box-sizing:border-box}.redux-main .redux-typography-container .select_wrapper:nth-child(odd){margin-right:10px !important}.redux-main .redux-typography-container .select_wrapper:nth-child(even){margin-right:10px !important}.redux-main .redux-typography-container .select_wrapper.typography-family .select2-container{width:100%}.redux-main .redux-typography-container .select_wrapper .redux-typography{font-size:14px !important;display:block;float:left;height:28px !important;line-height:50px !important;padding:0px !important;width:100% !important;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;-o-box-sizing:border-box;box-sizing:border-box}.redux-main .redux-typography-container .wp-picker-container{float:left;clear:left;margin-bottom:12px;padding:3px;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}.redux-main .redux-typography-container .input_wrapper{display:block;position:relative;margin:0 4px 0 5px;padding:0;width:23%;max-width:23%;min-width:70px;float:left;clear:none;height:57px;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;-o-box-sizing:border-box;box-sizing:border-box;vertical-align:baseline}.redux-main .redux-typography-container .input_wrapper.font-size{margin-left:0px}.redux-main .redux-typography-container .input_wrapper input.mini{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;-o-box-sizing:border-box;box-sizing:border-box;width:78%;text-align:center;margin:0;height:28px;top:3px;padding:0 2px 0 5px;text-decoration:none;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.redux-main .redux-typography-container .picker-wrapper{display:block;display:block;position:relative;margin:0 4px 0 5px;margin:0;padding:0;width:23%;width:100%;max-width:23%;min-width:70px;min-width:100%;clear:none;height:57px;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;-o-box-sizing:border-box;box-sizing:border-box;vertical-align:baseline}.redux-main .redux-typography-container label{display:block;position:relative;font-size:12px !important;text-align:left;color:#999999;margin:4px 0 2px 0 !important;cursor:default}.redux-main .redux-typography-container .typography-preview{display:none;width:100%;border:1px dotted lightgray;max-width:850px;padding:10px;font-size:10pt;height:auto;margin:5px 0 10px;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;overflow:hidden}.redux-main .redux-typography-container .typography-color{border:0 none;margin:0}.redux-main .redux-typography-container ::-webkit-input-placeholder{line-height:19px}@media screen and (max-width: 540px){.redux-main .redux-main .redux-typography-container{max-width:230px;margin:0 auto}.redux-main .redux-main .redux-typography-container .select_wrapper{max-width:210px;min-width:210px;width:210px;margin-left:0 !important;margin-right:0 !important}.redux-main .redux-main .redux-typography-container .input_wrapper{max-width:101px;min-width:101px;width:101px;margin-left:0 !important;margin-right:5px !important}.redux-main .redux-main .redux-typography-container .input_wrapper input.mini{width:73%}.redux-main .redux-main .redux-typography-container .input-append .add-on{width:30%;padding:5px !important}.redux-main .redux-main .redux-main .wp-picker-container .wp-picker-input-wrap{margin-top:7px}}@media screen and (max-width: 360px){.redux-main .redux-typography-container .iris-picker .iris-square{margin-right:3%}}.wp-customizer .redux-typography-container .input_wrapper{width:40%;max-width:40%;min-width:20%}.wp-customizer .redux-typography-container .input_wrapper input.mini{width:70%}.wp-customizer .redux-typography-container .select_wrapper{width:100% !important}
.elementor-hidden{display:none}.elementor-visibility-hidden{visibility:hidden}.elementor-screen-only,.screen-reader-text,.screen-reader-text span,.ui-helper-hidden-accessible{height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;top:-10000em;width:1px;clip:rect(0,0,0,0);border:0}.elementor-clearfix:after{clear:both;content:"";display:block;height:0;width:0}.e-logo-wrapper{background:var(--e-a-bg-logo);border-radius:50%;display:inline-block;line-height:1;padding:.75em}.e-logo-wrapper i{color:var(--e-a-color-logo);font-size:1em}.elementor *,.elementor :after,.elementor :before{box-sizing:border-box}.elementor a{box-shadow:none;text-decoration:none}.elementor hr{background-color:transparent;margin:0}.elementor img{border:none;border-radius:0;box-shadow:none;height:auto;max-width:100%}.elementor .elementor-widget:not(.elementor-widget-text-editor):not(.elementor-widget-theme-post-content) figure{margin:0}.elementor embed,.elementor iframe,.elementor object,.elementor video{border:none;line-height:1;margin:0;max-width:100%;width:100%}.elementor .elementor-background,.elementor .elementor-background-holder,.elementor .elementor-background-video-container{direction:ltr;inset:0;overflow:hidden;position:absolute;z-index:0}.elementor .elementor-background-video-container{pointer-events:none;transition:opacity 1s}.elementor .elementor-background-video-container.elementor-loading{opacity:0}.elementor .elementor-background-video-embed{max-width:none}.elementor .elementor-background-video,.elementor .elementor-background-video-embed,.elementor .elementor-background-video-hosted{left:50%;position:absolute;top:50%;transform:translate(-50%,-50%)}.elementor .elementor-background-video{max-width:none}.elementor .elementor-background-video-hosted{-o-object-fit:cover;object-fit:cover}.elementor .elementor-background-overlay{inset:0;position:absolute}.elementor .elementor-background-slideshow{inset:0;position:absolute;z-index:0}.elementor .elementor-background-slideshow__slide__image{background-position:50%;background-size:cover;height:100%;width:100%}.e-con-inner>.elementor-element.elementor-absolute,.e-con>.elementor-element.elementor-absolute,.elementor-widget-wrap>.elementor-element.elementor-absolute{position:absolute}.e-con-inner>.elementor-element.elementor-fixed,.e-con>.elementor-element.elementor-fixed,.elementor-widget-wrap>.elementor-element.elementor-fixed{position:fixed}.elementor-widget-wrap .elementor-element.elementor-widget__width-auto,.elementor-widget-wrap .elementor-element.elementor-widget__width-initial{max-width:100%}@media (max-width:ELEMENTOR_SCREEN_TABLET_MAX){.elementor-widget-wrap .elementor-element.elementor-widget-tablet__width-auto,.elementor-widget-wrap .elementor-element.elementor-widget-tablet__width-initial{max-width:100%}}@media (max-width:ELEMENTOR_SCREEN_MOBILE_MAX){.elementor-widget-wrap .elementor-element.elementor-widget-mobile__width-auto,.elementor-widget-wrap .elementor-element.elementor-widget-mobile__width-initial{max-width:100%}}.elementor-element{--flex-direction:initial;--flex-wrap:initial;--justify-content:initial;--align-items:initial;--align-content:initial;--gap:initial;--flex-basis:initial;--flex-grow:initial;--flex-shrink:initial;--order:initial;--align-self:initial;align-self:var(--align-self);flex-basis:var(--flex-basis);flex-grow:var(--flex-grow);flex-shrink:var(--flex-shrink);order:var(--order)}.elementor-element.elementor-absolute,.elementor-element.elementor-fixed{z-index:1}.elementor-element:where(.e-con-full,.elementor-widget){align-content:var(--align-content);align-items:var(--align-items);flex-direction:var(--flex-direction);flex-wrap:var(--flex-wrap);gap:var(--row-gap) var(--column-gap);justify-content:var(--justify-content)}.elementor-invisible{visibility:hidden}.elementor-align-center{text-align:center}.elementor-align-right{text-align:right}.elementor-align-left{text-align:left}.elementor-align-center .elementor-button,.elementor-align-left .elementor-button,.elementor-align-right .elementor-button{width:auto}.elementor-align-justify .elementor-button{width:100%}.elementor-custom-embed-play{left:50%;position:absolute;top:50%;transform:translate(-50%,-50%)}.elementor-custom-embed-play i{color:#fff;font-size:100px;text-shadow:1px 0 6px rgba(0,0,0,.3)}.elementor-custom-embed-play svg{height:100px;width:100px;fill:#fff;filter:drop-shadow(1px 0 6px rgba(0,0,0,.3))}.elementor-custom-embed-play i,.elementor-custom-embed-play svg{opacity:.8;transition:all .5s}.elementor-custom-embed-play.elementor-playing i{font-family:eicons}.elementor-custom-embed-play.elementor-playing i:before{content:"\e8fb"}.elementor-custom-embed-play.elementor-playing i,.elementor-custom-embed-play.elementor-playing svg{animation:eicon-spin 2s linear infinite}.elementor-tag{display:inline-flex}.elementor-ken-burns{transition-duration:10s;transition-property:transform;transition-timing-function:linear}.elementor-ken-burns--out{transform:scale(1.3)}.elementor-ken-burns--active{transition-duration:20s}.elementor-ken-burns--active.elementor-ken-burns--out{transform:scale(1)}.elementor-ken-burns--active.elementor-ken-burns--in{transform:scale(1.3)}@media (min-width:ELEMENTOR_SCREEN_WIDESCREEN_MIN){.elementor-widescreen-align-center{text-align:center}.elementor-widescreen-align-right{text-align:right}.elementor-widescreen-align-left{text-align:left}.elementor-widescreen-align-center .elementor-button,.elementor-widescreen-align-left .elementor-button,.elementor-widescreen-align-right .elementor-button{width:auto}.elementor-widescreen-align-justify .elementor-button{width:100%}}@media (max-width:ELEMENTOR_SCREEN_LAPTOP_MAX){.elementor-laptop-align-center{text-align:center}.elementor-laptop-align-right{text-align:right}.elementor-laptop-align-left{text-align:left}.elementor-laptop-align-center .elementor-button,.elementor-laptop-align-left .elementor-button,.elementor-laptop-align-right .elementor-button{width:auto}.elementor-laptop-align-justify .elementor-button{width:100%}}@media (max-width:ELEMENTOR_SCREEN_TABLET_EXTRA_MAX){.elementor-tablet_extra-align-center{text-align:center}.elementor-tablet_extra-align-right{text-align:right}.elementor-tablet_extra-align-left{text-align:left}.elementor-tablet_extra-align-center .elementor-button,.elementor-tablet_extra-align-left .elementor-button,.elementor-tablet_extra-align-right .elementor-button{width:auto}.elementor-tablet_extra-align-justify .elementor-button{width:100%}}@media (max-width:ELEMENTOR_SCREEN_TABLET_MAX){.elementor-tablet-align-center{text-align:center}.elementor-tablet-align-right{text-align:right}.elementor-tablet-align-left{text-align:left}.elementor-tablet-align-center .elementor-button,.elementor-tablet-align-left .elementor-button,.elementor-tablet-align-right .elementor-button{width:auto}.elementor-tablet-align-justify .elementor-button{width:100%}}@media (max-width:ELEMENTOR_SCREEN_MOBILE_EXTRA_MAX){.elementor-mobile_extra-align-center{text-align:center}.elementor-mobile_extra-align-right{text-align:right}.elementor-mobile_extra-align-left{text-align:left}.elementor-mobile_extra-align-center .elementor-button,.elementor-mobile_extra-align-left .elementor-button,.elementor-mobile_extra-align-right .elementor-button{width:auto}.elementor-mobile_extra-align-justify .elementor-button{width:100%}}@media (max-width:ELEMENTOR_SCREEN_MOBILE_MAX){.elementor-mobile-align-center{text-align:center}.elementor-mobile-align-right{text-align:right}.elementor-mobile-align-left{text-align:left}.elementor-mobile-align-center .elementor-button,.elementor-mobile-align-left .elementor-button,.elementor-mobile-align-right .elementor-button{width:auto}.elementor-mobile-align-justify .elementor-button{width:100%}}:root{--page-title-display:block}.elementor-page-title,h1.entry-title{display:var(--page-title-display)}@keyframes eicon-spin{0%{transform:rotate(0deg)}to{transform:rotate(359deg)}}.eicon-animation-spin{animation:eicon-spin 2s linear infinite}.elementor-section{position:relative}.elementor-section .elementor-container{display:flex;margin-left:auto;margin-right:auto;position:relative}@media (max-width:ELEMENTOR_SCREEN_TABLET_MAX){.elementor-section .elementor-container{flex-wrap:wrap}}.elementor-section.elementor-section-boxed>.elementor-container{max-width:1140px}.elementor-section.elementor-section-stretched{position:relative;width:100%}.elementor-section.elementor-section-items-top>.elementor-container{align-items:flex-start}.elementor-section.elementor-section-items-middle>.elementor-container{align-items:center}.elementor-section.elementor-section-items-bottom>.elementor-container{align-items:flex-end}@media (min-width:ELEMENTOR_SCREEN_MOBILE_NEXT){.elementor-section.elementor-section-height-full{height:100vh}.elementor-section.elementor-section-height-full>.elementor-container{height:100%}}.elementor-bc-flex-widget .elementor-section-content-top>.elementor-container>.elementor-column>.elementor-widget-wrap{align-items:flex-start}.elementor-bc-flex-widget .elementor-section-content-middle>.elementor-container>.elementor-column>.elementor-widget-wrap{align-items:center}.elementor-bc-flex-widget .elementor-section-content-bottom>.elementor-container>.elementor-column>.elementor-widget-wrap{align-items:flex-end}.elementor-widget-wrap{align-content:flex-start;flex-wrap:wrap;position:relative;width:100%}.elementor:not(.elementor-bc-flex-widget) .elementor-widget-wrap{display:flex}.elementor-widget-wrap>.elementor-element{width:100%}.elementor-widget-wrap.e-swiper-container{width:calc(100% - (var(--e-column-margin-left, 0px) + var(--e-column-margin-right, 0px)))}.elementor-widget{position:relative}.elementor-widget:not(:last-child){margin-bottom:var(--kit-widget-spacing,20px)}.elementor-widget:not(:last-child).elementor-absolute,.elementor-widget:not(:last-child).elementor-widget__width-auto,.elementor-widget:not(:last-child).elementor-widget__width-initial{margin-bottom:0}.elementor-column{display:flex;min-height:1px;position:relative}.elementor-column-gap-narrow>.elementor-column>.elementor-element-populated{padding:5px}.elementor-column-gap-default>.elementor-column>.elementor-element-populated{padding:10px}.elementor-column-gap-extended>.elementor-column>.elementor-element-populated{padding:15px}.elementor-column-gap-wide>.elementor-column>.elementor-element-populated{padding:20px}.elementor-column-gap-wider>.elementor-column>.elementor-element-populated{padding:30px}.elementor-inner-section .elementor-column-gap-no .elementor-element-populated{padding:0}@media (min-width:ELEMENTOR_SCREEN_MOBILE_NEXT){.elementor-column.elementor-col-10,.elementor-column[data-col="10"]{width:10%}.elementor-column.elementor-col-11,.elementor-column[data-col="11"]{width:11.111%}.elementor-column.elementor-col-12,.elementor-column[data-col="12"]{width:12.5%}.elementor-column.elementor-col-14,.elementor-column[data-col="14"]{width:14.285%}.elementor-column.elementor-col-16,.elementor-column[data-col="16"]{width:16.666%}.elementor-column.elementor-col-20,.elementor-column[data-col="20"]{width:20%}.elementor-column.elementor-col-25,.elementor-column[data-col="25"]{width:25%}.elementor-column.elementor-col-30,.elementor-column[data-col="30"]{width:30%}.elementor-column.elementor-col-33,.elementor-column[data-col="33"]{width:33.333%}.elementor-column.elementor-col-40,.elementor-column[data-col="40"]{width:40%}.elementor-column.elementor-col-50,.elementor-column[data-col="50"]{width:50%}.elementor-column.elementor-col-60,.elementor-column[data-col="60"]{width:60%}.elementor-column.elementor-col-66,.elementor-column[data-col="66"]{width:66.666%}.elementor-column.elementor-col-70,.elementor-column[data-col="70"]{width:70%}.elementor-column.elementor-col-75,.elementor-column[data-col="75"]{width:75%}.elementor-column.elementor-col-80,.elementor-column[data-col="80"]{width:80%}.elementor-column.elementor-col-83,.elementor-column[data-col="83"]{width:83.333%}.elementor-column.elementor-col-90,.elementor-column[data-col="90"]{width:90%}.elementor-column.elementor-col-100,.elementor-column[data-col="100"]{width:100%}}@media (max-width:479px){.elementor-column.elementor-xs-10{width:10%}.elementor-column.elementor-xs-11{width:11.111%}.elementor-column.elementor-xs-12{width:12.5%}.elementor-column.elementor-xs-14{width:14.285%}.elementor-column.elementor-xs-16{width:16.666%}.elementor-column.elementor-xs-20{width:20%}.elementor-column.elementor-xs-25{width:25%}.elementor-column.elementor-xs-30{width:30%}.elementor-column.elementor-xs-33{width:33.333%}.elementor-column.elementor-xs-40{width:40%}.elementor-column.elementor-xs-50{width:50%}.elementor-column.elementor-xs-60{width:60%}.elementor-column.elementor-xs-66{width:66.666%}.elementor-column.elementor-xs-70{width:70%}.elementor-column.elementor-xs-75{width:75%}.elementor-column.elementor-xs-80{width:80%}.elementor-column.elementor-xs-83{width:83.333%}.elementor-column.elementor-xs-90{width:90%}.elementor-column.elementor-xs-100{width:100%}}@media (max-width:ELEMENTOR_SCREEN_MOBILE_MAX){.elementor-column.elementor-sm-10{width:10%}.elementor-column.elementor-sm-11{width:11.111%}.elementor-column.elementor-sm-12{width:12.5%}.elementor-column.elementor-sm-14{width:14.285%}.elementor-column.elementor-sm-16{width:16.666%}.elementor-column.elementor-sm-20{width:20%}.elementor-column.elementor-sm-25{width:25%}.elementor-column.elementor-sm-30{width:30%}.elementor-column.elementor-sm-33{width:33.333%}.elementor-column.elementor-sm-40{width:40%}.elementor-column.elementor-sm-50{width:50%}.elementor-column.elementor-sm-60{width:60%}.elementor-column.elementor-sm-66{width:66.666%}.elementor-column.elementor-sm-70{width:70%}.elementor-column.elementor-sm-75{width:75%}.elementor-column.elementor-sm-80{width:80%}.elementor-column.elementor-sm-83{width:83.333%}.elementor-column.elementor-sm-90{width:90%}.elementor-column.elementor-sm-100{width:100%}}@media (min-width:ELEMENTOR_SCREEN_MOBILE_NEXT) and (max-width:ELEMENTOR_SCREEN_TABLET_MAX){.elementor-column.elementor-md-10{width:10%}.elementor-column.elementor-md-11{width:11.111%}.elementor-column.elementor-md-12{width:12.5%}.elementor-column.elementor-md-14{width:14.285%}.elementor-column.elementor-md-16{width:16.666%}.elementor-column.elementor-md-20{width:20%}.elementor-column.elementor-md-25{width:25%}.elementor-column.elementor-md-30{width:30%}.elementor-column.elementor-md-33{width:33.333%}.elementor-column.elementor-md-40{width:40%}.elementor-column.elementor-md-50{width:50%}.elementor-column.elementor-md-60{width:60%}.elementor-column.elementor-md-66{width:66.666%}.elementor-column.elementor-md-70{width:70%}.elementor-column.elementor-md-75{width:75%}.elementor-column.elementor-md-80{width:80%}.elementor-column.elementor-md-83{width:83.333%}.elementor-column.elementor-md-90{width:90%}.elementor-column.elementor-md-100{width:100%}}@media (min-width:ELEMENTOR_SCREEN_WIDESCREEN_MIN){.elementor-reverse-widescreen>.elementor-container>:first-child{order:10}.elementor-reverse-widescreen>.elementor-container>:nth-child(2){order:9}.elementor-reverse-widescreen>.elementor-container>:nth-child(3){order:8}.elementor-reverse-widescreen>.elementor-container>:nth-child(4){order:7}.elementor-reverse-widescreen>.elementor-container>:nth-child(5){order:6}.elementor-reverse-widescreen>.elementor-container>:nth-child(6){order:5}.elementor-reverse-widescreen>.elementor-container>:nth-child(7){order:4}.elementor-reverse-widescreen>.elementor-container>:nth-child(8){order:3}.elementor-reverse-widescreen>.elementor-container>:nth-child(9){order:2}.elementor-reverse-widescreen>.elementor-container>:nth-child(10){order:1}}@media (min-width:ELEMENTOR_SCREEN_TABLET_NEXT) and (max-width:ELEMENTOR_SCREEN_LAPTOP_MAX){.elementor-reverse-laptop>.elementor-container>:first-child{order:10}.elementor-reverse-laptop>.elementor-container>:nth-child(2){order:9}.elementor-reverse-laptop>.elementor-container>:nth-child(3){order:8}.elementor-reverse-laptop>.elementor-container>:nth-child(4){order:7}.elementor-reverse-laptop>.elementor-container>:nth-child(5){order:6}.elementor-reverse-laptop>.elementor-container>:nth-child(6){order:5}.elementor-reverse-laptop>.elementor-container>:nth-child(7){order:4}.elementor-reverse-laptop>.elementor-container>:nth-child(8){order:3}.elementor-reverse-laptop>.elementor-container>:nth-child(9){order:2}.elementor-reverse-laptop>.elementor-container>:nth-child(10){order:1}}@media (min-width:ELEMENTOR_SCREEN_TABLET_EXTRA_NEXT) and (max-width:ELEMENTOR_SCREEN_LAPTOP_MAX){.elementor-reverse-laptop>.elementor-container>:first-child{order:10}.elementor-reverse-laptop>.elementor-container>:nth-child(2){order:9}.elementor-reverse-laptop>.elementor-container>:nth-child(3){order:8}.elementor-reverse-laptop>.elementor-container>:nth-child(4){order:7}.elementor-reverse-laptop>.elementor-container>:nth-child(5){order:6}.elementor-reverse-laptop>.elementor-container>:nth-child(6){order:5}.elementor-reverse-laptop>.elementor-container>:nth-child(7){order:4}.elementor-reverse-laptop>.elementor-container>:nth-child(8){order:3}.elementor-reverse-laptop>.elementor-container>:nth-child(9){order:2}.elementor-reverse-laptop>.elementor-container>:nth-child(10){order:1}}@media (min-width:ELEMENTOR_SCREEN_TABLET_NEXT) and (max-width:ELEMENTOR_SCREEN_TABLET_EXTRA_MAX){.elementor-reverse-laptop>.elementor-container>:first-child,.elementor-reverse-laptop>.elementor-container>:nth-child(10),.elementor-reverse-laptop>.elementor-container>:nth-child(2),.elementor-reverse-laptop>.elementor-container>:nth-child(3),.elementor-reverse-laptop>.elementor-container>:nth-child(4),.elementor-reverse-laptop>.elementor-container>:nth-child(5),.elementor-reverse-laptop>.elementor-container>:nth-child(6),.elementor-reverse-laptop>.elementor-container>:nth-child(7),.elementor-reverse-laptop>.elementor-container>:nth-child(8),.elementor-reverse-laptop>.elementor-container>:nth-child(9){order:0}.elementor-reverse-tablet_extra>.elementor-container>:first-child{order:10}.elementor-reverse-tablet_extra>.elementor-container>:nth-child(2){order:9}.elementor-reverse-tablet_extra>.elementor-container>:nth-child(3){order:8}.elementor-reverse-tablet_extra>.elementor-container>:nth-child(4){order:7}.elementor-reverse-tablet_extra>.elementor-container>:nth-child(5){order:6}.elementor-reverse-tablet_extra>.elementor-container>:nth-child(6){order:5}.elementor-reverse-tablet_extra>.elementor-container>:nth-child(7){order:4}.elementor-reverse-tablet_extra>.elementor-container>:nth-child(8){order:3}.elementor-reverse-tablet_extra>.elementor-container>:nth-child(9){order:2}.elementor-reverse-tablet_extra>.elementor-container>:nth-child(10){order:1}}@media (min-width:ELEMENTOR_SCREEN_MOBILE_NEXT) and (max-width:ELEMENTOR_SCREEN_TABLET_MAX){.elementor-reverse-tablet>.elementor-container>:first-child{order:10}.elementor-reverse-tablet>.elementor-container>:nth-child(2){order:9}.elementor-reverse-tablet>.elementor-container>:nth-child(3){order:8}.elementor-reverse-tablet>.elementor-container>:nth-child(4){order:7}.elementor-reverse-tablet>.elementor-container>:nth-child(5){order:6}.elementor-reverse-tablet>.elementor-container>:nth-child(6){order:5}.elementor-reverse-tablet>.elementor-container>:nth-child(7){order:4}.elementor-reverse-tablet>.elementor-container>:nth-child(8){order:3}.elementor-reverse-tablet>.elementor-container>:nth-child(9){order:2}.elementor-reverse-tablet>.elementor-container>:nth-child(10){order:1}}@media (min-width:ELEMENTOR_SCREEN_MOBILE_EXTRA_NEXT) and (max-width:ELEMENTOR_SCREEN_TABLET_MAX){.elementor-reverse-tablet>.elementor-container>:first-child{order:10}.elementor-reverse-tablet>.elementor-container>:nth-child(2){order:9}.elementor-reverse-tablet>.elementor-container>:nth-child(3){order:8}.elementor-reverse-tablet>.elementor-container>:nth-child(4){order:7}.elementor-reverse-tablet>.elementor-container>:nth-child(5){order:6}.elementor-reverse-tablet>.elementor-container>:nth-child(6){order:5}.elementor-reverse-tablet>.elementor-container>:nth-child(7){order:4}.elementor-reverse-tablet>.elementor-container>:nth-child(8){order:3}.elementor-reverse-tablet>.elementor-container>:nth-child(9){order:2}.elementor-reverse-tablet>.elementor-container>:nth-child(10){order:1}}@media (min-width:ELEMENTOR_SCREEN_MOBILE_NEXT) and (max-width:ELEMENTOR_SCREEN_MOBILE_EXTRA_MAX){.elementor-reverse-tablet>.elementor-container>:first-child,.elementor-reverse-tablet>.elementor-container>:nth-child(10),.elementor-reverse-tablet>.elementor-container>:nth-child(2),.elementor-reverse-tablet>.elementor-container>:nth-child(3),.elementor-reverse-tablet>.elementor-container>:nth-child(4),.elementor-reverse-tablet>.elementor-container>:nth-child(5),.elementor-reverse-tablet>.elementor-container>:nth-child(6),.elementor-reverse-tablet>.elementor-container>:nth-child(7),.elementor-reverse-tablet>.elementor-container>:nth-child(8),.elementor-reverse-tablet>.elementor-container>:nth-child(9){order:0}.elementor-reverse-mobile_extra>.elementor-container>:first-child{order:10}.elementor-reverse-mobile_extra>.elementor-container>:nth-child(2){order:9}.elementor-reverse-mobile_extra>.elementor-container>:nth-child(3){order:8}.elementor-reverse-mobile_extra>.elementor-container>:nth-child(4){order:7}.elementor-reverse-mobile_extra>.elementor-container>:nth-child(5){order:6}.elementor-reverse-mobile_extra>.elementor-container>:nth-child(6){order:5}.elementor-reverse-mobile_extra>.elementor-container>:nth-child(7){order:4}.elementor-reverse-mobile_extra>.elementor-container>:nth-child(8){order:3}.elementor-reverse-mobile_extra>.elementor-container>:nth-child(9){order:2}.elementor-reverse-mobile_extra>.elementor-container>:nth-child(10){order:1}}@media (max-width:ELEMENTOR_SCREEN_MOBILE_MAX){.elementor-reverse-mobile>.elementor-container>:first-child{order:10}.elementor-reverse-mobile>.elementor-container>:nth-child(2){order:9}.elementor-reverse-mobile>.elementor-container>:nth-child(3){order:8}.elementor-reverse-mobile>.elementor-container>:nth-child(4){order:7}.elementor-reverse-mobile>.elementor-container>:nth-child(5){order:6}.elementor-reverse-mobile>.elementor-container>:nth-child(6){order:5}.elementor-reverse-mobile>.elementor-container>:nth-child(7){order:4}.elementor-reverse-mobile>.elementor-container>:nth-child(8){order:3}.elementor-reverse-mobile>.elementor-container>:nth-child(9){order:2}.elementor-reverse-mobile>.elementor-container>:nth-child(10){order:1}.elementor-column{width:100%}}.elementor-grid{display:grid;grid-column-gap:var(--grid-column-gap);grid-row-gap:var(--grid-row-gap)}.elementor-grid .elementor-grid-item{min-width:0}.elementor-grid-0 .elementor-grid{display:inline-block;margin-bottom:calc(-1 * var(--grid-row-gap));width:100%;word-spacing:var(--grid-column-gap)}.elementor-grid-0 .elementor-grid .elementor-grid-item{display:inline-block;margin-bottom:var(--grid-row-gap);word-break:break-word}.elementor-grid-1 .elementor-grid{grid-template-columns:repeat(1,1fr)}.elementor-grid-2 .elementor-grid{grid-template-columns:repeat(2,1fr)}.elementor-grid-3 .elementor-grid{grid-template-columns:repeat(3,1fr)}.elementor-grid-4 .elementor-grid{grid-template-columns:repeat(4,1fr)}.elementor-grid-5 .elementor-grid{grid-template-columns:repeat(5,1fr)}.elementor-grid-6 .elementor-grid{grid-template-columns:repeat(6,1fr)}.elementor-grid-7 .elementor-grid{grid-template-columns:repeat(7,1fr)}.elementor-grid-8 .elementor-grid{grid-template-columns:repeat(8,1fr)}.elementor-grid-9 .elementor-grid{grid-template-columns:repeat(9,1fr)}.elementor-grid-10 .elementor-grid{grid-template-columns:repeat(10,1fr)}.elementor-grid-11 .elementor-grid{grid-template-columns:repeat(11,1fr)}.elementor-grid-12 .elementor-grid{grid-template-columns:repeat(12,1fr)}@media (min-width:ELEMENTOR_SCREEN_WIDESCREEN_MIN){.elementor-grid-widescreen-0 .elementor-grid{display:inline-block;margin-bottom:calc(-1 * var(--grid-row-gap));width:100%;word-spacing:var(--grid-column-gap)}.elementor-grid-widescreen-0 .elementor-grid .elementor-grid-item{display:inline-block;margin-bottom:var(--grid-row-gap);word-break:break-word}.elementor-grid-widescreen-1 .elementor-grid{grid-template-columns:repeat(1,1fr)}.elementor-grid-widescreen-2 .elementor-grid{grid-template-columns:repeat(2,1fr)}.elementor-grid-widescreen-3 .elementor-grid{grid-template-columns:repeat(3,1fr)}.elementor-grid-widescreen-4 .elementor-grid{grid-template-columns:repeat(4,1fr)}.elementor-grid-widescreen-5 .elementor-grid{grid-template-columns:repeat(5,1fr)}.elementor-grid-widescreen-6 .elementor-grid{grid-template-columns:repeat(6,1fr)}.elementor-grid-widescreen-7 .elementor-grid{grid-template-columns:repeat(7,1fr)}.elementor-grid-widescreen-8 .elementor-grid{grid-template-columns:repeat(8,1fr)}.elementor-grid-widescreen-9 .elementor-grid{grid-template-columns:repeat(9,1fr)}.elementor-grid-widescreen-10 .elementor-grid{grid-template-columns:repeat(10,1fr)}.elementor-grid-widescreen-11 .elementor-grid{grid-template-columns:repeat(11,1fr)}.elementor-grid-widescreen-12 .elementor-grid{grid-template-columns:repeat(12,1fr)}}@media (max-width:ELEMENTOR_SCREEN_LAPTOP_MAX){.elementor-grid-laptop-0 .elementor-grid{display:inline-block;margin-bottom:calc(-1 * var(--grid-row-gap));width:100%;word-spacing:var(--grid-column-gap)}.elementor-grid-laptop-0 .elementor-grid .elementor-grid-item{display:inline-block;margin-bottom:var(--grid-row-gap);word-break:break-word}.elementor-grid-laptop-1 .elementor-grid{grid-template-columns:repeat(1,1fr)}.elementor-grid-laptop-2 .elementor-grid{grid-template-columns:repeat(2,1fr)}.elementor-grid-laptop-3 .elementor-grid{grid-template-columns:repeat(3,1fr)}.elementor-grid-laptop-4 .elementor-grid{grid-template-columns:repeat(4,1fr)}.elementor-grid-laptop-5 .elementor-grid{grid-template-columns:repeat(5,1fr)}.elementor-grid-laptop-6 .elementor-grid{grid-template-columns:repeat(6,1fr)}.elementor-grid-laptop-7 .elementor-grid{grid-template-columns:repeat(7,1fr)}.elementor-grid-laptop-8 .elementor-grid{grid-template-columns:repeat(8,1fr)}.elementor-grid-laptop-9 .elementor-grid{grid-template-columns:repeat(9,1fr)}.elementor-grid-laptop-10 .elementor-grid{grid-template-columns:repeat(10,1fr)}.elementor-grid-laptop-11 .elementor-grid{grid-template-columns:repeat(11,1fr)}.elementor-grid-laptop-12 .elementor-grid{grid-template-columns:repeat(12,1fr)}}@media (max-width:ELEMENTOR_SCREEN_TABLET_EXTRA_MAX){.elementor-grid-tablet_extra-0 .elementor-grid{display:inline-block;margin-bottom:calc(-1 * var(--grid-row-gap));width:100%;word-spacing:var(--grid-column-gap)}.elementor-grid-tablet_extra-0 .elementor-grid .elementor-grid-item{display:inline-block;margin-bottom:var(--grid-row-gap);word-break:break-word}.elementor-grid-tablet_extra-1 .elementor-grid{grid-template-columns:repeat(1,1fr)}.elementor-grid-tablet_extra-2 .elementor-grid{grid-template-columns:repeat(2,1fr)}.elementor-grid-tablet_extra-3 .elementor-grid{grid-template-columns:repeat(3,1fr)}.elementor-grid-tablet_extra-4 .elementor-grid{grid-template-columns:repeat(4,1fr)}.elementor-grid-tablet_extra-5 .elementor-grid{grid-template-columns:repeat(5,1fr)}.elementor-grid-tablet_extra-6 .elementor-grid{grid-template-columns:repeat(6,1fr)}.elementor-grid-tablet_extra-7 .elementor-grid{grid-template-columns:repeat(7,1fr)}.elementor-grid-tablet_extra-8 .elementor-grid{grid-template-columns:repeat(8,1fr)}.elementor-grid-tablet_extra-9 .elementor-grid{grid-template-columns:repeat(9,1fr)}.elementor-grid-tablet_extra-10 .elementor-grid{grid-template-columns:repeat(10,1fr)}.elementor-grid-tablet_extra-11 .elementor-grid{grid-template-columns:repeat(11,1fr)}.elementor-grid-tablet_extra-12 .elementor-grid{grid-template-columns:repeat(12,1fr)}}@media (max-width:ELEMENTOR_SCREEN_TABLET_MAX){.elementor-grid-tablet-0 .elementor-grid{display:inline-block;margin-bottom:calc(-1 * var(--grid-row-gap));width:100%;word-spacing:var(--grid-column-gap)}.elementor-grid-tablet-0 .elementor-grid .elementor-grid-item{display:inline-block;margin-bottom:var(--grid-row-gap);word-break:break-word}.elementor-grid-tablet-1 .elementor-grid{grid-template-columns:repeat(1,1fr)}.elementor-grid-tablet-2 .elementor-grid{grid-template-columns:repeat(2,1fr)}.elementor-grid-tablet-3 .elementor-grid{grid-template-columns:repeat(3,1fr)}.elementor-grid-tablet-4 .elementor-grid{grid-template-columns:repeat(4,1fr)}.elementor-grid-tablet-5 .elementor-grid{grid-template-columns:repeat(5,1fr)}.elementor-grid-tablet-6 .elementor-grid{grid-template-columns:repeat(6,1fr)}.elementor-grid-tablet-7 .elementor-grid{grid-template-columns:repeat(7,1fr)}.elementor-grid-tablet-8 .elementor-grid{grid-template-columns:repeat(8,1fr)}.elementor-grid-tablet-9 .elementor-grid{grid-template-columns:repeat(9,1fr)}.elementor-grid-tablet-10 .elementor-grid{grid-template-columns:repeat(10,1fr)}.elementor-grid-tablet-11 .elementor-grid{grid-template-columns:repeat(11,1fr)}.elementor-grid-tablet-12 .elementor-grid{grid-template-columns:repeat(12,1fr)}}@media (max-width:ELEMENTOR_SCREEN_MOBILE_EXTRA_MAX){.elementor-grid-mobile_extra-0 .elementor-grid{display:inline-block;margin-bottom:calc(-1 * var(--grid-row-gap));width:100%;word-spacing:var(--grid-column-gap)}.elementor-grid-mobile_extra-0 .elementor-grid .elementor-grid-item{display:inline-block;margin-bottom:var(--grid-row-gap);word-break:break-word}.elementor-grid-mobile_extra-1 .elementor-grid{grid-template-columns:repeat(1,1fr)}.elementor-grid-mobile_extra-2 .elementor-grid{grid-template-columns:repeat(2,1fr)}.elementor-grid-mobile_extra-3 .elementor-grid{grid-template-columns:repeat(3,1fr)}.elementor-grid-mobile_extra-4 .elementor-grid{grid-template-columns:repeat(4,1fr)}.elementor-grid-mobile_extra-5 .elementor-grid{grid-template-columns:repeat(5,1fr)}.elementor-grid-mobile_extra-6 .elementor-grid{grid-template-columns:repeat(6,1fr)}.elementor-grid-mobile_extra-7 .elementor-grid{grid-template-columns:repeat(7,1fr)}.elementor-grid-mobile_extra-8 .elementor-grid{grid-template-columns:repeat(8,1fr)}.elementor-grid-mobile_extra-9 .elementor-grid{grid-template-columns:repeat(9,1fr)}.elementor-grid-mobile_extra-10 .elementor-grid{grid-template-columns:repeat(10,1fr)}.elementor-grid-mobile_extra-11 .elementor-grid{grid-template-columns:repeat(11,1fr)}.elementor-grid-mobile_extra-12 .elementor-grid{grid-template-columns:repeat(12,1fr)}}@media (max-width:ELEMENTOR_SCREEN_MOBILE_MAX){.elementor-grid-mobile-0 .elementor-grid{display:inline-block;margin-bottom:calc(-1 * var(--grid-row-gap));width:100%;word-spacing:var(--grid-column-gap)}.elementor-grid-mobile-0 .elementor-grid .elementor-grid-item{display:inline-block;margin-bottom:var(--grid-row-gap);word-break:break-word}.elementor-grid-mobile-1 .elementor-grid{grid-template-columns:repeat(1,1fr)}.elementor-grid-mobile-2 .elementor-grid{grid-template-columns:repeat(2,1fr)}.elementor-grid-mobile-3 .elementor-grid{grid-template-columns:repeat(3,1fr)}.elementor-grid-mobile-4 .elementor-grid{grid-template-columns:repeat(4,1fr)}.elementor-grid-mobile-5 .elementor-grid{grid-template-columns:repeat(5,1fr)}.elementor-grid-mobile-6 .elementor-grid{grid-template-columns:repeat(6,1fr)}.elementor-grid-mobile-7 .elementor-grid{grid-template-columns:repeat(7,1fr)}.elementor-grid-mobile-8 .elementor-grid{grid-template-columns:repeat(8,1fr)}.elementor-grid-mobile-9 .elementor-grid{grid-template-columns:repeat(9,1fr)}.elementor-grid-mobile-10 .elementor-grid{grid-template-columns:repeat(10,1fr)}.elementor-grid-mobile-11 .elementor-grid{grid-template-columns:repeat(11,1fr)}.elementor-grid-mobile-12 .elementor-grid{grid-template-columns:repeat(12,1fr)}}@media (min-width:ELEMENTOR_SCREEN_DESKTOP_MIN){#elementor-device-mode:after{content:"desktop"}}@media (min-width:ELEMENTOR_SCREEN_WIDESCREEN_MIN){#elementor-device-mode:after{content:"widescreen"}}@media (max-width:ELEMENTOR_SCREEN_LAPTOP_MAX){#elementor-device-mode:after{content:"laptop"}}@media (max-width:ELEMENTOR_SCREEN_TABLET_EXTRA_MAX){#elementor-device-mode:after{content:"tablet_extra"}}@media (max-width:ELEMENTOR_SCREEN_TABLET_MAX){#elementor-device-mode:after{content:"tablet"}}@media (max-width:ELEMENTOR_SCREEN_MOBILE_EXTRA_MAX){#elementor-device-mode:after{content:"mobile_extra"}}@media (max-width:ELEMENTOR_SCREEN_MOBILE_MAX){#elementor-device-mode:after{content:"mobile"}}@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}.e-con{--border-radius:0;--border-top-width:0px;--border-right-width:0px;--border-bottom-width:0px;--border-left-width:0px;--border-style:initial;--border-color:initial;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--content-width:min(100%,var(--container-max-width,1140px));--width:100%;--min-height:initial;--height:auto;--text-align:initial;--margin-top:0px;--margin-right:0px;--margin-bottom:0px;--margin-left:0px;--padding-top:var(--container-default-padding-top,10px);--padding-right:var(--container-default-padding-right,10px);--padding-bottom:var(--container-default-padding-bottom,10px);--padding-left:var(--container-default-padding-left,10px);--position:relative;--z-index:revert;--overflow:visible;--gap:var(--widgets-spacing,20px);--row-gap:var(--widgets-spacing-row,20px);--column-gap:var(--widgets-spacing-column,20px);--overlay-mix-blend-mode:initial;--overlay-opacity:1;--overlay-transition:0.3s;--e-con-grid-template-columns:repeat(3,1fr);--e-con-grid-template-rows:repeat(2,1fr);border-radius:var(--border-radius);height:var(--height);min-height:var(--min-height);min-width:0;overflow:var(--overflow);position:var(--position);width:var(--width);z-index:var(--z-index);--flex-wrap-mobile:wrap;margin-block-end:var(--margin-block-end);margin-block-start:var(--margin-block-start);margin-inline-end:var(--margin-inline-end);margin-inline-start:var(--margin-inline-start);padding-inline-end:var(--padding-inline-end);padding-inline-start:var(--padding-inline-start)}.e-con:not(.e-div-block-base){transition:background var(--background-transition,.3s),border var(--border-transition,.3s),box-shadow var(--border-transition,.3s),transform var(--e-con-transform-transition-duration,.4s)}.e-con{--margin-block-start:var(--margin-top);--margin-block-end:var(--margin-bottom);--margin-inline-start:var(--margin-left);--margin-inline-end:var(--margin-right);--padding-inline-start:var(--padding-left);--padding-inline-end:var(--padding-right);--padding-block-start:var(--padding-top);--padding-block-end:var(--padding-bottom);--border-block-start-width:var(--border-top-width);--border-block-end-width:var(--border-bottom-width);--border-inline-start-width:var(--border-left-width);--border-inline-end-width:var(--border-right-width)}body.rtl .e-con{--padding-inline-start:var(--padding-right);--padding-inline-end:var(--padding-left);--margin-inline-start:var(--margin-right);--margin-inline-end:var(--margin-left);--border-inline-start-width:var(--border-right-width);--border-inline-end-width:var(--border-left-width)}.e-con.e-flex{--flex-direction:column;--flex-basis:auto;--flex-grow:0;--flex-shrink:1;flex:var(--flex-grow) var(--flex-shrink) var(--flex-basis)}.e-con-full,.e-con>.e-con-inner{padding-block-end:var(--padding-block-end);padding-block-start:var(--padding-block-start);text-align:var(--text-align)}.e-con-full.e-flex,.e-con.e-flex>.e-con-inner{flex-direction:var(--flex-direction)}.e-con,.e-con>.e-con-inner{display:var(--display)}.e-con.e-grid{--grid-justify-content:start;--grid-align-content:start;--grid-auto-flow:row}.e-con.e-grid,.e-con.e-grid>.e-con-inner{align-content:var(--grid-align-content);align-items:var(--align-items);grid-auto-flow:var(--grid-auto-flow);grid-template-columns:var(--e-con-grid-template-columns);grid-template-rows:var(--e-con-grid-template-rows);justify-content:var(--grid-justify-content);justify-items:var(--justify-items)}.e-con-boxed.e-flex{align-content:normal;align-items:normal;flex-direction:column;flex-wrap:nowrap;justify-content:normal}.e-con-boxed.e-grid{grid-template-columns:1fr;grid-template-rows:1fr;justify-items:legacy}.e-con-boxed{gap:initial;text-align:initial}.e-con.e-flex>.e-con-inner{align-content:var(--align-content);align-items:var(--align-items);align-self:auto;flex-basis:auto;flex-grow:1;flex-shrink:1;flex-wrap:var(--flex-wrap);justify-content:var(--justify-content)}.e-con.e-grid>.e-con-inner{align-items:var(--align-items);justify-items:var(--justify-items)}.e-con>.e-con-inner{gap:var(--row-gap) var(--column-gap);height:100%;margin:0 auto;max-width:var(--content-width);padding-inline-end:0;padding-inline-start:0;width:100%}:is(.elementor-section-wrap,[data-elementor-id])>.e-con{--margin-left:auto;--margin-right:auto;max-width:min(100%,var(--width))}.e-con .elementor-widget.elementor-widget{margin-block-end:0}.e-con:before,.e-con>.elementor-background-slideshow:before,.e-con>.elementor-motion-effects-container>.elementor-motion-effects-layer:before,:is(.e-con,.e-con>.e-con-inner)>.elementor-background-video-container:before{border-block-end-width:var(--border-block-end-width);border-block-start-width:var(--border-block-start-width);border-color:var(--border-color);border-inline-end-width:var(--border-inline-end-width);border-inline-start-width:var(--border-inline-start-width);border-radius:var(--border-radius);border-style:var(--border-style);content:var(--background-overlay);display:block;height:max(100% + var(--border-top-width) + var(--border-bottom-width),100%);left:calc(0px - var(--border-left-width));mix-blend-mode:var(--overlay-mix-blend-mode);opacity:var(--overlay-opacity);position:absolute;top:calc(0px - var(--border-top-width));transition:var(--overlay-transition,.3s);width:max(100% + var(--border-left-width) + var(--border-right-width),100%)}.e-con:before{transition:background var(--overlay-transition,.3s),border-radius var(--border-transition,.3s),opacity var(--overlay-transition,.3s)}.e-con>.elementor-background-slideshow,:is(.e-con,.e-con>.e-con-inner)>.elementor-background-video-container{border-block-end-width:var(--border-block-end-width);border-block-start-width:var(--border-block-start-width);border-color:var(--border-color);border-inline-end-width:var(--border-inline-end-width);border-inline-start-width:var(--border-inline-start-width);border-radius:var(--border-radius);border-style:var(--border-style);height:max(100% + var(--border-top-width) + var(--border-bottom-width),100%);left:calc(0px - var(--border-left-width));top:calc(0px - var(--border-top-width));width:max(100% + var(--border-left-width) + var(--border-right-width),100%)}@media (max-width:ELEMENTOR_SCREEN_MOBILE_MAX){:is(.e-con,.e-con>.e-con-inner)>.elementor-background-video-container.elementor-hidden-mobile{display:none}}:is(.e-con,.e-con>.e-con-inner)>.elementor-background-video-container:before{z-index:1}:is(.e-con,.e-con>.e-con-inner)>.elementor-background-slideshow:before{z-index:2}.e-con .elementor-widget{min-width:0}.e-con .elementor-widget-empty,.e-con .elementor-widget-google_maps,.e-con .elementor-widget-video,.e-con .elementor-widget.e-widget-swiper{width:100%}.e-con>.e-con-inner>.elementor-widget>.elementor-widget-container,.e-con>.elementor-widget>.elementor-widget-container{height:100%}.e-con.e-con>.e-con-inner>.elementor-widget,.elementor.elementor .e-con>.elementor-widget{max-width:100%}.e-con .elementor-widget:not(:last-child){--kit-widget-spacing:0px}@media (max-width:767px){.e-con.e-flex{--width:100%;--flex-wrap:var(--flex-wrap-mobile)}.e-con.e-flex .elementor-widget-archive-posts{width:100%}}.elementor-form-fields-wrapper{display:flex;flex-wrap:wrap}.elementor-form-fields-wrapper.elementor-labels-above .elementor-field-group .elementor-field-subgroup,.elementor-form-fields-wrapper.elementor-labels-above .elementor-field-group>.elementor-select-wrapper,.elementor-form-fields-wrapper.elementor-labels-above .elementor-field-group>input,.elementor-form-fields-wrapper.elementor-labels-above .elementor-field-group>textarea{flex-basis:100%;max-width:100%}.elementor-form-fields-wrapper.elementor-labels-inline>.elementor-field-group .elementor-select-wrapper,.elementor-form-fields-wrapper.elementor-labels-inline>.elementor-field-group>input{flex-grow:1}.elementor-field-group{align-items:center;flex-wrap:wrap}.elementor-field-group.elementor-field-type-submit{align-items:flex-end}.elementor-field-group .elementor-field-textual{background-color:transparent;border:1px solid #69727d;color:#1f2124;flex-grow:1;max-width:100%;vertical-align:middle;width:100%}.elementor-field-group .elementor-field-textual:focus{box-shadow:inset 0 0 0 1px rgba(0,0,0,.1);outline:0}.elementor-field-group .elementor-field-textual::-moz-placeholder{color:inherit;font-family:inherit;opacity:.6}.elementor-field-group .elementor-field-textual::placeholder{color:inherit;font-family:inherit;opacity:.6}.elementor-field-group .elementor-select-wrapper{display:flex;position:relative;width:100%}.elementor-field-group .elementor-select-wrapper select{-webkit-appearance:none;-moz-appearance:none;appearance:none;color:inherit;flex-basis:100%;font-family:inherit;font-size:inherit;font-style:inherit;font-weight:inherit;letter-spacing:inherit;line-height:inherit;padding-inline-end:20px;text-transform:inherit}.elementor-field-group .elementor-select-wrapper:before{content:"\e92a";font-family:eicons;font-size:15px;pointer-events:none;position:absolute;right:10px;text-shadow:0 0 3px rgba(0,0,0,.3);top:50%;transform:translateY(-50%)}.elementor-field-group.elementor-field-type-select-multiple .elementor-select-wrapper:before{content:""}.elementor-field-subgroup{display:flex;flex-wrap:wrap}.elementor-field-subgroup .elementor-field-option label{display:inline-block}.elementor-field-subgroup.elementor-subgroup-inline .elementor-field-option{padding-inline-end:10px}.elementor-field-subgroup:not(.elementor-subgroup-inline) .elementor-field-option{flex-basis:100%}.elementor-field-type-acceptance .elementor-field-subgroup .elementor-field-option input,.elementor-field-type-acceptance .elementor-field-subgroup .elementor-field-option label,.elementor-field-type-checkbox .elementor-field-subgroup .elementor-field-option input,.elementor-field-type-checkbox .elementor-field-subgroup .elementor-field-option label,.elementor-field-type-radio .elementor-field-subgroup .elementor-field-option input,.elementor-field-type-radio .elementor-field-subgroup .elementor-field-option label{display:inline}.elementor-field-label{cursor:pointer}.elementor-mark-required .elementor-field-label:after{color:red;content:"*";padding-inline-start:.2em}.elementor-field-textual{border-radius:3px;font-size:15px;line-height:1.4;min-height:40px;padding:5px 14px}.elementor-field-textual.elementor-size-xs{border-radius:2px;font-size:13px;min-height:33px;padding:4px 12px}.elementor-field-textual.elementor-size-md{border-radius:4px;font-size:16px;min-height:47px;padding:6px 16px}.elementor-field-textual.elementor-size-lg{border-radius:5px;font-size:18px;min-height:59px;padding:7px 20px}.elementor-field-textual.elementor-size-xl{border-radius:6px;font-size:20px;min-height:72px;padding:8px 24px}.elementor-button-align-stretch .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button{flex-basis:100%}.elementor-button-align-stretch .e-form__buttons__wrapper{flex-basis:50%;flex-grow:1}.elementor-button-align-stretch .e-form__buttons__wrapper__button{flex-basis:100%}.elementor-button-align-center .e-form__buttons,.elementor-button-align-center .elementor-field-type-submit{justify-content:center}.elementor-button-align-start .e-form__buttons,.elementor-button-align-start .elementor-field-type-submit{justify-content:flex-start}.elementor-button-align-end .e-form__buttons,.elementor-button-align-end .elementor-field-type-submit{justify-content:flex-end}.elementor-button-align-center .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button,.elementor-button-align-end .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button,.elementor-button-align-start .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button{flex-basis:auto}.elementor-button-align-center .e-form__buttons__wrapper,.elementor-button-align-end .e-form__buttons__wrapper,.elementor-button-align-start .e-form__buttons__wrapper{flex-grow:0}.elementor-button-align-center .e-form__buttons__wrapper,.elementor-button-align-center .e-form__buttons__wrapper__button,.elementor-button-align-end .e-form__buttons__wrapper,.elementor-button-align-end .e-form__buttons__wrapper__button,.elementor-button-align-start .e-form__buttons__wrapper,.elementor-button-align-start .e-form__buttons__wrapper__button{flex-basis:auto}@media screen and (max-width:ELEMENTOR_SCREEN_TABLET_MAX){.elementor-tablet-button-align-stretch .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button{flex-basis:100%}.elementor-tablet-button-align-stretch .e-form__buttons__wrapper{flex-basis:50%;flex-grow:1}.elementor-tablet-button-align-stretch .e-form__buttons__wrapper__button{flex-basis:100%}.elementor-tablet-button-align-center .e-form__buttons,.elementor-tablet-button-align-center .elementor-field-type-submit{justify-content:center}.elementor-tablet-button-align-start .e-form__buttons,.elementor-tablet-button-align-start .elementor-field-type-submit{justify-content:flex-start}.elementor-tablet-button-align-end .e-form__buttons,.elementor-tablet-button-align-end .elementor-field-type-submit{justify-content:flex-end}.elementor-tablet-button-align-center .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button,.elementor-tablet-button-align-end .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button,.elementor-tablet-button-align-start .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button{flex-basis:auto}.elementor-tablet-button-align-center .e-form__buttons__wrapper,.elementor-tablet-button-align-end .e-form__buttons__wrapper,.elementor-tablet-button-align-start .e-form__buttons__wrapper{flex-grow:0}.elementor-tablet-button-align-center .e-form__buttons__wrapper,.elementor-tablet-button-align-center .e-form__buttons__wrapper__button,.elementor-tablet-button-align-end .e-form__buttons__wrapper,.elementor-tablet-button-align-end .e-form__buttons__wrapper__button,.elementor-tablet-button-align-start .e-form__buttons__wrapper,.elementor-tablet-button-align-start .e-form__buttons__wrapper__button{flex-basis:auto}}@media screen and (max-width:ELEMENTOR_SCREEN_MOBILE_MAX){.elementor-mobile-button-align-stretch .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button{flex-basis:100%}.elementor-mobile-button-align-stretch .e-form__buttons__wrapper{flex-basis:50%;flex-grow:1}.elementor-mobile-button-align-stretch .e-form__buttons__wrapper__button{flex-basis:100%}.elementor-mobile-button-align-center .e-form__buttons,.elementor-mobile-button-align-center .elementor-field-type-submit{justify-content:center}.elementor-mobile-button-align-start .e-form__buttons,.elementor-mobile-button-align-start .elementor-field-type-submit{justify-content:flex-start}.elementor-mobile-button-align-end .e-form__buttons,.elementor-mobile-button-align-end .elementor-field-type-submit{justify-content:flex-end}.elementor-mobile-button-align-center .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button,.elementor-mobile-button-align-end .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button,.elementor-mobile-button-align-start .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button{flex-basis:auto}.elementor-mobile-button-align-center .e-form__buttons__wrapper,.elementor-mobile-button-align-end .e-form__buttons__wrapper,.elementor-mobile-button-align-start .e-form__buttons__wrapper{flex-grow:0}.elementor-mobile-button-align-center .e-form__buttons__wrapper,.elementor-mobile-button-align-center .e-form__buttons__wrapper__button,.elementor-mobile-button-align-end .e-form__buttons__wrapper,.elementor-mobile-button-align-end .e-form__buttons__wrapper__button,.elementor-mobile-button-align-start .e-form__buttons__wrapper,.elementor-mobile-button-align-start .e-form__buttons__wrapper__button{flex-basis:auto}}.elementor-error .elementor-field{border-color:#d9534f}.elementor-error .help-inline{color:#d9534f;font-size:.9em}.elementor-message{font-size:1em;line-height:1;margin:10px 0}.elementor-message:before{content:"\e90e";display:inline-block;font-family:eicons;font-style:normal;font-weight:400;margin-inline-end:5px;vertical-align:middle}.elementor-message.elementor-message-danger{color:#d9534f}.elementor-message.elementor-message-danger:before{content:"\e87f"}.elementor-message.form-message-success{color:#5cb85c}.elementor-form .elementor-button{border:none;padding-block-end:0;padding-block-start:0}.elementor-form .elementor-button-content-wrapper,.elementor-form .elementor-button>span{display:flex;flex-direction:row;gap:5px;justify-content:center}.elementor-form .elementor-button.elementor-size-xs{min-height:33px}.elementor-form .elementor-button.elementor-size-sm{min-height:40px}.elementor-form .elementor-button.elementor-size-md{min-height:47px}.elementor-form .elementor-button.elementor-size-lg{min-height:59px}.elementor-form .elementor-button.elementor-size-xl{min-height:72px}.elementor-element:not(.e-div-block-base) .elementor-widget-container,.elementor-element:not(.e-div-block-base):not(:has(.elementor-widget-container)){transition:background .3s,border .3s,border-radius .3s,box-shadow .3s,transform var(--e-transform-transition-duration,.4s)}.elementor-heading-title{line-height:1;margin:0;padding:0}.elementor-button{background-color:#69727d;border-radius:3px;color:#fff;display:inline-block;font-size:15px;line-height:1;padding:12px 24px;fill:#fff;text-align:center;transition:all .3s}.elementor-button:focus,.elementor-button:hover,.elementor-button:visited{color:#fff}.elementor-button-content-wrapper{display:flex;flex-direction:row;gap:5px;justify-content:center}.elementor-button-icon{align-items:center;display:flex}.elementor-button-icon svg{height:auto;width:1em}.elementor-button-icon .e-font-icon-svg{height:1em}.elementor-button-text{display:inline-block}.elementor-button.elementor-size-xs{border-radius:2px;font-size:13px;padding:10px 20px}.elementor-button.elementor-size-md{border-radius:4px;font-size:16px;padding:15px 30px}.elementor-button.elementor-size-lg{border-radius:5px;font-size:18px;padding:20px 40px}.elementor-button.elementor-size-xl{border-radius:6px;font-size:20px;padding:25px 50px}.elementor-button span{text-decoration:inherit}.elementor-element.elementor-button-info .elementor-button{background-color:#5bc0de}.elementor-element.elementor-button-success .elementor-button{background-color:#5cb85c}.elementor-element.elementor-button-warning .elementor-button{background-color:#f0ad4e}.elementor-element.elementor-button-danger .elementor-button{background-color:#d9534f}.elementor-widget-button .elementor-button .elementor-button-info{background-color:#5bc0de}.elementor-widget-button .elementor-button .elementor-button-success{background-color:#5cb85c}.elementor-widget-button .elementor-button .elementor-button-warning{background-color:#f0ad4e}.elementor-widget-button .elementor-button .elementor-button-danger{background-color:#d9534f}.elementor-view-stacked .elementor-icon{background-color:#69727d;color:#fff;padding:.5em;fill:#fff}.elementor-view-framed .elementor-icon{background-color:transparent;border:3px solid #69727d;color:#69727d;padding:.5em}.elementor-icon{color:#69727d;display:inline-block;font-size:50px;line-height:1;text-align:center;transition:all .3s}.elementor-icon:hover{color:#69727d}.elementor-icon i,.elementor-icon svg{display:block;height:1em;position:relative;width:1em}.elementor-icon i:before,.elementor-icon svg:before{left:50%;position:absolute;transform:translateX(-50%)}.elementor-icon i.fad{width:auto}.elementor-shape-square .elementor-icon{border-radius:0}.elementor-shape-rounded .elementor-icon{border-radius:10%}.elementor-shape-circle .elementor-icon{border-radius:50%}.e-transform .elementor-widget-container,.e-transform:not(:has(.elementor-widget-container)){transform:perspective(var(--e-transform-perspective,0)) rotate(var(--e-transform-rotateZ,0)) rotateX(var(--e-transform-rotateX,0)) rotateY(var(--e-transform-rotateY,0)) translate(var(--e-transform-translate,0)) translateX(var(--e-transform-translateX,0)) translateY(var(--e-transform-translateY,0)) scaleX(calc(var(--e-transform-flipX, 1) * var(--e-transform-scaleX, var(--e-transform-scale, 1)))) scaleY(calc(var(--e-transform-flipY, 1) * var(--e-transform-scaleY, var(--e-transform-scale, 1)))) skewX(var(--e-transform-skewX,0)) skewY(var(--e-transform-skewY,0));transform-origin:var(--e-transform-origin-y) var(--e-transform-origin-x)}.e-con.e-transform{transform:perspective(var(--e-con-transform-perspective,0)) rotate(var(--e-con-transform-rotateZ,0)) rotateX(var(--e-con-transform-rotateX,0)) rotateY(var(--e-con-transform-rotateY,0)) translate(var(--e-con-transform-translate,0)) translateX(var(--e-con-transform-translateX,0)) translateY(var(--e-con-transform-translateY,0)) scaleX(calc(var(--e-con-transform-flipX, 1) * var(--e-con-transform-scaleX, var(--e-con-transform-scale, 1)))) scaleY(calc(var(--e-con-transform-flipY, 1) * var(--e-con-transform-scaleY, var(--e-con-transform-scale, 1)))) skewX(var(--e-con-transform-skewX,0)) skewY(var(--e-con-transform-skewY,0));transform-origin:var(--e-con-transform-origin-y) var(--e-con-transform-origin-x)}.animated{animation-duration:1.25s}.animated.animated-slow{animation-duration:2s}.animated.animated-fast{animation-duration:.75s}.animated.infinite{animation-iteration-count:infinite}.animated.reverse{animation-direction:reverse;animation-fill-mode:forwards}@media (prefers-reduced-motion:reduce){.animated{animation:none}}@media (max-width:ELEMENTOR_SCREEN_MOBILE_MAX){.elementor .elementor-hidden-mobile,.elementor .elementor-hidden-phone{display:none}}@media (min-width:ELEMENTOR_SCREEN_MOBILE_EXTRA_MIN) and (max-width:ELEMENTOR_SCREEN_MOBILE_EXTRA_MAX){.elementor .elementor-hidden-mobile_extra{display:none}}@media (min-width:ELEMENTOR_SCREEN_TABLET_MIN) and (max-width:ELEMENTOR_SCREEN_TABLET_MAX){.elementor .elementor-hidden-tablet{display:none}}@media (min-width:ELEMENTOR_SCREEN_TABLET_EXTRA_MIN) and (max-width:ELEMENTOR_SCREEN_TABLET_EXTRA_MAX){.elementor .elementor-hidden-tablet_extra{display:none}}@media (min-width:ELEMENTOR_SCREEN_LAPTOP_MIN) and (max-width:ELEMENTOR_SCREEN_LAPTOP_MAX){.elementor .elementor-hidden-laptop{display:none}}@media (min-width:ELEMENTOR_SCREEN_DESKTOP_MIN) and (max-width:ELEMENTOR_SCREEN_DESKTOP_MAX){.elementor .elementor-hidden-desktop{display:none}}@media (min-width:ELEMENTOR_SCREEN_WIDESCREEN_MIN){.elementor .elementor-hidden-widescreen{display:none}}/*! elementor - v3.19.0 - 28-02-2024 */ (self.webpackChunkelementor=self.webpackChunkelementor||[]).push([[13],{29029:t=>{t.exports={ReactQueryDevtools:function(){return null},ReactQueryDevtoolsPanel:function(){return null}}},85123:(t,e,n)=>{"use strict";n.d(e,{j:()=>u});var r=n(88863),i=n(90270),s=n(12860),u=new(function(t){function FocusManager(){var e;return(e=t.call(this)||this).setup=function(t){var e;if(!s.sk&&(null==(e=window)?void 0:e.addEventListener)){var n=function listener(){return t()};return window.addEventListener("visibilitychange",n,!1),window.addEventListener("focus",n,!1),function(){window.removeEventListener("visibilitychange",n),window.removeEventListener("focus",n)}}},e}(0,r.Z)(FocusManager,t);var e=FocusManager.prototype;return e.onSubscribe=function onSubscribe(){this.cleanup||this.setEventListener(this.setup)},e.onUnsubscribe=function onUnsubscribe(){var t;this.hasListeners()||(null==(t=this.cleanup)||t.call(this),this.cleanup=void 0)},e.setEventListener=function setEventListener(t){var e,n=this;this.setup=t,null==(e=this.cleanup)||e.call(this),this.cleanup=t((function(t){"boolean"==typeof t?n.setFocused(t):n.onFocus()}))},e.setFocused=function setFocused(t){this.focused=t,t&&this.onFocus()},e.onFocus=function onFocus(){this.listeners.forEach((function(t){t()}))},e.isFocused=function isFocused(){return"boolean"==typeof this.focused?this.focused:"undefined"==typeof document||[void 0,"visible","prerender"].includes(document.visibilityState)},FocusManager}(i.l))},9975:(t,e,n)=>{"use strict";n.d(e,{D:()=>dehydrate,Z:()=>hydrate});var r=n(25773);function defaultShouldDehydrateMutation(t){return t.state.isPaused}function defaultShouldDehydrateQuery(t){return"success"===t.state.status}function dehydrate(t,e){var n,r,i=[],s=[];if(!1!==(null==(n=e=e||{})?void 0:n.dehydrateMutations)){var u=e.shouldDehydrateMutation||defaultShouldDehydrateMutation;t.getMutationCache().getAll().forEach((function(t){u(t)&&i.push(function dehydrateMutation(t){return{mutationKey:t.options.mutationKey,state:t.state}}(t))}))}if(!1!==(null==(r=e)?void 0:r.dehydrateQueries)){var o=e.shouldDehydrateQuery||defaultShouldDehydrateQuery;t.getQueryCache().getAll().forEach((function(t){o(t)&&s.push(function dehydrateQuery(t){return{state:t.state,queryKey:t.queryKey,queryHash:t.queryHash}}(t))}))}return{mutations:i,queries:s}}function hydrate(t,e,n){if("object"==typeof e&&null!==e){var i=t.getMutationCache(),s=t.getQueryCache(),u=e.mutations||[],o=e.queries||[];u.forEach((function(e){var s;i.build(t,(0,r.Z)({},null==n||null==(s=n.defaultOptions)?void 0:s.mutations,{mutationKey:e.mutationKey}),e.state)})),o.forEach((function(e){var i,u=s.get(e.queryHash);u?u.state.dataUpdatedAt{"use strict";n.r(e),n.d(e,{CancelledError:()=>r.p8,InfiniteQueryObserver:()=>a.c,MutationCache:()=>c.L,MutationObserver:()=>l.X,QueriesObserver:()=>o.y,QueryCache:()=>i.t,QueryClient:()=>s.S,QueryObserver:()=>u.z,dehydrate:()=>p.D,focusManager:()=>d.j,hashQueryKey:()=>y.yF,hydrate:()=>p.Z,isCancelledError:()=>r.DV,isError:()=>y.VZ,notifyManager:()=>f.V,onlineManager:()=>v.N,setLogger:()=>h.E});var r=n(98973),i=n(89157),s=n(37710),u=n(87978),o=n(27282),a=n(15830),c=n(79560),l=n(40424),h=n(16129),f=n(87226),d=n(85123),v=n(19240),y=n(12860),p=n(9975),b=n(46503),m={};for(const t in b)["default","CancelledError","QueryCache","QueryClient","QueryObserver","QueriesObserver","InfiniteQueryObserver","MutationCache","MutationObserver","setLogger","notifyManager","focusManager","onlineManager","hashQueryKey","isError","isCancelledError","dehydrate","hydrate"].indexOf(t)<0&&(m[t]=()=>b[t]);n.d(e,m)},47798:(t,e,n)=>{"use strict";n.d(e,{Gm:()=>infiniteQueryBehavior,Qy:()=>hasNextPage,ZF:()=>hasPreviousPage});var r=n(98973),i=n(12860);function infiniteQueryBehavior(){return{onFetch:function onFetch(t){t.fetchFn=function(){var e,n,s,u,o,a,c,l=null==(e=t.fetchOptions)||null==(n=e.meta)?void 0:n.refetchPage,h=null==(s=t.fetchOptions)||null==(u=s.meta)?void 0:u.fetchMore,f=null==h?void 0:h.pageParam,d="forward"===(null==h?void 0:h.direction),v="backward"===(null==h?void 0:h.direction),y=(null==(o=t.state.data)?void 0:o.pages)||[],p=(null==(a=t.state.data)?void 0:a.pageParams)||[],b=(0,i.G9)(),m=null==b?void 0:b.signal,g=p,O=!1,Q=t.options.queryFn||function(){return Promise.reject("Missing queryFn")},C=function buildNewPages(t,e,n,r){return g=r?[e].concat(g):[].concat(g,[e]),r?[n].concat(t):[].concat(t,[n])},P=function fetchPage(e,n,i,s){if(O)return Promise.reject("Cancelled");if(void 0===i&&!n&&e.length)return Promise.resolve(e);var u={queryKey:t.queryKey,signal:m,pageParam:i,meta:t.meta},o=Q(u),a=Promise.resolve(o).then((function(t){return C(e,i,t,s)}));(0,r.LE)(o)&&(a.cancel=o.cancel);return a};if(y.length)if(d){var R=void 0!==f,M=R?f:getNextPageParam(t.options,y);c=P(y,R,M)}else if(v){var F=void 0!==f,E=F?f:getPreviousPageParam(t.options,y);c=P(y,F,E,!0)}else!function(){g=[];var e=void 0===t.options.getNextPageParam,n=!l||!y[0]||l(y[0],0,y);c=n?P([],e,p[0]):Promise.resolve(C([],p[0],y[0]));for(var r=function _loop(n){c=c.then((function(r){if(!l||!y[n]||l(y[n],n,y)){var i=e?p[n]:getNextPageParam(t.options,r);return P(r,e,i)}return Promise.resolve(C(r,p[n],y[n]))}))},i=1;i{"use strict";n.d(e,{c:()=>o});var r=n(25773),i=n(88863),s=n(87978),u=n(47798),o=function(t){function InfiniteQueryObserver(e,n){return t.call(this,e,n)||this}(0,i.Z)(InfiniteQueryObserver,t);var e=InfiniteQueryObserver.prototype;return e.bindMethods=function bindMethods(){t.prototype.bindMethods.call(this),this.fetchNextPage=this.fetchNextPage.bind(this),this.fetchPreviousPage=this.fetchPreviousPage.bind(this)},e.setOptions=function setOptions(e,n){t.prototype.setOptions.call(this,(0,r.Z)({},e,{behavior:(0,u.Gm)()}),n)},e.getOptimisticResult=function getOptimisticResult(e){return e.behavior=(0,u.Gm)(),t.prototype.getOptimisticResult.call(this,e)},e.fetchNextPage=function fetchNextPage(t){var e;return this.fetch({cancelRefetch:null==(e=null==t?void 0:t.cancelRefetch)||e,throwOnError:null==t?void 0:t.throwOnError,meta:{fetchMore:{direction:"forward",pageParam:null==t?void 0:t.pageParam}}})},e.fetchPreviousPage=function fetchPreviousPage(t){var e;return this.fetch({cancelRefetch:null==(e=null==t?void 0:t.cancelRefetch)||e,throwOnError:null==t?void 0:t.throwOnError,meta:{fetchMore:{direction:"backward",pageParam:null==t?void 0:t.pageParam}}})},e.createResult=function createResult(e,n){var i,s,o,a,c,l,h=e.state,f=t.prototype.createResult.call(this,e,n);return(0,r.Z)({},f,{fetchNextPage:this.fetchNextPage,fetchPreviousPage:this.fetchPreviousPage,hasNextPage:(0,u.Qy)(n,null==(i=h.data)?void 0:i.pages),hasPreviousPage:(0,u.ZF)(n,null==(s=h.data)?void 0:s.pages),isFetchingNextPage:h.isFetching&&"forward"===(null==(o=h.fetchMeta)||null==(a=o.fetchMore)?void 0:a.direction),isFetchingPreviousPage:h.isFetching&&"backward"===(null==(c=h.fetchMeta)||null==(l=c.fetchMore)?void 0:l.direction)})},InfiniteQueryObserver}(s.z)},16129:(t,e,n)=>{"use strict";n.d(e,{E:()=>setLogger,j:()=>getLogger});var r=console;function getLogger(){return r}function setLogger(t){r=t}},12790:(t,e,n)=>{"use strict";n.d(e,{R:()=>getDefaultState,m:()=>a});var r=n(25773),i=n(16129),s=n(87226),u=n(98973),o=n(12860),a=function(){function Mutation(t){this.options=(0,r.Z)({},t.defaultOptions,t.options),this.mutationId=t.mutationId,this.mutationCache=t.mutationCache,this.observers=[],this.state=t.state||getDefaultState(),this.meta=t.meta}var t=Mutation.prototype;return t.setState=function setState(t){this.dispatch({type:"setState",state:t})},t.addObserver=function addObserver(t){-1===this.observers.indexOf(t)&&this.observers.push(t)},t.removeObserver=function removeObserver(t){this.observers=this.observers.filter((function(e){return e!==t}))},t.cancel=function cancel(){return this.retryer?(this.retryer.cancel(),this.retryer.promise.then(o.ZT).catch(o.ZT)):Promise.resolve()},t.continue=function _continue(){return this.retryer?(this.retryer.continue(),this.retryer.promise):this.execute()},t.execute=function execute(){var t,e=this,n="loading"===this.state.status,r=Promise.resolve();return n||(this.dispatch({type:"loading",variables:this.options.variables}),r=r.then((function(){null==e.mutationCache.config.onMutate||e.mutationCache.config.onMutate(e.state.variables,e)})).then((function(){return null==e.options.onMutate?void 0:e.options.onMutate(e.state.variables)})).then((function(t){t!==e.state.context&&e.dispatch({type:"loading",context:t,variables:e.state.variables})}))),r.then((function(){return e.executeMutation()})).then((function(n){t=n,null==e.mutationCache.config.onSuccess||e.mutationCache.config.onSuccess(t,e.state.variables,e.state.context,e)})).then((function(){return null==e.options.onSuccess?void 0:e.options.onSuccess(t,e.state.variables,e.state.context)})).then((function(){return null==e.options.onSettled?void 0:e.options.onSettled(t,null,e.state.variables,e.state.context)})).then((function(){return e.dispatch({type:"success",data:t}),t})).catch((function(t){return null==e.mutationCache.config.onError||e.mutationCache.config.onError(t,e.state.variables,e.state.context,e),(0,i.j)().error(t),Promise.resolve().then((function(){return null==e.options.onError?void 0:e.options.onError(t,e.state.variables,e.state.context)})).then((function(){return null==e.options.onSettled?void 0:e.options.onSettled(void 0,t,e.state.variables,e.state.context)})).then((function(){throw e.dispatch({type:"error",error:t}),t}))}))},t.executeMutation=function executeMutation(){var t,e=this;return this.retryer=new u.m4({fn:function fn(){return e.options.mutationFn?e.options.mutationFn(e.state.variables):Promise.reject("No mutationFn found")},onFail:function onFail(){e.dispatch({type:"failed"})},onPause:function onPause(){e.dispatch({type:"pause"})},onContinue:function onContinue(){e.dispatch({type:"continue"})},retry:null!=(t=this.options.retry)?t:0,retryDelay:this.options.retryDelay}),this.retryer.promise},t.dispatch=function dispatch(t){var e=this;this.state=function reducer(t,e){switch(e.type){case"failed":return(0,r.Z)({},t,{failureCount:t.failureCount+1});case"pause":return(0,r.Z)({},t,{isPaused:!0});case"continue":return(0,r.Z)({},t,{isPaused:!1});case"loading":return(0,r.Z)({},t,{context:e.context,data:void 0,error:null,isPaused:!1,status:"loading",variables:e.variables});case"success":return(0,r.Z)({},t,{data:e.data,error:null,status:"success",isPaused:!1});case"error":return(0,r.Z)({},t,{data:void 0,error:e.error,failureCount:t.failureCount+1,isPaused:!1,status:"error"});case"setState":return(0,r.Z)({},t,e.state);default:return t}}(this.state,t),s.V.batch((function(){e.observers.forEach((function(e){e.onMutationUpdate(t)})),e.mutationCache.notify(e)}))},Mutation}();function getDefaultState(){return{context:void 0,data:void 0,error:null,failureCount:0,isPaused:!1,status:"idle",variables:void 0}}},79560:(t,e,n)=>{"use strict";n.d(e,{L:()=>o});var r=n(88863),i=n(87226),s=n(12790),u=n(12860),o=function(t){function MutationCache(e){var n;return(n=t.call(this)||this).config=e||{},n.mutations=[],n.mutationId=0,n}(0,r.Z)(MutationCache,t);var e=MutationCache.prototype;return e.build=function build(t,e,n){var r=new s.m({mutationCache:this,mutationId:++this.mutationId,options:t.defaultMutationOptions(e),state:n,defaultOptions:e.mutationKey?t.getMutationDefaults(e.mutationKey):void 0,meta:e.meta});return this.add(r),r},e.add=function add(t){this.mutations.push(t),this.notify(t)},e.remove=function remove(t){this.mutations=this.mutations.filter((function(e){return e!==t})),t.cancel(),this.notify(t)},e.clear=function clear(){var t=this;i.V.batch((function(){t.mutations.forEach((function(e){t.remove(e)}))}))},e.getAll=function getAll(){return this.mutations},e.find=function find(t){return void 0===t.exact&&(t.exact=!0),this.mutations.find((function(e){return(0,u.X7)(t,e)}))},e.findAll=function findAll(t){return this.mutations.filter((function(e){return(0,u.X7)(t,e)}))},e.notify=function notify(t){var e=this;i.V.batch((function(){e.listeners.forEach((function(e){e(t)}))}))},e.onFocus=function onFocus(){this.resumePausedMutations()},e.onOnline=function onOnline(){this.resumePausedMutations()},e.resumePausedMutations=function resumePausedMutations(){var t=this.mutations.filter((function(t){return t.state.isPaused}));return i.V.batch((function(){return t.reduce((function(t,e){return t.then((function(){return e.continue().catch(u.ZT)}))}),Promise.resolve())}))},MutationCache}(n(90270).l)},40424:(t,e,n)=>{"use strict";n.d(e,{X:()=>o});var r=n(25773),i=n(88863),s=n(12790),u=n(87226),o=function(t){function MutationObserver(e,n){var r;return(r=t.call(this)||this).client=e,r.setOptions(n),r.bindMethods(),r.updateResult(),r}(0,i.Z)(MutationObserver,t);var e=MutationObserver.prototype;return e.bindMethods=function bindMethods(){this.mutate=this.mutate.bind(this),this.reset=this.reset.bind(this)},e.setOptions=function setOptions(t){this.options=this.client.defaultMutationOptions(t)},e.onUnsubscribe=function onUnsubscribe(){var t;this.listeners.length||(null==(t=this.currentMutation)||t.removeObserver(this))},e.onMutationUpdate=function onMutationUpdate(t){this.updateResult();var e={listeners:!0};"success"===t.type?e.onSuccess=!0:"error"===t.type&&(e.onError=!0),this.notify(e)},e.getCurrentResult=function getCurrentResult(){return this.currentResult},e.reset=function reset(){this.currentMutation=void 0,this.updateResult(),this.notify({listeners:!0})},e.mutate=function mutate(t,e){return this.mutateOptions=e,this.currentMutation&&this.currentMutation.removeObserver(this),this.currentMutation=this.client.getMutationCache().build(this.client,(0,r.Z)({},this.options,{variables:void 0!==t?t:this.options.variables})),this.currentMutation.addObserver(this),this.currentMutation.execute()},e.updateResult=function updateResult(){var t=this.currentMutation?this.currentMutation.state:(0,s.R)(),e=(0,r.Z)({},t,{isLoading:"loading"===t.status,isSuccess:"success"===t.status,isError:"error"===t.status,isIdle:"idle"===t.status,mutate:this.mutate,reset:this.reset});this.currentResult=e},e.notify=function notify(t){var e=this;u.V.batch((function(){e.mutateOptions&&(t.onSuccess?(null==e.mutateOptions.onSuccess||e.mutateOptions.onSuccess(e.currentResult.data,e.currentResult.variables,e.currentResult.context),null==e.mutateOptions.onSettled||e.mutateOptions.onSettled(e.currentResult.data,null,e.currentResult.variables,e.currentResult.context)):t.onError&&(null==e.mutateOptions.onError||e.mutateOptions.onError(e.currentResult.error,e.currentResult.variables,e.currentResult.context),null==e.mutateOptions.onSettled||e.mutateOptions.onSettled(void 0,e.currentResult.error,e.currentResult.variables,e.currentResult.context))),t.listeners&&e.listeners.forEach((function(t){t(e.currentResult)}))}))},MutationObserver}(n(90270).l)},87226:(t,e,n)=>{"use strict";n.d(e,{V:()=>i});var r=n(12860),i=new(function(){function NotifyManager(){this.queue=[],this.transactions=0,this.notifyFn=function(t){t()},this.batchNotifyFn=function(t){t()}}var t=NotifyManager.prototype;return t.batch=function batch(t){var e;this.transactions++;try{e=t()}finally{this.transactions--,this.transactions||this.flush()}return e},t.schedule=function schedule(t){var e=this;this.transactions?this.queue.push(t):(0,r.A4)((function(){e.notifyFn(t)}))},t.batchCalls=function batchCalls(t){var e=this;return function(){for(var n=arguments.length,r=new Array(n),i=0;i{"use strict";n.d(e,{N:()=>u});var r=n(88863),i=n(90270),s=n(12860),u=new(function(t){function OnlineManager(){var e;return(e=t.call(this)||this).setup=function(t){var e;if(!s.sk&&(null==(e=window)?void 0:e.addEventListener)){var n=function listener(){return t()};return window.addEventListener("online",n,!1),window.addEventListener("offline",n,!1),function(){window.removeEventListener("online",n),window.removeEventListener("offline",n)}}},e}(0,r.Z)(OnlineManager,t);var e=OnlineManager.prototype;return e.onSubscribe=function onSubscribe(){this.cleanup||this.setEventListener(this.setup)},e.onUnsubscribe=function onUnsubscribe(){var t;this.hasListeners()||(null==(t=this.cleanup)||t.call(this),this.cleanup=void 0)},e.setEventListener=function setEventListener(t){var e,n=this;this.setup=t,null==(e=this.cleanup)||e.call(this),this.cleanup=t((function(t){"boolean"==typeof t?n.setOnline(t):n.onOnline()}))},e.setOnline=function setOnline(t){this.online=t,t&&this.onOnline()},e.onOnline=function onOnline(){this.listeners.forEach((function(t){t()}))},e.isOnline=function isOnline(){return"boolean"==typeof this.online?this.online:"undefined"==typeof navigator||void 0===navigator.onLine||navigator.onLine},OnlineManager}(i.l))},27282:(t,e,n)=>{"use strict";n.d(e,{y:()=>o});var r=n(88863),i=n(12860),s=n(87226),u=n(87978),o=function(t){function QueriesObserver(e,n){var r;return(r=t.call(this)||this).client=e,r.queries=[],r.result=[],r.observers=[],r.observersMap={},n&&r.setQueries(n),r}(0,r.Z)(QueriesObserver,t);var e=QueriesObserver.prototype;return e.onSubscribe=function onSubscribe(){var t=this;1===this.listeners.length&&this.observers.forEach((function(e){e.subscribe((function(n){t.onUpdate(e,n)}))}))},e.onUnsubscribe=function onUnsubscribe(){this.listeners.length||this.destroy()},e.destroy=function destroy(){this.listeners=[],this.observers.forEach((function(t){t.destroy()}))},e.setQueries=function setQueries(t,e){this.queries=t,this.updateObservers(e)},e.getCurrentResult=function getCurrentResult(){return this.result},e.getOptimisticResult=function getOptimisticResult(t){return this.findMatchingObservers(t).map((function(t){return t.observer.getOptimisticResult(t.defaultedQueryOptions)}))},e.findMatchingObservers=function findMatchingObservers(t){var e=this,n=this.observers,r=t.map((function(t){return e.client.defaultQueryObserverOptions(t)})),i=r.flatMap((function(t){var e=n.find((function(e){return e.options.queryHash===t.queryHash}));return null!=e?[{defaultedQueryOptions:t,observer:e}]:[]})),s=i.map((function(t){return t.defaultedQueryOptions.queryHash})),u=r.filter((function(t){return!s.includes(t.queryHash)})),o=n.filter((function(t){return!i.some((function(e){return e.observer===t}))})),a=u.map((function(t,n){if(t.keepPreviousData){var r=o[n];if(void 0!==r)return{defaultedQueryOptions:t,observer:r}}return{defaultedQueryOptions:t,observer:e.getObserver(t)}}));return i.concat(a).sort((function sortMatchesByOrderOfQueries(t,e){return r.indexOf(t.defaultedQueryOptions)-r.indexOf(e.defaultedQueryOptions)}))},e.getObserver=function getObserver(t){var e=this.client.defaultQueryObserverOptions(t),n=this.observersMap[e.queryHash];return null!=n?n:new u.z(this.client,e)},e.updateObservers=function updateObservers(t){var e=this;s.V.batch((function(){var n=e.observers,r=e.findMatchingObservers(e.queries);r.forEach((function(e){return e.observer.setOptions(e.defaultedQueryOptions,t)}));var s=r.map((function(t){return t.observer})),u=Object.fromEntries(s.map((function(t){return[t.options.queryHash,t]}))),o=s.map((function(t){return t.getCurrentResult()})),a=s.some((function(t,e){return t!==n[e]}));(n.length!==s.length||a)&&(e.observers=s,e.observersMap=u,e.result=o,e.hasListeners()&&((0,i.e5)(n,s).forEach((function(t){t.destroy()})),(0,i.e5)(s,n).forEach((function(t){t.subscribe((function(n){e.onUpdate(t,n)}))})),e.notify()))}))},e.onUpdate=function onUpdate(t,e){var n=this.observers.indexOf(t);-1!==n&&(this.result=(0,i.Rc)(this.result,n,e),this.notify())},e.notify=function notify(){var t=this;s.V.batch((function(){t.listeners.forEach((function(e){e(t.result)}))}))},QueriesObserver}(n(90270).l)},89157:(t,e,n)=>{"use strict";n.d(e,{t:()=>l});var r=n(88863),i=n(12860),s=n(25773),u=n(87226),o=n(16129),a=n(98973),c=function(){function Query(t){this.abortSignalConsumed=!1,this.hadObservers=!1,this.defaultOptions=t.defaultOptions,this.setOptions(t.options),this.observers=[],this.cache=t.cache,this.queryKey=t.queryKey,this.queryHash=t.queryHash,this.initialState=t.state||this.getDefaultState(this.options),this.state=this.initialState,this.meta=t.meta,this.scheduleGc()}var t=Query.prototype;return t.setOptions=function setOptions(t){var e;this.options=(0,s.Z)({},this.defaultOptions,t),this.meta=null==t?void 0:t.meta,this.cacheTime=Math.max(this.cacheTime||0,null!=(e=this.options.cacheTime)?e:3e5)},t.setDefaultOptions=function setDefaultOptions(t){this.defaultOptions=t},t.scheduleGc=function scheduleGc(){var t=this;this.clearGcTimeout(),(0,i.PN)(this.cacheTime)&&(this.gcTimeout=setTimeout((function(){t.optionalRemove()}),this.cacheTime))},t.clearGcTimeout=function clearGcTimeout(){this.gcTimeout&&(clearTimeout(this.gcTimeout),this.gcTimeout=void 0)},t.optionalRemove=function optionalRemove(){this.observers.length||(this.state.isFetching?this.hadObservers&&this.scheduleGc():this.cache.remove(this))},t.setData=function setData(t,e){var n,r,s=this.state.data,u=(0,i.SE)(t,s);return(null==(n=(r=this.options).isDataEqual)?void 0:n.call(r,s,u))?u=s:!1!==this.options.structuralSharing&&(u=(0,i.Q$)(s,u)),this.dispatch({data:u,type:"success",dataUpdatedAt:null==e?void 0:e.updatedAt}),u},t.setState=function setState(t,e){this.dispatch({type:"setState",state:t,setStateOptions:e})},t.cancel=function cancel(t){var e,n=this.promise;return null==(e=this.retryer)||e.cancel(t),n?n.then(i.ZT).catch(i.ZT):Promise.resolve()},t.destroy=function destroy(){this.clearGcTimeout(),this.cancel({silent:!0})},t.reset=function reset(){this.destroy(),this.setState(this.initialState)},t.isActive=function isActive(){return this.observers.some((function(t){return!1!==t.options.enabled}))},t.isFetching=function isFetching(){return this.state.isFetching},t.isStale=function isStale(){return this.state.isInvalidated||!this.state.dataUpdatedAt||this.observers.some((function(t){return t.getCurrentResult().isStale}))},t.isStaleByTime=function isStaleByTime(t){return void 0===t&&(t=0),this.state.isInvalidated||!this.state.dataUpdatedAt||!(0,i.Kp)(this.state.dataUpdatedAt,t)},t.onFocus=function onFocus(){var t,e=this.observers.find((function(t){return t.shouldFetchOnWindowFocus()}));e&&e.refetch(),null==(t=this.retryer)||t.continue()},t.onOnline=function onOnline(){var t,e=this.observers.find((function(t){return t.shouldFetchOnReconnect()}));e&&e.refetch(),null==(t=this.retryer)||t.continue()},t.addObserver=function addObserver(t){-1===this.observers.indexOf(t)&&(this.observers.push(t),this.hadObservers=!0,this.clearGcTimeout(),this.cache.notify({type:"observerAdded",query:this,observer:t}))},t.removeObserver=function removeObserver(t){-1!==this.observers.indexOf(t)&&(this.observers=this.observers.filter((function(e){return e!==t})),this.observers.length||(this.retryer&&(this.retryer.isTransportCancelable||this.abortSignalConsumed?this.retryer.cancel({revert:!0}):this.retryer.cancelRetry()),this.cacheTime?this.scheduleGc():this.cache.remove(this)),this.cache.notify({type:"observerRemoved",query:this,observer:t}))},t.getObserversCount=function getObserversCount(){return this.observers.length},t.invalidate=function invalidate(){this.state.isInvalidated||this.dispatch({type:"invalidate"})},t.fetch=function fetch(t,e){var n,r,s,u=this;if(this.state.isFetching)if(this.state.dataUpdatedAt&&(null==e?void 0:e.cancelRefetch))this.cancel({silent:!0});else if(this.promise){var c;return null==(c=this.retryer)||c.continueRetry(),this.promise}if(t&&this.setOptions(t),!this.options.queryFn){var l=this.observers.find((function(t){return t.options.queryFn}));l&&this.setOptions(l.options)}var h=(0,i.mc)(this.queryKey),f=(0,i.G9)(),d={queryKey:h,pageParam:void 0,meta:this.meta};Object.defineProperty(d,"signal",{enumerable:!0,get:function get(){if(f)return u.abortSignalConsumed=!0,f.signal}});var v,y,p={fetchOptions:e,options:this.options,queryKey:h,state:this.state,fetchFn:function fetchFn(){return u.options.queryFn?(u.abortSignalConsumed=!1,u.options.queryFn(d)):Promise.reject("Missing queryFn")},meta:this.meta};(null==(n=this.options.behavior)?void 0:n.onFetch)&&(null==(v=this.options.behavior)||v.onFetch(p));(this.revertState=this.state,this.state.isFetching&&this.state.fetchMeta===(null==(r=p.fetchOptions)?void 0:r.meta))||this.dispatch({type:"fetch",meta:null==(y=p.fetchOptions)?void 0:y.meta});return this.retryer=new a.m4({fn:p.fetchFn,abort:null==f||null==(s=f.abort)?void 0:s.bind(f),onSuccess:function onSuccess(t){u.setData(t),null==u.cache.config.onSuccess||u.cache.config.onSuccess(t,u),0===u.cacheTime&&u.optionalRemove()},onError:function onError(t){(0,a.DV)(t)&&t.silent||u.dispatch({type:"error",error:t}),(0,a.DV)(t)||(null==u.cache.config.onError||u.cache.config.onError(t,u),(0,o.j)().error(t)),0===u.cacheTime&&u.optionalRemove()},onFail:function onFail(){u.dispatch({type:"failed"})},onPause:function onPause(){u.dispatch({type:"pause"})},onContinue:function onContinue(){u.dispatch({type:"continue"})},retry:p.options.retry,retryDelay:p.options.retryDelay}),this.promise=this.retryer.promise,this.promise},t.dispatch=function dispatch(t){var e=this;this.state=this.reducer(this.state,t),u.V.batch((function(){e.observers.forEach((function(e){e.onQueryUpdate(t)})),e.cache.notify({query:e,type:"queryUpdated",action:t})}))},t.getDefaultState=function getDefaultState(t){var e="function"==typeof t.initialData?t.initialData():t.initialData,n=void 0!==t.initialData?"function"==typeof t.initialDataUpdatedAt?t.initialDataUpdatedAt():t.initialDataUpdatedAt:0,r=void 0!==e;return{data:e,dataUpdateCount:0,dataUpdatedAt:r?null!=n?n:Date.now():0,error:null,errorUpdateCount:0,errorUpdatedAt:0,fetchFailureCount:0,fetchMeta:null,isFetching:!1,isInvalidated:!1,isPaused:!1,status:r?"success":"idle"}},t.reducer=function reducer(t,e){var n,r;switch(e.type){case"failed":return(0,s.Z)({},t,{fetchFailureCount:t.fetchFailureCount+1});case"pause":return(0,s.Z)({},t,{isPaused:!0});case"continue":return(0,s.Z)({},t,{isPaused:!1});case"fetch":return(0,s.Z)({},t,{fetchFailureCount:0,fetchMeta:null!=(n=e.meta)?n:null,isFetching:!0,isPaused:!1},!t.dataUpdatedAt&&{error:null,status:"loading"});case"success":return(0,s.Z)({},t,{data:e.data,dataUpdateCount:t.dataUpdateCount+1,dataUpdatedAt:null!=(r=e.dataUpdatedAt)?r:Date.now(),error:null,fetchFailureCount:0,isFetching:!1,isInvalidated:!1,isPaused:!1,status:"success"});case"error":var i=e.error;return(0,a.DV)(i)&&i.revert&&this.revertState?(0,s.Z)({},this.revertState):(0,s.Z)({},t,{error:i,errorUpdateCount:t.errorUpdateCount+1,errorUpdatedAt:Date.now(),fetchFailureCount:t.fetchFailureCount+1,isFetching:!1,isPaused:!1,status:"error"});case"invalidate":return(0,s.Z)({},t,{isInvalidated:!0});case"setState":return(0,s.Z)({},t,e.state);default:return t}},Query}(),l=function(t){function QueryCache(e){var n;return(n=t.call(this)||this).config=e||{},n.queries=[],n.queriesMap={},n}(0,r.Z)(QueryCache,t);var e=QueryCache.prototype;return e.build=function build(t,e,n){var r,s=e.queryKey,u=null!=(r=e.queryHash)?r:(0,i.Rm)(s,e),o=this.get(u);return o||(o=new c({cache:this,queryKey:s,queryHash:u,options:t.defaultQueryOptions(e),state:n,defaultOptions:t.getQueryDefaults(s),meta:e.meta}),this.add(o)),o},e.add=function add(t){this.queriesMap[t.queryHash]||(this.queriesMap[t.queryHash]=t,this.queries.push(t),this.notify({type:"queryAdded",query:t}))},e.remove=function remove(t){var e=this.queriesMap[t.queryHash];e&&(t.destroy(),this.queries=this.queries.filter((function(e){return e!==t})),e===t&&delete this.queriesMap[t.queryHash],this.notify({type:"queryRemoved",query:t}))},e.clear=function clear(){var t=this;u.V.batch((function(){t.queries.forEach((function(e){t.remove(e)}))}))},e.get=function get(t){return this.queriesMap[t]},e.getAll=function getAll(){return this.queries},e.find=function find(t,e){var n=(0,i.I6)(t,e)[0];return void 0===n.exact&&(n.exact=!0),this.queries.find((function(t){return(0,i._x)(n,t)}))},e.findAll=function findAll(t,e){var n=(0,i.I6)(t,e)[0];return Object.keys(n).length>0?this.queries.filter((function(t){return(0,i._x)(n,t)})):this.queries},e.notify=function notify(t){var e=this;u.V.batch((function(){e.listeners.forEach((function(e){e(t)}))}))},e.onFocus=function onFocus(){var t=this;u.V.batch((function(){t.queries.forEach((function(t){t.onFocus()}))}))},e.onOnline=function onOnline(){var t=this;u.V.batch((function(){t.queries.forEach((function(t){t.onOnline()}))}))},QueryCache}(n(90270).l)},37710:(t,e,n)=>{"use strict";n.d(e,{S:()=>h});var r=n(25773),i=n(12860),s=n(89157),u=n(79560),o=n(85123),a=n(19240),c=n(87226),l=n(47798),h=function(){function QueryClient(t){void 0===t&&(t={}),this.queryCache=t.queryCache||new s.t,this.mutationCache=t.mutationCache||new u.L,this.defaultOptions=t.defaultOptions||{},this.queryDefaults=[],this.mutationDefaults=[]}var t=QueryClient.prototype;return t.mount=function mount(){var t=this;this.unsubscribeFocus=o.j.subscribe((function(){o.j.isFocused()&&a.N.isOnline()&&(t.mutationCache.onFocus(),t.queryCache.onFocus())})),this.unsubscribeOnline=a.N.subscribe((function(){o.j.isFocused()&&a.N.isOnline()&&(t.mutationCache.onOnline(),t.queryCache.onOnline())}))},t.unmount=function unmount(){var t,e;null==(t=this.unsubscribeFocus)||t.call(this),null==(e=this.unsubscribeOnline)||e.call(this)},t.isFetching=function isFetching(t,e){var n=(0,i.I6)(t,e)[0];return n.fetching=!0,this.queryCache.findAll(n).length},t.isMutating=function isMutating(t){return this.mutationCache.findAll((0,r.Z)({},t,{fetching:!0})).length},t.getQueryData=function getQueryData(t,e){var n;return null==(n=this.queryCache.find(t,e))?void 0:n.state.data},t.getQueriesData=function getQueriesData(t){return this.getQueryCache().findAll(t).map((function(t){return[t.queryKey,t.state.data]}))},t.setQueryData=function setQueryData(t,e,n){var r=(0,i._v)(t),s=this.defaultQueryOptions(r);return this.queryCache.build(this,s).setData(e,n)},t.setQueriesData=function setQueriesData(t,e,n){var r=this;return c.V.batch((function(){return r.getQueryCache().findAll(t).map((function(t){var i=t.queryKey;return[i,r.setQueryData(i,e,n)]}))}))},t.getQueryState=function getQueryState(t,e){var n;return null==(n=this.queryCache.find(t,e))?void 0:n.state},t.removeQueries=function removeQueries(t,e){var n=(0,i.I6)(t,e)[0],r=this.queryCache;c.V.batch((function(){r.findAll(n).forEach((function(t){r.remove(t)}))}))},t.resetQueries=function resetQueries(t,e,n){var s=this,u=(0,i.I6)(t,e,n),o=u[0],a=u[1],l=this.queryCache,h=(0,r.Z)({},o,{active:!0});return c.V.batch((function(){return l.findAll(o).forEach((function(t){t.reset()})),s.refetchQueries(h,a)}))},t.cancelQueries=function cancelQueries(t,e,n){var r=this,s=(0,i.I6)(t,e,n),u=s[0],o=s[1],a=void 0===o?{}:o;void 0===a.revert&&(a.revert=!0);var l=c.V.batch((function(){return r.queryCache.findAll(u).map((function(t){return t.cancel(a)}))}));return Promise.all(l).then(i.ZT).catch(i.ZT)},t.invalidateQueries=function invalidateQueries(t,e,n){var s,u,o,a=this,l=(0,i.I6)(t,e,n),h=l[0],f=l[1],d=(0,r.Z)({},h,{active:null==(s=null!=(u=h.refetchActive)?u:h.active)||s,inactive:null!=(o=h.refetchInactive)&&o});return c.V.batch((function(){return a.queryCache.findAll(h).forEach((function(t){t.invalidate()})),a.refetchQueries(d,f)}))},t.refetchQueries=function refetchQueries(t,e,n){var s=this,u=(0,i.I6)(t,e,n),o=u[0],a=u[1],l=c.V.batch((function(){return s.queryCache.findAll(o).map((function(t){return t.fetch(void 0,(0,r.Z)({},a,{meta:{refetchPage:null==o?void 0:o.refetchPage}}))}))})),h=Promise.all(l).then(i.ZT);return(null==a?void 0:a.throwOnError)||(h=h.catch(i.ZT)),h},t.fetchQuery=function fetchQuery(t,e,n){var r=(0,i._v)(t,e,n),s=this.defaultQueryOptions(r);void 0===s.retry&&(s.retry=!1);var u=this.queryCache.build(this,s);return u.isStaleByTime(s.staleTime)?u.fetch(s):Promise.resolve(u.state.data)},t.prefetchQuery=function prefetchQuery(t,e,n){return this.fetchQuery(t,e,n).then(i.ZT).catch(i.ZT)},t.fetchInfiniteQuery=function fetchInfiniteQuery(t,e,n){var r=(0,i._v)(t,e,n);return r.behavior=(0,l.Gm)(),this.fetchQuery(r)},t.prefetchInfiniteQuery=function prefetchInfiniteQuery(t,e,n){return this.fetchInfiniteQuery(t,e,n).then(i.ZT).catch(i.ZT)},t.cancelMutations=function cancelMutations(){var t=this,e=c.V.batch((function(){return t.mutationCache.getAll().map((function(t){return t.cancel()}))}));return Promise.all(e).then(i.ZT).catch(i.ZT)},t.resumePausedMutations=function resumePausedMutations(){return this.getMutationCache().resumePausedMutations()},t.executeMutation=function executeMutation(t){return this.mutationCache.build(this,t).execute()},t.getQueryCache=function getQueryCache(){return this.queryCache},t.getMutationCache=function getMutationCache(){return this.mutationCache},t.getDefaultOptions=function getDefaultOptions(){return this.defaultOptions},t.setDefaultOptions=function setDefaultOptions(t){this.defaultOptions=t},t.setQueryDefaults=function setQueryDefaults(t,e){var n=this.queryDefaults.find((function(e){return(0,i.yF)(t)===(0,i.yF)(e.queryKey)}));n?n.defaultOptions=e:this.queryDefaults.push({queryKey:t,defaultOptions:e})},t.getQueryDefaults=function getQueryDefaults(t){var e;return t?null==(e=this.queryDefaults.find((function(e){return(0,i.to)(t,e.queryKey)})))?void 0:e.defaultOptions:void 0},t.setMutationDefaults=function setMutationDefaults(t,e){var n=this.mutationDefaults.find((function(e){return(0,i.yF)(t)===(0,i.yF)(e.mutationKey)}));n?n.defaultOptions=e:this.mutationDefaults.push({mutationKey:t,defaultOptions:e})},t.getMutationDefaults=function getMutationDefaults(t){var e;return t?null==(e=this.mutationDefaults.find((function(e){return(0,i.to)(t,e.mutationKey)})))?void 0:e.defaultOptions:void 0},t.defaultQueryOptions=function defaultQueryOptions(t){if(null==t?void 0:t._defaulted)return t;var e=(0,r.Z)({},this.defaultOptions.queries,this.getQueryDefaults(null==t?void 0:t.queryKey),t,{_defaulted:!0});return!e.queryHash&&e.queryKey&&(e.queryHash=(0,i.Rm)(e.queryKey,e)),e},t.defaultQueryObserverOptions=function defaultQueryObserverOptions(t){return this.defaultQueryOptions(t)},t.defaultMutationOptions=function defaultMutationOptions(t){return(null==t?void 0:t._defaulted)?t:(0,r.Z)({},this.defaultOptions.mutations,this.getMutationDefaults(null==t?void 0:t.mutationKey),t,{_defaulted:!0})},t.clear=function clear(){this.queryCache.clear(),this.mutationCache.clear()},QueryClient}()},87978:(t,e,n)=>{"use strict";n.d(e,{z:()=>h});var r=n(25773),i=n(88863),s=n(12860),u=n(87226),o=n(85123),a=n(90270),c=n(16129),l=n(98973),h=function(t){function QueryObserver(e,n){var r;return(r=t.call(this)||this).client=e,r.options=n,r.trackedProps=[],r.selectError=null,r.bindMethods(),r.setOptions(n),r}(0,i.Z)(QueryObserver,t);var e=QueryObserver.prototype;return e.bindMethods=function bindMethods(){this.remove=this.remove.bind(this),this.refetch=this.refetch.bind(this)},e.onSubscribe=function onSubscribe(){1===this.listeners.length&&(this.currentQuery.addObserver(this),shouldFetchOnMount(this.currentQuery,this.options)&&this.executeFetch(),this.updateTimers())},e.onUnsubscribe=function onUnsubscribe(){this.listeners.length||this.destroy()},e.shouldFetchOnReconnect=function shouldFetchOnReconnect(){return shouldFetchOn(this.currentQuery,this.options,this.options.refetchOnReconnect)},e.shouldFetchOnWindowFocus=function shouldFetchOnWindowFocus(){return shouldFetchOn(this.currentQuery,this.options,this.options.refetchOnWindowFocus)},e.destroy=function destroy(){this.listeners=[],this.clearTimers(),this.currentQuery.removeObserver(this)},e.setOptions=function setOptions(t,e){var n=this.options,r=this.currentQuery;if(this.options=this.client.defaultQueryObserverOptions(t),void 0!==this.options.enabled&&"boolean"!=typeof this.options.enabled)throw new Error("Expected enabled to be a boolean");this.options.queryKey||(this.options.queryKey=n.queryKey),this.updateQuery();var i=this.hasListeners();i&&shouldFetchOptionally(this.currentQuery,r,this.options,n)&&this.executeFetch(),this.updateResult(e),!i||this.currentQuery===r&&this.options.enabled===n.enabled&&this.options.staleTime===n.staleTime||this.updateStaleTimeout();var s=this.computeRefetchInterval();!i||this.currentQuery===r&&this.options.enabled===n.enabled&&s===this.currentRefetchInterval||this.updateRefetchInterval(s)},e.getOptimisticResult=function getOptimisticResult(t){var e=this.client.defaultQueryObserverOptions(t),n=this.client.getQueryCache().build(this.client,e);return this.createResult(n,e)},e.getCurrentResult=function getCurrentResult(){return this.currentResult},e.trackResult=function trackResult(t,e){var n=this,r={},i=function trackProp(t){n.trackedProps.includes(t)||n.trackedProps.push(t)};return Object.keys(t).forEach((function(e){Object.defineProperty(r,e,{configurable:!1,enumerable:!0,get:function get(){return i(e),t[e]}})})),(e.useErrorBoundary||e.suspense)&&i("error"),r},e.getNextResult=function getNextResult(t){var e=this;return new Promise((function(n,r){var i=e.subscribe((function(e){e.isFetching||(i(),e.isError&&(null==t?void 0:t.throwOnError)?r(e.error):n(e))}))}))},e.getCurrentQuery=function getCurrentQuery(){return this.currentQuery},e.remove=function remove(){this.client.getQueryCache().remove(this.currentQuery)},e.refetch=function refetch(t){return this.fetch((0,r.Z)({},t,{meta:{refetchPage:null==t?void 0:t.refetchPage}}))},e.fetchOptimistic=function fetchOptimistic(t){var e=this,n=this.client.defaultQueryObserverOptions(t),r=this.client.getQueryCache().build(this.client,n);return r.fetch().then((function(){return e.createResult(r,n)}))},e.fetch=function fetch(t){var e=this;return this.executeFetch(t).then((function(){return e.updateResult(),e.currentResult}))},e.executeFetch=function executeFetch(t){this.updateQuery();var e=this.currentQuery.fetch(this.options,t);return(null==t?void 0:t.throwOnError)||(e=e.catch(s.ZT)),e},e.updateStaleTimeout=function updateStaleTimeout(){var t=this;if(this.clearStaleTimeout(),!s.sk&&!this.currentResult.isStale&&(0,s.PN)(this.options.staleTime)){var e=(0,s.Kp)(this.currentResult.dataUpdatedAt,this.options.staleTime)+1;this.staleTimeoutId=setTimeout((function(){t.currentResult.isStale||t.updateResult()}),e)}},e.computeRefetchInterval=function computeRefetchInterval(){var t;return"function"==typeof this.options.refetchInterval?this.options.refetchInterval(this.currentResult.data,this.currentQuery):null!=(t=this.options.refetchInterval)&&t},e.updateRefetchInterval=function updateRefetchInterval(t){var e=this;this.clearRefetchInterval(),this.currentRefetchInterval=t,!s.sk&&!1!==this.options.enabled&&(0,s.PN)(this.currentRefetchInterval)&&0!==this.currentRefetchInterval&&(this.refetchIntervalId=setInterval((function(){(e.options.refetchIntervalInBackground||o.j.isFocused())&&e.executeFetch()}),this.currentRefetchInterval))},e.updateTimers=function updateTimers(){this.updateStaleTimeout(),this.updateRefetchInterval(this.computeRefetchInterval())},e.clearTimers=function clearTimers(){this.clearStaleTimeout(),this.clearRefetchInterval()},e.clearStaleTimeout=function clearStaleTimeout(){this.staleTimeoutId&&(clearTimeout(this.staleTimeoutId),this.staleTimeoutId=void 0)},e.clearRefetchInterval=function clearRefetchInterval(){this.refetchIntervalId&&(clearInterval(this.refetchIntervalId),this.refetchIntervalId=void 0)},e.createResult=function createResult(t,e){var n,r=this.currentQuery,i=this.options,u=this.currentResult,o=this.currentResultState,a=this.currentResultOptions,l=t!==r,h=l?t.state:this.currentQueryInitialState,f=l?this.currentResult:this.previousQueryResult,d=t.state,v=d.dataUpdatedAt,y=d.error,p=d.errorUpdatedAt,b=d.isFetching,m=d.status,g=!1,O=!1;if(e.optimisticResults){var Q=this.hasListeners(),C=!Q&&shouldFetchOnMount(t,e),P=Q&&shouldFetchOptionally(t,r,e,i);(C||P)&&(b=!0,v||(m="loading"))}if(e.keepPreviousData&&!d.dataUpdateCount&&(null==f?void 0:f.isSuccess)&&"error"!==m)n=f.data,v=f.dataUpdatedAt,m=f.status,g=!0;else if(e.select&&void 0!==d.data)if(u&&d.data===(null==o?void 0:o.data)&&e.select===this.selectFn)n=this.selectResult;else try{this.selectFn=e.select,n=e.select(d.data),!1!==e.structuralSharing&&(n=(0,s.Q$)(null==u?void 0:u.data,n)),this.selectResult=n,this.selectError=null}catch(t){(0,c.j)().error(t),this.selectError=t}else n=d.data;if(void 0!==e.placeholderData&&void 0===n&&("loading"===m||"idle"===m)){var R;if((null==u?void 0:u.isPlaceholderData)&&e.placeholderData===(null==a?void 0:a.placeholderData))R=u.data;else if(R="function"==typeof e.placeholderData?e.placeholderData():e.placeholderData,e.select&&void 0!==R)try{R=e.select(R),!1!==e.structuralSharing&&(R=(0,s.Q$)(null==u?void 0:u.data,R)),this.selectError=null}catch(t){(0,c.j)().error(t),this.selectError=t}void 0!==R&&(m="success",n=R,O=!0)}return this.selectError&&(y=this.selectError,n=this.selectResult,p=Date.now(),m="error"),{status:m,isLoading:"loading"===m,isSuccess:"success"===m,isError:"error"===m,isIdle:"idle"===m,data:n,dataUpdatedAt:v,error:y,errorUpdatedAt:p,failureCount:d.fetchFailureCount,errorUpdateCount:d.errorUpdateCount,isFetched:d.dataUpdateCount>0||d.errorUpdateCount>0,isFetchedAfterMount:d.dataUpdateCount>h.dataUpdateCount||d.errorUpdateCount>h.errorUpdateCount,isFetching:b,isRefetching:b&&"loading"!==m,isLoadingError:"error"===m&&0===d.dataUpdatedAt,isPlaceholderData:O,isPreviousData:g,isRefetchError:"error"===m&&0!==d.dataUpdatedAt,isStale:isStale(t,e),refetch:this.refetch,remove:this.remove}},e.shouldNotifyListeners=function shouldNotifyListeners(t,e){if(!e)return!0;var n=this.options,r=n.notifyOnChangeProps,i=n.notifyOnChangePropsExclusions;if(!r&&!i)return!0;if("tracked"===r&&!this.trackedProps.length)return!0;var s="tracked"===r?this.trackedProps:r;return Object.keys(t).some((function(n){var r=n,u=t[r]!==e[r],o=null==s?void 0:s.some((function(t){return t===n})),a=null==i?void 0:i.some((function(t){return t===n}));return u&&!a&&(!s||o)}))},e.updateResult=function updateResult(t){var e=this.currentResult;if(this.currentResult=this.createResult(this.currentQuery,this.options),this.currentResultState=this.currentQuery.state,this.currentResultOptions=this.options,!(0,s.VS)(this.currentResult,e)){var n={cache:!0};!1!==(null==t?void 0:t.listeners)&&this.shouldNotifyListeners(this.currentResult,e)&&(n.listeners=!0),this.notify((0,r.Z)({},n,t))}},e.updateQuery=function updateQuery(){var t=this.client.getQueryCache().build(this.client,this.options);if(t!==this.currentQuery){var e=this.currentQuery;this.currentQuery=t,this.currentQueryInitialState=t.state,this.previousQueryResult=this.currentResult,this.hasListeners()&&(null==e||e.removeObserver(this),t.addObserver(this))}},e.onQueryUpdate=function onQueryUpdate(t){var e={};"success"===t.type?e.onSuccess=!0:"error"!==t.type||(0,l.DV)(t.error)||(e.onError=!0),this.updateResult(e),this.hasListeners()&&this.updateTimers()},e.notify=function notify(t){var e=this;u.V.batch((function(){t.onSuccess?(null==e.options.onSuccess||e.options.onSuccess(e.currentResult.data),null==e.options.onSettled||e.options.onSettled(e.currentResult.data,null)):t.onError&&(null==e.options.onError||e.options.onError(e.currentResult.error),null==e.options.onSettled||e.options.onSettled(void 0,e.currentResult.error)),t.listeners&&e.listeners.forEach((function(t){t(e.currentResult)})),t.cache&&e.client.getQueryCache().notify({query:e.currentQuery,type:"observerResultsUpdated"})}))},QueryObserver}(a.l);function shouldFetchOnMount(t,e){return function shouldLoadOnMount(t,e){return!(!1===e.enabled||t.state.dataUpdatedAt||"error"===t.state.status&&!1===e.retryOnMount)}(t,e)||t.state.dataUpdatedAt>0&&shouldFetchOn(t,e,e.refetchOnMount)}function shouldFetchOn(t,e,n){if(!1!==e.enabled){var r="function"==typeof n?n(t):n;return"always"===r||!1!==r&&isStale(t,e)}return!1}function shouldFetchOptionally(t,e,n,r){return!1!==n.enabled&&(t!==e||!1===r.enabled)&&(!n.suspense||"error"!==t.state.status)&&isStale(t,n)}function isStale(t,e){return t.isStaleByTime(e.staleTime)}},98973:(t,e,n)=>{"use strict";n.d(e,{DV:()=>isCancelledError,LE:()=>isCancelable,m4:()=>o,p8:()=>u});var r=n(85123),i=n(19240),s=n(12860);function defaultRetryDelay(t){return Math.min(1e3*Math.pow(2,t),3e4)}function isCancelable(t){return"function"==typeof(null==t?void 0:t.cancel)}var u=function CancelledError(t){this.revert=null==t?void 0:t.revert,this.silent=null==t?void 0:t.silent};function isCancelledError(t){return t instanceof u}var o=function Retryer(t){var e,n,o,a,c=this,l=!1;this.abort=t.abort,this.cancel=function(t){return null==e?void 0:e(t)},this.cancelRetry=function(){l=!0},this.continueRetry=function(){l=!1},this.continue=function(){return null==n?void 0:n()},this.failureCount=0,this.isPaused=!1,this.isResolved=!1,this.isTransportCancelable=!1,this.promise=new Promise((function(t,e){o=t,a=e}));var h=function resolve(e){c.isResolved||(c.isResolved=!0,null==t.onSuccess||t.onSuccess(e),null==n||n(),o(e))},f=function reject(e){c.isResolved||(c.isResolved=!0,null==t.onError||t.onError(e),null==n||n(),a(e))};!function run(){if(!c.isResolved){var o;try{o=t.fn()}catch(t){o=Promise.reject(t)}e=function cancelFn(t){if(!c.isResolved&&(f(new u(t)),null==c.abort||c.abort(),isCancelable(o)))try{o.cancel()}catch(t){}},c.isTransportCancelable=isCancelable(o),Promise.resolve(o).then(h).catch((function(e){var u,o;if(!c.isResolved){var a=null!=(u=t.retry)?u:3,h=null!=(o=t.retryDelay)?o:defaultRetryDelay,d="function"==typeof h?h(c.failureCount,e):h,v=!0===a||"number"==typeof a&&c.failureCount{"use strict";n.d(e,{l:()=>r});var r=function(){function Subscribable(){this.listeners=[]}var t=Subscribable.prototype;return t.subscribe=function subscribe(t){var e=this,n=t||function(){};return this.listeners.push(n),this.onSubscribe(),function(){e.listeners=e.listeners.filter((function(t){return t!==n})),e.onUnsubscribe()}},t.hasListeners=function hasListeners(){return this.listeners.length>0},t.onSubscribe=function onSubscribe(){},t.onUnsubscribe=function onUnsubscribe(){},Subscribable}()},46503:()=>{},12860:(t,e,n)=>{"use strict";n.d(e,{A4:()=>scheduleMicrotask,G9:()=>getAbortController,Gh:()=>sleep,I6:()=>parseFilterArgs,Kp:()=>timeUntilStale,PN:()=>isValidTimeout,Q$:()=>replaceEqualDeep,Rc:()=>replaceAt,Rm:()=>hashQueryKeyByOptions,SE:()=>functionalUpdate,VS:()=>shallowEqualObjects,VZ:()=>isError,X7:()=>matchMutation,ZT:()=>noop,_v:()=>parseQueryArgs,_x:()=>matchQuery,cb:()=>parseMutationFilterArgs,e5:()=>difference,lV:()=>parseMutationArgs,mc:()=>ensureQueryKeyArray,sk:()=>i,to:()=>partialMatchKey,yF:()=>hashQueryKey});var r=n(25773),i="undefined"==typeof window;function noop(){}function functionalUpdate(t,e){return"function"==typeof t?t(e):t}function isValidTimeout(t){return"number"==typeof t&&t>=0&&t!==1/0}function ensureQueryKeyArray(t){return Array.isArray(t)?t:[t]}function difference(t,e){return t.filter((function(t){return-1===e.indexOf(t)}))}function replaceAt(t,e,n){var r=t.slice(0);return r[e]=n,r}function timeUntilStale(t,e){return Math.max(t+(e||0)-Date.now(),0)}function parseQueryArgs(t,e,n){return isQueryKey(t)?"function"==typeof e?(0,r.Z)({},n,{queryKey:t,queryFn:e}):(0,r.Z)({},e,{queryKey:t}):t}function parseMutationArgs(t,e,n){return isQueryKey(t)?"function"==typeof e?(0,r.Z)({},n,{mutationKey:t,mutationFn:e}):(0,r.Z)({},e,{mutationKey:t}):"function"==typeof t?(0,r.Z)({},e,{mutationFn:t}):(0,r.Z)({},t)}function parseFilterArgs(t,e,n){return isQueryKey(t)?[(0,r.Z)({},e,{queryKey:t}),n]:[t||{},e]}function parseMutationFilterArgs(t,e){return isQueryKey(t)?(0,r.Z)({},e,{mutationKey:t}):t}function matchQuery(t,e){var n=t.active,r=t.exact,i=t.fetching,s=t.inactive,u=t.predicate,o=t.queryKey,a=t.stale;if(isQueryKey(o))if(r){if(e.queryHash!==hashQueryKeyByOptions(o,e.options))return!1}else if(!partialMatchKey(e.queryKey,o))return!1;var c=function mapQueryStatusFilter(t,e){return!0===t&&!0===e||null==t&&null==e?"all":!1===t&&!1===e?"none":(null!=t?t:!e)?"active":"inactive"}(n,s);if("none"===c)return!1;if("all"!==c){var l=e.isActive();if("active"===c&&!l)return!1;if("inactive"===c&&l)return!1}return("boolean"!=typeof a||e.isStale()===a)&&(("boolean"!=typeof i||e.isFetching()===i)&&!(u&&!u(e)))}function matchMutation(t,e){var n=t.exact,r=t.fetching,i=t.predicate,s=t.mutationKey;if(isQueryKey(s)){if(!e.options.mutationKey)return!1;if(n){if(hashQueryKey(e.options.mutationKey)!==hashQueryKey(s))return!1}else if(!partialMatchKey(e.options.mutationKey,s))return!1}return("boolean"!=typeof r||"loading"===e.state.status===r)&&!(i&&!i(e))}function hashQueryKeyByOptions(t,e){return((null==e?void 0:e.queryKeyHashFn)||hashQueryKey)(t)}function hashQueryKey(t){return function stableValueHash(t){return JSON.stringify(t,(function(t,e){return isPlainObject(e)?Object.keys(e).sort().reduce((function(t,n){return t[n]=e[n],t}),{}):e}))}(ensureQueryKeyArray(t))}function partialMatchKey(t,e){return partialDeepEqual(ensureQueryKeyArray(t),ensureQueryKeyArray(e))}function partialDeepEqual(t,e){return t===e||typeof t==typeof e&&(!(!t||!e||"object"!=typeof t||"object"!=typeof e)&&!Object.keys(e).some((function(n){return!partialDeepEqual(t[n],e[n])})))}function replaceEqualDeep(t,e){if(t===e)return t;var n=Array.isArray(t)&&Array.isArray(e);if(n||isPlainObject(t)&&isPlainObject(e)){for(var r=n?t.length:Object.keys(t).length,i=n?e:Object.keys(e),s=i.length,u=n?[]:{},o=0,a=0;a{"use strict";n.r(e);var r=n(30795),i={};for(const t in r)"default"!==t&&(i[t]=()=>r[t]);n.d(e,i);var s=n(43606);i={};for(const t in s)["default","CancelledError","QueryCache","QueryClient","QueryObserver","QueriesObserver","InfiniteQueryObserver","MutationCache","MutationObserver","setLogger","notifyManager","focusManager","onlineManager","hashQueryKey","isError","isCancelledError","dehydrate","hydrate"].indexOf(t)<0&&(i[t]=()=>s[t]);n.d(e,i)},61280:(t,e,n)=>{"use strict";n.d(e,{p:()=>o,s:()=>useHydrate});var r=n(87363),i=n.n(r),s=n(9975),u=n(4667);function useHydrate(t,e){var n=(0,u.N)(),r=i().useRef(e);r.current=e,i().useMemo((function(){t&&(0,s.Z)(n,t,r.current)}),[n,t])}var o=function Hydrate(t){var e=t.children,n=t.options;return useHydrate(t.state,n),e}},4667:(t,e,n)=>{"use strict";n.d(e,{N:()=>o,a:()=>a});var r=n(87363),i=n.n(r),s=i().createContext(void 0),u=i().createContext(!1);function getQueryClientContext(t){return t&&"undefined"!=typeof window?(window.ReactQueryClientContext||(window.ReactQueryClientContext=s),window.ReactQueryClientContext):s}var o=function useQueryClient(){var t=i().useContext(getQueryClientContext(i().useContext(u)));if(!t)throw new Error("No QueryClient set, use QueryClientProvider to set one");return t},a=function QueryClientProvider(t){var e=t.client,n=t.contextSharing,r=void 0!==n&&n,s=t.children;i().useEffect((function(){return e.mount(),function(){e.unmount()}}),[e]);var o=getQueryClientContext(r);return i().createElement(u.Provider,{value:r},i().createElement(o.Provider,{value:e},s))}},39877:(t,e,n)=>{"use strict";n.d(e,{_:()=>u,k:()=>o});var r=n(87363),i=n.n(r);function createValue(){var t=!1;return{clearReset:function clearReset(){t=!1},reset:function reset(){t=!0},isReset:function isReset(){return t}}}var s=i().createContext(createValue()),u=function useQueryErrorResetBoundary(){return i().useContext(s)},o=function QueryErrorResetBoundary(t){var e=t.children,n=i().useMemo((function(){return createValue()}),[]);return i().createElement(s.Provider,{value:n},"function"==typeof e?e(n):e)}},43606:(t,e,n)=>{"use strict";n.r(e),n.d(e,{Hydrate:()=>h.p,QueryClientProvider:()=>r.a,QueryErrorResetBoundary:()=>i.k,useHydrate:()=>h.s,useInfiniteQuery:()=>l.N,useIsFetching:()=>s.y,useIsMutating:()=>u.B,useMutation:()=>o.D,useQueries:()=>c.h,useQuery:()=>a.a,useQueryClient:()=>r.N,useQueryErrorResetBoundary:()=>i._});n(28861),n(24902);var r=n(4667),i=n(39877),s=n(37074),u=n(54321),o=n(68544),a=n(3988),c=n(96467),l=n(65469),h=n(61280),f=n(68412),d={};for(const t in f)["default","QueryClientProvider","useQueryClient","QueryErrorResetBoundary","useQueryErrorResetBoundary","useIsFetching","useIsMutating","useMutation","useQuery","useQueries","useInfiniteQuery","useHydrate","Hydrate"].indexOf(t)<0&&(d[t]=()=>f[t]);n.d(e,d)},28861:(t,e,n)=>{"use strict";var r=n(87226),i=n(61533),s=n.n(i)().unstable_batchedUpdates;r.V.setBatchNotifyFunction(s)},24902:(t,e,n)=>{"use strict";var r=n(16129),i=console;(0,r.E)(i)},68412:()=>{},85055:(t,e,n)=>{"use strict";n.d(e,{r:()=>useBaseQuery});var r=n(87363),i=n.n(r),s=n(87226),u=n(39877),o=n(4667),a=n(75108);function useBaseQuery(t,e){var n=i().useRef(!1),r=i().useState(0)[1],c=(0,o.N)(),l=(0,u._)(),h=c.defaultQueryObserverOptions(t);h.optimisticResults=!0,h.onError&&(h.onError=s.V.batchCalls(h.onError)),h.onSuccess&&(h.onSuccess=s.V.batchCalls(h.onSuccess)),h.onSettled&&(h.onSettled=s.V.batchCalls(h.onSettled)),h.suspense&&("number"!=typeof h.staleTime&&(h.staleTime=1e3),0===h.cacheTime&&(h.cacheTime=1)),(h.suspense||h.useErrorBoundary)&&(l.isReset()||(h.retryOnMount=!1));var f=i().useState((function(){return new e(c,h)}))[0],d=f.getOptimisticResult(h);if(i().useEffect((function(){n.current=!0,l.clearReset();var t=f.subscribe(s.V.batchCalls((function(){n.current&&r((function(t){return t+1}))})));return f.updateResult(),function(){n.current=!1,t()}}),[l,f]),i().useEffect((function(){f.setOptions(h,{listeners:!1})}),[h,f]),h.suspense&&d.isLoading)throw f.fetchOptimistic(h).then((function(t){var e=t.data;null==h.onSuccess||h.onSuccess(e),null==h.onSettled||h.onSettled(e,null)})).catch((function(t){l.clearReset(),null==h.onError||h.onError(t),null==h.onSettled||h.onSettled(void 0,t)}));if(d.isError&&!l.isReset()&&!d.isFetching&&(0,a.L)(h.suspense,h.useErrorBoundary,[d.error,f.getCurrentQuery()]))throw d.error;return"tracked"===h.notifyOnChangeProps&&(d=f.trackResult(d,h)),d}},65469:(t,e,n)=>{"use strict";n.d(e,{N:()=>useInfiniteQuery});var r=n(15830),i=n(12860),s=n(85055);function useInfiniteQuery(t,e,n){var u=(0,i._v)(t,e,n);return(0,s.r)(u,r.c)}},37074:(t,e,n)=>{"use strict";n.d(e,{y:()=>useIsFetching});var r=n(87363),i=n.n(r),s=n(87226),u=n(12860),o=n(4667),a=function checkIsFetching(t,e,n,r){var i=t.isFetching(e);n!==i&&r(i)};function useIsFetching(t,e){var n=i().useRef(!1),r=(0,o.N)(),c=(0,u.I6)(t,e)[0],l=i().useState(r.isFetching(c)),h=l[0],f=l[1],d=i().useRef(c);d.current=c;var v=i().useRef(h);return v.current=h,i().useEffect((function(){n.current=!0,a(r,d.current,v.current,f);var t=r.getQueryCache().subscribe(s.V.batchCalls((function(){n.current&&a(r,d.current,v.current,f)})));return function(){n.current=!1,t()}}),[r]),h}},54321:(t,e,n)=>{"use strict";n.d(e,{B:()=>useIsMutating});var r=n(87363),i=n.n(r),s=n(87226),u=n(12860),o=n(4667);function useIsMutating(t,e){var n=i().useRef(!1),r=(0,u.cb)(t,e),a=(0,o.N)(),c=i().useState(a.isMutating(r)),l=c[0],h=c[1],f=i().useRef(r);f.current=r;var d=i().useRef(l);return d.current=l,i().useEffect((function(){n.current=!0;var t=a.getMutationCache().subscribe(s.V.batchCalls((function(){if(n.current){var t=a.isMutating(f.current);d.current!==t&&h(t)}})));return function(){n.current=!1,t()}}),[a]),l}},68544:(t,e,n)=>{"use strict";n.d(e,{D:()=>useMutation});var r=n(25773),i=n(87363),s=n.n(i),u=n(87226),o=n(12860),a=n(40424),c=n(4667),l=n(75108);function useMutation(t,e,n){var i=s().useRef(!1),h=s().useState(0)[1],f=(0,o.lV)(t,e,n),d=(0,c.N)(),v=s().useRef();v.current?v.current.setOptions(f):v.current=new a.X(d,f);var y=v.current.getCurrentResult();s().useEffect((function(){i.current=!0;var t=v.current.subscribe(u.V.batchCalls((function(){i.current&&h((function(t){return t+1}))})));return function(){i.current=!1,t()}}),[]);var p=s().useCallback((function(t,e){v.current.mutate(t,e).catch(o.ZT)}),[]);if(y.error&&(0,l.L)(void 0,v.current.options.useErrorBoundary,[y.error]))throw y.error;return(0,r.Z)({},y,{mutate:p,mutateAsync:y.mutate})}},96467:(t,e,n)=>{"use strict";n.d(e,{h:()=>useQueries});var r=n(87363),i=n.n(r),s=n(87226),u=n(27282),o=n(4667);function useQueries(t){var e=i().useRef(!1),n=i().useState(0)[1],a=(0,o.N)(),c=(0,r.useMemo)((function(){return t.map((function(t){var e=a.defaultQueryObserverOptions(t);return e.optimisticResults=!0,e}))}),[t,a]),l=i().useState((function(){return new u.y(a,c)}))[0],h=l.getOptimisticResult(c);return i().useEffect((function(){e.current=!0;var t=l.subscribe(s.V.batchCalls((function(){e.current&&n((function(t){return t+1}))})));return function(){e.current=!1,t()}}),[l]),i().useEffect((function(){l.setQueries(c,{listeners:!1})}),[c,l]),h}},3988:(t,e,n)=>{"use strict";n.d(e,{a:()=>useQuery});var r=n(87978),i=n(12860),s=n(85055);function useQuery(t,e,n){var u=(0,i._v)(t,e,n);return(0,s.r)(u,r.z)}},75108:(t,e,n)=>{"use strict";function shouldThrowError(t,e,n){return"function"==typeof e?e.apply(void 0,n):"boolean"==typeof e?e:!!t}n.d(e,{L:()=>shouldThrowError})},25773:(t,e,n)=>{"use strict";function _extends(){return _extends=Object.assign?Object.assign.bind():function(t){for(var e=1;e_extends})},88863:(t,e,n)=>{"use strict";function _setPrototypeOf(t,e){return _setPrototypeOf=Object.setPrototypeOf?Object.setPrototypeOf.bind():function _setPrototypeOf(t,e){return t.__proto__=e,t},_setPrototypeOf(t,e)}function _inheritsLoose(t,e){t.prototype=Object.create(e.prototype),t.prototype.constructor=t,_setPrototypeOf(t,e)}n.d(e,{Z:()=>_inheritsLoose})}}]); Software development Archives - Advocate Shannu rani https://advocateshannurani.com/category/software-development/ Experienced Lawyers in Dubai Tue, 03 Jun 2025 21:29:47 +0000 en-US hourly 1 https://wordpress.org/?v=6.9.4 Scrum, Kanban, Or Scrumban? Find The Best Fit In Your Group https://advocateshannurani.com/2025/05/21/scrum-kanban-or-scrumban-find-the-best-fit-in-your/ https://advocateshannurani.com/2025/05/21/scrum-kanban-or-scrumban-find-the-best-fit-in-your/#respond Wed, 21 May 2025 02:22:00 +0000 https://advocateshannurani.com/?p=6288 Many groups take several sprints to adjust to Scrum, so it can be helpful to plan time for teams to regulate to sprint timing and assembly wants. Moreover, the group meets for design or backlog critiques prior to the beginning of a model new iteration, and meets again for a retrospective after the sprint ends. […]

The post Scrum, Kanban, Or Scrumban? Find The Best Fit In Your Group appeared first on Advocate Shannu rani.

]]>
Many groups take several sprints to adjust to Scrum, so it can be helpful to plan time for teams to regulate to sprint timing and assembly wants. Moreover, the group meets for design or backlog critiques prior to the beginning of a model new iteration, and meets again for a retrospective after the sprint ends. The meetings themselves are Agile, in that they’re typically short and to the point. The team plans the iteration work that may theoretically be accomplished within that interval. Scrum defines a flexible, holistic product improvement technique the place a growth group works as a unit to achieve a typical goal. This mindset challenges the assumptions of the more Software engineering traditional, sequential approach to product growth.

Kanban vs. Scrumban

Sprints are at the core of the Scrum framework, remodeling ideas into worth. All the work required to realize a product goal happens inside sprints. It’s a brief, time-boxed period (usually between 1 to 4 weeks) when a staff works to finish a sure amount of work. It was created in the early 90s, but it’s continuously evolving as groups introduce useful modifications. It helps individuals, groups, and organizations to create worth via adaptive options to advanced problems.

Selecting The Best Methodology For Your Project

Scrumban blends the most effective elements of both Scrum and Kanban for groups that want structure with adaptability. Work is pulled based mostly on capacity, not pushed via a strict cycle. Scrumban is a superb possibility for brand spanking new teams and fast-moving environments like startups, where there’s a need for lots of flexibility and construction to maintain it all together. If you are feeling like Kanban and Scrum are considerably lacking, opting for this mixture of two may be your best guess. Taking a few of the rules from Scrum and a few of the flexibility from Kanban, it provides its users the best of each worlds. If you are questioning when to make use of Kanban vs Scrum board, think about how a lot you want following rules.

With Scrumban, work is released in planned cycles like Kanban, both at a set time or after an outlined number of iterations. Scrumban groups have a tendency to use WIP (work in progress) limits on each column. When the WIP fails below an outlined threshold, the team meets to pull in additional work from the backlog.

This innovative method presents groups the most effective of both worlds by combining the structured framework of Scrum with the adaptive nature of Kanban. By embracing Scrumban, groups can strike a harmonious stability between rigidity and adaptability, allowing for seamless adjustments to project necessities as they evolve. In the realm of Agile project management, Scrumban is a hybrid methodology that merges the structured sprints of Scrum with the visible workflow and WIP limits of Kanban.

Initially designed as a approach to transition from Scrum to Kanban, Scrumban provides flexibility in planning and focuses on effectivity by lowering the time taken from task initiation to completion. Kanban comes into scrumban to improve the project management process and visualize the workflow. First, scrumban makes use of kanban boards, that are sometimes called scrumban methodology scrumban boards when utilized in a scrumban methodology. Every framework provides its own set of advantages and issues. Scrum calls for defining team roles and responsibilities, including a product proprietor, a scrum master, and the group. All work is deliberate and completed within defined time boxes, called sprints.

Kanban vs. Scrumban

While they both rely on an iterative method of working, they are basically totally different. Kanban shines in environments the place transparency and flow matter greater than speed or rigid construction. It’s not at all times the most effective fit in conditions the place planning and deadlines are key. When teams first dive into Agile, they’re typically met with a whirlwind of frameworks, phrases, and acronyms. It can feel somewhat overwhelming at first — especially when attempting to figure out which approach will really work best on your team. Kanban thrives in environments where flexibility and steady delivery are key.

These types of tasks are challenging and might get out of hand if we don’t lock them in a sure framework. Scrum helps to construction the work that could be quite chaotic at first due to the many unknowns and the necessity to string together many threads. Scrum artifacts are product backlog, dash backlog, and increment – all representing work or value.

  • The Agile methodology includes a manifesto and a list of 12 principles, which intend to steer software improvement teams in a positive direction while accepting and adapting to modifications.
  • Discuss alternatives to improve move, high quality, and group productivity, then implement adjustments through small experiments.
  • Every team member chooses alone which task from the To-Do part they will complete subsequent.
  • Rather than timebound Sprints, work can be pulled constantly into the workflow when capacity permits.

What’s The Distinction Between Scrum Vs Kanban?

Kanban vs. Scrumban

The name Scrum is borrowed from rugby because of the framework’s give attention to teamwork. Select Kanban when you operate mainly in a maintenance setting where activities are continuous and development isn’t a significant part of your output. Scrumban takes from scrum such decision-making as figuring out how a lot work may be carried out in a sprint and prioritizing what’s the most important task to work on subsequent. We will provide a fast overview of Scrum and Agile, the similarities, a detailed comparison of the differences, common misconceptions, and hybrid approaches. David Usifo is a certified Project Administration skilled, professional Scrum Master, and a BCS certified Enterprise Analyst with a background in product improvement and database management.

Options

Some groups that use Scrumban stick with the Scrum requirement of sprints, whereas others choose to use Kanban guidelines to handle the quantity of work that can be in progress at any time. Scrumban allows for that flexibility, and many groups consider it as the way to get the “best of each worlds” out of Scrum and Kanban. The visible workflow you get from Kanban boards can streamline your team’s processes, as each group member could have a clear view of their responsibilities and who they want to report back to. That makes it an excellent choice for complicated initiatives that can feel intimidating at first.

Using Kanban you’ll have your complete workflow seen on a Kanban board. This method you possibly can see in which column there are probably the most cards hence which stage slows the supply process. If your stakeholders are in search of a fast and responsive system that focuses on quick deliverable turnaround times, Kanban might be one of the best fit. If they prefer a extra structured system where the necessity for input is limited to post- or pre-sprint classes https://www.globalcloudteam.com/, the Scrum or Scrumban frameworks can be higher.

When WIP falls under a predetermined stage, an on-demand planning trigger is ready so the team knows when to plan next. Every of these task columns represents a chunk of work that wants accomplished for the project or launch. The team creates and stores user stories in the backlog till they’re reviewed and moved into the to-do column for work to begin.

The post Scrum, Kanban, Or Scrumban? Find The Best Fit In Your Group appeared first on Advocate Shannu rani.

]]>
https://advocateshannurani.com/2025/05/21/scrum-kanban-or-scrumban-find-the-best-fit-in-your/feed/ 0
Solution Architect Job Description: Position, Obligations & Abilities https://advocateshannurani.com/2025/05/21/solution-architect-job-description-position/ https://advocateshannurani.com/2025/05/21/solution-architect-job-description-position/#respond Wed, 21 May 2025 00:57:56 +0000 https://advocateshannurani.com/?p=6303 So, such constraints might significantly modify the product, affecting its time to market and value. Every project comes with constraints that can be time dangers, cash, and licensing. For instance, the cellular app must also embody some functions that work in an offline mode additionally. Learn about cloud migration technique and the means to calculate […]

The post Solution Architect Job Description: Position, Obligations & Abilities appeared first on Advocate Shannu rani.

]]>
So, such constraints might significantly modify the product, affecting its time to market and value. Every project comes with constraints that can be time dangers, cash, and licensing. For instance, the cellular app must also embody some functions that work in an offline mode additionally. Learn about cloud migration technique and the means to calculate its ROI in our dedicated article. Understanding these scenarios’ complexity and potential influence makes it clear why and when an organization would possibly want to rent an IT Resolution Architect.

  • In pursuing project success, Options Architects wield their expertise to estimate crucial project outcomes.
  • A high-end resolution architect should pay consideration to separate details in technical and business processes, preserving in view a broader image on the similar time.
  • A options architect ought to maintain a specific skill set that’s enough to efficiently craft, build, and guide the software program development answer.

Methods For Processing High Quality Attributes

roles and responsibilities of solution architect

In Addition To the examination, most certification platforms supply training courses, learning materials, and follow exams. Different resources also can help prepare and apply, such as Udemy, Coursera, or MeasureUp. However, you can take the exam without previous preparation — all required is deep information of the structure concepts and ideas and vast hands-on experience in the business.

They’re concerned with initiatives on a deeper level and should leverage a variety of expertise to drive effectiveness and effectivity to the method. Becoming a Solution Architect could be the right transfer for a diligent, confident particular person looking for company and influence. The capacity to effectively communicate and negotiate with stakeholders is paramount.

With 3–5 years of experience, you handle tasks extra independently, guiding groups on technical architecture and design. Your involvement expands to understanding business roles and responsibilities of solution architect wants, mapping solutions, and collaborating with cross-functional groups. Simply put, it’s somebody who designs and implements technical solutions to handle complicated enterprise challenges.

roles and responsibilities of solution architect

Resolution Architect Vs Enterprise Architect Vs Enterprise Architect

Solutions architects are answerable for evaluating existing systems and developing methods to integrate new applied sciences. They be certain that methods are cost-effective and scalable while maintaining sturdy knowledge and system safety. They present technical leadership and make selections relating to probably the most essential parts of a system being created. The parts that may be hard to change after implementing and components which could be related to failure dangers. Additionally, the architect may typically suggest technical standards, including coding requirements, instruments, or platforms. Software architects may also be engaged in the design of the architecture of the hardware environment.

Now, we hope you have solutions to all of the solutions architects’ relevant queries and more. If you could have different questions, be happy to achieve us, we’d be very happy to type out your small business issues. They are well-versed with such constraints and convey one of the best ways to cope with them. And the more quickly you take care of them; the more it’ll deliver the products cheaper and sooner. Varied programming languages, libraries, frameworks, architectural patterns, databases, and requirements are there. The solution architect accounts for choosing instruments that best swimsuit the specific project, and this demands tech proficiency to compare and entry instruments.

Answer architects position appeared in companies that create software program on an industrial scale. They wanted someone who might communicate with their shoppers while the contract is being ready (solution architecture as a service). There are many different programming languages, frameworks, libraries, databases, architectural patterns, and standards. The responsibility of an answer architect is to choose essentially the most appropriate tools for a particular project. After creating a product roadmap, the solution architect is engaged in estimating the price range and introducing it to the stakeholders. Once everything is approved, SA traces the process of growth and keeps clients tabs on the progress.

Whereas it is a challenging function, it is also a job born out of experience, which helps bear the burden of an entire answer deployment. Resolution Architects do not essentially have normal anatomy however there are shared traits that distinctively set them other than different roles. Resolution Architects have expertise that make it incredibly simple to design, construct, and lead the execution of an answer with accuracy and effectivity.

roles and responsibilities of solution architect

Technical architects are in command of ai networking the complete software program growth lifecycle – from planning and street mapping to deployment, help, and upkeep. A options architect is crucial for aligning enterprise requirements with effective IT solutions. By collaborating with teams and stakeholders, a solutions architect designs scalable and secure architectures that assist current and future enterprise objectives. Nonetheless, when an organization faces complex enterprise challenges that contain know-how solutions, it may be time to engage a solutions architecture consultant.

In different words, resolution architects create a bridge between planning at the enterprise degree and developing specific software program merchandise that may help an organization make these plans a actuality. Once the answer architecture is designed, the architect takes on the essential position of overseeing its implementation and dealing intently with the development https://www.globalcloudteam.com/ team. This ensures that the architectural pointers are followed and that the solution is developed according to the desired requirements. Moreover, the architect performs a pivotal position in testing the answer to make sure its functionality and efficiency meet the specified outcomes. The answer structure was designed contemplating all the business requirements.

For example, if you use legacy software, your brand-new admin plan should match proper in and talk with that legacy system. Architects consider the present firm’s structure to ensure the brand new product will work within the present ecosystem. From an employee’s viewpoint, certification is principally wanted for a particular company. However, it’s the confirmed approach to turn out to be an IT solution architect, increase and purchase credibility.

Options Architects contribute to efficiently realizing the intended outcomes by providing steerage and course all through the implementation process. They delve deep into specific technology disciplines, cloud computing, data facilities, or cybersecurity. Their proficiency lies in designing, implementing, and troubleshooting within their area of expertise. The Technical Architect’s function is more granular, working throughout the framework laid down by the Enterprise Architect, specializing in how specific technologies may be utilized to attain that overarching vision.

The post Solution Architect Job Description: Position, Obligations & Abilities appeared first on Advocate Shannu rani.

]]>
https://advocateshannurani.com/2025/05/21/solution-architect-job-description-position/feed/ 0
What’s Embedded Software? Figuring Out Prime Uses And Examples https://advocateshannurani.com/2025/05/20/what-s-embedded-software-figuring-out-prime-uses/ https://advocateshannurani.com/2025/05/20/what-s-embedded-software-figuring-out-prime-uses/#respond Tue, 20 May 2025 21:04:45 +0000 https://advocateshannurani.com/?p=5062 Software engineers, on the opposite hand, concentrate on the supply code wanted to accomplish the job in hand. Or merely we will say one thing which is integrated or attached to another thing. Now after getting what precise methods and embedded imply we will simply perceive what are Embedded Systems. The actuality is that software […]

The post What’s Embedded Software? Figuring Out Prime Uses And Examples appeared first on Advocate Shannu rani.

]]>
Software engineers, on the opposite hand, concentrate on the supply code wanted to accomplish the job in hand. Or merely we will say one thing which is integrated or attached to another thing. Now after getting what precise methods and embedded imply we will simply perceive what are Embedded Systems. The actuality is that software program has turn out to be the vital thing area of differentiation and innovation in lots of markets, including firms whose main product just isn’t software.

What Is Embedded Software? An Entire Information In 2025

The results of a constexpr perform can be used wherever a compile time fixed is required, for example for an array measurement or in a compile time branch. One Other is to use a library like the embedded template library which has been designed for decrease useful resource embedded purposes. It defines a set of containers, algorithms, and utilities, some of which emulate parts of the STL. By using elements of the STL, when acceptable, in a microcontroller software project, it’s potential to significantly decrease coding complexity whereas simultaneously improving legibility and efficiency.

  • Customers aren’t going to be eager on buying a device that wants battery substitute or recharging each few hours because of inefficient, embedded software program.
  • These techniques are providing producers with a higher diploma of management over the commercial processes they manage each day.
  • Some embedded techniques run lightweight operating methods corresponding to FreeRTOS, VxWorks, or embedded Linux.
  • Many of those functions take a very lengthy time to execute relative to their integer counterparts and in addition may not be reentrant.
  • Capacity to obtain a Division of Protection Secret security clearance is required at time of rent.

Embedded software is essential to the functionality of modern devices, guaranteeing efficient, real-time operation across numerous industries. As know-how advances, embedded software program will remain at the forefront, enabling smarter and more linked units that enhance our daily lives and industrial processes. Implementing sophisticated and scalable software and know-how options like embedded software will be key to expertise companies’ success. Embedded software in industrial purposes drives automation, enhancing effectivity and enabling refined functionalities in equipment and methods.

Its capabilities are activated by exterior controls, both exterior actions of the system itself or distant enter. The system may have communication links to different gadgets for functionality or in case the gadget needs to be adjusted, calibrated or identified. It is also via these connections that somebody would possibly attempt embedded system hacking. Firmware consists of software that is written in non-volatile memory throughout the embedded system, such that it can’t be easily modified or erased. Most embedded methods include read-only memory (ROM) or electrically erasable programmable read-only reminiscence (EEPROM) where firmware is stored.

What is embedded software

Look for other novel integration points as nicely, as devices turn out to be “smarter” and extra sophisticated. It may also enhance in functionality and class, pushed in part by persevering with advances in computing energy and storage density. Embedded methods can be present in pacemakers, MRI machines and digital stethoscopes. These functions all assist to improve the prognosis and remedy of medical patients across the world. Then in 1987, Wind River developed the first embedded working system (OS) that was known as VxWorks.

What is embedded software

Operating Systems

An embedded utility contains control or scheduling algorithms that allocate processing energy to duties, processes, or companies primarily based on their assigned priority. ​Embedded software is specialised programming in a hardware system that controls its capabilities. In Contrast To general-purpose software that runs on PCs or cellular units, embedded software program is designed for the precise controls of the gadget it resides in, such as vehicles, home equipment, or specialized equipment. Firstly, embedded software Data Mesh is designed for particular tasks, unlike the general-purpose computers that deal with multiple tasks. The hardware parts (e.g. chips) inside a tool that home the embedded software are referred to as embedded techniques.

For instance, Athenahealth, a healthcare IT service supplier has launched an embedded EHR telehealth software for physicians, which has considerably streamlined their daily operations. It permits them to perform HIPAA-compliant telehealth visits extra effectively inside follow workflows such as scheduling, patient messaging, invoicing, video conferencing, and concurrent-encounter documentation. The main distinction between desktop and embedded programming is in their meant use.

Embedded Methods In Industrial & Manufacturing Purposes

Complexities vary from a single microcontroller to a collection of processors with linked peripherals and networks; from no consumer interface to advanced graphical consumer interfaces. The complexity of an embedded system varies significantly depending on the task, software and setting for which it’s designed. Embedded system is a computational system that’s developed primarily based on an integration of each hardware and software program in order to perform a given task.

It refers to specialised programming in devices designed to carry out particular tasks. This information dives into the realm of embedded software, illuminating its importance, characteristics, and the numerous methods it impacts your day by day life and the broader technological panorama. Due To This Fact, the significance of embedded system in fashionable expertise cannot be underestimated because the provide dedicated and dependable system which might be environment friendly for specific use. Embedded techniques are very important in our lives since they provide automation, enhanced efficiency and accuracy in our every day lives. Examples include FreeRTOS, VxWorks, and QNX, and in some circumstances, embedded Linux. Applications can vary from exhausting real-time, safety-critical purposes such as airplane avionics to wireless routers and HVAC systems.

Profession prospects are sturdy because of the increasing use of embedded systems in varied industries, including automotive, client electronics, and healthcare. Embedded software is foundational for IoT gadgets, offering the mandatory management and operational capabilities at the system level, which is important for the IoT ecosystem. In different words, hardware engineers construct the body and software program engineers give the brain.

The selection of algorithm is very important for duties such as sorting, searching, and mathematical calculations. Abdul Dremali is a key content embedded system software development solutions writer at AndPlus and a driving drive in AndPlus advertising. He was additionally instrumental in creating the AndPlus Innovation Lab which paved the way for the company’s management in Synthetic Intelligence, Machine Learning, and Augmented Reality software growth. Strictly Essential Cookie ought to be enabled at all times so that we can save your preferences for cookie settings. Later, Autonetics developed an upgraded embedded system in 1965 by developing the D-17B pc that was used for the Minuteman missile steering system.

The lookup tables may be precalculated and saved in static reminiscence, calculated (or pre-fetched) as part of https://www.globalcloudteam.com/ a program’s initialization phase (memoization), and even saved in hardware for application-specific platforms. Optimized perform libraries for so much of commonplace tasks can be found from a quantity of sources. For instance, the Boost collection incorporates well-tested libraries for a lot of common functions. As Quickly As you have some working code, you should have a pretty good thought of which functions are the most important for general code effectivity.

The post What’s Embedded Software? Figuring Out Prime Uses And Examples appeared first on Advocate Shannu rani.

]]>
https://advocateshannurani.com/2025/05/20/what-s-embedded-software-figuring-out-prime-uses/feed/ 0
Cloud Deployment Models Varieties, Comparison & Examples https://advocateshannurani.com/2025/05/20/cloud-deployment-models-varieties-comparison/ https://advocateshannurani.com/2025/05/20/cloud-deployment-models-varieties-comparison/#respond Tue, 20 May 2025 19:24:09 +0000 https://advocateshannurani.com/?p=5076 The cloud infrastructure automation market is anticipated to hit $3.ninety four billion by 2029, with a 14.4% annual development fee. This speedy enlargement highlights the importance of choosing reliable tools to simplify the deployment of apps, APIs, and cloud infrastructure. To summarize the choices obtainable in OCI’s distributed cloud, the next table outlines OCI deployment […]

The post Cloud Deployment Models Varieties, Comparison & Examples appeared first on Advocate Shannu rani.

]]>
The cloud infrastructure automation market is anticipated to hit $3.ninety four billion by 2029, with a 14.4% annual development fee. This speedy enlargement highlights the importance of choosing reliable tools to simplify the deployment of apps, APIs, and cloud infrastructure. To summarize the choices obtainable in OCI’s distributed cloud, the next table outlines OCI deployment fashions and their perfect use cases. In the lengthy haul, the group can seamlessly transit based on its chosen cloud storage provider’s services and tech capabilities. Think About a sizable group grappling with complex payroll processes across two devoted servers. Years of problems have taken their toll, prompting a shift in direction of simplicity.

So, they could select the hybrid cloud to mix the necessities with the benefits of a public cloud. It permits on-premises purposes with sensitive information to run alongside public cloud functions. The capacity to release software on-demand, with the identical flexibility, scalability, and control as you possibly can along with your cloud computing assets is absolutely essential. If you presumably can have new servers, new platforms, or new companies underneath your control in minutes, your finish customers can’t wait hours to see your software program evolve.

Organizations can move data and purposes between totally different clouds utilizing a mixture of two or extra cloud deployment strategies, relying on their needs. Public deployment models in the cloud are good for organizations with rising and fluctuating demands. With this model, you pay a cloud service provider for networking providers cloud computing deployment models, compute virtualization, and storage availability on the basic public Web. This is also a fantastic supply mannequin for the teams with development and testing. Its quick and easy configuration & deployment make it a super alternative for take a look at environments. It refers to an arrangement of distinct setting variables like storage measurement, possession, and accessibility of the distribution framework.

Why Choose The Non-public Cloud?

There are many alternative issues that need to be taken in case you are to build the proper solution for your personal needs. Anyone who’s trying to design a cloud solution that meets their necessities is spoiled for alternative. The number of suppliers and vendors that supply cloud-hosting providers and merchandise is growing steadily. There are many alternative models to choose from in regard to cloud deployments. Your cloud infrastructure and placement of every workload is dependent upon your corporation wants. As the private cloud-deployment mannequin won’t be optimal for all workloads, this mannequin meets all necessities of even the bigger organizations.

Think About managed databases, when you use SaaS MySQL, you only concern yourself together with your knowledge, access controls, scale, and redundancy as defined by your small business needs, use case, and finish users. It’s just like the hybrid cloud deployment model, where you use both the public and private cloud. The least expensive cloud deployment mannequin varies primarily based on utilization patterns and cloud service providers. Typically, Public Cloud options are cost-effective for organizations looking for budget-friendly options. Here’s a quick comparison of different cloud fashions, including public cloud, non-public cloud, hybrid cloud, community cloud and multi-cloud computing. It’s based on elements such as possession, entry type, size of cloud, setup and maintenance complexity, price efficiency, scalability, reliability and safety.

Advantages Of Public Cloud

what are the cloud deployment models

You have more management over how cloud resources are used while utilizing the private cloud. This article introduces you to the 5 Digital Twin Technology major cloud deployment models with their professionals, cons, and real-life examples. Public cloud is a generally adopted cloud model, the place the cloud services supplier owns the infrastructure and overtly supplies entry to it for the public to devour. The draw back of relying on a multi-cloud deployment model is that you’re all of a sudden paying to hold up access to multiple systems, which can shortly make costs balloon.

Hybrid clouds combine the features of private and non-private clouds and allow https://www.globalcloudteam.com/ organizations to run their applications on both private and non-private clouds. Multi-clouds mix two or more cloud deployment models, offering maximum flexibility and scalability. The main types of Cloud Deployment Models include Public Cloud, Non-public Cloud, Hybrid Cloud, Group Cloud, and Multi-Cloud.

what are the cloud deployment models

Due to legislative issues, a typical Government Cloud is the answer to many country-specific judicial issues. Infrastructure is managed primarily using an internet browser but may also be manipulated using an API, on the command line, or using infrastructure-as-code tools such as Terraform. Next, you have to choose the service mannequin — namely, whether you need to use an IaaS, PaaS or SaaS model in your application. Smarter models on edge gadgets will turn out to be commonplace in automotive, healthcare, and AR/VR methods. End-to-end automation of coaching to deployment will turn into more widespread, lowering the necessity for human involvement. Predictive upkeep fashions cut back downtime by forecasting gear failures.

In cloud computing environments, the deployment mannequin refers back to the association and particular configuration of computing sources, providers, and infrastructure. The deployment model defines how these resources are organized, managed, and made accessible to users. Nevertheless, hybrid cloud environments are more complex to manage than totally public or private cloud setups.

The native administrations can shield their confidential data and save vitality and IT staff prices. Companies that look for price effectivity and higher management over data & sources will find the private cloud a extra suitable choice. Your IT group can either integrate it into your data centre or host it externally. When it involves customization, the private cloud offers larger and extra appropriate business opportunities to meet custom enterprise necessities. It’s also a clever alternative for mission-critical processes that may have frequently changing requirements. There isn’t any one-size-fits-all approach to choosing a cloud deployment model.

  • Our expert and top-of-the-line cloud consultant might help you design a profitable technique by selecting the best cloud deployment models for your small business.
  • The capability to release software on-demand, with the same flexibility, scalability, and control as you’ll have the ability to along with your cloud computing sources is completely essential.
  • However, you might have limited resources available but don’t wish to compromise customer support or buying expertise.
  • Optimize your cloud infrastructure, implement sturdy solutions, and keep forward of tendencies with our resource hub.

It’s potential to outline a cloud setting based on a couple of different standards, however one of the most common methods is by taking a look at which of the five cloud deployment models it makes use of. By iterating on these strategies, organizations in any trade can achieve the benefits of OCI’s distributed cloud—flexibility, compliance, and performance—while maintaining operational excellence. A firm with crucial data chooses to use a non-public cloud; nonetheless, a public cloud is preferable for much less sensitive data. The hybrid cloud can also be frequently used for ‘cloud bursting.’ It means a company runs an application on-premises but can burst into the public cloud because of heavy load.

When choosing a cloud deployment mannequin, you should think about your organization’s needs and how the totally different deployment models may help with your use case. On the other hand, if your group wants a custom resolution, or if it incessantly handles regulatory or delicate data, a non-public cloud could be preferable. Completely Different forms of cloud deployment fashions work as a virtual computing environment depending on who has entry to the cloud infrastructure and the way a lot information you need to retailer. In some industries, a cut up between flexibility and security will lead to hybrid cloud deployments being the most becoming possibility.

I like the means it allows you to manage thousands of nodes using event-driven automation while supporting highly effective reporting and repeatedly implementing security policies. It supports the scripting and executing of arbitrary duties and includes a set of sane default deployment workflows. DeployHQ offers a free plan that is restricted to getting used for just one project. At its simplest, the first difference between AWS Protect vs WAF is that Shield protects towards distributed denial-of-service (DDoS) assaults, whereas WAF protects web apps from dangerous web requests. AWS Shield works on the network, transport and application layers, however AWS WAF (Web Software Firewall) works at the utility layer solely. Software as a Service (SaaS) is provided over the Web and requires no prior set up.

The post Cloud Deployment Models Varieties, Comparison & Examples appeared first on Advocate Shannu rani.

]]>
https://advocateshannurani.com/2025/05/20/cloud-deployment-models-varieties-comparison/feed/ 0
Specflow Vs Selenium Top 10 Key Differences https://advocateshannurani.com/2025/05/20/specflow-vs-selenium-top-10-key-differences/ https://advocateshannurani.com/2025/05/20/specflow-vs-selenium-top-10-key-differences/#respond Tue, 20 May 2025 17:32:18 +0000 https://advocateshannurani.com/?p=6311 Every scenario consists of a quantity of steps, every mapped to a step definition class. These steps are connected utilizing Gherkin keywords to type the whole take a look at situation. The table can be used to cross knowledge multiple occasions as a parameter in a check step however it’s not the identical as the […]

The post Specflow Vs Selenium Top 10 Key Differences appeared first on Advocate Shannu rani.

]]>
Every scenario consists of a quantity of steps, every mapped to a step definition class. These steps are connected utilizing Gherkin keywords to type the whole take a look at situation. The table can be used to cross knowledge multiple occasions as a parameter in a check step however it’s not the identical as the State Of Affairs outline. There is a difference between the desk and the scenario define.

BDD is a short type for Conduct Driven Growth, it is an agile software methodology. This methodology enforces to build the appliance by prioritizing the user’s expectations, and experience. BDD Testing is a testing methodology to check the software program software where take a look at cases are designed within the form of Gherkin Syntax. The BDD testing strategy makes the take a look at instances more readable and comprehensible by anybody. When the steps are displayed in purple, which means we are not ready. To be in a position to execute the situation you have to define the so-called bindings for every step.

SpecFlow then translates these scenarios into executable checks that could be run towards the software program software. The output of these checks provides suggestions to the developers on the application’s habits and helps make certain that the software meets the desired functionality and necessities. If you would possibly be studying about program testing, first read function files and then read Java code with testing steps. By integrating LambdaTest along with your SpecFlow setup, you’ll be able to effortlessly scale your testing infrastructure and speed up the feedback loop in your growth course of. Moreover, LambdaTest offers the first 100 automation testing minutes for free, making it a cost-effective selection for teams looking to explore cloud-based testing solutions. In conclusion, the panorama of Behavior-Driven Growth (BDD) provides a variety of frameworks, each with its strengths and suitability for different project requirements.

specflow java

Producing And Implementing Specflow For Feature Files With Selenium Integration

On the left facet of the display screen, a group named “tester stop” is displayed with a tag named “tester stock.” This group is created primarily based on the provided tag name in the feature file. The implementation of a Test-Driven Development (TDD) methodology in a BDD project involves a number of key steps. One of the most important reasons is the less complexity concerned in building the plain Selenium framework. Selenium is a extremely extensible and customizable framework that may be extended to cowl any edge case situations and organization-specific eventualities.

  • Attain as a lot as 70% check coverage with GenAI-based, low-code check automation software.
  • In this publication, I am going to share with you 4 methods for dealing with parameters in the feature recordsdata.
  • We have to create step definitions that bind the statements within the check state of affairs to the application code.
  • You can use the Nunit assertion libraries for the marking report as cross or fail.

Selenium and Specflow can be utilized together to get the most out of each tools. Selenium framework helps integration with Specflow utilizing C# programming languages. This method you can use the power of both Selenium and Specflow to build a sturdy framework. Using Specflow you’ll have the ability to write the take a look at circumstances in BDD format and Selenium can be used to simulate the user actions. You can use the Nunit assertion libraries for the marking report as pass or fail.

specflow java

Gherkin-by-example/java-cucumber

As you possibly can see we cross completely different combos of days, hours, minutes and seconds. The first binding technique will call the brand new technique without the optional parameter. If we choose Fractions format the strategy with select, it from the drop down and convert the reply. This is a pattern resolution for SpecFlow.There is nothing fancy like a webapp or browser testing.All this does is to point out you tips on how to use and run SpecFlow. If you wish to carry out the search functionality, you have to implement the one abstraction methodology in the search web page itself. The project name is supplied within the command immediate, and the required command is pasted again for execution.

Nevertheless, it’s not mandatory that the Selenium framework needs to have Specflow. Moreover, Testsigma has much more advantages when compared to Cloud deployment Specflow and Selenium let’s perceive them. Let’s understand with an example of login in the software.

Even handbook testers who’re captivated with studying automation prefer Specflow. However, integrating specflow within the automation framework may limit customization. From the articles part of the Specflow Series, you’ll have the ability to learn to write acceptance checks following the BDD paradigm so that your exams are understandable to business users. In this publication, I am going to share with you 4 methods for handling parameters within the feature recordsdata.

Discover The Proper Accounts, Contact, Message, And Time To Promote

specflow java

Moreover, It helps SDETs to keep their expertise updated with the trade and it helps them of their profession plans. Gherkin syntax is a novel language, it is written in plain English language with keywords. It is structured within the form of a Given When and Then format. The Examples part is a desk the place every argument variable represents a column in the table, separated by “|”. Each line beneath the header represents an individual run of the take a look at case with the respective knowledge.

Let’s see which BDD powerhouse resonates with various sorts of organizations. The script is then tested with various units of check knowledge, such as “Selenium by Tesla Inventory,” and once accomplished, the unnecessary lines (e.g., “step is ready”) are eliminated. To simplify the process, more keys and values can be added to the search keywords, allowing for extra efficient testing.

It lets you outline executable specifications utilizing Gherkin, a plain-text, human-readable language. These specifications can then be automated with .NET code, creating dwelling documentation and automated checks. SpecFlow is often used to facilitate collaboration between builders, testers, and business stakeholders, ensuring that software meets agreed-upon requirements specflow. SpecFlow is an open-source testing framework that permits behavior-driven improvement (BDD) for .NET applications.

We must create step definitions that bind the statements within the take a look at scenario to the application code. I will present you in a bit tips on how to generate them routinely or create them manually. However first, let’s create the required https://www.globalcloudteam.com/ web page objects that can drive our take a look at. It may be integrated with a wide selection of testing frameworks, including NUnit, xUnit, and MSTest, and supports a quantity of platforms, including .NET Core and .NET Framework. Giant enterprises with advanced software methods usually select Cucumber for its versatility, allowing them to define and automate executable specifications using the Gherkin language. This tool allows customers to create feature files, incorporate them into their code, and close the browser efficiently.

SpecFlow is an open-source and free device that serves as a robust specification framework for each Behavior-Driven Development (BDD) and Test-Driven Development (TDD) in .NET tasks. There are many ways to use desk information in the Sepecflow but we are going to discuss two ways that can give a transparent thought to get data from the table objects. The desk is used when you want to handle a considerable amount of the information in a step of take a look at case. Selenium can be used with out Specflow should you do not have a requirement to set up a BDD framework.

The post Specflow Vs Selenium Top 10 Key Differences appeared first on Advocate Shannu rani.

]]>
https://advocateshannurani.com/2025/05/20/specflow-vs-selenium-top-10-key-differences/feed/ 0
The 7 Best App Builders With Out Coding In 2024 https://advocateshannurani.com/2025/05/13/the-7-best-app-builders-with-out-coding-in-2024/ https://advocateshannurani.com/2025/05/13/the-7-best-app-builders-with-out-coding-in-2024/#respond Tue, 13 May 2025 09:09:10 +0000 https://advocateshannurani.com/?p=4540 My favorite thing is that TypingMind has a group of built-in AI characters with which you’ll chat. From a life hacker to a software developer, you’ll be able to choose a personality and ask them questions or request items of text, guides, or explainers. To launch on the App Retailer, you have to pay a […]

The post The 7 Best App Builders With Out Coding In 2024 appeared first on Advocate Shannu rani.

]]>
My favorite thing is that TypingMind has a group of built-in AI characters with which you’ll chat. From a life hacker to a software developer, you’ll be able to choose a personality and ask them questions or request items of text, guides, or explainers. To launch on the App Retailer, you have to pay a $99 annual fee to Apple. Next, make sure your app is optimized for visibility — assume keywords and catchy descriptions. The more appealing your app seems within the retailer, the extra downloads you’ll get. Gathering insightful data helps you make needed adjustments earlier than your grand launch.

The Appery app builder includes a visible editor utilizing how to create a mobile app drag and drop elements to construct the UI. You can connect with any REST API and use it in your app, and immediately add a cloud database and backend to your app if you should retailer information. Certain, the fear of coding can push you to not act on building your own app or to place off in search of the most effective app constructing software program.

Options embody its Simulator, which supplies real-time previews of your app, allowing you to see how adjustments influence the person interface without needing to deploy to a bodily gadget. Additionally, the visual debugger streamlines troubleshooting by enabling you to work together instantly with UI parts somewhat than sifting via code, speeding up the development process. Codeless ONE is a no-code growth platform designed for enterprises desirous to create totally customizable software program purposes with out the need for coding experience. Generally talking, cheaper app development software program translates to much less flexibility. You’ll be sure by sure restrictions of the device, making it powerful to scale or add custom features. For no-code mobile apps, getting started is usually as simple as creating an account and choosing a template.

WebStorm additionally supplies a built-in debugger and testing instruments, streamlining the event process for internet and full-stack purposes. It has greater than 40+ built-in person interface instruments that you should use to customise the seem and feel of your app. The software also helps advanced options like inheritance and polymorphism. Comparable to a few of the different app makers on our record, Skuid isn’t really designed for customer-facing cell apps.

Moreover, with the flexibility to adapt and develop in line with my wants, I can continually improve and broaden my apps, staying forward of the curve. Based on my years of app improvement experience, I’ve shortlisted my high app growth software program picks to assist make the app creation process easier and sooner. It’s price noting that the platform doesn’t quite accommodate custom capabilities. Swing2App is more of a cookie-cutter resolution, which actually solely supports primary cell apps. BuildFire has a click-and-edit app maker that is straightforward and intuitive to use.

Why Would Somebody Use An App Builder?

What is the easiest app to build

Trusted to create greater than 10,000 cellular apps, it’s the simplest method for anyone, no matter technical ability, to create an app from scratch and get it within the arms of real customers. Now that we’re clear on what no-code app builders are and the way they work, let’s discover out what the best choices are available available on the market right now. AppMachine is an easy-to-use platform to construct and design skilled native apps for both iOS and Android.

  • As you converse in the AI chat, a checkpoint for each version of your functional prototype or net app is created. newlineYou can scroll by way of the AI chat and restore earlier versions of your useful prototype or internet app.
  • Beginning at $200/month that you want to pay in advance for 2 years of service – which comes to a minimal of $4,800.
  • Generate full Xcode tasks, select from a spread of pre-built features, and utilize powerful improvement modules to streamline your workflow.
  • However the initial hiccups with the editor, you’re poised to craft an industry-standard app in record time, even if you’re unversed in coding.
  • Examples include platforms like Fliplet, which presents a primary free plan, and others like Bubble and Glide that also provide free tiers with limited but helpful features.

Free Small Business Apps

What is the easiest app to build

Unlike other web-based instruments on our list, Xojo does require a software obtain so that you can use it. You can use this platform to create cross-platform apps utilizing a low code system. If you need to create a no-code app, then you need to use it for things like automating workflows and digitizing paper varieties. Skuid can be utilized to create apps for guiding sales, companion portals, individuals operations, and other inside enterprise processes. It’s additionally https://www.globalcloudteam.com/ price noting that some app stores require differences between your web site and app earlier than they publish your app.

AI app builders interpret your pure language descriptions and convert them into working code. They generate both frontend interfaces and backend logic based mostly in your directions. The AI handles every little thing from database constructions to person interfaces, dramatically decreasing growth time. There are completely different levels of software growth that change between initiatives, however a normal workflow includes analysis, planning, improvement, testing, deployment, and upkeep. Selecting the right app growth software is essential for remodeling an concept right into a digital product.

The best app makers don’t require any coding expertise or programming data to get began. Building cell apps no longer requires coding expertise and technical data. With the assistance of app makers and app creation software program, anybody can create their very own cellular app without writing a single line of code. The app maker should feature drag-and-drop capabilities, have an intuitive user interface, and be simple to browse.

All revisions are in actual time, with the ability to ship push notifications, monetize with adverts, see live analytics, and monitor location with GPS. You also can combine social media feeds, blogs, web sites, audio, radio, and extra. Another standout function of Knack is its sturdy knowledge administration capabilities, allowing for a wide variety of use cases. With Knack, users can simply design and implement advanced databases, full with relationships and information validation guidelines. The platform’s capability to handle giant datasets and supply data analytics instruments additional cements its popularity as a flexible and highly effective no-code app builder. Bizness Apps presents a user-friendly interface that aids in the creation of useful and configurable cell apps.

If you have a function in mind that you simply don’t see on the characteristic marketplace, just connect with a BuildFire rep, and the professional companies group will build it for you. Asia’s largest cash and carry needed software program that would scale with their speedy growth, so we constructed them something that allowed them to onboard new clients trello with out technical hiccups. Furthermore, if you want a devoted account manager or want database entry to analyse your knowledge, you must go for a customized plan, which may easily value upwards of $1500 per thirty days. You can then make small customisations utilizing a visible editor, whereas some platforms additionally present logic-based triggers where you can resolve what motion takes place when a button is clicked. If you’ve ever needed to construct an app after considering up a brilliant idea, you are in the right place.

The post The 7 Best App Builders With Out Coding In 2024 appeared first on Advocate Shannu rani.

]]>
https://advocateshannurani.com/2025/05/13/the-7-best-app-builders-with-out-coding-in-2024/feed/ 0