{"version":3,"file":"YpenvmPOk.Clpx0e92.mjs","names":["t","e","t","n","o","r","u","a","s","e","i","o","e","t","r","n","o","n","e","t","t","n","r","a","e","s","o","i","h","u","m","p","M","e","t","n","o","i","s","r","a","l","u","m","_","W","j","x","V","q","se","re","ae","size","i","t","placeholderStyles","emojiStyles","titleStyles","subtitleStyles","containerStyle","clamp","i","dotStyle","Component","addPropertyOverrides","cycleOrder","serializationHash","variantClassNames","transition1","Transition","Variants","humanReadableVariantMap","getProps","createLayoutDependency","Component","className","css","animation","window","i","h","s","r","b","p","q","t","a","e","j","k","m","n","o","x","global","prng","seed","B","C","calcBezier","binarySubdivide","length","animationData","addFonts","index","renderer","_","containerStyle","loadAnimation","animation","searchAnimations","standalone","resize","Math","document","clamp","wiggle","time","len","TextExpressionSelectorPropFactory","progress","SrcType","Poster","addPropertyOverrides","cycleOrder","serializationHash","variantClassNames","transition1","Transition","Variants","humanReadableVariantMap","getProps","createLayoutDependency","Component","className","css","addPropertyOverrides","AlphaExplosion","cycleOrder","serializationHash","variantClassNames","transition1","animation","transition2","animation1","animation2","transition3","transformTemplate1","_","t","Transition","Variants","humanReadableVariantMap","getProps","createLayoutDependency","Component","className","css","fonts","css","className","fonts","css","className","addPropertyOverrides","cycleOrder","serializationHash","variantClassNames","transition1","Transition","Variants","humanReadableVariantMap","getProps","createLayoutDependency","Component","className","css","addPropertyOverrides","LogoClients","MotionDivWithFX","cycleOrder","serializationHash","variantClassNames","animation","transition1","transition2","animation1","transition3","_","t","animation2","transition4","Transition","Variants","humanReadableVariantMap","getProps","createLayoutDependency","Component","className","css","addPropertyOverrides","cycleOrder","serializationHash","variantClassNames","transition1","Transition","Variants","humanReadableVariantMap","getProps","createLayoutDependency","Component","className","css","fonts","css","className","addPropertyOverrides","ButtonArrow","MotionDivWithFX","cycleOrder","serializationHash","variantClassNames","animation","transition1","transition2","transition3","animation1","Transition","Variants","getProps","createLayoutDependency","Component","className","css","addPropertyOverrides","MotionDivWithFX","NavLinkFeatures","cycleOrder","serializationHash","variantClassNames","transition1","animation","transition2","animation1","transition3","Transition","Variants","humanReadableVariantMap","getProps","createLayoutDependency","Component","className","css","cycleOrder","serializationHash","variantClassNames","transition1","Transition","Variants","getProps","createLayoutDependency","Component","className","css","addPropertyOverrides","AlphaPhotoOverlay","cycleOrder","serializationHash","variantClassNames","transition1","Transition","Variants","humanReadableVariantMap","getProps","createLayoutDependency","Component","className","Image","css","t","r","o","F","b","_","a","i","s","m","T","N","C","L","k","D","M","R","h","x","j","e","U","B","q","W","$","G","Y","K","te","re","ae","u","S","n","p","A","Typewriter","addPropertyOverrides","Typewriter","cycleOrder","serializationHash","variantClassNames","transition1","Transition","Variants","humanReadableVariantMap","getProps","createLayoutDependency","Component","className","css","className","css"],"sources":["https:/ga.jspm.io/npm:@motionone/utils@10.14.0/dist/index.es.js","https:/ga.jspm.io/npm:@motionone/easing@10.12.0/dist/index.es.js","https:/ga.jspm.io/npm:@motionone/animation@10.12.0/dist/index.es.js","https:/ga.jspm.io/npm:tslib@2.4.0/tslib.es6.js","https:/ga.jspm.io/npm:hey-listen@1.0.8/dist/index.js","https:/ga.jspm.io/npm:@motionone/generators@10.12.0/dist/index.es.js","https:/ga.jspm.io/npm:@motionone/dom@10.12.0/dist/index.es.js","https:/framerusercontent.com/modules/B2xAlJLcN0gOnt11mSPw/XVUmpmPn1EPL0dzocT35/Ticker.js","https:/framerusercontent.com/modules/V9ryrjN5Am9WM1dJeyyJ/9mrJHeWj7rhvLTLu7Yzt/UsePageVisibility.js","https:/framerusercontent.com/modules/zvkTOpMSuRzRhLzZZIwG/z9LFDX6PKECtSqS68OWD/SlideShow.js","https:/framerusercontent.com/modules/2MYliZ9GXMO9Kk8FcsYm/AqD2i4UW8ymF0mfX6TYJ/bk0C2dMAB.js","https:/framerusercontent.com/modules/3mKFSGQqKHV82uOV1eBc/TbXI1XaZFNevVKcgIt7G/isMotionValue.js","https:/framer.com/m/framer/useAutoMotionValue.js@0.3.0","https:/jspm.dev/npm:lottie-web@5.7.8!cjs","https:/jspm.dev/lottie-web@5.7.8","https:/framerusercontent.com/modules/YbkSqZ7STzW5WsMb1yan/7oWoX9MqdnxameM59dqC/Lottie.js","https:/framerusercontent.com/modules/H3thpEbHB0XJnBh0mNm5/BUGZaMUpn5VNxjJFBE8d/qrO2e_jQJ.js","https:/framerusercontent.com/modules/DfVmdO6jGq9Df7faxQzD/VMq3WE37Fd7kFkRtHuuR/HRc_C2tzi.js","https:/framerusercontent.com/modules/d65Adc0sCbLShmr3fuex/QaHoa1H7vBViXxesyGth/B1x57pDZs.js","https:/framerusercontent.com/modules/yXaScQKFb9qyOFuqW0tH/ufEtp1b2mX3eCM0TyHNG/iBeTArYkS.js","https:/framerusercontent.com/modules/tvBSuYSb06jE9AZZ7F3m/IoT7no7Shgwjaq5sh6Xf/d6TGmEhg8.js","https:/framerusercontent.com/modules/430bhUdRdSJ5Fl03ZuWa/2FF6RslaR0caZWRW40eo/qgj9dlVMW.js","https:/framerusercontent.com/modules/30yMqU2V03GVI4fJd0QJ/rQrlA4szH4ZBL2aaU6Wz/Qn3QqJj4I.js","https:/framerusercontent.com/modules/uSE0Cgxpc39B9AO7W0hM/xlhOHuNyvzaA7c0utVnn/v3idjVoPZ.js","https:/framerusercontent.com/modules/8LZHohTQhhveWWXlGWB9/smRKCjsMUSxOkO6NPWHw/yeDFy9oDO.js","https:/framerusercontent.com/modules/d86pYFTnTn48zmO2xsAk/dMMzEO6Fb4ys36TTAqSY/xWUxvpnPr.js","https:/framerusercontent.com/modules/VLcwAu4roignXVXVaOCJ/gljMHKTRi7myQmB21Ibc/Rebyd_Z6N.js","https:/framerusercontent.com/modules/UXV32EUQqvPPcEWQvoBQ/eTFVA14rPLzdKRhr1VFa/y3iBvSn9Y.js","https:/framer.com/m/framer/empty.js@0.1.0","https:/ga.jspm.io/npm:typewriter-effect@2.19.0/dist/react.js","https:/framerusercontent.com/modules/vgSbxmWWvbgW6ShllXld/Q0iNIU3I9Q4tAnX9GHy7/Typewriter.js","https:/framerusercontent.com/modules/qWEuQtCXZTXE1wwgHi75/tk2t6svXz79Gb3m1Wpav/YkiRD6KLJ.js","https:/framerusercontent.com/modules/emW2Q5pxJGAiIYSiY8cl/uPHJmJIc7M3wx8daNbE5/YpenvmPOk.js"],"sourcesContent":["function addUniqueItem(t,e){-1===t.indexOf(e)&&t.push(e)}function removeItem(t,e){const n=t.indexOf(e);n>-1&&t.splice(n,1)}const clamp=(t,e,n)=>Math.min(Math.max(n,t),e);const t={duration:.3,delay:0,endDelay:0,repeat:0,easing:\"ease\"};const isNumber=t=>\"number\"===typeof t;const isEasingList=t=>Array.isArray(t)&&!isNumber(t[0]);const wrap=(t,e,n)=>{const o=e-t;return((n-t)%o+o)%o+t};function getEasingForSegment(t,e){return isEasingList(t)?t[wrap(0,t.length,e)]:t}const mix=(t,e,n)=>-n*t+n*e+t;const noop=()=>{};const noopReturn=t=>t;const progress=(t,e,n)=>e-t===0?1:(n-t)/(e-t);function fillOffset(t,e){const n=t[t.length-1];for(let o=1;o<=e;o++){const s=progress(0,e,o);t.push(mix(n,1,s))}}function defaultOffset(t){const e=[0];fillOffset(e,t-1);return e}function interpolate(t,e=defaultOffset(t.length),n=noopReturn){const o=t.length;const s=o-e.length;s>0&&fillOffset(e,s);return s=>{let f=0;for(;f<o-2;f++)if(s<e[f+1])break;let r=clamp(0,1,progress(e[f],e[f+1],s));const c=getEasingForSegment(n,f);r=c(r);return mix(t[f],t[f+1],r)}}const isCubicBezier=t=>Array.isArray(t)&&isNumber(t[0]);const isEasingGenerator=t=>\"object\"===typeof t&&Boolean(t.createAnimation);const isFunction=t=>\"function\"===typeof t;const isString=t=>\"string\"===typeof t;const e={ms:t=>1e3*t,s:t=>t/1e3};\n/*\n  Convert velocity into velocity per second\n\n  @param [number]: Unit per frame\n  @param [number]: Frame duration in ms\n*/function velocityPerSecond(t,e){return e?t*(1e3/e):0}export{addUniqueItem,clamp,defaultOffset,t as defaults,fillOffset,getEasingForSegment,interpolate,isCubicBezier,isEasingGenerator,isEasingList,isFunction,isNumber,isString,mix,noop,noopReturn,progress,removeItem,e as time,velocityPerSecond,wrap};\n\n//# sourceMappingURL=index.es.js.map","import{noopReturn as t,clamp as n}from\"@motionone/utils\";const calcBezier=(t,n,e)=>(((1-3*e+3*n)*t+(3*e-6*n))*t+3*n)*t;const e=1e-7;const i=12;function binarySubdivide(t,n,o,r,c){let u;let a;let s=0;do{a=n+(o-n)/2;u=calcBezier(a,r,c)-t;u>0?o=a:n=a}while(Math.abs(u)>e&&++s<i);return a}function cubicBezier(n,e,i,o){if(n===e&&i===o)return t;const getTForX=t=>binarySubdivide(t,0,1,n,i);return t=>0===t||1===t?t:calcBezier(getTForX(t),e,o)}const steps=(t,e=\"end\")=>i=>{i=\"end\"===e?Math.min(i,.999):Math.max(i,.001);const o=i*t;const r=\"end\"===e?Math.floor(o):Math.ceil(o);return n(0,1,r/t)};export{cubicBezier,steps};\n\n//# sourceMappingURL=index.es.js.map","import{noopReturn as t,defaults as i,isEasingGenerator as e,isEasingList as s,interpolate as a}from\"@motionone/utils\";import{cubicBezier as n,steps as r}from\"@motionone/easing\";const o={ease:n(.25,.1,.25,1),\"ease-in\":n(.42,0,1,1),\"ease-in-out\":n(.42,0,.58,1),\"ease-out\":n(0,0,.58,1)};const h=/\\((.*?)\\)/;function getEasingFunction(i){if(\"function\"===typeof i)return i;if(Array.isArray(i))return n(...i);if(o[i])return o[i];if(i.startsWith(\"steps\")){const t=h.exec(i);if(t){const i=t[1].split(\",\");return r(parseFloat(i[0]),i[1].trim())}}return t}class Animation{constructor(n,r=[0,1],{easing:o,duration:h=i.duration,delay:u=i.delay,endDelay:l=i.endDelay,repeat:m=i.repeat,offset:c,direction:p=\"normal\"}={}){this.startTime=null;this.rate=1;this.t=0;this.cancelTimestamp=null;this.easing=t;this.duration=0;this.totalDuration=0;this.repeat=0;this.playState=\"idle\";this.finished=new Promise(((t,i)=>{this.resolve=t;this.reject=i}));o=o||i.easing;if(e(o)){const t=o.createAnimation(r,(()=>\"0\"),true);o=t.easing;void 0!==t.keyframes&&(r=t.keyframes);void 0!==t.duration&&(h=t.duration)}this.repeat=m;this.easing=s(o)?t:getEasingFunction(o);this.updateDuration(h);const d=a(r,c,s(o)?o.map(getEasingFunction):t);this.tick=t=>{var i;u=u;let e=0;e=void 0!==this.pauseTime?this.pauseTime:(t-this.startTime)*this.rate;this.t=e;e/=1e3;e=Math.max(e-u,0);\"finished\"===this.playState&&void 0===this.pauseTime&&(e=this.totalDuration);const s=e/this.duration;let a=Math.floor(s);let r=s%1;!r&&s>=1&&(r=1);1===r&&a--;const o=a%2;(\"reverse\"===p||\"alternate\"===p&&o||\"alternate-reverse\"===p&&!o)&&(r=1-r);const h=e>=this.totalDuration?1:Math.min(r,1);const m=d(this.easing(h));n(m);const c=void 0===this.pauseTime&&(\"finished\"===this.playState||e>=this.totalDuration+l);if(c){this.playState=\"finished\";null===(i=this.resolve)||void 0===i?void 0:i.call(this,m)}else\"idle\"!==this.playState&&(this.frameRequestId=requestAnimationFrame(this.tick))};this.play()}play(){const t=performance.now();this.playState=\"running\";void 0!==this.pauseTime?this.startTime=t-this.pauseTime:this.startTime||(this.startTime=t);this.cancelTimestamp=this.startTime;this.pauseTime=void 0;this.frameRequestId=requestAnimationFrame(this.tick)}pause(){this.playState=\"paused\";this.pauseTime=this.t}finish(){this.playState=\"finished\";this.tick(0)}stop(){var t;this.playState=\"idle\";void 0!==this.frameRequestId&&cancelAnimationFrame(this.frameRequestId);null===(t=this.reject)||void 0===t?void 0:t.call(this,false)}cancel(){this.stop();this.tick(this.cancelTimestamp)}reverse(){this.rate*=-1}commitStyles(){}updateDuration(t){this.duration=t;this.totalDuration=t*(this.repeat+1)}get currentTime(){return this.t}set currentTime(t){void 0!==this.pauseTime||0===this.rate?this.pauseTime=t:this.startTime=performance.now()-t/this.rate}get playbackRate(){return this.rate}set playbackRate(t){this.rate=t}}export{Animation,getEasingFunction};\n\n//# sourceMappingURL=index.es.js.map","var extendStatics=function(e,t){extendStatics=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])};return extendStatics(e,t)};function __extends(e,t){if(\"function\"!==typeof t&&null!==t)throw new TypeError(\"Class extends value \"+String(t)+\" is not a constructor or null\");extendStatics(e,t);function __(){this.constructor=e}e.prototype=null===t?Object.create(t):(__.prototype=t.prototype,new __)}var __assign=function(){__assign=Object.assign||function __assign(e){for(var t,r=1,n=arguments.length;r<n;r++){t=arguments[r];for(var o in t)Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o])}return e};return __assign.apply(this,arguments)};function __rest(e,t){var r={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(null!=e&&\"function\"===typeof Object.getOwnPropertySymbols){var o=0;for(n=Object.getOwnPropertySymbols(e);o<n.length;o++)t.indexOf(n[o])<0&&Object.prototype.propertyIsEnumerable.call(e,n[o])&&(r[n[o]]=e[n[o]])}return r}function __decorate(e,t,r,n){var o,a=arguments.length,i=a<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,r):n;if(\"object\"===typeof Reflect&&\"function\"===typeof Reflect.decorate)i=Reflect.decorate(e,t,r,n);else for(var c=e.length-1;c>=0;c--)(o=e[c])&&(i=(a<3?o(i):a>3?o(t,r,i):o(t,r))||i);return a>3&&i&&Object.defineProperty(t,r,i),i}function __param(e,t){return function(r,n){t(r,n,e)}}function __metadata(e,t){if(\"object\"===typeof Reflect&&\"function\"===typeof Reflect.metadata)return Reflect.metadata(e,t)}function __awaiter(e,t,r,n){function adopt(e){return e instanceof r?e:new r((function(t){t(e)}))}return new(r||(r=Promise))((function(r,o){function fulfilled(e){try{step(n.next(e))}catch(e){o(e)}}function rejected(e){try{step(n.throw(e))}catch(e){o(e)}}function step(e){e.done?r(e.value):adopt(e.value).then(fulfilled,rejected)}step((n=n.apply(e,t||[])).next())}))}function __generator(e,t){var r,n,o,a,i={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return a={next:verb(0),throw:verb(1),return:verb(2)},\"function\"===typeof Symbol&&(a[Symbol.iterator]=function(){return this}),a;function verb(e){return function(t){return step([e,t])}}function step(a){if(r)throw new TypeError(\"Generator is already executing.\");while(i)try{if(r=1,n&&(o=2&a[0]?n.return:a[0]?n.throw||((o=n.return)&&o.call(n),0):n.next)&&!(o=o.call(n,a[1])).done)return o;(n=0,o)&&(a=[2&a[0],o.value]);switch(a[0]){case 0:case 1:o=a;break;case 4:i.label++;return{value:a[1],done:false};case 5:i.label++;n=a[1];a=[0];continue;case 7:a=i.ops.pop();i.trys.pop();continue;default:if(!(o=i.trys,o=o.length>0&&o[o.length-1])&&(6===a[0]||2===a[0])){i=0;continue}if(3===a[0]&&(!o||a[1]>o[0]&&a[1]<o[3])){i.label=a[1];break}if(6===a[0]&&i.label<o[1]){i.label=o[1];o=a;break}if(o&&i.label<o[2]){i.label=o[2];i.ops.push(a);break}o[2]&&i.ops.pop();i.trys.pop();continue}a=t.call(e,i)}catch(e){a=[6,e];n=0}finally{r=o=0}if(5&a[0])throw a[1];return{value:a[0]?a[1]:void 0,done:true}}}var e=Object.create?function(e,t,r,n){void 0===n&&(n=r);var o=Object.getOwnPropertyDescriptor(t,r);o&&!(\"get\"in o?!t.__esModule:o.writable||o.configurable)||(o={enumerable:true,get:function(){return t[r]}});Object.defineProperty(e,n,o)}:function(e,t,r,n){void 0===n&&(n=r);e[n]=t[r]};function __exportStar(t,r){for(var n in t)\"default\"===n||Object.prototype.hasOwnProperty.call(r,n)||e(r,t,n)}function __values(e){var t=\"function\"===typeof Symbol&&Symbol.iterator,r=t&&e[t],n=0;if(r)return r.call(e);if(e&&\"number\"===typeof e.length)return{next:function(){e&&n>=e.length&&(e=void 0);return{value:e&&e[n++],done:!e}}};throw new TypeError(t?\"Object is not iterable.\":\"Symbol.iterator is not defined.\")}function __read(e,t){var r=\"function\"===typeof Symbol&&e[Symbol.iterator];if(!r)return e;var n,o,a=r.call(e),i=[];try{while((void 0===t||t-- >0)&&!(n=a.next()).done)i.push(n.value)}catch(e){o={error:e}}finally{try{n&&!n.done&&(r=a.return)&&r.call(a)}finally{if(o)throw o.error}}return i}\n/** @deprecated */function __spread(){for(var e=[],t=0;t<arguments.length;t++)e=e.concat(__read(arguments[t]));return e}\n/** @deprecated */function __spreadArrays(){for(var e=0,t=0,r=arguments.length;t<r;t++)e+=arguments[t].length;var n=Array(e),o=0;for(t=0;t<r;t++)for(var a=arguments[t],i=0,c=a.length;i<c;i++,o++)n[o]=a[i];return n}function __spreadArray(e,t,r){if(r||2===arguments.length)for(var n,o=0,a=t.length;o<a;o++)if(n||!(o in t)){n||(n=Array.prototype.slice.call(t,0,o));n[o]=t[o]}return e.concat(n||Array.prototype.slice.call(t))}function __await(e){return this instanceof __await?(this.v=e,this):new __await(e)}function __asyncGenerator(e,t,r){if(!Symbol.asyncIterator)throw new TypeError(\"Symbol.asyncIterator is not defined.\");var n,o=r.apply(e,t||[]),a=[];return n={},verb(\"next\"),verb(\"throw\"),verb(\"return\"),n[Symbol.asyncIterator]=function(){return this},n;function verb(e){o[e]&&(n[e]=function(t){return new Promise((function(r,n){a.push([e,t,r,n])>1||resume(e,t)}))})}function resume(e,t){try{step(o[e](t))}catch(e){settle(a[0][3],e)}}function step(e){e.value instanceof __await?Promise.resolve(e.value.v).then(fulfill,reject):settle(a[0][2],e)}function fulfill(e){resume(\"next\",e)}function reject(e){resume(\"throw\",e)}function settle(e,t){(e(t),a.shift(),a.length)&&resume(a[0][0],a[0][1])}}function __asyncDelegator(e){var t,r;return t={},verb(\"next\"),verb(\"throw\",(function(e){throw e})),verb(\"return\"),t[Symbol.iterator]=function(){return this},t;function verb(n,o){t[n]=e[n]?function(t){return(r=!r)?{value:__await(e[n](t)),done:\"return\"===n}:o?o(t):t}:o}}function __asyncValues(e){if(!Symbol.asyncIterator)throw new TypeError(\"Symbol.asyncIterator is not defined.\");var t,r=e[Symbol.asyncIterator];return r?r.call(e):(e=\"function\"===typeof __values?__values(e):e[Symbol.iterator](),t={},verb(\"next\"),verb(\"throw\"),verb(\"return\"),t[Symbol.asyncIterator]=function(){return this},t);function verb(r){t[r]=e[r]&&function(t){return new Promise((function(n,o){t=e[r](t),settle(n,o,t.done,t.value)}))}}function settle(e,t,r,n){Promise.resolve(n).then((function(t){e({value:t,done:r})}),t)}}function __makeTemplateObject(e,t){Object.defineProperty?Object.defineProperty(e,\"raw\",{value:t}):e.raw=t;return e}var t=Object.create?function(e,t){Object.defineProperty(e,\"default\",{enumerable:true,value:t})}:function(e,t){e.default=t};function __importStar(r){if(r&&r.__esModule)return r;var n={};if(null!=r)for(var o in r)\"default\"!==o&&Object.prototype.hasOwnProperty.call(r,o)&&e(n,r,o);t(n,r);return n}function __importDefault(e){return e&&e.__esModule?e:{default:e}}function __classPrivateFieldGet(e,t,r,n){if(\"a\"===r&&!n)throw new TypeError(\"Private accessor was defined without a getter\");if(\"function\"===typeof t?e!==t||!n:!t.has(e))throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");return\"m\"===r?n:\"a\"===r?n.call(e):n?n.value:t.get(e)}function __classPrivateFieldSet(e,t,r,n,o){if(\"m\"===n)throw new TypeError(\"Private method is not writable\");if(\"a\"===n&&!o)throw new TypeError(\"Private accessor was defined without a setter\");if(\"function\"===typeof t?e!==t||!o:!t.has(e))throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");return\"a\"===n?o.call(e,r):o?o.value=r:t.set(e,r),r}function __classPrivateFieldIn(e,t){if(null===t||\"object\"!==typeof t&&\"function\"!==typeof t)throw new TypeError(\"Cannot use 'in' operator on non-object\");return\"function\"===typeof e?t===e:e.has(t)}export{__assign,__asyncDelegator,__asyncGenerator,__asyncValues,__await,__awaiter,__classPrivateFieldGet,__classPrivateFieldIn,__classPrivateFieldSet,e as __createBinding,__decorate,__exportStar,__extends,__generator,__importDefault,__importStar,__makeTemplateObject,__metadata,__param,__read,__rest,__spread,__spreadArray,__spreadArrays,__values};\n\n//# sourceMappingURL=tslib.es6.js.map","var n={};Object.defineProperty(n,\"__esModule\",{value:true});n.warning=function(){};n.invariant=function(){};const e=n.__esModule,t=n.warning,r=n.invariant;export default n;export{e as __esModule,r as invariant,t as warning};\n\n//# sourceMappingURL=index.js.map","import{velocityPerSecond as e,time as t}from\"@motionone/utils\";const s=5;function calcGeneratorVelocity(t,n,r){const a=Math.max(n-s,0);return e(r-t(a),n-a)}const n={stiffness:100,damping:10,mass:1};const calcDampingRatio=(e=n.stiffness,t=n.damping,s=n.mass)=>t/(2*Math.sqrt(e*s));function hasReachedTarget(e,t,s){return e<t&&s>=t||e>t&&s<=t}const spring=({stiffness:e=n.stiffness,damping:s=n.damping,mass:r=n.mass,from:a=0,to:o=1,velocity:c=0,restSpeed:i=2,restDistance:h=.5}={})=>{c=c?t.s(c):0;const u={done:false,hasReachedTarget:false,current:a,target:o};const d=o-a;const f=Math.sqrt(e/r)/1e3;const l=calcDampingRatio(e,s,r);let g;if(l<1){const e=f*Math.sqrt(1-l*l);g=t=>o-Math.exp(-l*f*t)*((l*f*d-c)/e*Math.sin(e*t)+d*Math.cos(e*t))}else g=e=>o-Math.exp(-f*e)*(d+(f*d-c)*e);return e=>{u.current=g(e);const t=0===e?c:calcGeneratorVelocity(g,e,u.current);const s=Math.abs(t)<=i;const n=Math.abs(o-u.current)<=h;u.done=s&&n;u.hasReachedTarget=hasReachedTarget(a,o,u.current);return u}};const glide=({from:e=0,velocity:s=0,power:n=.8,decay:r=.325,bounceDamping:a,bounceStiffness:o,changeTarget:c,min:i,max:h,restDistance:u=.5,restSpeed:d})=>{r=t.ms(r);const f={hasReachedTarget:false,done:false,current:e,target:e};const isOutOfBounds=e=>void 0!==i&&e<i||void 0!==h&&e>h;const nearestBoundary=e=>void 0===i?h:void 0===h||Math.abs(i-e)<Math.abs(h-e)?i:h;let l=n*s;const g=e+l;const m=void 0===c?g:c(g);f.target=m;m!==g&&(l=m-e);const calcDelta=e=>-l*Math.exp(-e/r);const calcLatest=e=>m+calcDelta(e);const applyFriction=e=>{const t=calcDelta(e);const s=calcLatest(e);f.done=Math.abs(t)<=u;f.current=f.done?m:s};let p;let M;const checkCatchBoundary=e=>{if(isOutOfBounds(f.current)){p=e;M=spring({from:f.current,to:nearestBoundary(f.current),velocity:calcGeneratorVelocity(calcLatest,e,f.current),damping:a,stiffness:o,restDistance:u,restSpeed:d})}};checkCatchBoundary(0);return e=>{let t=false;if(!M&&void 0===p){t=true;applyFriction(e);checkCatchBoundary(e)}if(void 0!==p&&e>p){f.hasReachedTarget=true;return M(e-p)}f.hasReachedTarget=false;!t&&applyFriction(e);return f}};const r=10;const a=1e4;function pregenerateKeyframes(e){let t;let s=r;let n=e(0);const o=[n.current];while(!n.done&&s<a){n=e(s);o.push(n.done?n.target:n.current);void 0===t&&n.hasReachedTarget&&(t=s);s+=r}const c=s-r;1===o.length&&o.push(n.current);return{keyframes:o,duration:c/1e3,overshootDuration:(null!==t&&void 0!==t?t:c)/1e3}}export{calcGeneratorVelocity,glide,pregenerateKeyframes,spring};\n\n//# sourceMappingURL=index.es.js.map","import{MotionValue as e}from\"@motionone/types\";import{noopReturn as t,addUniqueItem as n,isCubicBezier as o,defaults as i,isEasingGenerator as s,isNumber as r,time as a,isEasingList as c,noop as l,removeItem as f,mix as u,getEasingForSegment as d,isString as g,defaultOffset as m,fillOffset as h,progress as p,velocityPerSecond as v,interpolate as y}from\"@motionone/utils\";import{Animation as w,getEasingFunction as E}from\"@motionone/animation\";import{__rest as b}from\"tslib\";import{invariant as S}from\"hey-listen\";import{pregenerateKeyframes as A,calcGeneratorVelocity as O,spring as x,glide as V}from\"@motionone/generators\";const z=new WeakMap;function getAnimationData(e){z.has(e)||z.set(e,{transforms:[],values:new Map});return z.get(e)}function getMotionValue(t,n){t.has(n)||t.set(n,new e);return t.get(n)}const W=[\"\",\"X\",\"Y\",\"Z\"];const L=[\"translate\",\"scale\",\"rotate\",\"skew\"];const T={x:\"translateX\",y:\"translateY\",z:\"translateZ\"};const D={syntax:\"<angle>\",initialValue:\"0deg\",toDefaultUnit:e=>e+\"deg\"};const M={translate:{syntax:\"<length-percentage>\",initialValue:\"0px\",toDefaultUnit:e=>e+\"px\"},rotate:D,scale:{syntax:\"<number>\",initialValue:1,toDefaultUnit:t},skew:D};const k=new Map;const asTransformCssVar=e=>`--motion-${e}`;const B=[\"x\",\"y\",\"z\"];L.forEach((e=>{W.forEach((t=>{B.push(e+t);k.set(asTransformCssVar(e+t),M[e])}))}));const compareTransformOrder=(e,t)=>B.indexOf(e)-B.indexOf(t);const j=new Set(B);const isTransform=e=>j.has(e);const addTransformToElement=(e,t)=>{T[t]&&(t=T[t]);const{transforms:o}=getAnimationData(e);n(o,t);e.style.transform=buildTransformTemplate(o)};const buildTransformTemplate=e=>e.sort(compareTransformOrder).reduce(transformListToString,\"\").trim();const transformListToString=(e,t)=>`${e} ${t}(var(${asTransformCssVar(t)}))`;const isCssVar=e=>e.startsWith(\"--\");const P=new Set;function registerCssVariable(e){if(!P.has(e)){P.add(e);try{const{syntax:t,initialValue:n}=k.has(e)?k.get(e):{};CSS.registerProperty({name:e,inherits:false,syntax:t,initialValue:n})}catch(e){}}}const convertEasing=e=>o(e)?cubicBezierAsString(e):e;const cubicBezierAsString=([e,t,n,o])=>`cubic-bezier(${e}, ${t}, ${n}, ${o})`;const testAnimation=e=>document.createElement(\"div\").animate(e,{duration:.001});const C={cssRegisterProperty:()=>\"undefined\"!==typeof CSS&&Object.hasOwnProperty.call(CSS,\"registerProperty\"),waapi:()=>Object.hasOwnProperty.call(Element.prototype,\"animate\"),partialKeyframes:()=>{try{testAnimation({opacity:[1]})}catch(e){return false}return true},finished:()=>Boolean(testAnimation({opacity:[0,1]}).finished)};const $={};const R={};for(const e in C)R[e]=()=>{void 0===$[e]&&($[e]=C[e]());return $[e]};function hydrateKeyframes(e,t){for(let n=0;n<e.length;n++)null===e[n]&&(e[n]=n?e[n-1]:t());return e}const keyframesList=e=>Array.isArray(e)?e:[e];function getStyleName(e){T[e]&&(e=T[e]);return isTransform(e)?asTransformCssVar(e):e}const H={get:(e,t)=>{t=getStyleName(t);let n=isCssVar(t)?e.style.getPropertyValue(t):getComputedStyle(e)[t];if(!n&&0!==n){const e=k.get(t);e&&(n=e.initialValue)}return n},set:(e,t,n)=>{t=getStyleName(t);isCssVar(t)?e.style.setProperty(t,n):e.style[t]=n}};function stopAnimation(e,t=true){if(e&&\"finished\"!==e.playState)try{if(e.stop)e.stop();else{t&&e.commitStyles();e.cancel()}}catch(e){}}function getDevToolsRecord(){return window.__MOTION_DEV_TOOLS_RECORD}function animateStyle(e,t,n,o={}){const f=getDevToolsRecord();const u=false!==o.record&&f;let d;let{duration:g=i.duration,delay:m=i.delay,endDelay:h=i.endDelay,repeat:p=i.repeat,easing:v=i.easing,direction:y,offset:E,allowWebkitAcceleration:b=false}=o;const S=getAnimationData(e);let A=R.waapi();const O=isTransform(t);O&&addTransformToElement(e,t);const x=getStyleName(t);const V=getMotionValue(S.values,x);const z=k.get(x);stopAnimation(V.animation,!(s(v)&&V.generator)&&false!==o.record);return()=>{const readInitialValue=()=>{var t,n;return null!==(n=null!==(t=H.get(e,x))&&void 0!==t?t:null===z||void 0===z?void 0:z.initialValue)&&void 0!==n?n:0};let i=hydrateKeyframes(keyframesList(n),readInitialValue);if(s(v)){const e=v.createAnimation(i,readInitialValue,O,x,V);v=e.easing;void 0!==e.keyframes&&(i=e.keyframes);void 0!==e.duration&&(g=e.duration)}isCssVar(x)&&(R.cssRegisterProperty()?registerCssVariable(x):A=false);if(A){z&&(i=i.map((e=>r(e)?z.toDefaultUnit(e):e)));1!==i.length||R.partialKeyframes()&&!u||i.unshift(readInitialValue());const t={delay:a.ms(m),duration:a.ms(g),endDelay:a.ms(h),easing:c(v)?void 0:convertEasing(v),direction:y,iterations:p+1,fill:\"both\"};d=e.animate({[x]:i,offset:E,easing:c(v)?v.map(convertEasing):void 0},t);d.finished||(d.finished=new Promise(((e,t)=>{d.onfinish=e;d.oncancel=t})));const n=i[i.length-1];d.finished.then((()=>{H.set(e,x,n);d.cancel()})).catch(l);b||(d.playbackRate=1.000001)}else if(O){i=i.map((e=>\"string\"===typeof e?parseFloat(e):e));1===i.length&&i.unshift(parseFloat(readInitialValue()));const render=t=>{z&&(t=z.toDefaultUnit(t));H.set(e,x,t)};d=new w(render,i,Object.assign(Object.assign({},o),{duration:g,easing:v}))}else{const t=i[i.length-1];H.set(e,x,z&&r(t)?z.toDefaultUnit(t):t)}u&&f(e,t,i,{duration:g,delay:m,easing:v,repeat:p,offset:E},\"motion-one\");V.setAnimation(d);return d}}const getOptions=(e,t)=>e[t]?Object.assign(Object.assign({},e),e[t]):Object.assign({},e);function resolveElements(e,t){var n;if(\"string\"===typeof e)if(t){null!==(n=t[e])&&void 0!==n?n:t[e]=document.querySelectorAll(e);e=t[e]}else e=document.querySelectorAll(e);else e instanceof Element&&(e=[e]);return Array.from(e||[])}const createAnimation=e=>e();const withControls=(e,t,n=i.duration)=>new Proxy({animations:e.map(createAnimation).filter(Boolean),duration:n,options:t},I);const getActiveAnimation=e=>e.animations[0];const I={get:(e,t)=>{const n=getActiveAnimation(e);switch(t){case\"duration\":return e.duration;case\"currentTime\":return a.s((null===n||void 0===n?void 0:n[t])||0);case\"playbackRate\":case\"playState\":return null===n||void 0===n?void 0:n[t];case\"finished\":e.finished||(e.finished=Promise.all(e.animations.map(selectFinished)).catch(l));return e.finished;case\"stop\":return()=>{e.animations.forEach((e=>stopAnimation(e)))};case\"forEachNative\":return t=>{e.animations.forEach((n=>t(n,e)))};default:return\"undefined\"===typeof(null===n||void 0===n?void 0:n[t])?void 0:()=>e.animations.forEach((e=>e[t]()))}},set:(e,t,n)=>{switch(t){case\"currentTime\":n=a.ms(n);case\"currentTime\":case\"playbackRate\":for(let o=0;o<e.animations.length;o++)e.animations[o][t]=n;return true}return false}};const selectFinished=e=>e.finished;function stagger(e=.1,{start:t=0,from:n=0,easing:o}={}){return(i,s)=>{const a=r(n)?n:getFromIndex(n,s);const c=Math.abs(a-i);let l=e*c;if(o){const t=s*e;const n=E(o);l=n(l/t)*t}return t+l}}function getFromIndex(e,t){if(\"first\"===e)return 0;{const n=t-1;return\"last\"===e?n:n/2}}function resolveOption(e,t,n){return\"function\"===typeof e?e(t,n):e}function animate(e,t,n={}){e=resolveElements(e);const o=e.length;const i=[];for(let s=0;s<o;s++){const r=e[s];for(const e in t){const a=getOptions(n,e);a.delay=resolveOption(a.delay,s,o);const c=animateStyle(r,e,t[e],a);i.push(c)}}return withControls(i,n,n.duration)}function calcNextTime(e,t,n,o){var i;return r(t)?t:t.startsWith(\"-\")||t.startsWith(\"+\")?Math.max(0,e+parseFloat(t)):\"<\"===t?n:null!==(i=o.get(t))&&void 0!==i?i:e}function eraseKeyframes(e,t,n){for(let o=0;o<e.length;o++){const i=e[o];if(i.at>t&&i.at<n){f(e,i);o--}}}function addKeyframes(e,t,n,o,i,s){eraseKeyframes(e,i,s);for(let r=0;r<t.length;r++)e.push({value:t[r],at:u(i,s,o[r]),easing:d(n,r)})}function compareByTime(e,t){return e.at===t.at?null===e.value?1:-1:e.at-t.at}function timeline(e,t={}){var n;const o=createAnimationsFromTimeline(e,t);const i=o.map((e=>animateStyle(...e))).filter(Boolean);return withControls(i,t,null===(n=o[0])||void 0===n?void 0:n[3].duration)}function createAnimationsFromTimeline(e,t={}){var{defaultOptions:n={}}=t,o=b(t,[\"defaultOptions\"]);const r=[];const a=new Map;const c={};const l=new Map;let f=0;let u=0;let d=0;for(let t=0;t<e.length;t++){const o=e[t];if(g(o)){l.set(o,u);continue}if(!Array.isArray(o)){l.set(o.name,calcNextTime(u,o.at,f,l));continue}const[r,p,v={}]=o;void 0!==v.at&&(u=calcNextTime(u,v.at,f,l));let y=0;const w=resolveElements(r,c);const E=w.length;for(let e=0;e<E;e++){const t=w[e];const o=getElementSequence(t,a);for(const t in p){const r=getValueSequence(t,o);let a=keyframesList(p[t]);const c=getOptions(v,t);let{duration:l=n.duration||i.duration,easing:f=n.easing||i.easing}=c;if(s(f)){const e=isTransform(t);S(2===a.length||!e,\"spring must be provided 2 keyframes within timeline\");const n=f.createAnimation(a,(()=>\"0\"),e);f=n.easing;void 0!==n.keyframes&&(a=n.keyframes);void 0!==n.duration&&(l=n.duration)}const g=resolveOption(v.delay,e,E)||0;const w=u+g;const b=w+l;let{offset:A=m(a.length)}=c;1===A.length&&0===A[0]&&(A[1]=1);const O=length-a.length;O>0&&h(A,O);1===a.length&&a.unshift(null);addKeyframes(r,a,f,A,w,b);y=Math.max(g+l,y);d=Math.max(b,d)}}f=u;u+=y}a.forEach(((e,t)=>{for(const s in e){const a=e[s];a.sort(compareByTime);const c=[];const l=[];const f=[];for(let e=0;e<a.length;e++){const{at:t,value:n,easing:o}=a[e];c.push(n);l.push(p(0,d,t));f.push(o||i.easing)}if(0!==l[0]){l.unshift(0);c.unshift(c[0]);f.unshift(\"linear\")}if(1!==l[l.length-1]){l.push(1);c.push(null)}r.push([t,s,c,Object.assign(Object.assign(Object.assign({},n),{duration:d,easing:f,offset:l}),o)])}}));return r}function getElementSequence(e,t){!t.has(e)&&t.set(e,{});return t.get(e)}function getValueSequence(e,t){t[e]||(t[e]=[]);return t[e]}function createGeneratorEasing(e){const t=new WeakMap;return(n={})=>{const o=new Map;const getGenerator=(t=0,i=100,s=0,r=false)=>{const a=`${t}-${i}-${s}-${r}`;o.has(a)||o.set(a,e(Object.assign({from:t,to:i,velocity:s,restSpeed:r?.05:2,restDistance:r?.01:.5},n)));return o.get(a)};const getKeyframes=e=>{t.has(e)||t.set(e,A(e));return t.get(e)};return{createAnimation:(e,t,n,o,i)=>{var s,r;let a;const c=e.length;let l=n&&c<=2&&e.every(isNumberOrNull);if(l){const n=e[c-1];const l=1===c?null:e[0];let f=0;let u=0;const d=null===i||void 0===i?void 0:i.generator;if(d){const{animation:t,generatorStartTime:n}=i;const o=(null===t||void 0===t?void 0:t.startTime)||n||0;const r=(null===t||void 0===t?void 0:t.currentTime)||performance.now()-o;const a=d(r).current;u=null!==(s=l)&&void 0!==s?s:a;(1===c||2===c&&null===e[0])&&(f=O((e=>d(e).current),r,a))}else u=null!==(r=l)&&void 0!==r?r:parseFloat(t());const g=getGenerator(u,n,f,null===o||void 0===o?void 0:o.includes(\"scale\"));const m=getKeyframes(g);a=Object.assign(Object.assign({},m),{easing:\"linear\"});if(i){i.generator=g;i.generatorStartTime=performance.now()}}else{const e=getKeyframes(getGenerator(0,100));a={easing:\"ease\",duration:e.overshootDuration}}return a}}}}const isNumberOrNull=e=>\"string\"!==typeof e;const N=createGeneratorEasing(x);const F=createGeneratorEasing(V);const U={any:0,all:1};function inView$1(e,t,{root:n,margin:o,amount:i=\"any\"}={}){if(\"undefined\"===typeof IntersectionObserver)return()=>{};const s=resolveElements(e);const r=new WeakMap;const onIntersectionChange=e=>{e.forEach((e=>{const n=r.get(e.target);if(e.isIntersecting!==Boolean(n))if(e.isIntersecting){const n=t(e);\"function\"===typeof n?r.set(e.target,n):a.unobserve(e.target)}else if(n){n(e);r.delete(e.target)}}))};const a=new IntersectionObserver(onIntersectionChange,{root:n,rootMargin:o,threshold:\"number\"===typeof i?i:U[i]});s.forEach((e=>a.observe(e)));return()=>a.disconnect()}const q=new WeakMap;let K;function getElementSize(e,t){if(t){const{inlineSize:e,blockSize:n}=t[0];return{width:e,height:n}}return e instanceof SVGElement&&\"getBBox\"in e?e.getBBox():{width:e.offsetWidth,height:e.offsetHeight}}function notifyTarget({target:e,contentRect:t,borderBoxSize:n}){var o;null===(o=q.get(e))||void 0===o?void 0:o.forEach((o=>{o({target:e,contentSize:t,get size(){return getElementSize(e,n)}})}))}function notifyAll(e){e.forEach(notifyTarget)}function createResizeObserver(){\"undefined\"!==typeof ResizeObserver&&(K=new ResizeObserver(notifyAll))}function resizeElement(e,t){K||createResizeObserver();const n=resolveElements(e);n.forEach((e=>{let n=q.get(e);if(!n){n=new Set;q.set(e,n)}n.add(t);null===K||void 0===K?void 0:K.observe(e)}));return()=>{n.forEach((e=>{const n=q.get(e);null===n||void 0===n?void 0:n.delete(t);(null===n||void 0===n?void 0:n.size)||(null===K||void 0===K?void 0:K.unobserve(e))}))}}const G=new Set;let _;function createWindowResizeHandler(){_=()=>{const e={width:window.innerWidth,height:window.innerHeight};const t={target:window,size:e,contentSize:e};G.forEach((e=>e(t)))};window.addEventListener(\"resize\",_)}function resizeWindow(e){G.add(e);_||createWindowResizeHandler();return()=>{G.delete(e);!G.size&&_&&(_=void 0)}}function resize(e,t){return\"function\"===typeof e?resizeWindow(e):resizeElement(e,t)}const Z=50;const createAxisInfo=()=>({current:0,offset:[],progress:0,scrollLength:0,targetOffset:0,targetLength:0,containerLength:0,velocity:0});const createScrollInfo=()=>({time:0,x:createAxisInfo(),y:createAxisInfo()});const X={x:{length:\"Width\",position:\"Left\"},y:{length:\"Height\",position:\"Top\"}};function updateAxisInfo(e,t,n,o){const i=n[t];const{length:s,position:r}=X[t];const a=i.current;const c=n.time;i.current=e[\"scroll\"+r];i.scrollLength=e[\"scroll\"+s]-e[\"client\"+s];i.offset.length=0;i.offset[0]=0;i.offset[1]=i.scrollLength;i.progress=p(0,i.scrollLength,i.current);const l=o-c;i.velocity=l>Z?0:v(i.current-a,l)}function updateScrollInfo(e,t,n){updateAxisInfo(e,\"x\",t,n);updateAxisInfo(e,\"y\",t,n);t.time=n}function calcInset(e,t){let n={x:0,y:0};let o=e;while(o&&o!==t)if(o instanceof HTMLElement){n.x+=o.offsetLeft;n.y+=o.offsetTop;o=o.offsetParent}else if(o instanceof SVGGraphicsElement&&\"getBBox\"in o){const{top:e,left:t}=o.getBBox();n.x+=t;n.y+=e;while(o&&\"svg\"!==o.tagName)o=o.parentNode}return n}const Y={Enter:[[0,1],[1,1]],Exit:[[0,0],[1,0]],Any:[[1,0],[0,1]],All:[[0,0],[1,1]]};const J={start:0,center:.5,end:1};function resolveEdge(e,t,n=0){let o=0;void 0!==J[e]&&(e=J[e]);if(g(e)){const t=parseFloat(e);e.endsWith(\"px\")?o=t:e.endsWith(\"%\")?e=t/100:e.endsWith(\"vw\")?o=t/100*document.documentElement.clientWidth:e.endsWith(\"vh\")?o=t/100*document.documentElement.clientHeight:e=t}r(e)&&(o=t*e);return n+o}const Q=[0,0];function resolveOffset(e,t,n,o){let i=Array.isArray(e)?e:Q;let s=0;let a=0;if(r(e))i=[e,e];else if(g(e)){e=e.trim();i=e.includes(\" \")?e.split(\" \"):[e,J[e]?e:\"0\"]}s=resolveEdge(i[0],n,o);a=resolveEdge(i[1],t);return s-a}const ee={x:0,y:0};function resolveOffsets(e,t,n){let{offset:o=Y.All}=n;const{target:i=e,axis:s=\"y\"}=n;const r=\"y\"===s?\"height\":\"width\";const a=i!==e?calcInset(i,e):ee;const c=i===e?{width:e.scrollWidth,height:e.scrollHeight}:{width:i.clientWidth,height:i.clientHeight};const l={width:e.clientWidth,height:e.clientHeight};t[s].offset.length=0;let f=!t[s].interpolate;const u=o.length;for(let e=0;e<u;e++){const n=resolveOffset(o[e],l[r],c[r],a[s]);f||n===t[s].interpolatorOffsets[e]||(f=true);t[s].offset[e]=n}if(f){t[s].interpolate=y(m(u),t[s].offset);t[s].interpolatorOffsets=[...t[s].offset]}t[s].progress=t[s].interpolate(t[s].current)}function measure(e,t=e,n){n.x.targetOffset=0;n.y.targetOffset=0;if(t!==e){let o=t;while(o&&o!=e){n.x.targetOffset+=o.offsetLeft;n.y.targetOffset+=o.offsetTop;o=o.offsetParent}}n.x.targetLength=t===e?t.scrollWidth:t.clientWidth;n.y.targetLength=t===e?t.scrollHeight:t.clientHeight;n.x.containerLength=e.clientWidth;n.y.containerLength=e.clientHeight}function createOnScrollHandler(e,t,n,o={}){const i=o.axis||\"y\";return{measure:()=>measure(e,o.target,n),update:t=>{updateScrollInfo(e,n,t);(o.offset||o.target)&&resolveOffsets(e,n,o)},notify:\"function\"===typeof t?()=>t(n):scrubAnimation(t,n[i])}}function scrubAnimation(e,n){e.pause();e.forEachNative(((e,{easing:n})=>{var o,i;if(e.updateDuration){n||(e.easing=t);e.updateDuration(1)}else{const t={duration:1e3};n||(t.easing=\"linear\");null===(i=null===(o=e.effect)||void 0===o?void 0:o.updateTiming)||void 0===i?void 0:i.call(o,t)}}));return()=>{e.currentTime=n.progress}}const te=new WeakMap;const ne=new WeakMap;const oe=new WeakMap;const getEventTarget=e=>e===document.documentElement?window:e;function scroll(e,t={}){var{container:n=document.documentElement}=t,o=b(t,[\"container\"]);let i=oe.get(n);if(!i){i=new Set;oe.set(n,i)}const s=createScrollInfo();const r=createOnScrollHandler(n,e,s,o);i.add(r);if(!te.has(n)){const listener=()=>{const e=performance.now();for(const e of i)e.measure();for(const t of i)t.update(e);for(const e of i)e.notify()};te.set(n,listener);const e=getEventTarget(n);window.addEventListener(\"resize\",listener,{passive:true});n!==document.documentElement&&ne.set(n,resize(n,listener));e.addEventListener(\"scroll\",listener,{passive:true})}const a=te.get(n);const c=requestAnimationFrame(a);return()=>{var t;\"function\"!==typeof e&&e.stop();cancelAnimationFrame(c);const o=oe.get(n);if(!o)return;o.delete(r);if(o.size)return;const i=te.get(n);te.delete(n);if(i){getEventTarget(n).removeEventListener(\"scroll\",i);null===(t=ne.get(n))||void 0===t?void 0:t();window.removeEventListener(\"resize\",i)}}}function hasChanged(e,t){return typeof e!==typeof t||(Array.isArray(e)&&Array.isArray(t)?!shallowCompare(e,t):e!==t)}function shallowCompare(e,t){const n=t.length;if(n!==e.length)return false;for(let o=0;o<n;o++)if(t[o]!==e[o])return false;return true}function isVariant(e){return\"object\"===typeof e}function resolveVariant(e,t){return isVariant(e)?e:e&&t?t[e]:void 0}let ie;function processScheduledAnimations(){if(!ie)return;const e=ie.sort(compareByDepth).map(fireAnimateUpdates);e.forEach(fireNext);e.forEach(fireNext);ie=void 0}function scheduleAnimation(e){if(ie)n(ie,e);else{ie=[e];requestAnimationFrame(processScheduledAnimations)}}function unscheduleAnimation(e){ie&&f(ie,e)}const compareByDepth=(e,t)=>e.getDepth()-t.getDepth();const fireAnimateUpdates=e=>e.animateUpdates();const fireNext=e=>e.next();const motionEvent=(e,t)=>new CustomEvent(e,{detail:{target:t}});function dispatchPointerEvent(e,t,n){e.dispatchEvent(new CustomEvent(t,{detail:{originalEvent:n}}))}function dispatchViewEvent(e,t,n){e.dispatchEvent(new CustomEvent(t,{detail:{originalEntry:n}}))}const se={isActive:e=>Boolean(e.inView),subscribe:(e,{enable:t,disable:n},{inViewOptions:o={}})=>{const{once:i}=o,s=b(o,[\"once\"]);return inView$1(e,(o=>{t();dispatchViewEvent(e,\"viewenter\",o);if(!i)return t=>{n();dispatchViewEvent(e,\"viewleave\",t)}}),s)}};const mouseEvent=(e,t,n)=>o=>{if(!o.pointerType||\"mouse\"===o.pointerType){n();dispatchPointerEvent(e,t,o)}};const re={isActive:e=>Boolean(e.hover),subscribe:(e,{enable:t,disable:n})=>{const o=mouseEvent(e,\"hoverstart\",t);const i=mouseEvent(e,\"hoverend\",n);e.addEventListener(\"pointerenter\",o);e.addEventListener(\"pointerleave\",i);return()=>{e.removeEventListener(\"pointerenter\",o);e.removeEventListener(\"pointerleave\",i)}}};const ae={isActive:e=>Boolean(e.press),subscribe:(e,{enable:t,disable:n})=>{const onPointerUp=t=>{n();dispatchPointerEvent(e,\"pressend\",t);window.removeEventListener(\"pointerup\",onPointerUp)};const onPointerDown=n=>{t();dispatchPointerEvent(e,\"pressstart\",n);window.addEventListener(\"pointerup\",onPointerUp)};e.addEventListener(\"pointerdown\",onPointerDown);return()=>{e.removeEventListener(\"pointerdown\",onPointerDown);window.removeEventListener(\"pointerup\",onPointerUp)}}};const ce={inView:se,hover:re,press:ae};const le=[\"initial\",\"animate\",...Object.keys(ce),\"exit\"];const fe=new WeakMap;function createMotionState(e={},t){let n;let o=t?t.getDepth()+1:0;const i={initial:true,animate:true};const s={};const r={};for(const n of le)r[n]=\"string\"===typeof e[n]?e[n]:null===t||void 0===t?void 0:t.getContext()[n];const a=false===e.initial?\"animate\":\"initial\";let c=resolveVariant(e[a]||r[a],e.variants)||{},f=b(c,[\"transition\"]);const u=Object.assign({},f);function*animateUpdates(){var t,o;const s=f;f={};const r={};for(const n of le){if(!i[n])continue;const s=resolveVariant(e[n]);if(s)for(const n in s)if(\"transition\"!==n){f[n]=s[n];r[n]=getOptions(null!==(o=null!==(t=s.transition)&&void 0!==t?t:e.transition)&&void 0!==o?o:{},n)}}const a=new Set([...Object.keys(f),...Object.keys(s)]);const c=[];a.forEach((e=>{var t;void 0===f[e]&&(f[e]=u[e]);if(hasChanged(s[e],f[e])){null!==(t=u[e])&&void 0!==t?t:u[e]=H.get(n,e);c.push(animateStyle(n,e,f[e],r[e]))}}));yield;const d=c.map((e=>e())).filter(Boolean);if(!d.length)return;const g=f;n.dispatchEvent(motionEvent(\"motionstart\",g));Promise.all(d.map((e=>e.finished))).then((()=>{n.dispatchEvent(motionEvent(\"motioncomplete\",g))})).catch(l)}const setGesture=(e,t)=>()=>{i[e]=t;scheduleAnimation(d)};const updateGestureSubscriptions=()=>{for(const t in ce){const o=ce[t].isActive(e);const i=s[t];if(o&&!i)s[t]=ce[t].subscribe(n,{enable:setGesture(t,true),disable:setGesture(t,false)},e);else if(!o&&i){i();delete s[t]}}};const d={update:t=>{if(n){e=t;updateGestureSubscriptions();scheduleAnimation(d)}},setActive:(e,t)=>{if(n){i[e]=t;scheduleAnimation(d)}},animateUpdates:animateUpdates,getDepth:()=>o,getTarget:()=>f,getOptions:()=>e,getContext:()=>r,mount:e=>{S(Boolean(e),\"Animation state must be mounted with valid Element\");n=e;fe.set(n,d);updateGestureSubscriptions();return()=>{fe.delete(n);unscheduleAnimation(d);for(const e in s)s[e]()}},isMounted:()=>Boolean(n)};return d}function createStyles(e){const t={};const n=[];for(let o in e){const i=e[o];if(isTransform(o)){T[o]&&(o=T[o]);n.push(o);o=asTransformCssVar(o)}let s=Array.isArray(i)?i[0]:i;const a=k.get(o);a&&(s=r(i)?a.toDefaultUnit(i):i);t[o]=s}n.length&&(t.transform=buildTransformTemplate(n));return t}const camelLetterToPipeLetter=e=>`-${e.toLowerCase()}`;const camelToPipeCase=e=>e.replace(/[A-Z]/g,camelLetterToPipeLetter);function createStyleString(e={}){const t=createStyles(e);let n=\"\";for(const e in t){n+=e.startsWith(\"--\")?e:camelToPipeCase(e);n+=`: ${t[e]}; `}return n}export{Y as ScrollOffset,animate,animateStyle,createMotionState,createStyleString,createStyles,getAnimationData,getStyleName,F as glide,inView$1 as inView,fe as mountedStates,resize,scroll,N as spring,stagger,H as style,timeline,withControls};\n\n//# sourceMappingURL=index.es.js.map","import{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{Children,useEffect,useState,useRef,useMemo,createRef,useCallback,cloneElement}from\"react\";import{addPropertyControls,ControlType,RenderTarget}from\"framer\";import{useAnimationFrame,useReducedMotion,LayoutGroup,useInView,useMotionValue,useTransform,motion,wrap,frame}from\"framer-motion\";import{resize}from\"@motionone/dom\";const MAX_DUPLICATED_ITEMS=100;const directionTransformers={left:offset=>`translateX(-${offset}px)`,right:offset=>`translateX(${offset}px)`,top:offset=>`translateY(-${offset}px)`,bottom:offset=>`translateY(${offset}px)`};const supportsAcceleratedAnimations=typeof Animation!==\"undefined\"&&typeof Animation.prototype.updatePlaybackRate===\"function\";/**\n *\n * @framerIntrinsicWidth 400\n * @framerIntrinsicHeight 200\n *\n * @framerDisableUnlink\n *\n * @framerSupportedLayoutWidth fixed\n * @framerSupportedLayoutHeight fixed\n */export default function Ticker(props){/* Props */let{slots,gap,padding,paddingPerSide,paddingTop,paddingRight,paddingBottom,paddingLeft,speed,hoverFactor,direction,alignment,sizingOptions,fadeOptions,style}=props;const{fadeContent,overflow,fadeWidth,fadeInset,fadeAlpha}=fadeOptions;const{widthType,heightType}=sizingOptions;const paddingValue=paddingPerSide?`${paddingTop}px ${paddingRight}px ${paddingBottom}px ${paddingLeft}px`:`${padding}px`;/* Checks */const isCanvas=RenderTarget.current()===RenderTarget.canvas;// Remove empty slots (such as hidden layers)\nconst filteredSlots=slots.filter(Boolean);const numChildren=Children.count(filteredSlots);const hasChildren=numChildren>0;if(direction===true){direction=\"left\";}const isHorizontal=direction===\"left\"||direction===\"right\";const offset=useMotionValue(0);const transformer=directionTransformers[direction];const transform=useTransform(offset,transformer);/* Refs and State */const parentRef=useRef(null);const childrenRef=useMemo(()=>{return[/*#__PURE__*/createRef(),/*#__PURE__*/createRef()];},[]);const[size,setSize]=useState({parent:null,children:null});/* Arrays */let clonedChildren=[];let dupedChildren=[];/* Duplicate value */let duplicateBy=0;let opacity=0;if(isCanvas){duplicateBy=numChildren?Math.floor(10/numChildren):0;opacity=1;}if(!isCanvas&&hasChildren&&size.parent){duplicateBy=Math.round(size.parent/size.children*2)+1;duplicateBy=Math.min(duplicateBy,MAX_DUPLICATED_ITEMS);opacity=1;}/* Measure parent and child */const measure=useCallback(()=>{if(hasChildren&&parentRef.current){const parentLength=isHorizontal?parentRef.current.offsetWidth:parentRef.current.offsetHeight;const start=childrenRef[0].current?isHorizontal?childrenRef[0].current.offsetLeft:childrenRef[0].current.offsetTop:0;const end=childrenRef[1].current?isHorizontal?childrenRef[1].current.offsetLeft+childrenRef[1].current.offsetWidth:childrenRef[1].current.offsetTop+childrenRef[1].current.offsetHeight:0;const childrenLength=end-start+gap;setSize({parent:parentLength,children:childrenLength});}},[]);const childrenStyles=isCanvas?{contentVisibility:\"auto\"}:{};/* Add refs to first and last child */if(hasChildren){// TODO: These conditional hooks will be unsafe if hasChildren ever changes outside the canvas.\nif(!isCanvas){/**\n             * Track whether this is the initial resize event. By default this will fire on mount,\n             * which we do in the useEffect. We should only fire it on subsequent resizes.\n             */let initialResize=useRef(true);useEffect(()=>{frame.read(measure);return resize(parentRef.current,({contentSize})=>{if(!initialResize.current&&(contentSize.width||contentSize.height)){frame.read(measure);}initialResize.current=false;});},[]);}clonedChildren=Children.map(filteredSlots,(child,index)=>{var _child_props,_child_props1,_child_props2,_child_props3;let ref;if(index===0){ref=childrenRef[0];}if(index===filteredSlots.length-1){ref=childrenRef[1];}const size={width:widthType?(_child_props=child.props)===null||_child_props===void 0?void 0:_child_props.width:\"100%\",height:heightType?(_child_props1=child.props)===null||_child_props1===void 0?void 0:_child_props1.height:\"100%\"};return /*#__PURE__*/_jsx(LayoutGroup,{inherit:\"id\",children:/*#__PURE__*/_jsx(\"li\",{ref:ref,style:size,children:/*#__PURE__*/cloneElement(child,{style:{...(_child_props2=child.props)===null||_child_props2===void 0?void 0:_child_props2.style,...size,flexShrink:0,...childrenStyles},layoutId:child.props.layoutId?child.props.layoutId+\"-original-\"+index:undefined},(_child_props3=child.props)===null||_child_props3===void 0?void 0:_child_props3.children)})});});}if(!isCanvas){for(let i=0;i<duplicateBy;i++){dupedChildren=[...dupedChildren,...Children.map(filteredSlots,(child,childIndex)=>{var _child_props,_child_props1,_child_props2,_child_props3,_child_props4,_child_props5;const size={width:widthType?(_child_props=child.props)===null||_child_props===void 0?void 0:_child_props.width:\"100%\",height:heightType?(_child_props1=child.props)===null||_child_props1===void 0?void 0:_child_props1.height:\"100%\",willChange:\"transform\"};return /*#__PURE__*/_jsx(LayoutGroup,{inherit:\"id\",children:/*#__PURE__*/_jsx(\"li\",{style:size,\"aria-hidden\":true,children:/*#__PURE__*/cloneElement(child,{key:i+\" \"+childIndex,style:{...(_child_props2=child.props)===null||_child_props2===void 0?void 0:_child_props2.style,width:widthType?(_child_props3=child.props)===null||_child_props3===void 0?void 0:_child_props3.width:\"100%\",height:heightType?(_child_props4=child.props)===null||_child_props4===void 0?void 0:_child_props4.height:\"100%\",flexShrink:0,...childrenStyles},layoutId:child.props.layoutId?child.props.layoutId+\"-dupe-\"+i:undefined},(_child_props5=child.props)===null||_child_props5===void 0?void 0:_child_props5.children)},i+\"li\"+childIndex)},i+\"lg\"+childIndex);})];}}const animateToValue=size.children+size.children*Math.round(size.parent/size.children);const initialTime=useRef(null);const prevTime=useRef(null);const xOrY=useRef(0);const isHover=useRef(false);const isReducedMotion=useReducedMotion();const listRef=useRef(null);const animationRef=useRef(null);/**\n     * Setup animations\n     */if(!isCanvas){const isInView=useInView(parentRef);/**\n         * If this is an animation we can hardware accelerate, animate with WAAPI\n         */if(supportsAcceleratedAnimations){useEffect(()=>{if(isReducedMotion||!animateToValue||!speed){return;}animationRef.current=listRef.current.animate({transform:[transformer(0),transformer(animateToValue)]},{duration:Math.abs(animateToValue)/speed*1e3,iterations:Infinity,easing:\"linear\"});return()=>animationRef.current.cancel();},[hoverFactor,animateToValue,speed]);// Pause the animation when it's out of view\nuseEffect(()=>{if(!animationRef.current)return;if(isInView&&animationRef.current.playState===\"paused\"){animationRef.current.play();}else if(!isInView&&animationRef.current.playState===\"running\"){animationRef.current.pause();}},[isInView]);}else{/**\n             * If we can't accelerate this animation because we have a hoverFactor defined\n             * animate with a rAF loop.\n             */useAnimationFrame(t=>{if(!animateToValue||isReducedMotion||supportsAcceleratedAnimations){return;}/**\n                 * In case this animation is delayed from starting because we're running a bunch\n                 * of other work, we want to set an initial time rather than counting from 0.\n                 * That ensures that if the animation is delayed, it starts from the first frame\n                 * rather than jumping.\n                 */if(initialTime.current===null){initialTime.current=t;}t=t-initialTime.current;const timeSince=prevTime.current===null?0:t-prevTime.current;let delta=timeSince*(speed/1e3);if(isHover.current){delta*=hoverFactor;}xOrY.current+=delta;xOrY.current=wrap(0,animateToValue,xOrY.current);prevTime.current=t;if(!isInView)return;offset.set(xOrY.current);});}}/* Fades */const fadeDirection=isHorizontal?\"to right\":\"to bottom\";const fadeWidthStart=fadeWidth/2;const fadeWidthEnd=100-fadeWidth/2;const fadeInsetStart=clamp(fadeInset,0,fadeWidthStart);const fadeInsetEnd=100-fadeInset;const fadeMask=`linear-gradient(${fadeDirection}, rgba(0, 0, 0, ${fadeAlpha}) ${fadeInsetStart}%, rgba(0, 0, 0, 1) ${fadeWidthStart}%, rgba(0, 0, 0, 1) ${fadeWidthEnd}%, rgba(0, 0, 0, ${fadeAlpha}) ${fadeInsetEnd}%)`;/* Empty state */if(!hasChildren){return /*#__PURE__*/_jsxs(\"section\",{style:placeholderStyles,children:[/*#__PURE__*/_jsx(\"div\",{style:emojiStyles,children:\"✨\"}),/*#__PURE__*/_jsx(\"p\",{style:titleStyles,children:\"Connect to Content\"}),/*#__PURE__*/_jsx(\"p\",{style:subtitleStyles,children:\"Add layers or components to infinitely loop on your page.\"})]});}return /*#__PURE__*/_jsx(\"section\",{style:{...containerStyle,opacity:opacity,WebkitMaskImage:fadeContent?fadeMask:undefined,MozMaskImage:fadeContent?fadeMask:undefined,maskImage:fadeContent?fadeMask:undefined,overflow:overflow?\"visible\":\"hidden\",padding:paddingValue},ref:parentRef,children:/*#__PURE__*/_jsxs(motion.ul,{ref:listRef,style:{...containerStyle,gap:gap,top:direction===\"bottom\"&&isValidNumber(animateToValue)?-animateToValue:undefined,left:direction===\"right\"&&isValidNumber(animateToValue)?-animateToValue:undefined,placeItems:alignment,position:\"relative\",flexDirection:isHorizontal?\"row\":\"column\",...style,willChange:isCanvas?\"auto\":\"transform\",transform:supportsAcceleratedAnimations?transformer(0):transform},onMouseEnter:()=>{isHover.current=true;if(animationRef.current){// TODO Replace with updatePlaybackRate when Chrome bugs sorted\nanimationRef.current.playbackRate=hoverFactor;}},onMouseLeave:()=>{isHover.current=false;if(animationRef.current){// TODO Replace with updatePlaybackRate when Chrome bugs sorted\nanimationRef.current.playbackRate=1;}},children:[clonedChildren,dupedChildren]})});}/* Default Properties */Ticker.defaultProps={gap:10,padding:10,sizingOptions:{widthType:true,heightType:true},fadeOptions:{fadeContent:true,overflow:false,fadeWidth:25,fadeAlpha:0,fadeInset:0},direction:true};/* Property Controls */addPropertyControls(Ticker,{slots:{type:ControlType.Array,title:\"Children\",control:{type:ControlType.ComponentInstance}},speed:{type:ControlType.Number,title:\"Speed\",min:0,max:1e3,defaultValue:100,unit:\"%\",displayStepper:true,step:5},direction:{type:ControlType.Enum,title:\"Direction\",options:[\"left\",\"right\",\"top\",\"bottom\"],optionIcons:[\"direction-left\",\"direction-right\",\"direction-up\",\"direction-down\"],optionTitles:[\"Left\",\"Right\",\"Top\",\"Bottom\"],defaultValue:\"left\",displaySegmentedControl:true},alignment:{type:ControlType.Enum,title:\"Align\",options:[\"flex-start\",\"center\",\"flex-end\"],optionIcons:{direction:{right:[\"align-top\",\"align-middle\",\"align-bottom\"],left:[\"align-top\",\"align-middle\",\"align-bottom\"],top:[\"align-left\",\"align-center\",\"align-right\"],bottom:[\"align-left\",\"align-center\",\"align-right\"]}},defaultValue:\"center\",displaySegmentedControl:true},gap:{type:ControlType.Number,title:\"Gap\"},padding:{title:\"Padding\",type:ControlType.FusedNumber,toggleKey:\"paddingPerSide\",toggleTitles:[\"Padding\",\"Padding per side\"],valueKeys:[\"paddingTop\",\"paddingRight\",\"paddingBottom\",\"paddingLeft\"],valueLabels:[\"T\",\"R\",\"B\",\"L\"],min:0},sizingOptions:{type:ControlType.Object,title:\"Sizing\",controls:{widthType:{type:ControlType.Boolean,title:\"Width\",enabledTitle:\"Auto\",disabledTitle:\"Stretch\",defaultValue:true},heightType:{type:ControlType.Boolean,title:\"Height\",enabledTitle:\"Auto\",disabledTitle:\"Stretch\",defaultValue:true}}},fadeOptions:{type:ControlType.Object,title:\"Clipping\",controls:{fadeContent:{type:ControlType.Boolean,title:\"Fade\",defaultValue:true},overflow:{type:ControlType.Boolean,title:\"Overflow\",enabledTitle:\"Show\",disabledTitle:\"Hide\",defaultValue:false,hidden(props){return props.fadeContent===true;}},fadeWidth:{type:ControlType.Number,title:\"Width\",defaultValue:25,min:0,max:100,unit:\"%\",hidden(props){return props.fadeContent===false;}},fadeInset:{type:ControlType.Number,title:\"Inset\",defaultValue:0,min:0,max:100,unit:\"%\",hidden(props){return props.fadeContent===false;}},fadeAlpha:{type:ControlType.Number,title:\"Opacity\",defaultValue:0,min:0,max:1,step:.05,hidden(props){return props.fadeContent===false;}}}},hoverFactor:{type:ControlType.Number,title:\"Hover\",min:0,max:1,unit:\"x\",defaultValue:1,step:.1,displayStepper:true,description:\"Slows down the speed while you are hovering.\"}});/* Placeholder Styles */const containerStyle={display:\"flex\",width:\"100%\",height:\"100%\",maxWidth:\"100%\",maxHeight:\"100%\",placeItems:\"center\",margin:0,padding:0,listStyleType:\"none\",textIndent:\"none\"};/* Styles */const placeholderStyles={display:\"flex\",width:\"100%\",height:\"100%\",placeContent:\"center\",placeItems:\"center\",flexDirection:\"column\",color:\"#96F\",background:\"rgba(136, 85, 255, 0.1)\",fontSize:11,overflow:\"hidden\",padding:\"20px 20px 30px 20px\"};const emojiStyles={fontSize:32,marginBottom:10};const titleStyles={margin:0,marginBottom:10,fontWeight:600,textAlign:\"center\"};const subtitleStyles={margin:0,opacity:.7,maxWidth:150,lineHeight:1.5,textAlign:\"center\"};/* Clamp function, used for fadeInset */const clamp=(num,min,max)=>Math.min(Math.max(num,min),max);const isValidNumber=value=>typeof value===\"number\"&&!isNaN(value);\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"Ticker\",\"slots\":[],\"annotations\":{\"framerDisableUnlink\":\"*\",\"framerIntrinsicWidth\":\"400\",\"framerContractVersion\":\"1\",\"framerSupportedLayoutWidth\":\"fixed\",\"framerIntrinsicHeight\":\"200\",\"framerSupportedLayoutHeight\":\"fixed\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./Ticker.map","import{useState,useEffect}from\"react\";export const isBrowser=()=>typeof document===\"object\";export function getBrowserVisibilityProp(){if(!isBrowser())return;if(typeof document.hidden!==\"undefined\"){// Opera 12.10 and Firefox 18 and later support\nreturn\"visibilitychange\";}else if(typeof document.msHidden!==\"undefined\"){return\"msvisibilitychange\";}else if(typeof document.webkitHidden!==\"undefined\"){return\"webkitvisibilitychange\";}}export function getBrowserDocumentHiddenProp(){if(!isBrowser())return;if(typeof document.hidden!==\"undefined\"){return\"hidden\";}else if(typeof document.msHidden!==\"undefined\"){return\"msHidden\";}else if(typeof document.webkitHidden!==\"undefined\"){return\"webkitHidden\";}}export function getIsDocumentHidden(){if(!isBrowser())return;return!document[getBrowserDocumentHiddenProp()];}export function usePageVisibility(){if(!isBrowser())return;const[isVisible,setIsVisible]=useState(getIsDocumentHidden());const onVisibilityChange=()=>setIsVisible(getIsDocumentHidden());useEffect(()=>{const visibilityChange=getBrowserVisibilityProp();document.addEventListener(visibilityChange,onVisibilityChange,false);return()=>{document.removeEventListener(visibilityChange,onVisibilityChange);};});return isVisible;}\nexport const __FramerMetadata__ = {\"exports\":{\"getBrowserVisibilityProp\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"getIsDocumentHidden\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"usePageVisibility\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"isBrowser\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"getBrowserDocumentHiddenProp\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./UsePageVisibility.map","import{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{Children,useLayoutEffect,useEffect,useState,useRef,useMemo,createRef,useCallback,cloneElement,forwardRef}from\"react\";import{addPropertyControls,ControlType,RenderTarget}from\"framer\";import{motion,animate,useMotionValue,useInView,useTransform,LayoutGroup,wrap,sync,mix}from\"framer-motion\";import{resize}from\"@motionone/dom\";import{usePageVisibility}from\"https://framerusercontent.com/modules/V9ryrjN5Am9WM1dJeyyJ/9mrJHeWj7rhvLTLu7Yzt/UsePageVisibility.js\";// Using opacity: 0.001 instead of 0 as an LCP hack. (opacity: 0.001 is still 0\n// to a human eye but makes Google think the elements are visible)\nconst OPACITY_0=.001;/**\n *\n * SLIDESHOW\n * V2 with Drag\n * By Benjamin and Matt\n *\n * @framerIntrinsicWidth 400\n * @framerIntrinsicHeight 200\n *\n * @framerDisableUnlink\n *\n * @framerSupportedLayoutWidth fixed\n * @framerSupportedLayoutHeight fixed\n */export default function Slideshow(props){/**\n     * Properties\n     */const{slots,startFrom,direction,effectsOptions,autoPlayControl,dragControl,alignment,gap,padding,paddingPerSide,paddingTop,paddingRight,paddingBottom,paddingLeft,itemAmount,fadeOptions,intervalControl,transitionControl,arrowOptions,borderRadius,progressOptions,style}=props;const{effectsOpacity,effectsScale,effectsRotate,effectsPerspective,effectsHover}=effectsOptions;const{fadeContent,overflow,fadeWidth,fadeInset,fadeAlpha}=fadeOptions;const{showMouseControls,arrowSize,arrowRadius,arrowFill,leftArrow,rightArrow,arrowShouldSpace=true,arrowShouldFadeIn=false,arrowPosition,arrowPadding,arrowGap,arrowPaddingTop,arrowPaddingRight,arrowPaddingBottom,arrowPaddingLeft}=arrowOptions;const{showProgressDots,dotSize,dotsInset,dotsRadius,dotsPadding,dotsGap,dotsFill,dotsBackground,dotsActiveOpacity,dotsOpacity,dotsBlur}=progressOptions;const paddingValue=paddingPerSide?`${paddingTop}px ${paddingRight}px ${paddingBottom}px ${paddingLeft}px`:`${padding}px`;/**\n     * Checks\n     */const isCanvas=RenderTarget.current()===RenderTarget.canvas;// Remove empty slots (such as hidden layers)\nconst filteredSlots=slots.filter(Boolean);const hasChildren=Children.count(filteredSlots)>0;const isHorizontal=direction===\"left\"||direction===\"right\";const isInverted=direction===\"right\"||direction===\"bottom\";/**\n     * Empty state for Canvas\n     */if(!hasChildren){return /*#__PURE__*/_jsxs(\"section\",{style:placeholderStyles,children:[/*#__PURE__*/_jsx(\"div\",{style:emojiStyles,children:\"⭐️\"}),/*#__PURE__*/_jsx(\"p\",{style:titleStyles,children:\"Connect to Content\"}),/*#__PURE__*/_jsx(\"p\",{style:subtitleStyles,children:\"Add layers or components to make infinite auto-playing slideshows.\"})]});}/**\n     * Refs, State\n     */const parentRef=useRef(null);const childrenRef=useMemo(()=>{return filteredSlots.map(index=>/*#__PURE__*/createRef());},[filteredSlots]);const timeoutRef=useRef(undefined);const[size,setSize]=useState({parent:null,children:null,item:null,itemWidth:null,itemHeight:null,viewportLength:null});/* For pausing on hover */const[isHovering,setIsHovering]=useState(false);const[shouldPlayOnHover,setShouldPlayOnHover]=useState(autoPlayControl);/* For cursor updates */const[isMouseDown,setIsMouseDown]=useState(false);/* Check if resizing */const[isResizing,setIsResizing]=useState(false);/**\n     * Array for children\n     */const dupedChildren=[];let duplicateBy=4;if(isCanvas){duplicateBy=1;}/**\n     * Measure parent, child, items\n     */const measure=useCallback(()=>{if(hasChildren&&parentRef.current){const total=filteredSlots.length-1;const parentLength=isHorizontal?parentRef.current.offsetWidth:parentRef.current.offsetHeight;const start=childrenRef[0].current?isHorizontal?childrenRef[0].current.offsetLeft:childrenRef[0].current.offsetTop:0;const end=childrenRef[total].current?isHorizontal?childrenRef[total].current.offsetLeft+childrenRef[total].current.offsetWidth:childrenRef[total].current.offsetTop+childrenRef[total].current.offsetHeight:0;const childrenLength=end-start+gap;const itemSize=childrenRef[0].current?isHorizontal?childrenRef[0].current.offsetWidth:childrenRef[0].current.offsetHeight:0;const itemWidth=childrenRef[0].current?childrenRef[0].current.offsetWidth:0;const itemHeight=childrenRef[0].current?childrenRef[0].current.offsetHeight:0;const viewportLength=isHorizontal?Math.max(document.documentElement.clientWidth||0,window.innerWidth||0,parentRef.current.offsetWidth):Math.max(document.documentElement.clientHeight||0,window.innerHeight||0,parentRef.current.offsetHeight);setSize({parent:parentLength,children:childrenLength,item:itemSize,itemWidth,itemHeight,viewportLength});}},[hasChildren]);const scheduleMeasure=useCallback(()=>{sync.read(measure);},[measure]);/**\n     * Add refs to all children\n     * Added itemAmount for resizing\n     */useLayoutEffect(()=>{if(hasChildren)scheduleMeasure();},[hasChildren,itemAmount]);/**\n     * Track whether this is the initial resize event. By default this will fire on mount,\n     * which we do in the useEffect. We should only fire it on subsequent resizes.\n     */let initialResize=useRef(true);useEffect(()=>{return resize(parentRef.current,({contentSize})=>{if(!initialResize.current&&(contentSize.width||contentSize.height)){scheduleMeasure();setIsResizing(true);}initialResize.current=false;});},[]);useEffect(()=>{if(isResizing){const timer=setTimeout(()=>setIsResizing(false),500);return()=>clearTimeout(timer);}},[isResizing]);/**\n     * Animation, pagination\n     */const totalItems=filteredSlots===null||filteredSlots===void 0?void 0:filteredSlots.length;const childrenSize=isCanvas?0:size===null||size===void 0?void 0:size.children;const itemWithGap=(size===null||size===void 0?void 0:size.item)+gap;const itemOffset=startFrom*itemWithGap;const[currentItem,setCurrentItem]=useState(startFrom+totalItems);const[isDragging,setIsDragging]=useState(false);/* Check for browser window visibility *//* Otherwise, it will re-play all the item increments */const visibilityRef=useRef(null);const isInView=useInView(visibilityRef);const isVisible=usePageVisibility()&&isInView;const factor=isInverted?1:-1;/* The x and y values to start from */const xOrY=useMotionValue(childrenSize);/* For canvas only. Using xOrY is slower upon page switching */const canvasPosition=isHorizontal?-startFrom*((size===null||size===void 0?void 0:size.itemWidth)+gap):-startFrom*((size===null||size===void 0?void 0:size.itemHeight)+gap);/* Calculate the new value to animate to */const newPosition=()=>factor*currentItem*itemWithGap;/* Wrapped values for infinite looping *//* Instead of 0 to a negative full duplicated row, we start with an offset */const wrappedValue=!isCanvas?useTransform(xOrY,value=>{const wrapped=wrap(-childrenSize,-childrenSize*2,value);return isNaN(wrapped)?0:wrapped;}):0;/* Convert the current item to a wrapping index for dots */const wrappedIndex=wrap(0,totalItems,currentItem);const wrappedIndexInverted=wrap(0,-totalItems,currentItem);/* Update x or y with the provided starting point *//* The subtraction of a full row of children is for overflow */useLayoutEffect(()=>{if((size===null||size===void 0?void 0:size.children)===null)return;/* Initial measure */// if (initialResize.current) {\n//     xOrY.set((childrenSize + itemOffset) * factor)\n// }\n/* Subsequent resizes */if(!initialResize.current&&isResizing){xOrY.set(newPosition());}},[size,childrenSize,factor,itemOffset,currentItem,itemWithGap,isResizing]);/**\n     * Page item methods\n     * Switching, deltas, autoplaying\n     *//* Next and previous function, animates the X */const switchPages=()=>{if(isCanvas||!hasChildren||!size.parent||isDragging)return;if(xOrY.get()!==newPosition()){animate(xOrY,newPosition(),transitionControl);}if(autoPlayControl&&shouldPlayOnHover){timeoutRef.current=setTimeout(()=>{setCurrentItem(currentItem+1);switchPages();},intervalControl*1e3);}};/* Page navigation functions */const setDelta=delta=>{if(!isInverted){setCurrentItem(currentItem+delta);}else{setCurrentItem(currentItem-delta);}};const setPage=index=>{const currentItemWrapped=wrap(0,totalItems,currentItem);const currentItemWrappedInvert=wrap(0,-totalItems,currentItem);const goto=index-currentItemWrapped;const gotoInverted=index-Math.abs(currentItemWrappedInvert);if(!isInverted){setCurrentItem(currentItem+goto);}else{setCurrentItem(currentItem-gotoInverted);}};/**\n     * Drag\n     */const handleDragStart=()=>{setIsDragging(true);};const handleDragEnd=(event,{offset,velocity})=>{setIsDragging(false);const offsetXorY=isHorizontal?offset.x:offset.y;const velocityThreshold=200// Based on testing, can be tweaked or could be 0\n;const velocityXorY=isHorizontal?velocity.x:velocity.y;const isHalfOfNext=offsetXorY<-size.item/2;const isHalfOfPrev=offsetXorY>size.item/2;/* In case you drag more than 1 item left or right */const normalizedOffset=Math.abs(offsetXorY);const itemDelta=Math.round(normalizedOffset/size.item);/* Minimum delta is 1 to initiate a page switch *//* For velocity use only */const itemDeltaFromOne=itemDelta===0?1:itemDelta;/* For quick flicks, even with low offsets */if(velocityXorY>velocityThreshold){setDelta(-itemDeltaFromOne);}else if(velocityXorY<-velocityThreshold){setDelta(itemDeltaFromOne);}else{/* For dragging over half of the current item with 0 velocity */if(isHalfOfNext){setDelta(itemDelta);}if(isHalfOfPrev){setDelta(-itemDelta);}}};/* Kickstart the auto-playing once we have all the children */useEffect(()=>{if(!isVisible||isResizing)return;switchPages();return()=>timeoutRef.current&&clearTimeout(timeoutRef.current);},[dupedChildren,isVisible,isResizing]);/* Create copies of our children to create a perfect loop */let childCounter=0;/**\n     * Sizing\n     * */let columnOrRowValue=`calc(${100/itemAmount}% - ${gap}px + ${gap/itemAmount}px)`;/**\n     * Nested array to create duplicates of the children for infinite looping\n     * These are wrapped around, and start at a full \"page\" worth of offset\n     * as defined above.\n     */for(let index=0;index<duplicateBy;index++){dupedChildren.push(...Children.map(filteredSlots,(child,childIndex)=>{let ref;if(childIndex===0){ref=childrenRef[0];}if(childIndex===filteredSlots.length-1){ref=childrenRef[1];}return /*#__PURE__*/_jsx(Slide,{ref:childrenRef[childIndex],slideKey:index+childIndex+\"lg\",index:index,width:isHorizontal?itemAmount>1?columnOrRowValue:\"100%\":\"100%\",height:!isHorizontal?itemAmount>1?columnOrRowValue:\"100%\":\"100%\",size:size,child:child,numChildren:filteredSlots===null||filteredSlots===void 0?void 0:filteredSlots.length,wrappedValue:wrappedValue,childCounter:childCounter++,gap:gap,isCanvas:isCanvas,isHorizontal:isHorizontal,effectsOpacity:effectsOpacity,effectsScale:effectsScale,effectsRotate:effectsRotate,children:index+childIndex},index+childIndex+\"lg\");}));}/**\n     * Fades with masks\n     */const fadeDirection=isHorizontal?\"to right\":\"to bottom\";const fadeWidthStart=fadeWidth/2;const fadeWidthEnd=100-fadeWidth/2;const fadeInsetStart=clamp(fadeInset,0,fadeWidthStart);const fadeInsetEnd=100-fadeInset;const fadeMask=`linear-gradient(${fadeDirection}, rgba(0, 0, 0, ${fadeAlpha}) ${fadeInsetStart}%, rgba(0, 0, 0, 1) ${fadeWidthStart}%, rgba(0, 0, 0, 1) ${fadeWidthEnd}%, rgba(0, 0, 0, ${fadeAlpha}) ${fadeInsetEnd}%)`;/**\n     * Dots\n     */const dots=[];const dotsBlurStyle={};if(showProgressDots){for(let i=0;i<(filteredSlots===null||filteredSlots===void 0?void 0:filteredSlots.length);i++){dots.push(/*#__PURE__*/_jsx(Dot,{dotStyle:{...dotStyle,width:dotSize,height:dotSize,backgroundColor:dotsFill},buttonStyle:baseButtonStyles,selectedOpacity:dotsActiveOpacity,opacity:dotsOpacity,onClick:()=>setPage(i),wrappedIndex:wrappedIndex,wrappedIndexInverted:wrappedIndexInverted,total:totalItems,index:i,gap:dotsGap,padding:dotsPadding,isHorizontal:isHorizontal,isInverted:isInverted},i));}if(dotsBlur>0){dotsBlurStyle.backdropFilter=dotsBlurStyle.WebkitBackdropFilter=dotsBlurStyle.MozBackdropFilter=`blur(${dotsBlur}px)`;}}const dragProps=dragControl?{drag:isHorizontal?\"x\":\"y\",onDragStart:handleDragStart,onDragEnd:handleDragEnd,dragDirectionLock:true,values:{x:xOrY,y:xOrY},dragMomentum:false}:{};const arrowHasTop=arrowPosition===\"top-left\"||arrowPosition===\"top-mid\"||arrowPosition===\"top-right\";const arrowHasBottom=arrowPosition===\"bottom-left\"||arrowPosition===\"bottom-mid\"||arrowPosition===\"bottom-right\";const arrowHasLeft=arrowPosition===\"top-left\"||arrowPosition===\"bottom-left\";const arrowHasRight=arrowPosition===\"top-right\"||arrowPosition===\"bottom-right\";const arrowHasMid=arrowPosition===\"top-mid\"||arrowPosition===\"bottom-mid\"||arrowPosition===\"auto\";return /*#__PURE__*/_jsxs(\"section\",{style:{...containerStyle,padding:paddingValue,WebkitMaskImage:fadeContent?fadeMask:undefined,MozMaskImage:fadeContent?fadeMask:undefined,maskImage:fadeContent?fadeMask:undefined,opacity:(size===null||size===void 0?void 0:size.item)!==null?1:OPACITY_0,userSelect:\"none\"},onMouseEnter:()=>{setIsHovering(true);if(!effectsHover)setShouldPlayOnHover(false);},onMouseLeave:()=>{setIsHovering(false);if(!effectsHover)setShouldPlayOnHover(true);},onMouseDown:event=>{// Preventdefault fixes the cursor switching to text on drag on safari\nevent.preventDefault();setIsMouseDown(true);},onMouseUp:()=>setIsMouseDown(false),ref:visibilityRef,children:[/*#__PURE__*/_jsx(\"div\",{style:{width:\"100%\",height:\"100%\",margin:0,padding:\"inherit\",position:\"absolute\",inset:0,overflow:overflow?\"visible\":\"hidden\",borderRadius:borderRadius,userSelect:\"none\",perspective:isCanvas?\"none\":effectsPerspective},children:/*#__PURE__*/_jsx(motion.ul,{ref:parentRef,...dragProps,style:{...containerStyle,gap:gap,placeItems:alignment,x:isHorizontal?isCanvas?canvasPosition:wrappedValue:0,y:!isHorizontal?isCanvas?canvasPosition:wrappedValue:0,flexDirection:isHorizontal?\"row\":\"column\",transformStyle:effectsRotate!==0&&!isCanvas?\"preserve-3d\":undefined,cursor:dragControl?isMouseDown?\"grabbing\":\"grab\":\"auto\",userSelect:\"none\",...style},children:dupedChildren})}),/*#__PURE__*/_jsxs(\"fieldset\",{style:{...controlsStyles},\"aria-label\":\"Slideshow pagination controls\",className:\"framer--slideshow-controls\",children:[/*#__PURE__*/_jsxs(motion.div,{style:{position:\"absolute\",display:\"flex\",flexDirection:isHorizontal?\"row\":\"column\",justifyContent:arrowShouldSpace?\"space-between\":\"center\",gap:arrowShouldSpace?\"unset\":arrowGap,opacity:arrowShouldFadeIn?OPACITY_0:1,alignItems:\"center\",inset:arrowPadding,top:arrowShouldSpace?arrowPadding:arrowHasTop?arrowPaddingTop:\"unset\",left:arrowShouldSpace?arrowPadding:arrowHasLeft?arrowPaddingLeft:arrowHasMid?0:\"unset\",right:arrowShouldSpace?arrowPadding:arrowHasRight?arrowPaddingRight:arrowHasMid?0:\"unset\",bottom:arrowShouldSpace?arrowPadding:arrowHasBottom?arrowPaddingBottom:\"unset\"},animate:arrowShouldFadeIn&&{opacity:isHovering?1:OPACITY_0},transition:transitionControl,children:[/*#__PURE__*/_jsx(motion.button,{type:\"button\",style:{...baseButtonStyles,backgroundColor:arrowFill,width:arrowSize,height:arrowSize,borderRadius:arrowRadius,rotate:!isHorizontal?90:0,display:showMouseControls?\"block\":\"none\",pointerEvents:\"auto\"},onClick:()=>setDelta(-1),\"aria-label\":\"Previous\",whileTap:{scale:.9},transition:{duration:.15},children:/*#__PURE__*/_jsx(\"img\",{decoding:\"async\",width:arrowSize,height:arrowSize,src:leftArrow||\"https://framerusercontent.com/images/6tTbkXggWgQCAJ4DO2QEdXXmgM.svg\",alt:\"Back Arrow\"})}),/*#__PURE__*/_jsx(motion.button,{type:\"button\",style:{...baseButtonStyles,backgroundColor:arrowFill,width:arrowSize,height:arrowSize,borderRadius:arrowRadius,rotate:!isHorizontal?90:0,display:showMouseControls?\"block\":\"none\",pointerEvents:\"auto\"},onClick:()=>setDelta(1),\"aria-label\":\"Next\",whileTap:{scale:.9},transition:{duration:.15},children:/*#__PURE__*/_jsx(\"img\",{decoding:\"async\",width:arrowSize,height:arrowSize,src:rightArrow||\"https://framerusercontent.com/images/11KSGbIZoRSg4pjdnUoif6MKHI.svg\",alt:\"Next Arrow\"})})]}),dots.length>1?/*#__PURE__*/_jsx(\"div\",{style:{...dotsContainerStyle,left:isHorizontal?\"50%\":dotsInset,top:!isHorizontal?\"50%\":\"unset\",transform:isHorizontal?\"translateX(-50%)\":\"translateY(-50%)\",flexDirection:isHorizontal?\"row\":\"column\",bottom:isHorizontal?dotsInset:\"unset\",borderRadius:dotsRadius,backgroundColor:dotsBackground,userSelect:\"none\",...dotsBlurStyle},children:dots}):null]})]});}/* Default Properties */Slideshow.defaultProps={direction:\"left\",dragControl:false,startFrom:0,itemAmount:1,infinity:true,gap:10,padding:10,autoPlayControl:true,effectsOptions:{effectsOpacity:1,effectsScale:1,effectsRotate:0,effectsPerspective:1200,effectsHover:true},transitionControl:{type:\"spring\",stiffness:200,damping:40},fadeOptions:{fadeContent:false,overflow:false,fadeWidth:25,fadeAlpha:0,fadeInset:0},arrowOptions:{showMouseControls:true,arrowShouldFadeIn:false,arrowShouldSpace:true,arrowFill:\"rgba(0,0,0,0.2)\",arrowSize:40},progressOptions:{showProgressDots:true}};/* Property Controls */addPropertyControls(Slideshow,{slots:{type:ControlType.Array,title:\"Content\",control:{type:ControlType.ComponentInstance}},direction:{type:ControlType.Enum,title:\"Direction\",options:[\"left\",\"right\",\"top\",\"bottom\"],optionIcons:[\"direction-left\",\"direction-right\",\"direction-up\",\"direction-down\"],optionTitles:[\"Left\",\"Right\",\"Top\",\"Bottom\"],displaySegmentedControl:true,defaultValue:Slideshow.defaultProps.direction},autoPlayControl:{type:ControlType.Boolean,title:\"Auto Play\",defaultValue:true},intervalControl:{type:ControlType.Number,title:\"Interval\",defaultValue:1.5,min:.5,max:10,step:.1,displayStepper:true,unit:\"s\",hidden:props=>!props.autoPlayControl},dragControl:{type:ControlType.Boolean,title:\"Draggable\",defaultValue:false},startFrom:{type:ControlType.Number,title:\"Current\",min:0,max:10,displayStepper:true,defaultValue:Slideshow.defaultProps.startFrom},effectsOptions:{type:ControlType.Object,title:\"Effects\",controls:{effectsOpacity:{type:ControlType.Number,title:\"Opacity\",defaultValue:Slideshow.defaultProps.effectsOptions.effectsOpacity,min:0,max:1,step:.01,displayStepper:true},effectsScale:{type:ControlType.Number,title:\"Scale\",defaultValue:Slideshow.defaultProps.effectsOptions.effectsScale,min:0,max:1,step:.01,displayStepper:true},effectsPerspective:{type:ControlType.Number,title:\"Perspective\",defaultValue:Slideshow.defaultProps.effectsOptions.effectsPerspective,min:200,max:2e3,step:1},effectsRotate:{type:ControlType.Number,title:\"Rotate\",defaultValue:Slideshow.defaultProps.effectsOptions.effectsRotate,min:-180,max:180,step:1},effectsHover:{type:ControlType.Boolean,title:\"On Hover\",enabledTitle:\"Play\",disabledTitle:\"Pause\",defaultValue:Slideshow.defaultProps.effectsOptions.effectsHover}}},alignment:{type:ControlType.Enum,title:\"Align\",options:[\"flex-start\",\"center\",\"flex-end\"],optionIcons:{direction:{right:[\"align-top\",\"align-middle\",\"align-bottom\"],left:[\"align-top\",\"align-middle\",\"align-bottom\"],top:[\"align-left\",\"align-center\",\"align-right\"],bottom:[\"align-left\",\"align-center\",\"align-right\"]}},defaultValue:\"center\",displaySegmentedControl:true},itemAmount:{type:ControlType.Number,title:\"Items\",min:1,max:10,displayStepper:true,defaultValue:Slideshow.defaultProps.itemAmount},gap:{type:ControlType.Number,title:\"Gap\",min:0},padding:{title:\"Padding\",type:ControlType.FusedNumber,toggleKey:\"paddingPerSide\",toggleTitles:[\"Padding\",\"Padding per side\"],defaultValue:0,valueKeys:[\"paddingTop\",\"paddingRight\",\"paddingBottom\",\"paddingLeft\"],valueLabels:[\"T\",\"R\",\"B\",\"L\"],min:0},borderRadius:{type:ControlType.Number,title:\"Radius\",min:0,max:500,displayStepper:true,defaultValue:0},transitionControl:{type:ControlType.Transition,defaultValue:Slideshow.defaultProps.transitionControl,title:\"Transition\"},fadeOptions:{type:ControlType.Object,title:\"Clipping\",controls:{fadeContent:{type:ControlType.Boolean,title:\"Fade\",defaultValue:false},overflow:{type:ControlType.Boolean,title:\"Overflow\",enabledTitle:\"Show\",disabledTitle:\"Hide\",defaultValue:false,hidden(props){return props.fadeContent===true;}},fadeWidth:{type:ControlType.Number,title:\"Width\",defaultValue:25,min:0,max:100,unit:\"%\",hidden(props){return props.fadeContent===false;}},fadeInset:{type:ControlType.Number,title:\"Inset\",defaultValue:0,min:0,max:100,unit:\"%\",hidden(props){return props.fadeContent===false;}},fadeAlpha:{type:ControlType.Number,title:\"Opacity\",defaultValue:0,min:0,max:1,step:.05,hidden(props){return props.fadeContent===false;}}}},arrowOptions:{type:ControlType.Object,title:\"Arrows\",controls:{showMouseControls:{type:ControlType.Boolean,title:\"Show\",defaultValue:Slideshow.defaultProps.arrowOptions.showMouseControls},arrowFill:{type:ControlType.Color,title:\"Fill\",hidden:props=>!props.showMouseControls,defaultValue:Slideshow.defaultProps.arrowOptions.arrowFill},leftArrow:{type:ControlType.Image,title:\"Previous\",hidden:props=>!props.showMouseControls},rightArrow:{type:ControlType.Image,title:\"Next\",hidden:props=>!props.showMouseControls},arrowSize:{type:ControlType.Number,title:\"Size\",min:0,max:200,displayStepper:true,defaultValue:Slideshow.defaultProps.arrowOptions.arrowSize,hidden:props=>!props.showMouseControls},arrowRadius:{type:ControlType.Number,title:\"Radius\",min:0,max:500,defaultValue:40,hidden:props=>!props.showMouseControls},arrowShouldFadeIn:{type:ControlType.Boolean,title:\"Fade In\",defaultValue:false,hidden:props=>!props.showMouseControls},arrowShouldSpace:{type:ControlType.Boolean,title:\"Distance\",enabledTitle:\"Space\",disabledTitle:\"Group\",defaultValue:Slideshow.defaultProps.arrowOptions.arrowShouldSpace,hidden:props=>!props.showMouseControls},arrowPosition:{type:ControlType.Enum,title:\"Position\",options:[\"auto\",\"top-left\",\"top-mid\",\"top-right\",\"bottom-left\",\"bottom-mid\",\"bottom-right\"],optionTitles:[\"Center\",\"Top Left\",\"Top Middle\",\"Top Right\",\"Bottom Left\",\"Bottom Middle\",\"Bottom Right\"],hidden:props=>!props.showMouseControls||props.arrowShouldSpace},arrowPadding:{type:ControlType.Number,title:\"Inset\",min:-100,max:100,defaultValue:20,displayStepper:true,hidden:props=>!props.showMouseControls||!props.arrowShouldSpace},arrowPaddingTop:{type:ControlType.Number,title:\"Top\",min:-500,max:500,defaultValue:0,displayStepper:true,hidden:props=>!props.showMouseControls||props.arrowShouldSpace||props.arrowPosition===\"auto\"||props.arrowPosition===\"bottom-mid\"||props.arrowPosition===\"bottom-left\"||props.arrowPosition===\"bottom-right\"},arrowPaddingBottom:{type:ControlType.Number,title:\"Bottom\",min:-500,max:500,defaultValue:0,displayStepper:true,hidden:props=>!props.showMouseControls||props.arrowShouldSpace||props.arrowPosition===\"auto\"||props.arrowPosition===\"top-mid\"||props.arrowPosition===\"top-left\"||props.arrowPosition===\"top-right\"},arrowPaddingRight:{type:ControlType.Number,title:\"Right\",min:-500,max:500,defaultValue:0,displayStepper:true,hidden:props=>!props.showMouseControls||props.arrowShouldSpace||props.arrowPosition===\"auto\"||props.arrowPosition===\"top-left\"||props.arrowPosition===\"top-mid\"||props.arrowPosition===\"bottom-left\"||props.arrowPosition===\"bottom-mid\"},arrowPaddingLeft:{type:ControlType.Number,title:\"Left\",min:-500,max:500,defaultValue:0,displayStepper:true,hidden:props=>!props.showMouseControls||props.arrowShouldSpace||props.arrowPosition===\"auto\"||props.arrowPosition===\"top-right\"||props.arrowPosition===\"top-mid\"||props.arrowPosition===\"bottom-right\"||props.arrowPosition===\"bottom-mid\"},arrowGap:{type:ControlType.Number,title:\"Gap\",min:0,max:100,defaultValue:10,displayStepper:true,hidden:props=>!props.showMouseControls||props.arrowShouldSpace}}},progressOptions:{type:ControlType.Object,title:\"Dots\",controls:{showProgressDots:{type:ControlType.Boolean,title:\"Show\",defaultValue:false},dotSize:{type:ControlType.Number,title:\"Size\",min:1,max:100,defaultValue:10,displayStepper:true,hidden:props=>!props.showProgressDots||props.showScrollbar},dotsInset:{type:ControlType.Number,title:\"Inset\",min:-100,max:100,defaultValue:10,displayStepper:true,hidden:props=>!props.showProgressDots||props.showScrollbar},dotsGap:{type:ControlType.Number,title:\"Gap\",min:0,max:100,defaultValue:10,displayStepper:true,hidden:props=>!props.showProgressDots||props.showScrollbar},dotsPadding:{type:ControlType.Number,title:\"Padding\",min:0,max:100,defaultValue:10,displayStepper:true,hidden:props=>!props.showProgressDots||props.showScrollbar},dotsFill:{type:ControlType.Color,title:\"Fill\",defaultValue:\"#fff\",hidden:props=>!props.showProgressDots||props.showScrollbar},dotsBackground:{type:ControlType.Color,title:\"Backdrop\",defaultValue:\"rgba(0,0,0,0.2)\",hidden:props=>!props.showProgressDots||props.showScrollbar},dotsRadius:{type:ControlType.Number,title:\"Radius\",min:0,max:200,defaultValue:50,hidden:props=>!props.showProgressDots||props.showScrollbar},dotsOpacity:{type:ControlType.Number,title:\"Opacity\",min:0,max:1,defaultValue:.5,step:.1,displayStepper:true,hidden:props=>!props.showProgressDots||props.showScrollbar},dotsActiveOpacity:{type:ControlType.Number,title:\"Current\",min:0,max:1,defaultValue:1,step:.1,displayStepper:true,hidden:props=>!props.showProgressDots||props.showScrollbar},dotsBlur:{type:ControlType.Number,title:\"Blur\",min:0,max:50,defaultValue:0,step:1,hidden:props=>!props.showProgressDots||props.showScrollbar}}}});/* Placeholder Styles */const containerStyle={display:\"flex\",flexDirection:\"row\",width:\"100%\",height:\"100%\",maxWidth:\"100%\",maxHeight:\"100%\",placeItems:\"center\",margin:0,padding:0,listStyleType:\"none\",textIndent:\"none\"};/* Component Styles */const placeholderStyles={display:\"flex\",width:\"100%\",height:\"100%\",placeContent:\"center\",placeItems:\"center\",flexDirection:\"column\",color:\"#96F\",background:\"rgba(136, 85, 255, 0.1)\",fontSize:11,overflow:\"hidden\",padding:\"20px 20px 30px 20px\"};const emojiStyles={fontSize:32,marginBottom:10};const titleStyles={margin:0,marginBottom:10,fontWeight:600,textAlign:\"center\"};const subtitleStyles={margin:0,opacity:.7,maxWidth:180,lineHeight:1.5,textAlign:\"center\"};/* Control Styles */const baseButtonStyles={border:\"none\",display:\"flex\",placeContent:\"center\",placeItems:\"center\",overflow:\"hidden\",background:\"transparent\",cursor:\"pointer\",margin:0,padding:0};const controlsStyles={display:\"flex\",justifyContent:\"space-between\",alignItems:\"center\",position:\"absolute\",pointerEvents:\"none\",userSelect:\"none\",top:0,left:0,right:0,bottom:0,border:0,padding:0,margin:0};/* Clamp function, used for fadeInset */const clamp=(num,min,max)=>Math.min(Math.max(num,min),max);/* Slide Component */const Slide=/*#__PURE__*/forwardRef(function Component(props,ref){var _child_props,_child_props1;const{slideKey,width,height,child,size,gap,wrappedValue,numChildren,childCounter,isCanvas,effects,effectsOpacity,effectsScale,effectsRotate,isHorizontal,isLast,index}=props;/**\n     * Unique offsets + scroll range [0, 1, 1, 0]\n     */const childOffset=((size===null||size===void 0?void 0:size.item)+gap)*childCounter;const scrollRange=[-(size===null||size===void 0?void 0:size.item),0,(size===null||size===void 0?void 0:size.parent)-(size===null||size===void 0?void 0:size.item)+gap,size===null||size===void 0?void 0:size.parent].map(val=>val-childOffset);/**\n     * Effects\n     */const rotateY=!isCanvas&&useTransform(wrappedValue,scrollRange,[-effectsRotate,0,0,effectsRotate]);const rotateX=!isCanvas&&useTransform(wrappedValue,scrollRange,[effectsRotate,0,0,-effectsRotate]);const opacity=!isCanvas&&useTransform(wrappedValue,scrollRange,[effectsOpacity,1,1,effectsOpacity]);const scale=!isCanvas&&useTransform(wrappedValue,scrollRange,[effectsScale,1,1,effectsScale]);const originXorY=!isCanvas&&useTransform(wrappedValue,scrollRange,[1,1,0,0]);const isVisible=!isCanvas&&useTransform(wrappedValue,latest=>latest>=scrollRange[1]&&latest<=scrollRange[2]);useEffect(()=>{if(!isVisible)return;return isVisible.onChange(newValue=>{var _ref_current;(_ref_current=ref.current)===null||_ref_current===void 0?void 0:_ref_current.setAttribute(\"aria-hidden\",!newValue);});},[]);const visibility=isCanvas?\"visible\":useTransform(wrappedValue,[scrollRange[0]-size.viewportLength,mix(scrollRange[1],scrollRange[2],.5),scrollRange[3]+size.viewportLength],[\"hidden\",\"visible\",\"hidden\"]);return /*#__PURE__*/_jsx(LayoutGroup,{inherit:\"id\",children:/*#__PURE__*/_jsx(\"li\",{style:{display:\"contents\"},\"aria-hidden\":index===0?false:true,children:/*#__PURE__*/cloneElement(child,{ref:ref,key:slideKey+\"child\",style:{...(_child_props=child.props)===null||_child_props===void 0?void 0:_child_props.style,flexShrink:0,userSelect:\"none\",width,height,opacity:opacity,scale:scale,originX:isHorizontal?originXorY:.5,originY:!isHorizontal?originXorY:.5,rotateY:isHorizontal?rotateY:0,rotateX:!isHorizontal?rotateX:0,visibility},layoutId:child.props.layoutId?child.props.layoutId+\"-original-\"+index:undefined},(_child_props1=child.props)===null||_child_props1===void 0?void 0:_child_props1.children)})});});function Dot({selectedOpacity,opacity,total,index,wrappedIndex,wrappedIndexInverted,dotStyle,buttonStyle,gap,padding,isHorizontal,isInverted,...props}){/* Check active item *//* Go 0—1—2—3—4—5—0 */let isSelected=wrappedIndex===index;/* Go 0—5—4—3—2—1—0—5 instead when inverted */if(isInverted){isSelected=Math.abs(wrappedIndexInverted)===index;}const inlinePadding=gap/2;let top=!isHorizontal&&index>0?inlinePadding:padding;let bottom=!isHorizontal&&index!==total-1?inlinePadding:padding;let right=isHorizontal&&index!==total-1?inlinePadding:padding;let left=isHorizontal&&index>0?inlinePadding:padding;return /*#__PURE__*/_jsx(\"button\",{\"aria-label\":`Scroll to page ${index+1}`,type:\"button\",...props,style:{...buttonStyle,padding:`${top}px ${right}px ${bottom}px ${left}px`},children:/*#__PURE__*/_jsx(motion.div,{style:{...dotStyle},initial:false,animate:{opacity:isSelected?selectedOpacity:opacity},transition:{duration:.3}})});}/* Dot Styles */const dotsContainerStyle={display:\"flex\",placeContent:\"center\",placeItems:\"center\",overflow:\"hidden\",position:\"absolute\",pointerEvents:\"auto\"};const dotStyle={borderRadius:\"50%\",background:\"white\",cursor:\"pointer\",border:\"none\",placeContent:\"center\",placeItems:\"center\",padding:0};\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"Slideshow\",\"slots\":[],\"annotations\":{\"framerIntrinsicHeight\":\"200\",\"framerSupportedLayoutHeight\":\"fixed\",\"framerContractVersion\":\"1\",\"framerIntrinsicWidth\":\"400\",\"framerSupportedLayoutWidth\":\"fixed\",\"framerDisableUnlink\":\"*\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./SlideShow.map","// Generated by Framer (33d5032)\nimport{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{addFonts,addPropertyControls,ControlType,cx,SVG,useComponentViewport,useLocaleInfo,useVariantState,withCSS}from\"framer\";import{LayoutGroup,motion,MotionConfigContext}from\"framer-motion\";import*as React from\"react\";const cycleOrder=[\"ujV6Xa15W\",\"JZ_x31dEM\",\"GIqVgGxxr\",\"c3KC2OuxA\",\"WwvIYgYzV\",\"hgNpP5slM\",\"qkRVBQ2x6\",\"pcP6zCwB7\",\"ghDXG4WI5\",\"gNBmMqocI\"];const serializationHash=\"framer-vfXad\";const variantClassNames={c3KC2OuxA:\"framer-v-jxvuyu\",ghDXG4WI5:\"framer-v-icj73m\",GIqVgGxxr:\"framer-v-86yy31\",gNBmMqocI:\"framer-v-1vqi87k\",hgNpP5slM:\"framer-v-1oj3q56\",JZ_x31dEM:\"framer-v-1n8sngg\",pcP6zCwB7:\"framer-v-x9h9g7\",qkRVBQ2x6:\"framer-v-1t1la89\",ujV6Xa15W:\"framer-v-6ctajs\",WwvIYgYzV:\"framer-v-185asri\"};function addPropertyOverrides(overrides,...variants){const nextOverrides={};variants===null||variants===void 0?void 0:variants.forEach(variant=>variant&&Object.assign(nextOverrides,overrides[variant]));return nextOverrides;}const transition1={duration:0,type:\"tween\"};const Transition=({value,children})=>{const config=React.useContext(MotionConfigContext);const transition=value!==null&&value!==void 0?value:config.transition;const contextValue=React.useMemo(()=>({...config,transition}),[JSON.stringify(transition)]);return /*#__PURE__*/_jsx(MotionConfigContext.Provider,{value:contextValue,children:children});};const Variants=motion(React.Fragment);const humanReadableVariantMap={\"Bulletins \\xb7\\xa0Phone\":\"pcP6zCwB7\",\"Evaluations \\xb7\\xa0Phone\":\"gNBmMqocI\",\"High Five \\xb7 Phone\":\"hgNpP5slM\",\"High Five\":\"ujV6Xa15W\",\"Nudge \\xb7\\xa0Phone\":\"ghDXG4WI5\",\"Shoutout \\xb7\\xa0Phone\":\"qkRVBQ2x6\",Bulletins:\"GIqVgGxxr\",Evaluations:\"WwvIYgYzV\",Nudge:\"c3KC2OuxA\",Shoutout:\"JZ_x31dEM\"};const getProps=({height,id,width,...props})=>{var _humanReadableVariantMap_props_variant,_ref;return{...props,variant:(_ref=(_humanReadableVariantMap_props_variant=humanReadableVariantMap[props.variant])!==null&&_humanReadableVariantMap_props_variant!==void 0?_humanReadableVariantMap_props_variant:props.variant)!==null&&_ref!==void 0?_ref:\"ujV6Xa15W\"};};const createLayoutDependency=(props,variants)=>variants.join(\"-\")+props.layoutDependency;const Component=/*#__PURE__*/React.forwardRef(function(props,ref){const{activeLocale,setLocale}=useLocaleInfo();const{style,className,layoutId,variant,...restProps}=getProps(props);const{baseVariant,classNames,gestureVariant,setGestureState,setVariant,variants}=useVariantState({cycleOrder,defaultVariant:\"ujV6Xa15W\",variant,variantClassNames});const layoutDependency=createLayoutDependency(props,variants);const ref1=React.useRef(null);const isDisplayed=()=>{if([\"JZ_x31dEM\",\"GIqVgGxxr\",\"c3KC2OuxA\",\"WwvIYgYzV\",\"qkRVBQ2x6\",\"pcP6zCwB7\",\"ghDXG4WI5\",\"gNBmMqocI\"].includes(baseVariant))return false;return true;};const isDisplayed1=()=>{if([\"JZ_x31dEM\",\"qkRVBQ2x6\"].includes(baseVariant))return true;return false;};const isDisplayed2=()=>{if([\"GIqVgGxxr\",\"pcP6zCwB7\"].includes(baseVariant))return true;return false;};const isDisplayed3=()=>{if([\"c3KC2OuxA\",\"ghDXG4WI5\"].includes(baseVariant))return true;return false;};const isDisplayed4=()=>{if([\"WwvIYgYzV\",\"gNBmMqocI\"].includes(baseVariant))return true;return false;};const defaultLayoutId=React.useId();const sharedStyleClassNames=[];const componentViewport=useComponentViewport();return /*#__PURE__*/_jsx(LayoutGroup,{id:layoutId!==null&&layoutId!==void 0?layoutId:defaultLayoutId,children:/*#__PURE__*/_jsx(Variants,{animate:variants,initial:false,children:/*#__PURE__*/_jsx(Transition,{value:transition1,children:/*#__PURE__*/_jsxs(motion.div,{...restProps,className:cx(serializationHash,...sharedStyleClassNames,\"framer-6ctajs\",className,classNames),\"data-framer-name\":\"High Five\",layoutDependency:layoutDependency,layoutId:\"ujV6Xa15W\",onHoverEnd:()=>setGestureState({isHovered:false}),onHoverStart:()=>setGestureState({isHovered:true}),onTap:()=>setGestureState({isPressed:false}),onTapCancel:()=>setGestureState({isPressed:false}),onTapStart:()=>setGestureState({isPressed:true}),ref:ref!==null&&ref!==void 0?ref:ref1,style:{...style},...addPropertyOverrides({c3KC2OuxA:{\"data-framer-name\":\"Nudge\"},ghDXG4WI5:{\"data-framer-name\":\"Nudge \\xb7\\xa0Phone\"},GIqVgGxxr:{\"data-framer-name\":\"Bulletins\"},gNBmMqocI:{\"data-framer-name\":\"Evaluations \\xb7\\xa0Phone\"},hgNpP5slM:{\"data-framer-name\":\"High Five \\xb7 Phone\"},JZ_x31dEM:{\"data-framer-name\":\"Shoutout\"},pcP6zCwB7:{\"data-framer-name\":\"Bulletins \\xb7\\xa0Phone\"},qkRVBQ2x6:{\"data-framer-name\":\"Shoutout \\xb7\\xa0Phone\"},WwvIYgYzV:{\"data-framer-name\":\"Evaluations\"}},baseVariant,gestureVariant),children:[isDisplayed()&&/*#__PURE__*/_jsx(Transition,{value:transition1,children:/*#__PURE__*/_jsx(motion.div,{className:\"framer-11vhipv\",\"data-framer-name\":\"High Five\",layoutDependency:layoutDependency,layoutId:\"tqR1aExg3\",style:{transformPerspective:1200},children:/*#__PURE__*/_jsx(Transition,{value:transition1,children:/*#__PURE__*/_jsx(SVG,{className:\"framer-1kvqd2o\",\"data-framer-name\":\"Icon_High_Five\",layout:\"position\",layoutDependency:layoutDependency,layoutId:\"jJr1OLB9C\",opacity:.25,style:{opacity:.25},svg:'<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" viewBox=\"0 0 512 512\"><path d=\"M 159.914 58.635 L 159.914 255.862 M 79.957 282.515 L 103.144 370.624 C 113.923 411.584 119.312 432.064 130.924 447.295 C 141.17 460.735 154.785 471.231 170.39 477.719 C 188.075 485.072 209.252 485.072 251.606 485.072 L 342.216 485.072 C 366.099 485.072 378.04 485.072 387.162 480.424 C 395.186 476.336 401.71 469.812 405.798 461.788 C 410.446 452.666 410.446 440.725 410.446 416.842 L 410.446 408.314 C 410.446 405.328 410.446 403.836 409.865 402.695 C 409.354 401.692 408.538 400.877 407.535 400.366 C 406.395 399.785 404.902 399.785 401.917 399.785 L 201.127 399.785 C 198.777 399.785 197.602 399.785 196.621 399.377 C 195.755 399.018 194.998 398.436 194.429 397.69 C 193.784 396.846 193.483 395.71 192.882 393.439 L 170.575 309.167 L 437.098 309.167 M 239.871 0 L 239.871 255.862 M 325.158 58.635 L 325.158 255.862 M 410.446 127.931 L 410.446 255.862\" fill=\"transparent\" stroke-width=\"47.974\" stroke=\"rgb(255, 255, 255)\" stroke-miterlimit=\"10\" stroke-dasharray=\"\"></path></svg>',svgContentId:3706334004,withExternalLayout:true,...addPropertyOverrides({hgNpP5slM:{svg:'<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" viewBox=\"0 0 380 380\"><path d=\"M 118.686 43.518 L 118.686 189.898 M 59.343 209.679 L 76.552 275.073 C 84.552 305.473 88.552 320.673 97.17 331.977 C 104.775 341.952 114.879 349.741 126.461 354.557 C 139.587 360.014 155.304 360.014 186.739 360.014 L 253.988 360.014 C 271.714 360.014 280.577 360.014 287.347 356.565 C 293.302 353.531 298.144 348.689 301.178 342.733 C 304.628 335.963 304.628 327.101 304.628 309.375 L 304.628 303.046 C 304.628 300.829 304.628 299.722 304.197 298.875 C 303.817 298.131 303.212 297.526 302.467 297.147 C 301.621 296.715 300.513 296.715 298.298 296.715 L 149.274 296.715 C 147.53 296.715 146.658 296.715 145.93 296.413 C 145.287 296.146 144.725 295.714 144.303 295.161 C 143.824 294.534 143.601 293.691 143.155 292.006 L 126.599 229.46 L 324.409 229.46 M 178.029 0 L 178.029 189.898 M 241.328 43.518 L 241.328 189.898 M 304.628 94.949 L 304.628 189.898\" fill=\"transparent\" stroke-width=\"35.61\" stroke=\"rgb(255, 255, 255)\" stroke-miterlimit=\"10\"></path></svg>',svgContentId:3211918528}},baseVariant,gestureVariant)})})})}),isDisplayed1()&&/*#__PURE__*/_jsx(Transition,{value:transition1,children:/*#__PURE__*/_jsx(motion.div,{className:\"framer-ei0tu7\",\"data-framer-name\":\"Shoutout\",layoutDependency:layoutDependency,layoutId:\"bUMIzCEEb\",children:isDisplayed1()&&/*#__PURE__*/_jsx(Transition,{...addPropertyOverrides({JZ_x31dEM:{value:transition1},qkRVBQ2x6:{value:transition1}},baseVariant,gestureVariant),children:/*#__PURE__*/_jsx(SVG,{className:\"framer-15dnx4b\",\"data-framer-name\":\"Icon_Shoutout\",fill:\"black\",intrinsicHeight:512,intrinsicWidth:512,layoutDependency:layoutDependency,layoutId:\"bhA4C_qfv\",style:{opacity:.25},svg:'<svg width=\"512\" height=\"512\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M460 183c-11.673-13.093-29.119-21-48-21-7.451 0-14.353 1.642-21 4v118c7.996 3.626 11.656 6 21 6 18.881 0 36.327-7.907 48-21 10.095-11.323 16-26.608 16-43s-5.905-31.677-16-43Zm-69 213V55l-206 85H57.333C45.551 140 36 149.551 36 161.333v128.334C36 301.449 45.551 311 57.333 311H185l206 85Z\" stroke=\"#fff\" stroke-width=\"40\" stroke-miterlimit=\"10\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/><path d=\"M103 313h85l-28 144H75l28-144Z\" stroke=\"#fff\" stroke-width=\"40\" stroke-miterlimit=\"10\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/></svg>',withExternalLayout:true})})})}),isDisplayed2()&&/*#__PURE__*/_jsx(Transition,{value:transition1,children:/*#__PURE__*/_jsx(motion.div,{className:\"framer-1e5wsgp\",\"data-framer-name\":\"Bulletins\",layoutDependency:layoutDependency,layoutId:\"xHeKJUTT3\",style:{transformPerspective:1200},children:isDisplayed2()&&/*#__PURE__*/_jsx(Transition,{...addPropertyOverrides({GIqVgGxxr:{value:transition1},pcP6zCwB7:{value:transition1}},baseVariant,gestureVariant),children:/*#__PURE__*/_jsx(SVG,{className:\"framer-1vhf2oi\",\"data-framer-name\":\"Icon_Bulletin\",layout:\"position\",layoutDependency:layoutDependency,layoutId:\"lHyQC9wu8\",opacity:.25,style:{opacity:.25},svg:'<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" viewBox=\"0 0 513 512\"><path d=\"M 360.302 216 C 413.81 283.512 416.481 344 416.481 344 L 96.481 344 C 96.481 344 98.983 283.512 152.302 216 C 161.264 204.652 163.236 182.975 160.235 168 L 136.067 48 C 133.364 34.51 140.038 24 152.034 24 L 360.034 24 C 372.029 24 378.733 34.51 376.067 48 L 352.235 168 C 349.276 182.975 351.309 204.652 360.302 216 Z\" fill=\"transparent\" stroke-width=\"40\" stroke=\"rgb(255,255,255)\" stroke-linejoin=\"round\" stroke-dasharray=\"\"></path><path d=\"M 276.481 344 L 276.453 324 L 236.453 324 L 236.481 344 Z M 236.682 488 C 236.698 499.046 245.665 508 256.71 508 C 267.756 508 276.698 499.046 276.682 488 Z M 236.481 344 L 236.682 488 L 276.682 488 L 276.481 344 Z\" fill=\"rgb(255,255,255)\"></path></svg>',svgContentId:1998396970,withExternalLayout:true,...addPropertyOverrides({GIqVgGxxr:{svgContentId:2102576634},pcP6zCwB7:{svg:'<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" viewBox=\"0 0 380 379\"><path d=\"M 266.89 159.891 C 306.526 209.865 308.504 254.641 308.504 254.641 L 71.467 254.641 C 71.467 254.641 73.321 209.865 112.816 159.891 C 119.455 151.49 120.916 135.444 118.693 124.359 L 100.79 35.531 C 98.788 25.545 103.732 17.766 112.618 17.766 L 266.692 17.766 C 275.577 17.766 280.543 25.545 278.568 35.531 L 260.915 124.359 C 258.723 135.444 260.229 151.49 266.89 159.891 Z\" fill=\"transparent\" stroke-width=\"29.63\" stroke=\"rgb(255,255,255)\" stroke-linejoin=\"round\"></path><path d=\"M 204.801 254.641 L 204.78 239.836 L 175.15 239.836 L 175.171 254.641 Z M 175.32 361.234 C 175.332 369.411 181.974 376.039 190.156 376.039 C 198.338 376.039 204.961 369.411 204.95 361.234 Z M 175.171 254.641 L 175.32 361.234 L 204.95 361.234 L 204.801 254.641 Z\" fill=\"rgb(255,255,255)\"></path></svg>',svgContentId:3437023599}},baseVariant,gestureVariant)})})})}),isDisplayed3()&&/*#__PURE__*/_jsx(Transition,{value:transition1,children:/*#__PURE__*/_jsx(motion.div,{className:\"framer-1tzf3x5\",\"data-framer-name\":\"Nudge\",layoutDependency:layoutDependency,layoutId:\"NxlVFoWzQ\",style:{transformPerspective:1200},children:isDisplayed3()&&/*#__PURE__*/_jsx(Transition,{...addPropertyOverrides({c3KC2OuxA:{value:transition1},ghDXG4WI5:{value:transition1}},baseVariant,gestureVariant),children:/*#__PURE__*/_jsx(SVG,{className:\"framer-11bsc0f\",\"data-framer-name\":\"Icon_Nudge\",fill:\"black\",intrinsicHeight:513,intrinsicWidth:512,layoutDependency:layoutDependency,layoutId:\"cdBZfkSXO\",style:{opacity:.25},svg:'<svg width=\"512\" height=\"513\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"><g clip-path=\"url(#a)\"><path d=\"M388.772 443.167c58.44-41.531 96.561-109.746 96.561-186.857 0-126.552-102.676-229.143-229.333-229.143S26.667 129.758 26.667 256.31c0 77.111 38.121 145.326 96.561 186.857\" stroke=\"#fff\" stroke-width=\"42.667\"/><path d=\"m256 187.167 15.085-15.085c-8.331-8.331-21.839-8.331-30.17 0L256 187.167Zm91.582 121.752c8.331 8.331 21.838 8.331 30.17 0 8.331-8.332 8.331-21.839 0-30.17l-30.17 30.17Zm-213.334-30.17c-8.331 8.331-8.331 21.838 0 30.17 8.331 8.331 21.839 8.331 30.17 0l-30.17-30.17Zm100.419-91.582v298.667h42.666V187.167h-42.666Zm6.248 15.085 106.667 106.667 30.17-30.17-106.667-106.667-30.17 30.17Zm0-30.17L134.248 278.749l30.17 30.17 106.667-106.667-30.17-30.17Z\" fill=\"#fff\"/></g><defs><clipPath id=\"a\"><path fill=\"#fff\" transform=\"translate(0 .5)\" d=\"M0 0h512v512H0z\"/></clipPath></defs></svg>',withExternalLayout:true})})})}),isDisplayed4()&&/*#__PURE__*/_jsx(Transition,{value:transition1,children:/*#__PURE__*/_jsx(motion.div,{className:\"framer-1dtdgac\",\"data-framer-name\":\"Evaluations\",layoutDependency:layoutDependency,layoutId:\"iWjtgTzjG\",style:{transformPerspective:1200},children:isDisplayed4()&&/*#__PURE__*/_jsx(Transition,{...addPropertyOverrides({gNBmMqocI:{value:transition1},WwvIYgYzV:{value:transition1}},baseVariant,gestureVariant),children:/*#__PURE__*/_jsx(SVG,{className:\"framer-kz22kf\",\"data-framer-name\":\"Icon_Evaluations\",layout:\"position\",layoutDependency:layoutDependency,layoutId:\"sBqkCc5uc\",opacity:.25,style:{opacity:.25},svg:'<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" viewBox=\"0 0 512 512\"><path d=\"M 256 469.334 C 223.788 469.334 203.642 435.737 184.173 403.271 C 173.944 386.233 164.309 370.127 153.091 358.909 C 141.874 347.691 125.768 338.056 108.729 327.827 C 76.263 308.359 42.667 288.212 42.667 256 C 42.667 223.788 76.263 203.642 108.729 184.173 C 125.768 173.945 141.874 164.309 153.091 153.092 C 164.309 141.874 173.944 125.768 184.173 108.73 C 203.642 76.263 223.788 42.667 256 42.667 C 288.212 42.667 308.359 76.263 327.827 108.73 C 338.056 125.768 347.691 141.874 358.909 153.092 C 370.126 164.309 386.232 173.945 403.271 184.173 C 435.765 203.642 469.333 223.76 469.333 256 C 469.333 288.241 435.737 308.359 403.271 327.827 C 386.232 338.056 370.126 347.691 358.909 358.909 C 347.691 370.127 338.056 386.233 327.827 403.271 C 308.359 435.765 288.24 469.334 256 469.334 Z\" fill=\"transparent\" stroke-width=\"42.66\" stroke=\"rgb(255,255,255)\" stroke-miterlimit=\"10.3125\"></path><path d=\"M 206.222 256 L 244.318 291.556 L 312.889 227.556\" fill=\"transparent\" stroke-width=\"42.66\" stroke=\"rgb(255,255,255)\" stroke-linecap=\"square\" stroke-miterlimit=\"1.604625\"></path></svg>',svgContentId:1124378989,withExternalLayout:true,...addPropertyOverrides({gNBmMqocI:{svg:'<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" viewBox=\"0 0 380 380\"><path d=\"M 190 348.334 C 166.093 348.334 151.141 323.399 136.691 299.303 C 129.099 286.657 121.948 274.704 113.622 266.378 C 105.297 258.052 93.343 250.901 80.697 243.309 C 56.601 228.86 31.667 213.907 31.667 190 C 31.667 166.093 56.601 151.141 80.697 136.691 C 93.343 129.1 105.297 121.948 113.622 113.623 C 121.948 105.297 129.099 93.343 136.691 80.698 C 151.141 56.601 166.093 31.667 190 31.667 C 213.907 31.667 228.86 56.601 243.309 80.698 C 250.901 93.343 258.052 105.297 266.378 113.623 C 274.703 121.948 286.657 129.1 299.303 136.691 C 323.419 151.141 348.333 166.072 348.333 190 C 348.333 213.929 323.399 228.86 299.303 243.309 C 286.657 250.901 274.703 258.052 266.378 266.378 C 258.052 274.704 250.901 286.657 243.309 299.303 C 228.86 323.419 213.928 348.334 190 348.334 Z\" fill=\"transparent\" stroke-width=\"31.66\" stroke=\"rgb(255,255,255)\" stroke-miterlimit=\"10.3125\"></path><path d=\"M 153.055 190 L 181.33 216.389 L 232.222 168.889\" fill=\"transparent\" stroke-width=\"31.66\" stroke=\"rgb(255,255,255)\" stroke-linecap=\"square\" stroke-miterlimit=\"1.604625\"></path></svg>',svgContentId:3203409715},WwvIYgYzV:{svgContentId:4284629719}},baseVariant,gestureVariant)})})})})]})})})});});const css=[\"@supports (aspect-ratio: 1) { body { --framer-aspect-ratio-supported: auto; } }\",\".framer-vfXad.framer-n52ve8, .framer-vfXad .framer-n52ve8 { display: block; }\",\".framer-vfXad.framer-6ctajs { align-content: center; align-items: center; display: flex; flex-direction: column; flex-wrap: nowrap; gap: 0px; height: min-content; justify-content: center; overflow: visible; padding: 0px; position: relative; width: min-content; }\",\".framer-vfXad .framer-11vhipv { align-content: center; align-items: center; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; gap: 10px; height: min-content; justify-content: center; overflow: visible; padding: 0px; position: relative; width: min-content; }\",\".framer-vfXad .framer-1kvqd2o, .framer-vfXad .framer-kz22kf { flex: none; height: 512px; position: relative; width: 512px; }\",\".framer-vfXad .framer-ei0tu7, .framer-vfXad .framer-1dtdgac { align-content: center; align-items: center; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; gap: 10px; height: min-content; justify-content: center; min-height: 512px; min-width: 512px; overflow: visible; padding: 0px; position: relative; width: min-content; }\",\".framer-vfXad .framer-15dnx4b { aspect-ratio: 1 / 1; flex: none; height: var(--framer-aspect-ratio-supported, 512px); position: relative; width: 512px; }\",\".framer-vfXad .framer-1e5wsgp { align-content: center; align-items: center; display: flex; flex: none; flex-direction: column; flex-wrap: nowrap; gap: 10px; height: min-content; justify-content: center; min-height: 513px; min-width: 514px; overflow: visible; padding: 0px; position: relative; width: min-content; }\",\".framer-vfXad .framer-1vhf2oi { flex: none; height: 512px; position: relative; width: 513px; }\",\".framer-vfXad .framer-1tzf3x5 { align-content: center; align-items: center; display: flex; flex: none; flex-direction: column; flex-wrap: nowrap; gap: 10px; height: min-content; justify-content: center; min-height: 458px; min-width: 456px; overflow: visible; padding: 0px; position: relative; width: min-content; }\",\".framer-vfXad .framer-11bsc0f { aspect-ratio: 0.9980506822612085 / 1; flex: none; height: var(--framer-aspect-ratio-supported, 457px); position: relative; width: 456px; }\",\"@supports (background: -webkit-named-image(i)) and (not (font-palette:dark)) { .framer-vfXad.framer-6ctajs, .framer-vfXad .framer-11vhipv, .framer-vfXad .framer-ei0tu7, .framer-vfXad .framer-1e5wsgp, .framer-vfXad .framer-1tzf3x5, .framer-vfXad .framer-1dtdgac { gap: 0px; } .framer-vfXad.framer-6ctajs > * { margin: 0px; margin-bottom: calc(0px / 2); margin-top: calc(0px / 2); } .framer-vfXad.framer-6ctajs > :first-child, .framer-vfXad .framer-1e5wsgp > :first-child, .framer-vfXad .framer-1tzf3x5 > :first-child { margin-top: 0px; } .framer-vfXad.framer-6ctajs > :last-child, .framer-vfXad .framer-1e5wsgp > :last-child, .framer-vfXad .framer-1tzf3x5 > :last-child { margin-bottom: 0px; } .framer-vfXad .framer-11vhipv > *, .framer-vfXad .framer-ei0tu7 > *, .framer-vfXad .framer-1dtdgac > * { margin: 0px; margin-left: calc(10px / 2); margin-right: calc(10px / 2); } .framer-vfXad .framer-11vhipv > :first-child, .framer-vfXad .framer-ei0tu7 > :first-child, .framer-vfXad .framer-1dtdgac > :first-child { margin-left: 0px; } .framer-vfXad .framer-11vhipv > :last-child, .framer-vfXad .framer-ei0tu7 > :last-child, .framer-vfXad .framer-1dtdgac > :last-child { margin-right: 0px; } .framer-vfXad .framer-1e5wsgp > *, .framer-vfXad .framer-1tzf3x5 > * { margin: 0px; margin-bottom: calc(10px / 2); margin-top: calc(10px / 2); } }\",\".framer-vfXad.framer-v-1n8sngg .framer-ei0tu7, .framer-vfXad.framer-v-86yy31 .framer-1e5wsgp, .framer-vfXad.framer-v-jxvuyu .framer-1tzf3x5, .framer-vfXad.framer-v-185asri .framer-1dtdgac, .framer-vfXad.framer-v-1t1la89 .framer-ei0tu7, .framer-vfXad.framer-v-x9h9g7 .framer-1e5wsgp { min-height: unset; min-width: unset; }\",\".framer-vfXad.framer-v-jxvuyu.framer-6ctajs { justify-content: flex-start; }\",\".framer-vfXad.framer-v-1oj3q56 .framer-1kvqd2o, .framer-vfXad.framer-v-1vqi87k .framer-kz22kf { height: 380px; width: 380px; }\",\".framer-vfXad.framer-v-1t1la89 .framer-15dnx4b { height: var(--framer-aspect-ratio-supported, 380px); width: 380px; }\",\".framer-vfXad.framer-v-x9h9g7 .framer-1vhf2oi { height: 379px; width: 380px; }\",\".framer-vfXad.framer-v-icj73m .framer-1tzf3x5 { gap: 0px; min-height: unset; min-width: unset; }\",\".framer-vfXad.framer-v-icj73m .framer-11bsc0f { height: var(--framer-aspect-ratio-supported, 349px); width: 348px; }\",\"@supports (background: -webkit-named-image(i)) and (not (font-palette:dark)) { .framer-vfXad.framer-v-icj73m .framer-1tzf3x5 { gap: 0px; } .framer-vfXad.framer-v-icj73m .framer-1tzf3x5 > * { margin: 0px; margin-bottom: calc(0px / 2); margin-top: calc(0px / 2); } .framer-vfXad.framer-v-icj73m .framer-1tzf3x5 > :first-child { margin-top: 0px; } .framer-vfXad.framer-v-icj73m .framer-1tzf3x5 > :last-child { margin-bottom: 0px; } }\",\".framer-vfXad.framer-v-1vqi87k .framer-1dtdgac { flex-direction: column; min-height: unset; min-width: unset; }\",\"@supports (background: -webkit-named-image(i)) and (not (font-palette:dark)) { .framer-vfXad.framer-v-1vqi87k .framer-1dtdgac { gap: 0px; } .framer-vfXad.framer-v-1vqi87k .framer-1dtdgac > * { margin: 0px; margin-bottom: calc(10px / 2); margin-top: calc(10px / 2); } .framer-vfXad.framer-v-1vqi87k .framer-1dtdgac > :first-child { margin-top: 0px; } .framer-vfXad.framer-v-1vqi87k .framer-1dtdgac > :last-child { margin-bottom: 0px; } }\"];/**\n * This is a generated Framer component.\n * @framerIntrinsicHeight 512\n * @framerIntrinsicWidth 512\n * @framerCanvasComponentVariantDetails {\"propertyName\":\"variant\",\"data\":{\"default\":{\"layout\":[\"auto\",\"auto\"]},\"JZ_x31dEM\":{\"layout\":[\"auto\",\"auto\"]},\"GIqVgGxxr\":{\"layout\":[\"auto\",\"auto\"]},\"c3KC2OuxA\":{\"layout\":[\"auto\",\"auto\"]},\"WwvIYgYzV\":{\"layout\":[\"auto\",\"auto\"]},\"hgNpP5slM\":{\"layout\":[\"auto\",\"auto\"]},\"qkRVBQ2x6\":{\"layout\":[\"auto\",\"auto\"]},\"pcP6zCwB7\":{\"layout\":[\"auto\",\"auto\"]},\"ghDXG4WI5\":{\"layout\":[\"auto\",\"auto\"]},\"gNBmMqocI\":{\"layout\":[\"auto\",\"auto\"]}}}\n * @framerImmutableVariables true\n * @framerDisplayContentsDiv false\n * @framerComponentViewportWidth true\n */const Framerbk0C2dMAB=withCSS(Component,css,\"framer-vfXad\");export default Framerbk0C2dMAB;Framerbk0C2dMAB.displayName=\"Home / Hero \\xb7\\xa0Icon\";Framerbk0C2dMAB.defaultProps={height:512,width:512};addPropertyControls(Framerbk0C2dMAB,{variant:{options:[\"ujV6Xa15W\",\"JZ_x31dEM\",\"GIqVgGxxr\",\"c3KC2OuxA\",\"WwvIYgYzV\",\"hgNpP5slM\",\"qkRVBQ2x6\",\"pcP6zCwB7\",\"ghDXG4WI5\",\"gNBmMqocI\"],optionTitles:[\"High Five\",\"Shoutout\",\"Bulletins\",\"Nudge\",\"Evaluations\",\"High Five \\xb7 Phone\",\"Shoutout \\xb7\\xa0Phone\",\"Bulletins \\xb7\\xa0Phone\",\"Nudge \\xb7\\xa0Phone\",\"Evaluations \\xb7\\xa0Phone\"],title:\"Variant\",type:ControlType.Enum}});addFonts(Framerbk0C2dMAB,[{explicitInter:true,fonts:[]}],{supportsExplicitInterCodegen:true});\nexport const __FramerMetadata__ = {\"exports\":{\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"default\":{\"type\":\"reactComponent\",\"name\":\"Framerbk0C2dMAB\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\",\"framerIntrinsicHeight\":\"512\",\"framerImmutableVariables\":\"true\",\"framerDisplayContentsDiv\":\"false\",\"framerCanvasComponentVariantDetails\":\"{\\\"propertyName\\\":\\\"variant\\\",\\\"data\\\":{\\\"default\\\":{\\\"layout\\\":[\\\"auto\\\",\\\"auto\\\"]},\\\"JZ_x31dEM\\\":{\\\"layout\\\":[\\\"auto\\\",\\\"auto\\\"]},\\\"GIqVgGxxr\\\":{\\\"layout\\\":[\\\"auto\\\",\\\"auto\\\"]},\\\"c3KC2OuxA\\\":{\\\"layout\\\":[\\\"auto\\\",\\\"auto\\\"]},\\\"WwvIYgYzV\\\":{\\\"layout\\\":[\\\"auto\\\",\\\"auto\\\"]},\\\"hgNpP5slM\\\":{\\\"layout\\\":[\\\"auto\\\",\\\"auto\\\"]},\\\"qkRVBQ2x6\\\":{\\\"layout\\\":[\\\"auto\\\",\\\"auto\\\"]},\\\"pcP6zCwB7\\\":{\\\"layout\\\":[\\\"auto\\\",\\\"auto\\\"]},\\\"ghDXG4WI5\\\":{\\\"layout\\\":[\\\"auto\\\",\\\"auto\\\"]},\\\"gNBmMqocI\\\":{\\\"layout\\\":[\\\"auto\\\",\\\"auto\\\"]}}}\",\"framerIntrinsicWidth\":\"512\",\"framerComponentViewportWidth\":\"true\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./bk0C2dMAB.map","import{MotionValue}from\"framer\";// Basic MotionValue check\nexport const isMotionValue=v=>v instanceof MotionValue;\nexport const __FramerMetadata__ = {\"exports\":{\"isMotionValue\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./isMotionValue.map","import{useCallback,useEffect,useRef}from\"react\";import{motionValue,animate,RenderTarget}from\"framer\";import{isMotionValue}from\"https://framerusercontent.com/modules/3mKFSGQqKHV82uOV1eBc/TbXI1XaZFNevVKcgIt7G/isMotionValue.js\";import{useConstant}from\"https://framerusercontent.com/modules/ExNgrA7EJTKUPpH6vIlN/eiOrSJ2Ab5M9jPCvVwUz/useConstant.js\";export function useAutoMotionValue(inputValue,options){// Put options on a local ref\n// Might wanna just memo instead but it works for now\nconst optionsRef=useRef(options);const animation=useRef();const didInitialMount=useRef(false);const isOnCanvas=RenderTarget.current()===RenderTarget.canvas;// in-progress - trying to figure out effect hooks\nconst onChangeDeps=(options===null||options===void 0?void 0:options.onChangeDeps)?options.onChangeDeps:[];// Memoize the onChange handler\nconst onChange=useCallback(options===null||options===void 0?void 0:options.onChange,[...onChangeDeps,]);// Optionally scale the value from props\nconst transformer=useCallback(value=>{var ref;return((ref=optionsRef.current)===null||ref===void 0?void 0:ref.transform)?optionsRef.current.transform(value):value;},[]);// Create new MotionValue from inputValue\nconst value1=useConstant(()=>isMotionValue(inputValue)?inputValue:motionValue(transformer(inputValue)));// Setting value from prop change\nuseEffect(()=>{if(!isMotionValue(inputValue)&&didInitialMount.current){var ref,ref1;const newValue=transformer(inputValue);(ref=animation.current)===null||ref===void 0?void 0:ref.stop();// Call change callback\nif(onChange)onChange(newValue,value1);// Trigger animation to new value\nif(((ref1=optionsRef.current)===null||ref1===void 0?void 0:ref1.animate)&&!isOnCanvas){var ref2;// @ts-ignore\nanimation.current=animate(value1,newValue,(ref2=optionsRef.current)===null||ref2===void 0?void 0:ref2.transition);}else{value1.set(newValue);}}didInitialMount.current=true;},[inputValue,...onChangeDeps]);return value1;}\nexport const __FramerMetadata__ = {\"exports\":{\"useAutoMotionValue\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./useAutoMotionValue.map","var _global = typeof globalThis !== \"undefined\" ? globalThis : typeof self !== \"undefined\" ? self : global;\n\nvar exports = {};\ntypeof navigator !== \"undefined\" && function (root, factory) {\n  if (exports) {\n    exports = factory(root);\n  } else {\n    root.lottie = factory(root);\n    root.bodymovin = root.lottie;\n  }\n}(window || {}, function (window) {\n  /* global locationHref:writable, animationManager, subframeEnabled:writable, defaultCurveSegments:writable, roundValues,\r\n  expressionsPlugin:writable, PropertyFactory, ShapePropertyFactory, Matrix */\n\n  /* exported locationHref, subframeEnabled, expressionsPlugin */\n  'use strict';\n  /* exported svgNS, locationHref, initialDefaultFrame */\n\n  var svgNS = \"http://www.w3.org/2000/svg\";\n  var locationHref = \"\";\n  var initialDefaultFrame = -999999;\n  /* global createSizedArray */\n\n  /* exported subframeEnabled, expressionsPlugin, isSafari, cachedColors, bmPow, bmSqrt, bmFloor, bmMax, bmMin, ProjectInterface,\r\n  defaultCurveSegments, degToRads, roundCorner, bmRnd, styleDiv, BMEnterFrameEvent, BMCompleteEvent, BMCompleteLoopEvent,\r\n  BMSegmentStartEvent, BMDestroyEvent, BMRenderFrameErrorEvent, BMConfigErrorEvent, BMAnimationConfigErrorEvent, createElementID,\r\n  addSaturationToRGB, addBrightnessToRGB, addHueToRGB, rgbToHex */\n\n  var subframeEnabled = true;\n  var expressionsPlugin;\n  var isSafari = /^((?!chrome|android).)*safari/i.test(navigator.userAgent);\n  var cachedColors = {};\n  var bmRnd;\n  var bmPow = Math.pow;\n  var bmSqrt = Math.sqrt;\n  var bmFloor = Math.floor;\n  var bmMax = Math.max;\n  var bmMin = Math.min;\n  var BMMath = {};\n\n  (function () {\n    var propertyNames = [\"abs\", \"acos\", \"acosh\", \"asin\", \"asinh\", \"atan\", \"atanh\", \"atan2\", \"ceil\", \"cbrt\", \"expm1\", \"clz32\", \"cos\", \"cosh\", \"exp\", \"floor\", \"fround\", \"hypot\", \"imul\", \"log\", \"log1p\", \"log2\", \"log10\", \"max\", \"min\", \"pow\", \"random\", \"round\", \"sign\", \"sin\", \"sinh\", \"sqrt\", \"tan\", \"tanh\", \"trunc\", \"E\", \"LN10\", \"LN2\", \"LOG10E\", \"LOG2E\", \"PI\", \"SQRT1_2\", \"SQRT2\"];\n    var i;\n    var len = propertyNames.length;\n\n    for (i = 0; i < len; i += 1) {\n      BMMath[propertyNames[i]] = Math[propertyNames[i]];\n    }\n  })();\n\n  function ProjectInterface() {\n    return {};\n  }\n\n  BMMath.random = Math.random;\n\n  BMMath.abs = function (val) {\n    var tOfVal = typeof val;\n\n    if (tOfVal === \"object\" && val.length) {\n      var absArr = createSizedArray(val.length);\n      var i;\n      var len = val.length;\n\n      for (i = 0; i < len; i += 1) {\n        absArr[i] = Math.abs(val[i]);\n      }\n\n      return absArr;\n    }\n\n    return Math.abs(val);\n  };\n\n  var defaultCurveSegments = 150;\n  var degToRads = Math.PI / 180;\n  var roundCorner = 0.5519;\n\n  function roundValues(flag) {\n    if (flag) {\n      bmRnd = Math.round;\n    } else {\n      bmRnd = function (val) {\n        return val;\n      };\n    }\n  }\n\n  roundValues(false);\n\n  function styleDiv(element) {\n    element.style.position = \"absolute\";\n    element.style.top = 0;\n    element.style.left = 0;\n    element.style.display = \"block\";\n    element.style.transformOrigin = \"0 0\";\n    element.style.webkitTransformOrigin = \"0 0\";\n    element.style.backfaceVisibility = \"visible\";\n    element.style.webkitBackfaceVisibility = \"visible\";\n    element.style.transformStyle = \"preserve-3d\";\n    element.style.webkitTransformStyle = \"preserve-3d\";\n    element.style.mozTransformStyle = \"preserve-3d\";\n  }\n\n  function BMEnterFrameEvent(type, currentTime, totalTime, frameMultiplier) {\n    (this || _global).type = type;\n    (this || _global).currentTime = currentTime;\n    (this || _global).totalTime = totalTime;\n    (this || _global).direction = frameMultiplier < 0 ? -1 : 1;\n  }\n\n  function BMCompleteEvent(type, frameMultiplier) {\n    (this || _global).type = type;\n    (this || _global).direction = frameMultiplier < 0 ? -1 : 1;\n  }\n\n  function BMCompleteLoopEvent(type, totalLoops, currentLoop, frameMultiplier) {\n    (this || _global).type = type;\n    (this || _global).currentLoop = currentLoop;\n    (this || _global).totalLoops = totalLoops;\n    (this || _global).direction = frameMultiplier < 0 ? -1 : 1;\n  }\n\n  function BMSegmentStartEvent(type, firstFrame, totalFrames) {\n    (this || _global).type = type;\n    (this || _global).firstFrame = firstFrame;\n    (this || _global).totalFrames = totalFrames;\n  }\n\n  function BMDestroyEvent(type, target) {\n    (this || _global).type = type;\n    (this || _global).target = target;\n  }\n\n  function BMRenderFrameErrorEvent(nativeError, currentTime) {\n    (this || _global).type = \"renderFrameError\";\n    (this || _global).nativeError = nativeError;\n    (this || _global).currentTime = currentTime;\n  }\n\n  function BMConfigErrorEvent(nativeError) {\n    (this || _global).type = \"configError\";\n    (this || _global).nativeError = nativeError;\n  }\n\n  function BMAnimationConfigErrorEvent(type, nativeError) {\n    (this || _global).type = type;\n    (this || _global).nativeError = nativeError;\n  }\n\n  var createElementID = function () {\n    var _count = 0;\n    return function createID() {\n      _count += 1;\n      return \"__lottie_element_\" + _count;\n    };\n  }();\n\n  function HSVtoRGB(h, s, v) {\n    var r;\n    var g;\n    var b;\n    var i;\n    var f;\n    var p;\n    var q;\n    var t;\n    i = Math.floor(h * 6);\n    f = h * 6 - i;\n    p = v * (1 - s);\n    q = v * (1 - f * s);\n    t = v * (1 - (1 - f) * s);\n\n    switch (i % 6) {\n      case 0:\n        r = v;\n        g = t;\n        b = p;\n        break;\n\n      case 1:\n        r = q;\n        g = v;\n        b = p;\n        break;\n\n      case 2:\n        r = p;\n        g = v;\n        b = t;\n        break;\n\n      case 3:\n        r = p;\n        g = q;\n        b = v;\n        break;\n\n      case 4:\n        r = t;\n        g = p;\n        b = v;\n        break;\n\n      case 5:\n        r = v;\n        g = p;\n        b = q;\n        break;\n\n      default:\n        break;\n    }\n\n    return [r, g, b];\n  }\n\n  function RGBtoHSV(r, g, b) {\n    var max = Math.max(r, g, b);\n    var min = Math.min(r, g, b);\n    var d = max - min;\n    var h;\n    var s = max === 0 ? 0 : d / max;\n    var v = max / 255;\n\n    switch (max) {\n      case min:\n        h = 0;\n        break;\n\n      case r:\n        h = g - b + d * (g < b ? 6 : 0);\n        h /= 6 * d;\n        break;\n\n      case g:\n        h = b - r + d * 2;\n        h /= 6 * d;\n        break;\n\n      case b:\n        h = r - g + d * 4;\n        h /= 6 * d;\n        break;\n\n      default:\n        break;\n    }\n\n    return [h, s, v];\n  }\n\n  function addSaturationToRGB(color, offset) {\n    var hsv = RGBtoHSV(color[0] * 255, color[1] * 255, color[2] * 255);\n    hsv[1] += offset;\n\n    if (hsv[1] > 1) {\n      hsv[1] = 1;\n    } else if (hsv[1] <= 0) {\n      hsv[1] = 0;\n    }\n\n    return HSVtoRGB(hsv[0], hsv[1], hsv[2]);\n  }\n\n  function addBrightnessToRGB(color, offset) {\n    var hsv = RGBtoHSV(color[0] * 255, color[1] * 255, color[2] * 255);\n    hsv[2] += offset;\n\n    if (hsv[2] > 1) {\n      hsv[2] = 1;\n    } else if (hsv[2] < 0) {\n      hsv[2] = 0;\n    }\n\n    return HSVtoRGB(hsv[0], hsv[1], hsv[2]);\n  }\n\n  function addHueToRGB(color, offset) {\n    var hsv = RGBtoHSV(color[0] * 255, color[1] * 255, color[2] * 255);\n    hsv[0] += offset / 360;\n\n    if (hsv[0] > 1) {\n      hsv[0] -= 1;\n    } else if (hsv[0] < 0) {\n      hsv[0] += 1;\n    }\n\n    return HSVtoRGB(hsv[0], hsv[1], hsv[2]);\n  }\n\n  var rgbToHex = function () {\n    var colorMap = [];\n    var i;\n    var hex;\n\n    for (i = 0; i < 256; i += 1) {\n      hex = i.toString(16);\n      colorMap[i] = hex.length === 1 ? \"0\" + hex : hex;\n    }\n\n    return function (r, g, b) {\n      if (r < 0) {\n        r = 0;\n      }\n\n      if (g < 0) {\n        g = 0;\n      }\n\n      if (b < 0) {\n        b = 0;\n      }\n\n      return \"#\" + colorMap[r] + colorMap[g] + colorMap[b];\n    };\n  }();\n\n  function BaseEvent() {}\n\n  BaseEvent.prototype = {\n    triggerEvent: function (eventName, args) {\n      if ((this || _global)._cbs[eventName]) {\n        var len = (this || _global)._cbs[eventName].length;\n\n        for (var i = 0; i < len; i += 1) {\n          (this || _global)._cbs[eventName][i](args);\n        }\n      }\n    },\n    addEventListener: function (eventName, callback) {\n      if (!(this || _global)._cbs[eventName]) {\n        (this || _global)._cbs[eventName] = [];\n      }\n\n      (this || _global)._cbs[eventName].push(callback);\n\n      return function () {\n        this.removeEventListener(eventName, callback);\n      }.bind(this || _global);\n    },\n    removeEventListener: function (eventName, callback) {\n      if (!callback) {\n        (this || _global)._cbs[eventName] = null;\n      } else if ((this || _global)._cbs[eventName]) {\n        var i = 0;\n        var len = (this || _global)._cbs[eventName].length;\n\n        while (i < len) {\n          if ((this || _global)._cbs[eventName][i] === callback) {\n            (this || _global)._cbs[eventName].splice(i, 1);\n\n            i -= 1;\n            len -= 1;\n          }\n\n          i += 1;\n        }\n\n        if (!(this || _global)._cbs[eventName].length) {\n          (this || _global)._cbs[eventName] = null;\n        }\n      }\n    }\n  };\n  /* exported createTypedArray, createSizedArray */\n\n  var createTypedArray = function () {\n    function createRegularArray(type, len) {\n      var i = 0;\n      var arr = [];\n      var value;\n\n      switch (type) {\n        case \"int16\":\n        case \"uint8c\":\n          value = 1;\n          break;\n\n        default:\n          value = 1.1;\n          break;\n      }\n\n      for (i = 0; i < len; i += 1) {\n        arr.push(value);\n      }\n\n      return arr;\n    }\n\n    function createTypedArrayFactory(type, len) {\n      if (type === \"float32\") {\n        return new Float32Array(len);\n      }\n\n      if (type === \"int16\") {\n        return new Int16Array(len);\n      }\n\n      if (type === \"uint8c\") {\n        return new Uint8ClampedArray(len);\n      }\n\n      return createRegularArray(type, len);\n    }\n\n    if (typeof Uint8ClampedArray === \"function\" && typeof Float32Array === \"function\") {\n      return createTypedArrayFactory;\n    }\n\n    return createRegularArray;\n  }();\n\n  function createSizedArray(len) {\n    return Array.apply(null, {\n      length: len\n    });\n  }\n  /* global svgNS */\n\n  /* exported createNS */\n\n\n  function createNS(type) {\n    // return {appendChild:function(){},setAttribute:function(){},style:{}}\n    return document.createElementNS(svgNS, type);\n  }\n  /* exported createTag */\n\n\n  function createTag(type) {\n    // return {appendChild:function(){},setAttribute:function(){},style:{}}\n    return document.createElement(type);\n  }\n\n  function DynamicPropertyContainer() {}\n\n  DynamicPropertyContainer.prototype = {\n    addDynamicProperty: function (prop) {\n      if ((this || _global).dynamicProperties.indexOf(prop) === -1) {\n        (this || _global).dynamicProperties.push(prop);\n\n        (this || _global).container.addDynamicProperty(this || _global);\n\n        (this || _global)._isAnimated = true;\n      }\n    },\n    iterateDynamicProperties: function () {\n      (this || _global)._mdf = false;\n      var i;\n      var len = (this || _global).dynamicProperties.length;\n\n      for (i = 0; i < len; i += 1) {\n        (this || _global).dynamicProperties[i].getValue();\n\n        if ((this || _global).dynamicProperties[i]._mdf) {\n          (this || _global)._mdf = true;\n        }\n      }\n    },\n    initDynamicPropertyContainer: function (container) {\n      (this || _global).container = container;\n      (this || _global).dynamicProperties = [];\n      (this || _global)._mdf = false;\n      (this || _global)._isAnimated = false;\n    }\n  };\n  /* exported getBlendMode */\n\n  var getBlendMode = function () {\n    var blendModeEnums = {\n      0: \"source-over\",\n      1: \"multiply\",\n      2: \"screen\",\n      3: \"overlay\",\n      4: \"darken\",\n      5: \"lighten\",\n      6: \"color-dodge\",\n      7: \"color-burn\",\n      8: \"hard-light\",\n      9: \"soft-light\",\n      10: \"difference\",\n      11: \"exclusion\",\n      12: \"hue\",\n      13: \"saturation\",\n      14: \"color\",\n      15: \"luminosity\"\n    };\n    return function (mode) {\n      return blendModeEnums[mode] || \"\";\n    };\n  }();\n  /* global createTypedArray */\n\n  /*!\r\n   Transformation Matrix v2.0\r\n   (c) Epistemex 2014-2015\r\n   www.epistemex.com\r\n   By Ken Fyrstenberg\r\n   Contributions by leeoniya.\r\n   License: MIT, header required.\r\n   */\n\n  /**\r\n   * 2D transformation matrix object initialized with identity matrix.\r\n   *\r\n   * The matrix can synchronize a canvas context by supplying the context\r\n   * as an argument, or later apply current absolute transform to an\r\n   * existing context.\r\n   *\r\n   * All values are handled as floating point values.\r\n   *\r\n   * @param {CanvasRenderingContext2D} [context] - Optional context to sync with Matrix\r\n   * @prop {number} a - scale x\r\n   * @prop {number} b - shear y\r\n   * @prop {number} c - shear x\r\n   * @prop {number} d - scale y\r\n   * @prop {number} e - translate x\r\n   * @prop {number} f - translate y\r\n   * @prop {CanvasRenderingContext2D|null} [context=null] - set or get current canvas context\r\n   * @constructor\r\n   */\n\n\n  var Matrix = function () {\n    var _cos = Math.cos;\n    var _sin = Math.sin;\n    var _tan = Math.tan;\n    var _rnd = Math.round;\n\n    function reset() {\n      (this || _global).props[0] = 1;\n      (this || _global).props[1] = 0;\n      (this || _global).props[2] = 0;\n      (this || _global).props[3] = 0;\n      (this || _global).props[4] = 0;\n      (this || _global).props[5] = 1;\n      (this || _global).props[6] = 0;\n      (this || _global).props[7] = 0;\n      (this || _global).props[8] = 0;\n      (this || _global).props[9] = 0;\n      (this || _global).props[10] = 1;\n      (this || _global).props[11] = 0;\n      (this || _global).props[12] = 0;\n      (this || _global).props[13] = 0;\n      (this || _global).props[14] = 0;\n      (this || _global).props[15] = 1;\n      return this || _global;\n    }\n\n    function rotate(angle) {\n      if (angle === 0) {\n        return this || _global;\n      }\n\n      var mCos = _cos(angle);\n\n      var mSin = _sin(angle);\n\n      return this._t(mCos, -mSin, 0, 0, mSin, mCos, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1);\n    }\n\n    function rotateX(angle) {\n      if (angle === 0) {\n        return this || _global;\n      }\n\n      var mCos = _cos(angle);\n\n      var mSin = _sin(angle);\n\n      return this._t(1, 0, 0, 0, 0, mCos, -mSin, 0, 0, mSin, mCos, 0, 0, 0, 0, 1);\n    }\n\n    function rotateY(angle) {\n      if (angle === 0) {\n        return this || _global;\n      }\n\n      var mCos = _cos(angle);\n\n      var mSin = _sin(angle);\n\n      return this._t(mCos, 0, mSin, 0, 0, 1, 0, 0, -mSin, 0, mCos, 0, 0, 0, 0, 1);\n    }\n\n    function rotateZ(angle) {\n      if (angle === 0) {\n        return this || _global;\n      }\n\n      var mCos = _cos(angle);\n\n      var mSin = _sin(angle);\n\n      return this._t(mCos, -mSin, 0, 0, mSin, mCos, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1);\n    }\n\n    function shear(sx, sy) {\n      return this._t(1, sy, sx, 1, 0, 0);\n    }\n\n    function skew(ax, ay) {\n      return this.shear(_tan(ax), _tan(ay));\n    }\n\n    function skewFromAxis(ax, angle) {\n      var mCos = _cos(angle);\n\n      var mSin = _sin(angle);\n\n      return this._t(mCos, mSin, 0, 0, -mSin, mCos, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)._t(1, 0, 0, 0, _tan(ax), 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)._t(mCos, -mSin, 0, 0, mSin, mCos, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1); // return this._t(mCos, mSin, -mSin, mCos, 0, 0)._t(1, 0, _tan(ax), 1, 0, 0)._t(mCos, -mSin, mSin, mCos, 0, 0);\n    }\n\n    function scale(sx, sy, sz) {\n      if (!sz && sz !== 0) {\n        sz = 1;\n      }\n\n      if (sx === 1 && sy === 1 && sz === 1) {\n        return this || _global;\n      }\n\n      return this._t(sx, 0, 0, 0, 0, sy, 0, 0, 0, 0, sz, 0, 0, 0, 0, 1);\n    }\n\n    function setTransform(a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p) {\n      (this || _global).props[0] = a;\n      (this || _global).props[1] = b;\n      (this || _global).props[2] = c;\n      (this || _global).props[3] = d;\n      (this || _global).props[4] = e;\n      (this || _global).props[5] = f;\n      (this || _global).props[6] = g;\n      (this || _global).props[7] = h;\n      (this || _global).props[8] = i;\n      (this || _global).props[9] = j;\n      (this || _global).props[10] = k;\n      (this || _global).props[11] = l;\n      (this || _global).props[12] = m;\n      (this || _global).props[13] = n;\n      (this || _global).props[14] = o;\n      (this || _global).props[15] = p;\n      return this || _global;\n    }\n\n    function translate(tx, ty, tz) {\n      tz = tz || 0;\n\n      if (tx !== 0 || ty !== 0 || tz !== 0) {\n        return this._t(1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, tx, ty, tz, 1);\n      }\n\n      return this || _global;\n    }\n\n    function transform(a2, b2, c2, d2, e2, f2, g2, h2, i2, j2, k2, l2, m2, n2, o2, p2) {\n      var _p = (this || _global).props;\n\n      if (a2 === 1 && b2 === 0 && c2 === 0 && d2 === 0 && e2 === 0 && f2 === 1 && g2 === 0 && h2 === 0 && i2 === 0 && j2 === 0 && k2 === 1 && l2 === 0) {\n        // NOTE: commenting this condition because TurboFan deoptimizes code when present\n        // if(m2 !== 0 || n2 !== 0 || o2 !== 0){\n        _p[12] = _p[12] * a2 + _p[15] * m2;\n        _p[13] = _p[13] * f2 + _p[15] * n2;\n        _p[14] = _p[14] * k2 + _p[15] * o2;\n        _p[15] *= p2; // }\n\n        (this || _global)._identityCalculated = false;\n        return this || _global;\n      }\n\n      var a1 = _p[0];\n      var b1 = _p[1];\n      var c1 = _p[2];\n      var d1 = _p[3];\n      var e1 = _p[4];\n      var f1 = _p[5];\n      var g1 = _p[6];\n      var h1 = _p[7];\n      var i1 = _p[8];\n      var j1 = _p[9];\n      var k1 = _p[10];\n      var l1 = _p[11];\n      var m1 = _p[12];\n      var n1 = _p[13];\n      var o1 = _p[14];\n      var p1 = _p[15];\n      /* matrix order (canvas compatible):\r\n           * ace\r\n           * bdf\r\n           * 001\r\n           */\n\n      _p[0] = a1 * a2 + b1 * e2 + c1 * i2 + d1 * m2;\n      _p[1] = a1 * b2 + b1 * f2 + c1 * j2 + d1 * n2;\n      _p[2] = a1 * c2 + b1 * g2 + c1 * k2 + d1 * o2;\n      _p[3] = a1 * d2 + b1 * h2 + c1 * l2 + d1 * p2;\n      _p[4] = e1 * a2 + f1 * e2 + g1 * i2 + h1 * m2;\n      _p[5] = e1 * b2 + f1 * f2 + g1 * j2 + h1 * n2;\n      _p[6] = e1 * c2 + f1 * g2 + g1 * k2 + h1 * o2;\n      _p[7] = e1 * d2 + f1 * h2 + g1 * l2 + h1 * p2;\n      _p[8] = i1 * a2 + j1 * e2 + k1 * i2 + l1 * m2;\n      _p[9] = i1 * b2 + j1 * f2 + k1 * j2 + l1 * n2;\n      _p[10] = i1 * c2 + j1 * g2 + k1 * k2 + l1 * o2;\n      _p[11] = i1 * d2 + j1 * h2 + k1 * l2 + l1 * p2;\n      _p[12] = m1 * a2 + n1 * e2 + o1 * i2 + p1 * m2;\n      _p[13] = m1 * b2 + n1 * f2 + o1 * j2 + p1 * n2;\n      _p[14] = m1 * c2 + n1 * g2 + o1 * k2 + p1 * o2;\n      _p[15] = m1 * d2 + n1 * h2 + o1 * l2 + p1 * p2;\n      (this || _global)._identityCalculated = false;\n      return this || _global;\n    }\n\n    function isIdentity() {\n      if (!(this || _global)._identityCalculated) {\n        (this || _global)._identity = !((this || _global).props[0] !== 1 || (this || _global).props[1] !== 0 || (this || _global).props[2] !== 0 || (this || _global).props[3] !== 0 || (this || _global).props[4] !== 0 || (this || _global).props[5] !== 1 || (this || _global).props[6] !== 0 || (this || _global).props[7] !== 0 || (this || _global).props[8] !== 0 || (this || _global).props[9] !== 0 || (this || _global).props[10] !== 1 || (this || _global).props[11] !== 0 || (this || _global).props[12] !== 0 || (this || _global).props[13] !== 0 || (this || _global).props[14] !== 0 || (this || _global).props[15] !== 1);\n        (this || _global)._identityCalculated = true;\n      }\n\n      return (this || _global)._identity;\n    }\n\n    function equals(matr) {\n      var i = 0;\n\n      while (i < 16) {\n        if (matr.props[i] !== (this || _global).props[i]) {\n          return false;\n        }\n\n        i += 1;\n      }\n\n      return true;\n    }\n\n    function clone(matr) {\n      var i;\n\n      for (i = 0; i < 16; i += 1) {\n        matr.props[i] = (this || _global).props[i];\n      }\n\n      return matr;\n    }\n\n    function cloneFromProps(props) {\n      var i;\n\n      for (i = 0; i < 16; i += 1) {\n        (this || _global).props[i] = props[i];\n      }\n    }\n\n    function applyToPoint(x, y, z) {\n      return {\n        x: x * (this || _global).props[0] + y * (this || _global).props[4] + z * (this || _global).props[8] + (this || _global).props[12],\n        y: x * (this || _global).props[1] + y * (this || _global).props[5] + z * (this || _global).props[9] + (this || _global).props[13],\n        z: x * (this || _global).props[2] + y * (this || _global).props[6] + z * (this || _global).props[10] + (this || _global).props[14]\n      };\n      /* return {\r\n           x: x * me.a + y * me.c + me.e,\r\n           y: x * me.b + y * me.d + me.f\r\n           }; */\n    }\n\n    function applyToX(x, y, z) {\n      return x * (this || _global).props[0] + y * (this || _global).props[4] + z * (this || _global).props[8] + (this || _global).props[12];\n    }\n\n    function applyToY(x, y, z) {\n      return x * (this || _global).props[1] + y * (this || _global).props[5] + z * (this || _global).props[9] + (this || _global).props[13];\n    }\n\n    function applyToZ(x, y, z) {\n      return x * (this || _global).props[2] + y * (this || _global).props[6] + z * (this || _global).props[10] + (this || _global).props[14];\n    }\n\n    function getInverseMatrix() {\n      var determinant = (this || _global).props[0] * (this || _global).props[5] - (this || _global).props[1] * (this || _global).props[4];\n      var a = (this || _global).props[5] / determinant;\n      var b = -(this || _global).props[1] / determinant;\n      var c = -(this || _global).props[4] / determinant;\n      var d = (this || _global).props[0] / determinant;\n      var e = ((this || _global).props[4] * (this || _global).props[13] - (this || _global).props[5] * (this || _global).props[12]) / determinant;\n      var f = -((this || _global).props[0] * (this || _global).props[13] - (this || _global).props[1] * (this || _global).props[12]) / determinant;\n      var inverseMatrix = new Matrix();\n      inverseMatrix.props[0] = a;\n      inverseMatrix.props[1] = b;\n      inverseMatrix.props[4] = c;\n      inverseMatrix.props[5] = d;\n      inverseMatrix.props[12] = e;\n      inverseMatrix.props[13] = f;\n      return inverseMatrix;\n    }\n\n    function inversePoint(pt) {\n      var inverseMatrix = this.getInverseMatrix();\n      return inverseMatrix.applyToPointArray(pt[0], pt[1], pt[2] || 0);\n    }\n\n    function inversePoints(pts) {\n      var i;\n      var len = pts.length;\n      var retPts = [];\n\n      for (i = 0; i < len; i += 1) {\n        retPts[i] = inversePoint(pts[i]);\n      }\n\n      return retPts;\n    }\n\n    function applyToTriplePoints(pt1, pt2, pt3) {\n      var arr = createTypedArray(\"float32\", 6);\n\n      if (this.isIdentity()) {\n        arr[0] = pt1[0];\n        arr[1] = pt1[1];\n        arr[2] = pt2[0];\n        arr[3] = pt2[1];\n        arr[4] = pt3[0];\n        arr[5] = pt3[1];\n      } else {\n        var p0 = (this || _global).props[0];\n        var p1 = (this || _global).props[1];\n        var p4 = (this || _global).props[4];\n        var p5 = (this || _global).props[5];\n        var p12 = (this || _global).props[12];\n        var p13 = (this || _global).props[13];\n        arr[0] = pt1[0] * p0 + pt1[1] * p4 + p12;\n        arr[1] = pt1[0] * p1 + pt1[1] * p5 + p13;\n        arr[2] = pt2[0] * p0 + pt2[1] * p4 + p12;\n        arr[3] = pt2[0] * p1 + pt2[1] * p5 + p13;\n        arr[4] = pt3[0] * p0 + pt3[1] * p4 + p12;\n        arr[5] = pt3[0] * p1 + pt3[1] * p5 + p13;\n      }\n\n      return arr;\n    }\n\n    function applyToPointArray(x, y, z) {\n      var arr;\n\n      if (this.isIdentity()) {\n        arr = [x, y, z];\n      } else {\n        arr = [x * (this || _global).props[0] + y * (this || _global).props[4] + z * (this || _global).props[8] + (this || _global).props[12], x * (this || _global).props[1] + y * (this || _global).props[5] + z * (this || _global).props[9] + (this || _global).props[13], x * (this || _global).props[2] + y * (this || _global).props[6] + z * (this || _global).props[10] + (this || _global).props[14]];\n      }\n\n      return arr;\n    }\n\n    function applyToPointStringified(x, y) {\n      if (this.isIdentity()) {\n        return x + \",\" + y;\n      }\n\n      var _p = (this || _global).props;\n      return Math.round((x * _p[0] + y * _p[4] + _p[12]) * 100) / 100 + \",\" + Math.round((x * _p[1] + y * _p[5] + _p[13]) * 100) / 100;\n    }\n\n    function toCSS() {\n      // Doesn't make much sense to add this optimization. If it is an identity matrix, it's very likely this will get called only once since it won't be keyframed.\n\n      /* if(this.isIdentity()) {\r\n              return '';\r\n          } */\n      var i = 0;\n      var props = (this || _global).props;\n      var cssValue = \"matrix3d(\";\n      var v = 10000;\n\n      while (i < 16) {\n        cssValue += _rnd(props[i] * v) / v;\n        cssValue += i === 15 ? \")\" : \",\";\n        i += 1;\n      }\n\n      return cssValue;\n    }\n\n    function roundMatrixProperty(val) {\n      var v = 10000;\n\n      if (val < 0.000001 && val > 0 || val > -0.000001 && val < 0) {\n        return _rnd(val * v) / v;\n      }\n\n      return val;\n    }\n\n    function to2dCSS() {\n      // Doesn't make much sense to add this optimization. If it is an identity matrix, it's very likely this will get called only once since it won't be keyframed.\n\n      /* if(this.isIdentity()) {\r\n              return '';\r\n          } */\n      var props = (this || _global).props;\n\n      var _a = roundMatrixProperty(props[0]);\n\n      var _b = roundMatrixProperty(props[1]);\n\n      var _c = roundMatrixProperty(props[4]);\n\n      var _d = roundMatrixProperty(props[5]);\n\n      var _e = roundMatrixProperty(props[12]);\n\n      var _f = roundMatrixProperty(props[13]);\n\n      return \"matrix(\" + _a + \",\" + _b + \",\" + _c + \",\" + _d + \",\" + _e + \",\" + _f + \")\";\n    }\n\n    return function () {\n      (this || _global).reset = reset;\n      (this || _global).rotate = rotate;\n      (this || _global).rotateX = rotateX;\n      (this || _global).rotateY = rotateY;\n      (this || _global).rotateZ = rotateZ;\n      (this || _global).skew = skew;\n      (this || _global).skewFromAxis = skewFromAxis;\n      (this || _global).shear = shear;\n      (this || _global).scale = scale;\n      (this || _global).setTransform = setTransform;\n      (this || _global).translate = translate;\n      (this || _global).transform = transform;\n      (this || _global).applyToPoint = applyToPoint;\n      (this || _global).applyToX = applyToX;\n      (this || _global).applyToY = applyToY;\n      (this || _global).applyToZ = applyToZ;\n      (this || _global).applyToPointArray = applyToPointArray;\n      (this || _global).applyToTriplePoints = applyToTriplePoints;\n      (this || _global).applyToPointStringified = applyToPointStringified;\n      (this || _global).toCSS = toCSS;\n      (this || _global).to2dCSS = to2dCSS;\n      (this || _global).clone = clone;\n      (this || _global).cloneFromProps = cloneFromProps;\n      (this || _global).equals = equals;\n      (this || _global).inversePoints = inversePoints;\n      (this || _global).inversePoint = inversePoint;\n      (this || _global).getInverseMatrix = getInverseMatrix;\n      (this || _global)._t = (this || _global).transform;\n      (this || _global).isIdentity = isIdentity;\n      (this || _global)._identity = true;\n      (this || _global)._identityCalculated = false;\n      (this || _global).props = createTypedArray(\"float32\", 16);\n      this.reset();\n    };\n  }();\n  /* eslint-disable */\n\n  /*\r\n   Copyright 2014 David Bau.\r\n  \r\n   Permission is hereby granted, free of charge, to any person obtaining\r\n   a copy of this software and associated documentation files (the\r\n   \"Software\"), to deal in the Software without restriction, including\r\n   without limitation the rights to use, copy, modify, merge, publish,\r\n   distribute, sublicense, and/or sell copies of the Software, and to\r\n   permit persons to whom the Software is furnished to do so, subject to\r\n   the following conditions:\r\n  \r\n   The above copyright notice and this permission notice shall be\r\n   included in all copies or substantial portions of the Software.\r\n  \r\n   THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND,\r\n   EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\r\n   MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.\r\n   IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY\r\n   CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,\r\n   TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE\r\n   SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\r\n  \r\n   */\n\n\n  (function (pool, math) {\n    //\n    // The following constants are related to IEEE 754 limits.\n    //\n    var global = this || _global,\n        width = 256,\n        // each RC4 output is 0 <= x < 256\n    chunks = 6,\n        // at least six RC4 outputs for each double\n    digits = 52,\n        // there are 52 significant digits in a double\n    rngname = \"random\",\n        // rngname: name for Math.random and Math.seedrandom\n    startdenom = math.pow(width, chunks),\n        significance = math.pow(2, digits),\n        overflow = significance * 2,\n        mask = width - 1,\n        nodecrypto; // node.js crypto module, initialized at the bottom.\n    //\n    // seedrandom()\n    // This is the seedrandom function described above.\n    //\n\n    function seedrandom(seed, options, callback) {\n      var key = [];\n      options = options === true ? {\n        entropy: true\n      } : options || {}; // Flatten the seed string or build one from local entropy if needed.\n\n      var shortseed = mixkey(flatten(options.entropy ? [seed, tostring(pool)] : seed === null ? autoseed() : seed, 3), key); // Use the seed to initialize an ARC4 generator.\n\n      var arc4 = new ARC4(key); // This function returns a random double in [0, 1) that contains\n      // randomness in every bit of the mantissa of the IEEE 754 value.\n\n      var prng = function () {\n        var n = arc4.g(chunks),\n            // Start with a numerator n < 2 ^ 48\n        d = startdenom,\n            //   and denominator d = 2 ^ 48.\n        x = 0; //   and no 'extra last byte'.\n\n        while (n < significance) {\n          // Fill up all significant digits by\n          n = (n + x) * width; //   shifting numerator and\n\n          d *= width; //   denominator and generating a\n\n          x = arc4.g(1); //   new least-significant-byte.\n        }\n\n        while (n >= overflow) {\n          // To avoid rounding up, before adding\n          n /= 2; //   last byte, shift everything\n\n          d /= 2; //   right using integer math until\n\n          x >>>= 1; //   we have exactly the desired bits.\n        }\n\n        return (n + x) / d; // Form the number within [0, 1).\n      };\n\n      prng.int32 = function () {\n        return arc4.g(4) | 0;\n      };\n\n      prng.quick = function () {\n        return arc4.g(4) / 4294967296;\n      };\n\n      prng.double = prng; // Mix the randomness into accumulated entropy.\n\n      mixkey(tostring(arc4.S), pool); // Calling convention: what to return as a function of prng, seed, is_math.\n\n      return (options.pass || callback || function (prng, seed, is_math_call, state) {\n        if (state) {\n          // Load the arc4 state from the given state if it has an S array.\n          if (state.S) {\n            copy(state, arc4);\n          } // Only provide the .state method if requested via options.state.\n\n\n          prng.state = function () {\n            return copy(arc4, {});\n          };\n        } // If called as a method of Math (Math.seedrandom()), mutate\n        // Math.random because that is how seedrandom.js has worked since v1.0.\n\n\n        if (is_math_call) {\n          math[rngname] = prng;\n          return seed;\n        } // Otherwise, it is a newer calling convention, so return the\n        // prng directly.\n        else return prng;\n      })(prng, shortseed, \"global\" in options ? options.global : (this || _global) == math, options.state);\n    }\n\n    math[\"seed\" + rngname] = seedrandom; //\n    // ARC4\n    //\n    // An ARC4 implementation.  The constructor takes a key in the form of\n    // an array of at most (width) integers that should be 0 <= x < (width).\n    //\n    // The g(count) method returns a pseudorandom integer that concatenates\n    // the next (count) outputs from ARC4.  Its return value is a number x\n    // that is in the range 0 <= x < (width ^ count).\n    //\n\n    function ARC4(key) {\n      var t,\n          keylen = key.length,\n          me = this || _global,\n          i = 0,\n          j = me.i = me.j = 0,\n          s = me.S = []; // The empty key [] is treated as [0].\n\n      if (!keylen) {\n        key = [keylen++];\n      } // Set up S using the standard key scheduling algorithm.\n\n\n      while (i < width) {\n        s[i] = i++;\n      }\n\n      for (i = 0; i < width; i++) {\n        s[i] = s[j = mask & j + key[i % keylen] + (t = s[i])];\n        s[j] = t;\n      } // The \"g\" method returns the next (count) outputs as one number.\n\n\n      me.g = function (count) {\n        // Using instance members instead of closure state nearly doubles speed.\n        var t,\n            r = 0,\n            i = me.i,\n            j = me.j,\n            s = me.S;\n\n        while (count--) {\n          t = s[i = mask & i + 1];\n          r = r * width + s[mask & (s[i] = s[j = mask & j + t]) + (s[j] = t)];\n        }\n\n        me.i = i;\n        me.j = j;\n        return r; // For robust unpredictability, the function call below automatically\n        // discards an initial batch of values.  This is called RC4-drop[256].\n        // See http://google.com/search?q=rsa+fluhrer+response&btnI\n      };\n    } //\n    // copy()\n    // Copies internal state of ARC4 to or from a plain object.\n    //\n\n\n    function copy(f, t) {\n      t.i = f.i;\n      t.j = f.j;\n      t.S = f.S.slice();\n      return t;\n    } //\n    // flatten()\n    // Converts an object tree to nested arrays of strings.\n    //\n\n\n    function flatten(obj, depth) {\n      var result = [],\n          typ = typeof obj,\n          prop;\n\n      if (depth && typ == \"object\") {\n        for (prop in obj) {\n          try {\n            result.push(flatten(obj[prop], depth - 1));\n          } catch (e) {}\n        }\n      }\n\n      return result.length ? result : typ == \"string\" ? obj : obj + \"\\0\";\n    } //\n    // mixkey()\n    // Mixes a string seed into a key that is an array of integers, and\n    // returns a shortened string seed that is equivalent to the result key.\n    //\n\n\n    function mixkey(seed, key) {\n      var stringseed = seed + \"\",\n          smear,\n          j = 0;\n\n      while (j < stringseed.length) {\n        key[mask & j] = mask & (smear ^= key[mask & j] * 19) + stringseed.charCodeAt(j++);\n      }\n\n      return tostring(key);\n    } //\n    // autoseed()\n    // Returns an object for autoseeding, using window.crypto and Node crypto\n    // module if available.\n    //\n\n\n    function autoseed() {\n      try {\n        if (nodecrypto) {\n          return tostring(nodecrypto.randomBytes(width));\n        }\n\n        var out = new Uint8Array(width);\n        (global.crypto || global.msCrypto).getRandomValues(out);\n        return tostring(out);\n      } catch (e) {\n        var browser = global.navigator,\n            plugins = browser && browser.plugins;\n        return [+new Date(), global, plugins, global.screen, tostring(pool)];\n      }\n    } //\n    // tostring()\n    // Converts an array of charcodes to a string\n    //\n\n\n    function tostring(a) {\n      return String.fromCharCode.apply(0, a);\n    } //\n    // When seedrandom.js is loaded, we immediately mix a few bits\n    // from the built-in RNG into the entropy pool.  Because we do\n    // not want to interfere with deterministic PRNG state later,\n    // seedrandom will not call math.random on its own again after\n    // initialization.\n    //\n\n\n    mixkey(math.random(), pool); //\n    // Nodejs and AMD support: export the implementation as a module using\n    // either convention.\n    //\n    // End anonymous scope, and pass initial values.\n  })([], // pool: entropy pool starts empty\n  BMMath // math: package containing random, pow, and seedrandom\n  );\n  /* eslint-disable */\n\n\n  var BezierFactory = function () {\n    /**\r\n       * BezierEasing - use bezier curve for transition easing function\r\n       * by Gaëtan Renaudeau 2014 - 2015 – MIT License\r\n       *\r\n       * Credits: is based on Firefox's nsSMILKeySpline.cpp\r\n       * Usage:\r\n       * var spline = BezierEasing([ 0.25, 0.1, 0.25, 1.0 ])\r\n       * spline.get(x) => returns the easing value | x must be in [0, 1] range\r\n       *\r\n       */\n    var ob = {};\n    ob.getBezierEasing = getBezierEasing;\n    var beziers = {};\n\n    function getBezierEasing(a, b, c, d, nm) {\n      var str = nm || (\"bez_\" + a + \"_\" + b + \"_\" + c + \"_\" + d).replace(/\\./g, \"p\");\n\n      if (beziers[str]) {\n        return beziers[str];\n      }\n\n      var bezEasing = new BezierEasing([a, b, c, d]);\n      beziers[str] = bezEasing;\n      return bezEasing;\n    } // These values are established by empiricism with tests (tradeoff: performance VS precision)\n\n\n    var NEWTON_ITERATIONS = 4;\n    var NEWTON_MIN_SLOPE = 0.001;\n    var SUBDIVISION_PRECISION = 1e-7;\n    var SUBDIVISION_MAX_ITERATIONS = 10;\n    var kSplineTableSize = 11;\n    var kSampleStepSize = 1 / (kSplineTableSize - 1);\n    var float32ArraySupported = typeof Float32Array === \"function\";\n\n    function A(aA1, aA2) {\n      return 1 - 3 * aA2 + 3 * aA1;\n    }\n\n    function B(aA1, aA2) {\n      return 3 * aA2 - 6 * aA1;\n    }\n\n    function C(aA1) {\n      return 3 * aA1;\n    } // Returns x(t) given t, x1, and x2, or y(t) given t, y1, and y2.\n\n\n    function calcBezier(aT, aA1, aA2) {\n      return ((A(aA1, aA2) * aT + B(aA1, aA2)) * aT + C(aA1)) * aT;\n    } // Returns dx/dt given t, x1, and x2, or dy/dt given t, y1, and y2.\n\n\n    function getSlope(aT, aA1, aA2) {\n      return 3 * A(aA1, aA2) * aT * aT + 2 * B(aA1, aA2) * aT + C(aA1);\n    }\n\n    function binarySubdivide(aX, aA, aB, mX1, mX2) {\n      var currentX,\n          currentT,\n          i = 0;\n\n      do {\n        currentT = aA + (aB - aA) / 2;\n        currentX = calcBezier(currentT, mX1, mX2) - aX;\n\n        if (currentX > 0) {\n          aB = currentT;\n        } else {\n          aA = currentT;\n        }\n      } while (Math.abs(currentX) > SUBDIVISION_PRECISION && ++i < SUBDIVISION_MAX_ITERATIONS);\n\n      return currentT;\n    }\n\n    function newtonRaphsonIterate(aX, aGuessT, mX1, mX2) {\n      for (var i = 0; i < NEWTON_ITERATIONS; ++i) {\n        var currentSlope = getSlope(aGuessT, mX1, mX2);\n        if (currentSlope === 0) return aGuessT;\n        var currentX = calcBezier(aGuessT, mX1, mX2) - aX;\n        aGuessT -= currentX / currentSlope;\n      }\n\n      return aGuessT;\n    }\n    /**\r\n       * points is an array of [ mX1, mY1, mX2, mY2 ]\r\n       */\n\n\n    function BezierEasing(points) {\n      (this || _global)._p = points;\n      (this || _global)._mSampleValues = float32ArraySupported ? new Float32Array(kSplineTableSize) : new Array(kSplineTableSize);\n      (this || _global)._precomputed = false;\n      (this || _global).get = (this || _global).get.bind(this || _global);\n    }\n\n    BezierEasing.prototype = {\n      get: function (x) {\n        var mX1 = (this || _global)._p[0],\n            mY1 = (this || _global)._p[1],\n            mX2 = (this || _global)._p[2],\n            mY2 = (this || _global)._p[3];\n        if (!(this || _global)._precomputed) this._precompute();\n        if (mX1 === mY1 && mX2 === mY2) return x; // linear\n        // Because JavaScript number are imprecise, we should guarantee the extremes are right.\n\n        if (x === 0) return 0;\n        if (x === 1) return 1;\n        return calcBezier(this._getTForX(x), mY1, mY2);\n      },\n      // Private part\n      _precompute: function () {\n        var mX1 = (this || _global)._p[0],\n            mY1 = (this || _global)._p[1],\n            mX2 = (this || _global)._p[2],\n            mY2 = (this || _global)._p[3];\n        (this || _global)._precomputed = true;\n\n        if (mX1 !== mY1 || mX2 !== mY2) {\n          this._calcSampleValues();\n        }\n      },\n      _calcSampleValues: function () {\n        var mX1 = (this || _global)._p[0],\n            mX2 = (this || _global)._p[2];\n\n        for (var i = 0; i < kSplineTableSize; ++i) {\n          (this || _global)._mSampleValues[i] = calcBezier(i * kSampleStepSize, mX1, mX2);\n        }\n      },\n\n      /**\r\n           * getTForX chose the fastest heuristic to determine the percentage value precisely from a given X projection.\r\n           */\n      _getTForX: function (aX) {\n        var mX1 = (this || _global)._p[0],\n            mX2 = (this || _global)._p[2],\n            mSampleValues = (this || _global)._mSampleValues;\n        var intervalStart = 0;\n        var currentSample = 1;\n        var lastSample = kSplineTableSize - 1;\n\n        for (; currentSample !== lastSample && mSampleValues[currentSample] <= aX; ++currentSample) {\n          intervalStart += kSampleStepSize;\n        }\n\n        --currentSample; // Interpolate to provide an initial guess for t\n\n        var dist = (aX - mSampleValues[currentSample]) / (mSampleValues[currentSample + 1] - mSampleValues[currentSample]);\n        var guessForT = intervalStart + dist * kSampleStepSize;\n        var initialSlope = getSlope(guessForT, mX1, mX2);\n\n        if (initialSlope >= NEWTON_MIN_SLOPE) {\n          return newtonRaphsonIterate(aX, guessForT, mX1, mX2);\n        }\n\n        if (initialSlope === 0) {\n          return guessForT;\n        }\n\n        return binarySubdivide(aX, intervalStart, intervalStart + kSampleStepSize, mX1, mX2);\n      }\n    };\n    return ob;\n  }();\n\n  (function () {\n    var lastTime = 0;\n    var vendors = [\"ms\", \"moz\", \"webkit\", \"o\"];\n\n    for (var x = 0; x < vendors.length && !window.requestAnimationFrame; ++x) {\n      // eslint-disable-line no-plusplus\n      window.requestAnimationFrame = window[vendors[x] + \"RequestAnimationFrame\"];\n      window.cancelAnimationFrame = window[vendors[x] + \"CancelAnimationFrame\"] || window[vendors[x] + \"CancelRequestAnimationFrame\"];\n    }\n\n    if (!window.requestAnimationFrame) {\n      window.requestAnimationFrame = function (callback) {\n        var currTime = new Date().getTime();\n        var timeToCall = Math.max(0, 16 - (currTime - lastTime));\n        var id = setTimeout(function () {\n          callback(currTime + timeToCall);\n        }, timeToCall);\n        lastTime = currTime + timeToCall;\n        return id;\n      };\n    }\n\n    if (!window.cancelAnimationFrame) {\n      window.cancelAnimationFrame = function (id) {\n        clearTimeout(id);\n      };\n    }\n  })();\n  /* exported extendPrototype, getDescriptor, createProxyFunction */\n\n\n  function extendPrototype(sources, destination) {\n    var i;\n    var len = sources.length;\n    var sourcePrototype;\n\n    for (i = 0; i < len; i += 1) {\n      sourcePrototype = sources[i].prototype;\n\n      for (var attr in sourcePrototype) {\n        if (Object.prototype.hasOwnProperty.call(sourcePrototype, attr)) destination.prototype[attr] = sourcePrototype[attr];\n      }\n    }\n  }\n\n  function getDescriptor(object, prop) {\n    return Object.getOwnPropertyDescriptor(object, prop);\n  }\n\n  function createProxyFunction(prototype) {\n    function ProxyFunction() {}\n\n    ProxyFunction.prototype = prototype;\n    return ProxyFunction;\n  }\n  /* global segmentsLengthPool, defaultCurveSegments, createSizedArray, bmPow, bmSqrt, bmFloor, createTypedArray, bezierLengthPool */\n\n  /* exported bez */\n\n\n  function bezFunction() {\n    var math = Math;\n\n    function pointOnLine2D(x1, y1, x2, y2, x3, y3) {\n      var det1 = x1 * y2 + y1 * x3 + x2 * y3 - x3 * y2 - y3 * x1 - x2 * y1;\n      return det1 > -0.001 && det1 < 0.001;\n    }\n\n    function pointOnLine3D(x1, y1, z1, x2, y2, z2, x3, y3, z3) {\n      if (z1 === 0 && z2 === 0 && z3 === 0) {\n        return pointOnLine2D(x1, y1, x2, y2, x3, y3);\n      }\n\n      var dist1 = math.sqrt(math.pow(x2 - x1, 2) + math.pow(y2 - y1, 2) + math.pow(z2 - z1, 2));\n      var dist2 = math.sqrt(math.pow(x3 - x1, 2) + math.pow(y3 - y1, 2) + math.pow(z3 - z1, 2));\n      var dist3 = math.sqrt(math.pow(x3 - x2, 2) + math.pow(y3 - y2, 2) + math.pow(z3 - z2, 2));\n      var diffDist;\n\n      if (dist1 > dist2) {\n        if (dist1 > dist3) {\n          diffDist = dist1 - dist2 - dist3;\n        } else {\n          diffDist = dist3 - dist2 - dist1;\n        }\n      } else if (dist3 > dist2) {\n        diffDist = dist3 - dist2 - dist1;\n      } else {\n        diffDist = dist2 - dist1 - dist3;\n      }\n\n      return diffDist > -0.0001 && diffDist < 0.0001;\n    }\n\n    var getBezierLength = function () {\n      return function (pt1, pt2, pt3, pt4) {\n        var curveSegments = defaultCurveSegments;\n        var k;\n        var i;\n        var len;\n        var ptCoord;\n        var perc;\n        var addedLength = 0;\n        var ptDistance;\n        var point = [];\n        var lastPoint = [];\n        var lengthData = bezierLengthPool.newElement();\n        len = pt3.length;\n\n        for (k = 0; k < curveSegments; k += 1) {\n          perc = k / (curveSegments - 1);\n          ptDistance = 0;\n\n          for (i = 0; i < len; i += 1) {\n            ptCoord = bmPow(1 - perc, 3) * pt1[i] + 3 * bmPow(1 - perc, 2) * perc * pt3[i] + 3 * (1 - perc) * bmPow(perc, 2) * pt4[i] + bmPow(perc, 3) * pt2[i];\n            point[i] = ptCoord;\n\n            if (lastPoint[i] !== null) {\n              ptDistance += bmPow(point[i] - lastPoint[i], 2);\n            }\n\n            lastPoint[i] = point[i];\n          }\n\n          if (ptDistance) {\n            ptDistance = bmSqrt(ptDistance);\n            addedLength += ptDistance;\n          }\n\n          lengthData.percents[k] = perc;\n          lengthData.lengths[k] = addedLength;\n        }\n\n        lengthData.addedLength = addedLength;\n        return lengthData;\n      };\n    }();\n\n    function getSegmentsLength(shapeData) {\n      var segmentsLength = segmentsLengthPool.newElement();\n      var closed = shapeData.c;\n      var pathV = shapeData.v;\n      var pathO = shapeData.o;\n      var pathI = shapeData.i;\n      var i;\n      var len = shapeData._length;\n      var lengths = segmentsLength.lengths;\n      var totalLength = 0;\n\n      for (i = 0; i < len - 1; i += 1) {\n        lengths[i] = getBezierLength(pathV[i], pathV[i + 1], pathO[i], pathI[i + 1]);\n        totalLength += lengths[i].addedLength;\n      }\n\n      if (closed && len) {\n        lengths[i] = getBezierLength(pathV[i], pathV[0], pathO[i], pathI[0]);\n        totalLength += lengths[i].addedLength;\n      }\n\n      segmentsLength.totalLength = totalLength;\n      return segmentsLength;\n    }\n\n    function BezierData(length) {\n      (this || _global).segmentLength = 0;\n      (this || _global).points = new Array(length);\n    }\n\n    function PointData(partial, point) {\n      (this || _global).partialLength = partial;\n      (this || _global).point = point;\n    }\n\n    var buildBezierData = function () {\n      var storedData = {};\n      return function (pt1, pt2, pt3, pt4) {\n        var bezierName = (pt1[0] + \"_\" + pt1[1] + \"_\" + pt2[0] + \"_\" + pt2[1] + \"_\" + pt3[0] + \"_\" + pt3[1] + \"_\" + pt4[0] + \"_\" + pt4[1]).replace(/\\./g, \"p\");\n\n        if (!storedData[bezierName]) {\n          var curveSegments = defaultCurveSegments;\n          var k;\n          var i;\n          var len;\n          var ptCoord;\n          var perc;\n          var addedLength = 0;\n          var ptDistance;\n          var point;\n          var lastPoint = null;\n\n          if (pt1.length === 2 && (pt1[0] !== pt2[0] || pt1[1] !== pt2[1]) && pointOnLine2D(pt1[0], pt1[1], pt2[0], pt2[1], pt1[0] + pt3[0], pt1[1] + pt3[1]) && pointOnLine2D(pt1[0], pt1[1], pt2[0], pt2[1], pt2[0] + pt4[0], pt2[1] + pt4[1])) {\n            curveSegments = 2;\n          }\n\n          var bezierData = new BezierData(curveSegments);\n          len = pt3.length;\n\n          for (k = 0; k < curveSegments; k += 1) {\n            point = createSizedArray(len);\n            perc = k / (curveSegments - 1);\n            ptDistance = 0;\n\n            for (i = 0; i < len; i += 1) {\n              ptCoord = bmPow(1 - perc, 3) * pt1[i] + 3 * bmPow(1 - perc, 2) * perc * (pt1[i] + pt3[i]) + 3 * (1 - perc) * bmPow(perc, 2) * (pt2[i] + pt4[i]) + bmPow(perc, 3) * pt2[i];\n              point[i] = ptCoord;\n\n              if (lastPoint !== null) {\n                ptDistance += bmPow(point[i] - lastPoint[i], 2);\n              }\n            }\n\n            ptDistance = bmSqrt(ptDistance);\n            addedLength += ptDistance;\n            bezierData.points[k] = new PointData(ptDistance, point);\n            lastPoint = point;\n          }\n\n          bezierData.segmentLength = addedLength;\n          storedData[bezierName] = bezierData;\n        }\n\n        return storedData[bezierName];\n      };\n    }();\n\n    function getDistancePerc(perc, bezierData) {\n      var percents = bezierData.percents;\n      var lengths = bezierData.lengths;\n      var len = percents.length;\n      var initPos = bmFloor((len - 1) * perc);\n      var lengthPos = perc * bezierData.addedLength;\n      var lPerc = 0;\n\n      if (initPos === len - 1 || initPos === 0 || lengthPos === lengths[initPos]) {\n        return percents[initPos];\n      }\n\n      var dir = lengths[initPos] > lengthPos ? -1 : 1;\n      var flag = true;\n\n      while (flag) {\n        if (lengths[initPos] <= lengthPos && lengths[initPos + 1] > lengthPos) {\n          lPerc = (lengthPos - lengths[initPos]) / (lengths[initPos + 1] - lengths[initPos]);\n          flag = false;\n        } else {\n          initPos += dir;\n        }\n\n        if (initPos < 0 || initPos >= len - 1) {\n          // FIX for TypedArrays that don't store floating point values with enough accuracy\n          if (initPos === len - 1) {\n            return percents[initPos];\n          }\n\n          flag = false;\n        }\n      }\n\n      return percents[initPos] + (percents[initPos + 1] - percents[initPos]) * lPerc;\n    }\n\n    function getPointInSegment(pt1, pt2, pt3, pt4, percent, bezierData) {\n      var t1 = getDistancePerc(percent, bezierData);\n      var u1 = 1 - t1;\n      var ptX = math.round((u1 * u1 * u1 * pt1[0] + (t1 * u1 * u1 + u1 * t1 * u1 + u1 * u1 * t1) * pt3[0] + (t1 * t1 * u1 + u1 * t1 * t1 + t1 * u1 * t1) * pt4[0] + t1 * t1 * t1 * pt2[0]) * 1000) / 1000;\n      var ptY = math.round((u1 * u1 * u1 * pt1[1] + (t1 * u1 * u1 + u1 * t1 * u1 + u1 * u1 * t1) * pt3[1] + (t1 * t1 * u1 + u1 * t1 * t1 + t1 * u1 * t1) * pt4[1] + t1 * t1 * t1 * pt2[1]) * 1000) / 1000;\n      return [ptX, ptY];\n    }\n\n    var bezierSegmentPoints = createTypedArray(\"float32\", 8);\n\n    function getNewSegment(pt1, pt2, pt3, pt4, startPerc, endPerc, bezierData) {\n      if (startPerc < 0) {\n        startPerc = 0;\n      } else if (startPerc > 1) {\n        startPerc = 1;\n      }\n\n      var t0 = getDistancePerc(startPerc, bezierData);\n      endPerc = endPerc > 1 ? 1 : endPerc;\n      var t1 = getDistancePerc(endPerc, bezierData);\n      var i;\n      var len = pt1.length;\n      var u0 = 1 - t0;\n      var u1 = 1 - t1;\n      var u0u0u0 = u0 * u0 * u0;\n      var t0u0u0_3 = t0 * u0 * u0 * 3; // eslint-disable-line camelcase\n\n      var t0t0u0_3 = t0 * t0 * u0 * 3; // eslint-disable-line camelcase\n\n      var t0t0t0 = t0 * t0 * t0; //\n\n      var u0u0u1 = u0 * u0 * u1;\n      var t0u0u1_3 = t0 * u0 * u1 + u0 * t0 * u1 + u0 * u0 * t1; // eslint-disable-line camelcase\n\n      var t0t0u1_3 = t0 * t0 * u1 + u0 * t0 * t1 + t0 * u0 * t1; // eslint-disable-line camelcase\n\n      var t0t0t1 = t0 * t0 * t1; //\n\n      var u0u1u1 = u0 * u1 * u1;\n      var t0u1u1_3 = t0 * u1 * u1 + u0 * t1 * u1 + u0 * u1 * t1; // eslint-disable-line camelcase\n\n      var t0t1u1_3 = t0 * t1 * u1 + u0 * t1 * t1 + t0 * u1 * t1; // eslint-disable-line camelcase\n\n      var t0t1t1 = t0 * t1 * t1; //\n\n      var u1u1u1 = u1 * u1 * u1;\n      var t1u1u1_3 = t1 * u1 * u1 + u1 * t1 * u1 + u1 * u1 * t1; // eslint-disable-line camelcase\n\n      var t1t1u1_3 = t1 * t1 * u1 + u1 * t1 * t1 + t1 * u1 * t1; // eslint-disable-line camelcase\n\n      var t1t1t1 = t1 * t1 * t1;\n\n      for (i = 0; i < len; i += 1) {\n        bezierSegmentPoints[i * 4] = math.round((u0u0u0 * pt1[i] + t0u0u0_3 * pt3[i] + t0t0u0_3 * pt4[i] + t0t0t0 * pt2[i]) * 1000) / 1000; // eslint-disable-line camelcase\n\n        bezierSegmentPoints[i * 4 + 1] = math.round((u0u0u1 * pt1[i] + t0u0u1_3 * pt3[i] + t0t0u1_3 * pt4[i] + t0t0t1 * pt2[i]) * 1000) / 1000; // eslint-disable-line camelcase\n\n        bezierSegmentPoints[i * 4 + 2] = math.round((u0u1u1 * pt1[i] + t0u1u1_3 * pt3[i] + t0t1u1_3 * pt4[i] + t0t1t1 * pt2[i]) * 1000) / 1000; // eslint-disable-line camelcase\n\n        bezierSegmentPoints[i * 4 + 3] = math.round((u1u1u1 * pt1[i] + t1u1u1_3 * pt3[i] + t1t1u1_3 * pt4[i] + t1t1t1 * pt2[i]) * 1000) / 1000; // eslint-disable-line camelcase\n      }\n\n      return bezierSegmentPoints;\n    }\n\n    return {\n      getSegmentsLength: getSegmentsLength,\n      getNewSegment: getNewSegment,\n      getPointInSegment: getPointInSegment,\n      buildBezierData: buildBezierData,\n      pointOnLine2D: pointOnLine2D,\n      pointOnLine3D: pointOnLine3D\n    };\n  }\n\n  var bez = bezFunction();\n  /* exported dataManager */\n\n  function dataFunctionManager() {\n    // var tCanvasHelper = createTag('canvas').getContext('2d');\n    function completeLayers(layers, comps, fontManager) {\n      var layerData;\n      var i;\n      var len = layers.length;\n      var j;\n      var jLen;\n      var k;\n      var kLen;\n\n      for (i = 0; i < len; i += 1) {\n        layerData = layers[i];\n\n        if (\"ks\" in layerData && !layerData.completed) {\n          layerData.completed = true;\n\n          if (layerData.tt) {\n            layers[i - 1].td = layerData.tt;\n          }\n\n          if (layerData.hasMask) {\n            var maskProps = layerData.masksProperties;\n            jLen = maskProps.length;\n\n            for (j = 0; j < jLen; j += 1) {\n              if (maskProps[j].pt.k.i) {\n                convertPathsToAbsoluteValues(maskProps[j].pt.k);\n              } else {\n                kLen = maskProps[j].pt.k.length;\n\n                for (k = 0; k < kLen; k += 1) {\n                  if (maskProps[j].pt.k[k].s) {\n                    convertPathsToAbsoluteValues(maskProps[j].pt.k[k].s[0]);\n                  }\n\n                  if (maskProps[j].pt.k[k].e) {\n                    convertPathsToAbsoluteValues(maskProps[j].pt.k[k].e[0]);\n                  }\n                }\n              }\n            }\n          }\n\n          if (layerData.ty === 0) {\n            layerData.layers = findCompLayers(layerData.refId, comps);\n            completeLayers(layerData.layers, comps, fontManager);\n          } else if (layerData.ty === 4) {\n            completeShapes(layerData.shapes);\n          } else if (layerData.ty === 5) {\n            completeText(layerData, fontManager);\n          }\n        }\n      }\n    }\n\n    function findCompLayers(id, comps) {\n      var i = 0;\n      var len = comps.length;\n\n      while (i < len) {\n        if (comps[i].id === id) {\n          if (!comps[i].layers.__used) {\n            comps[i].layers.__used = true;\n            return comps[i].layers;\n          }\n\n          return JSON.parse(JSON.stringify(comps[i].layers));\n        }\n\n        i += 1;\n      }\n\n      return null;\n    }\n\n    function completeShapes(arr) {\n      var i;\n      var len = arr.length;\n      var j;\n      var jLen;\n\n      for (i = len - 1; i >= 0; i -= 1) {\n        if (arr[i].ty === \"sh\") {\n          if (arr[i].ks.k.i) {\n            convertPathsToAbsoluteValues(arr[i].ks.k);\n          } else {\n            jLen = arr[i].ks.k.length;\n\n            for (j = 0; j < jLen; j += 1) {\n              if (arr[i].ks.k[j].s) {\n                convertPathsToAbsoluteValues(arr[i].ks.k[j].s[0]);\n              }\n\n              if (arr[i].ks.k[j].e) {\n                convertPathsToAbsoluteValues(arr[i].ks.k[j].e[0]);\n              }\n            }\n          }\n        } else if (arr[i].ty === \"gr\") {\n          completeShapes(arr[i].it);\n        }\n      }\n    }\n\n    function convertPathsToAbsoluteValues(path) {\n      var i;\n      var len = path.i.length;\n\n      for (i = 0; i < len; i += 1) {\n        path.i[i][0] += path.v[i][0];\n        path.i[i][1] += path.v[i][1];\n        path.o[i][0] += path.v[i][0];\n        path.o[i][1] += path.v[i][1];\n      }\n    }\n\n    function checkVersion(minimum, animVersionString) {\n      var animVersion = animVersionString ? animVersionString.split(\".\") : [100, 100, 100];\n\n      if (minimum[0] > animVersion[0]) {\n        return true;\n      }\n\n      if (animVersion[0] > minimum[0]) {\n        return false;\n      }\n\n      if (minimum[1] > animVersion[1]) {\n        return true;\n      }\n\n      if (animVersion[1] > minimum[1]) {\n        return false;\n      }\n\n      if (minimum[2] > animVersion[2]) {\n        return true;\n      }\n\n      if (animVersion[2] > minimum[2]) {\n        return false;\n      }\n\n      return null;\n    }\n\n    var checkText = function () {\n      var minimumVersion = [4, 4, 14];\n\n      function updateTextLayer(textLayer) {\n        var documentData = textLayer.t.d;\n        textLayer.t.d = {\n          k: [{\n            s: documentData,\n            t: 0\n          }]\n        };\n      }\n\n      function iterateLayers(layers) {\n        var i;\n        var len = layers.length;\n\n        for (i = 0; i < len; i += 1) {\n          if (layers[i].ty === 5) {\n            updateTextLayer(layers[i]);\n          }\n        }\n      }\n\n      return function (animationData) {\n        if (checkVersion(minimumVersion, animationData.v)) {\n          iterateLayers(animationData.layers);\n\n          if (animationData.assets) {\n            var i;\n            var len = animationData.assets.length;\n\n            for (i = 0; i < len; i += 1) {\n              if (animationData.assets[i].layers) {\n                iterateLayers(animationData.assets[i].layers);\n              }\n            }\n          }\n        }\n      };\n    }();\n\n    var checkChars = function () {\n      var minimumVersion = [4, 7, 99];\n      return function (animationData) {\n        if (animationData.chars && !checkVersion(minimumVersion, animationData.v)) {\n          var i;\n          var len = animationData.chars.length;\n          var j;\n          var jLen;\n          var pathData;\n          var paths;\n\n          for (i = 0; i < len; i += 1) {\n            if (animationData.chars[i].data && animationData.chars[i].data.shapes) {\n              paths = animationData.chars[i].data.shapes[0].it;\n              jLen = paths.length;\n\n              for (j = 0; j < jLen; j += 1) {\n                pathData = paths[j].ks.k;\n\n                if (!pathData.__converted) {\n                  convertPathsToAbsoluteValues(paths[j].ks.k);\n                  pathData.__converted = true;\n                }\n              }\n            }\n          }\n        }\n      };\n    }();\n\n    var checkColors = function () {\n      var minimumVersion = [4, 1, 9];\n\n      function iterateShapes(shapes) {\n        var i;\n        var len = shapes.length;\n        var j;\n        var jLen;\n\n        for (i = 0; i < len; i += 1) {\n          if (shapes[i].ty === \"gr\") {\n            iterateShapes(shapes[i].it);\n          } else if (shapes[i].ty === \"fl\" || shapes[i].ty === \"st\") {\n            if (shapes[i].c.k && shapes[i].c.k[0].i) {\n              jLen = shapes[i].c.k.length;\n\n              for (j = 0; j < jLen; j += 1) {\n                if (shapes[i].c.k[j].s) {\n                  shapes[i].c.k[j].s[0] /= 255;\n                  shapes[i].c.k[j].s[1] /= 255;\n                  shapes[i].c.k[j].s[2] /= 255;\n                  shapes[i].c.k[j].s[3] /= 255;\n                }\n\n                if (shapes[i].c.k[j].e) {\n                  shapes[i].c.k[j].e[0] /= 255;\n                  shapes[i].c.k[j].e[1] /= 255;\n                  shapes[i].c.k[j].e[2] /= 255;\n                  shapes[i].c.k[j].e[3] /= 255;\n                }\n              }\n            } else {\n              shapes[i].c.k[0] /= 255;\n              shapes[i].c.k[1] /= 255;\n              shapes[i].c.k[2] /= 255;\n              shapes[i].c.k[3] /= 255;\n            }\n          }\n        }\n      }\n\n      function iterateLayers(layers) {\n        var i;\n        var len = layers.length;\n\n        for (i = 0; i < len; i += 1) {\n          if (layers[i].ty === 4) {\n            iterateShapes(layers[i].shapes);\n          }\n        }\n      }\n\n      return function (animationData) {\n        if (checkVersion(minimumVersion, animationData.v)) {\n          iterateLayers(animationData.layers);\n\n          if (animationData.assets) {\n            var i;\n            var len = animationData.assets.length;\n\n            for (i = 0; i < len; i += 1) {\n              if (animationData.assets[i].layers) {\n                iterateLayers(animationData.assets[i].layers);\n              }\n            }\n          }\n        }\n      };\n    }();\n\n    var checkShapes = function () {\n      var minimumVersion = [4, 4, 18];\n\n      function completeClosingShapes(arr) {\n        var i;\n        var len = arr.length;\n        var j;\n        var jLen;\n\n        for (i = len - 1; i >= 0; i -= 1) {\n          if (arr[i].ty === \"sh\") {\n            if (arr[i].ks.k.i) {\n              arr[i].ks.k.c = arr[i].closed;\n            } else {\n              jLen = arr[i].ks.k.length;\n\n              for (j = 0; j < jLen; j += 1) {\n                if (arr[i].ks.k[j].s) {\n                  arr[i].ks.k[j].s[0].c = arr[i].closed;\n                }\n\n                if (arr[i].ks.k[j].e) {\n                  arr[i].ks.k[j].e[0].c = arr[i].closed;\n                }\n              }\n            }\n          } else if (arr[i].ty === \"gr\") {\n            completeClosingShapes(arr[i].it);\n          }\n        }\n      }\n\n      function iterateLayers(layers) {\n        var layerData;\n        var i;\n        var len = layers.length;\n        var j;\n        var jLen;\n        var k;\n        var kLen;\n\n        for (i = 0; i < len; i += 1) {\n          layerData = layers[i];\n\n          if (layerData.hasMask) {\n            var maskProps = layerData.masksProperties;\n            jLen = maskProps.length;\n\n            for (j = 0; j < jLen; j += 1) {\n              if (maskProps[j].pt.k.i) {\n                maskProps[j].pt.k.c = maskProps[j].cl;\n              } else {\n                kLen = maskProps[j].pt.k.length;\n\n                for (k = 0; k < kLen; k += 1) {\n                  if (maskProps[j].pt.k[k].s) {\n                    maskProps[j].pt.k[k].s[0].c = maskProps[j].cl;\n                  }\n\n                  if (maskProps[j].pt.k[k].e) {\n                    maskProps[j].pt.k[k].e[0].c = maskProps[j].cl;\n                  }\n                }\n              }\n            }\n          }\n\n          if (layerData.ty === 4) {\n            completeClosingShapes(layerData.shapes);\n          }\n        }\n      }\n\n      return function (animationData) {\n        if (checkVersion(minimumVersion, animationData.v)) {\n          iterateLayers(animationData.layers);\n\n          if (animationData.assets) {\n            var i;\n            var len = animationData.assets.length;\n\n            for (i = 0; i < len; i += 1) {\n              if (animationData.assets[i].layers) {\n                iterateLayers(animationData.assets[i].layers);\n              }\n            }\n          }\n        }\n      };\n    }();\n\n    function completeData(animationData, fontManager) {\n      if (animationData.__complete) {\n        return;\n      }\n\n      checkColors(animationData);\n      checkText(animationData);\n      checkChars(animationData);\n      checkShapes(animationData);\n      completeLayers(animationData.layers, animationData.assets, fontManager);\n      animationData.__complete = true;\n    }\n\n    function completeText(data) {\n      if (data.t.a.length === 0 && !(\"m\" in data.t.p)) {\n        data.singleShape = true;\n      }\n    }\n\n    var moduleOb = {};\n    moduleOb.completeData = completeData;\n    moduleOb.checkColors = checkColors;\n    moduleOb.checkChars = checkChars;\n    moduleOb.checkShapes = checkShapes;\n    moduleOb.completeLayers = completeLayers;\n    return moduleOb;\n  }\n\n  var dataManager = dataFunctionManager();\n  /* exported getFontProperties */\n\n  function getFontProperties(fontData) {\n    var styles = fontData.fStyle ? fontData.fStyle.split(\" \") : [];\n    var fWeight = \"normal\";\n    var fStyle = \"normal\";\n    var len = styles.length;\n    var styleName;\n\n    for (var i = 0; i < len; i += 1) {\n      styleName = styles[i].toLowerCase();\n\n      switch (styleName) {\n        case \"italic\":\n          fStyle = \"italic\";\n          break;\n\n        case \"bold\":\n          fWeight = \"700\";\n          break;\n\n        case \"black\":\n          fWeight = \"900\";\n          break;\n\n        case \"medium\":\n          fWeight = \"500\";\n          break;\n\n        case \"regular\":\n        case \"normal\":\n          fWeight = \"400\";\n          break;\n\n        case \"light\":\n        case \"thin\":\n          fWeight = \"200\";\n          break;\n\n        default:\n          break;\n      }\n    }\n\n    return {\n      style: fStyle,\n      weight: fontData.fWeight || fWeight\n    };\n  }\n  /* global createNS, createTag, getFontProperties */\n\n  /* exported FontManager */\n\n\n  var FontManager = function () {\n    var maxWaitingTime = 5000;\n    var emptyChar = {\n      w: 0,\n      size: 0,\n      shapes: []\n    };\n    var combinedCharacters = []; // Hindi characters\n\n    combinedCharacters = combinedCharacters.concat([2304, 2305, 2306, 2307, 2362, 2363, 2364, 2364, 2366, 2367, 2368, 2369, 2370, 2371, 2372, 2373, 2374, 2375, 2376, 2377, 2378, 2379, 2380, 2381, 2382, 2383, 2387, 2388, 2389, 2390, 2391, 2402, 2403]);\n\n    function trimFontOptions(font) {\n      var familyArray = font.split(\",\");\n      var i;\n      var len = familyArray.length;\n      var enabledFamilies = [];\n\n      for (i = 0; i < len; i += 1) {\n        if (familyArray[i] !== \"sans-serif\" && familyArray[i] !== \"monospace\") {\n          enabledFamilies.push(familyArray[i]);\n        }\n      }\n\n      return enabledFamilies.join(\",\");\n    }\n\n    function setUpNode(font, family) {\n      var parentNode = createTag(\"span\"); // Node is invisible to screen readers.\n\n      parentNode.setAttribute(\"aria-hidden\", true);\n      parentNode.style.fontFamily = family;\n      var node = createTag(\"span\"); // Characters that vary significantly among different fonts\n\n      node.innerText = \"giItT1WQy@!-/#\"; // Visible - so we can measure it - but not on the screen\n\n      parentNode.style.position = \"absolute\";\n      parentNode.style.left = \"-10000px\";\n      parentNode.style.top = \"-10000px\"; // Large font size makes even subtle changes obvious\n\n      parentNode.style.fontSize = \"300px\"; // Reset any font properties\n\n      parentNode.style.fontVariant = \"normal\";\n      parentNode.style.fontStyle = \"normal\";\n      parentNode.style.fontWeight = \"normal\";\n      parentNode.style.letterSpacing = \"0\";\n      parentNode.appendChild(node);\n      document.body.appendChild(parentNode); // Remember width with no applied web font\n\n      var width = node.offsetWidth;\n      node.style.fontFamily = trimFontOptions(font) + \", \" + family;\n      return {\n        node: node,\n        w: width,\n        parent: parentNode\n      };\n    }\n\n    function checkLoadedFonts() {\n      var i;\n      var len = (this || _global).fonts.length;\n      var node;\n      var w;\n      var loadedCount = len;\n\n      for (i = 0; i < len; i += 1) {\n        if ((this || _global).fonts[i].loaded) {\n          loadedCount -= 1;\n        } else if ((this || _global).fonts[i].fOrigin === \"n\" || (this || _global).fonts[i].origin === 0) {\n          (this || _global).fonts[i].loaded = true;\n        } else {\n          node = (this || _global).fonts[i].monoCase.node;\n          w = (this || _global).fonts[i].monoCase.w;\n\n          if (node.offsetWidth !== w) {\n            loadedCount -= 1;\n            (this || _global).fonts[i].loaded = true;\n          } else {\n            node = (this || _global).fonts[i].sansCase.node;\n            w = (this || _global).fonts[i].sansCase.w;\n\n            if (node.offsetWidth !== w) {\n              loadedCount -= 1;\n              (this || _global).fonts[i].loaded = true;\n            }\n          }\n\n          if ((this || _global).fonts[i].loaded) {\n            (this || _global).fonts[i].sansCase.parent.parentNode.removeChild((this || _global).fonts[i].sansCase.parent);\n\n            (this || _global).fonts[i].monoCase.parent.parentNode.removeChild((this || _global).fonts[i].monoCase.parent);\n          }\n        }\n      }\n\n      if (loadedCount !== 0 && Date.now() - (this || _global).initTime < maxWaitingTime) {\n        setTimeout((this || _global).checkLoadedFontsBinded, 20);\n      } else {\n        setTimeout((this || _global).setIsLoadedBinded, 10);\n      }\n    }\n\n    function createHelper(def, fontData) {\n      var tHelper = createNS(\"text\");\n      tHelper.style.fontSize = \"100px\"; // tHelper.style.fontFamily = fontData.fFamily;\n\n      var fontProps = getFontProperties(fontData);\n      tHelper.setAttribute(\"font-family\", fontData.fFamily);\n      tHelper.setAttribute(\"font-style\", fontProps.style);\n      tHelper.setAttribute(\"font-weight\", fontProps.weight);\n      tHelper.textContent = \"1\";\n\n      if (fontData.fClass) {\n        tHelper.style.fontFamily = \"inherit\";\n        tHelper.setAttribute(\"class\", fontData.fClass);\n      } else {\n        tHelper.style.fontFamily = fontData.fFamily;\n      }\n\n      def.appendChild(tHelper);\n      var tCanvasHelper = createTag(\"canvas\").getContext(\"2d\");\n      tCanvasHelper.font = fontData.fWeight + \" \" + fontData.fStyle + \" 100px \" + fontData.fFamily; // tCanvasHelper.font = ' 100px '+ fontData.fFamily;\n\n      return tHelper;\n    }\n\n    function addFonts(fontData, defs) {\n      if (!fontData) {\n        (this || _global).isLoaded = true;\n        return;\n      }\n\n      if ((this || _global).chars) {\n        (this || _global).isLoaded = true;\n        (this || _global).fonts = fontData.list;\n        return;\n      }\n\n      var fontArr = fontData.list;\n      var i;\n      var len = fontArr.length;\n      var _pendingFonts = len;\n\n      for (i = 0; i < len; i += 1) {\n        var shouldLoadFont = true;\n        var loadedSelector;\n        var j;\n        fontArr[i].loaded = false;\n        fontArr[i].monoCase = setUpNode(fontArr[i].fFamily, \"monospace\");\n        fontArr[i].sansCase = setUpNode(fontArr[i].fFamily, \"sans-serif\");\n\n        if (!fontArr[i].fPath) {\n          fontArr[i].loaded = true;\n          _pendingFonts -= 1;\n        } else if (fontArr[i].fOrigin === \"p\" || fontArr[i].origin === 3) {\n          loadedSelector = document.querySelectorAll(\"style[f-forigin=\\\"p\\\"][f-family=\\\"\" + fontArr[i].fFamily + \"\\\"], style[f-origin=\\\"3\\\"][f-family=\\\"\" + fontArr[i].fFamily + \"\\\"]\");\n\n          if (loadedSelector.length > 0) {\n            shouldLoadFont = false;\n          }\n\n          if (shouldLoadFont) {\n            var s = createTag(\"style\");\n            s.setAttribute(\"f-forigin\", fontArr[i].fOrigin);\n            s.setAttribute(\"f-origin\", fontArr[i].origin);\n            s.setAttribute(\"f-family\", fontArr[i].fFamily);\n            s.type = \"text/css\";\n            s.innerText = \"@font-face {font-family: \" + fontArr[i].fFamily + \"; font-style: normal; src: url('\" + fontArr[i].fPath + \"');}\";\n            defs.appendChild(s);\n          }\n        } else if (fontArr[i].fOrigin === \"g\" || fontArr[i].origin === 1) {\n          loadedSelector = document.querySelectorAll(\"link[f-forigin=\\\"g\\\"], link[f-origin=\\\"1\\\"]\");\n\n          for (j = 0; j < loadedSelector.length; j += 1) {\n            if (loadedSelector[j].href.indexOf(fontArr[i].fPath) !== -1) {\n              // Font is already loaded\n              shouldLoadFont = false;\n            }\n          }\n\n          if (shouldLoadFont) {\n            var l = createTag(\"link\");\n            l.setAttribute(\"f-forigin\", fontArr[i].fOrigin);\n            l.setAttribute(\"f-origin\", fontArr[i].origin);\n            l.type = \"text/css\";\n            l.rel = \"stylesheet\";\n            l.href = fontArr[i].fPath;\n            document.body.appendChild(l);\n          }\n        } else if (fontArr[i].fOrigin === \"t\" || fontArr[i].origin === 2) {\n          loadedSelector = document.querySelectorAll(\"script[f-forigin=\\\"t\\\"], script[f-origin=\\\"2\\\"]\");\n\n          for (j = 0; j < loadedSelector.length; j += 1) {\n            if (fontArr[i].fPath === loadedSelector[j].src) {\n              // Font is already loaded\n              shouldLoadFont = false;\n            }\n          }\n\n          if (shouldLoadFont) {\n            var sc = createTag(\"link\");\n            sc.setAttribute(\"f-forigin\", fontArr[i].fOrigin);\n            sc.setAttribute(\"f-origin\", fontArr[i].origin);\n            sc.setAttribute(\"rel\", \"stylesheet\");\n            sc.setAttribute(\"href\", fontArr[i].fPath);\n            defs.appendChild(sc);\n          }\n        }\n\n        fontArr[i].helper = createHelper(defs, fontArr[i]);\n        fontArr[i].cache = {};\n\n        (this || _global).fonts.push(fontArr[i]);\n      }\n\n      if (_pendingFonts === 0) {\n        (this || _global).isLoaded = true;\n      } else {\n        // On some cases even if the font is loaded, it won't load correctly when measuring text on canvas.\n        // Adding this timeout seems to fix it\n        setTimeout((this || _global).checkLoadedFonts.bind(this || _global), 100);\n      }\n    }\n\n    function addChars(chars) {\n      if (!chars) {\n        return;\n      }\n\n      if (!(this || _global).chars) {\n        (this || _global).chars = [];\n      }\n\n      var i;\n      var len = chars.length;\n      var j;\n      var jLen = (this || _global).chars.length;\n      var found;\n\n      for (i = 0; i < len; i += 1) {\n        j = 0;\n        found = false;\n\n        while (j < jLen) {\n          if ((this || _global).chars[j].style === chars[i].style && (this || _global).chars[j].fFamily === chars[i].fFamily && (this || _global).chars[j].ch === chars[i].ch) {\n            found = true;\n          }\n\n          j += 1;\n        }\n\n        if (!found) {\n          (this || _global).chars.push(chars[i]);\n\n          jLen += 1;\n        }\n      }\n    }\n\n    function getCharData(char, style, font) {\n      var i = 0;\n      var len = (this || _global).chars.length;\n\n      while (i < len) {\n        if ((this || _global).chars[i].ch === char && (this || _global).chars[i].style === style && (this || _global).chars[i].fFamily === font) {\n          return (this || _global).chars[i];\n        }\n\n        i += 1;\n      }\n\n      if ((typeof char === \"string\" && char.charCodeAt(0) !== 13 || !char) && console && console.warn // eslint-disable-line no-console\n      && !(this || _global)._warned) {\n        (this || _global)._warned = true;\n        console.warn(\"Missing character from exported characters list: \", char, style, font); // eslint-disable-line no-console\n      }\n\n      return emptyChar;\n    }\n\n    function measureText(char, fontName, size) {\n      var fontData = this.getFontByName(fontName);\n      var index = char.charCodeAt(0);\n\n      if (!fontData.cache[index + 1]) {\n        var tHelper = fontData.helper; // Canvas version\n        // fontData.cache[index] = tHelper.measureText(char).width / 100;\n        // SVG version\n        // console.log(tHelper.getBBox().width)\n\n        if (char === \" \") {\n          tHelper.textContent = \"|\" + char + \"|\";\n          var doubleSize = tHelper.getComputedTextLength();\n          tHelper.textContent = \"||\";\n          var singleSize = tHelper.getComputedTextLength();\n          fontData.cache[index + 1] = (doubleSize - singleSize) / 100;\n        } else {\n          tHelper.textContent = char;\n          fontData.cache[index + 1] = tHelper.getComputedTextLength() / 100;\n        }\n      }\n\n      return fontData.cache[index + 1] * size;\n    }\n\n    function getFontByName(name) {\n      var i = 0;\n      var len = (this || _global).fonts.length;\n\n      while (i < len) {\n        if ((this || _global).fonts[i].fName === name) {\n          return (this || _global).fonts[i];\n        }\n\n        i += 1;\n      }\n\n      return (this || _global).fonts[0];\n    }\n\n    function getCombinedCharacterCodes() {\n      return combinedCharacters;\n    }\n\n    function setIsLoaded() {\n      (this || _global).isLoaded = true;\n    }\n\n    var Font = function () {\n      (this || _global).fonts = [];\n      (this || _global).chars = null;\n      (this || _global).typekitLoaded = 0;\n      (this || _global).isLoaded = false;\n      (this || _global)._warned = false;\n      (this || _global).initTime = Date.now();\n      (this || _global).setIsLoadedBinded = (this || _global).setIsLoaded.bind(this || _global);\n      (this || _global).checkLoadedFontsBinded = (this || _global).checkLoadedFonts.bind(this || _global);\n    }; // TODO: for now I'm adding these methods to the Class and not the prototype. Think of a better way to implement it.\n\n\n    Font.getCombinedCharacterCodes = getCombinedCharacterCodes;\n    var fontPrototype = {\n      addChars: addChars,\n      addFonts: addFonts,\n      getCharData: getCharData,\n      getFontByName: getFontByName,\n      measureText: measureText,\n      checkLoadedFonts: checkLoadedFonts,\n      setIsLoaded: setIsLoaded\n    };\n    Font.prototype = fontPrototype;\n    return Font;\n  }();\n  /* global initialDefaultFrame, BezierFactory, degToRads, bez, createTypedArray */\n\n  /* exported PropertyFactory */\n\n\n  var PropertyFactory = function () {\n    var initFrame = initialDefaultFrame;\n    var mathAbs = Math.abs;\n\n    function interpolateValue(frameNum, caching) {\n      var offsetTime = (this || _global).offsetTime;\n      var newValue;\n\n      if ((this || _global).propType === \"multidimensional\") {\n        newValue = createTypedArray(\"float32\", (this || _global).pv.length);\n      }\n\n      var iterationIndex = caching.lastIndex;\n      var i = iterationIndex;\n      var len = (this || _global).keyframes.length - 1;\n      var flag = true;\n      var keyData;\n      var nextKeyData;\n\n      while (flag) {\n        keyData = (this || _global).keyframes[i];\n        nextKeyData = (this || _global).keyframes[i + 1];\n\n        if (i === len - 1 && frameNum >= nextKeyData.t - offsetTime) {\n          if (keyData.h) {\n            keyData = nextKeyData;\n          }\n\n          iterationIndex = 0;\n          break;\n        }\n\n        if (nextKeyData.t - offsetTime > frameNum) {\n          iterationIndex = i;\n          break;\n        }\n\n        if (i < len - 1) {\n          i += 1;\n        } else {\n          iterationIndex = 0;\n          flag = false;\n        }\n      }\n\n      var k;\n      var kLen;\n      var perc;\n      var jLen;\n      var j;\n      var fnc;\n      var nextKeyTime = nextKeyData.t - offsetTime;\n      var keyTime = keyData.t - offsetTime;\n      var endValue;\n\n      if (keyData.to) {\n        if (!keyData.bezierData) {\n          keyData.bezierData = bez.buildBezierData(keyData.s, nextKeyData.s || keyData.e, keyData.to, keyData.ti);\n        }\n\n        var bezierData = keyData.bezierData;\n\n        if (frameNum >= nextKeyTime || frameNum < keyTime) {\n          var ind = frameNum >= nextKeyTime ? bezierData.points.length - 1 : 0;\n          kLen = bezierData.points[ind].point.length;\n\n          for (k = 0; k < kLen; k += 1) {\n            newValue[k] = bezierData.points[ind].point[k];\n          } // caching._lastKeyframeIndex = -1;\n\n        } else {\n          if (keyData.__fnct) {\n            fnc = keyData.__fnct;\n          } else {\n            fnc = BezierFactory.getBezierEasing(keyData.o.x, keyData.o.y, keyData.i.x, keyData.i.y, keyData.n).get;\n            keyData.__fnct = fnc;\n          }\n\n          perc = fnc((frameNum - keyTime) / (nextKeyTime - keyTime));\n          var distanceInLine = bezierData.segmentLength * perc;\n          var segmentPerc;\n          var addedLength = caching.lastFrame < frameNum && caching._lastKeyframeIndex === i ? caching._lastAddedLength : 0;\n          j = caching.lastFrame < frameNum && caching._lastKeyframeIndex === i ? caching._lastPoint : 0;\n          flag = true;\n          jLen = bezierData.points.length;\n\n          while (flag) {\n            addedLength += bezierData.points[j].partialLength;\n\n            if (distanceInLine === 0 || perc === 0 || j === bezierData.points.length - 1) {\n              kLen = bezierData.points[j].point.length;\n\n              for (k = 0; k < kLen; k += 1) {\n                newValue[k] = bezierData.points[j].point[k];\n              }\n\n              break;\n            } else if (distanceInLine >= addedLength && distanceInLine < addedLength + bezierData.points[j + 1].partialLength) {\n              segmentPerc = (distanceInLine - addedLength) / bezierData.points[j + 1].partialLength;\n              kLen = bezierData.points[j].point.length;\n\n              for (k = 0; k < kLen; k += 1) {\n                newValue[k] = bezierData.points[j].point[k] + (bezierData.points[j + 1].point[k] - bezierData.points[j].point[k]) * segmentPerc;\n              }\n\n              break;\n            }\n\n            if (j < jLen - 1) {\n              j += 1;\n            } else {\n              flag = false;\n            }\n          }\n\n          caching._lastPoint = j;\n          caching._lastAddedLength = addedLength - bezierData.points[j].partialLength;\n          caching._lastKeyframeIndex = i;\n        }\n      } else {\n        var outX;\n        var outY;\n        var inX;\n        var inY;\n        var keyValue;\n        len = keyData.s.length;\n        endValue = nextKeyData.s || keyData.e;\n\n        if ((this || _global).sh && keyData.h !== 1) {\n          if (frameNum >= nextKeyTime) {\n            newValue[0] = endValue[0];\n            newValue[1] = endValue[1];\n            newValue[2] = endValue[2];\n          } else if (frameNum <= keyTime) {\n            newValue[0] = keyData.s[0];\n            newValue[1] = keyData.s[1];\n            newValue[2] = keyData.s[2];\n          } else {\n            var quatStart = createQuaternion(keyData.s);\n            var quatEnd = createQuaternion(endValue);\n            var time = (frameNum - keyTime) / (nextKeyTime - keyTime);\n            quaternionToEuler(newValue, slerp(quatStart, quatEnd, time));\n          }\n        } else {\n          for (i = 0; i < len; i += 1) {\n            if (keyData.h !== 1) {\n              if (frameNum >= nextKeyTime) {\n                perc = 1;\n              } else if (frameNum < keyTime) {\n                perc = 0;\n              } else {\n                if (keyData.o.x.constructor === Array) {\n                  if (!keyData.__fnct) {\n                    keyData.__fnct = [];\n                  }\n\n                  if (!keyData.__fnct[i]) {\n                    outX = typeof keyData.o.x[i] === \"undefined\" ? keyData.o.x[0] : keyData.o.x[i];\n                    outY = typeof keyData.o.y[i] === \"undefined\" ? keyData.o.y[0] : keyData.o.y[i];\n                    inX = typeof keyData.i.x[i] === \"undefined\" ? keyData.i.x[0] : keyData.i.x[i];\n                    inY = typeof keyData.i.y[i] === \"undefined\" ? keyData.i.y[0] : keyData.i.y[i];\n                    fnc = BezierFactory.getBezierEasing(outX, outY, inX, inY).get;\n                    keyData.__fnct[i] = fnc;\n                  } else {\n                    fnc = keyData.__fnct[i];\n                  }\n                } else if (!keyData.__fnct) {\n                  outX = keyData.o.x;\n                  outY = keyData.o.y;\n                  inX = keyData.i.x;\n                  inY = keyData.i.y;\n                  fnc = BezierFactory.getBezierEasing(outX, outY, inX, inY).get;\n                  keyData.__fnct = fnc;\n                } else {\n                  fnc = keyData.__fnct;\n                }\n\n                perc = fnc((frameNum - keyTime) / (nextKeyTime - keyTime));\n              }\n            }\n\n            endValue = nextKeyData.s || keyData.e;\n            keyValue = keyData.h === 1 ? keyData.s[i] : keyData.s[i] + (endValue[i] - keyData.s[i]) * perc;\n\n            if ((this || _global).propType === \"multidimensional\") {\n              newValue[i] = keyValue;\n            } else {\n              newValue = keyValue;\n            }\n          }\n        }\n      }\n\n      caching.lastIndex = iterationIndex;\n      return newValue;\n    } // based on @Toji's https://github.com/toji/gl-matrix/\n\n\n    function slerp(a, b, t) {\n      var out = [];\n      var ax = a[0];\n      var ay = a[1];\n      var az = a[2];\n      var aw = a[3];\n      var bx = b[0];\n      var by = b[1];\n      var bz = b[2];\n      var bw = b[3];\n      var omega;\n      var cosom;\n      var sinom;\n      var scale0;\n      var scale1;\n      cosom = ax * bx + ay * by + az * bz + aw * bw;\n\n      if (cosom < 0) {\n        cosom = -cosom;\n        bx = -bx;\n        by = -by;\n        bz = -bz;\n        bw = -bw;\n      }\n\n      if (1 - cosom > 0.000001) {\n        omega = Math.acos(cosom);\n        sinom = Math.sin(omega);\n        scale0 = Math.sin((1 - t) * omega) / sinom;\n        scale1 = Math.sin(t * omega) / sinom;\n      } else {\n        scale0 = 1 - t;\n        scale1 = t;\n      }\n\n      out[0] = scale0 * ax + scale1 * bx;\n      out[1] = scale0 * ay + scale1 * by;\n      out[2] = scale0 * az + scale1 * bz;\n      out[3] = scale0 * aw + scale1 * bw;\n      return out;\n    }\n\n    function quaternionToEuler(out, quat) {\n      var qx = quat[0];\n      var qy = quat[1];\n      var qz = quat[2];\n      var qw = quat[3];\n      var heading = Math.atan2(2 * qy * qw - 2 * qx * qz, 1 - 2 * qy * qy - 2 * qz * qz);\n      var attitude = Math.asin(2 * qx * qy + 2 * qz * qw);\n      var bank = Math.atan2(2 * qx * qw - 2 * qy * qz, 1 - 2 * qx * qx - 2 * qz * qz);\n      out[0] = heading / degToRads;\n      out[1] = attitude / degToRads;\n      out[2] = bank / degToRads;\n    }\n\n    function createQuaternion(values) {\n      var heading = values[0] * degToRads;\n      var attitude = values[1] * degToRads;\n      var bank = values[2] * degToRads;\n      var c1 = Math.cos(heading / 2);\n      var c2 = Math.cos(attitude / 2);\n      var c3 = Math.cos(bank / 2);\n      var s1 = Math.sin(heading / 2);\n      var s2 = Math.sin(attitude / 2);\n      var s3 = Math.sin(bank / 2);\n      var w = c1 * c2 * c3 - s1 * s2 * s3;\n      var x = s1 * s2 * c3 + c1 * c2 * s3;\n      var y = s1 * c2 * c3 + c1 * s2 * s3;\n      var z = c1 * s2 * c3 - s1 * c2 * s3;\n      return [x, y, z, w];\n    }\n\n    function getValueAtCurrentTime() {\n      var frameNum = (this || _global).comp.renderedFrame - (this || _global).offsetTime;\n      var initTime = (this || _global).keyframes[0].t - (this || _global).offsetTime;\n      var endTime = (this || _global).keyframes[(this || _global).keyframes.length - 1].t - (this || _global).offsetTime;\n\n      if (!(frameNum === (this || _global)._caching.lastFrame || (this || _global)._caching.lastFrame !== initFrame && ((this || _global)._caching.lastFrame >= endTime && frameNum >= endTime || (this || _global)._caching.lastFrame < initTime && frameNum < initTime))) {\n        if ((this || _global)._caching.lastFrame >= frameNum) {\n          (this || _global)._caching._lastKeyframeIndex = -1;\n          (this || _global)._caching.lastIndex = 0;\n        }\n\n        var renderResult = this.interpolateValue(frameNum, (this || _global)._caching);\n        (this || _global).pv = renderResult;\n      }\n\n      (this || _global)._caching.lastFrame = frameNum;\n      return (this || _global).pv;\n    }\n\n    function setVValue(val) {\n      var multipliedValue;\n\n      if ((this || _global).propType === \"unidimensional\") {\n        multipliedValue = val * (this || _global).mult;\n\n        if (mathAbs((this || _global).v - multipliedValue) > 0.00001) {\n          (this || _global).v = multipliedValue;\n          (this || _global)._mdf = true;\n        }\n      } else {\n        var i = 0;\n        var len = (this || _global).v.length;\n\n        while (i < len) {\n          multipliedValue = val[i] * (this || _global).mult;\n\n          if (mathAbs((this || _global).v[i] - multipliedValue) > 0.00001) {\n            (this || _global).v[i] = multipliedValue;\n            (this || _global)._mdf = true;\n          }\n\n          i += 1;\n        }\n      }\n    }\n\n    function processEffectsSequence() {\n      if ((this || _global).elem.globalData.frameId === (this || _global).frameId || !(this || _global).effectsSequence.length) {\n        return;\n      }\n\n      if ((this || _global).lock) {\n        this.setVValue((this || _global).pv);\n        return;\n      }\n\n      (this || _global).lock = true;\n      (this || _global)._mdf = (this || _global)._isFirstFrame;\n      var i;\n      var len = (this || _global).effectsSequence.length;\n      var finalValue = (this || _global).kf ? (this || _global).pv : (this || _global).data.k;\n\n      for (i = 0; i < len; i += 1) {\n        finalValue = (this || _global).effectsSequence[i](finalValue);\n      }\n\n      this.setVValue(finalValue);\n      (this || _global)._isFirstFrame = false;\n      (this || _global).lock = false;\n      (this || _global).frameId = (this || _global).elem.globalData.frameId;\n    }\n\n    function addEffect(effectFunction) {\n      (this || _global).effectsSequence.push(effectFunction);\n\n      (this || _global).container.addDynamicProperty(this || _global);\n    }\n\n    function ValueProperty(elem, data, mult, container) {\n      (this || _global).propType = \"unidimensional\";\n      (this || _global).mult = mult || 1;\n      (this || _global).data = data;\n      (this || _global).v = mult ? data.k * mult : data.k;\n      (this || _global).pv = data.k;\n      (this || _global)._mdf = false;\n      (this || _global).elem = elem;\n      (this || _global).container = container;\n      (this || _global).comp = elem.comp;\n      (this || _global).k = false;\n      (this || _global).kf = false;\n      (this || _global).vel = 0;\n      (this || _global).effectsSequence = [];\n      (this || _global)._isFirstFrame = true;\n      (this || _global).getValue = processEffectsSequence;\n      (this || _global).setVValue = setVValue;\n      (this || _global).addEffect = addEffect;\n    }\n\n    function MultiDimensionalProperty(elem, data, mult, container) {\n      (this || _global).propType = \"multidimensional\";\n      (this || _global).mult = mult || 1;\n      (this || _global).data = data;\n      (this || _global)._mdf = false;\n      (this || _global).elem = elem;\n      (this || _global).container = container;\n      (this || _global).comp = elem.comp;\n      (this || _global).k = false;\n      (this || _global).kf = false;\n      (this || _global).frameId = -1;\n      var i;\n      var len = data.k.length;\n      (this || _global).v = createTypedArray(\"float32\", len);\n      (this || _global).pv = createTypedArray(\"float32\", len);\n      (this || _global).vel = createTypedArray(\"float32\", len);\n\n      for (i = 0; i < len; i += 1) {\n        (this || _global).v[i] = data.k[i] * (this || _global).mult;\n        (this || _global).pv[i] = data.k[i];\n      }\n\n      (this || _global)._isFirstFrame = true;\n      (this || _global).effectsSequence = [];\n      (this || _global).getValue = processEffectsSequence;\n      (this || _global).setVValue = setVValue;\n      (this || _global).addEffect = addEffect;\n    }\n\n    function KeyframedValueProperty(elem, data, mult, container) {\n      (this || _global).propType = \"unidimensional\";\n      (this || _global).keyframes = data.k;\n      (this || _global).offsetTime = elem.data.st;\n      (this || _global).frameId = -1;\n      (this || _global)._caching = {\n        lastFrame: initFrame,\n        lastIndex: 0,\n        value: 0,\n        _lastKeyframeIndex: -1\n      };\n      (this || _global).k = true;\n      (this || _global).kf = true;\n      (this || _global).data = data;\n      (this || _global).mult = mult || 1;\n      (this || _global).elem = elem;\n      (this || _global).container = container;\n      (this || _global).comp = elem.comp;\n      (this || _global).v = initFrame;\n      (this || _global).pv = initFrame;\n      (this || _global)._isFirstFrame = true;\n      (this || _global).getValue = processEffectsSequence;\n      (this || _global).setVValue = setVValue;\n      (this || _global).interpolateValue = interpolateValue;\n      (this || _global).effectsSequence = [getValueAtCurrentTime.bind(this || _global)];\n      (this || _global).addEffect = addEffect;\n    }\n\n    function KeyframedMultidimensionalProperty(elem, data, mult, container) {\n      (this || _global).propType = \"multidimensional\";\n      var i;\n      var len = data.k.length;\n      var s;\n      var e;\n      var to;\n      var ti;\n\n      for (i = 0; i < len - 1; i += 1) {\n        if (data.k[i].to && data.k[i].s && data.k[i + 1] && data.k[i + 1].s) {\n          s = data.k[i].s;\n          e = data.k[i + 1].s;\n          to = data.k[i].to;\n          ti = data.k[i].ti;\n\n          if (s.length === 2 && !(s[0] === e[0] && s[1] === e[1]) && bez.pointOnLine2D(s[0], s[1], e[0], e[1], s[0] + to[0], s[1] + to[1]) && bez.pointOnLine2D(s[0], s[1], e[0], e[1], e[0] + ti[0], e[1] + ti[1]) || s.length === 3 && !(s[0] === e[0] && s[1] === e[1] && s[2] === e[2]) && bez.pointOnLine3D(s[0], s[1], s[2], e[0], e[1], e[2], s[0] + to[0], s[1] + to[1], s[2] + to[2]) && bez.pointOnLine3D(s[0], s[1], s[2], e[0], e[1], e[2], e[0] + ti[0], e[1] + ti[1], e[2] + ti[2])) {\n            data.k[i].to = null;\n            data.k[i].ti = null;\n          }\n\n          if (s[0] === e[0] && s[1] === e[1] && to[0] === 0 && to[1] === 0 && ti[0] === 0 && ti[1] === 0) {\n            if (s.length === 2 || s[2] === e[2] && to[2] === 0 && ti[2] === 0) {\n              data.k[i].to = null;\n              data.k[i].ti = null;\n            }\n          }\n        }\n      }\n\n      (this || _global).effectsSequence = [getValueAtCurrentTime.bind(this || _global)];\n      (this || _global).data = data;\n      (this || _global).keyframes = data.k;\n      (this || _global).offsetTime = elem.data.st;\n      (this || _global).k = true;\n      (this || _global).kf = true;\n      (this || _global)._isFirstFrame = true;\n      (this || _global).mult = mult || 1;\n      (this || _global).elem = elem;\n      (this || _global).container = container;\n      (this || _global).comp = elem.comp;\n      (this || _global).getValue = processEffectsSequence;\n      (this || _global).setVValue = setVValue;\n      (this || _global).interpolateValue = interpolateValue;\n      (this || _global).frameId = -1;\n      var arrLen = data.k[0].s.length;\n      (this || _global).v = createTypedArray(\"float32\", arrLen);\n      (this || _global).pv = createTypedArray(\"float32\", arrLen);\n\n      for (i = 0; i < arrLen; i += 1) {\n        (this || _global).v[i] = initFrame;\n        (this || _global).pv[i] = initFrame;\n      }\n\n      (this || _global)._caching = {\n        lastFrame: initFrame,\n        lastIndex: 0,\n        value: createTypedArray(\"float32\", arrLen)\n      };\n      (this || _global).addEffect = addEffect;\n    }\n\n    function getProp(elem, data, type, mult, container) {\n      var p;\n\n      if (!data.k.length) {\n        p = new ValueProperty(elem, data, mult, container);\n      } else if (typeof data.k[0] === \"number\") {\n        p = new MultiDimensionalProperty(elem, data, mult, container);\n      } else {\n        switch (type) {\n          case 0:\n            p = new KeyframedValueProperty(elem, data, mult, container);\n            break;\n\n          case 1:\n            p = new KeyframedMultidimensionalProperty(elem, data, mult, container);\n            break;\n\n          default:\n            break;\n        }\n      }\n\n      if (p.effectsSequence.length) {\n        container.addDynamicProperty(p);\n      }\n\n      return p;\n    }\n\n    var ob = {\n      getProp: getProp\n    };\n    return ob;\n  }();\n  /* global Matrix, degToRads, PropertyFactory, extendPrototype, DynamicPropertyContainer */\n\n  /* exported TransformPropertyFactory */\n\n\n  var TransformPropertyFactory = function () {\n    var defaultVector = [0, 0];\n\n    function applyToMatrix(mat) {\n      var _mdf = (this || _global)._mdf;\n      this.iterateDynamicProperties();\n      (this || _global)._mdf = (this || _global)._mdf || _mdf;\n\n      if ((this || _global).a) {\n        mat.translate(-(this || _global).a.v[0], -(this || _global).a.v[1], (this || _global).a.v[2]);\n      }\n\n      if ((this || _global).s) {\n        mat.scale((this || _global).s.v[0], (this || _global).s.v[1], (this || _global).s.v[2]);\n      }\n\n      if ((this || _global).sk) {\n        mat.skewFromAxis(-(this || _global).sk.v, (this || _global).sa.v);\n      }\n\n      if ((this || _global).r) {\n        mat.rotate(-(this || _global).r.v);\n      } else {\n        mat.rotateZ(-(this || _global).rz.v).rotateY((this || _global).ry.v).rotateX((this || _global).rx.v).rotateZ(-(this || _global).or.v[2]).rotateY((this || _global).or.v[1]).rotateX((this || _global).or.v[0]);\n      }\n\n      if ((this || _global).data.p.s) {\n        if ((this || _global).data.p.z) {\n          mat.translate((this || _global).px.v, (this || _global).py.v, -(this || _global).pz.v);\n        } else {\n          mat.translate((this || _global).px.v, (this || _global).py.v, 0);\n        }\n      } else {\n        mat.translate((this || _global).p.v[0], (this || _global).p.v[1], -(this || _global).p.v[2]);\n      }\n    }\n\n    function processKeys(forceRender) {\n      if ((this || _global).elem.globalData.frameId === (this || _global).frameId) {\n        return;\n      }\n\n      if ((this || _global)._isDirty) {\n        this.precalculateMatrix();\n        (this || _global)._isDirty = false;\n      }\n\n      this.iterateDynamicProperties();\n\n      if ((this || _global)._mdf || forceRender) {\n        var frameRate;\n\n        (this || _global).v.cloneFromProps((this || _global).pre.props);\n\n        if ((this || _global).appliedTransformations < 1) {\n          (this || _global).v.translate(-(this || _global).a.v[0], -(this || _global).a.v[1], (this || _global).a.v[2]);\n        }\n\n        if ((this || _global).appliedTransformations < 2) {\n          (this || _global).v.scale((this || _global).s.v[0], (this || _global).s.v[1], (this || _global).s.v[2]);\n        }\n\n        if ((this || _global).sk && (this || _global).appliedTransformations < 3) {\n          (this || _global).v.skewFromAxis(-(this || _global).sk.v, (this || _global).sa.v);\n        }\n\n        if ((this || _global).r && (this || _global).appliedTransformations < 4) {\n          (this || _global).v.rotate(-(this || _global).r.v);\n        } else if (!(this || _global).r && (this || _global).appliedTransformations < 4) {\n          (this || _global).v.rotateZ(-(this || _global).rz.v).rotateY((this || _global).ry.v).rotateX((this || _global).rx.v).rotateZ(-(this || _global).or.v[2]).rotateY((this || _global).or.v[1]).rotateX((this || _global).or.v[0]);\n        }\n\n        if ((this || _global).autoOriented) {\n          var v1;\n          var v2;\n          frameRate = (this || _global).elem.globalData.frameRate;\n\n          if ((this || _global).p && (this || _global).p.keyframes && (this || _global).p.getValueAtTime) {\n            if ((this || _global).p._caching.lastFrame + (this || _global).p.offsetTime <= (this || _global).p.keyframes[0].t) {\n              v1 = (this || _global).p.getValueAtTime(((this || _global).p.keyframes[0].t + 0.01) / frameRate, 0);\n              v2 = (this || _global).p.getValueAtTime((this || _global).p.keyframes[0].t / frameRate, 0);\n            } else if ((this || _global).p._caching.lastFrame + (this || _global).p.offsetTime >= (this || _global).p.keyframes[(this || _global).p.keyframes.length - 1].t) {\n              v1 = (this || _global).p.getValueAtTime((this || _global).p.keyframes[(this || _global).p.keyframes.length - 1].t / frameRate, 0);\n              v2 = (this || _global).p.getValueAtTime(((this || _global).p.keyframes[(this || _global).p.keyframes.length - 1].t - 0.05) / frameRate, 0);\n            } else {\n              v1 = (this || _global).p.pv;\n              v2 = (this || _global).p.getValueAtTime(((this || _global).p._caching.lastFrame + (this || _global).p.offsetTime - 0.01) / frameRate, (this || _global).p.offsetTime);\n            }\n          } else if ((this || _global).px && (this || _global).px.keyframes && (this || _global).py.keyframes && (this || _global).px.getValueAtTime && (this || _global).py.getValueAtTime) {\n            v1 = [];\n            v2 = [];\n            var px = (this || _global).px;\n            var py = (this || _global).py;\n\n            if (px._caching.lastFrame + px.offsetTime <= px.keyframes[0].t) {\n              v1[0] = px.getValueAtTime((px.keyframes[0].t + 0.01) / frameRate, 0);\n              v1[1] = py.getValueAtTime((py.keyframes[0].t + 0.01) / frameRate, 0);\n              v2[0] = px.getValueAtTime(px.keyframes[0].t / frameRate, 0);\n              v2[1] = py.getValueAtTime(py.keyframes[0].t / frameRate, 0);\n            } else if (px._caching.lastFrame + px.offsetTime >= px.keyframes[px.keyframes.length - 1].t) {\n              v1[0] = px.getValueAtTime(px.keyframes[px.keyframes.length - 1].t / frameRate, 0);\n              v1[1] = py.getValueAtTime(py.keyframes[py.keyframes.length - 1].t / frameRate, 0);\n              v2[0] = px.getValueAtTime((px.keyframes[px.keyframes.length - 1].t - 0.01) / frameRate, 0);\n              v2[1] = py.getValueAtTime((py.keyframes[py.keyframes.length - 1].t - 0.01) / frameRate, 0);\n            } else {\n              v1 = [px.pv, py.pv];\n              v2[0] = px.getValueAtTime((px._caching.lastFrame + px.offsetTime - 0.01) / frameRate, px.offsetTime);\n              v2[1] = py.getValueAtTime((py._caching.lastFrame + py.offsetTime - 0.01) / frameRate, py.offsetTime);\n            }\n          } else {\n            v2 = defaultVector;\n            v1 = v2;\n          }\n\n          (this || _global).v.rotate(-Math.atan2(v1[1] - v2[1], v1[0] - v2[0]));\n        }\n\n        if ((this || _global).data.p && (this || _global).data.p.s) {\n          if ((this || _global).data.p.z) {\n            (this || _global).v.translate((this || _global).px.v, (this || _global).py.v, -(this || _global).pz.v);\n          } else {\n            (this || _global).v.translate((this || _global).px.v, (this || _global).py.v, 0);\n          }\n        } else {\n          (this || _global).v.translate((this || _global).p.v[0], (this || _global).p.v[1], -(this || _global).p.v[2]);\n        }\n      }\n\n      (this || _global).frameId = (this || _global).elem.globalData.frameId;\n    }\n\n    function precalculateMatrix() {\n      if (!(this || _global).a.k) {\n        (this || _global).pre.translate(-(this || _global).a.v[0], -(this || _global).a.v[1], (this || _global).a.v[2]);\n\n        (this || _global).appliedTransformations = 1;\n      } else {\n        return;\n      }\n\n      if (!(this || _global).s.effectsSequence.length) {\n        (this || _global).pre.scale((this || _global).s.v[0], (this || _global).s.v[1], (this || _global).s.v[2]);\n\n        (this || _global).appliedTransformations = 2;\n      } else {\n        return;\n      }\n\n      if ((this || _global).sk) {\n        if (!(this || _global).sk.effectsSequence.length && !(this || _global).sa.effectsSequence.length) {\n          (this || _global).pre.skewFromAxis(-(this || _global).sk.v, (this || _global).sa.v);\n\n          (this || _global).appliedTransformations = 3;\n        } else {\n          return;\n        }\n      }\n\n      if ((this || _global).r) {\n        if (!(this || _global).r.effectsSequence.length) {\n          (this || _global).pre.rotate(-(this || _global).r.v);\n\n          (this || _global).appliedTransformations = 4;\n        }\n      } else if (!(this || _global).rz.effectsSequence.length && !(this || _global).ry.effectsSequence.length && !(this || _global).rx.effectsSequence.length && !(this || _global).or.effectsSequence.length) {\n        (this || _global).pre.rotateZ(-(this || _global).rz.v).rotateY((this || _global).ry.v).rotateX((this || _global).rx.v).rotateZ(-(this || _global).or.v[2]).rotateY((this || _global).or.v[1]).rotateX((this || _global).or.v[0]);\n\n        (this || _global).appliedTransformations = 4;\n      }\n    }\n\n    function autoOrient() {//\n      // var prevP = this.getValueAtTime();\n    }\n\n    function addDynamicProperty(prop) {\n      this._addDynamicProperty(prop);\n\n      (this || _global).elem.addDynamicProperty(prop);\n\n      (this || _global)._isDirty = true;\n    }\n\n    function TransformProperty(elem, data, container) {\n      (this || _global).elem = elem;\n      (this || _global).frameId = -1;\n      (this || _global).propType = \"transform\";\n      (this || _global).data = data;\n      (this || _global).v = new Matrix(); // Precalculated matrix with non animated properties\n\n      (this || _global).pre = new Matrix();\n      (this || _global).appliedTransformations = 0;\n      this.initDynamicPropertyContainer(container || elem);\n\n      if (data.p && data.p.s) {\n        (this || _global).px = PropertyFactory.getProp(elem, data.p.x, 0, 0, this || _global);\n        (this || _global).py = PropertyFactory.getProp(elem, data.p.y, 0, 0, this || _global);\n\n        if (data.p.z) {\n          (this || _global).pz = PropertyFactory.getProp(elem, data.p.z, 0, 0, this || _global);\n        }\n      } else {\n        (this || _global).p = PropertyFactory.getProp(elem, data.p || {\n          k: [0, 0, 0]\n        }, 1, 0, this || _global);\n      }\n\n      if (data.rx) {\n        (this || _global).rx = PropertyFactory.getProp(elem, data.rx, 0, degToRads, this || _global);\n        (this || _global).ry = PropertyFactory.getProp(elem, data.ry, 0, degToRads, this || _global);\n        (this || _global).rz = PropertyFactory.getProp(elem, data.rz, 0, degToRads, this || _global);\n\n        if (data.or.k[0].ti) {\n          var i;\n          var len = data.or.k.length;\n\n          for (i = 0; i < len; i += 1) {\n            data.or.k[i].to = null;\n            data.or.k[i].ti = null;\n          }\n        }\n\n        (this || _global).or = PropertyFactory.getProp(elem, data.or, 1, degToRads, this || _global); // sh Indicates it needs to be capped between -180 and 180\n\n        (this || _global).or.sh = true;\n      } else {\n        (this || _global).r = PropertyFactory.getProp(elem, data.r || {\n          k: 0\n        }, 0, degToRads, this || _global);\n      }\n\n      if (data.sk) {\n        (this || _global).sk = PropertyFactory.getProp(elem, data.sk, 0, degToRads, this || _global);\n        (this || _global).sa = PropertyFactory.getProp(elem, data.sa, 0, degToRads, this || _global);\n      }\n\n      (this || _global).a = PropertyFactory.getProp(elem, data.a || {\n        k: [0, 0, 0]\n      }, 1, 0, this || _global);\n      (this || _global).s = PropertyFactory.getProp(elem, data.s || {\n        k: [100, 100, 100]\n      }, 1, 0.01, this || _global); // Opacity is not part of the transform properties, that's why it won't use this.dynamicProperties. That way transforms won't get updated if opacity changes.\n\n      if (data.o) {\n        (this || _global).o = PropertyFactory.getProp(elem, data.o, 0, 0.01, elem);\n      } else {\n        (this || _global).o = {\n          _mdf: false,\n          v: 1\n        };\n      }\n\n      (this || _global)._isDirty = true;\n\n      if (!(this || _global).dynamicProperties.length) {\n        this.getValue(true);\n      }\n    }\n\n    TransformProperty.prototype = {\n      applyToMatrix: applyToMatrix,\n      getValue: processKeys,\n      precalculateMatrix: precalculateMatrix,\n      autoOrient: autoOrient\n    };\n    extendPrototype([DynamicPropertyContainer], TransformProperty);\n    TransformProperty.prototype.addDynamicProperty = addDynamicProperty;\n    TransformProperty.prototype._addDynamicProperty = DynamicPropertyContainer.prototype.addDynamicProperty;\n\n    function getTransformProperty(elem, data, container) {\n      return new TransformProperty(elem, data, container);\n    }\n\n    return {\n      getTransformProperty: getTransformProperty\n    };\n  }();\n  /* global createSizedArray, createSizedArray, pointPool */\n\n\n  function ShapePath() {\n    (this || _global).c = false;\n    (this || _global)._length = 0;\n    (this || _global)._maxLength = 8;\n    (this || _global).v = createSizedArray((this || _global)._maxLength);\n    (this || _global).o = createSizedArray((this || _global)._maxLength);\n    (this || _global).i = createSizedArray((this || _global)._maxLength);\n  }\n\n  ShapePath.prototype.setPathData = function (closed, len) {\n    (this || _global).c = closed;\n    this.setLength(len);\n    var i = 0;\n\n    while (i < len) {\n      (this || _global).v[i] = pointPool.newElement();\n      (this || _global).o[i] = pointPool.newElement();\n      (this || _global).i[i] = pointPool.newElement();\n      i += 1;\n    }\n  };\n\n  ShapePath.prototype.setLength = function (len) {\n    while ((this || _global)._maxLength < len) {\n      this.doubleArrayLength();\n    }\n\n    (this || _global)._length = len;\n  };\n\n  ShapePath.prototype.doubleArrayLength = function () {\n    (this || _global).v = (this || _global).v.concat(createSizedArray((this || _global)._maxLength));\n    (this || _global).i = (this || _global).i.concat(createSizedArray((this || _global)._maxLength));\n    (this || _global).o = (this || _global).o.concat(createSizedArray((this || _global)._maxLength));\n    (this || _global)._maxLength *= 2;\n  };\n\n  ShapePath.prototype.setXYAt = function (x, y, type, pos, replace) {\n    var arr;\n    (this || _global)._length = Math.max((this || _global)._length, pos + 1);\n\n    if ((this || _global)._length >= (this || _global)._maxLength) {\n      this.doubleArrayLength();\n    }\n\n    switch (type) {\n      case \"v\":\n        arr = (this || _global).v;\n        break;\n\n      case \"i\":\n        arr = (this || _global).i;\n        break;\n\n      case \"o\":\n        arr = (this || _global).o;\n        break;\n\n      default:\n        arr = [];\n        break;\n    }\n\n    if (!arr[pos] || arr[pos] && !replace) {\n      arr[pos] = pointPool.newElement();\n    }\n\n    arr[pos][0] = x;\n    arr[pos][1] = y;\n  };\n\n  ShapePath.prototype.setTripleAt = function (vX, vY, oX, oY, iX, iY, pos, replace) {\n    this.setXYAt(vX, vY, \"v\", pos, replace);\n    this.setXYAt(oX, oY, \"o\", pos, replace);\n    this.setXYAt(iX, iY, \"i\", pos, replace);\n  };\n\n  ShapePath.prototype.reverse = function () {\n    var newPath = new ShapePath();\n    newPath.setPathData((this || _global).c, (this || _global)._length);\n    var vertices = (this || _global).v;\n    var outPoints = (this || _global).o;\n    var inPoints = (this || _global).i;\n    var init = 0;\n\n    if ((this || _global).c) {\n      newPath.setTripleAt(vertices[0][0], vertices[0][1], inPoints[0][0], inPoints[0][1], outPoints[0][0], outPoints[0][1], 0, false);\n      init = 1;\n    }\n\n    var cnt = (this || _global)._length - 1;\n    var len = (this || _global)._length;\n    var i;\n\n    for (i = init; i < len; i += 1) {\n      newPath.setTripleAt(vertices[cnt][0], vertices[cnt][1], inPoints[cnt][0], inPoints[cnt][1], outPoints[cnt][0], outPoints[cnt][1], i, false);\n      cnt -= 1;\n    }\n\n    return newPath;\n  };\n  /* global extendPrototype, roundCorner, BezierFactory, shapePool, degToRads,\r\n    shapeCollectionPool, PropertyFactory, bmMin, DynamicPropertyContainer */\n\n  /* exported ShapePropertyFactory */\n\n\n  var ShapePropertyFactory = function () {\n    var initFrame = -999999;\n\n    function interpolateShape(frameNum, previousValue, caching) {\n      var iterationIndex = caching.lastIndex;\n      var keyPropS;\n      var keyPropE;\n      var isHold;\n      var j;\n      var k;\n      var jLen;\n      var kLen;\n      var perc;\n      var vertexValue;\n      var kf = (this || _global).keyframes;\n\n      if (frameNum < kf[0].t - (this || _global).offsetTime) {\n        keyPropS = kf[0].s[0];\n        isHold = true;\n        iterationIndex = 0;\n      } else if (frameNum >= kf[kf.length - 1].t - (this || _global).offsetTime) {\n        keyPropS = kf[kf.length - 1].s ? kf[kf.length - 1].s[0] : kf[kf.length - 2].e[0];\n        /* if(kf[kf.length - 1].s){\r\n                  keyPropS = kf[kf.length - 1].s[0];\r\n              }else{\r\n                  keyPropS = kf[kf.length - 2].e[0];\r\n              } */\n\n        isHold = true;\n      } else {\n        var i = iterationIndex;\n        var len = kf.length - 1;\n        var flag = true;\n        var keyData;\n        var nextKeyData;\n\n        while (flag) {\n          keyData = kf[i];\n          nextKeyData = kf[i + 1];\n\n          if (nextKeyData.t - (this || _global).offsetTime > frameNum) {\n            break;\n          }\n\n          if (i < len - 1) {\n            i += 1;\n          } else {\n            flag = false;\n          }\n        }\n\n        isHold = keyData.h === 1;\n        iterationIndex = i;\n\n        if (!isHold) {\n          if (frameNum >= nextKeyData.t - (this || _global).offsetTime) {\n            perc = 1;\n          } else if (frameNum < keyData.t - (this || _global).offsetTime) {\n            perc = 0;\n          } else {\n            var fnc;\n\n            if (keyData.__fnct) {\n              fnc = keyData.__fnct;\n            } else {\n              fnc = BezierFactory.getBezierEasing(keyData.o.x, keyData.o.y, keyData.i.x, keyData.i.y).get;\n              keyData.__fnct = fnc;\n            }\n\n            perc = fnc((frameNum - (keyData.t - (this || _global).offsetTime)) / (nextKeyData.t - (this || _global).offsetTime - (keyData.t - (this || _global).offsetTime)));\n          }\n\n          keyPropE = nextKeyData.s ? nextKeyData.s[0] : keyData.e[0];\n        }\n\n        keyPropS = keyData.s[0];\n      }\n\n      jLen = previousValue._length;\n      kLen = keyPropS.i[0].length;\n      caching.lastIndex = iterationIndex;\n\n      for (j = 0; j < jLen; j += 1) {\n        for (k = 0; k < kLen; k += 1) {\n          vertexValue = isHold ? keyPropS.i[j][k] : keyPropS.i[j][k] + (keyPropE.i[j][k] - keyPropS.i[j][k]) * perc;\n          previousValue.i[j][k] = vertexValue;\n          vertexValue = isHold ? keyPropS.o[j][k] : keyPropS.o[j][k] + (keyPropE.o[j][k] - keyPropS.o[j][k]) * perc;\n          previousValue.o[j][k] = vertexValue;\n          vertexValue = isHold ? keyPropS.v[j][k] : keyPropS.v[j][k] + (keyPropE.v[j][k] - keyPropS.v[j][k]) * perc;\n          previousValue.v[j][k] = vertexValue;\n        }\n      }\n    }\n\n    function interpolateShapeCurrentTime() {\n      var frameNum = (this || _global).comp.renderedFrame - (this || _global).offsetTime;\n      var initTime = (this || _global).keyframes[0].t - (this || _global).offsetTime;\n      var endTime = (this || _global).keyframes[(this || _global).keyframes.length - 1].t - (this || _global).offsetTime;\n      var lastFrame = (this || _global)._caching.lastFrame;\n\n      if (!(lastFrame !== initFrame && (lastFrame < initTime && frameNum < initTime || lastFrame > endTime && frameNum > endTime))) {\n        /// /\n        (this || _global)._caching.lastIndex = lastFrame < frameNum ? (this || _global)._caching.lastIndex : 0;\n        this.interpolateShape(frameNum, (this || _global).pv, (this || _global)._caching); /// /\n      }\n\n      (this || _global)._caching.lastFrame = frameNum;\n      return (this || _global).pv;\n    }\n\n    function resetShape() {\n      (this || _global).paths = (this || _global).localShapeCollection;\n    }\n\n    function shapesEqual(shape1, shape2) {\n      if (shape1._length !== shape2._length || shape1.c !== shape2.c) {\n        return false;\n      }\n\n      var i;\n      var len = shape1._length;\n\n      for (i = 0; i < len; i += 1) {\n        if (shape1.v[i][0] !== shape2.v[i][0] || shape1.v[i][1] !== shape2.v[i][1] || shape1.o[i][0] !== shape2.o[i][0] || shape1.o[i][1] !== shape2.o[i][1] || shape1.i[i][0] !== shape2.i[i][0] || shape1.i[i][1] !== shape2.i[i][1]) {\n          return false;\n        }\n      }\n\n      return true;\n    }\n\n    function setVValue(newPath) {\n      if (!shapesEqual((this || _global).v, newPath)) {\n        (this || _global).v = shapePool.clone(newPath);\n\n        (this || _global).localShapeCollection.releaseShapes();\n\n        (this || _global).localShapeCollection.addShape((this || _global).v);\n\n        (this || _global)._mdf = true;\n        (this || _global).paths = (this || _global).localShapeCollection;\n      }\n    }\n\n    function processEffectsSequence() {\n      if ((this || _global).elem.globalData.frameId === (this || _global).frameId) {\n        return;\n      }\n\n      if (!(this || _global).effectsSequence.length) {\n        (this || _global)._mdf = false;\n        return;\n      }\n\n      if ((this || _global).lock) {\n        this.setVValue((this || _global).pv);\n        return;\n      }\n\n      (this || _global).lock = true;\n      (this || _global)._mdf = false;\n      var finalValue;\n\n      if ((this || _global).kf) {\n        finalValue = (this || _global).pv;\n      } else if ((this || _global).data.ks) {\n        finalValue = (this || _global).data.ks.k;\n      } else {\n        finalValue = (this || _global).data.pt.k;\n      }\n\n      var i;\n      var len = (this || _global).effectsSequence.length;\n\n      for (i = 0; i < len; i += 1) {\n        finalValue = (this || _global).effectsSequence[i](finalValue);\n      }\n\n      this.setVValue(finalValue);\n      (this || _global).lock = false;\n      (this || _global).frameId = (this || _global).elem.globalData.frameId;\n    }\n\n    function ShapeProperty(elem, data, type) {\n      (this || _global).propType = \"shape\";\n      (this || _global).comp = elem.comp;\n      (this || _global).container = elem;\n      (this || _global).elem = elem;\n      (this || _global).data = data;\n      (this || _global).k = false;\n      (this || _global).kf = false;\n      (this || _global)._mdf = false;\n      var pathData = type === 3 ? data.pt.k : data.ks.k;\n      (this || _global).v = shapePool.clone(pathData);\n      (this || _global).pv = shapePool.clone((this || _global).v);\n      (this || _global).localShapeCollection = shapeCollectionPool.newShapeCollection();\n      (this || _global).paths = (this || _global).localShapeCollection;\n\n      (this || _global).paths.addShape((this || _global).v);\n\n      (this || _global).reset = resetShape;\n      (this || _global).effectsSequence = [];\n    }\n\n    function addEffect(effectFunction) {\n      (this || _global).effectsSequence.push(effectFunction);\n\n      (this || _global).container.addDynamicProperty(this || _global);\n    }\n\n    ShapeProperty.prototype.interpolateShape = interpolateShape;\n    ShapeProperty.prototype.getValue = processEffectsSequence;\n    ShapeProperty.prototype.setVValue = setVValue;\n    ShapeProperty.prototype.addEffect = addEffect;\n\n    function KeyframedShapeProperty(elem, data, type) {\n      (this || _global).propType = \"shape\";\n      (this || _global).comp = elem.comp;\n      (this || _global).elem = elem;\n      (this || _global).container = elem;\n      (this || _global).offsetTime = elem.data.st;\n      (this || _global).keyframes = type === 3 ? data.pt.k : data.ks.k;\n      (this || _global).k = true;\n      (this || _global).kf = true;\n      var len = (this || _global).keyframes[0].s[0].i.length;\n      (this || _global).v = shapePool.newElement();\n\n      (this || _global).v.setPathData((this || _global).keyframes[0].s[0].c, len);\n\n      (this || _global).pv = shapePool.clone((this || _global).v);\n      (this || _global).localShapeCollection = shapeCollectionPool.newShapeCollection();\n      (this || _global).paths = (this || _global).localShapeCollection;\n\n      (this || _global).paths.addShape((this || _global).v);\n\n      (this || _global).lastFrame = initFrame;\n      (this || _global).reset = resetShape;\n      (this || _global)._caching = {\n        lastFrame: initFrame,\n        lastIndex: 0\n      };\n      (this || _global).effectsSequence = [interpolateShapeCurrentTime.bind(this || _global)];\n    }\n\n    KeyframedShapeProperty.prototype.getValue = processEffectsSequence;\n    KeyframedShapeProperty.prototype.interpolateShape = interpolateShape;\n    KeyframedShapeProperty.prototype.setVValue = setVValue;\n    KeyframedShapeProperty.prototype.addEffect = addEffect;\n\n    var EllShapeProperty = function () {\n      var cPoint = roundCorner;\n\n      function EllShapePropertyFactory(elem, data) {\n        /* this.v = {\r\n                  v: createSizedArray(4),\r\n                  i: createSizedArray(4),\r\n                  o: createSizedArray(4),\r\n                  c: true\r\n              }; */\n        (this || _global).v = shapePool.newElement();\n\n        (this || _global).v.setPathData(true, 4);\n\n        (this || _global).localShapeCollection = shapeCollectionPool.newShapeCollection();\n        (this || _global).paths = (this || _global).localShapeCollection;\n\n        (this || _global).localShapeCollection.addShape((this || _global).v);\n\n        (this || _global).d = data.d;\n        (this || _global).elem = elem;\n        (this || _global).comp = elem.comp;\n        (this || _global).frameId = -1;\n        this.initDynamicPropertyContainer(elem);\n        (this || _global).p = PropertyFactory.getProp(elem, data.p, 1, 0, this || _global);\n        (this || _global).s = PropertyFactory.getProp(elem, data.s, 1, 0, this || _global);\n\n        if ((this || _global).dynamicProperties.length) {\n          (this || _global).k = true;\n        } else {\n          (this || _global).k = false;\n          this.convertEllToPath();\n        }\n      }\n\n      EllShapePropertyFactory.prototype = {\n        reset: resetShape,\n        getValue: function () {\n          if ((this || _global).elem.globalData.frameId === (this || _global).frameId) {\n            return;\n          }\n\n          (this || _global).frameId = (this || _global).elem.globalData.frameId;\n          this.iterateDynamicProperties();\n\n          if ((this || _global)._mdf) {\n            this.convertEllToPath();\n          }\n        },\n        convertEllToPath: function () {\n          var p0 = (this || _global).p.v[0];\n          var p1 = (this || _global).p.v[1];\n          var s0 = (this || _global).s.v[0] / 2;\n          var s1 = (this || _global).s.v[1] / 2;\n\n          var _cw = (this || _global).d !== 3;\n\n          var _v = (this || _global).v;\n          _v.v[0][0] = p0;\n          _v.v[0][1] = p1 - s1;\n          _v.v[1][0] = _cw ? p0 + s0 : p0 - s0;\n          _v.v[1][1] = p1;\n          _v.v[2][0] = p0;\n          _v.v[2][1] = p1 + s1;\n          _v.v[3][0] = _cw ? p0 - s0 : p0 + s0;\n          _v.v[3][1] = p1;\n          _v.i[0][0] = _cw ? p0 - s0 * cPoint : p0 + s0 * cPoint;\n          _v.i[0][1] = p1 - s1;\n          _v.i[1][0] = _cw ? p0 + s0 : p0 - s0;\n          _v.i[1][1] = p1 - s1 * cPoint;\n          _v.i[2][0] = _cw ? p0 + s0 * cPoint : p0 - s0 * cPoint;\n          _v.i[2][1] = p1 + s1;\n          _v.i[3][0] = _cw ? p0 - s0 : p0 + s0;\n          _v.i[3][1] = p1 + s1 * cPoint;\n          _v.o[0][0] = _cw ? p0 + s0 * cPoint : p0 - s0 * cPoint;\n          _v.o[0][1] = p1 - s1;\n          _v.o[1][0] = _cw ? p0 + s0 : p0 - s0;\n          _v.o[1][1] = p1 + s1 * cPoint;\n          _v.o[2][0] = _cw ? p0 - s0 * cPoint : p0 + s0 * cPoint;\n          _v.o[2][1] = p1 + s1;\n          _v.o[3][0] = _cw ? p0 - s0 : p0 + s0;\n          _v.o[3][1] = p1 - s1 * cPoint;\n        }\n      };\n      extendPrototype([DynamicPropertyContainer], EllShapePropertyFactory);\n      return EllShapePropertyFactory;\n    }();\n\n    var StarShapeProperty = function () {\n      function StarShapePropertyFactory(elem, data) {\n        (this || _global).v = shapePool.newElement();\n\n        (this || _global).v.setPathData(true, 0);\n\n        (this || _global).elem = elem;\n        (this || _global).comp = elem.comp;\n        (this || _global).data = data;\n        (this || _global).frameId = -1;\n        (this || _global).d = data.d;\n        this.initDynamicPropertyContainer(elem);\n\n        if (data.sy === 1) {\n          (this || _global).ir = PropertyFactory.getProp(elem, data.ir, 0, 0, this || _global);\n          (this || _global).is = PropertyFactory.getProp(elem, data.is, 0, 0.01, this || _global);\n          (this || _global).convertToPath = (this || _global).convertStarToPath;\n        } else {\n          (this || _global).convertToPath = (this || _global).convertPolygonToPath;\n        }\n\n        (this || _global).pt = PropertyFactory.getProp(elem, data.pt, 0, 0, this || _global);\n        (this || _global).p = PropertyFactory.getProp(elem, data.p, 1, 0, this || _global);\n        (this || _global).r = PropertyFactory.getProp(elem, data.r, 0, degToRads, this || _global);\n        (this || _global).or = PropertyFactory.getProp(elem, data.or, 0, 0, this || _global);\n        (this || _global).os = PropertyFactory.getProp(elem, data.os, 0, 0.01, this || _global);\n        (this || _global).localShapeCollection = shapeCollectionPool.newShapeCollection();\n\n        (this || _global).localShapeCollection.addShape((this || _global).v);\n\n        (this || _global).paths = (this || _global).localShapeCollection;\n\n        if ((this || _global).dynamicProperties.length) {\n          (this || _global).k = true;\n        } else {\n          (this || _global).k = false;\n          this.convertToPath();\n        }\n      }\n\n      StarShapePropertyFactory.prototype = {\n        reset: resetShape,\n        getValue: function () {\n          if ((this || _global).elem.globalData.frameId === (this || _global).frameId) {\n            return;\n          }\n\n          (this || _global).frameId = (this || _global).elem.globalData.frameId;\n          this.iterateDynamicProperties();\n\n          if ((this || _global)._mdf) {\n            this.convertToPath();\n          }\n        },\n        convertStarToPath: function () {\n          var numPts = Math.floor((this || _global).pt.v) * 2;\n          var angle = Math.PI * 2 / numPts;\n          /* this.v.v.length = numPts;\r\n                  this.v.i.length = numPts;\r\n                  this.v.o.length = numPts; */\n\n          var longFlag = true;\n          var longRad = (this || _global).or.v;\n          var shortRad = (this || _global).ir.v;\n          var longRound = (this || _global).os.v;\n          var shortRound = (this || _global).is.v;\n          var longPerimSegment = 2 * Math.PI * longRad / (numPts * 2);\n          var shortPerimSegment = 2 * Math.PI * shortRad / (numPts * 2);\n          var i;\n          var rad;\n          var roundness;\n          var perimSegment;\n          var currentAng = -Math.PI / 2;\n          currentAng += (this || _global).r.v;\n          var dir = (this || _global).data.d === 3 ? -1 : 1;\n          (this || _global).v._length = 0;\n\n          for (i = 0; i < numPts; i += 1) {\n            rad = longFlag ? longRad : shortRad;\n            roundness = longFlag ? longRound : shortRound;\n            perimSegment = longFlag ? longPerimSegment : shortPerimSegment;\n            var x = rad * Math.cos(currentAng);\n            var y = rad * Math.sin(currentAng);\n            var ox = x === 0 && y === 0 ? 0 : y / Math.sqrt(x * x + y * y);\n            var oy = x === 0 && y === 0 ? 0 : -x / Math.sqrt(x * x + y * y);\n            x += +(this || _global).p.v[0];\n            y += +(this || _global).p.v[1];\n\n            (this || _global).v.setTripleAt(x, y, x - ox * perimSegment * roundness * dir, y - oy * perimSegment * roundness * dir, x + ox * perimSegment * roundness * dir, y + oy * perimSegment * roundness * dir, i, true);\n            /* this.v.v[i] = [x,y];\r\n                      this.v.i[i] = [x+ox*perimSegment*roundness*dir,y+oy*perimSegment*roundness*dir];\r\n                      this.v.o[i] = [x-ox*perimSegment*roundness*dir,y-oy*perimSegment*roundness*dir];\r\n                      this.v._length = numPts; */\n\n\n            longFlag = !longFlag;\n            currentAng += angle * dir;\n          }\n        },\n        convertPolygonToPath: function () {\n          var numPts = Math.floor((this || _global).pt.v);\n          var angle = Math.PI * 2 / numPts;\n          var rad = (this || _global).or.v;\n          var roundness = (this || _global).os.v;\n          var perimSegment = 2 * Math.PI * rad / (numPts * 4);\n          var i;\n          var currentAng = -Math.PI * 0.5;\n          var dir = (this || _global).data.d === 3 ? -1 : 1;\n          currentAng += (this || _global).r.v;\n          (this || _global).v._length = 0;\n\n          for (i = 0; i < numPts; i += 1) {\n            var x = rad * Math.cos(currentAng);\n            var y = rad * Math.sin(currentAng);\n            var ox = x === 0 && y === 0 ? 0 : y / Math.sqrt(x * x + y * y);\n            var oy = x === 0 && y === 0 ? 0 : -x / Math.sqrt(x * x + y * y);\n            x += +(this || _global).p.v[0];\n            y += +(this || _global).p.v[1];\n\n            (this || _global).v.setTripleAt(x, y, x - ox * perimSegment * roundness * dir, y - oy * perimSegment * roundness * dir, x + ox * perimSegment * roundness * dir, y + oy * perimSegment * roundness * dir, i, true);\n\n            currentAng += angle * dir;\n          }\n\n          (this || _global).paths.length = 0;\n          (this || _global).paths[0] = (this || _global).v;\n        }\n      };\n      extendPrototype([DynamicPropertyContainer], StarShapePropertyFactory);\n      return StarShapePropertyFactory;\n    }();\n\n    var RectShapeProperty = function () {\n      function RectShapePropertyFactory(elem, data) {\n        (this || _global).v = shapePool.newElement();\n        (this || _global).v.c = true;\n        (this || _global).localShapeCollection = shapeCollectionPool.newShapeCollection();\n\n        (this || _global).localShapeCollection.addShape((this || _global).v);\n\n        (this || _global).paths = (this || _global).localShapeCollection;\n        (this || _global).elem = elem;\n        (this || _global).comp = elem.comp;\n        (this || _global).frameId = -1;\n        (this || _global).d = data.d;\n        this.initDynamicPropertyContainer(elem);\n        (this || _global).p = PropertyFactory.getProp(elem, data.p, 1, 0, this || _global);\n        (this || _global).s = PropertyFactory.getProp(elem, data.s, 1, 0, this || _global);\n        (this || _global).r = PropertyFactory.getProp(elem, data.r, 0, 0, this || _global);\n\n        if ((this || _global).dynamicProperties.length) {\n          (this || _global).k = true;\n        } else {\n          (this || _global).k = false;\n          this.convertRectToPath();\n        }\n      }\n\n      RectShapePropertyFactory.prototype = {\n        convertRectToPath: function () {\n          var p0 = (this || _global).p.v[0];\n          var p1 = (this || _global).p.v[1];\n          var v0 = (this || _global).s.v[0] / 2;\n          var v1 = (this || _global).s.v[1] / 2;\n          var round = bmMin(v0, v1, (this || _global).r.v);\n          var cPoint = round * (1 - roundCorner);\n          (this || _global).v._length = 0;\n\n          if ((this || _global).d === 2 || (this || _global).d === 1) {\n            (this || _global).v.setTripleAt(p0 + v0, p1 - v1 + round, p0 + v0, p1 - v1 + round, p0 + v0, p1 - v1 + cPoint, 0, true);\n\n            (this || _global).v.setTripleAt(p0 + v0, p1 + v1 - round, p0 + v0, p1 + v1 - cPoint, p0 + v0, p1 + v1 - round, 1, true);\n\n            if (round !== 0) {\n              (this || _global).v.setTripleAt(p0 + v0 - round, p1 + v1, p0 + v0 - round, p1 + v1, p0 + v0 - cPoint, p1 + v1, 2, true);\n\n              (this || _global).v.setTripleAt(p0 - v0 + round, p1 + v1, p0 - v0 + cPoint, p1 + v1, p0 - v0 + round, p1 + v1, 3, true);\n\n              (this || _global).v.setTripleAt(p0 - v0, p1 + v1 - round, p0 - v0, p1 + v1 - round, p0 - v0, p1 + v1 - cPoint, 4, true);\n\n              (this || _global).v.setTripleAt(p0 - v0, p1 - v1 + round, p0 - v0, p1 - v1 + cPoint, p0 - v0, p1 - v1 + round, 5, true);\n\n              (this || _global).v.setTripleAt(p0 - v0 + round, p1 - v1, p0 - v0 + round, p1 - v1, p0 - v0 + cPoint, p1 - v1, 6, true);\n\n              (this || _global).v.setTripleAt(p0 + v0 - round, p1 - v1, p0 + v0 - cPoint, p1 - v1, p0 + v0 - round, p1 - v1, 7, true);\n            } else {\n              (this || _global).v.setTripleAt(p0 - v0, p1 + v1, p0 - v0 + cPoint, p1 + v1, p0 - v0, p1 + v1, 2);\n\n              (this || _global).v.setTripleAt(p0 - v0, p1 - v1, p0 - v0, p1 - v1 + cPoint, p0 - v0, p1 - v1, 3);\n            }\n          } else {\n            (this || _global).v.setTripleAt(p0 + v0, p1 - v1 + round, p0 + v0, p1 - v1 + cPoint, p0 + v0, p1 - v1 + round, 0, true);\n\n            if (round !== 0) {\n              (this || _global).v.setTripleAt(p0 + v0 - round, p1 - v1, p0 + v0 - round, p1 - v1, p0 + v0 - cPoint, p1 - v1, 1, true);\n\n              (this || _global).v.setTripleAt(p0 - v0 + round, p1 - v1, p0 - v0 + cPoint, p1 - v1, p0 - v0 + round, p1 - v1, 2, true);\n\n              (this || _global).v.setTripleAt(p0 - v0, p1 - v1 + round, p0 - v0, p1 - v1 + round, p0 - v0, p1 - v1 + cPoint, 3, true);\n\n              (this || _global).v.setTripleAt(p0 - v0, p1 + v1 - round, p0 - v0, p1 + v1 - cPoint, p0 - v0, p1 + v1 - round, 4, true);\n\n              (this || _global).v.setTripleAt(p0 - v0 + round, p1 + v1, p0 - v0 + round, p1 + v1, p0 - v0 + cPoint, p1 + v1, 5, true);\n\n              (this || _global).v.setTripleAt(p0 + v0 - round, p1 + v1, p0 + v0 - cPoint, p1 + v1, p0 + v0 - round, p1 + v1, 6, true);\n\n              (this || _global).v.setTripleAt(p0 + v0, p1 + v1 - round, p0 + v0, p1 + v1 - round, p0 + v0, p1 + v1 - cPoint, 7, true);\n            } else {\n              (this || _global).v.setTripleAt(p0 - v0, p1 - v1, p0 - v0 + cPoint, p1 - v1, p0 - v0, p1 - v1, 1, true);\n\n              (this || _global).v.setTripleAt(p0 - v0, p1 + v1, p0 - v0, p1 + v1 - cPoint, p0 - v0, p1 + v1, 2, true);\n\n              (this || _global).v.setTripleAt(p0 + v0, p1 + v1, p0 + v0 - cPoint, p1 + v1, p0 + v0, p1 + v1, 3, true);\n            }\n          }\n        },\n        getValue: function () {\n          if ((this || _global).elem.globalData.frameId === (this || _global).frameId) {\n            return;\n          }\n\n          (this || _global).frameId = (this || _global).elem.globalData.frameId;\n          this.iterateDynamicProperties();\n\n          if ((this || _global)._mdf) {\n            this.convertRectToPath();\n          }\n        },\n        reset: resetShape\n      };\n      extendPrototype([DynamicPropertyContainer], RectShapePropertyFactory);\n      return RectShapePropertyFactory;\n    }();\n\n    function getShapeProp(elem, data, type) {\n      var prop;\n\n      if (type === 3 || type === 4) {\n        var dataProp = type === 3 ? data.pt : data.ks;\n        var keys = dataProp.k;\n\n        if (keys.length) {\n          prop = new KeyframedShapeProperty(elem, data, type);\n        } else {\n          prop = new ShapeProperty(elem, data, type);\n        }\n      } else if (type === 5) {\n        prop = new RectShapeProperty(elem, data);\n      } else if (type === 6) {\n        prop = new EllShapeProperty(elem, data);\n      } else if (type === 7) {\n        prop = new StarShapeProperty(elem, data);\n      }\n\n      if (prop.k) {\n        elem.addDynamicProperty(prop);\n      }\n\n      return prop;\n    }\n\n    function getConstructorFunction() {\n      return ShapeProperty;\n    }\n\n    function getKeyframedConstructorFunction() {\n      return KeyframedShapeProperty;\n    }\n\n    var ob = {};\n    ob.getShapeProp = getShapeProp;\n    ob.getConstructorFunction = getConstructorFunction;\n    ob.getKeyframedConstructorFunction = getKeyframedConstructorFunction;\n    return ob;\n  }();\n  /* global shapeCollectionPool, initialDefaultFrame, extendPrototype, DynamicPropertyContainer */\n\n  /* exported ShapeModifiers */\n\n\n  var ShapeModifiers = function () {\n    var ob = {};\n    var modifiers = {};\n    ob.registerModifier = registerModifier;\n    ob.getModifier = getModifier;\n\n    function registerModifier(nm, factory) {\n      if (!modifiers[nm]) {\n        modifiers[nm] = factory;\n      }\n    }\n\n    function getModifier(nm, elem, data) {\n      return new modifiers[nm](elem, data);\n    }\n\n    return ob;\n  }();\n\n  function ShapeModifier() {}\n\n  ShapeModifier.prototype.initModifierProperties = function () {};\n\n  ShapeModifier.prototype.addShapeToModifier = function () {};\n\n  ShapeModifier.prototype.addShape = function (data) {\n    if (!(this || _global).closed) {\n      // Adding shape to dynamic properties. It covers the case where a shape has no effects applied, to reset it's _mdf state on every tick.\n      data.sh.container.addDynamicProperty(data.sh);\n      var shapeData = {\n        shape: data.sh,\n        data: data,\n        localShapeCollection: shapeCollectionPool.newShapeCollection()\n      };\n\n      (this || _global).shapes.push(shapeData);\n\n      this.addShapeToModifier(shapeData);\n\n      if ((this || _global)._isAnimated) {\n        data.setAsAnimated();\n      }\n    }\n  };\n\n  ShapeModifier.prototype.init = function (elem, data) {\n    (this || _global).shapes = [];\n    (this || _global).elem = elem;\n    this.initDynamicPropertyContainer(elem);\n    this.initModifierProperties(elem, data);\n    (this || _global).frameId = initialDefaultFrame;\n    (this || _global).closed = false;\n    (this || _global).k = false;\n\n    if ((this || _global).dynamicProperties.length) {\n      (this || _global).k = true;\n    } else {\n      this.getValue(true);\n    }\n  };\n\n  ShapeModifier.prototype.processKeys = function () {\n    if ((this || _global).elem.globalData.frameId === (this || _global).frameId) {\n      return;\n    }\n\n    (this || _global).frameId = (this || _global).elem.globalData.frameId;\n    this.iterateDynamicProperties();\n  };\n\n  extendPrototype([DynamicPropertyContainer], ShapeModifier);\n  /* global extendPrototype, ShapeModifier, PropertyFactory, segmentsLengthPool, bez, shapePool, ShapeModifiers */\n\n  function TrimModifier() {}\n\n  extendPrototype([ShapeModifier], TrimModifier);\n\n  TrimModifier.prototype.initModifierProperties = function (elem, data) {\n    (this || _global).s = PropertyFactory.getProp(elem, data.s, 0, 0.01, this || _global);\n    (this || _global).e = PropertyFactory.getProp(elem, data.e, 0, 0.01, this || _global);\n    (this || _global).o = PropertyFactory.getProp(elem, data.o, 0, 0, this || _global);\n    (this || _global).sValue = 0;\n    (this || _global).eValue = 0;\n    (this || _global).getValue = (this || _global).processKeys;\n    (this || _global).m = data.m;\n    (this || _global)._isAnimated = !!(this || _global).s.effectsSequence.length || !!(this || _global).e.effectsSequence.length || !!(this || _global).o.effectsSequence.length;\n  };\n\n  TrimModifier.prototype.addShapeToModifier = function (shapeData) {\n    shapeData.pathsData = [];\n  };\n\n  TrimModifier.prototype.calculateShapeEdges = function (s, e, shapeLength, addedLength, totalModifierLength) {\n    var segments = [];\n\n    if (e <= 1) {\n      segments.push({\n        s: s,\n        e: e\n      });\n    } else if (s >= 1) {\n      segments.push({\n        s: s - 1,\n        e: e - 1\n      });\n    } else {\n      segments.push({\n        s: s,\n        e: 1\n      });\n      segments.push({\n        s: 0,\n        e: e - 1\n      });\n    }\n\n    var shapeSegments = [];\n    var i;\n    var len = segments.length;\n    var segmentOb;\n\n    for (i = 0; i < len; i += 1) {\n      segmentOb = segments[i];\n\n      if (!(segmentOb.e * totalModifierLength < addedLength || segmentOb.s * totalModifierLength > addedLength + shapeLength)) {\n        var shapeS;\n        var shapeE;\n\n        if (segmentOb.s * totalModifierLength <= addedLength) {\n          shapeS = 0;\n        } else {\n          shapeS = (segmentOb.s * totalModifierLength - addedLength) / shapeLength;\n        }\n\n        if (segmentOb.e * totalModifierLength >= addedLength + shapeLength) {\n          shapeE = 1;\n        } else {\n          shapeE = (segmentOb.e * totalModifierLength - addedLength) / shapeLength;\n        }\n\n        shapeSegments.push([shapeS, shapeE]);\n      }\n    }\n\n    if (!shapeSegments.length) {\n      shapeSegments.push([0, 0]);\n    }\n\n    return shapeSegments;\n  };\n\n  TrimModifier.prototype.releasePathsData = function (pathsData) {\n    var i;\n    var len = pathsData.length;\n\n    for (i = 0; i < len; i += 1) {\n      segmentsLengthPool.release(pathsData[i]);\n    }\n\n    pathsData.length = 0;\n    return pathsData;\n  };\n\n  TrimModifier.prototype.processShapes = function (_isFirstFrame) {\n    var s;\n    var e;\n\n    if ((this || _global)._mdf || _isFirstFrame) {\n      var o = (this || _global).o.v % 360 / 360;\n\n      if (o < 0) {\n        o += 1;\n      }\n\n      if ((this || _global).s.v > 1) {\n        s = 1 + o;\n      } else if ((this || _global).s.v < 0) {\n        s = 0 + o;\n      } else {\n        s = (this || _global).s.v + o;\n      }\n\n      if ((this || _global).e.v > 1) {\n        e = 1 + o;\n      } else if ((this || _global).e.v < 0) {\n        e = 0 + o;\n      } else {\n        e = (this || _global).e.v + o;\n      }\n\n      if (s > e) {\n        var _s = s;\n        s = e;\n        e = _s;\n      }\n\n      s = Math.round(s * 10000) * 0.0001;\n      e = Math.round(e * 10000) * 0.0001;\n      (this || _global).sValue = s;\n      (this || _global).eValue = e;\n    } else {\n      s = (this || _global).sValue;\n      e = (this || _global).eValue;\n    }\n\n    var shapePaths;\n    var i;\n    var len = (this || _global).shapes.length;\n    var j;\n    var jLen;\n    var pathsData;\n    var pathData;\n    var totalShapeLength;\n    var totalModifierLength = 0;\n\n    if (e === s) {\n      for (i = 0; i < len; i += 1) {\n        (this || _global).shapes[i].localShapeCollection.releaseShapes();\n\n        (this || _global).shapes[i].shape._mdf = true;\n        (this || _global).shapes[i].shape.paths = (this || _global).shapes[i].localShapeCollection;\n\n        if ((this || _global)._mdf) {\n          (this || _global).shapes[i].pathsData.length = 0;\n        }\n      }\n    } else if (!(e === 1 && s === 0 || e === 0 && s === 1)) {\n      var segments = [];\n      var shapeData;\n      var localShapeCollection;\n\n      for (i = 0; i < len; i += 1) {\n        shapeData = (this || _global).shapes[i]; // if shape hasn't changed and trim properties haven't changed, cached previous path can be used\n\n        if (!shapeData.shape._mdf && !(this || _global)._mdf && !_isFirstFrame && (this || _global).m !== 2) {\n          shapeData.shape.paths = shapeData.localShapeCollection;\n        } else {\n          shapePaths = shapeData.shape.paths;\n          jLen = shapePaths._length;\n          totalShapeLength = 0;\n\n          if (!shapeData.shape._mdf && shapeData.pathsData.length) {\n            totalShapeLength = shapeData.totalShapeLength;\n          } else {\n            pathsData = this.releasePathsData(shapeData.pathsData);\n\n            for (j = 0; j < jLen; j += 1) {\n              pathData = bez.getSegmentsLength(shapePaths.shapes[j]);\n              pathsData.push(pathData);\n              totalShapeLength += pathData.totalLength;\n            }\n\n            shapeData.totalShapeLength = totalShapeLength;\n            shapeData.pathsData = pathsData;\n          }\n\n          totalModifierLength += totalShapeLength;\n          shapeData.shape._mdf = true;\n        }\n      }\n\n      var shapeS = s;\n      var shapeE = e;\n      var addedLength = 0;\n      var edges;\n\n      for (i = len - 1; i >= 0; i -= 1) {\n        shapeData = (this || _global).shapes[i];\n\n        if (shapeData.shape._mdf) {\n          localShapeCollection = shapeData.localShapeCollection;\n          localShapeCollection.releaseShapes(); // if m === 2 means paths are trimmed individually so edges need to be found for this specific shape relative to whoel group\n\n          if ((this || _global).m === 2 && len > 1) {\n            edges = this.calculateShapeEdges(s, e, shapeData.totalShapeLength, addedLength, totalModifierLength);\n            addedLength += shapeData.totalShapeLength;\n          } else {\n            edges = [[shapeS, shapeE]];\n          }\n\n          jLen = edges.length;\n\n          for (j = 0; j < jLen; j += 1) {\n            shapeS = edges[j][0];\n            shapeE = edges[j][1];\n            segments.length = 0;\n\n            if (shapeE <= 1) {\n              segments.push({\n                s: shapeData.totalShapeLength * shapeS,\n                e: shapeData.totalShapeLength * shapeE\n              });\n            } else if (shapeS >= 1) {\n              segments.push({\n                s: shapeData.totalShapeLength * (shapeS - 1),\n                e: shapeData.totalShapeLength * (shapeE - 1)\n              });\n            } else {\n              segments.push({\n                s: shapeData.totalShapeLength * shapeS,\n                e: shapeData.totalShapeLength\n              });\n              segments.push({\n                s: 0,\n                e: shapeData.totalShapeLength * (shapeE - 1)\n              });\n            }\n\n            var newShapesData = this.addShapes(shapeData, segments[0]);\n\n            if (segments[0].s !== segments[0].e) {\n              if (segments.length > 1) {\n                var lastShapeInCollection = shapeData.shape.paths.shapes[shapeData.shape.paths._length - 1];\n\n                if (lastShapeInCollection.c) {\n                  var lastShape = newShapesData.pop();\n                  this.addPaths(newShapesData, localShapeCollection);\n                  newShapesData = this.addShapes(shapeData, segments[1], lastShape);\n                } else {\n                  this.addPaths(newShapesData, localShapeCollection);\n                  newShapesData = this.addShapes(shapeData, segments[1]);\n                }\n              }\n\n              this.addPaths(newShapesData, localShapeCollection);\n            }\n          }\n\n          shapeData.shape.paths = localShapeCollection;\n        }\n      }\n    } else if ((this || _global)._mdf) {\n      for (i = 0; i < len; i += 1) {\n        // Releasign Trim Cached paths data when no trim applied in case shapes are modified inbetween.\n        // Don't remove this even if it's losing cached info.\n        (this || _global).shapes[i].pathsData.length = 0;\n        (this || _global).shapes[i].shape._mdf = true;\n      }\n    }\n  };\n\n  TrimModifier.prototype.addPaths = function (newPaths, localShapeCollection) {\n    var i;\n    var len = newPaths.length;\n\n    for (i = 0; i < len; i += 1) {\n      localShapeCollection.addShape(newPaths[i]);\n    }\n  };\n\n  TrimModifier.prototype.addSegment = function (pt1, pt2, pt3, pt4, shapePath, pos, newShape) {\n    shapePath.setXYAt(pt2[0], pt2[1], \"o\", pos);\n    shapePath.setXYAt(pt3[0], pt3[1], \"i\", pos + 1);\n\n    if (newShape) {\n      shapePath.setXYAt(pt1[0], pt1[1], \"v\", pos);\n    }\n\n    shapePath.setXYAt(pt4[0], pt4[1], \"v\", pos + 1);\n  };\n\n  TrimModifier.prototype.addSegmentFromArray = function (points, shapePath, pos, newShape) {\n    shapePath.setXYAt(points[1], points[5], \"o\", pos);\n    shapePath.setXYAt(points[2], points[6], \"i\", pos + 1);\n\n    if (newShape) {\n      shapePath.setXYAt(points[0], points[4], \"v\", pos);\n    }\n\n    shapePath.setXYAt(points[3], points[7], \"v\", pos + 1);\n  };\n\n  TrimModifier.prototype.addShapes = function (shapeData, shapeSegment, shapePath) {\n    var pathsData = shapeData.pathsData;\n    var shapePaths = shapeData.shape.paths.shapes;\n    var i;\n    var len = shapeData.shape.paths._length;\n    var j;\n    var jLen;\n    var addedLength = 0;\n    var currentLengthData;\n    var segmentCount;\n    var lengths;\n    var segment;\n    var shapes = [];\n    var initPos;\n    var newShape = true;\n\n    if (!shapePath) {\n      shapePath = shapePool.newElement();\n      segmentCount = 0;\n      initPos = 0;\n    } else {\n      segmentCount = shapePath._length;\n      initPos = shapePath._length;\n    }\n\n    shapes.push(shapePath);\n\n    for (i = 0; i < len; i += 1) {\n      lengths = pathsData[i].lengths;\n      shapePath.c = shapePaths[i].c;\n      jLen = shapePaths[i].c ? lengths.length : lengths.length + 1;\n\n      for (j = 1; j < jLen; j += 1) {\n        currentLengthData = lengths[j - 1];\n\n        if (addedLength + currentLengthData.addedLength < shapeSegment.s) {\n          addedLength += currentLengthData.addedLength;\n          shapePath.c = false;\n        } else if (addedLength > shapeSegment.e) {\n          shapePath.c = false;\n          break;\n        } else {\n          if (shapeSegment.s <= addedLength && shapeSegment.e >= addedLength + currentLengthData.addedLength) {\n            this.addSegment(shapePaths[i].v[j - 1], shapePaths[i].o[j - 1], shapePaths[i].i[j], shapePaths[i].v[j], shapePath, segmentCount, newShape);\n            newShape = false;\n          } else {\n            segment = bez.getNewSegment(shapePaths[i].v[j - 1], shapePaths[i].v[j], shapePaths[i].o[j - 1], shapePaths[i].i[j], (shapeSegment.s - addedLength) / currentLengthData.addedLength, (shapeSegment.e - addedLength) / currentLengthData.addedLength, lengths[j - 1]);\n            this.addSegmentFromArray(segment, shapePath, segmentCount, newShape); // this.addSegment(segment.pt1, segment.pt3, segment.pt4, segment.pt2, shapePath, segmentCount, newShape);\n\n            newShape = false;\n            shapePath.c = false;\n          }\n\n          addedLength += currentLengthData.addedLength;\n          segmentCount += 1;\n        }\n      }\n\n      if (shapePaths[i].c && lengths.length) {\n        currentLengthData = lengths[j - 1];\n\n        if (addedLength <= shapeSegment.e) {\n          var segmentLength = lengths[j - 1].addedLength;\n\n          if (shapeSegment.s <= addedLength && shapeSegment.e >= addedLength + segmentLength) {\n            this.addSegment(shapePaths[i].v[j - 1], shapePaths[i].o[j - 1], shapePaths[i].i[0], shapePaths[i].v[0], shapePath, segmentCount, newShape);\n            newShape = false;\n          } else {\n            segment = bez.getNewSegment(shapePaths[i].v[j - 1], shapePaths[i].v[0], shapePaths[i].o[j - 1], shapePaths[i].i[0], (shapeSegment.s - addedLength) / segmentLength, (shapeSegment.e - addedLength) / segmentLength, lengths[j - 1]);\n            this.addSegmentFromArray(segment, shapePath, segmentCount, newShape); // this.addSegment(segment.pt1, segment.pt3, segment.pt4, segment.pt2, shapePath, segmentCount, newShape);\n\n            newShape = false;\n            shapePath.c = false;\n          }\n        } else {\n          shapePath.c = false;\n        }\n\n        addedLength += currentLengthData.addedLength;\n        segmentCount += 1;\n      }\n\n      if (shapePath._length) {\n        shapePath.setXYAt(shapePath.v[initPos][0], shapePath.v[initPos][1], \"i\", initPos);\n        shapePath.setXYAt(shapePath.v[shapePath._length - 1][0], shapePath.v[shapePath._length - 1][1], \"o\", shapePath._length - 1);\n      }\n\n      if (addedLength > shapeSegment.e) {\n        break;\n      }\n\n      if (i < len - 1) {\n        shapePath = shapePool.newElement();\n        newShape = true;\n        shapes.push(shapePath);\n        segmentCount = 0;\n      }\n    }\n\n    return shapes;\n  };\n\n  ShapeModifiers.registerModifier(\"tm\", TrimModifier);\n  /* global extendPrototype, ShapeModifier, PropertyFactory, shapePool, roundCorner, ShapeModifiers */\n\n  function RoundCornersModifier() {}\n\n  extendPrototype([ShapeModifier], RoundCornersModifier);\n\n  RoundCornersModifier.prototype.initModifierProperties = function (elem, data) {\n    (this || _global).getValue = (this || _global).processKeys;\n    (this || _global).rd = PropertyFactory.getProp(elem, data.r, 0, null, this || _global);\n    (this || _global)._isAnimated = !!(this || _global).rd.effectsSequence.length;\n  };\n\n  RoundCornersModifier.prototype.processPath = function (path, round) {\n    var clonedPath = shapePool.newElement();\n    clonedPath.c = path.c;\n    var i;\n    var len = path._length;\n    var currentV;\n    var currentI;\n    var currentO;\n    var closerV;\n    var distance;\n    var newPosPerc;\n    var index = 0;\n    var vX;\n    var vY;\n    var oX;\n    var oY;\n    var iX;\n    var iY;\n\n    for (i = 0; i < len; i += 1) {\n      currentV = path.v[i];\n      currentO = path.o[i];\n      currentI = path.i[i];\n\n      if (currentV[0] === currentO[0] && currentV[1] === currentO[1] && currentV[0] === currentI[0] && currentV[1] === currentI[1]) {\n        if ((i === 0 || i === len - 1) && !path.c) {\n          clonedPath.setTripleAt(currentV[0], currentV[1], currentO[0], currentO[1], currentI[0], currentI[1], index);\n          /* clonedPath.v[index] = currentV;\r\n                  clonedPath.o[index] = currentO;\r\n                  clonedPath.i[index] = currentI; */\n\n          index += 1;\n        } else {\n          if (i === 0) {\n            closerV = path.v[len - 1];\n          } else {\n            closerV = path.v[i - 1];\n          }\n\n          distance = Math.sqrt(Math.pow(currentV[0] - closerV[0], 2) + Math.pow(currentV[1] - closerV[1], 2));\n          newPosPerc = distance ? Math.min(distance / 2, round) / distance : 0;\n          iX = currentV[0] + (closerV[0] - currentV[0]) * newPosPerc;\n          vX = iX;\n          iY = currentV[1] - (currentV[1] - closerV[1]) * newPosPerc;\n          vY = iY;\n          oX = vX - (vX - currentV[0]) * roundCorner;\n          oY = vY - (vY - currentV[1]) * roundCorner;\n          clonedPath.setTripleAt(vX, vY, oX, oY, iX, iY, index);\n          index += 1;\n\n          if (i === len - 1) {\n            closerV = path.v[0];\n          } else {\n            closerV = path.v[i + 1];\n          }\n\n          distance = Math.sqrt(Math.pow(currentV[0] - closerV[0], 2) + Math.pow(currentV[1] - closerV[1], 2));\n          newPosPerc = distance ? Math.min(distance / 2, round) / distance : 0;\n          oX = currentV[0] + (closerV[0] - currentV[0]) * newPosPerc;\n          vX = oX;\n          oY = currentV[1] + (closerV[1] - currentV[1]) * newPosPerc;\n          vY = oY;\n          iX = vX - (vX - currentV[0]) * roundCorner;\n          iY = vY - (vY - currentV[1]) * roundCorner;\n          clonedPath.setTripleAt(vX, vY, oX, oY, iX, iY, index);\n          index += 1;\n        }\n      } else {\n        clonedPath.setTripleAt(path.v[i][0], path.v[i][1], path.o[i][0], path.o[i][1], path.i[i][0], path.i[i][1], index);\n        index += 1;\n      }\n    }\n\n    return clonedPath;\n  };\n\n  RoundCornersModifier.prototype.processShapes = function (_isFirstFrame) {\n    var shapePaths;\n    var i;\n    var len = (this || _global).shapes.length;\n    var j;\n    var jLen;\n    var rd = (this || _global).rd.v;\n\n    if (rd !== 0) {\n      var shapeData;\n      var localShapeCollection;\n\n      for (i = 0; i < len; i += 1) {\n        shapeData = (this || _global).shapes[i];\n        localShapeCollection = shapeData.localShapeCollection;\n\n        if (!(!shapeData.shape._mdf && !(this || _global)._mdf && !_isFirstFrame)) {\n          localShapeCollection.releaseShapes();\n          shapeData.shape._mdf = true;\n          shapePaths = shapeData.shape.paths.shapes;\n          jLen = shapeData.shape.paths._length;\n\n          for (j = 0; j < jLen; j += 1) {\n            localShapeCollection.addShape(this.processPath(shapePaths[j], rd));\n          }\n        }\n\n        shapeData.shape.paths = shapeData.localShapeCollection;\n      }\n    }\n\n    if (!(this || _global).dynamicProperties.length) {\n      (this || _global)._mdf = false;\n    }\n  };\n\n  ShapeModifiers.registerModifier(\"rd\", RoundCornersModifier);\n  /* global extendPrototype, ShapeModifier, PropertyFactory, shapePool, ShapeModifiers */\n\n  function PuckerAndBloatModifier() {}\n\n  extendPrototype([ShapeModifier], PuckerAndBloatModifier);\n\n  PuckerAndBloatModifier.prototype.initModifierProperties = function (elem, data) {\n    (this || _global).getValue = (this || _global).processKeys;\n    (this || _global).amount = PropertyFactory.getProp(elem, data.a, 0, null, this || _global);\n    (this || _global)._isAnimated = !!(this || _global).amount.effectsSequence.length;\n  };\n\n  PuckerAndBloatModifier.prototype.processPath = function (path, amount) {\n    var percent = amount / 100;\n    var centerPoint = [0, 0];\n    var pathLength = path._length;\n    var i = 0;\n\n    for (i = 0; i < pathLength; i += 1) {\n      centerPoint[0] += path.v[i][0];\n      centerPoint[1] += path.v[i][1];\n    }\n\n    centerPoint[0] /= pathLength;\n    centerPoint[1] /= pathLength;\n    var clonedPath = shapePool.newElement();\n    clonedPath.c = path.c;\n    var vX;\n    var vY;\n    var oX;\n    var oY;\n    var iX;\n    var iY;\n\n    for (i = 0; i < pathLength; i += 1) {\n      vX = path.v[i][0] + (centerPoint[0] - path.v[i][0]) * percent;\n      vY = path.v[i][1] + (centerPoint[1] - path.v[i][1]) * percent;\n      oX = path.o[i][0] + (centerPoint[0] - path.o[i][0]) * -percent;\n      oY = path.o[i][1] + (centerPoint[1] - path.o[i][1]) * -percent;\n      iX = path.i[i][0] + (centerPoint[0] - path.i[i][0]) * -percent;\n      iY = path.i[i][1] + (centerPoint[1] - path.i[i][1]) * -percent;\n      clonedPath.setTripleAt(vX, vY, oX, oY, iX, iY, i);\n    }\n\n    return clonedPath;\n  };\n\n  PuckerAndBloatModifier.prototype.processShapes = function (_isFirstFrame) {\n    var shapePaths;\n    var i;\n    var len = (this || _global).shapes.length;\n    var j;\n    var jLen;\n    var amount = (this || _global).amount.v;\n\n    if (amount !== 0) {\n      var shapeData;\n      var localShapeCollection;\n\n      for (i = 0; i < len; i += 1) {\n        shapeData = (this || _global).shapes[i];\n        localShapeCollection = shapeData.localShapeCollection;\n\n        if (!(!shapeData.shape._mdf && !(this || _global)._mdf && !_isFirstFrame)) {\n          localShapeCollection.releaseShapes();\n          shapeData.shape._mdf = true;\n          shapePaths = shapeData.shape.paths.shapes;\n          jLen = shapeData.shape.paths._length;\n\n          for (j = 0; j < jLen; j += 1) {\n            localShapeCollection.addShape(this.processPath(shapePaths[j], amount));\n          }\n        }\n\n        shapeData.shape.paths = shapeData.localShapeCollection;\n      }\n    }\n\n    if (!(this || _global).dynamicProperties.length) {\n      (this || _global)._mdf = false;\n    }\n  };\n\n  ShapeModifiers.registerModifier(\"pb\", PuckerAndBloatModifier);\n  /* global extendPrototype, ShapeModifier, TransformPropertyFactory, PropertyFactory, Matrix, ShapeModifiers */\n\n  function RepeaterModifier() {}\n\n  extendPrototype([ShapeModifier], RepeaterModifier);\n\n  RepeaterModifier.prototype.initModifierProperties = function (elem, data) {\n    (this || _global).getValue = (this || _global).processKeys;\n    (this || _global).c = PropertyFactory.getProp(elem, data.c, 0, null, this || _global);\n    (this || _global).o = PropertyFactory.getProp(elem, data.o, 0, null, this || _global);\n    (this || _global).tr = TransformPropertyFactory.getTransformProperty(elem, data.tr, this || _global);\n    (this || _global).so = PropertyFactory.getProp(elem, data.tr.so, 0, 0.01, this || _global);\n    (this || _global).eo = PropertyFactory.getProp(elem, data.tr.eo, 0, 0.01, this || _global);\n    (this || _global).data = data;\n\n    if (!(this || _global).dynamicProperties.length) {\n      this.getValue(true);\n    }\n\n    (this || _global)._isAnimated = !!(this || _global).dynamicProperties.length;\n    (this || _global).pMatrix = new Matrix();\n    (this || _global).rMatrix = new Matrix();\n    (this || _global).sMatrix = new Matrix();\n    (this || _global).tMatrix = new Matrix();\n    (this || _global).matrix = new Matrix();\n  };\n\n  RepeaterModifier.prototype.applyTransforms = function (pMatrix, rMatrix, sMatrix, transform, perc, inv) {\n    var dir = inv ? -1 : 1;\n    var scaleX = transform.s.v[0] + (1 - transform.s.v[0]) * (1 - perc);\n    var scaleY = transform.s.v[1] + (1 - transform.s.v[1]) * (1 - perc);\n    pMatrix.translate(transform.p.v[0] * dir * perc, transform.p.v[1] * dir * perc, transform.p.v[2]);\n    rMatrix.translate(-transform.a.v[0], -transform.a.v[1], transform.a.v[2]);\n    rMatrix.rotate(-transform.r.v * dir * perc);\n    rMatrix.translate(transform.a.v[0], transform.a.v[1], transform.a.v[2]);\n    sMatrix.translate(-transform.a.v[0], -transform.a.v[1], transform.a.v[2]);\n    sMatrix.scale(inv ? 1 / scaleX : scaleX, inv ? 1 / scaleY : scaleY);\n    sMatrix.translate(transform.a.v[0], transform.a.v[1], transform.a.v[2]);\n  };\n\n  RepeaterModifier.prototype.init = function (elem, arr, pos, elemsData) {\n    (this || _global).elem = elem;\n    (this || _global).arr = arr;\n    (this || _global).pos = pos;\n    (this || _global).elemsData = elemsData;\n    (this || _global)._currentCopies = 0;\n    (this || _global)._elements = [];\n    (this || _global)._groups = [];\n    (this || _global).frameId = -1;\n    this.initDynamicPropertyContainer(elem);\n    this.initModifierProperties(elem, arr[pos]);\n\n    while (pos > 0) {\n      pos -= 1; // this._elements.unshift(arr.splice(pos,1)[0]);\n\n      (this || _global)._elements.unshift(arr[pos]);\n    }\n\n    if ((this || _global).dynamicProperties.length) {\n      (this || _global).k = true;\n    } else {\n      this.getValue(true);\n    }\n  };\n\n  RepeaterModifier.prototype.resetElements = function (elements) {\n    var i;\n    var len = elements.length;\n\n    for (i = 0; i < len; i += 1) {\n      elements[i]._processed = false;\n\n      if (elements[i].ty === \"gr\") {\n        this.resetElements(elements[i].it);\n      }\n    }\n  };\n\n  RepeaterModifier.prototype.cloneElements = function (elements) {\n    var newElements = JSON.parse(JSON.stringify(elements));\n    this.resetElements(newElements);\n    return newElements;\n  };\n\n  RepeaterModifier.prototype.changeGroupRender = function (elements, renderFlag) {\n    var i;\n    var len = elements.length;\n\n    for (i = 0; i < len; i += 1) {\n      elements[i]._render = renderFlag;\n\n      if (elements[i].ty === \"gr\") {\n        this.changeGroupRender(elements[i].it, renderFlag);\n      }\n    }\n  };\n\n  RepeaterModifier.prototype.processShapes = function (_isFirstFrame) {\n    var items;\n    var itemsTransform;\n    var i;\n    var dir;\n    var cont;\n    var hasReloaded = false;\n\n    if ((this || _global)._mdf || _isFirstFrame) {\n      var copies = Math.ceil((this || _global).c.v);\n\n      if ((this || _global)._groups.length < copies) {\n        while ((this || _global)._groups.length < copies) {\n          var group = {\n            it: this.cloneElements((this || _global)._elements),\n            ty: \"gr\"\n          };\n          group.it.push({\n            a: {\n              a: 0,\n              ix: 1,\n              k: [0, 0]\n            },\n            nm: \"Transform\",\n            o: {\n              a: 0,\n              ix: 7,\n              k: 100\n            },\n            p: {\n              a: 0,\n              ix: 2,\n              k: [0, 0]\n            },\n            r: {\n              a: 1,\n              ix: 6,\n              k: [{\n                s: 0,\n                e: 0,\n                t: 0\n              }, {\n                s: 0,\n                e: 0,\n                t: 1\n              }]\n            },\n            s: {\n              a: 0,\n              ix: 3,\n              k: [100, 100]\n            },\n            sa: {\n              a: 0,\n              ix: 5,\n              k: 0\n            },\n            sk: {\n              a: 0,\n              ix: 4,\n              k: 0\n            },\n            ty: \"tr\"\n          });\n\n          (this || _global).arr.splice(0, 0, group);\n\n          (this || _global)._groups.splice(0, 0, group);\n\n          (this || _global)._currentCopies += 1;\n        }\n\n        (this || _global).elem.reloadShapes();\n\n        hasReloaded = true;\n      }\n\n      cont = 0;\n      var renderFlag;\n\n      for (i = 0; i <= (this || _global)._groups.length - 1; i += 1) {\n        renderFlag = cont < copies;\n        (this || _global)._groups[i]._render = renderFlag;\n        this.changeGroupRender((this || _global)._groups[i].it, renderFlag);\n\n        if (!renderFlag) {\n          var elems = (this || _global).elemsData[i].it;\n          var transformData = elems[elems.length - 1];\n\n          if (transformData.transform.op.v !== 0) {\n            transformData.transform.op._mdf = true;\n            transformData.transform.op.v = 0;\n          } else {\n            transformData.transform.op._mdf = false;\n          }\n        }\n\n        cont += 1;\n      }\n\n      (this || _global)._currentCopies = copies; /// /\n\n      var offset = (this || _global).o.v;\n      var offsetModulo = offset % 1;\n      var roundOffset = offset > 0 ? Math.floor(offset) : Math.ceil(offset);\n      var pProps = (this || _global).pMatrix.props;\n      var rProps = (this || _global).rMatrix.props;\n      var sProps = (this || _global).sMatrix.props;\n\n      (this || _global).pMatrix.reset();\n\n      (this || _global).rMatrix.reset();\n\n      (this || _global).sMatrix.reset();\n\n      (this || _global).tMatrix.reset();\n\n      (this || _global).matrix.reset();\n\n      var iteration = 0;\n\n      if (offset > 0) {\n        while (iteration < roundOffset) {\n          this.applyTransforms((this || _global).pMatrix, (this || _global).rMatrix, (this || _global).sMatrix, (this || _global).tr, 1, false);\n          iteration += 1;\n        }\n\n        if (offsetModulo) {\n          this.applyTransforms((this || _global).pMatrix, (this || _global).rMatrix, (this || _global).sMatrix, (this || _global).tr, offsetModulo, false);\n          iteration += offsetModulo;\n        }\n      } else if (offset < 0) {\n        while (iteration > roundOffset) {\n          this.applyTransforms((this || _global).pMatrix, (this || _global).rMatrix, (this || _global).sMatrix, (this || _global).tr, 1, true);\n          iteration -= 1;\n        }\n\n        if (offsetModulo) {\n          this.applyTransforms((this || _global).pMatrix, (this || _global).rMatrix, (this || _global).sMatrix, (this || _global).tr, -offsetModulo, true);\n          iteration -= offsetModulo;\n        }\n      }\n\n      i = (this || _global).data.m === 1 ? 0 : (this || _global)._currentCopies - 1;\n      dir = (this || _global).data.m === 1 ? 1 : -1;\n      cont = (this || _global)._currentCopies;\n      var j;\n      var jLen;\n\n      while (cont) {\n        items = (this || _global).elemsData[i].it;\n        itemsTransform = items[items.length - 1].transform.mProps.v.props;\n        jLen = itemsTransform.length;\n        items[items.length - 1].transform.mProps._mdf = true;\n        items[items.length - 1].transform.op._mdf = true;\n        items[items.length - 1].transform.op.v = (this || _global)._currentCopies === 1 ? (this || _global).so.v : (this || _global).so.v + ((this || _global).eo.v - (this || _global).so.v) * (i / ((this || _global)._currentCopies - 1));\n\n        if (iteration !== 0) {\n          if (i !== 0 && dir === 1 || i !== (this || _global)._currentCopies - 1 && dir === -1) {\n            this.applyTransforms((this || _global).pMatrix, (this || _global).rMatrix, (this || _global).sMatrix, (this || _global).tr, 1, false);\n          }\n\n          (this || _global).matrix.transform(rProps[0], rProps[1], rProps[2], rProps[3], rProps[4], rProps[5], rProps[6], rProps[7], rProps[8], rProps[9], rProps[10], rProps[11], rProps[12], rProps[13], rProps[14], rProps[15]);\n\n          (this || _global).matrix.transform(sProps[0], sProps[1], sProps[2], sProps[3], sProps[4], sProps[5], sProps[6], sProps[7], sProps[8], sProps[9], sProps[10], sProps[11], sProps[12], sProps[13], sProps[14], sProps[15]);\n\n          (this || _global).matrix.transform(pProps[0], pProps[1], pProps[2], pProps[3], pProps[4], pProps[5], pProps[6], pProps[7], pProps[8], pProps[9], pProps[10], pProps[11], pProps[12], pProps[13], pProps[14], pProps[15]);\n\n          for (j = 0; j < jLen; j += 1) {\n            itemsTransform[j] = (this || _global).matrix.props[j];\n          }\n\n          (this || _global).matrix.reset();\n        } else {\n          (this || _global).matrix.reset();\n\n          for (j = 0; j < jLen; j += 1) {\n            itemsTransform[j] = (this || _global).matrix.props[j];\n          }\n        }\n\n        iteration += 1;\n        cont -= 1;\n        i += dir;\n      }\n    } else {\n      cont = (this || _global)._currentCopies;\n      i = 0;\n      dir = 1;\n\n      while (cont) {\n        items = (this || _global).elemsData[i].it;\n        itemsTransform = items[items.length - 1].transform.mProps.v.props;\n        items[items.length - 1].transform.mProps._mdf = false;\n        items[items.length - 1].transform.op._mdf = false;\n        cont -= 1;\n        i += dir;\n      }\n    }\n\n    return hasReloaded;\n  };\n\n  RepeaterModifier.prototype.addShape = function () {};\n\n  ShapeModifiers.registerModifier(\"rp\", RepeaterModifier);\n  /* global createSizedArray, shapePool */\n\n  function ShapeCollection() {\n    (this || _global)._length = 0;\n    (this || _global)._maxLength = 4;\n    (this || _global).shapes = createSizedArray((this || _global)._maxLength);\n  }\n\n  ShapeCollection.prototype.addShape = function (shapeData) {\n    if ((this || _global)._length === (this || _global)._maxLength) {\n      (this || _global).shapes = (this || _global).shapes.concat(createSizedArray((this || _global)._maxLength));\n      (this || _global)._maxLength *= 2;\n    }\n\n    (this || _global).shapes[(this || _global)._length] = shapeData;\n    (this || _global)._length += 1;\n  };\n\n  ShapeCollection.prototype.releaseShapes = function () {\n    var i;\n\n    for (i = 0; i < (this || _global)._length; i += 1) {\n      shapePool.release((this || _global).shapes[i]);\n    }\n\n    (this || _global)._length = 0;\n  };\n  /* global createSizedArray, createTypedArray, PropertyFactory, extendPrototype, DynamicPropertyContainer */\n\n\n  function DashProperty(elem, data, renderer, container) {\n    (this || _global).elem = elem;\n    (this || _global).frameId = -1;\n    (this || _global).dataProps = createSizedArray(data.length);\n    (this || _global).renderer = renderer;\n    (this || _global).k = false;\n    (this || _global).dashStr = \"\";\n    (this || _global).dashArray = createTypedArray(\"float32\", data.length ? data.length - 1 : 0);\n    (this || _global).dashoffset = createTypedArray(\"float32\", 1);\n    this.initDynamicPropertyContainer(container);\n    var i;\n    var len = data.length || 0;\n    var prop;\n\n    for (i = 0; i < len; i += 1) {\n      prop = PropertyFactory.getProp(elem, data[i].v, 0, 0, this || _global);\n      (this || _global).k = prop.k || (this || _global).k;\n      (this || _global).dataProps[i] = {\n        n: data[i].n,\n        p: prop\n      };\n    }\n\n    if (!(this || _global).k) {\n      this.getValue(true);\n    }\n\n    (this || _global)._isAnimated = (this || _global).k;\n  }\n\n  DashProperty.prototype.getValue = function (forceRender) {\n    if ((this || _global).elem.globalData.frameId === (this || _global).frameId && !forceRender) {\n      return;\n    }\n\n    (this || _global).frameId = (this || _global).elem.globalData.frameId;\n    this.iterateDynamicProperties();\n    (this || _global)._mdf = (this || _global)._mdf || forceRender;\n\n    if ((this || _global)._mdf) {\n      var i = 0;\n      var len = (this || _global).dataProps.length;\n\n      if ((this || _global).renderer === \"svg\") {\n        (this || _global).dashStr = \"\";\n      }\n\n      for (i = 0; i < len; i += 1) {\n        if ((this || _global).dataProps[i].n !== \"o\") {\n          if ((this || _global).renderer === \"svg\") {\n            (this || _global).dashStr += \" \" + (this || _global).dataProps[i].p.v;\n          } else {\n            (this || _global).dashArray[i] = (this || _global).dataProps[i].p.v;\n          }\n        } else {\n          (this || _global).dashoffset[0] = (this || _global).dataProps[i].p.v;\n        }\n      }\n    }\n  };\n\n  extendPrototype([DynamicPropertyContainer], DashProperty);\n  /* global createTypedArray, PropertyFactory, extendPrototype, DynamicPropertyContainer */\n\n  function GradientProperty(elem, data, container) {\n    (this || _global).data = data;\n    (this || _global).c = createTypedArray(\"uint8c\", data.p * 4);\n    var cLength = data.k.k[0].s ? data.k.k[0].s.length - data.p * 4 : data.k.k.length - data.p * 4;\n    (this || _global).o = createTypedArray(\"float32\", cLength);\n    (this || _global)._cmdf = false;\n    (this || _global)._omdf = false;\n    (this || _global)._collapsable = this.checkCollapsable();\n    (this || _global)._hasOpacity = cLength;\n    this.initDynamicPropertyContainer(container);\n    (this || _global).prop = PropertyFactory.getProp(elem, data.k, 1, null, this || _global);\n    (this || _global).k = (this || _global).prop.k;\n    this.getValue(true);\n  }\n\n  GradientProperty.prototype.comparePoints = function (values, points) {\n    var i = 0;\n    var len = (this || _global).o.length / 2;\n    var diff;\n\n    while (i < len) {\n      diff = Math.abs(values[i * 4] - values[points * 4 + i * 2]);\n\n      if (diff > 0.01) {\n        return false;\n      }\n\n      i += 1;\n    }\n\n    return true;\n  };\n\n  GradientProperty.prototype.checkCollapsable = function () {\n    if ((this || _global).o.length / 2 !== (this || _global).c.length / 4) {\n      return false;\n    }\n\n    if ((this || _global).data.k.k[0].s) {\n      var i = 0;\n      var len = (this || _global).data.k.k.length;\n\n      while (i < len) {\n        if (!this.comparePoints((this || _global).data.k.k[i].s, (this || _global).data.p)) {\n          return false;\n        }\n\n        i += 1;\n      }\n    } else if (!this.comparePoints((this || _global).data.k.k, (this || _global).data.p)) {\n      return false;\n    }\n\n    return true;\n  };\n\n  GradientProperty.prototype.getValue = function (forceRender) {\n    (this || _global).prop.getValue();\n\n    (this || _global)._mdf = false;\n    (this || _global)._cmdf = false;\n    (this || _global)._omdf = false;\n\n    if ((this || _global).prop._mdf || forceRender) {\n      var i;\n      var len = (this || _global).data.p * 4;\n      var mult;\n      var val;\n\n      for (i = 0; i < len; i += 1) {\n        mult = i % 4 === 0 ? 100 : 255;\n        val = Math.round((this || _global).prop.v[i] * mult);\n\n        if ((this || _global).c[i] !== val) {\n          (this || _global).c[i] = val;\n          (this || _global)._cmdf = !forceRender;\n        }\n      }\n\n      if ((this || _global).o.length) {\n        len = (this || _global).prop.v.length;\n\n        for (i = (this || _global).data.p * 4; i < len; i += 1) {\n          mult = i % 2 === 0 ? 100 : 1;\n          val = i % 2 === 0 ? Math.round((this || _global).prop.v[i] * 100) : (this || _global).prop.v[i];\n\n          if ((this || _global).o[i - (this || _global).data.p * 4] !== val) {\n            (this || _global).o[i - (this || _global).data.p * 4] = val;\n            (this || _global)._omdf = !forceRender;\n          }\n        }\n      }\n\n      (this || _global)._mdf = !forceRender;\n    }\n  };\n\n  extendPrototype([DynamicPropertyContainer], GradientProperty);\n  /* exported buildShapeString */\n\n  var buildShapeString = function (pathNodes, length, closed, mat) {\n    if (length === 0) {\n      return \"\";\n    }\n\n    var _o = pathNodes.o;\n    var _i = pathNodes.i;\n    var _v = pathNodes.v;\n    var i;\n    var shapeString = \" M\" + mat.applyToPointStringified(_v[0][0], _v[0][1]);\n\n    for (i = 1; i < length; i += 1) {\n      shapeString += \" C\" + mat.applyToPointStringified(_o[i - 1][0], _o[i - 1][1]) + \" \" + mat.applyToPointStringified(_i[i][0], _i[i][1]) + \" \" + mat.applyToPointStringified(_v[i][0], _v[i][1]);\n    }\n\n    if (closed && length) {\n      shapeString += \" C\" + mat.applyToPointStringified(_o[i - 1][0], _o[i - 1][1]) + \" \" + mat.applyToPointStringified(_i[0][0], _i[0][1]) + \" \" + mat.applyToPointStringified(_v[0][0], _v[0][1]);\n      shapeString += \"z\";\n    }\n\n    return shapeString;\n  };\n  /* global Howl */\n\n  /* exported audioControllerFactory */\n\n\n  var audioControllerFactory = function () {\n    function AudioController(audioFactory) {\n      (this || _global).audios = [];\n      (this || _global).audioFactory = audioFactory;\n      (this || _global)._volume = 1;\n      (this || _global)._isMuted = false;\n    }\n\n    AudioController.prototype = {\n      addAudio: function (audio) {\n        (this || _global).audios.push(audio);\n      },\n      pause: function () {\n        var i;\n        var len = (this || _global).audios.length;\n\n        for (i = 0; i < len; i += 1) {\n          (this || _global).audios[i].pause();\n        }\n      },\n      resume: function () {\n        var i;\n        var len = (this || _global).audios.length;\n\n        for (i = 0; i < len; i += 1) {\n          (this || _global).audios[i].resume();\n        }\n      },\n      setRate: function (rateValue) {\n        var i;\n        var len = (this || _global).audios.length;\n\n        for (i = 0; i < len; i += 1) {\n          (this || _global).audios[i].setRate(rateValue);\n        }\n      },\n      createAudio: function (assetPath) {\n        if ((this || _global).audioFactory) {\n          return this.audioFactory(assetPath);\n        }\n\n        if (Howl) {\n          return new Howl({\n            src: [assetPath]\n          });\n        }\n\n        return {\n          isPlaying: false,\n          play: function () {\n            (this || _global).isPlaying = true;\n          },\n          seek: function () {\n            (this || _global).isPlaying = false;\n          },\n          playing: function () {},\n          rate: function () {},\n          setVolume: function () {}\n        };\n      },\n      setAudioFactory: function (audioFactory) {\n        (this || _global).audioFactory = audioFactory;\n      },\n      setVolume: function (value) {\n        (this || _global)._volume = value;\n\n        this._updateVolume();\n      },\n      mute: function () {\n        (this || _global)._isMuted = true;\n\n        this._updateVolume();\n      },\n      unmute: function () {\n        (this || _global)._isMuted = false;\n\n        this._updateVolume();\n      },\n      getVolume: function () {\n        return (this || _global)._volume;\n      },\n      _updateVolume: function () {\n        var i;\n        var len = (this || _global).audios.length;\n\n        for (i = 0; i < len; i += 1) {\n          (this || _global).audios[i].volume((this || _global)._volume * ((this || _global)._isMuted ? 0 : 1));\n        }\n      }\n    };\n    return function () {\n      return new AudioController();\n    };\n  }();\n  /* global createTag, createNS, isSafari, assetLoader */\n\n  /* exported ImagePreloader */\n\n\n  var ImagePreloader = function () {\n    var proxyImage = function () {\n      var canvas = createTag(\"canvas\");\n      canvas.width = 1;\n      canvas.height = 1;\n      var ctx = canvas.getContext(\"2d\");\n      ctx.fillStyle = \"rgba(0,0,0,0)\";\n      ctx.fillRect(0, 0, 1, 1);\n      return canvas;\n    }();\n\n    function imageLoaded() {\n      (this || _global).loadedAssets += 1;\n\n      if ((this || _global).loadedAssets === (this || _global).totalImages && (this || _global).loadedFootagesCount === (this || _global).totalFootages) {\n        if ((this || _global).imagesLoadedCb) {\n          this.imagesLoadedCb(null);\n        }\n      }\n    }\n\n    function footageLoaded() {\n      (this || _global).loadedFootagesCount += 1;\n\n      if ((this || _global).loadedAssets === (this || _global).totalImages && (this || _global).loadedFootagesCount === (this || _global).totalFootages) {\n        if ((this || _global).imagesLoadedCb) {\n          this.imagesLoadedCb(null);\n        }\n      }\n    }\n\n    function getAssetsPath(assetData, assetsPath, originalPath) {\n      var path = \"\";\n\n      if (assetData.e) {\n        path = assetData.p;\n      } else if (assetsPath) {\n        var imagePath = assetData.p;\n\n        if (imagePath.indexOf(\"images/\") !== -1) {\n          imagePath = imagePath.split(\"/\")[1];\n        }\n\n        path = assetsPath + imagePath;\n      } else {\n        path = originalPath;\n        path += assetData.u ? assetData.u : \"\";\n        path += assetData.p;\n      }\n\n      return path;\n    }\n\n    function testImageLoaded(img) {\n      var _count = 0;\n      var intervalId = setInterval(function () {\n        var box = img.getBBox();\n\n        if (box.width || _count > 500) {\n          this._imageLoaded();\n\n          clearInterval(intervalId);\n        }\n\n        _count += 1;\n      }.bind(this || _global), 50);\n    }\n\n    function createImageData(assetData) {\n      var path = getAssetsPath(assetData, (this || _global).assetsPath, (this || _global).path);\n      var img = createNS(\"image\");\n\n      if (isSafari) {\n        this.testImageLoaded(img);\n      } else {\n        img.addEventListener(\"load\", (this || _global)._imageLoaded, false);\n      }\n\n      img.addEventListener(\"error\", function () {\n        ob.img = proxyImage;\n\n        this._imageLoaded();\n      }.bind(this || _global), false);\n      img.setAttributeNS(\"http://www.w3.org/1999/xlink\", \"href\", path);\n\n      if ((this || _global)._elementHelper.append) {\n        (this || _global)._elementHelper.append(img);\n      } else {\n        (this || _global)._elementHelper.appendChild(img);\n      }\n\n      var ob = {\n        img: img,\n        assetData: assetData\n      };\n      return ob;\n    }\n\n    function createImgData(assetData) {\n      var path = getAssetsPath(assetData, (this || _global).assetsPath, (this || _global).path);\n      var img = createTag(\"img\");\n      img.crossOrigin = \"anonymous\";\n      img.addEventListener(\"load\", (this || _global)._imageLoaded, false);\n      img.addEventListener(\"error\", function () {\n        ob.img = proxyImage;\n\n        this._imageLoaded();\n      }.bind(this || _global), false);\n      img.src = path;\n      var ob = {\n        img: img,\n        assetData: assetData\n      };\n      return ob;\n    }\n\n    function createFootageData(data) {\n      var ob = {\n        assetData: data\n      };\n      var path = getAssetsPath(data, (this || _global).assetsPath, (this || _global).path);\n      assetLoader.load(path, function (footageData) {\n        ob.img = footageData;\n\n        this._footageLoaded();\n      }.bind(this || _global), function () {\n        ob.img = {};\n\n        this._footageLoaded();\n      }.bind(this || _global));\n      return ob;\n    }\n\n    function loadAssets(assets, cb) {\n      (this || _global).imagesLoadedCb = cb;\n      var i;\n      var len = assets.length;\n\n      for (i = 0; i < len; i += 1) {\n        if (!assets[i].layers) {\n          if (!assets[i].t) {\n            (this || _global).totalImages += 1;\n\n            (this || _global).images.push(this._createImageData(assets[i]));\n          } else if (assets[i].t === 3) {\n            (this || _global).totalFootages += 1;\n\n            (this || _global).images.push(this.createFootageData(assets[i]));\n          }\n        }\n      }\n    }\n\n    function setPath(path) {\n      (this || _global).path = path || \"\";\n    }\n\n    function setAssetsPath(path) {\n      (this || _global).assetsPath = path || \"\";\n    }\n\n    function getAsset(assetData) {\n      var i = 0;\n      var len = (this || _global).images.length;\n\n      while (i < len) {\n        if ((this || _global).images[i].assetData === assetData) {\n          return (this || _global).images[i].img;\n        }\n\n        i += 1;\n      }\n\n      return null;\n    }\n\n    function destroy() {\n      (this || _global).imagesLoadedCb = null;\n      (this || _global).images.length = 0;\n    }\n\n    function loadedImages() {\n      return (this || _global).totalImages === (this || _global).loadedAssets;\n    }\n\n    function loadedFootages() {\n      return (this || _global).totalFootages === (this || _global).loadedFootagesCount;\n    }\n\n    function setCacheType(type, elementHelper) {\n      if (type === \"svg\") {\n        (this || _global)._elementHelper = elementHelper;\n        (this || _global)._createImageData = (this || _global).createImageData.bind(this || _global);\n      } else {\n        (this || _global)._createImageData = (this || _global).createImgData.bind(this || _global);\n      }\n    }\n\n    function ImagePreloaderFactory() {\n      (this || _global)._imageLoaded = imageLoaded.bind(this || _global);\n      (this || _global)._footageLoaded = footageLoaded.bind(this || _global);\n      (this || _global).testImageLoaded = testImageLoaded.bind(this || _global);\n      (this || _global).createFootageData = createFootageData.bind(this || _global);\n      (this || _global).assetsPath = \"\";\n      (this || _global).path = \"\";\n      (this || _global).totalImages = 0;\n      (this || _global).totalFootages = 0;\n      (this || _global).loadedAssets = 0;\n      (this || _global).loadedFootagesCount = 0;\n      (this || _global).imagesLoadedCb = null;\n      (this || _global).images = [];\n    }\n\n    ImagePreloaderFactory.prototype = {\n      loadAssets: loadAssets,\n      setAssetsPath: setAssetsPath,\n      setPath: setPath,\n      loadedImages: loadedImages,\n      loadedFootages: loadedFootages,\n      destroy: destroy,\n      getAsset: getAsset,\n      createImgData: createImgData,\n      createImageData: createImageData,\n      imageLoaded: imageLoaded,\n      footageLoaded: footageLoaded,\n      setCacheType: setCacheType\n    };\n    return ImagePreloaderFactory;\n  }();\n  /* exported featureSupport */\n\n\n  var featureSupport = function () {\n    var ob = {\n      maskType: true\n    };\n\n    if (/MSIE 10/i.test(navigator.userAgent) || /MSIE 9/i.test(navigator.userAgent) || /rv:11.0/i.test(navigator.userAgent) || /Edge\\/\\d./i.test(navigator.userAgent)) {\n      ob.maskType = false;\n    }\n\n    return ob;\n  }();\n  /* global createNS */\n\n  /* exported filtersFactory */\n\n\n  var filtersFactory = function () {\n    var ob = {};\n    ob.createFilter = createFilter;\n    ob.createAlphaToLuminanceFilter = createAlphaToLuminanceFilter;\n\n    function createFilter(filId, skipCoordinates) {\n      var fil = createNS(\"filter\");\n      fil.setAttribute(\"id\", filId);\n\n      if (skipCoordinates !== true) {\n        fil.setAttribute(\"filterUnits\", \"objectBoundingBox\");\n        fil.setAttribute(\"x\", \"0%\");\n        fil.setAttribute(\"y\", \"0%\");\n        fil.setAttribute(\"width\", \"100%\");\n        fil.setAttribute(\"height\", \"100%\");\n      }\n\n      return fil;\n    }\n\n    function createAlphaToLuminanceFilter() {\n      var feColorMatrix = createNS(\"feColorMatrix\");\n      feColorMatrix.setAttribute(\"type\", \"matrix\");\n      feColorMatrix.setAttribute(\"color-interpolation-filters\", \"sRGB\");\n      feColorMatrix.setAttribute(\"values\", \"0 0 0 1 0  0 0 0 1 0  0 0 0 1 0  0 0 0 1 1\");\n      return feColorMatrix;\n    }\n\n    return ob;\n  }();\n  /* exported assetLoader */\n\n\n  var assetLoader = function () {\n    function formatResponse(xhr) {\n      if (xhr.response && typeof xhr.response === \"object\") {\n        return xhr.response;\n      }\n\n      if (xhr.response && typeof xhr.response === \"string\") {\n        return JSON.parse(xhr.response);\n      }\n\n      if (xhr.responseText) {\n        return JSON.parse(xhr.responseText);\n      }\n\n      return null;\n    }\n\n    function loadAsset(path, callback, errorCallback) {\n      var response;\n      var xhr = new XMLHttpRequest(); // set responseType after calling open or IE will break.\n\n      try {\n        // This crashes on Android WebView prior to KitKat\n        xhr.responseType = \"json\";\n      } catch (err) {} // eslint-disable-line no-empty\n\n\n      xhr.onreadystatechange = function () {\n        if (xhr.readyState === 4) {\n          if (xhr.status === 200) {\n            response = formatResponse(xhr);\n            callback(response);\n          } else {\n            try {\n              response = formatResponse(xhr);\n              callback(response);\n            } catch (err) {\n              if (errorCallback) {\n                errorCallback(err);\n              }\n            }\n          }\n        }\n      };\n\n      xhr.open(\"GET\", path, true);\n      xhr.send();\n    }\n\n    return {\n      load: loadAsset\n    };\n  }();\n  /* global createSizedArray, PropertyFactory, TextAnimatorDataProperty, bez, addHueToRGB,\r\n    addSaturationToRGB, addBrightnessToRGB, LetterProps, Matrix, extendPrototype, DynamicPropertyContainer */\n\n\n  function TextAnimatorProperty(textData, renderType, elem) {\n    (this || _global)._isFirstFrame = true;\n    (this || _global)._hasMaskedPath = false;\n    (this || _global)._frameId = -1;\n    (this || _global)._textData = textData;\n    (this || _global)._renderType = renderType;\n    (this || _global)._elem = elem;\n    (this || _global)._animatorsData = createSizedArray((this || _global)._textData.a.length);\n    (this || _global)._pathData = {};\n    (this || _global)._moreOptions = {\n      alignment: {}\n    };\n    (this || _global).renderedLetters = [];\n    (this || _global).lettersChangedFlag = false;\n    this.initDynamicPropertyContainer(elem);\n  }\n\n  TextAnimatorProperty.prototype.searchProperties = function () {\n    var i;\n    var len = (this || _global)._textData.a.length;\n    var animatorProps;\n    var getProp = PropertyFactory.getProp;\n\n    for (i = 0; i < len; i += 1) {\n      animatorProps = (this || _global)._textData.a[i];\n      (this || _global)._animatorsData[i] = new TextAnimatorDataProperty((this || _global)._elem, animatorProps, this || _global);\n    }\n\n    if ((this || _global)._textData.p && \"m\" in (this || _global)._textData.p) {\n      (this || _global)._pathData = {\n        f: getProp((this || _global)._elem, (this || _global)._textData.p.f, 0, 0, this || _global),\n        l: getProp((this || _global)._elem, (this || _global)._textData.p.l, 0, 0, this || _global),\n        r: (this || _global)._textData.p.r,\n        m: (this || _global)._elem.maskManager.getMaskProperty((this || _global)._textData.p.m)\n      };\n      (this || _global)._hasMaskedPath = true;\n    } else {\n      (this || _global)._hasMaskedPath = false;\n    }\n\n    (this || _global)._moreOptions.alignment = getProp((this || _global)._elem, (this || _global)._textData.m.a, 1, 0, this || _global);\n  };\n\n  TextAnimatorProperty.prototype.getMeasures = function (documentData, lettersChangedFlag) {\n    (this || _global).lettersChangedFlag = lettersChangedFlag;\n\n    if (!(this || _global)._mdf && !(this || _global)._isFirstFrame && !lettersChangedFlag && (!(this || _global)._hasMaskedPath || !(this || _global)._pathData.m._mdf)) {\n      return;\n    }\n\n    (this || _global)._isFirstFrame = false;\n    var alignment = (this || _global)._moreOptions.alignment.v;\n    var animators = (this || _global)._animatorsData;\n    var textData = (this || _global)._textData;\n    var matrixHelper = (this || _global).mHelper;\n    var renderType = (this || _global)._renderType;\n    var renderedLettersCount = (this || _global).renderedLetters.length;\n    var xPos;\n    var yPos;\n    var i;\n    var len;\n    var letters = documentData.l;\n    var pathInfo;\n    var currentLength;\n    var currentPoint;\n    var segmentLength;\n    var flag;\n    var pointInd;\n    var segmentInd;\n    var prevPoint;\n    var points;\n    var segments;\n    var partialLength;\n    var totalLength;\n    var perc;\n    var tanAngle;\n    var mask;\n\n    if ((this || _global)._hasMaskedPath) {\n      mask = (this || _global)._pathData.m;\n\n      if (!(this || _global)._pathData.n || (this || _global)._pathData._mdf) {\n        var paths = mask.v;\n\n        if ((this || _global)._pathData.r) {\n          paths = paths.reverse();\n        } // TODO: release bezier data cached from previous pathInfo: this._pathData.pi\n\n\n        pathInfo = {\n          tLength: 0,\n          segments: []\n        };\n        len = paths._length - 1;\n        var bezierData;\n        totalLength = 0;\n\n        for (i = 0; i < len; i += 1) {\n          bezierData = bez.buildBezierData(paths.v[i], paths.v[i + 1], [paths.o[i][0] - paths.v[i][0], paths.o[i][1] - paths.v[i][1]], [paths.i[i + 1][0] - paths.v[i + 1][0], paths.i[i + 1][1] - paths.v[i + 1][1]]);\n          pathInfo.tLength += bezierData.segmentLength;\n          pathInfo.segments.push(bezierData);\n          totalLength += bezierData.segmentLength;\n        }\n\n        i = len;\n\n        if (mask.v.c) {\n          bezierData = bez.buildBezierData(paths.v[i], paths.v[0], [paths.o[i][0] - paths.v[i][0], paths.o[i][1] - paths.v[i][1]], [paths.i[0][0] - paths.v[0][0], paths.i[0][1] - paths.v[0][1]]);\n          pathInfo.tLength += bezierData.segmentLength;\n          pathInfo.segments.push(bezierData);\n          totalLength += bezierData.segmentLength;\n        }\n\n        (this || _global)._pathData.pi = pathInfo;\n      }\n\n      pathInfo = (this || _global)._pathData.pi;\n      currentLength = (this || _global)._pathData.f.v;\n      segmentInd = 0;\n      pointInd = 1;\n      segmentLength = 0;\n      flag = true;\n      segments = pathInfo.segments;\n\n      if (currentLength < 0 && mask.v.c) {\n        if (pathInfo.tLength < Math.abs(currentLength)) {\n          currentLength = -Math.abs(currentLength) % pathInfo.tLength;\n        }\n\n        segmentInd = segments.length - 1;\n        points = segments[segmentInd].points;\n        pointInd = points.length - 1;\n\n        while (currentLength < 0) {\n          currentLength += points[pointInd].partialLength;\n          pointInd -= 1;\n\n          if (pointInd < 0) {\n            segmentInd -= 1;\n            points = segments[segmentInd].points;\n            pointInd = points.length - 1;\n          }\n        }\n      }\n\n      points = segments[segmentInd].points;\n      prevPoint = points[pointInd - 1];\n      currentPoint = points[pointInd];\n      partialLength = currentPoint.partialLength;\n    }\n\n    len = letters.length;\n    xPos = 0;\n    yPos = 0;\n    var yOff = documentData.finalSize * 1.2 * 0.714;\n    var firstLine = true;\n    var animatorProps;\n    var animatorSelector;\n    var j;\n    var jLen;\n    var letterValue;\n    jLen = animators.length;\n    var mult;\n    var ind = -1;\n    var offf;\n    var xPathPos;\n    var yPathPos;\n    var initPathPos = currentLength;\n    var initSegmentInd = segmentInd;\n    var initPointInd = pointInd;\n    var currentLine = -1;\n    var elemOpacity;\n    var sc;\n    var sw;\n    var fc;\n    var k;\n    var letterSw;\n    var letterSc;\n    var letterFc;\n    var letterM = \"\";\n    var letterP = (this || _global).defaultPropsArray;\n    var letterO; //\n\n    if (documentData.j === 2 || documentData.j === 1) {\n      var animatorJustifyOffset = 0;\n      var animatorFirstCharOffset = 0;\n      var justifyOffsetMult = documentData.j === 2 ? -0.5 : -1;\n      var lastIndex = 0;\n      var isNewLine = true;\n\n      for (i = 0; i < len; i += 1) {\n        if (letters[i].n) {\n          if (animatorJustifyOffset) {\n            animatorJustifyOffset += animatorFirstCharOffset;\n          }\n\n          while (lastIndex < i) {\n            letters[lastIndex].animatorJustifyOffset = animatorJustifyOffset;\n            lastIndex += 1;\n          }\n\n          animatorJustifyOffset = 0;\n          isNewLine = true;\n        } else {\n          for (j = 0; j < jLen; j += 1) {\n            animatorProps = animators[j].a;\n\n            if (animatorProps.t.propType) {\n              if (isNewLine && documentData.j === 2) {\n                animatorFirstCharOffset += animatorProps.t.v * justifyOffsetMult;\n              }\n\n              animatorSelector = animators[j].s;\n              mult = animatorSelector.getMult(letters[i].anIndexes[j], textData.a[j].s.totalChars);\n\n              if (mult.length) {\n                animatorJustifyOffset += animatorProps.t.v * mult[0] * justifyOffsetMult;\n              } else {\n                animatorJustifyOffset += animatorProps.t.v * mult * justifyOffsetMult;\n              }\n            }\n          }\n\n          isNewLine = false;\n        }\n      }\n\n      if (animatorJustifyOffset) {\n        animatorJustifyOffset += animatorFirstCharOffset;\n      }\n\n      while (lastIndex < i) {\n        letters[lastIndex].animatorJustifyOffset = animatorJustifyOffset;\n        lastIndex += 1;\n      }\n    } //\n\n\n    for (i = 0; i < len; i += 1) {\n      matrixHelper.reset();\n      elemOpacity = 1;\n\n      if (letters[i].n) {\n        xPos = 0;\n        yPos += documentData.yOffset;\n        yPos += firstLine ? 1 : 0;\n        currentLength = initPathPos;\n        firstLine = false;\n\n        if ((this || _global)._hasMaskedPath) {\n          segmentInd = initSegmentInd;\n          pointInd = initPointInd;\n          points = segments[segmentInd].points;\n          prevPoint = points[pointInd - 1];\n          currentPoint = points[pointInd];\n          partialLength = currentPoint.partialLength;\n          segmentLength = 0;\n        }\n\n        letterM = \"\";\n        letterFc = \"\";\n        letterSw = \"\";\n        letterO = \"\";\n        letterP = (this || _global).defaultPropsArray;\n      } else {\n        if ((this || _global)._hasMaskedPath) {\n          if (currentLine !== letters[i].line) {\n            switch (documentData.j) {\n              case 1:\n                currentLength += totalLength - documentData.lineWidths[letters[i].line];\n                break;\n\n              case 2:\n                currentLength += (totalLength - documentData.lineWidths[letters[i].line]) / 2;\n                break;\n\n              default:\n                break;\n            }\n\n            currentLine = letters[i].line;\n          }\n\n          if (ind !== letters[i].ind) {\n            if (letters[ind]) {\n              currentLength += letters[ind].extra;\n            }\n\n            currentLength += letters[i].an / 2;\n            ind = letters[i].ind;\n          }\n\n          currentLength += alignment[0] * letters[i].an * 0.005;\n          var animatorOffset = 0;\n\n          for (j = 0; j < jLen; j += 1) {\n            animatorProps = animators[j].a;\n\n            if (animatorProps.p.propType) {\n              animatorSelector = animators[j].s;\n              mult = animatorSelector.getMult(letters[i].anIndexes[j], textData.a[j].s.totalChars);\n\n              if (mult.length) {\n                animatorOffset += animatorProps.p.v[0] * mult[0];\n              } else {\n                animatorOffset += animatorProps.p.v[0] * mult;\n              }\n            }\n\n            if (animatorProps.a.propType) {\n              animatorSelector = animators[j].s;\n              mult = animatorSelector.getMult(letters[i].anIndexes[j], textData.a[j].s.totalChars);\n\n              if (mult.length) {\n                animatorOffset += animatorProps.a.v[0] * mult[0];\n              } else {\n                animatorOffset += animatorProps.a.v[0] * mult;\n              }\n            }\n          }\n\n          flag = true;\n\n          while (flag) {\n            if (segmentLength + partialLength >= currentLength + animatorOffset || !points) {\n              perc = (currentLength + animatorOffset - segmentLength) / currentPoint.partialLength;\n              xPathPos = prevPoint.point[0] + (currentPoint.point[0] - prevPoint.point[0]) * perc;\n              yPathPos = prevPoint.point[1] + (currentPoint.point[1] - prevPoint.point[1]) * perc;\n              matrixHelper.translate(-alignment[0] * letters[i].an * 0.005, -(alignment[1] * yOff) * 0.01);\n              flag = false;\n            } else if (points) {\n              segmentLength += currentPoint.partialLength;\n              pointInd += 1;\n\n              if (pointInd >= points.length) {\n                pointInd = 0;\n                segmentInd += 1;\n\n                if (!segments[segmentInd]) {\n                  if (mask.v.c) {\n                    pointInd = 0;\n                    segmentInd = 0;\n                    points = segments[segmentInd].points;\n                  } else {\n                    segmentLength -= currentPoint.partialLength;\n                    points = null;\n                  }\n                } else {\n                  points = segments[segmentInd].points;\n                }\n              }\n\n              if (points) {\n                prevPoint = currentPoint;\n                currentPoint = points[pointInd];\n                partialLength = currentPoint.partialLength;\n              }\n            }\n          }\n\n          offf = letters[i].an / 2 - letters[i].add;\n          matrixHelper.translate(-offf, 0, 0);\n        } else {\n          offf = letters[i].an / 2 - letters[i].add;\n          matrixHelper.translate(-offf, 0, 0); // Grouping alignment\n\n          matrixHelper.translate(-alignment[0] * letters[i].an * 0.005, -alignment[1] * yOff * 0.01, 0);\n        }\n\n        for (j = 0; j < jLen; j += 1) {\n          animatorProps = animators[j].a;\n\n          if (animatorProps.t.propType) {\n            animatorSelector = animators[j].s;\n            mult = animatorSelector.getMult(letters[i].anIndexes[j], textData.a[j].s.totalChars); // This condition is to prevent applying tracking to first character in each line. Might be better to use a boolean \"isNewLine\"\n\n            if (xPos !== 0 || documentData.j !== 0) {\n              if ((this || _global)._hasMaskedPath) {\n                if (mult.length) {\n                  currentLength += animatorProps.t.v * mult[0];\n                } else {\n                  currentLength += animatorProps.t.v * mult;\n                }\n              } else if (mult.length) {\n                xPos += animatorProps.t.v * mult[0];\n              } else {\n                xPos += animatorProps.t.v * mult;\n              }\n            }\n          }\n        }\n\n        if (documentData.strokeWidthAnim) {\n          sw = documentData.sw || 0;\n        }\n\n        if (documentData.strokeColorAnim) {\n          if (documentData.sc) {\n            sc = [documentData.sc[0], documentData.sc[1], documentData.sc[2]];\n          } else {\n            sc = [0, 0, 0];\n          }\n        }\n\n        if (documentData.fillColorAnim && documentData.fc) {\n          fc = [documentData.fc[0], documentData.fc[1], documentData.fc[2]];\n        }\n\n        for (j = 0; j < jLen; j += 1) {\n          animatorProps = animators[j].a;\n\n          if (animatorProps.a.propType) {\n            animatorSelector = animators[j].s;\n            mult = animatorSelector.getMult(letters[i].anIndexes[j], textData.a[j].s.totalChars);\n\n            if (mult.length) {\n              matrixHelper.translate(-animatorProps.a.v[0] * mult[0], -animatorProps.a.v[1] * mult[1], animatorProps.a.v[2] * mult[2]);\n            } else {\n              matrixHelper.translate(-animatorProps.a.v[0] * mult, -animatorProps.a.v[1] * mult, animatorProps.a.v[2] * mult);\n            }\n          }\n        }\n\n        for (j = 0; j < jLen; j += 1) {\n          animatorProps = animators[j].a;\n\n          if (animatorProps.s.propType) {\n            animatorSelector = animators[j].s;\n            mult = animatorSelector.getMult(letters[i].anIndexes[j], textData.a[j].s.totalChars);\n\n            if (mult.length) {\n              matrixHelper.scale(1 + (animatorProps.s.v[0] - 1) * mult[0], 1 + (animatorProps.s.v[1] - 1) * mult[1], 1);\n            } else {\n              matrixHelper.scale(1 + (animatorProps.s.v[0] - 1) * mult, 1 + (animatorProps.s.v[1] - 1) * mult, 1);\n            }\n          }\n        }\n\n        for (j = 0; j < jLen; j += 1) {\n          animatorProps = animators[j].a;\n          animatorSelector = animators[j].s;\n          mult = animatorSelector.getMult(letters[i].anIndexes[j], textData.a[j].s.totalChars);\n\n          if (animatorProps.sk.propType) {\n            if (mult.length) {\n              matrixHelper.skewFromAxis(-animatorProps.sk.v * mult[0], animatorProps.sa.v * mult[1]);\n            } else {\n              matrixHelper.skewFromAxis(-animatorProps.sk.v * mult, animatorProps.sa.v * mult);\n            }\n          }\n\n          if (animatorProps.r.propType) {\n            if (mult.length) {\n              matrixHelper.rotateZ(-animatorProps.r.v * mult[2]);\n            } else {\n              matrixHelper.rotateZ(-animatorProps.r.v * mult);\n            }\n          }\n\n          if (animatorProps.ry.propType) {\n            if (mult.length) {\n              matrixHelper.rotateY(animatorProps.ry.v * mult[1]);\n            } else {\n              matrixHelper.rotateY(animatorProps.ry.v * mult);\n            }\n          }\n\n          if (animatorProps.rx.propType) {\n            if (mult.length) {\n              matrixHelper.rotateX(animatorProps.rx.v * mult[0]);\n            } else {\n              matrixHelper.rotateX(animatorProps.rx.v * mult);\n            }\n          }\n\n          if (animatorProps.o.propType) {\n            if (mult.length) {\n              elemOpacity += (animatorProps.o.v * mult[0] - elemOpacity) * mult[0];\n            } else {\n              elemOpacity += (animatorProps.o.v * mult - elemOpacity) * mult;\n            }\n          }\n\n          if (documentData.strokeWidthAnim && animatorProps.sw.propType) {\n            if (mult.length) {\n              sw += animatorProps.sw.v * mult[0];\n            } else {\n              sw += animatorProps.sw.v * mult;\n            }\n          }\n\n          if (documentData.strokeColorAnim && animatorProps.sc.propType) {\n            for (k = 0; k < 3; k += 1) {\n              if (mult.length) {\n                sc[k] += (animatorProps.sc.v[k] - sc[k]) * mult[0];\n              } else {\n                sc[k] += (animatorProps.sc.v[k] - sc[k]) * mult;\n              }\n            }\n          }\n\n          if (documentData.fillColorAnim && documentData.fc) {\n            if (animatorProps.fc.propType) {\n              for (k = 0; k < 3; k += 1) {\n                if (mult.length) {\n                  fc[k] += (animatorProps.fc.v[k] - fc[k]) * mult[0];\n                } else {\n                  fc[k] += (animatorProps.fc.v[k] - fc[k]) * mult;\n                }\n              }\n            }\n\n            if (animatorProps.fh.propType) {\n              if (mult.length) {\n                fc = addHueToRGB(fc, animatorProps.fh.v * mult[0]);\n              } else {\n                fc = addHueToRGB(fc, animatorProps.fh.v * mult);\n              }\n            }\n\n            if (animatorProps.fs.propType) {\n              if (mult.length) {\n                fc = addSaturationToRGB(fc, animatorProps.fs.v * mult[0]);\n              } else {\n                fc = addSaturationToRGB(fc, animatorProps.fs.v * mult);\n              }\n            }\n\n            if (animatorProps.fb.propType) {\n              if (mult.length) {\n                fc = addBrightnessToRGB(fc, animatorProps.fb.v * mult[0]);\n              } else {\n                fc = addBrightnessToRGB(fc, animatorProps.fb.v * mult);\n              }\n            }\n          }\n        }\n\n        for (j = 0; j < jLen; j += 1) {\n          animatorProps = animators[j].a;\n\n          if (animatorProps.p.propType) {\n            animatorSelector = animators[j].s;\n            mult = animatorSelector.getMult(letters[i].anIndexes[j], textData.a[j].s.totalChars);\n\n            if ((this || _global)._hasMaskedPath) {\n              if (mult.length) {\n                matrixHelper.translate(0, animatorProps.p.v[1] * mult[0], -animatorProps.p.v[2] * mult[1]);\n              } else {\n                matrixHelper.translate(0, animatorProps.p.v[1] * mult, -animatorProps.p.v[2] * mult);\n              }\n            } else if (mult.length) {\n              matrixHelper.translate(animatorProps.p.v[0] * mult[0], animatorProps.p.v[1] * mult[1], -animatorProps.p.v[2] * mult[2]);\n            } else {\n              matrixHelper.translate(animatorProps.p.v[0] * mult, animatorProps.p.v[1] * mult, -animatorProps.p.v[2] * mult);\n            }\n          }\n        }\n\n        if (documentData.strokeWidthAnim) {\n          letterSw = sw < 0 ? 0 : sw;\n        }\n\n        if (documentData.strokeColorAnim) {\n          letterSc = \"rgb(\" + Math.round(sc[0] * 255) + \",\" + Math.round(sc[1] * 255) + \",\" + Math.round(sc[2] * 255) + \")\";\n        }\n\n        if (documentData.fillColorAnim && documentData.fc) {\n          letterFc = \"rgb(\" + Math.round(fc[0] * 255) + \",\" + Math.round(fc[1] * 255) + \",\" + Math.round(fc[2] * 255) + \")\";\n        }\n\n        if ((this || _global)._hasMaskedPath) {\n          matrixHelper.translate(0, -documentData.ls);\n          matrixHelper.translate(0, alignment[1] * yOff * 0.01 + yPos, 0);\n\n          if (textData.p.p) {\n            tanAngle = (currentPoint.point[1] - prevPoint.point[1]) / (currentPoint.point[0] - prevPoint.point[0]);\n            var rot = Math.atan(tanAngle) * 180 / Math.PI;\n\n            if (currentPoint.point[0] < prevPoint.point[0]) {\n              rot += 180;\n            }\n\n            matrixHelper.rotate(-rot * Math.PI / 180);\n          }\n\n          matrixHelper.translate(xPathPos, yPathPos, 0);\n          currentLength -= alignment[0] * letters[i].an * 0.005;\n\n          if (letters[i + 1] && ind !== letters[i + 1].ind) {\n            currentLength += letters[i].an / 2;\n            currentLength += documentData.tr * 0.001 * documentData.finalSize;\n          }\n        } else {\n          matrixHelper.translate(xPos, yPos, 0);\n\n          if (documentData.ps) {\n            // matrixHelper.translate(documentData.ps[0],documentData.ps[1],0);\n            matrixHelper.translate(documentData.ps[0], documentData.ps[1] + documentData.ascent, 0);\n          }\n\n          switch (documentData.j) {\n            case 1:\n              matrixHelper.translate(letters[i].animatorJustifyOffset + documentData.justifyOffset + (documentData.boxWidth - documentData.lineWidths[letters[i].line]), 0, 0);\n              break;\n\n            case 2:\n              matrixHelper.translate(letters[i].animatorJustifyOffset + documentData.justifyOffset + (documentData.boxWidth - documentData.lineWidths[letters[i].line]) / 2, 0, 0);\n              break;\n\n            default:\n              break;\n          }\n\n          matrixHelper.translate(0, -documentData.ls);\n          matrixHelper.translate(offf, 0, 0);\n          matrixHelper.translate(alignment[0] * letters[i].an * 0.005, alignment[1] * yOff * 0.01, 0);\n          xPos += letters[i].l + documentData.tr * 0.001 * documentData.finalSize;\n        }\n\n        if (renderType === \"html\") {\n          letterM = matrixHelper.toCSS();\n        } else if (renderType === \"svg\") {\n          letterM = matrixHelper.to2dCSS();\n        } else {\n          letterP = [matrixHelper.props[0], matrixHelper.props[1], matrixHelper.props[2], matrixHelper.props[3], matrixHelper.props[4], matrixHelper.props[5], matrixHelper.props[6], matrixHelper.props[7], matrixHelper.props[8], matrixHelper.props[9], matrixHelper.props[10], matrixHelper.props[11], matrixHelper.props[12], matrixHelper.props[13], matrixHelper.props[14], matrixHelper.props[15]];\n        }\n\n        letterO = elemOpacity;\n      }\n\n      if (renderedLettersCount <= i) {\n        letterValue = new LetterProps(letterO, letterSw, letterSc, letterFc, letterM, letterP);\n\n        (this || _global).renderedLetters.push(letterValue);\n\n        renderedLettersCount += 1;\n        (this || _global).lettersChangedFlag = true;\n      } else {\n        letterValue = (this || _global).renderedLetters[i];\n        (this || _global).lettersChangedFlag = letterValue.update(letterO, letterSw, letterSc, letterFc, letterM, letterP) || (this || _global).lettersChangedFlag;\n      }\n    }\n  };\n\n  TextAnimatorProperty.prototype.getValue = function () {\n    if ((this || _global)._elem.globalData.frameId === (this || _global)._frameId) {\n      return;\n    }\n\n    (this || _global)._frameId = (this || _global)._elem.globalData.frameId;\n    this.iterateDynamicProperties();\n  };\n\n  TextAnimatorProperty.prototype.mHelper = new Matrix();\n  TextAnimatorProperty.prototype.defaultPropsArray = [];\n  extendPrototype([DynamicPropertyContainer], TextAnimatorProperty);\n  /* global PropertyFactory, degToRads, TextSelectorProp */\n\n  /* exported TextAnimatorDataProperty */\n\n  function TextAnimatorDataProperty(elem, animatorProps, container) {\n    var defaultData = {\n      propType: false\n    };\n    var getProp = PropertyFactory.getProp;\n    var textAnimatorAnimatables = animatorProps.a;\n    (this || _global).a = {\n      r: textAnimatorAnimatables.r ? getProp(elem, textAnimatorAnimatables.r, 0, degToRads, container) : defaultData,\n      rx: textAnimatorAnimatables.rx ? getProp(elem, textAnimatorAnimatables.rx, 0, degToRads, container) : defaultData,\n      ry: textAnimatorAnimatables.ry ? getProp(elem, textAnimatorAnimatables.ry, 0, degToRads, container) : defaultData,\n      sk: textAnimatorAnimatables.sk ? getProp(elem, textAnimatorAnimatables.sk, 0, degToRads, container) : defaultData,\n      sa: textAnimatorAnimatables.sa ? getProp(elem, textAnimatorAnimatables.sa, 0, degToRads, container) : defaultData,\n      s: textAnimatorAnimatables.s ? getProp(elem, textAnimatorAnimatables.s, 1, 0.01, container) : defaultData,\n      a: textAnimatorAnimatables.a ? getProp(elem, textAnimatorAnimatables.a, 1, 0, container) : defaultData,\n      o: textAnimatorAnimatables.o ? getProp(elem, textAnimatorAnimatables.o, 0, 0.01, container) : defaultData,\n      p: textAnimatorAnimatables.p ? getProp(elem, textAnimatorAnimatables.p, 1, 0, container) : defaultData,\n      sw: textAnimatorAnimatables.sw ? getProp(elem, textAnimatorAnimatables.sw, 0, 0, container) : defaultData,\n      sc: textAnimatorAnimatables.sc ? getProp(elem, textAnimatorAnimatables.sc, 1, 0, container) : defaultData,\n      fc: textAnimatorAnimatables.fc ? getProp(elem, textAnimatorAnimatables.fc, 1, 0, container) : defaultData,\n      fh: textAnimatorAnimatables.fh ? getProp(elem, textAnimatorAnimatables.fh, 0, 0, container) : defaultData,\n      fs: textAnimatorAnimatables.fs ? getProp(elem, textAnimatorAnimatables.fs, 0, 0.01, container) : defaultData,\n      fb: textAnimatorAnimatables.fb ? getProp(elem, textAnimatorAnimatables.fb, 0, 0.01, container) : defaultData,\n      t: textAnimatorAnimatables.t ? getProp(elem, textAnimatorAnimatables.t, 0, 0, container) : defaultData\n    };\n    (this || _global).s = TextSelectorProp.getTextSelectorProp(elem, animatorProps.s, container);\n    (this || _global).s.t = animatorProps.s.t;\n  }\n\n  function LetterProps(o, sw, sc, fc, m, p) {\n    (this || _global).o = o;\n    (this || _global).sw = sw;\n    (this || _global).sc = sc;\n    (this || _global).fc = fc;\n    (this || _global).m = m;\n    (this || _global).p = p;\n    (this || _global)._mdf = {\n      o: true,\n      sw: !!sw,\n      sc: !!sc,\n      fc: !!fc,\n      m: true,\n      p: true\n    };\n  }\n\n  LetterProps.prototype.update = function (o, sw, sc, fc, m, p) {\n    (this || _global)._mdf.o = false;\n    (this || _global)._mdf.sw = false;\n    (this || _global)._mdf.sc = false;\n    (this || _global)._mdf.fc = false;\n    (this || _global)._mdf.m = false;\n    (this || _global)._mdf.p = false;\n    var updated = false;\n\n    if ((this || _global).o !== o) {\n      (this || _global).o = o;\n      (this || _global)._mdf.o = true;\n      updated = true;\n    }\n\n    if ((this || _global).sw !== sw) {\n      (this || _global).sw = sw;\n      (this || _global)._mdf.sw = true;\n      updated = true;\n    }\n\n    if ((this || _global).sc !== sc) {\n      (this || _global).sc = sc;\n      (this || _global)._mdf.sc = true;\n      updated = true;\n    }\n\n    if ((this || _global).fc !== fc) {\n      (this || _global).fc = fc;\n      (this || _global)._mdf.fc = true;\n      updated = true;\n    }\n\n    if ((this || _global).m !== m) {\n      (this || _global).m = m;\n      (this || _global)._mdf.m = true;\n      updated = true;\n    }\n\n    if (p.length && ((this || _global).p[0] !== p[0] || (this || _global).p[1] !== p[1] || (this || _global).p[4] !== p[4] || (this || _global).p[5] !== p[5] || (this || _global).p[12] !== p[12] || (this || _global).p[13] !== p[13])) {\n      (this || _global).p = p;\n      (this || _global)._mdf.p = true;\n      updated = true;\n    }\n\n    return updated;\n  };\n  /* global FontManager, initialDefaultFrame, getFontProperties */\n\n  /* exported TextProperty */\n\n\n  function TextProperty(elem, data) {\n    (this || _global)._frameId = initialDefaultFrame;\n    (this || _global).pv = \"\";\n    (this || _global).v = \"\";\n    (this || _global).kf = false;\n    (this || _global)._isFirstFrame = true;\n    (this || _global)._mdf = false;\n    (this || _global).data = data;\n    (this || _global).elem = elem;\n    (this || _global).comp = (this || _global).elem.comp;\n    (this || _global).keysIndex = 0;\n    (this || _global).canResize = false;\n    (this || _global).minimumFontSize = 1;\n    (this || _global).effectsSequence = [];\n    (this || _global).currentData = {\n      ascent: 0,\n      boxWidth: (this || _global).defaultBoxWidth,\n      f: \"\",\n      fStyle: \"\",\n      fWeight: \"\",\n      fc: \"\",\n      j: \"\",\n      justifyOffset: \"\",\n      l: [],\n      lh: 0,\n      lineWidths: [],\n      ls: \"\",\n      of: \"\",\n      s: \"\",\n      sc: \"\",\n      sw: 0,\n      t: 0,\n      tr: 0,\n      sz: 0,\n      ps: null,\n      fillColorAnim: false,\n      strokeColorAnim: false,\n      strokeWidthAnim: false,\n      yOffset: 0,\n      finalSize: 0,\n      finalText: [],\n      finalLineHeight: 0,\n      __complete: false\n    };\n    this.copyData((this || _global).currentData, (this || _global).data.d.k[0].s);\n\n    if (!this.searchProperty()) {\n      this.completeTextData((this || _global).currentData);\n    }\n  }\n\n  TextProperty.prototype.defaultBoxWidth = [0, 0];\n\n  TextProperty.prototype.copyData = function (obj, data) {\n    for (var s in data) {\n      if (Object.prototype.hasOwnProperty.call(data, s)) {\n        obj[s] = data[s];\n      }\n    }\n\n    return obj;\n  };\n\n  TextProperty.prototype.setCurrentData = function (data) {\n    if (!data.__complete) {\n      this.completeTextData(data);\n    }\n\n    (this || _global).currentData = data;\n    (this || _global).currentData.boxWidth = (this || _global).currentData.boxWidth || (this || _global).defaultBoxWidth;\n    (this || _global)._mdf = true;\n  };\n\n  TextProperty.prototype.searchProperty = function () {\n    return this.searchKeyframes();\n  };\n\n  TextProperty.prototype.searchKeyframes = function () {\n    (this || _global).kf = (this || _global).data.d.k.length > 1;\n\n    if ((this || _global).kf) {\n      this.addEffect((this || _global).getKeyframeValue.bind(this || _global));\n    }\n\n    return (this || _global).kf;\n  };\n\n  TextProperty.prototype.addEffect = function (effectFunction) {\n    (this || _global).effectsSequence.push(effectFunction);\n\n    (this || _global).elem.addDynamicProperty(this || _global);\n  };\n\n  TextProperty.prototype.getValue = function (_finalValue) {\n    if (((this || _global).elem.globalData.frameId === (this || _global).frameId || !(this || _global).effectsSequence.length) && !_finalValue) {\n      return;\n    }\n\n    (this || _global).currentData.t = (this || _global).data.d.k[(this || _global).keysIndex].s.t;\n    var currentValue = (this || _global).currentData;\n    var currentIndex = (this || _global).keysIndex;\n\n    if ((this || _global).lock) {\n      this.setCurrentData((this || _global).currentData);\n      return;\n    }\n\n    (this || _global).lock = true;\n    (this || _global)._mdf = false;\n    var i;\n    var len = (this || _global).effectsSequence.length;\n    var finalValue = _finalValue || (this || _global).data.d.k[(this || _global).keysIndex].s;\n\n    for (i = 0; i < len; i += 1) {\n      // Checking if index changed to prevent creating a new object every time the expression updates.\n      if (currentIndex !== (this || _global).keysIndex) {\n        finalValue = (this || _global).effectsSequence[i](finalValue, finalValue.t);\n      } else {\n        finalValue = (this || _global).effectsSequence[i]((this || _global).currentData, finalValue.t);\n      }\n    }\n\n    if (currentValue !== finalValue) {\n      this.setCurrentData(finalValue);\n    }\n\n    (this || _global).v = (this || _global).currentData;\n    (this || _global).pv = (this || _global).v;\n    (this || _global).lock = false;\n    (this || _global).frameId = (this || _global).elem.globalData.frameId;\n  };\n\n  TextProperty.prototype.getKeyframeValue = function () {\n    var textKeys = (this || _global).data.d.k;\n    var frameNum = (this || _global).elem.comp.renderedFrame;\n    var i = 0;\n    var len = textKeys.length;\n\n    while (i <= len - 1) {\n      if (i === len - 1 || textKeys[i + 1].t > frameNum) {\n        break;\n      }\n\n      i += 1;\n    }\n\n    if ((this || _global).keysIndex !== i) {\n      (this || _global).keysIndex = i;\n    }\n\n    return (this || _global).data.d.k[(this || _global).keysIndex].s;\n  };\n\n  TextProperty.prototype.buildFinalText = function (text) {\n    var combinedCharacters = FontManager.getCombinedCharacterCodes();\n    var charactersArray = [];\n    var i = 0;\n    var len = text.length;\n    var charCode;\n\n    while (i < len) {\n      charCode = text.charCodeAt(i);\n\n      if (combinedCharacters.indexOf(charCode) !== -1) {\n        charactersArray[charactersArray.length - 1] += text.charAt(i);\n      } else if (charCode >= 55296 && charCode <= 56319) {\n        charCode = text.charCodeAt(i + 1);\n\n        if (charCode >= 56320 && charCode <= 57343) {\n          charactersArray.push(text.substr(i, 2));\n          i += 1;\n        } else {\n          charactersArray.push(text.charAt(i));\n        }\n      } else {\n        charactersArray.push(text.charAt(i));\n      }\n\n      i += 1;\n    }\n\n    return charactersArray;\n  };\n\n  TextProperty.prototype.completeTextData = function (documentData) {\n    documentData.__complete = true;\n    var fontManager = (this || _global).elem.globalData.fontManager;\n    var data = (this || _global).data;\n    var letters = [];\n    var i;\n    var len;\n    var newLineFlag;\n    var index = 0;\n    var val;\n    var anchorGrouping = data.m.g;\n    var currentSize = 0;\n    var currentPos = 0;\n    var currentLine = 0;\n    var lineWidths = [];\n    var lineWidth = 0;\n    var maxLineWidth = 0;\n    var j;\n    var jLen;\n    var fontData = fontManager.getFontByName(documentData.f);\n    var charData;\n    var cLength = 0;\n    var fontProps = getFontProperties(fontData);\n    documentData.fWeight = fontProps.weight;\n    documentData.fStyle = fontProps.style;\n    documentData.finalSize = documentData.s;\n    documentData.finalText = this.buildFinalText(documentData.t);\n    len = documentData.finalText.length;\n    documentData.finalLineHeight = documentData.lh;\n    var trackingOffset = documentData.tr / 1000 * documentData.finalSize;\n    var charCode;\n\n    if (documentData.sz) {\n      var flag = true;\n      var boxWidth = documentData.sz[0];\n      var boxHeight = documentData.sz[1];\n      var currentHeight;\n      var finalText;\n\n      while (flag) {\n        finalText = this.buildFinalText(documentData.t);\n        currentHeight = 0;\n        lineWidth = 0;\n        len = finalText.length;\n        trackingOffset = documentData.tr / 1000 * documentData.finalSize;\n        var lastSpaceIndex = -1;\n\n        for (i = 0; i < len; i += 1) {\n          charCode = finalText[i].charCodeAt(0);\n          newLineFlag = false;\n\n          if (finalText[i] === \" \") {\n            lastSpaceIndex = i;\n          } else if (charCode === 13 || charCode === 3) {\n            lineWidth = 0;\n            newLineFlag = true;\n            currentHeight += documentData.finalLineHeight || documentData.finalSize * 1.2;\n          }\n\n          if (fontManager.chars) {\n            charData = fontManager.getCharData(finalText[i], fontData.fStyle, fontData.fFamily);\n            cLength = newLineFlag ? 0 : charData.w * documentData.finalSize / 100;\n          } else {\n            // tCanvasHelper.font = documentData.s + 'px '+ fontData.fFamily;\n            cLength = fontManager.measureText(finalText[i], documentData.f, documentData.finalSize);\n          }\n\n          if (lineWidth + cLength > boxWidth && finalText[i] !== \" \") {\n            if (lastSpaceIndex === -1) {\n              len += 1;\n            } else {\n              i = lastSpaceIndex;\n            }\n\n            currentHeight += documentData.finalLineHeight || documentData.finalSize * 1.2;\n            finalText.splice(i, lastSpaceIndex === i ? 1 : 0, \"\\r\"); // finalText = finalText.substr(0,i) + \"\\r\" + finalText.substr(i === lastSpaceIndex ? i + 1 : i);\n\n            lastSpaceIndex = -1;\n            lineWidth = 0;\n          } else {\n            lineWidth += cLength;\n            lineWidth += trackingOffset;\n          }\n        }\n\n        currentHeight += fontData.ascent * documentData.finalSize / 100;\n\n        if ((this || _global).canResize && documentData.finalSize > (this || _global).minimumFontSize && boxHeight < currentHeight) {\n          documentData.finalSize -= 1;\n          documentData.finalLineHeight = documentData.finalSize * documentData.lh / documentData.s;\n        } else {\n          documentData.finalText = finalText;\n          len = documentData.finalText.length;\n          flag = false;\n        }\n      }\n    }\n\n    lineWidth = -trackingOffset;\n    cLength = 0;\n    var uncollapsedSpaces = 0;\n    var currentChar;\n\n    for (i = 0; i < len; i += 1) {\n      newLineFlag = false;\n      currentChar = documentData.finalText[i];\n      charCode = currentChar.charCodeAt(0);\n\n      if (charCode === 13 || charCode === 3) {\n        uncollapsedSpaces = 0;\n        lineWidths.push(lineWidth);\n        maxLineWidth = lineWidth > maxLineWidth ? lineWidth : maxLineWidth;\n        lineWidth = -2 * trackingOffset;\n        val = \"\";\n        newLineFlag = true;\n        currentLine += 1;\n      } else {\n        val = currentChar;\n      }\n\n      if (fontManager.chars) {\n        charData = fontManager.getCharData(currentChar, fontData.fStyle, fontManager.getFontByName(documentData.f).fFamily);\n        cLength = newLineFlag ? 0 : charData.w * documentData.finalSize / 100;\n      } else {\n        // var charWidth = fontManager.measureText(val, documentData.f, documentData.finalSize);\n        // tCanvasHelper.font = documentData.finalSize + 'px '+ fontManager.getFontByName(documentData.f).fFamily;\n        cLength = fontManager.measureText(val, documentData.f, documentData.finalSize);\n      } //\n\n\n      if (currentChar === \" \") {\n        uncollapsedSpaces += cLength + trackingOffset;\n      } else {\n        lineWidth += cLength + trackingOffset + uncollapsedSpaces;\n        uncollapsedSpaces = 0;\n      }\n\n      letters.push({\n        l: cLength,\n        an: cLength,\n        add: currentSize,\n        n: newLineFlag,\n        anIndexes: [],\n        val: val,\n        line: currentLine,\n        animatorJustifyOffset: 0\n      });\n\n      if (anchorGrouping == 2) {\n        // eslint-disable-line eqeqeq\n        currentSize += cLength;\n\n        if (val === \"\" || val === \" \" || i === len - 1) {\n          if (val === \"\" || val === \" \") {\n            currentSize -= cLength;\n          }\n\n          while (currentPos <= i) {\n            letters[currentPos].an = currentSize;\n            letters[currentPos].ind = index;\n            letters[currentPos].extra = cLength;\n            currentPos += 1;\n          }\n\n          index += 1;\n          currentSize = 0;\n        }\n      } else if (anchorGrouping == 3) {\n        // eslint-disable-line eqeqeq\n        currentSize += cLength;\n\n        if (val === \"\" || i === len - 1) {\n          if (val === \"\") {\n            currentSize -= cLength;\n          }\n\n          while (currentPos <= i) {\n            letters[currentPos].an = currentSize;\n            letters[currentPos].ind = index;\n            letters[currentPos].extra = cLength;\n            currentPos += 1;\n          }\n\n          currentSize = 0;\n          index += 1;\n        }\n      } else {\n        letters[index].ind = index;\n        letters[index].extra = 0;\n        index += 1;\n      }\n    }\n\n    documentData.l = letters;\n    maxLineWidth = lineWidth > maxLineWidth ? lineWidth : maxLineWidth;\n    lineWidths.push(lineWidth);\n\n    if (documentData.sz) {\n      documentData.boxWidth = documentData.sz[0];\n      documentData.justifyOffset = 0;\n    } else {\n      documentData.boxWidth = maxLineWidth;\n\n      switch (documentData.j) {\n        case 1:\n          documentData.justifyOffset = -documentData.boxWidth;\n          break;\n\n        case 2:\n          documentData.justifyOffset = -documentData.boxWidth / 2;\n          break;\n\n        default:\n          documentData.justifyOffset = 0;\n      }\n    }\n\n    documentData.lineWidths = lineWidths;\n    var animators = data.a;\n    var animatorData;\n    var letterData;\n    jLen = animators.length;\n    var based;\n    var ind;\n    var indexes = [];\n\n    for (j = 0; j < jLen; j += 1) {\n      animatorData = animators[j];\n\n      if (animatorData.a.sc) {\n        documentData.strokeColorAnim = true;\n      }\n\n      if (animatorData.a.sw) {\n        documentData.strokeWidthAnim = true;\n      }\n\n      if (animatorData.a.fc || animatorData.a.fh || animatorData.a.fs || animatorData.a.fb) {\n        documentData.fillColorAnim = true;\n      }\n\n      ind = 0;\n      based = animatorData.s.b;\n\n      for (i = 0; i < len; i += 1) {\n        letterData = letters[i];\n        letterData.anIndexes[j] = ind;\n\n        if (based == 1 && letterData.val !== \"\" || based == 2 && letterData.val !== \"\" && letterData.val !== \" \" || based == 3 && (letterData.n || letterData.val == \" \" || i == len - 1) || based == 4 && (letterData.n || i == len - 1)) {\n          // eslint-disable-line eqeqeq\n          if (animatorData.s.rn === 1) {\n            indexes.push(ind);\n          }\n\n          ind += 1;\n        }\n      }\n\n      data.a[j].s.totalChars = ind;\n      var currentInd = -1;\n      var newInd;\n\n      if (animatorData.s.rn === 1) {\n        for (i = 0; i < len; i += 1) {\n          letterData = letters[i];\n\n          if (currentInd != letterData.anIndexes[j]) {\n            // eslint-disable-line eqeqeq\n            currentInd = letterData.anIndexes[j];\n            newInd = indexes.splice(Math.floor(Math.random() * indexes.length), 1)[0];\n          }\n\n          letterData.anIndexes[j] = newInd;\n        }\n      }\n    }\n\n    documentData.yOffset = documentData.finalLineHeight || documentData.finalSize * 1.2;\n    documentData.ls = documentData.ls || 0;\n    documentData.ascent = fontData.ascent * documentData.finalSize / 100;\n  };\n\n  TextProperty.prototype.updateDocumentData = function (newData, index) {\n    index = index === undefined ? (this || _global).keysIndex : index;\n    var dData = this.copyData({}, (this || _global).data.d.k[index].s);\n    dData = this.copyData(dData, newData);\n    (this || _global).data.d.k[index].s = dData;\n    this.recalculate(index);\n\n    (this || _global).elem.addDynamicProperty(this || _global);\n  };\n\n  TextProperty.prototype.recalculate = function (index) {\n    var dData = (this || _global).data.d.k[index].s;\n    dData.__complete = false;\n    (this || _global).keysIndex = 0;\n    (this || _global)._isFirstFrame = true;\n    this.getValue(dData);\n  };\n\n  TextProperty.prototype.canResizeFont = function (_canResize) {\n    (this || _global).canResize = _canResize;\n    this.recalculate((this || _global).keysIndex);\n\n    (this || _global).elem.addDynamicProperty(this || _global);\n  };\n\n  TextProperty.prototype.setMinimumFontSize = function (_fontValue) {\n    (this || _global).minimumFontSize = Math.floor(_fontValue) || 1;\n    this.recalculate((this || _global).keysIndex);\n\n    (this || _global).elem.addDynamicProperty(this || _global);\n  };\n  /* global extendPrototype, BezierFactory, PropertyFactory, DynamicPropertyContainer */\n\n  /* exported TextSelectorProp */\n\n\n  var TextSelectorProp = function () {\n    var max = Math.max;\n    var min = Math.min;\n    var floor = Math.floor;\n\n    function TextSelectorPropFactory(elem, data) {\n      (this || _global)._currentTextLength = -1;\n      (this || _global).k = false;\n      (this || _global).data = data;\n      (this || _global).elem = elem;\n      (this || _global).comp = elem.comp;\n      (this || _global).finalS = 0;\n      (this || _global).finalE = 0;\n      this.initDynamicPropertyContainer(elem);\n      (this || _global).s = PropertyFactory.getProp(elem, data.s || {\n        k: 0\n      }, 0, 0, this || _global);\n\n      if (\"e\" in data) {\n        (this || _global).e = PropertyFactory.getProp(elem, data.e, 0, 0, this || _global);\n      } else {\n        (this || _global).e = {\n          v: 100\n        };\n      }\n\n      (this || _global).o = PropertyFactory.getProp(elem, data.o || {\n        k: 0\n      }, 0, 0, this || _global);\n      (this || _global).xe = PropertyFactory.getProp(elem, data.xe || {\n        k: 0\n      }, 0, 0, this || _global);\n      (this || _global).ne = PropertyFactory.getProp(elem, data.ne || {\n        k: 0\n      }, 0, 0, this || _global);\n      (this || _global).a = PropertyFactory.getProp(elem, data.a, 0, 0.01, this || _global);\n\n      if (!(this || _global).dynamicProperties.length) {\n        this.getValue();\n      }\n    }\n\n    TextSelectorPropFactory.prototype = {\n      getMult: function (ind) {\n        if ((this || _global)._currentTextLength !== (this || _global).elem.textProperty.currentData.l.length) {\n          this.getValue();\n        } // var easer = bez.getEasingCurve(this.ne.v/100,0,1-this.xe.v/100,1);\n\n\n        var x1 = 0;\n        var y1 = 0;\n        var x2 = 1;\n        var y2 = 1;\n\n        if ((this || _global).ne.v > 0) {\n          x1 = (this || _global).ne.v / 100;\n        } else {\n          y1 = -(this || _global).ne.v / 100;\n        }\n\n        if ((this || _global).xe.v > 0) {\n          x2 = 1 - (this || _global).xe.v / 100;\n        } else {\n          y2 = 1 + (this || _global).xe.v / 100;\n        }\n\n        var easer = BezierFactory.getBezierEasing(x1, y1, x2, y2).get;\n        var mult = 0;\n        var s = (this || _global).finalS;\n        var e = (this || _global).finalE;\n        var type = (this || _global).data.sh;\n\n        if (type === 2) {\n          if (e === s) {\n            mult = ind >= e ? 1 : 0;\n          } else {\n            mult = max(0, min(0.5 / (e - s) + (ind - s) / (e - s), 1));\n          }\n\n          mult = easer(mult);\n        } else if (type === 3) {\n          if (e === s) {\n            mult = ind >= e ? 0 : 1;\n          } else {\n            mult = 1 - max(0, min(0.5 / (e - s) + (ind - s) / (e - s), 1));\n          }\n\n          mult = easer(mult);\n        } else if (type === 4) {\n          if (e === s) {\n            mult = 0;\n          } else {\n            mult = max(0, min(0.5 / (e - s) + (ind - s) / (e - s), 1));\n\n            if (mult < 0.5) {\n              mult *= 2;\n            } else {\n              mult = 1 - 2 * (mult - 0.5);\n            }\n          }\n\n          mult = easer(mult);\n        } else if (type === 5) {\n          if (e === s) {\n            mult = 0;\n          } else {\n            var tot = e - s;\n            /* ind += 0.5;\r\n                      mult = -4/(tot*tot)*(ind*ind)+(4/tot)*ind; */\n\n            ind = min(max(0, ind + 0.5 - s), e - s);\n            var x = -tot / 2 + ind;\n            var a = tot / 2;\n            mult = Math.sqrt(1 - x * x / (a * a));\n          }\n\n          mult = easer(mult);\n        } else if (type === 6) {\n          if (e === s) {\n            mult = 0;\n          } else {\n            ind = min(max(0, ind + 0.5 - s), e - s);\n            mult = (1 + Math.cos(Math.PI + Math.PI * 2 * ind / (e - s))) / 2; // eslint-disable-line\n          }\n\n          mult = easer(mult);\n        } else {\n          if (ind >= floor(s)) {\n            if (ind - s < 0) {\n              mult = max(0, min(min(e, 1) - (s - ind), 1));\n            } else {\n              mult = max(0, min(e - ind, 1));\n            }\n          }\n\n          mult = easer(mult);\n        }\n\n        return mult * (this || _global).a.v;\n      },\n      getValue: function (newCharsFlag) {\n        this.iterateDynamicProperties();\n        (this || _global)._mdf = newCharsFlag || (this || _global)._mdf;\n        (this || _global)._currentTextLength = (this || _global).elem.textProperty.currentData.l.length || 0;\n\n        if (newCharsFlag && (this || _global).data.r === 2) {\n          (this || _global).e.v = (this || _global)._currentTextLength;\n        }\n\n        var divisor = (this || _global).data.r === 2 ? 1 : 100 / (this || _global).data.totalChars;\n        var o = (this || _global).o.v / divisor;\n        var s = (this || _global).s.v / divisor + o;\n        var e = (this || _global).e.v / divisor + o;\n\n        if (s > e) {\n          var _s = s;\n          s = e;\n          e = _s;\n        }\n\n        (this || _global).finalS = s;\n        (this || _global).finalE = e;\n      }\n    };\n    extendPrototype([DynamicPropertyContainer], TextSelectorPropFactory);\n\n    function getTextSelectorProp(elem, data, arr) {\n      return new TextSelectorPropFactory(elem, data, arr);\n    }\n\n    return {\n      getTextSelectorProp: getTextSelectorProp\n    };\n  }();\n  /* global createSizedArray, pooling */\n\n  /* exported poolFactory */\n\n\n  var poolFactory = function () {\n    return function (initialLength, _create, _release) {\n      var _length = 0;\n      var _maxLength = initialLength;\n      var pool = createSizedArray(_maxLength);\n      var ob = {\n        newElement: newElement,\n        release: release\n      };\n\n      function newElement() {\n        var element;\n\n        if (_length) {\n          _length -= 1;\n          element = pool[_length];\n        } else {\n          element = _create();\n        }\n\n        return element;\n      }\n\n      function release(element) {\n        if (_length === _maxLength) {\n          pool = pooling.double(pool);\n          _maxLength *= 2;\n        }\n\n        if (_release) {\n          _release(element);\n        }\n\n        pool[_length] = element;\n        _length += 1;\n      }\n\n      return ob;\n    };\n  }();\n  /* global createSizedArray */\n\n  /* exported pooling */\n\n\n  var pooling = function () {\n    function double(arr) {\n      return arr.concat(createSizedArray(arr.length));\n    }\n\n    return {\n      double: double\n    };\n  }();\n  /* global createTypedArray, poolFactory */\n\n  /* exported pointPool */\n\n\n  var pointPool = function () {\n    function create() {\n      return createTypedArray(\"float32\", 2);\n    }\n\n    return poolFactory(8, create);\n  }();\n  /* global ShapePath, pointPool, poolFactory */\n\n  /* exported shapePool */\n\n\n  var shapePool = function () {\n    function create() {\n      return new ShapePath();\n    }\n\n    function release(shapePath) {\n      var len = shapePath._length;\n      var i;\n\n      for (i = 0; i < len; i += 1) {\n        pointPool.release(shapePath.v[i]);\n        pointPool.release(shapePath.i[i]);\n        pointPool.release(shapePath.o[i]);\n        shapePath.v[i] = null;\n        shapePath.i[i] = null;\n        shapePath.o[i] = null;\n      }\n\n      shapePath._length = 0;\n      shapePath.c = false;\n    }\n\n    function clone(shape) {\n      var cloned = factory.newElement();\n      var i;\n      var len = shape._length === undefined ? shape.v.length : shape._length;\n      cloned.setLength(len);\n      cloned.c = shape.c;\n\n      for (i = 0; i < len; i += 1) {\n        cloned.setTripleAt(shape.v[i][0], shape.v[i][1], shape.o[i][0], shape.o[i][1], shape.i[i][0], shape.i[i][1], i);\n      }\n\n      return cloned;\n    }\n\n    var factory = poolFactory(4, create, release);\n    factory.clone = clone;\n    return factory;\n  }();\n  /* global createSizedArray, ShapeCollection, shapePool, pooling */\n\n  /* exported shapeCollectionPool */\n\n\n  var shapeCollectionPool = function () {\n    var ob = {\n      newShapeCollection: newShapeCollection,\n      release: release\n    };\n    var _length = 0;\n    var _maxLength = 4;\n    var pool = createSizedArray(_maxLength);\n\n    function newShapeCollection() {\n      var shapeCollection;\n\n      if (_length) {\n        _length -= 1;\n        shapeCollection = pool[_length];\n      } else {\n        shapeCollection = new ShapeCollection();\n      }\n\n      return shapeCollection;\n    }\n\n    function release(shapeCollection) {\n      var i;\n      var len = shapeCollection._length;\n\n      for (i = 0; i < len; i += 1) {\n        shapePool.release(shapeCollection.shapes[i]);\n      }\n\n      shapeCollection._length = 0;\n\n      if (_length === _maxLength) {\n        pool = pooling.double(pool);\n        _maxLength *= 2;\n      }\n\n      pool[_length] = shapeCollection;\n      _length += 1;\n    }\n\n    return ob;\n  }();\n  /* global poolFactory, bezierLengthPool */\n\n  /* exported segmentsLengthPool */\n\n\n  var segmentsLengthPool = function () {\n    function create() {\n      return {\n        lengths: [],\n        totalLength: 0\n      };\n    }\n\n    function release(element) {\n      var i;\n      var len = element.lengths.length;\n\n      for (i = 0; i < len; i += 1) {\n        bezierLengthPool.release(element.lengths[i]);\n      }\n\n      element.lengths.length = 0;\n    }\n\n    return poolFactory(8, create, release);\n  }();\n  /* global createTypedArray, defaultCurveSegments, poolFactory */\n\n  /* exported bezierLengthPool */\n\n\n  var bezierLengthPool = function () {\n    function create() {\n      return {\n        addedLength: 0,\n        percents: createTypedArray(\"float32\", defaultCurveSegments),\n        lengths: createTypedArray(\"float32\", defaultCurveSegments)\n      };\n    }\n\n    return poolFactory(8, create);\n  }();\n  /* exported markerParser */\n\n\n  var markerParser = function () {\n    function parsePayloadLines(payload) {\n      var lines = payload.split(\"\\r\\n\");\n      var keys = {};\n      var line;\n      var keysCount = 0;\n\n      for (var i = 0; i < lines.length; i += 1) {\n        line = lines[i].split(\":\");\n\n        if (line.length === 2) {\n          keys[line[0]] = line[1].trim();\n          keysCount += 1;\n        }\n      }\n\n      if (keysCount === 0) {\n        throw new Error();\n      }\n\n      return keys;\n    }\n\n    return function (_markers) {\n      var markers = [];\n\n      for (var i = 0; i < _markers.length; i += 1) {\n        var _marker = _markers[i];\n        var markerData = {\n          time: _marker.tm,\n          duration: _marker.dr\n        };\n\n        try {\n          markerData.payload = JSON.parse(_markers[i].cm);\n        } catch (_) {\n          try {\n            markerData.payload = parsePayloadLines(_markers[i].cm);\n          } catch (__) {\n            markerData.payload = {\n              name: _markers[i]\n            };\n          }\n        }\n\n        markers.push(markerData);\n      }\n\n      return markers;\n    };\n  }();\n  /* global AudioElement, FootageElement, FontManager */\n\n\n  function BaseRenderer() {}\n\n  BaseRenderer.prototype.checkLayers = function (num) {\n    var i;\n    var len = (this || _global).layers.length;\n    var data;\n    (this || _global).completeLayers = true;\n\n    for (i = len - 1; i >= 0; i -= 1) {\n      if (!(this || _global).elements[i]) {\n        data = (this || _global).layers[i];\n\n        if (data.ip - data.st <= num - (this || _global).layers[i].st && data.op - data.st > num - (this || _global).layers[i].st) {\n          this.buildItem(i);\n        }\n      }\n\n      (this || _global).completeLayers = (this || _global).elements[i] ? (this || _global).completeLayers : false;\n    }\n\n    this.checkPendingElements();\n  };\n\n  BaseRenderer.prototype.createItem = function (layer) {\n    switch (layer.ty) {\n      case 2:\n        return this.createImage(layer);\n\n      case 0:\n        return this.createComp(layer);\n\n      case 1:\n        return this.createSolid(layer);\n\n      case 3:\n        return this.createNull(layer);\n\n      case 4:\n        return this.createShape(layer);\n\n      case 5:\n        return this.createText(layer);\n\n      case 6:\n        return this.createAudio(layer);\n\n      case 13:\n        return this.createCamera(layer);\n\n      case 15:\n        return this.createFootage(layer);\n\n      default:\n        return this.createNull(layer);\n    }\n  };\n\n  BaseRenderer.prototype.createCamera = function () {\n    throw new Error(\"You're using a 3d camera. Try the html renderer.\");\n  };\n\n  BaseRenderer.prototype.createAudio = function (data) {\n    return new AudioElement(data, (this || _global).globalData, this || _global);\n  };\n\n  BaseRenderer.prototype.createFootage = function (data) {\n    return new FootageElement(data, (this || _global).globalData, this || _global);\n  };\n\n  BaseRenderer.prototype.buildAllItems = function () {\n    var i;\n    var len = (this || _global).layers.length;\n\n    for (i = 0; i < len; i += 1) {\n      this.buildItem(i);\n    }\n\n    this.checkPendingElements();\n  };\n\n  BaseRenderer.prototype.includeLayers = function (newLayers) {\n    (this || _global).completeLayers = false;\n    var i;\n    var len = newLayers.length;\n    var j;\n    var jLen = (this || _global).layers.length;\n\n    for (i = 0; i < len; i += 1) {\n      j = 0;\n\n      while (j < jLen) {\n        if ((this || _global).layers[j].id === newLayers[i].id) {\n          (this || _global).layers[j] = newLayers[i];\n          break;\n        }\n\n        j += 1;\n      }\n    }\n  };\n\n  BaseRenderer.prototype.setProjectInterface = function (pInterface) {\n    (this || _global).globalData.projectInterface = pInterface;\n  };\n\n  BaseRenderer.prototype.initItems = function () {\n    if (!(this || _global).globalData.progressiveLoad) {\n      this.buildAllItems();\n    }\n  };\n\n  BaseRenderer.prototype.buildElementParenting = function (element, parentName, hierarchy) {\n    var elements = (this || _global).elements;\n    var layers = (this || _global).layers;\n    var i = 0;\n    var len = layers.length;\n\n    while (i < len) {\n      if (layers[i].ind == parentName) {\n        // eslint-disable-line eqeqeq\n        if (!elements[i] || elements[i] === true) {\n          this.buildItem(i);\n          this.addPendingElement(element);\n        } else {\n          hierarchy.push(elements[i]);\n          elements[i].setAsParent();\n\n          if (layers[i].parent !== undefined) {\n            this.buildElementParenting(element, layers[i].parent, hierarchy);\n          } else {\n            element.setHierarchy(hierarchy);\n          }\n        }\n      }\n\n      i += 1;\n    }\n  };\n\n  BaseRenderer.prototype.addPendingElement = function (element) {\n    (this || _global).pendingElements.push(element);\n  };\n\n  BaseRenderer.prototype.searchExtraCompositions = function (assets) {\n    var i;\n    var len = assets.length;\n\n    for (i = 0; i < len; i += 1) {\n      if (assets[i].xt) {\n        var comp = this.createComp(assets[i]);\n        comp.initExpressions();\n\n        (this || _global).globalData.projectInterface.registerComposition(comp);\n      }\n    }\n  };\n\n  BaseRenderer.prototype.setupGlobalData = function (animData, fontsContainer) {\n    (this || _global).globalData.fontManager = new FontManager();\n\n    (this || _global).globalData.fontManager.addChars(animData.chars);\n\n    (this || _global).globalData.fontManager.addFonts(animData.fonts, fontsContainer);\n\n    (this || _global).globalData.getAssetData = (this || _global).animationItem.getAssetData.bind((this || _global).animationItem);\n    (this || _global).globalData.getAssetsPath = (this || _global).animationItem.getAssetsPath.bind((this || _global).animationItem);\n    (this || _global).globalData.imageLoader = (this || _global).animationItem.imagePreloader;\n    (this || _global).globalData.audioController = (this || _global).animationItem.audioController;\n    (this || _global).globalData.frameId = 0;\n    (this || _global).globalData.frameRate = animData.fr;\n    (this || _global).globalData.nm = animData.nm;\n    (this || _global).globalData.compSize = {\n      w: animData.w,\n      h: animData.h\n    };\n  };\n  /* global createElementID, extendPrototype, BaseRenderer, NullElement, SVGShapeElement, SVGTextLottieElement,\r\n  IImageElement, SVGCompElement, ISolidElement, createNS, locationHref, createSizedArray, expressionsPlugin */\n\n\n  function SVGRenderer(animationItem, config) {\n    (this || _global).animationItem = animationItem;\n    (this || _global).layers = null;\n    (this || _global).renderedFrame = -1;\n    (this || _global).svgElement = createNS(\"svg\");\n    var ariaLabel = \"\";\n\n    if (config && config.title) {\n      var titleElement = createNS(\"title\");\n      var titleId = createElementID();\n      titleElement.setAttribute(\"id\", titleId);\n      titleElement.textContent = config.title;\n\n      (this || _global).svgElement.appendChild(titleElement);\n\n      ariaLabel += titleId;\n    }\n\n    if (config && config.description) {\n      var descElement = createNS(\"desc\");\n      var descId = createElementID();\n      descElement.setAttribute(\"id\", descId);\n      descElement.textContent = config.description;\n\n      (this || _global).svgElement.appendChild(descElement);\n\n      ariaLabel += \" \" + descId;\n    }\n\n    if (ariaLabel) {\n      (this || _global).svgElement.setAttribute(\"aria-labelledby\", ariaLabel);\n    }\n\n    var defs = createNS(\"defs\");\n\n    (this || _global).svgElement.appendChild(defs);\n\n    var maskElement = createNS(\"g\");\n\n    (this || _global).svgElement.appendChild(maskElement);\n\n    (this || _global).layerElement = maskElement;\n    (this || _global).renderConfig = {\n      preserveAspectRatio: config && config.preserveAspectRatio || \"xMidYMid meet\",\n      imagePreserveAspectRatio: config && config.imagePreserveAspectRatio || \"xMidYMid slice\",\n      progressiveLoad: config && config.progressiveLoad || false,\n      hideOnTransparent: !(config && config.hideOnTransparent === false),\n      viewBoxOnly: config && config.viewBoxOnly || false,\n      viewBoxSize: config && config.viewBoxSize || false,\n      className: config && config.className || \"\",\n      id: config && config.id || \"\",\n      focusable: config && config.focusable,\n      filterSize: {\n        width: config && config.filterSize && config.filterSize.width || \"100%\",\n        height: config && config.filterSize && config.filterSize.height || \"100%\",\n        x: config && config.filterSize && config.filterSize.x || \"0%\",\n        y: config && config.filterSize && config.filterSize.y || \"0%\"\n      }\n    };\n    (this || _global).globalData = {\n      _mdf: false,\n      frameNum: -1,\n      defs: defs,\n      renderConfig: (this || _global).renderConfig\n    };\n    (this || _global).elements = [];\n    (this || _global).pendingElements = [];\n    (this || _global).destroyed = false;\n    (this || _global).rendererType = \"svg\";\n  }\n\n  extendPrototype([BaseRenderer], SVGRenderer);\n\n  SVGRenderer.prototype.createNull = function (data) {\n    return new NullElement(data, (this || _global).globalData, this || _global);\n  };\n\n  SVGRenderer.prototype.createShape = function (data) {\n    return new SVGShapeElement(data, (this || _global).globalData, this || _global);\n  };\n\n  SVGRenderer.prototype.createText = function (data) {\n    return new SVGTextLottieElement(data, (this || _global).globalData, this || _global);\n  };\n\n  SVGRenderer.prototype.createImage = function (data) {\n    return new IImageElement(data, (this || _global).globalData, this || _global);\n  };\n\n  SVGRenderer.prototype.createComp = function (data) {\n    return new SVGCompElement(data, (this || _global).globalData, this || _global);\n  };\n\n  SVGRenderer.prototype.createSolid = function (data) {\n    return new ISolidElement(data, (this || _global).globalData, this || _global);\n  };\n\n  SVGRenderer.prototype.configAnimation = function (animData) {\n    (this || _global).svgElement.setAttribute(\"xmlns\", \"http://www.w3.org/2000/svg\");\n\n    if ((this || _global).renderConfig.viewBoxSize) {\n      (this || _global).svgElement.setAttribute(\"viewBox\", (this || _global).renderConfig.viewBoxSize);\n    } else {\n      (this || _global).svgElement.setAttribute(\"viewBox\", \"0 0 \" + animData.w + \" \" + animData.h);\n    }\n\n    if (!(this || _global).renderConfig.viewBoxOnly) {\n      (this || _global).svgElement.setAttribute(\"width\", animData.w);\n\n      (this || _global).svgElement.setAttribute(\"height\", animData.h);\n\n      (this || _global).svgElement.style.width = \"100%\";\n      (this || _global).svgElement.style.height = \"100%\";\n      (this || _global).svgElement.style.transform = \"translate3d(0,0,0)\";\n    }\n\n    if ((this || _global).renderConfig.className) {\n      (this || _global).svgElement.setAttribute(\"class\", (this || _global).renderConfig.className);\n    }\n\n    if ((this || _global).renderConfig.id) {\n      (this || _global).svgElement.setAttribute(\"id\", (this || _global).renderConfig.id);\n    }\n\n    if ((this || _global).renderConfig.focusable !== undefined) {\n      (this || _global).svgElement.setAttribute(\"focusable\", (this || _global).renderConfig.focusable);\n    }\n\n    (this || _global).svgElement.setAttribute(\"preserveAspectRatio\", (this || _global).renderConfig.preserveAspectRatio); // this.layerElement.style.transform = 'translate3d(0,0,0)';\n    // this.layerElement.style.transformOrigin = this.layerElement.style.mozTransformOrigin = this.layerElement.style.webkitTransformOrigin = this.layerElement.style['-webkit-transform'] = \"0px 0px 0px\";\n\n\n    (this || _global).animationItem.wrapper.appendChild((this || _global).svgElement); // Mask animation\n\n\n    var defs = (this || _global).globalData.defs;\n    this.setupGlobalData(animData, defs);\n    (this || _global).globalData.progressiveLoad = (this || _global).renderConfig.progressiveLoad;\n    (this || _global).data = animData;\n    var maskElement = createNS(\"clipPath\");\n    var rect = createNS(\"rect\");\n    rect.setAttribute(\"width\", animData.w);\n    rect.setAttribute(\"height\", animData.h);\n    rect.setAttribute(\"x\", 0);\n    rect.setAttribute(\"y\", 0);\n    var maskId = createElementID();\n    maskElement.setAttribute(\"id\", maskId);\n    maskElement.appendChild(rect);\n\n    (this || _global).layerElement.setAttribute(\"clip-path\", \"url(\" + locationHref + \"#\" + maskId + \")\");\n\n    defs.appendChild(maskElement);\n    (this || _global).layers = animData.layers;\n    (this || _global).elements = createSizedArray(animData.layers.length);\n  };\n\n  SVGRenderer.prototype.destroy = function () {\n    if ((this || _global).animationItem.wrapper) {\n      (this || _global).animationItem.wrapper.innerText = \"\";\n    }\n\n    (this || _global).layerElement = null;\n    (this || _global).globalData.defs = null;\n    var i;\n    var len = (this || _global).layers ? (this || _global).layers.length : 0;\n\n    for (i = 0; i < len; i += 1) {\n      if ((this || _global).elements[i]) {\n        (this || _global).elements[i].destroy();\n      }\n    }\n\n    (this || _global).elements.length = 0;\n    (this || _global).destroyed = true;\n    (this || _global).animationItem = null;\n  };\n\n  SVGRenderer.prototype.updateContainerSize = function () {};\n\n  SVGRenderer.prototype.buildItem = function (pos) {\n    var elements = (this || _global).elements;\n\n    if (elements[pos] || (this || _global).layers[pos].ty === 99) {\n      return;\n    }\n\n    elements[pos] = true;\n    var element = this.createItem((this || _global).layers[pos]);\n    elements[pos] = element;\n\n    if (expressionsPlugin) {\n      if ((this || _global).layers[pos].ty === 0) {\n        (this || _global).globalData.projectInterface.registerComposition(element);\n      }\n\n      element.initExpressions();\n    }\n\n    this.appendElementInPos(element, pos);\n\n    if ((this || _global).layers[pos].tt) {\n      if (!(this || _global).elements[pos - 1] || (this || _global).elements[pos - 1] === true) {\n        this.buildItem(pos - 1);\n        this.addPendingElement(element);\n      } else {\n        element.setMatte(elements[pos - 1].layerId);\n      }\n    }\n  };\n\n  SVGRenderer.prototype.checkPendingElements = function () {\n    while ((this || _global).pendingElements.length) {\n      var element = (this || _global).pendingElements.pop();\n\n      element.checkParenting();\n\n      if (element.data.tt) {\n        var i = 0;\n        var len = (this || _global).elements.length;\n\n        while (i < len) {\n          if ((this || _global).elements[i] === element) {\n            element.setMatte((this || _global).elements[i - 1].layerId);\n            break;\n          }\n\n          i += 1;\n        }\n      }\n    }\n  };\n\n  SVGRenderer.prototype.renderFrame = function (num) {\n    if ((this || _global).renderedFrame === num || (this || _global).destroyed) {\n      return;\n    }\n\n    if (num === null) {\n      num = (this || _global).renderedFrame;\n    } else {\n      (this || _global).renderedFrame = num;\n    } // console.log('-------');\n    // console.log('FRAME ',num);\n\n\n    (this || _global).globalData.frameNum = num;\n    (this || _global).globalData.frameId += 1;\n    (this || _global).globalData.projectInterface.currentFrame = num;\n    (this || _global).globalData._mdf = false;\n    var i;\n    var len = (this || _global).layers.length;\n\n    if (!(this || _global).completeLayers) {\n      this.checkLayers(num);\n    }\n\n    for (i = len - 1; i >= 0; i -= 1) {\n      if ((this || _global).completeLayers || (this || _global).elements[i]) {\n        (this || _global).elements[i].prepareFrame(num - (this || _global).layers[i].st);\n      }\n    }\n\n    if ((this || _global).globalData._mdf) {\n      for (i = 0; i < len; i += 1) {\n        if ((this || _global).completeLayers || (this || _global).elements[i]) {\n          (this || _global).elements[i].renderFrame();\n        }\n      }\n    }\n  };\n\n  SVGRenderer.prototype.appendElementInPos = function (element, pos) {\n    var newElement = element.getBaseElement();\n\n    if (!newElement) {\n      return;\n    }\n\n    var i = 0;\n    var nextElement;\n\n    while (i < pos) {\n      if ((this || _global).elements[i] && (this || _global).elements[i] !== true && (this || _global).elements[i].getBaseElement()) {\n        nextElement = (this || _global).elements[i].getBaseElement();\n      }\n\n      i += 1;\n    }\n\n    if (nextElement) {\n      (this || _global).layerElement.insertBefore(newElement, nextElement);\n    } else {\n      (this || _global).layerElement.appendChild(newElement);\n    }\n  };\n\n  SVGRenderer.prototype.hide = function () {\n    (this || _global).layerElement.style.display = \"none\";\n  };\n\n  SVGRenderer.prototype.show = function () {\n    (this || _global).layerElement.style.display = \"block\";\n  };\n  /* global CVContextData, Matrix, extendPrototype, BaseRenderer, CVShapeElement, CVTextElement,\r\n  CVImageElement, CVCompElement, CVSolidElement, SVGRenderer, createTag, createSizedArray */\n\n\n  function CanvasRenderer(animationItem, config) {\n    (this || _global).animationItem = animationItem;\n    (this || _global).renderConfig = {\n      clearCanvas: config && config.clearCanvas !== undefined ? config.clearCanvas : true,\n      context: config && config.context || null,\n      progressiveLoad: config && config.progressiveLoad || false,\n      preserveAspectRatio: config && config.preserveAspectRatio || \"xMidYMid meet\",\n      imagePreserveAspectRatio: config && config.imagePreserveAspectRatio || \"xMidYMid slice\",\n      className: config && config.className || \"\",\n      id: config && config.id || \"\"\n    };\n    (this || _global).renderConfig.dpr = config && config.dpr || 1;\n\n    if ((this || _global).animationItem.wrapper) {\n      (this || _global).renderConfig.dpr = config && config.dpr || window.devicePixelRatio || 1;\n    }\n\n    (this || _global).renderedFrame = -1;\n    (this || _global).globalData = {\n      frameNum: -1,\n      _mdf: false,\n      renderConfig: (this || _global).renderConfig,\n      currentGlobalAlpha: -1\n    };\n    (this || _global).contextData = new CVContextData();\n    (this || _global).elements = [];\n    (this || _global).pendingElements = [];\n    (this || _global).transformMat = new Matrix();\n    (this || _global).completeLayers = false;\n    (this || _global).rendererType = \"canvas\";\n  }\n\n  extendPrototype([BaseRenderer], CanvasRenderer);\n\n  CanvasRenderer.prototype.createShape = function (data) {\n    return new CVShapeElement(data, (this || _global).globalData, this || _global);\n  };\n\n  CanvasRenderer.prototype.createText = function (data) {\n    return new CVTextElement(data, (this || _global).globalData, this || _global);\n  };\n\n  CanvasRenderer.prototype.createImage = function (data) {\n    return new CVImageElement(data, (this || _global).globalData, this || _global);\n  };\n\n  CanvasRenderer.prototype.createComp = function (data) {\n    return new CVCompElement(data, (this || _global).globalData, this || _global);\n  };\n\n  CanvasRenderer.prototype.createSolid = function (data) {\n    return new CVSolidElement(data, (this || _global).globalData, this || _global);\n  };\n\n  CanvasRenderer.prototype.createNull = SVGRenderer.prototype.createNull;\n\n  CanvasRenderer.prototype.ctxTransform = function (props) {\n    if (props[0] === 1 && props[1] === 0 && props[4] === 0 && props[5] === 1 && props[12] === 0 && props[13] === 0) {\n      return;\n    }\n\n    if (!(this || _global).renderConfig.clearCanvas) {\n      (this || _global).canvasContext.transform(props[0], props[1], props[4], props[5], props[12], props[13]);\n\n      return;\n    }\n\n    (this || _global).transformMat.cloneFromProps(props);\n\n    var cProps = (this || _global).contextData.cTr.props;\n\n    (this || _global).transformMat.transform(cProps[0], cProps[1], cProps[2], cProps[3], cProps[4], cProps[5], cProps[6], cProps[7], cProps[8], cProps[9], cProps[10], cProps[11], cProps[12], cProps[13], cProps[14], cProps[15]); // this.contextData.cTr.transform(props[0],props[1],props[2],props[3],props[4],props[5],props[6],props[7],props[8],props[9],props[10],props[11],props[12],props[13],props[14],props[15]);\n\n\n    (this || _global).contextData.cTr.cloneFromProps((this || _global).transformMat.props);\n\n    var trProps = (this || _global).contextData.cTr.props;\n\n    (this || _global).canvasContext.setTransform(trProps[0], trProps[1], trProps[4], trProps[5], trProps[12], trProps[13]);\n  };\n\n  CanvasRenderer.prototype.ctxOpacity = function (op) {\n    /* if(op === 1){\r\n          return;\r\n      } */\n    if (!(this || _global).renderConfig.clearCanvas) {\n      (this || _global).canvasContext.globalAlpha *= op < 0 ? 0 : op;\n      (this || _global).globalData.currentGlobalAlpha = (this || _global).contextData.cO;\n      return;\n    }\n\n    (this || _global).contextData.cO *= op < 0 ? 0 : op;\n\n    if ((this || _global).globalData.currentGlobalAlpha !== (this || _global).contextData.cO) {\n      (this || _global).canvasContext.globalAlpha = (this || _global).contextData.cO;\n      (this || _global).globalData.currentGlobalAlpha = (this || _global).contextData.cO;\n    }\n  };\n\n  CanvasRenderer.prototype.reset = function () {\n    if (!(this || _global).renderConfig.clearCanvas) {\n      (this || _global).canvasContext.restore();\n\n      return;\n    }\n\n    (this || _global).contextData.reset();\n  };\n\n  CanvasRenderer.prototype.save = function (actionFlag) {\n    if (!(this || _global).renderConfig.clearCanvas) {\n      (this || _global).canvasContext.save();\n\n      return;\n    }\n\n    if (actionFlag) {\n      (this || _global).canvasContext.save();\n    }\n\n    var props = (this || _global).contextData.cTr.props;\n\n    if ((this || _global).contextData._length <= (this || _global).contextData.cArrPos) {\n      (this || _global).contextData.duplicate();\n    }\n\n    var i;\n    var arr = (this || _global).contextData.saved[(this || _global).contextData.cArrPos];\n\n    for (i = 0; i < 16; i += 1) {\n      arr[i] = props[i];\n    }\n\n    (this || _global).contextData.savedOp[(this || _global).contextData.cArrPos] = (this || _global).contextData.cO;\n    (this || _global).contextData.cArrPos += 1;\n  };\n\n  CanvasRenderer.prototype.restore = function (actionFlag) {\n    if (!(this || _global).renderConfig.clearCanvas) {\n      (this || _global).canvasContext.restore();\n\n      return;\n    }\n\n    if (actionFlag) {\n      (this || _global).canvasContext.restore();\n\n      (this || _global).globalData.blendMode = \"source-over\";\n    }\n\n    (this || _global).contextData.cArrPos -= 1;\n    var popped = (this || _global).contextData.saved[(this || _global).contextData.cArrPos];\n    var i;\n    var arr = (this || _global).contextData.cTr.props;\n\n    for (i = 0; i < 16; i += 1) {\n      arr[i] = popped[i];\n    }\n\n    (this || _global).canvasContext.setTransform(popped[0], popped[1], popped[4], popped[5], popped[12], popped[13]);\n\n    popped = (this || _global).contextData.savedOp[(this || _global).contextData.cArrPos];\n    (this || _global).contextData.cO = popped;\n\n    if ((this || _global).globalData.currentGlobalAlpha !== popped) {\n      (this || _global).canvasContext.globalAlpha = popped;\n      (this || _global).globalData.currentGlobalAlpha = popped;\n    }\n  };\n\n  CanvasRenderer.prototype.configAnimation = function (animData) {\n    if ((this || _global).animationItem.wrapper) {\n      (this || _global).animationItem.container = createTag(\"canvas\");\n      var containerStyle = (this || _global).animationItem.container.style;\n      containerStyle.width = \"100%\";\n      containerStyle.height = \"100%\";\n      var origin = \"0px 0px 0px\";\n      containerStyle.transformOrigin = origin;\n      containerStyle.mozTransformOrigin = origin;\n      containerStyle.webkitTransformOrigin = origin;\n      containerStyle[\"-webkit-transform\"] = origin;\n\n      (this || _global).animationItem.wrapper.appendChild((this || _global).animationItem.container);\n\n      (this || _global).canvasContext = (this || _global).animationItem.container.getContext(\"2d\");\n\n      if ((this || _global).renderConfig.className) {\n        (this || _global).animationItem.container.setAttribute(\"class\", (this || _global).renderConfig.className);\n      }\n\n      if ((this || _global).renderConfig.id) {\n        (this || _global).animationItem.container.setAttribute(\"id\", (this || _global).renderConfig.id);\n      }\n    } else {\n      (this || _global).canvasContext = (this || _global).renderConfig.context;\n    }\n\n    (this || _global).data = animData;\n    (this || _global).layers = animData.layers;\n    (this || _global).transformCanvas = {\n      w: animData.w,\n      h: animData.h,\n      sx: 0,\n      sy: 0,\n      tx: 0,\n      ty: 0\n    };\n    this.setupGlobalData(animData, document.body);\n    (this || _global).globalData.canvasContext = (this || _global).canvasContext;\n    (this || _global).globalData.renderer = this || _global;\n    (this || _global).globalData.isDashed = false;\n    (this || _global).globalData.progressiveLoad = (this || _global).renderConfig.progressiveLoad;\n    (this || _global).globalData.transformCanvas = (this || _global).transformCanvas;\n    (this || _global).elements = createSizedArray(animData.layers.length);\n    this.updateContainerSize();\n  };\n\n  CanvasRenderer.prototype.updateContainerSize = function () {\n    this.reset();\n    var elementWidth;\n    var elementHeight;\n\n    if ((this || _global).animationItem.wrapper && (this || _global).animationItem.container) {\n      elementWidth = (this || _global).animationItem.wrapper.offsetWidth;\n      elementHeight = (this || _global).animationItem.wrapper.offsetHeight;\n\n      (this || _global).animationItem.container.setAttribute(\"width\", elementWidth * (this || _global).renderConfig.dpr);\n\n      (this || _global).animationItem.container.setAttribute(\"height\", elementHeight * (this || _global).renderConfig.dpr);\n    } else {\n      elementWidth = (this || _global).canvasContext.canvas.width * (this || _global).renderConfig.dpr;\n      elementHeight = (this || _global).canvasContext.canvas.height * (this || _global).renderConfig.dpr;\n    }\n\n    var elementRel;\n    var animationRel;\n\n    if ((this || _global).renderConfig.preserveAspectRatio.indexOf(\"meet\") !== -1 || (this || _global).renderConfig.preserveAspectRatio.indexOf(\"slice\") !== -1) {\n      var par = (this || _global).renderConfig.preserveAspectRatio.split(\" \");\n\n      var fillType = par[1] || \"meet\";\n      var pos = par[0] || \"xMidYMid\";\n      var xPos = pos.substr(0, 4);\n      var yPos = pos.substr(4);\n      elementRel = elementWidth / elementHeight;\n      animationRel = (this || _global).transformCanvas.w / (this || _global).transformCanvas.h;\n\n      if (animationRel > elementRel && fillType === \"meet\" || animationRel < elementRel && fillType === \"slice\") {\n        (this || _global).transformCanvas.sx = elementWidth / ((this || _global).transformCanvas.w / (this || _global).renderConfig.dpr);\n        (this || _global).transformCanvas.sy = elementWidth / ((this || _global).transformCanvas.w / (this || _global).renderConfig.dpr);\n      } else {\n        (this || _global).transformCanvas.sx = elementHeight / ((this || _global).transformCanvas.h / (this || _global).renderConfig.dpr);\n        (this || _global).transformCanvas.sy = elementHeight / ((this || _global).transformCanvas.h / (this || _global).renderConfig.dpr);\n      }\n\n      if (xPos === \"xMid\" && (animationRel < elementRel && fillType === \"meet\" || animationRel > elementRel && fillType === \"slice\")) {\n        (this || _global).transformCanvas.tx = (elementWidth - (this || _global).transformCanvas.w * (elementHeight / (this || _global).transformCanvas.h)) / 2 * (this || _global).renderConfig.dpr;\n      } else if (xPos === \"xMax\" && (animationRel < elementRel && fillType === \"meet\" || animationRel > elementRel && fillType === \"slice\")) {\n        (this || _global).transformCanvas.tx = (elementWidth - (this || _global).transformCanvas.w * (elementHeight / (this || _global).transformCanvas.h)) * (this || _global).renderConfig.dpr;\n      } else {\n        (this || _global).transformCanvas.tx = 0;\n      }\n\n      if (yPos === \"YMid\" && (animationRel > elementRel && fillType === \"meet\" || animationRel < elementRel && fillType === \"slice\")) {\n        (this || _global).transformCanvas.ty = (elementHeight - (this || _global).transformCanvas.h * (elementWidth / (this || _global).transformCanvas.w)) / 2 * (this || _global).renderConfig.dpr;\n      } else if (yPos === \"YMax\" && (animationRel > elementRel && fillType === \"meet\" || animationRel < elementRel && fillType === \"slice\")) {\n        (this || _global).transformCanvas.ty = (elementHeight - (this || _global).transformCanvas.h * (elementWidth / (this || _global).transformCanvas.w)) * (this || _global).renderConfig.dpr;\n      } else {\n        (this || _global).transformCanvas.ty = 0;\n      }\n    } else if ((this || _global).renderConfig.preserveAspectRatio === \"none\") {\n      (this || _global).transformCanvas.sx = elementWidth / ((this || _global).transformCanvas.w / (this || _global).renderConfig.dpr);\n      (this || _global).transformCanvas.sy = elementHeight / ((this || _global).transformCanvas.h / (this || _global).renderConfig.dpr);\n      (this || _global).transformCanvas.tx = 0;\n      (this || _global).transformCanvas.ty = 0;\n    } else {\n      (this || _global).transformCanvas.sx = (this || _global).renderConfig.dpr;\n      (this || _global).transformCanvas.sy = (this || _global).renderConfig.dpr;\n      (this || _global).transformCanvas.tx = 0;\n      (this || _global).transformCanvas.ty = 0;\n    }\n\n    (this || _global).transformCanvas.props = [(this || _global).transformCanvas.sx, 0, 0, 0, 0, (this || _global).transformCanvas.sy, 0, 0, 0, 0, 1, 0, (this || _global).transformCanvas.tx, (this || _global).transformCanvas.ty, 0, 1];\n    /* var i, len = this.elements.length;\r\n      for(i=0;i<len;i+=1){\r\n          if(this.elements[i] && this.elements[i].data.ty === 0){\r\n              this.elements[i].resize(this.globalData.transformCanvas);\r\n          }\r\n      } */\n\n    this.ctxTransform((this || _global).transformCanvas.props);\n\n    (this || _global).canvasContext.beginPath();\n\n    (this || _global).canvasContext.rect(0, 0, (this || _global).transformCanvas.w, (this || _global).transformCanvas.h);\n\n    (this || _global).canvasContext.closePath();\n\n    (this || _global).canvasContext.clip();\n\n    this.renderFrame((this || _global).renderedFrame, true);\n  };\n\n  CanvasRenderer.prototype.destroy = function () {\n    if ((this || _global).renderConfig.clearCanvas && (this || _global).animationItem.wrapper) {\n      (this || _global).animationItem.wrapper.innerText = \"\";\n    }\n\n    var i;\n    var len = (this || _global).layers ? (this || _global).layers.length : 0;\n\n    for (i = len - 1; i >= 0; i -= 1) {\n      if ((this || _global).elements[i]) {\n        (this || _global).elements[i].destroy();\n      }\n    }\n\n    (this || _global).elements.length = 0;\n    (this || _global).globalData.canvasContext = null;\n    (this || _global).animationItem.container = null;\n    (this || _global).destroyed = true;\n  };\n\n  CanvasRenderer.prototype.renderFrame = function (num, forceRender) {\n    if ((this || _global).renderedFrame === num && (this || _global).renderConfig.clearCanvas === true && !forceRender || (this || _global).destroyed || num === -1) {\n      return;\n    }\n\n    (this || _global).renderedFrame = num;\n    (this || _global).globalData.frameNum = num - (this || _global).animationItem._isFirstFrame;\n    (this || _global).globalData.frameId += 1;\n    (this || _global).globalData._mdf = !(this || _global).renderConfig.clearCanvas || forceRender;\n    (this || _global).globalData.projectInterface.currentFrame = num; // console.log('--------');\n    // console.log('NEW: ',num);\n\n    var i;\n    var len = (this || _global).layers.length;\n\n    if (!(this || _global).completeLayers) {\n      this.checkLayers(num);\n    }\n\n    for (i = 0; i < len; i += 1) {\n      if ((this || _global).completeLayers || (this || _global).elements[i]) {\n        (this || _global).elements[i].prepareFrame(num - (this || _global).layers[i].st);\n      }\n    }\n\n    if ((this || _global).globalData._mdf) {\n      if ((this || _global).renderConfig.clearCanvas === true) {\n        (this || _global).canvasContext.clearRect(0, 0, (this || _global).transformCanvas.w, (this || _global).transformCanvas.h);\n      } else {\n        this.save();\n      }\n\n      for (i = len - 1; i >= 0; i -= 1) {\n        if ((this || _global).completeLayers || (this || _global).elements[i]) {\n          (this || _global).elements[i].renderFrame();\n        }\n      }\n\n      if ((this || _global).renderConfig.clearCanvas !== true) {\n        this.restore();\n      }\n    }\n  };\n\n  CanvasRenderer.prototype.buildItem = function (pos) {\n    var elements = (this || _global).elements;\n\n    if (elements[pos] || (this || _global).layers[pos].ty === 99) {\n      return;\n    }\n\n    var element = this.createItem((this || _global).layers[pos], this || _global, (this || _global).globalData);\n    elements[pos] = element;\n    element.initExpressions();\n    /* if(this.layers[pos].ty === 0){\r\n          element.resize(this.globalData.transformCanvas);\r\n      } */\n  };\n\n  CanvasRenderer.prototype.checkPendingElements = function () {\n    while ((this || _global).pendingElements.length) {\n      var element = (this || _global).pendingElements.pop();\n\n      element.checkParenting();\n    }\n  };\n\n  CanvasRenderer.prototype.hide = function () {\n    (this || _global).animationItem.container.style.display = \"none\";\n  };\n\n  CanvasRenderer.prototype.show = function () {\n    (this || _global).animationItem.container.style.display = \"block\";\n  };\n  /* global extendPrototype, BaseRenderer, SVGRenderer, SVGShapeElement, HShapeElement, SVGTextLottieElement,\r\n  HTextElement, HCameraElement, IImageElement, HImageElement, SVGCompElement, HCompElement, ISolidElement,\r\n  HSolidElement, styleDiv, createTag, createNS */\n\n\n  function HybridRenderer(animationItem, config) {\n    (this || _global).animationItem = animationItem;\n    (this || _global).layers = null;\n    (this || _global).renderedFrame = -1;\n    (this || _global).renderConfig = {\n      className: config && config.className || \"\",\n      imagePreserveAspectRatio: config && config.imagePreserveAspectRatio || \"xMidYMid slice\",\n      hideOnTransparent: !(config && config.hideOnTransparent === false),\n      filterSize: {\n        width: config && config.filterSize && config.filterSize.width || \"400%\",\n        height: config && config.filterSize && config.filterSize.height || \"400%\",\n        x: config && config.filterSize && config.filterSize.x || \"-100%\",\n        y: config && config.filterSize && config.filterSize.y || \"-100%\"\n      }\n    };\n    (this || _global).globalData = {\n      _mdf: false,\n      frameNum: -1,\n      renderConfig: (this || _global).renderConfig\n    };\n    (this || _global).pendingElements = [];\n    (this || _global).elements = [];\n    (this || _global).threeDElements = [];\n    (this || _global).destroyed = false;\n    (this || _global).camera = null;\n    (this || _global).supports3d = true;\n    (this || _global).rendererType = \"html\";\n  }\n\n  extendPrototype([BaseRenderer], HybridRenderer);\n  HybridRenderer.prototype.buildItem = SVGRenderer.prototype.buildItem;\n\n  HybridRenderer.prototype.checkPendingElements = function () {\n    while ((this || _global).pendingElements.length) {\n      var element = (this || _global).pendingElements.pop();\n\n      element.checkParenting();\n    }\n  };\n\n  HybridRenderer.prototype.appendElementInPos = function (element, pos) {\n    var newDOMElement = element.getBaseElement();\n\n    if (!newDOMElement) {\n      return;\n    }\n\n    var layer = (this || _global).layers[pos];\n\n    if (!layer.ddd || !(this || _global).supports3d) {\n      if ((this || _global).threeDElements) {\n        this.addTo3dContainer(newDOMElement, pos);\n      } else {\n        var i = 0;\n        var nextDOMElement;\n        var nextLayer;\n        var tmpDOMElement;\n\n        while (i < pos) {\n          if ((this || _global).elements[i] && (this || _global).elements[i] !== true && (this || _global).elements[i].getBaseElement) {\n            nextLayer = (this || _global).elements[i];\n            tmpDOMElement = (this || _global).layers[i].ddd ? this.getThreeDContainerByPos(i) : nextLayer.getBaseElement();\n            nextDOMElement = tmpDOMElement || nextDOMElement;\n          }\n\n          i += 1;\n        }\n\n        if (nextDOMElement) {\n          if (!layer.ddd || !(this || _global).supports3d) {\n            (this || _global).layerElement.insertBefore(newDOMElement, nextDOMElement);\n          }\n        } else if (!layer.ddd || !(this || _global).supports3d) {\n          (this || _global).layerElement.appendChild(newDOMElement);\n        }\n      }\n    } else {\n      this.addTo3dContainer(newDOMElement, pos);\n    }\n  };\n\n  HybridRenderer.prototype.createShape = function (data) {\n    if (!(this || _global).supports3d) {\n      return new SVGShapeElement(data, (this || _global).globalData, this || _global);\n    }\n\n    return new HShapeElement(data, (this || _global).globalData, this || _global);\n  };\n\n  HybridRenderer.prototype.createText = function (data) {\n    if (!(this || _global).supports3d) {\n      return new SVGTextLottieElement(data, (this || _global).globalData, this || _global);\n    }\n\n    return new HTextElement(data, (this || _global).globalData, this || _global);\n  };\n\n  HybridRenderer.prototype.createCamera = function (data) {\n    (this || _global).camera = new HCameraElement(data, (this || _global).globalData, this || _global);\n    return (this || _global).camera;\n  };\n\n  HybridRenderer.prototype.createImage = function (data) {\n    if (!(this || _global).supports3d) {\n      return new IImageElement(data, (this || _global).globalData, this || _global);\n    }\n\n    return new HImageElement(data, (this || _global).globalData, this || _global);\n  };\n\n  HybridRenderer.prototype.createComp = function (data) {\n    if (!(this || _global).supports3d) {\n      return new SVGCompElement(data, (this || _global).globalData, this || _global);\n    }\n\n    return new HCompElement(data, (this || _global).globalData, this || _global);\n  };\n\n  HybridRenderer.prototype.createSolid = function (data) {\n    if (!(this || _global).supports3d) {\n      return new ISolidElement(data, (this || _global).globalData, this || _global);\n    }\n\n    return new HSolidElement(data, (this || _global).globalData, this || _global);\n  };\n\n  HybridRenderer.prototype.createNull = SVGRenderer.prototype.createNull;\n\n  HybridRenderer.prototype.getThreeDContainerByPos = function (pos) {\n    var i = 0;\n    var len = (this || _global).threeDElements.length;\n\n    while (i < len) {\n      if ((this || _global).threeDElements[i].startPos <= pos && (this || _global).threeDElements[i].endPos >= pos) {\n        return (this || _global).threeDElements[i].perspectiveElem;\n      }\n\n      i += 1;\n    }\n\n    return null;\n  };\n\n  HybridRenderer.prototype.createThreeDContainer = function (pos, type) {\n    var perspectiveElem = createTag(\"div\");\n    var style;\n    var containerStyle;\n    styleDiv(perspectiveElem);\n    var container = createTag(\"div\");\n    styleDiv(container);\n\n    if (type === \"3d\") {\n      style = perspectiveElem.style;\n      style.width = (this || _global).globalData.compSize.w + \"px\";\n      style.height = (this || _global).globalData.compSize.h + \"px\";\n      var center = \"50% 50%\";\n      style.webkitTransformOrigin = center;\n      style.mozTransformOrigin = center;\n      style.transformOrigin = center;\n      containerStyle = container.style;\n      var matrix = \"matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1)\";\n      containerStyle.transform = matrix;\n      containerStyle.webkitTransform = matrix;\n    }\n\n    perspectiveElem.appendChild(container); // this.resizerElem.appendChild(perspectiveElem);\n\n    var threeDContainerData = {\n      container: container,\n      perspectiveElem: perspectiveElem,\n      startPos: pos,\n      endPos: pos,\n      type: type\n    };\n\n    (this || _global).threeDElements.push(threeDContainerData);\n\n    return threeDContainerData;\n  };\n\n  HybridRenderer.prototype.build3dContainers = function () {\n    var i;\n    var len = (this || _global).layers.length;\n    var lastThreeDContainerData;\n    var currentContainer = \"\";\n\n    for (i = 0; i < len; i += 1) {\n      if ((this || _global).layers[i].ddd && (this || _global).layers[i].ty !== 3) {\n        if (currentContainer !== \"3d\") {\n          currentContainer = \"3d\";\n          lastThreeDContainerData = this.createThreeDContainer(i, \"3d\");\n        }\n\n        lastThreeDContainerData.endPos = Math.max(lastThreeDContainerData.endPos, i);\n      } else {\n        if (currentContainer !== \"2d\") {\n          currentContainer = \"2d\";\n          lastThreeDContainerData = this.createThreeDContainer(i, \"2d\");\n        }\n\n        lastThreeDContainerData.endPos = Math.max(lastThreeDContainerData.endPos, i);\n      }\n    }\n\n    len = (this || _global).threeDElements.length;\n\n    for (i = len - 1; i >= 0; i -= 1) {\n      (this || _global).resizerElem.appendChild((this || _global).threeDElements[i].perspectiveElem);\n    }\n  };\n\n  HybridRenderer.prototype.addTo3dContainer = function (elem, pos) {\n    var i = 0;\n    var len = (this || _global).threeDElements.length;\n\n    while (i < len) {\n      if (pos <= (this || _global).threeDElements[i].endPos) {\n        var j = (this || _global).threeDElements[i].startPos;\n        var nextElement;\n\n        while (j < pos) {\n          if ((this || _global).elements[j] && (this || _global).elements[j].getBaseElement) {\n            nextElement = (this || _global).elements[j].getBaseElement();\n          }\n\n          j += 1;\n        }\n\n        if (nextElement) {\n          (this || _global).threeDElements[i].container.insertBefore(elem, nextElement);\n        } else {\n          (this || _global).threeDElements[i].container.appendChild(elem);\n        }\n\n        break;\n      }\n\n      i += 1;\n    }\n  };\n\n  HybridRenderer.prototype.configAnimation = function (animData) {\n    var resizerElem = createTag(\"div\");\n    var wrapper = (this || _global).animationItem.wrapper;\n    var style = resizerElem.style;\n    style.width = animData.w + \"px\";\n    style.height = animData.h + \"px\";\n    (this || _global).resizerElem = resizerElem;\n    styleDiv(resizerElem);\n    style.transformStyle = \"flat\";\n    style.mozTransformStyle = \"flat\";\n    style.webkitTransformStyle = \"flat\";\n\n    if ((this || _global).renderConfig.className) {\n      resizerElem.setAttribute(\"class\", (this || _global).renderConfig.className);\n    }\n\n    wrapper.appendChild(resizerElem);\n    style.overflow = \"hidden\";\n    var svg = createNS(\"svg\");\n    svg.setAttribute(\"width\", \"1\");\n    svg.setAttribute(\"height\", \"1\");\n    styleDiv(svg);\n\n    (this || _global).resizerElem.appendChild(svg);\n\n    var defs = createNS(\"defs\");\n    svg.appendChild(defs);\n    (this || _global).data = animData; // Mask animation\n\n    this.setupGlobalData(animData, svg);\n    (this || _global).globalData.defs = defs;\n    (this || _global).layers = animData.layers;\n    (this || _global).layerElement = (this || _global).resizerElem;\n    this.build3dContainers();\n    this.updateContainerSize();\n  };\n\n  HybridRenderer.prototype.destroy = function () {\n    if ((this || _global).animationItem.wrapper) {\n      (this || _global).animationItem.wrapper.innerText = \"\";\n    }\n\n    (this || _global).animationItem.container = null;\n    (this || _global).globalData.defs = null;\n    var i;\n    var len = (this || _global).layers ? (this || _global).layers.length : 0;\n\n    for (i = 0; i < len; i += 1) {\n      (this || _global).elements[i].destroy();\n    }\n\n    (this || _global).elements.length = 0;\n    (this || _global).destroyed = true;\n    (this || _global).animationItem = null;\n  };\n\n  HybridRenderer.prototype.updateContainerSize = function () {\n    var elementWidth = (this || _global).animationItem.wrapper.offsetWidth;\n    var elementHeight = (this || _global).animationItem.wrapper.offsetHeight;\n    var elementRel = elementWidth / elementHeight;\n    var animationRel = (this || _global).globalData.compSize.w / (this || _global).globalData.compSize.h;\n    var sx;\n    var sy;\n    var tx;\n    var ty;\n\n    if (animationRel > elementRel) {\n      sx = elementWidth / (this || _global).globalData.compSize.w;\n      sy = elementWidth / (this || _global).globalData.compSize.w;\n      tx = 0;\n      ty = (elementHeight - (this || _global).globalData.compSize.h * (elementWidth / (this || _global).globalData.compSize.w)) / 2;\n    } else {\n      sx = elementHeight / (this || _global).globalData.compSize.h;\n      sy = elementHeight / (this || _global).globalData.compSize.h;\n      tx = (elementWidth - (this || _global).globalData.compSize.w * (elementHeight / (this || _global).globalData.compSize.h)) / 2;\n      ty = 0;\n    }\n\n    var style = (this || _global).resizerElem.style;\n    style.webkitTransform = \"matrix3d(\" + sx + \",0,0,0,0,\" + sy + \",0,0,0,0,1,0,\" + tx + \",\" + ty + \",0,1)\";\n    style.transform = style.webkitTransform;\n  };\n\n  HybridRenderer.prototype.renderFrame = SVGRenderer.prototype.renderFrame;\n\n  HybridRenderer.prototype.hide = function () {\n    (this || _global).resizerElem.style.display = \"none\";\n  };\n\n  HybridRenderer.prototype.show = function () {\n    (this || _global).resizerElem.style.display = \"block\";\n  };\n\n  HybridRenderer.prototype.initItems = function () {\n    this.buildAllItems();\n\n    if ((this || _global).camera) {\n      (this || _global).camera.setup();\n    } else {\n      var cWidth = (this || _global).globalData.compSize.w;\n      var cHeight = (this || _global).globalData.compSize.h;\n      var i;\n      var len = (this || _global).threeDElements.length;\n\n      for (i = 0; i < len; i += 1) {\n        var style = (this || _global).threeDElements[i].perspectiveElem.style;\n        style.webkitPerspective = Math.sqrt(Math.pow(cWidth, 2) + Math.pow(cHeight, 2)) + \"px\";\n        style.perspective = style.webkitPerspective;\n      }\n    }\n  };\n\n  HybridRenderer.prototype.searchExtraCompositions = function (assets) {\n    var i;\n    var len = assets.length;\n    var floatingContainer = createTag(\"div\");\n\n    for (i = 0; i < len; i += 1) {\n      if (assets[i].xt) {\n        var comp = this.createComp(assets[i], floatingContainer, (this || _global).globalData.comp, null);\n        comp.initExpressions();\n\n        (this || _global).globalData.projectInterface.registerComposition(comp);\n      }\n    }\n  };\n  /* global createSizedArray, createElementID, PropertyFactory, ShapePropertyFactory, createNS, locationHref */\n\n\n  function MaskElement(data, element, globalData) {\n    (this || _global).data = data;\n    (this || _global).element = element;\n    (this || _global).globalData = globalData;\n    (this || _global).storedData = [];\n    (this || _global).masksProperties = (this || _global).data.masksProperties || [];\n    (this || _global).maskElement = null;\n    var defs = (this || _global).globalData.defs;\n    var i;\n    var len = (this || _global).masksProperties ? (this || _global).masksProperties.length : 0;\n    (this || _global).viewData = createSizedArray(len);\n    (this || _global).solidPath = \"\";\n    var path;\n    var properties = (this || _global).masksProperties;\n    var count = 0;\n    var currentMasks = [];\n    var j;\n    var jLen;\n    var layerId = createElementID();\n    var rect;\n    var expansor;\n    var feMorph;\n    var x;\n    var maskType = \"clipPath\";\n    var maskRef = \"clip-path\";\n\n    for (i = 0; i < len; i += 1) {\n      if (properties[i].mode !== \"a\" && properties[i].mode !== \"n\" || properties[i].inv || properties[i].o.k !== 100 || properties[i].o.x) {\n        maskType = \"mask\";\n        maskRef = \"mask\";\n      }\n\n      if ((properties[i].mode === \"s\" || properties[i].mode === \"i\") && count === 0) {\n        rect = createNS(\"rect\");\n        rect.setAttribute(\"fill\", \"#ffffff\");\n        rect.setAttribute(\"width\", (this || _global).element.comp.data.w || 0);\n        rect.setAttribute(\"height\", (this || _global).element.comp.data.h || 0);\n        currentMasks.push(rect);\n      } else {\n        rect = null;\n      }\n\n      path = createNS(\"path\");\n\n      if (properties[i].mode === \"n\") {\n        // TODO move this to a factory or to a constructor\n        (this || _global).viewData[i] = {\n          op: PropertyFactory.getProp((this || _global).element, properties[i].o, 0, 0.01, (this || _global).element),\n          prop: ShapePropertyFactory.getShapeProp((this || _global).element, properties[i], 3),\n          elem: path,\n          lastPath: \"\"\n        };\n        defs.appendChild(path);\n      } else {\n        count += 1;\n        path.setAttribute(\"fill\", properties[i].mode === \"s\" ? \"#000000\" : \"#ffffff\");\n        path.setAttribute(\"clip-rule\", \"nonzero\");\n        var filterID;\n\n        if (properties[i].x.k !== 0) {\n          maskType = \"mask\";\n          maskRef = \"mask\";\n          x = PropertyFactory.getProp((this || _global).element, properties[i].x, 0, null, (this || _global).element);\n          filterID = createElementID();\n          expansor = createNS(\"filter\");\n          expansor.setAttribute(\"id\", filterID);\n          feMorph = createNS(\"feMorphology\");\n          feMorph.setAttribute(\"operator\", \"erode\");\n          feMorph.setAttribute(\"in\", \"SourceGraphic\");\n          feMorph.setAttribute(\"radius\", \"0\");\n          expansor.appendChild(feMorph);\n          defs.appendChild(expansor);\n          path.setAttribute(\"stroke\", properties[i].mode === \"s\" ? \"#000000\" : \"#ffffff\");\n        } else {\n          feMorph = null;\n          x = null;\n        } // TODO move this to a factory or to a constructor\n\n\n        (this || _global).storedData[i] = {\n          elem: path,\n          x: x,\n          expan: feMorph,\n          lastPath: \"\",\n          lastOperator: \"\",\n          filterId: filterID,\n          lastRadius: 0\n        };\n\n        if (properties[i].mode === \"i\") {\n          jLen = currentMasks.length;\n          var g = createNS(\"g\");\n\n          for (j = 0; j < jLen; j += 1) {\n            g.appendChild(currentMasks[j]);\n          }\n\n          var mask = createNS(\"mask\");\n          mask.setAttribute(\"mask-type\", \"alpha\");\n          mask.setAttribute(\"id\", layerId + \"_\" + count);\n          mask.appendChild(path);\n          defs.appendChild(mask);\n          g.setAttribute(\"mask\", \"url(\" + locationHref + \"#\" + layerId + \"_\" + count + \")\");\n          currentMasks.length = 0;\n          currentMasks.push(g);\n        } else {\n          currentMasks.push(path);\n        }\n\n        if (properties[i].inv && !(this || _global).solidPath) {\n          (this || _global).solidPath = this.createLayerSolidPath();\n        } // TODO move this to a factory or to a constructor\n\n\n        (this || _global).viewData[i] = {\n          elem: path,\n          lastPath: \"\",\n          op: PropertyFactory.getProp((this || _global).element, properties[i].o, 0, 0.01, (this || _global).element),\n          prop: ShapePropertyFactory.getShapeProp((this || _global).element, properties[i], 3),\n          invRect: rect\n        };\n\n        if (!(this || _global).viewData[i].prop.k) {\n          this.drawPath(properties[i], (this || _global).viewData[i].prop.v, (this || _global).viewData[i]);\n        }\n      }\n    }\n\n    (this || _global).maskElement = createNS(maskType);\n    len = currentMasks.length;\n\n    for (i = 0; i < len; i += 1) {\n      (this || _global).maskElement.appendChild(currentMasks[i]);\n    }\n\n    if (count > 0) {\n      (this || _global).maskElement.setAttribute(\"id\", layerId);\n\n      (this || _global).element.maskedElement.setAttribute(maskRef, \"url(\" + locationHref + \"#\" + layerId + \")\");\n\n      defs.appendChild((this || _global).maskElement);\n    }\n\n    if ((this || _global).viewData.length) {\n      (this || _global).element.addRenderableComponent(this || _global);\n    }\n  }\n\n  MaskElement.prototype.getMaskProperty = function (pos) {\n    return (this || _global).viewData[pos].prop;\n  };\n\n  MaskElement.prototype.renderFrame = function (isFirstFrame) {\n    var finalMat = (this || _global).element.finalTransform.mat;\n    var i;\n    var len = (this || _global).masksProperties.length;\n\n    for (i = 0; i < len; i += 1) {\n      if ((this || _global).viewData[i].prop._mdf || isFirstFrame) {\n        this.drawPath((this || _global).masksProperties[i], (this || _global).viewData[i].prop.v, (this || _global).viewData[i]);\n      }\n\n      if ((this || _global).viewData[i].op._mdf || isFirstFrame) {\n        (this || _global).viewData[i].elem.setAttribute(\"fill-opacity\", (this || _global).viewData[i].op.v);\n      }\n\n      if ((this || _global).masksProperties[i].mode !== \"n\") {\n        if ((this || _global).viewData[i].invRect && ((this || _global).element.finalTransform.mProp._mdf || isFirstFrame)) {\n          (this || _global).viewData[i].invRect.setAttribute(\"transform\", finalMat.getInverseMatrix().to2dCSS());\n        }\n\n        if ((this || _global).storedData[i].x && ((this || _global).storedData[i].x._mdf || isFirstFrame)) {\n          var feMorph = (this || _global).storedData[i].expan;\n\n          if ((this || _global).storedData[i].x.v < 0) {\n            if ((this || _global).storedData[i].lastOperator !== \"erode\") {\n              (this || _global).storedData[i].lastOperator = \"erode\";\n\n              (this || _global).storedData[i].elem.setAttribute(\"filter\", \"url(\" + locationHref + \"#\" + (this || _global).storedData[i].filterId + \")\");\n            }\n\n            feMorph.setAttribute(\"radius\", -(this || _global).storedData[i].x.v);\n          } else {\n            if ((this || _global).storedData[i].lastOperator !== \"dilate\") {\n              (this || _global).storedData[i].lastOperator = \"dilate\";\n\n              (this || _global).storedData[i].elem.setAttribute(\"filter\", null);\n            }\n\n            (this || _global).storedData[i].elem.setAttribute(\"stroke-width\", (this || _global).storedData[i].x.v * 2);\n          }\n        }\n      }\n    }\n  };\n\n  MaskElement.prototype.getMaskelement = function () {\n    return (this || _global).maskElement;\n  };\n\n  MaskElement.prototype.createLayerSolidPath = function () {\n    var path = \"M0,0 \";\n    path += \" h\" + (this || _global).globalData.compSize.w;\n    path += \" v\" + (this || _global).globalData.compSize.h;\n    path += \" h-\" + (this || _global).globalData.compSize.w;\n    path += \" v-\" + (this || _global).globalData.compSize.h + \" \";\n    return path;\n  };\n\n  MaskElement.prototype.drawPath = function (pathData, pathNodes, viewData) {\n    var pathString = \" M\" + pathNodes.v[0][0] + \",\" + pathNodes.v[0][1];\n    var i;\n    var len;\n    len = pathNodes._length;\n\n    for (i = 1; i < len; i += 1) {\n      // pathString += \" C\"+pathNodes.o[i-1][0]+','+pathNodes.o[i-1][1] + \" \"+pathNodes.i[i][0]+','+pathNodes.i[i][1] + \" \"+pathNodes.v[i][0]+','+pathNodes.v[i][1];\n      pathString += \" C\" + pathNodes.o[i - 1][0] + \",\" + pathNodes.o[i - 1][1] + \" \" + pathNodes.i[i][0] + \",\" + pathNodes.i[i][1] + \" \" + pathNodes.v[i][0] + \",\" + pathNodes.v[i][1];\n    } // pathString += \" C\"+pathNodes.o[i-1][0]+','+pathNodes.o[i-1][1] + \" \"+pathNodes.i[0][0]+','+pathNodes.i[0][1] + \" \"+pathNodes.v[0][0]+','+pathNodes.v[0][1];\n\n\n    if (pathNodes.c && len > 1) {\n      pathString += \" C\" + pathNodes.o[i - 1][0] + \",\" + pathNodes.o[i - 1][1] + \" \" + pathNodes.i[0][0] + \",\" + pathNodes.i[0][1] + \" \" + pathNodes.v[0][0] + \",\" + pathNodes.v[0][1];\n    } // pathNodes.__renderedString = pathString;\n\n\n    if (viewData.lastPath !== pathString) {\n      var pathShapeValue = \"\";\n\n      if (viewData.elem) {\n        if (pathNodes.c) {\n          pathShapeValue = pathData.inv ? (this || _global).solidPath + pathString : pathString;\n        }\n\n        viewData.elem.setAttribute(\"d\", pathShapeValue);\n      }\n\n      viewData.lastPath = pathString;\n    }\n  };\n\n  MaskElement.prototype.destroy = function () {\n    (this || _global).element = null;\n    (this || _global).globalData = null;\n    (this || _global).maskElement = null;\n    (this || _global).data = null;\n    (this || _global).masksProperties = null;\n  };\n  /**\r\n   * @file\r\n   * Handles AE's layer parenting property.\r\n   *\r\n   */\n\n\n  function HierarchyElement() {}\n\n  HierarchyElement.prototype = {\n    /**\r\n       * @function\r\n       * Initializes hierarchy properties\r\n       *\r\n       */\n    initHierarchy: function () {\n      // element's parent list\n      (this || _global).hierarchy = []; // if element is parent of another layer _isParent will be true\n\n      (this || _global)._isParent = false;\n      this.checkParenting();\n    },\n\n    /**\r\n       * @function\r\n       * Sets layer's hierarchy.\r\n       * @param {array} hierarch\r\n       * layer's parent list\r\n       *\r\n       */\n    setHierarchy: function (hierarchy) {\n      (this || _global).hierarchy = hierarchy;\n    },\n\n    /**\r\n       * @function\r\n       * Sets layer as parent.\r\n       *\r\n       */\n    setAsParent: function () {\n      (this || _global)._isParent = true;\n    },\n\n    /**\r\n       * @function\r\n       * Searches layer's parenting chain\r\n       *\r\n       */\n    checkParenting: function () {\n      if ((this || _global).data.parent !== undefined) {\n        (this || _global).comp.buildElementParenting(this || _global, (this || _global).data.parent, []);\n      }\n    }\n  };\n  /**\r\n   * @file\r\n   * Handles element's layer frame update.\r\n   * Checks layer in point and out point\r\n   *\r\n   */\n\n  function FrameElement() {}\n\n  FrameElement.prototype = {\n    /**\r\n       * @function\r\n       * Initializes frame related properties.\r\n       *\r\n       */\n    initFrame: function () {\n      // set to true when inpoint is rendered\n      (this || _global)._isFirstFrame = false; // list of animated properties\n\n      (this || _global).dynamicProperties = []; // If layer has been modified in current tick this will be true\n\n      (this || _global)._mdf = false;\n    },\n\n    /**\r\n       * @function\r\n       * Calculates all dynamic values\r\n       *\r\n       * @param {number} num\r\n       * current frame number in Layer's time\r\n       * @param {boolean} isVisible\r\n       * if layers is currently in range\r\n       *\r\n       */\n    prepareProperties: function (num, isVisible) {\n      var i;\n      var len = (this || _global).dynamicProperties.length;\n\n      for (i = 0; i < len; i += 1) {\n        if (isVisible || (this || _global)._isParent && (this || _global).dynamicProperties[i].propType === \"transform\") {\n          (this || _global).dynamicProperties[i].getValue();\n\n          if ((this || _global).dynamicProperties[i]._mdf) {\n            (this || _global).globalData._mdf = true;\n            (this || _global)._mdf = true;\n          }\n        }\n      }\n    },\n    addDynamicProperty: function (prop) {\n      if ((this || _global).dynamicProperties.indexOf(prop) === -1) {\n        (this || _global).dynamicProperties.push(prop);\n      }\n    }\n  };\n  /* global TransformPropertyFactory, Matrix */\n\n  function TransformElement() {}\n\n  TransformElement.prototype = {\n    initTransform: function () {\n      (this || _global).finalTransform = {\n        mProp: (this || _global).data.ks ? TransformPropertyFactory.getTransformProperty(this || _global, (this || _global).data.ks, this || _global) : {\n          o: 0\n        },\n        _matMdf: false,\n        _opMdf: false,\n        mat: new Matrix()\n      };\n\n      if ((this || _global).data.ao) {\n        (this || _global).finalTransform.mProp.autoOriented = true;\n      } // TODO: check TYPE 11: Guided elements\n\n\n      if ((this || _global).data.ty !== 11) {// this.createElements();\n      }\n    },\n    renderTransform: function () {\n      (this || _global).finalTransform._opMdf = (this || _global).finalTransform.mProp.o._mdf || (this || _global)._isFirstFrame;\n      (this || _global).finalTransform._matMdf = (this || _global).finalTransform.mProp._mdf || (this || _global)._isFirstFrame;\n\n      if ((this || _global).hierarchy) {\n        var mat;\n        var finalMat = (this || _global).finalTransform.mat;\n        var i = 0;\n        var len = (this || _global).hierarchy.length; // Checking if any of the transformation matrices in the hierarchy chain has changed.\n\n        if (!(this || _global).finalTransform._matMdf) {\n          while (i < len) {\n            if ((this || _global).hierarchy[i].finalTransform.mProp._mdf) {\n              (this || _global).finalTransform._matMdf = true;\n              break;\n            }\n\n            i += 1;\n          }\n        }\n\n        if ((this || _global).finalTransform._matMdf) {\n          mat = (this || _global).finalTransform.mProp.v.props;\n          finalMat.cloneFromProps(mat);\n\n          for (i = 0; i < len; i += 1) {\n            mat = (this || _global).hierarchy[i].finalTransform.mProp.v.props;\n            finalMat.transform(mat[0], mat[1], mat[2], mat[3], mat[4], mat[5], mat[6], mat[7], mat[8], mat[9], mat[10], mat[11], mat[12], mat[13], mat[14], mat[15]);\n          }\n        }\n      }\n    },\n    globalToLocal: function (pt) {\n      var transforms = [];\n      transforms.push((this || _global).finalTransform);\n      var flag = true;\n      var comp = (this || _global).comp;\n\n      while (flag) {\n        if (comp.finalTransform) {\n          if (comp.data.hasMask) {\n            transforms.splice(0, 0, comp.finalTransform);\n          }\n\n          comp = comp.comp;\n        } else {\n          flag = false;\n        }\n      }\n\n      var i;\n      var len = transforms.length;\n      var ptNew;\n\n      for (i = 0; i < len; i += 1) {\n        ptNew = transforms[i].mat.applyToPointArray(0, 0, 0); // ptNew = transforms[i].mat.applyToPointArray(pt[0],pt[1],pt[2]);\n\n        pt = [pt[0] - ptNew[0], pt[1] - ptNew[1], 0];\n      }\n\n      return pt;\n    },\n    mHelper: new Matrix()\n  };\n\n  function RenderableElement() {}\n\n  RenderableElement.prototype = {\n    initRenderable: function () {\n      // layer's visibility related to inpoint and outpoint. Rename isVisible to isInRange\n      (this || _global).isInRange = false; // layer's display state\n\n      (this || _global).hidden = false; // If layer's transparency equals 0, it can be hidden\n\n      (this || _global).isTransparent = false; // list of animated components\n\n      (this || _global).renderableComponents = [];\n    },\n    addRenderableComponent: function (component) {\n      if ((this || _global).renderableComponents.indexOf(component) === -1) {\n        (this || _global).renderableComponents.push(component);\n      }\n    },\n    removeRenderableComponent: function (component) {\n      if ((this || _global).renderableComponents.indexOf(component) !== -1) {\n        (this || _global).renderableComponents.splice((this || _global).renderableComponents.indexOf(component), 1);\n      }\n    },\n    prepareRenderableFrame: function (num) {\n      this.checkLayerLimits(num);\n    },\n    checkTransparency: function () {\n      if ((this || _global).finalTransform.mProp.o.v <= 0) {\n        if (!(this || _global).isTransparent && (this || _global).globalData.renderConfig.hideOnTransparent) {\n          (this || _global).isTransparent = true;\n          this.hide();\n        }\n      } else if ((this || _global).isTransparent) {\n        (this || _global).isTransparent = false;\n        this.show();\n      }\n    },\n\n    /**\r\n       * @function\r\n       * Initializes frame related properties.\r\n       *\r\n       * @param {number} num\r\n       * current frame number in Layer's time\r\n       *\r\n       */\n    checkLayerLimits: function (num) {\n      if ((this || _global).data.ip - (this || _global).data.st <= num && (this || _global).data.op - (this || _global).data.st > num) {\n        if ((this || _global).isInRange !== true) {\n          (this || _global).globalData._mdf = true;\n          (this || _global)._mdf = true;\n          (this || _global).isInRange = true;\n          this.show();\n        }\n      } else if ((this || _global).isInRange !== false) {\n        (this || _global).globalData._mdf = true;\n        (this || _global).isInRange = false;\n        this.hide();\n      }\n    },\n    renderRenderable: function () {\n      var i;\n      var len = (this || _global).renderableComponents.length;\n\n      for (i = 0; i < len; i += 1) {\n        (this || _global).renderableComponents[i].renderFrame((this || _global)._isFirstFrame);\n      }\n      /* this.maskManager.renderFrame(this.finalTransform.mat);\r\n          this.renderableEffectsManager.renderFrame(this._isFirstFrame); */\n\n    },\n    sourceRectAtTime: function () {\n      return {\n        top: 0,\n        left: 0,\n        width: 100,\n        height: 100\n      };\n    },\n    getLayerSize: function () {\n      if ((this || _global).data.ty === 5) {\n        return {\n          w: (this || _global).data.textData.width,\n          h: (this || _global).data.textData.height\n        };\n      }\n\n      return {\n        w: (this || _global).data.width,\n        h: (this || _global).data.height\n      };\n    }\n  };\n  /* global extendPrototype, RenderableElement, createProxyFunction */\n\n  function RenderableDOMElement() {}\n\n  (function () {\n    var _prototype = {\n      initElement: function (data, globalData, comp) {\n        this.initFrame();\n        this.initBaseData(data, globalData, comp);\n        this.initTransform(data, globalData, comp);\n        this.initHierarchy();\n        this.initRenderable();\n        this.initRendererElement();\n        this.createContainerElements();\n        this.createRenderableComponents();\n        this.createContent();\n        this.hide();\n      },\n      hide: function () {\n        if (!(this || _global).hidden && (!(this || _global).isInRange || (this || _global).isTransparent)) {\n          var elem = (this || _global).baseElement || (this || _global).layerElement;\n          elem.style.display = \"none\";\n          (this || _global).hidden = true;\n        }\n      },\n      show: function () {\n        if ((this || _global).isInRange && !(this || _global).isTransparent) {\n          if (!(this || _global).data.hd) {\n            var elem = (this || _global).baseElement || (this || _global).layerElement;\n            elem.style.display = \"block\";\n          }\n\n          (this || _global).hidden = false;\n          (this || _global)._isFirstFrame = true;\n        }\n      },\n      renderFrame: function () {\n        // If it is exported as hidden (data.hd === true) no need to render\n        // If it is not visible no need to render\n        if ((this || _global).data.hd || (this || _global).hidden) {\n          return;\n        }\n\n        this.renderTransform();\n        this.renderRenderable();\n        this.renderElement();\n        this.renderInnerContent();\n\n        if ((this || _global)._isFirstFrame) {\n          (this || _global)._isFirstFrame = false;\n        }\n      },\n      renderInnerContent: function () {},\n      prepareFrame: function (num) {\n        (this || _global)._mdf = false;\n        this.prepareRenderableFrame(num);\n        this.prepareProperties(num, (this || _global).isInRange);\n        this.checkTransparency();\n      },\n      destroy: function () {\n        (this || _global).innerElem = null;\n        this.destroyBaseElement();\n      }\n    };\n    extendPrototype([RenderableElement, createProxyFunction(_prototype)], RenderableDOMElement);\n  })();\n  /* exported ProcessedElement */\n\n\n  function ProcessedElement(element, position) {\n    (this || _global).elem = element;\n    (this || _global).pos = position;\n  }\n  /* global createNS */\n\n\n  function SVGStyleData(data, level) {\n    (this || _global).data = data;\n    (this || _global).type = data.ty;\n    (this || _global).d = \"\";\n    (this || _global).lvl = level;\n    (this || _global)._mdf = false;\n    (this || _global).closed = data.hd === true;\n    (this || _global).pElem = createNS(\"path\");\n    (this || _global).msElem = null;\n  }\n\n  SVGStyleData.prototype.reset = function () {\n    (this || _global).d = \"\";\n    (this || _global)._mdf = false;\n  };\n\n  function SVGShapeData(transformers, level, shape) {\n    (this || _global).caches = [];\n    (this || _global).styles = [];\n    (this || _global).transformers = transformers;\n    (this || _global).lStr = \"\";\n    (this || _global).sh = shape;\n    (this || _global).lvl = level; // TODO find if there are some cases where _isAnimated can be false.\n    // For now, since shapes add up with other shapes. They have to be calculated every time.\n    // One way of finding out is checking if all styles associated to this shape depend only of this shape\n\n    (this || _global)._isAnimated = !!shape.k; // TODO: commenting this for now since all shapes are animated\n\n    var i = 0;\n    var len = transformers.length;\n\n    while (i < len) {\n      if (transformers[i].mProps.dynamicProperties.length) {\n        (this || _global)._isAnimated = true;\n        break;\n      }\n\n      i += 1;\n    }\n  }\n\n  SVGShapeData.prototype.setAsAnimated = function () {\n    (this || _global)._isAnimated = true;\n  };\n  /* exported SVGTransformData */\n\n\n  function SVGTransformData(mProps, op, container) {\n    (this || _global).transform = {\n      mProps: mProps,\n      op: op,\n      container: container\n    };\n    (this || _global).elements = [];\n    (this || _global)._isAnimated = (this || _global).transform.mProps.dynamicProperties.length || (this || _global).transform.op.effectsSequence.length;\n  }\n  /* global DashProperty, PropertyFactory, extendPrototype, DynamicPropertyContainer */\n\n\n  function SVGStrokeStyleData(elem, data, styleOb) {\n    this.initDynamicPropertyContainer(elem);\n    (this || _global).getValue = (this || _global).iterateDynamicProperties;\n    (this || _global).o = PropertyFactory.getProp(elem, data.o, 0, 0.01, this || _global);\n    (this || _global).w = PropertyFactory.getProp(elem, data.w, 0, null, this || _global);\n    (this || _global).d = new DashProperty(elem, data.d || {}, \"svg\", this || _global);\n    (this || _global).c = PropertyFactory.getProp(elem, data.c, 1, 255, this || _global);\n    (this || _global).style = styleOb;\n    (this || _global)._isAnimated = !!(this || _global)._isAnimated;\n  }\n\n  extendPrototype([DynamicPropertyContainer], SVGStrokeStyleData);\n  /* global PropertyFactory, extendPrototype, DynamicPropertyContainer */\n\n  function SVGFillStyleData(elem, data, styleOb) {\n    this.initDynamicPropertyContainer(elem);\n    (this || _global).getValue = (this || _global).iterateDynamicProperties;\n    (this || _global).o = PropertyFactory.getProp(elem, data.o, 0, 0.01, this || _global);\n    (this || _global).c = PropertyFactory.getProp(elem, data.c, 1, 255, this || _global);\n    (this || _global).style = styleOb;\n  }\n\n  extendPrototype([DynamicPropertyContainer], SVGFillStyleData);\n  /* global PropertyFactory, degToRads, GradientProperty, createElementID, createNS, locationHref,\r\n  extendPrototype, DynamicPropertyContainer */\n\n  function SVGGradientFillStyleData(elem, data, styleOb) {\n    this.initDynamicPropertyContainer(elem);\n    (this || _global).getValue = (this || _global).iterateDynamicProperties;\n    this.initGradientData(elem, data, styleOb);\n  }\n\n  SVGGradientFillStyleData.prototype.initGradientData = function (elem, data, styleOb) {\n    (this || _global).o = PropertyFactory.getProp(elem, data.o, 0, 0.01, this || _global);\n    (this || _global).s = PropertyFactory.getProp(elem, data.s, 1, null, this || _global);\n    (this || _global).e = PropertyFactory.getProp(elem, data.e, 1, null, this || _global);\n    (this || _global).h = PropertyFactory.getProp(elem, data.h || {\n      k: 0\n    }, 0, 0.01, this || _global);\n    (this || _global).a = PropertyFactory.getProp(elem, data.a || {\n      k: 0\n    }, 0, degToRads, this || _global);\n    (this || _global).g = new GradientProperty(elem, data.g, this || _global);\n    (this || _global).style = styleOb;\n    (this || _global).stops = [];\n    this.setGradientData(styleOb.pElem, data);\n    this.setGradientOpacity(data, styleOb);\n    (this || _global)._isAnimated = !!(this || _global)._isAnimated;\n  };\n\n  SVGGradientFillStyleData.prototype.setGradientData = function (pathElement, data) {\n    var gradientId = createElementID();\n    var gfill = createNS(data.t === 1 ? \"linearGradient\" : \"radialGradient\");\n    gfill.setAttribute(\"id\", gradientId);\n    gfill.setAttribute(\"spreadMethod\", \"pad\");\n    gfill.setAttribute(\"gradientUnits\", \"userSpaceOnUse\");\n    var stops = [];\n    var stop;\n    var j;\n    var jLen;\n    jLen = data.g.p * 4;\n\n    for (j = 0; j < jLen; j += 4) {\n      stop = createNS(\"stop\");\n      gfill.appendChild(stop);\n      stops.push(stop);\n    }\n\n    pathElement.setAttribute(data.ty === \"gf\" ? \"fill\" : \"stroke\", \"url(\" + locationHref + \"#\" + gradientId + \")\");\n    (this || _global).gf = gfill;\n    (this || _global).cst = stops;\n  };\n\n  SVGGradientFillStyleData.prototype.setGradientOpacity = function (data, styleOb) {\n    if ((this || _global).g._hasOpacity && !(this || _global).g._collapsable) {\n      var stop;\n      var j;\n      var jLen;\n      var mask = createNS(\"mask\");\n      var maskElement = createNS(\"path\");\n      mask.appendChild(maskElement);\n      var opacityId = createElementID();\n      var maskId = createElementID();\n      mask.setAttribute(\"id\", maskId);\n      var opFill = createNS(data.t === 1 ? \"linearGradient\" : \"radialGradient\");\n      opFill.setAttribute(\"id\", opacityId);\n      opFill.setAttribute(\"spreadMethod\", \"pad\");\n      opFill.setAttribute(\"gradientUnits\", \"userSpaceOnUse\");\n      jLen = data.g.k.k[0].s ? data.g.k.k[0].s.length : data.g.k.k.length;\n      var stops = (this || _global).stops;\n\n      for (j = data.g.p * 4; j < jLen; j += 2) {\n        stop = createNS(\"stop\");\n        stop.setAttribute(\"stop-color\", \"rgb(255,255,255)\");\n        opFill.appendChild(stop);\n        stops.push(stop);\n      }\n\n      maskElement.setAttribute(data.ty === \"gf\" ? \"fill\" : \"stroke\", \"url(\" + locationHref + \"#\" + opacityId + \")\");\n      (this || _global).of = opFill;\n      (this || _global).ms = mask;\n      (this || _global).ost = stops;\n      (this || _global).maskId = maskId;\n      styleOb.msElem = maskElement;\n    }\n  };\n\n  extendPrototype([DynamicPropertyContainer], SVGGradientFillStyleData);\n  /* global PropertyFactory, DashProperty, extendPrototype, SVGGradientFillStyleData, DynamicPropertyContainer */\n\n  function SVGGradientStrokeStyleData(elem, data, styleOb) {\n    this.initDynamicPropertyContainer(elem);\n    (this || _global).getValue = (this || _global).iterateDynamicProperties;\n    (this || _global).w = PropertyFactory.getProp(elem, data.w, 0, null, this || _global);\n    (this || _global).d = new DashProperty(elem, data.d || {}, \"svg\", this || _global);\n    this.initGradientData(elem, data, styleOb);\n    (this || _global)._isAnimated = !!(this || _global)._isAnimated;\n  }\n\n  extendPrototype([SVGGradientFillStyleData, DynamicPropertyContainer], SVGGradientStrokeStyleData);\n  /* global createNS */\n\n  /* exported ShapeGroupData */\n\n  function ShapeGroupData() {\n    (this || _global).it = [];\n    (this || _global).prevViewData = [];\n    (this || _global).gr = createNS(\"g\");\n  }\n  /* global Matrix, buildShapeString, bmFloor */\n\n  /* exported SVGElementsRenderer */\n\n\n  var SVGElementsRenderer = function () {\n    var _identityMatrix = new Matrix();\n\n    var _matrixHelper = new Matrix();\n\n    var ob = {\n      createRenderFunction: createRenderFunction\n    };\n\n    function createRenderFunction(data) {\n      switch (data.ty) {\n        case \"fl\":\n          return renderFill;\n\n        case \"gf\":\n          return renderGradient;\n\n        case \"gs\":\n          return renderGradientStroke;\n\n        case \"st\":\n          return renderStroke;\n\n        case \"sh\":\n        case \"el\":\n        case \"rc\":\n        case \"sr\":\n          return renderPath;\n\n        case \"tr\":\n          return renderContentTransform;\n\n        default:\n          return null;\n      }\n    }\n\n    function renderContentTransform(styleData, itemData, isFirstFrame) {\n      if (isFirstFrame || itemData.transform.op._mdf) {\n        itemData.transform.container.setAttribute(\"opacity\", itemData.transform.op.v);\n      }\n\n      if (isFirstFrame || itemData.transform.mProps._mdf) {\n        itemData.transform.container.setAttribute(\"transform\", itemData.transform.mProps.v.to2dCSS());\n      }\n    }\n\n    function renderPath(styleData, itemData, isFirstFrame) {\n      var j;\n      var jLen;\n      var pathStringTransformed;\n      var redraw;\n      var pathNodes;\n      var l;\n      var lLen = itemData.styles.length;\n      var lvl = itemData.lvl;\n      var paths;\n      var mat;\n      var props;\n      var iterations;\n      var k;\n\n      for (l = 0; l < lLen; l += 1) {\n        redraw = itemData.sh._mdf || isFirstFrame;\n\n        if (itemData.styles[l].lvl < lvl) {\n          mat = _matrixHelper.reset();\n          iterations = lvl - itemData.styles[l].lvl;\n          k = itemData.transformers.length - 1;\n\n          while (!redraw && iterations > 0) {\n            redraw = itemData.transformers[k].mProps._mdf || redraw;\n            iterations -= 1;\n            k -= 1;\n          }\n\n          if (redraw) {\n            iterations = lvl - itemData.styles[l].lvl;\n            k = itemData.transformers.length - 1;\n\n            while (iterations > 0) {\n              props = itemData.transformers[k].mProps.v.props;\n              mat.transform(props[0], props[1], props[2], props[3], props[4], props[5], props[6], props[7], props[8], props[9], props[10], props[11], props[12], props[13], props[14], props[15]);\n              iterations -= 1;\n              k -= 1;\n            }\n          }\n        } else {\n          mat = _identityMatrix;\n        }\n\n        paths = itemData.sh.paths;\n        jLen = paths._length;\n\n        if (redraw) {\n          pathStringTransformed = \"\";\n\n          for (j = 0; j < jLen; j += 1) {\n            pathNodes = paths.shapes[j];\n\n            if (pathNodes && pathNodes._length) {\n              pathStringTransformed += buildShapeString(pathNodes, pathNodes._length, pathNodes.c, mat);\n            }\n          }\n\n          itemData.caches[l] = pathStringTransformed;\n        } else {\n          pathStringTransformed = itemData.caches[l];\n        }\n\n        itemData.styles[l].d += styleData.hd === true ? \"\" : pathStringTransformed;\n        itemData.styles[l]._mdf = redraw || itemData.styles[l]._mdf;\n      }\n    }\n\n    function renderFill(styleData, itemData, isFirstFrame) {\n      var styleElem = itemData.style;\n\n      if (itemData.c._mdf || isFirstFrame) {\n        styleElem.pElem.setAttribute(\"fill\", \"rgb(\" + bmFloor(itemData.c.v[0]) + \",\" + bmFloor(itemData.c.v[1]) + \",\" + bmFloor(itemData.c.v[2]) + \")\");\n      }\n\n      if (itemData.o._mdf || isFirstFrame) {\n        styleElem.pElem.setAttribute(\"fill-opacity\", itemData.o.v);\n      }\n    }\n\n    function renderGradientStroke(styleData, itemData, isFirstFrame) {\n      renderGradient(styleData, itemData, isFirstFrame);\n      renderStroke(styleData, itemData, isFirstFrame);\n    }\n\n    function renderGradient(styleData, itemData, isFirstFrame) {\n      var gfill = itemData.gf;\n      var hasOpacity = itemData.g._hasOpacity;\n      var pt1 = itemData.s.v;\n      var pt2 = itemData.e.v;\n\n      if (itemData.o._mdf || isFirstFrame) {\n        var attr = styleData.ty === \"gf\" ? \"fill-opacity\" : \"stroke-opacity\";\n        itemData.style.pElem.setAttribute(attr, itemData.o.v);\n      }\n\n      if (itemData.s._mdf || isFirstFrame) {\n        var attr1 = styleData.t === 1 ? \"x1\" : \"cx\";\n        var attr2 = attr1 === \"x1\" ? \"y1\" : \"cy\";\n        gfill.setAttribute(attr1, pt1[0]);\n        gfill.setAttribute(attr2, pt1[1]);\n\n        if (hasOpacity && !itemData.g._collapsable) {\n          itemData.of.setAttribute(attr1, pt1[0]);\n          itemData.of.setAttribute(attr2, pt1[1]);\n        }\n      }\n\n      var stops;\n      var i;\n      var len;\n      var stop;\n\n      if (itemData.g._cmdf || isFirstFrame) {\n        stops = itemData.cst;\n        var cValues = itemData.g.c;\n        len = stops.length;\n\n        for (i = 0; i < len; i += 1) {\n          stop = stops[i];\n          stop.setAttribute(\"offset\", cValues[i * 4] + \"%\");\n          stop.setAttribute(\"stop-color\", \"rgb(\" + cValues[i * 4 + 1] + \",\" + cValues[i * 4 + 2] + \",\" + cValues[i * 4 + 3] + \")\");\n        }\n      }\n\n      if (hasOpacity && (itemData.g._omdf || isFirstFrame)) {\n        var oValues = itemData.g.o;\n\n        if (itemData.g._collapsable) {\n          stops = itemData.cst;\n        } else {\n          stops = itemData.ost;\n        }\n\n        len = stops.length;\n\n        for (i = 0; i < len; i += 1) {\n          stop = stops[i];\n\n          if (!itemData.g._collapsable) {\n            stop.setAttribute(\"offset\", oValues[i * 2] + \"%\");\n          }\n\n          stop.setAttribute(\"stop-opacity\", oValues[i * 2 + 1]);\n        }\n      }\n\n      if (styleData.t === 1) {\n        if (itemData.e._mdf || isFirstFrame) {\n          gfill.setAttribute(\"x2\", pt2[0]);\n          gfill.setAttribute(\"y2\", pt2[1]);\n\n          if (hasOpacity && !itemData.g._collapsable) {\n            itemData.of.setAttribute(\"x2\", pt2[0]);\n            itemData.of.setAttribute(\"y2\", pt2[1]);\n          }\n        }\n      } else {\n        var rad;\n\n        if (itemData.s._mdf || itemData.e._mdf || isFirstFrame) {\n          rad = Math.sqrt(Math.pow(pt1[0] - pt2[0], 2) + Math.pow(pt1[1] - pt2[1], 2));\n          gfill.setAttribute(\"r\", rad);\n\n          if (hasOpacity && !itemData.g._collapsable) {\n            itemData.of.setAttribute(\"r\", rad);\n          }\n        }\n\n        if (itemData.e._mdf || itemData.h._mdf || itemData.a._mdf || isFirstFrame) {\n          if (!rad) {\n            rad = Math.sqrt(Math.pow(pt1[0] - pt2[0], 2) + Math.pow(pt1[1] - pt2[1], 2));\n          }\n\n          var ang = Math.atan2(pt2[1] - pt1[1], pt2[0] - pt1[0]);\n          var percent = itemData.h.v;\n\n          if (percent >= 1) {\n            percent = 0.99;\n          } else if (percent <= -1) {\n            percent = -0.99;\n          }\n\n          var dist = rad * percent;\n          var x = Math.cos(ang + itemData.a.v) * dist + pt1[0];\n          var y = Math.sin(ang + itemData.a.v) * dist + pt1[1];\n          gfill.setAttribute(\"fx\", x);\n          gfill.setAttribute(\"fy\", y);\n\n          if (hasOpacity && !itemData.g._collapsable) {\n            itemData.of.setAttribute(\"fx\", x);\n            itemData.of.setAttribute(\"fy\", y);\n          }\n        } // gfill.setAttribute('fy','200');\n\n      }\n    }\n\n    function renderStroke(styleData, itemData, isFirstFrame) {\n      var styleElem = itemData.style;\n      var d = itemData.d;\n\n      if (d && (d._mdf || isFirstFrame) && d.dashStr) {\n        styleElem.pElem.setAttribute(\"stroke-dasharray\", d.dashStr);\n        styleElem.pElem.setAttribute(\"stroke-dashoffset\", d.dashoffset[0]);\n      }\n\n      if (itemData.c && (itemData.c._mdf || isFirstFrame)) {\n        styleElem.pElem.setAttribute(\"stroke\", \"rgb(\" + bmFloor(itemData.c.v[0]) + \",\" + bmFloor(itemData.c.v[1]) + \",\" + bmFloor(itemData.c.v[2]) + \")\");\n      }\n\n      if (itemData.o._mdf || isFirstFrame) {\n        styleElem.pElem.setAttribute(\"stroke-opacity\", itemData.o.v);\n      }\n\n      if (itemData.w._mdf || isFirstFrame) {\n        styleElem.pElem.setAttribute(\"stroke-width\", itemData.w.v);\n\n        if (styleElem.msElem) {\n          styleElem.msElem.setAttribute(\"stroke-width\", itemData.w.v);\n        }\n      }\n    }\n\n    return ob;\n  }();\n  /* global Matrix */\n\n\n  function ShapeTransformManager() {\n    (this || _global).sequences = {};\n    (this || _global).sequenceList = [];\n    (this || _global).transform_key_count = 0;\n  }\n\n  ShapeTransformManager.prototype = {\n    addTransformSequence: function (transforms) {\n      var i;\n      var len = transforms.length;\n      var key = \"_\";\n\n      for (i = 0; i < len; i += 1) {\n        key += transforms[i].transform.key + \"_\";\n      }\n\n      var sequence = (this || _global).sequences[key];\n\n      if (!sequence) {\n        sequence = {\n          transforms: [].concat(transforms),\n          finalTransform: new Matrix(),\n          _mdf: false\n        };\n        (this || _global).sequences[key] = sequence;\n\n        (this || _global).sequenceList.push(sequence);\n      }\n\n      return sequence;\n    },\n    processSequence: function (sequence, isFirstFrame) {\n      var i = 0;\n      var len = sequence.transforms.length;\n      var _mdf = isFirstFrame;\n\n      while (i < len && !isFirstFrame) {\n        if (sequence.transforms[i].transform.mProps._mdf) {\n          _mdf = true;\n          break;\n        }\n\n        i += 1;\n      }\n\n      if (_mdf) {\n        var props;\n        sequence.finalTransform.reset();\n\n        for (i = len - 1; i >= 0; i -= 1) {\n          props = sequence.transforms[i].transform.mProps.v.props;\n          sequence.finalTransform.transform(props[0], props[1], props[2], props[3], props[4], props[5], props[6], props[7], props[8], props[9], props[10], props[11], props[12], props[13], props[14], props[15]);\n        }\n      }\n\n      sequence._mdf = _mdf;\n    },\n    processSequences: function (isFirstFrame) {\n      var i;\n      var len = (this || _global).sequenceList.length;\n\n      for (i = 0; i < len; i += 1) {\n        this.processSequence((this || _global).sequenceList[i], isFirstFrame);\n      }\n    },\n    getNewKey: function () {\n      (this || _global).transform_key_count += 1;\n      return \"_\" + (this || _global).transform_key_count;\n    }\n  };\n  /* global ShapePropertyFactory, SVGShapeData */\n\n  function CVShapeData(element, data, styles, transformsManager) {\n    (this || _global).styledShapes = [];\n    (this || _global).tr = [0, 0, 0, 0, 0, 0];\n    var ty = 4;\n\n    if (data.ty === \"rc\") {\n      ty = 5;\n    } else if (data.ty === \"el\") {\n      ty = 6;\n    } else if (data.ty === \"sr\") {\n      ty = 7;\n    }\n\n    (this || _global).sh = ShapePropertyFactory.getShapeProp(element, data, ty, element);\n    var i;\n    var len = styles.length;\n    var styledShape;\n\n    for (i = 0; i < len; i += 1) {\n      if (!styles[i].closed) {\n        styledShape = {\n          transforms: transformsManager.addTransformSequence(styles[i].transforms),\n          trNodes: []\n        };\n\n        (this || _global).styledShapes.push(styledShape);\n\n        styles[i].elements.push(styledShape);\n      }\n    }\n  }\n\n  CVShapeData.prototype.setAsAnimated = SVGShapeData.prototype.setAsAnimated;\n  /* global LayerExpressionInterface, EffectsExpressionInterface, CompExpressionInterface, ShapeExpressionInterface,\r\n  TextExpressionInterface, getBlendMode,createElementID, EffectsManager */\n\n  function BaseElement() {}\n\n  BaseElement.prototype = {\n    checkMasks: function () {\n      if (!(this || _global).data.hasMask) {\n        return false;\n      }\n\n      var i = 0;\n      var len = (this || _global).data.masksProperties.length;\n\n      while (i < len) {\n        if ((this || _global).data.masksProperties[i].mode !== \"n\" && (this || _global).data.masksProperties[i].cl !== false) {\n          return true;\n        }\n\n        i += 1;\n      }\n\n      return false;\n    },\n    initExpressions: function () {\n      (this || _global).layerInterface = LayerExpressionInterface(this || _global);\n\n      if ((this || _global).data.hasMask && (this || _global).maskManager) {\n        (this || _global).layerInterface.registerMaskInterface((this || _global).maskManager);\n      }\n\n      var effectsInterface = EffectsExpressionInterface.createEffectsInterface(this || _global, (this || _global).layerInterface);\n\n      (this || _global).layerInterface.registerEffectsInterface(effectsInterface);\n\n      if ((this || _global).data.ty === 0 || (this || _global).data.xt) {\n        (this || _global).compInterface = CompExpressionInterface(this || _global);\n      } else if ((this || _global).data.ty === 4) {\n        (this || _global).layerInterface.shapeInterface = ShapeExpressionInterface((this || _global).shapesData, (this || _global).itemsData, (this || _global).layerInterface);\n        (this || _global).layerInterface.content = (this || _global).layerInterface.shapeInterface;\n      } else if ((this || _global).data.ty === 5) {\n        (this || _global).layerInterface.textInterface = TextExpressionInterface(this || _global);\n        (this || _global).layerInterface.text = (this || _global).layerInterface.textInterface;\n      }\n    },\n    setBlendMode: function () {\n      var blendModeValue = getBlendMode((this || _global).data.bm);\n      var elem = (this || _global).baseElement || (this || _global).layerElement;\n      elem.style[\"mix-blend-mode\"] = blendModeValue;\n    },\n    initBaseData: function (data, globalData, comp) {\n      (this || _global).globalData = globalData;\n      (this || _global).comp = comp;\n      (this || _global).data = data;\n      (this || _global).layerId = createElementID(); // Stretch factor for old animations missing this property.\n\n      if (!(this || _global).data.sr) {\n        (this || _global).data.sr = 1;\n      } // effects manager\n\n\n      (this || _global).effectsManager = new EffectsManager((this || _global).data, this || _global, (this || _global).dynamicProperties);\n    },\n    getType: function () {\n      return (this || _global).type;\n    },\n    sourceRectAtTime: function () {}\n  };\n  /* global extendPrototype, BaseElement, TransformElement, HierarchyElement, FrameElement */\n\n  function NullElement(data, globalData, comp) {\n    this.initFrame();\n    this.initBaseData(data, globalData, comp);\n    this.initFrame();\n    this.initTransform(data, globalData, comp);\n    this.initHierarchy();\n  }\n\n  NullElement.prototype.prepareFrame = function (num) {\n    this.prepareProperties(num, true);\n  };\n\n  NullElement.prototype.renderFrame = function () {};\n\n  NullElement.prototype.getBaseElement = function () {\n    return null;\n  };\n\n  NullElement.prototype.destroy = function () {};\n\n  NullElement.prototype.sourceRectAtTime = function () {};\n\n  NullElement.prototype.hide = function () {};\n\n  extendPrototype([BaseElement, TransformElement, HierarchyElement, FrameElement], NullElement);\n  /* global filtersFactory, featureSupport, filtersFactory, createElementID, createNS, MaskElement, SVGEffects, locationHref */\n\n  function SVGBaseElement() {}\n\n  SVGBaseElement.prototype = {\n    initRendererElement: function () {\n      (this || _global).layerElement = createNS(\"g\");\n    },\n    createContainerElements: function () {\n      (this || _global).matteElement = createNS(\"g\");\n      (this || _global).transformedElement = (this || _global).layerElement;\n      (this || _global).maskedElement = (this || _global).layerElement;\n      (this || _global)._sizeChanged = false;\n      var layerElementParent = null; // If this layer acts as a mask for the following layer\n\n      var filId;\n      var fil;\n      var gg;\n\n      if ((this || _global).data.td) {\n        if ((this || _global).data.td == 3 || (this || _global).data.td == 1) {\n          // eslint-disable-line eqeqeq\n          var masker = createNS(\"mask\");\n          masker.setAttribute(\"id\", (this || _global).layerId);\n          masker.setAttribute(\"mask-type\", (this || _global).data.td == 3 ? \"luminance\" : \"alpha\"); // eslint-disable-line eqeqeq\n\n          masker.appendChild((this || _global).layerElement);\n          layerElementParent = masker;\n\n          (this || _global).globalData.defs.appendChild(masker); // This is only for IE and Edge when mask if of type alpha\n\n\n          if (!featureSupport.maskType && (this || _global).data.td == 1) {\n            // eslint-disable-line eqeqeq\n            masker.setAttribute(\"mask-type\", \"luminance\");\n            filId = createElementID();\n            fil = filtersFactory.createFilter(filId);\n\n            (this || _global).globalData.defs.appendChild(fil);\n\n            fil.appendChild(filtersFactory.createAlphaToLuminanceFilter());\n            gg = createNS(\"g\");\n            gg.appendChild((this || _global).layerElement);\n            layerElementParent = gg;\n            masker.appendChild(gg);\n            gg.setAttribute(\"filter\", \"url(\" + locationHref + \"#\" + filId + \")\");\n          }\n        } else if ((this || _global).data.td == 2) {\n          // eslint-disable-line eqeqeq\n          var maskGroup = createNS(\"mask\");\n          maskGroup.setAttribute(\"id\", (this || _global).layerId);\n          maskGroup.setAttribute(\"mask-type\", \"alpha\");\n          var maskGrouper = createNS(\"g\");\n          maskGroup.appendChild(maskGrouper);\n          filId = createElementID();\n          fil = filtersFactory.createFilter(filId); /// /\n          // This solution doesn't work on Android when meta tag with viewport attribute is set\n\n          /* var feColorMatrix = createNS('feColorMatrix');\r\n                  feColorMatrix.setAttribute('type', 'matrix');\r\n                  feColorMatrix.setAttribute('color-interpolation-filters', 'sRGB');\r\n                  feColorMatrix.setAttribute('values','1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 -1 1');\r\n                  fil.appendChild(feColorMatrix); */\n          /// /\n\n          var feCTr = createNS(\"feComponentTransfer\");\n          feCTr.setAttribute(\"in\", \"SourceGraphic\");\n          fil.appendChild(feCTr);\n          var feFunc = createNS(\"feFuncA\");\n          feFunc.setAttribute(\"type\", \"table\");\n          feFunc.setAttribute(\"tableValues\", \"1.0 0.0\");\n          feCTr.appendChild(feFunc); /// /\n\n          (this || _global).globalData.defs.appendChild(fil);\n\n          var alphaRect = createNS(\"rect\");\n          alphaRect.setAttribute(\"width\", (this || _global).comp.data.w);\n          alphaRect.setAttribute(\"height\", (this || _global).comp.data.h);\n          alphaRect.setAttribute(\"x\", \"0\");\n          alphaRect.setAttribute(\"y\", \"0\");\n          alphaRect.setAttribute(\"fill\", \"#ffffff\");\n          alphaRect.setAttribute(\"opacity\", \"0\");\n          maskGrouper.setAttribute(\"filter\", \"url(\" + locationHref + \"#\" + filId + \")\");\n          maskGrouper.appendChild(alphaRect);\n          maskGrouper.appendChild((this || _global).layerElement);\n          layerElementParent = maskGrouper;\n\n          if (!featureSupport.maskType) {\n            maskGroup.setAttribute(\"mask-type\", \"luminance\");\n            fil.appendChild(filtersFactory.createAlphaToLuminanceFilter());\n            gg = createNS(\"g\");\n            maskGrouper.appendChild(alphaRect);\n            gg.appendChild((this || _global).layerElement);\n            layerElementParent = gg;\n            maskGrouper.appendChild(gg);\n          }\n\n          (this || _global).globalData.defs.appendChild(maskGroup);\n        }\n      } else if ((this || _global).data.tt) {\n        (this || _global).matteElement.appendChild((this || _global).layerElement);\n\n        layerElementParent = (this || _global).matteElement;\n        (this || _global).baseElement = (this || _global).matteElement;\n      } else {\n        (this || _global).baseElement = (this || _global).layerElement;\n      }\n\n      if ((this || _global).data.ln) {\n        (this || _global).layerElement.setAttribute(\"id\", (this || _global).data.ln);\n      }\n\n      if ((this || _global).data.cl) {\n        (this || _global).layerElement.setAttribute(\"class\", (this || _global).data.cl);\n      } // Clipping compositions to hide content that exceeds boundaries. If collapsed transformations is on, component should not be clipped\n\n\n      if ((this || _global).data.ty === 0 && !(this || _global).data.hd) {\n        var cp = createNS(\"clipPath\");\n        var pt = createNS(\"path\");\n        pt.setAttribute(\"d\", \"M0,0 L\" + (this || _global).data.w + \",0 L\" + (this || _global).data.w + \",\" + (this || _global).data.h + \" L0,\" + (this || _global).data.h + \"z\");\n        var clipId = createElementID();\n        cp.setAttribute(\"id\", clipId);\n        cp.appendChild(pt);\n\n        (this || _global).globalData.defs.appendChild(cp);\n\n        if (this.checkMasks()) {\n          var cpGroup = createNS(\"g\");\n          cpGroup.setAttribute(\"clip-path\", \"url(\" + locationHref + \"#\" + clipId + \")\");\n          cpGroup.appendChild((this || _global).layerElement);\n          (this || _global).transformedElement = cpGroup;\n\n          if (layerElementParent) {\n            layerElementParent.appendChild((this || _global).transformedElement);\n          } else {\n            (this || _global).baseElement = (this || _global).transformedElement;\n          }\n        } else {\n          (this || _global).layerElement.setAttribute(\"clip-path\", \"url(\" + locationHref + \"#\" + clipId + \")\");\n        }\n      }\n\n      if ((this || _global).data.bm !== 0) {\n        this.setBlendMode();\n      }\n    },\n    renderElement: function () {\n      if ((this || _global).finalTransform._matMdf) {\n        (this || _global).transformedElement.setAttribute(\"transform\", (this || _global).finalTransform.mat.to2dCSS());\n      }\n\n      if ((this || _global).finalTransform._opMdf) {\n        (this || _global).transformedElement.setAttribute(\"opacity\", (this || _global).finalTransform.mProp.o.v);\n      }\n    },\n    destroyBaseElement: function () {\n      (this || _global).layerElement = null;\n      (this || _global).matteElement = null;\n\n      (this || _global).maskManager.destroy();\n    },\n    getBaseElement: function () {\n      if ((this || _global).data.hd) {\n        return null;\n      }\n\n      return (this || _global).baseElement;\n    },\n    createRenderableComponents: function () {\n      (this || _global).maskManager = new MaskElement((this || _global).data, this || _global, (this || _global).globalData);\n      (this || _global).renderableEffectsManager = new SVGEffects(this || _global);\n    },\n    setMatte: function (id) {\n      if (!(this || _global).matteElement) {\n        return;\n      }\n\n      (this || _global).matteElement.setAttribute(\"mask\", \"url(\" + locationHref + \"#\" + id + \")\");\n    }\n  };\n  /* global ProcessedElement */\n\n  function IShapeElement() {}\n\n  IShapeElement.prototype = {\n    addShapeToModifiers: function (data) {\n      var i;\n      var len = (this || _global).shapeModifiers.length;\n\n      for (i = 0; i < len; i += 1) {\n        (this || _global).shapeModifiers[i].addShape(data);\n      }\n    },\n    isShapeInAnimatedModifiers: function (data) {\n      var i = 0;\n      var len = (this || _global).shapeModifiers.length;\n\n      while (i < len) {\n        if ((this || _global).shapeModifiers[i].isAnimatedWithShape(data)) {\n          return true;\n        }\n      }\n\n      return false;\n    },\n    renderModifiers: function () {\n      if (!(this || _global).shapeModifiers.length) {\n        return;\n      }\n\n      var i;\n      var len = (this || _global).shapes.length;\n\n      for (i = 0; i < len; i += 1) {\n        (this || _global).shapes[i].sh.reset();\n      }\n\n      len = (this || _global).shapeModifiers.length;\n      var shouldBreakProcess;\n\n      for (i = len - 1; i >= 0; i -= 1) {\n        shouldBreakProcess = (this || _global).shapeModifiers[i].processShapes((this || _global)._isFirstFrame); // workaround to fix cases where a repeater resets the shape so the following processes get called twice\n        // TODO: find a better solution for this\n\n        if (shouldBreakProcess) {\n          break;\n        }\n      }\n    },\n    lcEnum: {\n      1: \"butt\",\n      2: \"round\",\n      3: \"square\"\n    },\n    ljEnum: {\n      1: \"miter\",\n      2: \"round\",\n      3: \"bevel\"\n    },\n    searchProcessedElement: function (elem) {\n      var elements = (this || _global).processedElements;\n      var i = 0;\n      var len = elements.length;\n\n      while (i < len) {\n        if (elements[i].elem === elem) {\n          return elements[i].pos;\n        }\n\n        i += 1;\n      }\n\n      return 0;\n    },\n    addProcessedElement: function (elem, pos) {\n      var elements = (this || _global).processedElements;\n      var i = elements.length;\n\n      while (i) {\n        i -= 1;\n\n        if (elements[i].elem === elem) {\n          elements[i].pos = pos;\n          return;\n        }\n      }\n\n      elements.push(new ProcessedElement(elem, pos));\n    },\n    prepareFrame: function (num) {\n      this.prepareRenderableFrame(num);\n      this.prepareProperties(num, (this || _global).isInRange);\n    }\n  };\n  /* global TextProperty, TextAnimatorProperty, buildShapeString, LetterProps */\n\n  function ITextElement() {}\n\n  ITextElement.prototype.initElement = function (data, globalData, comp) {\n    (this || _global).lettersChangedFlag = true;\n    this.initFrame();\n    this.initBaseData(data, globalData, comp);\n    (this || _global).textProperty = new TextProperty(this || _global, data.t, (this || _global).dynamicProperties);\n    (this || _global).textAnimator = new TextAnimatorProperty(data.t, (this || _global).renderType, this || _global);\n    this.initTransform(data, globalData, comp);\n    this.initHierarchy();\n    this.initRenderable();\n    this.initRendererElement();\n    this.createContainerElements();\n    this.createRenderableComponents();\n    this.createContent();\n    this.hide();\n\n    (this || _global).textAnimator.searchProperties((this || _global).dynamicProperties);\n  };\n\n  ITextElement.prototype.prepareFrame = function (num) {\n    (this || _global)._mdf = false;\n    this.prepareRenderableFrame(num);\n    this.prepareProperties(num, (this || _global).isInRange);\n\n    if ((this || _global).textProperty._mdf || (this || _global).textProperty._isFirstFrame) {\n      this.buildNewText();\n      (this || _global).textProperty._isFirstFrame = false;\n      (this || _global).textProperty._mdf = false;\n    }\n  };\n\n  ITextElement.prototype.createPathShape = function (matrixHelper, shapes) {\n    var j;\n    var jLen = shapes.length;\n    var pathNodes;\n    var shapeStr = \"\";\n\n    for (j = 0; j < jLen; j += 1) {\n      pathNodes = shapes[j].ks.k;\n      shapeStr += buildShapeString(pathNodes, pathNodes.i.length, true, matrixHelper);\n    }\n\n    return shapeStr;\n  };\n\n  ITextElement.prototype.updateDocumentData = function (newData, index) {\n    (this || _global).textProperty.updateDocumentData(newData, index);\n  };\n\n  ITextElement.prototype.canResizeFont = function (_canResize) {\n    (this || _global).textProperty.canResizeFont(_canResize);\n  };\n\n  ITextElement.prototype.setMinimumFontSize = function (_fontSize) {\n    (this || _global).textProperty.setMinimumFontSize(_fontSize);\n  };\n\n  ITextElement.prototype.applyTextPropertiesToMatrix = function (documentData, matrixHelper, lineNumber, xPos, yPos) {\n    if (documentData.ps) {\n      matrixHelper.translate(documentData.ps[0], documentData.ps[1] + documentData.ascent, 0);\n    }\n\n    matrixHelper.translate(0, -documentData.ls, 0);\n\n    switch (documentData.j) {\n      case 1:\n        matrixHelper.translate(documentData.justifyOffset + (documentData.boxWidth - documentData.lineWidths[lineNumber]), 0, 0);\n        break;\n\n      case 2:\n        matrixHelper.translate(documentData.justifyOffset + (documentData.boxWidth - documentData.lineWidths[lineNumber]) / 2, 0, 0);\n        break;\n\n      default:\n        break;\n    }\n\n    matrixHelper.translate(xPos, yPos, 0);\n  };\n\n  ITextElement.prototype.buildColor = function (colorData) {\n    return \"rgb(\" + Math.round(colorData[0] * 255) + \",\" + Math.round(colorData[1] * 255) + \",\" + Math.round(colorData[2] * 255) + \")\";\n  };\n\n  ITextElement.prototype.emptyProp = new LetterProps();\n\n  ITextElement.prototype.destroy = function () {};\n  /* global extendPrototype, BaseElement, TransformElement, HierarchyElement, FrameElement, RenderableDOMElement */\n\n\n  function ICompElement() {}\n\n  extendPrototype([BaseElement, TransformElement, HierarchyElement, FrameElement, RenderableDOMElement], ICompElement);\n\n  ICompElement.prototype.initElement = function (data, globalData, comp) {\n    this.initFrame();\n    this.initBaseData(data, globalData, comp);\n    this.initTransform(data, globalData, comp);\n    this.initRenderable();\n    this.initHierarchy();\n    this.initRendererElement();\n    this.createContainerElements();\n    this.createRenderableComponents();\n\n    if ((this || _global).data.xt || !globalData.progressiveLoad) {\n      this.buildAllItems();\n    }\n\n    this.hide();\n  };\n  /* ICompElement.prototype.hide = function(){\r\n      if(!this.hidden){\r\n          this.hideElement();\r\n          var i,len = this.elements.length;\r\n          for( i = 0; i < len; i+=1 ){\r\n              if(this.elements[i]){\r\n                  this.elements[i].hide();\r\n              }\r\n          }\r\n      }\r\n  }; */\n\n\n  ICompElement.prototype.prepareFrame = function (num) {\n    (this || _global)._mdf = false;\n    this.prepareRenderableFrame(num);\n    this.prepareProperties(num, (this || _global).isInRange);\n\n    if (!(this || _global).isInRange && !(this || _global).data.xt) {\n      return;\n    }\n\n    if (!(this || _global).tm._placeholder) {\n      var timeRemapped = (this || _global).tm.v;\n\n      if (timeRemapped === (this || _global).data.op) {\n        timeRemapped = (this || _global).data.op - 1;\n      }\n\n      (this || _global).renderedFrame = timeRemapped;\n    } else {\n      (this || _global).renderedFrame = num / (this || _global).data.sr;\n    }\n\n    var i;\n    var len = (this || _global).elements.length;\n\n    if (!(this || _global).completeLayers) {\n      this.checkLayers((this || _global).renderedFrame);\n    } // This iteration needs to be backwards because of how expressions connect between each other\n\n\n    for (i = len - 1; i >= 0; i -= 1) {\n      if ((this || _global).completeLayers || (this || _global).elements[i]) {\n        (this || _global).elements[i].prepareFrame((this || _global).renderedFrame - (this || _global).layers[i].st);\n\n        if ((this || _global).elements[i]._mdf) {\n          (this || _global)._mdf = true;\n        }\n      }\n    }\n  };\n\n  ICompElement.prototype.renderInnerContent = function () {\n    var i;\n    var len = (this || _global).layers.length;\n\n    for (i = 0; i < len; i += 1) {\n      if ((this || _global).completeLayers || (this || _global).elements[i]) {\n        (this || _global).elements[i].renderFrame();\n      }\n    }\n  };\n\n  ICompElement.prototype.setElements = function (elems) {\n    (this || _global).elements = elems;\n  };\n\n  ICompElement.prototype.getElements = function () {\n    return (this || _global).elements;\n  };\n\n  ICompElement.prototype.destroyElements = function () {\n    var i;\n    var len = (this || _global).layers.length;\n\n    for (i = 0; i < len; i += 1) {\n      if ((this || _global).elements[i]) {\n        (this || _global).elements[i].destroy();\n      }\n    }\n  };\n\n  ICompElement.prototype.destroy = function () {\n    this.destroyElements();\n    this.destroyBaseElement();\n  };\n  /* global extendPrototype, BaseElement, TransformElement, SVGBaseElement, HierarchyElement, FrameElement, RenderableDOMElement, createNS */\n\n\n  function IImageElement(data, globalData, comp) {\n    (this || _global).assetData = globalData.getAssetData(data.refId);\n    this.initElement(data, globalData, comp);\n    (this || _global).sourceRect = {\n      top: 0,\n      left: 0,\n      width: (this || _global).assetData.w,\n      height: (this || _global).assetData.h\n    };\n  }\n\n  extendPrototype([BaseElement, TransformElement, SVGBaseElement, HierarchyElement, FrameElement, RenderableDOMElement], IImageElement);\n\n  IImageElement.prototype.createContent = function () {\n    var assetPath = (this || _global).globalData.getAssetsPath((this || _global).assetData);\n\n    (this || _global).innerElem = createNS(\"image\");\n\n    (this || _global).innerElem.setAttribute(\"width\", (this || _global).assetData.w + \"px\");\n\n    (this || _global).innerElem.setAttribute(\"height\", (this || _global).assetData.h + \"px\");\n\n    (this || _global).innerElem.setAttribute(\"preserveAspectRatio\", (this || _global).assetData.pr || (this || _global).globalData.renderConfig.imagePreserveAspectRatio);\n\n    (this || _global).innerElem.setAttributeNS(\"http://www.w3.org/1999/xlink\", \"href\", assetPath);\n\n    (this || _global).layerElement.appendChild((this || _global).innerElem);\n  };\n\n  IImageElement.prototype.sourceRectAtTime = function () {\n    return (this || _global).sourceRect;\n  };\n  /* global extendPrototype, IImageElement, createNS */\n\n\n  function ISolidElement(data, globalData, comp) {\n    this.initElement(data, globalData, comp);\n  }\n\n  extendPrototype([IImageElement], ISolidElement);\n\n  ISolidElement.prototype.createContent = function () {\n    var rect = createNS(\"rect\"); /// /rect.style.width = this.data.sw;\n    /// /rect.style.height = this.data.sh;\n    /// /rect.style.fill = this.data.sc;\n\n    rect.setAttribute(\"width\", (this || _global).data.sw);\n    rect.setAttribute(\"height\", (this || _global).data.sh);\n    rect.setAttribute(\"fill\", (this || _global).data.sc);\n\n    (this || _global).layerElement.appendChild(rect);\n  };\n  /* global PropertyFactory, extendPrototype, RenderableElement, BaseElement, FrameElement */\n\n\n  function AudioElement(data, globalData, comp) {\n    this.initFrame();\n    this.initRenderable();\n    (this || _global).assetData = globalData.getAssetData(data.refId);\n    this.initBaseData(data, globalData, comp);\n    (this || _global)._isPlaying = false;\n    (this || _global)._canPlay = false;\n\n    var assetPath = (this || _global).globalData.getAssetsPath((this || _global).assetData);\n\n    (this || _global).audio = (this || _global).globalData.audioController.createAudio(assetPath);\n    (this || _global)._currentTime = 0;\n\n    (this || _global).globalData.audioController.addAudio(this || _global);\n\n    (this || _global).tm = data.tm ? PropertyFactory.getProp(this || _global, data.tm, 0, globalData.frameRate, this || _global) : {\n      _placeholder: true\n    };\n  }\n\n  AudioElement.prototype.prepareFrame = function (num) {\n    this.prepareRenderableFrame(num, true);\n    this.prepareProperties(num, true);\n\n    if (!(this || _global).tm._placeholder) {\n      var timeRemapped = (this || _global).tm.v;\n      (this || _global)._currentTime = timeRemapped;\n    } else {\n      (this || _global)._currentTime = num / (this || _global).data.sr;\n    }\n  };\n\n  extendPrototype([RenderableElement, BaseElement, FrameElement], AudioElement);\n\n  AudioElement.prototype.renderFrame = function () {\n    if ((this || _global).isInRange && (this || _global)._canPlay) {\n      if (!(this || _global)._isPlaying) {\n        (this || _global).audio.play();\n\n        (this || _global).audio.seek((this || _global)._currentTime / (this || _global).globalData.frameRate);\n\n        (this || _global)._isPlaying = true;\n      } else if (!(this || _global).audio.playing() || Math.abs((this || _global)._currentTime / (this || _global).globalData.frameRate - (this || _global).audio.seek()) > 0.1) {\n        (this || _global).audio.seek((this || _global)._currentTime / (this || _global).globalData.frameRate);\n      }\n    }\n  };\n\n  AudioElement.prototype.show = function () {// this.audio.play()\n  };\n\n  AudioElement.prototype.hide = function () {\n    (this || _global).audio.pause();\n\n    (this || _global)._isPlaying = false;\n  };\n\n  AudioElement.prototype.pause = function () {\n    (this || _global).audio.pause();\n\n    (this || _global)._isPlaying = false;\n    (this || _global)._canPlay = false;\n  };\n\n  AudioElement.prototype.resume = function () {\n    (this || _global)._canPlay = true;\n  };\n\n  AudioElement.prototype.setRate = function (rateValue) {\n    (this || _global).audio.rate(rateValue);\n  };\n\n  AudioElement.prototype.volume = function (volumeValue) {\n    (this || _global).audio.volume(volumeValue);\n  };\n\n  AudioElement.prototype.getBaseElement = function () {\n    return null;\n  };\n\n  AudioElement.prototype.destroy = function () {};\n\n  AudioElement.prototype.sourceRectAtTime = function () {};\n\n  AudioElement.prototype.initExpressions = function () {};\n  /* global extendPrototype, RenderableElement, BaseElement, FrameElement, FootageInterface */\n\n\n  function FootageElement(data, globalData, comp) {\n    this.initFrame();\n    this.initRenderable();\n    (this || _global).assetData = globalData.getAssetData(data.refId);\n    (this || _global).footageData = globalData.imageLoader.getAsset((this || _global).assetData);\n    this.initBaseData(data, globalData, comp);\n  }\n\n  FootageElement.prototype.prepareFrame = function () {};\n\n  extendPrototype([RenderableElement, BaseElement, FrameElement], FootageElement);\n\n  FootageElement.prototype.getBaseElement = function () {\n    return null;\n  };\n\n  FootageElement.prototype.renderFrame = function () {};\n\n  FootageElement.prototype.destroy = function () {};\n\n  FootageElement.prototype.initExpressions = function () {\n    (this || _global).layerInterface = FootageInterface(this || _global);\n  };\n\n  FootageElement.prototype.getFootageData = function () {\n    return (this || _global).footageData;\n  };\n  /* global createSizedArray, PropertyFactory, extendPrototype, SVGRenderer, ICompElement, SVGBaseElement */\n\n\n  function SVGCompElement(data, globalData, comp) {\n    (this || _global).layers = data.layers;\n    (this || _global).supports3d = true;\n    (this || _global).completeLayers = false;\n    (this || _global).pendingElements = [];\n    (this || _global).elements = (this || _global).layers ? createSizedArray((this || _global).layers.length) : []; // this.layerElement = createNS('g');\n\n    this.initElement(data, globalData, comp);\n    (this || _global).tm = data.tm ? PropertyFactory.getProp(this || _global, data.tm, 0, globalData.frameRate, this || _global) : {\n      _placeholder: true\n    };\n  }\n\n  extendPrototype([SVGRenderer, ICompElement, SVGBaseElement], SVGCompElement);\n  /* global extendPrototype, BaseElement, TransformElement, SVGBaseElement, HierarchyElement, FrameElement,\r\n  RenderableDOMElement, ITextElement, createSizedArray, createNS */\n\n  function SVGTextLottieElement(data, globalData, comp) {\n    (this || _global).textSpans = [];\n    (this || _global).renderType = \"svg\";\n    this.initElement(data, globalData, comp);\n  }\n\n  extendPrototype([BaseElement, TransformElement, SVGBaseElement, HierarchyElement, FrameElement, RenderableDOMElement, ITextElement], SVGTextLottieElement);\n\n  SVGTextLottieElement.prototype.createContent = function () {\n    if ((this || _global).data.singleShape && !(this || _global).globalData.fontManager.chars) {\n      (this || _global).textContainer = createNS(\"text\");\n    }\n  };\n\n  SVGTextLottieElement.prototype.buildTextContents = function (textArray) {\n    var i = 0;\n    var len = textArray.length;\n    var textContents = [];\n    var currentTextContent = \"\";\n\n    while (i < len) {\n      if (textArray[i] === String.fromCharCode(13) || textArray[i] === String.fromCharCode(3)) {\n        textContents.push(currentTextContent);\n        currentTextContent = \"\";\n      } else {\n        currentTextContent += textArray[i];\n      }\n\n      i += 1;\n    }\n\n    textContents.push(currentTextContent);\n    return textContents;\n  };\n\n  SVGTextLottieElement.prototype.buildNewText = function () {\n    var i;\n    var len;\n    var documentData = (this || _global).textProperty.currentData;\n    (this || _global).renderedLetters = createSizedArray(documentData ? documentData.l.length : 0);\n\n    if (documentData.fc) {\n      (this || _global).layerElement.setAttribute(\"fill\", this.buildColor(documentData.fc));\n    } else {\n      (this || _global).layerElement.setAttribute(\"fill\", \"rgba(0,0,0,0)\");\n    }\n\n    if (documentData.sc) {\n      (this || _global).layerElement.setAttribute(\"stroke\", this.buildColor(documentData.sc));\n\n      (this || _global).layerElement.setAttribute(\"stroke-width\", documentData.sw);\n    }\n\n    (this || _global).layerElement.setAttribute(\"font-size\", documentData.finalSize);\n\n    var fontData = (this || _global).globalData.fontManager.getFontByName(documentData.f);\n\n    if (fontData.fClass) {\n      (this || _global).layerElement.setAttribute(\"class\", fontData.fClass);\n    } else {\n      (this || _global).layerElement.setAttribute(\"font-family\", fontData.fFamily);\n\n      var fWeight = documentData.fWeight;\n      var fStyle = documentData.fStyle;\n\n      (this || _global).layerElement.setAttribute(\"font-style\", fStyle);\n\n      (this || _global).layerElement.setAttribute(\"font-weight\", fWeight);\n    }\n\n    (this || _global).layerElement.setAttribute(\"aria-label\", documentData.t);\n\n    var letters = documentData.l || [];\n    var usesGlyphs = !!(this || _global).globalData.fontManager.chars;\n    len = letters.length;\n    var tSpan;\n    var matrixHelper = (this || _global).mHelper;\n    var shapes;\n    var shapeStr = \"\";\n    var singleShape = (this || _global).data.singleShape;\n    var xPos = 0;\n    var yPos = 0;\n    var firstLine = true;\n    var trackingOffset = documentData.tr * 0.001 * documentData.finalSize;\n\n    if (singleShape && !usesGlyphs && !documentData.sz) {\n      var tElement = (this || _global).textContainer;\n      var justify = \"start\";\n\n      switch (documentData.j) {\n        case 1:\n          justify = \"end\";\n          break;\n\n        case 2:\n          justify = \"middle\";\n          break;\n\n        default:\n          justify = \"start\";\n          break;\n      }\n\n      tElement.setAttribute(\"text-anchor\", justify);\n      tElement.setAttribute(\"letter-spacing\", trackingOffset);\n      var textContent = this.buildTextContents(documentData.finalText);\n      len = textContent.length;\n      yPos = documentData.ps ? documentData.ps[1] + documentData.ascent : 0;\n\n      for (i = 0; i < len; i += 1) {\n        tSpan = (this || _global).textSpans[i] || createNS(\"tspan\");\n        tSpan.textContent = textContent[i];\n        tSpan.setAttribute(\"x\", 0);\n        tSpan.setAttribute(\"y\", yPos);\n        tSpan.style.display = \"inherit\";\n        tElement.appendChild(tSpan);\n        (this || _global).textSpans[i] = tSpan;\n        yPos += documentData.finalLineHeight;\n      }\n\n      (this || _global).layerElement.appendChild(tElement);\n    } else {\n      var cachedSpansLength = (this || _global).textSpans.length;\n      var shapeData;\n      var charData;\n\n      for (i = 0; i < len; i += 1) {\n        if (!usesGlyphs || !singleShape || i === 0) {\n          tSpan = cachedSpansLength > i ? (this || _global).textSpans[i] : createNS(usesGlyphs ? \"path\" : \"text\");\n\n          if (cachedSpansLength <= i) {\n            tSpan.setAttribute(\"stroke-linecap\", \"butt\");\n            tSpan.setAttribute(\"stroke-linejoin\", \"round\");\n            tSpan.setAttribute(\"stroke-miterlimit\", \"4\");\n            (this || _global).textSpans[i] = tSpan;\n\n            (this || _global).layerElement.appendChild(tSpan);\n          }\n\n          tSpan.style.display = \"inherit\";\n        }\n\n        matrixHelper.reset();\n        matrixHelper.scale(documentData.finalSize / 100, documentData.finalSize / 100);\n\n        if (singleShape) {\n          if (letters[i].n) {\n            xPos = -trackingOffset;\n            yPos += documentData.yOffset;\n            yPos += firstLine ? 1 : 0;\n            firstLine = false;\n          }\n\n          this.applyTextPropertiesToMatrix(documentData, matrixHelper, letters[i].line, xPos, yPos);\n          xPos += letters[i].l || 0; // xPos += letters[i].val === ' ' ? 0 : trackingOffset;\n\n          xPos += trackingOffset;\n        }\n\n        if (usesGlyphs) {\n          charData = (this || _global).globalData.fontManager.getCharData(documentData.finalText[i], fontData.fStyle, (this || _global).globalData.fontManager.getFontByName(documentData.f).fFamily);\n          shapeData = charData && charData.data || {};\n          shapes = shapeData.shapes ? shapeData.shapes[0].it : [];\n\n          if (!singleShape) {\n            tSpan.setAttribute(\"d\", this.createPathShape(matrixHelper, shapes));\n          } else {\n            shapeStr += this.createPathShape(matrixHelper, shapes);\n          }\n        } else {\n          if (singleShape) {\n            tSpan.setAttribute(\"transform\", \"translate(\" + matrixHelper.props[12] + \",\" + matrixHelper.props[13] + \")\");\n          }\n\n          tSpan.textContent = letters[i].val;\n          tSpan.setAttributeNS(\"http://www.w3.org/XML/1998/namespace\", \"xml:space\", \"preserve\");\n        } //\n\n      }\n\n      if (singleShape && tSpan) {\n        tSpan.setAttribute(\"d\", shapeStr);\n      }\n    }\n\n    while (i < (this || _global).textSpans.length) {\n      (this || _global).textSpans[i].style.display = \"none\";\n      i += 1;\n    }\n\n    (this || _global)._sizeChanged = true;\n  };\n\n  SVGTextLottieElement.prototype.sourceRectAtTime = function () {\n    this.prepareFrame((this || _global).comp.renderedFrame - (this || _global).data.st);\n    this.renderInnerContent();\n\n    if ((this || _global)._sizeChanged) {\n      (this || _global)._sizeChanged = false;\n\n      var textBox = (this || _global).layerElement.getBBox();\n\n      (this || _global).bbox = {\n        top: textBox.y,\n        left: textBox.x,\n        width: textBox.width,\n        height: textBox.height\n      };\n    }\n\n    return (this || _global).bbox;\n  };\n\n  SVGTextLottieElement.prototype.renderInnerContent = function () {\n    if (!(this || _global).data.singleShape) {\n      (this || _global).textAnimator.getMeasures((this || _global).textProperty.currentData, (this || _global).lettersChangedFlag);\n\n      if ((this || _global).lettersChangedFlag || (this || _global).textAnimator.lettersChangedFlag) {\n        (this || _global)._sizeChanged = true;\n        var i;\n        var len;\n        var renderedLetters = (this || _global).textAnimator.renderedLetters;\n        var letters = (this || _global).textProperty.currentData.l;\n        len = letters.length;\n        var renderedLetter;\n        var textSpan;\n\n        for (i = 0; i < len; i += 1) {\n          if (!letters[i].n) {\n            renderedLetter = renderedLetters[i];\n            textSpan = (this || _global).textSpans[i];\n\n            if (renderedLetter._mdf.m) {\n              textSpan.setAttribute(\"transform\", renderedLetter.m);\n            }\n\n            if (renderedLetter._mdf.o) {\n              textSpan.setAttribute(\"opacity\", renderedLetter.o);\n            }\n\n            if (renderedLetter._mdf.sw) {\n              textSpan.setAttribute(\"stroke-width\", renderedLetter.sw);\n            }\n\n            if (renderedLetter._mdf.sc) {\n              textSpan.setAttribute(\"stroke\", renderedLetter.sc);\n            }\n\n            if (renderedLetter._mdf.fc) {\n              textSpan.setAttribute(\"fill\", renderedLetter.fc);\n            }\n          }\n        }\n      }\n    }\n  };\n  /* global extendPrototype, BaseElement, TransformElement, SVGBaseElement, IShapeElement, HierarchyElement,\r\n  FrameElement, RenderableDOMElement, Matrix, SVGStyleData, SVGStrokeStyleData, SVGFillStyleData,\r\n  SVGGradientFillStyleData, SVGGradientStrokeStyleData, locationHref, getBlendMode, ShapeGroupData,\r\n  TransformPropertyFactory, SVGTransformData, ShapePropertyFactory, SVGShapeData, SVGElementsRenderer, ShapeModifiers */\n\n\n  function SVGShapeElement(data, globalData, comp) {\n    // List of drawable elements\n    (this || _global).shapes = []; // Full shape data\n\n    (this || _global).shapesData = data.shapes; // List of styles that will be applied to shapes\n\n    (this || _global).stylesList = []; // List of modifiers that will be applied to shapes\n\n    (this || _global).shapeModifiers = []; // List of items in shape tree\n\n    (this || _global).itemsData = []; // List of items in previous shape tree\n\n    (this || _global).processedElements = []; // List of animated components\n\n    (this || _global).animatedContents = [];\n    this.initElement(data, globalData, comp); // Moving any property that doesn't get too much access after initialization because of v8 way of handling more than 10 properties.\n    // List of elements that have been created\n\n    (this || _global).prevViewData = []; // Moving any property that doesn't get too much access after initialization because of v8 way of handling more than 10 properties.\n  }\n\n  extendPrototype([BaseElement, TransformElement, SVGBaseElement, IShapeElement, HierarchyElement, FrameElement, RenderableDOMElement], SVGShapeElement);\n\n  SVGShapeElement.prototype.initSecondaryElement = function () {};\n\n  SVGShapeElement.prototype.identityMatrix = new Matrix();\n\n  SVGShapeElement.prototype.buildExpressionInterface = function () {};\n\n  SVGShapeElement.prototype.createContent = function () {\n    this.searchShapes((this || _global).shapesData, (this || _global).itemsData, (this || _global).prevViewData, (this || _global).layerElement, 0, [], true);\n    this.filterUniqueShapes();\n  };\n  /*\r\n  This method searches for multiple shapes that affect a single element and one of them is animated\r\n  */\n\n\n  SVGShapeElement.prototype.filterUniqueShapes = function () {\n    var i;\n    var len = (this || _global).shapes.length;\n    var shape;\n    var j;\n    var jLen = (this || _global).stylesList.length;\n    var style;\n    var tempShapes = [];\n    var areAnimated = false;\n\n    for (j = 0; j < jLen; j += 1) {\n      style = (this || _global).stylesList[j];\n      areAnimated = false;\n      tempShapes.length = 0;\n\n      for (i = 0; i < len; i += 1) {\n        shape = (this || _global).shapes[i];\n\n        if (shape.styles.indexOf(style) !== -1) {\n          tempShapes.push(shape);\n          areAnimated = shape._isAnimated || areAnimated;\n        }\n      }\n\n      if (tempShapes.length > 1 && areAnimated) {\n        this.setShapesAsAnimated(tempShapes);\n      }\n    }\n  };\n\n  SVGShapeElement.prototype.setShapesAsAnimated = function (shapes) {\n    var i;\n    var len = shapes.length;\n\n    for (i = 0; i < len; i += 1) {\n      shapes[i].setAsAnimated();\n    }\n  };\n\n  SVGShapeElement.prototype.createStyleElement = function (data, level) {\n    // TODO: prevent drawing of hidden styles\n    var elementData;\n    var styleOb = new SVGStyleData(data, level);\n    var pathElement = styleOb.pElem;\n\n    if (data.ty === \"st\") {\n      elementData = new SVGStrokeStyleData(this || _global, data, styleOb);\n    } else if (data.ty === \"fl\") {\n      elementData = new SVGFillStyleData(this || _global, data, styleOb);\n    } else if (data.ty === \"gf\" || data.ty === \"gs\") {\n      var GradientConstructor = data.ty === \"gf\" ? SVGGradientFillStyleData : SVGGradientStrokeStyleData;\n      elementData = new GradientConstructor(this || _global, data, styleOb);\n\n      (this || _global).globalData.defs.appendChild(elementData.gf);\n\n      if (elementData.maskId) {\n        (this || _global).globalData.defs.appendChild(elementData.ms);\n\n        (this || _global).globalData.defs.appendChild(elementData.of);\n\n        pathElement.setAttribute(\"mask\", \"url(\" + locationHref + \"#\" + elementData.maskId + \")\");\n      }\n    }\n\n    if (data.ty === \"st\" || data.ty === \"gs\") {\n      pathElement.setAttribute(\"stroke-linecap\", (this || _global).lcEnum[data.lc] || \"round\");\n      pathElement.setAttribute(\"stroke-linejoin\", (this || _global).ljEnum[data.lj] || \"round\");\n      pathElement.setAttribute(\"fill-opacity\", \"0\");\n\n      if (data.lj === 1) {\n        pathElement.setAttribute(\"stroke-miterlimit\", data.ml);\n      }\n    }\n\n    if (data.r === 2) {\n      pathElement.setAttribute(\"fill-rule\", \"evenodd\");\n    }\n\n    if (data.ln) {\n      pathElement.setAttribute(\"id\", data.ln);\n    }\n\n    if (data.cl) {\n      pathElement.setAttribute(\"class\", data.cl);\n    }\n\n    if (data.bm) {\n      pathElement.style[\"mix-blend-mode\"] = getBlendMode(data.bm);\n    }\n\n    (this || _global).stylesList.push(styleOb);\n\n    this.addToAnimatedContents(data, elementData);\n    return elementData;\n  };\n\n  SVGShapeElement.prototype.createGroupElement = function (data) {\n    var elementData = new ShapeGroupData();\n\n    if (data.ln) {\n      elementData.gr.setAttribute(\"id\", data.ln);\n    }\n\n    if (data.cl) {\n      elementData.gr.setAttribute(\"class\", data.cl);\n    }\n\n    if (data.bm) {\n      elementData.gr.style[\"mix-blend-mode\"] = getBlendMode(data.bm);\n    }\n\n    return elementData;\n  };\n\n  SVGShapeElement.prototype.createTransformElement = function (data, container) {\n    var transformProperty = TransformPropertyFactory.getTransformProperty(this || _global, data, this || _global);\n    var elementData = new SVGTransformData(transformProperty, transformProperty.o, container);\n    this.addToAnimatedContents(data, elementData);\n    return elementData;\n  };\n\n  SVGShapeElement.prototype.createShapeElement = function (data, ownTransformers, level) {\n    var ty = 4;\n\n    if (data.ty === \"rc\") {\n      ty = 5;\n    } else if (data.ty === \"el\") {\n      ty = 6;\n    } else if (data.ty === \"sr\") {\n      ty = 7;\n    }\n\n    var shapeProperty = ShapePropertyFactory.getShapeProp(this || _global, data, ty, this || _global);\n    var elementData = new SVGShapeData(ownTransformers, level, shapeProperty);\n\n    (this || _global).shapes.push(elementData);\n\n    this.addShapeToModifiers(elementData);\n    this.addToAnimatedContents(data, elementData);\n    return elementData;\n  };\n\n  SVGShapeElement.prototype.addToAnimatedContents = function (data, element) {\n    var i = 0;\n    var len = (this || _global).animatedContents.length;\n\n    while (i < len) {\n      if ((this || _global).animatedContents[i].element === element) {\n        return;\n      }\n\n      i += 1;\n    }\n\n    (this || _global).animatedContents.push({\n      fn: SVGElementsRenderer.createRenderFunction(data),\n      element: element,\n      data: data\n    });\n  };\n\n  SVGShapeElement.prototype.setElementStyles = function (elementData) {\n    var arr = elementData.styles;\n    var j;\n    var jLen = (this || _global).stylesList.length;\n\n    for (j = 0; j < jLen; j += 1) {\n      if (!(this || _global).stylesList[j].closed) {\n        arr.push((this || _global).stylesList[j]);\n      }\n    }\n  };\n\n  SVGShapeElement.prototype.reloadShapes = function () {\n    (this || _global)._isFirstFrame = true;\n    var i;\n    var len = (this || _global).itemsData.length;\n\n    for (i = 0; i < len; i += 1) {\n      (this || _global).prevViewData[i] = (this || _global).itemsData[i];\n    }\n\n    this.searchShapes((this || _global).shapesData, (this || _global).itemsData, (this || _global).prevViewData, (this || _global).layerElement, 0, [], true);\n    this.filterUniqueShapes();\n    len = (this || _global).dynamicProperties.length;\n\n    for (i = 0; i < len; i += 1) {\n      (this || _global).dynamicProperties[i].getValue();\n    }\n\n    this.renderModifiers();\n  };\n\n  SVGShapeElement.prototype.searchShapes = function (arr, itemsData, prevViewData, container, level, transformers, render) {\n    var ownTransformers = [].concat(transformers);\n    var i;\n    var len = arr.length - 1;\n    var j;\n    var jLen;\n    var ownStyles = [];\n    var ownModifiers = [];\n    var currentTransform;\n    var modifier;\n    var processedPos;\n\n    for (i = len; i >= 0; i -= 1) {\n      processedPos = this.searchProcessedElement(arr[i]);\n\n      if (!processedPos) {\n        arr[i]._render = render;\n      } else {\n        itemsData[i] = prevViewData[processedPos - 1];\n      }\n\n      if (arr[i].ty === \"fl\" || arr[i].ty === \"st\" || arr[i].ty === \"gf\" || arr[i].ty === \"gs\") {\n        if (!processedPos) {\n          itemsData[i] = this.createStyleElement(arr[i], level);\n        } else {\n          itemsData[i].style.closed = false;\n        }\n\n        if (arr[i]._render) {\n          container.appendChild(itemsData[i].style.pElem);\n        }\n\n        ownStyles.push(itemsData[i].style);\n      } else if (arr[i].ty === \"gr\") {\n        if (!processedPos) {\n          itemsData[i] = this.createGroupElement(arr[i]);\n        } else {\n          jLen = itemsData[i].it.length;\n\n          for (j = 0; j < jLen; j += 1) {\n            itemsData[i].prevViewData[j] = itemsData[i].it[j];\n          }\n        }\n\n        this.searchShapes(arr[i].it, itemsData[i].it, itemsData[i].prevViewData, itemsData[i].gr, level + 1, ownTransformers, render);\n\n        if (arr[i]._render) {\n          container.appendChild(itemsData[i].gr);\n        }\n      } else if (arr[i].ty === \"tr\") {\n        if (!processedPos) {\n          itemsData[i] = this.createTransformElement(arr[i], container);\n        }\n\n        currentTransform = itemsData[i].transform;\n        ownTransformers.push(currentTransform);\n      } else if (arr[i].ty === \"sh\" || arr[i].ty === \"rc\" || arr[i].ty === \"el\" || arr[i].ty === \"sr\") {\n        if (!processedPos) {\n          itemsData[i] = this.createShapeElement(arr[i], ownTransformers, level);\n        }\n\n        this.setElementStyles(itemsData[i]);\n      } else if (arr[i].ty === \"tm\" || arr[i].ty === \"rd\" || arr[i].ty === \"ms\" || arr[i].ty === \"pb\") {\n        if (!processedPos) {\n          modifier = ShapeModifiers.getModifier(arr[i].ty);\n          modifier.init(this || _global, arr[i]);\n          itemsData[i] = modifier;\n\n          (this || _global).shapeModifiers.push(modifier);\n        } else {\n          modifier = itemsData[i];\n          modifier.closed = false;\n        }\n\n        ownModifiers.push(modifier);\n      } else if (arr[i].ty === \"rp\") {\n        if (!processedPos) {\n          modifier = ShapeModifiers.getModifier(arr[i].ty);\n          itemsData[i] = modifier;\n          modifier.init(this || _global, arr, i, itemsData);\n\n          (this || _global).shapeModifiers.push(modifier);\n\n          render = false;\n        } else {\n          modifier = itemsData[i];\n          modifier.closed = true;\n        }\n\n        ownModifiers.push(modifier);\n      }\n\n      this.addProcessedElement(arr[i], i + 1);\n    }\n\n    len = ownStyles.length;\n\n    for (i = 0; i < len; i += 1) {\n      ownStyles[i].closed = true;\n    }\n\n    len = ownModifiers.length;\n\n    for (i = 0; i < len; i += 1) {\n      ownModifiers[i].closed = true;\n    }\n  };\n\n  SVGShapeElement.prototype.renderInnerContent = function () {\n    this.renderModifiers();\n    var i;\n    var len = (this || _global).stylesList.length;\n\n    for (i = 0; i < len; i += 1) {\n      (this || _global).stylesList[i].reset();\n    }\n\n    this.renderShape();\n\n    for (i = 0; i < len; i += 1) {\n      if ((this || _global).stylesList[i]._mdf || (this || _global)._isFirstFrame) {\n        if ((this || _global).stylesList[i].msElem) {\n          (this || _global).stylesList[i].msElem.setAttribute(\"d\", (this || _global).stylesList[i].d); // Adding M0 0 fixes same mask bug on all browsers\n\n\n          (this || _global).stylesList[i].d = \"M0 0\" + (this || _global).stylesList[i].d;\n        }\n\n        (this || _global).stylesList[i].pElem.setAttribute(\"d\", (this || _global).stylesList[i].d || \"M0 0\");\n      }\n    }\n  };\n\n  SVGShapeElement.prototype.renderShape = function () {\n    var i;\n    var len = (this || _global).animatedContents.length;\n    var animatedContent;\n\n    for (i = 0; i < len; i += 1) {\n      animatedContent = (this || _global).animatedContents[i];\n\n      if (((this || _global)._isFirstFrame || animatedContent.element._isAnimated) && animatedContent.data !== true) {\n        animatedContent.fn(animatedContent.data, animatedContent.element, (this || _global)._isFirstFrame);\n      }\n    }\n  };\n\n  SVGShapeElement.prototype.destroy = function () {\n    this.destroyBaseElement();\n    (this || _global).shapesData = null;\n    (this || _global).itemsData = null;\n  };\n  /* global createNS */\n\n\n  function SVGTintFilter(filter, filterManager) {\n    (this || _global).filterManager = filterManager;\n    var feColorMatrix = createNS(\"feColorMatrix\");\n    feColorMatrix.setAttribute(\"type\", \"matrix\");\n    feColorMatrix.setAttribute(\"color-interpolation-filters\", \"linearRGB\");\n    feColorMatrix.setAttribute(\"values\", \"0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0 0 0 1 0\");\n    feColorMatrix.setAttribute(\"result\", \"f1\");\n    filter.appendChild(feColorMatrix);\n    feColorMatrix = createNS(\"feColorMatrix\");\n    feColorMatrix.setAttribute(\"type\", \"matrix\");\n    feColorMatrix.setAttribute(\"color-interpolation-filters\", \"sRGB\");\n    feColorMatrix.setAttribute(\"values\", \"1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 1 0\");\n    feColorMatrix.setAttribute(\"result\", \"f2\");\n    filter.appendChild(feColorMatrix);\n    (this || _global).matrixFilter = feColorMatrix;\n\n    if (filterManager.effectElements[2].p.v !== 100 || filterManager.effectElements[2].p.k) {\n      var feMerge = createNS(\"feMerge\");\n      filter.appendChild(feMerge);\n      var feMergeNode;\n      feMergeNode = createNS(\"feMergeNode\");\n      feMergeNode.setAttribute(\"in\", \"SourceGraphic\");\n      feMerge.appendChild(feMergeNode);\n      feMergeNode = createNS(\"feMergeNode\");\n      feMergeNode.setAttribute(\"in\", \"f2\");\n      feMerge.appendChild(feMergeNode);\n    }\n  }\n\n  SVGTintFilter.prototype.renderFrame = function (forceRender) {\n    if (forceRender || (this || _global).filterManager._mdf) {\n      var colorBlack = (this || _global).filterManager.effectElements[0].p.v;\n      var colorWhite = (this || _global).filterManager.effectElements[1].p.v;\n      var opacity = (this || _global).filterManager.effectElements[2].p.v / 100;\n\n      (this || _global).matrixFilter.setAttribute(\"values\", colorWhite[0] - colorBlack[0] + \" 0 0 0 \" + colorBlack[0] + \" \" + (colorWhite[1] - colorBlack[1]) + \" 0 0 0 \" + colorBlack[1] + \" \" + (colorWhite[2] - colorBlack[2]) + \" 0 0 0 \" + colorBlack[2] + \" 0 0 0 \" + opacity + \" 0\");\n    }\n  };\n  /* global createNS */\n\n\n  function SVGFillFilter(filter, filterManager) {\n    (this || _global).filterManager = filterManager;\n    var feColorMatrix = createNS(\"feColorMatrix\");\n    feColorMatrix.setAttribute(\"type\", \"matrix\");\n    feColorMatrix.setAttribute(\"color-interpolation-filters\", \"sRGB\");\n    feColorMatrix.setAttribute(\"values\", \"1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 1 0\");\n    filter.appendChild(feColorMatrix);\n    (this || _global).matrixFilter = feColorMatrix;\n  }\n\n  SVGFillFilter.prototype.renderFrame = function (forceRender) {\n    if (forceRender || (this || _global).filterManager._mdf) {\n      var color = (this || _global).filterManager.effectElements[2].p.v;\n      var opacity = (this || _global).filterManager.effectElements[6].p.v;\n\n      (this || _global).matrixFilter.setAttribute(\"values\", \"0 0 0 0 \" + color[0] + \" 0 0 0 0 \" + color[1] + \" 0 0 0 0 \" + color[2] + \" 0 0 0 \" + opacity + \" 0\");\n    }\n  };\n  /* global createNS */\n\n\n  function SVGGaussianBlurEffect(filter, filterManager) {\n    // Outset the filter region by 100% on all sides to accommodate blur expansion.\n    filter.setAttribute(\"x\", \"-100%\");\n    filter.setAttribute(\"y\", \"-100%\");\n    filter.setAttribute(\"width\", \"300%\");\n    filter.setAttribute(\"height\", \"300%\");\n    (this || _global).filterManager = filterManager;\n    var feGaussianBlur = createNS(\"feGaussianBlur\");\n    filter.appendChild(feGaussianBlur);\n    (this || _global).feGaussianBlur = feGaussianBlur;\n  }\n\n  SVGGaussianBlurEffect.prototype.renderFrame = function (forceRender) {\n    if (forceRender || (this || _global).filterManager._mdf) {\n      // Empirical value, matching AE's blur appearance.\n      var kBlurrinessToSigma = 0.3;\n      var sigma = (this || _global).filterManager.effectElements[0].p.v * kBlurrinessToSigma; // Dimensions mapping:\n      //\n      //   1 -> horizontal & vertical\n      //   2 -> horizontal only\n      //   3 -> vertical only\n      //\n\n      var dimensions = (this || _global).filterManager.effectElements[1].p.v;\n      var sigmaX = dimensions == 3 ? 0 : sigma; // eslint-disable-line eqeqeq\n\n      var sigmaY = dimensions == 2 ? 0 : sigma; // eslint-disable-line eqeqeq\n\n      (this || _global).feGaussianBlur.setAttribute(\"stdDeviation\", sigmaX + \" \" + sigmaY); // Repeat edges mapping:\n      //\n      //   0 -> off -> duplicate\n      //   1 -> on  -> wrap\n\n\n      var edgeMode = (this || _global).filterManager.effectElements[2].p.v == 1 ? \"wrap\" : \"duplicate\"; // eslint-disable-line eqeqeq\n\n      (this || _global).feGaussianBlur.setAttribute(\"edgeMode\", edgeMode);\n    }\n  };\n  /* global createNS, createElementID, locationHref, bmFloor */\n\n\n  function SVGStrokeEffect(elem, filterManager) {\n    (this || _global).initialized = false;\n    (this || _global).filterManager = filterManager;\n    (this || _global).elem = elem;\n    (this || _global).paths = [];\n  }\n\n  SVGStrokeEffect.prototype.initialize = function () {\n    var elemChildren = (this || _global).elem.layerElement.children || (this || _global).elem.layerElement.childNodes;\n    var path;\n    var groupPath;\n    var i;\n    var len;\n\n    if ((this || _global).filterManager.effectElements[1].p.v === 1) {\n      len = (this || _global).elem.maskManager.masksProperties.length;\n      i = 0;\n    } else {\n      i = (this || _global).filterManager.effectElements[0].p.v - 1;\n      len = i + 1;\n    }\n\n    groupPath = createNS(\"g\");\n    groupPath.setAttribute(\"fill\", \"none\");\n    groupPath.setAttribute(\"stroke-linecap\", \"round\");\n    groupPath.setAttribute(\"stroke-dashoffset\", 1);\n\n    for (i; i < len; i += 1) {\n      path = createNS(\"path\");\n      groupPath.appendChild(path);\n\n      (this || _global).paths.push({\n        p: path,\n        m: i\n      });\n    }\n\n    if ((this || _global).filterManager.effectElements[10].p.v === 3) {\n      var mask = createNS(\"mask\");\n      var id = createElementID();\n      mask.setAttribute(\"id\", id);\n      mask.setAttribute(\"mask-type\", \"alpha\");\n      mask.appendChild(groupPath);\n\n      (this || _global).elem.globalData.defs.appendChild(mask);\n\n      var g = createNS(\"g\");\n      g.setAttribute(\"mask\", \"url(\" + locationHref + \"#\" + id + \")\");\n\n      while (elemChildren[0]) {\n        g.appendChild(elemChildren[0]);\n      }\n\n      (this || _global).elem.layerElement.appendChild(g);\n\n      (this || _global).masker = mask;\n      groupPath.setAttribute(\"stroke\", \"#fff\");\n    } else if ((this || _global).filterManager.effectElements[10].p.v === 1 || (this || _global).filterManager.effectElements[10].p.v === 2) {\n      if ((this || _global).filterManager.effectElements[10].p.v === 2) {\n        elemChildren = (this || _global).elem.layerElement.children || (this || _global).elem.layerElement.childNodes;\n\n        while (elemChildren.length) {\n          (this || _global).elem.layerElement.removeChild(elemChildren[0]);\n        }\n      }\n\n      (this || _global).elem.layerElement.appendChild(groupPath);\n\n      (this || _global).elem.layerElement.removeAttribute(\"mask\");\n\n      groupPath.setAttribute(\"stroke\", \"#fff\");\n    }\n\n    (this || _global).initialized = true;\n    (this || _global).pathMasker = groupPath;\n  };\n\n  SVGStrokeEffect.prototype.renderFrame = function (forceRender) {\n    if (!(this || _global).initialized) {\n      this.initialize();\n    }\n\n    var i;\n    var len = (this || _global).paths.length;\n    var mask;\n    var path;\n\n    for (i = 0; i < len; i += 1) {\n      if ((this || _global).paths[i].m !== -1) {\n        mask = (this || _global).elem.maskManager.viewData[(this || _global).paths[i].m];\n        path = (this || _global).paths[i].p;\n\n        if (forceRender || (this || _global).filterManager._mdf || mask.prop._mdf) {\n          path.setAttribute(\"d\", mask.lastPath);\n        }\n\n        if (forceRender || (this || _global).filterManager.effectElements[9].p._mdf || (this || _global).filterManager.effectElements[4].p._mdf || (this || _global).filterManager.effectElements[7].p._mdf || (this || _global).filterManager.effectElements[8].p._mdf || mask.prop._mdf) {\n          var dasharrayValue;\n\n          if ((this || _global).filterManager.effectElements[7].p.v !== 0 || (this || _global).filterManager.effectElements[8].p.v !== 100) {\n            var s = Math.min((this || _global).filterManager.effectElements[7].p.v, (this || _global).filterManager.effectElements[8].p.v) * 0.01;\n            var e = Math.max((this || _global).filterManager.effectElements[7].p.v, (this || _global).filterManager.effectElements[8].p.v) * 0.01;\n            var l = path.getTotalLength();\n            dasharrayValue = \"0 0 0 \" + l * s + \" \";\n            var lineLength = l * (e - s);\n            var segment = 1 + (this || _global).filterManager.effectElements[4].p.v * 2 * (this || _global).filterManager.effectElements[9].p.v * 0.01;\n            var units = Math.floor(lineLength / segment);\n            var j;\n\n            for (j = 0; j < units; j += 1) {\n              dasharrayValue += \"1 \" + (this || _global).filterManager.effectElements[4].p.v * 2 * (this || _global).filterManager.effectElements[9].p.v * 0.01 + \" \";\n            }\n\n            dasharrayValue += \"0 \" + l * 10 + \" 0 0\";\n          } else {\n            dasharrayValue = \"1 \" + (this || _global).filterManager.effectElements[4].p.v * 2 * (this || _global).filterManager.effectElements[9].p.v * 0.01;\n          }\n\n          path.setAttribute(\"stroke-dasharray\", dasharrayValue);\n        }\n      }\n    }\n\n    if (forceRender || (this || _global).filterManager.effectElements[4].p._mdf) {\n      (this || _global).pathMasker.setAttribute(\"stroke-width\", (this || _global).filterManager.effectElements[4].p.v * 2);\n    }\n\n    if (forceRender || (this || _global).filterManager.effectElements[6].p._mdf) {\n      (this || _global).pathMasker.setAttribute(\"opacity\", (this || _global).filterManager.effectElements[6].p.v);\n    }\n\n    if ((this || _global).filterManager.effectElements[10].p.v === 1 || (this || _global).filterManager.effectElements[10].p.v === 2) {\n      if (forceRender || (this || _global).filterManager.effectElements[3].p._mdf) {\n        var color = (this || _global).filterManager.effectElements[3].p.v;\n\n        (this || _global).pathMasker.setAttribute(\"stroke\", \"rgb(\" + bmFloor(color[0] * 255) + \",\" + bmFloor(color[1] * 255) + \",\" + bmFloor(color[2] * 255) + \")\");\n      }\n    }\n  };\n  /* global createNS */\n\n\n  function SVGTritoneFilter(filter, filterManager) {\n    (this || _global).filterManager = filterManager;\n    var feColorMatrix = createNS(\"feColorMatrix\");\n    feColorMatrix.setAttribute(\"type\", \"matrix\");\n    feColorMatrix.setAttribute(\"color-interpolation-filters\", \"linearRGB\");\n    feColorMatrix.setAttribute(\"values\", \"0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0 0 0 1 0\");\n    feColorMatrix.setAttribute(\"result\", \"f1\");\n    filter.appendChild(feColorMatrix);\n    var feComponentTransfer = createNS(\"feComponentTransfer\");\n    feComponentTransfer.setAttribute(\"color-interpolation-filters\", \"sRGB\");\n    filter.appendChild(feComponentTransfer);\n    (this || _global).matrixFilter = feComponentTransfer;\n    var feFuncR = createNS(\"feFuncR\");\n    feFuncR.setAttribute(\"type\", \"table\");\n    feComponentTransfer.appendChild(feFuncR);\n    (this || _global).feFuncR = feFuncR;\n    var feFuncG = createNS(\"feFuncG\");\n    feFuncG.setAttribute(\"type\", \"table\");\n    feComponentTransfer.appendChild(feFuncG);\n    (this || _global).feFuncG = feFuncG;\n    var feFuncB = createNS(\"feFuncB\");\n    feFuncB.setAttribute(\"type\", \"table\");\n    feComponentTransfer.appendChild(feFuncB);\n    (this || _global).feFuncB = feFuncB;\n  }\n\n  SVGTritoneFilter.prototype.renderFrame = function (forceRender) {\n    if (forceRender || (this || _global).filterManager._mdf) {\n      var color1 = (this || _global).filterManager.effectElements[0].p.v;\n      var color2 = (this || _global).filterManager.effectElements[1].p.v;\n      var color3 = (this || _global).filterManager.effectElements[2].p.v;\n      var tableR = color3[0] + \" \" + color2[0] + \" \" + color1[0];\n      var tableG = color3[1] + \" \" + color2[1] + \" \" + color1[1];\n      var tableB = color3[2] + \" \" + color2[2] + \" \" + color1[2];\n\n      (this || _global).feFuncR.setAttribute(\"tableValues\", tableR);\n\n      (this || _global).feFuncG.setAttribute(\"tableValues\", tableG);\n\n      (this || _global).feFuncB.setAttribute(\"tableValues\", tableB); // var opacity = this.filterManager.effectElements[2].p.v/100;\n      // this.matrixFilter.setAttribute('values',(colorWhite[0]- colorBlack[0])+' 0 0 0 '+ colorBlack[0] +' '+ (colorWhite[1]- colorBlack[1]) +' 0 0 0 '+ colorBlack[1] +' '+ (colorWhite[2]- colorBlack[2]) +' 0 0 0 '+ colorBlack[2] +' 0 0 0 ' + opacity + ' 0');\n\n    }\n  };\n  /* global createNS */\n\n\n  function SVGProLevelsFilter(filter, filterManager) {\n    (this || _global).filterManager = filterManager;\n    var effectElements = (this || _global).filterManager.effectElements;\n    var feComponentTransfer = createNS(\"feComponentTransfer\");\n\n    if (effectElements[10].p.k || effectElements[10].p.v !== 0 || effectElements[11].p.k || effectElements[11].p.v !== 1 || effectElements[12].p.k || effectElements[12].p.v !== 1 || effectElements[13].p.k || effectElements[13].p.v !== 0 || effectElements[14].p.k || effectElements[14].p.v !== 1) {\n      (this || _global).feFuncR = this.createFeFunc(\"feFuncR\", feComponentTransfer);\n    }\n\n    if (effectElements[17].p.k || effectElements[17].p.v !== 0 || effectElements[18].p.k || effectElements[18].p.v !== 1 || effectElements[19].p.k || effectElements[19].p.v !== 1 || effectElements[20].p.k || effectElements[20].p.v !== 0 || effectElements[21].p.k || effectElements[21].p.v !== 1) {\n      (this || _global).feFuncG = this.createFeFunc(\"feFuncG\", feComponentTransfer);\n    }\n\n    if (effectElements[24].p.k || effectElements[24].p.v !== 0 || effectElements[25].p.k || effectElements[25].p.v !== 1 || effectElements[26].p.k || effectElements[26].p.v !== 1 || effectElements[27].p.k || effectElements[27].p.v !== 0 || effectElements[28].p.k || effectElements[28].p.v !== 1) {\n      (this || _global).feFuncB = this.createFeFunc(\"feFuncB\", feComponentTransfer);\n    }\n\n    if (effectElements[31].p.k || effectElements[31].p.v !== 0 || effectElements[32].p.k || effectElements[32].p.v !== 1 || effectElements[33].p.k || effectElements[33].p.v !== 1 || effectElements[34].p.k || effectElements[34].p.v !== 0 || effectElements[35].p.k || effectElements[35].p.v !== 1) {\n      (this || _global).feFuncA = this.createFeFunc(\"feFuncA\", feComponentTransfer);\n    }\n\n    if ((this || _global).feFuncR || (this || _global).feFuncG || (this || _global).feFuncB || (this || _global).feFuncA) {\n      feComponentTransfer.setAttribute(\"color-interpolation-filters\", \"sRGB\");\n      filter.appendChild(feComponentTransfer);\n      feComponentTransfer = createNS(\"feComponentTransfer\");\n    }\n\n    if (effectElements[3].p.k || effectElements[3].p.v !== 0 || effectElements[4].p.k || effectElements[4].p.v !== 1 || effectElements[5].p.k || effectElements[5].p.v !== 1 || effectElements[6].p.k || effectElements[6].p.v !== 0 || effectElements[7].p.k || effectElements[7].p.v !== 1) {\n      feComponentTransfer.setAttribute(\"color-interpolation-filters\", \"sRGB\");\n      filter.appendChild(feComponentTransfer);\n      (this || _global).feFuncRComposed = this.createFeFunc(\"feFuncR\", feComponentTransfer);\n      (this || _global).feFuncGComposed = this.createFeFunc(\"feFuncG\", feComponentTransfer);\n      (this || _global).feFuncBComposed = this.createFeFunc(\"feFuncB\", feComponentTransfer);\n    }\n  }\n\n  SVGProLevelsFilter.prototype.createFeFunc = function (type, feComponentTransfer) {\n    var feFunc = createNS(type);\n    feFunc.setAttribute(\"type\", \"table\");\n    feComponentTransfer.appendChild(feFunc);\n    return feFunc;\n  };\n\n  SVGProLevelsFilter.prototype.getTableValue = function (inputBlack, inputWhite, gamma, outputBlack, outputWhite) {\n    var cnt = 0;\n    var segments = 256;\n    var perc;\n    var min = Math.min(inputBlack, inputWhite);\n    var max = Math.max(inputBlack, inputWhite);\n    var table = Array.call(null, {\n      length: segments\n    });\n    var colorValue;\n    var pos = 0;\n    var outputDelta = outputWhite - outputBlack;\n    var inputDelta = inputWhite - inputBlack;\n\n    while (cnt <= 256) {\n      perc = cnt / 256;\n\n      if (perc <= min) {\n        colorValue = inputDelta < 0 ? outputWhite : outputBlack;\n      } else if (perc >= max) {\n        colorValue = inputDelta < 0 ? outputBlack : outputWhite;\n      } else {\n        colorValue = outputBlack + outputDelta * Math.pow((perc - inputBlack) / inputDelta, 1 / gamma);\n      }\n\n      table[pos] = colorValue;\n      pos += 1;\n      cnt += 256 / (segments - 1);\n    }\n\n    return table.join(\" \");\n  };\n\n  SVGProLevelsFilter.prototype.renderFrame = function (forceRender) {\n    if (forceRender || (this || _global).filterManager._mdf) {\n      var val;\n      var effectElements = (this || _global).filterManager.effectElements;\n\n      if ((this || _global).feFuncRComposed && (forceRender || effectElements[3].p._mdf || effectElements[4].p._mdf || effectElements[5].p._mdf || effectElements[6].p._mdf || effectElements[7].p._mdf)) {\n        val = this.getTableValue(effectElements[3].p.v, effectElements[4].p.v, effectElements[5].p.v, effectElements[6].p.v, effectElements[7].p.v);\n\n        (this || _global).feFuncRComposed.setAttribute(\"tableValues\", val);\n\n        (this || _global).feFuncGComposed.setAttribute(\"tableValues\", val);\n\n        (this || _global).feFuncBComposed.setAttribute(\"tableValues\", val);\n      }\n\n      if ((this || _global).feFuncR && (forceRender || effectElements[10].p._mdf || effectElements[11].p._mdf || effectElements[12].p._mdf || effectElements[13].p._mdf || effectElements[14].p._mdf)) {\n        val = this.getTableValue(effectElements[10].p.v, effectElements[11].p.v, effectElements[12].p.v, effectElements[13].p.v, effectElements[14].p.v);\n\n        (this || _global).feFuncR.setAttribute(\"tableValues\", val);\n      }\n\n      if ((this || _global).feFuncG && (forceRender || effectElements[17].p._mdf || effectElements[18].p._mdf || effectElements[19].p._mdf || effectElements[20].p._mdf || effectElements[21].p._mdf)) {\n        val = this.getTableValue(effectElements[17].p.v, effectElements[18].p.v, effectElements[19].p.v, effectElements[20].p.v, effectElements[21].p.v);\n\n        (this || _global).feFuncG.setAttribute(\"tableValues\", val);\n      }\n\n      if ((this || _global).feFuncB && (forceRender || effectElements[24].p._mdf || effectElements[25].p._mdf || effectElements[26].p._mdf || effectElements[27].p._mdf || effectElements[28].p._mdf)) {\n        val = this.getTableValue(effectElements[24].p.v, effectElements[25].p.v, effectElements[26].p.v, effectElements[27].p.v, effectElements[28].p.v);\n\n        (this || _global).feFuncB.setAttribute(\"tableValues\", val);\n      }\n\n      if ((this || _global).feFuncA && (forceRender || effectElements[31].p._mdf || effectElements[32].p._mdf || effectElements[33].p._mdf || effectElements[34].p._mdf || effectElements[35].p._mdf)) {\n        val = this.getTableValue(effectElements[31].p.v, effectElements[32].p.v, effectElements[33].p.v, effectElements[34].p.v, effectElements[35].p.v);\n\n        (this || _global).feFuncA.setAttribute(\"tableValues\", val);\n      }\n    }\n  };\n  /* global createNS, rgbToHex, degToRads */\n\n\n  function SVGDropShadowEffect(filter, filterManager) {\n    var filterSize = filterManager.container.globalData.renderConfig.filterSize;\n    filter.setAttribute(\"x\", filterSize.x);\n    filter.setAttribute(\"y\", filterSize.y);\n    filter.setAttribute(\"width\", filterSize.width);\n    filter.setAttribute(\"height\", filterSize.height);\n    (this || _global).filterManager = filterManager;\n    var feGaussianBlur = createNS(\"feGaussianBlur\");\n    feGaussianBlur.setAttribute(\"in\", \"SourceAlpha\");\n    feGaussianBlur.setAttribute(\"result\", \"drop_shadow_1\");\n    feGaussianBlur.setAttribute(\"stdDeviation\", \"0\");\n    (this || _global).feGaussianBlur = feGaussianBlur;\n    filter.appendChild(feGaussianBlur);\n    var feOffset = createNS(\"feOffset\");\n    feOffset.setAttribute(\"dx\", \"25\");\n    feOffset.setAttribute(\"dy\", \"0\");\n    feOffset.setAttribute(\"in\", \"drop_shadow_1\");\n    feOffset.setAttribute(\"result\", \"drop_shadow_2\");\n    (this || _global).feOffset = feOffset;\n    filter.appendChild(feOffset);\n    var feFlood = createNS(\"feFlood\");\n    feFlood.setAttribute(\"flood-color\", \"#00ff00\");\n    feFlood.setAttribute(\"flood-opacity\", \"1\");\n    feFlood.setAttribute(\"result\", \"drop_shadow_3\");\n    (this || _global).feFlood = feFlood;\n    filter.appendChild(feFlood);\n    var feComposite = createNS(\"feComposite\");\n    feComposite.setAttribute(\"in\", \"drop_shadow_3\");\n    feComposite.setAttribute(\"in2\", \"drop_shadow_2\");\n    feComposite.setAttribute(\"operator\", \"in\");\n    feComposite.setAttribute(\"result\", \"drop_shadow_4\");\n    filter.appendChild(feComposite);\n    var feMerge = createNS(\"feMerge\");\n    filter.appendChild(feMerge);\n    var feMergeNode;\n    feMergeNode = createNS(\"feMergeNode\");\n    feMerge.appendChild(feMergeNode);\n    feMergeNode = createNS(\"feMergeNode\");\n    feMergeNode.setAttribute(\"in\", \"SourceGraphic\");\n    (this || _global).feMergeNode = feMergeNode;\n    (this || _global).feMerge = feMerge;\n    (this || _global).originalNodeAdded = false;\n    feMerge.appendChild(feMergeNode);\n  }\n\n  SVGDropShadowEffect.prototype.renderFrame = function (forceRender) {\n    if (forceRender || (this || _global).filterManager._mdf) {\n      if (forceRender || (this || _global).filterManager.effectElements[4].p._mdf) {\n        (this || _global).feGaussianBlur.setAttribute(\"stdDeviation\", (this || _global).filterManager.effectElements[4].p.v / 4);\n      }\n\n      if (forceRender || (this || _global).filterManager.effectElements[0].p._mdf) {\n        var col = (this || _global).filterManager.effectElements[0].p.v;\n\n        (this || _global).feFlood.setAttribute(\"flood-color\", rgbToHex(Math.round(col[0] * 255), Math.round(col[1] * 255), Math.round(col[2] * 255)));\n      }\n\n      if (forceRender || (this || _global).filterManager.effectElements[1].p._mdf) {\n        (this || _global).feFlood.setAttribute(\"flood-opacity\", (this || _global).filterManager.effectElements[1].p.v / 255);\n      }\n\n      if (forceRender || (this || _global).filterManager.effectElements[2].p._mdf || (this || _global).filterManager.effectElements[3].p._mdf) {\n        var distance = (this || _global).filterManager.effectElements[3].p.v;\n        var angle = ((this || _global).filterManager.effectElements[2].p.v - 90) * degToRads;\n        var x = distance * Math.cos(angle);\n        var y = distance * Math.sin(angle);\n\n        (this || _global).feOffset.setAttribute(\"dx\", x);\n\n        (this || _global).feOffset.setAttribute(\"dy\", y);\n      }\n      /* if(forceRender || this.filterManager.effectElements[5].p._mdf){\r\n              if(this.filterManager.effectElements[5].p.v === 1 && this.originalNodeAdded) {\r\n                  this.feMerge.removeChild(this.feMergeNode);\r\n                  this.originalNodeAdded = false;\r\n              } else if(this.filterManager.effectElements[5].p.v === 0 && !this.originalNodeAdded) {\r\n                  this.feMerge.appendChild(this.feMergeNode);\r\n                  this.originalNodeAdded = true;\r\n              }\r\n          } */\n\n    }\n  };\n  /* global createElementID, createNS */\n\n\n  var _svgMatteSymbols = [];\n\n  function SVGMatte3Effect(filterElem, filterManager, elem) {\n    (this || _global).initialized = false;\n    (this || _global).filterManager = filterManager;\n    (this || _global).filterElem = filterElem;\n    (this || _global).elem = elem;\n    elem.matteElement = createNS(\"g\");\n    elem.matteElement.appendChild(elem.layerElement);\n    elem.matteElement.appendChild(elem.transformedElement);\n    elem.baseElement = elem.matteElement;\n  }\n\n  SVGMatte3Effect.prototype.findSymbol = function (mask) {\n    var i = 0;\n    var len = _svgMatteSymbols.length;\n\n    while (i < len) {\n      if (_svgMatteSymbols[i] === mask) {\n        return _svgMatteSymbols[i];\n      }\n\n      i += 1;\n    }\n\n    return null;\n  };\n\n  SVGMatte3Effect.prototype.replaceInParent = function (mask, symbolId) {\n    var parentNode = mask.layerElement.parentNode;\n\n    if (!parentNode) {\n      return;\n    }\n\n    var children = parentNode.children;\n    var i = 0;\n    var len = children.length;\n\n    while (i < len) {\n      if (children[i] === mask.layerElement) {\n        break;\n      }\n\n      i += 1;\n    }\n\n    var nextChild;\n\n    if (i <= len - 2) {\n      nextChild = children[i + 1];\n    }\n\n    var useElem = createNS(\"use\");\n    useElem.setAttribute(\"href\", \"#\" + symbolId);\n\n    if (nextChild) {\n      parentNode.insertBefore(useElem, nextChild);\n    } else {\n      parentNode.appendChild(useElem);\n    }\n  };\n\n  SVGMatte3Effect.prototype.setElementAsMask = function (elem, mask) {\n    if (!this.findSymbol(mask)) {\n      var symbolId = createElementID();\n      var masker = createNS(\"mask\");\n      masker.setAttribute(\"id\", mask.layerId);\n      masker.setAttribute(\"mask-type\", \"alpha\");\n\n      _svgMatteSymbols.push(mask);\n\n      var defs = elem.globalData.defs;\n      defs.appendChild(masker);\n      var symbol = createNS(\"symbol\");\n      symbol.setAttribute(\"id\", symbolId);\n      this.replaceInParent(mask, symbolId);\n      symbol.appendChild(mask.layerElement);\n      defs.appendChild(symbol);\n      var useElem = createNS(\"use\");\n      useElem.setAttribute(\"href\", \"#\" + symbolId);\n      masker.appendChild(useElem);\n      mask.data.hd = false;\n      mask.show();\n    }\n\n    elem.setMatte(mask.layerId);\n  };\n\n  SVGMatte3Effect.prototype.initialize = function () {\n    var ind = (this || _global).filterManager.effectElements[0].p.v;\n    var elements = (this || _global).elem.comp.elements;\n    var i = 0;\n    var len = elements.length;\n\n    while (i < len) {\n      if (elements[i] && elements[i].data.ind === ind) {\n        this.setElementAsMask((this || _global).elem, elements[i]);\n      }\n\n      i += 1;\n    }\n\n    (this || _global).initialized = true;\n  };\n\n  SVGMatte3Effect.prototype.renderFrame = function () {\n    if (!(this || _global).initialized) {\n      this.initialize();\n    }\n  };\n  /* global createElementID, filtersFactory, SVGTintFilter, SVGFillFilter, SVGStrokeEffect, SVGTritoneFilter,\r\n  SVGProLevelsFilter, SVGDropShadowEffect, SVGMatte3Effect, SVGGaussianBlurEffect, locationHref */\n\n\n  function SVGEffects(elem) {\n    var i;\n    var len = elem.data.ef ? elem.data.ef.length : 0;\n    var filId = createElementID();\n    var fil = filtersFactory.createFilter(filId, true);\n    var count = 0;\n    (this || _global).filters = [];\n    var filterManager;\n\n    for (i = 0; i < len; i += 1) {\n      filterManager = null;\n\n      if (elem.data.ef[i].ty === 20) {\n        count += 1;\n        filterManager = new SVGTintFilter(fil, elem.effectsManager.effectElements[i]);\n      } else if (elem.data.ef[i].ty === 21) {\n        count += 1;\n        filterManager = new SVGFillFilter(fil, elem.effectsManager.effectElements[i]);\n      } else if (elem.data.ef[i].ty === 22) {\n        filterManager = new SVGStrokeEffect(elem, elem.effectsManager.effectElements[i]);\n      } else if (elem.data.ef[i].ty === 23) {\n        count += 1;\n        filterManager = new SVGTritoneFilter(fil, elem.effectsManager.effectElements[i]);\n      } else if (elem.data.ef[i].ty === 24) {\n        count += 1;\n        filterManager = new SVGProLevelsFilter(fil, elem.effectsManager.effectElements[i]);\n      } else if (elem.data.ef[i].ty === 25) {\n        count += 1;\n        filterManager = new SVGDropShadowEffect(fil, elem.effectsManager.effectElements[i]);\n      } else if (elem.data.ef[i].ty === 28) {\n        // count += 1;\n        filterManager = new SVGMatte3Effect(fil, elem.effectsManager.effectElements[i], elem);\n      } else if (elem.data.ef[i].ty === 29) {\n        count += 1;\n        filterManager = new SVGGaussianBlurEffect(fil, elem.effectsManager.effectElements[i]);\n      }\n\n      if (filterManager) {\n        (this || _global).filters.push(filterManager);\n      }\n    }\n\n    if (count) {\n      elem.globalData.defs.appendChild(fil);\n      elem.layerElement.setAttribute(\"filter\", \"url(\" + locationHref + \"#\" + filId + \")\");\n    }\n\n    if ((this || _global).filters.length) {\n      elem.addRenderableComponent(this || _global);\n    }\n  }\n\n  SVGEffects.prototype.renderFrame = function (_isFirstFrame) {\n    var i;\n    var len = (this || _global).filters.length;\n\n    for (i = 0; i < len; i += 1) {\n      (this || _global).filters[i].renderFrame(_isFirstFrame);\n    }\n  };\n  /* global Matrix, createTypedArray */\n\n\n  function CVContextData() {\n    (this || _global).saved = [];\n    (this || _global).cArrPos = 0;\n    (this || _global).cTr = new Matrix();\n    (this || _global).cO = 1;\n    var i;\n    var len = 15;\n    (this || _global).savedOp = createTypedArray(\"float32\", len);\n\n    for (i = 0; i < len; i += 1) {\n      (this || _global).saved[i] = createTypedArray(\"float32\", 16);\n    }\n\n    (this || _global)._length = len;\n  }\n\n  CVContextData.prototype.duplicate = function () {\n    var newLength = (this || _global)._length * 2;\n    var currentSavedOp = (this || _global).savedOp;\n    (this || _global).savedOp = createTypedArray(\"float32\", newLength);\n\n    (this || _global).savedOp.set(currentSavedOp);\n\n    var i = 0;\n\n    for (i = (this || _global)._length; i < newLength; i += 1) {\n      (this || _global).saved[i] = createTypedArray(\"float32\", 16);\n    }\n\n    (this || _global)._length = newLength;\n  };\n\n  CVContextData.prototype.reset = function () {\n    (this || _global).cArrPos = 0;\n\n    (this || _global).cTr.reset();\n\n    (this || _global).cO = 1;\n  };\n  /* global CVEffects, getBlendMode, CVMaskElement, Matrix */\n\n\n  function CVBaseElement() {}\n\n  CVBaseElement.prototype = {\n    createElements: function () {},\n    initRendererElement: function () {},\n    createContainerElements: function () {\n      (this || _global).canvasContext = (this || _global).globalData.canvasContext;\n      (this || _global).renderableEffectsManager = new CVEffects(this || _global);\n    },\n    createContent: function () {},\n    setBlendMode: function () {\n      var globalData = (this || _global).globalData;\n\n      if (globalData.blendMode !== (this || _global).data.bm) {\n        globalData.blendMode = (this || _global).data.bm;\n        var blendModeValue = getBlendMode((this || _global).data.bm);\n        globalData.canvasContext.globalCompositeOperation = blendModeValue;\n      }\n    },\n    createRenderableComponents: function () {\n      (this || _global).maskManager = new CVMaskElement((this || _global).data, this || _global);\n    },\n    hideElement: function () {\n      if (!(this || _global).hidden && (!(this || _global).isInRange || (this || _global).isTransparent)) {\n        (this || _global).hidden = true;\n      }\n    },\n    showElement: function () {\n      if ((this || _global).isInRange && !(this || _global).isTransparent) {\n        (this || _global).hidden = false;\n        (this || _global)._isFirstFrame = true;\n        (this || _global).maskManager._isFirstFrame = true;\n      }\n    },\n    renderFrame: function () {\n      if ((this || _global).hidden || (this || _global).data.hd) {\n        return;\n      }\n\n      this.renderTransform();\n      this.renderRenderable();\n      this.setBlendMode();\n      var forceRealStack = (this || _global).data.ty === 0;\n\n      (this || _global).globalData.renderer.save(forceRealStack);\n\n      (this || _global).globalData.renderer.ctxTransform((this || _global).finalTransform.mat.props);\n\n      (this || _global).globalData.renderer.ctxOpacity((this || _global).finalTransform.mProp.o.v);\n\n      this.renderInnerContent();\n\n      (this || _global).globalData.renderer.restore(forceRealStack);\n\n      if ((this || _global).maskManager.hasMasks) {\n        (this || _global).globalData.renderer.restore(true);\n      }\n\n      if ((this || _global)._isFirstFrame) {\n        (this || _global)._isFirstFrame = false;\n      }\n    },\n    destroy: function () {\n      (this || _global).canvasContext = null;\n      (this || _global).data = null;\n      (this || _global).globalData = null;\n\n      (this || _global).maskManager.destroy();\n    },\n    mHelper: new Matrix()\n  };\n  CVBaseElement.prototype.hide = CVBaseElement.prototype.hideElement;\n  CVBaseElement.prototype.show = CVBaseElement.prototype.showElement;\n  /* global extendPrototype, BaseElement, TransformElement, CVBaseElement,HierarchyElement, FrameElement,\r\n  RenderableElement, SVGShapeElement, IImageElement, createTag */\n\n  function CVImageElement(data, globalData, comp) {\n    (this || _global).assetData = globalData.getAssetData(data.refId);\n    (this || _global).img = globalData.imageLoader.getAsset((this || _global).assetData);\n    this.initElement(data, globalData, comp);\n  }\n\n  extendPrototype([BaseElement, TransformElement, CVBaseElement, HierarchyElement, FrameElement, RenderableElement], CVImageElement);\n  CVImageElement.prototype.initElement = SVGShapeElement.prototype.initElement;\n  CVImageElement.prototype.prepareFrame = IImageElement.prototype.prepareFrame;\n\n  CVImageElement.prototype.createContent = function () {\n    if ((this || _global).img.width && ((this || _global).assetData.w !== (this || _global).img.width || (this || _global).assetData.h !== (this || _global).img.height)) {\n      var canvas = createTag(\"canvas\");\n      canvas.width = (this || _global).assetData.w;\n      canvas.height = (this || _global).assetData.h;\n      var ctx = canvas.getContext(\"2d\");\n      var imgW = (this || _global).img.width;\n      var imgH = (this || _global).img.height;\n      var imgRel = imgW / imgH;\n      var canvasRel = (this || _global).assetData.w / (this || _global).assetData.h;\n      var widthCrop;\n      var heightCrop;\n      var par = (this || _global).assetData.pr || (this || _global).globalData.renderConfig.imagePreserveAspectRatio;\n\n      if (imgRel > canvasRel && par === \"xMidYMid slice\" || imgRel < canvasRel && par !== \"xMidYMid slice\") {\n        heightCrop = imgH;\n        widthCrop = heightCrop * canvasRel;\n      } else {\n        widthCrop = imgW;\n        heightCrop = widthCrop / canvasRel;\n      }\n\n      ctx.drawImage((this || _global).img, (imgW - widthCrop) / 2, (imgH - heightCrop) / 2, widthCrop, heightCrop, 0, 0, (this || _global).assetData.w, (this || _global).assetData.h);\n      (this || _global).img = canvas;\n    }\n  };\n\n  CVImageElement.prototype.renderInnerContent = function () {\n    (this || _global).canvasContext.drawImage((this || _global).img, 0, 0);\n  };\n\n  CVImageElement.prototype.destroy = function () {\n    (this || _global).img = null;\n  };\n  /* global createSizedArray, PropertyFactory, extendPrototype, CanvasRenderer, ICompElement, CVBaseElement */\n\n\n  function CVCompElement(data, globalData, comp) {\n    (this || _global).completeLayers = false;\n    (this || _global).layers = data.layers;\n    (this || _global).pendingElements = [];\n    (this || _global).elements = createSizedArray((this || _global).layers.length);\n    this.initElement(data, globalData, comp);\n    (this || _global).tm = data.tm ? PropertyFactory.getProp(this || _global, data.tm, 0, globalData.frameRate, this || _global) : {\n      _placeholder: true\n    };\n  }\n\n  extendPrototype([CanvasRenderer, ICompElement, CVBaseElement], CVCompElement);\n\n  CVCompElement.prototype.renderInnerContent = function () {\n    var ctx = (this || _global).canvasContext;\n    ctx.beginPath();\n    ctx.moveTo(0, 0);\n    ctx.lineTo((this || _global).data.w, 0);\n    ctx.lineTo((this || _global).data.w, (this || _global).data.h);\n    ctx.lineTo(0, (this || _global).data.h);\n    ctx.lineTo(0, 0);\n    ctx.clip();\n    var i;\n    var len = (this || _global).layers.length;\n\n    for (i = len - 1; i >= 0; i -= 1) {\n      if ((this || _global).completeLayers || (this || _global).elements[i]) {\n        (this || _global).elements[i].renderFrame();\n      }\n    }\n  };\n\n  CVCompElement.prototype.destroy = function () {\n    var i;\n    var len = (this || _global).layers.length;\n\n    for (i = len - 1; i >= 0; i -= 1) {\n      if ((this || _global).elements[i]) {\n        (this || _global).elements[i].destroy();\n      }\n    }\n\n    (this || _global).layers = null;\n    (this || _global).elements = null;\n  };\n  /* global createSizedArray, ShapePropertyFactory, MaskElement */\n\n\n  function CVMaskElement(data, element) {\n    (this || _global).data = data;\n    (this || _global).element = element;\n    (this || _global).masksProperties = (this || _global).data.masksProperties || [];\n    (this || _global).viewData = createSizedArray((this || _global).masksProperties.length);\n    var i;\n    var len = (this || _global).masksProperties.length;\n    var hasMasks = false;\n\n    for (i = 0; i < len; i += 1) {\n      if ((this || _global).masksProperties[i].mode !== \"n\") {\n        hasMasks = true;\n      }\n\n      (this || _global).viewData[i] = ShapePropertyFactory.getShapeProp((this || _global).element, (this || _global).masksProperties[i], 3);\n    }\n\n    (this || _global).hasMasks = hasMasks;\n\n    if (hasMasks) {\n      (this || _global).element.addRenderableComponent(this || _global);\n    }\n  }\n\n  CVMaskElement.prototype.renderFrame = function () {\n    if (!(this || _global).hasMasks) {\n      return;\n    }\n\n    var transform = (this || _global).element.finalTransform.mat;\n    var ctx = (this || _global).element.canvasContext;\n    var i;\n    var len = (this || _global).masksProperties.length;\n    var pt;\n    var pts;\n    var data;\n    ctx.beginPath();\n\n    for (i = 0; i < len; i += 1) {\n      if ((this || _global).masksProperties[i].mode !== \"n\") {\n        if ((this || _global).masksProperties[i].inv) {\n          ctx.moveTo(0, 0);\n          ctx.lineTo((this || _global).element.globalData.compSize.w, 0);\n          ctx.lineTo((this || _global).element.globalData.compSize.w, (this || _global).element.globalData.compSize.h);\n          ctx.lineTo(0, (this || _global).element.globalData.compSize.h);\n          ctx.lineTo(0, 0);\n        }\n\n        data = (this || _global).viewData[i].v;\n        pt = transform.applyToPointArray(data.v[0][0], data.v[0][1], 0);\n        ctx.moveTo(pt[0], pt[1]);\n        var j;\n        var jLen = data._length;\n\n        for (j = 1; j < jLen; j += 1) {\n          pts = transform.applyToTriplePoints(data.o[j - 1], data.i[j], data.v[j]);\n          ctx.bezierCurveTo(pts[0], pts[1], pts[2], pts[3], pts[4], pts[5]);\n        }\n\n        pts = transform.applyToTriplePoints(data.o[j - 1], data.i[0], data.v[0]);\n        ctx.bezierCurveTo(pts[0], pts[1], pts[2], pts[3], pts[4], pts[5]);\n      }\n    }\n\n    (this || _global).element.globalData.renderer.save(true);\n\n    ctx.clip();\n  };\n\n  CVMaskElement.prototype.getMaskProperty = MaskElement.prototype.getMaskProperty;\n\n  CVMaskElement.prototype.destroy = function () {\n    (this || _global).element = null;\n  };\n  /* global ShapeTransformManager, extendPrototype, BaseElement, TransformElement, CVBaseElement, IShapeElement,\r\n  HierarchyElement, FrameElement, RenderableElement, RenderableDOMElement, PropertyFactory, degToRads, GradientProperty,\r\n  DashProperty, TransformPropertyFactory, CVShapeData, ShapeModifiers, bmFloor */\n\n\n  function CVShapeElement(data, globalData, comp) {\n    (this || _global).shapes = [];\n    (this || _global).shapesData = data.shapes;\n    (this || _global).stylesList = [];\n    (this || _global).itemsData = [];\n    (this || _global).prevViewData = [];\n    (this || _global).shapeModifiers = [];\n    (this || _global).processedElements = [];\n    (this || _global).transformsManager = new ShapeTransformManager();\n    this.initElement(data, globalData, comp);\n  }\n\n  extendPrototype([BaseElement, TransformElement, CVBaseElement, IShapeElement, HierarchyElement, FrameElement, RenderableElement], CVShapeElement);\n  CVShapeElement.prototype.initElement = RenderableDOMElement.prototype.initElement;\n  CVShapeElement.prototype.transformHelper = {\n    opacity: 1,\n    _opMdf: false\n  };\n  CVShapeElement.prototype.dashResetter = [];\n\n  CVShapeElement.prototype.createContent = function () {\n    this.searchShapes((this || _global).shapesData, (this || _global).itemsData, (this || _global).prevViewData, true, []);\n  };\n\n  CVShapeElement.prototype.createStyleElement = function (data, transforms) {\n    var styleElem = {\n      data: data,\n      type: data.ty,\n      preTransforms: (this || _global).transformsManager.addTransformSequence(transforms),\n      transforms: [],\n      elements: [],\n      closed: data.hd === true\n    };\n    var elementData = {};\n\n    if (data.ty === \"fl\" || data.ty === \"st\") {\n      elementData.c = PropertyFactory.getProp(this || _global, data.c, 1, 255, this || _global);\n\n      if (!elementData.c.k) {\n        styleElem.co = \"rgb(\" + bmFloor(elementData.c.v[0]) + \",\" + bmFloor(elementData.c.v[1]) + \",\" + bmFloor(elementData.c.v[2]) + \")\";\n      }\n    } else if (data.ty === \"gf\" || data.ty === \"gs\") {\n      elementData.s = PropertyFactory.getProp(this || _global, data.s, 1, null, this || _global);\n      elementData.e = PropertyFactory.getProp(this || _global, data.e, 1, null, this || _global);\n      elementData.h = PropertyFactory.getProp(this || _global, data.h || {\n        k: 0\n      }, 0, 0.01, this || _global);\n      elementData.a = PropertyFactory.getProp(this || _global, data.a || {\n        k: 0\n      }, 0, degToRads, this || _global);\n      elementData.g = new GradientProperty(this || _global, data.g, this || _global);\n    }\n\n    elementData.o = PropertyFactory.getProp(this || _global, data.o, 0, 0.01, this || _global);\n\n    if (data.ty === \"st\" || data.ty === \"gs\") {\n      styleElem.lc = (this || _global).lcEnum[data.lc] || \"round\";\n      styleElem.lj = (this || _global).ljEnum[data.lj] || \"round\";\n\n      if (data.lj == 1) {\n        // eslint-disable-line eqeqeq\n        styleElem.ml = data.ml;\n      }\n\n      elementData.w = PropertyFactory.getProp(this || _global, data.w, 0, null, this || _global);\n\n      if (!elementData.w.k) {\n        styleElem.wi = elementData.w.v;\n      }\n\n      if (data.d) {\n        var d = new DashProperty(this || _global, data.d, \"canvas\", this || _global);\n        elementData.d = d;\n\n        if (!elementData.d.k) {\n          styleElem.da = elementData.d.dashArray;\n          styleElem.do = elementData.d.dashoffset[0];\n        }\n      }\n    } else {\n      styleElem.r = data.r === 2 ? \"evenodd\" : \"nonzero\";\n    }\n\n    (this || _global).stylesList.push(styleElem);\n\n    elementData.style = styleElem;\n    return elementData;\n  };\n\n  CVShapeElement.prototype.createGroupElement = function () {\n    var elementData = {\n      it: [],\n      prevViewData: []\n    };\n    return elementData;\n  };\n\n  CVShapeElement.prototype.createTransformElement = function (data) {\n    var elementData = {\n      transform: {\n        opacity: 1,\n        _opMdf: false,\n        key: (this || _global).transformsManager.getNewKey(),\n        op: PropertyFactory.getProp(this || _global, data.o, 0, 0.01, this || _global),\n        mProps: TransformPropertyFactory.getTransformProperty(this || _global, data, this || _global)\n      }\n    };\n    return elementData;\n  };\n\n  CVShapeElement.prototype.createShapeElement = function (data) {\n    var elementData = new CVShapeData(this || _global, data, (this || _global).stylesList, (this || _global).transformsManager);\n\n    (this || _global).shapes.push(elementData);\n\n    this.addShapeToModifiers(elementData);\n    return elementData;\n  };\n\n  CVShapeElement.prototype.reloadShapes = function () {\n    (this || _global)._isFirstFrame = true;\n    var i;\n    var len = (this || _global).itemsData.length;\n\n    for (i = 0; i < len; i += 1) {\n      (this || _global).prevViewData[i] = (this || _global).itemsData[i];\n    }\n\n    this.searchShapes((this || _global).shapesData, (this || _global).itemsData, (this || _global).prevViewData, true, []);\n    len = (this || _global).dynamicProperties.length;\n\n    for (i = 0; i < len; i += 1) {\n      (this || _global).dynamicProperties[i].getValue();\n    }\n\n    this.renderModifiers();\n\n    (this || _global).transformsManager.processSequences((this || _global)._isFirstFrame);\n  };\n\n  CVShapeElement.prototype.addTransformToStyleList = function (transform) {\n    var i;\n    var len = (this || _global).stylesList.length;\n\n    for (i = 0; i < len; i += 1) {\n      if (!(this || _global).stylesList[i].closed) {\n        (this || _global).stylesList[i].transforms.push(transform);\n      }\n    }\n  };\n\n  CVShapeElement.prototype.removeTransformFromStyleList = function () {\n    var i;\n    var len = (this || _global).stylesList.length;\n\n    for (i = 0; i < len; i += 1) {\n      if (!(this || _global).stylesList[i].closed) {\n        (this || _global).stylesList[i].transforms.pop();\n      }\n    }\n  };\n\n  CVShapeElement.prototype.closeStyles = function (styles) {\n    var i;\n    var len = styles.length;\n\n    for (i = 0; i < len; i += 1) {\n      styles[i].closed = true;\n    }\n  };\n\n  CVShapeElement.prototype.searchShapes = function (arr, itemsData, prevViewData, shouldRender, transforms) {\n    var i;\n    var len = arr.length - 1;\n    var j;\n    var jLen;\n    var ownStyles = [];\n    var ownModifiers = [];\n    var processedPos;\n    var modifier;\n    var currentTransform;\n    var ownTransforms = [].concat(transforms);\n\n    for (i = len; i >= 0; i -= 1) {\n      processedPos = this.searchProcessedElement(arr[i]);\n\n      if (!processedPos) {\n        arr[i]._shouldRender = shouldRender;\n      } else {\n        itemsData[i] = prevViewData[processedPos - 1];\n      }\n\n      if (arr[i].ty === \"fl\" || arr[i].ty === \"st\" || arr[i].ty === \"gf\" || arr[i].ty === \"gs\") {\n        if (!processedPos) {\n          itemsData[i] = this.createStyleElement(arr[i], ownTransforms);\n        } else {\n          itemsData[i].style.closed = false;\n        }\n\n        ownStyles.push(itemsData[i].style);\n      } else if (arr[i].ty === \"gr\") {\n        if (!processedPos) {\n          itemsData[i] = this.createGroupElement(arr[i]);\n        } else {\n          jLen = itemsData[i].it.length;\n\n          for (j = 0; j < jLen; j += 1) {\n            itemsData[i].prevViewData[j] = itemsData[i].it[j];\n          }\n        }\n\n        this.searchShapes(arr[i].it, itemsData[i].it, itemsData[i].prevViewData, shouldRender, ownTransforms);\n      } else if (arr[i].ty === \"tr\") {\n        if (!processedPos) {\n          currentTransform = this.createTransformElement(arr[i]);\n          itemsData[i] = currentTransform;\n        }\n\n        ownTransforms.push(itemsData[i]);\n        this.addTransformToStyleList(itemsData[i]);\n      } else if (arr[i].ty === \"sh\" || arr[i].ty === \"rc\" || arr[i].ty === \"el\" || arr[i].ty === \"sr\") {\n        if (!processedPos) {\n          itemsData[i] = this.createShapeElement(arr[i]);\n        }\n      } else if (arr[i].ty === \"tm\" || arr[i].ty === \"rd\" || arr[i].ty === \"pb\") {\n        if (!processedPos) {\n          modifier = ShapeModifiers.getModifier(arr[i].ty);\n          modifier.init(this || _global, arr[i]);\n          itemsData[i] = modifier;\n\n          (this || _global).shapeModifiers.push(modifier);\n        } else {\n          modifier = itemsData[i];\n          modifier.closed = false;\n        }\n\n        ownModifiers.push(modifier);\n      } else if (arr[i].ty === \"rp\") {\n        if (!processedPos) {\n          modifier = ShapeModifiers.getModifier(arr[i].ty);\n          itemsData[i] = modifier;\n          modifier.init(this || _global, arr, i, itemsData);\n\n          (this || _global).shapeModifiers.push(modifier);\n\n          shouldRender = false;\n        } else {\n          modifier = itemsData[i];\n          modifier.closed = true;\n        }\n\n        ownModifiers.push(modifier);\n      }\n\n      this.addProcessedElement(arr[i], i + 1);\n    }\n\n    this.removeTransformFromStyleList();\n    this.closeStyles(ownStyles);\n    len = ownModifiers.length;\n\n    for (i = 0; i < len; i += 1) {\n      ownModifiers[i].closed = true;\n    }\n  };\n\n  CVShapeElement.prototype.renderInnerContent = function () {\n    (this || _global).transformHelper.opacity = 1;\n    (this || _global).transformHelper._opMdf = false;\n    this.renderModifiers();\n\n    (this || _global).transformsManager.processSequences((this || _global)._isFirstFrame);\n\n    this.renderShape((this || _global).transformHelper, (this || _global).shapesData, (this || _global).itemsData, true);\n  };\n\n  CVShapeElement.prototype.renderShapeTransform = function (parentTransform, groupTransform) {\n    if (parentTransform._opMdf || groupTransform.op._mdf || (this || _global)._isFirstFrame) {\n      groupTransform.opacity = parentTransform.opacity;\n      groupTransform.opacity *= groupTransform.op.v;\n      groupTransform._opMdf = true;\n    }\n  };\n\n  CVShapeElement.prototype.drawLayer = function () {\n    var i;\n    var len = (this || _global).stylesList.length;\n    var j;\n    var jLen;\n    var k;\n    var kLen;\n    var elems;\n    var nodes;\n    var renderer = (this || _global).globalData.renderer;\n    var ctx = (this || _global).globalData.canvasContext;\n    var type;\n    var currentStyle;\n\n    for (i = 0; i < len; i += 1) {\n      currentStyle = (this || _global).stylesList[i];\n      type = currentStyle.type; // Skipping style when\n      // Stroke width equals 0\n      // style should not be rendered (extra unused repeaters)\n      // current opacity equals 0\n      // global opacity equals 0\n\n      if (!((type === \"st\" || type === \"gs\") && currentStyle.wi === 0 || !currentStyle.data._shouldRender || currentStyle.coOp === 0 || (this || _global).globalData.currentGlobalAlpha === 0)) {\n        renderer.save();\n        elems = currentStyle.elements;\n\n        if (type === \"st\" || type === \"gs\") {\n          ctx.strokeStyle = type === \"st\" ? currentStyle.co : currentStyle.grd;\n          ctx.lineWidth = currentStyle.wi;\n          ctx.lineCap = currentStyle.lc;\n          ctx.lineJoin = currentStyle.lj;\n          ctx.miterLimit = currentStyle.ml || 0;\n        } else {\n          ctx.fillStyle = type === \"fl\" ? currentStyle.co : currentStyle.grd;\n        }\n\n        renderer.ctxOpacity(currentStyle.coOp);\n\n        if (type !== \"st\" && type !== \"gs\") {\n          ctx.beginPath();\n        }\n\n        renderer.ctxTransform(currentStyle.preTransforms.finalTransform.props);\n        jLen = elems.length;\n\n        for (j = 0; j < jLen; j += 1) {\n          if (type === \"st\" || type === \"gs\") {\n            ctx.beginPath();\n\n            if (currentStyle.da) {\n              ctx.setLineDash(currentStyle.da);\n              ctx.lineDashOffset = currentStyle.do;\n            }\n          }\n\n          nodes = elems[j].trNodes;\n          kLen = nodes.length;\n\n          for (k = 0; k < kLen; k += 1) {\n            if (nodes[k].t === \"m\") {\n              ctx.moveTo(nodes[k].p[0], nodes[k].p[1]);\n            } else if (nodes[k].t === \"c\") {\n              ctx.bezierCurveTo(nodes[k].pts[0], nodes[k].pts[1], nodes[k].pts[2], nodes[k].pts[3], nodes[k].pts[4], nodes[k].pts[5]);\n            } else {\n              ctx.closePath();\n            }\n          }\n\n          if (type === \"st\" || type === \"gs\") {\n            ctx.stroke();\n\n            if (currentStyle.da) {\n              ctx.setLineDash((this || _global).dashResetter);\n            }\n          }\n        }\n\n        if (type !== \"st\" && type !== \"gs\") {\n          ctx.fill(currentStyle.r);\n        }\n\n        renderer.restore();\n      }\n    }\n  };\n\n  CVShapeElement.prototype.renderShape = function (parentTransform, items, data, isMain) {\n    var i;\n    var len = items.length - 1;\n    var groupTransform;\n    groupTransform = parentTransform;\n\n    for (i = len; i >= 0; i -= 1) {\n      if (items[i].ty === \"tr\") {\n        groupTransform = data[i].transform;\n        this.renderShapeTransform(parentTransform, groupTransform);\n      } else if (items[i].ty === \"sh\" || items[i].ty === \"el\" || items[i].ty === \"rc\" || items[i].ty === \"sr\") {\n        this.renderPath(items[i], data[i]);\n      } else if (items[i].ty === \"fl\") {\n        this.renderFill(items[i], data[i], groupTransform);\n      } else if (items[i].ty === \"st\") {\n        this.renderStroke(items[i], data[i], groupTransform);\n      } else if (items[i].ty === \"gf\" || items[i].ty === \"gs\") {\n        this.renderGradientFill(items[i], data[i], groupTransform);\n      } else if (items[i].ty === \"gr\") {\n        this.renderShape(groupTransform, items[i].it, data[i].it);\n      } else if (items[i].ty === \"tm\") {//\n      }\n    }\n\n    if (isMain) {\n      this.drawLayer();\n    }\n  };\n\n  CVShapeElement.prototype.renderStyledShape = function (styledShape, shape) {\n    if ((this || _global)._isFirstFrame || shape._mdf || styledShape.transforms._mdf) {\n      var shapeNodes = styledShape.trNodes;\n      var paths = shape.paths;\n      var i;\n      var len;\n      var j;\n      var jLen = paths._length;\n      shapeNodes.length = 0;\n      var groupTransformMat = styledShape.transforms.finalTransform;\n\n      for (j = 0; j < jLen; j += 1) {\n        var pathNodes = paths.shapes[j];\n\n        if (pathNodes && pathNodes.v) {\n          len = pathNodes._length;\n\n          for (i = 1; i < len; i += 1) {\n            if (i === 1) {\n              shapeNodes.push({\n                t: \"m\",\n                p: groupTransformMat.applyToPointArray(pathNodes.v[0][0], pathNodes.v[0][1], 0)\n              });\n            }\n\n            shapeNodes.push({\n              t: \"c\",\n              pts: groupTransformMat.applyToTriplePoints(pathNodes.o[i - 1], pathNodes.i[i], pathNodes.v[i])\n            });\n          }\n\n          if (len === 1) {\n            shapeNodes.push({\n              t: \"m\",\n              p: groupTransformMat.applyToPointArray(pathNodes.v[0][0], pathNodes.v[0][1], 0)\n            });\n          }\n\n          if (pathNodes.c && len) {\n            shapeNodes.push({\n              t: \"c\",\n              pts: groupTransformMat.applyToTriplePoints(pathNodes.o[i - 1], pathNodes.i[0], pathNodes.v[0])\n            });\n            shapeNodes.push({\n              t: \"z\"\n            });\n          }\n        }\n      }\n\n      styledShape.trNodes = shapeNodes;\n    }\n  };\n\n  CVShapeElement.prototype.renderPath = function (pathData, itemData) {\n    if (pathData.hd !== true && pathData._shouldRender) {\n      var i;\n      var len = itemData.styledShapes.length;\n\n      for (i = 0; i < len; i += 1) {\n        this.renderStyledShape(itemData.styledShapes[i], itemData.sh);\n      }\n    }\n  };\n\n  CVShapeElement.prototype.renderFill = function (styleData, itemData, groupTransform) {\n    var styleElem = itemData.style;\n\n    if (itemData.c._mdf || (this || _global)._isFirstFrame) {\n      styleElem.co = \"rgb(\" + bmFloor(itemData.c.v[0]) + \",\" + bmFloor(itemData.c.v[1]) + \",\" + bmFloor(itemData.c.v[2]) + \")\";\n    }\n\n    if (itemData.o._mdf || groupTransform._opMdf || (this || _global)._isFirstFrame) {\n      styleElem.coOp = itemData.o.v * groupTransform.opacity;\n    }\n  };\n\n  CVShapeElement.prototype.renderGradientFill = function (styleData, itemData, groupTransform) {\n    var styleElem = itemData.style;\n    var grd;\n\n    if (!styleElem.grd || itemData.g._mdf || itemData.s._mdf || itemData.e._mdf || styleData.t !== 1 && (itemData.h._mdf || itemData.a._mdf)) {\n      var ctx = (this || _global).globalData.canvasContext;\n      var pt1 = itemData.s.v;\n      var pt2 = itemData.e.v;\n\n      if (styleData.t === 1) {\n        grd = ctx.createLinearGradient(pt1[0], pt1[1], pt2[0], pt2[1]);\n      } else {\n        var rad = Math.sqrt(Math.pow(pt1[0] - pt2[0], 2) + Math.pow(pt1[1] - pt2[1], 2));\n        var ang = Math.atan2(pt2[1] - pt1[1], pt2[0] - pt1[0]);\n        var percent = itemData.h.v;\n\n        if (percent >= 1) {\n          percent = 0.99;\n        } else if (percent <= -1) {\n          percent = -0.99;\n        }\n\n        var dist = rad * percent;\n        var x = Math.cos(ang + itemData.a.v) * dist + pt1[0];\n        var y = Math.sin(ang + itemData.a.v) * dist + pt1[1];\n        grd = ctx.createRadialGradient(x, y, 0, pt1[0], pt1[1], rad);\n      }\n\n      var i;\n      var len = styleData.g.p;\n      var cValues = itemData.g.c;\n      var opacity = 1;\n\n      for (i = 0; i < len; i += 1) {\n        if (itemData.g._hasOpacity && itemData.g._collapsable) {\n          opacity = itemData.g.o[i * 2 + 1];\n        }\n\n        grd.addColorStop(cValues[i * 4] / 100, \"rgba(\" + cValues[i * 4 + 1] + \",\" + cValues[i * 4 + 2] + \",\" + cValues[i * 4 + 3] + \",\" + opacity + \")\");\n      }\n\n      styleElem.grd = grd;\n    }\n\n    styleElem.coOp = itemData.o.v * groupTransform.opacity;\n  };\n\n  CVShapeElement.prototype.renderStroke = function (styleData, itemData, groupTransform) {\n    var styleElem = itemData.style;\n    var d = itemData.d;\n\n    if (d && (d._mdf || (this || _global)._isFirstFrame)) {\n      styleElem.da = d.dashArray;\n      styleElem.do = d.dashoffset[0];\n    }\n\n    if (itemData.c._mdf || (this || _global)._isFirstFrame) {\n      styleElem.co = \"rgb(\" + bmFloor(itemData.c.v[0]) + \",\" + bmFloor(itemData.c.v[1]) + \",\" + bmFloor(itemData.c.v[2]) + \")\";\n    }\n\n    if (itemData.o._mdf || groupTransform._opMdf || (this || _global)._isFirstFrame) {\n      styleElem.coOp = itemData.o.v * groupTransform.opacity;\n    }\n\n    if (itemData.w._mdf || (this || _global)._isFirstFrame) {\n      styleElem.wi = itemData.w.v;\n    }\n  };\n\n  CVShapeElement.prototype.destroy = function () {\n    (this || _global).shapesData = null;\n    (this || _global).globalData = null;\n    (this || _global).canvasContext = null;\n    (this || _global).stylesList.length = 0;\n    (this || _global).itemsData.length = 0;\n  };\n  /* global extendPrototype, BaseElement, TransformElement, CVBaseElement, HierarchyElement, FrameElement, RenderableElement,\r\n  SVGShapeElement, IImageElement */\n\n\n  function CVSolidElement(data, globalData, comp) {\n    this.initElement(data, globalData, comp);\n  }\n\n  extendPrototype([BaseElement, TransformElement, CVBaseElement, HierarchyElement, FrameElement, RenderableElement], CVSolidElement);\n  CVSolidElement.prototype.initElement = SVGShapeElement.prototype.initElement;\n  CVSolidElement.prototype.prepareFrame = IImageElement.prototype.prepareFrame;\n\n  CVSolidElement.prototype.renderInnerContent = function () {\n    var ctx = (this || _global).canvasContext;\n    ctx.fillStyle = (this || _global).data.sc;\n    ctx.fillRect(0, 0, (this || _global).data.sw, (this || _global).data.sh); //\n  };\n  /* global extendPrototype, BaseElement, TransformElement, CVBaseElement, HierarchyElement, FrameElement,\r\n  RenderableElement, ITextElement, createTag, createSizedArray */\n\n\n  function CVTextElement(data, globalData, comp) {\n    (this || _global).textSpans = [];\n    (this || _global).yOffset = 0;\n    (this || _global).fillColorAnim = false;\n    (this || _global).strokeColorAnim = false;\n    (this || _global).strokeWidthAnim = false;\n    (this || _global).stroke = false;\n    (this || _global).fill = false;\n    (this || _global).justifyOffset = 0;\n    (this || _global).currentRender = null;\n    (this || _global).renderType = \"canvas\";\n    (this || _global).values = {\n      fill: \"rgba(0,0,0,0)\",\n      stroke: \"rgba(0,0,0,0)\",\n      sWidth: 0,\n      fValue: \"\"\n    };\n    this.initElement(data, globalData, comp);\n  }\n\n  extendPrototype([BaseElement, TransformElement, CVBaseElement, HierarchyElement, FrameElement, RenderableElement, ITextElement], CVTextElement);\n  CVTextElement.prototype.tHelper = createTag(\"canvas\").getContext(\"2d\");\n\n  CVTextElement.prototype.buildNewText = function () {\n    var documentData = (this || _global).textProperty.currentData;\n    (this || _global).renderedLetters = createSizedArray(documentData.l ? documentData.l.length : 0);\n    var hasFill = false;\n\n    if (documentData.fc) {\n      hasFill = true;\n      (this || _global).values.fill = this.buildColor(documentData.fc);\n    } else {\n      (this || _global).values.fill = \"rgba(0,0,0,0)\";\n    }\n\n    (this || _global).fill = hasFill;\n    var hasStroke = false;\n\n    if (documentData.sc) {\n      hasStroke = true;\n      (this || _global).values.stroke = this.buildColor(documentData.sc);\n      (this || _global).values.sWidth = documentData.sw;\n    }\n\n    var fontData = (this || _global).globalData.fontManager.getFontByName(documentData.f);\n\n    var i;\n    var len;\n    var letters = documentData.l;\n    var matrixHelper = (this || _global).mHelper;\n    (this || _global).stroke = hasStroke;\n    (this || _global).values.fValue = documentData.finalSize + \"px \" + (this || _global).globalData.fontManager.getFontByName(documentData.f).fFamily;\n    len = documentData.finalText.length; // this.tHelper.font = this.values.fValue;\n\n    var charData;\n    var shapeData;\n    var k;\n    var kLen;\n    var shapes;\n    var j;\n    var jLen;\n    var pathNodes;\n    var commands;\n    var pathArr;\n    var singleShape = (this || _global).data.singleShape;\n    var trackingOffset = documentData.tr * 0.001 * documentData.finalSize;\n    var xPos = 0;\n    var yPos = 0;\n    var firstLine = true;\n    var cnt = 0;\n\n    for (i = 0; i < len; i += 1) {\n      charData = (this || _global).globalData.fontManager.getCharData(documentData.finalText[i], fontData.fStyle, (this || _global).globalData.fontManager.getFontByName(documentData.f).fFamily);\n      shapeData = charData && charData.data || {};\n      matrixHelper.reset();\n\n      if (singleShape && letters[i].n) {\n        xPos = -trackingOffset;\n        yPos += documentData.yOffset;\n        yPos += firstLine ? 1 : 0;\n        firstLine = false;\n      }\n\n      shapes = shapeData.shapes ? shapeData.shapes[0].it : [];\n      jLen = shapes.length;\n      matrixHelper.scale(documentData.finalSize / 100, documentData.finalSize / 100);\n\n      if (singleShape) {\n        this.applyTextPropertiesToMatrix(documentData, matrixHelper, letters[i].line, xPos, yPos);\n      }\n\n      commands = createSizedArray(jLen);\n\n      for (j = 0; j < jLen; j += 1) {\n        kLen = shapes[j].ks.k.i.length;\n        pathNodes = shapes[j].ks.k;\n        pathArr = [];\n\n        for (k = 1; k < kLen; k += 1) {\n          if (k === 1) {\n            pathArr.push(matrixHelper.applyToX(pathNodes.v[0][0], pathNodes.v[0][1], 0), matrixHelper.applyToY(pathNodes.v[0][0], pathNodes.v[0][1], 0));\n          }\n\n          pathArr.push(matrixHelper.applyToX(pathNodes.o[k - 1][0], pathNodes.o[k - 1][1], 0), matrixHelper.applyToY(pathNodes.o[k - 1][0], pathNodes.o[k - 1][1], 0), matrixHelper.applyToX(pathNodes.i[k][0], pathNodes.i[k][1], 0), matrixHelper.applyToY(pathNodes.i[k][0], pathNodes.i[k][1], 0), matrixHelper.applyToX(pathNodes.v[k][0], pathNodes.v[k][1], 0), matrixHelper.applyToY(pathNodes.v[k][0], pathNodes.v[k][1], 0));\n        }\n\n        pathArr.push(matrixHelper.applyToX(pathNodes.o[k - 1][0], pathNodes.o[k - 1][1], 0), matrixHelper.applyToY(pathNodes.o[k - 1][0], pathNodes.o[k - 1][1], 0), matrixHelper.applyToX(pathNodes.i[0][0], pathNodes.i[0][1], 0), matrixHelper.applyToY(pathNodes.i[0][0], pathNodes.i[0][1], 0), matrixHelper.applyToX(pathNodes.v[0][0], pathNodes.v[0][1], 0), matrixHelper.applyToY(pathNodes.v[0][0], pathNodes.v[0][1], 0));\n        commands[j] = pathArr;\n      }\n\n      if (singleShape) {\n        xPos += letters[i].l;\n        xPos += trackingOffset;\n      }\n\n      if ((this || _global).textSpans[cnt]) {\n        (this || _global).textSpans[cnt].elem = commands;\n      } else {\n        (this || _global).textSpans[cnt] = {\n          elem: commands\n        };\n      }\n\n      cnt += 1;\n    }\n  };\n\n  CVTextElement.prototype.renderInnerContent = function () {\n    var ctx = (this || _global).canvasContext;\n    ctx.font = (this || _global).values.fValue;\n    ctx.lineCap = \"butt\";\n    ctx.lineJoin = \"miter\";\n    ctx.miterLimit = 4;\n\n    if (!(this || _global).data.singleShape) {\n      (this || _global).textAnimator.getMeasures((this || _global).textProperty.currentData, (this || _global).lettersChangedFlag);\n    }\n\n    var i;\n    var len;\n    var j;\n    var jLen;\n    var k;\n    var kLen;\n    var renderedLetters = (this || _global).textAnimator.renderedLetters;\n    var letters = (this || _global).textProperty.currentData.l;\n    len = letters.length;\n    var renderedLetter;\n    var lastFill = null;\n    var lastStroke = null;\n    var lastStrokeW = null;\n    var commands;\n    var pathArr;\n\n    for (i = 0; i < len; i += 1) {\n      if (!letters[i].n) {\n        renderedLetter = renderedLetters[i];\n\n        if (renderedLetter) {\n          (this || _global).globalData.renderer.save();\n\n          (this || _global).globalData.renderer.ctxTransform(renderedLetter.p);\n\n          (this || _global).globalData.renderer.ctxOpacity(renderedLetter.o);\n        }\n\n        if ((this || _global).fill) {\n          if (renderedLetter && renderedLetter.fc) {\n            if (lastFill !== renderedLetter.fc) {\n              lastFill = renderedLetter.fc;\n              ctx.fillStyle = renderedLetter.fc;\n            }\n          } else if (lastFill !== (this || _global).values.fill) {\n            lastFill = (this || _global).values.fill;\n            ctx.fillStyle = (this || _global).values.fill;\n          }\n\n          commands = (this || _global).textSpans[i].elem;\n          jLen = commands.length;\n\n          (this || _global).globalData.canvasContext.beginPath();\n\n          for (j = 0; j < jLen; j += 1) {\n            pathArr = commands[j];\n            kLen = pathArr.length;\n\n            (this || _global).globalData.canvasContext.moveTo(pathArr[0], pathArr[1]);\n\n            for (k = 2; k < kLen; k += 6) {\n              (this || _global).globalData.canvasContext.bezierCurveTo(pathArr[k], pathArr[k + 1], pathArr[k + 2], pathArr[k + 3], pathArr[k + 4], pathArr[k + 5]);\n            }\n          }\n\n          (this || _global).globalData.canvasContext.closePath();\n\n          (this || _global).globalData.canvasContext.fill(); /// ctx.fillText(this.textSpans[i].val,0,0);\n\n        }\n\n        if ((this || _global).stroke) {\n          if (renderedLetter && renderedLetter.sw) {\n            if (lastStrokeW !== renderedLetter.sw) {\n              lastStrokeW = renderedLetter.sw;\n              ctx.lineWidth = renderedLetter.sw;\n            }\n          } else if (lastStrokeW !== (this || _global).values.sWidth) {\n            lastStrokeW = (this || _global).values.sWidth;\n            ctx.lineWidth = (this || _global).values.sWidth;\n          }\n\n          if (renderedLetter && renderedLetter.sc) {\n            if (lastStroke !== renderedLetter.sc) {\n              lastStroke = renderedLetter.sc;\n              ctx.strokeStyle = renderedLetter.sc;\n            }\n          } else if (lastStroke !== (this || _global).values.stroke) {\n            lastStroke = (this || _global).values.stroke;\n            ctx.strokeStyle = (this || _global).values.stroke;\n          }\n\n          commands = (this || _global).textSpans[i].elem;\n          jLen = commands.length;\n\n          (this || _global).globalData.canvasContext.beginPath();\n\n          for (j = 0; j < jLen; j += 1) {\n            pathArr = commands[j];\n            kLen = pathArr.length;\n\n            (this || _global).globalData.canvasContext.moveTo(pathArr[0], pathArr[1]);\n\n            for (k = 2; k < kLen; k += 6) {\n              (this || _global).globalData.canvasContext.bezierCurveTo(pathArr[k], pathArr[k + 1], pathArr[k + 2], pathArr[k + 3], pathArr[k + 4], pathArr[k + 5]);\n            }\n          }\n\n          (this || _global).globalData.canvasContext.closePath();\n\n          (this || _global).globalData.canvasContext.stroke(); /// ctx.strokeText(letters[i].val,0,0);\n\n        }\n\n        if (renderedLetter) {\n          (this || _global).globalData.renderer.restore();\n        }\n      }\n    }\n  };\n\n  function CVEffects() {}\n\n  CVEffects.prototype.renderFrame = function () {};\n  /* global createTag, createNS, styleDiv, CVEffects, MaskElement, SVGBaseElement, HybridRenderer */\n\n\n  function HBaseElement() {}\n\n  HBaseElement.prototype = {\n    checkBlendMode: function () {},\n    initRendererElement: function () {\n      (this || _global).baseElement = createTag((this || _global).data.tg || \"div\");\n\n      if ((this || _global).data.hasMask) {\n        (this || _global).svgElement = createNS(\"svg\");\n        (this || _global).layerElement = createNS(\"g\");\n        (this || _global).maskedElement = (this || _global).layerElement;\n\n        (this || _global).svgElement.appendChild((this || _global).layerElement);\n\n        (this || _global).baseElement.appendChild((this || _global).svgElement);\n      } else {\n        (this || _global).layerElement = (this || _global).baseElement;\n      }\n\n      styleDiv((this || _global).baseElement);\n    },\n    createContainerElements: function () {\n      (this || _global).renderableEffectsManager = new CVEffects(this || _global);\n      (this || _global).transformedElement = (this || _global).baseElement;\n      (this || _global).maskedElement = (this || _global).layerElement;\n\n      if ((this || _global).data.ln) {\n        (this || _global).layerElement.setAttribute(\"id\", (this || _global).data.ln);\n      }\n\n      if ((this || _global).data.cl) {\n        (this || _global).layerElement.setAttribute(\"class\", (this || _global).data.cl);\n      }\n\n      if ((this || _global).data.bm !== 0) {\n        this.setBlendMode();\n      }\n    },\n    renderElement: function () {\n      var transformedElementStyle = (this || _global).transformedElement ? (this || _global).transformedElement.style : {};\n\n      if ((this || _global).finalTransform._matMdf) {\n        var matrixValue = (this || _global).finalTransform.mat.toCSS();\n\n        transformedElementStyle.transform = matrixValue;\n        transformedElementStyle.webkitTransform = matrixValue;\n      }\n\n      if ((this || _global).finalTransform._opMdf) {\n        transformedElementStyle.opacity = (this || _global).finalTransform.mProp.o.v;\n      }\n    },\n    renderFrame: function () {\n      // If it is exported as hidden (data.hd === true) no need to render\n      // If it is not visible no need to render\n      if ((this || _global).data.hd || (this || _global).hidden) {\n        return;\n      }\n\n      this.renderTransform();\n      this.renderRenderable();\n      this.renderElement();\n      this.renderInnerContent();\n\n      if ((this || _global)._isFirstFrame) {\n        (this || _global)._isFirstFrame = false;\n      }\n    },\n    destroy: function () {\n      (this || _global).layerElement = null;\n      (this || _global).transformedElement = null;\n\n      if ((this || _global).matteElement) {\n        (this || _global).matteElement = null;\n      }\n\n      if ((this || _global).maskManager) {\n        (this || _global).maskManager.destroy();\n\n        (this || _global).maskManager = null;\n      }\n    },\n    createRenderableComponents: function () {\n      (this || _global).maskManager = new MaskElement((this || _global).data, this || _global, (this || _global).globalData);\n    },\n    addEffects: function () {},\n    setMatte: function () {}\n  };\n  HBaseElement.prototype.getBaseElement = SVGBaseElement.prototype.getBaseElement;\n  HBaseElement.prototype.destroyBaseElement = HBaseElement.prototype.destroy;\n  HBaseElement.prototype.buildElementParenting = HybridRenderer.prototype.buildElementParenting;\n  /* global extendPrototype, BaseElement, TransformElement, HBaseElement, HierarchyElement, FrameElement,\r\n  RenderableDOMElement, createNS, createTag */\n\n  function HSolidElement(data, globalData, comp) {\n    this.initElement(data, globalData, comp);\n  }\n\n  extendPrototype([BaseElement, TransformElement, HBaseElement, HierarchyElement, FrameElement, RenderableDOMElement], HSolidElement);\n\n  HSolidElement.prototype.createContent = function () {\n    var rect;\n\n    if ((this || _global).data.hasMask) {\n      rect = createNS(\"rect\");\n      rect.setAttribute(\"width\", (this || _global).data.sw);\n      rect.setAttribute(\"height\", (this || _global).data.sh);\n      rect.setAttribute(\"fill\", (this || _global).data.sc);\n\n      (this || _global).svgElement.setAttribute(\"width\", (this || _global).data.sw);\n\n      (this || _global).svgElement.setAttribute(\"height\", (this || _global).data.sh);\n    } else {\n      rect = createTag(\"div\");\n      rect.style.width = (this || _global).data.sw + \"px\";\n      rect.style.height = (this || _global).data.sh + \"px\";\n      rect.style.backgroundColor = (this || _global).data.sc;\n    }\n\n    (this || _global).layerElement.appendChild(rect);\n  };\n  /* global createSizedArray, PropertyFactory, extendPrototype, HybridRenderer, ICompElement, HBaseElement */\n\n\n  function HCompElement(data, globalData, comp) {\n    (this || _global).layers = data.layers;\n    (this || _global).supports3d = !data.hasMask;\n    (this || _global).completeLayers = false;\n    (this || _global).pendingElements = [];\n    (this || _global).elements = (this || _global).layers ? createSizedArray((this || _global).layers.length) : [];\n    this.initElement(data, globalData, comp);\n    (this || _global).tm = data.tm ? PropertyFactory.getProp(this || _global, data.tm, 0, globalData.frameRate, this || _global) : {\n      _placeholder: true\n    };\n  }\n\n  extendPrototype([HybridRenderer, ICompElement, HBaseElement], HCompElement);\n  HCompElement.prototype._createBaseContainerElements = HCompElement.prototype.createContainerElements;\n\n  HCompElement.prototype.createContainerElements = function () {\n    this._createBaseContainerElements(); // divElement.style.clip = 'rect(0px, '+this.data.w+'px, '+this.data.h+'px, 0px)';\n\n\n    if ((this || _global).data.hasMask) {\n      (this || _global).svgElement.setAttribute(\"width\", (this || _global).data.w);\n\n      (this || _global).svgElement.setAttribute(\"height\", (this || _global).data.h);\n\n      (this || _global).transformedElement = (this || _global).baseElement;\n    } else {\n      (this || _global).transformedElement = (this || _global).layerElement;\n    }\n  };\n\n  HCompElement.prototype.addTo3dContainer = function (elem, pos) {\n    var j = 0;\n    var nextElement;\n\n    while (j < pos) {\n      if ((this || _global).elements[j] && (this || _global).elements[j].getBaseElement) {\n        nextElement = (this || _global).elements[j].getBaseElement();\n      }\n\n      j += 1;\n    }\n\n    if (nextElement) {\n      (this || _global).layerElement.insertBefore(elem, nextElement);\n    } else {\n      (this || _global).layerElement.appendChild(elem);\n    }\n  };\n  /* global createNS, extendPrototype, BaseElement, TransformElement, HSolidElement, SVGShapeElement, HBaseElement,\r\n  HierarchyElement, FrameElement, RenderableElement, createNS, bmMin, bmSqrt, bmMin, bmMax, bmPow */\n\n\n  function HShapeElement(data, globalData, comp) {\n    // List of drawable elements\n    (this || _global).shapes = []; // Full shape data\n\n    (this || _global).shapesData = data.shapes; // List of styles that will be applied to shapes\n\n    (this || _global).stylesList = []; // List of modifiers that will be applied to shapes\n\n    (this || _global).shapeModifiers = []; // List of items in shape tree\n\n    (this || _global).itemsData = []; // List of items in previous shape tree\n\n    (this || _global).processedElements = []; // List of animated components\n\n    (this || _global).animatedContents = [];\n    (this || _global).shapesContainer = createNS(\"g\");\n    this.initElement(data, globalData, comp); // Moving any property that doesn't get too much access after initialization because of v8 way of handling more than 10 properties.\n    // List of elements that have been created\n\n    (this || _global).prevViewData = [];\n    (this || _global).currentBBox = {\n      x: 999999,\n      y: -999999,\n      h: 0,\n      w: 0\n    };\n  }\n\n  extendPrototype([BaseElement, TransformElement, HSolidElement, SVGShapeElement, HBaseElement, HierarchyElement, FrameElement, RenderableElement], HShapeElement);\n  HShapeElement.prototype._renderShapeFrame = HShapeElement.prototype.renderInnerContent;\n\n  HShapeElement.prototype.createContent = function () {\n    var cont;\n    (this || _global).baseElement.style.fontSize = 0;\n\n    if ((this || _global).data.hasMask) {\n      (this || _global).layerElement.appendChild((this || _global).shapesContainer);\n\n      cont = (this || _global).svgElement;\n    } else {\n      cont = createNS(\"svg\");\n      var size = (this || _global).comp.data ? (this || _global).comp.data : (this || _global).globalData.compSize;\n      cont.setAttribute(\"width\", size.w);\n      cont.setAttribute(\"height\", size.h);\n      cont.appendChild((this || _global).shapesContainer);\n\n      (this || _global).layerElement.appendChild(cont);\n    }\n\n    this.searchShapes((this || _global).shapesData, (this || _global).itemsData, (this || _global).prevViewData, (this || _global).shapesContainer, 0, [], true);\n    this.filterUniqueShapes();\n    (this || _global).shapeCont = cont;\n  };\n\n  HShapeElement.prototype.getTransformedPoint = function (transformers, point) {\n    var i;\n    var len = transformers.length;\n\n    for (i = 0; i < len; i += 1) {\n      point = transformers[i].mProps.v.applyToPointArray(point[0], point[1], 0);\n    }\n\n    return point;\n  };\n\n  HShapeElement.prototype.calculateShapeBoundingBox = function (item, boundingBox) {\n    var shape = item.sh.v;\n    var transformers = item.transformers;\n    var i;\n    var len = shape._length;\n    var vPoint;\n    var oPoint;\n    var nextIPoint;\n    var nextVPoint;\n\n    if (len <= 1) {\n      return;\n    }\n\n    for (i = 0; i < len - 1; i += 1) {\n      vPoint = this.getTransformedPoint(transformers, shape.v[i]);\n      oPoint = this.getTransformedPoint(transformers, shape.o[i]);\n      nextIPoint = this.getTransformedPoint(transformers, shape.i[i + 1]);\n      nextVPoint = this.getTransformedPoint(transformers, shape.v[i + 1]);\n      this.checkBounds(vPoint, oPoint, nextIPoint, nextVPoint, boundingBox);\n    }\n\n    if (shape.c) {\n      vPoint = this.getTransformedPoint(transformers, shape.v[i]);\n      oPoint = this.getTransformedPoint(transformers, shape.o[i]);\n      nextIPoint = this.getTransformedPoint(transformers, shape.i[0]);\n      nextVPoint = this.getTransformedPoint(transformers, shape.v[0]);\n      this.checkBounds(vPoint, oPoint, nextIPoint, nextVPoint, boundingBox);\n    }\n  };\n\n  HShapeElement.prototype.checkBounds = function (vPoint, oPoint, nextIPoint, nextVPoint, boundingBox) {\n    this.getBoundsOfCurve(vPoint, oPoint, nextIPoint, nextVPoint);\n    var bounds = (this || _global).shapeBoundingBox;\n    boundingBox.x = bmMin(bounds.left, boundingBox.x);\n    boundingBox.xMax = bmMax(bounds.right, boundingBox.xMax);\n    boundingBox.y = bmMin(bounds.top, boundingBox.y);\n    boundingBox.yMax = bmMax(bounds.bottom, boundingBox.yMax);\n  };\n\n  HShapeElement.prototype.shapeBoundingBox = {\n    left: 0,\n    right: 0,\n    top: 0,\n    bottom: 0\n  };\n  HShapeElement.prototype.tempBoundingBox = {\n    x: 0,\n    xMax: 0,\n    y: 0,\n    yMax: 0,\n    width: 0,\n    height: 0\n  };\n\n  HShapeElement.prototype.getBoundsOfCurve = function (p0, p1, p2, p3) {\n    var bounds = [[p0[0], p3[0]], [p0[1], p3[1]]];\n\n    for (var a, b, c, t, b2ac, t1, t2, i = 0; i < 2; ++i) {\n      // eslint-disable-line no-plusplus\n      b = 6 * p0[i] - 12 * p1[i] + 6 * p2[i];\n      a = -3 * p0[i] + 9 * p1[i] - 9 * p2[i] + 3 * p3[i];\n      c = 3 * p1[i] - 3 * p0[i];\n      b |= 0; // eslint-disable-line no-bitwise\n\n      a |= 0; // eslint-disable-line no-bitwise\n\n      c |= 0; // eslint-disable-line no-bitwise\n\n      if (a === 0 && b === 0) {//\n      } else if (a === 0) {\n        t = -c / b;\n\n        if (t > 0 && t < 1) {\n          bounds[i].push(this.calculateF(t, p0, p1, p2, p3, i));\n        }\n      } else {\n        b2ac = b * b - 4 * c * a;\n\n        if (b2ac >= 0) {\n          t1 = (-b + bmSqrt(b2ac)) / (2 * a);\n          if (t1 > 0 && t1 < 1) bounds[i].push(this.calculateF(t1, p0, p1, p2, p3, i));\n          t2 = (-b - bmSqrt(b2ac)) / (2 * a);\n          if (t2 > 0 && t2 < 1) bounds[i].push(this.calculateF(t2, p0, p1, p2, p3, i));\n        }\n      }\n    }\n\n    (this || _global).shapeBoundingBox.left = bmMin.apply(null, bounds[0]);\n    (this || _global).shapeBoundingBox.top = bmMin.apply(null, bounds[1]);\n    (this || _global).shapeBoundingBox.right = bmMax.apply(null, bounds[0]);\n    (this || _global).shapeBoundingBox.bottom = bmMax.apply(null, bounds[1]);\n  };\n\n  HShapeElement.prototype.calculateF = function (t, p0, p1, p2, p3, i) {\n    return bmPow(1 - t, 3) * p0[i] + 3 * bmPow(1 - t, 2) * t * p1[i] + 3 * (1 - t) * bmPow(t, 2) * p2[i] + bmPow(t, 3) * p3[i];\n  };\n\n  HShapeElement.prototype.calculateBoundingBox = function (itemsData, boundingBox) {\n    var i;\n    var len = itemsData.length;\n\n    for (i = 0; i < len; i += 1) {\n      if (itemsData[i] && itemsData[i].sh) {\n        this.calculateShapeBoundingBox(itemsData[i], boundingBox);\n      } else if (itemsData[i] && itemsData[i].it) {\n        this.calculateBoundingBox(itemsData[i].it, boundingBox);\n      }\n    }\n  };\n\n  HShapeElement.prototype.currentBoxContains = function (box) {\n    return (this || _global).currentBBox.x <= box.x && (this || _global).currentBBox.y <= box.y && (this || _global).currentBBox.width + (this || _global).currentBBox.x >= box.x + box.width && (this || _global).currentBBox.height + (this || _global).currentBBox.y >= box.y + box.height;\n  };\n\n  HShapeElement.prototype.renderInnerContent = function () {\n    this._renderShapeFrame();\n\n    if (!(this || _global).hidden && ((this || _global)._isFirstFrame || (this || _global)._mdf)) {\n      var tempBoundingBox = (this || _global).tempBoundingBox;\n      var max = 999999;\n      tempBoundingBox.x = max;\n      tempBoundingBox.xMax = -max;\n      tempBoundingBox.y = max;\n      tempBoundingBox.yMax = -max;\n      this.calculateBoundingBox((this || _global).itemsData, tempBoundingBox);\n      tempBoundingBox.width = tempBoundingBox.xMax < tempBoundingBox.x ? 0 : tempBoundingBox.xMax - tempBoundingBox.x;\n      tempBoundingBox.height = tempBoundingBox.yMax < tempBoundingBox.y ? 0 : tempBoundingBox.yMax - tempBoundingBox.y; // var tempBoundingBox = this.shapeCont.getBBox();\n\n      if (this.currentBoxContains(tempBoundingBox)) {\n        return;\n      }\n\n      var changed = false;\n\n      if ((this || _global).currentBBox.w !== tempBoundingBox.width) {\n        (this || _global).currentBBox.w = tempBoundingBox.width;\n\n        (this || _global).shapeCont.setAttribute(\"width\", tempBoundingBox.width);\n\n        changed = true;\n      }\n\n      if ((this || _global).currentBBox.h !== tempBoundingBox.height) {\n        (this || _global).currentBBox.h = tempBoundingBox.height;\n\n        (this || _global).shapeCont.setAttribute(\"height\", tempBoundingBox.height);\n\n        changed = true;\n      }\n\n      if (changed || (this || _global).currentBBox.x !== tempBoundingBox.x || (this || _global).currentBBox.y !== tempBoundingBox.y) {\n        (this || _global).currentBBox.w = tempBoundingBox.width;\n        (this || _global).currentBBox.h = tempBoundingBox.height;\n        (this || _global).currentBBox.x = tempBoundingBox.x;\n        (this || _global).currentBBox.y = tempBoundingBox.y;\n\n        (this || _global).shapeCont.setAttribute(\"viewBox\", (this || _global).currentBBox.x + \" \" + (this || _global).currentBBox.y + \" \" + (this || _global).currentBBox.w + \" \" + (this || _global).currentBBox.h);\n\n        var shapeStyle = (this || _global).shapeCont.style;\n        var shapeTransform = \"translate(\" + (this || _global).currentBBox.x + \"px,\" + (this || _global).currentBBox.y + \"px)\";\n        shapeStyle.transform = shapeTransform;\n        shapeStyle.webkitTransform = shapeTransform;\n      }\n    }\n  };\n  /* global extendPrototype, BaseElement, TransformElement, HBaseElement, HierarchyElement, FrameElement,\r\n  RenderableDOMElement, ITextElement, createSizedArray, createTag, styleDiv, createNS */\n\n\n  function HTextElement(data, globalData, comp) {\n    (this || _global).textSpans = [];\n    (this || _global).textPaths = [];\n    (this || _global).currentBBox = {\n      x: 999999,\n      y: -999999,\n      h: 0,\n      w: 0\n    };\n    (this || _global).renderType = \"svg\";\n    (this || _global).isMasked = false;\n    this.initElement(data, globalData, comp);\n  }\n\n  extendPrototype([BaseElement, TransformElement, HBaseElement, HierarchyElement, FrameElement, RenderableDOMElement, ITextElement], HTextElement);\n\n  HTextElement.prototype.createContent = function () {\n    (this || _global).isMasked = this.checkMasks();\n\n    if ((this || _global).isMasked) {\n      (this || _global).renderType = \"svg\";\n      (this || _global).compW = (this || _global).comp.data.w;\n      (this || _global).compH = (this || _global).comp.data.h;\n\n      (this || _global).svgElement.setAttribute(\"width\", (this || _global).compW);\n\n      (this || _global).svgElement.setAttribute(\"height\", (this || _global).compH);\n\n      var g = createNS(\"g\");\n\n      (this || _global).maskedElement.appendChild(g);\n\n      (this || _global).innerElem = g;\n    } else {\n      (this || _global).renderType = \"html\";\n      (this || _global).innerElem = (this || _global).layerElement;\n    }\n\n    this.checkParenting();\n  };\n\n  HTextElement.prototype.buildNewText = function () {\n    var documentData = (this || _global).textProperty.currentData;\n    (this || _global).renderedLetters = createSizedArray(documentData.l ? documentData.l.length : 0);\n    var innerElemStyle = (this || _global).innerElem.style;\n    var textColor = documentData.fc ? this.buildColor(documentData.fc) : \"rgba(0,0,0,0)\";\n    innerElemStyle.fill = textColor;\n    innerElemStyle.color = textColor;\n\n    if (documentData.sc) {\n      innerElemStyle.stroke = this.buildColor(documentData.sc);\n      innerElemStyle.strokeWidth = documentData.sw + \"px\";\n    }\n\n    var fontData = (this || _global).globalData.fontManager.getFontByName(documentData.f);\n\n    if (!(this || _global).globalData.fontManager.chars) {\n      innerElemStyle.fontSize = documentData.finalSize + \"px\";\n      innerElemStyle.lineHeight = documentData.finalSize + \"px\";\n\n      if (fontData.fClass) {\n        (this || _global).innerElem.className = fontData.fClass;\n      } else {\n        innerElemStyle.fontFamily = fontData.fFamily;\n        var fWeight = documentData.fWeight;\n        var fStyle = documentData.fStyle;\n        innerElemStyle.fontStyle = fStyle;\n        innerElemStyle.fontWeight = fWeight;\n      }\n    }\n\n    var i;\n    var len;\n    var letters = documentData.l;\n    len = letters.length;\n    var tSpan;\n    var tParent;\n    var tCont;\n    var matrixHelper = (this || _global).mHelper;\n    var shapes;\n    var shapeStr = \"\";\n    var cnt = 0;\n\n    for (i = 0; i < len; i += 1) {\n      if ((this || _global).globalData.fontManager.chars) {\n        if (!(this || _global).textPaths[cnt]) {\n          tSpan = createNS(\"path\");\n          tSpan.setAttribute(\"stroke-linecap\", \"butt\");\n          tSpan.setAttribute(\"stroke-linejoin\", \"round\");\n          tSpan.setAttribute(\"stroke-miterlimit\", \"4\");\n        } else {\n          tSpan = (this || _global).textPaths[cnt];\n        }\n\n        if (!(this || _global).isMasked) {\n          if ((this || _global).textSpans[cnt]) {\n            tParent = (this || _global).textSpans[cnt];\n            tCont = tParent.children[0];\n          } else {\n            tParent = createTag(\"div\");\n            tParent.style.lineHeight = 0;\n            tCont = createNS(\"svg\");\n            tCont.appendChild(tSpan);\n            styleDiv(tParent);\n          }\n        }\n      } else if (!(this || _global).isMasked) {\n        if ((this || _global).textSpans[cnt]) {\n          tParent = (this || _global).textSpans[cnt];\n          tSpan = (this || _global).textPaths[cnt];\n        } else {\n          tParent = createTag(\"span\");\n          styleDiv(tParent);\n          tSpan = createTag(\"span\");\n          styleDiv(tSpan);\n          tParent.appendChild(tSpan);\n        }\n      } else {\n        tSpan = (this || _global).textPaths[cnt] ? (this || _global).textPaths[cnt] : createNS(\"text\");\n      } // tSpan.setAttribute('visibility', 'hidden');\n\n\n      if ((this || _global).globalData.fontManager.chars) {\n        var charData = (this || _global).globalData.fontManager.getCharData(documentData.finalText[i], fontData.fStyle, (this || _global).globalData.fontManager.getFontByName(documentData.f).fFamily);\n\n        var shapeData;\n\n        if (charData) {\n          shapeData = charData.data;\n        } else {\n          shapeData = null;\n        }\n\n        matrixHelper.reset();\n\n        if (shapeData && shapeData.shapes) {\n          shapes = shapeData.shapes[0].it;\n          matrixHelper.scale(documentData.finalSize / 100, documentData.finalSize / 100);\n          shapeStr = this.createPathShape(matrixHelper, shapes);\n          tSpan.setAttribute(\"d\", shapeStr);\n        }\n\n        if (!(this || _global).isMasked) {\n          (this || _global).innerElem.appendChild(tParent);\n\n          if (shapeData && shapeData.shapes) {\n            // document.body.appendChild is needed to get exact measure of shape\n            document.body.appendChild(tCont);\n            var boundingBox = tCont.getBBox();\n            tCont.setAttribute(\"width\", boundingBox.width + 2);\n            tCont.setAttribute(\"height\", boundingBox.height + 2);\n            tCont.setAttribute(\"viewBox\", boundingBox.x - 1 + \" \" + (boundingBox.y - 1) + \" \" + (boundingBox.width + 2) + \" \" + (boundingBox.height + 2));\n            var tContStyle = tCont.style;\n            var tContTranslation = \"translate(\" + (boundingBox.x - 1) + \"px,\" + (boundingBox.y - 1) + \"px)\";\n            tContStyle.transform = tContTranslation;\n            tContStyle.webkitTransform = tContTranslation;\n            letters[i].yOffset = boundingBox.y - 1;\n          } else {\n            tCont.setAttribute(\"width\", 1);\n            tCont.setAttribute(\"height\", 1);\n          }\n\n          tParent.appendChild(tCont);\n        } else {\n          (this || _global).innerElem.appendChild(tSpan);\n        }\n      } else {\n        tSpan.textContent = letters[i].val;\n        tSpan.setAttributeNS(\"http://www.w3.org/XML/1998/namespace\", \"xml:space\", \"preserve\");\n\n        if (!(this || _global).isMasked) {\n          (this || _global).innerElem.appendChild(tParent); //\n\n\n          var tStyle = tSpan.style;\n          var tSpanTranslation = \"translate3d(0,\" + -documentData.finalSize / 1.2 + \"px,0)\";\n          tStyle.transform = tSpanTranslation;\n          tStyle.webkitTransform = tSpanTranslation;\n        } else {\n          (this || _global).innerElem.appendChild(tSpan);\n        }\n      } //\n\n\n      if (!(this || _global).isMasked) {\n        (this || _global).textSpans[cnt] = tParent;\n      } else {\n        (this || _global).textSpans[cnt] = tSpan;\n      }\n\n      (this || _global).textSpans[cnt].style.display = \"block\";\n      (this || _global).textPaths[cnt] = tSpan;\n      cnt += 1;\n    }\n\n    while (cnt < (this || _global).textSpans.length) {\n      (this || _global).textSpans[cnt].style.display = \"none\";\n      cnt += 1;\n    }\n  };\n\n  HTextElement.prototype.renderInnerContent = function () {\n    var svgStyle;\n\n    if ((this || _global).data.singleShape) {\n      if (!(this || _global)._isFirstFrame && !(this || _global).lettersChangedFlag) {\n        return;\n      }\n\n      if ((this || _global).isMasked && (this || _global).finalTransform._matMdf) {\n        // Todo Benchmark if using this is better than getBBox\n        (this || _global).svgElement.setAttribute(\"viewBox\", -(this || _global).finalTransform.mProp.p.v[0] + \" \" + -(this || _global).finalTransform.mProp.p.v[1] + \" \" + (this || _global).compW + \" \" + (this || _global).compH);\n\n        svgStyle = (this || _global).svgElement.style;\n        var translation = \"translate(\" + -(this || _global).finalTransform.mProp.p.v[0] + \"px,\" + -(this || _global).finalTransform.mProp.p.v[1] + \"px)\";\n        svgStyle.transform = translation;\n        svgStyle.webkitTransform = translation;\n      }\n    }\n\n    (this || _global).textAnimator.getMeasures((this || _global).textProperty.currentData, (this || _global).lettersChangedFlag);\n\n    if (!(this || _global).lettersChangedFlag && !(this || _global).textAnimator.lettersChangedFlag) {\n      return;\n    }\n\n    var i;\n    var len;\n    var count = 0;\n    var renderedLetters = (this || _global).textAnimator.renderedLetters;\n    var letters = (this || _global).textProperty.currentData.l;\n    len = letters.length;\n    var renderedLetter;\n    var textSpan;\n    var textPath;\n\n    for (i = 0; i < len; i += 1) {\n      if (letters[i].n) {\n        count += 1;\n      } else {\n        textSpan = (this || _global).textSpans[i];\n        textPath = (this || _global).textPaths[i];\n        renderedLetter = renderedLetters[count];\n        count += 1;\n\n        if (renderedLetter._mdf.m) {\n          if (!(this || _global).isMasked) {\n            textSpan.style.webkitTransform = renderedLetter.m;\n            textSpan.style.transform = renderedLetter.m;\n          } else {\n            textSpan.setAttribute(\"transform\", renderedLetter.m);\n          }\n        } /// /textSpan.setAttribute('opacity',renderedLetter.o);\n\n\n        textSpan.style.opacity = renderedLetter.o;\n\n        if (renderedLetter.sw && renderedLetter._mdf.sw) {\n          textPath.setAttribute(\"stroke-width\", renderedLetter.sw);\n        }\n\n        if (renderedLetter.sc && renderedLetter._mdf.sc) {\n          textPath.setAttribute(\"stroke\", renderedLetter.sc);\n        }\n\n        if (renderedLetter.fc && renderedLetter._mdf.fc) {\n          textPath.setAttribute(\"fill\", renderedLetter.fc);\n          textPath.style.color = renderedLetter.fc;\n        }\n      }\n    }\n\n    if ((this || _global).innerElem.getBBox && !(this || _global).hidden && ((this || _global)._isFirstFrame || (this || _global)._mdf)) {\n      var boundingBox = (this || _global).innerElem.getBBox();\n\n      if ((this || _global).currentBBox.w !== boundingBox.width) {\n        (this || _global).currentBBox.w = boundingBox.width;\n\n        (this || _global).svgElement.setAttribute(\"width\", boundingBox.width);\n      }\n\n      if ((this || _global).currentBBox.h !== boundingBox.height) {\n        (this || _global).currentBBox.h = boundingBox.height;\n\n        (this || _global).svgElement.setAttribute(\"height\", boundingBox.height);\n      }\n\n      var margin = 1;\n\n      if ((this || _global).currentBBox.w !== boundingBox.width + margin * 2 || (this || _global).currentBBox.h !== boundingBox.height + margin * 2 || (this || _global).currentBBox.x !== boundingBox.x - margin || (this || _global).currentBBox.y !== boundingBox.y - margin) {\n        (this || _global).currentBBox.w = boundingBox.width + margin * 2;\n        (this || _global).currentBBox.h = boundingBox.height + margin * 2;\n        (this || _global).currentBBox.x = boundingBox.x - margin;\n        (this || _global).currentBBox.y = boundingBox.y - margin;\n\n        (this || _global).svgElement.setAttribute(\"viewBox\", (this || _global).currentBBox.x + \" \" + (this || _global).currentBBox.y + \" \" + (this || _global).currentBBox.w + \" \" + (this || _global).currentBBox.h);\n\n        svgStyle = (this || _global).svgElement.style;\n        var svgTransform = \"translate(\" + (this || _global).currentBBox.x + \"px,\" + (this || _global).currentBBox.y + \"px)\";\n        svgStyle.transform = svgTransform;\n        svgStyle.webkitTransform = svgTransform;\n      }\n    }\n  };\n  /* global extendPrototype, BaseElement, TransformElement, HBaseElement, HSolidElement, HierarchyElement,\r\n  FrameElement, RenderableElement, createNS */\n\n\n  function HImageElement(data, globalData, comp) {\n    (this || _global).assetData = globalData.getAssetData(data.refId);\n    this.initElement(data, globalData, comp);\n  }\n\n  extendPrototype([BaseElement, TransformElement, HBaseElement, HSolidElement, HierarchyElement, FrameElement, RenderableElement], HImageElement);\n\n  HImageElement.prototype.createContent = function () {\n    var assetPath = (this || _global).globalData.getAssetsPath((this || _global).assetData);\n\n    var img = new Image();\n\n    if ((this || _global).data.hasMask) {\n      (this || _global).imageElem = createNS(\"image\");\n\n      (this || _global).imageElem.setAttribute(\"width\", (this || _global).assetData.w + \"px\");\n\n      (this || _global).imageElem.setAttribute(\"height\", (this || _global).assetData.h + \"px\");\n\n      (this || _global).imageElem.setAttributeNS(\"http://www.w3.org/1999/xlink\", \"href\", assetPath);\n\n      (this || _global).layerElement.appendChild((this || _global).imageElem);\n\n      (this || _global).baseElement.setAttribute(\"width\", (this || _global).assetData.w);\n\n      (this || _global).baseElement.setAttribute(\"height\", (this || _global).assetData.h);\n    } else {\n      (this || _global).layerElement.appendChild(img);\n    }\n\n    img.crossOrigin = \"anonymous\";\n    img.src = assetPath;\n\n    if ((this || _global).data.ln) {\n      (this || _global).baseElement.setAttribute(\"id\", (this || _global).data.ln);\n    }\n  };\n  /* global PropertyFactory, degToRads, Matrix, extendPrototype, BaseElement, FrameElement, HierarchyElement */\n\n\n  function HCameraElement(data, globalData, comp) {\n    this.initFrame();\n    this.initBaseData(data, globalData, comp);\n    this.initHierarchy();\n    var getProp = PropertyFactory.getProp;\n    (this || _global).pe = getProp(this || _global, data.pe, 0, 0, this || _global);\n\n    if (data.ks.p.s) {\n      (this || _global).px = getProp(this || _global, data.ks.p.x, 1, 0, this || _global);\n      (this || _global).py = getProp(this || _global, data.ks.p.y, 1, 0, this || _global);\n      (this || _global).pz = getProp(this || _global, data.ks.p.z, 1, 0, this || _global);\n    } else {\n      (this || _global).p = getProp(this || _global, data.ks.p, 1, 0, this || _global);\n    }\n\n    if (data.ks.a) {\n      (this || _global).a = getProp(this || _global, data.ks.a, 1, 0, this || _global);\n    }\n\n    if (data.ks.or.k.length && data.ks.or.k[0].to) {\n      var i;\n      var len = data.ks.or.k.length;\n\n      for (i = 0; i < len; i += 1) {\n        data.ks.or.k[i].to = null;\n        data.ks.or.k[i].ti = null;\n      }\n    }\n\n    (this || _global).or = getProp(this || _global, data.ks.or, 1, degToRads, this || _global);\n    (this || _global).or.sh = true;\n    (this || _global).rx = getProp(this || _global, data.ks.rx, 0, degToRads, this || _global);\n    (this || _global).ry = getProp(this || _global, data.ks.ry, 0, degToRads, this || _global);\n    (this || _global).rz = getProp(this || _global, data.ks.rz, 0, degToRads, this || _global);\n    (this || _global).mat = new Matrix();\n    (this || _global)._prevMat = new Matrix();\n    (this || _global)._isFirstFrame = true; // TODO: find a better way to make the HCamera element to be compatible with the LayerInterface and TransformInterface.\n\n    (this || _global).finalTransform = {\n      mProp: this || _global\n    };\n  }\n\n  extendPrototype([BaseElement, FrameElement, HierarchyElement], HCameraElement);\n\n  HCameraElement.prototype.setup = function () {\n    var i;\n    var len = (this || _global).comp.threeDElements.length;\n    var comp;\n    var perspectiveStyle;\n    var containerStyle;\n\n    for (i = 0; i < len; i += 1) {\n      // [perspectiveElem,container]\n      comp = (this || _global).comp.threeDElements[i];\n\n      if (comp.type === \"3d\") {\n        perspectiveStyle = comp.perspectiveElem.style;\n        containerStyle = comp.container.style;\n        var perspective = (this || _global).pe.v + \"px\";\n        var origin = \"0px 0px 0px\";\n        var matrix = \"matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1)\";\n        perspectiveStyle.perspective = perspective;\n        perspectiveStyle.webkitPerspective = perspective;\n        containerStyle.transformOrigin = origin;\n        containerStyle.mozTransformOrigin = origin;\n        containerStyle.webkitTransformOrigin = origin;\n        perspectiveStyle.transform = matrix;\n        perspectiveStyle.webkitTransform = matrix;\n      }\n    }\n  };\n\n  HCameraElement.prototype.createElements = function () {};\n\n  HCameraElement.prototype.hide = function () {};\n\n  HCameraElement.prototype.renderFrame = function () {\n    var _mdf = (this || _global)._isFirstFrame;\n    var i;\n    var len;\n\n    if ((this || _global).hierarchy) {\n      len = (this || _global).hierarchy.length;\n\n      for (i = 0; i < len; i += 1) {\n        _mdf = (this || _global).hierarchy[i].finalTransform.mProp._mdf || _mdf;\n      }\n    }\n\n    if (_mdf || (this || _global).pe._mdf || (this || _global).p && (this || _global).p._mdf || (this || _global).px && ((this || _global).px._mdf || (this || _global).py._mdf || (this || _global).pz._mdf) || (this || _global).rx._mdf || (this || _global).ry._mdf || (this || _global).rz._mdf || (this || _global).or._mdf || (this || _global).a && (this || _global).a._mdf) {\n      (this || _global).mat.reset();\n\n      if ((this || _global).hierarchy) {\n        len = (this || _global).hierarchy.length - 1;\n\n        for (i = len; i >= 0; i -= 1) {\n          var mTransf = (this || _global).hierarchy[i].finalTransform.mProp;\n\n          (this || _global).mat.translate(-mTransf.p.v[0], -mTransf.p.v[1], mTransf.p.v[2]);\n\n          (this || _global).mat.rotateX(-mTransf.or.v[0]).rotateY(-mTransf.or.v[1]).rotateZ(mTransf.or.v[2]);\n\n          (this || _global).mat.rotateX(-mTransf.rx.v).rotateY(-mTransf.ry.v).rotateZ(mTransf.rz.v);\n\n          (this || _global).mat.scale(1 / mTransf.s.v[0], 1 / mTransf.s.v[1], 1 / mTransf.s.v[2]);\n\n          (this || _global).mat.translate(mTransf.a.v[0], mTransf.a.v[1], mTransf.a.v[2]);\n        }\n      }\n\n      if ((this || _global).p) {\n        (this || _global).mat.translate(-(this || _global).p.v[0], -(this || _global).p.v[1], (this || _global).p.v[2]);\n      } else {\n        (this || _global).mat.translate(-(this || _global).px.v, -(this || _global).py.v, (this || _global).pz.v);\n      }\n\n      if ((this || _global).a) {\n        var diffVector;\n\n        if ((this || _global).p) {\n          diffVector = [(this || _global).p.v[0] - (this || _global).a.v[0], (this || _global).p.v[1] - (this || _global).a.v[1], (this || _global).p.v[2] - (this || _global).a.v[2]];\n        } else {\n          diffVector = [(this || _global).px.v - (this || _global).a.v[0], (this || _global).py.v - (this || _global).a.v[1], (this || _global).pz.v - (this || _global).a.v[2]];\n        }\n\n        var mag = Math.sqrt(Math.pow(diffVector[0], 2) + Math.pow(diffVector[1], 2) + Math.pow(diffVector[2], 2)); // var lookDir = getNormalizedPoint(getDiffVector(this.a.v,this.p.v));\n\n        var lookDir = [diffVector[0] / mag, diffVector[1] / mag, diffVector[2] / mag];\n        var lookLengthOnXZ = Math.sqrt(lookDir[2] * lookDir[2] + lookDir[0] * lookDir[0]);\n        var mRotationX = Math.atan2(lookDir[1], lookLengthOnXZ);\n        var mRotationY = Math.atan2(lookDir[0], -lookDir[2]);\n\n        (this || _global).mat.rotateY(mRotationY).rotateX(-mRotationX);\n      }\n\n      (this || _global).mat.rotateX(-(this || _global).rx.v).rotateY(-(this || _global).ry.v).rotateZ((this || _global).rz.v);\n\n      (this || _global).mat.rotateX(-(this || _global).or.v[0]).rotateY(-(this || _global).or.v[1]).rotateZ((this || _global).or.v[2]);\n\n      (this || _global).mat.translate((this || _global).globalData.compSize.w / 2, (this || _global).globalData.compSize.h / 2, 0);\n\n      (this || _global).mat.translate(0, 0, (this || _global).pe.v);\n\n      var hasMatrixChanged = !(this || _global)._prevMat.equals((this || _global).mat);\n\n      if ((hasMatrixChanged || (this || _global).pe._mdf) && (this || _global).comp.threeDElements) {\n        len = (this || _global).comp.threeDElements.length;\n        var comp;\n        var perspectiveStyle;\n        var containerStyle;\n\n        for (i = 0; i < len; i += 1) {\n          comp = (this || _global).comp.threeDElements[i];\n\n          if (comp.type === \"3d\") {\n            if (hasMatrixChanged) {\n              var matValue = (this || _global).mat.toCSS();\n\n              containerStyle = comp.container.style;\n              containerStyle.transform = matValue;\n              containerStyle.webkitTransform = matValue;\n            }\n\n            if ((this || _global).pe._mdf) {\n              perspectiveStyle = comp.perspectiveElem.style;\n              perspectiveStyle.perspective = (this || _global).pe.v + \"px\";\n              perspectiveStyle.webkitPerspective = (this || _global).pe.v + \"px\";\n            }\n          }\n        }\n\n        (this || _global).mat.clone((this || _global)._prevMat);\n      }\n    }\n\n    (this || _global)._isFirstFrame = false;\n  };\n\n  HCameraElement.prototype.prepareFrame = function (num) {\n    this.prepareProperties(num, true);\n  };\n\n  HCameraElement.prototype.destroy = function () {};\n\n  HCameraElement.prototype.getBaseElement = function () {\n    return null;\n  };\n\n  function HEffects() {}\n\n  HEffects.prototype.renderFrame = function () {};\n  /* global createTag, AnimationItem */\n\n  /* exported animationManager */\n\n\n  var animationManager = function () {\n    var moduleOb = {};\n    var registeredAnimations = [];\n    var initTime = 0;\n    var len = 0;\n    var playingAnimationsNum = 0;\n    var _stopped = true;\n    var _isFrozen = false;\n\n    function removeElement(ev) {\n      var i = 0;\n      var animItem = ev.target;\n\n      while (i < len) {\n        if (registeredAnimations[i].animation === animItem) {\n          registeredAnimations.splice(i, 1);\n          i -= 1;\n          len -= 1;\n\n          if (!animItem.isPaused) {\n            subtractPlayingCount();\n          }\n        }\n\n        i += 1;\n      }\n    }\n\n    function registerAnimation(element, animationData) {\n      if (!element) {\n        return null;\n      }\n\n      var i = 0;\n\n      while (i < len) {\n        if (registeredAnimations[i].elem === element && registeredAnimations[i].elem !== null) {\n          return registeredAnimations[i].animation;\n        }\n\n        i += 1;\n      }\n\n      var animItem = new AnimationItem();\n      setupAnimation(animItem, element);\n      animItem.setData(element, animationData);\n      return animItem;\n    }\n\n    function getRegisteredAnimations() {\n      var i;\n      var lenAnims = registeredAnimations.length;\n      var animations = [];\n\n      for (i = 0; i < lenAnims; i += 1) {\n        animations.push(registeredAnimations[i].animation);\n      }\n\n      return animations;\n    }\n\n    function addPlayingCount() {\n      playingAnimationsNum += 1;\n      activate();\n    }\n\n    function subtractPlayingCount() {\n      playingAnimationsNum -= 1;\n    }\n\n    function setupAnimation(animItem, element) {\n      animItem.addEventListener(\"destroy\", removeElement);\n      animItem.addEventListener(\"_active\", addPlayingCount);\n      animItem.addEventListener(\"_idle\", subtractPlayingCount);\n      registeredAnimations.push({\n        elem: element,\n        animation: animItem\n      });\n      len += 1;\n    }\n\n    function loadAnimation(params) {\n      var animItem = new AnimationItem();\n      setupAnimation(animItem, null);\n      animItem.setParams(params);\n      return animItem;\n    }\n\n    function setSpeed(val, animation) {\n      var i;\n\n      for (i = 0; i < len; i += 1) {\n        registeredAnimations[i].animation.setSpeed(val, animation);\n      }\n    }\n\n    function setDirection(val, animation) {\n      var i;\n\n      for (i = 0; i < len; i += 1) {\n        registeredAnimations[i].animation.setDirection(val, animation);\n      }\n    }\n\n    function play(animation) {\n      var i;\n\n      for (i = 0; i < len; i += 1) {\n        registeredAnimations[i].animation.play(animation);\n      }\n    }\n\n    function resume(nowTime) {\n      var elapsedTime = nowTime - initTime;\n      var i;\n\n      for (i = 0; i < len; i += 1) {\n        registeredAnimations[i].animation.advanceTime(elapsedTime);\n      }\n\n      initTime = nowTime;\n\n      if (playingAnimationsNum && !_isFrozen) {\n        window.requestAnimationFrame(resume);\n      } else {\n        _stopped = true;\n      }\n    }\n\n    function first(nowTime) {\n      initTime = nowTime;\n      window.requestAnimationFrame(resume);\n    }\n\n    function pause(animation) {\n      var i;\n\n      for (i = 0; i < len; i += 1) {\n        registeredAnimations[i].animation.pause(animation);\n      }\n    }\n\n    function goToAndStop(value, isFrame, animation) {\n      var i;\n\n      for (i = 0; i < len; i += 1) {\n        registeredAnimations[i].animation.goToAndStop(value, isFrame, animation);\n      }\n    }\n\n    function stop(animation) {\n      var i;\n\n      for (i = 0; i < len; i += 1) {\n        registeredAnimations[i].animation.stop(animation);\n      }\n    }\n\n    function togglePause(animation) {\n      var i;\n\n      for (i = 0; i < len; i += 1) {\n        registeredAnimations[i].animation.togglePause(animation);\n      }\n    }\n\n    function destroy(animation) {\n      var i;\n\n      for (i = len - 1; i >= 0; i -= 1) {\n        registeredAnimations[i].animation.destroy(animation);\n      }\n    }\n\n    function searchAnimations(animationData, standalone, renderer) {\n      var animElements = [].concat([].slice.call(document.getElementsByClassName(\"lottie\")), [].slice.call(document.getElementsByClassName(\"bodymovin\")));\n      var i;\n      var lenAnims = animElements.length;\n\n      for (i = 0; i < lenAnims; i += 1) {\n        if (renderer) {\n          animElements[i].setAttribute(\"data-bm-type\", renderer);\n        }\n\n        registerAnimation(animElements[i], animationData);\n      }\n\n      if (standalone && lenAnims === 0) {\n        if (!renderer) {\n          renderer = \"svg\";\n        }\n\n        var body = document.getElementsByTagName(\"body\")[0];\n        body.innerText = \"\";\n        var div = createTag(\"div\");\n        div.style.width = \"100%\";\n        div.style.height = \"100%\";\n        div.setAttribute(\"data-bm-type\", renderer);\n        body.appendChild(div);\n        registerAnimation(div, animationData);\n      }\n    }\n\n    function resize() {\n      var i;\n\n      for (i = 0; i < len; i += 1) {\n        registeredAnimations[i].animation.resize();\n      }\n    }\n\n    function activate() {\n      if (!_isFrozen && playingAnimationsNum) {\n        if (_stopped) {\n          window.requestAnimationFrame(first);\n          _stopped = false;\n        }\n      }\n    }\n\n    function freeze() {\n      _isFrozen = true;\n    }\n\n    function unfreeze() {\n      _isFrozen = false;\n      activate();\n    }\n\n    function setVolume(val, animation) {\n      var i;\n\n      for (i = 0; i < len; i += 1) {\n        registeredAnimations[i].animation.setVolume(val, animation);\n      }\n    }\n\n    function mute(animation) {\n      var i;\n\n      for (i = 0; i < len; i += 1) {\n        registeredAnimations[i].animation.mute(animation);\n      }\n    }\n\n    function unmute(animation) {\n      var i;\n\n      for (i = 0; i < len; i += 1) {\n        registeredAnimations[i].animation.unmute(animation);\n      }\n    }\n\n    moduleOb.registerAnimation = registerAnimation;\n    moduleOb.loadAnimation = loadAnimation;\n    moduleOb.setSpeed = setSpeed;\n    moduleOb.setDirection = setDirection;\n    moduleOb.play = play;\n    moduleOb.pause = pause;\n    moduleOb.stop = stop;\n    moduleOb.togglePause = togglePause;\n    moduleOb.searchAnimations = searchAnimations;\n    moduleOb.resize = resize; // moduleOb.start = start;\n\n    moduleOb.goToAndStop = goToAndStop;\n    moduleOb.destroy = destroy;\n    moduleOb.freeze = freeze;\n    moduleOb.unfreeze = unfreeze;\n    moduleOb.setVolume = setVolume;\n    moduleOb.mute = mute;\n    moduleOb.unmute = unmute;\n    moduleOb.getRegisteredAnimations = getRegisteredAnimations;\n    return moduleOb;\n  }();\n  /* global createElementID, subframeEnabled, ProjectInterface, ImagePreloader, audioControllerFactory, extendPrototype, BaseEvent,\r\n  CanvasRenderer, SVGRenderer, HybridRenderer, assetLoader, dataManager, expressionsPlugin, BMEnterFrameEvent, BMCompleteLoopEvent,\r\n  BMCompleteEvent, BMSegmentStartEvent, BMDestroyEvent, BMEnterFrameEvent, BMCompleteLoopEvent, BMCompleteEvent, BMSegmentStartEvent,\r\n  BMDestroyEvent, BMRenderFrameErrorEvent, BMConfigErrorEvent, markerParser */\n\n\n  var AnimationItem = function () {\n    (this || _global)._cbs = [];\n    (this || _global).name = \"\";\n    (this || _global).path = \"\";\n    (this || _global).isLoaded = false;\n    (this || _global).currentFrame = 0;\n    (this || _global).currentRawFrame = 0;\n    (this || _global).firstFrame = 0;\n    (this || _global).totalFrames = 0;\n    (this || _global).frameRate = 0;\n    (this || _global).frameMult = 0;\n    (this || _global).playSpeed = 1;\n    (this || _global).playDirection = 1;\n    (this || _global).playCount = 0;\n    (this || _global).animationData = {};\n    (this || _global).assets = [];\n    (this || _global).isPaused = true;\n    (this || _global).autoplay = false;\n    (this || _global).loop = true;\n    (this || _global).renderer = null;\n    (this || _global).animationID = createElementID();\n    (this || _global).assetsPath = \"\";\n    (this || _global).timeCompleted = 0;\n    (this || _global).segmentPos = 0;\n    (this || _global).isSubframeEnabled = subframeEnabled;\n    (this || _global).segments = [];\n    (this || _global)._idle = true;\n    (this || _global)._completedLoop = false;\n    (this || _global).projectInterface = ProjectInterface();\n    (this || _global).imagePreloader = new ImagePreloader();\n    (this || _global).audioController = audioControllerFactory();\n    (this || _global).markers = [];\n  };\n\n  extendPrototype([BaseEvent], AnimationItem);\n\n  AnimationItem.prototype.setParams = function (params) {\n    if (params.wrapper || params.container) {\n      (this || _global).wrapper = params.wrapper || params.container;\n    }\n\n    var animType = \"svg\";\n\n    if (params.animType) {\n      animType = params.animType;\n    } else if (params.renderer) {\n      animType = params.renderer;\n    }\n\n    switch (animType) {\n      case \"canvas\":\n        (this || _global).renderer = new CanvasRenderer(this || _global, params.rendererSettings);\n        break;\n\n      case \"svg\":\n        (this || _global).renderer = new SVGRenderer(this || _global, params.rendererSettings);\n        break;\n\n      default:\n        (this || _global).renderer = new HybridRenderer(this || _global, params.rendererSettings);\n        break;\n    }\n\n    (this || _global).imagePreloader.setCacheType(animType, (this || _global).renderer.globalData.defs);\n\n    (this || _global).renderer.setProjectInterface((this || _global).projectInterface);\n\n    (this || _global).animType = animType;\n\n    if (params.loop === \"\" || params.loop === null || params.loop === undefined || params.loop === true) {\n      (this || _global).loop = true;\n    } else if (params.loop === false) {\n      (this || _global).loop = false;\n    } else {\n      (this || _global).loop = parseInt(params.loop, 10);\n    }\n\n    (this || _global).autoplay = \"autoplay\" in params ? params.autoplay : true;\n    (this || _global).name = params.name ? params.name : \"\";\n    (this || _global).autoloadSegments = Object.prototype.hasOwnProperty.call(params, \"autoloadSegments\") ? params.autoloadSegments : true;\n    (this || _global).assetsPath = params.assetsPath;\n    (this || _global).initialSegment = params.initialSegment;\n\n    if (params.audioFactory) {\n      (this || _global).audioController.setAudioFactory(params.audioFactory);\n    }\n\n    if (params.animationData) {\n      this.configAnimation(params.animationData);\n    } else if (params.path) {\n      if (params.path.lastIndexOf(\"\\\\\") !== -1) {\n        (this || _global).path = params.path.substr(0, params.path.lastIndexOf(\"\\\\\") + 1);\n      } else {\n        (this || _global).path = params.path.substr(0, params.path.lastIndexOf(\"/\") + 1);\n      }\n\n      (this || _global).fileName = params.path.substr(params.path.lastIndexOf(\"/\") + 1);\n      (this || _global).fileName = (this || _global).fileName.substr(0, (this || _global).fileName.lastIndexOf(\".json\"));\n      assetLoader.load(params.path, (this || _global).configAnimation.bind(this || _global), function () {\n        this.trigger(\"data_failed\");\n      }.bind(this || _global));\n    }\n  };\n\n  AnimationItem.prototype.setData = function (wrapper, animationData) {\n    if (animationData) {\n      if (typeof animationData !== \"object\") {\n        animationData = JSON.parse(animationData);\n      }\n    }\n\n    var params = {\n      wrapper: wrapper,\n      animationData: animationData\n    };\n    var wrapperAttributes = wrapper.attributes;\n    params.path = wrapperAttributes.getNamedItem(\"data-animation-path\") // eslint-disable-line no-nested-ternary\n    ? wrapperAttributes.getNamedItem(\"data-animation-path\").value : wrapperAttributes.getNamedItem(\"data-bm-path\") // eslint-disable-line no-nested-ternary\n    ? wrapperAttributes.getNamedItem(\"data-bm-path\").value : wrapperAttributes.getNamedItem(\"bm-path\") ? wrapperAttributes.getNamedItem(\"bm-path\").value : \"\";\n    params.animType = wrapperAttributes.getNamedItem(\"data-anim-type\") // eslint-disable-line no-nested-ternary\n    ? wrapperAttributes.getNamedItem(\"data-anim-type\").value : wrapperAttributes.getNamedItem(\"data-bm-type\") // eslint-disable-line no-nested-ternary\n    ? wrapperAttributes.getNamedItem(\"data-bm-type\").value : wrapperAttributes.getNamedItem(\"bm-type\") // eslint-disable-line no-nested-ternary\n    ? wrapperAttributes.getNamedItem(\"bm-type\").value : wrapperAttributes.getNamedItem(\"data-bm-renderer\") // eslint-disable-line no-nested-ternary\n    ? wrapperAttributes.getNamedItem(\"data-bm-renderer\").value : wrapperAttributes.getNamedItem(\"bm-renderer\") ? wrapperAttributes.getNamedItem(\"bm-renderer\").value : \"canvas\";\n    var loop = wrapperAttributes.getNamedItem(\"data-anim-loop\") // eslint-disable-line no-nested-ternary\n    ? wrapperAttributes.getNamedItem(\"data-anim-loop\").value : wrapperAttributes.getNamedItem(\"data-bm-loop\") // eslint-disable-line no-nested-ternary\n    ? wrapperAttributes.getNamedItem(\"data-bm-loop\").value : wrapperAttributes.getNamedItem(\"bm-loop\") ? wrapperAttributes.getNamedItem(\"bm-loop\").value : \"\";\n\n    if (loop === \"false\") {\n      params.loop = false;\n    } else if (loop === \"true\") {\n      params.loop = true;\n    } else if (loop !== \"\") {\n      params.loop = parseInt(loop, 10);\n    }\n\n    var autoplay = wrapperAttributes.getNamedItem(\"data-anim-autoplay\") // eslint-disable-line no-nested-ternary\n    ? wrapperAttributes.getNamedItem(\"data-anim-autoplay\").value : wrapperAttributes.getNamedItem(\"data-bm-autoplay\") // eslint-disable-line no-nested-ternary\n    ? wrapperAttributes.getNamedItem(\"data-bm-autoplay\").value : wrapperAttributes.getNamedItem(\"bm-autoplay\") ? wrapperAttributes.getNamedItem(\"bm-autoplay\").value : true;\n    params.autoplay = autoplay !== \"false\";\n    params.name = wrapperAttributes.getNamedItem(\"data-name\") // eslint-disable-line no-nested-ternary\n    ? wrapperAttributes.getNamedItem(\"data-name\").value : wrapperAttributes.getNamedItem(\"data-bm-name\") // eslint-disable-line no-nested-ternary\n    ? wrapperAttributes.getNamedItem(\"data-bm-name\").value : wrapperAttributes.getNamedItem(\"bm-name\") ? wrapperAttributes.getNamedItem(\"bm-name\").value : \"\";\n    var prerender = wrapperAttributes.getNamedItem(\"data-anim-prerender\") // eslint-disable-line no-nested-ternary\n    ? wrapperAttributes.getNamedItem(\"data-anim-prerender\").value : wrapperAttributes.getNamedItem(\"data-bm-prerender\") // eslint-disable-line no-nested-ternary\n    ? wrapperAttributes.getNamedItem(\"data-bm-prerender\").value : wrapperAttributes.getNamedItem(\"bm-prerender\") ? wrapperAttributes.getNamedItem(\"bm-prerender\").value : \"\";\n\n    if (prerender === \"false\") {\n      params.prerender = false;\n    }\n\n    this.setParams(params);\n  };\n\n  AnimationItem.prototype.includeLayers = function (data) {\n    if (data.op > (this || _global).animationData.op) {\n      (this || _global).animationData.op = data.op;\n      (this || _global).totalFrames = Math.floor(data.op - (this || _global).animationData.ip);\n    }\n\n    var layers = (this || _global).animationData.layers;\n    var i;\n    var len = layers.length;\n    var newLayers = data.layers;\n    var j;\n    var jLen = newLayers.length;\n\n    for (j = 0; j < jLen; j += 1) {\n      i = 0;\n\n      while (i < len) {\n        if (layers[i].id === newLayers[j].id) {\n          layers[i] = newLayers[j];\n          break;\n        }\n\n        i += 1;\n      }\n    }\n\n    if (data.chars || data.fonts) {\n      (this || _global).renderer.globalData.fontManager.addChars(data.chars);\n\n      (this || _global).renderer.globalData.fontManager.addFonts(data.fonts, (this || _global).renderer.globalData.defs);\n    }\n\n    if (data.assets) {\n      len = data.assets.length;\n\n      for (i = 0; i < len; i += 1) {\n        (this || _global).animationData.assets.push(data.assets[i]);\n      }\n    }\n\n    (this || _global).animationData.__complete = false;\n    dataManager.completeData((this || _global).animationData, (this || _global).renderer.globalData.fontManager);\n\n    (this || _global).renderer.includeLayers(data.layers);\n\n    if (expressionsPlugin) {\n      expressionsPlugin.initExpressions(this || _global);\n    }\n\n    this.loadNextSegment();\n  };\n\n  AnimationItem.prototype.loadNextSegment = function () {\n    var segments = (this || _global).animationData.segments;\n\n    if (!segments || segments.length === 0 || !(this || _global).autoloadSegments) {\n      this.trigger(\"data_ready\");\n      (this || _global).timeCompleted = (this || _global).totalFrames;\n      return;\n    }\n\n    var segment = segments.shift();\n    (this || _global).timeCompleted = segment.time * (this || _global).frameRate;\n    var segmentPath = (this || _global).path + (this || _global).fileName + \"_\" + (this || _global).segmentPos + \".json\";\n    (this || _global).segmentPos += 1;\n    assetLoader.load(segmentPath, (this || _global).includeLayers.bind(this || _global), function () {\n      this.trigger(\"data_failed\");\n    }.bind(this || _global));\n  };\n\n  AnimationItem.prototype.loadSegments = function () {\n    var segments = (this || _global).animationData.segments;\n\n    if (!segments) {\n      (this || _global).timeCompleted = (this || _global).totalFrames;\n    }\n\n    this.loadNextSegment();\n  };\n\n  AnimationItem.prototype.imagesLoaded = function () {\n    this.trigger(\"loaded_images\");\n    this.checkLoaded();\n  };\n\n  AnimationItem.prototype.preloadImages = function () {\n    (this || _global).imagePreloader.setAssetsPath((this || _global).assetsPath);\n\n    (this || _global).imagePreloader.setPath((this || _global).path);\n\n    (this || _global).imagePreloader.loadAssets((this || _global).animationData.assets, (this || _global).imagesLoaded.bind(this || _global));\n  };\n\n  AnimationItem.prototype.configAnimation = function (animData) {\n    if (!(this || _global).renderer) {\n      return;\n    }\n\n    try {\n      (this || _global).animationData = animData;\n\n      if ((this || _global).initialSegment) {\n        (this || _global).totalFrames = Math.floor((this || _global).initialSegment[1] - (this || _global).initialSegment[0]);\n        (this || _global).firstFrame = Math.round((this || _global).initialSegment[0]);\n      } else {\n        (this || _global).totalFrames = Math.floor((this || _global).animationData.op - (this || _global).animationData.ip);\n        (this || _global).firstFrame = Math.round((this || _global).animationData.ip);\n      }\n\n      (this || _global).renderer.configAnimation(animData);\n\n      if (!animData.assets) {\n        animData.assets = [];\n      }\n\n      (this || _global).assets = (this || _global).animationData.assets;\n      (this || _global).frameRate = (this || _global).animationData.fr;\n      (this || _global).frameMult = (this || _global).animationData.fr / 1000;\n\n      (this || _global).renderer.searchExtraCompositions(animData.assets);\n\n      (this || _global).markers = markerParser(animData.markers || []);\n      this.trigger(\"config_ready\");\n      this.preloadImages();\n      this.loadSegments();\n      this.updaFrameModifier();\n      this.waitForFontsLoaded();\n\n      if ((this || _global).isPaused) {\n        (this || _global).audioController.pause();\n      }\n    } catch (error) {\n      this.triggerConfigError(error);\n    }\n  };\n\n  AnimationItem.prototype.waitForFontsLoaded = function () {\n    if (!(this || _global).renderer) {\n      return;\n    }\n\n    if ((this || _global).renderer.globalData.fontManager.isLoaded) {\n      this.checkLoaded();\n    } else {\n      setTimeout((this || _global).waitForFontsLoaded.bind(this || _global), 20);\n    }\n  };\n\n  AnimationItem.prototype.checkLoaded = function () {\n    if (!(this || _global).isLoaded && (this || _global).renderer.globalData.fontManager.isLoaded && ((this || _global).imagePreloader.loadedImages() || (this || _global).renderer.rendererType !== \"canvas\") && (this || _global).imagePreloader.loadedFootages()) {\n      (this || _global).isLoaded = true;\n      dataManager.completeData((this || _global).animationData, (this || _global).renderer.globalData.fontManager);\n\n      if (expressionsPlugin) {\n        expressionsPlugin.initExpressions(this || _global);\n      }\n\n      (this || _global).renderer.initItems();\n\n      setTimeout(function () {\n        this.trigger(\"DOMLoaded\");\n      }.bind(this || _global), 0);\n      this.gotoFrame();\n\n      if ((this || _global).autoplay) {\n        this.play();\n      }\n    }\n  };\n\n  AnimationItem.prototype.resize = function () {\n    (this || _global).renderer.updateContainerSize();\n  };\n\n  AnimationItem.prototype.setSubframe = function (flag) {\n    (this || _global).isSubframeEnabled = !!flag;\n  };\n\n  AnimationItem.prototype.gotoFrame = function () {\n    (this || _global).currentFrame = (this || _global).isSubframeEnabled ? (this || _global).currentRawFrame : ~~(this || _global).currentRawFrame; // eslint-disable-line no-bitwise\n\n    if ((this || _global).timeCompleted !== (this || _global).totalFrames && (this || _global).currentFrame > (this || _global).timeCompleted) {\n      (this || _global).currentFrame = (this || _global).timeCompleted;\n    }\n\n    this.trigger(\"enterFrame\");\n    this.renderFrame();\n  };\n\n  AnimationItem.prototype.renderFrame = function () {\n    if ((this || _global).isLoaded === false || !(this || _global).renderer) {\n      return;\n    }\n\n    try {\n      (this || _global).renderer.renderFrame((this || _global).currentFrame + (this || _global).firstFrame);\n    } catch (error) {\n      this.triggerRenderFrameError(error);\n    }\n  };\n\n  AnimationItem.prototype.play = function (name) {\n    if (name && (this || _global).name !== name) {\n      return;\n    }\n\n    if ((this || _global).isPaused === true) {\n      (this || _global).isPaused = false;\n\n      (this || _global).audioController.resume();\n\n      if ((this || _global)._idle) {\n        (this || _global)._idle = false;\n        this.trigger(\"_active\");\n      }\n    }\n  };\n\n  AnimationItem.prototype.pause = function (name) {\n    if (name && (this || _global).name !== name) {\n      return;\n    }\n\n    if ((this || _global).isPaused === false) {\n      (this || _global).isPaused = true;\n      (this || _global)._idle = true;\n      this.trigger(\"_idle\");\n\n      (this || _global).audioController.pause();\n    }\n  };\n\n  AnimationItem.prototype.togglePause = function (name) {\n    if (name && (this || _global).name !== name) {\n      return;\n    }\n\n    if ((this || _global).isPaused === true) {\n      this.play();\n    } else {\n      this.pause();\n    }\n  };\n\n  AnimationItem.prototype.stop = function (name) {\n    if (name && (this || _global).name !== name) {\n      return;\n    }\n\n    this.pause();\n    (this || _global).playCount = 0;\n    (this || _global)._completedLoop = false;\n    this.setCurrentRawFrameValue(0);\n  };\n\n  AnimationItem.prototype.getMarkerData = function (markerName) {\n    var marker;\n\n    for (var i = 0; i < (this || _global).markers.length; i += 1) {\n      marker = (this || _global).markers[i];\n\n      if (marker.payload && marker.payload.name === markerName) {\n        return marker;\n      }\n    }\n\n    return null;\n  };\n\n  AnimationItem.prototype.goToAndStop = function (value, isFrame, name) {\n    if (name && (this || _global).name !== name) {\n      return;\n    }\n\n    var numValue = Number(value);\n\n    if (isNaN(numValue)) {\n      var marker = this.getMarkerData(value);\n\n      if (marker) {\n        this.goToAndStop(marker.time, true);\n      }\n    } else if (isFrame) {\n      this.setCurrentRawFrameValue(value);\n    } else {\n      this.setCurrentRawFrameValue(value * (this || _global).frameModifier);\n    }\n\n    this.pause();\n  };\n\n  AnimationItem.prototype.goToAndPlay = function (value, isFrame, name) {\n    if (name && (this || _global).name !== name) {\n      return;\n    }\n\n    var numValue = Number(value);\n\n    if (isNaN(numValue)) {\n      var marker = this.getMarkerData(value);\n\n      if (marker) {\n        if (!marker.duration) {\n          this.goToAndStop(marker.time, true);\n        } else {\n          this.playSegments([marker.time, marker.time + marker.duration], true);\n        }\n      }\n    } else {\n      this.goToAndStop(numValue, isFrame, name);\n    }\n\n    this.play();\n  };\n\n  AnimationItem.prototype.advanceTime = function (value) {\n    if ((this || _global).isPaused === true || (this || _global).isLoaded === false) {\n      return;\n    }\n\n    var nextValue = (this || _global).currentRawFrame + value * (this || _global).frameModifier;\n    var _isComplete = false; // Checking if nextValue > totalFrames - 1 for addressing non looping and looping animations.\n    // If animation won't loop, it should stop at totalFrames - 1. If it will loop it should complete the last frame and then loop.\n\n    if (nextValue >= (this || _global).totalFrames - 1 && (this || _global).frameModifier > 0) {\n      if (!(this || _global).loop || (this || _global).playCount === (this || _global).loop) {\n        if (!this.checkSegments(nextValue > (this || _global).totalFrames ? nextValue % (this || _global).totalFrames : 0)) {\n          _isComplete = true;\n          nextValue = (this || _global).totalFrames - 1;\n        }\n      } else if (nextValue >= (this || _global).totalFrames) {\n        (this || _global).playCount += 1;\n\n        if (!this.checkSegments(nextValue % (this || _global).totalFrames)) {\n          this.setCurrentRawFrameValue(nextValue % (this || _global).totalFrames);\n          (this || _global)._completedLoop = true;\n          this.trigger(\"loopComplete\");\n        }\n      } else {\n        this.setCurrentRawFrameValue(nextValue);\n      }\n    } else if (nextValue < 0) {\n      if (!this.checkSegments(nextValue % (this || _global).totalFrames)) {\n        if ((this || _global).loop && !((this || _global).playCount-- <= 0 && (this || _global).loop !== true)) {\n          // eslint-disable-line no-plusplus\n          this.setCurrentRawFrameValue((this || _global).totalFrames + nextValue % (this || _global).totalFrames);\n\n          if (!(this || _global)._completedLoop) {\n            (this || _global)._completedLoop = true;\n          } else {\n            this.trigger(\"loopComplete\");\n          }\n        } else {\n          _isComplete = true;\n          nextValue = 0;\n        }\n      }\n    } else {\n      this.setCurrentRawFrameValue(nextValue);\n    }\n\n    if (_isComplete) {\n      this.setCurrentRawFrameValue(nextValue);\n      this.pause();\n      this.trigger(\"complete\");\n    }\n  };\n\n  AnimationItem.prototype.adjustSegment = function (arr, offset) {\n    (this || _global).playCount = 0;\n\n    if (arr[1] < arr[0]) {\n      if ((this || _global).frameModifier > 0) {\n        if ((this || _global).playSpeed < 0) {\n          this.setSpeed(-(this || _global).playSpeed);\n        } else {\n          this.setDirection(-1);\n        }\n      }\n\n      (this || _global).totalFrames = arr[0] - arr[1];\n      (this || _global).timeCompleted = (this || _global).totalFrames;\n      (this || _global).firstFrame = arr[1];\n      this.setCurrentRawFrameValue((this || _global).totalFrames - 0.001 - offset);\n    } else if (arr[1] > arr[0]) {\n      if ((this || _global).frameModifier < 0) {\n        if ((this || _global).playSpeed < 0) {\n          this.setSpeed(-(this || _global).playSpeed);\n        } else {\n          this.setDirection(1);\n        }\n      }\n\n      (this || _global).totalFrames = arr[1] - arr[0];\n      (this || _global).timeCompleted = (this || _global).totalFrames;\n      (this || _global).firstFrame = arr[0];\n      this.setCurrentRawFrameValue(0.001 + offset);\n    }\n\n    this.trigger(\"segmentStart\");\n  };\n\n  AnimationItem.prototype.setSegment = function (init, end) {\n    var pendingFrame = -1;\n\n    if ((this || _global).isPaused) {\n      if ((this || _global).currentRawFrame + (this || _global).firstFrame < init) {\n        pendingFrame = init;\n      } else if ((this || _global).currentRawFrame + (this || _global).firstFrame > end) {\n        pendingFrame = end - init;\n      }\n    }\n\n    (this || _global).firstFrame = init;\n    (this || _global).totalFrames = end - init;\n    (this || _global).timeCompleted = (this || _global).totalFrames;\n\n    if (pendingFrame !== -1) {\n      this.goToAndStop(pendingFrame, true);\n    }\n  };\n\n  AnimationItem.prototype.playSegments = function (arr, forceFlag) {\n    if (forceFlag) {\n      (this || _global).segments.length = 0;\n    }\n\n    if (typeof arr[0] === \"object\") {\n      var i;\n      var len = arr.length;\n\n      for (i = 0; i < len; i += 1) {\n        (this || _global).segments.push(arr[i]);\n      }\n    } else {\n      (this || _global).segments.push(arr);\n    }\n\n    if ((this || _global).segments.length && forceFlag) {\n      this.adjustSegment((this || _global).segments.shift(), 0);\n    }\n\n    if ((this || _global).isPaused) {\n      this.play();\n    }\n  };\n\n  AnimationItem.prototype.resetSegments = function (forceFlag) {\n    (this || _global).segments.length = 0;\n\n    (this || _global).segments.push([(this || _global).animationData.ip, (this || _global).animationData.op]); // this.segments.push([this.animationData.ip*this.frameRate,Math.floor(this.animationData.op - this.animationData.ip+this.animationData.ip*this.frameRate)]);\n\n\n    if (forceFlag) {\n      this.checkSegments(0);\n    }\n  };\n\n  AnimationItem.prototype.checkSegments = function (offset) {\n    if ((this || _global).segments.length) {\n      this.adjustSegment((this || _global).segments.shift(), offset);\n      return true;\n    }\n\n    return false;\n  };\n\n  AnimationItem.prototype.destroy = function (name) {\n    if (name && (this || _global).name !== name || !(this || _global).renderer) {\n      return;\n    }\n\n    (this || _global).renderer.destroy();\n\n    (this || _global).imagePreloader.destroy();\n\n    this.trigger(\"destroy\");\n    (this || _global)._cbs = null;\n    (this || _global).onEnterFrame = null;\n    (this || _global).onLoopComplete = null;\n    (this || _global).onComplete = null;\n    (this || _global).onSegmentStart = null;\n    (this || _global).onDestroy = null;\n    (this || _global).renderer = null;\n    (this || _global).renderer = null;\n    (this || _global).imagePreloader = null;\n    (this || _global).projectInterface = null;\n  };\n\n  AnimationItem.prototype.setCurrentRawFrameValue = function (value) {\n    (this || _global).currentRawFrame = value;\n    this.gotoFrame();\n  };\n\n  AnimationItem.prototype.setSpeed = function (val) {\n    (this || _global).playSpeed = val;\n    this.updaFrameModifier();\n  };\n\n  AnimationItem.prototype.setDirection = function (val) {\n    (this || _global).playDirection = val < 0 ? -1 : 1;\n    this.updaFrameModifier();\n  };\n\n  AnimationItem.prototype.setVolume = function (val, name) {\n    if (name && (this || _global).name !== name) {\n      return;\n    }\n\n    (this || _global).audioController.setVolume(val);\n  };\n\n  AnimationItem.prototype.getVolume = function () {\n    return (this || _global).audioController.getVolume();\n  };\n\n  AnimationItem.prototype.mute = function (name) {\n    if (name && (this || _global).name !== name) {\n      return;\n    }\n\n    (this || _global).audioController.mute();\n  };\n\n  AnimationItem.prototype.unmute = function (name) {\n    if (name && (this || _global).name !== name) {\n      return;\n    }\n\n    (this || _global).audioController.unmute();\n  };\n\n  AnimationItem.prototype.updaFrameModifier = function () {\n    (this || _global).frameModifier = (this || _global).frameMult * (this || _global).playSpeed * (this || _global).playDirection;\n\n    (this || _global).audioController.setRate((this || _global).playSpeed * (this || _global).playDirection);\n  };\n\n  AnimationItem.prototype.getPath = function () {\n    return (this || _global).path;\n  };\n\n  AnimationItem.prototype.getAssetsPath = function (assetData) {\n    var path = \"\";\n\n    if (assetData.e) {\n      path = assetData.p;\n    } else if ((this || _global).assetsPath) {\n      var imagePath = assetData.p;\n\n      if (imagePath.indexOf(\"images/\") !== -1) {\n        imagePath = imagePath.split(\"/\")[1];\n      }\n\n      path = (this || _global).assetsPath + imagePath;\n    } else {\n      path = (this || _global).path;\n      path += assetData.u ? assetData.u : \"\";\n      path += assetData.p;\n    }\n\n    return path;\n  };\n\n  AnimationItem.prototype.getAssetData = function (id) {\n    var i = 0;\n    var len = (this || _global).assets.length;\n\n    while (i < len) {\n      if (id === (this || _global).assets[i].id) {\n        return (this || _global).assets[i];\n      }\n\n      i += 1;\n    }\n\n    return null;\n  };\n\n  AnimationItem.prototype.hide = function () {\n    (this || _global).renderer.hide();\n  };\n\n  AnimationItem.prototype.show = function () {\n    (this || _global).renderer.show();\n  };\n\n  AnimationItem.prototype.getDuration = function (isFrame) {\n    return isFrame ? (this || _global).totalFrames : (this || _global).totalFrames / (this || _global).frameRate;\n  };\n\n  AnimationItem.prototype.trigger = function (name) {\n    if ((this || _global)._cbs && (this || _global)._cbs[name]) {\n      switch (name) {\n        case \"enterFrame\":\n          this.triggerEvent(name, new BMEnterFrameEvent(name, (this || _global).currentFrame, (this || _global).totalFrames, (this || _global).frameModifier));\n          break;\n\n        case \"loopComplete\":\n          this.triggerEvent(name, new BMCompleteLoopEvent(name, (this || _global).loop, (this || _global).playCount, (this || _global).frameMult));\n          break;\n\n        case \"complete\":\n          this.triggerEvent(name, new BMCompleteEvent(name, (this || _global).frameMult));\n          break;\n\n        case \"segmentStart\":\n          this.triggerEvent(name, new BMSegmentStartEvent(name, (this || _global).firstFrame, (this || _global).totalFrames));\n          break;\n\n        case \"destroy\":\n          this.triggerEvent(name, new BMDestroyEvent(name, this || _global));\n          break;\n\n        default:\n          this.triggerEvent(name);\n      }\n    }\n\n    if (name === \"enterFrame\" && (this || _global).onEnterFrame) {\n      (this || _global).onEnterFrame.call(this || _global, new BMEnterFrameEvent(name, (this || _global).currentFrame, (this || _global).totalFrames, (this || _global).frameMult));\n    }\n\n    if (name === \"loopComplete\" && (this || _global).onLoopComplete) {\n      (this || _global).onLoopComplete.call(this || _global, new BMCompleteLoopEvent(name, (this || _global).loop, (this || _global).playCount, (this || _global).frameMult));\n    }\n\n    if (name === \"complete\" && (this || _global).onComplete) {\n      (this || _global).onComplete.call(this || _global, new BMCompleteEvent(name, (this || _global).frameMult));\n    }\n\n    if (name === \"segmentStart\" && (this || _global).onSegmentStart) {\n      (this || _global).onSegmentStart.call(this || _global, new BMSegmentStartEvent(name, (this || _global).firstFrame, (this || _global).totalFrames));\n    }\n\n    if (name === \"destroy\" && (this || _global).onDestroy) {\n      (this || _global).onDestroy.call(this || _global, new BMDestroyEvent(name, this || _global));\n    }\n  };\n\n  AnimationItem.prototype.triggerRenderFrameError = function (nativeError) {\n    var error = new BMRenderFrameErrorEvent(nativeError, (this || _global).currentFrame);\n    this.triggerEvent(\"error\", error);\n\n    if ((this || _global).onError) {\n      (this || _global).onError.call(this || _global, error);\n    }\n  };\n\n  AnimationItem.prototype.triggerConfigError = function (nativeError) {\n    var error = new BMConfigErrorEvent(nativeError, (this || _global).currentFrame);\n    this.triggerEvent(\"error\", error);\n\n    if ((this || _global).onError) {\n      (this || _global).onError.call(this || _global, error);\n    }\n  };\n  /* global CompExpressionInterface, expressionsPlugin: writable */\n\n  /* exported expressionsPlugin */\n\n\n  var Expressions = function () {\n    var ob = {};\n    ob.initExpressions = initExpressions;\n\n    function initExpressions(animation) {\n      var stackCount = 0;\n      var registers = [];\n\n      function pushExpression() {\n        stackCount += 1;\n      }\n\n      function popExpression() {\n        stackCount -= 1;\n\n        if (stackCount === 0) {\n          releaseInstances();\n        }\n      }\n\n      function registerExpressionProperty(expression) {\n        if (registers.indexOf(expression) === -1) {\n          registers.push(expression);\n        }\n      }\n\n      function releaseInstances() {\n        var i;\n        var len = registers.length;\n\n        for (i = 0; i < len; i += 1) {\n          registers[i].release();\n        }\n\n        registers.length = 0;\n      }\n\n      animation.renderer.compInterface = CompExpressionInterface(animation.renderer);\n      animation.renderer.globalData.projectInterface.registerComposition(animation.renderer);\n      animation.renderer.globalData.pushExpression = pushExpression;\n      animation.renderer.globalData.popExpression = popExpression;\n      animation.renderer.globalData.registerExpressionProperty = registerExpressionProperty;\n    }\n\n    return ob;\n  }();\n\n  expressionsPlugin = Expressions;\n  /* eslint-disable camelcase, no-unused-vars */\n\n  /* global BMMath, BezierFactory, createTypedArray, degToRads, shapePool */\n\n  var ExpressionManager = function () {\n    'use strict';\n\n    var ob = {};\n    var Math = BMMath;\n    var window = null;\n    var document = null;\n\n    function $bm_isInstanceOfArray(arr) {\n      return arr.constructor === Array || arr.constructor === Float32Array;\n    }\n\n    function isNumerable(tOfV, v) {\n      return tOfV === \"number\" || tOfV === \"boolean\" || tOfV === \"string\" || v instanceof Number;\n    }\n\n    function $bm_neg(a) {\n      var tOfA = typeof a;\n\n      if (tOfA === \"number\" || tOfA === \"boolean\" || a instanceof Number) {\n        return -a;\n      }\n\n      if ($bm_isInstanceOfArray(a)) {\n        var i;\n        var lenA = a.length;\n        var retArr = [];\n\n        for (i = 0; i < lenA; i += 1) {\n          retArr[i] = -a[i];\n        }\n\n        return retArr;\n      }\n\n      if (a.propType) {\n        return a.v;\n      }\n\n      return -a;\n    }\n\n    var easeInBez = BezierFactory.getBezierEasing(0.333, 0, 0.833, 0.833, \"easeIn\").get;\n    var easeOutBez = BezierFactory.getBezierEasing(0.167, 0.167, 0.667, 1, \"easeOut\").get;\n    var easeInOutBez = BezierFactory.getBezierEasing(0.33, 0, 0.667, 1, \"easeInOut\").get;\n\n    function sum(a, b) {\n      var tOfA = typeof a;\n      var tOfB = typeof b;\n\n      if (tOfA === \"string\" || tOfB === \"string\") {\n        return a + b;\n      }\n\n      if (isNumerable(tOfA, a) && isNumerable(tOfB, b)) {\n        return a + b;\n      }\n\n      if ($bm_isInstanceOfArray(a) && isNumerable(tOfB, b)) {\n        a = a.slice(0);\n        a[0] += b;\n        return a;\n      }\n\n      if (isNumerable(tOfA, a) && $bm_isInstanceOfArray(b)) {\n        b = b.slice(0);\n        b[0] = a + b[0];\n        return b;\n      }\n\n      if ($bm_isInstanceOfArray(a) && $bm_isInstanceOfArray(b)) {\n        var i = 0;\n        var lenA = a.length;\n        var lenB = b.length;\n        var retArr = [];\n\n        while (i < lenA || i < lenB) {\n          if ((typeof a[i] === \"number\" || a[i] instanceof Number) && (typeof b[i] === \"number\" || b[i] instanceof Number)) {\n            retArr[i] = a[i] + b[i];\n          } else {\n            retArr[i] = b[i] === undefined ? a[i] : a[i] || b[i];\n          }\n\n          i += 1;\n        }\n\n        return retArr;\n      }\n\n      return 0;\n    }\n\n    var add = sum;\n\n    function sub(a, b) {\n      var tOfA = typeof a;\n      var tOfB = typeof b;\n\n      if (isNumerable(tOfA, a) && isNumerable(tOfB, b)) {\n        if (tOfA === \"string\") {\n          a = parseInt(a, 10);\n        }\n\n        if (tOfB === \"string\") {\n          b = parseInt(b, 10);\n        }\n\n        return a - b;\n      }\n\n      if ($bm_isInstanceOfArray(a) && isNumerable(tOfB, b)) {\n        a = a.slice(0);\n        a[0] -= b;\n        return a;\n      }\n\n      if (isNumerable(tOfA, a) && $bm_isInstanceOfArray(b)) {\n        b = b.slice(0);\n        b[0] = a - b[0];\n        return b;\n      }\n\n      if ($bm_isInstanceOfArray(a) && $bm_isInstanceOfArray(b)) {\n        var i = 0;\n        var lenA = a.length;\n        var lenB = b.length;\n        var retArr = [];\n\n        while (i < lenA || i < lenB) {\n          if ((typeof a[i] === \"number\" || a[i] instanceof Number) && (typeof b[i] === \"number\" || b[i] instanceof Number)) {\n            retArr[i] = a[i] - b[i];\n          } else {\n            retArr[i] = b[i] === undefined ? a[i] : a[i] || b[i];\n          }\n\n          i += 1;\n        }\n\n        return retArr;\n      }\n\n      return 0;\n    }\n\n    function mul(a, b) {\n      var tOfA = typeof a;\n      var tOfB = typeof b;\n      var arr;\n\n      if (isNumerable(tOfA, a) && isNumerable(tOfB, b)) {\n        return a * b;\n      }\n\n      var i;\n      var len;\n\n      if ($bm_isInstanceOfArray(a) && isNumerable(tOfB, b)) {\n        len = a.length;\n        arr = createTypedArray(\"float32\", len);\n\n        for (i = 0; i < len; i += 1) {\n          arr[i] = a[i] * b;\n        }\n\n        return arr;\n      }\n\n      if (isNumerable(tOfA, a) && $bm_isInstanceOfArray(b)) {\n        len = b.length;\n        arr = createTypedArray(\"float32\", len);\n\n        for (i = 0; i < len; i += 1) {\n          arr[i] = a * b[i];\n        }\n\n        return arr;\n      }\n\n      return 0;\n    }\n\n    function div(a, b) {\n      var tOfA = typeof a;\n      var tOfB = typeof b;\n      var arr;\n\n      if (isNumerable(tOfA, a) && isNumerable(tOfB, b)) {\n        return a / b;\n      }\n\n      var i;\n      var len;\n\n      if ($bm_isInstanceOfArray(a) && isNumerable(tOfB, b)) {\n        len = a.length;\n        arr = createTypedArray(\"float32\", len);\n\n        for (i = 0; i < len; i += 1) {\n          arr[i] = a[i] / b;\n        }\n\n        return arr;\n      }\n\n      if (isNumerable(tOfA, a) && $bm_isInstanceOfArray(b)) {\n        len = b.length;\n        arr = createTypedArray(\"float32\", len);\n\n        for (i = 0; i < len; i += 1) {\n          arr[i] = a / b[i];\n        }\n\n        return arr;\n      }\n\n      return 0;\n    }\n\n    function mod(a, b) {\n      if (typeof a === \"string\") {\n        a = parseInt(a, 10);\n      }\n\n      if (typeof b === \"string\") {\n        b = parseInt(b, 10);\n      }\n\n      return a % b;\n    }\n\n    var $bm_sum = sum;\n    var $bm_sub = sub;\n    var $bm_mul = mul;\n    var $bm_div = div;\n    var $bm_mod = mod;\n\n    function clamp(num, min, max) {\n      if (min > max) {\n        var mm = max;\n        max = min;\n        min = mm;\n      }\n\n      return Math.min(Math.max(num, min), max);\n    }\n\n    function radiansToDegrees(val) {\n      return val / degToRads;\n    }\n\n    var radians_to_degrees = radiansToDegrees;\n\n    function degreesToRadians(val) {\n      return val * degToRads;\n    }\n\n    var degrees_to_radians = radiansToDegrees;\n    var helperLengthArray = [0, 0, 0, 0, 0, 0];\n\n    function length(arr1, arr2) {\n      if (typeof arr1 === \"number\" || arr1 instanceof Number) {\n        arr2 = arr2 || 0;\n        return Math.abs(arr1 - arr2);\n      }\n\n      if (!arr2) {\n        arr2 = helperLengthArray;\n      }\n\n      var i;\n      var len = Math.min(arr1.length, arr2.length);\n      var addedLength = 0;\n\n      for (i = 0; i < len; i += 1) {\n        addedLength += Math.pow(arr2[i] - arr1[i], 2);\n      }\n\n      return Math.sqrt(addedLength);\n    }\n\n    function normalize(vec) {\n      return div(vec, length(vec));\n    }\n\n    function rgbToHsl(val) {\n      var r = val[0];\n      var g = val[1];\n      var b = val[2];\n      var max = Math.max(r, g, b);\n      var min = Math.min(r, g, b);\n      var h;\n      var s;\n      var l = (max + min) / 2;\n\n      if (max === min) {\n        h = 0; // achromatic\n\n        s = 0; // achromatic\n      } else {\n        var d = max - min;\n        s = l > 0.5 ? d / (2 - max - min) : d / (max + min);\n\n        switch (max) {\n          case r:\n            h = (g - b) / d + (g < b ? 6 : 0);\n            break;\n\n          case g:\n            h = (b - r) / d + 2;\n            break;\n\n          case b:\n            h = (r - g) / d + 4;\n            break;\n\n          default:\n            break;\n        }\n\n        h /= 6;\n      }\n\n      return [h, s, l, val[3]];\n    }\n\n    function hue2rgb(p, q, t) {\n      if (t < 0) t += 1;\n      if (t > 1) t -= 1;\n      if (t < 1 / 6) return p + (q - p) * 6 * t;\n      if (t < 1 / 2) return q;\n      if (t < 2 / 3) return p + (q - p) * (2 / 3 - t) * 6;\n      return p;\n    }\n\n    function hslToRgb(val) {\n      var h = val[0];\n      var s = val[1];\n      var l = val[2];\n      var r;\n      var g;\n      var b;\n\n      if (s === 0) {\n        r = l; // achromatic\n\n        b = l; // achromatic\n\n        g = l; // achromatic\n      } else {\n        var q = l < 0.5 ? l * (1 + s) : l + s - l * s;\n        var p = 2 * l - q;\n        r = hue2rgb(p, q, h + 1 / 3);\n        g = hue2rgb(p, q, h);\n        b = hue2rgb(p, q, h - 1 / 3);\n      }\n\n      return [r, g, b, val[3]];\n    }\n\n    function linear(t, tMin, tMax, value1, value2) {\n      if (value1 === undefined || value2 === undefined) {\n        value1 = tMin;\n        value2 = tMax;\n        tMin = 0;\n        tMax = 1;\n      }\n\n      if (tMax < tMin) {\n        var _tMin = tMax;\n        tMax = tMin;\n        tMin = _tMin;\n      }\n\n      if (t <= tMin) {\n        return value1;\n      }\n\n      if (t >= tMax) {\n        return value2;\n      }\n\n      var perc = tMax === tMin ? 0 : (t - tMin) / (tMax - tMin);\n\n      if (!value1.length) {\n        return value1 + (value2 - value1) * perc;\n      }\n\n      var i;\n      var len = value1.length;\n      var arr = createTypedArray(\"float32\", len);\n\n      for (i = 0; i < len; i += 1) {\n        arr[i] = value1[i] + (value2[i] - value1[i]) * perc;\n      }\n\n      return arr;\n    }\n\n    function random(min, max) {\n      if (max === undefined) {\n        if (min === undefined) {\n          min = 0;\n          max = 1;\n        } else {\n          max = min;\n          min = undefined;\n        }\n      }\n\n      if (max.length) {\n        var i;\n        var len = max.length;\n\n        if (!min) {\n          min = createTypedArray(\"float32\", len);\n        }\n\n        var arr = createTypedArray(\"float32\", len);\n        var rnd = BMMath.random();\n\n        for (i = 0; i < len; i += 1) {\n          arr[i] = min[i] + rnd * (max[i] - min[i]);\n        }\n\n        return arr;\n      }\n\n      if (min === undefined) {\n        min = 0;\n      }\n\n      var rndm = BMMath.random();\n      return min + rndm * (max - min);\n    }\n\n    function createPath(points, inTangents, outTangents, closed) {\n      var i;\n      var len = points.length;\n      var path = shapePool.newElement();\n      path.setPathData(!!closed, len);\n      var arrPlaceholder = [0, 0];\n      var inVertexPoint;\n      var outVertexPoint;\n\n      for (i = 0; i < len; i += 1) {\n        inVertexPoint = inTangents && inTangents[i] ? inTangents[i] : arrPlaceholder;\n        outVertexPoint = outTangents && outTangents[i] ? outTangents[i] : arrPlaceholder;\n        path.setTripleAt(points[i][0], points[i][1], outVertexPoint[0] + points[i][0], outVertexPoint[1] + points[i][1], inVertexPoint[0] + points[i][0], inVertexPoint[1] + points[i][1], i, true);\n      }\n\n      return path;\n    }\n\n    function initiateExpression(elem, data, property) {\n      var val = data.x;\n      var needsVelocity = /velocity(?![\\w\\d])/.test(val);\n\n      var _needsRandom = val.indexOf(\"random\") !== -1;\n\n      var elemType = elem.data.ty;\n      var transform;\n      var $bm_transform;\n      var content;\n      var effect;\n      var thisProperty = property;\n      thisProperty.valueAtTime = thisProperty.getValueAtTime;\n      Object.defineProperty(thisProperty, \"value\", {\n        get: function () {\n          return thisProperty.v;\n        }\n      });\n      elem.comp.frameDuration = 1 / elem.comp.globalData.frameRate;\n      elem.comp.displayStartTime = 0;\n      var inPoint = elem.data.ip / elem.comp.globalData.frameRate;\n      var outPoint = elem.data.op / elem.comp.globalData.frameRate;\n      var width = elem.data.sw ? elem.data.sw : 0;\n      var height = elem.data.sh ? elem.data.sh : 0;\n      var name = elem.data.nm;\n      var loopIn;\n      var loop_in;\n      var loopOut;\n      var loop_out;\n      var smooth;\n      var toWorld;\n      var fromWorld;\n      var fromComp;\n      var toComp;\n      var fromCompToSurface;\n      var position;\n      var rotation;\n      var anchorPoint;\n      var scale;\n      var thisLayer;\n      var thisComp;\n      var mask;\n      var valueAtTime;\n      var velocityAtTime;\n      var scoped_bm_rt;\n      var expression_function = eval(\"[function _expression_function(){\" + val + \";scoped_bm_rt=$bm_rt}]\")[0]; // eslint-disable-line no-eval\n\n      var numKeys = property.kf ? data.k.length : 0;\n      var active = !(this || _global).data || (this || _global).data.hd !== true;\n\n      var wiggle = function wiggle(freq, amp) {\n        var iWiggle;\n        var j;\n        var lenWiggle = (this || _global).pv.length ? (this || _global).pv.length : 1;\n        var addedAmps = createTypedArray(\"float32\", lenWiggle);\n        freq = 5;\n        var iterations = Math.floor(time * freq);\n        iWiggle = 0;\n        j = 0;\n\n        while (iWiggle < iterations) {\n          // var rnd = BMMath.random();\n          for (j = 0; j < lenWiggle; j += 1) {\n            addedAmps[j] += -amp + amp * 2 * BMMath.random(); // addedAmps[j] += -amp + amp*2*rnd;\n          }\n\n          iWiggle += 1;\n        } // var rnd2 = BMMath.random();\n\n\n        var periods = time * freq;\n        var perc = periods - Math.floor(periods);\n        var arr = createTypedArray(\"float32\", lenWiggle);\n\n        if (lenWiggle > 1) {\n          for (j = 0; j < lenWiggle; j += 1) {\n            arr[j] = (this || _global).pv[j] + addedAmps[j] + (-amp + amp * 2 * BMMath.random()) * perc; // arr[j] = this.pv[j] + addedAmps[j] + (-amp + amp*2*rnd)*perc;\n            // arr[i] = this.pv[i] + addedAmp + amp1*perc + amp2*(1-perc);\n          }\n\n          return arr;\n        }\n\n        return (this || _global).pv + addedAmps[0] + (-amp + amp * 2 * BMMath.random()) * perc;\n      }.bind(this || _global);\n\n      if (thisProperty.loopIn) {\n        loopIn = thisProperty.loopIn.bind(thisProperty);\n        loop_in = loopIn;\n      }\n\n      if (thisProperty.loopOut) {\n        loopOut = thisProperty.loopOut.bind(thisProperty);\n        loop_out = loopOut;\n      }\n\n      if (thisProperty.smooth) {\n        smooth = thisProperty.smooth.bind(thisProperty);\n      }\n\n      function loopInDuration(type, duration) {\n        return loopIn(type, duration, true);\n      }\n\n      function loopOutDuration(type, duration) {\n        return loopOut(type, duration, true);\n      }\n\n      if ((this || _global).getValueAtTime) {\n        valueAtTime = (this || _global).getValueAtTime.bind(this || _global);\n      }\n\n      if ((this || _global).getVelocityAtTime) {\n        velocityAtTime = (this || _global).getVelocityAtTime.bind(this || _global);\n      }\n\n      var comp = elem.comp.globalData.projectInterface.bind(elem.comp.globalData.projectInterface);\n\n      function lookAt(elem1, elem2) {\n        var fVec = [elem2[0] - elem1[0], elem2[1] - elem1[1], elem2[2] - elem1[2]];\n        var pitch = Math.atan2(fVec[0], Math.sqrt(fVec[1] * fVec[1] + fVec[2] * fVec[2])) / degToRads;\n        var yaw = -Math.atan2(fVec[1], fVec[2]) / degToRads;\n        return [yaw, pitch, 0];\n      }\n\n      function easeOut(t, tMin, tMax, val1, val2) {\n        return applyEase(easeOutBez, t, tMin, tMax, val1, val2);\n      }\n\n      function easeIn(t, tMin, tMax, val1, val2) {\n        return applyEase(easeInBez, t, tMin, tMax, val1, val2);\n      }\n\n      function ease(t, tMin, tMax, val1, val2) {\n        return applyEase(easeInOutBez, t, tMin, tMax, val1, val2);\n      }\n\n      function applyEase(fn, t, tMin, tMax, val1, val2) {\n        if (val1 === undefined) {\n          val1 = tMin;\n          val2 = tMax;\n        } else {\n          t = (t - tMin) / (tMax - tMin);\n        }\n\n        if (t > 1) {\n          t = 1;\n        } else if (t < 0) {\n          t = 0;\n        }\n\n        var mult = fn(t);\n\n        if ($bm_isInstanceOfArray(val1)) {\n          var iKey;\n          var lenKey = val1.length;\n          var arr = createTypedArray(\"float32\", lenKey);\n\n          for (iKey = 0; iKey < lenKey; iKey += 1) {\n            arr[iKey] = (val2[iKey] - val1[iKey]) * mult + val1[iKey];\n          }\n\n          return arr;\n        }\n\n        return (val2 - val1) * mult + val1;\n      }\n\n      function nearestKey(time) {\n        var iKey;\n        var lenKey = data.k.length;\n        var index;\n        var keyTime;\n\n        if (!data.k.length || typeof data.k[0] === \"number\") {\n          index = 0;\n          keyTime = 0;\n        } else {\n          index = -1;\n          time *= elem.comp.globalData.frameRate;\n\n          if (time < data.k[0].t) {\n            index = 1;\n            keyTime = data.k[0].t;\n          } else {\n            for (iKey = 0; iKey < lenKey - 1; iKey += 1) {\n              if (time === data.k[iKey].t) {\n                index = iKey + 1;\n                keyTime = data.k[iKey].t;\n                break;\n              } else if (time > data.k[iKey].t && time < data.k[iKey + 1].t) {\n                if (time - data.k[iKey].t > data.k[iKey + 1].t - time) {\n                  index = iKey + 2;\n                  keyTime = data.k[iKey + 1].t;\n                } else {\n                  index = iKey + 1;\n                  keyTime = data.k[iKey].t;\n                }\n\n                break;\n              }\n            }\n\n            if (index === -1) {\n              index = iKey + 1;\n              keyTime = data.k[iKey].t;\n            }\n          }\n        }\n\n        var obKey = {};\n        obKey.index = index;\n        obKey.time = keyTime / elem.comp.globalData.frameRate;\n        return obKey;\n      }\n\n      function key(ind) {\n        var obKey;\n        var iKey;\n        var lenKey;\n\n        if (!data.k.length || typeof data.k[0] === \"number\") {\n          throw new Error(\"The property has no keyframe at index \" + ind);\n        }\n\n        ind -= 1;\n        obKey = {\n          time: data.k[ind].t / elem.comp.globalData.frameRate,\n          value: []\n        };\n        var arr = Object.prototype.hasOwnProperty.call(data.k[ind], \"s\") ? data.k[ind].s : data.k[ind - 1].e;\n        lenKey = arr.length;\n\n        for (iKey = 0; iKey < lenKey; iKey += 1) {\n          obKey[iKey] = arr[iKey];\n          obKey.value[iKey] = arr[iKey];\n        }\n\n        return obKey;\n      }\n\n      function framesToTime(frames, fps) {\n        if (!fps) {\n          fps = elem.comp.globalData.frameRate;\n        }\n\n        return frames / fps;\n      }\n\n      function timeToFrames(t, fps) {\n        if (!t && t !== 0) {\n          t = time;\n        }\n\n        if (!fps) {\n          fps = elem.comp.globalData.frameRate;\n        }\n\n        return t * fps;\n      }\n\n      function seedRandom(seed) {\n        BMMath.seedrandom(randSeed + seed);\n      }\n\n      function sourceRectAtTime() {\n        return elem.sourceRectAtTime();\n      }\n\n      function substring(init, end) {\n        if (typeof value === \"string\") {\n          if (end === undefined) {\n            return value.substring(init);\n          }\n\n          return value.substring(init, end);\n        }\n\n        return \"\";\n      }\n\n      function substr(init, end) {\n        if (typeof value === \"string\") {\n          if (end === undefined) {\n            return value.substr(init);\n          }\n\n          return value.substr(init, end);\n        }\n\n        return \"\";\n      }\n\n      function posterizeTime(framesPerSecond) {\n        time = framesPerSecond === 0 ? 0 : Math.floor(time * framesPerSecond) / framesPerSecond;\n        value = valueAtTime(time);\n      }\n\n      var time;\n      var velocity;\n      var value;\n      var text;\n      var textIndex;\n      var textTotal;\n      var selectorValue;\n      var index = elem.data.ind;\n      var hasParent = !!(elem.hierarchy && elem.hierarchy.length);\n      var parent;\n      var randSeed = Math.floor(Math.random() * 1000000);\n      var globalData = elem.globalData;\n\n      function executeExpression(_value) {\n        // globalData.pushExpression();\n        value = _value;\n\n        if (_needsRandom) {\n          seedRandom(randSeed);\n        }\n\n        if ((this || _global).frameExpressionId === elem.globalData.frameId && (this || _global).propType !== \"textSelector\") {\n          return value;\n        }\n\n        if ((this || _global).propType === \"textSelector\") {\n          textIndex = (this || _global).textIndex;\n          textTotal = (this || _global).textTotal;\n          selectorValue = (this || _global).selectorValue;\n        }\n\n        if (!thisLayer) {\n          text = elem.layerInterface.text;\n          thisLayer = elem.layerInterface;\n          thisComp = elem.comp.compInterface;\n          toWorld = thisLayer.toWorld.bind(thisLayer);\n          fromWorld = thisLayer.fromWorld.bind(thisLayer);\n          fromComp = thisLayer.fromComp.bind(thisLayer);\n          toComp = thisLayer.toComp.bind(thisLayer);\n          mask = thisLayer.mask ? thisLayer.mask.bind(thisLayer) : null;\n          fromCompToSurface = fromComp;\n        }\n\n        if (!transform) {\n          transform = elem.layerInterface(\"ADBE Transform Group\");\n          $bm_transform = transform;\n\n          if (transform) {\n            anchorPoint = transform.anchorPoint;\n            /* position = transform.position;\r\n                      rotation = transform.rotation;\r\n                      scale = transform.scale; */\n          }\n        }\n\n        if (elemType === 4 && !content) {\n          content = thisLayer(\"ADBE Root Vectors Group\");\n        }\n\n        if (!effect) {\n          effect = thisLayer(4);\n        }\n\n        hasParent = !!(elem.hierarchy && elem.hierarchy.length);\n\n        if (hasParent && !parent) {\n          parent = elem.hierarchy[0].layerInterface;\n        }\n\n        time = (this || _global).comp.renderedFrame / (this || _global).comp.globalData.frameRate;\n\n        if (needsVelocity) {\n          velocity = velocityAtTime(time);\n        }\n\n        expression_function();\n        (this || _global).frameExpressionId = elem.globalData.frameId; // TODO: Check if it's possible to return on ShapeInterface the .v value\n\n        if (scoped_bm_rt.propType === \"shape\") {\n          scoped_bm_rt = scoped_bm_rt.v;\n        } // globalData.popExpression();\n\n\n        return scoped_bm_rt;\n      }\n\n      return executeExpression;\n    }\n\n    ob.initiateExpression = initiateExpression;\n    return ob;\n  }();\n  /* global ExpressionManager, createTypedArray */\n\n  /* exported expressionHelpers */\n\n\n  var expressionHelpers = function () {\n    function searchExpressions(elem, data, prop) {\n      if (data.x) {\n        prop.k = true;\n        prop.x = true;\n        prop.initiateExpression = ExpressionManager.initiateExpression;\n        prop.effectsSequence.push(prop.initiateExpression(elem, data, prop).bind(prop));\n      }\n    }\n\n    function getValueAtTime(frameNum) {\n      frameNum *= (this || _global).elem.globalData.frameRate;\n      frameNum -= (this || _global).offsetTime;\n\n      if (frameNum !== (this || _global)._cachingAtTime.lastFrame) {\n        (this || _global)._cachingAtTime.lastIndex = (this || _global)._cachingAtTime.lastFrame < frameNum ? (this || _global)._cachingAtTime.lastIndex : 0;\n        (this || _global)._cachingAtTime.value = this.interpolateValue(frameNum, (this || _global)._cachingAtTime);\n        (this || _global)._cachingAtTime.lastFrame = frameNum;\n      }\n\n      return (this || _global)._cachingAtTime.value;\n    }\n\n    function getSpeedAtTime(frameNum) {\n      var delta = -0.01;\n      var v1 = this.getValueAtTime(frameNum);\n      var v2 = this.getValueAtTime(frameNum + delta);\n      var speed = 0;\n\n      if (v1.length) {\n        var i;\n\n        for (i = 0; i < v1.length; i += 1) {\n          speed += Math.pow(v2[i] - v1[i], 2);\n        }\n\n        speed = Math.sqrt(speed) * 100;\n      } else {\n        speed = 0;\n      }\n\n      return speed;\n    }\n\n    function getVelocityAtTime(frameNum) {\n      if ((this || _global).vel !== undefined) {\n        return (this || _global).vel;\n      }\n\n      var delta = -0.001; // frameNum += this.elem.data.st;\n\n      var v1 = this.getValueAtTime(frameNum);\n      var v2 = this.getValueAtTime(frameNum + delta);\n      var velocity;\n\n      if (v1.length) {\n        velocity = createTypedArray(\"float32\", v1.length);\n        var i;\n\n        for (i = 0; i < v1.length; i += 1) {\n          // removing frameRate\n          // if needed, don't add it here\n          // velocity[i] = this.elem.globalData.frameRate*((v2[i] - v1[i])/delta);\n          velocity[i] = (v2[i] - v1[i]) / delta;\n        }\n      } else {\n        velocity = (v2 - v1) / delta;\n      }\n\n      return velocity;\n    }\n\n    function getStaticValueAtTime() {\n      return (this || _global).pv;\n    }\n\n    function setGroupProperty(propertyGroup) {\n      (this || _global).propertyGroup = propertyGroup;\n    }\n\n    return {\n      searchExpressions: searchExpressions,\n      getSpeedAtTime: getSpeedAtTime,\n      getVelocityAtTime: getVelocityAtTime,\n      getValueAtTime: getValueAtTime,\n      getStaticValueAtTime: getStaticValueAtTime,\n      setGroupProperty: setGroupProperty\n    };\n  }();\n  /* global createTypedArray, Matrix, TransformPropertyFactory, expressionHelpers, PropertyFactory, expressionHelpers,\r\n  initialDefaultFrame, shapePool, ShapePropertyFactory, bez, extendPrototype, ExpressionManager, createSizedArray */\n\n\n  (function addPropertyDecorator() {\n    function loopOut(type, duration, durationFlag) {\n      if (!(this || _global).k || !(this || _global).keyframes) {\n        return (this || _global).pv;\n      }\n\n      type = type ? type.toLowerCase() : \"\";\n      var currentFrame = (this || _global).comp.renderedFrame;\n      var keyframes = (this || _global).keyframes;\n      var lastKeyFrame = keyframes[keyframes.length - 1].t;\n\n      if (currentFrame <= lastKeyFrame) {\n        return (this || _global).pv;\n      }\n\n      var cycleDuration;\n      var firstKeyFrame;\n\n      if (!durationFlag) {\n        if (!duration || duration > keyframes.length - 1) {\n          duration = keyframes.length - 1;\n        }\n\n        firstKeyFrame = keyframes[keyframes.length - 1 - duration].t;\n        cycleDuration = lastKeyFrame - firstKeyFrame;\n      } else {\n        if (!duration) {\n          cycleDuration = Math.max(0, lastKeyFrame - (this || _global).elem.data.ip);\n        } else {\n          cycleDuration = Math.abs(lastKeyFrame - (this || _global).elem.comp.globalData.frameRate * duration);\n        }\n\n        firstKeyFrame = lastKeyFrame - cycleDuration;\n      }\n\n      var i;\n      var len;\n      var ret;\n\n      if (type === \"pingpong\") {\n        var iterations = Math.floor((currentFrame - firstKeyFrame) / cycleDuration);\n\n        if (iterations % 2 !== 0) {\n          return this.getValueAtTime((cycleDuration - (currentFrame - firstKeyFrame) % cycleDuration + firstKeyFrame) / (this || _global).comp.globalData.frameRate, 0); // eslint-disable-line\n        }\n      } else if (type === \"offset\") {\n        var initV = this.getValueAtTime(firstKeyFrame / (this || _global).comp.globalData.frameRate, 0);\n        var endV = this.getValueAtTime(lastKeyFrame / (this || _global).comp.globalData.frameRate, 0);\n        var current = this.getValueAtTime(((currentFrame - firstKeyFrame) % cycleDuration + firstKeyFrame) / (this || _global).comp.globalData.frameRate, 0); // eslint-disable-line\n\n        var repeats = Math.floor((currentFrame - firstKeyFrame) / cycleDuration);\n\n        if ((this || _global).pv.length) {\n          ret = new Array(initV.length);\n          len = ret.length;\n\n          for (i = 0; i < len; i += 1) {\n            ret[i] = (endV[i] - initV[i]) * repeats + current[i];\n          }\n\n          return ret;\n        }\n\n        return (endV - initV) * repeats + current;\n      } else if (type === \"continue\") {\n        var lastValue = this.getValueAtTime(lastKeyFrame / (this || _global).comp.globalData.frameRate, 0);\n        var nextLastValue = this.getValueAtTime((lastKeyFrame - 0.001) / (this || _global).comp.globalData.frameRate, 0);\n\n        if ((this || _global).pv.length) {\n          ret = new Array(lastValue.length);\n          len = ret.length;\n\n          for (i = 0; i < len; i += 1) {\n            ret[i] = lastValue[i] + (lastValue[i] - nextLastValue[i]) * ((currentFrame - lastKeyFrame) / (this || _global).comp.globalData.frameRate) / 0.0005; // eslint-disable-line\n          }\n\n          return ret;\n        }\n\n        return lastValue + (lastValue - nextLastValue) * ((currentFrame - lastKeyFrame) / 0.001);\n      }\n\n      return this.getValueAtTime(((currentFrame - firstKeyFrame) % cycleDuration + firstKeyFrame) / (this || _global).comp.globalData.frameRate, 0); // eslint-disable-line\n    }\n\n    function loopIn(type, duration, durationFlag) {\n      if (!(this || _global).k) {\n        return (this || _global).pv;\n      }\n\n      type = type ? type.toLowerCase() : \"\";\n      var currentFrame = (this || _global).comp.renderedFrame;\n      var keyframes = (this || _global).keyframes;\n      var firstKeyFrame = keyframes[0].t;\n\n      if (currentFrame >= firstKeyFrame) {\n        return (this || _global).pv;\n      }\n\n      var cycleDuration;\n      var lastKeyFrame;\n\n      if (!durationFlag) {\n        if (!duration || duration > keyframes.length - 1) {\n          duration = keyframes.length - 1;\n        }\n\n        lastKeyFrame = keyframes[duration].t;\n        cycleDuration = lastKeyFrame - firstKeyFrame;\n      } else {\n        if (!duration) {\n          cycleDuration = Math.max(0, (this || _global).elem.data.op - firstKeyFrame);\n        } else {\n          cycleDuration = Math.abs((this || _global).elem.comp.globalData.frameRate * duration);\n        }\n\n        lastKeyFrame = firstKeyFrame + cycleDuration;\n      }\n\n      var i;\n      var len;\n      var ret;\n\n      if (type === \"pingpong\") {\n        var iterations = Math.floor((firstKeyFrame - currentFrame) / cycleDuration);\n\n        if (iterations % 2 === 0) {\n          return this.getValueAtTime(((firstKeyFrame - currentFrame) % cycleDuration + firstKeyFrame) / (this || _global).comp.globalData.frameRate, 0); // eslint-disable-line\n        }\n      } else if (type === \"offset\") {\n        var initV = this.getValueAtTime(firstKeyFrame / (this || _global).comp.globalData.frameRate, 0);\n        var endV = this.getValueAtTime(lastKeyFrame / (this || _global).comp.globalData.frameRate, 0);\n        var current = this.getValueAtTime((cycleDuration - (firstKeyFrame - currentFrame) % cycleDuration + firstKeyFrame) / (this || _global).comp.globalData.frameRate, 0);\n        var repeats = Math.floor((firstKeyFrame - currentFrame) / cycleDuration) + 1;\n\n        if ((this || _global).pv.length) {\n          ret = new Array(initV.length);\n          len = ret.length;\n\n          for (i = 0; i < len; i += 1) {\n            ret[i] = current[i] - (endV[i] - initV[i]) * repeats;\n          }\n\n          return ret;\n        }\n\n        return current - (endV - initV) * repeats;\n      } else if (type === \"continue\") {\n        var firstValue = this.getValueAtTime(firstKeyFrame / (this || _global).comp.globalData.frameRate, 0);\n        var nextFirstValue = this.getValueAtTime((firstKeyFrame + 0.001) / (this || _global).comp.globalData.frameRate, 0);\n\n        if ((this || _global).pv.length) {\n          ret = new Array(firstValue.length);\n          len = ret.length;\n\n          for (i = 0; i < len; i += 1) {\n            ret[i] = firstValue[i] + (firstValue[i] - nextFirstValue[i]) * (firstKeyFrame - currentFrame) / 0.001;\n          }\n\n          return ret;\n        }\n\n        return firstValue + (firstValue - nextFirstValue) * (firstKeyFrame - currentFrame) / 0.001;\n      }\n\n      return this.getValueAtTime((cycleDuration - ((firstKeyFrame - currentFrame) % cycleDuration + firstKeyFrame)) / (this || _global).comp.globalData.frameRate, 0); // eslint-disable-line\n    }\n\n    function smooth(width, samples) {\n      if (!(this || _global).k) {\n        return (this || _global).pv;\n      }\n\n      width = (width || 0.4) * 0.5;\n      samples = Math.floor(samples || 5);\n\n      if (samples <= 1) {\n        return (this || _global).pv;\n      }\n\n      var currentTime = (this || _global).comp.renderedFrame / (this || _global).comp.globalData.frameRate;\n      var initFrame = currentTime - width;\n      var endFrame = currentTime + width;\n      var sampleFrequency = samples > 1 ? (endFrame - initFrame) / (samples - 1) : 1;\n      var i = 0;\n      var j = 0;\n      var value;\n\n      if ((this || _global).pv.length) {\n        value = createTypedArray(\"float32\", (this || _global).pv.length);\n      } else {\n        value = 0;\n      }\n\n      var sampleValue;\n\n      while (i < samples) {\n        sampleValue = this.getValueAtTime(initFrame + i * sampleFrequency);\n\n        if ((this || _global).pv.length) {\n          for (j = 0; j < (this || _global).pv.length; j += 1) {\n            value[j] += sampleValue[j];\n          }\n        } else {\n          value += sampleValue;\n        }\n\n        i += 1;\n      }\n\n      if ((this || _global).pv.length) {\n        for (j = 0; j < (this || _global).pv.length; j += 1) {\n          value[j] /= samples;\n        }\n      } else {\n        value /= samples;\n      }\n\n      return value;\n    }\n\n    function getTransformValueAtTime(time) {\n      if (!(this || _global)._transformCachingAtTime) {\n        (this || _global)._transformCachingAtTime = {\n          v: new Matrix()\n        };\n      } /// /\n\n\n      var matrix = (this || _global)._transformCachingAtTime.v;\n      matrix.cloneFromProps((this || _global).pre.props);\n\n      if ((this || _global).appliedTransformations < 1) {\n        var anchor = (this || _global).a.getValueAtTime(time);\n\n        matrix.translate(-anchor[0] * (this || _global).a.mult, -anchor[1] * (this || _global).a.mult, anchor[2] * (this || _global).a.mult);\n      }\n\n      if ((this || _global).appliedTransformations < 2) {\n        var scale = (this || _global).s.getValueAtTime(time);\n\n        matrix.scale(scale[0] * (this || _global).s.mult, scale[1] * (this || _global).s.mult, scale[2] * (this || _global).s.mult);\n      }\n\n      if ((this || _global).sk && (this || _global).appliedTransformations < 3) {\n        var skew = (this || _global).sk.getValueAtTime(time);\n\n        var skewAxis = (this || _global).sa.getValueAtTime(time);\n\n        matrix.skewFromAxis(-skew * (this || _global).sk.mult, skewAxis * (this || _global).sa.mult);\n      }\n\n      if ((this || _global).r && (this || _global).appliedTransformations < 4) {\n        var rotation = (this || _global).r.getValueAtTime(time);\n\n        matrix.rotate(-rotation * (this || _global).r.mult);\n      } else if (!(this || _global).r && (this || _global).appliedTransformations < 4) {\n        var rotationZ = (this || _global).rz.getValueAtTime(time);\n\n        var rotationY = (this || _global).ry.getValueAtTime(time);\n\n        var rotationX = (this || _global).rx.getValueAtTime(time);\n\n        var orientation = (this || _global).or.getValueAtTime(time);\n\n        matrix.rotateZ(-rotationZ * (this || _global).rz.mult).rotateY(rotationY * (this || _global).ry.mult).rotateX(rotationX * (this || _global).rx.mult).rotateZ(-orientation[2] * (this || _global).or.mult).rotateY(orientation[1] * (this || _global).or.mult).rotateX(orientation[0] * (this || _global).or.mult);\n      }\n\n      if ((this || _global).data.p && (this || _global).data.p.s) {\n        var positionX = (this || _global).px.getValueAtTime(time);\n\n        var positionY = (this || _global).py.getValueAtTime(time);\n\n        if ((this || _global).data.p.z) {\n          var positionZ = (this || _global).pz.getValueAtTime(time);\n\n          matrix.translate(positionX * (this || _global).px.mult, positionY * (this || _global).py.mult, -positionZ * (this || _global).pz.mult);\n        } else {\n          matrix.translate(positionX * (this || _global).px.mult, positionY * (this || _global).py.mult, 0);\n        }\n      } else {\n        var position = (this || _global).p.getValueAtTime(time);\n\n        matrix.translate(position[0] * (this || _global).p.mult, position[1] * (this || _global).p.mult, -position[2] * (this || _global).p.mult);\n      }\n\n      return matrix; /// /\n    }\n\n    function getTransformStaticValueAtTime() {\n      return (this || _global).v.clone(new Matrix());\n    }\n\n    var getTransformProperty = TransformPropertyFactory.getTransformProperty;\n\n    TransformPropertyFactory.getTransformProperty = function (elem, data, container) {\n      var prop = getTransformProperty(elem, data, container);\n\n      if (prop.dynamicProperties.length) {\n        prop.getValueAtTime = getTransformValueAtTime.bind(prop);\n      } else {\n        prop.getValueAtTime = getTransformStaticValueAtTime.bind(prop);\n      }\n\n      prop.setGroupProperty = expressionHelpers.setGroupProperty;\n      return prop;\n    };\n\n    var propertyGetProp = PropertyFactory.getProp;\n\n    PropertyFactory.getProp = function (elem, data, type, mult, container) {\n      var prop = propertyGetProp(elem, data, type, mult, container); // prop.getVelocityAtTime = getVelocityAtTime;\n      // prop.loopOut = loopOut;\n      // prop.loopIn = loopIn;\n\n      if (prop.kf) {\n        prop.getValueAtTime = expressionHelpers.getValueAtTime.bind(prop);\n      } else {\n        prop.getValueAtTime = expressionHelpers.getStaticValueAtTime.bind(prop);\n      }\n\n      prop.setGroupProperty = expressionHelpers.setGroupProperty;\n      prop.loopOut = loopOut;\n      prop.loopIn = loopIn;\n      prop.smooth = smooth;\n      prop.getVelocityAtTime = expressionHelpers.getVelocityAtTime.bind(prop);\n      prop.getSpeedAtTime = expressionHelpers.getSpeedAtTime.bind(prop);\n      prop.numKeys = data.a === 1 ? data.k.length : 0;\n      prop.propertyIndex = data.ix;\n      var value = 0;\n\n      if (type !== 0) {\n        value = createTypedArray(\"float32\", data.a === 1 ? data.k[0].s.length : data.k.length);\n      }\n\n      prop._cachingAtTime = {\n        lastFrame: initialDefaultFrame,\n        lastIndex: 0,\n        value: value\n      };\n      expressionHelpers.searchExpressions(elem, data, prop);\n\n      if (prop.k) {\n        container.addDynamicProperty(prop);\n      }\n\n      return prop;\n    };\n\n    function getShapeValueAtTime(frameNum) {\n      // For now this caching object is created only when needed instead of creating it when the shape is initialized.\n      if (!(this || _global)._cachingAtTime) {\n        (this || _global)._cachingAtTime = {\n          shapeValue: shapePool.clone((this || _global).pv),\n          lastIndex: 0,\n          lastTime: initialDefaultFrame\n        };\n      }\n\n      frameNum *= (this || _global).elem.globalData.frameRate;\n      frameNum -= (this || _global).offsetTime;\n\n      if (frameNum !== (this || _global)._cachingAtTime.lastTime) {\n        (this || _global)._cachingAtTime.lastIndex = (this || _global)._cachingAtTime.lastTime < frameNum ? (this || _global)._caching.lastIndex : 0;\n        (this || _global)._cachingAtTime.lastTime = frameNum;\n        this.interpolateShape(frameNum, (this || _global)._cachingAtTime.shapeValue, (this || _global)._cachingAtTime);\n      }\n\n      return (this || _global)._cachingAtTime.shapeValue;\n    }\n\n    var ShapePropertyConstructorFunction = ShapePropertyFactory.getConstructorFunction();\n    var KeyframedShapePropertyConstructorFunction = ShapePropertyFactory.getKeyframedConstructorFunction();\n\n    function ShapeExpressions() {}\n\n    ShapeExpressions.prototype = {\n      vertices: function (prop, time) {\n        if ((this || _global).k) {\n          this.getValue();\n        }\n\n        var shapePath = (this || _global).v;\n\n        if (time !== undefined) {\n          shapePath = this.getValueAtTime(time, 0);\n        }\n\n        var i;\n        var len = shapePath._length;\n        var vertices = shapePath[prop];\n        var points = shapePath.v;\n        var arr = createSizedArray(len);\n\n        for (i = 0; i < len; i += 1) {\n          if (prop === \"i\" || prop === \"o\") {\n            arr[i] = [vertices[i][0] - points[i][0], vertices[i][1] - points[i][1]];\n          } else {\n            arr[i] = [vertices[i][0], vertices[i][1]];\n          }\n        }\n\n        return arr;\n      },\n      points: function (time) {\n        return this.vertices(\"v\", time);\n      },\n      inTangents: function (time) {\n        return this.vertices(\"i\", time);\n      },\n      outTangents: function (time) {\n        return this.vertices(\"o\", time);\n      },\n      isClosed: function () {\n        return (this || _global).v.c;\n      },\n      pointOnPath: function (perc, time) {\n        var shapePath = (this || _global).v;\n\n        if (time !== undefined) {\n          shapePath = this.getValueAtTime(time, 0);\n        }\n\n        if (!(this || _global)._segmentsLength) {\n          (this || _global)._segmentsLength = bez.getSegmentsLength(shapePath);\n        }\n\n        var segmentsLength = (this || _global)._segmentsLength;\n        var lengths = segmentsLength.lengths;\n        var lengthPos = segmentsLength.totalLength * perc;\n        var i = 0;\n        var len = lengths.length;\n        var accumulatedLength = 0;\n        var pt;\n\n        while (i < len) {\n          if (accumulatedLength + lengths[i].addedLength > lengthPos) {\n            var initIndex = i;\n            var endIndex = shapePath.c && i === len - 1 ? 0 : i + 1;\n            var segmentPerc = (lengthPos - accumulatedLength) / lengths[i].addedLength;\n            pt = bez.getPointInSegment(shapePath.v[initIndex], shapePath.v[endIndex], shapePath.o[initIndex], shapePath.i[endIndex], segmentPerc, lengths[i]);\n            break;\n          } else {\n            accumulatedLength += lengths[i].addedLength;\n          }\n\n          i += 1;\n        }\n\n        if (!pt) {\n          pt = shapePath.c ? [shapePath.v[0][0], shapePath.v[0][1]] : [shapePath.v[shapePath._length - 1][0], shapePath.v[shapePath._length - 1][1]];\n        }\n\n        return pt;\n      },\n      vectorOnPath: function (perc, time, vectorType) {\n        // perc doesn't use triple equality because it can be a Number object as well as a primitive.\n        if (perc == 1) {\n          // eslint-disable-line eqeqeq\n          perc = (this || _global).v.c;\n        } else if (perc == 0) {\n          // eslint-disable-line eqeqeq\n          perc = 0.999;\n        }\n\n        var pt1 = this.pointOnPath(perc, time);\n        var pt2 = this.pointOnPath(perc + 0.001, time);\n        var xLength = pt2[0] - pt1[0];\n        var yLength = pt2[1] - pt1[1];\n        var magnitude = Math.sqrt(Math.pow(xLength, 2) + Math.pow(yLength, 2));\n\n        if (magnitude === 0) {\n          return [0, 0];\n        }\n\n        var unitVector = vectorType === \"tangent\" ? [xLength / magnitude, yLength / magnitude] : [-yLength / magnitude, xLength / magnitude];\n        return unitVector;\n      },\n      tangentOnPath: function (perc, time) {\n        return this.vectorOnPath(perc, time, \"tangent\");\n      },\n      normalOnPath: function (perc, time) {\n        return this.vectorOnPath(perc, time, \"normal\");\n      },\n      setGroupProperty: expressionHelpers.setGroupProperty,\n      getValueAtTime: expressionHelpers.getStaticValueAtTime\n    };\n    extendPrototype([ShapeExpressions], ShapePropertyConstructorFunction);\n    extendPrototype([ShapeExpressions], KeyframedShapePropertyConstructorFunction);\n    KeyframedShapePropertyConstructorFunction.prototype.getValueAtTime = getShapeValueAtTime;\n    KeyframedShapePropertyConstructorFunction.prototype.initiateExpression = ExpressionManager.initiateExpression;\n    var propertyGetShapeProp = ShapePropertyFactory.getShapeProp;\n\n    ShapePropertyFactory.getShapeProp = function (elem, data, type, arr, trims) {\n      var prop = propertyGetShapeProp(elem, data, type, arr, trims);\n      prop.propertyIndex = data.ix;\n      prop.lock = false;\n\n      if (type === 3) {\n        expressionHelpers.searchExpressions(elem, data.pt, prop);\n      } else if (type === 4) {\n        expressionHelpers.searchExpressions(elem, data.ks, prop);\n      }\n\n      if (prop.k) {\n        elem.addDynamicProperty(prop);\n      }\n\n      return prop;\n    };\n  })();\n  /* global ExpressionManager, TextProperty */\n\n\n  (function addDecorator() {\n    function searchExpressions() {\n      if ((this || _global).data.d.x) {\n        (this || _global).calculateExpression = ExpressionManager.initiateExpression.bind(this || _global)((this || _global).elem, (this || _global).data.d, this || _global);\n        this.addEffect((this || _global).getExpressionValue.bind(this || _global));\n        return true;\n      }\n\n      return null;\n    }\n\n    TextProperty.prototype.getExpressionValue = function (currentValue, text) {\n      var newValue = this.calculateExpression(text);\n\n      if (currentValue.t !== newValue) {\n        var newData = {};\n        this.copyData(newData, currentValue);\n        newData.t = newValue.toString();\n        newData.__complete = false;\n        return newData;\n      }\n\n      return currentValue;\n    };\n\n    TextProperty.prototype.searchProperty = function () {\n      var isKeyframed = this.searchKeyframes();\n      var hasExpressions = this.searchExpressions();\n      (this || _global).kf = isKeyframed || hasExpressions;\n      return (this || _global).kf;\n    };\n\n    TextProperty.prototype.searchExpressions = searchExpressions;\n  })();\n  /* global propertyGroupFactory, PropertyInterface */\n\n  /* exported ShapePathInterface */\n\n\n  var ShapePathInterface = function () {\n    return function pathInterfaceFactory(shape, view, propertyGroup) {\n      var prop = view.sh;\n\n      function interfaceFunction(val) {\n        if (val === \"Shape\" || val === \"shape\" || val === \"Path\" || val === \"path\" || val === \"ADBE Vector Shape\" || val === 2) {\n          return interfaceFunction.path;\n        }\n\n        return null;\n      }\n\n      var _propertyGroup = propertyGroupFactory(interfaceFunction, propertyGroup);\n\n      prop.setGroupProperty(PropertyInterface(\"Path\", _propertyGroup));\n      Object.defineProperties(interfaceFunction, {\n        path: {\n          get: function () {\n            if (prop.k) {\n              prop.getValue();\n            }\n\n            return prop;\n          }\n        },\n        shape: {\n          get: function () {\n            if (prop.k) {\n              prop.getValue();\n            }\n\n            return prop;\n          }\n        },\n        _name: {\n          value: shape.nm\n        },\n        ix: {\n          value: shape.ix\n        },\n        propertyIndex: {\n          value: shape.ix\n        },\n        mn: {\n          value: shape.mn\n        },\n        propertyGroup: {\n          value: propertyGroup\n        }\n      });\n      return interfaceFunction;\n    };\n  }();\n  /* exported propertyGroupFactory */\n\n\n  var propertyGroupFactory = function () {\n    return function (interfaceFunction, parentPropertyGroup) {\n      return function (val) {\n        val = val === undefined ? 1 : val;\n\n        if (val <= 0) {\n          return interfaceFunction;\n        }\n\n        return parentPropertyGroup(val - 1);\n      };\n    };\n  }();\n  /* exported PropertyInterface */\n\n\n  var PropertyInterface = function () {\n    return function (propertyName, propertyGroup) {\n      var interfaceFunction = {\n        _name: propertyName\n      };\n\n      function _propertyGroup(val) {\n        val = val === undefined ? 1 : val;\n\n        if (val <= 0) {\n          return interfaceFunction;\n        }\n\n        return propertyGroup(val - 1);\n      }\n\n      return _propertyGroup;\n    };\n  }();\n  /* global ExpressionPropertyInterface, PropertyInterface, propertyGroupFactory, ShapePathInterface */\n\n  /* exported ShapeExpressionInterface */\n\n\n  var ShapeExpressionInterface = function () {\n    function iterateElements(shapes, view, propertyGroup) {\n      var arr = [];\n      var i;\n      var len = shapes ? shapes.length : 0;\n\n      for (i = 0; i < len; i += 1) {\n        if (shapes[i].ty === \"gr\") {\n          arr.push(groupInterfaceFactory(shapes[i], view[i], propertyGroup));\n        } else if (shapes[i].ty === \"fl\") {\n          arr.push(fillInterfaceFactory(shapes[i], view[i], propertyGroup));\n        } else if (shapes[i].ty === \"st\") {\n          arr.push(strokeInterfaceFactory(shapes[i], view[i], propertyGroup));\n        } else if (shapes[i].ty === \"tm\") {\n          arr.push(trimInterfaceFactory(shapes[i], view[i], propertyGroup));\n        } else if (shapes[i].ty === \"tr\") {// arr.push(transformInterfaceFactory(shapes[i],view[i],propertyGroup));\n        } else if (shapes[i].ty === \"el\") {\n          arr.push(ellipseInterfaceFactory(shapes[i], view[i], propertyGroup));\n        } else if (shapes[i].ty === \"sr\") {\n          arr.push(starInterfaceFactory(shapes[i], view[i], propertyGroup));\n        } else if (shapes[i].ty === \"sh\") {\n          arr.push(ShapePathInterface(shapes[i], view[i], propertyGroup));\n        } else if (shapes[i].ty === \"rc\") {\n          arr.push(rectInterfaceFactory(shapes[i], view[i], propertyGroup));\n        } else if (shapes[i].ty === \"rd\") {\n          arr.push(roundedInterfaceFactory(shapes[i], view[i], propertyGroup));\n        } else if (shapes[i].ty === \"rp\") {\n          arr.push(repeaterInterfaceFactory(shapes[i], view[i], propertyGroup));\n        }\n      }\n\n      return arr;\n    }\n\n    function contentsInterfaceFactory(shape, view, propertyGroup) {\n      var interfaces;\n\n      var interfaceFunction = function _interfaceFunction(value) {\n        var i = 0;\n        var len = interfaces.length;\n\n        while (i < len) {\n          if (interfaces[i]._name === value || interfaces[i].mn === value || interfaces[i].propertyIndex === value || interfaces[i].ix === value || interfaces[i].ind === value) {\n            return interfaces[i];\n          }\n\n          i += 1;\n        }\n\n        if (typeof value === \"number\") {\n          return interfaces[value - 1];\n        }\n\n        return null;\n      };\n\n      interfaceFunction.propertyGroup = propertyGroupFactory(interfaceFunction, propertyGroup);\n      interfaces = iterateElements(shape.it, view.it, interfaceFunction.propertyGroup);\n      interfaceFunction.numProperties = interfaces.length;\n      var transformInterface = transformInterfaceFactory(shape.it[shape.it.length - 1], view.it[view.it.length - 1], interfaceFunction.propertyGroup);\n      interfaceFunction.transform = transformInterface;\n      interfaceFunction.propertyIndex = shape.cix;\n      interfaceFunction._name = shape.nm;\n      return interfaceFunction;\n    }\n\n    function groupInterfaceFactory(shape, view, propertyGroup) {\n      var interfaceFunction = function _interfaceFunction(value) {\n        switch (value) {\n          case \"ADBE Vectors Group\":\n          case \"Contents\":\n          case 2:\n            return interfaceFunction.content;\n          // Not necessary for now. Keeping them here in case a new case appears\n          // case 'ADBE Vector Transform Group':\n          // case 3:\n\n          default:\n            return interfaceFunction.transform;\n        }\n      };\n\n      interfaceFunction.propertyGroup = propertyGroupFactory(interfaceFunction, propertyGroup);\n      var content = contentsInterfaceFactory(shape, view, interfaceFunction.propertyGroup);\n      var transformInterface = transformInterfaceFactory(shape.it[shape.it.length - 1], view.it[view.it.length - 1], interfaceFunction.propertyGroup);\n      interfaceFunction.content = content;\n      interfaceFunction.transform = transformInterface;\n      Object.defineProperty(interfaceFunction, \"_name\", {\n        get: function () {\n          return shape.nm;\n        }\n      }); // interfaceFunction.content = interfaceFunction;\n\n      interfaceFunction.numProperties = shape.np;\n      interfaceFunction.propertyIndex = shape.ix;\n      interfaceFunction.nm = shape.nm;\n      interfaceFunction.mn = shape.mn;\n      return interfaceFunction;\n    }\n\n    function fillInterfaceFactory(shape, view, propertyGroup) {\n      function interfaceFunction(val) {\n        if (val === \"Color\" || val === \"color\") {\n          return interfaceFunction.color;\n        }\n\n        if (val === \"Opacity\" || val === \"opacity\") {\n          return interfaceFunction.opacity;\n        }\n\n        return null;\n      }\n\n      Object.defineProperties(interfaceFunction, {\n        color: {\n          get: ExpressionPropertyInterface(view.c)\n        },\n        opacity: {\n          get: ExpressionPropertyInterface(view.o)\n        },\n        _name: {\n          value: shape.nm\n        },\n        mn: {\n          value: shape.mn\n        }\n      });\n      view.c.setGroupProperty(PropertyInterface(\"Color\", propertyGroup));\n      view.o.setGroupProperty(PropertyInterface(\"Opacity\", propertyGroup));\n      return interfaceFunction;\n    }\n\n    function strokeInterfaceFactory(shape, view, propertyGroup) {\n      var _propertyGroup = propertyGroupFactory(interfaceFunction, propertyGroup);\n\n      var _dashPropertyGroup = propertyGroupFactory(dashOb, _propertyGroup);\n\n      function addPropertyToDashOb(i) {\n        Object.defineProperty(dashOb, shape.d[i].nm, {\n          get: ExpressionPropertyInterface(view.d.dataProps[i].p)\n        });\n      }\n\n      var i;\n      var len = shape.d ? shape.d.length : 0;\n      var dashOb = {};\n\n      for (i = 0; i < len; i += 1) {\n        addPropertyToDashOb(i);\n        view.d.dataProps[i].p.setGroupProperty(_dashPropertyGroup);\n      }\n\n      function interfaceFunction(val) {\n        if (val === \"Color\" || val === \"color\") {\n          return interfaceFunction.color;\n        }\n\n        if (val === \"Opacity\" || val === \"opacity\") {\n          return interfaceFunction.opacity;\n        }\n\n        if (val === \"Stroke Width\" || val === \"stroke width\") {\n          return interfaceFunction.strokeWidth;\n        }\n\n        return null;\n      }\n\n      Object.defineProperties(interfaceFunction, {\n        color: {\n          get: ExpressionPropertyInterface(view.c)\n        },\n        opacity: {\n          get: ExpressionPropertyInterface(view.o)\n        },\n        strokeWidth: {\n          get: ExpressionPropertyInterface(view.w)\n        },\n        dash: {\n          get: function () {\n            return dashOb;\n          }\n        },\n        _name: {\n          value: shape.nm\n        },\n        mn: {\n          value: shape.mn\n        }\n      });\n      view.c.setGroupProperty(PropertyInterface(\"Color\", _propertyGroup));\n      view.o.setGroupProperty(PropertyInterface(\"Opacity\", _propertyGroup));\n      view.w.setGroupProperty(PropertyInterface(\"Stroke Width\", _propertyGroup));\n      return interfaceFunction;\n    }\n\n    function trimInterfaceFactory(shape, view, propertyGroup) {\n      function interfaceFunction(val) {\n        if (val === shape.e.ix || val === \"End\" || val === \"end\") {\n          return interfaceFunction.end;\n        }\n\n        if (val === shape.s.ix) {\n          return interfaceFunction.start;\n        }\n\n        if (val === shape.o.ix) {\n          return interfaceFunction.offset;\n        }\n\n        return null;\n      }\n\n      var _propertyGroup = propertyGroupFactory(interfaceFunction, propertyGroup);\n\n      interfaceFunction.propertyIndex = shape.ix;\n      view.s.setGroupProperty(PropertyInterface(\"Start\", _propertyGroup));\n      view.e.setGroupProperty(PropertyInterface(\"End\", _propertyGroup));\n      view.o.setGroupProperty(PropertyInterface(\"Offset\", _propertyGroup));\n      interfaceFunction.propertyIndex = shape.ix;\n      interfaceFunction.propertyGroup = propertyGroup;\n      Object.defineProperties(interfaceFunction, {\n        start: {\n          get: ExpressionPropertyInterface(view.s)\n        },\n        end: {\n          get: ExpressionPropertyInterface(view.e)\n        },\n        offset: {\n          get: ExpressionPropertyInterface(view.o)\n        },\n        _name: {\n          value: shape.nm\n        }\n      });\n      interfaceFunction.mn = shape.mn;\n      return interfaceFunction;\n    }\n\n    function transformInterfaceFactory(shape, view, propertyGroup) {\n      function interfaceFunction(value) {\n        if (shape.a.ix === value || value === \"Anchor Point\") {\n          return interfaceFunction.anchorPoint;\n        }\n\n        if (shape.o.ix === value || value === \"Opacity\") {\n          return interfaceFunction.opacity;\n        }\n\n        if (shape.p.ix === value || value === \"Position\") {\n          return interfaceFunction.position;\n        }\n\n        if (shape.r.ix === value || value === \"Rotation\" || value === \"ADBE Vector Rotation\") {\n          return interfaceFunction.rotation;\n        }\n\n        if (shape.s.ix === value || value === \"Scale\") {\n          return interfaceFunction.scale;\n        }\n\n        if (shape.sk && shape.sk.ix === value || value === \"Skew\") {\n          return interfaceFunction.skew;\n        }\n\n        if (shape.sa && shape.sa.ix === value || value === \"Skew Axis\") {\n          return interfaceFunction.skewAxis;\n        }\n\n        return null;\n      }\n\n      var _propertyGroup = propertyGroupFactory(interfaceFunction, propertyGroup);\n\n      view.transform.mProps.o.setGroupProperty(PropertyInterface(\"Opacity\", _propertyGroup));\n      view.transform.mProps.p.setGroupProperty(PropertyInterface(\"Position\", _propertyGroup));\n      view.transform.mProps.a.setGroupProperty(PropertyInterface(\"Anchor Point\", _propertyGroup));\n      view.transform.mProps.s.setGroupProperty(PropertyInterface(\"Scale\", _propertyGroup));\n      view.transform.mProps.r.setGroupProperty(PropertyInterface(\"Rotation\", _propertyGroup));\n\n      if (view.transform.mProps.sk) {\n        view.transform.mProps.sk.setGroupProperty(PropertyInterface(\"Skew\", _propertyGroup));\n        view.transform.mProps.sa.setGroupProperty(PropertyInterface(\"Skew Angle\", _propertyGroup));\n      }\n\n      view.transform.op.setGroupProperty(PropertyInterface(\"Opacity\", _propertyGroup));\n      Object.defineProperties(interfaceFunction, {\n        opacity: {\n          get: ExpressionPropertyInterface(view.transform.mProps.o)\n        },\n        position: {\n          get: ExpressionPropertyInterface(view.transform.mProps.p)\n        },\n        anchorPoint: {\n          get: ExpressionPropertyInterface(view.transform.mProps.a)\n        },\n        scale: {\n          get: ExpressionPropertyInterface(view.transform.mProps.s)\n        },\n        rotation: {\n          get: ExpressionPropertyInterface(view.transform.mProps.r)\n        },\n        skew: {\n          get: ExpressionPropertyInterface(view.transform.mProps.sk)\n        },\n        skewAxis: {\n          get: ExpressionPropertyInterface(view.transform.mProps.sa)\n        },\n        _name: {\n          value: shape.nm\n        }\n      });\n      interfaceFunction.ty = \"tr\";\n      interfaceFunction.mn = shape.mn;\n      interfaceFunction.propertyGroup = propertyGroup;\n      return interfaceFunction;\n    }\n\n    function ellipseInterfaceFactory(shape, view, propertyGroup) {\n      function interfaceFunction(value) {\n        if (shape.p.ix === value) {\n          return interfaceFunction.position;\n        }\n\n        if (shape.s.ix === value) {\n          return interfaceFunction.size;\n        }\n\n        return null;\n      }\n\n      var _propertyGroup = propertyGroupFactory(interfaceFunction, propertyGroup);\n\n      interfaceFunction.propertyIndex = shape.ix;\n      var prop = view.sh.ty === \"tm\" ? view.sh.prop : view.sh;\n      prop.s.setGroupProperty(PropertyInterface(\"Size\", _propertyGroup));\n      prop.p.setGroupProperty(PropertyInterface(\"Position\", _propertyGroup));\n      Object.defineProperties(interfaceFunction, {\n        size: {\n          get: ExpressionPropertyInterface(prop.s)\n        },\n        position: {\n          get: ExpressionPropertyInterface(prop.p)\n        },\n        _name: {\n          value: shape.nm\n        }\n      });\n      interfaceFunction.mn = shape.mn;\n      return interfaceFunction;\n    }\n\n    function starInterfaceFactory(shape, view, propertyGroup) {\n      function interfaceFunction(value) {\n        if (shape.p.ix === value) {\n          return interfaceFunction.position;\n        }\n\n        if (shape.r.ix === value) {\n          return interfaceFunction.rotation;\n        }\n\n        if (shape.pt.ix === value) {\n          return interfaceFunction.points;\n        }\n\n        if (shape.or.ix === value || value === \"ADBE Vector Star Outer Radius\") {\n          return interfaceFunction.outerRadius;\n        }\n\n        if (shape.os.ix === value) {\n          return interfaceFunction.outerRoundness;\n        }\n\n        if (shape.ir && (shape.ir.ix === value || value === \"ADBE Vector Star Inner Radius\")) {\n          return interfaceFunction.innerRadius;\n        }\n\n        if (shape.is && shape.is.ix === value) {\n          return interfaceFunction.innerRoundness;\n        }\n\n        return null;\n      }\n\n      var _propertyGroup = propertyGroupFactory(interfaceFunction, propertyGroup);\n\n      var prop = view.sh.ty === \"tm\" ? view.sh.prop : view.sh;\n      interfaceFunction.propertyIndex = shape.ix;\n      prop.or.setGroupProperty(PropertyInterface(\"Outer Radius\", _propertyGroup));\n      prop.os.setGroupProperty(PropertyInterface(\"Outer Roundness\", _propertyGroup));\n      prop.pt.setGroupProperty(PropertyInterface(\"Points\", _propertyGroup));\n      prop.p.setGroupProperty(PropertyInterface(\"Position\", _propertyGroup));\n      prop.r.setGroupProperty(PropertyInterface(\"Rotation\", _propertyGroup));\n\n      if (shape.ir) {\n        prop.ir.setGroupProperty(PropertyInterface(\"Inner Radius\", _propertyGroup));\n        prop.is.setGroupProperty(PropertyInterface(\"Inner Roundness\", _propertyGroup));\n      }\n\n      Object.defineProperties(interfaceFunction, {\n        position: {\n          get: ExpressionPropertyInterface(prop.p)\n        },\n        rotation: {\n          get: ExpressionPropertyInterface(prop.r)\n        },\n        points: {\n          get: ExpressionPropertyInterface(prop.pt)\n        },\n        outerRadius: {\n          get: ExpressionPropertyInterface(prop.or)\n        },\n        outerRoundness: {\n          get: ExpressionPropertyInterface(prop.os)\n        },\n        innerRadius: {\n          get: ExpressionPropertyInterface(prop.ir)\n        },\n        innerRoundness: {\n          get: ExpressionPropertyInterface(prop.is)\n        },\n        _name: {\n          value: shape.nm\n        }\n      });\n      interfaceFunction.mn = shape.mn;\n      return interfaceFunction;\n    }\n\n    function rectInterfaceFactory(shape, view, propertyGroup) {\n      function interfaceFunction(value) {\n        if (shape.p.ix === value) {\n          return interfaceFunction.position;\n        }\n\n        if (shape.r.ix === value) {\n          return interfaceFunction.roundness;\n        }\n\n        if (shape.s.ix === value || value === \"Size\" || value === \"ADBE Vector Rect Size\") {\n          return interfaceFunction.size;\n        }\n\n        return null;\n      }\n\n      var _propertyGroup = propertyGroupFactory(interfaceFunction, propertyGroup);\n\n      var prop = view.sh.ty === \"tm\" ? view.sh.prop : view.sh;\n      interfaceFunction.propertyIndex = shape.ix;\n      prop.p.setGroupProperty(PropertyInterface(\"Position\", _propertyGroup));\n      prop.s.setGroupProperty(PropertyInterface(\"Size\", _propertyGroup));\n      prop.r.setGroupProperty(PropertyInterface(\"Rotation\", _propertyGroup));\n      Object.defineProperties(interfaceFunction, {\n        position: {\n          get: ExpressionPropertyInterface(prop.p)\n        },\n        roundness: {\n          get: ExpressionPropertyInterface(prop.r)\n        },\n        size: {\n          get: ExpressionPropertyInterface(prop.s)\n        },\n        _name: {\n          value: shape.nm\n        }\n      });\n      interfaceFunction.mn = shape.mn;\n      return interfaceFunction;\n    }\n\n    function roundedInterfaceFactory(shape, view, propertyGroup) {\n      function interfaceFunction(value) {\n        if (shape.r.ix === value || value === \"Round Corners 1\") {\n          return interfaceFunction.radius;\n        }\n\n        return null;\n      }\n\n      var _propertyGroup = propertyGroupFactory(interfaceFunction, propertyGroup);\n\n      var prop = view;\n      interfaceFunction.propertyIndex = shape.ix;\n      prop.rd.setGroupProperty(PropertyInterface(\"Radius\", _propertyGroup));\n      Object.defineProperties(interfaceFunction, {\n        radius: {\n          get: ExpressionPropertyInterface(prop.rd)\n        },\n        _name: {\n          value: shape.nm\n        }\n      });\n      interfaceFunction.mn = shape.mn;\n      return interfaceFunction;\n    }\n\n    function repeaterInterfaceFactory(shape, view, propertyGroup) {\n      function interfaceFunction(value) {\n        if (shape.c.ix === value || value === \"Copies\") {\n          return interfaceFunction.copies;\n        }\n\n        if (shape.o.ix === value || value === \"Offset\") {\n          return interfaceFunction.offset;\n        }\n\n        return null;\n      }\n\n      var _propertyGroup = propertyGroupFactory(interfaceFunction, propertyGroup);\n\n      var prop = view;\n      interfaceFunction.propertyIndex = shape.ix;\n      prop.c.setGroupProperty(PropertyInterface(\"Copies\", _propertyGroup));\n      prop.o.setGroupProperty(PropertyInterface(\"Offset\", _propertyGroup));\n      Object.defineProperties(interfaceFunction, {\n        copies: {\n          get: ExpressionPropertyInterface(prop.c)\n        },\n        offset: {\n          get: ExpressionPropertyInterface(prop.o)\n        },\n        _name: {\n          value: shape.nm\n        }\n      });\n      interfaceFunction.mn = shape.mn;\n      return interfaceFunction;\n    }\n\n    return function (shapes, view, propertyGroup) {\n      var interfaces;\n\n      function _interfaceFunction(value) {\n        if (typeof value === \"number\") {\n          value = value === undefined ? 1 : value;\n\n          if (value === 0) {\n            return propertyGroup;\n          }\n\n          return interfaces[value - 1];\n        }\n\n        var i = 0;\n        var len = interfaces.length;\n\n        while (i < len) {\n          if (interfaces[i]._name === value) {\n            return interfaces[i];\n          }\n\n          i += 1;\n        }\n\n        return null;\n      }\n\n      function parentGroupWrapper() {\n        return propertyGroup;\n      }\n\n      _interfaceFunction.propertyGroup = propertyGroupFactory(_interfaceFunction, parentGroupWrapper);\n      interfaces = iterateElements(shapes, view, _interfaceFunction.propertyGroup);\n      _interfaceFunction.numProperties = interfaces.length;\n      _interfaceFunction._name = \"Contents\";\n      return _interfaceFunction;\n    };\n  }();\n  /* exported TextExpressionInterface */\n\n\n  var TextExpressionInterface = function () {\n    return function (elem) {\n      var _prevValue;\n\n      var _sourceText;\n\n      function _thisLayerFunction(name) {\n        switch (name) {\n          case \"ADBE Text Document\":\n            return _thisLayerFunction.sourceText;\n\n          default:\n            return null;\n        }\n      }\n\n      Object.defineProperty(_thisLayerFunction, \"sourceText\", {\n        get: function () {\n          elem.textProperty.getValue();\n          var stringValue = elem.textProperty.currentData.t;\n\n          if (stringValue !== _prevValue) {\n            elem.textProperty.currentData.t = _prevValue;\n            _sourceText = new String(stringValue); // eslint-disable-line no-new-wrappers\n            // If stringValue is an empty string, eval returns undefined, so it has to be returned as a String primitive\n\n            _sourceText.value = stringValue || new String(stringValue); // eslint-disable-line no-new-wrappers\n          }\n\n          return _sourceText;\n        }\n      });\n      return _thisLayerFunction;\n    };\n  }();\n  /* global Matrix, MaskManagerInterface, TransformExpressionInterface, getDescriptor */\n\n  /* exported LayerExpressionInterface */\n\n\n  var LayerExpressionInterface = function () {\n    function getMatrix(time) {\n      var toWorldMat = new Matrix();\n\n      if (time !== undefined) {\n        var propMatrix = (this || _global)._elem.finalTransform.mProp.getValueAtTime(time);\n\n        propMatrix.clone(toWorldMat);\n      } else {\n        var transformMat = (this || _global)._elem.finalTransform.mProp;\n        transformMat.applyToMatrix(toWorldMat);\n      }\n\n      return toWorldMat;\n    }\n\n    function toWorldVec(arr, time) {\n      var toWorldMat = this.getMatrix(time);\n      toWorldMat.props[12] = 0;\n      toWorldMat.props[13] = 0;\n      toWorldMat.props[14] = 0;\n      return this.applyPoint(toWorldMat, arr);\n    }\n\n    function toWorld(arr, time) {\n      var toWorldMat = this.getMatrix(time);\n      return this.applyPoint(toWorldMat, arr);\n    }\n\n    function fromWorldVec(arr, time) {\n      var toWorldMat = this.getMatrix(time);\n      toWorldMat.props[12] = 0;\n      toWorldMat.props[13] = 0;\n      toWorldMat.props[14] = 0;\n      return this.invertPoint(toWorldMat, arr);\n    }\n\n    function fromWorld(arr, time) {\n      var toWorldMat = this.getMatrix(time);\n      return this.invertPoint(toWorldMat, arr);\n    }\n\n    function applyPoint(matrix, arr) {\n      if ((this || _global)._elem.hierarchy && (this || _global)._elem.hierarchy.length) {\n        var i;\n        var len = (this || _global)._elem.hierarchy.length;\n\n        for (i = 0; i < len; i += 1) {\n          (this || _global)._elem.hierarchy[i].finalTransform.mProp.applyToMatrix(matrix);\n        }\n      }\n\n      return matrix.applyToPointArray(arr[0], arr[1], arr[2] || 0);\n    }\n\n    function invertPoint(matrix, arr) {\n      if ((this || _global)._elem.hierarchy && (this || _global)._elem.hierarchy.length) {\n        var i;\n        var len = (this || _global)._elem.hierarchy.length;\n\n        for (i = 0; i < len; i += 1) {\n          (this || _global)._elem.hierarchy[i].finalTransform.mProp.applyToMatrix(matrix);\n        }\n      }\n\n      return matrix.inversePoint(arr);\n    }\n\n    function fromComp(arr) {\n      var toWorldMat = new Matrix();\n      toWorldMat.reset();\n\n      (this || _global)._elem.finalTransform.mProp.applyToMatrix(toWorldMat);\n\n      if ((this || _global)._elem.hierarchy && (this || _global)._elem.hierarchy.length) {\n        var i;\n        var len = (this || _global)._elem.hierarchy.length;\n\n        for (i = 0; i < len; i += 1) {\n          (this || _global)._elem.hierarchy[i].finalTransform.mProp.applyToMatrix(toWorldMat);\n        }\n\n        return toWorldMat.inversePoint(arr);\n      }\n\n      return toWorldMat.inversePoint(arr);\n    }\n\n    function sampleImage() {\n      return [1, 1, 1, 1];\n    }\n\n    return function (elem) {\n      var transformInterface;\n\n      function _registerMaskInterface(maskManager) {\n        _thisLayerFunction.mask = new MaskManagerInterface(maskManager, elem);\n      }\n\n      function _registerEffectsInterface(effects) {\n        _thisLayerFunction.effect = effects;\n      }\n\n      function _thisLayerFunction(name) {\n        switch (name) {\n          case \"ADBE Root Vectors Group\":\n          case \"Contents\":\n          case 2:\n            return _thisLayerFunction.shapeInterface;\n\n          case 1:\n          case 6:\n          case \"Transform\":\n          case \"transform\":\n          case \"ADBE Transform Group\":\n            return transformInterface;\n\n          case 4:\n          case \"ADBE Effect Parade\":\n          case \"effects\":\n          case \"Effects\":\n            return _thisLayerFunction.effect;\n\n          case \"ADBE Text Properties\":\n            return _thisLayerFunction.textInterface;\n\n          default:\n            return null;\n        }\n      }\n\n      _thisLayerFunction.getMatrix = getMatrix;\n      _thisLayerFunction.invertPoint = invertPoint;\n      _thisLayerFunction.applyPoint = applyPoint;\n      _thisLayerFunction.toWorld = toWorld;\n      _thisLayerFunction.toWorldVec = toWorldVec;\n      _thisLayerFunction.fromWorld = fromWorld;\n      _thisLayerFunction.fromWorldVec = fromWorldVec;\n      _thisLayerFunction.toComp = toWorld;\n      _thisLayerFunction.fromComp = fromComp;\n      _thisLayerFunction.sampleImage = sampleImage;\n      _thisLayerFunction.sourceRectAtTime = elem.sourceRectAtTime.bind(elem);\n      _thisLayerFunction._elem = elem;\n      transformInterface = TransformExpressionInterface(elem.finalTransform.mProp);\n      var anchorPointDescriptor = getDescriptor(transformInterface, \"anchorPoint\");\n      Object.defineProperties(_thisLayerFunction, {\n        hasParent: {\n          get: function () {\n            return elem.hierarchy.length;\n          }\n        },\n        parent: {\n          get: function () {\n            return elem.hierarchy[0].layerInterface;\n          }\n        },\n        rotation: getDescriptor(transformInterface, \"rotation\"),\n        scale: getDescriptor(transformInterface, \"scale\"),\n        position: getDescriptor(transformInterface, \"position\"),\n        opacity: getDescriptor(transformInterface, \"opacity\"),\n        anchorPoint: anchorPointDescriptor,\n        anchor_point: anchorPointDescriptor,\n        transform: {\n          get: function () {\n            return transformInterface;\n          }\n        },\n        active: {\n          get: function () {\n            return elem.isInRange;\n          }\n        }\n      });\n      _thisLayerFunction.startTime = elem.data.st;\n      _thisLayerFunction.index = elem.data.ind;\n      _thisLayerFunction.source = elem.data.refId;\n      _thisLayerFunction.height = elem.data.ty === 0 ? elem.data.h : 100;\n      _thisLayerFunction.width = elem.data.ty === 0 ? elem.data.w : 100;\n      _thisLayerFunction.inPoint = elem.data.ip / elem.comp.globalData.frameRate;\n      _thisLayerFunction.outPoint = elem.data.op / elem.comp.globalData.frameRate;\n      _thisLayerFunction._name = elem.data.nm;\n      _thisLayerFunction.registerMaskInterface = _registerMaskInterface;\n      _thisLayerFunction.registerEffectsInterface = _registerEffectsInterface;\n      return _thisLayerFunction;\n    };\n  }();\n  /* global */\n\n  /* exported FootageInterface */\n\n\n  var FootageInterface = function () {\n    var outlineInterfaceFactory = function (elem) {\n      var currentPropertyName = \"\";\n      var currentProperty = elem.getFootageData();\n\n      function init() {\n        currentPropertyName = \"\";\n        currentProperty = elem.getFootageData();\n        return searchProperty;\n      }\n\n      function searchProperty(value) {\n        if (currentProperty[value]) {\n          currentPropertyName = value;\n          currentProperty = currentProperty[value];\n\n          if (typeof currentProperty === \"object\") {\n            return searchProperty;\n          }\n\n          return currentProperty;\n        }\n\n        var propertyNameIndex = value.indexOf(currentPropertyName);\n\n        if (propertyNameIndex !== -1) {\n          var index = parseInt(value.substr(propertyNameIndex + currentPropertyName.length), 10);\n          currentProperty = currentProperty[index];\n\n          if (typeof currentProperty === \"object\") {\n            return searchProperty;\n          }\n\n          return currentProperty;\n        }\n\n        return \"\";\n      }\n\n      return init;\n    };\n\n    var dataInterfaceFactory = function (elem) {\n      function interfaceFunction(value) {\n        if (value === \"Outline\") {\n          return interfaceFunction.outlineInterface();\n        }\n\n        return null;\n      }\n\n      interfaceFunction._name = \"Outline\";\n      interfaceFunction.outlineInterface = outlineInterfaceFactory(elem);\n      return interfaceFunction;\n    };\n\n    return function (elem) {\n      function _interfaceFunction(value) {\n        if (value === \"Data\") {\n          return _interfaceFunction.dataInterface;\n        }\n\n        return null;\n      }\n\n      _interfaceFunction._name = \"Data\";\n      _interfaceFunction.dataInterface = dataInterfaceFactory(elem);\n      return _interfaceFunction;\n    };\n  }();\n  /* exported CompExpressionInterface */\n\n\n  var CompExpressionInterface = function () {\n    return function (comp) {\n      function _thisLayerFunction(name) {\n        var i = 0;\n        var len = comp.layers.length;\n\n        while (i < len) {\n          if (comp.layers[i].nm === name || comp.layers[i].ind === name) {\n            return comp.elements[i].layerInterface;\n          }\n\n          i += 1;\n        }\n\n        return null; // return {active:false};\n      }\n\n      Object.defineProperty(_thisLayerFunction, \"_name\", {\n        value: comp.data.nm\n      });\n      _thisLayerFunction.layer = _thisLayerFunction;\n      _thisLayerFunction.pixelAspect = 1;\n      _thisLayerFunction.height = comp.data.h || comp.globalData.compSize.h;\n      _thisLayerFunction.width = comp.data.w || comp.globalData.compSize.w;\n      _thisLayerFunction.pixelAspect = 1;\n      _thisLayerFunction.frameDuration = 1 / comp.globalData.frameRate;\n      _thisLayerFunction.displayStartTime = 0;\n      _thisLayerFunction.numLayers = comp.layers.length;\n      return _thisLayerFunction;\n    };\n  }();\n  /* global ExpressionPropertyInterface */\n\n  /* exported TransformExpressionInterface */\n\n\n  var TransformExpressionInterface = function () {\n    return function (transform) {\n      function _thisFunction(name) {\n        switch (name) {\n          case \"scale\":\n          case \"Scale\":\n          case \"ADBE Scale\":\n          case 6:\n            return _thisFunction.scale;\n\n          case \"rotation\":\n          case \"Rotation\":\n          case \"ADBE Rotation\":\n          case \"ADBE Rotate Z\":\n          case 10:\n            return _thisFunction.rotation;\n\n          case \"ADBE Rotate X\":\n            return _thisFunction.xRotation;\n\n          case \"ADBE Rotate Y\":\n            return _thisFunction.yRotation;\n\n          case \"position\":\n          case \"Position\":\n          case \"ADBE Position\":\n          case 2:\n            return _thisFunction.position;\n\n          case \"ADBE Position_0\":\n            return _thisFunction.xPosition;\n\n          case \"ADBE Position_1\":\n            return _thisFunction.yPosition;\n\n          case \"ADBE Position_2\":\n            return _thisFunction.zPosition;\n\n          case \"anchorPoint\":\n          case \"AnchorPoint\":\n          case \"Anchor Point\":\n          case \"ADBE AnchorPoint\":\n          case 1:\n            return _thisFunction.anchorPoint;\n\n          case \"opacity\":\n          case \"Opacity\":\n          case 11:\n            return _thisFunction.opacity;\n\n          default:\n            return null;\n        }\n      }\n\n      Object.defineProperty(_thisFunction, \"rotation\", {\n        get: ExpressionPropertyInterface(transform.r || transform.rz)\n      });\n      Object.defineProperty(_thisFunction, \"zRotation\", {\n        get: ExpressionPropertyInterface(transform.rz || transform.r)\n      });\n      Object.defineProperty(_thisFunction, \"xRotation\", {\n        get: ExpressionPropertyInterface(transform.rx)\n      });\n      Object.defineProperty(_thisFunction, \"yRotation\", {\n        get: ExpressionPropertyInterface(transform.ry)\n      });\n      Object.defineProperty(_thisFunction, \"scale\", {\n        get: ExpressionPropertyInterface(transform.s)\n      });\n\n      var _px;\n\n      var _py;\n\n      var _pz;\n\n      var _transformFactory;\n\n      if (transform.p) {\n        _transformFactory = ExpressionPropertyInterface(transform.p);\n      } else {\n        _px = ExpressionPropertyInterface(transform.px);\n        _py = ExpressionPropertyInterface(transform.py);\n\n        if (transform.pz) {\n          _pz = ExpressionPropertyInterface(transform.pz);\n        }\n      }\n\n      Object.defineProperty(_thisFunction, \"position\", {\n        get: function () {\n          if (transform.p) {\n            return _transformFactory();\n          }\n\n          return [_px(), _py(), _pz ? _pz() : 0];\n        }\n      });\n      Object.defineProperty(_thisFunction, \"xPosition\", {\n        get: ExpressionPropertyInterface(transform.px)\n      });\n      Object.defineProperty(_thisFunction, \"yPosition\", {\n        get: ExpressionPropertyInterface(transform.py)\n      });\n      Object.defineProperty(_thisFunction, \"zPosition\", {\n        get: ExpressionPropertyInterface(transform.pz)\n      });\n      Object.defineProperty(_thisFunction, \"anchorPoint\", {\n        get: ExpressionPropertyInterface(transform.a)\n      });\n      Object.defineProperty(_thisFunction, \"opacity\", {\n        get: ExpressionPropertyInterface(transform.o)\n      });\n      Object.defineProperty(_thisFunction, \"skew\", {\n        get: ExpressionPropertyInterface(transform.sk)\n      });\n      Object.defineProperty(_thisFunction, \"skewAxis\", {\n        get: ExpressionPropertyInterface(transform.sa)\n      });\n      Object.defineProperty(_thisFunction, \"orientation\", {\n        get: ExpressionPropertyInterface(transform.or)\n      });\n      return _thisFunction;\n    };\n  }();\n  /* exported ProjectInterface */\n\n\n  ProjectInterface = function () {\n    function registerComposition(comp) {\n      (this || _global).compositions.push(comp);\n    }\n\n    return function () {\n      function _thisProjectFunction(name) {\n        var i = 0;\n        var len = (this || _global).compositions.length;\n\n        while (i < len) {\n          if ((this || _global).compositions[i].data && (this || _global).compositions[i].data.nm === name) {\n            if ((this || _global).compositions[i].prepareFrame && (this || _global).compositions[i].data.xt) {\n              (this || _global).compositions[i].prepareFrame((this || _global).currentFrame);\n            }\n\n            return (this || _global).compositions[i].compInterface;\n          }\n\n          i += 1;\n        }\n\n        return null;\n      }\n\n      _thisProjectFunction.compositions = [];\n      _thisProjectFunction.currentFrame = 0;\n      _thisProjectFunction.registerComposition = registerComposition;\n      return _thisProjectFunction;\n    };\n  }();\n  /* global propertyGroupFactory, ExpressionPropertyInterface, PropertyInterface */\n\n  /* exported EffectsExpressionInterface */\n\n\n  var EffectsExpressionInterface = function () {\n    var ob = {\n      createEffectsInterface: createEffectsInterface\n    };\n\n    function createEffectsInterface(elem, propertyGroup) {\n      if (elem.effectsManager) {\n        var effectElements = [];\n        var effectsData = elem.data.ef;\n        var i;\n        var len = elem.effectsManager.effectElements.length;\n\n        for (i = 0; i < len; i += 1) {\n          effectElements.push(createGroupInterface(effectsData[i], elem.effectsManager.effectElements[i], propertyGroup, elem));\n        }\n\n        var effects = elem.data.ef || [];\n\n        var groupInterface = function (name) {\n          i = 0;\n          len = effects.length;\n\n          while (i < len) {\n            if (name === effects[i].nm || name === effects[i].mn || name === effects[i].ix) {\n              return effectElements[i];\n            }\n\n            i += 1;\n          }\n\n          return null;\n        };\n\n        Object.defineProperty(groupInterface, \"numProperties\", {\n          get: function () {\n            return effects.length;\n          }\n        });\n        return groupInterface;\n      }\n\n      return null;\n    }\n\n    function createGroupInterface(data, elements, propertyGroup, elem) {\n      function groupInterface(name) {\n        var effects = data.ef;\n        var i = 0;\n        var len = effects.length;\n\n        while (i < len) {\n          if (name === effects[i].nm || name === effects[i].mn || name === effects[i].ix) {\n            if (effects[i].ty === 5) {\n              return effectElements[i];\n            }\n\n            return effectElements[i]();\n          }\n\n          i += 1;\n        }\n\n        throw new Error();\n      }\n\n      var _propertyGroup = propertyGroupFactory(groupInterface, propertyGroup);\n\n      var effectElements = [];\n      var i;\n      var len = data.ef.length;\n\n      for (i = 0; i < len; i += 1) {\n        if (data.ef[i].ty === 5) {\n          effectElements.push(createGroupInterface(data.ef[i], elements.effectElements[i], elements.effectElements[i].propertyGroup, elem));\n        } else {\n          effectElements.push(createValueInterface(elements.effectElements[i], data.ef[i].ty, elem, _propertyGroup));\n        }\n      }\n\n      if (data.mn === \"ADBE Color Control\") {\n        Object.defineProperty(groupInterface, \"color\", {\n          get: function () {\n            return effectElements[0]();\n          }\n        });\n      }\n\n      Object.defineProperties(groupInterface, {\n        numProperties: {\n          get: function () {\n            return data.np;\n          }\n        },\n        _name: {\n          value: data.nm\n        },\n        propertyGroup: {\n          value: _propertyGroup\n        }\n      });\n      groupInterface.enabled = data.en !== 0;\n      groupInterface.active = groupInterface.enabled;\n      return groupInterface;\n    }\n\n    function createValueInterface(element, type, elem, propertyGroup) {\n      var expressionProperty = ExpressionPropertyInterface(element.p);\n\n      function interfaceFunction() {\n        if (type === 10) {\n          return elem.comp.compInterface(element.p.v);\n        }\n\n        return expressionProperty();\n      }\n\n      if (element.p.setGroupProperty) {\n        element.p.setGroupProperty(PropertyInterface(\"\", propertyGroup));\n      }\n\n      return interfaceFunction;\n    }\n\n    return ob;\n  }();\n  /* global createSizedArray */\n\n  /* exported MaskManagerInterface */\n\n\n  var MaskManagerInterface = function () {\n    function MaskInterface(mask, data) {\n      (this || _global)._mask = mask;\n      (this || _global)._data = data;\n    }\n\n    Object.defineProperty(MaskInterface.prototype, \"maskPath\", {\n      get: function () {\n        if ((this || _global)._mask.prop.k) {\n          (this || _global)._mask.prop.getValue();\n        }\n\n        return (this || _global)._mask.prop;\n      }\n    });\n    Object.defineProperty(MaskInterface.prototype, \"maskOpacity\", {\n      get: function () {\n        if ((this || _global)._mask.op.k) {\n          (this || _global)._mask.op.getValue();\n        }\n\n        return (this || _global)._mask.op.v * 100;\n      }\n    });\n\n    var MaskManager = function (maskManager) {\n      var _masksInterfaces = createSizedArray(maskManager.viewData.length);\n\n      var i;\n      var len = maskManager.viewData.length;\n\n      for (i = 0; i < len; i += 1) {\n        _masksInterfaces[i] = new MaskInterface(maskManager.viewData[i], maskManager.masksProperties[i]);\n      }\n\n      var maskFunction = function (name) {\n        i = 0;\n\n        while (i < len) {\n          if (maskManager.masksProperties[i].nm === name) {\n            return _masksInterfaces[i];\n          }\n\n          i += 1;\n        }\n\n        return null;\n      };\n\n      return maskFunction;\n    };\n\n    return MaskManager;\n  }();\n  /* global createTypedArray */\n\n  /* exported ExpressionPropertyInterface */\n\n\n  var ExpressionPropertyInterface = function () {\n    var defaultUnidimensionalValue = {\n      pv: 0,\n      v: 0,\n      mult: 1\n    };\n    var defaultMultidimensionalValue = {\n      pv: [0, 0, 0],\n      v: [0, 0, 0],\n      mult: 1\n    };\n\n    function completeProperty(expressionValue, property, type) {\n      Object.defineProperty(expressionValue, \"velocity\", {\n        get: function () {\n          return property.getVelocityAtTime(property.comp.currentFrame);\n        }\n      });\n      expressionValue.numKeys = property.keyframes ? property.keyframes.length : 0;\n\n      expressionValue.key = function (pos) {\n        if (!expressionValue.numKeys) {\n          return 0;\n        }\n\n        var value = \"\";\n\n        if (\"s\" in property.keyframes[pos - 1]) {\n          value = property.keyframes[pos - 1].s;\n        } else if (\"e\" in property.keyframes[pos - 2]) {\n          value = property.keyframes[pos - 2].e;\n        } else {\n          value = property.keyframes[pos - 2].s;\n        }\n\n        var valueProp = type === \"unidimensional\" ? new Number(value) : Object.assign({}, value); // eslint-disable-line no-new-wrappers\n\n        valueProp.time = property.keyframes[pos - 1].t / property.elem.comp.globalData.frameRate;\n        valueProp.value = type === \"unidimensional\" ? value[0] : value;\n        return valueProp;\n      };\n\n      expressionValue.valueAtTime = property.getValueAtTime;\n      expressionValue.speedAtTime = property.getSpeedAtTime;\n      expressionValue.velocityAtTime = property.getVelocityAtTime;\n      expressionValue.propertyGroup = property.propertyGroup;\n    }\n\n    function UnidimensionalPropertyInterface(property) {\n      if (!property || !(\"pv\" in property)) {\n        property = defaultUnidimensionalValue;\n      }\n\n      var mult = 1 / property.mult;\n      var val = property.pv * mult;\n      var expressionValue = new Number(val); // eslint-disable-line no-new-wrappers\n\n      expressionValue.value = val;\n      completeProperty(expressionValue, property, \"unidimensional\");\n      return function () {\n        if (property.k) {\n          property.getValue();\n        }\n\n        val = property.v * mult;\n\n        if (expressionValue.value !== val) {\n          expressionValue = new Number(val); // eslint-disable-line no-new-wrappers\n\n          expressionValue.value = val;\n          completeProperty(expressionValue, property, \"unidimensional\");\n        }\n\n        return expressionValue;\n      };\n    }\n\n    function MultidimensionalPropertyInterface(property) {\n      if (!property || !(\"pv\" in property)) {\n        property = defaultMultidimensionalValue;\n      }\n\n      var mult = 1 / property.mult;\n      var len = property.data && property.data.l || property.pv.length;\n      var expressionValue = createTypedArray(\"float32\", len);\n      var arrValue = createTypedArray(\"float32\", len);\n      expressionValue.value = arrValue;\n      completeProperty(expressionValue, property, \"multidimensional\");\n      return function () {\n        if (property.k) {\n          property.getValue();\n        }\n\n        for (var i = 0; i < len; i += 1) {\n          arrValue[i] = property.v[i] * mult;\n          expressionValue[i] = arrValue[i];\n        }\n\n        return expressionValue;\n      };\n    } // TODO: try to avoid using this getter\n\n\n    function defaultGetter() {\n      return defaultUnidimensionalValue;\n    }\n\n    return function (property) {\n      if (!property) {\n        return defaultGetter;\n      }\n\n      if (property.propType === \"unidimensional\") {\n        return UnidimensionalPropertyInterface(property);\n      }\n\n      return MultidimensionalPropertyInterface(property);\n    };\n  }();\n  /* global expressionHelpers, TextSelectorProp, ExpressionManager */\n\n  /* exported TextExpressionSelectorProp */\n\n\n  (function () {\n    var TextExpressionSelectorProp = function () {\n      // eslint-disable-line no-unused-vars\n      function getValueProxy(index, total) {\n        (this || _global).textIndex = index + 1;\n        (this || _global).textTotal = total;\n        (this || _global).v = this.getValue() * (this || _global).mult;\n        return (this || _global).v;\n      }\n\n      return function TextExpressionSelectorPropFactory(elem, data) {\n        (this || _global).pv = 1;\n        (this || _global).comp = elem.comp;\n        (this || _global).elem = elem;\n        (this || _global).mult = 0.01;\n        (this || _global).propType = \"textSelector\";\n        (this || _global).textTotal = data.totalChars;\n        (this || _global).selectorValue = 100;\n        (this || _global).lastValue = [1, 1, 1];\n        (this || _global).k = true;\n        (this || _global).x = true;\n        (this || _global).getValue = ExpressionManager.initiateExpression.bind(this || _global)(elem, data, this || _global);\n        (this || _global).getMult = getValueProxy;\n        (this || _global).getVelocityAtTime = expressionHelpers.getVelocityAtTime;\n\n        if ((this || _global).kf) {\n          (this || _global).getValueAtTime = expressionHelpers.getValueAtTime.bind(this || _global);\n        } else {\n          (this || _global).getValueAtTime = expressionHelpers.getStaticValueAtTime.bind(this || _global);\n        }\n\n        (this || _global).setGroupProperty = expressionHelpers.setGroupProperty;\n      };\n    }();\n\n    var propertyGetTextProp = TextSelectorProp.getTextSelectorProp;\n\n    TextSelectorProp.getTextSelectorProp = function (elem, data, arr) {\n      if (data.t === 1) {\n        return new TextExpressionSelectorPropFactory(elem, data, arr); // eslint-disable-line no-undef\n      }\n\n      return propertyGetTextProp(elem, data, arr);\n    };\n  })();\n  /* global PropertyFactory */\n\n  /* exported SliderEffect, AngleEffect, ColorEffect, PointEffect, LayerIndexEffect, MaskIndexEffect, CheckboxEffect, NoValueEffect */\n\n\n  function SliderEffect(data, elem, container) {\n    (this || _global).p = PropertyFactory.getProp(elem, data.v, 0, 0, container);\n  }\n\n  function AngleEffect(data, elem, container) {\n    (this || _global).p = PropertyFactory.getProp(elem, data.v, 0, 0, container);\n  }\n\n  function ColorEffect(data, elem, container) {\n    (this || _global).p = PropertyFactory.getProp(elem, data.v, 1, 0, container);\n  }\n\n  function PointEffect(data, elem, container) {\n    (this || _global).p = PropertyFactory.getProp(elem, data.v, 1, 0, container);\n  }\n\n  function LayerIndexEffect(data, elem, container) {\n    (this || _global).p = PropertyFactory.getProp(elem, data.v, 0, 0, container);\n  }\n\n  function MaskIndexEffect(data, elem, container) {\n    (this || _global).p = PropertyFactory.getProp(elem, data.v, 0, 0, container);\n  }\n\n  function CheckboxEffect(data, elem, container) {\n    (this || _global).p = PropertyFactory.getProp(elem, data.v, 0, 0, container);\n  }\n\n  function NoValueEffect() {\n    (this || _global).p = {};\n  }\n  /* global extendPrototype, SliderEffect, AngleEffect, ColorEffect, PointEffect, CheckboxEffect, LayerIndexEffect,\r\n  MaskIndexEffect, NoValueEffect, DynamicPropertyContainer */\n\n\n  function EffectsManager(data, element) {\n    var effects = data.ef || [];\n    (this || _global).effectElements = [];\n    var i;\n    var len = effects.length;\n    var effectItem;\n\n    for (i = 0; i < len; i += 1) {\n      effectItem = new GroupEffect(effects[i], element);\n\n      (this || _global).effectElements.push(effectItem);\n    }\n  }\n\n  function GroupEffect(data, element) {\n    this.init(data, element);\n  }\n\n  extendPrototype([DynamicPropertyContainer], GroupEffect);\n  GroupEffect.prototype.getValue = GroupEffect.prototype.iterateDynamicProperties;\n\n  GroupEffect.prototype.init = function (data, element) {\n    (this || _global).data = data;\n    (this || _global).effectElements = [];\n    this.initDynamicPropertyContainer(element);\n    var i;\n    var len = (this || _global).data.ef.length;\n    var eff;\n    var effects = (this || _global).data.ef;\n\n    for (i = 0; i < len; i += 1) {\n      eff = null;\n\n      switch (effects[i].ty) {\n        case 0:\n          eff = new SliderEffect(effects[i], element, this || _global);\n          break;\n\n        case 1:\n          eff = new AngleEffect(effects[i], element, this || _global);\n          break;\n\n        case 2:\n          eff = new ColorEffect(effects[i], element, this || _global);\n          break;\n\n        case 3:\n          eff = new PointEffect(effects[i], element, this || _global);\n          break;\n\n        case 4:\n        case 7:\n          eff = new CheckboxEffect(effects[i], element, this || _global);\n          break;\n\n        case 10:\n          eff = new LayerIndexEffect(effects[i], element, this || _global);\n          break;\n\n        case 11:\n          eff = new MaskIndexEffect(effects[i], element, this || _global);\n          break;\n\n        case 5:\n          eff = new EffectsManager(effects[i], element, this || _global);\n          break;\n        // case 6:\n\n        default:\n          eff = new NoValueEffect(effects[i], element, this || _global);\n          break;\n      }\n\n      if (eff) {\n        (this || _global).effectElements.push(eff);\n      }\n    }\n  };\n\n  var lottie = {};\n\n  function setLocationHref(href) {\n    locationHref = href;\n  }\n\n  function searchAnimations() {\n    if (standalone === true) {\n      animationManager.searchAnimations(animationData, standalone, renderer);\n    } else {\n      animationManager.searchAnimations();\n    }\n  }\n\n  function setSubframeRendering(flag) {\n    subframeEnabled = flag;\n  }\n\n  function loadAnimation(params) {\n    if (standalone === true) {\n      params.animationData = JSON.parse(animationData);\n    }\n\n    return animationManager.loadAnimation(params);\n  }\n\n  function setQuality(value) {\n    if (typeof value === \"string\") {\n      switch (value) {\n        case \"high\":\n          defaultCurveSegments = 200;\n          break;\n\n        default:\n        case \"medium\":\n          defaultCurveSegments = 50;\n          break;\n\n        case \"low\":\n          defaultCurveSegments = 10;\n          break;\n      }\n    } else if (!isNaN(value) && value > 1) {\n      defaultCurveSegments = value;\n    }\n\n    if (defaultCurveSegments >= 50) {\n      roundValues(false);\n    } else {\n      roundValues(true);\n    }\n  }\n\n  function inBrowser() {\n    return typeof navigator !== \"undefined\";\n  }\n\n  function installPlugin(type, plugin) {\n    if (type === \"expressions\") {\n      expressionsPlugin = plugin;\n    }\n  }\n\n  function getFactory(name) {\n    switch (name) {\n      case \"propertyFactory\":\n        return PropertyFactory;\n\n      case \"shapePropertyFactory\":\n        return ShapePropertyFactory;\n\n      case \"matrix\":\n        return Matrix;\n\n      default:\n        return null;\n    }\n  }\n\n  lottie.play = animationManager.play;\n  lottie.pause = animationManager.pause;\n  lottie.setLocationHref = setLocationHref;\n  lottie.togglePause = animationManager.togglePause;\n  lottie.setSpeed = animationManager.setSpeed;\n  lottie.setDirection = animationManager.setDirection;\n  lottie.stop = animationManager.stop;\n  lottie.searchAnimations = searchAnimations;\n  lottie.registerAnimation = animationManager.registerAnimation;\n  lottie.loadAnimation = loadAnimation;\n  lottie.setSubframeRendering = setSubframeRendering;\n  lottie.resize = animationManager.resize; // lottie.start = start;\n\n  lottie.goToAndStop = animationManager.goToAndStop;\n  lottie.destroy = animationManager.destroy;\n  lottie.setQuality = setQuality;\n  lottie.inBrowser = inBrowser;\n  lottie.installPlugin = installPlugin;\n  lottie.freeze = animationManager.freeze;\n  lottie.unfreeze = animationManager.unfreeze;\n  lottie.setVolume = animationManager.setVolume;\n  lottie.mute = animationManager.mute;\n  lottie.unmute = animationManager.unmute;\n  lottie.getRegisteredAnimations = animationManager.getRegisteredAnimations;\n  lottie.__getFactory = getFactory;\n  lottie.version = \"5.7.8\";\n\n  function checkReady() {\n    if (document.readyState === \"complete\") {\n      clearInterval(readyStateCheckInterval);\n      searchAnimations();\n    }\n  }\n\n  function getQueryVariable(variable) {\n    var vars = queryString.split(\"&\");\n\n    for (var i = 0; i < vars.length; i += 1) {\n      var pair = vars[i].split(\"=\");\n\n      if (decodeURIComponent(pair[0]) == variable) {\n        // eslint-disable-line eqeqeq\n        return decodeURIComponent(pair[1]);\n      }\n    }\n\n    return null;\n  }\n\n  var standalone = \"__[STANDALONE]__\";\n  var animationData = \"__[ANIMATIONDATA]__\";\n  var renderer = \"\";\n  var queryString;\n\n  if (standalone) {\n    var scripts = document.getElementsByTagName(\"script\");\n    var index = scripts.length - 1;\n    var myScript = scripts[index] || {\n      src: \"\"\n    };\n    queryString = myScript.src.replace(/^[^\\?]+\\??/, \"\"); // eslint-disable-line no-useless-escape\n\n    renderer = getQueryVariable(\"renderer\");\n  }\n\n  var readyStateCheckInterval = setInterval(checkReady, 100);\n  return lottie;\n});\nvar exports$1 = exports;\n\nexport default exports$1;\n\n//# sourceMappingURL=npm:lottie-web@5.7.8!cjs.map","export { default } from \"/npm:lottie-web@5.7.8!cjs\";\n","import{jsx as _jsx}from\"react/jsx-runtime\";import{useRef,useCallback,useEffect}from\"react\";import{motion,addPropertyControls,ControlType,RenderTarget}from\"framer\";import{defaultEvents}from\"https://framer.com/m/framer/default-utils.js@^0.45.0\";import{useAutoMotionValue}from\"https://framer.com/m/framer/useAutoMotionValue.js@0.3.0\";import lottie from\"https://jspm.dev/lottie-web@5.7.8\";var SrcType;(function(SrcType){SrcType[\"File\"]=\"Upload\";SrcType[\"Url\"]=\"URL\";})(SrcType||(SrcType={}));var Poster;(function(Poster){Poster[\"Auto\"]=\"Auto\";Poster[\"Custom\"]=\"Custom\";})(Poster||(Poster={}));const placeholderUrl=\"https://raw.githubusercontent.com/framer/Lottie/master/Lottie.framerfx/assets/logo.json\";/**\n * LOTTIE\n *\n * @framerIntrinsicWidth 200\n * @framerIntrinsicHeight 350\n *\n * @framerSupportedLayoutWidth fixed\n * @framerSupportedLayoutHeight any-prefer-fixed\n */ export function Lottie(props){const{style,srcUrl,srcFile,srcType,poster,progress:progressRaw,playing,loop,posterProgress,pauseOnCanvas,isForwardsDirection,speed,onClick,onMouseEnter,onMouseLeave,onMouseDown,onMouseUp,onComplete}=props;const isOnCanvas=RenderTarget.current()===RenderTarget.canvas;const shouldPlay=(!pauseOnCanvas||!isOnCanvas)&&playing;const direction=isForwardsDirection?1:-1;const isCustomPoster=poster===Poster.Custom;const el=useRef();const didInitialMount=useRef(false);const animationInfo=useRef({data:null,animation:null,duration:null});const progress=useAutoMotionValue(progressRaw,{transform:v=>v*.01});const play=()=>{var ref,ref1;return(ref=animationInfo.current)===null||ref===void 0?void 0:(ref1=ref.animation)===null||ref1===void 0?void 0:ref1.play();};const pause=()=>{var ref,ref1;return(ref=animationInfo.current)===null||ref===void 0?void 0:(ref1=ref.animation)===null||ref1===void 0?void 0:ref1.pause();};const destroy=()=>{var ref,ref1;return(ref=animationInfo.current)===null||ref===void 0?void 0:(ref1=ref.animation)===null||ref1===void 0?void 0:ref1.destroy();};const scrubTo=useCallback((normalizedProgress,shouldPlayAfter)=>{if(!animationInfo.current.duration||!animationInfo.current.animation)return;// Lottie gets weird when scrubbing to the exact last frame\nconst frameNumberTarget=normalizedProgress===1?animationInfo.current.duration-1:normalizedProgress*animationInfo.current.duration;if(shouldPlayAfter)animationInfo.current.animation.goToAndPlay(frameNumberTarget,true);else animationInfo.current.animation.goToAndStop(frameNumberTarget,true);},[]);const fetchLottieData=useCallback(async url=>{if(!url)return null;const data=await fetch(url,{method:\"GET\",credentials:\"omit\",redirect:\"follow\"}).then(d=>d.json());return data;},[]);// Fetch lottie animation & start setup\nconst init=useCallback(async()=>{// Clear current animation\ndestroy();let dataUrl;if(srcType===SrcType.Url)dataUrl=srcUrl;if(srcType===SrcType.File)dataUrl=srcFile;if(!dataUrl){console.warn(\"No valid Lottie animation provided\");dataUrl=placeholderUrl;}const data=await fetchLottieData(dataUrl);animationInfo.current.data=data;return setup(didInitialMount.current);},[srcType,srcUrl,srcFile]);// Create Lottie animation\nconst setup=useCallback(shouldPlayAfter=>{if(!el.current)return;destroy();const options={container:el.current,renderer:\"svg\",loop:!isOnCanvas&&loop,autoplay:shouldPlay,animationData:animationInfo.current.data,rendererSettings:{preserveAspectRatio:\"xMidYMid slice\"}};const anim=animationInfo.current.animation=lottie.loadAnimation(options);animationInfo.current.duration=anim.getDuration(true);anim.setDirection(direction);anim.setSpeed(speed);didInitialMount.current=true;if(isOnCanvas&&isCustomPoster)scrubTo(posterProgress,false);else scrubTo(progress.get(),shouldPlay||shouldPlayAfter);return()=>{anim.destroy();};},[loop,shouldPlay,speed,direction,isOnCanvas,isCustomPoster,posterProgress,]);// Initial setup or re-init when source changes\nuseEffect(()=>{let cleanup;init().then(c=>cleanup=c);return()=>{if(cleanup)cleanup();};},[srcType,srcFile,srcUrl]);// No run-time option for loop option, recreating anim\nuseEffect(()=>{if(!didInitialMount.current)return;return setup(false);},[loop]);// Perf hack lets see if anyone notices\nuseEffect(()=>lottie.setQuality(isOnCanvas?\"low\":\"medium\"),[]);// useEffect(() => {\n//     if (!isOnCanvas) return\n//     const normalizedProgress = progress.get() * 0.01\n//     if (shouldPlay) scrubTo(normalizedProgress, true)\n//     else scrubTo(normalizedProgress, false)\n// }, [progressRaw, shouldPlay])\nuseEffect(()=>progress.onChange(val=>{if(isOnCanvas)return;if(shouldPlay)scrubTo(val,true);else scrubTo(val,false);}),[]);useEffect(()=>{const val=progress.get();if(shouldPlay)scrubTo(val,true);else scrubTo(val,false);},[progressRaw]);useEffect(()=>{if(!isOnCanvas)return;const normalizedPosterProgress=posterProgress*.01;if(isCustomPoster)scrubTo(normalizedPosterProgress,false);else scrubTo(progress.get(),false);},[isCustomPoster,posterProgress]);useEffect(()=>{var ref;if(!((ref=animationInfo.current)===null||ref===void 0?void 0:ref.animation))return;animationInfo.current.animation.setSpeed(speed);scrubTo(progress.get(),true);},[speed]);useEffect(()=>{var ref;if(!((ref=animationInfo.current)===null||ref===void 0?void 0:ref.animation))return;animationInfo.current.animation.setDirection(direction);scrubTo(progress.get(),true);},[direction]);useEffect(()=>{if(shouldPlay)play();else pause();},[shouldPlay]);return /*#__PURE__*/ _jsx(motion.div,{ref:el,style:style,onClick,onMouseEnter,onMouseLeave,onMouseDown,onMouseUp});}Lottie.defaultProps={height:200,width:200,srcType:SrcType.Url,pauseOnCanvas:true,srcUrl:placeholderUrl,progress:0,poster:Poster.Auto,posterProgress:0};addPropertyControls(Lottie,{srcType:{type:ControlType.Enum,displaySegmentedControl:true,title:\"Source\",options:[SrcType.Url,SrcType.File]},srcUrl:{type:ControlType.String,title:\" \",placeholder:\"../example.json\",hidden:props=>props.srcType===SrcType.File},srcFile:{type:ControlType.File,title:\" \",allowedFileTypes:[\"json\"],hidden:props=>props.srcType===SrcType.Url},playing:{type:ControlType.Boolean,title:\"Playing\",enabledTitle:\"Yes\",disabledTitle:\"No\"},// Temporarily disabling for perf\n// pauseOnCanvas: {\n//     type: ControlType.Boolean,\n//     title: \"Canvas\",\n//     disabledTitle: \"Play\",\n//     enabledTitle: \"Pause\",\n//     hidden: (props) => props.playing === false,\n// },\nloop:{type:ControlType.Boolean,title:\"Loop\",enabledTitle:\"Yes\",disabledTitle:\"No\"},isForwardsDirection:{title:\"Direction\",type:ControlType.Boolean,enabledTitle:\"Normal\",disabledTitle:\"Reverse\"},speed:{type:ControlType.Number,defaultValue:1,min:0,max:10,step:.5,displayStepper:true,unit:\"x\"},poster:{title:\"Poster\",type:ControlType.Enum,options:[Poster.Auto,Poster.Custom],displaySegmentedControl:true},posterProgress:{title:\" \",type:ControlType.Number,max:100,min:0,unit:\"%\",hidden:({poster})=>poster===Poster.Auto},progress:{title:\"Progress\",type:ControlType.Number,max:100,min:0,unit:\"%\",description:\"This component is made for JSON files. [Learn more here](https://lottiefiles.com/what-is-lottie).\"},...defaultEvents});\nexport const __FramerMetadata__ = {\"exports\":{\"Lottie\":{\"type\":\"reactComponent\",\"name\":\"Lottie\",\"slots\":[],\"annotations\":{\"framerIntrinsicHeight\":\"350\",\"framerSupportedLayoutHeight\":\"any-prefer-fixed\",\"framerSupportedLayoutWidth\":\"fixed\",\"framerIntrinsicWidth\":\"200\",\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./Lottie.map","// Generated by Framer (2c4b293)\nimport{jsx as _jsx}from\"react/jsx-runtime\";import{addFonts,addPropertyControls,ComponentViewportProvider,ControlType,cx,getFonts,useActiveVariantCallback,useComponentViewport,useLocaleInfo,useOnVariantChange,useVariantState,withCSS}from\"framer\";import{LayoutGroup,motion,MotionConfigContext}from\"framer-motion\";import*as React from\"react\";import{Lottie}from\"https://framerusercontent.com/modules/YbkSqZ7STzW5WsMb1yan/7oWoX9MqdnxameM59dqC/Lottie.js\";const LottieFonts=getFonts(Lottie);const cycleOrder=[\"PJRYz0IKe\",\"DiPMsXlYN\",\"JNOH5A7H5\"];const serializationHash=\"framer-3yBm7\";const variantClassNames={DiPMsXlYN:\"framer-v-1bempk9\",JNOH5A7H5:\"framer-v-yr8k3w\",PJRYz0IKe:\"framer-v-1k97fyb\"};function addPropertyOverrides(overrides,...variants){const nextOverrides={};variants===null||variants===void 0?void 0:variants.forEach(variant=>variant&&Object.assign(nextOverrides,overrides[variant]));return nextOverrides;}const transition1={duration:0,type:\"tween\"};const Transition=({value,children})=>{const config=React.useContext(MotionConfigContext);const transition=value!==null&&value!==void 0?value:config.transition;const contextValue=React.useMemo(()=>({...config,transition}),[JSON.stringify(transition)]);return /*#__PURE__*/_jsx(MotionConfigContext.Provider,{value:contextValue,children:children});};const Variants=motion(React.Fragment);const humanReadableVariantMap={\"Playing = No\":\"PJRYz0IKe\",\"Playing = Start\":\"DiPMsXlYN\",\"Playing = Yes\":\"JNOH5A7H5\"};const getProps=({height,id,width,...props})=>{var _humanReadableVariantMap_props_variant,_ref;return{...props,variant:(_ref=(_humanReadableVariantMap_props_variant=humanReadableVariantMap[props.variant])!==null&&_humanReadableVariantMap_props_variant!==void 0?_humanReadableVariantMap_props_variant:props.variant)!==null&&_ref!==void 0?_ref:\"PJRYz0IKe\"};};const createLayoutDependency=(props,variants)=>{if(props.layoutDependency)return variants.join(\"-\")+props.layoutDependency;return variants.join(\"-\");};const Component=/*#__PURE__*/React.forwardRef(function(props,ref){const{activeLocale,setLocale}=useLocaleInfo();const{style,className,layoutId,variant,...restProps}=getProps(props);const{baseVariant,classNames,clearLoadingGesture,gestureHandlers,gestureVariant,isLoading,setGestureState,setVariant,variants}=useVariantState({cycleOrder,defaultVariant:\"PJRYz0IKe\",variant,variantClassNames});const layoutDependency=createLayoutDependency(props,variants);const{activeVariantCallback,delay}=useActiveVariantCallback(baseVariant);const onAppearpfla6c=activeVariantCallback(async(...args)=>{await delay(()=>setVariant(\"JNOH5A7H5\"),300);});useOnVariantChange(baseVariant,{DiPMsXlYN:onAppearpfla6c});const ref1=React.useRef(null);const defaultLayoutId=React.useId();const sharedStyleClassNames=[];const componentViewport=useComponentViewport();return /*#__PURE__*/_jsx(LayoutGroup,{id:layoutId!==null&&layoutId!==void 0?layoutId:defaultLayoutId,children:/*#__PURE__*/_jsx(Variants,{animate:variants,initial:false,children:/*#__PURE__*/_jsx(Transition,{value:transition1,children:/*#__PURE__*/_jsx(motion.div,{...restProps,...gestureHandlers,className:cx(serializationHash,...sharedStyleClassNames,\"framer-1k97fyb\",className,classNames),\"data-framer-name\":\"Playing = No\",layoutDependency:layoutDependency,layoutId:\"PJRYz0IKe\",ref:ref!==null&&ref!==void 0?ref:ref1,style:{...style},...addPropertyOverrides({DiPMsXlYN:{\"data-framer-name\":\"Playing = Start\",\"data-highlight\":true},JNOH5A7H5:{\"data-framer-name\":\"Playing = Yes\"}},baseVariant,gestureVariant),children:/*#__PURE__*/_jsx(ComponentViewportProvider,{children:/*#__PURE__*/_jsx(motion.div,{className:\"framer-1fqll2a-container\",layoutDependency:layoutDependency,layoutId:\"k0wQLplUC-container\",children:/*#__PURE__*/_jsx(Lottie,{height:\"100%\",id:\"k0wQLplUC\",isForwardsDirection:true,layoutId:\"k0wQLplUC\",loop:false,playing:false,poster:\"Auto\",posterProgress:0,progress:0,speed:1,srcFile:\"https://framerusercontent.com/assets/bGSMk6Zw7S1CZKi4FNwNqawvsQ.json\",srcType:\"Upload\",srcUrl:\"https://raw.githubusercontent.com/framer/Lottie/master/Lottie.framerfx/assets/logo.json\",style:{height:\"100%\",width:\"100%\"},width:\"100%\",...addPropertyOverrides({JNOH5A7H5:{playing:true}},baseVariant,gestureVariant)})})})})})})});});const css=[\"@supports (aspect-ratio: 1) { body { --framer-aspect-ratio-supported: auto; } }\",\".framer-3yBm7.framer-nmtozc, .framer-3yBm7 .framer-nmtozc { display: block; }\",\".framer-3yBm7.framer-1k97fyb { align-content: center; align-items: center; display: flex; flex-direction: row; flex-wrap: nowrap; gap: 10px; height: 512px; justify-content: center; overflow: visible; padding: 0px; position: relative; width: 512px; }\",\".framer-3yBm7 .framer-1fqll2a-container { flex: 1 0 0px; height: 100%; position: relative; width: 1px; }\",\"@supports (background: -webkit-named-image(i)) and (not (font-palette:dark)) { .framer-3yBm7.framer-1k97fyb { gap: 0px; } .framer-3yBm7.framer-1k97fyb > * { margin: 0px; margin-left: calc(10px / 2); margin-right: calc(10px / 2); } .framer-3yBm7.framer-1k97fyb > :first-child { margin-left: 0px; } .framer-3yBm7.framer-1k97fyb > :last-child { margin-right: 0px; } }\",\".framer-3yBm7.framer-v-1bempk9.framer-1k97fyb, .framer-3yBm7.framer-v-yr8k3w.framer-1k97fyb { aspect-ratio: 1 / 1; height: var(--framer-aspect-ratio-supported, 512px); }\"];/**\n * This is a generated Framer component.\n * @framerIntrinsicHeight 512\n * @framerIntrinsicWidth 512\n * @framerCanvasComponentVariantDetails {\"propertyName\":\"variant\",\"data\":{\"default\":{\"layout\":[\"fixed\",\"fixed\"]},\"DiPMsXlYN\":{\"layout\":[\"fixed\",\"fixed\"]},\"JNOH5A7H5\":{\"layout\":[\"fixed\",\"fixed\"]}}}\n * @framerImmutableVariables true\n * @framerDisplayContentsDiv false\n * @framerComponentViewportWidth true\n */const FramerqrO2e_jQJ=withCSS(Component,css,\"framer-3yBm7\");export default FramerqrO2e_jQJ;FramerqrO2e_jQJ.displayName=\"Alpha / Explosion\";FramerqrO2e_jQJ.defaultProps={height:512,width:512};addPropertyControls(FramerqrO2e_jQJ,{variant:{options:[\"PJRYz0IKe\",\"DiPMsXlYN\",\"JNOH5A7H5\"],optionTitles:[\"Playing = No\",\"Playing = Start\",\"Playing = Yes\"],title:\"Variant\",type:ControlType.Enum}});addFonts(FramerqrO2e_jQJ,[{explicitInter:true,fonts:[]},...LottieFonts],{supportsExplicitInterCodegen:true});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"FramerqrO2e_jQJ\",\"slots\":[],\"annotations\":{\"framerComponentViewportWidth\":\"true\",\"framerDisplayContentsDiv\":\"false\",\"framerIntrinsicHeight\":\"512\",\"framerContractVersion\":\"1\",\"framerImmutableVariables\":\"true\",\"framerIntrinsicWidth\":\"512\",\"framerCanvasComponentVariantDetails\":\"{\\\"propertyName\\\":\\\"variant\\\",\\\"data\\\":{\\\"default\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"DiPMsXlYN\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"JNOH5A7H5\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]}}}\"}},\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./qrO2e_jQJ.map","// Generated by Framer (ba156f5)\nimport{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{addFonts,addPropertyControls,ComponentViewportProvider,ControlType,cx,getFonts,Link,RichText,SmartComponentScopedContainer,SVG,useComponentViewport,useLocaleInfo,useVariantState,withCSS,withFX,withVariantAppearEffect}from\"framer\";import{LayoutGroup,motion,MotionConfigContext}from\"framer-motion\";import*as React from\"react\";import{useRef}from\"react\";import AlphaExplosion from\"https://framerusercontent.com/modules/H3thpEbHB0XJnBh0mNm5/BUGZaMUpn5VNxjJFBE8d/qrO2e_jQJ.js\";const MotionAWithFX=withFX(motion.a);const AlphaExplosionFonts=getFonts(AlphaExplosion);const AlphaExplosionWithVariantAppearEffect=withVariantAppearEffect(AlphaExplosion);const cycleOrder=[\"VY1RVy_6f\",\"a5SiekCB8\",\"hdhz6Yr6P\"];const serializationHash=\"framer-dR5XG\";const variantClassNames={a5SiekCB8:\"framer-v-1t8wyho\",hdhz6Yr6P:\"framer-v-qfywqz\",VY1RVy_6f:\"framer-v-1byc498\"};function addPropertyOverrides(overrides,...variants){const nextOverrides={};variants?.forEach(variant=>variant&&Object.assign(nextOverrides,overrides[variant]));return nextOverrides;}const transition1={damping:60,delay:0,mass:1,stiffness:500,type:\"spring\"};const animation={opacity:0,rotate:0,rotateX:0,rotateY:0,scale:1.1,skewX:0,skewY:0,x:0,y:16};const transition2={damping:80,delay:0,mass:1,stiffness:400,type:\"spring\"};const animation1={opacity:0,rotate:0,rotateX:0,rotateY:0,scale:1,skewX:0,skewY:0,x:0,y:16};const animation2={opacity:.001,rotate:0,scale:1,skewX:0,skewY:0,x:0,y:16};const transition3={damping:128,delay:.05,mass:3,stiffness:320,type:\"spring\"};const textEffect={effect:animation2,startDelay:.1,threshold:.5,tokenization:\"line\",transition:transition3,trigger:\"onInView\",type:\"appear\"};const transformTemplate1=(_,t)=>`translateX(-50%) ${t}`;const Transition=({value,children})=>{const config=React.useContext(MotionConfigContext);const transition=value??config.transition;const contextValue=React.useMemo(()=>({...config,transition}),[JSON.stringify(transition)]);return /*#__PURE__*/_jsx(MotionConfigContext.Provider,{value:contextValue,children:children});};const Variants=motion.create(React.Fragment);const humanReadableVariantMap={Desktop:\"VY1RVy_6f\",Phone:\"hdhz6Yr6P\",Tablet:\"a5SiekCB8\"};const getProps=({height,id,width,...props})=>{return{...props,variant:humanReadableVariantMap[props.variant]??props.variant??\"VY1RVy_6f\"};};const createLayoutDependency=(props,variants)=>{if(props.layoutDependency)return variants.join(\"-\")+props.layoutDependency;return variants.join(\"-\");};const Component=/*#__PURE__*/React.forwardRef(function(props,ref){const fallbackRef=useRef(null);const refBinding=ref??fallbackRef;const defaultLayoutId=React.useId();const{activeLocale,setLocale}=useLocaleInfo();const componentViewport=useComponentViewport();const{style,className,layoutId,variant,...restProps}=getProps(props);const{baseVariant,classNames,clearLoadingGesture,gestureHandlers,gestureVariant,isLoading,setGestureState,setVariant,variants}=useVariantState({cycleOrder,defaultVariant:\"VY1RVy_6f\",ref:refBinding,variant,variantClassNames});const layoutDependency=createLayoutDependency(props,variants);const sharedStyleClassNames=[];const scopingClassNames=cx(serializationHash,...sharedStyleClassNames);return /*#__PURE__*/_jsx(LayoutGroup,{id:layoutId??defaultLayoutId,children:/*#__PURE__*/_jsx(Variants,{animate:variants,initial:false,children:/*#__PURE__*/_jsx(Transition,{value:transition1,children:/*#__PURE__*/_jsx(motion.div,{...restProps,...gestureHandlers,className:cx(scopingClassNames,\"framer-1byc498\",className,classNames),\"data-framer-name\":\"Desktop\",layoutDependency:layoutDependency,layoutId:\"VY1RVy_6f\",ref:refBinding,style:{...style},...addPropertyOverrides({a5SiekCB8:{\"data-framer-name\":\"Tablet\"},hdhz6Yr6P:{\"data-framer-name\":\"Phone\"}},baseVariant,gestureVariant),children:/*#__PURE__*/_jsxs(motion.div,{className:\"framer-2a1uti\",\"data-framer-name\":\"Content\",layoutDependency:layoutDependency,layoutId:\"AYOnvejWB\",children:[/*#__PURE__*/_jsx(motion.div,{className:\"framer-1o0b6bo\",\"data-framer-name\":\"Content\",layoutDependency:layoutDependency,layoutId:\"VbBrlfSha\",children:/*#__PURE__*/_jsxs(motion.div,{className:\"framer-hr4soy\",\"data-framer-name\":\"Logo + Message\",layoutDependency:layoutDependency,layoutId:\"JW5vBjEMp\",children:[/*#__PURE__*/_jsx(Link,{href:\"https://www.techstars.com/\",motionChild:true,nodeId:\"QVVq0h5pq\",openInNewTab:true,scopeId:\"HRc_C2tzi\",children:/*#__PURE__*/_jsx(MotionAWithFX,{__framer__animate:{transition:transition2},__framer__animateOnce:true,__framer__enter:animation,__framer__styleAppearEffectEnabled:true,__framer__threshold:0,__perspectiveFX:false,__smartComponentFX:true,__targetOpacity:1,className:\"framer-llrdqt framer-l4464p\",\"data-framer-name\":\"Techstars\",layoutDependency:layoutDependency,layoutId:\"QVVq0h5pq\",...addPropertyOverrides({a5SiekCB8:{__framer__enter:animation1}},baseVariant,gestureVariant),children:/*#__PURE__*/_jsx(SVG,{className:\"framer-10t2gb6\",\"data-framer-name\":\"Logo_Techstars\",layout:\"position\",layoutDependency:layoutDependency,layoutId:\"pCcpON02B\",opacity:1,svg:'<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" viewBox=\"0 0 600 110\"><g transform=\"translate(0 0.092)\"><path d=\"M 0 0 L 600 0 L 600 110.525 L 0 110.525 Z\" fill=\"transparent\"></path><path d=\"M 11.181 5.424 L 31.547 5.424 L 31.547 24.049 L 46.223 24.049 L 46.223 38.888 L 31.547 38.888 L 31.547 69.486 C 31.547 75.934 33.544 77.162 40.333 77.162 L 46.223 77.162 L 46.223 92.308 L 33.245 92.308 C 16.772 92.308 11.181 89.034 11.181 73.171 L 11.181 38.889 L 0.699 38.889 L 0.699 24.049 L 11.181 24.049 Z M 115.308 71.023 C 109.318 87.192 95.341 94.151 82.063 94.151 C 60.399 94.151 45.523 80.745 45.523 57.923 C 45.523 36.023 61.697 22.207 81.265 22.207 C 103.427 22.207 117.005 39.4 115.607 63.654 L 66.19 63.654 C 66.789 73.377 74.176 77.777 81.564 77.777 C 89.351 77.777 94.243 74.911 96.539 70.92 Z M 66.489 50.965 L 95.341 50.965 C 94.942 42.369 89.151 38.07 81.365 38.07 C 73.977 38.07 67.587 41.96 66.489 50.965 Z M 185.69 49.123 L 166.722 49.123 C 164.925 41.141 160.033 38.378 154.043 38.378 C 146.755 38.378 139.567 43.494 139.567 58.129 C 139.567 72.968 146.755 77.88 154.043 77.88 C 161.53 77.88 166.223 73.889 167.72 67.34 L 186.688 67.34 C 182.096 87.602 166.123 94.049 152.746 94.049 C 130.782 94.049 118.702 79.62 118.702 57.822 C 118.702 36.024 132.579 22.106 152.746 22.106 C 166.522 22.106 181.697 28.553 185.69 49.123 Z M 209.351 33.158 C 212.246 28.041 219.534 22.618 230.017 22.618 C 247.088 22.618 252.479 32.954 252.479 51.477 L 252.479 92.515 L 232.113 92.515 L 232.113 56.798 C 232.113 47.075 231.814 39.093 221.93 39.093 C 213.145 39.093 209.451 44.927 209.451 57.719 L 209.451 92.719 L 189.085 92.719 L 189.085 0.614 L 209.451 0.614 L 209.351 33.158 Z M 299.401 44.211 C 298.004 39.094 292.812 37.661 286.423 37.661 C 279.335 37.661 275.84 39.401 275.84 42.778 C 275.84 45.951 278.237 47.793 284.027 48.918 L 296.506 51.17 C 312.479 54.138 320.167 59.051 320.167 71.023 C 320.167 86.374 306.389 94.152 287.921 94.152 C 270.15 94.152 257.571 86.477 255.275 70.307 L 274.243 70.307 C 276.04 76.857 281.231 78.904 288.22 78.904 C 295.508 78.904 300.599 76.857 300.599 72.763 C 300.599 69.796 298.004 67.749 290.117 66.418 L 278.237 64.372 C 265.358 62.223 256.573 55.57 256.573 43.494 C 256.573 29.883 270.549 22.413 287.022 22.413 C 302.197 22.413 316.073 28.655 318.569 44.313 Z M 330.649 5.424 L 351.015 5.424 L 351.015 24.05 L 365.69 24.05 L 365.69 38.889 L 351.015 38.889 L 351.015 69.488 C 351.015 75.935 353.011 77.164 359.8 77.164 L 365.59 77.164 L 365.59 92.31 L 352.712 92.31 C 336.24 92.31 330.649 89.035 330.649 73.172 L 330.649 38.889 L 320.167 38.889 L 320.167 24.049 L 330.649 24.049 Z M 412.213 47.076 C 412.213 38.889 408.419 36.228 400.932 36.228 C 394.343 36.228 389.95 39.708 389.052 46.257 L 369.983 46.257 C 370.981 33.363 382.862 22.004 402.629 22.004 C 421.897 22.004 432.778 29.985 432.379 50.76 L 432.08 65.599 L 432.08 72.763 C 432.08 80.234 432.579 88.319 433.577 92.515 L 413.511 92.515 L 413.212 84.225 C 408.22 91.491 400.333 94.152 390.748 94.152 C 378.07 94.152 367.687 86.579 367.687 74.093 C 367.687 57.31 386.156 51.886 412.013 49.839 Z M 412.812 62.12 C 398.536 63.553 389.052 64.986 389.052 72.559 C 389.052 76.959 393.145 79.927 398.436 79.927 C 406.622 79.927 412.812 76.345 412.812 63.757 Z M 479.102 44.211 C 477.305 43.903 475.308 43.699 473.511 43.802 C 463.628 43.802 458.536 47.485 458.536 58.129 L 458.536 92.412 L 438.07 92.412 L 438.07 24.049 L 457.737 24.049 L 457.737 37.046 C 460.832 28.859 466.423 24.049 475.907 23.64 L 477.404 23.64 C 478.004 23.64 478.503 23.64 479.102 23.743 L 479.102 44.21 Z M 524.227 44.211 C 522.829 39.094 517.637 37.661 511.248 37.661 C 504.16 37.661 500.665 39.401 500.665 42.778 C 500.665 45.951 503.062 47.793 508.852 48.918 L 521.231 51.17 C 537.205 54.138 544.892 59.051 544.892 71.023 C 544.892 86.374 531.115 94.152 512.646 94.152 C 494.975 94.152 482.296 86.477 480 70.307 L 498.968 70.307 C 500.765 76.857 505.957 78.904 512.945 78.904 C 520.233 78.904 525.325 76.857 525.325 72.763 C 525.325 69.796 522.729 67.749 514.842 66.418 L 502.962 64.372 C 490.083 62.223 481.398 55.57 481.398 43.494 C 481.398 29.883 495.374 22.413 511.847 22.413 C 527.022 22.413 540.898 28.655 543.394 44.313 Z\" fill=\"rgb(255,255,255)\"></path><path d=\"M 544.493 110.116 L 544.493 92.513 L 599.601 92.513 L 599.601 110.116 Z\" fill=\"rgb(57,196,99)\"></path></g></svg>',svgContentId:11707709212,withExternalLayout:true,...addPropertyOverrides({a5SiekCB8:{svg:'<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" viewBox=\"0 0 600 101\"><g transform=\"translate(0 0.092)\"><path d=\"M 0 -0.008 L 600 -0.008 L 600 101.475 L 0 101.475 Z\" fill=\"transparent\"></path><path d=\"M 11.181 4.973 L 31.547 4.973 L 31.547 22.073 L 46.222 22.073 L 46.222 35.698 L 31.547 35.698 L 31.547 63.794 C 31.547 69.713 33.544 70.842 40.333 70.842 L 46.222 70.842 L 46.222 84.748 L 33.244 84.748 C 16.772 84.748 11.181 81.742 11.181 67.176 L 11.181 35.7 L 0.699 35.7 L 0.699 22.074 L 11.181 22.074 Z M 115.308 65.204 C 109.318 80.051 95.341 86.44 82.064 86.44 C 60.399 86.44 45.524 74.131 45.524 53.177 C 45.524 33.068 61.697 20.383 81.265 20.383 C 103.427 20.383 117.005 36.169 115.607 58.439 L 66.19 58.439 C 66.789 67.366 74.177 71.406 81.564 71.406 C 89.351 71.406 94.243 68.775 96.539 65.11 Z M 66.489 46.787 L 95.341 46.787 C 94.942 38.895 89.151 34.948 81.364 34.948 C 73.977 34.948 67.587 38.519 66.489 46.787 Z M 185.69 45.096 L 166.722 45.096 C 164.925 37.767 160.034 35.23 154.043 35.23 C 146.756 35.23 139.568 39.928 139.568 53.365 C 139.568 66.99 146.756 71.501 154.043 71.501 C 161.531 71.501 166.223 67.836 167.72 61.823 L 186.689 61.823 C 182.096 80.427 166.123 86.347 152.746 86.347 C 130.782 86.347 118.702 73.098 118.702 53.084 C 118.702 33.069 132.579 20.29 152.746 20.29 C 166.523 20.29 181.697 26.209 185.69 45.096 Z M 209.351 30.438 C 212.246 25.739 219.534 20.76 230.017 20.76 C 247.088 20.76 252.479 30.25 252.479 47.258 L 252.479 84.938 L 232.113 84.938 L 232.113 52.143 C 232.113 43.216 231.814 35.887 221.93 35.887 C 213.145 35.887 209.451 41.243 209.451 52.989 L 209.451 85.125 L 189.085 85.125 L 189.085 0.556 L 209.451 0.556 L 209.351 30.437 Z M 299.401 40.586 C 298.003 35.887 292.812 34.572 286.423 34.572 C 279.334 34.572 275.84 36.17 275.84 39.27 C 275.84 42.184 278.236 43.875 284.026 44.908 L 296.506 46.976 C 312.479 49.701 320.167 54.212 320.167 65.205 C 320.167 79.3 306.389 86.441 287.92 86.441 C 270.15 86.441 257.571 79.394 255.274 64.547 L 274.243 64.547 C 276.04 70.561 281.231 72.44 288.22 72.44 C 295.507 72.44 300.599 70.561 300.599 66.802 C 300.599 64.077 298.003 62.198 290.116 60.976 L 278.236 59.097 C 265.357 57.124 256.573 51.016 256.573 39.928 C 256.573 27.431 270.549 20.572 287.022 20.572 C 302.197 20.572 316.073 26.303 318.569 40.68 Z M 330.649 4.973 L 351.015 4.973 L 351.015 22.075 L 365.69 22.075 L 365.69 35.7 L 351.015 35.7 L 351.015 63.795 C 351.015 69.715 353.011 70.843 359.8 70.843 L 365.59 70.843 L 365.59 84.749 L 352.712 84.749 C 336.24 84.749 330.649 81.743 330.649 67.178 L 330.649 35.7 L 320.167 35.7 L 320.167 22.074 L 330.649 22.074 Z M 412.213 43.217 C 412.213 35.7 408.419 33.257 400.932 33.257 C 394.343 33.257 389.951 36.451 389.052 42.465 L 369.983 42.465 C 370.982 30.626 382.862 20.196 402.629 20.196 C 421.897 20.196 432.779 27.525 432.38 46.6 L 432.08 60.225 L 432.08 66.802 C 432.08 73.662 432.579 81.085 433.577 84.938 L 413.511 84.938 L 413.212 77.327 C 408.22 83.998 400.333 86.441 390.749 86.441 C 378.07 86.441 367.688 79.488 367.688 68.023 C 367.688 52.613 386.156 47.633 412.013 45.754 Z M 412.812 57.03 C 398.536 58.345 389.052 59.661 389.052 66.614 C 389.052 70.655 393.145 73.38 398.436 73.38 C 406.622 73.38 412.812 70.091 412.812 58.533 Z M 479.102 40.586 C 477.305 40.304 475.308 40.116 473.511 40.21 C 463.628 40.21 458.536 43.593 458.536 53.365 L 458.536 84.843 L 438.07 84.843 L 438.07 22.074 L 457.737 22.074 L 457.737 34.008 C 460.832 26.49 466.423 22.074 475.907 21.699 L 477.404 21.699 C 478.004 21.699 478.503 21.699 479.102 21.792 L 479.102 40.585 Z M 524.227 40.586 C 522.829 35.887 517.637 34.572 511.248 34.572 C 504.16 34.572 500.665 36.17 500.665 39.27 C 500.665 42.184 503.062 43.875 508.852 44.908 L 521.231 46.976 C 537.205 49.701 544.892 54.212 544.892 65.205 C 544.892 79.3 531.115 86.441 512.646 86.441 C 494.975 86.441 482.296 79.394 480 64.547 L 498.968 64.547 C 500.765 70.561 505.957 72.44 512.945 72.44 C 520.233 72.44 525.325 70.561 525.325 66.802 C 525.325 64.077 522.729 62.198 514.842 60.976 L 502.962 59.097 C 490.083 57.124 481.398 51.016 481.398 39.928 C 481.398 27.431 495.374 20.572 511.847 20.572 C 527.022 20.572 540.898 26.303 543.394 40.68 Z\" fill=\"rgb(255,255,255)\"></path><path d=\"M 544.493 101.099 L 544.493 84.936 L 599.601 84.936 L 599.601 101.099 Z\" fill=\"rgb(57,196,99)\"></path></g></svg>',svgContentId:9739579859},hdhz6Yr6P:{svg:'<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" viewBox=\"0 0 288 54\"><g transform=\"translate(0 0.047)\"><path d=\"M 0 -0.002 L 288 -0.002 L 288 53.966 L 0 53.966 Z\" fill=\"transparent\"></path><path d=\"M 5.367 2.647 L 15.143 2.647 L 15.143 11.741 L 22.187 11.741 L 22.187 18.986 L 15.143 18.986 L 15.143 33.927 C 15.143 37.076 16.101 37.675 19.36 37.675 L 22.187 37.675 L 22.187 45.071 L 15.957 45.071 C 8.051 45.071 5.367 43.472 5.367 35.726 L 5.367 18.987 L 0.336 18.987 L 0.336 11.741 L 5.367 11.741 Z M 55.348 34.678 C 52.473 42.573 45.764 45.971 39.39 45.971 C 28.992 45.971 21.851 39.425 21.851 28.281 C 21.851 17.588 29.615 10.842 39.007 10.842 C 49.645 10.842 56.163 19.237 55.491 31.08 L 31.771 31.08 C 32.059 35.827 35.605 37.976 39.151 37.976 C 42.889 37.976 45.237 36.576 46.339 34.628 Z M 31.915 24.884 L 45.764 24.884 C 45.572 20.686 42.792 18.587 39.055 18.587 C 35.509 18.587 32.442 20.487 31.915 24.884 Z M 89.131 23.984 L 80.027 23.984 C 79.164 20.087 76.816 18.738 73.941 18.738 C 70.443 18.738 66.992 21.236 66.992 28.382 C 66.992 35.627 70.443 38.026 73.941 38.026 C 77.535 38.026 79.787 36.077 80.506 32.879 L 89.61 32.879 C 87.406 42.773 79.739 45.921 73.318 45.921 C 62.775 45.921 56.977 38.876 56.977 28.232 C 56.977 17.588 63.638 10.792 73.318 10.792 C 79.931 10.792 87.215 13.94 89.131 23.984 Z M 100.489 16.189 C 101.878 13.69 105.376 11.042 110.408 11.042 C 118.602 11.042 121.19 16.089 121.19 25.134 L 121.19 45.172 L 111.414 45.172 L 111.414 27.732 C 111.414 22.985 111.271 19.087 106.527 19.087 C 102.309 19.087 100.536 21.935 100.536 28.182 L 100.536 45.271 L 90.761 45.271 L 90.761 0.298 L 100.536 0.298 L 100.489 16.189 Z M 143.712 21.586 C 143.042 19.087 140.55 18.387 137.483 18.387 C 134.081 18.387 132.403 19.237 132.403 20.886 C 132.403 22.435 133.554 23.335 136.333 23.884 L 142.323 24.984 C 149.99 26.433 153.68 28.832 153.68 34.678 C 153.68 42.174 147.067 45.971 138.202 45.971 C 129.672 45.971 123.634 42.223 122.532 34.328 L 131.637 34.328 C 132.499 37.526 134.991 38.526 138.345 38.526 C 141.844 38.526 144.288 37.526 144.288 35.527 C 144.288 34.078 143.042 33.079 139.256 32.429 L 133.554 31.43 C 127.372 30.381 123.155 27.132 123.155 21.236 C 123.155 14.59 129.864 10.942 137.771 10.942 C 145.054 10.942 151.715 13.99 152.913 21.636 Z M 158.711 2.647 L 168.487 2.647 L 168.487 11.742 L 175.531 11.742 L 175.531 18.987 L 168.487 18.987 L 168.487 33.928 C 168.487 37.076 169.446 37.676 172.704 37.676 L 175.483 37.676 L 175.483 45.072 L 169.302 45.072 C 161.395 45.072 158.711 43.473 158.711 35.727 L 158.711 18.987 L 153.68 18.987 L 153.68 11.741 L 158.711 11.741 Z M 197.862 22.985 C 197.862 18.987 196.041 17.688 192.447 17.688 C 189.285 17.688 187.176 19.387 186.745 22.585 L 177.592 22.585 C 178.071 16.289 183.774 10.742 193.262 10.742 C 202.51 10.742 207.734 14.64 207.542 24.784 L 207.399 32.029 L 207.399 35.527 C 207.399 39.175 207.638 43.123 208.117 45.172 L 198.485 45.172 L 198.342 41.124 C 195.945 44.672 192.16 45.971 187.559 45.971 C 181.473 45.971 176.49 42.273 176.49 36.177 C 176.49 27.982 185.355 25.333 197.766 24.334 Z M 198.15 30.33 C 191.297 31.03 186.745 31.73 186.745 35.428 C 186.745 37.576 188.709 39.025 191.249 39.025 C 195.179 39.025 198.15 37.276 198.15 31.13 Z M 229.969 21.586 C 229.106 21.436 228.148 21.336 227.285 21.386 C 222.541 21.386 220.097 23.185 220.097 28.382 L 220.097 45.122 L 210.273 45.122 L 210.273 11.741 L 219.714 11.741 L 219.714 18.087 C 221.199 14.09 223.883 11.741 228.435 11.542 L 229.154 11.542 C 229.442 11.542 229.681 11.542 229.969 11.591 L 229.969 21.585 Z M 251.629 21.586 C 250.958 19.087 248.466 18.387 245.399 18.387 C 241.997 18.387 240.319 19.237 240.319 20.886 C 240.319 22.435 241.47 23.335 244.249 23.884 L 250.191 24.984 C 257.858 26.433 261.548 28.832 261.548 34.678 C 261.548 42.174 254.935 45.971 246.07 45.971 C 237.588 45.971 231.502 42.223 230.4 34.328 L 239.505 34.328 C 240.367 37.526 242.859 38.526 246.214 38.526 C 249.712 38.526 252.156 37.526 252.156 35.527 C 252.156 34.078 250.91 33.079 247.124 32.429 L 241.422 31.43 C 235.24 30.381 231.071 27.132 231.071 21.236 C 231.071 14.59 237.78 10.942 245.687 10.942 C 252.971 10.942 259.631 13.99 260.829 21.636 Z\" fill=\"rgb(255,255,255)\"></path><path d=\"M 261.356 53.766 L 261.356 45.171 L 287.808 45.171 L 287.808 53.766 Z\" fill=\"rgb(57,196,99)\"></path></g></svg>',svgContentId:11173385132}},baseVariant,gestureVariant)})})}),/*#__PURE__*/_jsx(motion.div,{className:\"framer-1lyje2q\",\"data-framer-name\":\"Message\",layoutDependency:layoutDependency,layoutId:\"xdIO8pkl5\",children:/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{style:{\"--framer-font-size\":\"22px\",\"--framer-line-height\":\"140%\",\"--framer-text-alignment\":\"center\",\"--framer-text-color\":\"var(--extracted-r6o4lv, var(--token-5b7c14a4-6eac-4fec-b1dd-68cde4248eb3, rgb(255, 255, 255)))\"},children:\"GAGE selected as one of 12 early-stage startups to advance its mission of transforming the shift and hourly workforce.\"})}),className:\"framer-hqjy8q\",effect:textEffect,fonts:[\"Inter\"],layoutDependency:layoutDependency,layoutId:\"op4XtMl_z\",style:{\"--extracted-r6o4lv\":\"var(--token-5b7c14a4-6eac-4fec-b1dd-68cde4248eb3, rgb(255, 255, 255))\",\"--framer-link-text-color\":\"rgb(0, 153, 255)\",\"--framer-link-text-decoration\":\"underline\"},verticalAlignment:\"top\",withExternalLayout:true,...addPropertyOverrides({hdhz6Yr6P:{children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{style:{\"--framer-line-height\":\"140%\",\"--framer-text-alignment\":\"center\",\"--framer-text-color\":\"var(--extracted-r6o4lv, var(--token-5b7c14a4-6eac-4fec-b1dd-68cde4248eb3, rgb(255, 255, 255)))\"},children:\"GAGE selected as one of 12 early-stage startups to advance its mission of transforming the shift and hourly workforce.\"})})}},baseVariant,gestureVariant)})})]})}),/*#__PURE__*/_jsx(ComponentViewportProvider,{height:512,y:(componentViewport?.y||0)+128+(((componentViewport?.height||738.5)-384-416)/2+0+0)+0,...addPropertyOverrides({a5SiekCB8:{y:(componentViewport?.y||0)+120+(((componentViewport?.height||200)-336-407)/2+0+0)+0},hdhz6Yr6P:{y:(componentViewport?.y||0)+112+(((componentViewport?.height||200)-208-270)/2+0+0)+-136}},baseVariant,gestureVariant),children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-mm2maa-container\",layoutDependency:layoutDependency,layoutId:\"wuPaVSh38-container\",nodeId:\"wuPaVSh38\",rendersWithMotion:true,scopeId:\"HRc_C2tzi\",transformTemplate:transformTemplate1,children:/*#__PURE__*/_jsx(AlphaExplosionWithVariantAppearEffect,{__framer__animateOnce:false,__framer__obscuredVariantId:\"PJRYz0IKe\",__framer__threshold:.5,__framer__variantAppearEffectEnabled:true,__framer__visibleVariantId:\"DiPMsXlYN\",height:\"100%\",id:\"wuPaVSh38\",layoutId:\"wuPaVSh38\",variant:\"PJRYz0IKe\",width:\"100%\"})})})]})})})})});});const css=[\"@supports (aspect-ratio: 1) { body { --framer-aspect-ratio-supported: auto; } }\",\".framer-dR5XG.framer-l4464p, .framer-dR5XG .framer-l4464p { display: block; }\",\".framer-dR5XG.framer-1byc498 { align-content: center; align-items: center; display: flex; flex-direction: column; flex-wrap: nowrap; gap: 0px; height: min-content; justify-content: center; overflow: visible; padding: 128px 0px 256px 0px; position: relative; width: 1200px; }\",\".framer-dR5XG .framer-2a1uti { align-content: center; align-items: center; display: flex; flex: none; flex-direction: column; flex-wrap: nowrap; gap: 64px; height: min-content; justify-content: flex-start; overflow: visible; padding: 128px 80px 0px 80px; position: relative; width: 100%; z-index: 2; }\",\".framer-dR5XG .framer-1o0b6bo { align-content: center; align-items: center; display: flex; flex: none; flex-direction: column; flex-wrap: nowrap; gap: 48px; height: min-content; justify-content: center; overflow: visible; padding: 0px; position: relative; width: 100%; z-index: 2; }\",\".framer-dR5XG .framer-hr4soy { align-content: center; align-items: center; display: flex; flex: none; flex-direction: column; flex-wrap: nowrap; gap: 24px; height: min-content; justify-content: center; overflow: visible; padding: 0px; position: relative; width: 100%; }\",\".framer-dR5XG .framer-llrdqt { align-content: center; align-items: center; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; gap: 0px; height: min-content; justify-content: center; overflow: hidden; padding: 0px; position: relative; text-decoration: none; width: min-content; }\",\".framer-dR5XG .framer-10t2gb6 { flex: none; height: 110px; position: relative; width: 600px; }\",\".framer-dR5XG .framer-1lyje2q { align-content: center; align-items: center; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; gap: 0px; height: min-content; justify-content: center; max-width: 512px; overflow: visible; padding: 0px; position: relative; width: 100%; }\",\".framer-dR5XG .framer-hqjy8q { flex: none; height: auto; position: relative; white-space: pre-wrap; width: 100%; word-break: break-word; word-wrap: break-word; }\",\".framer-dR5XG .framer-mm2maa-container { flex: none; height: auto; left: 50%; position: absolute; top: 0px; width: auto; z-index: 1; }\",\".framer-dR5XG.framer-v-1t8wyho.framer-1byc498 { padding: 120px 0px 216px 0px; }\",\".framer-dR5XG.framer-v-1t8wyho .framer-10t2gb6 { height: 101px; }\",\".framer-dR5XG.framer-v-1t8wyho .framer-1lyje2q { max-width: 560px; }\",\".framer-dR5XG.framer-v-qfywqz.framer-1byc498 { padding: 112px 0px 96px 0px; width: min-content; }\",\".framer-dR5XG.framer-v-qfywqz .framer-2a1uti { gap: 48px; padding: 40px 24px 40px 24px; width: 380px; }\",\".framer-dR5XG.framer-v-qfywqz .framer-10t2gb6 { height: 54px; width: 288px; }\",\".framer-dR5XG.framer-v-qfywqz .framer-1lyje2q { max-width: 308px; }\",\".framer-dR5XG.framer-v-qfywqz .framer-mm2maa-container { top: -136px; }\"];/**\n * This is a generated Framer component.\n * @framerIntrinsicHeight 738.5\n * @framerIntrinsicWidth 1200\n * @framerCanvasComponentVariantDetails {\"propertyName\":\"variant\",\"data\":{\"default\":{\"layout\":[\"fixed\",\"auto\"]},\"a5SiekCB8\":{\"layout\":[\"fixed\",\"auto\"]},\"hdhz6Yr6P\":{\"layout\":[\"auto\",\"auto\"]}}}\n * @framerImmutableVariables true\n * @framerDisplayContentsDiv false\n * @framerAutoSizeImages true\n * @framerComponentViewportWidth true\n * @framerColorSyntax true\n */const FramerHRc_C2tzi=withCSS(Component,css,\"framer-dR5XG\");export default FramerHRc_C2tzi;FramerHRc_C2tzi.displayName=\"Heroshot / Techstars\";FramerHRc_C2tzi.defaultProps={height:738.5,width:1200};addPropertyControls(FramerHRc_C2tzi,{variant:{options:[\"VY1RVy_6f\",\"a5SiekCB8\",\"hdhz6Yr6P\"],optionTitles:[\"Desktop\",\"Tablet\",\"Phone\"],title:\"Variant\",type:ControlType.Enum}});addFonts(FramerHRc_C2tzi,[{explicitInter:true,fonts:[{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F\",url:\"https://framerusercontent.com/assets/5vvr9Vy74if2I6bQbJvbw7SY1pQ.woff2\",weight:\"400\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116\",url:\"https://framerusercontent.com/assets/EOr0mi4hNtlgWNn9if640EZzXCo.woff2\",weight:\"400\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+1F00-1FFF\",url:\"https://framerusercontent.com/assets/Y9k9QrlZAqio88Klkmbd8VoMQc.woff2\",weight:\"400\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0370-03FF\",url:\"https://framerusercontent.com/assets/OYrD2tBIBPvoJXiIHnLoOXnY9M.woff2\",weight:\"400\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF\",url:\"https://framerusercontent.com/assets/JeYwfuaPfZHQhEG8U5gtPDZ7WQ.woff2\",weight:\"400\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD\",url:\"https://framerusercontent.com/assets/vQyevYAyHtARFwPqUzQGpnDs.woff2\",weight:\"400\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB\",url:\"https://framerusercontent.com/assets/b6Y37FthZeALduNqHicBT6FutY.woff2\",weight:\"400\"}]},...AlphaExplosionFonts],{supportsExplicitInterCodegen:true});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"FramerHRc_C2tzi\",\"slots\":[],\"annotations\":{\"framerIntrinsicWidth\":\"1200\",\"framerContractVersion\":\"1\",\"framerDisplayContentsDiv\":\"false\",\"framerAutoSizeImages\":\"true\",\"framerComponentViewportWidth\":\"true\",\"framerIntrinsicHeight\":\"738.5\",\"framerCanvasComponentVariantDetails\":\"{\\\"propertyName\\\":\\\"variant\\\",\\\"data\\\":{\\\"default\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"auto\\\"]},\\\"a5SiekCB8\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"auto\\\"]},\\\"hdhz6Yr6P\\\":{\\\"layout\\\":[\\\"auto\\\",\\\"auto\\\"]}}}\",\"framerColorSyntax\":\"true\",\"framerImmutableVariables\":\"true\"}},\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./HRc_C2tzi.map","// Generated by Framer (ee1e8a0)\nimport{fontStore}from\"framer\";fontStore.loadFonts([\"CUSTOM;Neometric Extra Bold\",\"Inter-Black\",\"Inter-BlackItalic\",\"Inter-BoldItalic\"]);export const fonts=[{explicitInter:true,fonts:[{family:\"Neometric Extra Bold\",source:\"custom\",url:\"https://framerusercontent.com/assets/DtbpLDTGqpgnIlzCpeNLl5Ui5U.woff2\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F\",url:\"https://framerusercontent.com/assets/mkY5Sgyq51ik0AMrSBwhm9DJg.woff2\",weight:\"900\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116\",url:\"https://framerusercontent.com/assets/X5hj6qzcHUYv7h1390c8Rhm6550.woff2\",weight:\"900\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+1F00-1FFF\",url:\"https://framerusercontent.com/assets/gQhNpS3tN86g8RcVKYUUaKt2oMQ.woff2\",weight:\"900\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0370-03FF\",url:\"https://framerusercontent.com/assets/cugnVhSraaRyANCaUtI5FV17wk.woff2\",weight:\"900\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF\",url:\"https://framerusercontent.com/assets/5HcVoGak8k5agFJSaKa4floXVu0.woff2\",weight:\"900\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD\",url:\"https://framerusercontent.com/assets/jn4BtSPLlS0NDp1KiFAtFKiiY0o.woff2\",weight:\"900\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB\",url:\"https://framerusercontent.com/assets/P2Bw01CtL0b9wqygO0sSVogWbo.woff2\",weight:\"900\"},{family:\"Inter\",source:\"framer\",style:\"italic\",unicodeRange:\"U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F\",url:\"https://framerusercontent.com/assets/05KsVHGDmqXSBXM4yRZ65P8i0s.woff2\",weight:\"900\"},{family:\"Inter\",source:\"framer\",style:\"italic\",unicodeRange:\"U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116\",url:\"https://framerusercontent.com/assets/ky8ovPukK4dJ1Pxq74qGhOqCYI.woff2\",weight:\"900\"},{family:\"Inter\",source:\"framer\",style:\"italic\",unicodeRange:\"U+1F00-1FFF\",url:\"https://framerusercontent.com/assets/vvNSqIj42qeQ2bvCRBIWKHscrc.woff2\",weight:\"900\"},{family:\"Inter\",source:\"framer\",style:\"italic\",unicodeRange:\"U+0370-03FF\",url:\"https://framerusercontent.com/assets/3ZmXbBKToJifDV9gwcifVd1tEY.woff2\",weight:\"900\"},{family:\"Inter\",source:\"framer\",style:\"italic\",unicodeRange:\"U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF\",url:\"https://framerusercontent.com/assets/FNfhX3dt4ChuLJq2PwdlxHO7PU.woff2\",weight:\"900\"},{family:\"Inter\",source:\"framer\",style:\"italic\",unicodeRange:\"U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD\",url:\"https://framerusercontent.com/assets/g0c8vEViiXNlKAgI4Ymmk3Ig.woff2\",weight:\"900\"},{family:\"Inter\",source:\"framer\",style:\"italic\",unicodeRange:\"U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB\",url:\"https://framerusercontent.com/assets/efTfQcBJ53kM2pB1hezSZ3RDUFs.woff2\",weight:\"900\"},{family:\"Inter\",source:\"framer\",style:\"italic\",unicodeRange:\"U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F\",url:\"https://framerusercontent.com/assets/H89BbHkbHDzlxZzxi8uPzTsp90.woff2\",weight:\"700\"},{family:\"Inter\",source:\"framer\",style:\"italic\",unicodeRange:\"U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116\",url:\"https://framerusercontent.com/assets/u6gJwDuwB143kpNK1T1MDKDWkMc.woff2\",weight:\"700\"},{family:\"Inter\",source:\"framer\",style:\"italic\",unicodeRange:\"U+1F00-1FFF\",url:\"https://framerusercontent.com/assets/43sJ6MfOPh1LCJt46OvyDuSbA6o.woff2\",weight:\"700\"},{family:\"Inter\",source:\"framer\",style:\"italic\",unicodeRange:\"U+0370-03FF\",url:\"https://framerusercontent.com/assets/wccHG0r4gBDAIRhfHiOlq6oEkqw.woff2\",weight:\"700\"},{family:\"Inter\",source:\"framer\",style:\"italic\",unicodeRange:\"U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF\",url:\"https://framerusercontent.com/assets/WZ367JPwf9bRW6LdTHN8rXgSjw.woff2\",weight:\"700\"},{family:\"Inter\",source:\"framer\",style:\"italic\",unicodeRange:\"U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD\",url:\"https://framerusercontent.com/assets/QxmhnWTzLtyjIiZcfaLIJ8EFBXU.woff2\",weight:\"700\"},{family:\"Inter\",source:\"framer\",style:\"italic\",unicodeRange:\"U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB\",url:\"https://framerusercontent.com/assets/2A4Xx7CngadFGlVV4xrO06OBHY.woff2\",weight:\"700\"}]}];export const css=['.framer-zFJif .framer-styles-preset-1iu7llg:not(.rich-text-wrapper), .framer-zFJif .framer-styles-preset-1iu7llg.rich-text-wrapper h6 { --framer-font-family: \"Neometric Extra Bold\", \"Neometric Extra Bold Placeholder\", sans-serif; --framer-font-family-bold: \"Inter\", sans-serif; --framer-font-family-bold-italic: \"Inter\", sans-serif; --framer-font-family-italic: \"Inter\", \"Inter Placeholder\", sans-serif; --framer-font-open-type-features: normal; --framer-font-size: 22px; --framer-font-style: normal; --framer-font-style-bold: normal; --framer-font-style-bold-italic: italic; --framer-font-style-italic: italic; --framer-font-variation-axes: normal; --framer-font-weight: 400; --framer-font-weight-bold: 900; --framer-font-weight-bold-italic: 900; --framer-font-weight-italic: 700; --framer-letter-spacing: 0em; --framer-line-height: 88%; --framer-paragraph-spacing: 40px; --framer-text-alignment: center; --framer-text-color: var(--token-e37af2ab-2fc1-441d-a7b8-a99be558a4da, #888888); --framer-text-decoration: none; --framer-text-stroke-color: initial; --framer-text-stroke-width: initial; --framer-text-transform: none; }','@media (max-width: 1199px) and (min-width: 810px) { .framer-zFJif .framer-styles-preset-1iu7llg:not(.rich-text-wrapper), .framer-zFJif .framer-styles-preset-1iu7llg.rich-text-wrapper h6 { --framer-font-family: \"Neometric Extra Bold\", \"Neometric Extra Bold Placeholder\", sans-serif; --framer-font-family-bold: \"Inter\", sans-serif; --framer-font-family-bold-italic: \"Inter\", sans-serif; --framer-font-family-italic: \"Inter\", \"Inter Placeholder\", sans-serif; --framer-font-open-type-features: normal; --framer-font-size: 18px; --framer-font-style: normal; --framer-font-style-bold: normal; --framer-font-style-bold-italic: italic; --framer-font-style-italic: italic; --framer-font-variation-axes: normal; --framer-font-weight: 400; --framer-font-weight-bold: 900; --framer-font-weight-bold-italic: 900; --framer-font-weight-italic: 700; --framer-letter-spacing: 0em; --framer-line-height: 88%; --framer-paragraph-spacing: 40px; --framer-text-alignment: center; --framer-text-color: var(--token-e37af2ab-2fc1-441d-a7b8-a99be558a4da, #888888); --framer-text-decoration: none; --framer-text-stroke-color: initial; --framer-text-stroke-width: initial; --framer-text-transform: none; } }','@media (max-width: 809px) and (min-width: 0px) { .framer-zFJif .framer-styles-preset-1iu7llg:not(.rich-text-wrapper), .framer-zFJif .framer-styles-preset-1iu7llg.rich-text-wrapper h6 { --framer-font-family: \"Neometric Extra Bold\", \"Neometric Extra Bold Placeholder\", sans-serif; --framer-font-family-bold: \"Inter\", sans-serif; --framer-font-family-bold-italic: \"Inter\", sans-serif; --framer-font-family-italic: \"Inter\", \"Inter Placeholder\", sans-serif; --framer-font-open-type-features: normal; --framer-font-size: 16px; --framer-font-style: normal; --framer-font-style-bold: normal; --framer-font-style-bold-italic: italic; --framer-font-style-italic: italic; --framer-font-variation-axes: normal; --framer-font-weight: 400; --framer-font-weight-bold: 900; --framer-font-weight-bold-italic: 900; --framer-font-weight-italic: 700; --framer-letter-spacing: 0em; --framer-line-height: 88%; --framer-paragraph-spacing: 40px; --framer-text-alignment: center; --framer-text-color: var(--token-e37af2ab-2fc1-441d-a7b8-a99be558a4da, #888888); --framer-text-decoration: none; --framer-text-stroke-color: initial; --framer-text-stroke-width: initial; --framer-text-transform: none; } }'];export const className=\"framer-zFJif\";\nexport const __FramerMetadata__ = {\"exports\":{\"className\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"css\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"fonts\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// Generated by Framer (ee1e8a0)\nimport{fontStore}from\"framer\";fontStore.loadFonts([]);export const fonts=[{explicitInter:true,fonts:[]}];export const css=[\".framer-IqNuY .framer-styles-preset-1tsiwhd:not(.rich-text-wrapper), .framer-IqNuY .framer-styles-preset-1tsiwhd.rich-text-wrapper a { --framer-link-current-text-color: var(--token-4b3e3bf3-b87c-4125-8512-8f6de91046c2, #ff4400); --framer-link-current-text-decoration: none; --framer-link-hover-text-color: var(--token-4b3e3bf3-b87c-4125-8512-8f6de91046c2, #ff4400); --framer-link-hover-text-decoration: none; --framer-link-text-color: var(--token-6feccae1-a9c6-4883-8936-c7bf0b44d88b, #bbbbbb); --framer-link-text-decoration: none; }\"];export const className=\"framer-IqNuY\";\nexport const __FramerMetadata__ = {\"exports\":{\"css\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"className\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"fonts\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// Generated by Framer (33d5032)\nimport{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{addFonts,addPropertyControls,ControlType,cx,SVG,useComponentViewport,useLocaleInfo,useVariantState,withCSS}from\"framer\";import{LayoutGroup,motion,MotionConfigContext}from\"framer-motion\";import*as React from\"react\";const cycleOrder=[\"v_tCAZijx\",\"SgBg_3HJu\",\"gFJ1Ii4Vm\",\"r8sFXPtT7\",\"YkHA94az4\",\"hXQn0PdgS\",\"isdXWr8du\",\"yRWdVLWfS\",\"d5oAFPGng\",\"wLKddm9QT\"];const serializationHash=\"framer-Cv4v5\";const variantClassNames={d5oAFPGng:\"framer-v-12ma47o\",gFJ1Ii4Vm:\"framer-v-nqb75o\",hXQn0PdgS:\"framer-v-1pylpv4\",isdXWr8du:\"framer-v-kjw3ty\",r8sFXPtT7:\"framer-v-1ycdh8r\",SgBg_3HJu:\"framer-v-r8uz9\",v_tCAZijx:\"framer-v-m1z5yy\",wLKddm9QT:\"framer-v-5milgw\",YkHA94az4:\"framer-v-1dyj7ay\",yRWdVLWfS:\"framer-v-1fxsukw\"};function addPropertyOverrides(overrides,...variants){const nextOverrides={};variants===null||variants===void 0?void 0:variants.forEach(variant=>variant&&Object.assign(nextOverrides,overrides[variant]));return nextOverrides;}const transition1={damping:60,delay:0,mass:1,stiffness:500,type:\"spring\"};const Transition=({value,children})=>{const config=React.useContext(MotionConfigContext);const transition=value!==null&&value!==void 0?value:config.transition;const contextValue=React.useMemo(()=>({...config,transition}),[JSON.stringify(transition)]);return /*#__PURE__*/_jsx(MotionConfigContext.Provider,{value:contextValue,children:children});};const Variants=motion(React.Fragment);const humanReadableVariantMap={\"Chick-Fil-A \\xb7\\xa0Phone\":\"yRWdVLWfS\",\"Chick-Fil-A\":\"gFJ1Ii4Vm\",\"COCG \\xb7\\xa0Phone\":\"d5oAFPGng\",\"Jimmy Johns \\xb7\\xa0Phone\":\"isdXWr8du\",\"Jimmy Johns\":\"SgBg_3HJu\",\"Marsh's Edge \\xb7\\xa0Phone\":\"wLKddm9QT\",\"Marsh's Edge\":\"YkHA94az4\",\"Stretch Zone \\xb7\\xa0Phone\":\"hXQn0PdgS\",\"Stretch Zone\":\"v_tCAZijx\",COCG:\"r8sFXPtT7\"};const getProps=({height,id,width,...props})=>{var _humanReadableVariantMap_props_variant,_ref;return{...props,variant:(_ref=(_humanReadableVariantMap_props_variant=humanReadableVariantMap[props.variant])!==null&&_humanReadableVariantMap_props_variant!==void 0?_humanReadableVariantMap_props_variant:props.variant)!==null&&_ref!==void 0?_ref:\"v_tCAZijx\"};};const createLayoutDependency=(props,variants)=>variants.join(\"-\")+props.layoutDependency;const Component=/*#__PURE__*/React.forwardRef(function(props,ref){const{activeLocale,setLocale}=useLocaleInfo();const{style,className,layoutId,variant,...restProps}=getProps(props);const{baseVariant,classNames,gestureVariant,setGestureState,setVariant,variants}=useVariantState({cycleOrder,defaultVariant:\"v_tCAZijx\",variant,variantClassNames});const layoutDependency=createLayoutDependency(props,variants);const ref1=React.useRef(null);const isDisplayed=()=>{if([\"SgBg_3HJu\",\"gFJ1Ii4Vm\",\"r8sFXPtT7\",\"YkHA94az4\",\"isdXWr8du\",\"yRWdVLWfS\",\"d5oAFPGng\",\"wLKddm9QT\"].includes(baseVariant))return false;return true;};const isDisplayed1=()=>{if([\"SgBg_3HJu\",\"isdXWr8du\"].includes(baseVariant))return true;return false;};const isDisplayed2=()=>{if([\"gFJ1Ii4Vm\",\"yRWdVLWfS\"].includes(baseVariant))return true;return false;};const isDisplayed3=()=>{if([\"r8sFXPtT7\",\"d5oAFPGng\"].includes(baseVariant))return true;return false;};const isDisplayed4=()=>{if([\"YkHA94az4\",\"wLKddm9QT\"].includes(baseVariant))return true;return false;};const defaultLayoutId=React.useId();const sharedStyleClassNames=[];const componentViewport=useComponentViewport();return /*#__PURE__*/_jsx(LayoutGroup,{id:layoutId!==null&&layoutId!==void 0?layoutId:defaultLayoutId,children:/*#__PURE__*/_jsx(Variants,{animate:variants,initial:false,children:/*#__PURE__*/_jsx(Transition,{value:transition1,children:/*#__PURE__*/_jsxs(motion.div,{...restProps,className:cx(serializationHash,...sharedStyleClassNames,\"framer-m1z5yy\",className,classNames),\"data-framer-name\":\"Stretch Zone\",layoutDependency:layoutDependency,layoutId:\"v_tCAZijx\",onHoverEnd:()=>setGestureState({isHovered:false}),onHoverStart:()=>setGestureState({isHovered:true}),onTap:()=>setGestureState({isPressed:false}),onTapCancel:()=>setGestureState({isPressed:false}),onTapStart:()=>setGestureState({isPressed:true}),ref:ref!==null&&ref!==void 0?ref:ref1,style:{borderBottomLeftRadius:9999,borderBottomRightRadius:9999,borderTopLeftRadius:9999,borderTopRightRadius:9999,boxShadow:\"0px 28px 32px -12px rgba(0, 0, 0, 0.48)\",...style},...addPropertyOverrides({d5oAFPGng:{\"data-framer-name\":\"COCG \\xb7\\xa0Phone\"},gFJ1Ii4Vm:{\"data-framer-name\":\"Chick-Fil-A\"},hXQn0PdgS:{\"data-framer-name\":\"Stretch Zone \\xb7\\xa0Phone\"},isdXWr8du:{\"data-framer-name\":\"Jimmy Johns \\xb7\\xa0Phone\"},r8sFXPtT7:{\"data-framer-name\":\"COCG\"},SgBg_3HJu:{\"data-framer-name\":\"Jimmy Johns\"},wLKddm9QT:{\"data-framer-name\":\"Marsh's Edge \\xb7\\xa0Phone\"},YkHA94az4:{\"data-framer-name\":\"Marsh's Edge\"},yRWdVLWfS:{\"data-framer-name\":\"Chick-Fil-A \\xb7\\xa0Phone\"}},baseVariant,gestureVariant),children:[isDisplayed()&&/*#__PURE__*/_jsx(SVG,{className:\"framer-v6q7rr\",\"data-framer-name\":\"Stretch_Zone\",fill:\"black\",intrinsicHeight:320,intrinsicWidth:320,layoutDependency:layoutDependency,layoutId:\"ai2RbvT19\",svg:'<svg width=\"320\" height=\"320\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"><rect x=\"2.667\" y=\"2.667\" width=\"314.667\" height=\"314.667\" rx=\"157.333\" fill=\"#000\"/><rect x=\"2.667\" y=\"2.667\" width=\"314.667\" height=\"314.667\" rx=\"157.333\" stroke=\"#CFC725\" stroke-width=\"5.333\"/><path d=\"M253 155.833c0-51.362-41.637-93-93-93-51.362 0-93 41.638-93 93\" stroke=\"url(#a)\" stroke-width=\"2.447\" stroke-miterlimit=\"10\"/><path d=\"M67 164.167c0 51.362 41.637 93 93 93 51.362 0 93-41.638 93-93\" stroke=\"url(#b)\" stroke-width=\"2.447\" stroke-miterlimit=\"10\"/><path d=\"M56.573 153.978c-4.797 0-10.296-1.755-14.391-5.441l5.733-6.903c2.691 2.164 6.084 3.685 8.892 3.685 3.043 0 4.33-.994 4.33-2.691 0-1.813-1.93-2.398-5.149-3.685l-4.738-1.99c-4.096-1.638-7.664-5.089-7.664-10.589 0-6.494 5.85-11.817 14.157-11.817 4.33 0 9.127 1.638 12.637 5.089l-5.031 6.319c-2.574-1.814-4.797-2.75-7.606-2.75-2.457 0-3.978.878-3.978 2.574 0 1.814 2.165 2.457 5.617 3.803l4.621 1.814c4.74 1.872 7.43 5.148 7.43 10.413 0 6.436-5.382 12.169-14.86 12.169Zm27.083-.702v-29.603H73.593v-8.424h30.188v8.424H93.718v29.603H83.657Zm25.768 0v-38.027h14.392c8.19 0 15.211 2.808 15.211 12.285 0 5.441-2.458 9.01-6.143 10.999l8.249 14.743H129.9l-6.552-12.754h-3.861v12.754h-10.063Zm10.063-20.71h3.627c3.978 0 6.084-1.755 6.084-5.032 0-3.276-2.106-4.329-6.084-4.329h-3.627v9.361Zm26.787 20.71v-38.027h24.572v8.424h-14.509v5.968h12.402v8.424h-12.402v6.786h15.094v8.425h-25.157Zm39.763 0v-29.603h-10.063v-8.424h30.188v8.424h-10.063v29.603h-10.062Zm40.495.702c-9.712 0-18.136-6.435-18.136-19.423 0-12.754 8.775-20.008 18.37-20.008 5.031 0 9.126 2.34 11.817 5.031l-5.265 6.435c-1.872-1.638-3.744-2.808-6.318-2.808-4.447 0-8.308 4.095-8.308 10.999 0 7.137 3.276 11.115 8.191 11.115 2.925 0 5.265-1.521 6.903-3.276l5.265 6.319c-3.217 3.744-7.605 5.616-12.519 5.616Zm17.781-.702v-38.027h10.063v14.158h11.349v-14.158h10.063v38.027h-10.063v-15.094h-11.349v15.094h-10.063ZM93.79 203.288v-2.925l20.183-31.358h-18.37v-4.095h24.455v2.867l-20.242 31.358h20.417v4.153H93.79Zm47.185.702c-9.653 0-16.381-7.722-16.381-20.066 0-12.286 6.728-19.716 16.381-19.716s16.439 7.489 16.439 19.716c0 12.344-6.786 20.066-16.439 20.066Zm0-4.27c6.845 0 11.349-6.202 11.349-15.796 0-9.536-4.504-15.445-11.349-15.445-6.845 0-11.35 5.909-11.35 15.445 0 9.594 4.505 15.796 11.35 15.796Zm24.692 3.568V164.91h5.031l13.865 24.104 4.154 7.956h.234c-.234-3.861-.585-8.191-.585-12.227V164.91h4.622v38.378h-5.032l-13.923-24.162-4.154-7.898h-.234c.292 3.862.643 7.957.643 11.994v20.066h-4.621Zm37.878 0V164.91h22.115v4.095h-17.259v12.052h14.567v4.154h-14.567v13.924h17.844v4.153h-22.7Zm31.255-30.121c-2.623 0-4.787-2.037-4.787-5.017 0-2.979 2.164-5.017 4.787-5.017 2.649 0 4.813 2.038 4.813 5.017 0 2.98-2.164 5.017-4.813 5.017Zm0-.942c2.139 0 3.795-1.655 3.795-4.075 0-2.394-1.656-4.1-3.795-4.1-2.139 0-3.769 1.706-3.769 4.1 0 2.42 1.63 4.075 3.769 4.075Zm-1.833-1.554v-5.169h1.935c1.07 0 1.986.433 1.986 1.655 0 .611-.382 1.197-.942 1.401l1.172 2.113h-1.172l-.891-1.782h-1.044v1.782h-1.044Zm1.044-2.597h.662c.687 0 1.095-.306 1.095-.866 0-.509-.28-.84-1.044-.84h-.713v1.706Z\" fill=\"#fff\"/><g clip-path=\"url(#c)\" fill=\"#fff\"><path d=\"m58.511 238.687 3.273.208c-.124 1.52.208 3.144.995 4.226.911 1.249 1.844 1.478 2.61.916.829-.603.539-1.54.166-3.039l-.518-2.249c-.435-1.769-.27-3.872 1.616-5.287 2.154-1.603 5.324-.937 7.313 1.79 1.098 1.52 1.678 3.539 1.367 5.496l-2.963-.125c.021-1.353-.207-2.436-.973-3.477-.746-1.02-1.657-1.353-2.403-.811-.808.582-.456 1.665-.083 3.143l.56 2.165c.517 2.082.206 3.872-1.658 5.226-2.175 1.603-5.386 1.165-7.665-1.957-1.243-1.707-1.927-3.997-1.678-6.267l.041.042Zm20.551 8.098-3.087-3.227 2.217-2.144 8.7 9.139-2.216 2.145-3.087-3.248-9.488 9.119-2.527-2.665 9.488-9.119Zm6.008 20.881 3.17-.833c.351 1.499 1.18 2.936 2.257 3.706 1.243.895 2.196.833 2.755.042.601-.833.021-1.645-.787-2.936l-1.201-1.957c-.974-1.54-1.471-3.58-.104-5.516 1.554-2.207 4.744-2.561 7.5-.604 1.512 1.082 2.693 2.831 3.024 4.767l-2.838.812c-.394-1.291-.953-2.248-2.01-2.998-1.035-.728-1.988-.77-2.527 0-.58.812.083 1.728.912 3.019l1.201 1.894c1.16 1.812 1.388 3.602.062 5.476-1.553 2.206-4.744 2.81-7.872.562-1.72-1.229-3.087-3.185-3.542-5.413v-.021Zm21.296-2.769 3.19 1.791-7.914 14.198-3.19-1.791 7.914-14.198Zm7.126 4.102 3.708 1.498-.228 7.703c-.062 1.02-.165 2.082-.248 3.144l.083.041c.663-.811 1.305-1.665 1.968-2.435l5.034-5.767 3.708 1.499-6.008 15.114-3.086-1.249 2.216-5.538c.58-1.478 1.74-3.56 2.486-4.954l-.083-.042-2.651 3.081-4.434 4.934-1.885-.749.166-6.642.228-4.059-.083-.042c-.414 1.52-1.015 3.831-1.616 5.309l-2.217 5.538-3.045-1.229 6.008-15.114-.021-.041Zm15.848 14.572c1.098-5.204 4.641-7.557 8.929-6.661 4.267.916 6.567 4.538 5.469 9.722-1.098 5.204-4.682 7.703-8.949 6.787-4.268-.916-6.547-4.664-5.449-9.848Zm10.711 2.29c.683-3.185-.291-5.371-2.445-5.829-2.155-.458-3.915 1.125-4.599 4.331-.663 3.185.269 5.496 2.424 5.974 2.154.458 3.957-1.269 4.62-4.455v-.021Zm8.99-6.745 3.75.188 3.833 8.306 1.429 3.643h.104c-.083-1.728-.27-4.018-.187-5.933l.269-5.746 3.481.167-.788 16.28-3.749-.188-3.833-8.327-1.429-3.643h-.104c.083 1.79.27 3.997.187 5.912l-.27 5.767-3.48-.167.787-16.28v.021Zm17.464 14.698 1.865-2.706c1.243.895 2.796 1.436 4.122 1.311 1.512-.145 2.217-.812 2.113-1.79-.103-1.02-1.036-1.27-2.506-1.707l-2.176-.687c-1.74-.521-3.459-1.749-3.666-4.101-.249-2.686 1.926-5.059 5.282-5.392 1.865-.188 3.874.374 5.386 1.623l-1.615 2.478c-1.14-.708-2.196-1.062-3.46-.958-1.264.125-2.009.729-1.927 1.645.104.999 1.181 1.249 2.652 1.686l2.134.645c2.051.604 3.397 1.812 3.625 4.102.249 2.685-1.761 5.246-5.593 5.6-2.093.208-4.413-.375-6.194-1.77l-.042.021Zm20.261-17.404 3.542-.937 4.164 15.739-3.542.937-4.164-15.739Zm12.16 11.408 1.057-3.122c1.429.52 3.086.624 4.329.145 1.43-.541 1.906-1.394 1.575-2.29-.373-.957-1.347-.936-2.88-.957l-2.279-.084c-1.823-.041-3.791-.749-4.64-2.956-.953-2.519.497-5.392 3.646-6.599 1.74-.666 3.833-.687 5.635.104l-.891 2.831c-1.284-.375-2.403-.437-3.584.021s-1.74 1.228-1.409 2.103c.353.936 1.471.895 3.004.916l2.217.041c2.134.042 3.75.833 4.578 2.977.974 2.519-.29 5.517-3.894 6.912-1.968.75-4.351.812-6.443-.042h-.021Zm9.385-19.215 3.211-1.77 6.277 11.596 5.614-3.081 1.471 2.707-8.846 4.829-7.748-14.302.021.021Zm14.169-8.494 3.543-2.602 13.652 10.159-3.128 2.29-6.547-5.413c-1.325-1.041-2.796-2.352-4.143-3.476l-.083.062c.684 1.624 1.45 3.414 2.051 4.997l3.108 7.931-3.025 2.207-5.428-16.176v.021Zm4.185 8.744 6.298-4.622 1.678 2.311-6.298 4.622-1.678-2.311Zm5.117-15.843 2.672-2.644 8.66 2.811 3.625 1.436.062-.062c-1.326-1.104-3.128-2.54-4.454-3.914l-3.998-4.102 2.486-2.456 11.332 11.637-2.673 2.644-8.68-2.831-3.625-1.416-.062.063c1.367 1.166 3.107 2.519 4.433 3.893l4.019 4.122-2.486 2.457-11.332-11.638h.021Zm12.015-12.345 2.735-3.685c2.962-3.976 6.836-5.059 11.311-1.707 4.475 3.352 4.64 7.494 1.802 11.304l-2.859 3.852-12.989-9.743v-.021Zm13.238 4.476c1.637-2.207 1.678-4.518-1.429-6.85-3.108-2.331-5.179-1.561-6.837.646l-.414.562 8.266 6.204.414-.562Z\"/></g><g clip-path=\"url(#d)\" fill=\"#fff\"><path d=\"M67.444 76.02c-3.848-4.006-3.42-8.89-.193-11.996 1.753-1.692 3.72-2.142 5.302-2.099l.235 3.128c-1.133.021-2.159.235-3.206 1.22-1.86 1.779-1.775 4.52.555 6.94 2.373 2.486 4.896 2.85 7.162.665.491-.471.855-1.071.94-1.585l-2.01-2.078-1.987 1.928-2.138-2.228 4.425-4.263 5.345 5.57c-.043 1.606-.898 3.684-2.566 5.29-3.313 3.192-7.93 3.556-11.843-.513l-.021.021Zm8.743-19.471 8.423-6.234 1.88 2.55-5.386 3.983 1.988 2.7 4.596-3.385 1.881 2.55-4.596 3.383 2.287 3.107 5.601-4.135 1.882 2.55L86.106 70l-9.919-13.474v.022Zm18.043-8.44-4.02 2.27-1.56-2.763 11.309-6.383 1.56 2.763-4.019 2.27 6.649 11.825-3.292 1.864-6.649-11.825.022-.021Zm17.016-11.91 5.409-1.885c3.27-1.135 6.135-1.114 7.182 1.906.492 1.414.214 3.213-.897 4.135l.042.107c1.753-.129 3.421.62 4.148 2.741 1.111 3.214-1.112 5.613-4.554 6.79l-5.857 2.036-5.473-15.83Zm7.439 4.52c1.732-.6 2.245-1.607 1.839-2.742-.428-1.221-1.39-1.414-3.057-.836l-1.689.579 1.24 3.577 1.667-.578Zm2.63 6.619c1.945-.664 2.715-1.714 2.223-3.15-.47-1.392-1.667-1.606-3.634-.92l-1.988.685 1.411 4.091 1.988-.685v-.021Zm8.893-7.862-1.732-8.825 3.72-.728 1.796 9.21c.62 3.214 1.86 4.135 3.698 3.77 1.838-.364 2.694-1.692 2.052-4.905l-1.795-9.21 3.57-.708 1.731 8.826c1.069 5.526-.684 8.354-4.938 9.19-4.254.835-7.033-1.115-8.102-6.641v.021Zm17.358 2.614 2.01-2.72c1.24.963 2.843 1.584 4.211 1.499 1.582-.086 2.309-.772 2.245-1.757-.064-1.05-1.026-1.328-2.523-1.842l-2.223-.793c-1.774-.6-3.506-1.927-3.655-4.348-.171-2.763 2.159-5.141 5.643-5.355 1.924-.129 3.976.514 5.494 1.863l-1.753 2.507c-1.154-.772-2.223-1.179-3.548-1.093-1.304.086-2.095.664-2.031 1.628.064 1.028 1.175 1.328 2.672 1.82l2.18.73c2.095.706 3.442 1.991 3.592 4.348.171 2.784-1.988 5.333-5.965 5.569-2.18.129-4.532-.557-6.327-2.035l-.022-.021Zm18.748-4.392-4.446-11.031 4.04.214 1.283 3.92a354.96 354.96 0 0 0 1.154 3.77h.107c.534-1.264 1.09-2.4 1.603-3.62l1.689-3.77 3.933.214-5.6 10.496-.321 5.955-3.784-.193.321-5.955h.021Zm20.009-8.654 3.699.814-2.908 13.26 6.456 1.413-.684 3.107-10.133-2.228 3.592-16.366h-.022Zm15.136 3.77 3.591 1.157-5.13 15.959-3.592-1.157 5.131-15.959Zm7.61 2.4 3.677 1.606-1.261 7.969c-.278 1.885-.642 3.555-.92 5.462l.086.043c1.197-1.5 2.202-2.892 3.378-4.391l4.916-6.362 3.549 1.542-11.309 13.345-4.168-1.82 2.052-17.373v-.021Zm16.845 7.818 3.314 1.842-8.123 14.652-3.314-1.842 8.123-14.652Zm8.829 5.034 3.164 2.25-1.24 9.317-.769 3.963.085.064c.877-1.542 1.988-3.641 3.121-5.248l3.421-4.84 2.95 2.077-9.663 13.666-3.164-2.249 1.262-9.34.748-3.94-.086-.065c-.919 1.607-1.966 3.62-3.099 5.227l-3.421 4.862-2.95-2.078 9.663-13.666h-.022Zm9.471 17.458c3.805-4.049 8.7-3.856 11.95-.771 1.774 1.67 2.308 3.62 2.351 5.205l-3.121.386c-.086-1.136-.342-2.164-1.39-3.15-1.881-1.777-4.596-1.563-6.883.879-2.352 2.506-2.608 5.034-.299 7.197.491.472 1.111.814 1.624.857l1.988-2.1-2.009-1.906 2.116-2.249 4.447 4.22-5.302 5.612c-1.603.022-3.698-.706-5.408-2.313-3.357-3.17-3.934-7.776-.064-11.889v.022Zm16.676 8.061-.726-.857.855-.728 2.244 2.635-.855.728-.727-.857-2.223 1.885-.791-.942 2.223-1.885v.021Zm2.737 1.5.898 1.07-.642 1.2-.47.771.043.043.833-.343 1.283-.45.898 1.072-3.078 2.613-.727-.857.94-.792 1.219-.857-.043-.043-2.095.835-.556-.664 1.155-1.928-.043-.042-1.048 1.07-.94.793-.727-.857 3.078-2.613.022-.021Z\"/></g><defs><linearGradient id=\"a\" x1=\"160\" y1=\"62.833\" x2=\"160\" y2=\"155.833\" gradientUnits=\"userSpaceOnUse\"><stop stop-color=\"#CFC725\"/><stop offset=\".465\"/></linearGradient><linearGradient id=\"b\" x1=\"160\" y1=\"257.167\" x2=\"160\" y2=\"164.167\" gradientUnits=\"userSpaceOnUse\"><stop stop-color=\"#CFC725\"/><stop offset=\".938\"/></linearGradient><clipPath id=\"c\"><path fill=\"#fff\" transform=\"translate(34.667 34.667)\" d=\"M0 0h250.667v261.333H0z\"/></clipPath><clipPath id=\"d\"><path fill=\"#fff\" transform=\"translate(32 26.667)\" d=\"M0 0h258.667v266.667H0z\"/></clipPath></defs></svg>',withExternalLayout:true}),isDisplayed1()&&/*#__PURE__*/_jsx(SVG,{className:\"framer-xw91ym\",\"data-framer-name\":\"Jimmy_Johns\",fill:\"black\",intrinsicHeight:320,intrinsicWidth:320,layoutDependency:layoutDependency,layoutId:\"IIIX5X78l\",svg:'<svg width=\"320\" height=\"320\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M319.648 159.645c0 88.177-70.68 160-158.241 160-87.209 0-158.242-71.467-158.242-160C3.517 71.467 74.198 0 161.76 0c87.209 0 157.889 71.467 157.889 159.645Z\" fill=\"#fff\"/><path d=\"M310.859 159.644c0 83.2-66.814 150.756-149.1 150.756S12.66 242.844 12.66 159.644 79.473 8.889 161.76 8.889c82.286 0 149.1 67.555 149.1 150.755Z\" fill=\"#000\"/><path d=\"M170.901 133.334h12.308v47.644c0 11.022-2.813 11.733-5.275 12.089h-1.406c-3.165 0-7.033-1.067-7.033-1.067l-5.626-1.778v33.423l2.813 1.066c.351.356 13.011 5.334 24.615 5.334 13.011 0 19.692-2.489 27.429-10.311 9.143-9.245 10.549-22.756 10.549-34.489V98.133h-58.374v35.201Zm-70.68 0h12.307v47.644c0 11.022-2.813 11.733-5.275 12.089h-1.406c-2.462 0-5.978-.711-7.033-1.067l-5.626-1.778v33.423L96 224.711c.351.356 13.011 5.334 24.615 5.334 13.011 0 19.692-2.489 27.429-10.311 9.143-9.245 10.549-22.756 10.549-34.489V98.133H100.22v35.201ZM207.122 39.11c-8.088-3.2-14.769 1.068-16.879 7.468-2.11 5.689 0 12.8 8.439 15.644 8.088 3.2 14.418-.711 16.528-6.4 2.11-6.044 0-13.511-8.088-16.711Zm-6.681 18.134c-2.462-1.066-2.11-3.555-.704-7.466 1.407-4.267 2.813-6.4 5.275-5.334 2.462 1.067 2.11 3.556.703 7.823-1.406 3.91-2.813 6.044-5.274 4.977Zm61.186 74.667c1.407 4.267 4.923 6.4 8.792 5.334 2.109-.712 3.517-2.489 4.218-3.556 1.056-2.133 1.408-4.978 1.76-7.111 0-1.422.352-2.489.702-3.2 0-.356.704-.711 1.056-.711 1.056-.356 1.757 0 2.109 1.422.352 1.422 0 2.844-1.405 4.267h-.352c.352 1.777 1.053 3.2 1.405 4.977l6.331-2.133c-.352-1.778-1.056-3.2-1.408-4.978l-1.406.356h-.352v-.356c.704-1.777.704-3.555 0-5.689-1.405-4.266-5.274-6.044-9.141-4.622-1.76.711-2.813 1.778-3.869 3.556-.704 1.778-1.056 3.911-1.056 5.689 0 1.422-.35 2.844-.702 3.555-.352.711-.704.711-1.056 1.067-1.054.355-1.758-.356-2.109-1.422-.704-1.778 0-3.2 1.757-4.623-.702-1.777-1.054-3.2-1.757-4.977-2.462.711-4.572 1.422-7.033 2.489.703 1.777 1.406 3.2 2.109 4.977.352 0 .704-.355 1.055-.355h.352v.355c-.703 1.778-.703 3.911 0 5.689Zm9.848-20.266c2.109-1.067 4.57-2.134 6.68-3.2-1.406-2.845-2.462-5.689-3.867-8.178-2.112 1.067-3.869 1.778-5.627 2.844.702 1.067 1.406 3.2 1.406 3.2h-.352c-1.406.711-2.11.711-2.462.356-.703-.356-1.406-1.067-2.109-2.133-1.055.355-2.11 1.066-2.813 1.422 0 .355.351.711.703 1.422 2.11 4.267 4.923 6.044 8.441 4.267Zm-73.849 156.443c0-.355-.351-.709-.351-1.067 1.055-.354 2.461-.71 3.516-1.421.352 1.779 1.055 3.912 1.759 5.688-1.407.357-2.462 1.067-3.869 1.424-1.055-1.424-2.11-1.779-3.164-1.424-1.759.357-2.11 2.133-1.407 4.979.703 2.845 2.11 4.266 3.868 3.554 1.407-.354 2.11-1.776 1.758-4.266h4.22c.352 4.266-1.758 7.112-5.978 8.178-5.626 1.422-9.494-1.421-10.901-6.045-1.407-4.621 1.055-8.533 5.275-9.6 2.461-.355 4.219-.355 5.274 0Zm50.99-35.91-.703-.711c.703-1.067 1.406-1.778 2.461-2.845 1.055 1.067 2.461 2.134 3.516 3.2-.703 1.067-1.406 1.778-2.461 2.845-1.055-.356-2.11-.356-2.813.355-.352.712-.352 1.067 0 1.423.703.711 1.406 0 3.165-.711.351 0 .703-.356 1.406-.712 2.462-1.066 4.572-1.422 6.33.356 2.11 1.778 2.461 4.978.352 7.467-.704 1.066-2.11 1.777-3.517 2.133.352.356.703.356.703.711-.703 1.067-1.758 1.778-2.461 2.845-1.407-1.067-2.813-2.489-3.868-3.556l2.461-2.489c1.407.711 2.462.356 3.165-.355.703-.712.703-1.067 0-1.778-.352-.356-1.407-.356-2.813.355-.352 0-.704.356-1.055.356-2.813 1.067-5.275 1.422-7.033-.356-2.11-1.777-2.11-4.622 0-6.755 1.055-.711 2.11-1.422 3.165-1.778Zm-171.253 3.555c.352-.355.704-.711 1.055-.711.704 1.067 1.759 1.778 2.462 2.845-1.055 1.066-2.462 2.133-3.868 3.2-.704-1.067-1.758-1.778-2.462-2.845.704-1.066.704-2.133 0-3.2-.351-.711-1.055-.711-1.406-.355-.704.711-.352 1.422 0 3.2 0 .355.352.711.352 1.422.703 2.489.703 4.622-1.407 6.4-2.11 1.778-5.275 1.422-7.385-.711-.703-1.067-1.406-2.489-1.406-3.911-.352.355-.704.355-.704.711-.703-1.067-1.406-1.778-2.11-2.845 1.407-1.066 2.814-2.488 4.22-3.555.703 1.067 1.407 2.133 2.11 2.844-.703 1.423-.703 2.489 0 3.2.352.711 1.055.711 1.758.356.352-.356.703-1.067 0-2.845 0-.355-.352-.711-.352-1.066-.703-2.845-.703-5.334 1.407-7.111 2.11-1.778 4.923-1.423 6.681 1.066.704 1.423 1.055 2.489 1.055 3.911Zm8.439 7.467c-.703 1.067-1.406 1.778-2.461 2.844l1.055 1.067c-2.462 1.422-5.275 3.2-7.736 4.267l-.704-.712c-.703 1.067-1.406 1.778-2.461 2.845 1.406 1.422 3.165 2.844 4.571 4.267l2.11-2.489-.352-.356c-.351 0-.351-.355-.351-.355l1.758-1.067 3.516 2.844-.703 1.778-1.055-1.066c-.351.355-1.758 2.133-2.11 2.488 2.11 1.778 4.22 3.556 6.33 4.978.703-1.066 1.407-1.778 2.462-2.844-.352-.356-.704-.356-1.055-.711l3.165-8.534c.351.356.703.711 1.054.711.704-1.066 1.407-1.777 2.462-2.844-3.516-1.778-6.681-4.267-9.495-7.111Zm-.351 11.022-2.462-2.133 4.22-2.489.352.355-2.11 4.267Zm21.802 4.623c.352 3.555.704 6.755 1.055 10.31.704-1.422 1.407-2.844 2.11-3.911-.351-.355-1.055-.355-1.406-.711.703-1.066 1.055-2.133 1.758-3.2 1.758 1.067 3.516 1.778 5.978 2.845-.703 1.067-1.055 2.133-1.758 3.201-.352-.358-.704-.358-1.407-.712-2.11 3.554-3.868 7.112-5.978 10.666-1.758-.712-3.516-1.421-4.571-2.133-.352-3.912-.704-7.467-1.055-11.733-1.055 1.777-1.758 3.554-2.813 4.978.351.355.703.355 1.406.71-.703 1.066-1.055 2.133-1.758 3.2-1.758-1.067-3.868-2.134-5.626-3.555.703-1.421 1.054-2.133 1.758-3.2.351.355.703.711 1.406.711 1.407-2.489 2.814-5.333 4.22-7.466-.351-.356-.703-.712-1.406-.712.703-1.066 1.055-2.133 1.758-3.2 2.11 1.422 4.219 2.845 6.329 3.912Zm23.209 9.955c4.219 1.421 8.088 4.621 6.329 9.955-1.406 4.978-5.275 7.112-10.901 5.333-2.813-1.067-5.978-1.776-8.791-3.2.352-1.067.703-2.488 1.055-3.555.352 0 .703.355 1.055.355.703-2.488 1.758-5.333 2.461-8.176-.351 0-.703-.357-1.055-.357.352-1.067.704-2.488 1.055-3.555 2.813 1.421 5.627 2.133 8.792 3.2Zm-2.11 3.2c-.352 0-.704-.355-1.055-.355-.704 2.843-1.759 5.334-2.462 8.176.352 0 .703.358 1.055.358 1.758.709 3.517 0 4.22-3.2 1.055-2.846.352-4.267-1.758-4.979Zm21.451.712c0 1.421 0 2.488-.352 3.909h-1.055c.352 2.491 1.055 4.624 1.407 7.112 1.055-2.133 1.758-4.266 2.813-6.754h-1.055c0-1.424 0-2.491.352-3.912 2.461.354 4.571.354 7.033.354 0 1.424 0 2.491-.352 3.912h-1.055c.703 2.488 1.407 4.622 1.758 7.112.704-2.133 1.407-4.624 2.462-6.757h-1.055c0-1.421 0-2.488.351-3.555h6.33c0 1.422 0 2.488-.352 3.912h-1.055c-1.758 4.267-3.516 8.176-5.274 12.443h-4.923c-.704-2.133-1.055-4.267-1.759-6.4-.703 2.133-1.758 3.912-2.461 6.045-1.758 0-3.516-.354-4.923-.712-1.055-4.266-2.462-8.533-3.517-13.154-.351 0-.703 0-1.055-.355 0-1.424 0-2.491.352-3.912 1.758-.355 4.22.355 7.385.712Zm31.297-1.424c0 1.424.351 2.491.351 3.557-.351 0-1.055 0-1.406.355l1.055 8.533c.351 0 1.055 0 1.406-.354 0 1.421.352 2.488.352 3.554-3.165.712-5.978 1.067-9.143 1.067 0-1.421-.351-2.488-.351-3.555h1.406l-1.055-8.533h-1.406c0-1.424-.352-2.491-.352-3.557 3.165 0 5.978-.355 9.143-1.067Zm57.67-29.51c1.055 1.422 2.11 2.489 3.164 3.911-1.054 1.066-2.109 1.778-3.164 2.844-.352-.355-.704-.711-.704-1.066-.703.711-1.758 1.777-2.813 2.488.352.712 1.055 1.423 1.759 2.134.703-.711 1.758-1.422 2.461-2.134.703.712 1.407 1.778 2.11 2.489-.703.711-1.758 1.423-2.462 2.134.704.711 1.055 1.422 1.759 2.133 1.054-.711 1.758-1.422 2.813-2.489-.352-.355-.352-.711-.704-1.067 1.056-1.066 2.111-1.777 3.165-2.844 1.055 1.422 2.11 2.489 3.165 3.911-3.868 3.556-7.736 6.756-11.604 9.956-.703-1.067-1.758-1.778-2.462-2.845.352-.355.704-.355 1.055-.711-1.758-2.133-3.516-4.622-5.275-6.755-.351.355-.703.355-1.055.711-.703-1.067-1.406-1.778-2.461-2.845 3.868-3.2 7.736-6.4 11.253-9.955Zm-18.638 30.934-.703-1.424c-.352 0-.352.357-.703.357h-.352l-1.407-2.49h.352c1.055-.71 2.11-1.067 3.165-1.776h.351l1.407 2.488s-.703.354-1.055.354l1.758 3.2c2.462-1.421 4.924-2.842 7.033-4.266-.703-1.067-1.055-2.134-1.758-3.2-.351.356-.703.356-1.055.712-1.406-2.489-2.813-5.334-4.22-7.822.352-.356.704-.356 1.055-.712-.703-1.066-1.055-2.133-1.758-3.2-2.461 1.422-4.571 2.845-7.033 4.267 0 0 1.407 2.845 1.758 3.2l1.055-.356 1.407 2.489h-.352c-1.055.711-2.11 1.067-3.164 1.778h-.352l-1.055-2.489s.703-.355 1.055-.355c-.352-.356-1.758-3.2-1.758-3.2-2.462 1.422-4.924 2.488-7.385 3.555.703 1.067 1.055 2.133 1.758 3.199.352 0 .703-.354 1.055-.354 1.407 2.488 2.813 5.333 4.22 7.466-.352 0-.703.355-1.055.355.703 1.067 1.055 2.133 1.758 3.2 2.462-1.067 4.923-2.488 7.385-3.555l-1.407-1.421ZM81.583 66.844s1.055-.71 1.407-1.066c-1.407-1.067-2.462-2.49-3.868-3.556-3.517 3.2-7.033 6.4-10.198 9.956l4.22 8.533v.355h-.352c-3.165-1.066-5.626-2.133-8.791-3.2-3.165 3.556-5.978 7.467-8.791 11.378 1.406 1.067 2.461 2.49 3.868 3.556.351-.356 1.055-1.422 1.055-1.422l9.494 8.533s-.703 1.067-1.055 1.422c1.407 1.067 2.813 2.489 3.868 3.556l5.275-7.467c-1.407-1.066-2.813-2.489-3.868-3.556-.351.356-1.055 1.423-1.055 1.423s-6.33-5.69-9.143-8.534l.352-.355c5.626 2.133 11.604 4.622 17.582 6.755.704-.71 1.407-1.777 2.11-2.489-2.813-5.688-5.978-11.377-8.791-17.066l.352-.356c3.164 2.845 9.142 8.534 9.142 8.534L82.99 83.2c1.407 1.066 2.462 2.489 3.868 3.555 2.813-2.844 5.626-5.689 8.791-8.177-1.406-1.067-2.813-2.49-3.868-3.556-.352.356-1.407 1.067-1.407 1.067.352-.711-8.79-9.245-8.79-9.245Zm38.681-22.754s1.056-.356 1.759-.712c-.703-1.778-1.407-3.2-2.462-4.622-4.22 1.422-8.791 3.556-13.011 5.333.352 3.2.703 6.045.703 9.6v.356l-.351-.356c-2.462-2.133-4.572-4.267-7.033-6.4-4.22 2.133-8.088 4.622-11.956 7.467.703 1.778 1.407 3.2 2.461 4.622.352-.356 1.407-1.066 1.407-1.066l5.626 11.377s-1.055.711-1.406 1.067c.703 1.778 1.758 3.2 2.461 4.978 2.462-1.778 4.923-3.556 7.385-4.978-.703-1.778-1.758-3.2-2.462-4.978-.351.356-1.406 1.067-1.758 1.067 0 0-3.868-7.467-5.626-11.378l.351-.355 13.715 12.8c1.055-.712 2.11-1.067 3.165-1.423-.704-6.4-1.407-12.8-2.11-18.844.351 0 .351 0 .351-.356l5.627 11.378s-1.055.355-1.759.711c.704 1.778 1.759 3.2 2.462 4.978 3.517-1.778 7.385-3.2 11.253-4.622-.704-1.778-1.759-3.2-2.462-4.978-.703.355-1.758.71-1.758.71 1.055 0-4.572-11.377-4.572-11.377Zm32-7.112c-.352-1.778-.703-3.556-.703-5.334-3.517.356-5.979.712-8.792 1.067.352 1.778.704 3.556.704 5.334.351 0 1.406-.356 1.406-.356l-2.11 5.333s-3.516-4.266-3.516-4.622c.703 0 1.055 0 1.406-.355-.351-1.778-.703-3.556-.703-5.334-3.868.711-8.088 1.422-11.956 2.489.352 1.778.703 3.556.703 5.333.352 0 1.407-.355 1.407-.355l7.384 7.111.704 3.911s-1.407.356-1.759.356l1.055 5.333a78.47 78.47 0 0 1 12.66-2.133c-.352-1.778-.703-3.556-.703-5.334-.704 0-1.759.356-1.759.356l-.703-3.911 4.572-9.245c0 .711.351.356.703.356Zm114.637 60.444 4.222-3.2c-1.76-2.489-3.166-5.333-5.276-7.822l-4.22 3.2c.352.356 1.055 1.778 1.055 1.778l-5.275 4.266v-.355s3.165-9.6 4.572-14.578c-2.11-2.844-4.572-5.689-7.033-8.533l-4.22 3.2 1.407 1.422-9.847 7.822-1.406-1.422-4.22 3.2c2.11 2.489 4.22 4.622 6.33 7.111l4.22-3.2c-.352-.356-1.407-1.778-1.407-1.778l6.681-5.333v.355s-3.165 10.667-4.923 16c1.407 2.134 3.165 4.623 4.572 6.756 4.923-3.911 14.066-11.022 14.066-11.022-.352.355.351 1.422.702 2.133Zm-213.098 4.267s.704-1.422 1.055-1.777c-1.758-.712-3.165-1.423-4.571-2.49-2.11 3.912-4.22 7.823-5.978 12.089 1.758.711 3.164 1.423 4.571 2.489l1.055-2.133 11.253 5.689-1.055 2.133c1.758.711 3.165 1.778 4.923 2.489 1.758-4.267 3.868-8.178 5.978-12.089-1.758-.711-3.165-1.778-4.923-2.489-.352.711-1.055 1.778-1.055 1.778l-11.253-5.689Zm181.45-23.111 7.385-10.667s1.055.71 1.406 1.067l3.165-4.267c-2.813-2.49-5.978-5.333-9.143-7.467-.703.711-1.055 1.422-1.406 2.134-.352.71-1.055 1.066-1.407 1.777.352.356.703.356.703.711l.352.356-.352.356-.703 1.422-1.055 1.422-.352.356-.351-.356s-2.813-2.133-3.868-2.844l-.703-.356-.352-.356.352-.355 2.109-2.845.352-.355.352.355s.703.356 1.055.712l1.406-1.778 1.407-2.134c-3.165-2.488-6.33-4.622-9.846-6.4l-3.165 4.267c.351.355 1.406 1.067 1.406 1.067s-7.736 10.31-7.736 10.666c0 0-1.055-.71-1.407-1.066-1.055 1.422-1.758 2.489-2.813 3.91 3.869 2.134 6.682 4.268 9.846 6.4l1.407-2.132 1.407-1.778c-.352-.356-.704-.356-.704-.712l-.351-.355 2.461-3.555 5.275 3.91-2.461 3.556-1.055-1.066-2.814 3.91c3.165 2.49 6.33 4.978 9.143 7.823 1.055-1.422 1.758-2.49 2.813-3.911-1.055-.712-1.406-1.067-1.758-1.422ZM187.78 34.133s-3.516-.71-5.626-1.066c-2.462-.356-5.978-.712-5.978-.712l-.704 5.334 2.814.355-2.11 13.867c-.352 2.844-1.407 3.556-2.462 3.556-1.055 0-2.461-.712-2.461-.712l-.703 4.978s2.461 1.423 5.274 2.134c2.813.355 4.22 0 5.978-1.067 2.11-1.422 2.813-4.267 3.165-7.111l2.813-19.556ZM40.791 118.4s-1.406 3.911-1.758 5.333c-.352 1.422-1.758 6.045-1.758 6.045l4.923 1.422.703-2.845 13.363 3.911c2.813.712 3.164 1.778 3.164 3.2 0 1.067-1.054 2.134-1.054 2.134l4.923 1.422s1.758-2.489 2.813-4.978c.703-2.844.703-4.266-.352-6.044-1.406-2.134-3.868-3.556-6.33-4.267L40.791 118.4Z\" fill=\"#fff\"/><path d=\"M145.583 216.533c7.736-7.822 9.143-19.2 9.143-31.289V102.4H104.44v26.666h12.308v51.912c0 12.8-3.868 15.644-8.791 16.355h-2.11c-3.868 0-8.088-1.422-8.088-1.422v24.533s11.956 4.978 23.209 4.978c12.659 0 18.286-2.489 24.615-8.889Zm70.681 0c7.736-7.822 9.143-19.2 9.143-31.289V102.4h-50.286v26.666h12.308v51.912c0 12.8-3.868 15.644-8.791 16.355h-2.11c-3.868 0-8.088-1.422-8.088-1.422v24.533s11.956 4.978 23.209 4.978c12.659 0 18.286-2.489 24.615-8.889Z\" fill=\"#EA0029\"/><path d=\"m68.572 179.2-1.759-4.978H56.264c-.352 0-.703-.356-1.055-.711l-2.813-9.956h-5.275l-3.165 9.956c0 .355-.703.711-1.055.711H32.703l-1.758 4.978 8.44 6.044c.352.356.703.711.352 1.422l-3.165 9.956 4.22 3.2 8.439-6.044c.352-.356 1.055-.356 1.407 0l8.439 6.044 4.22-3.2-3.516-9.956c0-.355 0-1.066.351-1.422l8.44-6.044Z\" fill=\"#fff\"/><path d=\"m60.484 195.911-3.164-9.6c-.352-.711 0-1.422.703-2.133l8.088-6.045-.704-2.133h-9.846c-.703 0-1.406-.355-1.758-1.067l-3.165-9.6h-2.11l-2.813 9.956c-.352.711-1.055 1.066-1.758 1.066h-9.846l-.703 1.778 8.087 6.045c.704.355.704 1.067.704 2.133l-3.165 9.6 1.758 1.067 8.088-6.045c.703-.355 1.407-.355 2.11 0l8.088 6.045 1.406-1.067Z\" fill=\"#EA0029\"/><path d=\"m292.221 179.2-1.76-4.978h-10.549c-.352 0-.704-.356-1.053-.711l-3.166-9.956h-4.922l-3.166 9.956c0 .355-.704.711-1.055.711h-10.198l-1.758 4.978 8.439 6.044c.352.356.704.711.352 1.422l-3.165 9.956 4.22 3.2 8.44-6.044c.352-.356 1.053-.356 1.405 0l8.44 6.044 4.222-3.2-3.166-9.956c0-.355 0-1.066.352-1.422l8.088-6.044Z\" fill=\"#fff\"/><path d=\"m284.133 195.911-3.165-9.6c-.352-.711 0-1.422.704-2.133l8.088-6.045-.704-2.133h-9.845c-.704 0-1.408-.355-1.76-1.067l-3.163-9.6h-2.112l-3.163 9.6c-.352.712-1.056 1.067-1.76 1.067h-9.845l-.703 1.778 8.087 6.044c.704.356.704 1.067.704 2.133l-3.165 9.6 1.758 1.067 8.087-6.044c.704-.356 1.408-.356 2.112 0l8.088 6.044 1.757-.711Z\" fill=\"#EA0029\"/></svg>',withExternalLayout:true}),isDisplayed2()&&/*#__PURE__*/_jsx(SVG,{className:\"framer-1r2k61z\",\"data-framer-name\":\"Chick_Fil_A\",fill:\"black\",intrinsicHeight:320,intrinsicWidth:320,layoutDependency:layoutDependency,layoutId:\"yXAB2HSHm\",svg:'<svg width=\"320\" height=\"320\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"><g clip-path=\"url(#a)\"><path d=\"M160 2.853C246.8 2.853 317.147 73.2 317.147 160S246.8 317.147 160 317.147 2.853 246.8 2.853 160 73.2 2.853 160 2.853Z\" fill=\"#fff\"/><path d=\"M160 2.853C246.8 2.853 317.147 73.2 317.147 160S246.8 317.147 160 317.147 2.853 246.8 2.853 160 73.2 2.853 160 2.853Z\" stroke=\"#fff\" stroke-width=\"5.707\"/><path d=\"M53.573 227.6c.934-1.573 1.094-2.933.374-4.027-.667-1.093-1.947-1.413-2.987-.746-1.227.746-1.333 2.693-1.093 4.773.426 3.013.906 7.04-2.507 9.12-3.84 2.373-7.653 1.333-10.027-2.507-1.093-1.706-1.466-3.546-1.173-5.44.293-1.893 1.147-3.493 2.507-4.773l3.68 1.787c-2.214 2.4-2.747 4.533-1.574 6.373 1.094 1.707 2.4 2.027 4.16.987 1.147-.72 1.28-2.56.934-4.64-.48-2.934-.854-6.907 2.8-9.12 1.52-.934 3.066-1.174 4.72-.854 1.706.374 2.986 1.36 3.92 2.88 1.653 2.694 1.653 5.307-.054 7.894l-3.733-1.787v.053l.053.027Zm4.614 3.173 3.066-2.506 10.934 13.226L69.12 244l-4.053-4.96-14.8 12.187-2.747-3.307 14.8-12.187-4.053-4.96h-.08Zm.826 23.547c1.52 0 2.8 1.333 2.8 2.827 0 1.493-1.333 2.8-2.826 2.8-1.494 0-2.8-1.334-2.8-2.827 0-1.493 1.333-2.8 2.826-2.8Zm29.28 8.693c.294-1.786-.106-3.12-1.173-3.866-1.093-.747-2.32-.56-3.013.426-.854 1.174-.187 2.987.8 4.827 1.52 2.613 3.493 6.16 1.146 9.413-2.64 3.654-6.56 4.107-10.213 1.467-1.653-1.173-2.693-2.747-3.12-4.533-.427-1.894-.293-3.68.48-5.334l4.107.294c-1.147 3.066-.8 5.2.933 6.48 1.653 1.173 3.013.933 4.213-.667.8-1.093.187-2.827-.906-4.64-1.574-2.56-3.414-6.053-.854-9.467 1.04-1.413 2.374-2.266 4.054-2.56 1.706-.293 3.253.134 4.72 1.174 2.56 1.84 3.493 4.266 2.933 7.333l-4.107-.24v-.107Zm13.28.987-11.626 20.053-3.734-2.16L97.84 261.84l3.733 2.187V264Zm-6.32 23.28 8.934-21.36 4.453 1.84-.56 15.467 10.64-11.254 4.453 1.84-8.933 21.36-3.973-1.653 5.52-13.2-8.8 9.493-2.88-1.173.613-12.96-5.52 13.2-3.973-1.653.053.053h-.027Zm40.614-10.8c3.92.8 6.853 3.04 8.08 7.04.613 2 .72 4.267.186 6.8-1.04 5.067-4.053 8.267-7.573 9.253-1.76.48-3.6.534-5.573.107-3.92-.8-6.854-3.013-8.134-7.04-.613-1.973-.666-4.267-.133-6.8 1.04-5.067 4.053-8.32 7.573-9.227 1.76-.48 3.6-.506 5.574-.133Zm-.8 3.893c-1.84-.373-3.494-.053-5.014.987-1.466 1.04-2.506 2.827-3.013 5.387-.507 2.56-.32 4.586.613 6.16.934 1.546 2.374 2.506 4.214 2.88 1.84.373 3.493.053 4.96-.987 1.52-1.04 2.506-2.827 3.066-5.387.507-2.56.32-4.586-.666-6.16-.934-1.546-2.32-2.506-4.16-2.88Zm26.373-1.013 4.293.133-.72 23.174-4.533-.134-8.027-15.546-.48 15.306-4.293-.133.72-23.173 4.533.133 8.027 15.547.48-15.334v.027Zm17.6 4.88c-.987-1.52-2.187-2.213-3.44-2.08-1.28.133-2.08 1.147-1.973 2.373.186 1.467 1.893 2.374 3.84 3.014 2.933.906 6.773 2.186 7.2 6.16.506 4.48-2.08 7.52-6.534 8.026-1.973.24-3.84-.186-5.386-1.226-1.6-1.094-2.694-2.507-3.254-4.294l3.227-2.56c1.227 3.014 2.933 4.4 5.12 4.16 1.973-.24 2.88-1.333 2.64-3.36-.133-1.36-1.76-2.213-3.787-2.826-2.88-.854-6.613-2.187-7.04-6.427-.186-1.76.24-3.307 1.28-4.64 1.094-1.36 2.507-2.133 4.294-2.32 3.12-.373 5.493.747 7.146 3.413l-3.226 2.614h-.054l-.053-.027Zm18-10.347 6.48 22.267-4.16 1.173-6.48-22.266 4.16-1.174Zm14.96 1.094c-1.36-1.174-2.693-1.547-3.867-1.094-1.173.454-1.706 1.654-1.28 2.8.56 1.36 2.4 1.76 4.48 1.894 3.014.106 7.094.32 8.56 4.026 1.707 4.16 0 7.76-4.16 9.467-1.893.747-3.733.853-5.52.24-1.84-.613-3.253-1.707-4.293-3.253l2.4-3.307c1.973 2.56 4.027 3.44 6 2.64 1.893-.747 2.4-2.027 1.653-3.92-.533-1.28-2.266-1.707-4.4-1.707-2.986 0-6.96-.32-8.453-4.293-.667-1.6-.667-3.227 0-4.827s1.84-2.693 3.493-3.413c2.934-1.173 5.494-.72 7.76 1.36l-2.4 3.36.054.053-.027-.026Zm3.813-8.534 3.734-2.133 9.466 16.693 8.56-4.826 1.947 3.44-12.293 6.96-11.387-20.134h-.027Zm39.44 1.387-4.72-3.227-5.76 4.587 2.08 5.333-3.653 2.88-8.24-23.066 3.36-2.694 20.56 13.28-3.653 2.88.026.027Zm-15.093-10.4 3.067 7.84 3.84-3.013-6.907-4.774v-.053Zm13.867-21.147 2.88-3.173 17.12 15.653-3.067 3.36-17.067-4.08L265.2 258.4l-2.933 3.173-17.12-15.653 3.066-3.36 17.067 4.053-11.307-10.32.054-.053v.053Zm24.026 7.28-19.386-12.666 3.973-6.054c2.987-4.586 8.853-7.093 15.6-2.693 6.773 4.4 6.773 10.773 3.787 15.36l-3.974 6.053Zm-1.013-5.76.853-1.333c1.094-1.707 1.654-3.307 1.6-5.2 0-1.893-1.28-3.867-3.733-5.493-2.453-1.6-4.773-1.974-6.533-1.227-1.76.72-3.014 1.893-4.107 3.547l-.853 1.333 12.773 8.32v.053ZM82.347 49.787c-2.454-1.52-4.774-1.414-6.987.293-1.52 1.147-2.373 2.64-2.507 4.48-.133 1.84.56 3.733 2.134 5.76 1.573 2.027 3.253 3.173 5.066 3.493 1.84.294 3.494-.133 4.96-1.28 2.214-1.706 2.88-3.92 2.08-6.666l3.68-1.574c1.84 4.214.667 8.32-3.306 11.387-2.454 1.893-5.12 2.613-8.08 2.267-2.987-.32-5.574-2.027-7.84-4.96-2.267-2.934-3.227-5.867-2.8-8.854.426-2.933 1.786-5.333 4.266-7.226 3.974-3.067 8.267-3.174 11.867-.294l-2.453 3.174-.054-.054-.026.054Zm14.08 8.986L85.68 38.24l3.84-1.973 4.08 7.813 8.187-4.293-4.08-7.814 3.84-1.973 10.746 20.533-3.84 1.974-4.826-9.227-8.187 4.293 4.827 9.227-3.84 1.973Zm14.906-32.48 8.24 21.654-4.026 1.52-8.24-21.654 4.026-1.52Zm23.36 1.387c-1.653-2.373-3.786-3.227-6.533-2.56-1.84.427-3.227 1.467-4.107 3.067-.853 1.6-.986 3.653-.426 6.16.613 2.453 1.706 4.213 3.226 5.253 1.574 1.04 3.254 1.28 5.067.853 2.747-.666 4.267-2.453 4.587-5.306h4.026c0 4.64-2.8 7.946-7.653 9.173-2.987.72-5.76.32-8.32-1.227-2.56-1.52-4.267-4.106-5.147-7.706-.906-3.6-.506-6.667 1.04-9.227 1.574-2.56 3.84-4.16 6.8-4.907 4.88-1.173 8.88.48 11.014 4.534l-3.547 1.893h-.027Zm7.654-9.093 4.293-.32.613 8.56 7.227-9.174 5.307-.373-8.614 11.013 10.96 12-5.44.427-9.173-10.4.8 11.013-4.293.32-1.707-23.066h.027Zm21.04 13.386.24-3.546 12.346.8-.24 3.546-12.346-.8ZM183.333 19.2l14.374 2.88-.8 3.867-10.16-2.027-1.04 5.2 8.186 1.653-.746 3.867-8.187-1.653-1.947 9.733-4.213-.853 4.533-22.747v.08Zm23.254 5.733-6.96 22.134-4.107-1.28 6.96-22.134 4.107 1.28Zm5.546 1.84 3.974 1.707-7.467 17.68 9.067 3.84-1.574 3.653-13.04-5.52 9.04-21.36Zm9.307 19.947 1.787-3.067 10.64 6.187-1.787 3.067-10.64-6.187Zm19.147 23.52 2.026-5.333-5.76-4.534-4.72 3.254-3.653-2.88 20.48-13.334 3.36 2.64-8.187 23.04-3.653-2.88.107.054v-.027Zm6.586-17.093-6.906 4.773 3.84 3.013 3.066-7.84v.054Zm5.734 76.64c.613-.454 1.253-.96 1.84-1.414 17.626 52.667-10.534 109.707-62.907 127.467-5.653 1.92-11.467 3.28-17.333 4.16 17.546-16.88 30.72-45.867 32.32-75.84 1.653-30.667-11.654-50.453-36.88-53.12-38.134-4.08-77.707 34.08-94.614 82.96-29.386-46.987-15.28-109.067 31.467-138.587C122.72 65.36 141.173 60 159.973 60c5.654 0 11.387.507 16.96 1.467-7.386 5.04-12.32 12.986-13.653 21.866-3.76 17.387 1.493 35.654 12.32 38 10.827 2.32 23.173-12.08 26.88-29.466 2.053-7.76 1.333-15.947-2-23.254a101.737 101.737 0 0 1 26.88 17.654 59.977 59.977 0 0 0-4.453 3.04c-18.08 13.493-28.374 35.28-20.08 46.453 8.293 11.173 32 7.547 50.026-6h.08l-.026.027Zm-128.96 4.506c4.213-4.96.453-15.093-7.12-21.573-7.574-6.507-15.707-6.507-19.867-1.573-4.16 4.906-2.88 12.96 4.72 19.466 7.573 6.507 18.133 8.614 22.293 3.68v.054l-.026-.054Zm24.346-11.68c8.134-3.76 9.12-19.173 3.12-32.32-6-13.173-16.32-18.24-24.453-14.453-8.133 3.787-11.04 14.96-5.013 28.08 6.053 13.12 18.24 22.453 26.373 18.72h-.053l.026-.027Zm60.907 86.88c22.453-15.626 33.467-11.386 33.467-17.12 0-6.32-17.334-18.32-29.574-19.466.134 3.413.134 6.96-.08 10.613-.506 8.747-1.76 17.467-3.786 25.947l-.027.026Zm-95.813 28.16c-.294 4.054-.134 8.134.586 12.134-9.253-4.827-17.706-11.12-25.04-18.587 11.947-45.04 46.134-88.8 78.987-85.573 13.76 1.333 23.253 13.493 21.787 39.92-1.654 30.586-23.627 75.173-46.827 73.866-10.72-.586-14.08-11.573-13.253-21.333 1.76-21.093 12.426-26.88 13.12-35.413.133-3.467-2.587-6.32-6-6.454-.827 0-1.707.134-2.454.427-6.453 2.08-19.333 18.133-20.88 40.96l-.053.08.027-.027Zm61.2-70.373c-6.667.213-13.867 12.08-10.987 18.613 5.28 8.534 16.293-2.586 16.453-11.653.054-2.16-.08-6.987-5.466-6.987v.054-.027Z\" fill=\"#DD0031\"/></g><defs><clipPath id=\"a\"><path fill=\"#fff\" d=\"M0 0h320v320H0z\"/></clipPath></defs></svg>',withExternalLayout:true}),isDisplayed3()&&/*#__PURE__*/_jsx(SVG,{className:\"framer-1ol2eyy\",\"data-framer-name\":\"College_of_Coastal_Georgia\",fill:\"black\",intrinsicHeight:320,intrinsicWidth:320,layoutDependency:layoutDependency,layoutId:\"ij882R_zr\",svg:'<svg width=\"320\" height=\"320\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"><g clip-path=\"url(#a)\"><circle cx=\"160\" cy=\"160\" r=\"160\" fill=\"#fff\"/><g clip-path=\"url(#b)\"><path d=\"M35.83 230.52a17.5 17.5 0 0 1-1.55-3.82c-.36-1.32-.58-2.85-.66-4.57l3.92-2.14c-.03 1.74.09 3.27.36 4.58.28 1.31.75 2.58 1.42 3.8.84 1.53 1.91 2.74 3.22 3.63 1.31.89 2.72 1.36 4.25 1.41 1.53.05 2.99-.31 4.4-1.08 1.44-.79 2.54-1.83 3.31-3.14.77-1.3 1.13-2.74 1.07-4.32-.05-1.57-.5-3.13-1.35-4.67-.65-1.18-1.44-2.22-2.36-3.11-.92-.89-2.28-1.91-4.06-3.06l3.92-2.14c1.5 1 2.72 2 3.67 3 .95 1 1.85 2.29 2.71 3.85 1.24 2.27 1.9 4.55 1.98 6.83.08 2.28-.46 4.4-1.6 6.36a12.057 12.057 0 0 1-4.75 4.59c-2.17 1.19-4.4 1.73-6.71 1.62-2.3-.11-4.43-.83-6.37-2.16-1.95-1.33-3.55-3.16-4.82-5.47v.01Zm-10.48-26.14c-.71-2.44-.84-4.79-.39-7.03.45-2.24 1.45-4.22 3.01-5.93 1.56-1.71 3.47-2.89 5.74-3.54 2.21-.64 4.42-.66 6.63-.08 2.21.59 4.13 1.72 5.74 3.39 1.61 1.68 2.78 3.75 3.49 6.23.71 2.44.82 4.82.34 7.12-.48 2.3-1.49 4.28-3.02 5.93-1.53 1.65-3.42 2.8-5.66 3.45-2.16.62-4.35.65-6.58.09-2.22-.57-4.15-1.67-5.76-3.33-1.62-1.66-2.79-3.75-3.53-6.3h-.01Zm14.51 4.83c1.56-.45 2.87-1.21 3.91-2.28a7.743 7.743 0 0 0 2.05-3.8c.32-1.46.25-3-.21-4.6-.7-2.42-2.03-4.19-4-5.31-1.97-1.12-4.15-1.33-6.55-.64-1.56.45-2.87 1.21-3.93 2.28a7.575 7.575 0 0 0-2.05 3.81c-.32 1.48-.25 3.01.22 4.61.47 1.6 1.22 2.94 2.28 4.01a7.492 7.492 0 0 0 3.76 2.11c1.44.33 2.95.26 4.53-.19h-.01Zm-19-29.57 20.77-1.74-.99-11.88 3.7-.31 1.39 16.61-24.47 2.05-.4-4.73Zm-.53-21.78 20.8 1.46.83-11.89 3.7.26-1.17 16.62-24.5-1.72.33-4.73h.01Zm5.34-32.5 3.61.84-2.52 10.84 6.28 1.46 2.41-10.38 3.61.84-2.41 10.38 6.8 1.58 2.57-11.08 3.61.84-3.65 15.7-23.92-5.56 3.59-15.46h.02Zm6.92-18.66c1.22-2.76 3.06-5.23 5.49-7.41l3.97 1.76c-2.59 2.11-4.47 4.48-5.63 7.12-.73 1.64-1.04 3.24-.96 4.81.09 1.56.59 2.97 1.51 4.21.92 1.24 2.13 2.2 3.64 2.87 2.29 1.02 4.48 1.07 6.55.16 2.07-.91 3.66-2.61 4.77-5.11.3-.69.54-1.37.7-2.05.16-.68.27-1.53.32-2.54l-3.73-1.65-1.64 3.71-3.39-1.5 3.57-8.05 9.26 4.1c.28 1.45.3 3.04.05 4.78-.25 1.74-.75 3.45-1.49 5.12-1.05 2.37-2.49 4.3-4.31 5.79-1.83 1.49-3.86 2.39-6.09 2.68-2.23.29-4.43-.03-6.6-.99-2.2-.97-3.94-2.4-5.24-4.27-1.3-1.87-2.01-4-2.13-6.39-.12-2.39.34-4.77 1.4-7.16l-.02.01ZM49.7 78.79l3.05 2.11-6.33 9.15 5.31 3.67 6.06-8.76 3.05 2.11-6.06 8.76 5.74 3.97 6.47-9.36 3.05 2.11-9.17 13.26-20.2-13.96 9.03-13.06Zm30.59-12.18c2.37 2.58 3.6 6.34 2.46 9.97-.42 1.45-1.24 2.98-2.49 4.13-3.01 2.76-5.88 1.24-7.58-.62-3.26-3.56-3.51-7.95-1.92-11.34.53-1.08 1.29-2.11 2.05-2.8 2.51-2.3 5.25-1.77 7.48.66ZM76.1 77.23c1.77 1.93 3.2 2.28 4.15 1.41 1.73-1.59-.55-6.14-3.38-9.22-1.79-1.95-3.18-2.25-4.08-1.43-2.21 2.02 1.63 7.41 3.31 9.24Z\" fill=\"#034F6E\"/><path d=\"M81.79 59.23c-1.11-2.6-1.44-4.47-1.07-6.73.48-2.67 1.56-4.48 2.79-5.39 1.48-1.09 2.53-.98 3.01-.32.42.57.44 2.08.21 2.63-.17.34-.32.53-.77.44-1.43-.34-2.48-.33-2.97.03-.63.46-.9 1.13 2.12 6.89l2.93-2.16.28 1.65c-.4.38-1.9 1.66-2.4 2.02 1.4 2.77 2.73 5.25 4.66 9.36 2.4 5.15 2.05 7.95 1.29 10.87-.42 1.83-1.28 3.14-1.99 3.66-1.04.77-2.43.77-2.9.02-.48-.66-.54-1.88-.34-2.58.1-.33.26-.45.48-.44 1.25.09 2.6-.02 3.15-.42 1.15-.85-.04-2.75-2.59-7.76-2.11-4.19-3.48-6.9-5.19-10.2l-2.14 1.57-.36-.2.06-1.69 1.72-1.27.02.02Zm24.4-23.69c1.28-.56 2.59-.97 3.94-1.22s2.89-.34 4.61-.26l1.8 4.09c-1.73-.19-3.26-.2-4.6-.03-1.33.16-2.63.52-3.91 1.09-1.6.7-2.9 1.67-3.89 2.89-1 1.23-1.59 2.6-1.77 4.11-.18 1.51.05 3.01.69 4.48.66 1.5 1.61 2.69 2.84 3.57 1.23.88 2.63 1.36 4.21 1.44 1.57.08 3.16-.23 4.77-.94 1.23-.54 2.33-1.24 3.3-2.08.96-.85 2.1-2.11 3.4-3.78l1.8 4.09c-1.12 1.4-2.23 2.54-3.31 3.4-1.08.86-2.44 1.65-4.07 2.37-2.37 1.04-4.7 1.5-6.98 1.38-2.28-.12-4.35-.84-6.19-2.14-1.85-1.31-3.24-3.02-4.17-5.13-1-2.26-1.34-4.54-1.03-6.82.31-2.28 1.21-4.34 2.7-6.16 1.5-1.82 3.45-3.27 5.86-4.33v-.02Zm26.96-8.18c2.5-.49 4.84-.42 7.04.22s4.08 1.81 5.65 3.51c1.57 1.7 2.58 3.71 3.03 6.02.44 2.25.28 4.46-.5 6.61-.78 2.15-2.07 3.96-3.88 5.42s-3.98 2.44-6.51 2.94c-2.5.49-4.87.4-7.12-.28s-4.14-1.85-5.65-3.52c-1.51-1.67-2.49-3.65-2.94-5.93-.43-2.21-.27-4.4.48-6.56.76-2.17 2.03-3.99 3.82-5.45 1.79-1.47 3.98-2.46 6.58-2.97v-.01Zm-6.07 14.04c.31 1.6.96 2.96 1.94 4.1a7.776 7.776 0 0 0 3.61 2.37c1.43.45 2.96.51 4.6.19 2.47-.49 4.35-1.66 5.64-3.53 1.29-1.87 1.69-4.02 1.21-6.47-.31-1.6-.96-2.97-1.93-4.11a7.651 7.651 0 0 0-3.62-2.38c-1.44-.44-2.98-.51-4.61-.18-1.63.32-3.03.96-4.2 1.93a7.529 7.529 0 0 0-2.43 3.56c-.45 1.41-.52 2.92-.2 4.53l-.01-.01Zm38.31-16.3 10.35 24.77-5.01-.1-2.43-6.03-10.91-.22-2.49 5.93-4.97-.1L160.54 25l4.85.1Zm-6.49 14.85 7.93.16-3.95-9.8-3.97 9.64h-.01Zm29.37-12.48c2.34.47 4.49 1.5 6.42 3.11l-.82 4.14c-2.19-2-4.26-3.2-6.19-3.58-1.17-.23-2.13-.19-2.89.13-.75.32-1.2.86-1.35 1.62-.18.91.27 1.87 1.34 2.88.3.3 1.5 1.21 3.6 2.72 1.79 1.32 3.01 2.64 3.66 3.96.65 1.31.81 2.77.49 4.36-.41 2.07-1.49 3.59-3.23 4.56-1.74.97-3.8 1.22-6.16.75-1.54-.31-2.83-.74-3.87-1.3s-2.17-1.39-3.38-2.49l.91-4.59c2.15 2.65 4.36 4.2 6.64 4.66 1.14.23 2.11.16 2.91-.19.8-.35 1.28-.94 1.44-1.76.22-1.11-.21-2.14-1.29-3.09-.9-.75-2.07-1.67-3.52-2.76-1.72-1.24-2.94-2.53-3.65-3.86s-.91-2.76-.61-4.28c.4-2.02 1.48-3.48 3.22-4.39 1.74-.91 3.85-1.1 6.32-.61l.01.01Zm32.11 10.49-1.31 3.47-8.16-3.08-7.37 19.5-4.44-1.68 7.37-19.5-8.16-3.08 1.31-3.47 20.75 7.84h.01Zm13.29 7.66-3.2 26.65-4.31-2.56.86-6.44-9.39-5.57-5.09 3.93-4.28-2.54 21.23-15.96 4.17 2.47.01.02Zm-12.96 9.73 6.82 4.04 1.39-10.48-8.21 6.43v.01Zm29.74 2.33-13.67 15.75 9 7.81-2.43 2.8-12.58-10.92 16.09-18.55 3.58 3.11h.01Zm27.61 30.56c1.69 2.51 2.81 5.37 3.36 8.59l-3.6 2.43c-.41-3.31-1.43-6.16-3.04-8.55-1-1.49-2.19-2.61-3.57-3.36s-2.83-1.08-4.37-.96c-1.54.12-3 .64-4.37 1.56-2.08 1.4-3.28 3.23-3.62 5.47-.34 2.24.27 4.49 1.79 6.75.42.62.88 1.18 1.37 1.68.49.5 1.15 1.04 1.98 1.62l3.38-2.28-2.27-3.36 3.07-2.08 4.93 7.3-8.39 5.67c-1.38-.53-2.73-1.36-4.07-2.5a19.666 19.666 0 0 1-3.55-3.98c-1.45-2.15-2.32-4.39-2.62-6.73-.29-2.34.03-4.54.96-6.59.93-2.05 2.38-3.74 4.34-5.07 1.99-1.34 4.12-2.07 6.4-2.17 2.28-.1 4.46.42 6.54 1.58 2.08 1.16 3.86 2.82 5.32 4.99l.03-.01Zm14.58 29.3-3.41 1.47-4.4-10.22-5.93 2.55 4.21 9.79-3.41 1.47-4.21-9.79-6.41 2.76 4.49 10.45-3.41 1.47-6.37-14.81 22.56-9.7 6.27 14.58.02-.02Zm5.44 18.97c.52 2.49.47 4.84-.14 7.04s-1.76 4.1-3.45 5.68a12.253 12.253 0 0 1-5.99 3.1c-2.25.47-4.45.33-6.62-.43-2.16-.75-3.98-2.03-5.46-3.82s-2.48-3.95-3.01-6.47c-.52-2.49-.45-4.87.2-7.13s1.81-4.16 3.46-5.69c1.65-1.53 3.62-2.53 5.9-3.01 2.2-.46 4.39-.32 6.57.41 2.17.73 4.01 1.98 5.5 3.76 1.49 1.78 2.5 3.96 3.04 6.55v.01Zm-14.11-5.91c-1.59.33-2.95.99-4.08 1.98-1.12.99-1.9 2.2-2.33 3.64-.43 1.44-.48 2.97-.14 4.6.51 2.47 1.71 4.33 3.59 5.6 1.88 1.27 4.04 1.65 6.48 1.14 1.59-.33 2.96-.99 4.09-1.97s1.91-2.2 2.34-3.65c.43-1.45.47-2.99.13-4.62-.34-1.63-1-3.02-1.97-4.18-.98-1.16-2.17-1.95-3.58-2.39-1.41-.44-2.92-.49-4.53-.15Zm16.74 35.33c-.04 2.31-.71 4.18-2.01 5.61-1.3 1.43-2.98 2.13-5.03 2.1-1.39-.02-2.6-.4-3.63-1.14-1.03-.74-1.83-1.82-2.4-3.25a6.88 6.88 0 0 1-1.76 2.06c-.74.6-1.97 1.33-3.71 2.21-3 1.45-5.07 2.53-6.21 3.24l.09-5.29c.54-.35 1.41-.83 2.61-1.43 2.63-1.32 4.41-2.28 5.33-2.9.92-.62 1.57-1.22 1.96-1.8.39-.58.59-1.25.6-2.01l.03-1.72-10.37-.17.08-4.75 24.55.4-.14 8.84h.01Zm-10.45-1.24c-.02 1.24.27 2.22.88 2.94.61.72 1.45 1.09 2.53 1.11 1.12.02 1.97-.32 2.54-1.01.57-.69.86-1.69.88-2.99l.05-2.95-6.84-.11-.05 3.02.01-.01Zm7.83 29.43c-.58 2.97-1.81 5.78-3.7 8.45l-4.26-.83c2.05-2.63 3.35-5.37 3.9-8.2.34-1.76.3-3.39-.14-4.9-.44-1.51-1.24-2.76-2.41-3.77-1.17-1.01-2.57-1.67-4.19-1.99-2.46-.48-4.6-.04-6.42 1.3-1.82 1.35-2.99 3.36-3.51 6.04-.14.74-.22 1.45-.22 2.15s.08 1.55.26 2.55l4 .78.77-3.99 3.64.71-1.68 8.64-9.94-1.93c-.6-1.35-.97-2.9-1.11-4.65-.14-1.75-.04-3.53.31-5.32.49-2.54 1.47-4.74 2.91-6.61 1.44-1.87 3.23-3.19 5.34-3.98s4.33-.96 6.65-.51c2.36.46 4.38 1.46 6.06 3 1.68 1.54 2.85 3.46 3.5 5.75.65 2.29.73 4.72.23 7.29l.01.02Zm-6.2 20.32-23.14-8.21 1.59-4.47 23.14 8.21-1.59 4.47Zm-8.2 17.93-26.78-1.84 2.33-4.43 6.48.53 5.08-9.66-4.18-4.88 2.32-4.4 17.02 20.4-2.26 4.29-.01-.01Zm-10.37-12.45-3.69 7.02 10.53.86-6.84-7.87v-.01Z\" fill=\"#034F6E\"/><path d=\"M250.95 255.82a128.09 128.09 0 0 1-40.68 27.43c-7.65 3.24-15.69 5.75-24.03 7.46-8.34 1.71-16.96 2.6-25.8 2.6s-17.46-.9-25.8-2.6c-8.34-1.7-16.37-4.22-24.03-7.46a127.71 127.71 0 0 1-21.74-11.8c-6.81-4.6-13.15-9.84-18.94-15.63\" stroke=\"#034F6E\" stroke-width=\"4\" stroke-miterlimit=\"10\" stroke-linecap=\"round\"/></g><g clip-path=\"url(#c)\"><path d=\"M84.435 215.441a142.933 142.933 0 0 0 16.62-21.118c6.831-10.57 12.596-21.679 16.367-33.731 2.266-7.238 4.041-14.578 4.548-22.189.38-5.712-.462-11.257-2.033-16.709-2.296-7.967-5.994-15.265-10.827-21.993-.449-.623-1.031-1.148-1.692-1.875a78.165 78.165 0 0 1 8.114 1.876c14.637 4.2 28.225 10.592 40.587 19.495 3.988 2.872 7.649 6.149 10.735 9.975 3.831 4.749 6.495 10.152 8.349 15.95 2.92 9.145 3.244 18.454 1.524 27.841-1.958 10.695-6.322 20.42-12.268 29.473-.094.143-.173.296-.362.619 1.436-.268 2.611-.375 3.575-1.554 6.204-7.574 11.119-15.839 13.887-25.28 1.383-4.719 2.031-9.559 2.173-14.467.292-10.043-1.372-19.759-4.922-29.159-.021-.058-.002-.131-.002-.198.228-.19.41-.015.588.071 8.731 4.197 17.016 9.098 24.504 15.292 7.305 6.045 12.211 13.497 13.551 22.979 1.085 7.677-.622 14.833-4.728 21.4-2.375 3.798-5.102 7.328-8.36 10.425-.092.088-.146.215-.298.444 1.385.103 2.512.191 3.655-.778 5.091-4.317 9.263-9.332 12.053-15.41 1.81-3.942 2.574-8.16 2.804-12.47.372-6.985-1.02-13.631-4.011-19.947-.425-.901-.919-1.767-1.426-2.735.861-.022 1.477.433 2.124.731 8.183 3.77 15.538 8.669 21.284 15.723 4.739 5.819 7.273 12.437 7.441 19.984.171 7.677-1.598 14.844-5.186 21.604-.397.748-.664.93-1.488.388-6.986-4.602-14.628-6.897-23.048-6.385-2.293.139-2.278.114-2.375 2.377-.105 2.428-.468 4.829-.856 7.225-.151.928-.421.984-1.218.562-7.314-3.863-14.982-6.767-23.129-8.325-3.481-.666-7-1.039-10.526-1.382-.823-.08-1.05.18-1.102.956-.21 3.174-.663 6.314-1.447 9.407-.204.799-.44 1.011-1.299.711-11.138-3.879-22.622-6.104-34.366-7.098-11.525-.976-23.007-.718-34.437 1.097-7.479 1.187-14.773 3.063-21.793 5.937-.393.161-.773.396-1.28.255l-.004.006Z\" fill=\"#01A1D8\"/><path d=\"M72.002 222.124c8.058-8.086 14.776-17.157 20.215-27.151 4.006-7.361 7.478-14.946 9.66-23.063 1.448-5.388 2.277-10.848 2.421-16.434.215-8.366-1.129-16.432-4.677-24.037-2.5-5.356-5.763-10.263-9.964-14.5-.626-.631-1.346-1.168-2.193-1.896 1.937.11 3.628.532 5.317.9 8.067 1.755 15.883 4.304 23.53 7.374.626.251.928.596 1.119 1.273 2.397 8.514 1.487 16.962-.443 25.396-4.132 18.044-12.494 34.108-23.29 49.054-5.944 8.231-12.995 15.465-20.297 22.484-.37.357-.733.835-1.385.576l-.015.024h.002Zm21.041-5.264c10.627-3.505 21.873-4.959 33.31-5.18 13.004-.252 25.814 1.216 38.443 4.355.848.211 1.039.565.904 1.336-.246 1.388-.474 2.78-.67 4.174-.092.665-.387.722-.959.539-8.357-2.674-16.907-4.448-25.592-5.595a170.387 170.387 0 0 0-16.487-1.349c-8.395-.285-16.76.083-25.09 1.201l-3.859.519Zm108.989-1.668c-.054 1.476-.244 2.936-.404 4.401-.063.588-.171.851-.847.529a97.368 97.368 0 0 0-19.073-6.724c-.479-.117-.756-.235-.637-.84a64.04 64.04 0 0 0 .635-4.045c.078-.609.315-.736.909-.672 6.135.672 12.118 1.969 17.937 4.059 1.136.408 1.704.883 1.491 2.109-.067.382-.011.788-.011 1.183Zm18.648-7.328c3.582-.017 7.05.568 10.417 1.746.615.214.758.445.558 1.06-.697 2.141-1.562 4.207-2.66 6.193-.305.552-.531.688-1.14.329-2.721-1.597-5.631-2.815-8.66-3.768-.731-.231-.955-.525-.801-1.272a15.95 15.95 0 0 0 .349-3.121c.007-.987.415-1.323 1.386-1.17.178.028.364.005.547.005l.004-.002Zm-148.665 14.31.02.056-.035-.032.015-.024Z\" fill=\"#034F6E\"/></g></g><defs><clipPath id=\"a\"><path fill=\"#fff\" d=\"M0 0h320v320H0z\"/></clipPath><clipPath id=\"b\"><path fill=\"#fff\" transform=\"translate(20 25)\" d=\"M0 0h280.86v270.31H0z\"/></clipPath><clipPath id=\"c\"><path fill=\"#fff\" transform=\"translate(72 97.826)\" d=\"M0 0h176v124.348H0z\"/></clipPath></defs></svg>',withExternalLayout:true}),isDisplayed4()&&/*#__PURE__*/_jsx(SVG,{className:\"framer-141rjs2\",\"data-framer-name\":\"Marsh_s_Edge\",fill:\"black\",intrinsicHeight:320,intrinsicWidth:320,layoutDependency:layoutDependency,layoutId:\"TUTSlNaG5\",svg:'<svg width=\"320\" height=\"320\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"><g clip-path=\"url(#a)\"><path d=\"M160 320c88.366 0 160-71.634 160-160S248.366 0 160 0 0 71.634 0 160s71.634 160 160 160Z\" fill=\"#fff\"/><g clip-path=\"url(#b)\"><path d=\"M160 254c51.915 0 94-42.085 94-94s-42.085-94-94-94-94 42.085-94 94 42.085 94 94 94Z\" fill=\"url(#c)\"/><path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M61.091 191.304s-.331.255.166.421c.766 0 1.429-.255 2.105-.587.51-.255 45.301-20.335 91.456-19.148 44.127 1.097 70.866 20.756 73.315 22.108 2.705 1.518 8.612 4.809 14.174 2.284 5.651-2.616 4.898-6.583 3.125-8.688-1.186-1.429-37.965-24.889-89.083-25.476-49.434-.766-95.245 29.112-95.245 29.112l-.013-.026Z\" fill=\"#000\"/><path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M107.157 161.019s-.421.421.09.421c.421-.09.765-.166 1.097-.421 0 0 23.958-9.785 67.664-8.688 41.843 1.008 64.028 19.404 66.311 20.832 2.361 1.429 8.178 4.555 13.408 2.105 5.396-2.449 4.81-6.416 2.96-8.266-1.263-1.263-32.824-23.537-81.238-24.047-46.818-.587-70.279 18.051-70.279 18.051l-.013.013Z\" fill=\"#009DDD\"/><path d=\"M129.686 141.028s-.587.51.255.09c4.809-2.284 20.169-8.522 51.883-8.688 36.958-.166 57.79 13.663 59.984 14.428 2.195.766 7.68 3.623 12.069 1.008 4.388-2.704 3.623-6.417 1.862-8.011-1.186-1.098-30.796-19.493-73.392-16.368-31.727 2.36-52.648 17.554-52.648 17.554l-.013-.013Z\" fill=\"#43B649\"/><path d=\"M45.57 199.18c.32 1.01.5 2.09.53 3.24.03 1.15-.12 2.25-.46 3.31a7.791 7.791 0 0 1-1.63 2.86c-.75.85-1.77 1.47-3.04 1.88-1.27.41-2.46.48-3.57.22a7.65 7.65 0 0 1-2.98-1.4 9.535 9.535 0 0 1-2.24-2.45c-.61-.96-1.08-1.95-1.4-2.96-.32-1.01-.51-2.09-.57-3.23-.06-1.14.08-2.24.41-3.29.33-1.06.88-2.01 1.63-2.86.76-.85 1.77-1.47 3.04-1.88 1.27-.4 2.46-.48 3.57-.22 1.11.26 2.1.72 2.98 1.4.88.68 1.64 1.49 2.28 2.44.64.95 1.12 1.94 1.44 2.95l.01-.01Zm-2.54.81a7.35 7.35 0 0 0-1-2c-.44-.63-.96-1.16-1.55-1.59-.59-.43-1.25-.72-1.97-.88-.72-.16-1.47-.11-2.24.13-.77.25-1.41.64-1.91 1.18-.5.54-.86 1.16-1.1 1.86-.24.69-.35 1.43-.35 2.2 0 .77.11 1.5.34 2.21.22.7.55 1.37 1 2 .45.63.96 1.16 1.55 1.59.59.43 1.25.72 1.97.88.72.16 1.46.11 2.24-.13.77-.25 1.41-.64 1.91-1.18.5-.54.86-1.16 1.1-1.86.24-.69.35-1.43.35-2.2 0-.77-.11-1.51-.33-2.21h-.01ZM36.52 218c.17.32.41.41.72.24l11.65-6.13c.31-.16.38-.41.21-.73l.46-.24 2.31 4.39-.46.24c-.07-.14-.19-.16-.36-.07-.14.07-.29.37-.45.89l-3.77 11.39 8.16-4.3c.31-.16.34-.47.11-.91l.46-.24 2.04 3.88-.46.24c-.17-.33-.41-.41-.72-.24l-11.65 6.13c-.31.16-.38.41-.21.73l-.46.24-2.19-4.16.46-.24c.12.22.25.29.41.21.12-.06.24-.3.38-.72l4.04-12.12-8.52 4.49c-.31.16-.36.44-.15.83l-.46.24-2-3.8.46-.24h-.01Zm21 26.16.08.31a.92.92 0 0 0-.27.39c-.09.25-.08.6 0 1.05.09.45.24.92.45 1.42.21.5.45 1 .74 1.49s.58.91.87 1.24c.22.25.51.55.89.91s.79.68 1.24.96c.45.28.89.46 1.34.56.45.1.84 0 1.17-.29.33-.29.47-.64.41-1.03s-.24-.83-.53-1.31c-.29-.48-.66-.99-1.1-1.54-.44-.55-.88-1.12-1.32-1.71-.44-.59-.84-1.2-1.2-1.82a5.92 5.92 0 0 1-.72-1.87c-.12-.62-.09-1.25.11-1.86.19-.62.62-1.22 1.29-1.8.45-.39.99-.68 1.61-.85.62-.17 1.29-.18 2.01-.04.72.15 1.47.46 2.27.95.79.49 1.59 1.18 2.38 2.08.67.77 1.2 1.49 1.58 2.16.38.67.68 1.27.92 1.8s.41.99.54 1.37c.13.39.28.67.44.86.18.2.35.31.51.32l.05.42-4.05.87-.1-.29c.18-.21.3-.41.35-.61.07-.27.08-.61 0-1.03a6.53 6.53 0 0 0-.38-1.34c-.19-.48-.42-.96-.71-1.46s-.62-.95-.99-1.37c-.28-.32-.59-.63-.94-.93-.35-.3-.7-.54-1.04-.73-.34-.19-.68-.3-1-.34-.33-.04-.61.05-.86.27-.35.3-.5.66-.45 1.07.05.41.21.86.48 1.35.27.49.63 1.02 1.06 1.57.43.55.87 1.13 1.31 1.72.44.59.84 1.2 1.19 1.83.35.63.59 1.25.71 1.88.12.62.09 1.24-.1 1.85-.19.61-.61 1.2-1.26 1.77-.76.66-1.55 1-2.38 1.02-.83.02-1.64-.15-2.44-.51s-1.55-.84-2.24-1.45c-.7-.61-1.31-1.21-1.83-1.81-.72-.83-1.28-1.57-1.68-2.21-.4-.64-.69-1.21-.87-1.7-.19-.49-.32-.9-.4-1.21-.08-.31-.19-.55-.33-.71-.09-.1-.23-.15-.42-.13l-.09-.46 3.69-1.1.01.02Zm16.2 21.79c-.23.26-.18.53.14.81l-.34.4-3.39-2.91.34-.4c.1.09.22.13.36.14.14 0 .26-.06.38-.19l7.52-8.75-3.63-3.12a.968.968 0 0 0-.48-.22c-.19-.03-.37.05-.55.26l-.4-.34 2.65-3.08.4.34c-.18.21-.23.4-.17.58.06.18.16.33.29.44l9.77 8.39c.13.11.29.19.48.22s.37-.05.55-.26l.4.34-2.65 3.08-.4-.34c.18-.21.23-.4.17-.58a.972.972 0 0 0-.29-.44l-3.63-3.12-7.52 8.75Zm8.58 5.6c.32-.46.76-.74 1.33-.84.57-.1 1.08 0 1.54.33.46.32.74.76.84 1.33.1.57 0 1.08-.33 1.54-.33.46-.75.73-1.3.81-.55.08-1.05-.04-1.51-.36-.46-.32-.75-.75-.87-1.29s-.02-1.04.3-1.5v-.02Zm18.21 7.87.2.25c-.07.16-.1.32-.09.47.03.27.17.58.44.95s.6.74.99 1.11c.39.37.82.72 1.29 1.05.47.33.9.59 1.31.77.3.14.7.29 1.19.46.49.17 1 .29 1.53.36.52.07 1 .05 1.45-.04.45-.09.76-.34.95-.75.18-.41.17-.77-.05-1.11-.22-.33-.56-.66-1.02-.98-.46-.32-1.01-.63-1.64-.95-.63-.32-1.27-.66-1.91-1.01-.64-.35-1.26-.74-1.85-1.16a5.96 5.96 0 0 1-1.43-1.4c-.37-.52-.59-1.1-.67-1.74-.08-.64.06-1.37.43-2.18.25-.54.62-1.02 1.12-1.44.5-.41 1.1-.7 1.81-.86.71-.16 1.53-.19 2.46-.08.93.11 1.93.42 3.03.92.93.42 1.71.86 2.33 1.32.62.45 1.15.87 1.58 1.26.43.39.78.73 1.06 1.03.28.3.53.5.76.6.25.11.45.14.6.08l.22.36-3.32 2.47-.22-.23c.08-.26.1-.5.07-.7-.04-.28-.18-.59-.42-.94a6.51 6.51 0 0 0-.9-1.06c-.37-.36-.79-.7-1.25-1.03a8.89 8.89 0 0 0-1.46-.84c-.39-.18-.8-.33-1.24-.45-.44-.13-.86-.2-1.25-.23s-.74 0-1.05.11c-.31.1-.54.3-.67.6-.19.42-.18.81.03 1.16.21.35.54.69 1 1.03.45.33.99.66 1.62.99.62.33 1.26.67 1.91 1.03.64.36 1.26.75 1.84 1.17.58.42 1.06.9 1.43 1.42.37.52.6 1.09.68 1.73.08.63-.05 1.35-.42 2.14-.42.92-1 1.55-1.75 1.91-.75.36-1.56.54-2.43.55-.87 0-1.75-.12-2.64-.39-.89-.27-1.69-.56-2.41-.89-1-.46-1.82-.9-2.44-1.32-.63-.42-1.12-.82-1.5-1.19-.37-.37-.66-.68-.86-.94-.2-.25-.4-.42-.6-.51-.12-.06-.27-.04-.44.05l-.27-.38 2.91-2.53-.04-.02Zm15.69 11.17c.48.15.77.07.88-.26l4.06-12.53c.11-.33-.08-.57-.56-.73l.16-.5 4.58 1.48-.16.5c-.48-.16-.77-.07-.88.26l-4.06 12.53c-.11.33.08.57.56.73l-.16.5-4.58-1.48.16-.5Zm10.23 3.39c.15.03.29 0 .42-.06s.21-.18.24-.35l2.37-13.01c.03-.17 0-.3-.11-.39a.781.781 0 0 0-.38-.17l.09-.51 5.33.97-.09.51c-.09-.02-.2 0-.32.03s-.18.11-.2.23c-.02.09 0 .23.05.39.05.17.1.34.17.53l2.73 8.16 5.44-6.58c.18-.22.31-.4.41-.53.09-.13.15-.25.17-.37.04-.21-.07-.34-.31-.38l.09-.51 5.28.96-.09.51a.742.742 0 0 0-.42.03c-.13.05-.21.15-.24.33l-2.37 13.01c-.03.17 0 .31.1.42.1.11.22.17.38.2l-.09.51-4.48-.82.09-.51c.51.09.8-.03.86-.37l1.72-9.47h-.06l-7.65 9.45-.09-.02-3.7-11.55h-.06l-1.73 9.49c-.06.34.17.56.71.66l-.09.51-4.28-.78.09-.51.02-.01Zm33.75-11.01c1.06-.02 2.15.12 3.26.43 1.11.3 2.12.76 3.04 1.39.92.63 1.68 1.42 2.27 2.38.6.97.9 2.12.93 3.45.03 1.33-.25 2.49-.81 3.48-.56.99-1.3 1.8-2.19 2.46-.9.65-1.9 1.13-2.99 1.44-1.1.31-2.18.47-3.24.49-1.06.02-2.15-.11-3.25-.38a9.343 9.343 0 0 1-3.04-1.34 7.704 7.704 0 0 1-2.27-2.38c-.59-.96-.9-2.12-.93-3.45-.03-1.33.25-2.49.81-3.48.56-.99 1.29-1.8 2.19-2.46a9.95 9.95 0 0 1 2.99-1.48c1.1-.34 2.18-.51 3.24-.53l-.01-.02Zm.05 2.67c-.74.01-1.47.14-2.2.38-.73.24-1.39.59-1.97 1.03-.58.45-1.05.99-1.41 1.63-.36.64-.53 1.37-.52 2.18.01.81.21 1.53.59 2.17.38.63.87 1.16 1.46 1.59.6.43 1.26.75 2 .97.74.22 1.47.32 2.21.31.74-.01 1.47-.14 2.2-.38.73-.24 1.39-.59 1.97-1.03.58-.44 1.05-.99 1.41-1.63.36-.64.53-1.37.52-2.18a4.27 4.27 0 0 0-.59-2.17c-.38-.63-.87-1.16-1.46-1.59-.6-.42-1.26-.75-2-.97a7.33 7.33 0 0 0-2.21-.31Zm15.27 11.65c.36-.06.51-.27.45-.61l-2.31-12.96c-.06-.34-.27-.48-.63-.42l-.09-.51 4.88-.87.09.51c-.15.03-.21.14-.18.33.03.15.26.39.71.7l9.71 7.05-1.62-9.08c-.06-.34-.34-.47-.83-.38l-.09-.51 4.31-.77.09.51c-.36.06-.51.27-.45.61l2.31 12.96c.06.34.27.48.63.42l.09.51-4.62.82-.09-.51c.25-.04.36-.15.33-.32-.02-.13-.22-.33-.57-.58l-10.33-7.53 1.69 9.48c.06.34.31.47.75.4l.09.51-4.23.75-.09-.51Zm22.75-9.16.32.04c.06.16.15.3.26.4.21.17.53.3.98.38.45.08.94.11 1.48.1.54 0 1.09-.05 1.66-.14.56-.09 1.06-.21 1.47-.35.31-.11.7-.28 1.18-.5.48-.22.92-.49 1.35-.8.42-.31.76-.66 1.02-1.04s.31-.78.16-1.2c-.15-.42-.42-.67-.81-.76-.39-.09-.86-.08-1.41 0-.55.09-1.17.24-1.84.45-.67.21-1.37.41-2.08.6s-1.42.34-2.13.45c-.71.11-1.38.1-2-.01-.62-.11-1.19-.38-1.69-.78-.5-.41-.9-1.03-1.2-1.87-.2-.57-.27-1.17-.2-1.81.07-.64.3-1.27.7-1.88.4-.61.97-1.2 1.71-1.76s1.68-1.04 2.81-1.44c.97-.34 1.83-.57 2.59-.67a18.622 18.622 0 0 1 3.49-.19c.41.02.73-.01.97-.1.25-.09.42-.21.49-.36l.41.1-.67 4.08h-.31c-.13-.25-.27-.44-.44-.56-.22-.17-.54-.29-.95-.38-.41-.09-.87-.14-1.39-.14a10.088 10.088 0 0 0-3.26.54c-.4.14-.8.32-1.21.54-.41.22-.76.45-1.06.7-.3.25-.53.52-.68.81-.15.29-.18.59-.07.9.16.44.43.71.83.81.4.1.87.12 1.43.04.56-.07 1.18-.21 1.85-.41.68-.2 1.37-.4 2.08-.59.71-.19 1.42-.34 2.14-.44.71-.1 1.38-.09 2.01.03.63.12 1.19.37 1.69.77s.89 1 1.19 1.83c.34.95.36 1.81.07 2.59-.29.78-.74 1.47-1.37 2.09-.63.62-1.35 1.13-2.17 1.56-.82.42-1.61.77-2.36 1.04-1.04.37-1.93.62-2.67.75s-1.38.19-1.9.18c-.52-.01-.95-.03-1.27-.07-.32-.04-.58-.02-.78.05-.13.04-.22.16-.28.34l-.46-.08.33-3.84h-.01Zm27.37-7.12c.43-.25.57-.53.39-.83l-6.59-11.4c-.17-.3-.48-.33-.91-.07l-.26-.45 4.17-2.41.26.45c-.44.25-.57.53-.39.83l6.59 11.4c.17.3.48.33.91.07l.26.45-4.17 2.41-.26-.45Zm7.49-9.44.32-.06c.1.14.23.24.37.3.25.11.6.13 1.05.07.45-.06.93-.17 1.45-.33a11.8 11.8 0 0 0 1.54-.62c.51-.25.95-.5 1.31-.77.26-.2.59-.47.98-.82s.74-.74 1.05-1.16c.31-.42.53-.85.67-1.29.13-.44.07-.83-.2-1.19-.26-.36-.6-.52-1-.49-.4.03-.85.17-1.35.42-.5.25-1.04.57-1.63.97-.58.4-1.19.79-1.81 1.18-.62.39-1.26.74-1.91 1.05-.65.31-1.29.5-1.92.57a3.79 3.79 0 0 1-1.85-.25c-.6-.24-1.17-.72-1.69-1.43-.36-.48-.59-1.04-.71-1.67-.12-.63-.08-1.3.12-2s.58-1.43 1.12-2.19c.55-.75 1.3-1.49 2.27-2.2.82-.61 1.58-1.08 2.28-1.4.7-.32 1.32-.58 1.87-.77.55-.19 1.02-.33 1.41-.43.39-.1.69-.23.89-.38.22-.16.34-.32.36-.49l.42-.02.55 4.1-.3.08c-.19-.19-.39-.33-.58-.4-.26-.09-.6-.12-1.02-.09-.42.04-.88.13-1.37.27-.49.15-1 .35-1.51.59s-1 .54-1.45.87c-.34.25-.68.54-1 .87-.32.33-.59.65-.81.98-.21.33-.35.65-.42.98-.07.33 0 .62.2.88.28.37.62.55 1.03.54.41-.01.87-.14 1.38-.37.51-.24 1.06-.55 1.65-.94.59-.39 1.2-.78 1.82-1.17.62-.39 1.26-.74 1.92-1.04.65-.3 1.3-.49 1.93-.56.63-.07 1.25 0 1.84.24.59.23 1.15.7 1.67 1.4.6.81.87 1.63.83 2.46-.05.83-.28 1.63-.7 2.39-.42.77-.96 1.47-1.62 2.12-.66.65-1.31 1.21-1.95 1.68-.89.66-1.67 1.15-2.34 1.5-.67.34-1.26.59-1.77.73-.51.15-.92.25-1.24.3-.32.06-.56.15-.74.27-.11.08-.16.22-.17.41l-.46.06-.81-3.77.03.02Zm28.5-17.63c-.2-.21-.38-.26-.54-.16-.16.1-.34.25-.54.46l-9.8 9.72-.37-.37c.41-.41.5-.74.25-.98l-9.27-9.34c-.25-.25-.57-.17-.99.24l-.37-.37 3.54-3.51.37.37c-.38.38-.45.7-.21.94l8.13 8.19 6.83-6.78c.21-.2.33-.42.36-.64a.634.634 0 0 0-.19-.58l.37-.37 2.8 2.82-.37.37v-.01Zm1.1-2.74c.12-.22.14-.46.06-.7-.08-.24-.19-.5-.33-.77l-5.79-11.07c-.12-.26-.23-.5-.34-.71-.11-.21-.22-.37-.34-.46-.15-.12-.3-.14-.45-.08-.14.06-.28.14-.4.24l-.42-.31 2.95-3.92.42.31c-.05.13-.09.27-.12.42-.03.15.04.29.21.42.12.09.27.16.43.2.16.04.39.08.67.12l13.06 2.28c.23.05.43.04.61-.03s.37-.17.57-.28l.42.31-3.07 4.08-.42-.31c.05-.06.08-.16.11-.28.02-.13-.01-.23-.1-.3-.15-.12-.4-.21-.74-.27l-2.38-.41-4.26 5.65 1.02 2.07c.21.4.38.65.52.75.17.13.37.04.59-.25l.42.31-2.48 3.29-.42-.31v.01Zm2.26-11.98-5.77-1.3 2.67 5.42 3.1-4.12Zm10.99-6.28c.17-.33.1-.57-.21-.73l-11.67-6.1c-.31-.16-.55-.08-.72.25l-.46-.24 2.3-4.39.46.24c-.07.14-.02.25.15.34.14.07.47.03.99-.14l11.51-3.37-8.17-4.27c-.31-.16-.58-.02-.81.43l-.46-.24 2.03-3.88.46.24c-.17.33-.1.57.21.73l11.67 6.1c.31.16.55.08.72-.25l.46.24-2.18 4.16-.46-.24c.12-.22.1-.37-.06-.46-.12-.06-.39-.03-.81.1l-12.27 3.57 8.53 4.46c.31.16.57.04.77-.35l.46.24-1.99 3.8-.46-.24h.01Zm-.78-34.55a9.56 9.56 0 0 1 1.35-2.69c.58-.78 1.27-1.4 2.07-1.85.81-.45 1.72-.72 2.75-.79 1.03-.07 2.16.08 3.39.48 1.23.4 2.25.93 3.04 1.59s1.39 1.41 1.78 2.25c.39.84.59 1.74.61 2.71.02.97-.14 1.96-.47 2.97l-2.95 9.17-.5-.16c.14-.42.04-.69-.29-.79l-12.54-4.03c-.33-.11-.56.05-.7.48l-.5-.16 2.94-9.17.02-.01Zm11.8 5c.28-.87.45-1.64.51-2.33.06-.69-.03-1.31-.27-1.85-.24-.54-.64-1.02-1.2-1.44-.56-.41-1.32-.77-2.27-1.08-.95-.31-1.78-.46-2.48-.45-.7.01-1.3.17-1.81.47-.51.3-.95.75-1.3 1.35-.35.6-.67 1.33-.95 2.19l-1.38 4.28 9.77 3.14 1.38-4.28ZM45.03 138.1c.08-.23.09-.46.02-.68-.07-.22-.23-.38-.49-.47l-19.78-6.99c-.26-.09-.47-.07-.63.07-.16.14-.29.32-.37.55l-.78-.28 2.87-8.11.78.28c-.05.15-.06.31-.03.5s.13.31.3.38c.15.05.35.06.63.03.27-.03.56-.08.88-.13l13.47-2.22-8.94-10.19c-.3-.33-.55-.59-.73-.77-.18-.18-.36-.3-.53-.36-.32-.11-.54.02-.68.4l-.78-.28 2.84-8.02.78.28c-.08.23-.1.45-.06.66.04.21.19.36.45.45l19.78 6.99c.26.09.49.07.68-.05.19-.12.33-.31.41-.54l.78.28-2.41 6.81-.78-.28c.28-.78.15-1.26-.37-1.45l-14.4-5.09-.03.09 12.88 14.36-.04.13-19.02 2.89-.03.09 14.44 5.11c.52.18.92-.13 1.21-.94l.78.28-2.3 6.51-.78-.28-.02-.01Zm11.15-30.34c.18-.36.2-.73.05-1.12-.14-.38-.33-.78-.56-1.21L45.88 88.2c-.2-.4-.4-.77-.58-1.1-.18-.33-.37-.57-.57-.71-.25-.18-.49-.21-.71-.11-.22.11-.43.24-.62.41l-.68-.47 4.45-6.37.68.47c-.07.21-.13.44-.16.67-.04.24.09.45.36.65.2.14.43.24.7.29.26.05.62.11 1.07.16l20.83 2.88c.36.07.68.04.96-.09.28-.13.57-.28.89-.47l.68.47-4.64 6.64-.68-.47c.07-.1.12-.25.15-.46.03-.2-.03-.36-.18-.46-.25-.18-.65-.3-1.19-.38l-3.79-.52-6.43 9.2 1.73 3.23c.35.62.64 1.01.87 1.17.28.19.58.05.92-.43l.68.47-3.74 5.35-.68-.47-.02.01Zm2.92-19.12-9.23-1.73 4.54 8.45 4.69-6.71v-.01Zm11.65-33.77c1.11-.96 2.21-1.74 3.28-2.32 1.07-.58 2.12-.94 3.14-1.07 1.02-.13 2 0 2.94.38s1.84 1.08 2.7 2.07c1.32 1.53 1.88 3.1 1.68 4.69-.2 1.59-.95 3.19-2.24 4.79l10.34 2.62c.36.09.67.07.94-.08.26-.14.48-.3.67-.46l.54.63-6.51 5.62-.54-.63c.21-.18.36-.37.45-.57.09-.2.09-.36-.01-.47-.1-.12-.26-.21-.49-.28-.22-.07-.54-.15-.94-.25l-8.52-2.12-4.98 4.3 5.35 6.2c.18.21.39.3.63.27.24-.03.56-.21.95-.55l.54.63-6.02 5.2-.54-.63c.67-.58.83-1.08.47-1.5L60.93 65.53c-.36-.42-.88-.34-1.55.25l-.54-.63 11.91-10.28Zm6.13 8.93c.84-.72 1.48-1.39 1.92-2 .45-.61.73-1.17.86-1.68.12-.51.12-.99 0-1.42-.12-.43-.36-.84-.68-1.21-.32-.37-.69-.65-1.1-.85-.41-.19-.88-.26-1.4-.22-.53.05-1.12.25-1.79.6-.67.35-1.42.89-2.25 1.61l-6.02 5.2 4.45 5.15 6.02-5.2-.01.02Zm19.6-7.3h.51c.12.25.29.44.49.58.36.23.89.37 1.62.4.72.03 1.5 0 2.36-.12.85-.12 1.71-.3 2.58-.54.87-.25 1.62-.53 2.25-.84.47-.23 1.05-.57 1.76-1.01.71-.44 1.36-.95 1.97-1.52.6-.58 1.07-1.19 1.4-1.83.33-.64.34-1.28.02-1.91-.32-.63-.79-.98-1.42-1.04-.63-.06-1.37.03-2.22.29-.85.25-1.79.61-2.81 1.07-1.02.46-2.07.91-3.16 1.35-1.09.44-2.17.81-3.27 1.12-1.1.31-2.15.43-3.16.37a5.842 5.842 0 0 1-2.82-.91c-.87-.54-1.62-1.44-2.25-2.71-.42-.85-.64-1.79-.66-2.81-.01-1.02.23-2.05.74-3.1.51-1.04 1.29-2.08 2.36-3.11 1.06-1.03 2.45-1.97 4.15-2.82 1.45-.73 2.77-1.25 3.95-1.56 1.18-.31 2.22-.54 3.13-.69.9-.14 1.68-.24 2.32-.29.64-.05 1.14-.16 1.5-.34.38-.19.62-.41.7-.66l.66.08-.27 6.56-.49.04c-.25-.36-.51-.62-.8-.78-.38-.22-.91-.36-1.57-.42-.67-.06-1.4-.05-2.21.05s-1.65.27-2.52.51c-.87.25-1.71.57-2.5.97-.6.3-1.21.66-1.8 1.08-.6.42-1.11.85-1.53 1.31-.43.45-.73.92-.92 1.41-.19.49-.16.96.07 1.43.33.66.82 1.03 1.46 1.12.64.09 1.4.02 2.26-.2.87-.23 1.81-.56 2.84-1.01 1.03-.44 2.08-.89 3.17-1.33 1.08-.44 2.18-.8 3.28-1.1 1.1-.29 2.16-.41 3.17-.35 1.01.06 1.94.36 2.81.89.86.53 1.6 1.41 2.22 2.64.71 1.43.92 2.78.62 4.06-.3 1.28-.89 2.47-1.75 3.55-.87 1.08-1.9 2.04-3.12 2.87-1.21.83-2.38 1.52-3.51 2.09-1.56.78-2.92 1.35-4.06 1.69-1.14.34-2.13.57-2.96.66-.83.09-1.5.13-2.02.13-.51 0-.92.08-1.22.23-.19.1-.31.29-.37.6l-.74-.04-.22-6.11h-.02Zm43.04-30.84c-.11-.54-.5-.74-1.16-.61l-.17-.81 6.94-1.42.17.81a.87.87 0 0 0-.52.32c-.14.17-.18.39-.12.66l4.19 20.46c.06.27.18.46.37.56.19.1.39.13.61.09l.17.81-6.94 1.42-.17-.81c.66-.14.94-.47.83-1.01l-1.73-8.47-14.51 2.97 1.73 8.47c.06.27.18.46.37.56.19.1.39.13.6.09l.17.81-6.81 1.39-.17-.81c.57-.12.8-.45.69-.99l-4.19-20.46c-.11-.54-.45-.75-1.02-.64l-.17-.81 6.8-1.39.17.81a.87.87 0 0 0-.52.32c-.14.17-.18.39-.12.66l1.57 7.66 14.51-2.97-1.57-7.66v-.01Zm20.33-3.11c-.46.13-.75.28-.89.43-.13.16-.21.42-.24.79l-.02 9.34c-.03.25.05.41.22.48.17.07.38.11.62.1v.55l-4.77.11v-.55c.23 0 .44-.05.61-.13.17-.08.23-.24.2-.49l-.53-9.33c-.04-.37-.13-.63-.27-.78-.14-.15-.44-.28-.91-.39v-.54l5.97-.14v.55h.01Zm7.62 16.57.42.29c-.04.27-.01.53.08.75.16.39.53.81 1.11 1.24.57.43 1.25.84 2.01 1.23.77.38 1.58.72 2.44 1.01.86.29 1.64.48 2.34.57.52.07 1.19.12 2.02.16.83.04 1.66-.01 2.48-.15.82-.14 1.55-.38 2.19-.72.63-.35 1-.87 1.09-1.57.1-.7-.1-1.25-.59-1.66-.49-.41-1.15-.74-2-1.01-.84-.27-1.82-.5-2.92-.7-1.1-.2-2.23-.42-3.37-.67-1.14-.25-2.25-.55-3.33-.92-1.08-.36-2.02-.85-2.82-1.47-.8-.62-1.4-1.4-1.82-2.34-.41-.94-.53-2.11-.33-3.5.13-.94.47-1.84 1.04-2.69.56-.85 1.35-1.56 2.36-2.14 1.01-.57 2.24-.99 3.7-1.24s3.13-.25 5.01 0c1.61.22 2.99.53 4.14.94 1.15.4 2.14.8 2.97 1.19.83.39 1.52.75 2.08 1.07.56.32 1.04.51 1.43.57.42.06.74 0 .95-.15l.5.44-3.92 5.27-.43-.24c0-.43-.08-.8-.22-1.1-.19-.4-.55-.81-1.06-1.24-.51-.43-1.13-.83-1.86-1.2-.72-.38-1.51-.71-2.37-1-.86-.29-1.73-.49-2.61-.61-.67-.09-1.37-.13-2.1-.12-.73 0-1.4.08-2 .22-.61.13-1.12.35-1.55.65-.43.3-.68.71-.75 1.22-.1.73.09 1.31.57 1.75.48.44 1.14.81 1.99 1.11.84.3 1.81.56 2.91.77 1.1.21 2.22.44 3.36.69 1.14.25 2.25.56 3.33.94 1.08.38 2.02.88 2.81 1.5.8.62 1.4 1.39 1.82 2.31.42.92.53 2.07.34 3.44-.21 1.58-.81 2.81-1.78 3.7-.97.89-2.12 1.54-3.45 1.95-1.33.41-2.72.61-4.19.61-1.47 0-2.83-.08-4.07-.25-1.73-.24-3.17-.53-4.31-.89-1.14-.36-2.08-.73-2.82-1.13-.74-.39-1.32-.74-1.74-1.03-.42-.29-.8-.46-1.14-.5-.21-.03-.43.07-.64.28l-.59-.45 3.26-5.17.03-.01Zm65.82 9.44c.16-.3.16-.58 0-.85s-.51-.56-1.08-.86l-13.17-6.97-2.67 5.04 7.97 4.22c.54.29 1 .43 1.38.44.38 0 .73-.3 1.06-.92l.73.39-3.36 6.34-.73-.39c.33-.62.39-1.1.19-1.44-.2-.34-.58-.64-1.12-.93l-7.97-4.22-2.97 5.61 13.58 7.19c.41.21.79.3 1.15.24.36-.05.62-.24.79-.57l.73.39-2.95 5.57-.73-.39c.21-.41.21-.71-.02-.9-.23-.19-.55-.39-.95-.61L204.2 54.92l.39-.73c.19.1.39.13.61.09.21-.04.38-.19.51-.43l9.77-18.46c.13-.24.15-.47.07-.67a.859.859 0 0 0-.41-.45l.39-.73 18.54 9.81c.57.3 1.01.42 1.34.37.32-.05.56-.23.72-.53l.73.39-2.84 5.37-.73-.39Zm22.39 11.71c1.25 1.13 2.25 2.37 3 3.71.75 1.34 1.19 2.74 1.32 4.2.13 1.46-.09 2.96-.66 4.49-.56 1.54-1.54 3.07-2.91 4.59-1.38 1.52-2.81 2.64-4.28 3.36-1.47.71-2.94 1.08-4.41 1.1-1.46.02-2.9-.28-4.31-.89-1.41-.61-2.74-1.49-3.99-2.62l-11.32-10.25.56-.61c.52.47.97.51 1.34.1l14.02-15.48c.37-.41.29-.85-.23-1.32l.56-.61 11.32 10.25-.01-.02Zm-14.95 13.77c1.07.97 2.08 1.72 3.04 2.26.96.54 1.91.81 2.86.82.94 0 1.9-.26 2.86-.79.96-.54 1.98-1.4 3.05-2.58 1.07-1.18 1.82-2.28 2.26-3.29.44-1.01.61-1.98.51-2.92-.1-.94-.47-1.86-1.1-2.76-.63-.9-1.48-1.84-2.55-2.8l-5.29-4.78-10.93 12.07 5.29 4.78v-.01Zm35.8 24.34-.27-.92c.19-.05.36-.12.51-.22.39-.25.58-.71.58-1.39 0-.68-.13-1.45-.39-2.33-.26-.87-.62-1.78-1.07-2.7-.46-.93-.94-1.78-1.44-2.55-.62-.95-1.37-1.81-2.25-2.57-.88-.76-1.84-1.33-2.88-1.69-1.04-.36-2.16-.48-3.35-.34-1.19.14-2.43.62-3.72 1.46-1.26.82-2.2 1.75-2.82 2.79-.62 1.04-.97 2.12-1.06 3.22-.09 1.1.04 2.21.38 3.32.34 1.11.82 2.15 1.44 3.1.95 1.46 1.93 2.7 2.94 3.71 1 1.01 1.92 1.83 2.73 2.47l3.32-2.16-3.21-4.94c-.23-.36-.49-.58-.76-.66-.27-.08-.68.02-1.23.31l-.45-.69 4.93-3.21.45.69c-.4.34-.6.63-.6.89 0 .25.12.56.35.92l6.27 9.64-.69.45c-.41-.46-.71-.73-.9-.79-.19-.06-.45.02-.78.23l-4.36 2.83c-.26.17-.37.35-.35.56.02.2.05.44.08.72l-.62.4c-1.14-.46-2.21-1.04-3.21-1.73a21.04 21.04 0 0 1-5.05-4.89c-.68-.93-1.32-1.86-1.92-2.78-1.17-1.8-2.01-3.58-2.52-5.35-.51-1.77-.67-3.47-.47-5.1.2-1.63.75-3.15 1.65-4.56.9-1.41 2.15-2.64 3.77-3.69 1.62-1.05 3.25-1.71 4.9-1.96 1.65-.25 3.26-.14 4.85.33 1.58.47 3.1 1.29 4.53 2.46 1.44 1.17 2.74 2.65 3.91 4.45a26.06 26.06 0 0 1 1.88 3.39c.52 1.13.94 2.15 1.26 3.08.33.92.58 1.7.75 2.34.17.64.3 1.02.39 1.15.15.23.32.38.51.44s.36.13.52.21l.03.64-6.57 1.04.01-.02Zm15.29 31.79c.32-.11.52-.31.59-.61.08-.3.01-.76-.2-1.37l-4.78-14.12-5.4 1.83 2.89 8.54c.2.58.43 1 .7 1.27.27.27.74.29 1.4.06l.26.78-6.8 2.3-.27-.78c.67-.23 1.04-.53 1.12-.91.08-.38.02-.87-.17-1.45l-2.89-8.54-6.01 2.03 4.92 14.55c.15.44.37.76.67.96.3.21.62.25.97.13l.27.78-5.97 2.02-.27-.78c.44-.15.64-.37.6-.66-.04-.3-.13-.66-.27-1.1l-6.87-20.31.79-.27c.07.2.2.36.38.48s.41.13.67.04l19.78-6.69c.26-.09.43-.24.51-.44.08-.2.08-.41.01-.61l.78-.27 6.72 19.87c.21.61.45 1.01.72 1.19.27.18.57.22.89.11l.27.78-5.75 1.95-.27-.78.01.02Z\" fill=\"#000\"/></g></g><defs><clipPath id=\"a\"><path fill=\"#fff\" d=\"M0 0h320v320H0z\"/></clipPath><clipPath id=\"b\"><path fill=\"#fff\" transform=\"translate(23 22)\" d=\"M0 0h274.84v276.49H0z\"/></clipPath><linearGradient id=\"c\" x1=\"160\" y1=\"66\" x2=\"160\" y2=\"254\" gradientUnits=\"userSpaceOnUse\"><stop offset=\".17\" stop-color=\"#fff\"/><stop offset=\"1\" stop-color=\"#7AD8FF\"/></linearGradient></defs></svg>',withExternalLayout:true})]})})})});});const css=[\"@supports (aspect-ratio: 1) { body { --framer-aspect-ratio-supported: auto; } }\",\".framer-Cv4v5.framer-1s8aixi, .framer-Cv4v5 .framer-1s8aixi { display: block; }\",\".framer-Cv4v5.framer-m1z5yy { align-content: center; align-items: center; display: flex; flex-direction: row; flex-wrap: nowrap; gap: 0px; height: min-content; justify-content: center; overflow: visible; padding: 0px; position: relative; width: min-content; }\",\".framer-Cv4v5 .framer-v6q7rr, .framer-Cv4v5 .framer-xw91ym, .framer-Cv4v5 .framer-1r2k61z, .framer-Cv4v5 .framer-1ol2eyy, .framer-Cv4v5 .framer-141rjs2 { aspect-ratio: 1 / 1; flex: none; height: var(--framer-aspect-ratio-supported, 120px); position: relative; width: 120px; }\",\"@supports (background: -webkit-named-image(i)) and (not (font-palette:dark)) { .framer-Cv4v5.framer-m1z5yy { gap: 0px; } .framer-Cv4v5.framer-m1z5yy > * { margin: 0px; margin-left: calc(0px / 2); margin-right: calc(0px / 2); } .framer-Cv4v5.framer-m1z5yy > :first-child { margin-left: 0px; } .framer-Cv4v5.framer-m1z5yy > :last-child { margin-right: 0px; } }\",\".framer-Cv4v5.framer-v-1pylpv4 .framer-v6q7rr { height: var(--framer-aspect-ratio-supported, 88px); width: 88px; }\",\".framer-Cv4v5.framer-v-kjw3ty .framer-xw91ym, .framer-Cv4v5.framer-v-1fxsukw .framer-1r2k61z, .framer-Cv4v5.framer-v-12ma47o .framer-1ol2eyy, .framer-Cv4v5.framer-v-5milgw .framer-141rjs2 { height: var(--framer-aspect-ratio-supported, 80px); width: 80px; }\"];/**\n * This is a generated Framer component.\n * @framerIntrinsicHeight 120\n * @framerIntrinsicWidth 120\n * @framerCanvasComponentVariantDetails {\"propertyName\":\"variant\",\"data\":{\"default\":{\"layout\":[\"auto\",\"auto\"]},\"SgBg_3HJu\":{\"layout\":[\"auto\",\"auto\"]},\"gFJ1Ii4Vm\":{\"layout\":[\"auto\",\"auto\"]},\"r8sFXPtT7\":{\"layout\":[\"auto\",\"auto\"]},\"YkHA94az4\":{\"layout\":[\"auto\",\"auto\"]},\"hXQn0PdgS\":{\"layout\":[\"auto\",\"auto\"]},\"isdXWr8du\":{\"layout\":[\"auto\",\"auto\"]},\"yRWdVLWfS\":{\"layout\":[\"auto\",\"auto\"]},\"d5oAFPGng\":{\"layout\":[\"auto\",\"auto\"]},\"wLKddm9QT\":{\"layout\":[\"auto\",\"auto\"]}}}\n * @framerImmutableVariables true\n * @framerDisplayContentsDiv false\n * @framerComponentViewportWidth true\n */const Framerd6TGmEhg8=withCSS(Component,css,\"framer-Cv4v5\");export default Framerd6TGmEhg8;Framerd6TGmEhg8.displayName=\"Logo / Clients\";Framerd6TGmEhg8.defaultProps={height:120,width:120};addPropertyControls(Framerd6TGmEhg8,{variant:{options:[\"v_tCAZijx\",\"SgBg_3HJu\",\"gFJ1Ii4Vm\",\"r8sFXPtT7\",\"YkHA94az4\",\"hXQn0PdgS\",\"isdXWr8du\",\"yRWdVLWfS\",\"d5oAFPGng\",\"wLKddm9QT\"],optionTitles:[\"Stretch Zone\",\"Jimmy Johns\",\"Chick-Fil-A\",\"COCG\",\"Marsh's Edge\",\"Stretch Zone \\xb7\\xa0Phone\",\"Jimmy Johns \\xb7\\xa0Phone\",\"Chick-Fil-A \\xb7\\xa0Phone\",\"COCG \\xb7\\xa0Phone\",\"Marsh's Edge \\xb7\\xa0Phone\"],title:\"Variant\",type:ControlType.Enum}});addFonts(Framerd6TGmEhg8,[{explicitInter:true,fonts:[]}],{supportsExplicitInterCodegen:true});\nexport const __FramerMetadata__ = {\"exports\":{\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"default\":{\"type\":\"reactComponent\",\"name\":\"Framerd6TGmEhg8\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\",\"framerIntrinsicHeight\":\"120\",\"framerCanvasComponentVariantDetails\":\"{\\\"propertyName\\\":\\\"variant\\\",\\\"data\\\":{\\\"default\\\":{\\\"layout\\\":[\\\"auto\\\",\\\"auto\\\"]},\\\"SgBg_3HJu\\\":{\\\"layout\\\":[\\\"auto\\\",\\\"auto\\\"]},\\\"gFJ1Ii4Vm\\\":{\\\"layout\\\":[\\\"auto\\\",\\\"auto\\\"]},\\\"r8sFXPtT7\\\":{\\\"layout\\\":[\\\"auto\\\",\\\"auto\\\"]},\\\"YkHA94az4\\\":{\\\"layout\\\":[\\\"auto\\\",\\\"auto\\\"]},\\\"hXQn0PdgS\\\":{\\\"layout\\\":[\\\"auto\\\",\\\"auto\\\"]},\\\"isdXWr8du\\\":{\\\"layout\\\":[\\\"auto\\\",\\\"auto\\\"]},\\\"yRWdVLWfS\\\":{\\\"layout\\\":[\\\"auto\\\",\\\"auto\\\"]},\\\"d5oAFPGng\\\":{\\\"layout\\\":[\\\"auto\\\",\\\"auto\\\"]},\\\"wLKddm9QT\\\":{\\\"layout\\\":[\\\"auto\\\",\\\"auto\\\"]}}}\",\"framerImmutableVariables\":\"true\",\"framerIntrinsicWidth\":\"120\",\"framerComponentViewportWidth\":\"true\",\"framerDisplayContentsDiv\":\"false\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./d6TGmEhg8.map","// Generated by Framer (33d5032)\nimport{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{addFonts,addPropertyControls,ComponentViewportProvider,ControlType,cx,getFonts,getFontsFromSharedStyle,getPropertyControls,Link,RichText,SVG,useComponentViewport,useLocaleInfo,useVariantState,withCSS,withFX}from\"framer\";import{LayoutGroup,motion,MotionConfigContext}from\"framer-motion\";import*as React from\"react\";import*as sharedStyle1 from\"https://framerusercontent.com/modules/d65Adc0sCbLShmr3fuex/QaHoa1H7vBViXxesyGth/B1x57pDZs.js\";import*as sharedStyle from\"https://framerusercontent.com/modules/wVSc0y2X69C52S8rs7Nu/PptXaWEq94i4USJ7pbw5/ChmzFk8BY.js\";import*as sharedStyle2 from\"https://framerusercontent.com/modules/yXaScQKFb9qyOFuqW0tH/ufEtp1b2mX3eCM0TyHNG/iBeTArYkS.js\";import LogoClients from\"https://framerusercontent.com/modules/tvBSuYSb06jE9AZZ7F3m/IoT7no7Shgwjaq5sh6Xf/d6TGmEhg8.js\";const LogoClientsFonts=getFonts(LogoClients);const MotionDivWithFX=withFX(motion.div);const LogoClientsControls=getPropertyControls(LogoClients);const cycleOrder=[\"wdwMo8TfK\",\"NQ3S1QPX9\"];const serializationHash=\"framer-0kpaQ\";const variantClassNames={NQ3S1QPX9:\"framer-v-j7mgjo\",wdwMo8TfK:\"framer-v-1sfrh8x\"};function addPropertyOverrides(overrides,...variants){const nextOverrides={};variants?.forEach(variant=>variant&&Object.assign(nextOverrides,overrides[variant]));return nextOverrides;}const animation={opacity:1,rotate:0,rotateX:0,rotateY:0,scale:1,skewX:0,skewY:0,x:0,y:80};const transition1={damping:40,delay:.2,mass:6,stiffness:150,type:\"spring\"};const transition2={damping:60,delay:0,mass:1,stiffness:500,type:\"spring\"};const animation1={opacity:0,rotate:0,rotateX:0,rotateY:0,scale:.7,skewX:0,skewY:0,x:0,y:0};const transition3={damping:40,delay:.2,mass:6,stiffness:200,type:\"spring\"};const transformTemplate1=(_,t)=>`translateX(-50%) ${t}`;const animation2={opacity:0,rotate:0,rotateX:0,rotateY:0,scale:1,skewX:0,skewY:0,x:0,y:0};const transition4={damping:40,delay:.3,mass:6,stiffness:80,type:\"spring\"};const transition5={damping:40,delay:.4,mass:6,stiffness:80,type:\"spring\"};const transformTemplate2=(_,t)=>`translate(-50%, -50%) ${t}`;const transition6={damping:40,delay:.5,mass:6,stiffness:80,type:\"spring\"};const Transition=({value,children})=>{const config=React.useContext(MotionConfigContext);const transition=value??config.transition;const contextValue=React.useMemo(()=>({...config,transition}),[JSON.stringify(transition)]);return /*#__PURE__*/_jsx(MotionConfigContext.Provider,{value:contextValue,children:children});};const Variants=motion(React.Fragment);const humanReadableEnumMap={\"Chick-Fil-A \\xb7\\xa0Phone\":\"yRWdVLWfS\",\"Chick-Fil-A\":\"gFJ1Ii4Vm\",\"COCG \\xb7\\xa0Phone\":\"d5oAFPGng\",\"Jimmy Johns \\xb7\\xa0Phone\":\"isdXWr8du\",\"Jimmy Johns\":\"SgBg_3HJu\",\"Marsh's Edge \\xb7\\xa0Phone\":\"wLKddm9QT\",\"Marsh's Edge\":\"YkHA94az4\",\"Stretch Zone \\xb7\\xa0Phone\":\"hXQn0PdgS\",\"Stretch Zone\":\"v_tCAZijx\",COCG:\"r8sFXPtT7\"};const humanReadableVariantMap={\"Testimonial \\xb7\\xa0Phone\":\"NQ3S1QPX9\",Testimonial:\"wdwMo8TfK\"};const getProps=({business,colorAuthor,colorLocation,colorP,colorRole,height,id,jobTitle,link,logo,name1,scrollSection,testimonial,width,...props})=>{return{...props,d09CRnWO_:jobTitle??props.d09CRnWO_??\"General Manager\",l5JCGHgjj:colorP??props.l5JCGHgjj??\"var(--token-5b7c14a4-6eac-4fec-b1dd-68cde4248eb3, rgb(255, 255, 255))\",LA6JtDPm5:colorLocation??props.LA6JtDPm5??\"var(--token-5b7c14a4-6eac-4fec-b1dd-68cde4248eb3, rgb(255, 255, 255))\",ngyNNwYOj:testimonial??props.ngyNNwYOj??\"GAGE has improved overall morale in the studio. Through employee evaluations, GAGE provides a solid foundation and discussion points, proving to be incredibly beneficial.\",Ny2BitcOL:humanReadableEnumMap[logo]??logo??props.Ny2BitcOL??\"isdXWr8du\",oCuu4PGgZ:colorRole??props.oCuu4PGgZ??\"var(--token-6feccae1-a9c6-4883-8936-c7bf0b44d88b, rgb(187, 187, 187))\",QRLWJiCDh:colorAuthor??props.QRLWJiCDh??\"var(--token-5b7c14a4-6eac-4fec-b1dd-68cde4248eb3, rgb(255, 255, 255))\",variant:humanReadableVariantMap[props.variant]??props.variant??\"wdwMo8TfK\",XCwxEXy6O:scrollSection??props.XCwxEXy6O,Y2pC5k4We:link??props.Y2pC5k4We,YrST8UBx4:name1??props.YrST8UBx4??\"Victoria Wilson\",zO_0XHT8A:business??props.zO_0XHT8A??\"Stretch Zone St. Simons\"};};const createLayoutDependency=(props,variants)=>variants.join(\"-\")+props.layoutDependency;const Component=/*#__PURE__*/React.forwardRef(function(props,ref){const{activeLocale,setLocale}=useLocaleInfo();const{style,className,layoutId,variant,ngyNNwYOj,YrST8UBx4,d09CRnWO_,zO_0XHT8A,Y2pC5k4We,QRLWJiCDh,l5JCGHgjj,Ny2BitcOL,oCuu4PGgZ,LA6JtDPm5,XCwxEXy6O,...restProps}=getProps(props);const{baseVariant,classNames,gestureVariant,setGestureState,setVariant,variants}=useVariantState({cycleOrder,defaultVariant:\"wdwMo8TfK\",variant,variantClassNames});const layoutDependency=createLayoutDependency(props,variants);const ref1=React.useRef(null);const defaultLayoutId=React.useId();const sharedStyleClassNames=[sharedStyle.className,sharedStyle1.className,sharedStyle2.className];const componentViewport=useComponentViewport();return /*#__PURE__*/_jsx(LayoutGroup,{id:layoutId??defaultLayoutId,children:/*#__PURE__*/_jsx(Variants,{animate:variants,initial:false,children:/*#__PURE__*/_jsx(Transition,{value:transition2,children:/*#__PURE__*/_jsx(MotionDivWithFX,{...restProps,__framer__animate:{transition:transition1},__framer__animateOnce:true,__framer__enter:animation,__framer__styleAppearEffectEnabled:true,__framer__targets:[{ref:XCwxEXy6O,target:\"animate\"}],__framer__threshold:.5,__perspectiveFX:false,__smartComponentFX:true,__targetOpacity:1,className:cx(serializationHash,...sharedStyleClassNames,\"framer-1sfrh8x\",className,classNames),\"data-framer-name\":\"Testimonial\",layoutDependency:layoutDependency,layoutId:\"wdwMo8TfK\",onHoverEnd:()=>setGestureState({isHovered:false}),onHoverStart:()=>setGestureState({isHovered:true}),onTap:()=>setGestureState({isPressed:false}),onTapCancel:()=>setGestureState({isPressed:false}),onTapStart:()=>setGestureState({isPressed:true}),ref:ref??ref1,style:{...style},...addPropertyOverrides({NQ3S1QPX9:{\"data-framer-name\":\"Testimonial \\xb7\\xa0Phone\"}},baseVariant,gestureVariant),children:/*#__PURE__*/_jsxs(motion.div,{className:\"framer-p4lkxr\",\"data-border\":true,\"data-framer-name\":\"Wrapper\",layoutDependency:layoutDependency,layoutId:\"EhdHqWZ8V\",style:{\"--border-bottom-width\":\"1px\",\"--border-color\":\"rgba(102, 102, 102, 0.32)\",\"--border-left-width\":\"1px\",\"--border-right-width\":\"1px\",\"--border-style\":\"solid\",\"--border-top-width\":\"1px\",backgroundColor:\"rgba(0, 0, 0, 0.1)\",borderBottomLeftRadius:16,borderBottomRightRadius:16,borderTopLeftRadius:16,borderTopRightRadius:16,boxShadow:\"0px 24px 24px -24px rgb(0, 0, 0)\"},children:[/*#__PURE__*/_jsx(ComponentViewportProvider,{children:/*#__PURE__*/_jsx(MotionDivWithFX,{__framer__animate:{transition:transition3},__framer__animateOnce:true,__framer__enter:animation1,__framer__styleAppearEffectEnabled:true,__framer__targets:[{ref:XCwxEXy6O,target:\"animate\"}],__framer__threshold:.5,__perspectiveFX:false,__smartComponentFX:true,__targetOpacity:1,className:\"framer-128jxfb-container\",layoutDependency:layoutDependency,layoutId:\"LNk2oHWuU-container\",style:{transformPerspective:1200},transformTemplate:transformTemplate1,children:/*#__PURE__*/_jsx(LogoClients,{height:\"100%\",id:\"LNk2oHWuU\",layoutId:\"LNk2oHWuU\",variant:Ny2BitcOL,width:\"100%\"})})}),/*#__PURE__*/_jsxs(motion.div,{className:\"framer-12wrali\",\"data-framer-name\":\"Content\",layoutDependency:layoutDependency,layoutId:\"yFWhZiPnl\",children:[/*#__PURE__*/_jsx(MotionDivWithFX,{__framer__animate:{transition:transition4},__framer__animateOnce:true,__framer__enter:animation2,__framer__styleAppearEffectEnabled:true,__framer__targets:[{ref:XCwxEXy6O,target:\"animate\"}],__framer__threshold:.5,__perspectiveFX:false,__smartComponentFX:true,__targetOpacity:1,className:\"framer-dd542s\",\"data-framer-name\":\"Testimonial\",layoutDependency:layoutDependency,layoutId:\"ndYsdp0Ng\",style:{transformPerspective:1200},children:/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{className:\"framer-styles-preset-3amslo\",\"data-styles-preset\":\"ChmzFk8BY\",style:{\"--framer-text-color\":\"var(--extracted-r6o4lv, var(--variable-reference-l5JCGHgjj-qgj9dlVMW))\"},children:\"GAGE has improved overall morale in the studio. Through employee evaluations, GAGE provides a solid foundation and discussion points, proving to be incredibly beneficial.\"})}),className:\"framer-1kba6tt\",fonts:[\"Inter\"],layoutDependency:layoutDependency,layoutId:\"XdT7WhnWu\",style:{\"--extracted-r6o4lv\":\"var(--variable-reference-l5JCGHgjj-qgj9dlVMW)\",\"--framer-link-text-color\":\"rgb(0, 153, 255)\",\"--framer-link-text-decoration\":\"underline\",\"--variable-reference-l5JCGHgjj-qgj9dlVMW\":l5JCGHgjj},text:ngyNNwYOj,verticalAlignment:\"top\",withExternalLayout:true})}),/*#__PURE__*/_jsxs(motion.div,{className:\"framer-1b8ymaf\",\"data-framer-name\":\"Author\",layoutDependency:layoutDependency,layoutId:\"XLhi8Um0s\",children:[/*#__PURE__*/_jsx(MotionDivWithFX,{__framer__animate:{transition:transition5},__framer__animateOnce:true,__framer__enter:animation2,__framer__styleAppearEffectEnabled:true,__framer__targets:[{ref:XCwxEXy6O,target:\"animate\"}],__framer__threshold:.5,__perspectiveFX:false,__smartComponentFX:true,__targetOpacity:1,className:\"framer-1q6wpjv\",\"data-framer-name\":\"Name\",layoutDependency:layoutDependency,layoutId:\"prvwgvzfe\",style:{transformPerspective:1200},children:/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.h6,{className:\"framer-styles-preset-1iu7llg\",\"data-styles-preset\":\"B1x57pDZs\",style:{\"--framer-text-color\":\"var(--extracted-1w1cjl5, var(--variable-reference-QRLWJiCDh-qgj9dlVMW))\"},children:\"Victoria Wilson\"})}),className:\"framer-1eouv2s\",\"data-framer-name\":\"Name\",fonts:[\"Inter\"],layoutDependency:layoutDependency,layoutId:\"f02HfZJeh\",style:{\"--extracted-1w1cjl5\":\"var(--variable-reference-QRLWJiCDh-qgj9dlVMW)\",\"--framer-paragraph-spacing\":\"0px\",\"--variable-reference-QRLWJiCDh-qgj9dlVMW\":QRLWJiCDh},text:YrST8UBx4,transformTemplate:transformTemplate2,verticalAlignment:\"center\",withExternalLayout:true})}),/*#__PURE__*/_jsxs(MotionDivWithFX,{__framer__animate:{transition:transition6},__framer__animateOnce:true,__framer__enter:animation2,__framer__styleAppearEffectEnabled:true,__framer__targets:[{ref:XCwxEXy6O,target:\"animate\"}],__framer__threshold:.5,__perspectiveFX:false,__smartComponentFX:true,__targetOpacity:1,className:\"framer-1xmmut2\",\"data-framer-name\":\"Info\",layoutDependency:layoutDependency,layoutId:\"ZJxVZkhfv\",style:{transformPerspective:1200},children:[/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{style:{\"--font-selector\":\"R0Y7SW50ZXItcmVndWxhcg==\",\"--framer-font-family\":'\"Inter\", \"Inter Placeholder\", sans-serif',\"--framer-font-size\":\"12px\",\"--framer-line-height\":\"12px\",\"--framer-text-alignment\":\"center\",\"--framer-text-color\":\"var(--extracted-r6o4lv, var(--variable-reference-oCuu4PGgZ-qgj9dlVMW))\"},children:\"General Manager\"})}),className:\"framer-55whf8\",\"data-framer-name\":\"Job Title\",fonts:[\"GF;Inter-regular\"],layoutDependency:layoutDependency,layoutId:\"DR3DxVtvB\",style:{\"--extracted-r6o4lv\":\"var(--variable-reference-oCuu4PGgZ-qgj9dlVMW)\",\"--framer-paragraph-spacing\":\"0px\",\"--variable-reference-oCuu4PGgZ-qgj9dlVMW\":oCuu4PGgZ},text:d09CRnWO_,verticalAlignment:\"center\",withExternalLayout:true}),/*#__PURE__*/_jsx(motion.div,{className:\"framer-7e4cwh\",\"data-framer-name\":\"Divider\",layoutDependency:layoutDependency,layoutId:\"A9_tlMg6b\",children:/*#__PURE__*/_jsx(SVG,{className:\"framer-wow9te\",\"data-framer-name\":\"Divider\",fill:\"rgba(0,0,0,1)\",intrinsicHeight:12,intrinsicWidth:12,layoutDependency:layoutDependency,layoutId:\"Xp_lf4MIA\",svg:'<svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\\n<path d=\"M5 4L7 7L5 10\" stroke=\"#777777\" stroke-width=\"1.5\" stroke-linecap=\"square\" stroke-linejoin=\"round\"/>\\n</svg>\\n',withExternalLayout:true})}),/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.h6,{style:{\"--font-selector\":\"R0Y7SW50ZXItcmVndWxhcg==\",\"--framer-font-family\":'\"Inter\", \"Inter Placeholder\", sans-serif',\"--framer-font-size\":\"12px\",\"--framer-line-height\":\"12px\",\"--framer-text-alignment\":\"center\",\"--framer-text-color\":\"var(--extracted-1w1cjl5, var(--variable-reference-LA6JtDPm5-qgj9dlVMW))\"},children:/*#__PURE__*/_jsx(Link,{href:Y2pC5k4We,openInNewTab:true,smoothScroll:false,children:/*#__PURE__*/_jsx(motion.a,{className:\"framer-styles-preset-1tsiwhd\",\"data-styles-preset\":\"iBeTArYkS\",children:\"Stretch Zone St. Simons\"})})})}),className:\"framer-1di0lt4\",\"data-framer-name\":\"Business + Link\",fonts:[\"GF;Inter-regular\"],layoutDependency:layoutDependency,layoutId:\"cmB7lzGgW\",style:{\"--extracted-1w1cjl5\":\"var(--variable-reference-LA6JtDPm5-qgj9dlVMW)\",\"--framer-paragraph-spacing\":\"0px\",\"--variable-reference-LA6JtDPm5-qgj9dlVMW\":LA6JtDPm5},text:zO_0XHT8A,verticalAlignment:\"center\",withExternalLayout:true})]})]})]})]})})})})});});const css=[\"@supports (aspect-ratio: 1) { body { --framer-aspect-ratio-supported: auto; } }\",\".framer-0kpaQ.framer-18qz4qo, .framer-0kpaQ .framer-18qz4qo { display: block; }\",\".framer-0kpaQ.framer-1sfrh8x { align-content: center; align-items: center; display: flex; flex-direction: column; flex-wrap: nowrap; gap: 40px; height: min-content; justify-content: center; overflow: visible; padding: 56px 0px 0px 0px; position: relative; width: 512px; }\",\".framer-0kpaQ .framer-p4lkxr { align-content: center; align-items: center; display: flex; flex: none; flex-direction: column; flex-wrap: nowrap; gap: 0px; height: min-content; justify-content: flex-start; overflow: visible; padding: 40px; position: relative; width: 100%; }\",\".framer-0kpaQ .framer-128jxfb-container { flex: none; height: auto; left: 50%; position: absolute; top: -44px; width: auto; z-index: 2; }\",\".framer-0kpaQ .framer-12wrali { align-content: center; align-items: center; display: flex; flex: none; flex-direction: column; flex-wrap: nowrap; gap: 40px; height: min-content; justify-content: flex-start; overflow: visible; padding: 56px 0px 0px 0px; position: relative; width: 100%; z-index: 0; }\",\".framer-0kpaQ .framer-dd542s { align-content: center; align-items: center; display: flex; flex: none; flex-direction: column; flex-wrap: wrap; gap: 0px; height: min-content; justify-content: center; overflow: hidden; padding: 0px; position: relative; width: 100%; }\",\".framer-0kpaQ .framer-1kba6tt { flex: none; height: auto; position: relative; white-space: pre-wrap; width: 100%; word-break: break-word; word-wrap: break-word; }\",\".framer-0kpaQ .framer-1b8ymaf { align-content: center; align-items: center; display: flex; flex: none; flex-direction: column; flex-wrap: wrap; gap: 12px; height: min-content; justify-content: center; overflow: visible; padding: 0px; position: relative; width: 100%; z-index: 1; }\",\".framer-0kpaQ .framer-1q6wpjv { flex: none; height: 16px; overflow: visible; position: relative; width: 140px; }\",\".framer-0kpaQ .framer-1eouv2s { flex: none; height: auto; left: 50%; position: absolute; top: 50%; white-space: pre; width: auto; }\",\".framer-0kpaQ .framer-1xmmut2 { align-content: flex-start; align-items: flex-start; display: flex; flex: none; flex-direction: row; flex-wrap: wrap; gap: 4px; height: min-content; justify-content: center; overflow: visible; padding: 0px; position: relative; width: 100%; }\",\".framer-0kpaQ .framer-55whf8, .framer-0kpaQ .framer-1di0lt4 { flex: none; height: auto; position: relative; white-space: pre; width: auto; }\",\".framer-0kpaQ .framer-7e4cwh { align-content: flex-start; align-items: flex-start; display: flex; flex: none; flex-direction: column; flex-wrap: nowrap; gap: 0px; height: min-content; justify-content: flex-start; overflow: visible; padding: 0px; position: relative; width: min-content; }\",\".framer-0kpaQ .framer-wow9te { flex: none; height: 12px; position: relative; width: 12px; }\",\"@supports (background: -webkit-named-image(i)) and (not (font-palette:dark)) { .framer-0kpaQ.framer-1sfrh8x, .framer-0kpaQ .framer-p4lkxr, .framer-0kpaQ .framer-12wrali, .framer-0kpaQ .framer-dd542s, .framer-0kpaQ .framer-1b8ymaf, .framer-0kpaQ .framer-1xmmut2, .framer-0kpaQ .framer-7e4cwh { gap: 0px; } .framer-0kpaQ.framer-1sfrh8x > *, .framer-0kpaQ .framer-12wrali > * { margin: 0px; margin-bottom: calc(40px / 2); margin-top: calc(40px / 2); } .framer-0kpaQ.framer-1sfrh8x > :first-child, .framer-0kpaQ .framer-p4lkxr > :first-child, .framer-0kpaQ .framer-12wrali > :first-child, .framer-0kpaQ .framer-dd542s > :first-child, .framer-0kpaQ .framer-1b8ymaf > :first-child, .framer-0kpaQ .framer-7e4cwh > :first-child { margin-top: 0px; } .framer-0kpaQ.framer-1sfrh8x > :last-child, .framer-0kpaQ .framer-p4lkxr > :last-child, .framer-0kpaQ .framer-12wrali > :last-child, .framer-0kpaQ .framer-dd542s > :last-child, .framer-0kpaQ .framer-1b8ymaf > :last-child, .framer-0kpaQ .framer-7e4cwh > :last-child { margin-bottom: 0px; } .framer-0kpaQ .framer-p4lkxr > *, .framer-0kpaQ .framer-dd542s > *, .framer-0kpaQ .framer-7e4cwh > * { margin: 0px; margin-bottom: calc(0px / 2); margin-top: calc(0px / 2); } .framer-0kpaQ .framer-1b8ymaf > * { margin: 0px; margin-bottom: calc(12px / 2); margin-top: calc(12px / 2); } .framer-0kpaQ .framer-1xmmut2 > * { margin: 0px; margin-left: calc(4px / 2); margin-right: calc(4px / 2); } .framer-0kpaQ .framer-1xmmut2 > :first-child { margin-left: 0px; } .framer-0kpaQ .framer-1xmmut2 > :last-child { margin-right: 0px; } }\",\".framer-0kpaQ.framer-v-j7mgjo .framer-12wrali { padding: 24px 0px 0px 0px; }\",...sharedStyle.css,...sharedStyle1.css,...sharedStyle2.css,'.framer-0kpaQ[data-border=\"true\"]::after, .framer-0kpaQ [data-border=\"true\"]::after { content: \"\"; border-width: var(--border-top-width, 0) var(--border-right-width, 0) var(--border-bottom-width, 0) var(--border-left-width, 0); border-color: var(--border-color, none); border-style: var(--border-style, none); width: 100%; height: 100%; position: absolute; box-sizing: border-box; left: 0; top: 0; border-radius: inherit; pointer-events: none; }'];/**\n * This is a generated Framer component.\n * @framerIntrinsicHeight 384\n * @framerIntrinsicWidth 512\n * @framerCanvasComponentVariantDetails {\"propertyName\":\"variant\",\"data\":{\"default\":{\"layout\":[\"fixed\",\"auto\"]},\"NQ3S1QPX9\":{\"layout\":[\"fixed\",\"auto\"]}}}\n * @framerVariables {\"ngyNNwYOj\":\"testimonial\",\"YrST8UBx4\":\"name1\",\"d09CRnWO_\":\"jobTitle\",\"zO_0XHT8A\":\"business\",\"Y2pC5k4We\":\"link\",\"QRLWJiCDh\":\"colorAuthor\",\"l5JCGHgjj\":\"colorP\",\"Ny2BitcOL\":\"logo\",\"oCuu4PGgZ\":\"colorRole\",\"LA6JtDPm5\":\"colorLocation\",\"XCwxEXy6O\":\"scrollSection\"}\n * @framerImmutableVariables true\n * @framerDisplayContentsDiv false\n * @framerComponentViewportWidth true\n */const Framerqgj9dlVMW=withCSS(Component,css,\"framer-0kpaQ\");export default Framerqgj9dlVMW;Framerqgj9dlVMW.displayName=\"Card / Testimonial\";Framerqgj9dlVMW.defaultProps={height:384,width:512};addPropertyControls(Framerqgj9dlVMW,{variant:{options:[\"wdwMo8TfK\",\"NQ3S1QPX9\"],optionTitles:[\"Testimonial\",\"Testimonial \\xb7\\xa0Phone\"],title:\"Variant\",type:ControlType.Enum},ngyNNwYOj:{defaultValue:\"GAGE has improved overall morale in the studio. Through employee evaluations, GAGE provides a solid foundation and discussion points, proving to be incredibly beneficial.\",displayTextArea:false,title:\"Testimonial\",type:ControlType.String},YrST8UBx4:{defaultValue:\"Victoria Wilson\",displayTextArea:false,title:\"Name\",type:ControlType.String},d09CRnWO_:{defaultValue:\"General Manager\",displayTextArea:false,title:\"Job Title\",type:ControlType.String},zO_0XHT8A:{defaultValue:\"Stretch Zone St. Simons\",displayTextArea:false,title:\"Business\",type:ControlType.String},Y2pC5k4We:{title:\"Link\",type:ControlType.Link},QRLWJiCDh:{defaultValue:'var(--token-5b7c14a4-6eac-4fec-b1dd-68cde4248eb3, rgb(255, 255, 255)) /* {\"name\":\"White\"} */',title:\"Color \\xb7\\xa0Author\",type:ControlType.Color},l5JCGHgjj:{defaultValue:\"var(--token-5b7c14a4-6eac-4fec-b1dd-68cde4248eb3, rgb(255, 255, 255))\",title:\"Color \\xb7\\xa0P\",type:ControlType.Color},Ny2BitcOL:LogoClientsControls?.[\"variant\"]&&{...LogoClientsControls[\"variant\"],defaultValue:\"isdXWr8du\",description:undefined,hidden:undefined,title:\"Logo\"},oCuu4PGgZ:{defaultValue:'var(--token-6feccae1-a9c6-4883-8936-c7bf0b44d88b, rgb(187, 187, 187)) /* {\"name\":\"Bees\"} */',title:\"Color \\xb7\\xa0Role\",type:ControlType.Color},LA6JtDPm5:{defaultValue:\"var(--token-5b7c14a4-6eac-4fec-b1dd-68cde4248eb3, rgb(255, 255, 255))\",title:\"Color \\xb7\\xa0Location\",type:ControlType.Color},XCwxEXy6O:{title:\"Scroll Section\",type:ControlType.ScrollSectionRef}});addFonts(Framerqgj9dlVMW,[{explicitInter:true,fonts:[{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F\",url:\"https://app.framerstatic.com/Inter-Regular.cyrillic-ext-CFTLRB35.woff2\",weight:\"400\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116\",url:\"https://app.framerstatic.com/Inter-Regular.cyrillic-KKLZBALH.woff2\",weight:\"400\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+1F00-1FFF\",url:\"https://app.framerstatic.com/Inter-Regular.greek-ext-ULEBLIFV.woff2\",weight:\"400\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0370-03FF\",url:\"https://app.framerstatic.com/Inter-Regular.greek-IRHSNFQB.woff2\",weight:\"400\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF\",url:\"https://app.framerstatic.com/Inter-Regular.latin-ext-VZDUGU3Q.woff2\",weight:\"400\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD\",url:\"https://app.framerstatic.com/Inter-Regular.latin-JLQMKCHE.woff2\",weight:\"400\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB\",url:\"https://app.framerstatic.com/Inter-Regular.vietnamese-QK7VSWXK.woff2\",weight:\"400\"},{family:\"Inter\",source:\"google\",style:\"normal\",url:\"https://fonts.gstatic.com/s/inter/v13/UcCO3FwrK3iLTeHuS_fvQtMwCp50KnMw2boKoduKmMEVuLyfMZ1rib2Bg-4.woff2\",weight:\"400\"}]},...LogoClientsFonts,...getFontsFromSharedStyle(sharedStyle.fonts),...getFontsFromSharedStyle(sharedStyle1.fonts),...getFontsFromSharedStyle(sharedStyle2.fonts)],{supportsExplicitInterCodegen:true});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"Framerqgj9dlVMW\",\"slots\":[],\"annotations\":{\"framerCanvasComponentVariantDetails\":\"{\\\"propertyName\\\":\\\"variant\\\",\\\"data\\\":{\\\"default\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"auto\\\"]},\\\"NQ3S1QPX9\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"auto\\\"]}}}\",\"framerComponentViewportWidth\":\"true\",\"framerVariables\":\"{\\\"ngyNNwYOj\\\":\\\"testimonial\\\",\\\"YrST8UBx4\\\":\\\"name1\\\",\\\"d09CRnWO_\\\":\\\"jobTitle\\\",\\\"zO_0XHT8A\\\":\\\"business\\\",\\\"Y2pC5k4We\\\":\\\"link\\\",\\\"QRLWJiCDh\\\":\\\"colorAuthor\\\",\\\"l5JCGHgjj\\\":\\\"colorP\\\",\\\"Ny2BitcOL\\\":\\\"logo\\\",\\\"oCuu4PGgZ\\\":\\\"colorRole\\\",\\\"LA6JtDPm5\\\":\\\"colorLocation\\\",\\\"XCwxEXy6O\\\":\\\"scrollSection\\\"}\",\"framerIntrinsicWidth\":\"512\",\"framerDisplayContentsDiv\":\"false\",\"framerContractVersion\":\"1\",\"framerImmutableVariables\":\"true\",\"framerIntrinsicHeight\":\"384\"}},\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// Generated by Framer (ee1e8a0)\nimport{jsx as _jsx}from\"react/jsx-runtime\";import{addFonts,addPropertyControls,ControlType,cx,useComponentViewport,useLocaleInfo,useVariantState,withCSS}from\"framer\";import{LayoutGroup,motion,MotionConfigContext}from\"framer-motion\";import*as React from\"react\";import{useRef}from\"react\";const cycleOrder=[\"gQV_a1vx7\",\"ZwUwFHMSP\",\"EgleAoO7H\",\"cm2amcQun\",\"fvLkTFA0N\"];const serializationHash=\"framer-9EyW9\";const variantClassNames={cm2amcQun:\"framer-v-5qxkkz\",EgleAoO7H:\"framer-v-1hujxd\",fvLkTFA0N:\"framer-v-icmva3\",gQV_a1vx7:\"framer-v-1br67kq\",ZwUwFHMSP:\"framer-v-13qufpc\"};function addPropertyOverrides(overrides,...variants){const nextOverrides={};variants?.forEach(variant=>variant&&Object.assign(nextOverrides,overrides[variant]));return nextOverrides;}const transition1={damping:60,delay:0,mass:1,stiffness:500,type:\"spring\"};const Transition=({value,children})=>{const config=React.useContext(MotionConfigContext);const transition=value??config.transition;const contextValue=React.useMemo(()=>({...config,transition}),[JSON.stringify(transition)]);return /*#__PURE__*/_jsx(MotionConfigContext.Provider,{value:contextValue,children:children});};const Variants=motion.create(React.Fragment);const humanReadableVariantMap={Default:\"gQV_a1vx7\",Display:\"EgleAoO7H\",Laptop:\"ZwUwFHMSP\",Phone:\"fvLkTFA0N\",Tablet:\"cm2amcQun\"};const getProps=({height,id,width,...props})=>{return{...props,variant:humanReadableVariantMap[props.variant]??props.variant??\"gQV_a1vx7\"};};const createLayoutDependency=(props,variants)=>{if(props.layoutDependency)return variants.join(\"-\")+props.layoutDependency;return variants.join(\"-\");};const Component=/*#__PURE__*/React.forwardRef(function(props,ref){const fallbackRef=useRef(null);const refBinding=ref??fallbackRef;const defaultLayoutId=React.useId();const{activeLocale,setLocale}=useLocaleInfo();const componentViewport=useComponentViewport();const{style,className,layoutId,variant,...restProps}=getProps(props);const{baseVariant,classNames,clearLoadingGesture,gestureHandlers,gestureVariant,isLoading,setGestureState,setVariant,variants}=useVariantState({cycleOrder,defaultVariant:\"gQV_a1vx7\",ref:refBinding,variant,variantClassNames});const layoutDependency=createLayoutDependency(props,variants);const sharedStyleClassNames=[];const scopingClassNames=cx(serializationHash,...sharedStyleClassNames);const isDisplayed=()=>{if([\"ZwUwFHMSP\",\"EgleAoO7H\",\"cm2amcQun\",\"fvLkTFA0N\"].includes(baseVariant))return true;return false;};return /*#__PURE__*/_jsx(LayoutGroup,{id:layoutId??defaultLayoutId,children:/*#__PURE__*/_jsx(Variants,{animate:variants,initial:false,children:/*#__PURE__*/_jsx(Transition,{value:transition1,children:/*#__PURE__*/_jsx(motion.div,{...restProps,...gestureHandlers,className:cx(scopingClassNames,\"framer-1br67kq\",className,classNames),\"data-framer-name\":\"Default\",layoutDependency:layoutDependency,layoutId:\"gQV_a1vx7\",ref:refBinding,style:{...style},...addPropertyOverrides({cm2amcQun:{\"data-framer-name\":\"Tablet\"},EgleAoO7H:{\"data-framer-name\":\"Display\"},fvLkTFA0N:{\"data-framer-name\":\"Phone\"},ZwUwFHMSP:{\"data-framer-name\":\"Laptop\"}},baseVariant,gestureVariant),children:isDisplayed()&&/*#__PURE__*/_jsx(motion.div,{className:\"framer-22s5fb\",\"data-framer-name\":\"Fill\",layoutDependency:layoutDependency,layoutId:\"GGgG6qm3v\",style:{background:\"radial-gradient(54% 68% at 48% 0%, rgb(51, 51, 51) 0%, rgb(0, 0, 0) 100%)\"},variants:{cm2amcQun:{background:\"radial-gradient(59% 59% at 48% 0%, rgb(34, 34, 34) 0%, rgb(0, 0, 0) 100%)\"},EgleAoO7H:{background:\"radial-gradient(55.00000000000001% 75% at 48% 0%, rgb(34, 34, 34) 0%, rgb(0, 0, 0) 100%)\"},fvLkTFA0N:{background:\"radial-gradient(100% 44% at 48% 0%, rgb(34, 34, 34) 0%, rgb(0, 0, 0) 100%)\"}}})})})})});});const css=[\"@supports (aspect-ratio: 1) { body { --framer-aspect-ratio-supported: auto; } }\",\".framer-9EyW9.framer-g4015o, .framer-9EyW9 .framer-g4015o { display: block; }\",\".framer-9EyW9.framer-1br67kq { align-content: flex-start; align-items: flex-start; display: flex; flex-direction: row; flex-wrap: nowrap; gap: 0px; height: 800px; justify-content: flex-start; min-height: calc(var(--framer-viewport-height, 100vh) * 1); overflow: visible; padding: 0px; position: relative; width: 1200px; }\",\".framer-9EyW9 .framer-22s5fb { flex: none; height: 100%; min-height: calc(var(--framer-viewport-height, 100vh) * 1); overflow: visible; position: relative; width: 100%; z-index: 1; }\",\".framer-9EyW9.framer-v-1hujxd.framer-1br67kq { width: 2000px; }\",\".framer-9EyW9.framer-v-5qxkkz.framer-1br67kq { height: 1080px; width: 1024px; }\",\".framer-9EyW9.framer-v-icmva3.framer-1br67kq { height: 844px; width: 400px; }\"];/**\n * This is a generated Framer component.\n * @framerIntrinsicHeight 800\n * @framerIntrinsicWidth 1200\n * @framerCanvasComponentVariantDetails {\"propertyName\":\"variant\",\"data\":{\"default\":{\"layout\":[\"fixed\",\"fixed\"],\"constraints\":[null,null,\"100vh\",null]},\"ZwUwFHMSP\":{\"layout\":[\"fixed\",\"fixed\"],\"constraints\":[null,null,\"100vh\",null]},\"EgleAoO7H\":{\"layout\":[\"fixed\",\"fixed\"],\"constraints\":[null,null,\"100vh\",null]},\"cm2amcQun\":{\"layout\":[\"fixed\",\"fixed\"],\"constraints\":[null,null,\"100vh\",null]},\"fvLkTFA0N\":{\"layout\":[\"fixed\",\"fixed\"],\"constraints\":[null,null,\"100vh\",null]}}}\n * @framerImmutableVariables true\n * @framerDisplayContentsDiv false\n * @framerAutoSizeImages true\n * @framerComponentViewportWidth true\n * @framerColorSyntax true\n */const FramerQn3QqJj4I=withCSS(Component,css,\"framer-9EyW9\");export default FramerQn3QqJj4I;FramerQn3QqJj4I.displayName=\"Alpha / Overcast\";FramerQn3QqJj4I.defaultProps={height:800,width:1200};addPropertyControls(FramerQn3QqJj4I,{variant:{options:[\"gQV_a1vx7\",\"ZwUwFHMSP\",\"EgleAoO7H\",\"cm2amcQun\",\"fvLkTFA0N\"],optionTitles:[\"Default\",\"Laptop\",\"Display\",\"Tablet\",\"Phone\"],title:\"Variant\",type:ControlType.Enum}});addFonts(FramerQn3QqJj4I,[{explicitInter:true,fonts:[]}],{supportsExplicitInterCodegen:true});\nexport const __FramerMetadata__ = {\"exports\":{\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"default\":{\"type\":\"reactComponent\",\"name\":\"FramerQn3QqJj4I\",\"slots\":[],\"annotations\":{\"framerIntrinsicWidth\":\"1200\",\"framerContractVersion\":\"1\",\"framerImmutableVariables\":\"true\",\"framerCanvasComponentVariantDetails\":\"{\\\"propertyName\\\":\\\"variant\\\",\\\"data\\\":{\\\"default\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"],\\\"constraints\\\":[null,null,\\\"100vh\\\",null]},\\\"ZwUwFHMSP\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"],\\\"constraints\\\":[null,null,\\\"100vh\\\",null]},\\\"EgleAoO7H\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"],\\\"constraints\\\":[null,null,\\\"100vh\\\",null]},\\\"cm2amcQun\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"],\\\"constraints\\\":[null,null,\\\"100vh\\\",null]},\\\"fvLkTFA0N\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"],\\\"constraints\\\":[null,null,\\\"100vh\\\",null]}}}\",\"framerDisplayContentsDiv\":\"false\",\"framerIntrinsicHeight\":\"800\",\"framerAutoSizeImages\":\"true\",\"framerComponentViewportWidth\":\"true\",\"framerColorSyntax\":\"true\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./Qn3QqJj4I.map","// Generated by Framer (ee1e8a0)\nimport{fontStore}from\"framer\";fontStore.loadFonts([\"CUSTOM;Neometric Extra Bold\",\"Inter-Black\",\"Inter-BlackItalic\",\"Inter-BoldItalic\"]);export const fonts=[{explicitInter:true,fonts:[{family:\"Neometric Extra Bold\",source:\"custom\",url:\"https://framerusercontent.com/assets/DtbpLDTGqpgnIlzCpeNLl5Ui5U.woff2\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F\",url:\"https://framerusercontent.com/assets/mkY5Sgyq51ik0AMrSBwhm9DJg.woff2\",weight:\"900\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116\",url:\"https://framerusercontent.com/assets/X5hj6qzcHUYv7h1390c8Rhm6550.woff2\",weight:\"900\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+1F00-1FFF\",url:\"https://framerusercontent.com/assets/gQhNpS3tN86g8RcVKYUUaKt2oMQ.woff2\",weight:\"900\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0370-03FF\",url:\"https://framerusercontent.com/assets/cugnVhSraaRyANCaUtI5FV17wk.woff2\",weight:\"900\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF\",url:\"https://framerusercontent.com/assets/5HcVoGak8k5agFJSaKa4floXVu0.woff2\",weight:\"900\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD\",url:\"https://framerusercontent.com/assets/jn4BtSPLlS0NDp1KiFAtFKiiY0o.woff2\",weight:\"900\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB\",url:\"https://framerusercontent.com/assets/P2Bw01CtL0b9wqygO0sSVogWbo.woff2\",weight:\"900\"},{family:\"Inter\",source:\"framer\",style:\"italic\",unicodeRange:\"U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F\",url:\"https://framerusercontent.com/assets/05KsVHGDmqXSBXM4yRZ65P8i0s.woff2\",weight:\"900\"},{family:\"Inter\",source:\"framer\",style:\"italic\",unicodeRange:\"U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116\",url:\"https://framerusercontent.com/assets/ky8ovPukK4dJ1Pxq74qGhOqCYI.woff2\",weight:\"900\"},{family:\"Inter\",source:\"framer\",style:\"italic\",unicodeRange:\"U+1F00-1FFF\",url:\"https://framerusercontent.com/assets/vvNSqIj42qeQ2bvCRBIWKHscrc.woff2\",weight:\"900\"},{family:\"Inter\",source:\"framer\",style:\"italic\",unicodeRange:\"U+0370-03FF\",url:\"https://framerusercontent.com/assets/3ZmXbBKToJifDV9gwcifVd1tEY.woff2\",weight:\"900\"},{family:\"Inter\",source:\"framer\",style:\"italic\",unicodeRange:\"U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF\",url:\"https://framerusercontent.com/assets/FNfhX3dt4ChuLJq2PwdlxHO7PU.woff2\",weight:\"900\"},{family:\"Inter\",source:\"framer\",style:\"italic\",unicodeRange:\"U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD\",url:\"https://framerusercontent.com/assets/g0c8vEViiXNlKAgI4Ymmk3Ig.woff2\",weight:\"900\"},{family:\"Inter\",source:\"framer\",style:\"italic\",unicodeRange:\"U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB\",url:\"https://framerusercontent.com/assets/efTfQcBJ53kM2pB1hezSZ3RDUFs.woff2\",weight:\"900\"},{family:\"Inter\",source:\"framer\",style:\"italic\",unicodeRange:\"U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F\",url:\"https://framerusercontent.com/assets/H89BbHkbHDzlxZzxi8uPzTsp90.woff2\",weight:\"700\"},{family:\"Inter\",source:\"framer\",style:\"italic\",unicodeRange:\"U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116\",url:\"https://framerusercontent.com/assets/u6gJwDuwB143kpNK1T1MDKDWkMc.woff2\",weight:\"700\"},{family:\"Inter\",source:\"framer\",style:\"italic\",unicodeRange:\"U+1F00-1FFF\",url:\"https://framerusercontent.com/assets/43sJ6MfOPh1LCJt46OvyDuSbA6o.woff2\",weight:\"700\"},{family:\"Inter\",source:\"framer\",style:\"italic\",unicodeRange:\"U+0370-03FF\",url:\"https://framerusercontent.com/assets/wccHG0r4gBDAIRhfHiOlq6oEkqw.woff2\",weight:\"700\"},{family:\"Inter\",source:\"framer\",style:\"italic\",unicodeRange:\"U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF\",url:\"https://framerusercontent.com/assets/WZ367JPwf9bRW6LdTHN8rXgSjw.woff2\",weight:\"700\"},{family:\"Inter\",source:\"framer\",style:\"italic\",unicodeRange:\"U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD\",url:\"https://framerusercontent.com/assets/QxmhnWTzLtyjIiZcfaLIJ8EFBXU.woff2\",weight:\"700\"},{family:\"Inter\",source:\"framer\",style:\"italic\",unicodeRange:\"U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB\",url:\"https://framerusercontent.com/assets/2A4Xx7CngadFGlVV4xrO06OBHY.woff2\",weight:\"700\"}]}];export const css=['.framer-EjFVO .framer-styles-preset-bcuueg:not(.rich-text-wrapper), .framer-EjFVO .framer-styles-preset-bcuueg.rich-text-wrapper h3 { --framer-font-family: \"Neometric Extra Bold\", \"Neometric Extra Bold Placeholder\", sans-serif; --framer-font-family-bold: \"Inter\", sans-serif; --framer-font-family-bold-italic: \"Inter\", sans-serif; --framer-font-family-italic: \"Inter\", \"Inter Placeholder\", sans-serif; --framer-font-open-type-features: normal; --framer-font-size: 96px; --framer-font-style: normal; --framer-font-style-bold: normal; --framer-font-style-bold-italic: italic; --framer-font-style-italic: italic; --framer-font-variation-axes: normal; --framer-font-weight: 400; --framer-font-weight-bold: 900; --framer-font-weight-bold-italic: 900; --framer-font-weight-italic: 700; --framer-letter-spacing: -0.02em; --framer-line-height: 80%; --framer-paragraph-spacing: 40px; --framer-text-alignment: center; --framer-text-color: var(--token-5b7c14a4-6eac-4fec-b1dd-68cde4248eb3, #ffffff); --framer-text-decoration: none; --framer-text-stroke-color: initial; --framer-text-stroke-width: initial; --framer-text-transform: none; }','@media (max-width: 1199px) and (min-width: 810px) { .framer-EjFVO .framer-styles-preset-bcuueg:not(.rich-text-wrapper), .framer-EjFVO .framer-styles-preset-bcuueg.rich-text-wrapper h3 { --framer-font-family: \"Neometric Extra Bold\", \"Neometric Extra Bold Placeholder\", sans-serif; --framer-font-family-bold: \"Inter\", sans-serif; --framer-font-family-bold-italic: \"Inter\", sans-serif; --framer-font-family-italic: \"Inter\", \"Inter Placeholder\", sans-serif; --framer-font-open-type-features: normal; --framer-font-size: 64px; --framer-font-style: normal; --framer-font-style-bold: normal; --framer-font-style-bold-italic: italic; --framer-font-style-italic: italic; --framer-font-variation-axes: normal; --framer-font-weight: 400; --framer-font-weight-bold: 900; --framer-font-weight-bold-italic: 900; --framer-font-weight-italic: 700; --framer-letter-spacing: -0.02em; --framer-line-height: 80%; --framer-paragraph-spacing: 40px; --framer-text-alignment: center; --framer-text-color: var(--token-5b7c14a4-6eac-4fec-b1dd-68cde4248eb3, #ffffff); --framer-text-decoration: none; --framer-text-stroke-color: initial; --framer-text-stroke-width: initial; --framer-text-transform: none; } }','@media (max-width: 809px) and (min-width: 0px) { .framer-EjFVO .framer-styles-preset-bcuueg:not(.rich-text-wrapper), .framer-EjFVO .framer-styles-preset-bcuueg.rich-text-wrapper h3 { --framer-font-family: \"Neometric Extra Bold\", \"Neometric Extra Bold Placeholder\", sans-serif; --framer-font-family-bold: \"Inter\", sans-serif; --framer-font-family-bold-italic: \"Inter\", sans-serif; --framer-font-family-italic: \"Inter\", \"Inter Placeholder\", sans-serif; --framer-font-open-type-features: normal; --framer-font-size: 48px; --framer-font-style: normal; --framer-font-style-bold: normal; --framer-font-style-bold-italic: italic; --framer-font-style-italic: italic; --framer-font-variation-axes: normal; --framer-font-weight: 400; --framer-font-weight-bold: 900; --framer-font-weight-bold-italic: 900; --framer-font-weight-italic: 700; --framer-letter-spacing: -0.02em; --framer-line-height: 80%; --framer-paragraph-spacing: 40px; --framer-text-alignment: center; --framer-text-color: var(--token-5b7c14a4-6eac-4fec-b1dd-68cde4248eb3, #ffffff); --framer-text-decoration: none; --framer-text-stroke-color: initial; --framer-text-stroke-width: initial; --framer-text-transform: none; } }'];export const className=\"framer-EjFVO\";\nexport const __FramerMetadata__ = {\"exports\":{\"fonts\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"css\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"className\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// Generated by Framer (46f1e3d)\nimport{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{addFonts,addPropertyControls,ComponentViewportProvider,ControlType,cx,getFonts,RichText,useComponentViewport,useLocaleInfo,useVariantState,withCSS,withFX}from\"framer\";import{LayoutGroup,motion,MotionConfigContext}from\"framer-motion\";import*as React from\"react\";import ButtonArrow from\"https://framerusercontent.com/modules/yE5k123jilgQsF25xB5q/LFmCm0Xy2EAQlhhaPEDo/eVMvUyw22.js\";const ButtonArrowFonts=getFonts(ButtonArrow);const MotionDivWithFX=withFX(motion.div);const enabledGestures={Y1d67A9sK:{hover:true,pressed:true}};const cycleOrder=[\"Y1d67A9sK\"];const serializationHash=\"framer-yM6gZ\";const variantClassNames={Y1d67A9sK:\"framer-v-sijo87\"};function addPropertyOverrides(overrides,...variants){const nextOverrides={};variants?.forEach(variant=>variant&&Object.assign(nextOverrides,overrides[variant]));return nextOverrides;}const animation={opacity:0,rotate:0,rotateX:0,rotateY:0,scale:1,skewX:0,skewY:0,x:0,y:40};const transition1={damping:40,delay:.1,mass:5,stiffness:200,type:\"spring\"};const transition2={delay:0,duration:.3,ease:[.44,0,.56,1],type:\"tween\"};const transition3={delay:0,duration:.4,ease:[0,0,1,1],type:\"tween\"};const animation1={opacity:1,rotate:0,rotateX:0,rotateY:0,scale:1,skewX:0,skewY:0,x:4,y:0};const Transition=({value,children})=>{const config=React.useContext(MotionConfigContext);const transition=value??config.transition;const contextValue=React.useMemo(()=>({...config,transition}),[JSON.stringify(transition)]);return /*#__PURE__*/_jsx(MotionConfigContext.Provider,{value:contextValue,children:children});};const Variants=motion(React.Fragment);const getProps=({height,id,opacityDetails,titleDetails,visibleDetails,width,...props})=>{return{...props,pInYJT33v:visibleDetails??props.pInYJT33v??true,PopCQL9d9:opacityDetails??props.PopCQL9d9??1,s4q4HsoCI:titleDetails??props.s4q4HsoCI??\"Learn more\"};};const createLayoutDependency=(props,variants)=>variants.join(\"-\")+props.layoutDependency;const Component=/*#__PURE__*/React.forwardRef(function(props,ref){const{activeLocale,setLocale}=useLocaleInfo();const{style,className,layoutId,variant,pInYJT33v,PopCQL9d9,s4q4HsoCI,...restProps}=getProps(props);const{baseVariant,classNames,gestureVariant,setGestureState,setVariant,variants}=useVariantState({cycleOrder,defaultVariant:\"Y1d67A9sK\",enabledGestures,variant,variantClassNames});const layoutDependency=createLayoutDependency(props,variants);const ref1=React.useRef(null);const defaultLayoutId=React.useId();const sharedStyleClassNames=[];const componentViewport=useComponentViewport();return /*#__PURE__*/_jsx(LayoutGroup,{id:layoutId??defaultLayoutId,children:/*#__PURE__*/_jsx(Variants,{animate:variants,initial:false,children:/*#__PURE__*/_jsx(Transition,{value:transition2,children:/*#__PURE__*/_jsx(MotionDivWithFX,{...restProps,__framer__animate:{transition:transition1},__framer__animateOnce:true,__framer__enter:animation,__framer__styleAppearEffectEnabled:true,__framer__threshold:0,__perspectiveFX:false,__smartComponentFX:true,__targetOpacity:1,className:cx(serializationHash,...sharedStyleClassNames,\"framer-sijo87\",className,classNames),\"data-framer-name\":\"Default\",layoutDependency:layoutDependency,layoutId:\"Y1d67A9sK\",onHoverEnd:()=>setGestureState({isHovered:false}),onHoverStart:()=>setGestureState({isHovered:true}),onTap:()=>setGestureState({isPressed:false}),onTapCancel:()=>setGestureState({isPressed:false}),onTapStart:()=>setGestureState({isPressed:true}),ref:ref??ref1,style:{backgroundColor:\"rgba(0, 0, 0, 0)\",borderBottomLeftRadius:0,borderBottomRightRadius:0,borderTopLeftRadius:0,borderTopRightRadius:0,...style},variants:{\"Y1d67A9sK-pressed\":{backgroundColor:\"rgba(34, 34, 34, 0.4)\",borderBottomLeftRadius:8,borderBottomRightRadius:8,borderTopLeftRadius:8,borderTopRightRadius:8}},...addPropertyOverrides({\"Y1d67A9sK-hover\":{\"data-framer-name\":undefined},\"Y1d67A9sK-pressed\":{\"data-framer-name\":undefined}},baseVariant,gestureVariant),children:pInYJT33v&&/*#__PURE__*/_jsxs(motion.div,{className:\"framer-10g4xj3\",\"data-framer-name\":\"Content\",layoutDependency:layoutDependency,layoutId:\"s2R26stfS\",children:[/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{style:{\"--font-selector\":\"R0Y7SW50ZXItcmVndWxhcg==\",\"--framer-font-family\":'\"Inter\", \"Inter Placeholder\", sans-serif',\"--framer-line-height\":\"80%\",\"--framer-text-alignment\":\"center\",\"--framer-text-color\":\"var(--extracted-r6o4lv, var(--token-5b7c14a4-6eac-4fec-b1dd-68cde4248eb3, rgb(255, 255, 255)))\"},children:\"Learn more\"})}),className:\"framer-gw2f50\",\"data-framer-name\":\"Link\",fonts:[\"GF;Inter-regular\"],layoutDependency:layoutDependency,layoutId:\"SSql7Na9_\",style:{\"--extracted-r6o4lv\":\"var(--token-5b7c14a4-6eac-4fec-b1dd-68cde4248eb3, rgb(255, 255, 255))\",\"--framer-paragraph-spacing\":\"0px\",opacity:PopCQL9d9},text:s4q4HsoCI,variants:{\"Y1d67A9sK-hover\":{\"--extracted-r6o4lv\":\"var(--token-4b3e3bf3-b87c-4125-8512-8f6de91046c2, rgb(255, 68, 0))\"},\"Y1d67A9sK-pressed\":{\"--extracted-r6o4lv\":\"var(--token-4b3e3bf3-b87c-4125-8512-8f6de91046c2, rgb(255, 68, 0))\"}},verticalAlignment:\"center\",withExternalLayout:true,...addPropertyOverrides({\"Y1d67A9sK-hover\":{children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{style:{\"--font-selector\":\"R0Y7SW50ZXItcmVndWxhcg==\",\"--framer-font-family\":'\"Inter\", \"Inter Placeholder\", sans-serif',\"--framer-line-height\":\"80%\",\"--framer-text-alignment\":\"center\",\"--framer-text-color\":\"var(--extracted-r6o4lv, var(--token-4b3e3bf3-b87c-4125-8512-8f6de91046c2, rgb(255, 68, 0)))\"},children:\"Learn more\"})})},\"Y1d67A9sK-pressed\":{children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{style:{\"--font-selector\":\"R0Y7SW50ZXItcmVndWxhcg==\",\"--framer-font-family\":'\"Inter\", \"Inter Placeholder\", sans-serif',\"--framer-line-height\":\"80%\",\"--framer-text-alignment\":\"center\",\"--framer-text-color\":\"var(--extracted-r6o4lv, var(--token-4b3e3bf3-b87c-4125-8512-8f6de91046c2, rgb(255, 68, 0)))\"},children:\"Learn more\"})})}},baseVariant,gestureVariant)}),/*#__PURE__*/_jsx(ComponentViewportProvider,{children:/*#__PURE__*/_jsx(MotionDivWithFX,{className:\"framer-18n32qo-container\",layoutDependency:layoutDependency,layoutId:\"gm4YZokRi-container\",...addPropertyOverrides({\"Y1d67A9sK-hover\":{__framer__loop:animation1,__framer__loopEffectEnabled:true,__framer__loopRepeatDelay:0,__framer__loopRepeatType:\"mirror\",__framer__loopTransition:transition3,__perspectiveFX:false,__smartComponentFX:true,__targetOpacity:1},\"Y1d67A9sK-pressed\":{__framer__loop:animation1,__framer__loopEffectEnabled:true,__framer__loopRepeatDelay:0,__framer__loopRepeatType:\"mirror\",__framer__loopTransition:transition3,__perspectiveFX:false,__smartComponentFX:true,__targetOpacity:1}},baseVariant,gestureVariant),children:/*#__PURE__*/_jsx(ButtonArrow,{height:\"100%\",id:\"gm4YZokRi\",layoutId:\"gm4YZokRi\",variant:\"YqYh4KQAs\",width:\"100%\",...addPropertyOverrides({\"Y1d67A9sK-hover\":{variant:\"T3424FGAN\"},\"Y1d67A9sK-pressed\":{variant:\"T3424FGAN\"}},baseVariant,gestureVariant)})})})]})})})})});});const css=[\"@supports (aspect-ratio: 1) { body { --framer-aspect-ratio-supported: auto; } }\",\".framer-yM6gZ.framer-19w70bb, .framer-yM6gZ .framer-19w70bb { display: block; }\",\".framer-yM6gZ.framer-sijo87 { align-content: flex-end; align-items: flex-end; cursor: pointer; display: flex; flex-direction: row; flex-wrap: nowrap; gap: 8px; height: min-content; justify-content: center; overflow: visible; padding: 0px; position: relative; width: min-content; }\",\".framer-yM6gZ .framer-10g4xj3 { align-content: center; align-items: center; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; gap: 8px; height: min-content; justify-content: center; overflow: visible; padding: 12px; position: relative; width: min-content; }\",\".framer-yM6gZ .framer-gw2f50 { flex: none; height: auto; position: relative; white-space: pre; width: auto; }\",\".framer-yM6gZ .framer-18n32qo-container { flex: none; height: auto; position: relative; width: auto; }\",\"@supports (background: -webkit-named-image(i)) and (not (font-palette:dark)) { .framer-yM6gZ.framer-sijo87, .framer-yM6gZ .framer-10g4xj3 { gap: 0px; } .framer-yM6gZ.framer-sijo87 > *, .framer-yM6gZ .framer-10g4xj3 > * { margin: 0px; margin-left: calc(8px / 2); margin-right: calc(8px / 2); } .framer-yM6gZ.framer-sijo87 > :first-child, .framer-yM6gZ .framer-10g4xj3 > :first-child { margin-left: 0px; } .framer-yM6gZ.framer-sijo87 > :last-child, .framer-yM6gZ .framer-10g4xj3 > :last-child { margin-right: 0px; } }\"];/**\n * This is a generated Framer component.\n * @framerIntrinsicHeight 37\n * @framerIntrinsicWidth 124.5\n * @framerCanvasComponentVariantDetails {\"propertyName\":\"variant\",\"data\":{\"default\":{\"layout\":[\"auto\",\"auto\"]},\"xlFgfV1An\":{\"layout\":[\"auto\",\"auto\"]},\"s3K5ZK0XH\":{\"layout\":[\"auto\",\"auto\"]}}}\n * @framerVariables {\"pInYJT33v\":\"visibleDetails\",\"PopCQL9d9\":\"opacityDetails\",\"s4q4HsoCI\":\"titleDetails\"}\n * @framerImmutableVariables true\n * @framerDisplayContentsDiv false\n * @framerComponentViewportWidth true\n */const FrameryeDFy9oDO=withCSS(Component,css,\"framer-yM6gZ\");export default FrameryeDFy9oDO;FrameryeDFy9oDO.displayName=\"Nav / Link \\xb7\\xa0Features\";FrameryeDFy9oDO.defaultProps={height:37,width:124.5};addPropertyControls(FrameryeDFy9oDO,{pInYJT33v:{defaultValue:true,title:\"Visible \\xb7\\xa0Details\",type:ControlType.Boolean},PopCQL9d9:{defaultValue:1,max:1,min:0,step:.01,title:\"Opacity \\xb7\\xa0Details\",type:ControlType.Number},s4q4HsoCI:{defaultValue:\"Learn more\",displayTextArea:false,title:\"Title \\xb7\\xa0Details\",type:ControlType.String}});addFonts(FrameryeDFy9oDO,[{explicitInter:true,fonts:[{family:\"Inter\",source:\"google\",style:\"normal\",url:\"https://fonts.gstatic.com/s/inter/v13/UcCO3FwrK3iLTeHuS_fvQtMwCp50KnMw2boKoduKmMEVuLyfMZ1rib2Bg-4.woff2\",weight:\"400\"}]},...ButtonArrowFonts],{supportsExplicitInterCodegen:true});\nexport const __FramerMetadata__ = {\"exports\":{\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"default\":{\"type\":\"reactComponent\",\"name\":\"FrameryeDFy9oDO\",\"slots\":[],\"annotations\":{\"framerImmutableVariables\":\"true\",\"framerIntrinsicHeight\":\"37\",\"framerContractVersion\":\"1\",\"framerIntrinsicWidth\":\"124.5\",\"framerComponentViewportWidth\":\"true\",\"framerVariables\":\"{\\\"pInYJT33v\\\":\\\"visibleDetails\\\",\\\"PopCQL9d9\\\":\\\"opacityDetails\\\",\\\"s4q4HsoCI\\\":\\\"titleDetails\\\"}\",\"framerDisplayContentsDiv\":\"false\",\"framerCanvasComponentVariantDetails\":\"{\\\"propertyName\\\":\\\"variant\\\",\\\"data\\\":{\\\"default\\\":{\\\"layout\\\":[\\\"auto\\\",\\\"auto\\\"]},\\\"xlFgfV1An\\\":{\\\"layout\\\":[\\\"auto\\\",\\\"auto\\\"]},\\\"s3K5ZK0XH\\\":{\\\"layout\\\":[\\\"auto\\\",\\\"auto\\\"]}}}\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// Generated by Framer (90417e1)\nimport{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{addFonts,addPropertyControls,ComponentViewportProvider,ControlType,cx,getFonts,getFontsFromSharedStyle,RichText,useActiveVariantCallback,useComponentViewport,useLocaleInfo,useVariantState,withCSS,withFX}from\"framer\";import{LayoutGroup,motion,MotionConfigContext}from\"framer-motion\";import*as React from\"react\";import*as sharedStyle1 from\"https://framerusercontent.com/modules/wVSc0y2X69C52S8rs7Nu/PptXaWEq94i4USJ7pbw5/ChmzFk8BY.js\";import*as sharedStyle from\"https://framerusercontent.com/modules/uSE0Cgxpc39B9AO7W0hM/xlhOHuNyvzaA7c0utVnn/v3idjVoPZ.js\";import NavLinkFeatures from\"https://framerusercontent.com/modules/8LZHohTQhhveWWXlGWB9/smRKCjsMUSxOkO6NPWHw/yeDFy9oDO.js\";const MotionDivWithFX=withFX(motion.div);const NavLinkFeaturesFonts=getFonts(NavLinkFeatures);const cycleOrder=[\"wauPxGfxR\",\"c8B7AT4nX\"];const serializationHash=\"framer-opCIP\";const variantClassNames={c8B7AT4nX:\"framer-v-180rouy\",wauPxGfxR:\"framer-v-re6a7j\"};function addPropertyOverrides(overrides,...variants){const nextOverrides={};variants?.forEach(variant=>variant&&Object.assign(nextOverrides,overrides[variant]));return nextOverrides;}const transition1={damping:60,delay:0,mass:1,stiffness:500,type:\"spring\"};const animation={opacity:0,rotate:0,rotateX:0,rotateY:0,scale:1,skewX:0,skewY:0,transformPerspective:1200,x:0,y:0};const transition2={damping:40,delay:0,mass:5,stiffness:200,type:\"spring\"};const animation1={opacity:0,rotate:0,rotateX:0,rotateY:0,scale:1,skewX:0,skewY:0,transformPerspective:1200,x:0,y:32};const transition3={damping:40,delay:.1,mass:5,stiffness:200,type:\"spring\"};const Transition=({value,children})=>{const config=React.useContext(MotionConfigContext);const transition=value??config.transition;const contextValue=React.useMemo(()=>({...config,transition}),[JSON.stringify(transition)]);return /*#__PURE__*/_jsx(MotionConfigContext.Provider,{value:contextValue,children:children});};const Variants=motion(React.Fragment);const humanReadableVariantMap={\"Titles \\xb7\\xa0Phone\":\"c8B7AT4nX\",Titles:\"wauPxGfxR\"};const getProps=({gapPLink,gapTitleLTitleR,gapTitleP,height,id,learnMore,opacityLearnMore,pColor,pText,scrollSection,tap,titleColor,titleLeft,titleRight,visibleLearnMore,visibleTitleRight,width,...props})=>{return{...props,brA_6aT85:pText??props.brA_6aT85??\"Feature Description\",eEC9eWT9h:titleColor??props.eEC9eWT9h??\"var(--token-5b7c14a4-6eac-4fec-b1dd-68cde4248eb3, rgb(255, 255, 255))\",Ifo7cF6tv:gapTitleP??props.Ifo7cF6tv??32,iqiV5Kz1M:visibleTitleRight??props.iqiV5Kz1M??true,laYuvOoBY:scrollSection??props.laYuvOoBY,MODN0cWfc:gapTitleLTitleR??props.MODN0cWfc??16,n_YGjSjmj:visibleLearnMore??props.n_YGjSjmj??true,nzc8fG2Hg:learnMore??props.nzc8fG2Hg??\"How it works\",OU7UFlw4D:titleLeft??props.OU7UFlw4D??\"Gage\",s9olhPa3Y:opacityLearnMore??props.s9olhPa3Y??1,TCoOeHPYY:titleRight??props.TCoOeHPYY??\"Score\",tpxTggplJ:tap??props.tpxTggplJ,variant:humanReadableVariantMap[props.variant]??props.variant??\"wauPxGfxR\",WOAFeRQQH:gapPLink??props.WOAFeRQQH??16,Z7Bzftnh3:pColor??props.Z7Bzftnh3??\"var(--token-32240d71-c083-469d-9ce8-28ea75897da6, rgb(204, 204, 204))\"};};const createLayoutDependency=(props,variants)=>{if(props.layoutDependency)return variants.join(\"-\")+props.layoutDependency;return variants.join(\"-\");};const Component=/*#__PURE__*/React.forwardRef(function(props,ref){const{activeLocale,setLocale}=useLocaleInfo();const{style,className,layoutId,variant,Ifo7cF6tv,WOAFeRQQH,MODN0cWfc,OU7UFlw4D,TCoOeHPYY,eEC9eWT9h,brA_6aT85,Z7Bzftnh3,iqiV5Kz1M,laYuvOoBY,nzc8fG2Hg,n_YGjSjmj,s9olhPa3Y,tpxTggplJ,...restProps}=getProps(props);const{baseVariant,classNames,clearLoadingGesture,gestureHandlers,gestureVariant,isLoading,setGestureState,setVariant,variants}=useVariantState({cycleOrder,defaultVariant:\"wauPxGfxR\",variant,variantClassNames});const layoutDependency=createLayoutDependency(props,variants);const{activeVariantCallback,delay}=useActiveVariantCallback(baseVariant);const onTap3oxkyr=activeVariantCallback(async(...args)=>{setGestureState({isPressed:false});if(tpxTggplJ){const res=await tpxTggplJ(...args);if(res===false)return false;}});const ref1=React.useRef(null);const defaultLayoutId=React.useId();const sharedStyleClassNames=[sharedStyle.className,sharedStyle1.className];const componentViewport=useComponentViewport();return /*#__PURE__*/_jsx(LayoutGroup,{id:layoutId??defaultLayoutId,children:/*#__PURE__*/_jsx(Variants,{animate:variants,initial:false,children:/*#__PURE__*/_jsx(Transition,{value:transition1,children:/*#__PURE__*/_jsxs(motion.div,{...restProps,...gestureHandlers,className:cx(serializationHash,...sharedStyleClassNames,\"framer-re6a7j\",className,classNames),\"data-framer-name\":\"Titles\",\"data-highlight\":true,layoutDependency:layoutDependency,layoutId:\"wauPxGfxR\",onTap:onTap3oxkyr,ref:ref??ref1,style:{\"--1b5srgu\":Ifo7cF6tv,...style},...addPropertyOverrides({c8B7AT4nX:{\"data-framer-name\":\"Titles \\xb7\\xa0Phone\"}},baseVariant,gestureVariant),children:[/*#__PURE__*/_jsxs(motion.div,{className:\"framer-j38ei6\",\"data-framer-name\":\"H3\",layoutDependency:layoutDependency,layoutId:\"CMdrmYSJO\",style:{\"--4ogvhg\":MODN0cWfc},children:[/*#__PURE__*/_jsx(MotionDivWithFX,{__framer__animate:{transition:transition2},__framer__animateOnce:true,__framer__enter:animation,__framer__styleAppearEffectEnabled:true,__framer__targets:[{ref:laYuvOoBY,target:\"animate\"}],__framer__threshold:.5,__perspectiveFX:false,__smartComponentFX:true,__targetOpacity:1,className:\"framer-14ox9ne\",\"data-framer-name\":\"Title Left\",layoutDependency:layoutDependency,layoutId:\"KPcJ7VsN9\",style:{transformPerspective:1200},children:/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.h3,{className:\"framer-styles-preset-bcuueg\",\"data-styles-preset\":\"v3idjVoPZ\",style:{\"--framer-text-color\":\"var(--extracted-a0htzi, var(--variable-reference-eEC9eWT9h-xWUxvpnPr))\"},children:\"Gage\"})}),className:\"framer-18csygl\",\"data-framer-name\":\"Title Left\",fonts:[\"Inter\"],layoutDependency:layoutDependency,layoutId:\"z8q4ZTLPk\",style:{\"--extracted-a0htzi\":\"var(--variable-reference-eEC9eWT9h-xWUxvpnPr)\",\"--framer-paragraph-spacing\":\"0px\",\"--variable-reference-eEC9eWT9h-xWUxvpnPr\":eEC9eWT9h},text:OU7UFlw4D,verticalAlignment:\"center\",withExternalLayout:true})}),/*#__PURE__*/_jsx(MotionDivWithFX,{__framer__animate:{transition:transition2},__framer__animateOnce:true,__framer__enter:animation,__framer__styleAppearEffectEnabled:true,__framer__targets:[{ref:laYuvOoBY,target:\"animate\"}],__framer__threshold:.5,__perspectiveFX:false,__smartComponentFX:true,__targetOpacity:1,className:\"framer-19dfsth\",\"data-framer-name\":\"Title Right\",layoutDependency:layoutDependency,layoutId:\"WclXfK4Wg\",style:{transformPerspective:1200},children:iqiV5Kz1M&&/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.h3,{className:\"framer-styles-preset-bcuueg\",\"data-styles-preset\":\"v3idjVoPZ\",style:{\"--framer-text-color\":\"var(--extracted-a0htzi, var(--variable-reference-eEC9eWT9h-xWUxvpnPr))\"},children:\"Score\"})}),className:\"framer-pkrzs3\",\"data-framer-name\":\"Title Right\",fonts:[\"Inter\"],layoutDependency:layoutDependency,layoutId:\"C_ZX8DD6s\",style:{\"--extracted-a0htzi\":\"var(--variable-reference-eEC9eWT9h-xWUxvpnPr)\",\"--framer-paragraph-spacing\":\"0px\",\"--variable-reference-eEC9eWT9h-xWUxvpnPr\":eEC9eWT9h},text:TCoOeHPYY,verticalAlignment:\"center\",withExternalLayout:true})})]}),/*#__PURE__*/_jsxs(motion.div,{className:\"framer-cd1e7i\",\"data-framer-name\":\"Message + Link\",layoutDependency:layoutDependency,layoutId:\"n9__7GOIB\",style:{\"--1alz1fa\":WOAFeRQQH},children:[/*#__PURE__*/_jsx(MotionDivWithFX,{__framer__animate:{transition:transition3},__framer__animateOnce:true,__framer__enter:animation1,__framer__styleAppearEffectEnabled:true,__framer__targets:[{ref:laYuvOoBY,target:\"animate\"}],__framer__threshold:.5,__perspectiveFX:false,__smartComponentFX:true,__targetOpacity:1,className:\"framer-r9t0bm\",\"data-framer-name\":\"P\",layoutDependency:layoutDependency,layoutId:\"TDdv85hqF\",style:{transformPerspective:1200},children:/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{style:{\"--font-selector\":\"R0Y7SW50ZXItcmVndWxhcg==\",\"--framer-font-family\":'\"Inter\", \"Inter Placeholder\", sans-serif',\"--framer-font-size\":\"22px\",\"--framer-line-height\":\"140%\",\"--framer-text-alignment\":\"center\",\"--framer-text-color\":\"var(--extracted-r6o4lv, var(--variable-reference-Z7Bzftnh3-xWUxvpnPr))\"},children:\"Feature Description\"})}),className:\"framer-2ygxw2\",\"data-framer-name\":\"Make accomplishments tangible, recognition timely, and ensure both are meaningful and measurable.\",fonts:[\"GF;Inter-regular\"],layoutDependency:layoutDependency,layoutId:\"WRlwLjxrc\",style:{\"--extracted-r6o4lv\":\"var(--variable-reference-Z7Bzftnh3-xWUxvpnPr)\",\"--framer-paragraph-spacing\":\"0px\",\"--variable-reference-Z7Bzftnh3-xWUxvpnPr\":Z7Bzftnh3},text:brA_6aT85,verticalAlignment:\"center\",withExternalLayout:true,...addPropertyOverrides({c8B7AT4nX:{children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{className:\"framer-styles-preset-3amslo\",\"data-styles-preset\":\"ChmzFk8BY\",style:{\"--framer-text-alignment\":\"center\",\"--framer-text-color\":\"var(--extracted-r6o4lv, var(--variable-reference-Z7Bzftnh3-xWUxvpnPr))\"},children:\"Feature Description\"})}),fonts:[\"Inter\"]}},baseVariant,gestureVariant)})}),/*#__PURE__*/_jsx(ComponentViewportProvider,{height:37,y:(componentViewport?.y||0)+0+(((componentViewport?.height||192.5)-0-283.8)/2+76.80000000000001+0)+0+170,...addPropertyOverrides({c8B7AT4nX:{y:(componentViewport?.y||0)+0+(((componentViewport?.height||185.5)-0-233.8)/2+76.80000000000001+0)+0+120}},baseVariant,gestureVariant),children:/*#__PURE__*/_jsx(motion.div,{className:\"framer-1ai47qi-container\",layoutDependency:layoutDependency,layoutId:\"WhdgbOtEW-container\",children:/*#__PURE__*/_jsx(NavLinkFeatures,{height:\"100%\",id:\"WhdgbOtEW\",layoutId:\"WhdgbOtEW\",pInYJT33v:n_YGjSjmj,PopCQL9d9:s9olhPa3Y,s4q4HsoCI:nzc8fG2Hg,width:\"100%\"})})})]})]})})})});});const css=[\"@supports (aspect-ratio: 1) { body { --framer-aspect-ratio-supported: auto; } }\",\".framer-opCIP.framer-ymg2f5, .framer-opCIP .framer-ymg2f5 { display: block; }\",\".framer-opCIP.framer-re6a7j { align-content: center; align-items: center; cursor: pointer; display: flex; flex-direction: column; flex-wrap: nowrap; gap: calc(max(0, var(--1b5srgu)) * 1px); height: min-content; justify-content: center; overflow: visible; padding: 0px; position: relative; width: min-content; }\",\".framer-opCIP .framer-j38ei6 { align-content: center; align-items: center; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; gap: calc(max(0, var(--4ogvhg)) * 1px); height: min-content; justify-content: center; overflow: visible; padding: 0px; position: relative; width: min-content; }\",\".framer-opCIP .framer-14ox9ne, .framer-opCIP .framer-19dfsth { align-content: center; align-items: center; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; gap: 8px; height: min-content; justify-content: center; overflow: visible; padding: 0px; position: relative; width: min-content; }\",\".framer-opCIP .framer-18csygl, .framer-opCIP .framer-pkrzs3 { flex: none; height: auto; position: relative; white-space: pre; width: auto; }\",\".framer-opCIP .framer-cd1e7i { align-content: center; align-items: center; align-self: stretch; display: flex; flex: none; flex-direction: column; flex-wrap: nowrap; gap: 16px; height: min-content; justify-content: center; overflow: visible; padding: 0px; position: relative; width: auto; }\",\".framer-opCIP .framer-r9t0bm { align-content: center; align-items: center; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; gap: 0px; height: min-content; justify-content: center; max-width: 600px; overflow: visible; padding: 0px; position: relative; width: 100%; }\",\".framer-opCIP .framer-2ygxw2 { flex: 1 0 0px; height: auto; position: relative; white-space: pre-wrap; width: 1px; word-break: break-word; word-wrap: break-word; }\",\".framer-opCIP .framer-1ai47qi-container { flex: none; height: auto; position: relative; width: auto; }\",\"@supports (background: -webkit-named-image(i)) and (not (font-palette:dark)) { .framer-opCIP.framer-re6a7j, .framer-opCIP .framer-j38ei6, .framer-opCIP .framer-14ox9ne, .framer-opCIP .framer-19dfsth, .framer-opCIP .framer-cd1e7i, .framer-opCIP .framer-r9t0bm { gap: 0px; } .framer-opCIP.framer-re6a7j > * { margin: 0px; margin-bottom: calc(calc(max(0, var(--1b5srgu)) * 1px) / 2); margin-top: calc(calc(max(0, var(--1b5srgu)) * 1px) / 2); } .framer-opCIP.framer-re6a7j > :first-child, .framer-opCIP .framer-cd1e7i > :first-child { margin-top: 0px; } .framer-opCIP.framer-re6a7j > :last-child, .framer-opCIP .framer-cd1e7i > :last-child { margin-bottom: 0px; } .framer-opCIP .framer-j38ei6 > * { margin: 0px; margin-left: calc(calc(max(0, var(--4ogvhg)) * 1px) / 2); margin-right: calc(calc(max(0, var(--4ogvhg)) * 1px) / 2); } .framer-opCIP .framer-j38ei6 > :first-child, .framer-opCIP .framer-14ox9ne > :first-child, .framer-opCIP .framer-19dfsth > :first-child, .framer-opCIP .framer-r9t0bm > :first-child { margin-left: 0px; } .framer-opCIP .framer-j38ei6 > :last-child, .framer-opCIP .framer-14ox9ne > :last-child, .framer-opCIP .framer-19dfsth > :last-child, .framer-opCIP .framer-r9t0bm > :last-child { margin-right: 0px; } .framer-opCIP .framer-14ox9ne > *, .framer-opCIP .framer-19dfsth > * { margin: 0px; margin-left: calc(8px / 2); margin-right: calc(8px / 2); } .framer-opCIP .framer-cd1e7i > * { margin: 0px; margin-bottom: calc(16px / 2); margin-top: calc(16px / 2); } .framer-opCIP .framer-r9t0bm > * { margin: 0px; margin-left: calc(0px / 2); margin-right: calc(0px / 2); } }\",\".framer-opCIP.framer-v-180rouy.framer-re6a7j { width: 340px; }\",\".framer-opCIP.framer-v-180rouy .framer-cd1e7i { align-self: unset; gap: calc(max(0, var(--1alz1fa)) * 1px); width: 100%; }\",\".framer-opCIP.framer-v-180rouy .framer-r9t0bm { max-width: 348px; }\",\"@supports (background: -webkit-named-image(i)) and (not (font-palette:dark)) { .framer-opCIP.framer-v-180rouy .framer-cd1e7i { gap: 0px; } .framer-opCIP.framer-v-180rouy .framer-cd1e7i > * { margin: 0px; margin-bottom: calc(calc(max(0, var(--1alz1fa)) * 1px) / 2); margin-top: calc(calc(max(0, var(--1alz1fa)) * 1px) / 2); } .framer-opCIP.framer-v-180rouy .framer-cd1e7i > :first-child { margin-top: 0px; } .framer-opCIP.framer-v-180rouy .framer-cd1e7i > :last-child { margin-bottom: 0px; } }\",...sharedStyle.css,...sharedStyle1.css];/**\n * This is a generated Framer component.\n * @framerIntrinsicHeight 192.5\n * @framerIntrinsicWidth 554.5\n * @framerCanvasComponentVariantDetails {\"propertyName\":\"variant\",\"data\":{\"default\":{\"layout\":[\"auto\",\"auto\"]},\"c8B7AT4nX\":{\"layout\":[\"fixed\",\"auto\"]}}}\n * @framerVariables {\"Ifo7cF6tv\":\"gapTitleP\",\"WOAFeRQQH\":\"gapPLink\",\"MODN0cWfc\":\"gapTitleLTitleR\",\"OU7UFlw4D\":\"titleLeft\",\"TCoOeHPYY\":\"titleRight\",\"eEC9eWT9h\":\"titleColor\",\"brA_6aT85\":\"pText\",\"Z7Bzftnh3\":\"pColor\",\"iqiV5Kz1M\":\"visibleTitleRight\",\"laYuvOoBY\":\"scrollSection\",\"nzc8fG2Hg\":\"learnMore\",\"n_YGjSjmj\":\"visibleLearnMore\",\"s9olhPa3Y\":\"opacityLearnMore\",\"tpxTggplJ\":\"tap\"}\n * @framerImmutableVariables true\n * @framerDisplayContentsDiv false\n * @framerComponentViewportWidth true\n */const FramerxWUxvpnPr=withCSS(Component,css,\"framer-opCIP\");export default FramerxWUxvpnPr;FramerxWUxvpnPr.displayName=\"Card / Typography\";FramerxWUxvpnPr.defaultProps={height:192.5,width:554.5};addPropertyControls(FramerxWUxvpnPr,{variant:{options:[\"wauPxGfxR\",\"c8B7AT4nX\"],optionTitles:[\"Titles\",\"Titles \\xb7\\xa0Phone\"],title:\"Variant\",type:ControlType.Enum},Ifo7cF6tv:{defaultValue:32,min:0,title:\"Gap \\xb7 Title + P\",type:ControlType.Number},WOAFeRQQH:{defaultValue:16,min:0,title:\"Gap \\xb7\\xa0P + Link\",type:ControlType.Number},MODN0cWfc:{defaultValue:16,min:0,title:\"Gap \\xb7\\xa0Title L + Title R\",type:ControlType.Number},OU7UFlw4D:{defaultValue:\"Gage\",displayTextArea:false,title:\"Title Left\",type:ControlType.String},TCoOeHPYY:{defaultValue:\"Score\",displayTextArea:false,title:\"Title Right\",type:ControlType.String},eEC9eWT9h:{defaultValue:'var(--token-5b7c14a4-6eac-4fec-b1dd-68cde4248eb3, rgb(255, 255, 255)) /* {\"name\":\"White\"} */',title:\"Title \\xb7\\xa0Color\",type:ControlType.Color},brA_6aT85:{defaultValue:\"Feature Description\",displayTextArea:false,title:\"P \\xb7\\xa0Text\",type:ControlType.String},Z7Bzftnh3:{defaultValue:'var(--token-32240d71-c083-469d-9ce8-28ea75897da6, rgb(204, 204, 204)) /* {\"name\":\"Seas\"} */',title:\"P \\xb7 Color\",type:ControlType.Color},iqiV5Kz1M:{defaultValue:true,title:\"Visible \\xb7\\xa0Title Right\",type:ControlType.Boolean},laYuvOoBY:{title:\"Scroll Section\",type:ControlType.ScrollSectionRef},nzc8fG2Hg:{defaultValue:\"How it works\",displayTextArea:false,title:\"Learn More\",type:ControlType.String},n_YGjSjmj:{defaultValue:true,title:\"Visible \\xb7\\xa0Learn More\",type:ControlType.Boolean},s9olhPa3Y:{defaultValue:1,max:1,min:0,step:.01,title:\"Opacity \\xb7\\xa0Learn More\",type:ControlType.Number},tpxTggplJ:{title:\"Tap\",type:ControlType.EventHandler}});addFonts(FramerxWUxvpnPr,[{explicitInter:true,fonts:[{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F\",url:\"https://framerusercontent.com/assets/5vvr9Vy74if2I6bQbJvbw7SY1pQ.woff2\",weight:\"400\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116\",url:\"https://framerusercontent.com/assets/EOr0mi4hNtlgWNn9if640EZzXCo.woff2\",weight:\"400\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+1F00-1FFF\",url:\"https://framerusercontent.com/assets/Y9k9QrlZAqio88Klkmbd8VoMQc.woff2\",weight:\"400\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0370-03FF\",url:\"https://framerusercontent.com/assets/OYrD2tBIBPvoJXiIHnLoOXnY9M.woff2\",weight:\"400\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF\",url:\"https://framerusercontent.com/assets/JeYwfuaPfZHQhEG8U5gtPDZ7WQ.woff2\",weight:\"400\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD\",url:\"https://framerusercontent.com/assets/vQyevYAyHtARFwPqUzQGpnDs.woff2\",weight:\"400\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB\",url:\"https://framerusercontent.com/assets/b6Y37FthZeALduNqHicBT6FutY.woff2\",weight:\"400\"},{family:\"Inter\",source:\"google\",style:\"normal\",url:\"https://fonts.gstatic.com/s/inter/v18/UcCO3FwrK3iLTeHuS_nVMrMxCp50SjIw2boKoduKmMEVuLyfMZ1rib2Bg-4.woff2\",weight:\"400\"}]},...NavLinkFeaturesFonts,...getFontsFromSharedStyle(sharedStyle.fonts),...getFontsFromSharedStyle(sharedStyle1.fonts)],{supportsExplicitInterCodegen:true});\nexport const __FramerMetadata__ = {\"exports\":{\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"default\":{\"type\":\"reactComponent\",\"name\":\"FramerxWUxvpnPr\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\",\"framerVariables\":\"{\\\"Ifo7cF6tv\\\":\\\"gapTitleP\\\",\\\"WOAFeRQQH\\\":\\\"gapPLink\\\",\\\"MODN0cWfc\\\":\\\"gapTitleLTitleR\\\",\\\"OU7UFlw4D\\\":\\\"titleLeft\\\",\\\"TCoOeHPYY\\\":\\\"titleRight\\\",\\\"eEC9eWT9h\\\":\\\"titleColor\\\",\\\"brA_6aT85\\\":\\\"pText\\\",\\\"Z7Bzftnh3\\\":\\\"pColor\\\",\\\"iqiV5Kz1M\\\":\\\"visibleTitleRight\\\",\\\"laYuvOoBY\\\":\\\"scrollSection\\\",\\\"nzc8fG2Hg\\\":\\\"learnMore\\\",\\\"n_YGjSjmj\\\":\\\"visibleLearnMore\\\",\\\"s9olhPa3Y\\\":\\\"opacityLearnMore\\\",\\\"tpxTggplJ\\\":\\\"tap\\\"}\",\"framerCanvasComponentVariantDetails\":\"{\\\"propertyName\\\":\\\"variant\\\",\\\"data\\\":{\\\"default\\\":{\\\"layout\\\":[\\\"auto\\\",\\\"auto\\\"]},\\\"c8B7AT4nX\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"auto\\\"]}}}\",\"framerImmutableVariables\":\"true\",\"framerIntrinsicWidth\":\"554.5\",\"framerComponentViewportWidth\":\"true\",\"framerIntrinsicHeight\":\"192.5\",\"framerDisplayContentsDiv\":\"false\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// Generated by Framer (2c4b293)\nimport{jsx as _jsx}from\"react/jsx-runtime\";import{addFonts,cx,useComponentViewport,useLocaleInfo,useVariantState,withCSS}from\"framer\";import{LayoutGroup,motion,MotionConfigContext}from\"framer-motion\";import*as React from\"react\";const cycleOrder=[\"UdlBpOYW8\"];const serializationHash=\"framer-o4crs\";const variantClassNames={UdlBpOYW8:\"framer-v-ppnjvz\"};function addPropertyOverrides(overrides,...variants){const nextOverrides={};variants===null||variants===void 0?void 0:variants.forEach(variant=>variant&&Object.assign(nextOverrides,overrides[variant]));return nextOverrides;}const transition1={duration:0,type:\"tween\"};const Transition=({value,children})=>{const config=React.useContext(MotionConfigContext);const transition=value!==null&&value!==void 0?value:config.transition;const contextValue=React.useMemo(()=>({...config,transition}),[JSON.stringify(transition)]);return /*#__PURE__*/_jsx(MotionConfigContext.Provider,{value:contextValue,children:children});};const Variants=motion(React.Fragment);const getProps=({height,id,width,...props})=>{return{...props};};const createLayoutDependency=(props,variants)=>{if(props.layoutDependency)return variants.join(\"-\")+props.layoutDependency;return variants.join(\"-\");};const Component=/*#__PURE__*/React.forwardRef(function(props,ref){const{activeLocale,setLocale}=useLocaleInfo();const{style,className,layoutId,variant,...restProps}=getProps(props);const{baseVariant,classNames,clearLoadingGesture,gestureHandlers,gestureVariant,isLoading,setGestureState,setVariant,variants}=useVariantState({cycleOrder,defaultVariant:\"UdlBpOYW8\",variant,variantClassNames});const layoutDependency=createLayoutDependency(props,variants);const ref1=React.useRef(null);const defaultLayoutId=React.useId();const sharedStyleClassNames=[];const componentViewport=useComponentViewport();return /*#__PURE__*/_jsx(LayoutGroup,{id:layoutId!==null&&layoutId!==void 0?layoutId:defaultLayoutId,children:/*#__PURE__*/_jsx(Variants,{animate:variants,initial:false,children:/*#__PURE__*/_jsx(Transition,{value:transition1,children:/*#__PURE__*/_jsx(motion.div,{...restProps,...gestureHandlers,className:cx(serializationHash,...sharedStyleClassNames,\"framer-ppnjvz\",className,classNames),\"data-framer-name\":\"Opacity\",layoutDependency:layoutDependency,layoutId:\"UdlBpOYW8\",ref:ref!==null&&ref!==void 0?ref:ref1,style:{backgroundColor:\"rgb(0, 0, 0)\",opacity:.25,...style}})})})});});const css=[\"@supports (aspect-ratio: 1) { body { --framer-aspect-ratio-supported: auto; } }\",\".framer-o4crs.framer-18ck7ow, .framer-o4crs .framer-18ck7ow { display: block; }\",\".framer-o4crs.framer-ppnjvz { height: 514px; mix-blend-mode: multiply; overflow: hidden; position: relative; width: 254px; }\"];/**\n * This is a generated Framer component.\n * @framerIntrinsicHeight 514\n * @framerIntrinsicWidth 254\n * @framerCanvasComponentVariantDetails {\"propertyName\":\"variant\",\"data\":{\"default\":{\"layout\":[\"fixed\",\"fixed\"]}}}\n * @framerImmutableVariables true\n * @framerDisplayContentsDiv false\n * @framerComponentViewportWidth true\n */const FramerRebyd_Z6N=withCSS(Component,css,\"framer-o4crs\");export default FramerRebyd_Z6N;FramerRebyd_Z6N.displayName=\"Alpha / Photo Overlay\";FramerRebyd_Z6N.defaultProps={height:514,width:254};addFonts(FramerRebyd_Z6N,[{explicitInter:true,fonts:[]}],{supportsExplicitInterCodegen:true});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"FramerRebyd_Z6N\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\",\"framerComponentViewportWidth\":\"true\",\"framerIntrinsicWidth\":\"254\",\"framerIntrinsicHeight\":\"514\",\"framerImmutableVariables\":\"true\",\"framerDisplayContentsDiv\":\"false\",\"framerCanvasComponentVariantDetails\":\"{\\\"propertyName\\\":\\\"variant\\\",\\\"data\\\":{\\\"default\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]}}}\"}},\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./Rebyd_Z6N.map","// Generated by Framer (2c4b293)\nimport{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{addFonts,addPropertyControls,ComponentViewportProvider,ControlType,cx,getFonts,getLoadingLazyAtYPosition,Image,useComponentViewport,useLocaleInfo,useVariantState,withCSS}from\"framer\";import{LayoutGroup,motion,MotionConfigContext}from\"framer-motion\";import*as React from\"react\";import AlphaPhotoOverlay from\"https://framerusercontent.com/modules/VLcwAu4roignXVXVaOCJ/gljMHKTRi7myQmB21Ibc/Rebyd_Z6N.js\";const AlphaPhotoOverlayFonts=getFonts(AlphaPhotoOverlay);const cycleOrder=[\"LyL1QOX69\",\"h_ny82t0n\",\"iPwO8bnJv\",\"AcipQtkzf\",\"v73JX8CI8\",\"pssy92CGR\",\"dEHiYyf7b\",\"MQKq7hzw9\",\"xqUkexGPV\",\"j3Sn5VBBd\",\"FcMGUCWxQ\"];const serializationHash=\"framer-zHouJ\";const variantClassNames={AcipQtkzf:\"framer-v-1g5gfrn\",dEHiYyf7b:\"framer-v-1ej8isl\",FcMGUCWxQ:\"framer-v-a0rtow\",h_ny82t0n:\"framer-v-1s8y29q\",iPwO8bnJv:\"framer-v-tp7srh\",j3Sn5VBBd:\"framer-v-me2u8u\",LyL1QOX69:\"framer-v-1lk4lh6\",MQKq7hzw9:\"framer-v-ywcz2v\",pssy92CGR:\"framer-v-d97nsw\",v73JX8CI8:\"framer-v-aljkfk\",xqUkexGPV:\"framer-v-37csf0\"};function addPropertyOverrides(overrides,...variants){const nextOverrides={};variants===null||variants===void 0?void 0:variants.forEach(variant=>variant&&Object.assign(nextOverrides,overrides[variant]));return nextOverrides;}const transition1={duration:0,type:\"tween\"};const Transition=({value,children})=>{const config=React.useContext(MotionConfigContext);const transition=value!==null&&value!==void 0?value:config.transition;const contextValue=React.useMemo(()=>({...config,transition}),[JSON.stringify(transition)]);return /*#__PURE__*/_jsx(MotionConfigContext.Provider,{value:contextValue,children:children});};const Variants=motion(React.Fragment);const humanReadableVariantMap={\"Fast Food\":\"v73JX8CI8\",Cashier:\"xqUkexGPV\",Construction:\"LyL1QOX69\",Convenience:\"h_ny82t0n\",Dishwasher:\"iPwO8bnJv\",Electrician:\"AcipQtkzf\",Housekeeper:\"pssy92CGR\",Logistics:\"dEHiYyf7b\",Server:\"MQKq7hzw9\",Technician:\"j3Sn5VBBd\",Valet:\"FcMGUCWxQ\"};const getProps=({height,id,width,...props})=>{var _humanReadableVariantMap_props_variant,_ref;return{...props,variant:(_ref=(_humanReadableVariantMap_props_variant=humanReadableVariantMap[props.variant])!==null&&_humanReadableVariantMap_props_variant!==void 0?_humanReadableVariantMap_props_variant:props.variant)!==null&&_ref!==void 0?_ref:\"LyL1QOX69\"};};const createLayoutDependency=(props,variants)=>{if(props.layoutDependency)return variants.join(\"-\")+props.layoutDependency;return variants.join(\"-\");};const Component=/*#__PURE__*/React.forwardRef(function(props,ref){const{activeLocale,setLocale}=useLocaleInfo();const{style,className,layoutId,variant,...restProps}=getProps(props);const{baseVariant,classNames,clearLoadingGesture,gestureHandlers,gestureVariant,isLoading,setGestureState,setVariant,variants}=useVariantState({cycleOrder,defaultVariant:\"LyL1QOX69\",variant,variantClassNames});const layoutDependency=createLayoutDependency(props,variants);const ref1=React.useRef(null);const isDisplayed=()=>{if([\"h_ny82t0n\",\"iPwO8bnJv\",\"AcipQtkzf\",\"v73JX8CI8\",\"pssy92CGR\",\"dEHiYyf7b\",\"MQKq7hzw9\",\"xqUkexGPV\",\"j3Sn5VBBd\",\"FcMGUCWxQ\"].includes(baseVariant))return false;return true;};const isDisplayed1=()=>{if([\"h_ny82t0n\",\"iPwO8bnJv\"].includes(baseVariant))return true;return false;};const isDisplayed2=()=>{if(baseVariant===\"AcipQtkzf\")return true;return false;};const isDisplayed3=()=>{if(baseVariant===\"v73JX8CI8\")return true;return false;};const isDisplayed4=()=>{if(baseVariant===\"pssy92CGR\")return true;return false;};const isDisplayed5=()=>{if(baseVariant===\"dEHiYyf7b\")return true;return false;};const isDisplayed6=()=>{if(baseVariant===\"MQKq7hzw9\")return true;return false;};const isDisplayed7=()=>{if(baseVariant===\"xqUkexGPV\")return true;return false;};const isDisplayed8=()=>{if(baseVariant===\"j3Sn5VBBd\")return true;return false;};const isDisplayed9=()=>{if(baseVariant===\"FcMGUCWxQ\")return true;return false;};const defaultLayoutId=React.useId();const sharedStyleClassNames=[];const componentViewport=useComponentViewport();return /*#__PURE__*/_jsx(LayoutGroup,{id:layoutId!==null&&layoutId!==void 0?layoutId:defaultLayoutId,children:/*#__PURE__*/_jsx(Variants,{animate:variants,initial:false,children:/*#__PURE__*/_jsx(Transition,{value:transition1,children:/*#__PURE__*/_jsxs(motion.div,{...restProps,...gestureHandlers,background:{alt:\"\",fit:\"fill\",positionX:\"64.3%\",positionY:\"16.1%\"},className:cx(serializationHash,...sharedStyleClassNames,\"framer-1lk4lh6\",className,classNames),\"data-framer-name\":\"Construction\",layoutDependency:layoutDependency,layoutId:\"LyL1QOX69\",ref:ref!==null&&ref!==void 0?ref:ref1,style:{...style},...addPropertyOverrides({AcipQtkzf:{\"data-framer-name\":\"Electrician\"},dEHiYyf7b:{\"data-framer-name\":\"Logistics\"},FcMGUCWxQ:{\"data-framer-name\":\"Valet\"},h_ny82t0n:{\"data-framer-name\":\"Convenience\"},iPwO8bnJv:{\"data-framer-name\":\"Dishwasher\"},j3Sn5VBBd:{\"data-framer-name\":\"Technician\"},MQKq7hzw9:{\"data-framer-name\":\"Server\"},pssy92CGR:{\"data-framer-name\":\"Housekeeper\"},v73JX8CI8:{\"data-framer-name\":\"Fast Food\"},xqUkexGPV:{\"data-framer-name\":\"Cashier\"}},baseVariant,gestureVariant),children:[/*#__PURE__*/_jsx(ComponentViewportProvider,{height:((componentViewport===null||componentViewport===void 0?void 0:componentViewport.height)||960)*1,width:(componentViewport===null||componentViewport===void 0?void 0:componentViewport.width)||\"100vw\",y:((componentViewport===null||componentViewport===void 0?void 0:componentViewport.y)||0)+0,children:/*#__PURE__*/_jsx(motion.div,{className:\"framer-1dcsp9k-container\",\"data-framer-name\":\"Overlay\",layoutDependency:layoutDependency,layoutId:\"T_8K7Zirv-container\",name:\"Overlay\",children:/*#__PURE__*/_jsx(AlphaPhotoOverlay,{height:\"100%\",id:\"T_8K7Zirv\",layoutId:\"T_8K7Zirv\",name:\"Overlay\",style:{height:\"100%\",width:\"100%\"},width:\"100%\"})})}),/*#__PURE__*/_jsxs(motion.div,{className:\"framer-yuk93e\",\"data-framer-name\":\"Photo\",layoutDependency:layoutDependency,layoutId:\"haO7E4OGv\",children:[isDisplayed()&&/*#__PURE__*/_jsx(Image,{background:{alt:\"\",fit:\"fill\",intrinsicHeight:2249.9999329447764,intrinsicWidth:1124.9999664723882,loading:getLoadingLazyAtYPosition(((componentViewport===null||componentViewport===void 0?void 0:componentViewport.y)||0)+(0+(((componentViewport===null||componentViewport===void 0?void 0:componentViewport.height)||960)-0-(((componentViewport===null||componentViewport===void 0?void 0:componentViewport.height)||960)-0)*1)/2)+(0+((((componentViewport===null||componentViewport===void 0?void 0:componentViewport.height)||960)-0)*1-0-((((componentViewport===null||componentViewport===void 0?void 0:componentViewport.height)||960)-0)*1-0)*1)/2)),pixelHeight:2890,pixelWidth:1500,positionX:\"56.2%\",positionY:\"24%\",sizes:`max(${(componentViewport===null||componentViewport===void 0?void 0:componentViewport.width)||\"100vw\"}, 1px)`,src:\"https://framerusercontent.com/images/DWqZNB5ym1kf3vc5ShFk1aaEHn4.jpg\",srcSet:\"https://framerusercontent.com/images/DWqZNB5ym1kf3vc5ShFk1aaEHn4.jpg?scale-down-to=1024 531w,https://framerusercontent.com/images/DWqZNB5ym1kf3vc5ShFk1aaEHn4.jpg?scale-down-to=2048 1062w,https://framerusercontent.com/images/DWqZNB5ym1kf3vc5ShFk1aaEHn4.jpg 1500w\"},className:\"framer-tvsy0j\",\"data-framer-name\":\"Photo\",layoutDependency:layoutDependency,layoutId:\"PWP3ENeiy\"}),isDisplayed1()&&/*#__PURE__*/_jsx(Image,{background:{alt:\"\",fit:\"fill\",intrinsicHeight:2249.9999329447764,intrinsicWidth:1124.9999664723882,pixelHeight:2890,pixelWidth:1500,positionX:\"left\",positionY:\"top\",src:\"https://framerusercontent.com/images/6VfCXbtQXm5C2xTvyE6aRdT1I3Y.jpg\",srcSet:\"https://framerusercontent.com/images/6VfCXbtQXm5C2xTvyE6aRdT1I3Y.jpg?scale-down-to=1024 531w,https://framerusercontent.com/images/6VfCXbtQXm5C2xTvyE6aRdT1I3Y.jpg?scale-down-to=2048 1062w,https://framerusercontent.com/images/6VfCXbtQXm5C2xTvyE6aRdT1I3Y.jpg 1500w\"},className:\"framer-1a94kut\",\"data-framer-name\":\"Photo\",layoutDependency:layoutDependency,layoutId:\"IkS3J4SR_\",...addPropertyOverrides({h_ny82t0n:{background:{alt:\"\",fit:\"fill\",intrinsicHeight:2249.9999329447764,intrinsicWidth:1124.9999664723882,loading:getLoadingLazyAtYPosition(((componentViewport===null||componentViewport===void 0?void 0:componentViewport.y)||0)+(0+(((componentViewport===null||componentViewport===void 0?void 0:componentViewport.height)||960)-0-(((componentViewport===null||componentViewport===void 0?void 0:componentViewport.height)||960)-0)*1)/2)+(0+((((componentViewport===null||componentViewport===void 0?void 0:componentViewport.height)||960)-0)*1-0-((((componentViewport===null||componentViewport===void 0?void 0:componentViewport.height)||960)-0)*1-0)*1)/2)),pixelHeight:2890,pixelWidth:1500,positionX:\"56%\",positionY:\"24.4%\",sizes:`max(${(componentViewport===null||componentViewport===void 0?void 0:componentViewport.width)||\"100vw\"}, 1px)`,src:\"https://framerusercontent.com/images/LyGyEfADY739RbN6upNQe1yg.jpg\",srcSet:\"https://framerusercontent.com/images/LyGyEfADY739RbN6upNQe1yg.jpg?scale-down-to=1024 512w,https://framerusercontent.com/images/LyGyEfADY739RbN6upNQe1yg.jpg?scale-down-to=2048 1024w,https://framerusercontent.com/images/LyGyEfADY739RbN6upNQe1yg.jpg 1500w\"}},iPwO8bnJv:{background:{alt:\"\",fit:\"fill\",intrinsicHeight:2249.9999329447764,intrinsicWidth:1124.9999664723882,loading:getLoadingLazyAtYPosition(((componentViewport===null||componentViewport===void 0?void 0:componentViewport.y)||0)+(0+(((componentViewport===null||componentViewport===void 0?void 0:componentViewport.height)||960)-0-(((componentViewport===null||componentViewport===void 0?void 0:componentViewport.height)||960)-0)*1)/2)+(0+((((componentViewport===null||componentViewport===void 0?void 0:componentViewport.height)||960)-0)*1-0-((((componentViewport===null||componentViewport===void 0?void 0:componentViewport.height)||960)-0)*1-0)*1)/2)),pixelHeight:2890,pixelWidth:1500,positionX:\"56.2%\",positionY:\"23.6%\",sizes:`max(${(componentViewport===null||componentViewport===void 0?void 0:componentViewport.width)||\"100vw\"}, 1px)`,src:\"https://framerusercontent.com/images/6VfCXbtQXm5C2xTvyE6aRdT1I3Y.jpg\",srcSet:\"https://framerusercontent.com/images/6VfCXbtQXm5C2xTvyE6aRdT1I3Y.jpg?scale-down-to=1024 531w,https://framerusercontent.com/images/6VfCXbtQXm5C2xTvyE6aRdT1I3Y.jpg?scale-down-to=2048 1062w,https://framerusercontent.com/images/6VfCXbtQXm5C2xTvyE6aRdT1I3Y.jpg 1500w\"}}},baseVariant,gestureVariant)}),isDisplayed2()&&/*#__PURE__*/_jsx(Image,{background:{alt:\"\",fit:\"fill\",intrinsicHeight:2249.9999329447764,intrinsicWidth:1124.9999664723882,pixelHeight:2890,pixelWidth:1500,positionX:\"70.4%\",positionY:\"24%\",src:\"https://framerusercontent.com/images/UXCPrW4isGTtB4OTNPGzUDpI2o.jpg\",srcSet:\"https://framerusercontent.com/images/UXCPrW4isGTtB4OTNPGzUDpI2o.jpg?scale-down-to=1024 531w,https://framerusercontent.com/images/UXCPrW4isGTtB4OTNPGzUDpI2o.jpg?scale-down-to=2048 1062w,https://framerusercontent.com/images/UXCPrW4isGTtB4OTNPGzUDpI2o.jpg 1500w\"},className:\"framer-1xwrc3l\",\"data-framer-name\":\"Photo\",layoutDependency:layoutDependency,layoutId:\"BbhXhssrX\",...addPropertyOverrides({AcipQtkzf:{background:{alt:\"\",fit:\"fill\",intrinsicHeight:2249.9999329447764,intrinsicWidth:1124.9999664723882,loading:getLoadingLazyAtYPosition(((componentViewport===null||componentViewport===void 0?void 0:componentViewport.y)||0)+(0+(((componentViewport===null||componentViewport===void 0?void 0:componentViewport.height)||960)-0-(((componentViewport===null||componentViewport===void 0?void 0:componentViewport.height)||960)-0)*1)/2)+(0+((((componentViewport===null||componentViewport===void 0?void 0:componentViewport.height)||960)-0)*1-0-((((componentViewport===null||componentViewport===void 0?void 0:componentViewport.height)||960)-0)*1-0)*1)/2)),pixelHeight:2890,pixelWidth:1500,positionX:\"70.4%\",positionY:\"24%\",sizes:`max(${(componentViewport===null||componentViewport===void 0?void 0:componentViewport.width)||\"100vw\"}, 1px)`,src:\"https://framerusercontent.com/images/UXCPrW4isGTtB4OTNPGzUDpI2o.jpg\",srcSet:\"https://framerusercontent.com/images/UXCPrW4isGTtB4OTNPGzUDpI2o.jpg?scale-down-to=1024 531w,https://framerusercontent.com/images/UXCPrW4isGTtB4OTNPGzUDpI2o.jpg?scale-down-to=2048 1062w,https://framerusercontent.com/images/UXCPrW4isGTtB4OTNPGzUDpI2o.jpg 1500w\"}}},baseVariant,gestureVariant)}),isDisplayed3()&&/*#__PURE__*/_jsx(Image,{background:{alt:\"\",fit:\"fill\",intrinsicHeight:2249.9999329447764,intrinsicWidth:1124.9999664723882,pixelHeight:2890,pixelWidth:1499,positionX:\"56.2%\",positionY:\"24.2%\",src:\"https://framerusercontent.com/images/1SSKftR9H57VOoe1nnl8Ps8AEmw.jpg\",srcSet:\"https://framerusercontent.com/images/1SSKftR9H57VOoe1nnl8Ps8AEmw.jpg?scale-down-to=1024 531w,https://framerusercontent.com/images/1SSKftR9H57VOoe1nnl8Ps8AEmw.jpg?scale-down-to=2048 1062w,https://framerusercontent.com/images/1SSKftR9H57VOoe1nnl8Ps8AEmw.jpg 1499w\"},className:\"framer-1o950no\",\"data-framer-name\":\"Photo\",layoutDependency:layoutDependency,layoutId:\"ffbxyrshI\",...addPropertyOverrides({v73JX8CI8:{background:{alt:\"\",fit:\"fill\",intrinsicHeight:2249.9999329447764,intrinsicWidth:1124.9999664723882,loading:getLoadingLazyAtYPosition(((componentViewport===null||componentViewport===void 0?void 0:componentViewport.y)||0)+(0+(((componentViewport===null||componentViewport===void 0?void 0:componentViewport.height)||960)-0-(((componentViewport===null||componentViewport===void 0?void 0:componentViewport.height)||960)-0)*1)/2)+(0+((((componentViewport===null||componentViewport===void 0?void 0:componentViewport.height)||960)-0)*1-0-((((componentViewport===null||componentViewport===void 0?void 0:componentViewport.height)||960)-0)*1-0)*1)/2)),pixelHeight:2890,pixelWidth:1499,positionX:\"56.2%\",positionY:\"24.2%\",sizes:`max(${(componentViewport===null||componentViewport===void 0?void 0:componentViewport.width)||\"100vw\"}, 1px)`,src:\"https://framerusercontent.com/images/1SSKftR9H57VOoe1nnl8Ps8AEmw.jpg\",srcSet:\"https://framerusercontent.com/images/1SSKftR9H57VOoe1nnl8Ps8AEmw.jpg?scale-down-to=1024 531w,https://framerusercontent.com/images/1SSKftR9H57VOoe1nnl8Ps8AEmw.jpg?scale-down-to=2048 1062w,https://framerusercontent.com/images/1SSKftR9H57VOoe1nnl8Ps8AEmw.jpg 1499w\"}}},baseVariant,gestureVariant)}),isDisplayed4()&&/*#__PURE__*/_jsx(Image,{background:{alt:\"\",fit:\"fill\",intrinsicHeight:2249.9999329447764,intrinsicWidth:1124.9999664723882,pixelHeight:2890,pixelWidth:1499,positionX:\"56.2%\",positionY:\"24.2%\",src:\"https://framerusercontent.com/images/AMdlPV6nlfZLTkHjpQDJ8alsD0.jpg\",srcSet:\"https://framerusercontent.com/images/AMdlPV6nlfZLTkHjpQDJ8alsD0.jpg?scale-down-to=1024 531w,https://framerusercontent.com/images/AMdlPV6nlfZLTkHjpQDJ8alsD0.jpg?scale-down-to=2048 1062w,https://framerusercontent.com/images/AMdlPV6nlfZLTkHjpQDJ8alsD0.jpg 1499w\"},className:\"framer-1ojvm2f\",\"data-framer-name\":\"Photo\",layoutDependency:layoutDependency,layoutId:\"zEiaRJKAe\",...addPropertyOverrides({pssy92CGR:{background:{alt:\"\",fit:\"fill\",intrinsicHeight:2249.9999329447764,intrinsicWidth:1124.9999664723882,loading:getLoadingLazyAtYPosition(((componentViewport===null||componentViewport===void 0?void 0:componentViewport.y)||0)+(0+(((componentViewport===null||componentViewport===void 0?void 0:componentViewport.height)||960)-0-(((componentViewport===null||componentViewport===void 0?void 0:componentViewport.height)||960)-0)*1)/2)+(0+((((componentViewport===null||componentViewport===void 0?void 0:componentViewport.height)||960)-0)*1-0-((((componentViewport===null||componentViewport===void 0?void 0:componentViewport.height)||960)-0)*1-0)*1)/2)),pixelHeight:2890,pixelWidth:1499,positionX:\"56.2%\",positionY:\"24.2%\",sizes:`max(${(componentViewport===null||componentViewport===void 0?void 0:componentViewport.width)||\"100vw\"}, 1px)`,src:\"https://framerusercontent.com/images/AMdlPV6nlfZLTkHjpQDJ8alsD0.jpg\",srcSet:\"https://framerusercontent.com/images/AMdlPV6nlfZLTkHjpQDJ8alsD0.jpg?scale-down-to=1024 531w,https://framerusercontent.com/images/AMdlPV6nlfZLTkHjpQDJ8alsD0.jpg?scale-down-to=2048 1062w,https://framerusercontent.com/images/AMdlPV6nlfZLTkHjpQDJ8alsD0.jpg 1499w\"}}},baseVariant,gestureVariant)}),isDisplayed5()&&/*#__PURE__*/_jsx(Image,{background:{alt:\"\",fit:\"fill\",intrinsicHeight:2249.9999329447764,intrinsicWidth:1124.9999664723882,pixelHeight:2890,pixelWidth:1500,positionX:\"56%\",positionY:\"24%\",src:\"https://framerusercontent.com/images/5sD6wnuJhLZ8GrxWe8SJ2oc3Ts.jpg\",srcSet:\"https://framerusercontent.com/images/5sD6wnuJhLZ8GrxWe8SJ2oc3Ts.jpg?scale-down-to=1024 531w,https://framerusercontent.com/images/5sD6wnuJhLZ8GrxWe8SJ2oc3Ts.jpg?scale-down-to=2048 1062w,https://framerusercontent.com/images/5sD6wnuJhLZ8GrxWe8SJ2oc3Ts.jpg 1500w\"},className:\"framer-13eritp\",\"data-framer-name\":\"Photo\",layoutDependency:layoutDependency,layoutId:\"HqO_aFSO9\",...addPropertyOverrides({dEHiYyf7b:{background:{alt:\"\",fit:\"fill\",intrinsicHeight:2249.9999329447764,intrinsicWidth:1124.9999664723882,loading:getLoadingLazyAtYPosition(((componentViewport===null||componentViewport===void 0?void 0:componentViewport.y)||0)+(0+(((componentViewport===null||componentViewport===void 0?void 0:componentViewport.height)||960)-0-(((componentViewport===null||componentViewport===void 0?void 0:componentViewport.height)||960)-0)*1)/2)+(0+((((componentViewport===null||componentViewport===void 0?void 0:componentViewport.height)||960)-0)*1-0-((((componentViewport===null||componentViewport===void 0?void 0:componentViewport.height)||960)-0)*1-0)*1)/2)),pixelHeight:2890,pixelWidth:1500,positionX:\"56%\",positionY:\"24%\",sizes:`max(${(componentViewport===null||componentViewport===void 0?void 0:componentViewport.width)||\"100vw\"}, 1px)`,src:\"https://framerusercontent.com/images/5sD6wnuJhLZ8GrxWe8SJ2oc3Ts.jpg\",srcSet:\"https://framerusercontent.com/images/5sD6wnuJhLZ8GrxWe8SJ2oc3Ts.jpg?scale-down-to=1024 531w,https://framerusercontent.com/images/5sD6wnuJhLZ8GrxWe8SJ2oc3Ts.jpg?scale-down-to=2048 1062w,https://framerusercontent.com/images/5sD6wnuJhLZ8GrxWe8SJ2oc3Ts.jpg 1500w\"}}},baseVariant,gestureVariant)}),isDisplayed6()&&/*#__PURE__*/_jsx(Image,{background:{alt:\"\",fit:\"fill\",intrinsicHeight:2249.9999329447764,intrinsicWidth:1124.9999664723882,pixelHeight:2890,pixelWidth:1500,positionX:\"56%\",positionY:\"23.5%\",src:\"https://framerusercontent.com/images/BAVvXQx8rBAx0lqvO8KIr6If8.jpg\",srcSet:\"https://framerusercontent.com/images/BAVvXQx8rBAx0lqvO8KIr6If8.jpg?scale-down-to=1024 531w,https://framerusercontent.com/images/BAVvXQx8rBAx0lqvO8KIr6If8.jpg?scale-down-to=2048 1062w,https://framerusercontent.com/images/BAVvXQx8rBAx0lqvO8KIr6If8.jpg 1500w\"},className:\"framer-1p50vfq\",\"data-framer-name\":\"Photo\",layoutDependency:layoutDependency,layoutId:\"u9GfBkjmp\",...addPropertyOverrides({MQKq7hzw9:{background:{alt:\"\",fit:\"fill\",intrinsicHeight:2249.9999329447764,intrinsicWidth:1124.9999664723882,loading:getLoadingLazyAtYPosition(((componentViewport===null||componentViewport===void 0?void 0:componentViewport.y)||0)+(0+(((componentViewport===null||componentViewport===void 0?void 0:componentViewport.height)||960)-0-(((componentViewport===null||componentViewport===void 0?void 0:componentViewport.height)||960)-0)*1)/2)+(0+((((componentViewport===null||componentViewport===void 0?void 0:componentViewport.height)||960)-0)*1-0-((((componentViewport===null||componentViewport===void 0?void 0:componentViewport.height)||960)-0)*1-0)*1)/2)),pixelHeight:2890,pixelWidth:1500,positionX:\"56%\",positionY:\"23.5%\",sizes:`max(${(componentViewport===null||componentViewport===void 0?void 0:componentViewport.width)||\"100vw\"}, 1px)`,src:\"https://framerusercontent.com/images/BAVvXQx8rBAx0lqvO8KIr6If8.jpg\",srcSet:\"https://framerusercontent.com/images/BAVvXQx8rBAx0lqvO8KIr6If8.jpg?scale-down-to=1024 531w,https://framerusercontent.com/images/BAVvXQx8rBAx0lqvO8KIr6If8.jpg?scale-down-to=2048 1062w,https://framerusercontent.com/images/BAVvXQx8rBAx0lqvO8KIr6If8.jpg 1500w\"}}},baseVariant,gestureVariant)}),isDisplayed7()&&/*#__PURE__*/_jsx(Image,{background:{alt:\"\",fit:\"fill\",intrinsicHeight:2249.9999329447764,intrinsicWidth:1124.9999664723882,pixelHeight:2890,pixelWidth:1500,positionX:\"55.8%\",positionY:\"24%\",src:\"https://framerusercontent.com/images/og3HWcduwKI9zOIOGiI0IPaLGws.jpg\",srcSet:\"https://framerusercontent.com/images/og3HWcduwKI9zOIOGiI0IPaLGws.jpg?scale-down-to=1024 531w,https://framerusercontent.com/images/og3HWcduwKI9zOIOGiI0IPaLGws.jpg?scale-down-to=2048 1062w,https://framerusercontent.com/images/og3HWcduwKI9zOIOGiI0IPaLGws.jpg 1500w\"},className:\"framer-qye73r\",\"data-framer-name\":\"Photo\",layoutDependency:layoutDependency,layoutId:\"Y7I7Ua2jr\",...addPropertyOverrides({xqUkexGPV:{background:{alt:\"\",fit:\"fill\",intrinsicHeight:2249.9999329447764,intrinsicWidth:1124.9999664723882,loading:getLoadingLazyAtYPosition(((componentViewport===null||componentViewport===void 0?void 0:componentViewport.y)||0)+(0+(((componentViewport===null||componentViewport===void 0?void 0:componentViewport.height)||960)-0-(((componentViewport===null||componentViewport===void 0?void 0:componentViewport.height)||960)-0)*1)/2)+(0+((((componentViewport===null||componentViewport===void 0?void 0:componentViewport.height)||960)-0)*1-0-((((componentViewport===null||componentViewport===void 0?void 0:componentViewport.height)||960)-0)*1-0)*1)/2)),pixelHeight:2890,pixelWidth:1500,positionX:\"55.8%\",positionY:\"24%\",sizes:`max(${(componentViewport===null||componentViewport===void 0?void 0:componentViewport.width)||\"100vw\"}, 1px)`,src:\"https://framerusercontent.com/images/og3HWcduwKI9zOIOGiI0IPaLGws.jpg\",srcSet:\"https://framerusercontent.com/images/og3HWcduwKI9zOIOGiI0IPaLGws.jpg?scale-down-to=1024 531w,https://framerusercontent.com/images/og3HWcduwKI9zOIOGiI0IPaLGws.jpg?scale-down-to=2048 1062w,https://framerusercontent.com/images/og3HWcduwKI9zOIOGiI0IPaLGws.jpg 1500w\"}}},baseVariant,gestureVariant)}),isDisplayed8()&&/*#__PURE__*/_jsx(Image,{background:{alt:\"\",fit:\"fill\",intrinsicHeight:2249.9999329447764,intrinsicWidth:1124.9999664723882,pixelHeight:2890,pixelWidth:1499,positionX:\"56.2%\",positionY:\"24.4%\",src:\"https://framerusercontent.com/images/ejIBgGSz44IR1JPD4c6ZGglC8JM.jpg\",srcSet:\"https://framerusercontent.com/images/ejIBgGSz44IR1JPD4c6ZGglC8JM.jpg?scale-down-to=1024 531w,https://framerusercontent.com/images/ejIBgGSz44IR1JPD4c6ZGglC8JM.jpg?scale-down-to=2048 1062w,https://framerusercontent.com/images/ejIBgGSz44IR1JPD4c6ZGglC8JM.jpg 1499w\"},className:\"framer-hk23ig\",\"data-framer-name\":\"Photo\",layoutDependency:layoutDependency,layoutId:\"FFZt9pEJO\",...addPropertyOverrides({j3Sn5VBBd:{background:{alt:\"\",fit:\"fill\",intrinsicHeight:2249.9999329447764,intrinsicWidth:1124.9999664723882,loading:getLoadingLazyAtYPosition(((componentViewport===null||componentViewport===void 0?void 0:componentViewport.y)||0)+(0+(((componentViewport===null||componentViewport===void 0?void 0:componentViewport.height)||960)-0-(((componentViewport===null||componentViewport===void 0?void 0:componentViewport.height)||960)-0)*1)/2)+(0+((((componentViewport===null||componentViewport===void 0?void 0:componentViewport.height)||960)-0)*1-0-((((componentViewport===null||componentViewport===void 0?void 0:componentViewport.height)||960)-0)*1-0)*1)/2)),pixelHeight:2890,pixelWidth:1499,positionX:\"56.2%\",positionY:\"24.4%\",sizes:`max(${(componentViewport===null||componentViewport===void 0?void 0:componentViewport.width)||\"100vw\"}, 1px)`,src:\"https://framerusercontent.com/images/ejIBgGSz44IR1JPD4c6ZGglC8JM.jpg\",srcSet:\"https://framerusercontent.com/images/ejIBgGSz44IR1JPD4c6ZGglC8JM.jpg?scale-down-to=1024 531w,https://framerusercontent.com/images/ejIBgGSz44IR1JPD4c6ZGglC8JM.jpg?scale-down-to=2048 1062w,https://framerusercontent.com/images/ejIBgGSz44IR1JPD4c6ZGglC8JM.jpg 1499w\"}}},baseVariant,gestureVariant)}),isDisplayed9()&&/*#__PURE__*/_jsx(Image,{background:{alt:\"\",fit:\"fill\",intrinsicHeight:2249.9999329447764,intrinsicWidth:1124.9999664723882,pixelHeight:2890,pixelWidth:1499,positionX:\"56.2%\",positionY:\"24%\",src:\"https://framerusercontent.com/images/0orHZtKXShNpaocvxkHSaRlSU3g.jpg\",srcSet:\"https://framerusercontent.com/images/0orHZtKXShNpaocvxkHSaRlSU3g.jpg?scale-down-to=1024 531w,https://framerusercontent.com/images/0orHZtKXShNpaocvxkHSaRlSU3g.jpg?scale-down-to=2048 1062w,https://framerusercontent.com/images/0orHZtKXShNpaocvxkHSaRlSU3g.jpg 1499w\"},className:\"framer-187owbd\",\"data-framer-name\":\"Photo\",layoutDependency:layoutDependency,layoutId:\"QLW82i3P1\",...addPropertyOverrides({FcMGUCWxQ:{background:{alt:\"\",fit:\"fill\",intrinsicHeight:2249.9999329447764,intrinsicWidth:1124.9999664723882,loading:getLoadingLazyAtYPosition(((componentViewport===null||componentViewport===void 0?void 0:componentViewport.y)||0)+(0+(((componentViewport===null||componentViewport===void 0?void 0:componentViewport.height)||960)-0-(((componentViewport===null||componentViewport===void 0?void 0:componentViewport.height)||960)-0)*1)/2)+(0+((((componentViewport===null||componentViewport===void 0?void 0:componentViewport.height)||960)-0)*1-0-((((componentViewport===null||componentViewport===void 0?void 0:componentViewport.height)||960)-0)*1-0)*1)/2)),pixelHeight:2890,pixelWidth:1499,positionX:\"56.2%\",positionY:\"24%\",sizes:`max(${(componentViewport===null||componentViewport===void 0?void 0:componentViewport.width)||\"100vw\"}, 1px)`,src:\"https://framerusercontent.com/images/0orHZtKXShNpaocvxkHSaRlSU3g.jpg\",srcSet:\"https://framerusercontent.com/images/0orHZtKXShNpaocvxkHSaRlSU3g.jpg?scale-down-to=1024 531w,https://framerusercontent.com/images/0orHZtKXShNpaocvxkHSaRlSU3g.jpg?scale-down-to=2048 1062w,https://framerusercontent.com/images/0orHZtKXShNpaocvxkHSaRlSU3g.jpg 1499w\"}}},baseVariant,gestureVariant)})]})]})})})});});const css=[\"@supports (aspect-ratio: 1) { body { --framer-aspect-ratio-supported: auto; } }\",\".framer-zHouJ.framer-1uptbd9, .framer-zHouJ .framer-1uptbd9 { display: block; }\",\".framer-zHouJ.framer-1lk4lh6 { align-content: center; align-items: center; display: flex; flex-direction: row; flex-wrap: nowrap; gap: 0px; height: 960px; justify-content: center; overflow: hidden; padding: 0px; position: relative; width: 480px; }\",\".framer-zHouJ .framer-1dcsp9k-container { flex: none; height: 100%; left: 0px; position: absolute; top: 0px; width: 100%; z-index: 2; }\",\".framer-zHouJ .framer-yuk93e { align-content: center; align-items: center; display: flex; flex: 1 0 0px; flex-direction: row; flex-wrap: nowrap; gap: 0px; height: 100%; justify-content: center; overflow: hidden; padding: 0px; position: relative; width: 1px; }\",\".framer-zHouJ .framer-tvsy0j { flex: 1 0 0px; height: 100%; overflow: visible; position: relative; width: 1px; z-index: 1; }\",\".framer-zHouJ .framer-1a94kut, .framer-zHouJ .framer-1xwrc3l, .framer-zHouJ .framer-1o950no, .framer-zHouJ .framer-1ojvm2f, .framer-zHouJ .framer-13eritp, .framer-zHouJ .framer-1p50vfq, .framer-zHouJ .framer-qye73r, .framer-zHouJ .framer-hk23ig, .framer-zHouJ .framer-187owbd { flex: 1 0 0px; height: 100%; overflow: visible; position: relative; width: 1px; }\",\"@supports (background: -webkit-named-image(i)) and (not (font-palette:dark)) { .framer-zHouJ.framer-1lk4lh6, .framer-zHouJ .framer-yuk93e { gap: 0px; } .framer-zHouJ.framer-1lk4lh6 > *, .framer-zHouJ .framer-yuk93e > * { margin: 0px; margin-left: calc(0px / 2); margin-right: calc(0px / 2); } .framer-zHouJ.framer-1lk4lh6 > :first-child, .framer-zHouJ .framer-yuk93e > :first-child { margin-left: 0px; } .framer-zHouJ.framer-1lk4lh6 > :last-child, .framer-zHouJ .framer-yuk93e > :last-child { margin-right: 0px; } }\",\".framer-zHouJ.framer-v-1s8y29q .framer-1a94kut { order: 1; }\"];/**\n * This is a generated Framer component.\n * @framerIntrinsicHeight 960\n * @framerIntrinsicWidth 480\n * @framerCanvasComponentVariantDetails {\"propertyName\":\"variant\",\"data\":{\"default\":{\"layout\":[\"fixed\",\"fixed\"]},\"h_ny82t0n\":{\"layout\":[\"fixed\",\"fixed\"]},\"iPwO8bnJv\":{\"layout\":[\"fixed\",\"fixed\"]},\"AcipQtkzf\":{\"layout\":[\"fixed\",\"fixed\"]},\"v73JX8CI8\":{\"layout\":[\"fixed\",\"fixed\"]},\"pssy92CGR\":{\"layout\":[\"fixed\",\"fixed\"]},\"dEHiYyf7b\":{\"layout\":[\"fixed\",\"fixed\"]},\"MQKq7hzw9\":{\"layout\":[\"fixed\",\"fixed\"]},\"xqUkexGPV\":{\"layout\":[\"fixed\",\"fixed\"]},\"j3Sn5VBBd\":{\"layout\":[\"fixed\",\"fixed\"]},\"FcMGUCWxQ\":{\"layout\":[\"fixed\",\"fixed\"]}}}\n * @framerImmutableVariables true\n * @framerDisplayContentsDiv false\n * @framerComponentViewportWidth true\n */const Framery3iBvSn9Y=withCSS(Component,css,\"framer-zHouJ\");export default Framery3iBvSn9Y;Framery3iBvSn9Y.displayName=\"Alpha / Photo Template\";Framery3iBvSn9Y.defaultProps={height:960,width:480};addPropertyControls(Framery3iBvSn9Y,{variant:{options:[\"LyL1QOX69\",\"h_ny82t0n\",\"iPwO8bnJv\",\"AcipQtkzf\",\"v73JX8CI8\",\"pssy92CGR\",\"dEHiYyf7b\",\"MQKq7hzw9\",\"xqUkexGPV\",\"j3Sn5VBBd\",\"FcMGUCWxQ\"],optionTitles:[\"Construction\",\"Convenience\",\"Dishwasher\",\"Electrician\",\"Fast Food\",\"Housekeeper\",\"Logistics\",\"Server\",\"Cashier\",\"Technician\",\"Valet\"],title:\"Variant\",type:ControlType.Enum}});addFonts(Framery3iBvSn9Y,[{explicitInter:true,fonts:[]},...AlphaPhotoOverlayFonts],{supportsExplicitInterCodegen:true});\nexport const __FramerMetadata__ = {\"exports\":{\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"default\":{\"type\":\"reactComponent\",\"name\":\"Framery3iBvSn9Y\",\"slots\":[],\"annotations\":{\"framerIntrinsicHeight\":\"960\",\"framerIntrinsicWidth\":\"480\",\"framerImmutableVariables\":\"true\",\"framerCanvasComponentVariantDetails\":\"{\\\"propertyName\\\":\\\"variant\\\",\\\"data\\\":{\\\"default\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"h_ny82t0n\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"iPwO8bnJv\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"AcipQtkzf\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"v73JX8CI8\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"pssy92CGR\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"dEHiYyf7b\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"MQKq7hzw9\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"xqUkexGPV\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"j3Sn5VBBd\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"FcMGUCWxQ\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]}}}\",\"framerComponentViewportWidth\":\"true\",\"framerContractVersion\":\"1\",\"framerDisplayContentsDiv\":\"false\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","export default{};\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./Empty.map","import*as t from\"react\";import r from\"process\";var o=\"default\"in t?t.default:t;var h=\"undefined\"!==typeof globalThis?globalThis:\"undefined\"!==typeof self?self:global;var b={};var _=r;!function(t,r){b=r(o)}(\"undefined\"!=typeof self&&self,(t=>(()=>{var r={7403:(t,r,o)=>{o.d(r,{default:()=>F});var b=o(4087),_=o.n(b);const a=function(t){return new RegExp(/<[a-z][\\s\\S]*>/i).test(t)},i=function(t){var r=document.createElement(\"div\");return r.innerHTML=t,r.childNodes},s=function(t,r){return Math.floor(Math.random()*(r-t+1))+t};var m=\"TYPE_CHARACTER\",T=\"REMOVE_CHARACTER\",A=\"REMOVE_ALL\",S=\"REMOVE_LAST_VISIBLE_NODE\",N=\"PAUSE_FOR\",C=\"CALL_FUNCTION\",P=\"ADD_HTML_TAG_ELEMENT\",L=\"CHANGE_DELETE_SPEED\",k=\"CHANGE_DELAY\",D=\"CHANGE_CURSOR\",M=\"PASTE_STRING\",R=\"HTML_TAG\";function g(t,r){var o=Object.keys(t);if(Object.getOwnPropertySymbols){var h=Object.getOwnPropertySymbols(t);r&&(h=h.filter((function(r){return Object.getOwnPropertyDescriptor(t,r).enumerable}))),o.push.apply(o,h)}return o}function w(t){for(var r=1;r<arguments.length;r++){var o=null!=arguments[r]?arguments[r]:{};r%2?g(Object(o),!0).forEach((function(r){O(t,r,o[r])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(o)):g(Object(o)).forEach((function(r){Object.defineProperty(t,r,Object.getOwnPropertyDescriptor(o,r))}))}return t}function x(t){return function(t){if(Array.isArray(t))return j(t)}(t)||function(t){if(\"undefined\"!=typeof Symbol&&null!=t[Symbol.iterator]||null!=t[\"@@iterator\"])return Array.from(t)}(t)||function(t,r){if(t){if(\"string\"==typeof t)return j(t,r);var o=Object.prototype.toString.call(t).slice(8,-1);return\"Object\"===o&&t.constructor&&(o=t.constructor.name),\"Map\"===o||\"Set\"===o?Array.from(t):\"Arguments\"===o||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(o)?j(t,r):void 0}}(t)||function(){throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\")}()}function j(t,r){(null==r||r>t.length)&&(r=t.length);for(var o=0,h=new Array(r);o<r;o++)h[o]=t[o];return h}function E(t,r){for(var o=0;o<r.length;o++){var h=r[o];h.enumerable=h.enumerable||!1,h.configurable=!0,\"value\"in h&&(h.writable=!0),Object.defineProperty(t,h.key,h)}}function O(t,r,o){return r in t?Object.defineProperty(t,r,{value:o,enumerable:!0,configurable:!0,writable:!0}):t[r]=o,t}const F=function(){function e(t,r){var o=this||h;if(function(t,r){if(!(t instanceof r))throw new TypeError(\"Cannot call a class as a function\")}(this||h,e),O(this||h,\"state\",{cursorAnimation:null,lastFrameTime:null,pauseUntil:null,eventQueue:[],eventLoop:null,eventLoopPaused:!1,reverseCalledEvents:[],calledEvents:[],visibleNodes:[],initialOptions:null,elements:{container:null,wrapper:document.createElement(\"span\"),cursor:document.createElement(\"span\")}}),O(this||h,\"options\",{strings:null,cursor:\"|\",delay:\"natural\",pauseFor:1500,deleteSpeed:\"natural\",loop:!1,autoStart:!1,devMode:!1,skipAddStyles:!1,wrapperClassName:\"Typewriter__wrapper\",cursorClassName:\"Typewriter__cursor\",stringSplitter:null,onCreateTextNode:null,onRemoveNode:null}),O(this||h,\"setupWrapperElement\",(function(){o.state.elements.container&&(o.state.elements.wrapper.className=o.options.wrapperClassName,o.state.elements.cursor.className=o.options.cursorClassName,o.state.elements.cursor.innerHTML=o.options.cursor,o.state.elements.container.innerHTML=\"\",o.state.elements.container.appendChild(o.state.elements.wrapper),o.state.elements.container.appendChild(o.state.elements.cursor))})),O(this||h,\"start\",(function(){return o.state.eventLoopPaused=!1,o.runEventLoop(),o})),O(this||h,\"pause\",(function(){return o.state.eventLoopPaused=!0,o})),O(this||h,\"stop\",(function(){return o.state.eventLoop&&((0,b.cancel)(o.state.eventLoop),o.state.eventLoop=null),o})),O(this||h,\"pauseFor\",(function(t){return o.addEventToQueue(N,{ms:t}),o})),O(this||h,\"typeOutAllStrings\",(function(){return\"string\"==typeof o.options.strings?(o.typeString(o.options.strings).pauseFor(o.options.pauseFor),o):(o.options.strings.forEach((function(t){o.typeString(t).pauseFor(o.options.pauseFor).deleteAll(o.options.deleteSpeed)})),o)})),O(this||h,\"typeString\",(function(t){var r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null;if(a(t))return o.typeOutHTMLString(t,r);if(t){var h=o.options||{},b=h.stringSplitter,_=\"function\"==typeof b?b(t):t.split(\"\");o.typeCharacters(_,r)}return o})),O(this||h,\"pasteString\",(function(t){var r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null;return a(t)?o.typeOutHTMLString(t,r,!0):(t&&o.addEventToQueue(M,{character:t,node:r}),o)})),O(this||h,\"typeOutHTMLString\",(function(t){var r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null,h=arguments.length>2?arguments[2]:void 0,b=i(t);if(b.length>0)for(var _=0;_<b.length;_++){var m=b[_],T=m.innerHTML;m&&3!==m.nodeType?(m.innerHTML=\"\",o.addEventToQueue(P,{node:m,parentNode:r}),h?o.pasteString(T,m):o.typeString(T,m)):m.textContent&&(h?o.pasteString(m.textContent,r):o.typeString(m.textContent,r))}return o})),O(this||h,\"deleteAll\",(function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:\"natural\";return o.addEventToQueue(A,{speed:t}),o})),O(this||h,\"changeDeleteSpeed\",(function(t){if(!t)throw new Error(\"Must provide new delete speed\");return o.addEventToQueue(L,{speed:t}),o})),O(this||h,\"changeDelay\",(function(t){if(!t)throw new Error(\"Must provide new delay\");return o.addEventToQueue(k,{delay:t}),o})),O(this||h,\"changeCursor\",(function(t){if(!t)throw new Error(\"Must provide new cursor\");return o.addEventToQueue(D,{cursor:t}),o})),O(this||h,\"deleteChars\",(function(t){if(!t)throw new Error(\"Must provide amount of characters to delete\");for(var r=0;r<t;r++)o.addEventToQueue(T);return o})),O(this||h,\"callFunction\",(function(t,r){if(!t||\"function\"!=typeof t)throw new Error(\"Callbak must be a function\");return o.addEventToQueue(C,{cb:t,thisArg:r}),o})),O(this||h,\"typeCharacters\",(function(t){var r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null;if(!t||!Array.isArray(t))throw new Error(\"Characters must be an array\");return t.forEach((function(t){o.addEventToQueue(m,{character:t,node:r})})),o})),O(this||h,\"removeCharacters\",(function(t){if(!t||!Array.isArray(t))throw new Error(\"Characters must be an array\");return t.forEach((function(){o.addEventToQueue(T)})),o})),O(this||h,\"addEventToQueue\",(function(t,r){var h=arguments.length>2&&void 0!==arguments[2]&&arguments[2];return o.addEventToStateProperty(t,r,h,\"eventQueue\")})),O(this||h,\"addReverseCalledEvent\",(function(t,r){var h=arguments.length>2&&void 0!==arguments[2]&&arguments[2],b=o.options.loop;return b?o.addEventToStateProperty(t,r,h,\"reverseCalledEvents\"):o})),O(this||h,\"addEventToStateProperty\",(function(t,r){var h=arguments.length>2&&void 0!==arguments[2]&&arguments[2],b=arguments.length>3?arguments[3]:void 0,_={eventName:t,eventArgs:r||{}};return o.state[b]=h?[_].concat(x(o.state[b])):[].concat(x(o.state[b]),[_]),o})),O(this||h,\"runEventLoop\",(function(){o.state.lastFrameTime||(o.state.lastFrameTime=Date.now());var t=Date.now(),r=t-o.state.lastFrameTime;if(!o.state.eventQueue.length){if(!o.options.loop)return;o.state.eventQueue=x(o.state.calledEvents),o.state.calledEvents=[],o.options=w({},o.state.initialOptions)}if(o.state.eventLoop=_()(o.runEventLoop),!o.state.eventLoopPaused){if(o.state.pauseUntil){if(t<o.state.pauseUntil)return;o.state.pauseUntil=null}var h,b=x(o.state.eventQueue),F=b.shift();if(!(r<=(h=F.eventName===S||F.eventName===T?\"natural\"===o.options.deleteSpeed?s(40,80):o.options.deleteSpeed:\"natural\"===o.options.delay?s(120,160):o.options.delay))){var z=F.eventName,Q=F.eventArgs;switch(o.logInDevMode({currentEvent:F,state:o.state,delay:h}),z){case M:case m:var I=Q.character,U=Q.node,H=document.createTextNode(I),B=H;o.options.onCreateTextNode&&\"function\"==typeof o.options.onCreateTextNode&&(B=o.options.onCreateTextNode(I,H)),B&&(U?U.appendChild(B):o.state.elements.wrapper.appendChild(B)),o.state.visibleNodes=[].concat(x(o.state.visibleNodes),[{type:\"TEXT_NODE\",character:I,node:B}]);break;case T:b.unshift({eventName:S,eventArgs:{removingCharacterNode:!0}});break;case N:var q=F.eventArgs.ms;o.state.pauseUntil=Date.now()+parseInt(q);break;case C:var V=F.eventArgs,W=V.cb,$=V.thisArg;W.call($,{elements:o.state.elements});break;case P:var G=F.eventArgs,Y=G.node,J=G.parentNode;J?J.appendChild(Y):o.state.elements.wrapper.appendChild(Y),o.state.visibleNodes=[].concat(x(o.state.visibleNodes),[{type:R,node:Y,parentNode:J||o.state.elements.wrapper}]);break;case A:var X=o.state.visibleNodes,K=Q.speed,Z=[];K&&Z.push({eventName:L,eventArgs:{speed:K,temp:!0}});for(var ee=0,te=X.length;ee<te;ee++)Z.push({eventName:S,eventArgs:{removingCharacterNode:!1}});K&&Z.push({eventName:L,eventArgs:{speed:o.options.deleteSpeed,temp:!0}}),b.unshift.apply(b,Z);break;case S:var re=F.eventArgs.removingCharacterNode;if(o.state.visibleNodes.length){var ne=o.state.visibleNodes.pop(),oe=ne.type,ae=ne.node,ie=ne.character;o.options.onRemoveNode&&\"function\"==typeof o.options.onRemoveNode&&o.options.onRemoveNode({node:ae,character:ie}),ae&&ae.parentNode.removeChild(ae),oe===R&&re&&b.unshift({eventName:S,eventArgs:{}})}break;case L:o.options.deleteSpeed=F.eventArgs.speed;break;case k:o.options.delay=F.eventArgs.delay;break;case D:o.options.cursor=F.eventArgs.cursor,o.state.elements.cursor.innerHTML=F.eventArgs.cursor}o.options.loop&&(F.eventName===S||F.eventArgs&&F.eventArgs.temp||(o.state.calledEvents=[].concat(x(o.state.calledEvents),[F]))),o.state.eventQueue=b,o.state.lastFrameTime=t}}})),t)if(\"string\"==typeof t){var F=document.querySelector(t);if(!F)throw new Error(\"Could not find container element\");(this||h).state.elements.container=F}else(this||h).state.elements.container=t;r&&((this||h).options=w(w({},(this||h).options),r)),(this||h).state.initialOptions=w({},(this||h).options),this.init()}var t,r;return t=e,(r=[{key:\"init\",value:function(){var t,r;this.setupWrapperElement(),this.addEventToQueue(D,{cursor:(this||h).options.cursor},!0),this.addEventToQueue(A,null,!0),!window||window.___TYPEWRITER_JS_STYLES_ADDED___||(this||h).options.skipAddStyles||(t=\".Typewriter__cursor{-webkit-animation:Typewriter-cursor 1s infinite;animation:Typewriter-cursor 1s infinite;margin-left:1px}@-webkit-keyframes Typewriter-cursor{0%{opacity:0}50%{opacity:1}100%{opacity:0}}@keyframes Typewriter-cursor{0%{opacity:0}50%{opacity:1}100%{opacity:0}}\",(r=document.createElement(\"style\")).appendChild(document.createTextNode(t)),document.head.appendChild(r),window.___TYPEWRITER_JS_STYLES_ADDED___=!0),!0===(this||h).options.autoStart&&(this||h).options.strings&&this.typeOutAllStrings().start()}},{key:\"logInDevMode\",value:function(t){(this||h).options.devMode&&console.log(t)}}])&&E(t.prototype,r),Object.defineProperty(t,\"prototype\",{writable:!1}),e}()},8552:(t,r,o)=>{var h=o(852)(o(5639),\"DataView\");t.exports=h},1989:(t,r,o)=>{var h=o(1789),b=o(401),_=o(7667),m=o(1327),T=o(1866);function u(t){var r=-1,o=null==t?0:t.length;for(this.clear();++r<o;){var h=t[r];this.set(h[0],h[1])}}u.prototype.clear=h,u.prototype.delete=b,u.prototype.get=_,u.prototype.has=m,u.prototype.set=T,t.exports=u},8407:(t,r,o)=>{var h=o(7040),b=o(4125),_=o(2117),m=o(7518),T=o(4705);function u(t){var r=-1,o=null==t?0:t.length;for(this.clear();++r<o;){var h=t[r];this.set(h[0],h[1])}}u.prototype.clear=h,u.prototype.delete=b,u.prototype.get=_,u.prototype.has=m,u.prototype.set=T,t.exports=u},7071:(t,r,o)=>{var h=o(852)(o(5639),\"Map\");t.exports=h},3369:(t,r,o)=>{var h=o(4785),b=o(1285),_=o(6e3),m=o(9916),T=o(5265);function u(t){var r=-1,o=null==t?0:t.length;for(this.clear();++r<o;){var h=t[r];this.set(h[0],h[1])}}u.prototype.clear=h,u.prototype.delete=b,u.prototype.get=_,u.prototype.has=m,u.prototype.set=T,t.exports=u},3818:(t,r,o)=>{var h=o(852)(o(5639),\"Promise\");t.exports=h},8525:(t,r,o)=>{var h=o(852)(o(5639),\"Set\");t.exports=h},8668:(t,r,o)=>{var b=o(3369),_=o(619),m=o(2385);function i(t){var r=-1,o=null==t?0:t.length;for((this||h).__data__=new b;++r<o;)this.add(t[r])}i.prototype.add=i.prototype.push=_,i.prototype.has=m,t.exports=i},6384:(t,r,o)=>{var b=o(8407),_=o(7465),m=o(3779),T=o(7599),A=o(4758),S=o(4309);function c(t){var r=(this||h).__data__=new b(t);(this||h).size=r.size}c.prototype.clear=_,c.prototype.delete=m,c.prototype.get=T,c.prototype.has=A,c.prototype.set=S,t.exports=c},2705:(t,r,o)=>{var h=o(5639).Symbol;t.exports=h},1149:(t,r,o)=>{var h=o(5639).Uint8Array;t.exports=h},577:(t,r,o)=>{var h=o(852)(o(5639),\"WeakMap\");t.exports=h},4963:t=>{t.exports=function(t,r){for(var o=-1,h=null==t?0:t.length,b=0,_=[];++o<h;){var m=t[o];r(m,o,t)&&(_[b++]=m)}return _}},4636:(t,r,o)=>{var h=o(2545),b=o(5694),_=o(1469),m=o(4144),T=o(5776),A=o(6719),S=Object.prototype.hasOwnProperty;t.exports=function(t,r){var o=_(t),N=!o&&b(t),C=!o&&!N&&m(t),P=!o&&!N&&!C&&A(t),L=o||N||C||P,k=L?h(t.length,String):[],D=k.length;for(var M in t)!r&&!S.call(t,M)||L&&(\"length\"==M||C&&(\"offset\"==M||\"parent\"==M)||P&&(\"buffer\"==M||\"byteLength\"==M||\"byteOffset\"==M)||T(M,D))||k.push(M);return k}},2488:t=>{t.exports=function(t,r){for(var o=-1,h=r.length,b=t.length;++o<h;)t[b+o]=r[o];return t}},2908:t=>{t.exports=function(t,r){for(var o=-1,h=null==t?0:t.length;++o<h;)if(r(t[o],o,t))return!0;return!1}},8470:(t,r,o)=>{var h=o(7813);t.exports=function(t,r){for(var o=t.length;o--;)if(h(t[o][0],r))return o;return-1}},8866:(t,r,o)=>{var h=o(2488),b=o(1469);t.exports=function(t,r,o){var _=r(t);return b(t)?_:h(_,o(t))}},4239:(t,r,o)=>{var h=o(2705),b=o(9607),_=o(2333),m=h?h.toStringTag:void 0;t.exports=function(t){return null==t?void 0===t?\"[object Undefined]\":\"[object Null]\":m&&m in Object(t)?b(t):_(t)}},9454:(t,r,o)=>{var h=o(4239),b=o(7005);t.exports=function(t){return b(t)&&\"[object Arguments]\"==h(t)}},939:(t,r,o)=>{var h=o(2492),b=o(7005);t.exports=function e(t,r,o,_,m){return t===r||(null==t||null==r||!b(t)&&!b(r)?t!=t&&r!=r:h(t,r,o,_,e,m))}},2492:(t,r,o)=>{var h=o(6384),b=o(7114),_=o(8351),m=o(6096),T=o(4160),A=o(1469),S=o(4144),N=o(6719),C=\"[object Arguments]\",P=\"[object Array]\",L=\"[object Object]\",k=Object.prototype.hasOwnProperty;t.exports=function(t,r,o,D,M,R){var F=A(t),z=A(r),Q=F?P:T(t),I=z?P:T(r),U=(Q=Q==C?L:Q)==L,H=(I=I==C?L:I)==L,B=Q==I;if(B&&S(t)){if(!S(r))return!1;F=!0,U=!1}if(B&&!U)return R||(R=new h),F||N(t)?b(t,r,o,D,M,R):_(t,r,Q,o,D,M,R);if(!(1&o)){var q=U&&k.call(t,\"__wrapped__\"),V=H&&k.call(r,\"__wrapped__\");if(q||V){var W=q?t.value():t,$=V?r.value():r;return R||(R=new h),M(W,$,o,D,R)}}return!!B&&(R||(R=new h),m(t,r,o,D,M,R))}},8458:(t,r,o)=>{var h=o(3560),b=o(5346),_=o(3218),m=o(346),T=/^\\[object .+?Constructor\\]$/,A=Function.prototype,S=Object.prototype,N=A.toString,C=S.hasOwnProperty,P=RegExp(\"^\"+N.call(C).replace(/[\\\\^$.*+?()[\\]{}|]/g,\"\\\\$&\").replace(/hasOwnProperty|(function).*?(?=\\\\\\()| for .+?(?=\\\\\\])/g,\"$1.*?\")+\"$\");t.exports=function(t){return!(!_(t)||b(t))&&(h(t)?P:T).test(m(t))}},8749:(t,r,o)=>{var h=o(4239),b=o(1780),_=o(7005),m={};m[\"[object Float32Array]\"]=m[\"[object Float64Array]\"]=m[\"[object Int8Array]\"]=m[\"[object Int16Array]\"]=m[\"[object Int32Array]\"]=m[\"[object Uint8Array]\"]=m[\"[object Uint8ClampedArray]\"]=m[\"[object Uint16Array]\"]=m[\"[object Uint32Array]\"]=!0,m[\"[object Arguments]\"]=m[\"[object Array]\"]=m[\"[object ArrayBuffer]\"]=m[\"[object Boolean]\"]=m[\"[object DataView]\"]=m[\"[object Date]\"]=m[\"[object Error]\"]=m[\"[object Function]\"]=m[\"[object Map]\"]=m[\"[object Number]\"]=m[\"[object Object]\"]=m[\"[object RegExp]\"]=m[\"[object Set]\"]=m[\"[object String]\"]=m[\"[object WeakMap]\"]=!1,t.exports=function(t){return _(t)&&b(t.length)&&!!m[h(t)]}},280:(t,r,o)=>{var h=o(5726),b=o(6916),_=Object.prototype.hasOwnProperty;t.exports=function(t){if(!h(t))return b(t);var r=[];for(var o in Object(t))_.call(t,o)&&\"constructor\"!=o&&r.push(o);return r}},2545:t=>{t.exports=function(t,r){for(var o=-1,h=Array(t);++o<t;)h[o]=r(o);return h}},1717:t=>{t.exports=function(t){return function(r){return t(r)}}},4757:t=>{t.exports=function(t,r){return t.has(r)}},4429:(t,r,o)=>{var h=o(5639)[\"__core-js_shared__\"];t.exports=h},7114:(t,r,o)=>{var h=o(8668),b=o(2908),_=o(4757);t.exports=function(t,r,o,m,T,A){var S=1&o,N=t.length,C=r.length;if(N!=C&&!(S&&C>N))return!1;var P=A.get(t),L=A.get(r);if(P&&L)return P==r&&L==t;var k=-1,D=!0,M=2&o?new h:void 0;for(A.set(t,r),A.set(r,t);++k<N;){var R=t[k],F=r[k];if(m)var z=S?m(F,R,k,r,t,A):m(R,F,k,t,r,A);if(void 0!==z){if(z)continue;D=!1;break}if(M){if(!b(r,(function(t,r){if(!_(M,r)&&(R===t||T(R,t,o,m,A)))return M.push(r)}))){D=!1;break}}else if(R!==F&&!T(R,F,o,m,A)){D=!1;break}}return A.delete(t),A.delete(r),D}},8351:(t,r,o)=>{var h=o(2705),b=o(1149),_=o(7813),m=o(7114),T=o(8776),A=o(1814),S=h?h.prototype:void 0,N=S?S.valueOf:void 0;t.exports=function(t,r,o,h,S,C,P){switch(o){case\"[object DataView]\":if(t.byteLength!=r.byteLength||t.byteOffset!=r.byteOffset)return!1;t=t.buffer,r=r.buffer;case\"[object ArrayBuffer]\":return!(t.byteLength!=r.byteLength||!C(new b(t),new b(r)));case\"[object Boolean]\":case\"[object Date]\":case\"[object Number]\":return _(+t,+r);case\"[object Error]\":return t.name==r.name&&t.message==r.message;case\"[object RegExp]\":case\"[object String]\":return t==r+\"\";case\"[object Map]\":var L=T;case\"[object Set]\":var k=1&h;if(L||(L=A),t.size!=r.size&&!k)return!1;var D=P.get(t);if(D)return D==r;h|=2,P.set(t,r);var M=m(L(t),L(r),h,S,C,P);return P.delete(t),M;case\"[object Symbol]\":if(N)return N.call(t)==N.call(r)}return!1}},6096:(t,r,o)=>{var h=o(8234),b=Object.prototype.hasOwnProperty;t.exports=function(t,r,o,_,m,T){var A=1&o,S=h(t),N=S.length;if(N!=h(r).length&&!A)return!1;for(var C=N;C--;){var P=S[C];if(!(A?P in r:b.call(r,P)))return!1}var L=T.get(t),k=T.get(r);if(L&&k)return L==r&&k==t;var D=!0;T.set(t,r),T.set(r,t);for(var M=A;++C<N;){var R=t[P=S[C]],F=r[P];if(_)var z=A?_(F,R,P,r,t,T):_(R,F,P,t,r,T);if(!(void 0===z?R===F||m(R,F,o,_,T):z)){D=!1;break}M||(M=\"constructor\"==P)}if(D&&!M){var Q=t.constructor,I=r.constructor;Q==I||!(\"constructor\"in t)||!(\"constructor\"in r)||\"function\"==typeof Q&&Q instanceof Q&&\"function\"==typeof I&&I instanceof I||(D=!1)}return T.delete(t),T.delete(r),D}},1957:(t,r,o)=>{var h=\"object\"==typeof o.g&&o.g&&o.g.Object===Object&&o.g;t.exports=h},8234:(t,r,o)=>{var h=o(8866),b=o(9551),_=o(3674);t.exports=function(t){return h(t,_,b)}},5050:(t,r,o)=>{var h=o(7019);t.exports=function(t,r){var o=t.__data__;return h(r)?o[\"string\"==typeof r?\"string\":\"hash\"]:o.map}},852:(t,r,o)=>{var h=o(8458),b=o(7801);t.exports=function(t,r){var o=b(t,r);return h(o)?o:void 0}},9607:(t,r,o)=>{var h=o(2705),b=Object.prototype,_=b.hasOwnProperty,m=b.toString,T=h?h.toStringTag:void 0;t.exports=function(t){var r=_.call(t,T),o=t[T];try{t[T]=void 0;var h=!0}catch(t){}var b=m.call(t);return h&&(r?t[T]=o:delete t[T]),b}},9551:(t,r,o)=>{var h=o(4963),b=o(479),_=Object.prototype.propertyIsEnumerable,m=Object.getOwnPropertySymbols,T=m?function(t){return null==t?[]:(t=Object(t),h(m(t),(function(r){return _.call(t,r)})))}:b;t.exports=T},4160:(t,r,o)=>{var h=o(8552),b=o(7071),_=o(3818),m=o(8525),T=o(577),A=o(4239),S=o(346),N=\"[object Map]\",C=\"[object Promise]\",P=\"[object Set]\",L=\"[object WeakMap]\",k=\"[object DataView]\",D=S(h),M=S(b),R=S(_),F=S(m),z=S(T),Q=A;(h&&Q(new h(new ArrayBuffer(1)))!=k||b&&Q(new b)!=N||_&&Q(_.resolve())!=C||m&&Q(new m)!=P||T&&Q(new T)!=L)&&(Q=function(t){var r=A(t),o=\"[object Object]\"==r?t.constructor:void 0,h=o?S(o):\"\";if(h)switch(h){case D:return k;case M:return N;case R:return C;case F:return P;case z:return L}return r}),t.exports=Q},7801:t=>{t.exports=function(t,r){return null==t?void 0:t[r]}},1789:(t,r,o)=>{var b=o(4536);t.exports=function(){(this||h).__data__=b?b(null):{},(this||h).size=0}},401:t=>{t.exports=function(t){var r=this.has(t)&&delete(this||h).__data__[t];return(this||h).size-=r?1:0,r}},7667:(t,r,o)=>{var b=o(4536),_=Object.prototype.hasOwnProperty;t.exports=function(t){var r=(this||h).__data__;if(b){var o=r[t];return\"__lodash_hash_undefined__\"===o?void 0:o}return _.call(r,t)?r[t]:void 0}},1327:(t,r,o)=>{var b=o(4536),_=Object.prototype.hasOwnProperty;t.exports=function(t){var r=(this||h).__data__;return b?void 0!==r[t]:_.call(r,t)}},1866:(t,r,o)=>{var b=o(4536);t.exports=function(t,r){var o=(this||h).__data__;return(this||h).size+=this.has(t)?0:1,o[t]=b&&void 0===r?\"__lodash_hash_undefined__\":r,this||h}},5776:t=>{var r=/^(?:0|[1-9]\\d*)$/;t.exports=function(t,o){var h=typeof t;return!!(o=null==o?9007199254740991:o)&&(\"number\"==h||\"symbol\"!=h&&r.test(t))&&t>-1&&t%1==0&&t<o}},7019:t=>{t.exports=function(t){var r=typeof t;return\"string\"==r||\"number\"==r||\"symbol\"==r||\"boolean\"==r?\"__proto__\"!==t:null===t}},5346:(t,r,o)=>{var h,b=o(4429),_=(h=/[^.]+$/.exec(b&&b.keys&&b.keys.IE_PROTO||\"\"))?\"Symbol(src)_1.\"+h:\"\";t.exports=function(t){return!!_&&_ in t}},5726:t=>{var r=Object.prototype;t.exports=function(t){var o=t&&t.constructor;return t===(\"function\"==typeof o&&o.prototype||r)}},7040:t=>{t.exports=function(){(this||h).__data__=[],(this||h).size=0}},4125:(t,r,o)=>{var b=o(8470),_=Array.prototype.splice;t.exports=function(t){var r=(this||h).__data__,o=b(r,t);return!(o<0||(o==r.length-1?r.pop():_.call(r,o,1),--(this||h).size,0))}},2117:(t,r,o)=>{var b=o(8470);t.exports=function(t){var r=(this||h).__data__,o=b(r,t);return o<0?void 0:r[o][1]}},7518:(t,r,o)=>{var b=o(8470);t.exports=function(t){return b((this||h).__data__,t)>-1}},4705:(t,r,o)=>{var b=o(8470);t.exports=function(t,r){var o=(this||h).__data__,_=b(o,t);return _<0?(++(this||h).size,o.push([t,r])):o[_][1]=r,this||h}},4785:(t,r,o)=>{var b=o(1989),_=o(8407),m=o(7071);t.exports=function(){(this||h).size=0,(this||h).__data__={hash:new b,map:new(m||_),string:new b}}},1285:(t,r,o)=>{var b=o(5050);t.exports=function(t){var r=b(this||h,t).delete(t);return(this||h).size-=r?1:0,r}},6e3:(t,r,o)=>{var b=o(5050);t.exports=function(t){return b(this||h,t).get(t)}},9916:(t,r,o)=>{var b=o(5050);t.exports=function(t){return b(this||h,t).has(t)}},5265:(t,r,o)=>{var b=o(5050);t.exports=function(t,r){var o=b(this||h,t),_=o.size;return o.set(t,r),(this||h).size+=o.size==_?0:1,this||h}},8776:t=>{t.exports=function(t){var r=-1,o=Array(t.size);return t.forEach((function(t,h){o[++r]=[h,t]})),o}},4536:(t,r,o)=>{var h=o(852)(Object,\"create\");t.exports=h},6916:(t,r,o)=>{var h=o(5569)(Object.keys,Object);t.exports=h},1167:(t,r,o)=>{t=o.nmd(t);var h=o(1957),b=r&&!r.nodeType&&r,_=b&&t&&!t.nodeType&&t,m=_&&_.exports===b&&h.process,T=function(){try{return _&&_.require&&_.require(\"util\").types||m&&m.binding&&m.binding(\"util\")}catch(t){}}();t.exports=T},2333:t=>{var r=Object.prototype.toString;t.exports=function(t){return r.call(t)}},5569:t=>{t.exports=function(t,r){return function(o){return t(r(o))}}},5639:(t,r,o)=>{var h=o(1957),b=\"object\"==typeof self&&self&&self.Object===Object&&self,_=h||b||Function(\"return this\")();t.exports=_},619:t=>{t.exports=function(t){return(this||h).__data__.set(t,\"__lodash_hash_undefined__\"),this||h}},2385:t=>{t.exports=function(t){return(this||h).__data__.has(t)}},1814:t=>{t.exports=function(t){var r=-1,o=Array(t.size);return t.forEach((function(t){o[++r]=t})),o}},7465:(t,r,o)=>{var b=o(8407);t.exports=function(){(this||h).__data__=new b,(this||h).size=0}},3779:t=>{t.exports=function(t){var r=(this||h).__data__,o=r.delete(t);return(this||h).size=r.size,o}},7599:t=>{t.exports=function(t){return(this||h).__data__.get(t)}},4758:t=>{t.exports=function(t){return(this||h).__data__.has(t)}},4309:(t,r,o)=>{var b=o(8407),_=o(7071),m=o(3369);t.exports=function(t,r){var o=(this||h).__data__;if(o instanceof b){var T=o.__data__;if(!_||T.length<199)return T.push([t,r]),(this||h).size=++o.size,this||h;o=(this||h).__data__=new m(T)}return o.set(t,r),(this||h).size=o.size,this||h}},346:t=>{var r=Function.prototype.toString;t.exports=function(t){if(null!=t){try{return r.call(t)}catch(t){}try{return t+\"\"}catch(t){}}return\"\"}},7813:t=>{t.exports=function(t,r){return t===r||t!=t&&r!=r}},5694:(t,r,o)=>{var h=o(9454),b=o(7005),_=Object.prototype,m=_.hasOwnProperty,T=_.propertyIsEnumerable,A=h(function(){return arguments}())?h:function(t){return b(t)&&m.call(t,\"callee\")&&!T.call(t,\"callee\")};t.exports=A},1469:t=>{var r=Array.isArray;t.exports=r},8612:(t,r,o)=>{var h=o(3560),b=o(1780);t.exports=function(t){return null!=t&&b(t.length)&&!h(t)}},4144:(t,r,o)=>{t=o.nmd(t);var h=o(5639),b=o(5062),_=r&&!r.nodeType&&r,m=_&&t&&!t.nodeType&&t,T=m&&m.exports===_?h.Buffer:void 0,A=(T?T.isBuffer:void 0)||b;t.exports=A},8446:(t,r,o)=>{var h=o(939);t.exports=function(t,r){return h(t,r)}},3560:(t,r,o)=>{var h=o(4239),b=o(3218);t.exports=function(t){if(!b(t))return!1;var r=h(t);return\"[object Function]\"==r||\"[object GeneratorFunction]\"==r||\"[object AsyncFunction]\"==r||\"[object Proxy]\"==r}},1780:t=>{t.exports=function(t){return\"number\"==typeof t&&t>-1&&t%1==0&&t<=9007199254740991}},3218:t=>{t.exports=function(t){var r=typeof t;return null!=t&&(\"object\"==r||\"function\"==r)}},7005:t=>{t.exports=function(t){return null!=t&&\"object\"==typeof t}},6719:(t,r,o)=>{var h=o(8749),b=o(1717),_=o(1167),m=_&&_.isTypedArray,T=m?b(m):h;t.exports=T},3674:(t,r,o)=>{var h=o(4636),b=o(280),_=o(8612);t.exports=function(t){return _(t)?h(t):b(t)}},479:t=>{t.exports=function(){return[]}},5062:t=>{t.exports=function(){return!1}},75:function(t){(function(){var r,o,h,b,m,T;\"undefined\"!=typeof performance&&null!==performance&&performance.now?t.exports=function(){return performance.now()}:\"undefined\"!=typeof _&&null!==_&&_.hrtime?(t.exports=function(){return(r()-m)/1e6},o=_.hrtime,b=(r=function(){var t;return 1e9*(t=o())[0]+t[1]})(),T=1e9*_.uptime(),m=b-T):Date.now?(t.exports=function(){return Date.now()-h},h=Date.now()):(t.exports=function(){return(new Date).getTime()-h},h=(new Date).getTime())}).call(this||h)},4087:(t,r,o)=>{for(var h=o(75),b=\"undefined\"==typeof window?o.g:window,_=[\"moz\",\"webkit\"],m=\"AnimationFrame\",T=b[\"request\"+m],A=b[\"cancel\"+m]||b[\"cancelRequest\"+m],S=0;!T&&S<_.length;S++)T=b[_[S]+\"Request\"+m],A=b[_[S]+\"Cancel\"+m]||b[_[S]+\"CancelRequest\"+m];if(!T||!A){var N=0,C=0,P=[];T=function(t){if(0===P.length){var r=h(),o=Math.max(0,16.666666666666668-(r-N));N=o+r,setTimeout((function(){var t=P.slice(0);P.length=0;for(var r=0;r<t.length;r++)if(!t[r].cancelled)try{t[r].callback(N)}catch(t){setTimeout((function(){throw t}),0)}}),Math.round(o))}return P.push({handle:++C,callback:t,cancelled:!1}),C},A=function(t){for(var r=0;r<P.length;r++)P[r].handle===t&&(P[r].cancelled=!0)}}t.exports=function(t){return T.call(b,t)},t.exports.cancel=function(){A.apply(b,arguments)},t.exports.polyfill=function(t){t||(t=b),t.requestAnimationFrame=T,t.cancelAnimationFrame=A}},8156:r=>{r.exports=t}},o={};function n(t){var h=o[t];if(void 0!==h)return h.exports;var b=o[t]={id:t,loaded:!1,exports:{}};return r[t].call(b.exports,b,b.exports,n),b.loaded=!0,b.exports}n.n=t=>{var r=t&&t.__esModule?()=>t.default:()=>t;return n.d(r,{a:r}),r},n.d=(t,r)=>{for(var o in r)n.o(r,o)&&!n.o(t,o)&&Object.defineProperty(t,o,{enumerable:!0,get:r[o]})},n.g=function(){if(\"object\"==typeof globalThis)return globalThis;try{return this||h||new Function(\"return this\")()}catch(t){if(\"object\"==typeof window)return window}}(),n.o=(t,r)=>Object.prototype.hasOwnProperty.call(t,r),n.nmd=t=>(t.paths=[],t.children||(t.children=[]),t);var b={};return(()=>{n.d(b,{default:()=>A});var t=n(8156),r=n.n(t),o=n(7403),_=n(8446),m=n.n(_);function s(t){return s=\"function\"==typeof Symbol&&\"symbol\"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&\"function\"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?\"symbol\":typeof t},s(t)}function u(t,r){if(!(t instanceof r))throw new TypeError(\"Cannot call a class as a function\")}function c(t,r){for(var o=0;o<r.length;o++){var h=r[o];h.enumerable=h.enumerable||!1,h.configurable=!0,\"value\"in h&&(h.writable=!0),Object.defineProperty(t,h.key,h)}}function p(t,r){return p=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(t,r){return t.__proto__=r,t},p(t,r)}function l(t,r){if(r&&(\"object\"===s(r)||\"function\"==typeof r))return r;if(void 0!==r)throw new TypeError(\"Derived constructors may only return object or undefined\");return f(t)}function f(t){if(void 0===t)throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");return t}function v(t){return v=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(t){return t.__proto__||Object.getPrototypeOf(t)},v(t)}function d(t,r,o){return r in t?Object.defineProperty(t,r,{value:o,enumerable:!0,configurable:!0,writable:!0}):t[r]=o,t}var T=function(t){!function(t,r){if(\"function\"!=typeof r&&null!==r)throw new TypeError(\"Super expression must either be null or a function\");t.prototype=Object.create(r&&r.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),Object.defineProperty(t,\"prototype\",{writable:!1}),r&&p(t,r)}(y,t);var b,_,T,A,S=(T=y,A=function(){if(\"undefined\"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if(\"function\"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(t){return!1}}(),function(){var t,r=v(T);if(A){var o=v(this||h).constructor;t=Reflect.construct(r,arguments,o)}else t=r.apply(this||h,arguments);return l(this||h,t)});function y(){var t;u(this||h,y);for(var r=arguments.length,o=new Array(r),b=0;b<r;b++)o[b]=arguments[b];return d(f(t=S.call.apply(S,[this||h].concat(o))),\"state\",{instance:null}),t}return b=y,(_=[{key:\"componentDidMount\",value:function(){var t=this||h,r=new o.default((this||h).typewriter,(this||h).props.options);this.setState({instance:r},(function(){var o=t.props.onInit;o&&o(r)}))}},{key:\"componentDidUpdate\",value:function(t){m()((this||h).props.options,t.options)||this.setState({instance:new o.default((this||h).typewriter,(this||h).props.options)})}},{key:\"componentWillUnmount\",value:function(){(this||h).state.instance&&(this||h).state.instance.stop()}},{key:\"render\",value:function(){var t=this||h,o=(this||h).props.component;return r().createElement(o,{ref:function(r){return t.typewriter=r},className:\"Typewriter\",\"data-testid\":\"typewriter-wrapper\"})}}])&&c(b.prototype,_),Object.defineProperty(b,\"prototype\",{writable:!1}),y}(t.Component);T.defaultProps={component:\"div\"};const A=T})(),b.default})()));var m=b;const T=b.Typewriter;export{T as Typewriter,m as default};\n\n//# sourceMappingURL=react.js.map","import{jsx as _jsx}from\"react/jsx-runtime\";import{addPropertyControls,ControlType,RenderTarget,withCSS}from\"framer\";import Typewriter from\"typewriter-effect\";const headingStyles=props=>{return{width:\"100%\",height:\"100%\",// display: \"flex\",\n// placeContent: \"center\",\n// placeItems: \"center\",\nposition:\"relative\",overflow:\"visible\",fontSize:props.font.fontSize,fontFamily:props.font.fontFamily||\"Inter\",fontWeight:props.font.fontWeight,letterSpacing:props.font.letterSpacing,lineHeight:props.font.lineHeightType?props.font.lineHeight:`${props.font.lineHeightPixels}px`,textAlign:props.font.textAlign,whiteSpace:props.font.whiteSpace,color:props.color,left:`${props.font.offset}%`,margin:0,padding:0};};/**\n * Typewriter\n * By Benjamin den Boer\n * @benjaminnathan\n *\n * @framerIntrinsicWidth 200\n * @framerIntrinsicHeight 200\n * @framerDisableUnlink\n *\n * @framerSupportedLayoutWidth any\n * @framerSupportedLayoutHeight any\n */export default function TypeWriter(props){const isCanvas=RenderTarget.current()===RenderTarget.canvas;const strings=props.text.split(\" \");const content=props.split?strings:props.text;const canvasContent=props.split?strings[0]:props.text;/* Semantics */const tagMap={paragraph:\"p\",heading1:\"h1\",heading2:\"h2\",heading3:\"h3\"};const Tag=tagMap[props.tag];const cursorStyles=`.${props.id} .Typewriter__cursor { color: ${props.cursorColor}; }`;const TypeWriterPure=()=>/*#__PURE__*/_jsx(Typewriter,{options:{strings:content,autoStart:props.autoStart,loop:props.loop,cursor:props.cursor,pauseFor:props.pauseFor*1e3,delay:props.delayType?\"natural\":props.delayNumber*1e3},component:\"span\",onInit:typewriter=>{typewriter.callFunction(state=>{if(props.loop)return;// Remove caret on end\n    if(!props.caretVisibility){state.elements.cursor.style.display=\"none\";}});}});const TypeWriterWithCSS=withCSS(()=>/*#__PURE__*/_jsx(\"span\",{style:{display:\"contents\"},className:`${props.id}`,children:/*#__PURE__*/_jsx(TypeWriterPure,{})}),cursorStyles);return /*#__PURE__*/_jsx(Tag,{style:headingStyles(props),children:isCanvas?canvasContent:/*#__PURE__*/_jsx(TypeWriterWithCSS,{})});}TypeWriter.displayName=\"Typewriter\";TypeWriter.defaultProps={text:\"Hello World\",font:{fontFamily:\"Inter\",fontSize:32,fontWeight:600,textAlign:\"center\",lineHeight:1.2,lineHeightType:true,lineHeightPixels:100,letterSpacing:0,offset:0,whiteSpace:\"nowrap\"},cursor:\"|\",delayType:true,delayNumber:.2,pauseFor:1,loop:true,caretVisibility:true,split:false,autoStart:true,tag:\"heading1\",color:\"#888\",cursorColor:\"rgba(136, 136, 136, 0.5)\"};/* Property Controls */addPropertyControls(TypeWriter,{tag:{title:\"Tag\",type:ControlType.Enum,options:[\"heading1\",\"heading2\",\"heading3\",\"paragraph\"],optionTitles:[\"H1\",\"H2\",\"H3\",\"P\"],defaultValue:TypeWriter.defaultProps.tag,displaySegmentedControl:true},text:{type:ControlType.String,title:\"Text\",defaultValue:TypeWriter.defaultProps.text},autoStart:{title:\"Autoplay\",type:ControlType.Boolean,defaultValue:TypeWriter.defaultProps.autoStart},split:{title:\"Per Word\",type:ControlType.Boolean,defaultValue:TypeWriter.defaultProps.split},loop:{title:\"Loop\",type:ControlType.Boolean,defaultValue:TypeWriter.defaultProps.loop},caretVisibility:{title:\"Caret\",type:ControlType.Boolean,enabledTitle:\"Show\",disabledTitle:\"Hide\",defaultValue:TypeWriter.defaultProps.caretVisibility,hidden:props=>props.loop},delayType:{title:\"Delay\",type:ControlType.Boolean,enabledTitle:\"Natural\",disabledTitle:\"Number\",defaultValue:TypeWriter.defaultProps.delayType},delayNumber:{title:\"Delay\",type:ControlType.Number,step:.1,min:0,defaultValue:TypeWriter.defaultProps.delayNumber,displayStepper:true,hidden:props=>props.delayType},pauseFor:{title:\"Pause\",type:ControlType.Number,min:0,defaultValue:TypeWriter.defaultProps.pauseFor,displayStepper:true},color:{type:ControlType.Color,defaultValue:TypeWriter.defaultProps.color},font:{type:ControlType.Object,controls:{fontFamily:{title:\"Font\",type:ControlType.String,placeholder:\"Inter\",defaultValue:TypeWriter.defaultProps.font.fontFamily},fontSize:{title:\"Size\",type:ControlType.Number,min:0,max:500,step:.5,defaultValue:TypeWriter.defaultProps.font.fontSize},fontWeight:{type:ControlType.Enum,options:[100,200,300,400,500,600,700,800,900],defaultValue:TypeWriter.defaultProps.font.fontWeight,title:\"Weight\"},textAlign:{type:ControlType.Enum,displaySegmentedControl:true,title:\"Align\",options:[\"left\",\"center\",\"right\"],optionTitles:[\"Left\",\"Center\",\"Right\"],defaultValue:TypeWriter.defaultProps.font.textAlign},letterSpacing:{title:\"Letter\",type:ControlType.Number,defaultValue:TypeWriter.defaultProps.font.letterSpacing,step:.1,displayStepper:true},offset:{type:ControlType.Number,title:\"Offset\",min:-100,max:100,displayStepper:true,step:.25,defaultValue:TypeWriter.defaultProps.font.offset,unit:\"%\"},whiteSpace:{type:ControlType.Enum,title:\"Space\",options:[\"normal\",\"nowrap\",\"pre\",\"pre-wrap\",\"preline\",\"break-spaces\"],optionTitles:[\"Normal\",\"No Wrap\",\"Pre\",\"Pre Wrap\",\"Preline\",\"Break Spaces\"],defaultValue:TypeWriter.defaultProps.font.whiteSpace},lineHeight:{type:ControlType.Number,title:\"Line\",min:-500,max:500,displayStepper:true,step:.1,defaultValue:TypeWriter.defaultProps.font.lineHeight,hidden:props=>!props.lineHeightType},lineHeightPixels:{type:ControlType.Number,title:\"Line\",min:-500,max:500,displayStepper:true,step:.1,defaultValue:TypeWriter.defaultProps.font.lineHeightPixels,hidden:props=>props.lineHeightType},lineHeightType:{type:ControlType.Boolean,title:\" \",enabledTitle:\"em\",disabledTitle:\"px\",defaultValue:TypeWriter.defaultProps.font.lineHeightType}}},cursor:{title:\"Cursor\",type:ControlType.String,defaultValue:TypeWriter.defaultProps.cursor,placeholder:\"Character\"},cursorColor:{type:ControlType.Color,title:\" \",defaultValue:TypeWriter.defaultProps.cursorColor}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"TypeWriter\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\",\"framerSupportedLayoutHeight\":\"any\",\"framerIntrinsicHeight\":\"200\",\"framerDisableUnlink\":\"*\",\"framerIntrinsicWidth\":\"200\",\"framerSupportedLayoutWidth\":\"any\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./Typewriter.map","// Generated by Framer (ee1e8a0)\nimport{jsx as _jsx}from\"react/jsx-runtime\";import{addFonts,addPropertyControls,ComponentViewportProvider,ControlType,cx,getFonts,SmartComponentScopedContainer,useActiveVariantCallback,useComponentViewport,useLocaleInfo,useVariantState,withCSS}from\"framer\";import{LayoutGroup,motion,MotionConfigContext}from\"framer-motion\";import*as React from\"react\";import{useRef}from\"react\";import Typewriter from\"https://framerusercontent.com/modules/vgSbxmWWvbgW6ShllXld/Q0iNIU3I9Q4tAnX9GHy7/Typewriter.js\";const TypewriterFonts=getFonts(Typewriter);const cycleOrder=[\"B7U1QVpUs\",\"gSAapyv4V\"];const serializationHash=\"framer-Cc7m4\";const variantClassNames={B7U1QVpUs:\"framer-v-o83jd\",gSAapyv4V:\"framer-v-qzho58\"};function addPropertyOverrides(overrides,...variants){const nextOverrides={};variants?.forEach(variant=>variant&&Object.assign(nextOverrides,overrides[variant]));return nextOverrides;}const transition1={damping:60,delay:0,mass:1,stiffness:500,type:\"spring\"};const Transition=({value,children})=>{const config=React.useContext(MotionConfigContext);const transition=value??config.transition;const contextValue=React.useMemo(()=>({...config,transition}),[JSON.stringify(transition)]);return /*#__PURE__*/_jsx(MotionConfigContext.Provider,{value:contextValue,children:children});};const Variants=motion.create(React.Fragment);const humanReadableVariantMap={\"Message \\xb7 Phone\":\"gSAapyv4V\",Message:\"B7U1QVpUs\"};const getProps=({height,id,text,width,...props})=>{return{...props,variant:humanReadableVariantMap[props.variant]??props.variant??\"B7U1QVpUs\",w0wIpiEX1:text??props.w0wIpiEX1??\"Good job!\"};};const createLayoutDependency=(props,variants)=>{if(props.layoutDependency)return variants.join(\"-\")+props.layoutDependency;return variants.join(\"-\");};const Component=/*#__PURE__*/React.forwardRef(function(props,ref){const fallbackRef=useRef(null);const refBinding=ref??fallbackRef;const defaultLayoutId=React.useId();const{activeLocale,setLocale}=useLocaleInfo();const componentViewport=useComponentViewport();const{style,className,layoutId,variant,w0wIpiEX1,...restProps}=getProps(props);const{baseVariant,classNames,clearLoadingGesture,gestureHandlers,gestureVariant,isLoading,setGestureState,setVariant,variants}=useVariantState({cycleOrder,defaultVariant:\"B7U1QVpUs\",ref:refBinding,variant,variantClassNames});const layoutDependency=createLayoutDependency(props,variants);const{activeVariantCallback,delay}=useActiveVariantCallback(baseVariant);const onTapzkybdb=activeVariantCallback(async(...args)=>{setGestureState({isPressed:false});setVariant(\"B7U1QVpUs\");});const sharedStyleClassNames=[];const scopingClassNames=cx(serializationHash,...sharedStyleClassNames);return /*#__PURE__*/_jsx(LayoutGroup,{id:layoutId??defaultLayoutId,children:/*#__PURE__*/_jsx(Variants,{animate:variants,initial:false,children:/*#__PURE__*/_jsx(Transition,{value:transition1,children:/*#__PURE__*/_jsx(motion.div,{...restProps,...gestureHandlers,className:cx(scopingClassNames,\"framer-o83jd\",className,classNames),\"data-framer-name\":\"Message\",\"data-highlight\":true,layoutDependency:layoutDependency,layoutId:\"B7U1QVpUs\",onTap:onTapzkybdb,ref:refBinding,style:{...style},...addPropertyOverrides({gSAapyv4V:{\"data-framer-name\":\"Message \\xb7 Phone\"}},baseVariant,gestureVariant),children:/*#__PURE__*/_jsx(motion.div,{className:\"framer-3he206\",\"data-framer-name\":\"Shadow\",layoutDependency:layoutDependency,layoutId:\"Y78AfdzMb\",style:{borderBottomLeftRadius:9999,borderBottomRightRadius:9999,borderTopLeftRadius:9999,borderTopRightRadius:9999,boxShadow:\"0px 12px 16px -16px rgba(0, 0, 0, 0.32), 0px 22px 20px -16px rgba(0, 0, 0, 0.08)\"},children:/*#__PURE__*/_jsx(motion.div,{className:\"framer-vi7xh5\",\"data-border\":true,\"data-framer-name\":\"Message\",layoutDependency:layoutDependency,layoutId:\"WUDAoZV2E\",style:{\"--border-bottom-width\":\"3px\",\"--border-color\":\"var(--token-32240d71-c083-469d-9ce8-28ea75897da6, rgb(204, 204, 204))\",\"--border-left-width\":\"3px\",\"--border-right-width\":\"3px\",\"--border-style\":\"solid\",\"--border-top-width\":\"3px\",backgroundColor:\"var(--token-5b7c14a4-6eac-4fec-b1dd-68cde4248eb3, rgb(255, 255, 255))\",borderBottomLeftRadius:16,borderBottomRightRadius:16,borderTopLeftRadius:16,borderTopRightRadius:16},children:/*#__PURE__*/_jsx(ComponentViewportProvider,{children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-1a8z1kj-container\",isAuthoredByUser:true,isModuleExternal:true,layoutDependency:layoutDependency,layoutId:\"nbCoazghb-container\",nodeId:\"nbCoazghb\",rendersWithMotion:true,scopeId:\"YkiRD6KLJ\",children:/*#__PURE__*/_jsx(Typewriter,{autoStart:true,caretVisibility:true,color:\"var(--token-05627d04-ec61-437a-8cba-573750015dc3, rgb(34, 34, 34))\",cursor:\"|\",cursorColor:\"rgba(136, 136, 136, 0.5)\",delayNumber:1,delayType:false,font:{fontFamily:\"Inter\",fontSize:36,fontWeight:500,letterSpacing:0,lineHeight:1,lineHeightPixels:100,lineHeightType:true,offset:0,textAlign:\"center\",whiteSpace:\"nowrap\"},height:\"100%\",id:\"nbCoazghb\",layoutId:\"nbCoazghb\",loop:true,pauseFor:4,split:false,tag:\"heading2\",text:w0wIpiEX1,width:\"100%\",...addPropertyOverrides({gSAapyv4V:{font:{fontFamily:\"Inter\",fontSize:24,fontWeight:500,letterSpacing:0,lineHeight:1,lineHeightPixels:100,lineHeightType:true,offset:0,textAlign:\"center\",whiteSpace:\"nowrap\"},tag:\"heading1\"}},baseVariant,gestureVariant)})})})})})})})})});});const css=[\"@supports (aspect-ratio: 1) { body { --framer-aspect-ratio-supported: auto; } }\",\".framer-Cc7m4.framer-xcblhp, .framer-Cc7m4 .framer-xcblhp { display: block; }\",\".framer-Cc7m4.framer-o83jd { align-content: center; align-items: center; cursor: pointer; display: flex; flex-direction: row; flex-wrap: nowrap; gap: 10px; height: min-content; justify-content: center; overflow: visible; padding: 0px; position: relative; width: min-content; }\",\".framer-Cc7m4 .framer-3he206 { align-content: center; align-items: center; display: flex; flex: none; flex-direction: column; flex-wrap: nowrap; gap: 0px; height: min-content; justify-content: center; overflow: visible; padding: 0px; position: relative; width: min-content; }\",\".framer-Cc7m4 .framer-vi7xh5 { align-content: center; align-items: center; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; gap: 0px; height: min-content; justify-content: flex-start; overflow: visible; padding: 24px 24px 24px 32px; position: relative; width: 400px; }\",\".framer-Cc7m4 .framer-1a8z1kj-container { flex: none; height: auto; position: relative; width: auto; }\",\".framer-Cc7m4.framer-v-qzho58 .framer-vi7xh5 { width: 368px; }\",'.framer-Cc7m4[data-border=\"true\"]::after, .framer-Cc7m4 [data-border=\"true\"]::after { content: \"\"; border-width: var(--border-top-width, 0) var(--border-right-width, 0) var(--border-bottom-width, 0) var(--border-left-width, 0); border-color: var(--border-color, none); border-style: var(--border-style, none); width: 100%; height: 100%; position: absolute; box-sizing: border-box; left: 0; top: 0; border-radius: inherit; pointer-events: none; }'];/**\n * This is a generated Framer component.\n * @framerIntrinsicHeight 84\n * @framerIntrinsicWidth 400\n * @framerCanvasComponentVariantDetails {\"propertyName\":\"variant\",\"data\":{\"default\":{\"layout\":[\"auto\",\"auto\"]},\"gSAapyv4V\":{\"layout\":[\"auto\",\"auto\"]}}}\n * @framerVariables {\"w0wIpiEX1\":\"text\"}\n * @framerImmutableVariables true\n * @framerDisplayContentsDiv false\n * @framerAutoSizeImages true\n * @framerComponentViewportWidth true\n * @framerColorSyntax true\n */const FramerYkiRD6KLJ=withCSS(Component,css,\"framer-Cc7m4\");export default FramerYkiRD6KLJ;FramerYkiRD6KLJ.displayName=\"Home / Inspire \\xb7\\xa0Messages \\xb7\\xa0Component\";FramerYkiRD6KLJ.defaultProps={height:84,width:400};addPropertyControls(FramerYkiRD6KLJ,{variant:{options:[\"B7U1QVpUs\",\"gSAapyv4V\"],optionTitles:[\"Message\",\"Message \\xb7 Phone\"],title:\"Variant\",type:ControlType.Enum},w0wIpiEX1:{defaultValue:\"Good job!\",title:\"Text\",type:ControlType.String}});addFonts(FramerYkiRD6KLJ,[{explicitInter:true,fonts:[]},...TypewriterFonts],{supportsExplicitInterCodegen:true});\nexport const __FramerMetadata__ = {\"exports\":{\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"default\":{\"type\":\"reactComponent\",\"name\":\"FramerYkiRD6KLJ\",\"slots\":[],\"annotations\":{\"framerColorSyntax\":\"true\",\"framerCanvasComponentVariantDetails\":\"{\\\"propertyName\\\":\\\"variant\\\",\\\"data\\\":{\\\"default\\\":{\\\"layout\\\":[\\\"auto\\\",\\\"auto\\\"]},\\\"gSAapyv4V\\\":{\\\"layout\\\":[\\\"auto\\\",\\\"auto\\\"]}}}\",\"framerDisplayContentsDiv\":\"false\",\"framerContractVersion\":\"1\",\"framerVariables\":\"{\\\"w0wIpiEX1\\\":\\\"text\\\"}\",\"framerComponentViewportWidth\":\"true\",\"framerImmutableVariables\":\"true\",\"framerAutoSizeImages\":\"true\",\"framerIntrinsicHeight\":\"84\",\"framerIntrinsicWidth\":\"400\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./YkiRD6KLJ.map","// Generated by Framer (90417e1)\nimport{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{addFonts,addPropertyControls,ControlType,cx,RichText,useComponentViewport,useLocaleInfo,useVariantState,withCSS,withFX}from\"framer\";import{LayoutGroup,motion,MotionConfigContext}from\"framer-motion\";import*as React from\"react\";const MotionDivWithFX=withFX(motion.div);const cycleOrder=[\"xZQo0_36q\",\"MsqyYF2ln\"];const serializationHash=\"framer-jrfSk\";const variantClassNames={MsqyYF2ln:\"framer-v-1o27yn5\",xZQo0_36q:\"framer-v-1q2hzsp\"};function addPropertyOverrides(overrides,...variants){const nextOverrides={};variants===null||variants===void 0?void 0:variants.forEach(variant=>variant&&Object.assign(nextOverrides,overrides[variant]));return nextOverrides;}const transition1={damping:60,delay:0,mass:1,stiffness:500,type:\"spring\"};const animation={opacity:0,rotate:0,rotateX:0,rotateY:0,scale:1,skewX:0,skewY:0,transformPerspective:1200,x:0,y:-24};const transition2={damping:40,delay:.2,mass:5,stiffness:200,type:\"spring\"};const animation1={opacity:0,rotate:0,rotateX:0,rotateY:0,scale:1,skewX:0,skewY:0,transformPerspective:1200,x:0,y:16};const transition3={damping:40,delay:.1,mass:1,stiffness:200,type:\"spring\"};const animation2={opacity:0,rotate:0,rotateX:0,rotateY:0,scale:1,skewX:0,skewY:0,transformPerspective:1200,x:0,y:0};const transition4={damping:30,delay:0,mass:1,stiffness:400,type:\"spring\"};const Transition=({value,children})=>{const config=React.useContext(MotionConfigContext);const transition=value!==null&&value!==void 0?value:config.transition;const contextValue=React.useMemo(()=>({...config,transition}),[JSON.stringify(transition)]);return /*#__PURE__*/_jsx(MotionConfigContext.Provider,{value:contextValue,children:children});};const Variants=motion(React.Fragment);const humanReadableVariantMap={Default:\"xZQo0_36q\",Phone:\"MsqyYF2ln\"};const getProps=({height,id,number,numberColor,pColor,pSize,pText,scrollSection,title,titleColor,titlePGap,titleSize,width,...props})=>{var _ref,_ref1,_ref2,_ref3,_ref4,_ref5,_humanReadableVariantMap_props_variant,_ref6,_ref7,_ref8,_ref9;return{...props,CmWcTeh4X:(_ref=pText!==null&&pText!==void 0?pText:props.CmWcTeh4X)!==null&&_ref!==void 0?_ref:\"Text\",dlFkYqzdX:scrollSection!==null&&scrollSection!==void 0?scrollSection:props.dlFkYqzdX,EfwIAtq_n:(_ref1=titleColor!==null&&titleColor!==void 0?titleColor:props.EfwIAtq_n)!==null&&_ref1!==void 0?_ref1:\"var(--token-5b7c14a4-6eac-4fec-b1dd-68cde4248eb3, rgb(255, 255, 255))\",eg3sVwaeh:(_ref2=numberColor!==null&&numberColor!==void 0?numberColor:props.eg3sVwaeh)!==null&&_ref2!==void 0?_ref2:\"var(--token-32240d71-c083-469d-9ce8-28ea75897da6, rgb(204, 204, 204))\",gS64jC3y2:(_ref3=number!==null&&number!==void 0?number:props.gS64jC3y2)!==null&&_ref3!==void 0?_ref3:\"2\",L0lfw5jge:(_ref4=title!==null&&title!==void 0?title:props.L0lfw5jge)!==null&&_ref4!==void 0?_ref4:\"Title.\",tmjLSJIPK:(_ref5=pColor!==null&&pColor!==void 0?pColor:props.tmjLSJIPK)!==null&&_ref5!==void 0?_ref5:\"var(--token-32240d71-c083-469d-9ce8-28ea75897da6, rgb(204, 204, 204))\",variant:(_ref6=(_humanReadableVariantMap_props_variant=humanReadableVariantMap[props.variant])!==null&&_humanReadableVariantMap_props_variant!==void 0?_humanReadableVariantMap_props_variant:props.variant)!==null&&_ref6!==void 0?_ref6:\"xZQo0_36q\",X_Rnv_i3E:(_ref7=titlePGap!==null&&titlePGap!==void 0?titlePGap:props.X_Rnv_i3E)!==null&&_ref7!==void 0?_ref7:32,Xptcc2GPw:(_ref8=pSize!==null&&pSize!==void 0?pSize:props.Xptcc2GPw)!==null&&_ref8!==void 0?_ref8:16,YcPWCYrsT:(_ref9=titleSize!==null&&titleSize!==void 0?titleSize:props.YcPWCYrsT)!==null&&_ref9!==void 0?_ref9:56};};const createLayoutDependency=(props,variants)=>{if(props.layoutDependency)return variants.join(\"-\")+props.layoutDependency;return variants.join(\"-\");};const Component=/*#__PURE__*/React.forwardRef(function(props,ref){const{activeLocale,setLocale}=useLocaleInfo();const{style,className,layoutId,variant,gS64jC3y2,eg3sVwaeh,L0lfw5jge,YcPWCYrsT,EfwIAtq_n,X_Rnv_i3E,CmWcTeh4X,Xptcc2GPw,tmjLSJIPK,dlFkYqzdX,...restProps}=getProps(props);const{baseVariant,classNames,clearLoadingGesture,gestureHandlers,gestureVariant,isLoading,setGestureState,setVariant,variants}=useVariantState({cycleOrder,defaultVariant:\"xZQo0_36q\",variant,variantClassNames});const layoutDependency=createLayoutDependency(props,variants);const ref1=React.useRef(null);const defaultLayoutId=React.useId();const sharedStyleClassNames=[];const componentViewport=useComponentViewport();return /*#__PURE__*/_jsx(LayoutGroup,{id:layoutId!==null&&layoutId!==void 0?layoutId:defaultLayoutId,children:/*#__PURE__*/_jsx(Variants,{animate:variants,initial:false,children:/*#__PURE__*/_jsx(Transition,{value:transition1,children:/*#__PURE__*/_jsxs(motion.section,{...restProps,...gestureHandlers,className:cx(serializationHash,...sharedStyleClassNames,\"framer-1q2hzsp\",className,classNames),\"data-framer-name\":\"Default\",layoutDependency:layoutDependency,layoutId:\"xZQo0_36q\",ref:ref!==null&&ref!==void 0?ref:ref1,style:{...style},...addPropertyOverrides({MsqyYF2ln:{\"data-framer-name\":\"Phone\"}},baseVariant,gestureVariant),children:[/*#__PURE__*/_jsx(MotionDivWithFX,{__framer__animate:{transition:transition2},__framer__animateOnce:true,__framer__enter:animation,__framer__styleAppearEffectEnabled:true,__framer__targets:[{ref:dlFkYqzdX,target:\"animate\"}],__framer__threshold:.5,__perspectiveFX:false,__smartComponentFX:true,__targetOpacity:1,className:\"framer-1ytaan6\",\"data-border\":true,\"data-framer-name\":\"Number\",layoutDependency:layoutDependency,layoutId:\"hk6HCTe6n\",style:{\"--border-bottom-width\":\"1.5px\",\"--border-color\":\"rgb(34, 34, 34)\",\"--border-left-width\":\"1.5px\",\"--border-right-width\":\"1.5px\",\"--border-style\":\"solid\",\"--border-top-width\":\"1.5px\",background:\"linear-gradient(180deg, rgb(34, 34, 34) 0%, rgb(17, 17, 17) 100%)\",borderBottomLeftRadius:12,borderBottomRightRadius:12,borderTopLeftRadius:12,borderTopRightRadius:12,boxShadow:\"0px 10px 10px -6px rgba(0, 0, 0, 0.7)\",transformPerspective:1200},children:/*#__PURE__*/_jsx(motion.div,{className:\"framer-1nmvamp\",layoutDependency:layoutDependency,layoutId:\"u6068a1pm\",children:/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{style:{\"--font-selector\":\"R0Y7SW50ZXItNTAw\",\"--framer-font-family\":'\"Inter\", \"Inter Placeholder\", sans-serif',\"--framer-font-size\":\"24px\",\"--framer-font-weight\":\"500\",\"--framer-letter-spacing\":\"-0.02em\",\"--framer-line-height\":\"0.9em\",\"--framer-text-alignment\":\"center\",\"--framer-text-color\":\"var(--extracted-r6o4lv, var(--variable-reference-eg3sVwaeh-YpenvmPOk))\"},children:\"2\"})}),className:\"framer-1qb0n8\",fonts:[\"GF;Inter-500\"],layoutDependency:layoutDependency,layoutId:\"V7EpSua8i\",style:{\"--extracted-r6o4lv\":\"var(--variable-reference-eg3sVwaeh-YpenvmPOk)\",\"--framer-link-text-color\":\"rgb(0, 153, 255)\",\"--framer-link-text-decoration\":\"underline\",\"--variable-reference-eg3sVwaeh-YpenvmPOk\":eg3sVwaeh},text:gS64jC3y2,verticalAlignment:\"top\",withExternalLayout:true})})}),/*#__PURE__*/_jsxs(motion.div,{className:\"framer-ml32r3\",\"data-framer-name\":\"Content\",layoutDependency:layoutDependency,layoutId:\"OrRcqUOUx\",style:{\"--6nsvsn\":X_Rnv_i3E},children:[/*#__PURE__*/_jsx(MotionDivWithFX,{__framer__animate:{transition:transition3},__framer__animateOnce:true,__framer__enter:animation1,__framer__styleAppearEffectEnabled:true,__framer__targets:[{ref:dlFkYqzdX,target:\"animate\"}],__framer__threshold:.5,__perspectiveFX:false,__smartComponentFX:true,__targetOpacity:1,className:\"framer-3y1lta\",\"data-framer-name\":\"Title\",layoutDependency:layoutDependency,layoutId:\"SDaaKgn4d\",style:{transformPerspective:1200},children:/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.h2,{style:{\"--font-selector\":\"Q1VTVE9NO05lb21ldHJpYyBFeHRyYSBCb2xk\",\"--framer-font-family\":'\"Neometric Extra Bold\", \"Neometric Extra Bold Placeholder\", sans-serif',\"--framer-font-size\":\"calc(var(--variable-reference-YcPWCYrsT-YpenvmPOk) * 1px)\",\"--framer-letter-spacing\":\"-0.03em\",\"--framer-line-height\":\"80%\",\"--framer-text-alignment\":\"left\",\"--framer-text-color\":\"var(--extracted-1of0zx5, var(--variable-reference-EfwIAtq_n-YpenvmPOk))\"},children:\"Title.\"})}),className:\"framer-1jle2c7\",fonts:[\"CUSTOM;Neometric Extra Bold\"],layoutDependency:layoutDependency,layoutId:\"XnZDRjY3I\",style:{\"--extracted-1of0zx5\":\"var(--variable-reference-EfwIAtq_n-YpenvmPOk)\",\"--framer-link-text-color\":\"rgb(0, 153, 255)\",\"--framer-link-text-decoration\":\"underline\",\"--variable-reference-EfwIAtq_n-YpenvmPOk\":EfwIAtq_n,\"--variable-reference-YcPWCYrsT-YpenvmPOk\":YcPWCYrsT},text:L0lfw5jge,verticalAlignment:\"top\",withExternalLayout:true})}),/*#__PURE__*/_jsx(MotionDivWithFX,{__framer__animate:{transition:transition3},__framer__animateOnce:true,__framer__enter:animation1,__framer__styleAppearEffectEnabled:true,__framer__threshold:.5,__perspectiveFX:false,__smartComponentFX:true,__targetOpacity:1,className:\"framer-vbxdgy\",\"data-framer-name\":\"P\",layoutDependency:layoutDependency,layoutId:\"qx5NkRbRf\",style:{transformPerspective:1200},children:/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{style:{\"--font-selector\":\"R0Y7SW50ZXItcmVndWxhcg==\",\"--framer-font-family\":'\"Inter\", \"Inter Placeholder\", sans-serif',\"--framer-font-size\":\"calc(var(--variable-reference-Xptcc2GPw-YpenvmPOk) * 1px)\",\"--framer-line-height\":\"150%\",\"--framer-text-alignment\":\"center\",\"--framer-text-color\":\"var(--extracted-r6o4lv, var(--variable-reference-tmjLSJIPK-YpenvmPOk))\"},children:\"Text\"})}),className:\"framer-1y78h8o\",\"data-framer-name\":\"GAGE transforms the workplace, equipping teams with tools for recognition, engagement, and growth. Start for free and unlock your team's full potential.\",fonts:[\"GF;Inter-regular\"],layoutDependency:layoutDependency,layoutId:\"ttoaDyMbL\",style:{\"--extracted-r6o4lv\":\"var(--variable-reference-tmjLSJIPK-YpenvmPOk)\",\"--framer-paragraph-spacing\":\"0px\",\"--variable-reference-tmjLSJIPK-YpenvmPOk\":tmjLSJIPK,\"--variable-reference-Xptcc2GPw-YpenvmPOk\":Xptcc2GPw},text:CmWcTeh4X,verticalAlignment:\"top\",withExternalLayout:true,...addPropertyOverrides({MsqyYF2ln:{children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{style:{\"--font-selector\":\"R0Y7SW50ZXItcmVndWxhcg==\",\"--framer-font-family\":'\"Inter\", \"Inter Placeholder\", sans-serif',\"--framer-line-height\":\"150%\",\"--framer-text-alignment\":\"center\",\"--framer-text-color\":\"var(--extracted-r6o4lv, var(--variable-reference-tmjLSJIPK-YpenvmPOk))\"},children:\"Text\"})})}},baseVariant,gestureVariant)})})]}),/*#__PURE__*/_jsxs(MotionDivWithFX,{__framer__animate:{transition:transition4},__framer__animateOnce:true,__framer__enter:animation2,__framer__styleAppearEffectEnabled:true,__framer__targets:[{ref:dlFkYqzdX,target:\"animate\"}],__framer__threshold:.5,__perspectiveFX:false,__smartComponentFX:true,__targetOpacity:1,className:\"framer-19ek2gj\",\"data-framer-name\":\"Divider\",layoutDependency:layoutDependency,layoutId:\"SNrt9ISEU\",style:{transformPerspective:1200},children:[/*#__PURE__*/_jsx(motion.div,{className:\"framer-zf44um\",\"data-framer-name\":\"Divider\",layoutDependency:layoutDependency,layoutId:\"zGmK2RhU6\",style:{background:\"radial-gradient(30% 68.57142857142858% at 50% 50%, rgba(0, 0, 0, 0.72) 0%, rgba(0, 0, 0, 0) 100%)\"}}),/*#__PURE__*/_jsx(motion.div,{className:\"framer-1oe2a0j\",\"data-framer-name\":\"Divider\",layoutDependency:layoutDependency,layoutId:\"O_GvtIjLG\",style:{background:\"radial-gradient(30% 68.57142857142858% at 50% 50%, rgb(34, 34, 34) 0%, rgba(0, 0, 0, 0) 100%)\"}})]})]})})})});});const css=[\"@supports (aspect-ratio: 1) { body { --framer-aspect-ratio-supported: auto; } }\",\".framer-jrfSk.framer-11x0p87, .framer-jrfSk .framer-11x0p87 { display: block; }\",\".framer-jrfSk.framer-1q2hzsp { align-content: center; align-items: center; display: flex; flex-direction: column; flex-wrap: nowrap; gap: 40px; height: min-content; justify-content: flex-start; overflow: visible; padding: 0px; position: relative; width: 440px; }\",\".framer-jrfSk .framer-1ytaan6 { align-content: center; align-items: center; display: flex; flex: none; flex-direction: column; flex-wrap: nowrap; gap: 10px; height: 50px; justify-content: center; overflow: hidden; padding: 0px; position: relative; width: 50px; will-change: var(--framer-will-change-override, transform); z-index: 1; }\",\".framer-jrfSk .framer-1nmvamp { align-content: center; align-items: center; display: flex; flex: none; flex-direction: column; flex-wrap: nowrap; gap: 4px; height: min-content; justify-content: center; overflow: visible; padding: 0px; position: relative; width: 100%; }\",\".framer-jrfSk .framer-1qb0n8 { flex: none; height: auto; position: relative; white-space: pre-wrap; width: 100%; word-break: break-word; word-wrap: break-word; }\",\".framer-jrfSk .framer-ml32r3 { align-content: center; align-items: center; display: flex; flex: none; flex-direction: column; flex-wrap: nowrap; gap: calc(max(0, var(--6nsvsn)) * 1px); height: min-content; justify-content: center; overflow: visible; padding: 0px; position: relative; width: 100%; }\",\".framer-jrfSk .framer-3y1lta { align-content: center; align-items: center; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; gap: 10px; height: min-content; justify-content: center; overflow: visible; padding: 0px; position: relative; width: 100%; }\",\".framer-jrfSk .framer-1jle2c7 { flex: none; height: auto; mix-blend-mode: difference; position: relative; white-space: pre; width: auto; z-index: 9; }\",\".framer-jrfSk .framer-vbxdgy { align-content: center; align-items: center; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; gap: 0px; height: min-content; justify-content: center; overflow: visible; padding: 0px; position: relative; width: 100%; }\",\".framer-jrfSk .framer-1y78h8o { flex: 1 0 0px; height: auto; position: relative; white-space: pre-wrap; width: 1px; word-break: break-word; word-wrap: break-word; z-index: 9; }\",\".framer-jrfSk .framer-19ek2gj { flex: none; height: 3px; left: -380px; overflow: visible; position: absolute; right: -380px; top: 25px; z-index: 0; }\",\".framer-jrfSk .framer-zf44um { bottom: 0px; flex: none; left: 0px; overflow: hidden; position: absolute; right: 0px; top: 1px; z-index: 0; }\",\".framer-jrfSk .framer-1oe2a0j { flex: none; height: 2px; left: 0px; overflow: hidden; position: absolute; right: 0px; top: 0px; z-index: 0; }\",\"@supports (background: -webkit-named-image(i)) and (not (font-palette:dark)) { .framer-jrfSk.framer-1q2hzsp, .framer-jrfSk .framer-1ytaan6, .framer-jrfSk .framer-1nmvamp, .framer-jrfSk .framer-ml32r3, .framer-jrfSk .framer-3y1lta, .framer-jrfSk .framer-vbxdgy { gap: 0px; } .framer-jrfSk.framer-1q2hzsp > * { margin: 0px; margin-bottom: calc(40px / 2); margin-top: calc(40px / 2); } .framer-jrfSk.framer-1q2hzsp > :first-child, .framer-jrfSk .framer-1ytaan6 > :first-child, .framer-jrfSk .framer-1nmvamp > :first-child, .framer-jrfSk .framer-ml32r3 > :first-child { margin-top: 0px; } .framer-jrfSk.framer-1q2hzsp > :last-child, .framer-jrfSk .framer-1ytaan6 > :last-child, .framer-jrfSk .framer-1nmvamp > :last-child, .framer-jrfSk .framer-ml32r3 > :last-child { margin-bottom: 0px; } .framer-jrfSk .framer-1ytaan6 > * { margin: 0px; margin-bottom: calc(10px / 2); margin-top: calc(10px / 2); } .framer-jrfSk .framer-1nmvamp > * { margin: 0px; margin-bottom: calc(4px / 2); margin-top: calc(4px / 2); } .framer-jrfSk .framer-ml32r3 > * { margin: 0px; margin-bottom: calc(calc(max(0, var(--6nsvsn)) * 1px) / 2); margin-top: calc(calc(max(0, var(--6nsvsn)) * 1px) / 2); } .framer-jrfSk .framer-3y1lta > * { margin: 0px; margin-left: calc(10px / 2); margin-right: calc(10px / 2); } .framer-jrfSk .framer-3y1lta > :first-child, .framer-jrfSk .framer-vbxdgy > :first-child { margin-left: 0px; } .framer-jrfSk .framer-3y1lta > :last-child, .framer-jrfSk .framer-vbxdgy > :last-child { margin-right: 0px; } .framer-jrfSk .framer-vbxdgy > * { margin: 0px; margin-left: calc(0px / 2); margin-right: calc(0px / 2); } }\",\".framer-jrfSk.framer-v-1o27yn5.framer-1q2hzsp, .framer-jrfSk.framer-v-1o27yn5 .framer-ml32r3 { gap: 24px; }\",\"@supports (background: -webkit-named-image(i)) and (not (font-palette:dark)) { .framer-jrfSk.framer-v-1o27yn5.framer-1q2hzsp, .framer-jrfSk.framer-v-1o27yn5 .framer-ml32r3 { gap: 0px; } .framer-jrfSk.framer-v-1o27yn5.framer-1q2hzsp > *, .framer-jrfSk.framer-v-1o27yn5 .framer-ml32r3 > * { margin: 0px; margin-bottom: calc(24px / 2); margin-top: calc(24px / 2); } .framer-jrfSk.framer-v-1o27yn5.framer-1q2hzsp > :first-child, .framer-jrfSk.framer-v-1o27yn5 .framer-ml32r3 > :first-child { margin-top: 0px; } .framer-jrfSk.framer-v-1o27yn5.framer-1q2hzsp > :last-child, .framer-jrfSk.framer-v-1o27yn5 .framer-ml32r3 > :last-child { margin-bottom: 0px; } }\",'.framer-jrfSk[data-border=\"true\"]::after, .framer-jrfSk [data-border=\"true\"]::after { content: \"\"; border-width: var(--border-top-width, 0) var(--border-right-width, 0) var(--border-bottom-width, 0) var(--border-left-width, 0); border-color: var(--border-color, none); border-style: var(--border-style, none); width: 100%; height: 100%; position: absolute; box-sizing: border-box; left: 0; top: 0; border-radius: inherit; pointer-events: none; }'];/**\n * This is a generated Framer component.\n * @framerIntrinsicHeight 191\n * @framerIntrinsicWidth 440\n * @framerCanvasComponentVariantDetails {\"propertyName\":\"variant\",\"data\":{\"default\":{\"layout\":[\"fixed\",\"auto\"]},\"MsqyYF2ln\":{\"layout\":[\"fixed\",\"auto\"]}}}\n * @framerVariables {\"gS64jC3y2\":\"number\",\"eg3sVwaeh\":\"numberColor\",\"L0lfw5jge\":\"title\",\"YcPWCYrsT\":\"titleSize\",\"EfwIAtq_n\":\"titleColor\",\"X_Rnv_i3E\":\"titlePGap\",\"CmWcTeh4X\":\"pText\",\"Xptcc2GPw\":\"pSize\",\"tmjLSJIPK\":\"pColor\",\"dlFkYqzdX\":\"scrollSection\"}\n * @framerImmutableVariables true\n * @framerDisplayContentsDiv false\n * @framerComponentViewportWidth true\n */const FramerYpenvmPOk=withCSS(Component,css,\"framer-jrfSk\");export default FramerYpenvmPOk;FramerYpenvmPOk.displayName=\"Card / Small\";FramerYpenvmPOk.defaultProps={height:191,width:440};addPropertyControls(FramerYpenvmPOk,{variant:{options:[\"xZQo0_36q\",\"MsqyYF2ln\"],optionTitles:[\"Default\",\"Phone\"],title:\"Variant\",type:ControlType.Enum},gS64jC3y2:{defaultValue:\"2\",displayTextArea:false,placeholder:\"\",title:\"Number\",type:ControlType.String},eg3sVwaeh:{defaultValue:'var(--token-32240d71-c083-469d-9ce8-28ea75897da6, rgb(204, 204, 204)) /* {\"name\":\"Seas\"} */',title:\"Number \\xb7\\xa0Color\",type:ControlType.Color},L0lfw5jge:{defaultValue:\"Title.\",displayTextArea:false,title:\"Title\",type:ControlType.String},YcPWCYrsT:{defaultValue:56,title:\"Title \\xb7\\xa0Size\",type:ControlType.Number},EfwIAtq_n:{defaultValue:\"var(--token-5b7c14a4-6eac-4fec-b1dd-68cde4248eb3, rgb(255, 255, 255))\",title:\"Title \\xb7\\xa0Color\",type:ControlType.Color},X_Rnv_i3E:{defaultValue:32,min:0,title:\"Title + P \\xb7\\xa0Gap\",type:ControlType.Number},CmWcTeh4X:{defaultValue:\"Text\",displayTextArea:false,title:\"P \\xb7 Text\",type:ControlType.String},Xptcc2GPw:{defaultValue:16,title:\"P \\xb7\\xa0Size\",type:ControlType.Number},tmjLSJIPK:{defaultValue:'var(--token-32240d71-c083-469d-9ce8-28ea75897da6, rgb(204, 204, 204)) /* {\"name\":\"Seas\"} */',title:\"P \\xb7\\xa0Color\",type:ControlType.Color},dlFkYqzdX:{title:\"Scroll Section\",type:ControlType.ScrollSectionRef}});addFonts(FramerYpenvmPOk,[{explicitInter:true,fonts:[{family:\"Inter\",source:\"google\",style:\"normal\",url:\"https://fonts.gstatic.com/s/inter/v18/UcCO3FwrK3iLTeHuS_nVMrMxCp50SjIw2boKoduKmMEVuI6fMZ1rib2Bg-4.woff2\",weight:\"500\"},{family:\"Neometric Extra Bold\",source:\"custom\",url:\"https://framerusercontent.com/assets/DtbpLDTGqpgnIlzCpeNLl5Ui5U.woff2\"},{family:\"Inter\",source:\"google\",style:\"normal\",url:\"https://fonts.gstatic.com/s/inter/v18/UcCO3FwrK3iLTeHuS_nVMrMxCp50SjIw2boKoduKmMEVuLyfMZ1rib2Bg-4.woff2\",weight:\"400\"}]}],{supportsExplicitInterCodegen:true});\nexport const __FramerMetadata__ = {\"exports\":{\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"default\":{\"type\":\"reactComponent\",\"name\":\"FramerYpenvmPOk\",\"slots\":[],\"annotations\":{\"framerDisplayContentsDiv\":\"false\",\"framerComponentViewportWidth\":\"true\",\"framerImmutableVariables\":\"true\",\"framerIntrinsicWidth\":\"440\",\"framerIntrinsicHeight\":\"191\",\"framerContractVersion\":\"1\",\"framerVariables\":\"{\\\"gS64jC3y2\\\":\\\"number\\\",\\\"eg3sVwaeh\\\":\\\"numberColor\\\",\\\"L0lfw5jge\\\":\\\"title\\\",\\\"YcPWCYrsT\\\":\\\"titleSize\\\",\\\"EfwIAtq_n\\\":\\\"titleColor\\\",\\\"X_Rnv_i3E\\\":\\\"titlePGap\\\",\\\"CmWcTeh4X\\\":\\\"pText\\\",\\\"Xptcc2GPw\\\":\\\"pSize\\\",\\\"tmjLSJIPK\\\":\\\"pColor\\\",\\\"dlFkYqzdX\\\":\\\"scrollSection\\\"}\",\"framerCanvasComponentVariantDetails\":\"{\\\"propertyName\\\":\\\"variant\\\",\\\"data\\\":{\\\"default\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"auto\\\"]},\\\"MsqyYF2ln\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"auto\\\"]}}}\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./YpenvmPOk.map"],"mappings":"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"}