{"version":3,"file":"shared-lib.gselSWF_.mjs","names":["l","c","s","i","r","b","$","m","h","x$1","d","A","E","x","R","N","B","V","z","K","O","j","H","te","G","_","R$1","V$1","I","k","p","t","u","y","C","D","tt","J","L","M","Q","tc","W","X","Y","Z","tn","n","e","e.default","a","o","g","useRef","useMemo","useMemo","useMemo","getProps","useRef","useCallback","useState","SrcType","isMotionValue","useMemo","fonts","css","className","addPropertyOverrides","enabledGestures","cycleOrder","serializationHash","variantClassNames","transition1","Transition","React.useContext","React.useMemo","humanReadableVariantMap","Variants","React.Fragment","getProps","createLayoutDependency","React.forwardRef","useRef","React.useId","sharedStyle.className","RichText","sharedStyle.css","sharedStyle.fonts","fonts","css","className","fonts","css","className","fonts","css","className","fonts","css","className","fonts","css","className","fonts","css","className","fonts","css","className","fonts","css","className","fonts","css","className","serializationHash","variantClassNames","transition1","toResponsiveImage","Transition","React.useContext","React.useMemo","Variants","React.Fragment","getProps","createLayoutDependency","React.forwardRef","useRef","React.useId","sharedStyle.className","sharedStyle1.className","sharedStyle2.className","sharedStyle3.className","sharedStyle4.className","sharedStyle5.className","sharedStyle6.className","sharedStyle7.className","sharedStyle8.className","sharedStyle9.className","sharedStyle10.className","className","Image1","RichText","sharedStyle.css","sharedStyle1.css","sharedStyle2.css","sharedStyle3.css","sharedStyle4.css","sharedStyle5.css","sharedStyle6.css","sharedStyle7.css","sharedStyle8.css","sharedStyle9.css","sharedStyle10.css","sharedStyle.fonts","sharedStyle1.fonts","sharedStyle2.fonts","sharedStyle3.fonts","sharedStyle4.fonts","sharedStyle5.fonts","sharedStyle6.fonts","sharedStyle7.fonts","sharedStyle8.fonts","sharedStyle9.fonts","sharedStyle10.fonts","v0","v1","v2","v3","React.Fragment","__FramerMetadata__","getLocalizedValue","valuesByLocaleId","localizedValues","useRef","useCallback","animate","useRef","useCallback","lottie","v0","React.Fragment","v1","__FramerMetadata__","getLocalizedValue","valuesByLocaleId","localizedValues","addPropertyOverrides","enabledGestures","cycleOrder","serializationHash","variantClassNames","Variants","React.Fragment","humanReadableVariantMap","getProps","createLayoutDependency","React.forwardRef","useRef","React.useId","RichText","getLocalizedValue","addPropertyOverrides","ButtonFonts","Button","cycleOrder","serializationHash","variantClassNames","transition1","matchVariant","Transition","React.useContext","React.useMemo","humanReadableVariantMap","Variants","React.Fragment","getProps","createLayoutDependency","React.forwardRef","useRef","React.useId","_Fragment","FormPlainTextInput","getLocalizedValue","SVG","RichText","serializationHash","variantClassNames","transition1","Transition","React.useContext","React.useMemo","Variants","React.Fragment","getProps","createLayoutDependency","React.forwardRef","useRef","React.useId","SVG","serializationHash","variantClassNames","transition1","React.useContext","React.useMemo","React.Fragment","humanReadableVariantMap","getProps","React.forwardRef","useRef","React.useId","RichText","p","P","r","n","s","a","u","c","d","g","c","u","p","n","r","t","o","getLocalizedValue","valuesByLocaleId","__FramerMetadata__","Button","Form","AviatorLogo","ButtonMain","ProjectList2","Projects","React.forwardRef","useRef","React.useId","React.useMemo","metadataProvider","sharedStyle.className","sharedStyle1.className","sharedStyle2.className","sharedStyle3.className","React.useContext","React.useRef","className","SVG","_Fragment","getLocalizedValue","RichText","React.Fragment","PropertyOverrides","sharedStyle.css","sharedStyle1.css","sharedStyle2.css","sharedStyle3.css","sharedStyle.fonts","sharedStyle1.fonts","sharedStyle2.fonts","sharedStyle3.fonts","__FramerMetadata__","__FramerMetadata__","__FramerMetadata__"],"sources":["https:/ga.jspm.io/npm:react-dom@18.2.0/server.browser.js","https:/framerusercontent.com/modules/VTUDdizacRHpwbkOamr7/AykinQJbgwl92LvMGZwu/constants.js","https:/framerusercontent.com/modules/D4TWeLfcxT6Tysr2BlYg/iZjmqdxVx1EOiM3k1FaW/useOnNavigationTargetChange.js","https:/framerusercontent.com/modules/ExNgrA7EJTKUPpH6vIlN/eiOrSJ2Ab5M9jPCvVwUz/useConstant.js","https:/framerusercontent.com/modules/D2Lz5CmnNVPZFFiZXalt/QaCzPbriZBfXWZIIycFI/colorFromToken.js","https:/framerusercontent.com/modules/3mKFSGQqKHV82uOV1eBc/5fbRLvOpxZC0JOXugvwm/isMotionValue.js","https:/framerusercontent.com/modules/xDiQsqBGXzmMsv7AlEVy/uhunpMiNsbXxzjlXsg1y/useUniqueClassName.js","https:/framerusercontent.com/modules/ETACN5BJyFTSo0VVDJfu/NHRqowOiXkF9UwOzczF7/variantUtils.js","https:/framerusercontent.com/modules/eMBrwoqQK7h6mEeGQUH8/GuplvPJVjmxpk9zqOTcb/isBrowser.js","https:/framerusercontent.com/modules/v9AWX2URmiYsHf7GbctE/XxKAZ9KlhWqf5x1JMyyF/useOnChange.js","https:/framerusercontent.com/modules/kNDwabfjDEb3vUxkQlZS/fSIr3AOAYbGlfSPgXpYu/useAutoMotionValue.js","https:/framerusercontent.com/modules/cuQH4dmpDnV8YK1mSgQX/KqRXqunFjE6ufhpc7ZRu/useFontControls.js","https:/framerusercontent.com/modules/afBE9Yx1W6bY5q32qPxe/m3q7puE2tbo1S2C0s0CT/useRenderTarget.js","https:/framerusercontent.com/modules/zGkoP8tPDCkoBzMdt5uq/0zFSjxIYliHxrQQnryFX/useControlledState.js","https:/framerusercontent.com/modules/5SM58HxZHxjjv7aLMOgQ/WXz9i6mVki0bBCrKdqB3/propUtils.js","https:/framerusercontent.com/modules/G4IfyjvwmaeSBpdb4TWu/OIjZRBmWDcIE2B6qgG1j/index.js","https:/framerusercontent.com/modules/lRDHiNWNVWmE0lqtoVHP/tbiAmyP8q4mMaXLQcmj3/Video.js","https:/framerusercontent.com/modules/SqMMIT9vcKLtv2JyC3W1/kZC1BuNfV5W3KW76rvQC/JAfRlDZX1.js","https:/framerusercontent.com/modules/MH4EfoPKTus3nCGGZgh5/ElF1tPSkFb5Ov8TOOVY7/gj1fg0_el.js","https:/framerusercontent.com/modules/e2P8s2lW5xsjZCf1O0N5/gPIiVVWRqVP2Pf3YYfP3/DgmabudDx.js","https:/framerusercontent.com/modules/bhGiMl1kpZLlBncGZ0mN/ok2ZohElKb7Fpk1NdnYF/i9K2DYagJ.js","https:/framerusercontent.com/modules/vJCSIjnBg9UZvedHH8rB/5mbY4BP7BQLayZFXzCJr/KMg_8bZHW.js","https:/framerusercontent.com/modules/BWUtSq4Xy5QZQyOvTVqc/6xzEgjpYzKZKicIhgcRC/MSLq_PKiS.js","https:/framerusercontent.com/modules/5QPZ5L0pqgxX8SGkE977/DLxK9iRVw6pSBfTl6mTF/o36zRVAxk.js","https:/framerusercontent.com/modules/VYwT8Q5tbV3knUVmfvZ0/fRQDuhta1ZTR6ZzSisln/oPcNbSwuU.js","https:/framerusercontent.com/modules/VbX1nwc6Ei6hM5s3U7pE/4IMstBiFywLAM7LXnERI/t563EZKDK.js","https:/framerusercontent.com/modules/1UYrSoxn7VBruS86MEFO/S7Jx5MyDCpo6OiEGG168/uPcam4Epu.js","https:/framerusercontent.com/modules/j2hmyMNxviwsfWIqVDoK/EMOUfAB0VScQoEHXQLVf/wC26JUOyg.js","https:/framerusercontent.com/modules/ZzPYrsvRQn5afj9Q7e2D/xoDX3JGL35NVbpFtdbLG/ZAi46TVi4.js","https:/framerusercontent.com/modules/fCfDXRvE4MORnRjJSXJO/nyDEnpX7op59pYmappUV/lXR4W_c3T.js","https:/framerusercontent.com/modules/p27wYmdvJ891958Hk76c/dgqI6UsXJe9RUyAdGnQN/rbymmAw6a-0.js","https:/framerusercontent.com/modules/p27wYmdvJ891958Hk76c/dgqI6UsXJe9RUyAdGnQN/rbymmAw6a.js","https:/framer.com/m/framer/default-utils.js@^0.45.0","https:/framerusercontent.com/modules/3mKFSGQqKHV82uOV1eBc/TbXI1XaZFNevVKcgIt7G/isMotionValue.js","https:/framerusercontent.com/modules/kNDwabfjDEb3vUxkQlZS/V4SPg9g59hF1vFH3ZTF0/useAutoMotionValue.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/RLfsHd78NBd0kbafA9hd/Lottie.js","https:/framerusercontent.com/modules/1G6gUHEC6Cdk38PH5zYG/cBskREhdOaYK6TZQxkIt/UWp51B4yW-0.js","https:/framerusercontent.com/modules/1G6gUHEC6Cdk38PH5zYG/cBskREhdOaYK6TZQxkIt/UWp51B4yW.js","https:/framerusercontent.com/modules/yjGYHdl2CrrnYmrpcL8c/twcQLJ4wGppO34VnjQEJ/UWp51B4yW.js","https:/framerusercontent.com/modules/7m2pIRtf5umIXcnKpT5T/YlsaQOiLbrtwFj6XnstM/rbymmAw6a.js","https:/framerusercontent.com/modules/0xDpfVbSMvsIKh92oTU4/XFdQD3lJaqr7V5HvbPyt/TU2OwVTIC.js","https:/framerusercontent.com/modules/3X8HvhZ9zR3uitL3ieaN/dgDqym04K82jxpDctSOi/Wx43GpbSh.js","https:/framerusercontent.com/modules/pHu98A1vSPBHM0hK9FJf/94II6zH63re2SMaoUG8I/o8ErbAEQu-0.js","https:/framerusercontent.com/modules/pHu98A1vSPBHM0hK9FJf/94II6zH63re2SMaoUG8I/o8ErbAEQu-1.js","https:/framerusercontent.com/modules/pHu98A1vSPBHM0hK9FJf/94II6zH63re2SMaoUG8I/o8ErbAEQu.js","https:/framerusercontent.com/modules/v9Pg3fxtdfwg9oWUbKd3/ZfS2tFCyT9qbhPl0suUD/U1uzqqflT.js","https:/framerusercontent.com/modules/9hCAAfOuOiaLQMp6SJGA/9kY8EtAyAn5vb86A4plK/U1uzqqflT.js","https:/framerusercontent.com/modules/yqPM5UE0a7XKkwyNhyaE/3rIkMXdUK0q1itPWvh22/U1uzqqflT.js","https:/framerusercontent.com/modules/Xz5lRUKwHkNssxTX8Lew/PEtwlSPleMNbtgD8jpv9/snippets.js","https:/framerusercontent.com/modules/7cPhjQw0EGNBHRZlzbhH/4hSO1fMoujYmMhk8FjXZ/NotFoundPage.js","https:/framer.com/m/framer/SitesNotFoundPage.js@1.4.0","https:/framerusercontent.com/modules/v9Pg3fxtdfwg9oWUbKd3/ZfS2tFCyT9qbhPl0suUD/U1uzqqflT-0.js"],"sourcesContent":["import*as e from\"react\";var n=\"default\"in e?e.default:e;var a={};var o=n;function l$2(e){for(var n=\"https://reactjs.org/docs/error-decoder.html?invariant=\"+e,a=1;a<arguments.length;a++)n+=\"&args[]=\"+encodeURIComponent(arguments[a]);return\"Minified React error #\"+e+\"; visit \"+n+\" for the full message or use the non-minified dev environment for full errors and additional helpful warnings.\"}var l=Object.prototype.hasOwnProperty,i=/^[:A-Z_a-z\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02FF\\u0370-\\u037D\\u037F-\\u1FFF\\u200C-\\u200D\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD][:A-Z_a-z\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02FF\\u0370-\\u037D\\u037F-\\u1FFF\\u200C-\\u200D\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD\\-.0-9\\u00B7\\u0300-\\u036F\\u203F-\\u2040]*$/,s={},c={};function ja$1(e){if(l.call(c,e))return!0;if(l.call(s,e))return!1;if(i.test(e))return c[e]=!0;s[e]=!0;return!1}function r(e,n,a,o,l,i,s){this.acceptsBooleans=2===n||3===n||4===n;this.attributeName=o;this.attributeNamespace=l;this.mustUseProperty=a;this.propertyName=e;this.type=n;this.sanitizeURL=i;this.removeEmptyString=s}var d={};\"children dangerouslySetInnerHTML defaultValue defaultChecked innerHTML suppressContentEditableWarning suppressHydrationWarning style\".split(\" \").forEach((function(e){d[e]=new r(e,0,!1,e,null,!1,!1)}));[[\"acceptCharset\",\"accept-charset\"],[\"className\",\"class\"],[\"htmlFor\",\"for\"],[\"httpEquiv\",\"http-equiv\"]].forEach((function(e){var n=e[0];d[n]=new r(n,1,!1,e[1],null,!1,!1)}));[\"contentEditable\",\"draggable\",\"spellCheck\",\"value\"].forEach((function(e){d[e]=new r(e,2,!1,e.toLowerCase(),null,!1,!1)}));[\"autoReverse\",\"externalResourcesRequired\",\"focusable\",\"preserveAlpha\"].forEach((function(e){d[e]=new r(e,2,!1,e,null,!1,!1)}));\"allowFullScreen async autoFocus autoPlay controls default defer disabled disablePictureInPicture disableRemotePlayback formNoValidate hidden loop noModule noValidate open playsInline readOnly required reversed scoped seamless itemScope\".split(\" \").forEach((function(e){d[e]=new r(e,3,!1,e.toLowerCase(),null,!1,!1)}));[\"checked\",\"multiple\",\"muted\",\"selected\"].forEach((function(e){d[e]=new r(e,3,!0,e,null,!1,!1)}));[\"capture\",\"download\"].forEach((function(e){d[e]=new r(e,4,!1,e,null,!1,!1)}));[\"cols\",\"rows\",\"size\",\"span\"].forEach((function(e){d[e]=new r(e,6,!1,e,null,!1,!1)}));[\"rowSpan\",\"start\"].forEach((function(e){d[e]=new r(e,5,!1,e.toLowerCase(),null,!1,!1)}));var f=/[\\-:]([a-z])/g;function la$1(e){return e[1].toUpperCase()}\"accent-height alignment-baseline arabic-form baseline-shift cap-height clip-path clip-rule color-interpolation color-interpolation-filters color-profile color-rendering dominant-baseline enable-background fill-opacity fill-rule flood-color flood-opacity font-family font-size font-size-adjust font-stretch font-style font-variant font-weight glyph-name glyph-orientation-horizontal glyph-orientation-vertical horiz-adv-x horiz-origin-x image-rendering letter-spacing lighting-color marker-end marker-mid marker-start overline-position overline-thickness paint-order panose-1 pointer-events rendering-intent shape-rendering stop-color stop-opacity strikethrough-position strikethrough-thickness stroke-dasharray stroke-dashoffset stroke-linecap stroke-linejoin stroke-miterlimit stroke-opacity stroke-width text-anchor text-decoration text-rendering underline-position underline-thickness unicode-bidi unicode-range units-per-em v-alphabetic v-hanging v-ideographic v-mathematical vector-effect vert-adv-y vert-origin-x vert-origin-y word-spacing writing-mode xmlns:xlink x-height\".split(\" \").forEach((function(e){var n=e.replace(f,la$1);d[n]=new r(n,1,!1,e,null,!1,!1)}));\"xlink:actuate xlink:arcrole xlink:role xlink:show xlink:title xlink:type\".split(\" \").forEach((function(e){var n=e.replace(f,la$1);d[n]=new r(n,1,!1,e,\"http://www.w3.org/1999/xlink\",!1,!1)}));[\"xml:base\",\"xml:lang\",\"xml:space\"].forEach((function(e){var n=e.replace(f,la$1);d[n]=new r(n,1,!1,e,\"http://www.w3.org/XML/1998/namespace\",!1,!1)}));[\"tabIndex\",\"crossOrigin\"].forEach((function(e){d[e]=new r(e,1,!1,e.toLowerCase(),null,!1,!1)}));d.xlinkHref=new r(\"xlinkHref\",1,!1,\"xlink:href\",\"http://www.w3.org/1999/xlink\",!0,!1);[\"src\",\"href\",\"action\",\"formAction\"].forEach((function(e){d[e]=new r(e,1,!1,e.toLowerCase(),null,!0,!0)}));var h={animationIterationCount:!0,aspectRatio:!0,borderImageOutset:!0,borderImageSlice:!0,borderImageWidth:!0,boxFlex:!0,boxFlexGroup:!0,boxOrdinalGroup:!0,columnCount:!0,columns:!0,flex:!0,flexGrow:!0,flexPositive:!0,flexShrink:!0,flexNegative:!0,flexOrder:!0,gridArea:!0,gridRow:!0,gridRowEnd:!0,gridRowSpan:!0,gridRowStart:!0,gridColumn:!0,gridColumnEnd:!0,gridColumnSpan:!0,gridColumnStart:!0,fontWeight:!0,lineClamp:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,tabSize:!0,widows:!0,zIndex:!0,zoom:!0,fillOpacity:!0,floodOpacity:!0,stopOpacity:!0,strokeDasharray:!0,strokeDashoffset:!0,strokeMiterlimit:!0,strokeOpacity:!0,strokeWidth:!0},g=[\"Webkit\",\"ms\",\"Moz\",\"O\"];Object.keys(h).forEach((function(e){g.forEach((function(n){n=n+e.charAt(0).toUpperCase()+e.substring(1);h[n]=h[e]}))}));var b=/[\"'&<>]/;function v(e){if(\"boolean\"===typeof e||\"number\"===typeof e)return\"\"+e;e=\"\"+e;var n=b.exec(e);if(n){var a,o=\"\",l=0;for(a=n.index;a<e.length;a++){switch(e.charCodeAt(a)){case 34:n=\"&quot;\";break;case 38:n=\"&amp;\";break;case 39:n=\"&#x27;\";break;case 60:n=\"&lt;\";break;case 62:n=\"&gt;\";break;default:continue}l!==a&&(o+=e.substring(l,a));l=a+1;o+=n}e=l!==a?o+e.substring(l,a):o}return e}var m=/([A-Z])/g,S=/^ms-/,x=Array.isArray;function w$1(e,n){return{insertionMode:e,selectedValue:n}}function ra$1(e,n,a){switch(n){case\"select\":return w$1(1,null!=a.value?a.value:a.defaultValue);case\"svg\":return w$1(2,null);case\"math\":return w$1(3,null);case\"foreignObject\":return w$1(1,null);case\"table\":return w$1(4,null);case\"thead\":case\"tbody\":case\"tfoot\":return w$1(5,null);case\"colgroup\":return w$1(7,null);case\"tr\":return w$1(6,null)}return 4<=e.insertionMode||0===e.insertionMode?w$1(1,null):e}var $=new Map;function ta$1(e,n,a){if(\"object\"!==typeof a)throw Error(l$2(62));n=!0;for(var o in a)if(l.call(a,o)){var i=a[o];if(null!=i&&\"boolean\"!==typeof i&&\"\"!==i){if(0===o.indexOf(\"--\")){var s=v(o);i=v((\"\"+i).trim())}else{s=o;var c=$.get(s);void 0!==c||(c=v(s.replace(m,\"-$1\").toLowerCase().replace(S,\"-ms-\")),$.set(s,c)),s=c;i=\"number\"===typeof i?0===i||l.call(h,o)?\"\"+i:i+\"px\":v((\"\"+i).trim())}n?(n=!1,e.push(' style=\"',s,\":\",i)):e.push(\";\",s,\":\",i)}}n||e.push('\"')}function x$1(e,n,a,o){switch(a){case\"style\":ta$1(e,n,o);return;case\"defaultValue\":case\"defaultChecked\":case\"innerHTML\":case\"suppressContentEditableWarning\":case\"suppressHydrationWarning\":return}if(!(2<a.length)||\"o\"!==a[0]&&\"O\"!==a[0]||\"n\"!==a[1]&&\"N\"!==a[1])if(n=d.hasOwnProperty(a)?d[a]:null,null!==n){switch(typeof o){case\"function\":case\"symbol\":return;case\"boolean\":if(!n.acceptsBooleans)return}a=n.attributeName;switch(n.type){case 3:o&&e.push(\" \",a,'=\"\"');break;case 4:!0===o?e.push(\" \",a,'=\"\"'):!1!==o&&e.push(\" \",a,'=\"',v(o),'\"');break;case 5:isNaN(o)||e.push(\" \",a,'=\"',v(o),'\"');break;case 6:!isNaN(o)&&1<=o&&e.push(\" \",a,'=\"',v(o),'\"');break;default:n.sanitizeURL&&(o=\"\"+o),e.push(\" \",a,'=\"',v(o),'\"')}}else if(ja$1(a)){switch(typeof o){case\"function\":case\"symbol\":return;case\"boolean\":if(n=a.toLowerCase().slice(0,5),\"data-\"!==n&&\"aria-\"!==n)return}e.push(\" \",a,'=\"',v(o),'\"')}}function y$1(e,n,a){if(null!=n){if(null!=a)throw Error(l$2(60));if(\"object\"!==typeof n||!(\"__html\"in n))throw Error(l$2(61));n=n.__html;null!==n&&void 0!==n&&e.push(\"\"+n)}}function ua$1(e){var n=\"\";o.Children.forEach(e,(function(e){null!=e&&(n+=e)}));return n}function va$1(e,n,a,o){e.push(A(a));var i,s=a=null;for(i in n)if(l.call(n,i)){var c=n[i];if(null!=c)switch(i){case\"children\":a=c;break;case\"dangerouslySetInnerHTML\":s=c;break;default:x$1(e,o,i,c)}}e.push(\">\");y$1(e,s,a);return\"string\"===typeof a?(e.push(v(a)),null):a}var E=/^[a-zA-Z][a-zA-Z:_\\.\\-\\d]*$/,T=new Map;function A(e){var n=T.get(e);if(void 0===n){if(!E.test(e))throw Error(l$2(65,e));n=\"<\"+e;T.set(e,n)}return n}function ya$1(e,n,a,o,i){switch(n){case\"select\":e.push(A(\"select\"));var s=null,c=null;for(g in a)if(l.call(a,g)){var d=a[g];if(null!=d)switch(g){case\"children\":s=d;break;case\"dangerouslySetInnerHTML\":c=d;break;case\"defaultValue\":case\"value\":break;default:x$1(e,o,g,d)}}e.push(\">\");y$1(e,c,s);return s;case\"option\":c=i.selectedValue;e.push(A(\"option\"));var f=d=null,h=null;var g=null;for(s in a)if(l.call(a,s)){var b=a[s];if(null!=b)switch(s){case\"children\":d=b;break;case\"selected\":h=b;break;case\"dangerouslySetInnerHTML\":g=b;break;case\"value\":f=b;default:x$1(e,o,s,b)}}if(null!=c)if(a=null!==f?\"\"+f:ua$1(d),x(c)){for(o=0;o<c.length;o++)if(\"\"+c[o]===a){e.push(' selected=\"\"');break}}else\"\"+c===a&&e.push(' selected=\"\"');else h&&e.push(' selected=\"\"');e.push(\">\");y$1(e,g,d);return d;case\"textarea\":e.push(A(\"textarea\"));g=c=s=null;for(d in a)if(l.call(a,d)&&(f=a[d],null!=f))switch(d){case\"children\":g=f;break;case\"value\":s=f;break;case\"defaultValue\":c=f;break;case\"dangerouslySetInnerHTML\":throw Error(l$2(91));default:x$1(e,o,d,f)}null===s&&null!==c&&(s=c);e.push(\">\");if(null!=g){if(null!=s)throw Error(l$2(92));if(x(g)&&1<g.length)throw Error(l$2(93));s=\"\"+g}\"string\"===typeof s&&\"\\n\"===s[0]&&e.push(\"\\n\");null!==s&&e.push(v(\"\"+s));return null;case\"input\":e.push(A(\"input\"));f=g=d=s=null;for(c in a)if(l.call(a,c)&&(h=a[c],null!=h))switch(c){case\"children\":case\"dangerouslySetInnerHTML\":throw Error(l$2(399,\"input\"));case\"defaultChecked\":f=h;break;case\"defaultValue\":d=h;break;case\"checked\":g=h;break;case\"value\":s=h;break;default:x$1(e,o,c,h)}null!==g?x$1(e,o,\"checked\",g):null!==f&&x$1(e,o,\"checked\",f);null!==s?x$1(e,o,\"value\",s):null!==d&&x$1(e,o,\"value\",d);e.push(\"/>\");return null;case\"menuitem\":e.push(A(\"menuitem\"));for(var m in a)if(l.call(a,m)&&(s=a[m],null!=s))switch(m){case\"children\":case\"dangerouslySetInnerHTML\":throw Error(l$2(400));default:x$1(e,o,m,s)}e.push(\">\");return null;case\"title\":e.push(A(\"title\"));s=null;for(b in a)if(l.call(a,b)&&(c=a[b],null!=c))switch(b){case\"children\":s=c;break;case\"dangerouslySetInnerHTML\":throw Error(l$2(434));default:x$1(e,o,b,c)}e.push(\">\");return s;case\"listing\":case\"pre\":e.push(A(n));c=s=null;for(f in a)if(l.call(a,f)&&(d=a[f],null!=d))switch(f){case\"children\":s=d;break;case\"dangerouslySetInnerHTML\":c=d;break;default:x$1(e,o,f,d)}e.push(\">\");if(null!=c){if(null!=s)throw Error(l$2(60));if(\"object\"!==typeof c||!(\"__html\"in c))throw Error(l$2(61));a=c.__html;null!==a&&void 0!==a&&(\"string\"===typeof a&&0<a.length&&\"\\n\"===a[0]?e.push(\"\\n\",a):e.push(\"\"+a))}\"string\"===typeof s&&\"\\n\"===s[0]&&e.push(\"\\n\");return s;case\"area\":case\"base\":case\"br\":case\"col\":case\"embed\":case\"hr\":case\"img\":case\"keygen\":case\"link\":case\"meta\":case\"param\":case\"source\":case\"track\":case\"wbr\":e.push(A(n));for(var S in a)if(l.call(a,S)&&(s=a[S],null!=s))switch(S){case\"children\":case\"dangerouslySetInnerHTML\":throw Error(l$2(399,n));default:x$1(e,o,S,s)}e.push(\"/>\");return null;case\"annotation-xml\":case\"color-profile\":case\"font-face\":case\"font-face-src\":case\"font-face-uri\":case\"font-face-format\":case\"font-face-name\":case\"missing-glyph\":return va$1(e,a,n,o);case\"html\":return 0===i.insertionMode&&e.push(\"<!DOCTYPE html>\"),va$1(e,a,n,o);default:if(-1===n.indexOf(\"-\")&&\"string\"!==typeof a.is)return va$1(e,a,n,o);e.push(A(n));c=s=null;for(h in a)if(l.call(a,h)&&(d=a[h],null!=d))switch(h){case\"children\":s=d;break;case\"dangerouslySetInnerHTML\":c=d;break;case\"style\":ta$1(e,o,d);break;case\"suppressContentEditableWarning\":case\"suppressHydrationWarning\":break;default:ja$1(h)&&\"function\"!==typeof d&&\"symbol\"!==typeof d&&e.push(\" \",h,'=\"',v(d),'\"')}e.push(\">\");y$1(e,c,s);return s}}function za$1(e,n,a){e.push('\\x3c!--$?--\\x3e<template id=\"');if(null===a)throw Error(l$2(395));e.push(a);return e.push('\"></template>')}function Aa$1(e,n,a,o){switch(a.insertionMode){case 0:case 1:return e.push('<div hidden id=\"'),e.push(n.segmentPrefix),n=o.toString(16),e.push(n),e.push('\">');case 2:return e.push('<svg aria-hidden=\"true\" style=\"display:none\" id=\"'),e.push(n.segmentPrefix),n=o.toString(16),e.push(n),e.push('\">');case 3:return e.push('<math aria-hidden=\"true\" style=\"display:none\" id=\"'),e.push(n.segmentPrefix),n=o.toString(16),e.push(n),e.push('\">');case 4:return e.push('<table hidden id=\"'),e.push(n.segmentPrefix),n=o.toString(16),e.push(n),e.push('\">');case 5:return e.push('<table hidden><tbody id=\"'),e.push(n.segmentPrefix),n=o.toString(16),e.push(n),e.push('\">');case 6:return e.push('<table hidden><tr id=\"'),e.push(n.segmentPrefix),n=o.toString(16),e.push(n),e.push('\">');case 7:return e.push('<table hidden><colgroup id=\"'),e.push(n.segmentPrefix),n=o.toString(16),e.push(n),e.push('\">');default:throw Error(l$2(397))}}function Ba$1(e,n){switch(n.insertionMode){case 0:case 1:return e.push(\"</div>\");case 2:return e.push(\"</svg>\");case 3:return e.push(\"</math>\");case 4:return e.push(\"</table>\");case 5:return e.push(\"</tbody></table>\");case 6:return e.push(\"</tr></table>\");case 7:return e.push(\"</colgroup></table>\");default:throw Error(l$2(397))}}var R=/[<\\u2028\\u2029]/g;function Da$1(e){return JSON.stringify(e).replace(R,(function(e){switch(e){case\"<\":return\"\\\\u003c\";case\"\\u2028\":return\"\\\\u2028\";case\"\\u2029\":return\"\\\\u2029\";default:throw Error(\"escapeJSStringsForInstructionScripts encountered a match it does not know how to replace. this means the match regex and the replacement characters are no longer in sync. This is a bug in React\")}}))}function Ea$1(e,n){n=void 0===n?\"\":n;return{bootstrapChunks:[],startInlineScript:\"<script>\",placeholderPrefix:n+\"P:\",segmentPrefix:n+\"S:\",boundaryPrefix:n+\"B:\",idPrefix:n,nextSuspenseID:0,sentCompleteSegmentFunction:!1,sentCompleteBoundaryFunction:!1,sentClientRenderFunction:!1,generateStaticMarkup:e}}function Fa$1(e,n,a,o){if(a.generateStaticMarkup)return e.push(v(n)),!1;\"\"===n?e=o:(o&&e.push(\"\\x3c!-- --\\x3e\"),e.push(v(n)),e=!0);return e}var _=Object.assign,I=Symbol.for(\"react.element\"),B=Symbol.for(\"react.portal\"),N=Symbol.for(\"react.fragment\"),z=Symbol.for(\"react.strict_mode\"),V=Symbol.for(\"react.profiler\"),j=Symbol.for(\"react.provider\"),O=Symbol.for(\"react.context\"),H=Symbol.for(\"react.forward_ref\"),U=Symbol.for(\"react.suspense\"),K=Symbol.for(\"react.suspense_list\"),ee=Symbol.for(\"react.memo\"),te=Symbol.for(\"react.lazy\"),ne=Symbol.for(\"react.scope\"),re=Symbol.for(\"react.debug_trace_mode\"),ae=Symbol.for(\"react.legacy_hidden\"),oe=Symbol.for(\"react.default_value\"),le=Symbol.iterator;function Xa$1(e){if(null==e)return null;if(\"function\"===typeof e)return e.displayName||e.name||null;if(\"string\"===typeof e)return e;switch(e){case N:return\"Fragment\";case B:return\"Portal\";case V:return\"Profiler\";case z:return\"StrictMode\";case U:return\"Suspense\";case K:return\"SuspenseList\"}if(\"object\"===typeof e)switch(e.$$typeof){case O:return(e.displayName||\"Context\")+\".Consumer\";case j:return(e._context.displayName||\"Context\")+\".Provider\";case H:var n=e.render;e=e.displayName;e||(e=n.displayName||n.name||\"\",e=\"\"!==e?\"ForwardRef(\"+e+\")\":\"ForwardRef\");return e;case ee:return n=e.displayName||null,null!==n?n:Xa$1(e.type)||\"Memo\";case te:n=e._payload;e=e._init;try{return Xa$1(e(n))}catch(e){}}return null}var ue={};function Za$1(e,n){e=e.contextTypes;if(!e)return ue;var a,o={};for(a in e)o[a]=n[a];return o}var ie=null;function F(e,n){if(e!==n){e.context._currentValue2=e.parentValue;e=e.parent;var a=n.parent;if(null===e){if(null!==a)throw Error(l$2(401))}else{if(null===a)throw Error(l$2(401));F(e,a)}n.context._currentValue2=n.value}}function $a$1(e){e.context._currentValue2=e.parentValue;e=e.parent;null!==e&&$a$1(e)}function ab$1(e){var n=e.parent;null!==n&&ab$1(n);e.context._currentValue2=e.value}function bb$1(e,n){e.context._currentValue2=e.parentValue;e=e.parent;if(null===e)throw Error(l$2(402));e.depth===n.depth?F(e,n):bb$1(e,n)}function cb$1(e,n){var a=n.parent;if(null===a)throw Error(l$2(402));e.depth===a.depth?F(e,a):cb$1(e,a);n.context._currentValue2=n.value}function G(e){var n=ie;n!==e&&(null===n?ab$1(e):null===e?$a$1(n):n.depth===e.depth?F(n,e):n.depth>e.depth?bb$1(n,e):cb$1(n,e),ie=e)}var se={isMounted:function(){return!1},enqueueSetState:function(e,n){e=e._reactInternals;null!==e.queue&&e.queue.push(n)},enqueueReplaceState:function(e,n){e=e._reactInternals;e.replace=!0;e.queue=[n]},enqueueForceUpdate:function(){}};function eb$1(e,n,a,o){var l=void 0!==e.state?e.state:null;e.updater=se;e.props=a;e.state=l;var i={queue:[],replace:!1};e._reactInternals=i;var s=n.contextType;e.context=\"object\"===typeof s&&null!==s?s._currentValue2:o;s=n.getDerivedStateFromProps;\"function\"===typeof s&&(s=s(a,l),l=null===s||void 0===s?l:_({},l,s),e.state=l);if(\"function\"!==typeof n.getDerivedStateFromProps&&\"function\"!==typeof e.getSnapshotBeforeUpdate&&(\"function\"===typeof e.UNSAFE_componentWillMount||\"function\"===typeof e.componentWillMount))if(n=e.state,\"function\"===typeof e.componentWillMount&&e.componentWillMount(),\"function\"===typeof e.UNSAFE_componentWillMount&&e.UNSAFE_componentWillMount(),n!==e.state&&se.enqueueReplaceState(e,e.state,null),null!==i.queue&&0<i.queue.length)if(n=i.queue,s=i.replace,i.queue=null,i.replace=!1,s&&1===n.length)e.state=n[0];else{i=s?n[0]:e.state;l=!0;for(s=s?1:0;s<n.length;s++){var c=n[s];c=\"function\"===typeof c?c.call(e,i,a,o):c;null!=c&&(l?(l=!1,i=_({},i,c)):_(i,c))}e.state=i}else i.queue=null}var ce={id:1,overflow:\"\"};function gb$1(e,n,a){var o=e.id;e=e.overflow;var l=32-de(o)-1;o&=~(1<<l);a+=1;var i=32-de(n)+l;if(30<i){var s=l-l%5;i=(o&(1<<s)-1).toString(32);o>>=s;l-=s;return{id:1<<32-de(n)+l|a<<l|o,overflow:i+e}}return{id:1<<i|a<<l|o,overflow:e}}var de=Math.clz32?Math.clz32:hb$1,fe=Math.log,pe=Math.LN2;function hb$1(e){e>>>=0;return 0===e?32:31-(fe(e)/pe|0)|0}function kb$1(e,n){return e===n&&(0!==e||1/e===1/n)||e!==e&&n!==n}var he=\"function\"===typeof Object.is?Object.is:kb$1,ge=null,be=null,me=null,ye=null,ve=!1,ke=!1,we=0,Se=null,xe=0;function Q$1(){if(null===ge)throw Error(l$2(321));return ge}function pb$1(){if(0<xe)throw Error(l$2(312));return{memoizedState:null,queue:null,next:null}}function qb$1(){null===ye?null===me?(ve=!1,me=ye=pb$1()):(ve=!0,ye=me):null===ye.next?(ve=!1,ye=ye.next=pb$1()):(ve=!0,ye=ye.next);return ye}function rb$1(){be=ge=null;ke=!1;me=null;xe=0;ye=Se=null}function sb$1(e,n){return\"function\"===typeof n?n(e):n}function tb$1(e,n,a){ge=Q$1();ye=qb$1();if(ve){var o=ye.queue;n=o.dispatch;if(null!==Se&&(a=Se.get(o),void 0!==a)){Se.delete(o);o=ye.memoizedState;do{o=e(o,a.action),a=a.next}while(null!==a);ye.memoizedState=o;return[o,n]}return[ye.memoizedState,n]}e=e===sb$1?\"function\"===typeof n?n():n:void 0!==a?a(n):n;ye.memoizedState=e;e=ye.queue={last:null,dispatch:null};e=e.dispatch=ub$1.bind(null,ge,e);return[ye.memoizedState,e]}function vb$1(e,n){ge=Q$1();ye=qb$1();n=void 0===n?null:n;if(null!==ye){var a=ye.memoizedState;if(null!==a&&null!==n){var o=a[1];e:if(null===o)o=!1;else{for(var l=0;l<o.length&&l<n.length;l++)if(!he(n[l],o[l])){o=!1;break e}o=!0}if(o)return a[0]}}e=e();ye.memoizedState=[e,n];return e}function ub$1(e,n,a){if(25<=xe)throw Error(l$2(301));if(e===ge)if(ke=!0,e={action:a,next:null},null===Se&&(Se=new Map),a=Se.get(n),void 0===a)Se.set(n,e);else{for(n=a;null!==n.next;)n=n.next;n.next=e}}function wb$1(){throw Error(l$2(394))}function R$1(){}var $e={readContext:function(e){return e._currentValue2},useContext:function(e){Q$1();return e._currentValue2},useMemo:vb$1,useReducer:tb$1,useRef:function(e){ge=Q$1();ye=qb$1();var n=ye.memoizedState;return null===n?(e={current:e},ye.memoizedState=e):n},useState:function(e){return tb$1(sb$1,e)},useInsertionEffect:R$1,useLayoutEffect:function(){},useCallback:function(e,n){return vb$1((function(){return e}),n)},useImperativeHandle:R$1,useEffect:R$1,useDebugValue:R$1,useDeferredValue:function(e){Q$1();return e},useTransition:function(){Q$1();return[!1,wb$1]},useId:function(){var e=be.treeContext;var n=e.overflow;e=e.id;e=(e&~(1<<32-de(e)-1)).toString(32)+n;var a=Ce;if(null===a)throw Error(l$2(404));n=we++;e=\":\"+a.idPrefix+\"R\"+e;0<n&&(e+=\"H\"+n.toString(32));return e+\":\"},useMutableSource:function(e,n){Q$1();return n(e._source)},useSyncExternalStore:function(e,n,a){if(void 0===a)throw Error(l$2(407));return a()}},Ce=null,Ee=o.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentDispatcher;function zb$1(e){console.error(e);return null}function T$1(){}function Ab$1(e,n,a,o,l,i,s,c,d){var f=[],h=new Set;n={destination:null,responseState:n,progressiveChunkSize:void 0===o?12800:o,status:0,fatalError:null,nextSegmentId:0,allPendingTasks:0,pendingRootTasks:0,completedRootSegment:null,abortableTasks:h,pingedTasks:f,clientRenderedBoundaries:[],completedBoundaries:[],partialBoundaries:[],onError:void 0===l?zb$1:l,onAllReady:void 0===i?T$1:i,onShellReady:void 0===s?T$1:s,onShellError:void 0===c?T$1:c,onFatalError:void 0===d?T$1:d};a=U$1(n,0,null,a,!1,!1);a.parentFlushed=!0;e=Bb$1(n,e,null,a,h,ue,null,ce);f.push(e);return n}function Bb$1(e,n,a,o,l,i,s,c){e.allPendingTasks++;null===a?e.pendingRootTasks++:a.pendingTasks++;var d={node:n,ping:function(){var n=e.pingedTasks;n.push(d);1===n.length&&Cb$1(e)},blockedBoundary:a,blockedSegment:o,abortSet:l,legacyContext:i,context:s,treeContext:c};l.add(d);return d}function U$1(e,n,a,o,l,i){return{status:0,id:-1,index:n,parentFlushed:!1,chunks:[],children:[],formatContext:o,boundary:a,lastPushedText:l,textEmbedded:i}}function V$1(e,n){e=e.onError(n);if(null!=e&&\"string\"!==typeof e)throw Error('onError returned something with a type other than \"string\". onError should return a string and may return null or undefined but must not return anything else. It received something of type \"'+typeof e+'\" instead');return e}function W$1(e,n){var a=e.onShellError;a(n);a=e.onFatalError;a(n);null!==e.destination?(e.status=2,e.destination.destroy(n)):(e.status=1,e.fatalError=n)}function Db$1(e,n,a,o,l){ge={};be=n;we=0;for(e=a(o,l);ke;)ke=!1,we=0,xe+=1,ye=null,e=a(o,l);rb$1();return e}function Eb$1(e,n,a,o){var l=a.render(),i=o.childContextTypes;if(null!==i&&void 0!==i){var s=n.legacyContext;if(\"function\"!==typeof a.getChildContext)o=s;else{a=a.getChildContext();for(var c in a)if(!(c in i))throw Error(l$2(108,Xa$1(o)||\"Unknown\",c));o=_({},s,a)}n.legacyContext=o;X$1(e,n,l);n.legacyContext=s}else X$1(e,n,l)}function Fb(e,n){if(e&&e.defaultProps){n=_({},n);e=e.defaultProps;for(var a in e)void 0===n[a]&&(n[a]=e[a]);return n}return n}function Gb$1(e,n,a,o,l){if(\"function\"===typeof a)if(a.prototype&&a.prototype.isReactComponent){l=Za$1(a,n.legacyContext);var i=a.contextType;i=new a(o,\"object\"===typeof i&&null!==i?i._currentValue2:l);eb$1(i,a,o,l);Eb$1(e,n,i,a)}else{i=Za$1(a,n.legacyContext);l=Db$1(e,n,a,o,i);var s=0!==we;if(\"object\"===typeof l&&null!==l&&\"function\"===typeof l.render&&void 0===l.$$typeof)eb$1(l,a,o,i),Eb$1(e,n,l,a);else if(s){o=n.treeContext;n.treeContext=gb$1(o,1,0);try{X$1(e,n,l)}finally{n.treeContext=o}}else X$1(e,n,l)}else{if(\"string\"!==typeof a){switch(a){case ae:case re:case z:case V:case N:X$1(e,n,o.children);return;case K:X$1(e,n,o.children);return;case ne:throw Error(l$2(343));case U:e:{a=n.blockedBoundary;l=n.blockedSegment;i=o.fallback;o=o.children;s=new Set;var c={id:null,rootSegmentID:-1,parentFlushed:!1,pendingTasks:0,forceClientRender:!1,completedSegments:[],byteSize:0,fallbackAbortableTasks:s,errorDigest:null},d=U$1(e,l.chunks.length,c,l.formatContext,!1,!1);l.children.push(d);l.lastPushedText=!1;var f=U$1(e,0,null,l.formatContext,!1,!1);f.parentFlushed=!0;n.blockedBoundary=c;n.blockedSegment=f;try{if(Hb$1(e,n,o),e.responseState.generateStaticMarkup||f.lastPushedText&&f.textEmbedded&&f.chunks.push(\"\\x3c!-- --\\x3e\"),f.status=1,Y$1(c,f),0===c.pendingTasks)break e}catch(n){f.status=4,c.forceClientRender=!0,c.errorDigest=V$1(e,n)}finally{n.blockedBoundary=a,n.blockedSegment=l}n=Bb$1(e,i,a,d,s,n.legacyContext,n.context,n.treeContext);e.pingedTasks.push(n)}return}if(\"object\"===typeof a&&null!==a)switch(a.$$typeof){case H:o=Db$1(e,n,a.render,o,l);if(0!==we){a=n.treeContext;n.treeContext=gb$1(a,1,0);try{X$1(e,n,o)}finally{n.treeContext=a}}else X$1(e,n,o);return;case ee:a=a.type;o=Fb(a,o);Gb$1(e,n,a,o,l);return;case j:l=o.children;a=a._context;o=o.value;i=a._currentValue2;a._currentValue2=o;s=ie;ie=o={parent:s,depth:null===s?0:s.depth+1,context:a,parentValue:i,value:o};n.context=o;X$1(e,n,l);e=ie;if(null===e)throw Error(l$2(403));o=e.parentValue;e.context._currentValue2=o===oe?e.context._defaultValue:o;e=ie=e.parent;n.context=e;return;case O:o=o.children;o=o(a._currentValue2);X$1(e,n,o);return;case te:l=a._init;a=l(a._payload);o=Fb(a,o);Gb$1(e,n,a,o,void 0);return}throw Error(l$2(130,null==a?a:typeof a,\"\"))}l=n.blockedSegment;i=ya$1(l.chunks,a,o,e.responseState,l.formatContext);l.lastPushedText=!1;s=l.formatContext;l.formatContext=ra$1(s,a,o);Hb$1(e,n,i);l.formatContext=s;switch(a){case\"area\":case\"base\":case\"br\":case\"col\":case\"embed\":case\"hr\":case\"img\":case\"input\":case\"keygen\":case\"link\":case\"meta\":case\"param\":case\"source\":case\"track\":case\"wbr\":break;default:l.chunks.push(\"</\",a,\">\")}l.lastPushedText=!1}}function X$1(e,n,a){n.node=a;if(\"object\"===typeof a&&null!==a){switch(a.$$typeof){case I:Gb$1(e,n,a.type,a.props,a.ref);return;case B:throw Error(l$2(257));case te:var o=a._init;a=o(a._payload);X$1(e,n,a);return}if(x(a)){Ib$1(e,n,a);return}null===a||\"object\"!==typeof a?o=null:(o=le&&a[le]||a[\"@@iterator\"],o=\"function\"===typeof o?o:null);if(o&&(o=o.call(a))){a=o.next();if(!a.done){var l=[];do{l.push(a.value),a=o.next()}while(!a.done);Ib$1(e,n,l)}return}e=Object.prototype.toString.call(a);throw Error(l$2(31,\"[object Object]\"===e?\"object with keys {\"+Object.keys(a).join(\", \")+\"}\":e))}\"string\"===typeof a?(o=n.blockedSegment,o.lastPushedText=Fa$1(n.blockedSegment.chunks,a,e.responseState,o.lastPushedText)):\"number\"===typeof a&&(o=n.blockedSegment,o.lastPushedText=Fa$1(n.blockedSegment.chunks,\"\"+a,e.responseState,o.lastPushedText))}function Ib$1(e,n,a){for(var o=a.length,l=0;l<o;l++){var i=n.treeContext;n.treeContext=gb$1(i,o,l);try{Hb$1(e,n,a[l])}finally{n.treeContext=i}}}function Hb$1(e,n,a){var o=n.blockedSegment.formatContext,l=n.legacyContext,i=n.context;try{return X$1(e,n,a)}catch(d){if(rb$1(),\"object\"!==typeof d||null===d||\"function\"!==typeof d.then)throw n.blockedSegment.formatContext=o,n.legacyContext=l,n.context=i,G(i),d;a=d;var s=n.blockedSegment,c=U$1(e,s.chunks.length,null,s.formatContext,s.lastPushedText,!0);s.children.push(c);s.lastPushedText=!1;e=Bb$1(e,n.node,n.blockedBoundary,c,n.abortSet,n.legacyContext,n.context,n.treeContext).ping;a.then(e,e);n.blockedSegment.formatContext=o;n.legacyContext=l;n.context=i;G(i)}}function Jb$1(e){var n=e.blockedBoundary;e=e.blockedSegment;e.status=3;Kb$1(this,n,e)}function Lb$1(e,n,a){var o=e.blockedBoundary;e.blockedSegment.status=3;null===o?(n.allPendingTasks--,2!==n.status&&(n.status=2,null!==n.destination&&n.destination.push(null))):(o.pendingTasks--,o.forceClientRender||(o.forceClientRender=!0,e=void 0===a?Error(l$2(432)):a,o.errorDigest=n.onError(e),o.parentFlushed&&n.clientRenderedBoundaries.push(o)),o.fallbackAbortableTasks.forEach((function(e){return Lb$1(e,n,a)})),o.fallbackAbortableTasks.clear(),n.allPendingTasks--,0===n.allPendingTasks&&(o=n.onAllReady,o()))}function Y$1(e,n){if(0===n.chunks.length&&1===n.children.length&&null===n.children[0].boundary){var a=n.children[0];a.id=n.id;a.parentFlushed=!0;1===a.status&&Y$1(e,a)}else e.completedSegments.push(n)}function Kb$1(e,n,a){if(null===n){if(a.parentFlushed){if(null!==e.completedRootSegment)throw Error(l$2(389));e.completedRootSegment=a}e.pendingRootTasks--;0===e.pendingRootTasks&&(e.onShellError=T$1,n=e.onShellReady,n())}else n.pendingTasks--,n.forceClientRender||(0===n.pendingTasks?(a.parentFlushed&&1===a.status&&Y$1(n,a),n.parentFlushed&&e.completedBoundaries.push(n),n.fallbackAbortableTasks.forEach(Jb$1,e),n.fallbackAbortableTasks.clear()):a.parentFlushed&&1===a.status&&(Y$1(n,a),1===n.completedSegments.length&&n.parentFlushed&&e.partialBoundaries.push(n)));e.allPendingTasks--;0===e.allPendingTasks&&(e=e.onAllReady,e())}function Cb$1(e){if(2!==e.status){var n=ie,a=Ee.current;Ee.current=$e;var o=Ce;Ce=e.responseState;try{var l,i=e.pingedTasks;for(l=0;l<i.length;l++){var s=i[l];var c=e,d=s.blockedSegment;if(0===d.status){G(s.context);try{X$1(c,s,s.node),c.responseState.generateStaticMarkup||d.lastPushedText&&d.textEmbedded&&d.chunks.push(\"\\x3c!-- --\\x3e\"),s.abortSet.delete(s),d.status=1,Kb$1(c,s.blockedBoundary,d)}catch(e){if(rb$1(),\"object\"===typeof e&&null!==e&&\"function\"===typeof e.then){var f=s.ping;e.then(f,f)}else{s.abortSet.delete(s);d.status=4;var h=s.blockedBoundary,g=e,b=V$1(c,g);null===h?W$1(c,g):(h.pendingTasks--,h.forceClientRender||(h.forceClientRender=!0,h.errorDigest=b,h.parentFlushed&&c.clientRenderedBoundaries.push(h)));c.allPendingTasks--;if(0===c.allPendingTasks){var m=c.onAllReady;m()}}}}}i.splice(0,l);null!==e.destination&&Mb$1(e,e.destination)}catch(n){V$1(e,n),W$1(e,n)}finally{Ce=o,Ee.current=a,a===$e&&G(n)}}}function Z$1(e,n,a){a.parentFlushed=!0;switch(a.status){case 0:var o=a.id=e.nextSegmentId++;a.lastPushedText=!1;a.textEmbedded=!1;e=e.responseState;n.push('<template id=\"');n.push(e.placeholderPrefix);e=o.toString(16);n.push(e);return n.push('\"></template>');case 1:a.status=2;var l=!0;o=a.chunks;var i=0;a=a.children;for(var s=0;s<a.length;s++){for(l=a[s];i<l.index;i++)n.push(o[i]);l=Nb$1(e,n,l)}for(;i<o.length-1;i++)n.push(o[i]);i<o.length&&(l=n.push(o[i]));return l;default:throw Error(l$2(390))}}function Nb$1(e,n,a){var o=a.boundary;if(null===o)return Z$1(e,n,a);o.parentFlushed=!0;if(o.forceClientRender)return e.responseState.generateStaticMarkup||(o=o.errorDigest,n.push(\"\\x3c!--$!--\\x3e\"),n.push(\"<template\"),o&&(n.push(' data-dgst=\"'),o=v(o),n.push(o),n.push('\"')),n.push(\"></template>\")),Z$1(e,n,a),e=!!e.responseState.generateStaticMarkup||n.push(\"\\x3c!--/$--\\x3e\"),e;if(0<o.pendingTasks){o.rootSegmentID=e.nextSegmentId++;0<o.completedSegments.length&&e.partialBoundaries.push(o);var l=e.responseState;var i=l.nextSuspenseID++;l=l.boundaryPrefix+i.toString(16);o=o.id=l;za$1(n,e.responseState,o);Z$1(e,n,a);return n.push(\"\\x3c!--/$--\\x3e\")}if(o.byteSize>e.progressiveChunkSize)return o.rootSegmentID=e.nextSegmentId++,e.completedBoundaries.push(o),za$1(n,e.responseState,o.id),Z$1(e,n,a),n.push(\"\\x3c!--/$--\\x3e\");e.responseState.generateStaticMarkup||n.push(\"\\x3c!--$--\\x3e\");a=o.completedSegments;if(1!==a.length)throw Error(l$2(391));Nb$1(e,n,a[0]);e=!!e.responseState.generateStaticMarkup||n.push(\"\\x3c!--/$--\\x3e\");return e}function Ob$1(e,n,a){Aa$1(n,e.responseState,a.formatContext,a.id);Nb$1(e,n,a);return Ba$1(n,a.formatContext)}function Pb$1(e,n,a){for(var o=a.completedSegments,l=0;l<o.length;l++)Qb$1(e,n,a,o[l]);o.length=0;e=e.responseState;o=a.id;a=a.rootSegmentID;n.push(e.startInlineScript);e.sentCompleteBoundaryFunction?n.push('$RC(\"'):(e.sentCompleteBoundaryFunction=!0,n.push('function $RC(a,b){a=document.getElementById(a);b=document.getElementById(b);b.parentNode.removeChild(b);if(a){a=a.previousSibling;var f=a.parentNode,c=a.nextSibling,e=0;do{if(c&&8===c.nodeType){var d=c.data;if(\"/$\"===d)if(0===e)break;else e--;else\"$\"!==d&&\"$?\"!==d&&\"$!\"!==d||e++}d=c.nextSibling;f.removeChild(c);c=d}while(c);for(;b.firstChild;)f.insertBefore(b.firstChild,c);a.data=\"$\";a._reactRetry&&a._reactRetry()}};$RC(\"'));if(null===o)throw Error(l$2(395));a=a.toString(16);n.push(o);n.push('\",\"');n.push(e.segmentPrefix);n.push(a);return n.push('\")<\\/script>')}function Qb$1(e,n,a,o){if(2===o.status)return!0;var l=o.id;if(-1===l){if(-1===(o.id=a.rootSegmentID))throw Error(l$2(392));return Ob$1(e,n,o)}Ob$1(e,n,o);e=e.responseState;n.push(e.startInlineScript);e.sentCompleteSegmentFunction?n.push('$RS(\"'):(e.sentCompleteSegmentFunction=!0,n.push('function $RS(a,b){a=document.getElementById(a);b=document.getElementById(b);for(a.parentNode.removeChild(a);a.firstChild;)b.parentNode.insertBefore(a.firstChild,b);b.parentNode.removeChild(b)};$RS(\"'));n.push(e.segmentPrefix);l=l.toString(16);n.push(l);n.push('\",\"');n.push(e.placeholderPrefix);n.push(l);return n.push('\")<\\/script>')}function Mb$1(e,n){try{var a=e.completedRootSegment;if(null!==a&&0===e.pendingRootTasks){Nb$1(e,n,a);e.completedRootSegment=null;var o=e.responseState.bootstrapChunks;for(a=0;a<o.length-1;a++)n.push(o[a]);a<o.length&&n.push(o[a])}var l,i=e.clientRenderedBoundaries;for(l=0;l<i.length;l++){var s=i[l];o=n;var c=e.responseState,d=s.id,f=s.errorDigest,h=s.errorMessage,g=s.errorComponentStack;o.push(c.startInlineScript);c.sentClientRenderFunction?o.push('$RX(\"'):(c.sentClientRenderFunction=!0,o.push('function $RX(b,c,d,e){var a=document.getElementById(b);a&&(b=a.previousSibling,b.data=\"$!\",a=a.dataset,c&&(a.dgst=c),d&&(a.msg=d),e&&(a.stck=e),b._reactRetry&&b._reactRetry())};$RX(\"'));if(null===d)throw Error(l$2(395));o.push(d);o.push('\"');if(f||h||g){o.push(\",\");var b=Da$1(f||\"\");o.push(b)}if(h||g){o.push(\",\");var m=Da$1(h||\"\");o.push(m)}if(g){o.push(\",\");var S=Da$1(g);o.push(S)}if(!o.push(\")<\\/script>\")){e.destination=null;l++;i.splice(0,l);return}}i.splice(0,l);var x=e.completedBoundaries;for(l=0;l<x.length;l++)if(!Pb$1(e,n,x[l])){e.destination=null;l++;x.splice(0,l);return}x.splice(0,l);var $=e.partialBoundaries;for(l=0;l<$.length;l++){var E=$[l];e:{i=e;s=n;var T=E.completedSegments;for(c=0;c<T.length;c++)if(!Qb$1(i,s,E,T[c])){c++;T.splice(0,c);var R=!1;break e}T.splice(0,c);R=!0}if(!R){e.destination=null;l++;$.splice(0,l);return}}$.splice(0,l);var _=e.completedBoundaries;for(l=0;l<_.length;l++)if(!Pb$1(e,n,_[l])){e.destination=null;l++;_.splice(0,l);return}_.splice(0,l)}finally{0===e.allPendingTasks&&0===e.pingedTasks.length&&0===e.clientRenderedBoundaries.length&&0===e.completedBoundaries.length&&n.push(null)}}function Rb$1(e,n){try{var a=e.abortableTasks;a.forEach((function(a){return Lb$1(a,e,n)}));a.clear();null!==e.destination&&Mb$1(e,e.destination)}catch(n){V$1(e,n),W$1(e,n)}}function Sb$1(){}function Tb$1(e,n,a,o){var l=!1,i=null,s=\"\",c={push:function(e){null!==e&&(s+=e);return!0},destroy:function(e){l=!0;i=e}},d=!1;e=Ab$1(e,Ea$1(a,n?n.identifierPrefix:void 0),{insertionMode:1,selectedValue:null},Infinity,Sb$1,void 0,(function(){d=!0}),void 0,void 0);Cb$1(e);Rb$1(e,o);if(1===e.status)e.status=2,c.destroy(e.fatalError);else if(2!==e.status&&null===e.destination){e.destination=c;try{Mb$1(e,c)}catch(n){V$1(e,n),W$1(e,n)}}if(l)throw i;if(!d)throw Error(l$2(426));return s}a.renderToNodeStream=function(){throw Error(l$2(207))};a.renderToStaticMarkup=function(e,n){return Tb$1(e,n,!0,'The server used \"renderToStaticMarkup\" which does not support Suspense. If you intended to have the server wait for the suspended component please switch to \"renderToReadableStream\" which supports Suspense on the server')};a.renderToStaticNodeStream=function(){throw Error(l$2(208))};a.renderToString=function(e,n){return Tb$1(e,n,!1,'The server used \"renderToString\" which does not support Suspense. If you intended for this Suspense boundary to render the fallback content on the server consider throwing an Error somewhere within the Suspense boundary. If you intended to have the server wait for the suspended component please switch to \"renderToReadableStream\" which supports Suspense on the server')};a.version=\"18.2.0\";var Fe=\"default\"in e?e.default:e;var Te={};var Re=Fe;function k(e){for(var n=\"https://reactjs.org/docs/error-decoder.html?invariant=\"+e,a=1;a<arguments.length;a++)n+=\"&args[]=\"+encodeURIComponent(arguments[a]);return\"Minified React error #\"+e+\"; visit \"+n+\" for the full message or use the non-minified dev environment for full errors and additional helpful warnings.\"}var Pe=null,_e=0;function p(e,n){if(0!==n.length)if(512<n.length)0<_e&&(e.enqueue(new Uint8Array(Pe.buffer,0,_e)),Pe=new Uint8Array(512),_e=0),e.enqueue(n);else{var a=Pe.length-_e;a<n.length&&(0===a?e.enqueue(Pe):(Pe.set(n.subarray(0,a),_e),e.enqueue(Pe),n=n.subarray(a)),Pe=new Uint8Array(512),_e=0);Pe.set(n,_e);_e+=n.length}}function t(e,n){p(e,n);return!0}function ba(e){Pe&&0<_e&&(e.enqueue(new Uint8Array(Pe.buffer,0,_e)),Pe=null,_e=0)}var Me=new TextEncoder;function u(e){return Me.encode(e)}function w(e){return Me.encode(e)}function da(e,n){\"function\"===typeof e.error?e.error(n):e.close()}var Ie=Object.prototype.hasOwnProperty,De=/^[:A-Z_a-z\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02FF\\u0370-\\u037D\\u037F-\\u1FFF\\u200C-\\u200D\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD][:A-Z_a-z\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02FF\\u0370-\\u037D\\u037F-\\u1FFF\\u200C-\\u200D\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD\\-.0-9\\u00B7\\u0300-\\u036F\\u203F-\\u2040]*$/,Be={},Ne={};function ia(e){if(Ie.call(Ne,e))return!0;if(Ie.call(Be,e))return!1;if(De.test(e))return Ne[e]=!0;Be[e]=!0;return!1}function y(e,n,a,o,l,i,s){this.acceptsBooleans=2===n||3===n||4===n;this.attributeName=o;this.attributeNamespace=l;this.mustUseProperty=a;this.propertyName=e;this.type=n;this.sanitizeURL=i;this.removeEmptyString=s}var ze={};\"children dangerouslySetInnerHTML defaultValue defaultChecked innerHTML suppressContentEditableWarning suppressHydrationWarning style\".split(\" \").forEach((function(e){ze[e]=new y(e,0,!1,e,null,!1,!1)}));[[\"acceptCharset\",\"accept-charset\"],[\"className\",\"class\"],[\"htmlFor\",\"for\"],[\"httpEquiv\",\"http-equiv\"]].forEach((function(e){var n=e[0];ze[n]=new y(n,1,!1,e[1],null,!1,!1)}));[\"contentEditable\",\"draggable\",\"spellCheck\",\"value\"].forEach((function(e){ze[e]=new y(e,2,!1,e.toLowerCase(),null,!1,!1)}));[\"autoReverse\",\"externalResourcesRequired\",\"focusable\",\"preserveAlpha\"].forEach((function(e){ze[e]=new y(e,2,!1,e,null,!1,!1)}));\"allowFullScreen async autoFocus autoPlay controls default defer disabled disablePictureInPicture disableRemotePlayback formNoValidate hidden loop noModule noValidate open playsInline readOnly required reversed scoped seamless itemScope\".split(\" \").forEach((function(e){ze[e]=new y(e,3,!1,e.toLowerCase(),null,!1,!1)}));[\"checked\",\"multiple\",\"muted\",\"selected\"].forEach((function(e){ze[e]=new y(e,3,!0,e,null,!1,!1)}));[\"capture\",\"download\"].forEach((function(e){ze[e]=new y(e,4,!1,e,null,!1,!1)}));[\"cols\",\"rows\",\"size\",\"span\"].forEach((function(e){ze[e]=new y(e,6,!1,e,null,!1,!1)}));[\"rowSpan\",\"start\"].forEach((function(e){ze[e]=new y(e,5,!1,e.toLowerCase(),null,!1,!1)}));var Ve=/[\\-:]([a-z])/g;function ka(e){return e[1].toUpperCase()}\"accent-height alignment-baseline arabic-form baseline-shift cap-height clip-path clip-rule color-interpolation color-interpolation-filters color-profile color-rendering dominant-baseline enable-background fill-opacity fill-rule flood-color flood-opacity font-family font-size font-size-adjust font-stretch font-style font-variant font-weight glyph-name glyph-orientation-horizontal glyph-orientation-vertical horiz-adv-x horiz-origin-x image-rendering letter-spacing lighting-color marker-end marker-mid marker-start overline-position overline-thickness paint-order panose-1 pointer-events rendering-intent shape-rendering stop-color stop-opacity strikethrough-position strikethrough-thickness stroke-dasharray stroke-dashoffset stroke-linecap stroke-linejoin stroke-miterlimit stroke-opacity stroke-width text-anchor text-decoration text-rendering underline-position underline-thickness unicode-bidi unicode-range units-per-em v-alphabetic v-hanging v-ideographic v-mathematical vector-effect vert-adv-y vert-origin-x vert-origin-y word-spacing writing-mode xmlns:xlink x-height\".split(\" \").forEach((function(e){var n=e.replace(Ve,ka);ze[n]=new y(n,1,!1,e,null,!1,!1)}));\"xlink:actuate xlink:arcrole xlink:role xlink:show xlink:title xlink:type\".split(\" \").forEach((function(e){var n=e.replace(Ve,ka);ze[n]=new y(n,1,!1,e,\"http://www.w3.org/1999/xlink\",!1,!1)}));[\"xml:base\",\"xml:lang\",\"xml:space\"].forEach((function(e){var n=e.replace(Ve,ka);ze[n]=new y(n,1,!1,e,\"http://www.w3.org/XML/1998/namespace\",!1,!1)}));[\"tabIndex\",\"crossOrigin\"].forEach((function(e){ze[e]=new y(e,1,!1,e.toLowerCase(),null,!1,!1)}));ze.xlinkHref=new y(\"xlinkHref\",1,!1,\"xlink:href\",\"http://www.w3.org/1999/xlink\",!0,!1);[\"src\",\"href\",\"action\",\"formAction\"].forEach((function(e){ze[e]=new y(e,1,!1,e.toLowerCase(),null,!0,!0)}));var Ae={animationIterationCount:!0,aspectRatio:!0,borderImageOutset:!0,borderImageSlice:!0,borderImageWidth:!0,boxFlex:!0,boxFlexGroup:!0,boxOrdinalGroup:!0,columnCount:!0,columns:!0,flex:!0,flexGrow:!0,flexPositive:!0,flexShrink:!0,flexNegative:!0,flexOrder:!0,gridArea:!0,gridRow:!0,gridRowEnd:!0,gridRowSpan:!0,gridRowStart:!0,gridColumn:!0,gridColumnEnd:!0,gridColumnSpan:!0,gridColumnStart:!0,fontWeight:!0,lineClamp:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,tabSize:!0,widows:!0,zIndex:!0,zoom:!0,fillOpacity:!0,floodOpacity:!0,stopOpacity:!0,strokeDasharray:!0,strokeDashoffset:!0,strokeMiterlimit:!0,strokeOpacity:!0,strokeWidth:!0},Le=[\"Webkit\",\"ms\",\"Moz\",\"O\"];Object.keys(Ae).forEach((function(e){Le.forEach((function(n){n=n+e.charAt(0).toUpperCase()+e.substring(1);Ae[n]=Ae[e]}))}));var je=/[\"'&<>]/;function C(e){if(\"boolean\"===typeof e||\"number\"===typeof e)return\"\"+e;e=\"\"+e;var n=je.exec(e);if(n){var a,o=\"\",l=0;for(a=n.index;a<e.length;a++){switch(e.charCodeAt(a)){case 34:n=\"&quot;\";break;case 38:n=\"&amp;\";break;case 39:n=\"&#x27;\";break;case 60:n=\"&lt;\";break;case 62:n=\"&gt;\";break;default:continue}l!==a&&(o+=e.substring(l,a));l=a+1;o+=n}e=l!==a?o+e.substring(l,a):o}return e}var Oe=/([A-Z])/g,qe=/^ms-/,We=Array.isArray,He=w(\"<script>\"),Ue=w(\"<\\/script>\"),Ze=w('<script src=\"'),Xe=w('<script type=\"module\" src=\"'),Je=w('\" async=\"\"><\\/script>'),Ge=/(<\\/|<)(s)(cript)/gi;function ya(e,n,a,o){return n+(\"s\"===a?\"\\\\u0073\":\"\\\\u0053\")+o}function za(e,n,a,o,l){e=void 0===e?\"\":e;n=void 0===n?He:w('<script nonce=\"'+C(n)+'\">');var i=[];void 0!==a&&i.push(n,u((\"\"+a).replace(Ge,ya)),Ue);if(void 0!==o)for(a=0;a<o.length;a++)i.push(Ze,u(C(o[a])),Je);if(void 0!==l)for(o=0;o<l.length;o++)i.push(Xe,u(C(l[o])),Je);return{bootstrapChunks:i,startInlineScript:n,placeholderPrefix:w(e+\"P:\"),segmentPrefix:w(e+\"S:\"),boundaryPrefix:e+\"B:\",idPrefix:e,nextSuspenseID:0,sentCompleteSegmentFunction:!1,sentCompleteBoundaryFunction:!1,sentClientRenderFunction:!1}}function D(e,n){return{insertionMode:e,selectedValue:n}}function Aa(e){return D(\"http://www.w3.org/2000/svg\"===e?2:\"http://www.w3.org/1998/Math/MathML\"===e?3:0,null)}function Ba(e,n,a){switch(n){case\"select\":return D(1,null!=a.value?a.value:a.defaultValue);case\"svg\":return D(2,null);case\"math\":return D(3,null);case\"foreignObject\":return D(1,null);case\"table\":return D(4,null);case\"thead\":case\"tbody\":case\"tfoot\":return D(5,null);case\"colgroup\":return D(7,null);case\"tr\":return D(6,null)}return 4<=e.insertionMode||0===e.insertionMode?D(1,null):e}var Qe=w(\"\\x3c!-- --\\x3e\");function Da(e,n,a,o){if(\"\"===n)return o;o&&e.push(Qe);e.push(u(C(n)));return!0}var Ye=new Map,Ke=w(' style=\"'),et=w(\":\"),tt=w(\";\");function Ia(e,n,a){if(\"object\"!==typeof a)throw Error(k(62));n=!0;for(var o in a)if(Ie.call(a,o)){var l=a[o];if(null!=l&&\"boolean\"!==typeof l&&\"\"!==l){if(0===o.indexOf(\"--\")){var i=u(C(o));l=u(C((\"\"+l).trim()))}else{i=o;var s=Ye.get(i);void 0!==s||(s=w(C(i.replace(Oe,\"-$1\").toLowerCase().replace(qe,\"-ms-\"))),Ye.set(i,s)),i=s;l=\"number\"===typeof l?0===l||Ie.call(Ae,o)?u(\"\"+l):u(l+\"px\"):u(C((\"\"+l).trim()))}n?(n=!1,e.push(Ke,i,et,l)):e.push(tt,i,et,l)}}n||e.push(at)}var nt=w(\" \"),rt=w('=\"'),at=w('\"'),ot=w('=\"\"');function J(e,n,a,o){switch(a){case\"style\":Ia(e,n,o);return;case\"defaultValue\":case\"defaultChecked\":case\"innerHTML\":case\"suppressContentEditableWarning\":case\"suppressHydrationWarning\":return}if(!(2<a.length)||\"o\"!==a[0]&&\"O\"!==a[0]||\"n\"!==a[1]&&\"N\"!==a[1])if(n=ze.hasOwnProperty(a)?ze[a]:null,null!==n){switch(typeof o){case\"function\":case\"symbol\":return;case\"boolean\":if(!n.acceptsBooleans)return}a=u(n.attributeName);switch(n.type){case 3:o&&e.push(nt,a,ot);break;case 4:!0===o?e.push(nt,a,ot):!1!==o&&e.push(nt,a,rt,u(C(o)),at);break;case 5:isNaN(o)||e.push(nt,a,rt,u(C(o)),at);break;case 6:!isNaN(o)&&1<=o&&e.push(nt,a,rt,u(C(o)),at);break;default:n.sanitizeURL&&(o=\"\"+o),e.push(nt,a,rt,u(C(o)),at)}}else if(ia(a)){switch(typeof o){case\"function\":case\"symbol\":return;case\"boolean\":if(n=a.toLowerCase().slice(0,5),\"data-\"!==n&&\"aria-\"!==n)return}e.push(nt,u(a),rt,u(C(o)),at)}}var lt=w(\">\"),ut=w(\"/>\");function L(e,n,a){if(null!=n){if(null!=a)throw Error(k(60));if(\"object\"!==typeof n||!(\"__html\"in n))throw Error(k(61));n=n.__html;null!==n&&void 0!==n&&e.push(u(\"\"+n))}}function La(e){var n=\"\";Re.Children.forEach(e,(function(e){null!=e&&(n+=e)}));return n}var it=w(' selected=\"\"');function Na(e,n,a,o){e.push(M(a));var l,i=a=null;for(l in n)if(Ie.call(n,l)){var s=n[l];if(null!=s)switch(l){case\"children\":a=s;break;case\"dangerouslySetInnerHTML\":i=s;break;default:J(e,o,l,s)}}e.push(lt);L(e,i,a);return\"string\"===typeof a?(e.push(u(C(a))),null):a}var st=w(\"\\n\"),ct=/^[a-zA-Z][a-zA-Z:_\\.\\-\\d]*$/,dt=new Map;function M(e){var n=dt.get(e);if(void 0===n){if(!ct.test(e))throw Error(k(65,e));n=w(\"<\"+e);dt.set(e,n)}return n}var ft=w(\"<!DOCTYPE html>\");function Sa(e,n,a,o,l){switch(n){case\"select\":e.push(M(\"select\"));var i=null,s=null;for(h in a)if(Ie.call(a,h)){var c=a[h];if(null!=c)switch(h){case\"children\":i=c;break;case\"dangerouslySetInnerHTML\":s=c;break;case\"defaultValue\":case\"value\":break;default:J(e,o,h,c)}}e.push(lt);L(e,s,i);return i;case\"option\":s=l.selectedValue;e.push(M(\"option\"));var d=c=null,f=null;var h=null;for(i in a)if(Ie.call(a,i)){var g=a[i];if(null!=g)switch(i){case\"children\":c=g;break;case\"selected\":f=g;break;case\"dangerouslySetInnerHTML\":h=g;break;case\"value\":d=g;default:J(e,o,i,g)}}if(null!=s)if(a=null!==d?\"\"+d:La(c),We(s)){for(o=0;o<s.length;o++)if(\"\"+s[o]===a){e.push(it);break}}else\"\"+s===a&&e.push(it);else f&&e.push(it);e.push(lt);L(e,h,c);return c;case\"textarea\":e.push(M(\"textarea\"));h=s=i=null;for(c in a)if(Ie.call(a,c)&&(d=a[c],null!=d))switch(c){case\"children\":h=d;break;case\"value\":i=d;break;case\"defaultValue\":s=d;break;case\"dangerouslySetInnerHTML\":throw Error(k(91));default:J(e,o,c,d)}null===i&&null!==s&&(i=s);e.push(lt);if(null!=h){if(null!=i)throw Error(k(92));if(We(h)&&1<h.length)throw Error(k(93));i=\"\"+h}\"string\"===typeof i&&\"\\n\"===i[0]&&e.push(st);null!==i&&e.push(u(C(\"\"+i)));return null;case\"input\":e.push(M(\"input\"));d=h=c=i=null;for(s in a)if(Ie.call(a,s)&&(f=a[s],null!=f))switch(s){case\"children\":case\"dangerouslySetInnerHTML\":throw Error(k(399,\"input\"));case\"defaultChecked\":d=f;break;case\"defaultValue\":c=f;break;case\"checked\":h=f;break;case\"value\":i=f;break;default:J(e,o,s,f)}null!==h?J(e,o,\"checked\",h):null!==d&&J(e,o,\"checked\",d);null!==i?J(e,o,\"value\",i):null!==c&&J(e,o,\"value\",c);e.push(ut);return null;case\"menuitem\":e.push(M(\"menuitem\"));for(var b in a)if(Ie.call(a,b)&&(i=a[b],null!=i))switch(b){case\"children\":case\"dangerouslySetInnerHTML\":throw Error(k(400));default:J(e,o,b,i)}e.push(lt);return null;case\"title\":e.push(M(\"title\"));i=null;for(g in a)if(Ie.call(a,g)&&(s=a[g],null!=s))switch(g){case\"children\":i=s;break;case\"dangerouslySetInnerHTML\":throw Error(k(434));default:J(e,o,g,s)}e.push(lt);return i;case\"listing\":case\"pre\":e.push(M(n));s=i=null;for(d in a)if(Ie.call(a,d)&&(c=a[d],null!=c))switch(d){case\"children\":i=c;break;case\"dangerouslySetInnerHTML\":s=c;break;default:J(e,o,d,c)}e.push(lt);if(null!=s){if(null!=i)throw Error(k(60));if(\"object\"!==typeof s||!(\"__html\"in s))throw Error(k(61));a=s.__html;null!==a&&void 0!==a&&(\"string\"===typeof a&&0<a.length&&\"\\n\"===a[0]?e.push(st,u(a)):e.push(u(\"\"+a)))}\"string\"===typeof i&&\"\\n\"===i[0]&&e.push(st);return i;case\"area\":case\"base\":case\"br\":case\"col\":case\"embed\":case\"hr\":case\"img\":case\"keygen\":case\"link\":case\"meta\":case\"param\":case\"source\":case\"track\":case\"wbr\":e.push(M(n));for(var m in a)if(Ie.call(a,m)&&(i=a[m],null!=i))switch(m){case\"children\":case\"dangerouslySetInnerHTML\":throw Error(k(399,n));default:J(e,o,m,i)}e.push(ut);return null;case\"annotation-xml\":case\"color-profile\":case\"font-face\":case\"font-face-src\":case\"font-face-uri\":case\"font-face-format\":case\"font-face-name\":case\"missing-glyph\":return Na(e,a,n,o);case\"html\":return 0===l.insertionMode&&e.push(ft),Na(e,a,n,o);default:if(-1===n.indexOf(\"-\")&&\"string\"!==typeof a.is)return Na(e,a,n,o);e.push(M(n));s=i=null;for(f in a)if(Ie.call(a,f)&&(c=a[f],null!=c))switch(f){case\"children\":i=c;break;case\"dangerouslySetInnerHTML\":s=c;break;case\"style\":Ia(e,o,c);break;case\"suppressContentEditableWarning\":case\"suppressHydrationWarning\":break;default:ia(f)&&\"function\"!==typeof c&&\"symbol\"!==typeof c&&e.push(nt,u(f),rt,u(C(c)),at)}e.push(lt);L(e,s,i);return i}}var pt=w(\"</\"),ht=w(\">\"),gt=w('<template id=\"'),bt=w('\"></template>'),mt=w(\"\\x3c!--$--\\x3e\"),yt=w('\\x3c!--$?--\\x3e<template id=\"'),vt=w('\"></template>'),kt=w(\"\\x3c!--$!--\\x3e\"),wt=w(\"\\x3c!--/$--\\x3e\"),St=w(\"<template\"),xt=w('\"'),$t=w(' data-dgst=\"');w(' data-msg=\"');w(' data-stck=\"');var Ct=w(\"></template>\");function fb(e,n,a){p(e,yt);if(null===a)throw Error(k(395));p(e,a);return t(e,vt)}var Et=w('<div hidden id=\"'),Ft=w('\">'),Tt=w(\"</div>\"),Rt=w('<svg aria-hidden=\"true\" style=\"display:none\" id=\"'),Pt=w('\">'),_t=w(\"</svg>\"),Mt=w('<math aria-hidden=\"true\" style=\"display:none\" id=\"'),It=w('\">'),Dt=w(\"</math>\"),Bt=w('<table hidden id=\"'),Nt=w('\">'),zt=w(\"</table>\"),Vt=w('<table hidden><tbody id=\"'),At=w('\">'),Lt=w(\"</tbody></table>\"),jt=w('<table hidden><tr id=\"'),Ot=w('\">'),qt=w(\"</tr></table>\"),Wt=w('<table hidden><colgroup id=\"'),Ht=w('\">'),Ut=w(\"</colgroup></table>\");function Bb(e,n,a,o){switch(a.insertionMode){case 0:case 1:return p(e,Et),p(e,n.segmentPrefix),p(e,u(o.toString(16))),t(e,Ft);case 2:return p(e,Rt),p(e,n.segmentPrefix),p(e,u(o.toString(16))),t(e,Pt);case 3:return p(e,Mt),p(e,n.segmentPrefix),p(e,u(o.toString(16))),t(e,It);case 4:return p(e,Bt),p(e,n.segmentPrefix),p(e,u(o.toString(16))),t(e,Nt);case 5:return p(e,Vt),p(e,n.segmentPrefix),p(e,u(o.toString(16))),t(e,At);case 6:return p(e,jt),p(e,n.segmentPrefix),p(e,u(o.toString(16))),t(e,Ot);case 7:return p(e,Wt),p(e,n.segmentPrefix),p(e,u(o.toString(16))),t(e,Ht);default:throw Error(k(397))}}function Cb(e,n){switch(n.insertionMode){case 0:case 1:return t(e,Tt);case 2:return t(e,_t);case 3:return t(e,Dt);case 4:return t(e,zt);case 5:return t(e,Lt);case 6:return t(e,qt);case 7:return t(e,Ut);default:throw Error(k(397))}}var Zt=w('function $RS(a,b){a=document.getElementById(a);b=document.getElementById(b);for(a.parentNode.removeChild(a);a.firstChild;)b.parentNode.insertBefore(a.firstChild,b);b.parentNode.removeChild(b)};$RS(\"'),Xt=w('$RS(\"'),Jt=w('\",\"'),Gt=w('\")<\\/script>'),Qt=w('function $RC(a,b){a=document.getElementById(a);b=document.getElementById(b);b.parentNode.removeChild(b);if(a){a=a.previousSibling;var f=a.parentNode,c=a.nextSibling,e=0;do{if(c&&8===c.nodeType){var d=c.data;if(\"/$\"===d)if(0===e)break;else e--;else\"$\"!==d&&\"$?\"!==d&&\"$!\"!==d||e++}d=c.nextSibling;f.removeChild(c);c=d}while(c);for(;b.firstChild;)f.insertBefore(b.firstChild,c);a.data=\"$\";a._reactRetry&&a._reactRetry()}};$RC(\"'),Yt=w('$RC(\"'),Kt=w('\",\"'),en=w('\")<\\/script>'),tn=w('function $RX(b,c,d,e){var a=document.getElementById(b);a&&(b=a.previousSibling,b.data=\"$!\",a=a.dataset,c&&(a.dgst=c),d&&(a.msg=d),e&&(a.stck=e),b._reactRetry&&b._reactRetry())};$RX(\"'),nn=w('$RX(\"'),rn=w('\"'),an=w(\")<\\/script>\"),on=w(\",\"),ln=/[<\\u2028\\u2029]/g;function Sb(e){return JSON.stringify(e).replace(ln,(function(e){switch(e){case\"<\":return\"\\\\u003c\";case\"\\u2028\":return\"\\\\u2028\";case\"\\u2029\":return\"\\\\u2029\";default:throw Error(\"escapeJSStringsForInstructionScripts encountered a match it does not know how to replace. this means the match regex and the replacement characters are no longer in sync. This is a bug in React\")}}))}var un=Object.assign,sn=Symbol.for(\"react.element\"),cn=Symbol.for(\"react.portal\"),dn=Symbol.for(\"react.fragment\"),fn=Symbol.for(\"react.strict_mode\"),pn=Symbol.for(\"react.profiler\"),hn=Symbol.for(\"react.provider\"),gn=Symbol.for(\"react.context\"),bn=Symbol.for(\"react.forward_ref\"),mn=Symbol.for(\"react.suspense\"),yn=Symbol.for(\"react.suspense_list\"),vn=Symbol.for(\"react.memo\"),kn=Symbol.for(\"react.lazy\"),wn=Symbol.for(\"react.scope\"),Sn=Symbol.for(\"react.debug_trace_mode\"),xn=Symbol.for(\"react.legacy_hidden\"),$n=Symbol.for(\"react.default_value\"),Cn=Symbol.iterator;function jc(e){if(null==e)return null;if(\"function\"===typeof e)return e.displayName||e.name||null;if(\"string\"===typeof e)return e;switch(e){case dn:return\"Fragment\";case cn:return\"Portal\";case pn:return\"Profiler\";case fn:return\"StrictMode\";case mn:return\"Suspense\";case yn:return\"SuspenseList\"}if(\"object\"===typeof e)switch(e.$$typeof){case gn:return(e.displayName||\"Context\")+\".Consumer\";case hn:return(e._context.displayName||\"Context\")+\".Provider\";case bn:var n=e.render;e=e.displayName;e||(e=n.displayName||n.name||\"\",e=\"\"!==e?\"ForwardRef(\"+e+\")\":\"ForwardRef\");return e;case vn:return n=e.displayName||null,null!==n?n:jc(e.type)||\"Memo\";case kn:n=e._payload;e=e._init;try{return jc(e(n))}catch(e){}}return null}var En={};function lc(e,n){e=e.contextTypes;if(!e)return En;var a,o={};for(a in e)o[a]=n[a];return o}var Fn=null;function P(e,n){if(e!==n){e.context._currentValue=e.parentValue;e=e.parent;var a=n.parent;if(null===e){if(null!==a)throw Error(k(401))}else{if(null===a)throw Error(k(401));P(e,a)}n.context._currentValue=n.value}}function mc(e){e.context._currentValue=e.parentValue;e=e.parent;null!==e&&mc(e)}function nc(e){var n=e.parent;null!==n&&nc(n);e.context._currentValue=e.value}function oc(e,n){e.context._currentValue=e.parentValue;e=e.parent;if(null===e)throw Error(k(402));e.depth===n.depth?P(e,n):oc(e,n)}function pc(e,n){var a=n.parent;if(null===a)throw Error(k(402));e.depth===a.depth?P(e,a):pc(e,a);n.context._currentValue=n.value}function Q(e){var n=Fn;n!==e&&(null===n?nc(e):null===e?mc(n):n.depth===e.depth?P(n,e):n.depth>e.depth?oc(n,e):pc(n,e),Fn=e)}var Tn={isMounted:function(){return!1},enqueueSetState:function(e,n){e=e._reactInternals;null!==e.queue&&e.queue.push(n)},enqueueReplaceState:function(e,n){e=e._reactInternals;e.replace=!0;e.queue=[n]},enqueueForceUpdate:function(){}};function rc(e,n,a,o){var l=void 0!==e.state?e.state:null;e.updater=Tn;e.props=a;e.state=l;var i={queue:[],replace:!1};e._reactInternals=i;var s=n.contextType;e.context=\"object\"===typeof s&&null!==s?s._currentValue:o;s=n.getDerivedStateFromProps;\"function\"===typeof s&&(s=s(a,l),l=null===s||void 0===s?l:un({},l,s),e.state=l);if(\"function\"!==typeof n.getDerivedStateFromProps&&\"function\"!==typeof e.getSnapshotBeforeUpdate&&(\"function\"===typeof e.UNSAFE_componentWillMount||\"function\"===typeof e.componentWillMount))if(n=e.state,\"function\"===typeof e.componentWillMount&&e.componentWillMount(),\"function\"===typeof e.UNSAFE_componentWillMount&&e.UNSAFE_componentWillMount(),n!==e.state&&Tn.enqueueReplaceState(e,e.state,null),null!==i.queue&&0<i.queue.length)if(n=i.queue,s=i.replace,i.queue=null,i.replace=!1,s&&1===n.length)e.state=n[0];else{i=s?n[0]:e.state;l=!0;for(s=s?1:0;s<n.length;s++){var c=n[s];c=\"function\"===typeof c?c.call(e,i,a,o):c;null!=c&&(l?(l=!1,i=un({},i,c)):un(i,c))}e.state=i}else i.queue=null}var Rn={id:1,overflow:\"\"};function tc(e,n,a){var o=e.id;e=e.overflow;var l=32-Pn(o)-1;o&=~(1<<l);a+=1;var i=32-Pn(n)+l;if(30<i){var s=l-l%5;i=(o&(1<<s)-1).toString(32);o>>=s;l-=s;return{id:1<<32-Pn(n)+l|a<<l|o,overflow:i+e}}return{id:1<<i|a<<l|o,overflow:e}}var Pn=Math.clz32?Math.clz32:vc,_n=Math.log,Mn=Math.LN2;function vc(e){e>>>=0;return 0===e?32:31-(_n(e)/Mn|0)|0}function yc(e,n){return e===n&&(0!==e||1/e===1/n)||e!==e&&n!==n}var In=\"function\"===typeof Object.is?Object.is:yc,Dn=null,Bn=null,Nn=null,zn=null,Vn=!1,An=!1,Ln=0,jn=null,On=0;function W(){if(null===Dn)throw Error(k(321));return Dn}function Ec(){if(0<On)throw Error(k(312));return{memoizedState:null,queue:null,next:null}}function Fc(){null===zn?null===Nn?(Vn=!1,Nn=zn=Ec()):(Vn=!0,zn=Nn):null===zn.next?(Vn=!1,zn=zn.next=Ec()):(Vn=!0,zn=zn.next);return zn}function Gc(){Bn=Dn=null;An=!1;Nn=null;On=0;zn=jn=null}function Hc(e,n){return\"function\"===typeof n?n(e):n}function Ic(e,n,a){Dn=W();zn=Fc();if(Vn){var o=zn.queue;n=o.dispatch;if(null!==jn&&(a=jn.get(o),void 0!==a)){jn.delete(o);o=zn.memoizedState;do{o=e(o,a.action),a=a.next}while(null!==a);zn.memoizedState=o;return[o,n]}return[zn.memoizedState,n]}e=e===Hc?\"function\"===typeof n?n():n:void 0!==a?a(n):n;zn.memoizedState=e;e=zn.queue={last:null,dispatch:null};e=e.dispatch=Jc.bind(null,Dn,e);return[zn.memoizedState,e]}function Kc(e,n){Dn=W();zn=Fc();n=void 0===n?null:n;if(null!==zn){var a=zn.memoizedState;if(null!==a&&null!==n){var o=a[1];e:if(null===o)o=!1;else{for(var l=0;l<o.length&&l<n.length;l++)if(!In(n[l],o[l])){o=!1;break e}o=!0}if(o)return a[0]}}e=e();zn.memoizedState=[e,n];return e}function Jc(e,n,a){if(25<=On)throw Error(k(301));if(e===Dn)if(An=!0,e={action:a,next:null},null===jn&&(jn=new Map),a=jn.get(n),void 0===a)jn.set(n,e);else{for(n=a;null!==n.next;)n=n.next;n.next=e}}function Lc(){throw Error(k(394))}function Mc(){}var qn={readContext:function(e){return e._currentValue},useContext:function(e){W();return e._currentValue},useMemo:Kc,useReducer:Ic,useRef:function(e){Dn=W();zn=Fc();var n=zn.memoizedState;return null===n?(e={current:e},zn.memoizedState=e):n},useState:function(e){return Ic(Hc,e)},useInsertionEffect:Mc,useLayoutEffect:function(){},useCallback:function(e,n){return Kc((function(){return e}),n)},useImperativeHandle:Mc,useEffect:Mc,useDebugValue:Mc,useDeferredValue:function(e){W();return e},useTransition:function(){W();return[!1,Lc]},useId:function(){var e=Bn.treeContext;var n=e.overflow;e=e.id;e=(e&~(1<<32-Pn(e)-1)).toString(32)+n;var a=Wn;if(null===a)throw Error(k(404));n=Ln++;e=\":\"+a.idPrefix+\"R\"+e;0<n&&(e+=\"H\"+n.toString(32));return e+\":\"},useMutableSource:function(e,n){W();return n(e._source)},useSyncExternalStore:function(e,n,a){if(void 0===a)throw Error(k(407));return a()}},Wn=null,Hn=Re.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentDispatcher;function Qc(e){console.error(e);return null}function X(){}function Rc(e,n,a,o,l,i,s,c,d){var f=[],h=new Set;n={destination:null,responseState:n,progressiveChunkSize:void 0===o?12800:o,status:0,fatalError:null,nextSegmentId:0,allPendingTasks:0,pendingRootTasks:0,completedRootSegment:null,abortableTasks:h,pingedTasks:f,clientRenderedBoundaries:[],completedBoundaries:[],partialBoundaries:[],onError:void 0===l?Qc:l,onAllReady:void 0===i?X:i,onShellReady:void 0===s?X:s,onShellError:void 0===c?X:c,onFatalError:void 0===d?X:d};a=Sc(n,0,null,a,!1,!1);a.parentFlushed=!0;e=Tc(n,e,null,a,h,En,null,Rn);f.push(e);return n}function Tc(e,n,a,o,l,i,s,c){e.allPendingTasks++;null===a?e.pendingRootTasks++:a.pendingTasks++;var d={node:n,ping:function(){var n=e.pingedTasks;n.push(d);1===n.length&&Uc(e)},blockedBoundary:a,blockedSegment:o,abortSet:l,legacyContext:i,context:s,treeContext:c};l.add(d);return d}function Sc(e,n,a,o,l,i){return{status:0,id:-1,index:n,parentFlushed:!1,chunks:[],children:[],formatContext:o,boundary:a,lastPushedText:l,textEmbedded:i}}function Y(e,n){e=e.onError(n);if(null!=e&&\"string\"!==typeof e)throw Error('onError returned something with a type other than \"string\". onError should return a string and may return null or undefined but must not return anything else. It received something of type \"'+typeof e+'\" instead');return e}function Vc(e,n){var a=e.onShellError;a(n);a=e.onFatalError;a(n);null!==e.destination?(e.status=2,da(e.destination,n)):(e.status=1,e.fatalError=n)}function Wc(e,n,a,o,l){Dn={};Bn=n;Ln=0;for(e=a(o,l);An;)An=!1,Ln=0,On+=1,zn=null,e=a(o,l);Gc();return e}function Xc(e,n,a,o){var l=a.render(),i=o.childContextTypes;if(null!==i&&void 0!==i){var s=n.legacyContext;if(\"function\"!==typeof a.getChildContext)o=s;else{a=a.getChildContext();for(var c in a)if(!(c in i))throw Error(k(108,jc(o)||\"Unknown\",c));o=un({},s,a)}n.legacyContext=o;Z(e,n,l);n.legacyContext=s}else Z(e,n,l)}function Yc(e,n){if(e&&e.defaultProps){n=un({},n);e=e.defaultProps;for(var a in e)void 0===n[a]&&(n[a]=e[a]);return n}return n}function Zc(e,n,a,o,l){if(\"function\"===typeof a)if(a.prototype&&a.prototype.isReactComponent){l=lc(a,n.legacyContext);var i=a.contextType;i=new a(o,\"object\"===typeof i&&null!==i?i._currentValue:l);rc(i,a,o,l);Xc(e,n,i,a)}else{i=lc(a,n.legacyContext);l=Wc(e,n,a,o,i);var s=0!==Ln;if(\"object\"===typeof l&&null!==l&&\"function\"===typeof l.render&&void 0===l.$$typeof)rc(l,a,o,i),Xc(e,n,l,a);else if(s){o=n.treeContext;n.treeContext=tc(o,1,0);try{Z(e,n,l)}finally{n.treeContext=o}}else Z(e,n,l)}else{if(\"string\"!==typeof a){switch(a){case xn:case Sn:case fn:case pn:case dn:Z(e,n,o.children);return;case yn:Z(e,n,o.children);return;case wn:throw Error(k(343));case mn:e:{a=n.blockedBoundary;l=n.blockedSegment;i=o.fallback;o=o.children;s=new Set;var c={id:null,rootSegmentID:-1,parentFlushed:!1,pendingTasks:0,forceClientRender:!1,completedSegments:[],byteSize:0,fallbackAbortableTasks:s,errorDigest:null},d=Sc(e,l.chunks.length,c,l.formatContext,!1,!1);l.children.push(d);l.lastPushedText=!1;var f=Sc(e,0,null,l.formatContext,!1,!1);f.parentFlushed=!0;n.blockedBoundary=c;n.blockedSegment=f;try{if($c(e,n,o),f.lastPushedText&&f.textEmbedded&&f.chunks.push(Qe),f.status=1,ad(c,f),0===c.pendingTasks)break e}catch(n){f.status=4,c.forceClientRender=!0,c.errorDigest=Y(e,n)}finally{n.blockedBoundary=a,n.blockedSegment=l}n=Tc(e,i,a,d,s,n.legacyContext,n.context,n.treeContext);e.pingedTasks.push(n)}return}if(\"object\"===typeof a&&null!==a)switch(a.$$typeof){case bn:o=Wc(e,n,a.render,o,l);if(0!==Ln){a=n.treeContext;n.treeContext=tc(a,1,0);try{Z(e,n,o)}finally{n.treeContext=a}}else Z(e,n,o);return;case vn:a=a.type;o=Yc(a,o);Zc(e,n,a,o,l);return;case hn:l=o.children;a=a._context;o=o.value;i=a._currentValue;a._currentValue=o;s=Fn;Fn=o={parent:s,depth:null===s?0:s.depth+1,context:a,parentValue:i,value:o};n.context=o;Z(e,n,l);e=Fn;if(null===e)throw Error(k(403));o=e.parentValue;e.context._currentValue=o===$n?e.context._defaultValue:o;e=Fn=e.parent;n.context=e;return;case gn:o=o.children;o=o(a._currentValue);Z(e,n,o);return;case kn:l=a._init;a=l(a._payload);o=Yc(a,o);Zc(e,n,a,o,void 0);return}throw Error(k(130,null==a?a:typeof a,\"\"))}l=n.blockedSegment;i=Sa(l.chunks,a,o,e.responseState,l.formatContext);l.lastPushedText=!1;s=l.formatContext;l.formatContext=Ba(s,a,o);$c(e,n,i);l.formatContext=s;switch(a){case\"area\":case\"base\":case\"br\":case\"col\":case\"embed\":case\"hr\":case\"img\":case\"input\":case\"keygen\":case\"link\":case\"meta\":case\"param\":case\"source\":case\"track\":case\"wbr\":break;default:l.chunks.push(pt,u(a),ht)}l.lastPushedText=!1}}function Z(e,n,a){n.node=a;if(\"object\"===typeof a&&null!==a){switch(a.$$typeof){case sn:Zc(e,n,a.type,a.props,a.ref);return;case cn:throw Error(k(257));case kn:var o=a._init;a=o(a._payload);Z(e,n,a);return}if(We(a)){bd(e,n,a);return}null===a||\"object\"!==typeof a?o=null:(o=Cn&&a[Cn]||a[\"@@iterator\"],o=\"function\"===typeof o?o:null);if(o&&(o=o.call(a))){a=o.next();if(!a.done){var l=[];do{l.push(a.value),a=o.next()}while(!a.done);bd(e,n,l)}return}e=Object.prototype.toString.call(a);throw Error(k(31,\"[object Object]\"===e?\"object with keys {\"+Object.keys(a).join(\", \")+\"}\":e))}\"string\"===typeof a?(o=n.blockedSegment,o.lastPushedText=Da(n.blockedSegment.chunks,a,e.responseState,o.lastPushedText)):\"number\"===typeof a&&(o=n.blockedSegment,o.lastPushedText=Da(n.blockedSegment.chunks,\"\"+a,e.responseState,o.lastPushedText))}function bd(e,n,a){for(var o=a.length,l=0;l<o;l++){var i=n.treeContext;n.treeContext=tc(i,o,l);try{$c(e,n,a[l])}finally{n.treeContext=i}}}function $c(e,n,a){var o=n.blockedSegment.formatContext,l=n.legacyContext,i=n.context;try{return Z(e,n,a)}catch(d){if(Gc(),\"object\"!==typeof d||null===d||\"function\"!==typeof d.then)throw n.blockedSegment.formatContext=o,n.legacyContext=l,n.context=i,Q(i),d;a=d;var s=n.blockedSegment,c=Sc(e,s.chunks.length,null,s.formatContext,s.lastPushedText,!0);s.children.push(c);s.lastPushedText=!1;e=Tc(e,n.node,n.blockedBoundary,c,n.abortSet,n.legacyContext,n.context,n.treeContext).ping;a.then(e,e);n.blockedSegment.formatContext=o;n.legacyContext=l;n.context=i;Q(i)}}function cd(e){var n=e.blockedBoundary;e=e.blockedSegment;e.status=3;dd(this,n,e)}function ed(e,n,a){var o=e.blockedBoundary;e.blockedSegment.status=3;null===o?(n.allPendingTasks--,2!==n.status&&(n.status=2,null!==n.destination&&n.destination.close())):(o.pendingTasks--,o.forceClientRender||(o.forceClientRender=!0,e=void 0===a?Error(k(432)):a,o.errorDigest=n.onError(e),o.parentFlushed&&n.clientRenderedBoundaries.push(o)),o.fallbackAbortableTasks.forEach((function(e){return ed(e,n,a)})),o.fallbackAbortableTasks.clear(),n.allPendingTasks--,0===n.allPendingTasks&&(o=n.onAllReady,o()))}function ad(e,n){if(0===n.chunks.length&&1===n.children.length&&null===n.children[0].boundary){var a=n.children[0];a.id=n.id;a.parentFlushed=!0;1===a.status&&ad(e,a)}else e.completedSegments.push(n)}function dd(e,n,a){if(null===n){if(a.parentFlushed){if(null!==e.completedRootSegment)throw Error(k(389));e.completedRootSegment=a}e.pendingRootTasks--;0===e.pendingRootTasks&&(e.onShellError=X,n=e.onShellReady,n())}else n.pendingTasks--,n.forceClientRender||(0===n.pendingTasks?(a.parentFlushed&&1===a.status&&ad(n,a),n.parentFlushed&&e.completedBoundaries.push(n),n.fallbackAbortableTasks.forEach(cd,e),n.fallbackAbortableTasks.clear()):a.parentFlushed&&1===a.status&&(ad(n,a),1===n.completedSegments.length&&n.parentFlushed&&e.partialBoundaries.push(n)));e.allPendingTasks--;0===e.allPendingTasks&&(e=e.onAllReady,e())}function Uc(e){if(2!==e.status){var n=Fn,a=Hn.current;Hn.current=qn;var o=Wn;Wn=e.responseState;try{var l,i=e.pingedTasks;for(l=0;l<i.length;l++){var s=i[l];var c=e,d=s.blockedSegment;if(0===d.status){Q(s.context);try{Z(c,s,s.node),d.lastPushedText&&d.textEmbedded&&d.chunks.push(Qe),s.abortSet.delete(s),d.status=1,dd(c,s.blockedBoundary,d)}catch(e){if(Gc(),\"object\"===typeof e&&null!==e&&\"function\"===typeof e.then){var f=s.ping;e.then(f,f)}else{s.abortSet.delete(s);d.status=4;var h=s.blockedBoundary,g=e,b=Y(c,g);null===h?Vc(c,g):(h.pendingTasks--,h.forceClientRender||(h.forceClientRender=!0,h.errorDigest=b,h.parentFlushed&&c.clientRenderedBoundaries.push(h)));c.allPendingTasks--;if(0===c.allPendingTasks){var m=c.onAllReady;m()}}}}}i.splice(0,l);null!==e.destination&&fd(e,e.destination)}catch(n){Y(e,n),Vc(e,n)}finally{Wn=o,Hn.current=a,a===qn&&Q(n)}}}function gd(e,n,a){a.parentFlushed=!0;switch(a.status){case 0:var o=a.id=e.nextSegmentId++;a.lastPushedText=!1;a.textEmbedded=!1;e=e.responseState;p(n,gt);p(n,e.placeholderPrefix);e=u(o.toString(16));p(n,e);return t(n,bt);case 1:a.status=2;var l=!0;o=a.chunks;var i=0;a=a.children;for(var s=0;s<a.length;s++){for(l=a[s];i<l.index;i++)p(n,o[i]);l=hd(e,n,l)}for(;i<o.length-1;i++)p(n,o[i]);i<o.length&&(l=t(n,o[i]));return l;default:throw Error(k(390))}}function hd(e,n,a){var o=a.boundary;if(null===o)return gd(e,n,a);o.parentFlushed=!0;if(o.forceClientRender)o=o.errorDigest,t(n,kt),p(n,St),o&&(p(n,$t),p(n,u(C(o))),p(n,xt)),t(n,Ct),gd(e,n,a);else if(0<o.pendingTasks){o.rootSegmentID=e.nextSegmentId++;0<o.completedSegments.length&&e.partialBoundaries.push(o);var l=e.responseState;var i=l.nextSuspenseID++;l=w(l.boundaryPrefix+i.toString(16));o=o.id=l;fb(n,e.responseState,o);gd(e,n,a)}else if(o.byteSize>e.progressiveChunkSize)o.rootSegmentID=e.nextSegmentId++,e.completedBoundaries.push(o),fb(n,e.responseState,o.id),gd(e,n,a);else{t(n,mt);a=o.completedSegments;if(1!==a.length)throw Error(k(391));hd(e,n,a[0])}return t(n,wt)}function id(e,n,a){Bb(n,e.responseState,a.formatContext,a.id);hd(e,n,a);return Cb(n,a.formatContext)}function jd(e,n,a){for(var o=a.completedSegments,l=0;l<o.length;l++)kd(e,n,a,o[l]);o.length=0;e=e.responseState;o=a.id;a=a.rootSegmentID;p(n,e.startInlineScript);e.sentCompleteBoundaryFunction?p(n,Yt):(e.sentCompleteBoundaryFunction=!0,p(n,Qt));if(null===o)throw Error(k(395));a=u(a.toString(16));p(n,o);p(n,Kt);p(n,e.segmentPrefix);p(n,a);return t(n,en)}function kd(e,n,a,o){if(2===o.status)return!0;var l=o.id;if(-1===l){if(-1===(o.id=a.rootSegmentID))throw Error(k(392));return id(e,n,o)}id(e,n,o);e=e.responseState;p(n,e.startInlineScript);e.sentCompleteSegmentFunction?p(n,Xt):(e.sentCompleteSegmentFunction=!0,p(n,Zt));p(n,e.segmentPrefix);l=u(l.toString(16));p(n,l);p(n,Jt);p(n,e.placeholderPrefix);p(n,l);return t(n,Gt)}function fd(e,n){Pe=new Uint8Array(512);_e=0;try{var a=e.completedRootSegment;if(null!==a&&0===e.pendingRootTasks){hd(e,n,a);e.completedRootSegment=null;var o=e.responseState.bootstrapChunks;for(a=0;a<o.length-1;a++)p(n,o[a]);a<o.length&&t(n,o[a])}var l,i=e.clientRenderedBoundaries;for(l=0;l<i.length;l++){var s=i[l];o=n;var c=e.responseState,d=s.id,f=s.errorDigest,h=s.errorMessage,g=s.errorComponentStack;p(o,c.startInlineScript);c.sentClientRenderFunction?p(o,nn):(c.sentClientRenderFunction=!0,p(o,tn));if(null===d)throw Error(k(395));p(o,d);p(o,rn);(f||h||g)&&(p(o,on),p(o,u(Sb(f||\"\"))));(h||g)&&(p(o,on),p(o,u(Sb(h||\"\"))));g&&(p(o,on),p(o,u(Sb(g))));if(!t(o,an)){e.destination=null;l++;i.splice(0,l);return}}i.splice(0,l);var b=e.completedBoundaries;for(l=0;l<b.length;l++)if(!jd(e,n,b[l])){e.destination=null;l++;b.splice(0,l);return}b.splice(0,l);ba(n);Pe=new Uint8Array(512);_e=0;var m=e.partialBoundaries;for(l=0;l<m.length;l++){var S=m[l];e:{i=e;s=n;var x=S.completedSegments;for(c=0;c<x.length;c++)if(!kd(i,s,S,x[c])){c++;x.splice(0,c);var $=!1;break e}x.splice(0,c);$=!0}if(!$){e.destination=null;l++;m.splice(0,l);return}}m.splice(0,l);var E=e.completedBoundaries;for(l=0;l<E.length;l++)if(!jd(e,n,E[l])){e.destination=null;l++;E.splice(0,l);return}E.splice(0,l)}finally{ba(n),0===e.allPendingTasks&&0===e.pingedTasks.length&&0===e.clientRenderedBoundaries.length&&0===e.completedBoundaries.length&&n.close()}}function ld(e,n){try{var a=e.abortableTasks;a.forEach((function(a){return ed(a,e,n)}));a.clear();null!==e.destination&&fd(e,e.destination)}catch(n){Y(e,n),Vc(e,n)}}Te.renderToReadableStream=function(e,n){return new Promise((function(a,o){var l,i,s=new Promise((function(e,n){i=e;l=n})),c=Rc(e,za(n?n.identifierPrefix:void 0,n?n.nonce:void 0,n?n.bootstrapScriptContent:void 0,n?n.bootstrapScripts:void 0,n?n.bootstrapModules:void 0),Aa(n?n.namespaceURI:void 0),n?n.progressiveChunkSize:void 0,n?n.onError:void 0,i,(function(){var e=new ReadableStream({type:\"bytes\",pull:function(e){if(1===c.status)c.status=2,da(e,c.fatalError);else if(2!==c.status&&null===c.destination){c.destination=e;try{fd(c,e)}catch(e){Y(c,e),Vc(c,e)}}},cancel:function(){ld(c)}},{highWaterMark:0});e.allReady=s;a(e)}),(function(e){s.catch((function(){}));o(e)}),l);if(n&&n.signal){var d=n.signal,q=function(){ld(c,d.reason);d.removeEventListener(\"abort\",q)};d.addEventListener(\"abort\",q)}Uc(c)}))};Te.version=\"18.2.0\";var Un={};var Zn,Xn;Zn=a;Xn=Te;Un.version=Zn.version;Un.renderToString=Zn.renderToString;Un.renderToStaticMarkup=Zn.renderToStaticMarkup;Un.renderToNodeStream=Zn.renderToNodeStream;Un.renderToStaticNodeStream=Zn.renderToStaticNodeStream;Un.renderToReadableStream=Xn.renderToReadableStream;const Jn=Un.version,Gn=Un.renderToString,Qn=Un.renderToStaticMarkup,Yn=Un.renderToNodeStream,Kn=Un.renderToStaticNodeStream,er=Un.renderToReadableStream;export{Un as default,Yn as renderToNodeStream,er as renderToReadableStream,Qn as renderToStaticMarkup,Kn as renderToStaticNodeStream,Gn as renderToString,Jn as version};\n\n//# sourceMappingURL=server.browser.js.map","import { ControlType } from \"framer\";\nexport const fontStack = `\"Inter\", system-ui, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\"`;\nexport const containerStyles = {\n    position: \"relative\",\n    width: \"100%\",\n    height: \"100%\",\n    display: \"flex\",\n    justifyContent: \"center\",\n    alignItems: \"center\"\n};\nexport const emptyStateStyle = {\n    ...containerStyles,\n    borderRadius: 6,\n    background: \"rgba(136, 85, 255, 0.3)\",\n    color: \"#85F\",\n    border: \"1px dashed #85F\",\n    flexDirection: \"column\"\n};\nexport const defaultEvents = {\n    onClick: {\n        type: ControlType.EventHandler\n    },\n    onMouseEnter: {\n        type: ControlType.EventHandler\n    },\n    onMouseLeave: {\n        type: ControlType.EventHandler\n    }\n};\nexport const fontSizeOptions = {\n    type: ControlType.Number,\n    title: \"Font Size\",\n    min: 2,\n    max: 200,\n    step: 1,\n    displayStepper: true\n};\nexport const fontControls = {\n    font: {\n        type: ControlType.Boolean,\n        title: \"Font\",\n        defaultValue: false,\n        disabledTitle: \"Default\",\n        enabledTitle: \"Custom\"\n    },\n    fontFamily: {\n        type: ControlType.String,\n        title: \"Family\",\n        placeholder: \"Inter\",\n        hidden: ({ font  })=>!font\n    },\n    fontWeight: {\n        type: ControlType.Enum,\n        title: \"Weight\",\n        options: [\n            100,\n            200,\n            300,\n            400,\n            500,\n            600,\n            700,\n            800,\n            900\n        ],\n        optionTitles: [\n            \"Thin\",\n            \"Extra-light\",\n            \"Light\",\n            \"Regular\",\n            \"Medium\",\n            \"Semi-bold\",\n            \"Bold\",\n            \"Extra-bold\",\n            \"Black\", \n        ],\n        hidden: ({ font  })=>!font\n    }\n};\n// @TODO check if we're missing anything here — there doesn't seem to be a reliable browser API for this\nexport const localeOptions = {\n    af: \"Afrikaans\",\n    sq: \"Albanian\",\n    an: \"Aragonese\",\n    ar: \"Arabic (Standard)\",\n    \"ar-dz\": \"Arabic (Algeria)\",\n    \"ar-bh\": \"Arabic (Bahrain)\",\n    \"ar-eg\": \"Arabic (Egypt)\",\n    \"ar-iq\": \"Arabic (Iraq)\",\n    \"ar-jo\": \"Arabic (Jordan)\",\n    \"ar-kw\": \"Arabic (Kuwait)\",\n    \"ar-lb\": \"Arabic (Lebanon)\",\n    \"ar-ly\": \"Arabic (Libya)\",\n    \"ar-ma\": \"Arabic (Morocco)\",\n    \"ar-om\": \"Arabic (Oman)\",\n    \"ar-qa\": \"Arabic (Qatar)\",\n    \"ar-sa\": \"Arabic (Saudi Arabia)\",\n    \"ar-sy\": \"Arabic (Syria)\",\n    \"ar-tn\": \"Arabic (Tunisia)\",\n    \"ar-ae\": \"Arabic (U.A.E.)\",\n    \"ar-ye\": \"Arabic (Yemen)\",\n    hy: \"Armenian\",\n    as: \"Assamese\",\n    ast: \"Asturian\",\n    az: \"Azerbaijani\",\n    eu: \"Basque\",\n    bg: \"Bulgarian\",\n    be: \"Belarusian\",\n    bn: \"Bengali\",\n    bs: \"Bosnian\",\n    br: \"Breton\",\n    my: \"Burmese\",\n    ca: \"Catalan\",\n    ch: \"Chamorro\",\n    ce: \"Chechen\",\n    zh: \"Chinese\",\n    \"zh-hk\": \"Chinese (Hong Kong)\",\n    \"zh-cn\": \"Chinese (PRC)\",\n    \"zh-sg\": \"Chinese (Singapore)\",\n    \"zh-tw\": \"Chinese (Taiwan)\",\n    cv: \"Chuvash\",\n    co: \"Corsican\",\n    cr: \"Cree\",\n    hr: \"Croatian\",\n    cs: \"Czech\",\n    da: \"Danish\",\n    nl: \"Dutch (Standard)\",\n    \"nl-be\": \"Dutch (Belgian)\",\n    en: \"English\",\n    \"en-au\": \"English (Australia)\",\n    \"en-bz\": \"English (Belize)\",\n    \"en-ca\": \"English (Canada)\",\n    \"en-ie\": \"English (Ireland)\",\n    \"en-jm\": \"English (Jamaica)\",\n    \"en-nz\": \"English (New Zealand)\",\n    \"en-ph\": \"English (Philippines)\",\n    \"en-za\": \"English (South Africa)\",\n    \"en-tt\": \"English (Trinidad & Tobago)\",\n    \"en-gb\": \"English (United Kingdom)\",\n    \"en-us\": \"English (United States)\",\n    \"en-zw\": \"English (Zimbabwe)\",\n    eo: \"Esperanto\",\n    et: \"Estonian\",\n    fo: \"Faeroese\",\n    fa: \"Farsi\",\n    fj: \"Fijian\",\n    fi: \"Finnish\",\n    fr: \"French (Standard)\",\n    \"fr-be\": \"French (Belgium)\",\n    \"fr-ca\": \"French (Canada)\",\n    \"fr-fr\": \"French (France)\",\n    \"fr-lu\": \"French (Luxembourg)\",\n    \"fr-mc\": \"French (Monaco)\",\n    \"fr-ch\": \"French (Switzerland)\",\n    fy: \"Frisian\",\n    fur: \"Friulian\",\n    gd: \"Gaelic (Scots)\",\n    \"gd-ie\": \"Gaelic (Irish)\",\n    gl: \"Galacian\",\n    ka: \"Georgian\",\n    de: \"German (Standard)\",\n    \"de-at\": \"German (Austria)\",\n    \"de-de\": \"German (Germany)\",\n    \"de-li\": \"German (Liechtenstein)\",\n    \"de-lu\": \"German (Luxembourg)\",\n    \"de-ch\": \"German (Switzerland)\",\n    el: \"Greek\",\n    gu: \"Gujurati\",\n    ht: \"Haitian\",\n    he: \"Hebrew\",\n    hi: \"Hindi\",\n    hu: \"Hungarian\",\n    is: \"Icelandic\",\n    id: \"Indonesian\",\n    iu: \"Inuktitut\",\n    ga: \"Irish\",\n    it: \"Italian (Standard)\",\n    \"it-ch\": \"Italian (Switzerland)\",\n    ja: \"Japanese\",\n    kn: \"Kannada\",\n    ks: \"Kashmiri\",\n    kk: \"Kazakh\",\n    km: \"Khmer\",\n    ky: \"Kirghiz\",\n    tlh: \"Klingon\",\n    ko: \"Korean\",\n    \"ko-kp\": \"Korean (North Korea)\",\n    \"ko-kr\": \"Korean (South Korea)\",\n    la: \"Latin\",\n    lv: \"Latvian\",\n    lt: \"Lithuanian\",\n    lb: \"Luxembourgish\",\n    mk: \"FYRO Macedonian\",\n    ms: \"Malay\",\n    ml: \"Malayalam\",\n    mt: \"Maltese\",\n    mi: \"Maori\",\n    mr: \"Marathi\",\n    mo: \"Moldavian\",\n    nv: \"Navajo\",\n    ng: \"Ndonga\",\n    ne: \"Nepali\",\n    no: \"Norwegian\",\n    nb: \"Norwegian (Bokmal)\",\n    nn: \"Norwegian (Nynorsk)\",\n    oc: \"Occitan\",\n    or: \"Oriya\",\n    om: \"Oromo\",\n    \"fa-ir\": \"Persian/Iran\",\n    pl: \"Polish\",\n    pt: \"Portuguese\",\n    \"pt-br\": \"Portuguese (Brazil)\",\n    pa: \"Punjabi\",\n    \"pa-in\": \"Punjabi (India)\",\n    \"pa-pk\": \"Punjabi (Pakistan)\",\n    qu: \"Quechua\",\n    rm: \"Rhaeto-Romanic\",\n    ro: \"Romanian\",\n    \"ro-mo\": \"Romanian (Moldavia)\",\n    ru: \"Russian\",\n    \"ru-mo\": \"Russian (Moldavia)\",\n    sz: \"Sami (Lappish)\",\n    sg: \"Sango\",\n    sa: \"Sanskrit\",\n    sc: \"Sardinian\",\n    sd: \"Sindhi\",\n    si: \"Singhalese\",\n    sr: \"Serbian\",\n    sk: \"Slovak\",\n    sl: \"Slovenian\",\n    so: \"Somani\",\n    sb: \"Sorbian\",\n    es: \"Spanish\",\n    \"es-ar\": \"Spanish (Argentina)\",\n    \"es-bo\": \"Spanish (Bolivia)\",\n    \"es-cl\": \"Spanish (Chile)\",\n    \"es-co\": \"Spanish (Colombia)\",\n    \"es-cr\": \"Spanish (Costa Rica)\",\n    \"es-do\": \"Spanish (Dominican Republic)\",\n    \"es-ec\": \"Spanish (Ecuador)\",\n    \"es-sv\": \"Spanish (El Salvador)\",\n    \"es-gt\": \"Spanish (Guatemala)\",\n    \"es-hn\": \"Spanish (Honduras)\",\n    \"es-mx\": \"Spanish (Mexico)\",\n    \"es-ni\": \"Spanish (Nicaragua)\",\n    \"es-pa\": \"Spanish (Panama)\",\n    \"es-py\": \"Spanish (Paraguay)\",\n    \"es-pe\": \"Spanish (Peru)\",\n    \"es-pr\": \"Spanish (Puerto Rico)\",\n    \"es-es\": \"Spanish (Spain)\",\n    \"es-uy\": \"Spanish (Uruguay)\",\n    \"es-ve\": \"Spanish (Venezuela)\",\n    sx: \"Sutu\",\n    sw: \"Swahili\",\n    sv: \"Swedish\",\n    \"sv-fi\": \"Swedish (Finland)\",\n    \"sv-sv\": \"Swedish (Sweden)\",\n    ta: \"Tamil\",\n    tt: \"Tatar\",\n    te: \"Teluga\",\n    th: \"Thai\",\n    tig: \"Tigre\",\n    ts: \"Tsonga\",\n    tn: \"Tswana\",\n    tr: \"Turkish\",\n    tk: \"Turkmen\",\n    uk: \"Ukrainian\",\n    hsb: \"Upper Sorbian\",\n    ur: \"Urdu\",\n    ve: \"Venda\",\n    vi: \"Vietnamese\",\n    vo: \"Volapuk\",\n    wa: \"Walloon\",\n    cy: \"Welsh\",\n    xh: \"Xhosa\",\n    ji: \"Yiddish\",\n    zu: \"Zulu\"\n};\n\nexport const __FramerMetadata__ = {\"exports\":{\"fontSizeOptions\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"fontControls\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"localeOptions\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"fontStack\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"emptyStateStyle\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"containerStyles\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"defaultEvents\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}}}}\n//# sourceMappingURL=./constants.map","import { useIsInCurrentNavigationTarget } from \"framer\";\nimport { useEffect } from \"react\";\nexport function useOnEnter(onEnter, enabled) {\n    return useOnSpecificTargetChange(true, onEnter, enabled);\n}\nexport function useOnExit(onExit, enabled) {\n    return useOnSpecificTargetChange(false, onExit, enabled);\n}\nfunction useOnSpecificTargetChange(goal, callback, enabled = true) {\n    const isInTarget = useIsInCurrentNavigationTarget();\n    useEffect(()=>{\n        if (enabled && isInTarget === goal) callback();\n    }, [\n        isInTarget\n    ]);\n}\n\nexport const __FramerMetadata__ = {\"exports\":{\"useOnEnter\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useOnExit\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}}}}\n//# sourceMappingURL=./useOnNavigationTargetChange.map","import { useRef } from \"react\";\n/**\n * Creates a constant value over the lifecycle of a component.\n *\n * Even if `useMemo` is provided an empty array as its final argument, it doesn't offer\n * a guarantee that it won't re-run for performance reasons later on. By using `useConstant`\n * you can ensure that initialisers don't execute twice or more.\n */ export function useConstant(init) {\n    const ref = useRef(null);\n    if (ref.current === null) {\n        ref.current = init();\n    }\n    return ref.current;\n}\n\nexport const __FramerMetadata__ = {\"exports\":{\"useConstant\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}}}}\n//# sourceMappingURL=./useConstant.map","import { Color } from \"framer\";\nexport function colorFromToken(color) {\n    if (color.startsWith(\"var(--token-\")) return \"rgb\" + color.split(\") /*\")[0].split(\", rgb\")[1];\n    return color;\n}\nexport function colorTokentoValue(color) {\n    return Color(colorFromToken(color)).toValue();\n}\n\nexport const __FramerMetadata__ = {\"exports\":{\"colorFromToken\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"colorTokentoValue\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}}}}\n//# sourceMappingURL=./colorFromToken.map","import { MotionValue } from \"framer\";\nexport const isMotionValue = (v)=>v instanceof MotionValue\n;\n\nexport const __FramerMetadata__ = {\"exports\":{\"isMotionValue\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}}}}\n//# sourceMappingURL=./isMotionValue.map","import * as React from \"react\";\nconst letters = \"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz\";\nconst l = ()=>letters[Math.floor(Math.random() * letters.length)]\n;\nexport const randomID = ()=>l() + l() + l() + l() + l() + l() + l() + l() + l()\n;\nfunction createUniqueClass(suffix) {\n    return `framer-${suffix}-${randomID()}`;\n}\nexport function useUniqueClassName(suffix, deps) {\n    const [className, setClassName] = React.useState(createUniqueClass(suffix));\n    React.useEffect(()=>{\n        setClassName(createUniqueClass(suffix));\n    }, [\n        suffix,\n        ...deps\n    ]);\n    return className;\n}\n\nexport const __FramerMetadata__ = {\"exports\":{\"useUniqueClassName\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"randomID\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}}}}\n//# sourceMappingURL=./useUniqueClassName.map","import { ControlType } from \"framer\";\n// I realize this only applies to select right now\n// but we can work on it in here\nexport function getVariantControls(Component, variant, additionalControls = {\n}) {\n    return {\n        [`${variant}TextColor`]: {\n            type: ControlType.Color,\n            title: \"Text Color\",\n            defaultValue: Component.defaultProps[`${variant}TextColor`],\n            hidden: (props)=>props.variant !== variant\n        },\n        [`${variant}IconColor`]: {\n            type: ControlType.Color,\n            title: \"Icon Color\",\n            defaultValue: Component.defaultProps[`${variant}IconColor`],\n            hidden: (props)=>props.variant !== variant\n        },\n        [`${variant}BackgroundColor`]: {\n            type: ControlType.Color,\n            title: \"Bg Color\",\n            defaultValue: Component.defaultProps[`${variant}BackgroundColor`],\n            hidden: (props)=>props.variant !== variant\n        },\n        [`${variant}BorderColor`]: {\n            type: ControlType.Color,\n            title: \"Border Color\",\n            defaultValue: Component.defaultProps[`${variant}BorderColor`],\n            hidden: (props)=>props.variant !== variant\n        },\n        [`${variant}BorderWidth`]: {\n            type: ControlType.Number,\n            title: \" \",\n            min: 0,\n            max: 5,\n            displayStepper: true,\n            defaultValue: Component.defaultProps[`${variant}BorderWidth`],\n            hidden: (props)=>props.variant !== variant\n        },\n        ...additionalControls\n    };\n}\n\nexport const __FramerMetadata__ = {\"exports\":{\"getVariantControls\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}}}}\n//# sourceMappingURL=./variantUtils.map","import { useMemo } from \"react\";\nexport const isBrowserSafari = ()=>{\n    if (typeof navigator !== `undefined`) {\n        const userAgent = navigator.userAgent.toLowerCase();\n        const isSafari = (userAgent.indexOf(\"safari\") > -1 || userAgent.indexOf(\"framermobile\") > -1 || userAgent.indexOf(\"framerx\") > -1) && userAgent.indexOf(\"chrome\") < 0;\n        return isSafari;\n    } else return false;\n};\nexport const useIsBrowserSafari = ()=>useMemo(()=>isBrowserSafari()\n    , [])\n;\n\nexport const __FramerMetadata__ = {\"exports\":{\"useIsBrowserSafari\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"isBrowserSafari\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}}}}\n//# sourceMappingURL=./isBrowser.map","import { useEffect } from \"react\";\n//@ts-ignore\nimport { isMotionValue } from \"https://framerusercontent.com/modules/3mKFSGQqKHV82uOV1eBc/5fbRLvOpxZC0JOXugvwm/isMotionValue.js\";\nexport function useOnChange(value, callback) {\n    useEffect(()=>// @ts-ignore this should be detected as a MV :shrug:\n        isMotionValue(value) ? value.onChange(callback) : undefined\n    );\n}\nexport function useMultiOnChange(values, handler) {\n    useEffect(()=>{\n        const subscriptions = values.map((value)=>value.onChange(handler)\n        );\n        return ()=>subscriptions.forEach((unsubscribe)=>unsubscribe()\n            )\n        ;\n    });\n}\n\nexport const __FramerMetadata__ = {\"exports\":{\"Subscriber\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useOnChange\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useMultiOnChange\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}}}}\n//# sourceMappingURL=./useOnChange.map","import { useCallback, useEffect, useRef } from \"react\";\nimport { motionValue, animate, RenderTarget } from \"framer\";\n// @ts-ignore\nimport { isMotionValue } from \"https://framerusercontent.com/modules/3mKFSGQqKHV82uOV1eBc/5fbRLvOpxZC0JOXugvwm/isMotionValue.js\";\n// @ts-ignore\nimport { useConstant } from \"https://framerusercontent.com/modules/ExNgrA7EJTKUPpH6vIlN/eiOrSJ2Ab5M9jPCvVwUz/useConstant.js\";\nexport function useAutoMotionValue(inputValue, options) {\n    var ref;\n    // Put options on a local ref\n    // Might wanna just memo instead but it works for now\n    const optionsRef = useRef(options);\n    const animation = useRef();\n    const didInitialMount = useRef(false);\n    const isOnCanvas = RenderTarget.current() === RenderTarget.canvas;\n    // in-progress - trying to figure out effect hooks\n    const onChangeDeps = (options === null || options === void 0 ? void 0 : options.onChangeDeps) ? options.onChangeDeps : [];\n    // Memoize the onChange handler\n    const onChange = useCallback(options === null || options === void 0 ? void 0 : options.onChange, [\n        ...onChangeDeps, \n    ]);\n    // Optionally scale the value from props\n    const transformer = useCallback((value)=>((ref = optionsRef.current) === null || ref === void 0 ? void 0 : ref.transform) ? optionsRef.current.transform(value) : value\n    , []);\n    // Create new MotionValue from inputValue\n    const value = useConstant(()=>isMotionValue(inputValue) ? inputValue : motionValue(transformer(inputValue))\n    );\n    // Setting value from prop change\n    useEffect(()=>{\n        if (!isMotionValue(inputValue) && didInitialMount.current) {\n            var ref1, ref2;\n            const newValue = transformer(inputValue);\n            (ref1 = animation.current) === null || ref1 === void 0 ? void 0 : ref1.stop();\n            // Call change callback\n            if (onChange) onChange(newValue, value);\n            // Trigger animation to new value\n            if (((ref2 = optionsRef.current) === null || ref2 === void 0 ? void 0 : ref2.animate) && !isOnCanvas) {\n                var ref3;\n                // @ts-ignore\n                animation.current = animate(value, newValue, (ref3 = optionsRef.current) === null || ref3 === void 0 ? void 0 : ref3.transition);\n            } else {\n                value.set(newValue);\n            }\n        }\n        didInitialMount.current = true;\n    }, [\n        inputValue,\n        ...onChangeDeps\n    ]);\n    return value;\n}\n\nexport const __FramerMetadata__ = {\"exports\":{\"useAutoMotionValue\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}}}}","// @ts-ignore\nimport{fontStore}from\"framer\";import{useEffect}from\"react\";import{fontStack}from\"https://framerusercontent.com/modules/VTUDdizacRHpwbkOamr7/AykinQJbgwl92LvMGZwu/constants.js\";const fontWeights={100:\"Thin\",200:\"Extra-light\",300:\"Light\",400:\"Regular\",500:\"Medium\",600:\"Semi-bold\",700:\"Bold\",800:\"Extra-bold\",900:\"Black\"};export function useFontControls(props){const{fontFamily=\"Inter\",fontSize=16,fontWeight=400,font=false}=props;const fontWeightName=fontWeights[fontWeight];const customFontStack=`\"${fontFamily} ${fontWeightName}\", \"${fontFamily}\", ${fontStack}`;const fontFamilyStyle=fontFamily?{fontSize,fontWeight,fontFamily:customFontStack}:{fontSize,fontWeight};const fetchCustomFonts=async()=>{await fontStore.loadWebFontsFromSelectors([`CUSTOM;${fontFamily}`,`CUSTOM;${fontFamily} ${fontWeightName}`,`GF;${fontFamily}-${fontWeightName.toLowerCase()}`,]).catch(e=>console.error(e));};useEffect(()=>{if(font)fetchCustomFonts();},[font,fontFamily,fontWeight]);return fontFamilyStyle;}\nexport const __FramerMetadata__ = {\"exports\":{\"useFontControls\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}}}}\n//# sourceMappingURL=./useFontControls.map","import { useMemo } from \"react\";\nimport { RenderTarget } from \"framer\";\nexport function useRenderTarget() {\n    const currentRenderTarget = useMemo(()=>RenderTarget.current()\n    , []);\n    return currentRenderTarget;\n}\nexport function useIsInPreview() {\n    const inPreview = useMemo(()=>RenderTarget.current() === RenderTarget.preview\n    , []);\n    return inPreview;\n}\nexport function useIsOnCanvas() {\n    const onCanvas = useMemo(()=>RenderTarget.current() === RenderTarget.canvas\n    , []);\n    return onCanvas;\n}\n\nexport const __FramerMetadata__ = {\"exports\":{\"useIsInPreview\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useRenderTarget\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useIsOnCanvas\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}}}}\n//# sourceMappingURL=./useRenderTarget.map","import * as React from \"react\";\nexport function useControlledState(value) {\n    const [controlledValue, setValue] = React.useState(value);\n    React.useEffect(()=>{\n        setValue(value);\n    }, [\n        value\n    ]);\n    return [\n        controlledValue,\n        setValue\n    ];\n}\n\nexport const __FramerMetadata__ = {\"exports\":{\"useControlledState\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}}}}\n//# sourceMappingURL=./useControlledState.map","import { useMemo } from \"react\";\nimport { ControlType } from \"framer\";\nexport function useRadius(props) {\n    const { borderRadius , isMixedBorderRadius , topLeftRadius , topRightRadius , bottomRightRadius , bottomLeftRadius ,  } = props;\n    const radiusValue = useMemo(()=>isMixedBorderRadius ? `${topLeftRadius}px ${topRightRadius}px ${bottomRightRadius}px ${bottomLeftRadius}px` : `${borderRadius}px`\n    , [\n        borderRadius,\n        isMixedBorderRadius,\n        topLeftRadius,\n        topRightRadius,\n        bottomRightRadius,\n        bottomLeftRadius, \n    ]);\n    return radiusValue;\n}\nexport const borderRadiusControl = {\n    borderRadius: {\n        title: \"Radius\",\n        type: ControlType.FusedNumber,\n        toggleKey: \"isMixedBorderRadius\",\n        toggleTitles: [\n            \"Radius\",\n            \"Radius per corner\"\n        ],\n        valueKeys: [\n            \"topLeftRadius\",\n            \"topRightRadius\",\n            \"bottomRightRadius\",\n            \"bottomLeftRadius\", \n        ],\n        valueLabels: [\n            \"TL\",\n            \"TR\",\n            \"BR\",\n            \"BL\"\n        ],\n        min: 0\n    }\n};\nexport function usePadding(props) {\n    const { padding , paddingPerSide , paddingTop , paddingRight , paddingBottom , paddingLeft ,  } = props;\n    const paddingValue = useMemo(()=>paddingPerSide ? `${paddingTop}px ${paddingRight}px ${paddingBottom}px ${paddingLeft}px` : padding\n    , [\n        padding,\n        paddingPerSide,\n        paddingTop,\n        paddingRight,\n        paddingBottom,\n        paddingLeft, \n    ]);\n    return paddingValue;\n}\nexport const paddingControl = {\n    padding: {\n        type: ControlType.FusedNumber,\n        toggleKey: \"paddingPerSide\",\n        toggleTitles: [\n            \"Padding\",\n            \"Padding per side\"\n        ],\n        valueKeys: [\n            \"paddingTop\",\n            \"paddingRight\",\n            \"paddingBottom\",\n            \"paddingLeft\", \n        ],\n        valueLabels: [\n            \"T\",\n            \"R\",\n            \"B\",\n            \"L\"\n        ],\n        min: 0,\n        title: \"Padding\"\n    }\n};\n\nexport const __FramerMetadata__ = {\"exports\":{\"borderRadiusControl\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useRadius\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"RadiusProps\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"PaddingProps\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"usePadding\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"paddingControl\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}}}}\n//# sourceMappingURL=./propUtils.map","import{defaultEvents,localeOptions,fontControls,fontSizeOptions,emptyStateStyle,containerStyles,fontStack}from\"https://framerusercontent.com/modules/VTUDdizacRHpwbkOamr7/AykinQJbgwl92LvMGZwu/constants.js\";import{useOnEnter,useOnExit}from\"https://framerusercontent.com/modules/D4TWeLfcxT6Tysr2BlYg/iZjmqdxVx1EOiM3k1FaW/useOnNavigationTargetChange.js\";import{useConstant}from\"https://framerusercontent.com/modules/ExNgrA7EJTKUPpH6vIlN/eiOrSJ2Ab5M9jPCvVwUz/useConstant.js\";import{colorTokentoValue,colorFromToken}from\"https://framerusercontent.com/modules/D2Lz5CmnNVPZFFiZXalt/QaCzPbriZBfXWZIIycFI/colorFromToken.js\";import{isMotionValue}from\"https://framerusercontent.com/modules/3mKFSGQqKHV82uOV1eBc/5fbRLvOpxZC0JOXugvwm/isMotionValue.js\";import{useUniqueClassName,randomID}from\"https://framerusercontent.com/modules/xDiQsqBGXzmMsv7AlEVy/uhunpMiNsbXxzjlXsg1y/useUniqueClassName.js\";import{getVariantControls}from\"https://framerusercontent.com/modules/ETACN5BJyFTSo0VVDJfu/NHRqowOiXkF9UwOzczF7/variantUtils.js\";import{useIsBrowserSafari}from\"https://framerusercontent.com/modules/eMBrwoqQK7h6mEeGQUH8/GuplvPJVjmxpk9zqOTcb/isBrowser.js\";import{useMultiOnChange,useOnChange}from\"https://framerusercontent.com/modules/v9AWX2URmiYsHf7GbctE/XxKAZ9KlhWqf5x1JMyyF/useOnChange.js\";import{mstoMinAndSec,secondsToMinutes}from\"https://framerusercontent.com/modules/4zHZnO5JojN1PrIbu2jm/revv9QCWpkh8lPzi2jje/time.js\";import{useAutoMotionValue}from\"https://framerusercontent.com/modules/kNDwabfjDEb3vUxkQlZS/fSIr3AOAYbGlfSPgXpYu/useAutoMotionValue.js\";import{useFontControls}from\"https://framerusercontent.com/modules/cuQH4dmpDnV8YK1mSgQX/KqRXqunFjE6ufhpc7ZRu/useFontControls.js\";import{useRenderTarget,useIsInPreview,useIsOnCanvas}from\"https://framerusercontent.com/modules/afBE9Yx1W6bY5q32qPxe/m3q7puE2tbo1S2C0s0CT/useRenderTarget.js\";import{useControlledState}from\"https://framerusercontent.com/modules/zGkoP8tPDCkoBzMdt5uq/0zFSjxIYliHxrQQnryFX/useControlledState.js\";import{usePadding,useRadius,paddingControl,borderRadiusControl}from\"https://framerusercontent.com/modules/5SM58HxZHxjjv7aLMOgQ/WXz9i6mVki0bBCrKdqB3/propUtils.js\";import{detectAutoSizingAxis}from\"https://framerusercontent.com/modules/8CkHAZatUz1UR8jNTcfD/HwbnIAZlUmQ2oTpcLkaH/detectAutoSizingAxis.js\";export{useOnEnter,useOnExit,defaultEvents,isMotionValue,colorFromToken,colorTokentoValue,localeOptions,fontControls,fontSizeOptions,emptyStateStyle,containerStyles,fontStack,useUniqueClassName,getVariantControls,useIsBrowserSafari,randomID,useConstant,useMultiOnChange,useOnChange,usePadding,useRadius,paddingControl,borderRadiusControl,mstoMinAndSec,useFontControls,secondsToMinutes,useAutoMotionValue,useRenderTarget,useIsInPreview,useControlledState,detectAutoSizingAxis,useIsOnCanvas,};\nexport const __FramerMetadata__ = {\"exports\":{\"useConstant\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"isMotionValue\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"fontControls\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"defaultEvents\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useUniqueClassName\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useMultiOnChange\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useOnChange\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useIsOnCanvas\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useOnExit\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"fontSizeOptions\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"colorTokentoValue\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useRadius\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"getVariantControls\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"colorFromToken\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"containerStyles\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"usePadding\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"fontStack\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useControlledState\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useFontControls\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useAutoMotionValue\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"emptyStateStyle\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useIsInPreview\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useIsBrowserSafari\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"detectAutoSizingAxis\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"borderRadiusControl\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"mstoMinAndSec\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"randomID\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"localeOptions\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useOnEnter\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"secondsToMinutes\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useRenderTarget\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"paddingControl\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}}}}","import{jsx as _jsx}from\"react/jsx-runtime\";import{addPropertyControls,ControlType,useIsInCurrentNavigationTarget}from\"framer\";import{isMotionValue,useInView}from\"framer-motion\";import{borderRadiusControl,defaultEvents,useIsBrowserSafari,useIsOnCanvas,useOnEnter,useOnExit,useRadius}from\"https://framerusercontent.com/modules/G4IfyjvwmaeSBpdb4TWu/OIjZRBmWDcIE2B6qgG1j/index.js\";// https://framer.com/m/framer/default-utils.js@^0.45.0\nimport{memo,useCallback,useEffect,useMemo,useRef,useState}from\"react\";var ObjectFitType;(function(ObjectFitType){ObjectFitType[\"Fill\"]=\"fill\";ObjectFitType[\"Contain\"]=\"contain\";ObjectFitType[\"Cover\"]=\"cover\";ObjectFitType[\"None\"]=\"none\";ObjectFitType[\"ScaleDown\"]=\"scale-down\";})(ObjectFitType||(ObjectFitType={}));var SrcType;(function(SrcType){SrcType[\"Video\"]=\"Upload\";SrcType[\"Url\"]=\"URL\";})(SrcType||(SrcType={}));// Reduce renders\nfunction getProps(props){const{width,height,topLeft,topRight,bottomRight,bottomLeft,id,children,...rest}=props;return rest;}/**\n * VIDEO\n *\n * @framerIntrinsicWidth 200\n * @framerIntrinsicHeight 112\n *\n * @framerSupportedLayoutWidth fixed\n * @framerSupportedLayoutHeight any-prefer-fixed\n */export function Video(props){const newProps=getProps(props);return /*#__PURE__*/_jsx(VideoMemo,{...newProps});}function usePlaybackControls(videoRef){const isInCurrentNavigationTarget=useIsInCurrentNavigationTarget();const requestingPlay=useRef(false);const isPlayingRef=useRef(false);const setProgress=useCallback(rawProgress=>{if(!videoRef.current)return;const newProgress=(rawProgress===1?.999:rawProgress)*videoRef.current.duration;const isAlreadySet=Math.abs(videoRef.current.currentTime-newProgress)<.1;if(videoRef.current.duration>0&&!isAlreadySet){videoRef.current.currentTime=newProgress;}},[]);const play=useCallback(()=>{const video=videoRef.current;if(!video)return;video.preload=\"auto\"// makes sure browsers don't throttle: https://html.spec.whatwg.org/multipage/media.html#:~:text=When%20the%20media%20resource%20is%20playing%2C%20hints%20to%20the%20user%20agent%20that%20bandwidth%20is%20to%20be%20considered%20scarce%2C%20e.g.%20suggesting%20throttling%20the%20download%20so%20that%20the%20media%20data%20is%20obtained%20at%20the%20slowest%20possible%20rate%20that%20still%20maintains%20consistent%20playback.\n;const isPlaying=video.currentTime>0&&video.onplaying&&!video.paused&&!video.ended&&video.readyState>=video.HAVE_CURRENT_DATA;if(!isPlaying&&video&&!requestingPlay.current&&isInCurrentNavigationTarget){requestingPlay.current=true;isPlayingRef.current=true;video.play().catch(e=>{})// It's likely fine, swallow error\n.finally(()=>requestingPlay.current=false);}},[]);const pause=useCallback(()=>{if(!videoRef.current||requestingPlay.current)return;videoRef.current.pause();isPlayingRef.current=false;},[]);return{play,pause,setProgress,isPlaying:isPlayingRef};}function useAutoplayBehavior({playingProp,muted,loop,playsinline,controls}){const[initialPlayingProp]=useState(()=>playingProp);const[hasPlayingPropChanged,setHasPlayingPropChanged]=useState(false);if(playingProp!==initialPlayingProp&&!hasPlayingPropChanged){setHasPlayingPropChanged(true);}const behavesAsGif=// passing `playing === true` on mount indicates that the video should\n// autoplay, like a GIF\ninitialPlayingProp&&muted&&loop&&playsinline&&!controls&&// Some users of the <Video> component use it by wrapping it with\n// another smart component and adding their own controls on top. (The\n// controls use transitions to control the video: e.g., when clicking\n// the play button, the smart component will transition to a state with\n// <Video playing={true} />.) In this case, we don't want the video to\n// behave as a gif, as it will be weird if the video suddenly started\n// acting as such (and auto-pausing when leaving the viewport) as soon\n// as the site visitor mutes it and clicks “Play”.\n!hasPlayingPropChanged;let autoplay;if(behavesAsGif)autoplay=\"on-viewport\";else if(initialPlayingProp)autoplay=\"on-mount\";else autoplay=\"no-autoplay\";return autoplay;}const VideoMemo=/*#__PURE__*/memo(function VideoInner(props){const{// default props\nsrcType=\"URL\",srcUrl,srcFile=\"\",posterEnabled=false,controls=false,playing=true,loop=true,muted=true,playsinline=true,restartOnEnter=false,objectFit=\"cover\",backgroundColor=\"rgba(0,0,0,0)\",radius=0,volume=25,startTime:startTimeProp=0,poster=\"https://framerusercontent.com/images/5ILRvlYXf72kHSVHqpa3snGzjU.jpg\",playing:playingProp,progress,onSeeked,onPause,onPlay,onEnd,onClick,onMouseEnter,onMouseLeave,onMouseDown,onMouseUp}=props;const videoRef=useRef();const isSafari=useIsBrowserSafari();const wasPausedOnLeave=useRef(null);const wasEndedOnLeave=useRef(null);const isOnCanvas=useIsOnCanvas();const borderRadius=useRadius(props);// Hard-coding `autoplayBehavior` and `isInViewport` when on canvas as a\n// tiny perf optimization. isOnCanvas won’t change through the lifecycle of\n// the component, so using these hooks conditionally should be safe\nconst autoplayBehavior=isOnCanvas?\"no-autoplay\":useAutoplayBehavior({playingProp,muted,loop,playsinline,controls});const isInViewport=isOnCanvas?true:useInView(videoRef);const isCloseToViewport=isOnCanvas?false:useInView(videoRef,{margin:\"100px\",once:true});// Video elements behave oddly at 100% duration\nconst startTime=startTimeProp===100?99.9:startTimeProp;const{play,pause,setProgress,isPlaying}=usePlaybackControls(videoRef);// Pause/play via props\nuseEffect(()=>{if(isOnCanvas)return;if(playingProp)play();else pause();},[playingProp]);// Pause/play via viewport\nuseEffect(()=>{if(isOnCanvas)return;if(autoplayBehavior!==\"on-viewport\")return;if(isInViewport)play();else pause();},[autoplayBehavior,isInViewport]);/**\n     * The Video component has some effects that sync the video element with props\n     * like `startTime`, `progress`, etc. React calls these effects whenever these\n     * props change. However, it also calls them on the first mount, and this is\n     * troublesome – if we’re doing SSR, and the user changed the video state before\n     * the video was hydrated, the initial `useEffect` call will reset the video\n     * state. To avoid this, we use this flag.\n     */const isMountedAndReadyForProgressChanges=useRef(false);// Allow scrubbling via progress prop\n// 1) Handle cases when the progress prop itself changes\nuseEffect(()=>{if(!isMountedAndReadyForProgressChanges.current){isMountedAndReadyForProgressChanges.current=true;return;}const rawProgressValue=isMotionValue(progress)?progress.get():(progress!==null&&progress!==void 0?progress:0)*.01;setProgress(// When the progress value exists (e.g. <Video startTime={10}\n// progress={50} />), we respect the `progress` value over\n// `startTime`, even if `startTime` changes. That’s because\n// `startTime` == start == changing it shouldn’t affect the current\n// progress\n(rawProgressValue!==null&&rawProgressValue!==void 0?rawProgressValue:0)||// Then why fall back to `startTime` when `progress` doesn’t exist,\n// you might ask? Now, that’s for\n// - canvas UX: we want the video progress to change when the user\n//   is scrobbling the “Start Time” in component settings.\n// - backwards compatibility: maybe some users *are* scrobbling\n//   using `startTime` instead of `progress`? We don’t know, and it\n//   always supported it, so let’s not break it\n(startTime!==null&&startTime!==void 0?startTime:0)/100);},[startTime,srcFile,srcUrl,progress]);// 2) Handle cases when the motion value inside the progress prop changes\nuseEffect(()=>{if(!isMotionValue(progress))return;return progress.on(\"change\",value=>setProgress(value));},[progress]);// (Prototyping) Checking if we need to play on navigation enter\nuseOnEnter(()=>{if(wasPausedOnLeave.current===null)return;if(videoRef.current){// if (restartOnEnter) setProgress(0)\nif(!wasEndedOnLeave&&loop||!wasPausedOnLeave.current)play();}});// (Prototyping) Pausing & saving playing state on navigation exit\nuseOnExit(()=>{if(videoRef.current){wasEndedOnLeave.current=videoRef.current.ended;wasPausedOnLeave.current=videoRef.current.paused;pause();}});const src=useMemo(()=>{let fragment=\"\";// if (\n//     startTime > 0 &&\n//     videoRef.current &&\n//     !isNaN(videoRef.current.duration) &&\n//     !isOnCanvas\n// ) {\n//     console.log(startTime, videoRef.current.duration)\n//     fragment = `#t=${startTime * videoRef.current.duration}`\n// }\nif(srcType===\"URL\")return srcUrl+fragment;if(srcType===\"Upload\")return srcFile+fragment;},[srcType,srcFile,srcUrl,startTime]);// Autoplay via JS to work in Safari\nuseEffect(()=>{if(isSafari&&videoRef.current&&autoplayBehavior===\"on-mount\"){setTimeout(()=>play(),50);}},[]);// Volume Control\nuseEffect(()=>{if(videoRef.current&&!muted)videoRef.current.volume=(volume!==null&&volume!==void 0?volume:0)/100;},[volume]);// When video is ready, set start-time, then autoplay if needed\nconst handleReady=()=>{const video=videoRef.current;if(!video)return;if(video.currentTime<.3&&startTime>0)setProgress((startTime!==null&&startTime!==void 0?startTime:0)*.01);if(autoplayBehavior===\"on-mount\")play();};return /*#__PURE__*/_jsx(\"video\",{onClick,onMouseEnter,onMouseLeave,onMouseDown,onMouseUp,src:src,loop:loop,ref:videoRef,onSeeked:e=>onSeeked===null||onSeeked===void 0?void 0:onSeeked(e),onPause:e=>onPause===null||onPause===void 0?void 0:onPause(e),onPlay:e=>onPlay===null||onPlay===void 0?void 0:onPlay(e),onEnded:e=>onEnd===null||onEnd===void 0?void 0:onEnd(e),autoPlay:autoplayBehavior===\"on-mount\",preload:isPlaying.current?\"auto\":autoplayBehavior!==\"on-mount\"&&posterEnabled&&!isCloseToViewport?\"none\":// `autoplay` overrides this too\n\"metadata\",poster:posterEnabled?poster:undefined,onLoadedData:handleReady,controls:controls,muted:isOnCanvas?true:muted,playsInline:playsinline,style:{cursor:!!onClick?\"pointer\":\"auto\",width:\"100%\",height:\"100%\",borderRadius,display:\"block\",objectFit:objectFit,backgroundColor:backgroundColor,objectPosition:\"50% 50%\"}});});Video.displayName=\"Video\";function capitalizeFirstLetter(value){return value.charAt(0).toUpperCase()+value.slice(1);}export function titleCase(value){const groups=value.match(/[A-Z]{2,}|[A-Z][a-z]+|[a-z]+|[A-Z]|\\d+/gu)||[];return groups.map(capitalizeFirstLetter).join(\" \");}const objectFitOptions=[\"cover\",\"fill\",\"contain\",\"scale-down\",\"none\"];addPropertyControls(Video,{srcType:{type:ControlType.Enum,displaySegmentedControl:true,title:\"Source\",options:[\"URL\",\"Upload\"]},srcUrl:{type:ControlType.String,title:\"URL\",defaultValue:\"https://framerusercontent.com/assets/MLWPbW1dUQawJLhhun3dBwpgJak.mp4\",hidden(props){return props.srcType===\"Upload\";}},srcFile:{type:ControlType.File,title:\"File\",allowedFileTypes:[\"mp4\",\"webm\"],hidden(props){return props.srcType===\"URL\";}},playing:{type:ControlType.Boolean,title:\"Playing\",enabledTitle:\"Yes\",disabledTitle:\"No\"},posterEnabled:{type:ControlType.Boolean,title:\"Poster\",enabledTitle:\"Yes\",disabledTitle:\"No\",description:\"We recommend adding a poster. [Learn more](https://www.framer.com/help/articles/how-are-videos-optimized-in-framer/).\"},poster:{type:ControlType.Image,title:\" \",hidden:({posterEnabled})=>!posterEnabled},backgroundColor:{type:ControlType.Color,title:\"Background\",defaultValue:\"rgba(0,0,0,0)\"},...borderRadiusControl,startTime:{title:\"Start Time\",type:ControlType.Number,min:0,max:100,step:.1,unit:\"%\"},loop:{type:ControlType.Boolean,title:\"Loop\",enabledTitle:\"Yes\",disabledTitle:\"No\"},objectFit:{type:ControlType.Enum,title:\"Fit\",options:objectFitOptions,optionTitles:objectFitOptions.map(titleCase)},// restartOnEnter: {\n//     type: ControlType.Boolean,\n//     title: \"On ReEnter\",\n//     enabledTitle: \"Restart\",\n//     disabledTitle: \"Resume\",\n// },\ncontrols:{type:ControlType.Boolean,title:\"Controls\",enabledTitle:\"Show\",disabledTitle:\"Hide\",defaultValue:false},muted:{type:ControlType.Boolean,title:\"Muted\",enabledTitle:\"Yes\",disabledTitle:\"No\"},volume:{type:ControlType.Number,max:100,min:0,unit:\"%\",hidden:({muted})=>muted,defaultValue:25},onEnd:{type:ControlType.EventHandler},onSeeked:{type:ControlType.EventHandler},onPause:{type:ControlType.EventHandler},onPlay:{type:ControlType.EventHandler},...defaultEvents});\nexport const __FramerMetadata__ = {\"exports\":{\"VideoProps\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"Video\":{\"type\":\"reactComponent\",\"name\":\"Video\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\",\"framerIntrinsicHeight\":\"112\",\"framerIntrinsicWidth\":\"200\",\"framerSupportedLayoutWidth\":\"fixed\",\"framerSupportedLayoutHeight\":\"any-prefer-fixed\"}},\"titleCase\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./Video.map","// Generated by Framer (39331b4)\nimport{fontStore}from\"framer\";fontStore.loadFonts([\"CUSTOMV2;PP NeueBit Bold\"]);export const fonts=[{explicitInter:true,fonts:[{cssFamilyName:\"PP NeueBit Bold\",source:\"custom\",style:\"normal\",uiFamilyName:\"PP NeueBit\",url:\"https://framerusercontent.com/assets/LhlnRGZ9aD8mHk26ghaljbgKEcs.woff2\",weight:\"700\"}]}];export const css=[\".framer-sSuX7 .framer-styles-preset-5ebu2v:not(.rich-text-wrapper), .framer-sSuX7 .framer-styles-preset-5ebu2v.rich-text-wrapper p { --framer-font-family: \\\"PP NeueBit Bold\\\", \\\"PP NeueBit Bold Placeholder\\\", sans-serif; --framer-font-open-type-features: 'blwf' on, 'cv03' on, 'cv04' on, 'cv09' on, 'cv11' on; --framer-font-size: 16px; --framer-font-style: normal; --framer-font-variation-axes: normal; --framer-font-weight: 700; --framer-letter-spacing: 0.02em; --framer-line-height: 1.2em; --framer-paragraph-spacing: 0px; --framer-text-alignment: start; --framer-text-color: var(--token-0b05e5f5-bd5b-4fcf-8b0f-c4aa7f8a149c, #edff66); --framer-text-decoration: none; --framer-text-stroke-color: initial; --framer-text-stroke-width: initial; --framer-text-transform: uppercase; }\",\"@media (max-width: 1199px) and (min-width: 810px) { .framer-sSuX7 .framer-styles-preset-5ebu2v:not(.rich-text-wrapper), .framer-sSuX7 .framer-styles-preset-5ebu2v.rich-text-wrapper p { --framer-font-family: \\\"PP NeueBit Bold\\\", \\\"PP NeueBit Bold Placeholder\\\", sans-serif; --framer-font-open-type-features: 'blwf' on, 'cv03' on, 'cv04' on, 'cv09' on, 'cv11' on; --framer-font-size: 16px; --framer-font-style: normal; --framer-font-variation-axes: normal; --framer-font-weight: 700; --framer-letter-spacing: 0.055em; --framer-line-height: 1.2em; --framer-paragraph-spacing: 0px; --framer-text-alignment: start; --framer-text-color: var(--token-0b05e5f5-bd5b-4fcf-8b0f-c4aa7f8a149c, #edff66); --framer-text-decoration: none; --framer-text-stroke-color: initial; --framer-text-stroke-width: initial; --framer-text-transform: uppercase; } }\",\"@media (max-width: 809px) and (min-width: 0px) { .framer-sSuX7 .framer-styles-preset-5ebu2v:not(.rich-text-wrapper), .framer-sSuX7 .framer-styles-preset-5ebu2v.rich-text-wrapper p { --framer-font-family: \\\"PP NeueBit Bold\\\", \\\"PP NeueBit Bold Placeholder\\\", sans-serif; --framer-font-open-type-features: 'blwf' on, 'cv03' on, 'cv04' on, 'cv09' on, 'cv11' on; --framer-font-size: 14px; --framer-font-style: normal; --framer-font-variation-axes: normal; --framer-font-weight: 700; --framer-letter-spacing: 0.05em; --framer-line-height: 1.25em; --framer-paragraph-spacing: 0px; --framer-text-alignment: start; --framer-text-color: var(--token-0b05e5f5-bd5b-4fcf-8b0f-c4aa7f8a149c, #edff66); --framer-text-decoration: none; --framer-text-stroke-color: initial; --framer-text-stroke-width: initial; --framer-text-transform: uppercase; } }\"];export const className=\"framer-sSuX7\";\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 (0116799)\nimport{jsx as _jsx}from\"react/jsx-runtime\";import{addFonts,addPropertyControls,ControlType,cx,getFontsFromSharedStyle,Link,RichText,useComponentViewport,useLocaleInfo,useVariantState,withCSS}from\"framer\";import{LayoutGroup,motion,MotionConfigContext}from\"framer-motion\";import*as React from\"react\";import{useRef}from\"react\";import*as sharedStyle from\"https://framerusercontent.com/modules/SqMMIT9vcKLtv2JyC3W1/kZC1BuNfV5W3KW76rvQC/JAfRlDZX1.js\";const enabledGestures={If1ky5S8B:{hover:true,pressed:true},tMFiXHyWJ:{hover:true,pressed:true}};const cycleOrder=[\"tMFiXHyWJ\",\"If1ky5S8B\"];const serializationHash=\"framer-j8nv2\";const variantClassNames={If1ky5S8B:\"framer-v-o65y3n\",tMFiXHyWJ:\"framer-v-11ooikp\"};function addPropertyOverrides(overrides,...variants){const nextOverrides={};variants?.forEach(variant=>variant&&Object.assign(nextOverrides,overrides[variant]));return nextOverrides;}const HbFRaVRF5=undefined;const zLPXA8nod=undefined;const transition1={bounce:.2,delay:0,duration:.4,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 humanReadableVariantMap={primary:\"tMFiXHyWJ\",secondary:\"If1ky5S8B\"};const Variants=motion.create(React.Fragment);const getProps=({height,id,link,title,width,...props})=>{return{...props,HbFRaVRF5:link??props.HbFRaVRF5,variant:humanReadableVariantMap[props.variant]??props.variant??\"tMFiXHyWJ\",zLPXA8nod:title??props.zLPXA8nod??\"BOOK A CALL\"};};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,zLPXA8nod,HbFRaVRF5,...restProps}=getProps(props);const{baseVariant,classNames,clearLoadingGesture,gestureHandlers,gestureVariant,isLoading,setGestureState,setVariant,variants}=useVariantState({cycleOrder,defaultVariant:\"tMFiXHyWJ\",enabledGestures,ref:refBinding,variant,variantClassNames});const layoutDependency=createLayoutDependency(props,variants);const sharedStyleClassNames=[sharedStyle.className];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(Link,{href:HbFRaVRF5,motionChild:true,nodeId:\"tMFiXHyWJ\",openInNewTab:true,scopeId:\"gj1fg0_el\",children:/*#__PURE__*/_jsx(motion.a,{...restProps,...gestureHandlers,className:`${cx(scopingClassNames,\"framer-11ooikp\",className,classNames)} framer-1rfepqu`,\"data-framer-name\":\"primary\",layoutDependency:layoutDependency,layoutId:\"tMFiXHyWJ\",ref:refBinding,style:{\"--border-bottom-width\":\"0px\",\"--border-color\":\"rgba(0, 0, 0, 0)\",\"--border-left-width\":\"0px\",\"--border-right-width\":\"0px\",\"--border-style\":\"solid\",\"--border-top-width\":\"0px\",backgroundColor:\"var(--token-0b05e5f5-bd5b-4fcf-8b0f-c4aa7f8a149c, rgb(237, 255, 102))\",borderBottomLeftRadius:7,borderBottomRightRadius:7,borderTopLeftRadius:7,borderTopRightRadius:7,...style},variants:{\"If1ky5S8B-hover\":{backgroundColor:\"var(--token-43cee2a1-faf1-483d-b7c0-025b95869459, rgb(38, 38, 38))\"},\"If1ky5S8B-pressed\":{\"--border-color\":\"var(--token-b5b6e6db-a44f-4c2a-9352-12c634db62ce, rgb(64, 64, 64))\",backgroundColor:\"var(--token-43cee2a1-faf1-483d-b7c0-025b95869459, rgb(38, 38, 38))\"},\"tMFiXHyWJ-hover\":{\"--border-bottom-width\":\"0px\",\"--border-left-width\":\"0px\",\"--border-right-width\":\"0px\",\"--border-top-width\":\"0px\",backgroundColor:\"var(--token-d0a63875-6a8b-4c54-bb6a-6a10ec56154c, rgb(160, 173, 61))\"},\"tMFiXHyWJ-pressed\":{\"--border-bottom-width\":\"1px\",\"--border-color\":\"var(--token-0b05e5f5-bd5b-4fcf-8b0f-c4aa7f8a149c, rgb(237, 255, 102))\",\"--border-left-width\":\"1px\",\"--border-right-width\":\"1px\",\"--border-style\":\"solid\",\"--border-top-width\":\"1px\",backgroundColor:\"var(--token-d0a63875-6a8b-4c54-bb6a-6a10ec56154c, rgb(160, 173, 61))\"},If1ky5S8B:{\"--border-bottom-width\":\"1px\",\"--border-color\":\"var(--token-43cee2a1-faf1-483d-b7c0-025b95869459, rgb(38, 38, 38))\",\"--border-left-width\":\"1px\",\"--border-right-width\":\"1px\",\"--border-style\":\"solid\",\"--border-top-width\":\"1px\",backgroundColor:\"var(--token-ef96dc2c-4155-40d6-8b33-0d2856f1d1f0, rgb(23, 23, 23))\"}},...addPropertyOverrides({\"tMFiXHyWJ-pressed\":{\"data-border\":true},If1ky5S8B:{\"data-border\":true,\"data-framer-name\":\"secondary\"}},baseVariant,gestureVariant),children:/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{className:\"framer-styles-preset-5ebu2v\",\"data-styles-preset\":\"JAfRlDZX1\",dir:\"auto\",style:{\"--framer-text-color\":\"var(--extracted-r6o4lv, rgb(0, 0, 0))\"},children:\"BOOK A CALL\"})}),className:\"framer-a8h0m\",\"data-framer-name\":\"Request access\",fonts:[\"Inter\"],layoutDependency:layoutDependency,layoutId:\"nItoMigEm\",style:{\"--extracted-r6o4lv\":\"rgb(0, 0, 0)\",\"--framer-paragraph-spacing\":\"0px\"},text:zLPXA8nod,variants:{If1ky5S8B:{\"--extracted-r6o4lv\":\"var(--token-640420f3-88d8-4bb7-8bb6-65aec150fca2, rgb(255, 255, 255))\"}},verticalAlignment:\"top\",withExternalLayout:true,...addPropertyOverrides({If1ky5S8B:{children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{className:\"framer-styles-preset-5ebu2v\",\"data-styles-preset\":\"JAfRlDZX1\",dir:\"auto\",style:{\"--framer-text-color\":\"var(--extracted-r6o4lv, var(--token-640420f3-88d8-4bb7-8bb6-65aec150fca2, rgb(255, 255, 255)))\"},children:\"BOOK A CALL\"})})}},baseVariant,gestureVariant)})})})})})});});const css=[\".framer-j8nv2.framer-1rfepqu, .framer-j8nv2 .framer-1rfepqu { display: block; }\",\".framer-j8nv2.framer-11ooikp { align-content: center; align-items: center; cursor: pointer; display: flex; flex-direction: row; flex-wrap: nowrap; gap: 0px; height: min-content; justify-content: center; overflow: visible; padding: 14px 22px 14px 22px; position: relative; text-decoration: none; width: min-content; }\",\".framer-j8nv2 .framer-a8h0m { flex: none; height: auto; position: relative; white-space: pre; width: auto; }\",...sharedStyle.css,'.framer-j8nv2[data-border=\"true\"]::after, .framer-j8nv2 [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; corner-shape: inherit; pointer-events: none; }'];/**\n * This is a generated Framer component.\n * @framerIntrinsicHeight 47\n * @framerIntrinsicWidth 123.5\n * @framerCanvasComponentVariantDetails {\"propertyName\":\"variant\",\"data\":{\"default\":{\"layout\":[\"auto\",\"auto\"]},\"If1ky5S8B\":{\"layout\":[\"auto\",\"auto\"]},\"SmOK7HJMd\":{\"layout\":[\"auto\",\"auto\"]},\"DO4ytiRUt\":{\"layout\":[\"auto\",\"auto\"]},\"LO6k7QgeX\":{\"layout\":[\"auto\",\"auto\"]},\"lFuJwh84S\":{\"layout\":[\"auto\",\"auto\"]}}}\n * @framerVariables {\"zLPXA8nod\":\"title\",\"HbFRaVRF5\":\"link\"}\n * @framerImmutableVariables true\n * @framerDisplayContentsDiv false\n * @framerAutoSizeImages true\n * @framerComponentViewportWidth true\n * @framerColorSyntax true\n */const Framergj1fg0_el=withCSS(Component,css,\"framer-j8nv2\");export default Framergj1fg0_el;Framergj1fg0_el.displayName=\"Button-main\";Framergj1fg0_el.defaultProps={height:47,width:123.5};addPropertyControls(Framergj1fg0_el,{variant:{options:[\"tMFiXHyWJ\",\"If1ky5S8B\"],optionTitles:[\"primary\",\"secondary\"],title:\"Variant\",type:ControlType.Enum},zLPXA8nod:{defaultValue:\"BOOK A CALL\",displayTextArea:false,title:\"Title\",type:ControlType.String},onzLPXA8nodChange:{changes:\"zLPXA8nod\",type:ControlType.ChangeHandler},HbFRaVRF5:{title:\"Link\",type:ControlType.Link}});addFonts(Framergj1fg0_el,[{explicitInter:true,fonts:[{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",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\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116\",url:\"https://framerusercontent.com/assets/EOr0mi4hNtlgWNn9if640EZzXCo.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+1F00-1FFF\",url:\"https://framerusercontent.com/assets/Y9k9QrlZAqio88Klkmbd8VoMQc.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0370-03FF\",url:\"https://framerusercontent.com/assets/OYrD2tBIBPvoJXiIHnLoOXnY9M.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",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\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2070, U+2074-207E, U+2080-208E, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD\",url:\"https://framerusercontent.com/assets/GrgcKwrN6d3Uz8EwcLHZxwEfC4.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",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\"}]},...getFontsFromSharedStyle(sharedStyle.fonts)],{supportsExplicitInterCodegen:true});\nexport const __FramerMetadata__ = {\"exports\":{\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"default\":{\"type\":\"reactComponent\",\"name\":\"Framergj1fg0_el\",\"slots\":[],\"annotations\":{\"framerIntrinsicHeight\":\"47\",\"framerColorSyntax\":\"true\",\"framerImmutableVariables\":\"true\",\"framerComponentViewportWidth\":\"true\",\"framerCanvasComponentVariantDetails\":\"{\\\"propertyName\\\":\\\"variant\\\",\\\"data\\\":{\\\"default\\\":{\\\"layout\\\":[\\\"auto\\\",\\\"auto\\\"]},\\\"If1ky5S8B\\\":{\\\"layout\\\":[\\\"auto\\\",\\\"auto\\\"]},\\\"SmOK7HJMd\\\":{\\\"layout\\\":[\\\"auto\\\",\\\"auto\\\"]},\\\"DO4ytiRUt\\\":{\\\"layout\\\":[\\\"auto\\\",\\\"auto\\\"]},\\\"LO6k7QgeX\\\":{\\\"layout\\\":[\\\"auto\\\",\\\"auto\\\"]},\\\"lFuJwh84S\\\":{\\\"layout\\\":[\\\"auto\\\",\\\"auto\\\"]}}}\",\"framerDisplayContentsDiv\":\"false\",\"framerVariables\":\"{\\\"zLPXA8nod\\\":\\\"title\\\",\\\"HbFRaVRF5\\\":\\\"link\\\"}\",\"framerContractVersion\":\"1\",\"framerIntrinsicWidth\":\"123.5\",\"framerAutoSizeImages\":\"true\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// Generated by Framer (a44d8cf)\nimport{fontStore}from\"framer\";fontStore.loadFonts([]);export const fonts=[{explicitInter:true,fonts:[]}];export const css=[\".framer-FHJKU .framer-styles-preset-14ezheu:not(.rich-text-wrapper), .framer-FHJKU .framer-styles-preset-14ezheu.rich-text-wrapper a { --framer-link-text-color: #0099ff; }\"];export const className=\"framer-FHJKU\";\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 (0116799)\nimport{fontStore}from\"framer\";fontStore.loadFonts([\"CUSTOM;PP Mori Regular\"]);export const fonts=[{explicitInter:true,fonts:[{cssFamilyName:\"PP Mori Regular\",source:\"custom\",style:\"normal\",uiFamilyName:\"PP Mori\",url:\"https://framerusercontent.com/assets/AE9QGl3EikgcPbta4IZVlvWEZZo.woff2\",weight:\"400\"}]}];export const css=['.framer-Gipyx .framer-styles-preset-18j4xkt:not(.rich-text-wrapper), .framer-Gipyx .framer-styles-preset-18j4xkt.rich-text-wrapper p { --framer-font-family: \"PP Mori Regular\", \"PP Mori Regular Placeholder\", sans-serif; --framer-font-open-type-features: normal; --framer-font-size: 14px; --framer-font-style: normal; --framer-font-variation-axes: normal; --framer-font-weight: 400; --framer-letter-spacing: 0em; --framer-line-height: 1.5em; --framer-paragraph-spacing: 20px; --framer-text-alignment: start; --framer-text-color: var(--token-10fcfb6f-8e0a-4c07-8ee3-1d5062767fb8, #d4d4d4); --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-Gipyx .framer-styles-preset-18j4xkt:not(.rich-text-wrapper), .framer-Gipyx .framer-styles-preset-18j4xkt.rich-text-wrapper p { --framer-font-family: \"PP Mori Regular\", \"PP Mori Regular Placeholder\", sans-serif; --framer-font-open-type-features: normal; --framer-font-size: 13px; --framer-font-style: normal; --framer-font-variation-axes: normal; --framer-font-weight: 400; --framer-letter-spacing: 0em; --framer-line-height: 1.5em; --framer-paragraph-spacing: 20px; --framer-text-alignment: start; --framer-text-color: var(--token-10fcfb6f-8e0a-4c07-8ee3-1d5062767fb8, #d4d4d4); --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-Gipyx .framer-styles-preset-18j4xkt:not(.rich-text-wrapper), .framer-Gipyx .framer-styles-preset-18j4xkt.rich-text-wrapper p { --framer-font-family: \"PP Mori Regular\", \"PP Mori Regular Placeholder\", sans-serif; --framer-font-open-type-features: normal; --framer-font-size: 12px; --framer-font-style: normal; --framer-font-variation-axes: normal; --framer-font-weight: 400; --framer-letter-spacing: 0em; --framer-line-height: 1.5em; --framer-paragraph-spacing: 20px; --framer-text-alignment: start; --framer-text-color: var(--token-10fcfb6f-8e0a-4c07-8ee3-1d5062767fb8, #d4d4d4); --framer-text-decoration: none; --framer-text-stroke-color: initial; --framer-text-stroke-width: initial; --framer-text-transform: none; } }'];export const className=\"framer-Gipyx\";\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 (a44d8cf)\nimport{fontStore}from\"framer\";fontStore.loadFonts([]);export const fonts=[{explicitInter:true,fonts:[]}];export const css=[\".framer-63pEq .framer-styles-preset-1yzs0zv:not(.rich-text-wrapper), .framer-63pEq .framer-styles-preset-1yzs0zv.rich-text-wrapper table { border-bottom-left-radius: 8px; border-bottom-right-radius: 8px; border-color: rgba(153, 153, 153, 0.25); border-style: solid; border-top-left-radius: 8px; border-top-right-radius: 8px; border-width: 1px; overflow: hidden; }\",\".framer-63pEq .framer-styles-preset-1yzs0zv:not(.rich-text-wrapper) th, .framer-63pEq .framer-styles-preset-1yzs0zv.rich-text-wrapper table th, .framer-63pEq .framer-styles-preset-1yzs0zv:not(.rich-text-wrapper) td, .framer-63pEq .framer-styles-preset-1yzs0zv.rich-text-wrapper table td { padding: 10px; }\",\".framer-63pEq .framer-styles-preset-1yzs0zv:not(.rich-text-wrapper) th, .framer-63pEq .framer-styles-preset-1yzs0zv.rich-text-wrapper table th { background-color: rgba(153, 153, 153, 0.1); }\",\".framer-63pEq .framer-styles-preset-1yzs0zv:not(.rich-text-wrapper) tr + tr td, .framer-63pEq .framer-styles-preset-1yzs0zv:not(.rich-text-wrapper) tr + tr th, .framer-63pEq .framer-styles-preset-1yzs0zv.rich-text-wrapper table tr + tr td, .framer-63pEq .framer-styles-preset-1yzs0zv.rich-text-wrapper table tr + tr th { border-top-color: rgba(153, 153, 153, 0.25); border-top-style: solid; border-top-width: 1px; }\",\".framer-63pEq .framer-styles-preset-1yzs0zv:not(.rich-text-wrapper) td + td, .framer-63pEq .framer-styles-preset-1yzs0zv:not(.rich-text-wrapper) th + th, .framer-63pEq .framer-styles-preset-1yzs0zv:not(.rich-text-wrapper) td + th, .framer-63pEq .framer-styles-preset-1yzs0zv:not(.rich-text-wrapper) th + td, .framer-63pEq .framer-styles-preset-1yzs0zv.rich-text-wrapper table td + td, .framer-63pEq .framer-styles-preset-1yzs0zv.rich-text-wrapper table th + th, .framer-63pEq .framer-styles-preset-1yzs0zv.rich-text-wrapper table td + th, .framer-63pEq .framer-styles-preset-1yzs0zv.rich-text-wrapper table th + td { border-left-color: rgba(153, 153, 153, 0.25); border-left-style: solid; border-left-width: 1px; }\"];export const className=\"framer-63pEq\";\nexport const __FramerMetadata__ = {\"exports\":{\"className\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"fonts\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"css\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// Generated by Framer (e0ec254)\nimport{fontStore}from\"framer\";fontStore.loadFonts([\"CUSTOM;PP Right Grotesk Wide Medium\"]);export const fonts=[{explicitInter:true,fonts:[{family:\"PP Right Grotesk Wide Medium\",source:\"custom\",url:\"https://framerusercontent.com/assets/MfNZZ4KOxCSKFiD4ia28iJnlOEY.woff2\"}]}];export const css=[\".framer-nUmQj .framer-styles-preset-l0p7dj:not(.rich-text-wrapper), .framer-nUmQj .framer-styles-preset-l0p7dj.rich-text-wrapper h6 { --framer-font-family: \\\"PP Right Grotesk Wide Medium\\\", \\\"PP Right Grotesk Wide Medium Placeholder\\\", sans-serif; --framer-font-open-type-features: 'blwf' on, 'cv09' on, 'cv03' on, 'cv04' on, 'cv11' on; --framer-font-size: 16px; --framer-font-style: normal; --framer-font-variation-axes: normal; --framer-font-weight: 400; --framer-letter-spacing: -0.02em; --framer-line-height: 1.4em; --framer-paragraph-spacing: 40px; --framer-text-alignment: start; --framer-text-color: #ffffff; --framer-text-decoration: none; --framer-text-stroke-color: initial; --framer-text-stroke-width: initial; --framer-text-transform: uppercase; }\"];export const className=\"framer-nUmQj\";\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 (a44d8cf)\nimport{fontStore}from\"framer\";fontStore.loadFonts([\"GF;Fragment Mono-regular\"]);export const fonts=[{explicitInter:true,fonts:[{family:\"Fragment Mono\",source:\"google\",style:\"normal\",url:\"https://fonts.gstatic.com/s/fragmentmono/v5/4iCr6K5wfMRRjxp0DA6-2CLnN4FNh4UI_1U.woff2\",weight:\"400\"}]}];export const css=['.framer-1sCDA .framer-styles-preset-mayfem:not(.rich-text-wrapper), .framer-1sCDA .framer-styles-preset-mayfem.rich-text-wrapper code { --framer-code-font-family: \"Fragment Mono\", monospace; --framer-code-font-style: normal; --framer-code-font-weight: 400; --framer-code-text-color: #333; --framer-font-size-scale: 1; background-color: rgba(0, 0, 0, 0.1); border-bottom-left-radius: 6px; border-bottom-right-radius: 6px; border-top-left-radius: 6px; border-top-right-radius: 6px; padding-bottom: 0.1em; padding-left: 0.2em; padding-right: 0.2em; padding-top: 0.1em; }'];export const className=\"framer-1sCDA\";\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 (39331b4)\nimport{fontStore}from\"framer\";fontStore.loadFonts([\"CUSTOMV2;PP Right Grotesk Medium\",\"CUSTOMV2;PP Right Grotesk Compact Dark\"]);export const fonts=[{explicitInter:true,fonts:[{cssFamilyName:\"PP Right Grotesk Medium\",source:\"custom\",style:\"normal\",uiFamilyName:\"PP Right Grotesk\",url:\"https://framerusercontent.com/assets/2U88UW5HhR6M2A12LG6GPpDMMQI.woff2\",weight:\"500\"},{cssFamilyName:\"PP Right Grotesk Compact Dark\",source:\"custom\",style:\"normal\",uiFamilyName:\"PP Right Grotesk\",url:\"https://framerusercontent.com/assets/MCsGYC4nzIhUPFZcPpY9pBD50.woff2\",weight:\"800\"}]}];export const css=[\".framer-cAFHo .framer-styles-preset-1k7qxxi:not(.rich-text-wrapper), .framer-cAFHo .framer-styles-preset-1k7qxxi.rich-text-wrapper h2 { --framer-font-family: \\\"PP Right Grotesk Medium\\\", \\\"PP Right Grotesk Medium Placeholder\\\", sans-serif; --framer-font-family-bold: \\\"PP Right Grotesk Compact Dark\\\", \\\"PP Right Grotesk Compact Dark Placeholder\\\", sans-serif; --framer-font-open-type-features: 'blwf' on, 'cv09' on, 'cv03' on, 'cv04' on, 'cv11' on; --framer-font-size: 30px; --framer-font-style: normal; --framer-font-style-bold: normal; --framer-font-variation-axes: normal; --framer-font-weight: 500; --framer-font-weight-bold: 800; --framer-letter-spacing: -0.04em; --framer-line-height: 1.3em; --framer-paragraph-spacing: 40px; --framer-text-alignment: start; --framer-text-color: #ffffff; --framer-text-decoration: none; --framer-text-stroke-color: initial; --framer-text-stroke-width: initial; --framer-text-transform: none; }\"];export const className=\"framer-cAFHo\";\nexport const __FramerMetadata__ = {\"exports\":{\"css\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"fonts\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"className\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// Generated by Framer (e1541bb)\nimport{fontStore}from\"framer\";fontStore.loadFonts([\"CUSTOM;PP Right Grotesk Wide Medium\"]);export const fonts=[{explicitInter:true,fonts:[{cssFamilyName:\"PP Right Grotesk Wide Medium\",source:\"custom\",style:\"normal\",uiFamilyName:\"PP Right Grotesk\",url:\"https://framerusercontent.com/assets/MfNZZ4KOxCSKFiD4ia28iJnlOEY.woff2\",weight:\"500\"}]}];export const css=[\".framer-pfO60 .framer-styles-preset-19nd4yt:not(.rich-text-wrapper), .framer-pfO60 .framer-styles-preset-19nd4yt.rich-text-wrapper h4 { --framer-font-family: \\\"PP Right Grotesk Wide Medium\\\", \\\"PP Right Grotesk Wide Medium Placeholder\\\", sans-serif; --framer-font-open-type-features: 'blwf' on, 'cv09' on, 'cv03' on, 'cv04' on, 'cv11' on; --framer-font-size: 22px; --framer-font-style: normal; --framer-font-variation-axes: normal; --framer-font-weight: 500; --framer-letter-spacing: -0.04em; --framer-line-height: 1.4em; --framer-paragraph-spacing: 40px; --framer-text-alignment: start; --framer-text-color: #ffffff; --framer-text-decoration: none; --framer-text-stroke-color: initial; --framer-text-stroke-width: initial; --framer-text-transform: none; }\"];export const className=\"framer-pfO60\";\nexport const __FramerMetadata__ = {\"exports\":{\"css\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"fonts\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"className\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// Generated by Framer (e0ec254)\nimport{fontStore}from\"framer\";fontStore.loadFonts([\"CUSTOM;PP Right Grotesk Wide Medium\"]);export const fonts=[{explicitInter:true,fonts:[{family:\"PP Right Grotesk Wide Medium\",source:\"custom\",url:\"https://framerusercontent.com/assets/MfNZZ4KOxCSKFiD4ia28iJnlOEY.woff2\"}]}];export const css=[\".framer-YlAsc .framer-styles-preset-sbrcte:not(.rich-text-wrapper), .framer-YlAsc .framer-styles-preset-sbrcte.rich-text-wrapper h5 { --framer-font-family: \\\"PP Right Grotesk Wide Medium\\\", \\\"PP Right Grotesk Wide Medium Placeholder\\\", sans-serif; --framer-font-open-type-features: 'blwf' on, 'cv09' on, 'cv03' on, 'cv04' on, 'cv11' on; --framer-font-size: 18px; --framer-font-style: normal; --framer-font-variation-axes: normal; --framer-font-weight: 400; --framer-letter-spacing: -0.04em; --framer-line-height: 1.4em; --framer-paragraph-spacing: 40px; --framer-text-alignment: start; --framer-text-color: #ffffff; --framer-text-decoration: none; --framer-text-stroke-color: initial; --framer-text-stroke-width: initial; --framer-text-transform: none; }\"];export const className=\"framer-YlAsc\";\nexport const __FramerMetadata__ = {\"exports\":{\"className\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"fonts\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"css\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// Generated by Framer (e0ec254)\nimport{fontStore}from\"framer\";fontStore.loadFonts([\"CUSTOM;PP Right Grotesk Wide Medium\"]);export const fonts=[{explicitInter:true,fonts:[{family:\"PP Right Grotesk Wide Medium\",source:\"custom\",url:\"https://framerusercontent.com/assets/MfNZZ4KOxCSKFiD4ia28iJnlOEY.woff2\"}]}];export const css=[\".framer-awjKQ .framer-styles-preset-gddh7:not(.rich-text-wrapper), .framer-awjKQ .framer-styles-preset-gddh7.rich-text-wrapper h3 { --framer-font-family: \\\"PP Right Grotesk Wide Medium\\\", \\\"PP Right Grotesk Wide Medium Placeholder\\\", sans-serif; --framer-font-open-type-features: 'blwf' on, 'cv09' on, 'cv03' on, 'cv04' on, 'cv11' on; --framer-font-size: 26px; --framer-font-style: normal; --framer-font-variation-axes: normal; --framer-font-weight: 400; --framer-letter-spacing: -0.04em; --framer-line-height: 1.4em; --framer-paragraph-spacing: 40px; --framer-text-alignment: start; --framer-text-color: #ffffff; --framer-text-decoration: none; --framer-text-stroke-color: initial; --framer-text-stroke-width: initial; --framer-text-transform: none; }\"];export const className=\"framer-awjKQ\";\nexport const __FramerMetadata__ = {\"exports\":{\"css\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"fonts\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"className\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// Generated by Framer (bee8ea6)\nimport{fontStore}from\"framer\";fontStore.loadFonts([\"CUSTOMV2;PP Right Grotesk Medium\",\"CUSTOMV2;PP Right Grotesk Compact Dark\"]);export const fonts=[{explicitInter:true,fonts:[{cssFamilyName:\"PP Right Grotesk Medium\",source:\"custom\",style:\"normal\",uiFamilyName:\"PP Right Grotesk\",url:\"https://framerusercontent.com/assets/2U88UW5HhR6M2A12LG6GPpDMMQI.woff2\",weight:\"500\"},{cssFamilyName:\"PP Right Grotesk Compact Dark\",source:\"custom\",style:\"normal\",uiFamilyName:\"PP Right Grotesk\",url:\"https://framerusercontent.com/assets/MCsGYC4nzIhUPFZcPpY9pBD50.woff2\",weight:\"800\"}]}];export const css=[\".framer-45oEV .framer-styles-preset-1wln86d:not(.rich-text-wrapper), .framer-45oEV .framer-styles-preset-1wln86d.rich-text-wrapper h1 { --framer-font-family: \\\"PP Right Grotesk Medium\\\", \\\"PP Right Grotesk Medium Placeholder\\\", sans-serif; --framer-font-family-bold: \\\"PP Right Grotesk Compact Dark\\\", \\\"PP Right Grotesk Compact Dark Placeholder\\\", sans-serif; --framer-font-open-type-features: 'blwf' on, 'cv09' on, 'cv03' on, 'cv04' on, 'cv11' on; --framer-font-size: 70px; --framer-font-style: normal; --framer-font-style-bold: normal; --framer-font-variation-axes: normal; --framer-font-weight: 500; --framer-font-weight-bold: 800; --framer-letter-spacing: -0.04em; --framer-line-height: 1.1em; --framer-paragraph-spacing: 0px; --framer-text-alignment: start; --framer-text-color: #ffffff; --framer-text-decoration: none; --framer-text-stroke-color: initial; --framer-text-stroke-width: initial; --framer-text-transform: uppercase; }\",\"@media (max-width: 1199px) and (min-width: 810px) { .framer-45oEV .framer-styles-preset-1wln86d:not(.rich-text-wrapper), .framer-45oEV .framer-styles-preset-1wln86d.rich-text-wrapper h1 { --framer-font-family: \\\"PP Right Grotesk Medium\\\", \\\"PP Right Grotesk Medium Placeholder\\\", sans-serif; --framer-font-family-bold: \\\"PP Right Grotesk Compact Dark\\\", \\\"PP Right Grotesk Compact Dark Placeholder\\\", sans-serif; --framer-font-open-type-features: 'blwf' on, 'cv09' on, 'cv03' on, 'cv04' on, 'cv11' on; --framer-font-size: 52px; --framer-font-style: normal; --framer-font-style-bold: normal; --framer-font-variation-axes: normal; --framer-font-weight: 500; --framer-font-weight-bold: 800; --framer-letter-spacing: -0.04em; --framer-line-height: 1.1em; --framer-paragraph-spacing: 0px; --framer-text-alignment: start; --framer-text-color: #ffffff; --framer-text-decoration: none; --framer-text-stroke-color: initial; --framer-text-stroke-width: initial; --framer-text-transform: uppercase; } }\",\"@media (max-width: 809px) and (min-width: 0px) { .framer-45oEV .framer-styles-preset-1wln86d:not(.rich-text-wrapper), .framer-45oEV .framer-styles-preset-1wln86d.rich-text-wrapper h1 { --framer-font-family: \\\"PP Right Grotesk Medium\\\", \\\"PP Right Grotesk Medium Placeholder\\\", sans-serif; --framer-font-family-bold: \\\"PP Right Grotesk Compact Dark\\\", \\\"PP Right Grotesk Compact Dark Placeholder\\\", sans-serif; --framer-font-open-type-features: 'blwf' on, 'cv09' on, 'cv03' on, 'cv04' on, 'cv11' on; --framer-font-size: 36px; --framer-font-style: normal; --framer-font-style-bold: normal; --framer-font-variation-axes: normal; --framer-font-weight: 500; --framer-font-weight-bold: 800; --framer-letter-spacing: -0.04em; --framer-line-height: 1.1em; --framer-paragraph-spacing: 0px; --framer-text-alignment: start; --framer-text-color: #ffffff; --framer-text-decoration: none; --framer-text-stroke-color: initial; --framer-text-stroke-width: initial; --framer-text-transform: uppercase; } }\"];export const className=\"framer-45oEV\";\nexport const __FramerMetadata__ = {\"exports\":{\"className\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"fonts\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"css\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// Generated by Framer (e1541bb)\nimport{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{addFonts,addPropertyControls,ControlType,cx,getFontsFromSharedStyle,getLoadingLazyAtYPosition,Image as Image1,RichText,useComponentViewport,useLocaleInfo,useVariantState,withCSS}from\"framer\";import{LayoutGroup,motion,MotionConfigContext}from\"framer-motion\";import*as React from\"react\";import{useRef}from\"react\";import*as sharedStyle8 from\"https://framerusercontent.com/modules/e2P8s2lW5xsjZCf1O0N5/gPIiVVWRqVP2Pf3YYfP3/DgmabudDx.js\";import*as sharedStyle7 from\"https://framerusercontent.com/modules/bhGiMl1kpZLlBncGZ0mN/ok2ZohElKb7Fpk1NdnYF/i9K2DYagJ.js\";import*as sharedStyle from\"https://framerusercontent.com/modules/SqMMIT9vcKLtv2JyC3W1/kZC1BuNfV5W3KW76rvQC/JAfRlDZX1.js\";import*as sharedStyle9 from\"https://framerusercontent.com/modules/vJCSIjnBg9UZvedHH8rB/5mbY4BP7BQLayZFXzCJr/KMg_8bZHW.js\";import*as sharedStyle6 from\"https://framerusercontent.com/modules/BWUtSq4Xy5QZQyOvTVqc/6xzEgjpYzKZKicIhgcRC/MSLq_PKiS.js\";import*as sharedStyle10 from\"https://framerusercontent.com/modules/5QPZ5L0pqgxX8SGkE977/DLxK9iRVw6pSBfTl6mTF/o36zRVAxk.js\";import*as sharedStyle1 from\"https://framerusercontent.com/modules/VYwT8Q5tbV3knUVmfvZ0/fRQDuhta1ZTR6ZzSisln/oPcNbSwuU.js\";import*as sharedStyle4 from\"https://framerusercontent.com/modules/VbX1nwc6Ei6hM5s3U7pE/4IMstBiFywLAM7LXnERI/t563EZKDK.js\";import*as sharedStyle5 from\"https://framerusercontent.com/modules/1UYrSoxn7VBruS86MEFO/S7Jx5MyDCpo6OiEGG168/uPcam4Epu.js\";import*as sharedStyle3 from\"https://framerusercontent.com/modules/j2hmyMNxviwsfWIqVDoK/EMOUfAB0VScQoEHXQLVf/wC26JUOyg.js\";import*as sharedStyle2 from\"https://framerusercontent.com/modules/ZzPYrsvRQn5afj9Q7e2D/xoDX3JGL35NVbpFtdbLG/ZAi46TVi4.js\";const serializationHash=\"framer-4JVlc\";const variantClassNames={U5o_t5hBy:\"framer-v-h7ad9e\"};function addPropertyOverrides(overrides,...variants){const nextOverrides={};variants?.forEach(variant=>variant&&Object.assign(nextOverrides,overrides[variant]));return nextOverrides;}const OzXRhyx5H=undefined;const olb_Q0q6I=undefined;const I0LZ6qrpy=undefined;const pslnzNlAh=undefined;const aHUUZQ0qr=undefined;const Vm9woFs6I_CTBXSZh3CyV17vmfiQ=undefined;const transition1={bounce:.2,delay:0,duration:.4,type:\"spring\"};const toResponsiveImage=value=>{if(typeof value===\"object\"&&value!==null&&typeof value.src===\"string\"){return value;}return typeof value===\"string\"?{src:value}:undefined;};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 getProps=({caseStudyDescription,categoryTagline,coverImage,height,id,title,width,year,...props})=>{return{...props,aHUUZQ0qr:caseStudyDescription??props.aHUUZQ0qr??/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{children:\"Content\"})}),I0LZ6qrpy:year??props.I0LZ6qrpy??\"2026\",olb_Q0q6I:categoryTagline??props.olb_Q0q6I??\"Aviator Crash by Aviator Studio\",OzXRhyx5H:coverImage??props.OzXRhyx5H,pslnzNlAh:title??props.pslnzNlAh??\"Aviator Crash\"};};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,OzXRhyx5H,olb_Q0q6I,I0LZ6qrpy,pslnzNlAh,aHUUZQ0qr,...restProps}=getProps(props);const{baseVariant,classNames,clearLoadingGesture,gestureHandlers,gestureVariant,isLoading,setGestureState,setVariant,variants}=useVariantState({defaultVariant:\"U5o_t5hBy\",ref:refBinding,variant,variantClassNames});const layoutDependency=createLayoutDependency(props,variants);const sharedStyleClassNames=[sharedStyle.className,sharedStyle1.className,sharedStyle2.className,sharedStyle3.className,sharedStyle4.className,sharedStyle5.className,sharedStyle6.className,sharedStyle7.className,sharedStyle8.className,sharedStyle9.className,sharedStyle10.className];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__*/_jsxs(motion.div,{...restProps,...gestureHandlers,className:cx(scopingClassNames,\"framer-h7ad9e\",className,classNames),\"data-framer-name\":\"Variant 1\",layoutDependency:layoutDependency,layoutId:\"U5o_t5hBy\",ref:refBinding,style:{backgroundColor:\"rgb(0, 0, 0)\",...style},children:[/*#__PURE__*/_jsx(Image1,{background:{alt:\"\",fit:\"fit\",loading:getLoadingLazyAtYPosition((componentViewport?.y||0)+0),sizes:`max(min(${componentViewport?.width||\"100vw\"}, 680px), 80px)`,...toResponsiveImage(OzXRhyx5H),...{positionX:\"center\",positionY:\"center\"}},className:\"framer-2cgwr6\",\"data-border\":true,fitImageDimension:\"height\",layoutDependency:layoutDependency,layoutId:\"vmzbYyvpi\",style:{\"--border-bottom-width\":\"1px\",\"--border-color\":\"var(--token-43cee2a1-faf1-483d-b7c0-025b95869459, rgb(38, 38, 38))\",\"--border-left-width\":\"1px\",\"--border-right-width\":\"1px\",\"--border-style\":\"solid\",\"--border-top-width\":\"1px\",borderBottomLeftRadius:10,borderBottomRightRadius:10,borderTopLeftRadius:10,borderTopRightRadius:10},children:/*#__PURE__*/_jsx(Image1,{background:{alt:\"\",fit:\"fill\",loading:getLoadingLazyAtYPosition((componentViewport?.y||0)+0+-422),sizes:\"1px\",...toResponsiveImage(Vm9woFs6I_CTBXSZh3CyV17vmfiQ)},className:\"framer-1gok5hj\",\"data-framer-name\":\"CMS Cover Image\",layoutDependency:layoutDependency,layoutId:\"S_17uFo5x\"})}),/*#__PURE__*/_jsxs(motion.div,{className:\"framer-shkidl\",\"data-framer-name\":\"Frame 3\",layoutDependency:layoutDependency,layoutId:\"D8uDjsDzG\",children:[/*#__PURE__*/_jsxs(motion.div,{className:\"framer-8w08m5\",layoutDependency:layoutDependency,layoutId:\"DfspzASkL\",children:[/*#__PURE__*/_jsxs(motion.div,{className:\"framer-duyhlx\",\"data-framer-name\":\"label\",layoutDependency:layoutDependency,layoutId:\"PB3Kny_SB\",children:[/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{className:\"framer-styles-preset-5ebu2v\",\"data-styles-preset\":\"JAfRlDZX1\",dir:\"auto\",children:\"Aviator Crash by Aviator Studio\"})}),className:\"framer-cu49wl\",\"data-framer-name\":\"DESIGN OPS FOR IGAMING OPERATORS\",fonts:[\"Inter\"],layoutDependency:layoutDependency,layoutId:\"s_J7bDTaW\",style:{\"--framer-paragraph-spacing\":\"0px\"},text:olb_Q0q6I,verticalAlignment:\"top\",withExternalLayout:true}),/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{className:\"framer-styles-preset-5ebu2v\",\"data-styles-preset\":\"JAfRlDZX1\",dir:\"auto\",children:\"2026\"})}),className:\"framer-109fdi3\",\"data-framer-name\":\"Client and Year\",fonts:[\"Inter\"],layoutDependency:layoutDependency,layoutId:\"NB9ISrAgB\",text:I0LZ6qrpy,verticalAlignment:\"top\",withExternalLayout:true})]}),/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.h2,{className:\"framer-styles-preset-1k7qxxi\",\"data-styles-preset\":\"oPcNbSwuU\",dir:\"auto\",style:{\"--framer-text-alignment\":\"start\"},children:\"Title\"})}),className:\"framer-htpby7\",\"data-framer-name\":\"The design partner for iGaming companies moving from ambition to market leadership.\",fonts:[\"Inter\"],layoutDependency:layoutDependency,layoutId:\"Og2vteH_v\",style:{\"--framer-paragraph-spacing\":\"0px\"},text:pslnzNlAh,verticalAlignment:\"top\",withExternalLayout:true})]}),/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:aHUUZQ0qr,className:\"framer-8y6nt5\",\"data-framer-name\":\"We align brand, platform and game experience under one creative direction—helping operators, platforms and game studios launch stronger and scale without fragmented design.\",fonts:[\"Inter\"],layoutDependency:layoutDependency,layoutId:\"f2b5oIkhU\",style:{\"--framer-paragraph-spacing\":\"0px\"},stylesPresetsClassNames:{a:\"framer-styles-preset-14ezheu\",code:\"framer-styles-preset-mayfem\",h1:\"framer-styles-preset-1wln86d\",h2:\"framer-styles-preset-1k7qxxi\",h3:\"framer-styles-preset-gddh7\",h4:\"framer-styles-preset-19nd4yt\",h5:\"framer-styles-preset-sbrcte\",h6:\"framer-styles-preset-l0p7dj\",p:\"framer-styles-preset-18j4xkt\",table:\"framer-styles-preset-1yzs0zv\"},verticalAlignment:\"top\",withExternalLayout:true})]})]})})})});});const css=[\".framer-4JVlc.framer-1tpvryv, .framer-4JVlc .framer-1tpvryv { display: block; }\",\".framer-4JVlc.framer-h7ad9e { align-content: flex-start; align-items: flex-start; display: flex; flex-direction: row; flex-wrap: wrap; gap: 32px; height: min-content; justify-content: flex-start; overflow: var(--overflow-clip-fallback, clip); padding: 0px; position: relative; width: 769px; }\",\".framer-4JVlc .framer-2cgwr6 { align-content: flex-start; align-items: flex-start; display: flex; flex: 1 0 0px; flex-direction: column; flex-wrap: nowrap; gap: 0px; height: auto; justify-content: flex-start; max-width: 680px; min-width: 80px; overflow: visible; padding: 0px; position: relative; width: 1px; }\",\".framer-4JVlc .framer-1gok5hj { flex: none; height: 1px; overflow: hidden; position: absolute; right: -225px; top: -422px; width: 1px; will-change: var(--framer-will-change-filter-override, filter); }\",\".framer-4JVlc .framer-shkidl { align-content: flex-start; align-items: flex-start; align-self: stretch; display: flex; flex: 1 0 0px; flex-direction: column; flex-wrap: nowrap; height: auto; justify-content: space-between; min-width: 336px; overflow: visible; padding: 0px; position: relative; width: 1px; }\",\".framer-4JVlc .framer-8w08m5 { align-content: flex-start; align-items: flex-start; display: flex; flex: none; flex-direction: column; flex-wrap: nowrap; height: min-content; justify-content: space-between; overflow: var(--overflow-clip-fallback, clip); padding: 0px; position: relative; width: 100%; }\",\".framer-4JVlc .framer-duyhlx { align-content: center; align-items: center; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; gap: 10px; height: min-content; justify-content: flex-start; overflow: visible; padding: 0px; position: relative; width: min-content; }\",\".framer-4JVlc .framer-cu49wl { flex: none; height: auto; position: relative; white-space: pre; width: auto; }\",\".framer-4JVlc .framer-109fdi3 { flex: none; height: auto; min-width: 120px; position: relative; white-space: pre; width: auto; }\",\".framer-4JVlc .framer-htpby7 { flex: none; height: auto; position: relative; white-space: pre-wrap; width: 100%; word-break: break-word; word-wrap: break-word; }\",\".framer-4JVlc .framer-8y6nt5 { flex: none; height: auto; min-height: 24px; position: relative; white-space: pre-wrap; width: 100%; word-break: break-word; word-wrap: break-word; }\",...sharedStyle.css,...sharedStyle1.css,...sharedStyle2.css,...sharedStyle3.css,...sharedStyle4.css,...sharedStyle5.css,...sharedStyle6.css,...sharedStyle7.css,...sharedStyle8.css,...sharedStyle9.css,...sharedStyle10.css,'.framer-4JVlc[data-border=\"true\"]::after, .framer-4JVlc [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; corner-shape: inherit; pointer-events: none; }'];/**\n * This is a generated Framer component.\n * @framerIntrinsicHeight 260\n * @framerIntrinsicWidth 769\n * @framerCanvasComponentVariantDetails {\"propertyName\":\"variant\",\"data\":{\"default\":{\"layout\":[\"fixed\",\"auto\"]}}}\n * @framerVariables {\"OzXRhyx5H\":\"coverImage\",\"olb_Q0q6I\":\"categoryTagline\",\"I0LZ6qrpy\":\"year\",\"pslnzNlAh\":\"title\",\"aHUUZQ0qr\":\"caseStudyDescription\"}\n * @framerImmutableVariables true\n * @framerDisplayContentsDiv false\n * @framerAutoSizeImages true\n * @framerComponentViewportWidth true\n * @framerColorSyntax true\n */const FramerlXR4W_c3T=withCSS(Component,css,\"framer-4JVlc\");export default FramerlXR4W_c3T;FramerlXR4W_c3T.displayName=\"project-list 2\";FramerlXR4W_c3T.defaultProps={height:260,width:769};addPropertyControls(FramerlXR4W_c3T,{OzXRhyx5H:{title:\"Cover Image\",type:ControlType.ResponsiveImage},olb_Q0q6I:{defaultValue:\"Aviator Crash by Aviator Studio\",title:\"Category Tagline\",type:ControlType.String},onolb_Q0q6IChange:{changes:\"olb_Q0q6I\",type:ControlType.ChangeHandler},I0LZ6qrpy:{defaultValue:\"2026\",title:\"Year\",type:ControlType.String},onI0LZ6qrpyChange:{changes:\"I0LZ6qrpy\",type:ControlType.ChangeHandler},pslnzNlAh:{defaultValue:\"Aviator Crash\",title:\"Title\",type:ControlType.String},onpslnzNlAhChange:{changes:\"pslnzNlAh\",type:ControlType.ChangeHandler},aHUUZQ0qr:{defaultValue:\"<p>Content</p>\",title:\"Case Study Description\",type:ControlType.RichText}});addFonts(FramerlXR4W_c3T,[{explicitInter:true,fonts:[{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",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\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116\",url:\"https://framerusercontent.com/assets/EOr0mi4hNtlgWNn9if640EZzXCo.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+1F00-1FFF\",url:\"https://framerusercontent.com/assets/Y9k9QrlZAqio88Klkmbd8VoMQc.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0370-03FF\",url:\"https://framerusercontent.com/assets/OYrD2tBIBPvoJXiIHnLoOXnY9M.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",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\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2070, U+2074-207E, U+2080-208E, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD\",url:\"https://framerusercontent.com/assets/GrgcKwrN6d3Uz8EwcLHZxwEfC4.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",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\"}]},...getFontsFromSharedStyle(sharedStyle.fonts),...getFontsFromSharedStyle(sharedStyle1.fonts),...getFontsFromSharedStyle(sharedStyle2.fonts),...getFontsFromSharedStyle(sharedStyle3.fonts),...getFontsFromSharedStyle(sharedStyle4.fonts),...getFontsFromSharedStyle(sharedStyle5.fonts),...getFontsFromSharedStyle(sharedStyle6.fonts),...getFontsFromSharedStyle(sharedStyle7.fonts),...getFontsFromSharedStyle(sharedStyle8.fonts),...getFontsFromSharedStyle(sharedStyle9.fonts),...getFontsFromSharedStyle(sharedStyle10.fonts)],{supportsExplicitInterCodegen:true});\nexport const __FramerMetadata__ = {\"exports\":{\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"default\":{\"type\":\"reactComponent\",\"name\":\"FramerlXR4W_c3T\",\"slots\":[],\"annotations\":{\"framerIntrinsicWidth\":\"769\",\"framerCanvasComponentVariantDetails\":\"{\\\"propertyName\\\":\\\"variant\\\",\\\"data\\\":{\\\"default\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"auto\\\"]}}}\",\"framerVariables\":\"{\\\"OzXRhyx5H\\\":\\\"coverImage\\\",\\\"olb_Q0q6I\\\":\\\"categoryTagline\\\",\\\"I0LZ6qrpy\\\":\\\"year\\\",\\\"pslnzNlAh\\\":\\\"title\\\",\\\"aHUUZQ0qr\\\":\\\"caseStudyDescription\\\"}\",\"framerColorSyntax\":\"true\",\"framerImmutableVariables\":\"true\",\"framerContractVersion\":\"1\",\"framerComponentViewportWidth\":\"true\",\"framerDisplayContentsDiv\":\"false\",\"framerIntrinsicHeight\":\"260\",\"framerAutoSizeImages\":\"true\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","import{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{motion}from\"framer-motion\";import*as React from\"react\";export const v0=\"ADRESĂ DE EMAIL\";export const v1=\"Nume complet\";export const v2=\"COMPANIE\";export const v3=\"URL LINKEDIN\";export const v4=\"WEBSITE\";export const v5=/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsxs(motion.p,{dir:\"auto\",style:{\"--font-selector\":\"Q1VTVE9NO1BQIE5ldWVCaXQgQm9sZA==\",\"--framer-font-family\":'\"PP NeueBit Bold\", \"PP NeueBit Bold Placeholder\", sans-serif',\"--framer-font-weight\":\"700\",\"--framer-text-alignment\":\"left\",\"--framer-text-color\":\"var(--extracted-r6o4lv, rgb(226, 248, 108))\",\"--framer-text-transform\":\"uppercase\"},children:[\"Mulțumim pentru solicitarea dumneavoastră! \",/*#__PURE__*/_jsx(motion.br,{}),\"Vă vom trimite \\xeen cur\\xe2nd pachetul Cubicle pe email.\"]})});\nexport const __FramerMetadata__ = {\"exports\":{\"v4\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"v0\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"v3\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"v1\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"v5\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"v2\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// Generated by Framer (cbe5bfb)\nimport*as localizedValues from\"./rbymmAw6a-0.js\";const valuesByLocaleId={AqDalB09P:localizedValues};export default function getLocalizedValue(key,locale){while(locale){const values=valuesByLocaleId[locale.id];if(values){const value=values[key];if(value)return value;}locale=locale.fallback;}}\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","/*\n * index (framer/default-utils@0.45.0)\n *\n * Learn More: https://www.framer.com/asset-urls\n */\n\nexport * from \"https://framerusercontent.com/modules/G4IfyjvwmaeSBpdb4TWu/OIjZRBmWDcIE2B6qgG1j/index.js\"\n","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","/*\n * useAutoMotionValue (framer/useAutoMotionValue@0.3.0)\n *\n * Learn More: https://www.framer.com/asset-urls\n */\n\nexport * from \"https://framerusercontent.com/modules/kNDwabfjDEb3vUxkQlZS/V4SPg9g59hF1vFH3ZTF0/useAutoMotionValue.js\"\n","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://misc.framerstatic.com/lottie/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===\"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 _animationInfo_current_animation,_animationInfo_current;return(_animationInfo_current=animationInfo.current)===null||_animationInfo_current===void 0?void 0:(_animationInfo_current_animation=_animationInfo_current.animation)===null||_animationInfo_current_animation===void 0?void 0:_animationInfo_current_animation.play();};const pause=()=>{var _animationInfo_current_animation,_animationInfo_current;return(_animationInfo_current=animationInfo.current)===null||_animationInfo_current===void 0?void 0:(_animationInfo_current_animation=_animationInfo_current.animation)===null||_animationInfo_current_animation===void 0?void 0:_animationInfo_current_animation.pause();};const destroy=()=>{var _animationInfo_current_animation,_animationInfo_current;return(_animationInfo_current=animationInfo.current)===null||_animationInfo_current===void 0?void 0:(_animationInfo_current_animation=_animationInfo_current.animation)===null||_animationInfo_current_animation===void 0?void 0:_animationInfo_current_animation.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===\"URL\")dataUrl=srcUrl;if(srcType===\"Upload\")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: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 _animationInfo_current;if(!((_animationInfo_current=animationInfo.current)===null||_animationInfo_current===void 0?void 0:_animationInfo_current.animation))return;animationInfo.current.animation.setSpeed(speed);scrubTo(progress.get(),true);},[speed]);useEffect(()=>{var _animationInfo_current;if(!((_animationInfo_current=animationInfo.current)===null||_animationInfo_current===void 0?void 0:_animationInfo_current.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:\"URL\",pauseOnCanvas:true,srcUrl:placeholderUrl,progress:0,poster:\"Auto\",posterProgress:0};addPropertyControls(Lottie,{srcType:{type:ControlType.Enum,displaySegmentedControl:true,title:\"Source\",options:[\"URL\",\"Upload\"]},srcUrl:{type:ControlType.String,title:\"URL\",placeholder:\"../example.json\",hidden:props=>props.srcType===\"Upload\"},srcFile:{type:ControlType.File,title:\"File\",allowedFileTypes:[\"json\"],hidden:props=>props.srcType===\"URL\"},playing:{type:ControlType.Boolean,title:\"Playing\",enabledTitle:\"Yes\",disabledTitle:\"No\"},// Temporarily disabling for perf\npauseOnCanvas:{type:ControlType.Boolean,title:\"Canvas\",disabledTitle:\"Play\",enabledTitle:\"Pause\",hidden:props=>props.playing===false},loop:{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:[\"Auto\",\"Custom\"],displaySegmentedControl:true},posterProgress:{title:\" \",type:ControlType.Number,max:100,min:0,unit:\"%\",hidden:({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\",\"framerIntrinsicWidth\":\"200\",\"framerSupportedLayoutWidth\":\"fixed\",\"framerSupportedLayoutHeight\":\"any-prefer-fixed\",\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./Lottie.map","import{jsx as _jsx}from\"react/jsx-runtime\";import{motion}from\"framer-motion\";import*as React from\"react\";export const v0=/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{style:{\"--font-selector\":\"Q1VTVE9NO1BQIE5ldWVCaXQgQm9sZA==\",\"--framer-font-family\":'\"PP NeueBit Bold\", \"PP NeueBit Bold Placeholder\", sans-serif',\"--framer-text-alignment\":\"center\",\"--framer-text-color\":\"var(--extracted-r6o4lv, rgb(226, 248, 108))\",\"--framer-text-transform\":\"uppercase\"},children:\"Trimite\"})});export const v1=/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{style:{\"--font-selector\":\"Q1VTVE9NO1BQIE5ldWVCaXQgQm9sZA==\",\"--framer-font-family\":'\"PP NeueBit Bold\", \"PP NeueBit Bold Placeholder\", sans-serif',\"--framer-text-alignment\":\"center\",\"--framer-text-transform\":\"uppercase\"},children:\"Vă mulțumim\"})});export const v2=/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{style:{\"--font-selector\":\"Q1VTVE9NO1BQIE5ldWVCaXQgQm9sZA==\",\"--framer-font-family\":'\"PP NeueBit Bold\", \"PP NeueBit Bold Placeholder\", sans-serif',\"--framer-text-alignment\":\"center\",\"--framer-text-color\":\"var(--extracted-r6o4lv, rgb(247, 109, 109))\",\"--framer-text-transform\":\"uppercase\"},children:\"Ceva nu a mers bine\"})});export const v3=\"https://misc.framerstatic.com/lottie/logo.json\";\nexport const __FramerMetadata__ = {\"exports\":{\"v1\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"v3\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"v0\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"v2\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// Generated by Framer (a44d8cf)\nimport*as localizedValues from\"./UWp51B4yW-0.js\";const valuesByLocaleId={AqDalB09P:localizedValues};export default function getLocalizedValue(key,locale){while(locale){const values=valuesByLocaleId[locale.id];if(values){const value=values[key];if(value)return value;}locale=locale.fallback;}}\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// Generated by Framer (a44d8cf)\nimport{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{addFonts,addPropertyControls,ComponentViewportProvider,ControlType,cx,getFonts,RichText,SmartComponentScopedContainer,useActiveVariantCallback,useComponentViewport,useLocaleInfo,useVariantState,withCSS}from\"framer\";import{LayoutGroup,motion}from\"framer-motion\";import*as React from\"react\";import{useRef}from\"react\";import{Lottie}from\"https://framerusercontent.com/modules/YbkSqZ7STzW5WsMb1yan/RLfsHd78NBd0kbafA9hd/Lottie.js\";import getLocalizedValue from\"https://framerusercontent.com/modules/1G6gUHEC6Cdk38PH5zYG/cBskREhdOaYK6TZQxkIt/UWp51B4yW.js\";const LottieFonts=getFonts(Lottie);const enabledGestures={zsAySD4AF:{hover:true,pressed:true}};const cycleOrder=[\"zsAySD4AF\",\"KX603eWoW\",\"UjcJRzy4L\",\"OxZ3KwLZq\",\"hZ4JECieV\"];const serializationHash=\"framer-BXpk5\";const variantClassNames={hZ4JECieV:\"framer-v-1qfph20\",KX603eWoW:\"framer-v-1h57aph\",OxZ3KwLZq:\"framer-v-xwlkt6\",UjcJRzy4L:\"framer-v-jkjk2c\",zsAySD4AF:\"framer-v-biilsv\"};function addPropertyOverrides(overrides,...variants){const nextOverrides={};variants?.forEach(variant=>variant&&Object.assign(nextOverrides,overrides[variant]));return nextOverrides;}const Variants=motion.create(React.Fragment);const humanReadableVariantMap={Default:\"zsAySD4AF\",Disabled:\"UjcJRzy4L\",Error:\"hZ4JECieV\",Loading:\"KX603eWoW\",Success:\"OxZ3KwLZq\"};const getProps=({click,height,id,width,...props})=>{return{...props,B8zBbozPo:click??props.B8zBbozPo,variant:humanReadableVariantMap[props.variant]??props.variant??\"zsAySD4AF\"};};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,B8zBbozPo,...restProps}=getProps(props);const{baseVariant,classNames,clearLoadingGesture,gestureHandlers,gestureVariant,isLoading,setGestureState,setVariant,variants}=useVariantState({cycleOrder,defaultVariant:\"zsAySD4AF\",enabledGestures,ref:refBinding,variant,variantClassNames});const layoutDependency=createLayoutDependency(props,variants);const{activeVariantCallback,delay}=useActiveVariantCallback(baseVariant);const onTap19miky=activeVariantCallback(async(...args)=>{setGestureState({isPressed:false});if(B8zBbozPo){const res=await B8zBbozPo(...args);if(res===false)return false;}});const sharedStyleClassNames=[];const scopingClassNames=cx(serializationHash,...sharedStyleClassNames);const isDisplayed=()=>{if(baseVariant===\"KX603eWoW\")return false;return true;};const isDisplayed1=()=>{if(baseVariant===\"KX603eWoW\")return true;return false;};return /*#__PURE__*/_jsx(LayoutGroup,{id:layoutId??defaultLayoutId,children:/*#__PURE__*/_jsx(Variants,{animate:variants,initial:false,children:/*#__PURE__*/_jsxs(motion.button,{...restProps,...gestureHandlers,className:cx(scopingClassNames,\"framer-biilsv\",className,classNames),\"data-framer-name\":\"Default\",\"data-highlight\":true,\"data-reset\":\"button\",layoutDependency:layoutDependency,layoutId:\"zsAySD4AF\",onTap:onTap19miky,ref:refBinding,style:{backgroundColor:\"rgba(226, 248, 107, 0.1)\",borderBottomLeftRadius:4,borderBottomRightRadius:4,borderTopLeftRadius:4,borderTopRightRadius:4,opacity:1,...style},variants:{\"zsAySD4AF-hover\":{backgroundColor:\"rgba(226, 248, 107, 0.19)\",opacity:1},\"zsAySD4AF-pressed\":{backgroundColor:\"rgba(226, 248, 107, 0.05)\",opacity:1},hZ4JECieV:{backgroundColor:\"rgba(255, 34, 68, 0.15)\",opacity:1},OxZ3KwLZq:{backgroundColor:\"rgb(226, 248, 107)\",opacity:1},UjcJRzy4L:{opacity:.5}},...addPropertyOverrides({\"zsAySD4AF-hover\":{\"data-framer-name\":undefined},\"zsAySD4AF-pressed\":{\"data-framer-name\":undefined},hZ4JECieV:{\"data-framer-name\":\"Error\"},KX603eWoW:{\"data-framer-name\":\"Loading\"},OxZ3KwLZq:{\"data-framer-name\":\"Success\"},UjcJRzy4L:{\"data-framer-name\":\"Disabled\"}},baseVariant,gestureVariant),children:[isDisplayed()&&/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:getLocalizedValue(\"v0\",activeLocale)??/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{style:{\"--font-selector\":\"Q1VTVE9NO1BQIE5ldWVCaXQgQm9sZA==\",\"--framer-font-family\":'\"PP NeueBit Bold\", \"PP NeueBit Bold Placeholder\", sans-serif',\"--framer-text-alignment\":\"center\",\"--framer-text-color\":\"var(--extracted-r6o4lv, rgb(226, 248, 108))\",\"--framer-text-transform\":\"uppercase\"},children:\"Submit\"})}),className:\"framer-u0k6lb\",fonts:[\"CUSTOM;PP NeueBit Bold\"],layoutDependency:layoutDependency,layoutId:\"hqx6p0M3d\",style:{\"--extracted-r6o4lv\":\"rgb(226, 248, 108)\",\"--framer-link-text-color\":\"rgb(0, 153, 255)\",\"--framer-link-text-decoration\":\"underline\"},variants:{hZ4JECieV:{\"--extracted-r6o4lv\":\"rgb(247, 109, 109)\"}},verticalAlignment:\"center\",withExternalLayout:true,...addPropertyOverrides({hZ4JECieV:{children:getLocalizedValue(\"v2\",activeLocale)??/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{style:{\"--font-selector\":\"Q1VTVE9NO1BQIE5ldWVCaXQgQm9sZA==\",\"--framer-font-family\":'\"PP NeueBit Bold\", \"PP NeueBit Bold Placeholder\", sans-serif',\"--framer-text-alignment\":\"center\",\"--framer-text-color\":\"var(--extracted-r6o4lv, rgb(247, 109, 109))\",\"--framer-text-transform\":\"uppercase\"},children:\"Something went wrong\"})})},OxZ3KwLZq:{children:getLocalizedValue(\"v1\",activeLocale)??/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{style:{\"--font-selector\":\"Q1VTVE9NO1BQIE5ldWVCaXQgQm9sZA==\",\"--framer-font-family\":'\"PP NeueBit Bold\", \"PP NeueBit Bold Placeholder\", sans-serif',\"--framer-text-alignment\":\"center\",\"--framer-text-transform\":\"uppercase\"},children:\"Thank you\"})})}},baseVariant,gestureVariant)}),isDisplayed1()&&/*#__PURE__*/_jsx(ComponentViewportProvider,{children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-15qhjbr-container\",isAuthoredByUser:true,isModuleExternal:true,layoutDependency:layoutDependency,layoutId:\"za3zIkS_L-container\",nodeId:\"za3zIkS_L\",rendersWithMotion:true,scopeId:\"UWp51B4yW\",children:/*#__PURE__*/_jsx(Lottie,{height:\"100%\",id:\"za3zIkS_L\",isForwardsDirection:true,layoutId:\"za3zIkS_L\",loop:true,pauseOnCanvas:true,playing:true,poster:\"Auto\",posterProgress:0,progress:0,speed:1,srcFile:\"https://framerusercontent.com/assets/gTIAgExcr4qEt9PSbKalfRPQA.json\",srcType:\"Upload\",srcUrl:getLocalizedValue(\"v3\",activeLocale)??\"https://misc.framerstatic.com/lottie/logo.json\",style:{height:\"100%\",width:\"100%\"},width:\"100%\"})})})]})})});});const css=[\"@supports (aspect-ratio: 1) { body { --framer-aspect-ratio-supported: auto; } }\",\".framer-BXpk5.framer-fi6af0, .framer-BXpk5 .framer-fi6af0 { display: block; }\",\".framer-BXpk5.framer-biilsv { align-content: center; align-items: center; cursor: pointer; display: flex; flex-direction: row; flex-wrap: nowrap; gap: 0px; height: 28px; justify-content: center; overflow: visible; padding: 2px 0px 0px 0px; position: relative; width: 240px; }\",\".framer-BXpk5 .framer-u0k6lb { --framer-text-wrap: balance; flex: none; height: auto; position: relative; white-space: pre; width: auto; }\",\".framer-BXpk5 .framer-15qhjbr-container { bottom: -30px; flex: none; left: calc(50.00000000000002% - 104px / 2); position: absolute; top: -28px; width: 104px; z-index: 1; }\"];/**\n * This is a generated Framer component.\n * @framerIntrinsicHeight 28\n * @framerIntrinsicWidth 240\n * @framerCanvasComponentVariantDetails {\"propertyName\":\"variant\",\"data\":{\"default\":{\"layout\":[\"fixed\",\"fixed\"]},\"KX603eWoW\":{\"layout\":[\"fixed\",\"fixed\"]},\"UjcJRzy4L\":{\"layout\":[\"fixed\",\"fixed\"]},\"OxZ3KwLZq\":{\"layout\":[\"fixed\",\"fixed\"]},\"hZ4JECieV\":{\"layout\":[\"fixed\",\"fixed\"]},\"QI1bEdhSY\":{\"layout\":[\"fixed\",\"fixed\"]},\"JmT2JatpJ\":{\"layout\":[\"fixed\",\"fixed\"]}}}\n * @framerVariables {\"B8zBbozPo\":\"click\"}\n * @framerImmutableVariables true\n * @framerDisplayContentsDiv false\n * @framerAutoSizeImages true\n * @framerComponentViewportWidth true\n * @framerColorSyntax true\n */const FramerUWp51B4yW=withCSS(Component,css,\"framer-BXpk5\");export default FramerUWp51B4yW;FramerUWp51B4yW.displayName=\"Button\";FramerUWp51B4yW.defaultProps={height:28,width:240};addPropertyControls(FramerUWp51B4yW,{variant:{options:[\"zsAySD4AF\",\"KX603eWoW\",\"UjcJRzy4L\",\"OxZ3KwLZq\",\"hZ4JECieV\"],optionTitles:[\"Default\",\"Loading\",\"Disabled\",\"Success\",\"Error\"],title:\"Variant\",type:ControlType.Enum},B8zBbozPo:{title:\"Click\",type:ControlType.EventHandler}});addFonts(FramerUWp51B4yW,[{explicitInter:true,fonts:[{family:\"PP NeueBit Bold\",source:\"custom\",url:\"https://framerusercontent.com/assets/LhlnRGZ9aD8mHk26ghaljbgKEcs.woff2\"}]},...LottieFonts],{supportsExplicitInterCodegen:true});\nexport const __FramerMetadata__ = {\"exports\":{\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"default\":{\"type\":\"reactComponent\",\"name\":\"FramerUWp51B4yW\",\"slots\":[],\"annotations\":{\"framerIntrinsicWidth\":\"240\",\"framerColorSyntax\":\"true\",\"framerAutoSizeImages\":\"true\",\"framerCanvasComponentVariantDetails\":\"{\\\"propertyName\\\":\\\"variant\\\",\\\"data\\\":{\\\"default\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"KX603eWoW\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"UjcJRzy4L\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"OxZ3KwLZq\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"hZ4JECieV\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"QI1bEdhSY\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"JmT2JatpJ\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]}}}\",\"framerIntrinsicHeight\":\"28\",\"framerVariables\":\"{\\\"B8zBbozPo\\\":\\\"click\\\"}\",\"framerComponentViewportWidth\":\"true\",\"framerDisplayContentsDiv\":\"false\",\"framerContractVersion\":\"1\",\"framerImmutableVariables\":\"true\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./UWp51B4yW.map","// Generated by Framer (cbe5bfb)\nimport{jsx as _jsx,jsxs as _jsxs,Fragment as _Fragment}from\"react/jsx-runtime\";import{addFonts,addPropertyControls,ComponentViewportProvider,ControlType,cx,FormContainer,FormPlainTextInput,forwardLoader,getFonts,RichText,SmartComponentScopedContainer,SVG,useActiveVariantCallback,useComponentViewport,useLocaleInfo,useVariantState,withCSS}from\"framer\";import{LayoutGroup,motion,MotionConfigContext}from\"framer-motion\";import*as React from\"react\";import{useRef}from\"react\";import getLocalizedValue from\"https://framerusercontent.com/modules/p27wYmdvJ891958Hk76c/dgqI6UsXJe9RUyAdGnQN/rbymmAw6a.js\";import Button from\"https://framerusercontent.com/modules/yjGYHdl2CrrnYmrpcL8c/twcQLJ4wGppO34VnjQEJ/UWp51B4yW.js\";const ButtonFonts=getFonts(Button);const cycleOrder=[\"e4V4EI3ie\",\"P9OWqcvGx\"];const serializationHash=\"framer-h0H9R\";const variantClassNames={e4V4EI3ie:\"framer-v-tc8tjg\",P9OWqcvGx:\"framer-v-4qjcwj\"};function addPropertyOverrides(overrides,...variants){const nextOverrides={};variants?.forEach(variant=>variant&&Object.assign(nextOverrides,overrides[variant]));return nextOverrides;}const transition1={bounce:.2,delay:0,duration:.4,type:\"spring\"};const matchVariant=(...args)=>{for(const arg of args){if(arg&&typeof arg===\"string\")return arg;}return undefined;};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 humanReadableVariantMap={\"Variant 1\":\"e4V4EI3ie\",\"Variant 2\":\"P9OWqcvGx\"};const Variants=motion.create(React.Fragment);const getProps=({height,id,width,...props})=>{return{...props,variant:humanReadableVariantMap[props.variant]??props.variant??\"e4V4EI3ie\"};};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:\"e4V4EI3ie\",ref:refBinding,variant,variantClassNames});const layoutDependency=createLayoutDependency(props,variants);const{activeVariantCallback,delay}=useActiveVariantCallback(baseVariant);const B8zBbozPo5xqjqr=activeVariantCallback(async(...args)=>{setVariant(\"P9OWqcvGx\");});const sharedStyleClassNames=[];const scopingClassNames=cx(serializationHash,...sharedStyleClassNames);const isDisplayed=()=>{if(baseVariant===\"P9OWqcvGx\")return false;return true;};const isDisplayed1=()=>{if(baseVariant===\"P9OWqcvGx\")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(FormContainer,{...restProps,...gestureHandlers,action:\"https://api.framer.com/forms/v1/forms/34093aab-e83b-4efe-9f98-4081fac53afb/submit\",className:cx(scopingClassNames,\"framer-tc8tjg\",className,classNames),\"data-framer-name\":\"Variant 1\",layoutDependency:layoutDependency,layoutId:\"e4V4EI3ie\",nodeId:\"e4V4EI3ie\",ref:refBinding,style:{backgroundColor:\"rgb(0, 0, 0)\",borderBottomLeftRadius:4,borderBottomRightRadius:4,borderTopLeftRadius:4,borderTopRightRadius:4,...style},...addPropertyOverrides({P9OWqcvGx:{\"data-framer-name\":\"Variant 2\"}},baseVariant,gestureVariant),children:formState=>/*#__PURE__*/_jsxs(_Fragment,{children:[isDisplayed()&&/*#__PURE__*/_jsxs(motion.label,{className:\"framer-164lv8d\",layoutDependency:layoutDependency,layoutId:\"i_kTQi3uC\",children:[/*#__PURE__*/_jsx(motion.label,{className:\"framer-crsqd0\",layoutDependency:layoutDependency,layoutId:\"pWHQJwOyL\",children:/*#__PURE__*/_jsx(FormPlainTextInput,{className:\"framer-q3f2kk\",inputName:\"Email\",layoutDependency:layoutDependency,layoutId:\"JVoRFIKw6\",placeholder:getLocalizedValue(\"v0\",activeLocale)??\"EMAIL ADDRESS\",required:true,style:{\"--framer-input-border-bottom-width\":\"1px\",\"--framer-input-border-color\":\"rgba(136, 136, 136, 0.2)\",\"--framer-input-border-left-width\":\"1px\",\"--framer-input-border-radius-bottom-left\":\"4px\",\"--framer-input-border-radius-bottom-right\":\"4px\",\"--framer-input-border-radius-top-left\":\"4px\",\"--framer-input-border-radius-top-right\":\"4px\",\"--framer-input-border-right-width\":\"1px\",\"--framer-input-border-style\":\"solid\",\"--framer-input-border-top-width\":\"1px\",\"--framer-input-font-color\":\"rgb(153, 153, 153)\",\"--framer-input-icon-color\":\"rgb(153, 153, 153)\",\"--framer-input-placeholder-color\":\"rgb(153, 153, 153)\"},type:\"email\"})}),/*#__PURE__*/_jsx(FormPlainTextInput,{className:\"framer-1wx7tgs\",inputName:\"Full Name\",layoutDependency:layoutDependency,layoutId:\"vJszYp_aT\",placeholder:getLocalizedValue(\"v1\",activeLocale)??\"FULL NAME\",required:true,style:{\"--framer-input-border-bottom-width\":\"1px\",\"--framer-input-border-color\":\"rgba(136, 136, 136, 0.2)\",\"--framer-input-border-left-width\":\"1px\",\"--framer-input-border-radius-bottom-left\":\"4px\",\"--framer-input-border-radius-bottom-right\":\"4px\",\"--framer-input-border-radius-top-left\":\"4px\",\"--framer-input-border-radius-top-right\":\"4px\",\"--framer-input-border-right-width\":\"1px\",\"--framer-input-border-style\":\"solid\",\"--framer-input-border-top-width\":\"1px\",\"--framer-input-font-color\":\"rgb(153, 153, 153)\",\"--framer-input-icon-color\":\"rgb(153, 153, 153)\",\"--framer-input-placeholder-color\":\"rgb(153, 153, 153)\"},type:\"text\"}),/*#__PURE__*/_jsx(FormPlainTextInput,{className:\"framer-1lxdczx\",inputName:\"Company\",layoutDependency:layoutDependency,layoutId:\"n9Q0uq7KW\",placeholder:getLocalizedValue(\"v2\",activeLocale)??\"COMPANY\",required:true,style:{\"--framer-input-border-bottom-width\":\"1px\",\"--framer-input-border-color\":\"rgba(136, 136, 136, 0.2)\",\"--framer-input-border-left-width\":\"1px\",\"--framer-input-border-radius-bottom-left\":\"4px\",\"--framer-input-border-radius-bottom-right\":\"4px\",\"--framer-input-border-radius-top-left\":\"4px\",\"--framer-input-border-radius-top-right\":\"4px\",\"--framer-input-border-right-width\":\"1px\",\"--framer-input-border-style\":\"solid\",\"--framer-input-border-top-width\":\"1px\",\"--framer-input-font-color\":\"rgb(153, 153, 153)\",\"--framer-input-icon-color\":\"rgb(153, 153, 153)\",\"--framer-input-placeholder-color\":\"rgb(153, 153, 153)\"},type:\"text\"}),/*#__PURE__*/_jsx(FormPlainTextInput,{className:\"framer-1bta2zl\",inputName:\"Linkedin\",layoutDependency:layoutDependency,layoutId:\"YztPS6CLC\",placeholder:getLocalizedValue(\"v3\",activeLocale)??\"LINKEDIN URL\",required:true,style:{\"--framer-input-border-bottom-width\":\"1px\",\"--framer-input-border-color\":\"rgba(136, 136, 136, 0.2)\",\"--framer-input-border-left-width\":\"1px\",\"--framer-input-border-radius-bottom-left\":\"4px\",\"--framer-input-border-radius-bottom-right\":\"4px\",\"--framer-input-border-radius-top-left\":\"4px\",\"--framer-input-border-radius-top-right\":\"4px\",\"--framer-input-border-right-width\":\"1px\",\"--framer-input-border-style\":\"solid\",\"--framer-input-border-top-width\":\"1px\",\"--framer-input-font-color\":\"rgb(153, 153, 153)\",\"--framer-input-icon-color\":\"rgb(153, 153, 153)\",\"--framer-input-placeholder-color\":\"rgb(153, 153, 153)\"},type:\"url\"}),/*#__PURE__*/_jsx(FormPlainTextInput,{className:\"framer-1xu2xgo\",inputName:\"webiste\",layoutDependency:layoutDependency,layoutId:\"t7WdppFsX\",placeholder:getLocalizedValue(\"v4\",activeLocale)??\"WEBSITE\",required:false,style:{\"--framer-input-border-bottom-width\":\"1px\",\"--framer-input-border-color\":\"rgba(136, 136, 136, 0.2)\",\"--framer-input-border-left-width\":\"1px\",\"--framer-input-border-radius-bottom-left\":\"4px\",\"--framer-input-border-radius-bottom-right\":\"4px\",\"--framer-input-border-radius-top-left\":\"4px\",\"--framer-input-border-radius-top-right\":\"4px\",\"--framer-input-border-right-width\":\"1px\",\"--framer-input-border-style\":\"solid\",\"--framer-input-border-top-width\":\"1px\",\"--framer-input-font-color\":\"rgb(153, 153, 153)\",\"--framer-input-icon-color\":\"rgb(153, 153, 153)\",\"--framer-input-placeholder-color\":\"rgb(153, 153, 153)\"},type:\"url\"})]}),isDisplayed()&&/*#__PURE__*/_jsx(ComponentViewportProvider,{height:28,width:`calc(${componentViewport?.width||\"100vw\"} - 40px)`,y:(componentViewport?.y||0)+20+212,children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-cyzltl-container\",layoutDependency:layoutDependency,layoutId:\"ILBvLNksp-container\",nodeId:\"ILBvLNksp\",rendersWithMotion:true,scopeId:\"rbymmAw6a\",children:/*#__PURE__*/_jsx(Button,{B8zBbozPo:B8zBbozPo5xqjqr,height:\"100%\",id:\"ILBvLNksp\",layoutId:\"ILBvLNksp\",style:{width:\"100%\"},variant:matchVariant(\"zsAySD4AF\"),width:\"100%\"})})}),isDisplayed1()&&/*#__PURE__*/_jsx(SVG,{className:\"framer-ctybhw\",\"data-framer-name\":\"Frame 1171275610\",fill:\"rgba(0,0,0,1)\",intrinsicHeight:172,intrinsicWidth:172,layoutDependency:layoutDependency,layoutId:\"QtrPiUMT2\",svg:'<svg width=\"172\" height=\"172\" viewBox=\"0 0 172 172\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\\n<g clip-path=\"url(#clip0_329_3524)\">\\n<g clip-path=\"url(#clip1_329_3524)\">\\n<path d=\"M153.113 24.5238V7H77.0677C65.068 7 57.4138 10.8342 49.2483 17.9772L10.9772 55.7371C3.83421 63.9026 0 71.5568 0 83.5565V147.346H18.9013V164.87H94.9323C106.932 164.87 114.586 161.036 122.752 153.893L161.023 116.133C168.166 107.968 172 100.299 172 88.3137V24.5238H153.113ZM141.383 118.419C141.383 128.63 132.706 136.795 122.496 136.795H30.6311V53.4508C30.6311 43.2404 39.2936 35.075 49.504 35.075H141.383V118.419Z\" fill=\"#EDFF66\"/>\\n</g>\\n</g>\\n<defs>\\n<clipPath id=\"clip0_329_3524\">\\n<rect width=\"172\" height=\"172\" fill=\"white\"/>\\n</clipPath>\\n<clipPath id=\"clip1_329_3524\">\\n<rect width=\"172\" height=\"157.87\" fill=\"white\" transform=\"translate(0 7)\"/>\\n</clipPath>\\n</defs>\\n</svg>\\n',withExternalLayout:true}),isDisplayed1()&&/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:getLocalizedValue(\"v5\",activeLocale)??/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsxs(motion.p,{style:{\"--font-selector\":\"Q1VTVE9NO1BQIE5ldWVCaXQgQm9sZA==\",\"--framer-font-family\":'\"PP NeueBit Bold\", \"PP NeueBit Bold Placeholder\", sans-serif',\"--framer-text-alignment\":\"left\",\"--framer-text-color\":\"var(--extracted-r6o4lv, rgb(226, 248, 108))\",\"--framer-text-transform\":\"uppercase\"},children:[\"Thanks for your request! \",/*#__PURE__*/_jsx(motion.br,{}),\"We'll send the Cubicle deck to your email shortly\"]})}),className:\"framer-1rrodac\",fonts:[\"CUSTOM;PP NeueBit Bold\"],layoutDependency:layoutDependency,layoutId:\"mSIl5qswy\",style:{\"--extracted-r6o4lv\":\"rgb(226, 248, 108)\",\"--framer-link-text-color\":\"rgb(0, 153, 255)\",\"--framer-link-text-decoration\":\"underline\"},verticalAlignment:\"center\",withExternalLayout:true})]})})})})});});const css=[\"@supports (aspect-ratio: 1) { body { --framer-aspect-ratio-supported: auto; } }\",\".framer-h0H9R.framer-1on41jq, .framer-h0H9R .framer-1on41jq { display: block; }\",\".framer-h0H9R.framer-tc8tjg { align-content: flex-start; align-items: flex-start; display: flex; flex-direction: column; flex-wrap: nowrap; gap: 12px; height: min-content; justify-content: flex-start; overflow: hidden; padding: 20px; position: relative; width: 280px; will-change: var(--framer-will-change-override, transform); }\",\".framer-h0H9R .framer-164lv8d, .framer-h0H9R .framer-crsqd0 { align-content: flex-start; align-items: flex-start; display: flex; flex: none; flex-direction: column; flex-wrap: nowrap; gap: 10px; height: min-content; justify-content: flex-start; padding: 0px; position: relative; width: 100%; }\",'.framer-h0H9R .framer-q3f2kk, .framer-h0H9R .framer-1wx7tgs, .framer-h0H9R .framer-1lxdczx, .framer-h0H9R .framer-1bta2zl, .framer-h0H9R .framer-1xu2xgo { --framer-input-focused-border-color: #0099ff; --framer-input-focused-border-style: solid; --framer-input-focused-border-width: 1px; --framer-input-font-family: \"PP NeueBit Bold\"; --framer-input-font-letter-spacing: 0em; --framer-input-font-line-height: 1.2em; --framer-input-font-size: 16px; --framer-input-padding: 12px; flex: none; height: 32px; position: relative; width: 100%; }',\".framer-h0H9R .framer-cyzltl-container { flex: none; height: auto; position: relative; width: 100%; }\",\".framer-h0H9R .framer-ctybhw { aspect-ratio: 1 / 1; flex: none; height: var(--framer-aspect-ratio-supported, 32px); position: relative; width: 32px; }\",\".framer-h0H9R .framer-1rrodac { --framer-text-wrap: balance; flex: none; height: auto; position: relative; white-space: pre-wrap; width: 100%; word-break: break-word; word-wrap: break-word; }\",\".framer-h0H9R.framer-v-4qjcwj.framer-tc8tjg { height: 156px; justify-content: center; }\",\".framer-h0H9R.framer-v-4qjcwj .framer-ctybhw { order: 0; }\",\".framer-h0H9R.framer-v-4qjcwj .framer-1rrodac { order: 3; }\"];/**\n * This is a generated Framer component.\n * @framerIntrinsicHeight 280\n * @framerIntrinsicWidth 280\n * @framerCanvasComponentVariantDetails {\"propertyName\":\"variant\",\"data\":{\"default\":{\"layout\":[\"fixed\",\"auto\"]},\"P9OWqcvGx\":{\"layout\":[\"fixed\",\"fixed\"]}}}\n * @framerImmutableVariables true\n * @framerDisplayContentsDiv false\n * @framerAutoSizeImages true\n * @framerComponentViewportWidth true\n * @framerColorSyntax true\n */const FramerrbymmAw6a=withCSS(Component,css,\"framer-h0H9R\");export default FramerrbymmAw6a;FramerrbymmAw6a.displayName=\"form\";FramerrbymmAw6a.defaultProps={height:280,width:280};addPropertyControls(FramerrbymmAw6a,{variant:{options:[\"e4V4EI3ie\",\"P9OWqcvGx\"],optionTitles:[\"Variant 1\",\"Variant 2\"],title:\"Variant\",type:ControlType.Enum}});addFonts(FramerrbymmAw6a,[{explicitInter:true,fonts:[{cssFamilyName:\"PP NeueBit Bold\",source:\"custom\",style:\"normal\",uiFamilyName:\"PP NeueBit\",url:\"https://framerusercontent.com/assets/LhlnRGZ9aD8mHk26ghaljbgKEcs.woff2\",weight:\"700\"}]},...ButtonFonts],{supportsExplicitInterCodegen:true});FramerrbymmAw6a.loader={load:(props,context)=>{const locale=context.locale;return Promise.allSettled([forwardLoader(Button,{},context)]);}};\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"FramerrbymmAw6a\",\"slots\":[],\"annotations\":{\"framerCanvasComponentVariantDetails\":\"{\\\"propertyName\\\":\\\"variant\\\",\\\"data\\\":{\\\"default\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"auto\\\"]},\\\"P9OWqcvGx\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]}}}\",\"framerDisplayContentsDiv\":\"false\",\"framerColorSyntax\":\"true\",\"framerImmutableVariables\":\"true\",\"framerComponentViewportWidth\":\"true\",\"framerContractVersion\":\"1\",\"framerAutoSizeImages\":\"true\",\"framerIntrinsicHeight\":\"280\",\"framerIntrinsicWidth\":\"280\"}},\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./rbymmAw6a.map","// Generated by Framer (375af7e)\nimport{jsx as _jsx}from\"react/jsx-runtime\";import{addFonts,cx,SVG,useComponentViewport,useLocaleInfo,useVariantState,withCSS}from\"framer\";import{LayoutGroup,motion,MotionConfigContext}from\"framer-motion\";import*as React from\"react\";import{useRef}from\"react\";const serializationHash=\"framer-a255m\";const variantClassNames={D5JEBKJUp:\"framer-v-19ybpaw\"};function addPropertyOverrides(overrides,...variants){const nextOverrides={};variants?.forEach(variant=>variant&&Object.assign(nextOverrides,overrides[variant]));return nextOverrides;}const transition1={bounce:.2,delay:0,duration:.4,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 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 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({defaultVariant:\"D5JEBKJUp\",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-19ybpaw\",className,classNames),\"data-framer-name\":\"Variant 1\",layoutDependency:layoutDependency,layoutId:\"D5JEBKJUp\",ref:refBinding,style:{...style},children:/*#__PURE__*/_jsx(SVG,{className:\"framer-1moi63k\",\"data-framer-name\":\"Union\",fill:\"rgba(0,0,0,1)\",intrinsicHeight:80,intrinsicWidth:89,layoutDependency:layoutDependency,layoutId:\"UurN3feea\",svg:'<svg width=\"89\" height=\"80\" viewBox=\"0 0 89 80\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\\n<path d=\"M14.4199 63.5381C14.6588 63.3509 15.008 63.3955 15.1953 63.6406C18.7539 68.2777 23.385 72.1211 28.584 74.7432C34.0411 77.4943 39.9245 78.8896 46.0791 78.8896C52.2339 78.8896 58.1243 77.4944 63.5752 74.7432C68.7807 72.1146 73.4108 68.2777 76.9629 63.6406C77.1502 63.4017 77.4929 63.3573 77.7383 63.5381C77.9771 63.7254 78.0289 64.0671 77.8418 64.3125C74.1864 69.0788 69.4263 73.0318 64.0723 75.7314C58.46 78.5601 52.4082 80 46.0791 80C39.75 80 33.6982 78.5666 28.0859 75.7314C22.732 73.0318 17.9728 69.0852 14.3174 64.3125C14.1302 64.0737 14.1749 63.7255 14.4199 63.5381ZM36.1621 66.1855C36.9449 66.1855 37.4102 66.7126 37.4102 67.5264V67.666L36.6201 67.751V67.5957C36.62 67.1774 36.4566 66.9609 36.1699 66.9609C35.8834 66.9611 35.7208 67.1388 35.7207 67.4795C35.7207 67.8205 35.8914 68.0691 36.4727 68.6504C37.2629 69.4407 37.5186 69.8359 37.5186 70.4326C37.5185 71.2076 36.9761 71.7656 36.1934 71.7656C35.4107 71.7656 34.8682 71.2075 34.8682 70.4326V70.2383L35.6592 70.1533V70.3555C35.6593 70.7504 35.8603 70.9902 36.1855 70.9902C36.5109 70.9902 36.7127 70.7892 36.7129 70.4717C36.7129 70.1307 36.5732 69.882 35.9609 69.3008C35.1473 68.5336 34.9151 68.1152 34.915 67.5186C34.915 66.7127 35.3796 66.1857 36.1621 66.1855ZM43.9902 70.4941C43.9902 70.8117 44.184 70.9901 44.4473 70.9902C44.7108 70.9902 44.9053 70.8119 44.9053 70.4941V66.2627H45.7109V70.4941C45.7109 71.2536 45.199 71.7656 44.4473 71.7656C43.6957 71.7654 43.1689 71.2535 43.1689 70.4941V66.2627H43.9902V70.4941ZM55.9619 66.1855C56.7524 66.1855 57.2792 66.7124 57.2793 67.4951V70.4561C57.2792 71.2386 56.7523 71.7656 55.9619 71.7656C55.1716 71.7655 54.6447 71.2386 54.6445 70.4561V67.4951C54.6446 66.7125 55.1716 66.1856 55.9619 66.1855ZM41.5586 67.0381H40.6602V71.6885H39.8389V67.0381H38.9395V66.2627H41.5586V67.0381ZM48.8691 66.2627C49.6519 66.2627 50.1553 66.7749 50.1553 67.5576V70.3936C50.1553 71.1763 49.6519 71.6885 48.8691 71.6885H47.583V66.2627H48.8691ZM52.8105 71.6885H51.9893V66.2627H52.8105V71.6885ZM55.9619 66.9609C55.6598 66.961 55.4659 67.1543 55.4658 67.4951V70.4561C55.4659 70.7968 55.6599 70.9902 55.9619 70.9902C56.2641 70.9902 56.4579 70.7969 56.458 70.4561V67.4951C56.458 67.1542 56.2641 66.9609 55.9619 66.9609ZM48.4043 70.9131H48.8301C49.1478 70.9131 49.334 70.7269 49.334 70.4092V67.542C49.334 67.2242 49.1478 67.0381 48.8301 67.0381H48.4043V70.9131ZM23.3018 39.0283C23.5212 39.0283 23.7538 39.0406 23.999 39.0664C24.2444 39.0922 24.49 39.1183 24.7354 39.1377C24.9807 39.1635 25.1747 39.1896 25.3232 39.209C24.5677 40.8234 23.8182 42.5087 23.082 44.2588C22.3458 46.0089 21.6929 47.727 21.1182 49.4189C20.5434 51.1046 20.0722 52.72 19.7041 54.2441C19.336 55.7746 19.1421 57.1113 19.1162 58.2607C19.142 58.532 19.2132 58.7325 19.3359 58.8682C19.4586 59.0037 19.6651 59.0683 19.9619 59.0684H21.6777C21.7023 58.833 21.7409 58.5811 21.7969 58.3125C21.8937 57.8476 22.0427 57.3377 22.2363 56.7695L23.8125 51.8154C23.8835 51.5701 23.9866 51.2474 24.1221 50.8408C24.2577 50.4404 24.3804 50.02 24.4902 49.5938C24.6 49.1676 24.6973 48.748 24.7812 48.3477C24.8652 47.9472 24.9102 47.6111 24.9102 47.3398H28.5781C28.5781 47.5852 28.5398 47.8888 28.4688 48.2568C28.3977 48.625 28.3068 49.0127 28.21 49.4131C28.1131 49.8198 28.0035 50.2202 27.8809 50.627C27.7582 51.0272 27.6486 51.3891 27.5518 51.7119L25.9756 56.5947C25.8012 57.1114 25.6588 57.5637 25.5361 57.9512C25.4135 58.3449 25.3497 58.6225 25.3496 58.7969C25.3496 59.165 25.5239 59.3457 25.8662 59.3457C26.5248 59.3456 27.1189 58.9194 27.6484 58.0605C28.1715 57.2016 28.7533 55.7617 29.3926 53.7275L31.4141 47.3076H36.626L35.9277 49.4385H34.4941L33.0996 53.7334C32.5119 55.5482 31.8787 56.9954 31.207 58.0869C30.5354 59.1782 29.8441 60.011 29.1338 60.5986C28.4235 61.1862 27.7004 61.574 26.9707 61.7549C26.2344 61.9357 25.5106 62.0332 24.8066 62.0332L24.3916 62.0029C23.4591 61.9563 22.7834 61.747 22.3652 61.374C21.8875 60.9478 21.6485 60.3408 21.6484 59.5596C21.6484 59.4642 21.6514 59.3653 21.6582 59.2637L20.8799 61.5615H18.0186L18.0117 61.5742C17.0302 61.5742 16.3583 61.3476 15.9902 60.8955C15.6223 60.4435 15.4414 59.8625 15.4414 59.1523C15.4414 58.7133 15.4741 58.2419 15.5322 57.7383C15.5903 57.2346 15.6803 56.7304 15.79 56.2139C15.8998 55.6972 16.0103 55.1932 16.1201 54.6895C16.2299 54.1858 16.3461 53.7145 16.4688 53.2754C16.1007 53.0559 15.6548 52.8618 15.1318 52.6875C14.6022 52.5196 14.1366 52.4165 13.7168 52.3906C13.1033 54.1794 12.5029 55.6715 11.9023 56.8662C11.3017 58.0674 10.6621 59.0294 9.97754 59.7656C9.29295 60.5019 8.53061 61.0187 7.68457 61.3223C6.83865 61.6257 5.88302 61.7812 4.80469 61.7812C4.21697 61.7812 3.64196 61.6836 3.08008 61.4834C2.51826 61.2896 2.00109 60.9863 1.53613 60.5859C1.07126 60.1856 0.696598 59.6816 0.418945 59.0811C0.134906 58.4806 -0.000926592 57.7767 -0.000976562 56.9697C-0.000976562 56.0397 0.219033 55.1219 0.658203 54.2178C1.09737 53.3137 1.73685 52.4997 2.56348 51.7764C3.39657 51.0531 4.40452 50.4723 5.59277 50.0332C6.78103 49.5941 8.10478 49.374 9.57715 49.374H10.3457C10.6621 49.374 10.9205 49.3873 11.1143 49.4131C11.5082 48.1666 12.0122 46.9135 12.6387 45.667C13.2651 44.4206 14.0464 43.3033 14.9893 42.3281C15.9321 41.353 17.0365 40.5524 18.3086 39.9453C19.5808 39.3318 21.06 39.0284 22.752 39.0283H23.3018ZM71.0098 47.0039C71.4747 47.0039 71.946 47.0751 72.4238 47.2236C72.9016 47.3721 73.328 47.598 73.709 47.9014C74.09 48.2049 74.3935 48.5927 74.626 49.0576C74.8584 49.5225 74.9755 50.0585 74.9756 50.6719C74.9756 51.9958 74.7622 53.3137 74.3359 54.6377C73.9097 55.9617 73.3347 57.1502 72.6113 58.2158C71.888 59.2814 71.0422 60.1471 70.0605 60.8252C69.0855 61.4968 68.0456 61.8319 66.9414 61.832C65.5465 61.832 64.4804 61.4967 63.7441 60.8252C63.0079 60.1535 62.6465 59.2552 62.6465 58.125C62.6465 56.659 62.8722 55.2511 63.3242 53.9014C63.7763 52.5581 64.3831 51.3762 65.1387 50.3623C65.8943 49.3483 66.7859 48.5344 67.7998 47.9209C68.8138 47.3074 69.886 47.0039 71.0098 47.0039ZM52.0869 57.0791C52.0352 57.2535 51.9773 57.4408 51.9062 57.6475C51.8352 57.8541 51.7959 58.0547 51.7959 58.2549C51.796 58.4549 51.8672 58.6359 52.0156 58.8037C52.1641 58.9716 52.4162 59.0615 52.7842 59.0615H54.3994L53.5527 61.5615H50.7627C50.0266 61.5615 49.4907 61.348 49.1484 60.9219C48.8062 60.4956 48.6319 59.9984 48.6318 59.4365H48.4834V59.4434C47.9926 60.3215 47.4109 60.9417 46.7393 61.2969C46.0677 61.652 45.4214 61.8262 44.8145 61.8262C43.8136 61.8261 43.0512 61.5094 42.541 60.8701C42.0245 60.2308 41.7734 59.365 41.7734 58.2607C41.7735 57.1564 41.9598 55.9677 42.3408 54.6826C42.7218 53.3977 43.2776 52.2032 44.0137 51.1055C44.7499 50.0011 45.6548 49.0905 46.7334 48.3672C47.8119 47.6439 49.0455 47.2822 50.4404 47.2822H55.2842L52.0869 57.0791ZM62.3945 47.2949H64.8555L64.0479 49.4258H61.6973L59.4238 56.5107C59.2043 57.221 59.0938 57.6989 59.0938 57.9443C59.0938 58.2608 59.1519 58.5324 59.2617 58.752C59.3715 58.9715 59.6366 59.081 60.0498 59.0811H62.0332L61.0449 61.5811H58.5127L58.5 61.5742C57.3763 61.5742 56.5429 61.3869 56.0068 61.0059C55.4709 60.6248 55.2002 59.998 55.2002 59.1133C55.2002 58.771 55.2452 58.3964 55.3291 57.9961C55.4131 57.5892 55.5292 57.1435 55.6777 56.6592C55.7488 56.4912 55.8716 56.1361 56.0459 55.5938C56.2203 55.0577 56.4208 54.4311 56.6533 53.7207C56.8858 53.0103 57.1247 52.2741 57.3701 51.5186C57.6155 50.7629 57.8346 50.0652 58.0283 49.4258H56.4531L57.1895 47.2949H58.6934C58.9129 46.6362 59.1003 46.0545 59.2617 45.5508C59.4231 45.0471 59.5983 44.4662 59.792 43.8076H63.5703L62.3945 47.2949ZM42.0176 47.2949C41.9207 47.5662 41.74 48.0828 41.4883 48.8574C41.23 49.6258 40.9525 50.4784 40.6426 51.4082C40.339 52.3382 40.0348 53.2494 39.7441 54.1406C39.4535 55.0318 39.2148 55.7363 39.0469 56.2529C38.7499 57.1116 38.6084 57.6609 38.6084 57.9062C38.6084 58.2483 38.6664 58.5258 38.7891 58.7324C38.9118 58.939 39.1702 59.042 39.5576 59.042H41.2432L40.3262 61.5742H38.0586C36.9351 61.5742 36.1086 61.3868 35.5791 61.0059C35.056 60.6248 34.791 59.9981 34.791 59.1133C34.791 58.474 34.9138 57.7442 35.1592 56.9111C35.3529 56.3234 35.5533 55.7229 35.7471 55.1094C35.9408 54.4959 36.1599 53.8178 36.4053 53.0752C36.6507 52.326 36.9223 51.4925 37.2129 50.5625C37.5035 49.6325 37.8463 48.5413 38.2402 47.2949H42.0176ZM79.7158 44.46C79.8127 44.46 80.0261 44.4591 80.3555 44.4785C80.6847 44.4914 81.0268 44.498 81.3818 44.498H83.0488L82.1318 47.3271H88.2988C87.4206 49.0901 86.7237 50.5627 86.207 51.751C85.6904 52.9391 85.3025 53.9207 85.0312 54.7021C84.7601 55.4834 84.5859 56.1102 84.502 56.5752C84.418 57.0402 84.3721 57.4345 84.3721 57.751C84.3721 58.3127 84.5015 58.6744 84.7598 58.8359C85.018 58.9973 85.3023 59.0751 85.625 59.0752H87.8281L86.8721 61.5742H83.8301C82.9711 61.5742 82.2282 61.4064 81.5889 61.0576C80.9495 60.7153 80.6328 60.0436 80.6328 59.0361C80.6328 58.6939 80.704 58.1966 80.8525 57.5508C81.0011 56.905 81.2145 56.1622 81.4922 55.3291C81.7699 54.496 82.1181 53.5977 82.5186 52.6289C82.9189 51.6602 83.3715 50.6915 83.8623 49.71H81.3311C81.2083 50.0264 81.0529 50.4787 80.8721 51.0664C80.6912 51.6541 80.4714 52.3069 80.2324 53.0303C79.9871 53.7534 79.7414 54.4958 79.4961 55.2705C79.2507 56.039 79.0052 56.7884 78.7598 57.5117C78.5143 58.2351 78.2953 58.8813 78.1016 59.4561C77.9079 60.0306 77.759 60.476 77.6621 60.7988C77.5136 61.309 77.1134 61.5673 76.4482 61.5674H73.9873L79.7158 44.46ZM50.0205 49.7812C49.407 49.7812 48.8448 50.0586 48.3281 50.6074C47.8115 51.1564 47.3592 51.8289 46.9717 52.6104C46.5779 53.3916 46.2553 54.2245 45.9971 55.1025C45.7387 55.9809 45.5637 56.7695 45.4668 57.4541C45.3958 57.7251 45.3574 57.88 45.3574 57.9316C45.3574 58.4225 45.4547 58.7458 45.6484 58.9072C45.842 59.0683 46.0871 59.1454 46.3838 59.1455L46.4688 59.1416C46.8567 59.1027 47.2495 58.7745 47.6367 58.1514C48.05 57.4927 48.4444 56.6852 48.8125 55.7295C49.1806 54.7737 49.529 53.7592 49.8584 52.6807C50.1878 51.6022 50.4921 50.6402 50.7568 49.7812H50.0205ZM70.3184 49.7168C69.8794 49.717 69.4277 50.0459 68.9629 50.7041C68.4979 51.3629 68.0707 52.1449 67.6768 53.0361C67.2829 53.9272 66.9604 54.8314 66.7021 55.7354C66.4438 56.6395 66.3145 57.3505 66.3145 57.8672C66.3145 58.2868 66.4046 58.5971 66.5918 58.8037C66.7726 59.0104 66.9993 59.1133 67.2705 59.1133C67.5416 59.1132 67.8259 58.9586 68.1357 58.6553C68.4393 58.3517 68.7426 57.9442 69.0332 57.4404C69.3303 56.9367 69.6086 56.3811 69.8799 55.7676C70.1511 55.1542 70.3901 54.547 70.5967 53.9336C70.8033 53.3201 70.9711 52.745 71.0938 52.209C71.2164 51.6733 71.2744 51.215 71.2744 50.8535L71.2705 50.7188C71.2506 50.4011 71.1609 50.158 70.9971 49.9941C70.8162 49.8133 70.5832 49.7168 70.3184 49.7168ZM9.15723 52.0605C8.27899 52.0606 7.47153 52.1833 6.73535 52.4287C5.99924 52.6741 5.37327 53.0041 4.84375 53.4238C4.3142 53.8371 3.90683 54.3083 3.61621 54.8379C3.32564 55.3674 3.17681 55.9099 3.17676 56.4717L3.19238 56.748C3.23343 57.3698 3.41855 57.8337 3.75195 58.1445C4.133 58.4997 4.62376 58.6738 5.2373 58.6738C5.75393 58.6738 6.21869 58.5577 6.65137 58.3252C7.07762 58.0927 7.4914 57.7182 7.87891 57.208C8.2728 56.6914 8.64755 56.0195 9.01562 55.1865C9.3837 54.3535 9.75845 53.3397 10.1523 52.1387C10.0039 52.1129 9.83582 52.093 9.63574 52.0801C9.44199 52.0672 9.27994 52.0605 9.15723 52.0605ZM21.4541 41.6367C20.7179 41.7336 20.0333 41.9408 19.4004 42.2637C18.7611 42.5801 18.1607 43.058 17.5859 43.6973C17.0111 44.3366 16.4688 45.1572 15.9521 46.1582C15.4355 47.1592 14.9632 48.386 14.5176 49.8262C14.6661 49.8262 14.8601 49.8523 15.1055 49.8975C15.3509 49.9427 15.603 50.0071 15.8613 50.0781C16.1197 50.1492 16.378 50.2334 16.6299 50.3174C16.8882 50.4013 17.1016 50.4846 17.2695 50.5557C17.9024 48.5279 18.5476 46.7903 19.1934 45.3438C19.8392 43.8972 20.5952 42.6636 21.4541 41.6367ZM42.793 44.7627H38.9756L40.1514 41.3857H43.9688L42.793 44.7627ZM46.3193 0C51.7185 8.98003e-06 56.9564 1.05946 61.8906 3.14551C66.6568 5.16052 70.9327 8.04107 74.6074 11.7158C78.282 15.3905 81.1628 19.6656 83.1777 24.4316C85.2638 29.3658 86.3222 34.6038 86.3223 40.0029V40.4102C86.3223 40.7654 86.3225 41.1272 86.3096 41.4824C86.303 41.7794 86.0577 42.0185 85.7607 42.0186H85.7285C85.4251 42.0121 85.1861 41.7601 85.1924 41.4502C85.1988 41.1079 85.2051 40.7524 85.2051 40.4102V40.0029C85.205 34.7525 84.1782 29.6571 82.1504 24.8652C80.1935 20.2347 77.3839 16.0754 73.8125 12.5039C70.241 8.93242 66.0815 6.12291 61.4443 4.16602C56.6524 2.1382 51.5571 1.11137 46.3066 1.11133C41.056 1.11133 35.9601 2.13808 31.168 4.16602C26.5373 6.1229 22.3781 8.93244 18.8066 12.5039C15.2352 16.0754 12.4256 20.2347 10.4688 24.8652C8.44097 29.6636 7.4141 34.7525 7.41406 40.0029V40.4102C7.41406 40.7524 7.41384 41.1079 7.42676 41.4502C7.43306 41.7536 7.19407 42.0056 6.89062 42.0186H6.87793C6.58092 42.0186 6.33568 41.7794 6.3291 41.4824C6.31619 41.1272 6.31641 40.7654 6.31641 40.4102V40.0029C6.31645 34.6038 7.37492 29.3658 9.46094 24.4316C11.4759 19.6656 14.3631 15.3905 18.0312 11.7158C21.6996 8.04104 25.9818 5.16052 30.748 3.14551C35.6823 1.05945 40.9201 0 46.3193 0ZM67.3867 11.0312C68.2974 10.851 70.0604 15.8558 71.3262 22.2168L71.6748 22.1465C72.2819 22.0238 72.8763 22.4177 72.999 23.0312C73.1214 23.6381 72.7211 24.2317 72.1143 24.3545L71.7656 24.4326C73.0312 30.7929 73.864 35.9845 72.9541 36.167C72.0435 36.3478 70.2795 31.3429 69.0137 24.9814L68.6006 25.0586C68.6587 25.7107 68.6783 26.3048 68.6396 26.7568C68.4846 28.675 63.208 30.3677 61.3867 30.9102C60.7861 30.3677 60.1724 28.9922 59.8301 27.9912C59.3522 26.5768 58.1315 26.57 57.3564 26.6152C57.2985 26.6214 57.2858 26.5315 57.3438 26.5186C57.9896 26.37 58.9845 26.1501 59.2363 26.1113L59.0479 25.3574C58.9056 24.7811 58.8052 24.3211 58.752 23.7158C56.4657 23.9548 43.6391 26.6474 30.9355 31.3232C32.6983 31.1683 32.5887 31.9754 32.2207 32.5566C35.1659 31.5297 45.267 28.9213 52.4551 27.5586C52.5517 27.546 52.5902 27.6806 52.5 27.7129C48.1341 29.3404 45.4922 31.4075 40.9326 32.8994L40.9785 33.0029C46.0871 31.5368 52.1837 27.6679 56.7109 27.416C58.3963 27.3192 59.0165 28.2554 59.249 28.7656C59.9272 30.2446 60.9798 33.384 61.1025 34.4238C61.1929 35.1858 61.1598 36.0384 56.5303 36.626C51.6736 37.2395 50.2391 36.9489 49.1348 36.2256C48.0304 35.5023 46.5451 34.6493 44.7109 34.5137C42.8697 34.3717 32.3625 35.1466 30.8965 35.1982C30.6834 35.5535 30.3408 35.8182 29.9404 35.8828C28.4616 36.1152 25.8144 36.1929 24.3936 36.2188C23.9996 36.2252 23.6179 36.064 23.3467 35.7734L22.6621 35.0371C20.4405 34.7981 19.1678 34.391 18.9482 33.9131C18.5419 33.0091 21.0985 32.1114 21.3896 30.833C21.8998 28.5857 21.7321 22.8572 22.5908 20.5254C23.1074 19.1112 25.658 18.0324 26.498 18.8906C27.1762 19.5817 28.5004 23.7157 29.6436 25.7178C30.4444 27.1321 31.5103 27.6029 33.4736 26.6406C41.4237 22.7398 42.2378 20.3115 47.3076 18.7744C47.6047 18.684 48.044 18.5742 48.5605 18.458C48.9803 18.5355 49.4001 18.8328 49.7939 19.627C49.9552 19.5624 50.1231 19.5237 50.3037 19.5107C51.1691 19.4591 51.919 20.118 51.9707 20.9834V20.9961C52.3322 20.9315 52.7452 20.8603 53.21 20.7764C52.9931 19.175 53.2936 18.5822 53.3008 18.5684C54.4115 18.7621 55.4452 19.6397 56.0781 20.292C56.22 20.2662 56.362 20.2475 56.5039 20.2217C60.7277 19.5435 63.3954 19.4338 64.3965 19.4209C65.4169 19.408 66.6246 19.5244 67.4189 20.6416C67.7547 21.1196 68.032 21.9271 68.2451 22.8311L68.5752 22.7656C67.3094 16.4043 66.4761 11.2121 67.3867 11.0312ZM59.3066 33.7969C58.0534 34.1264 54.4954 35.1529 52.416 35.8955L52.4414 35.9609C54.3466 35.4636 57.8415 34.701 58.6875 34.5137C59.1458 34.4168 59.3914 34.3066 59.5205 34.1904C59.7007 34.0289 59.539 33.7388 59.3066 33.7969ZM58.6484 32.1113C57.5893 31.924 52.8874 33.9069 50.1426 34.8369L50.1689 34.9014C51.984 34.4298 56.6141 33.0544 58.2803 32.6992C58.9979 32.5466 58.9044 32.2361 58.7314 32.1348L58.6484 32.1113ZM70.3125 24.7549C71.3453 29.9312 72.3473 34.1253 72.7256 34.3145L72.7539 34.3203C73.1083 34.2462 72.449 29.8743 71.3838 24.5352L70.3125 24.7549ZM58.209 30.4512C57.3297 29.7932 51.2857 32.6923 47.876 33.8096L47.8955 33.874C49.6269 33.4152 55.3875 31.362 57.8867 30.9229C58.3641 30.8388 58.3187 30.548 58.209 30.4512ZM25.9814 19.9111C25.7682 19.6918 25.3675 19.6013 24.6768 19.9111C24.3543 20.0596 24.4899 20.15 24.748 20.0791C25.1484 19.9758 25.5553 20.0083 25.7168 20.5635C25.9364 21.3256 26.8858 25.2525 27.5381 27.9004C27.8029 28.9725 27.2345 30.0834 26.2012 30.4902C22.4308 31.9816 19.8675 33.1891 19.9434 33.5898C19.9692 33.7125 20.2661 33.7514 20.7891 33.7256C21.1895 33.3962 22.5654 32.7509 26.6533 31.3818C26.8019 31.3302 26.9507 31.2845 27.0928 31.2393C48.5926 24.0317 57.3373 22.74 58.6807 22.5527C58.6807 22.3332 58.6873 22.1069 58.7002 21.8809C53.9016 22.7398 45.8801 24.471 35.4111 27.7842C35.433 27.7752 43.9803 24.2718 57.4268 21.6191L58.7451 21.3711C58.7645 21.1839 58.79 21.0094 58.8223 20.8545C54.76 21.4874 49.374 22.7083 44.666 24.1162C42.1215 24.8783 39.2345 25.8853 36.5479 26.9639C38.9308 25.6465 41.514 24.3485 43.7227 23.4443C43.6516 22.7404 43.6645 22.1589 43.7227 21.6875C41.0684 23.005 38.7884 25.343 33.2344 27.9004C31.1226 28.8755 29.6952 28.3913 28.875 26.667C27.9321 24.6907 26.5304 20.4472 25.9814 19.9111ZM57.6533 28.792C56.9623 27.6359 49.6709 31.4653 45.5957 32.7764L45.6152 32.8477C47.2685 32.4085 54.1526 29.6704 57.4854 29.1406C57.6265 29.118 57.7189 28.9767 57.6836 28.8467L57.6533 28.792ZM66.9473 26.4922C65.5975 27.222 63.0404 28.1075 61.0254 28.5596C61.2643 29.089 61.5228 29.5669 61.7939 29.9736C64.1371 29.2834 66.3893 28.3943 67.2363 27.7324L67.3867 27.6094C67.3995 27.6003 67.7899 27.3205 67.9424 26.9902C67.8843 27.0419 67.8194 27.074 67.7549 27.0869C67.5288 27.1321 67.1991 26.8539 66.9473 26.4922ZM65.7461 20.1377C64.209 19.9827 61.9484 20.2986 60.3467 20.6279C60.0369 20.6861 59.8305 20.9059 59.7207 21.1963C60.6312 21.0284 61.5615 20.8669 62.5107 20.7119C62.6721 20.6863 62.8205 20.8031 62.8398 20.958C62.8526 21.1064 62.7428 21.2482 62.5879 21.2676C62.0647 21.3354 61.3744 21.4356 60.5225 21.5742L59.6172 21.7324C59.5203 22.9724 59.7265 24.5165 60.127 26.002C62.523 25.6015 65.7784 24.7806 66.2305 24.6191C66.1982 24.4837 66.1654 24.342 66.1396 24.2002C65.7974 22.5016 65.9723 21.0287 66.5342 20.9189C66.87 20.8545 67.2707 21.2937 67.6064 22.0234C67.5483 21.8168 67.0378 20.2669 65.7461 20.1377ZM71.9268 22.5918L68.2588 23.3213C67.8907 23.3923 67.6575 23.7481 67.7285 24.1162V24.1221L72.0625 23.2568C72.2433 23.218 72.3659 23.0372 72.3271 22.8564C72.2884 22.6756 72.1076 22.553 71.9268 22.5918ZM47.0947 20.3574C46.3731 20.5705 45.7129 20.8053 45.082 21.0674L44.4531 21.3389C44.3627 21.7715 44.2981 22.3784 44.3691 23.1855C45.383 22.7852 46.3323 22.4495 47.2041 22.2041C47.019 21.2784 47.093 20.378 47.0947 20.3574ZM67.5674 12.9238C67.2123 12.9954 67.871 17.3672 68.9365 22.708L70.0088 22.4951C68.9766 17.3155 67.9745 13.1233 67.5957 12.9297L67.5674 12.9238ZM47.2949 19.3496C46.4554 19.595 45.4024 20.0276 44.6016 20.3828H44.6074L44.5371 20.7705C45.325 20.4218 46.3453 20.0472 47.1719 19.8018L47.2949 19.3496Z\" fill=\"white\"/>\\n</svg>\\n',withExternalLayout:true})})})})});});const css=[\".framer-a255m.framer-6ye468, .framer-a255m .framer-6ye468 { display: block; }\",\".framer-a255m.framer-19ybpaw { height: 88px; overflow: var(--overflow-clip-fallback, clip); position: relative; width: 88px; }\",\".framer-a255m .framer-1moi63k { flex: none; height: 68px; left: calc(51.136363636363654% - 76px / 2); position: absolute; top: calc(50.00000000000002% - 68px / 2); width: 76px; }\"];/**\n * This is a generated Framer component.\n * @framerIntrinsicHeight 88\n * @framerIntrinsicWidth 88\n * @framerCanvasComponentVariantDetails {\"propertyName\":\"variant\",\"data\":{\"default\":{\"layout\":[\"fixed\",\"fixed\"]}}}\n * @framerImmutableVariables true\n * @framerDisplayContentsDiv false\n * @framerAutoSizeImages true\n * @framerComponentViewportWidth true\n * @framerColorSyntax true\n */const FramerTU2OwVTIC=withCSS(Component,css,\"framer-a255m\");export default FramerTU2OwVTIC;FramerTU2OwVTIC.displayName=\"aviator-logo\";FramerTU2OwVTIC.defaultProps={height:88,width:88};addFonts(FramerTU2OwVTIC,[{explicitInter:true,fonts:[]}],{supportsExplicitInterCodegen:true});\nexport const __FramerMetadata__ = {\"exports\":{\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"default\":{\"type\":\"reactComponent\",\"name\":\"FramerTU2OwVTIC\",\"slots\":[],\"annotations\":{\"framerComponentViewportWidth\":\"true\",\"framerImmutableVariables\":\"true\",\"framerColorSyntax\":\"true\",\"framerIntrinsicHeight\":\"88\",\"framerIntrinsicWidth\":\"88\",\"framerCanvasComponentVariantDetails\":\"{\\\"propertyName\\\":\\\"variant\\\",\\\"data\\\":{\\\"default\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]}}}\",\"framerContractVersion\":\"1\",\"framerDisplayContentsDiv\":\"false\",\"framerAutoSizeImages\":\"true\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./TU2OwVTIC.map","// Generated by Framer (e0edd7a)\nimport{jsx as _jsx}from\"react/jsx-runtime\";import{addFonts,addPropertyControls,ControlType,cx,Link,RichText,useActiveVariantCallback,useComponentViewport,useLocaleInfo,useVariantState,withCSS}from\"framer\";import{LayoutGroup,motion,MotionConfigContext}from\"framer-motion\";import*as React from\"react\";import{useRef}from\"react\";const enabledGestures={bslIGj12q:{hover:true,pressed:true},ikLKrlUqf:{hover:true,pressed:true}};const cycleOrder=[\"ikLKrlUqf\",\"bslIGj12q\"];const serializationHash=\"framer-EKATn\";const variantClassNames={bslIGj12q:\"framer-v-11g7226\",ikLKrlUqf:\"framer-v-rfuij5\"};function addPropertyOverrides(overrides,...variants){const nextOverrides={};variants?.forEach(variant=>variant&&Object.assign(nextOverrides,overrides[variant]));return nextOverrides;}const transition1={bounce:.2,delay:0,duration:.9,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={primary:\"bslIGj12q\",secondary:\"ikLKrlUqf\"};const getProps=({click,height,hover,id,link2,title,width,...props})=>{return{...props,Lz9CZA3Je:hover??props.Lz9CZA3Je,nqqGRlyFd:title??props.nqqGRlyFd??\"DOWNLOAD OUR DECK\",Pq04jnLnz:click??props.Pq04jnLnz,qS6WIkDc_:link2??props.qS6WIkDc_,variant:humanReadableVariantMap[props.variant]??props.variant??\"ikLKrlUqf\"};};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,Lz9CZA3Je,Pq04jnLnz,nqqGRlyFd,qS6WIkDc_,...restProps}=getProps(props);const{baseVariant,classNames,clearLoadingGesture,gestureHandlers,gestureVariant,isLoading,setGestureState,setVariant,variants}=useVariantState({cycleOrder,defaultVariant:\"ikLKrlUqf\",enabledGestures,ref:refBinding,variant,variantClassNames});const layoutDependency=createLayoutDependency(props,variants);const{activeVariantCallback,delay}=useActiveVariantCallback(baseVariant);const onTap1mrp4qb=activeVariantCallback(async(...args)=>{setGestureState({isPressed:false});if(Pq04jnLnz){const res=await Pq04jnLnz(...args);if(res===false)return false;}});const onMouseEnter1qhbjrt=activeVariantCallback(async(...args)=>{setGestureState({isHovered:true});if(Lz9CZA3Je){const res=await Lz9CZA3Je(...args);if(res===false)return false;}});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(Link,{href:qS6WIkDc_,motionChild:true,nodeId:\"ikLKrlUqf\",openInNewTab:true,scopeId:\"Wx43GpbSh\",children:/*#__PURE__*/_jsx(motion.a,{...restProps,...gestureHandlers,className:`${cx(scopingClassNames,\"framer-rfuij5\",className,classNames)} framer-11pvfaz`,\"data-framer-name\":\"secondary\",\"data-highlight\":true,layoutDependency:layoutDependency,layoutId:\"ikLKrlUqf\",onMouseEnter:onMouseEnter1qhbjrt,onTap:onTap1mrp4qb,ref:refBinding,style:{backgroundColor:\"rgba(226, 248, 107, 0.1)\",borderBottomLeftRadius:4,borderBottomRightRadius:4,borderTopLeftRadius:4,borderTopRightRadius:4,...style},variants:{\"bslIGj12q-hover\":{backgroundColor:\"rgba(226, 248, 107, 0.1)\"},\"bslIGj12q-pressed\":{backgroundColor:\"rgba(226, 248, 107, 0.2)\"},\"ikLKrlUqf-hover\":{backgroundColor:\"rgb(226, 248, 107)\"},\"ikLKrlUqf-pressed\":{backgroundColor:\"rgb(200, 219, 90)\"},bslIGj12q:{backgroundColor:\"rgb(226, 248, 107)\"}},...addPropertyOverrides({\"bslIGj12q-hover\":{\"data-framer-name\":undefined},\"bslIGj12q-pressed\":{\"data-framer-name\":undefined},\"ikLKrlUqf-hover\":{\"data-framer-name\":undefined},\"ikLKrlUqf-pressed\":{\"data-framer-name\":undefined},bslIGj12q:{\"data-framer-name\":\"primary\"}},baseVariant,gestureVariant),children:/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{style:{\"--font-selector\":\"Q1VTVE9NO1BQIE5ldWVCaXQgQm9sZA==\",\"--framer-font-family\":'\"PP NeueBit Bold\", \"PP NeueBit Bold Placeholder\", sans-serif',\"--framer-text-alignment\":\"center\",\"--framer-text-color\":\"var(--extracted-r6o4lv, rgb(226, 248, 108))\"},children:\"DOWNLOAD OUR DECK\"})}),className:\"framer-1pt0mj0\",fonts:[\"CUSTOM;PP NeueBit Bold\"],layoutDependency:layoutDependency,layoutId:\"RUgIeHlZH\",style:{\"--extracted-r6o4lv\":\"rgb(226, 248, 108)\",\"--framer-link-text-color\":\"rgb(0, 153, 255)\",\"--framer-link-text-decoration\":\"underline\"},text:nqqGRlyFd,variants:{\"bslIGj12q-hover\":{\"--extracted-r6o4lv\":\"rgb(226, 248, 107)\"},\"bslIGj12q-pressed\":{\"--extracted-r6o4lv\":\"rgb(226, 248, 107)\"}},verticalAlignment:\"center\",withExternalLayout:true,...addPropertyOverrides({\"bslIGj12q-hover\":{children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{style:{\"--font-selector\":\"Q1VTVE9NO1BQIE5ldWVCaXQgQm9sZA==\",\"--framer-font-family\":'\"PP NeueBit Bold\", \"PP NeueBit Bold Placeholder\", sans-serif',\"--framer-text-alignment\":\"center\",\"--framer-text-color\":\"var(--extracted-r6o4lv, rgb(226, 248, 107))\"},children:\"DOWNLOAD OUR DECK\"})})},\"bslIGj12q-pressed\":{children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{style:{\"--font-selector\":\"Q1VTVE9NO1BQIE5ldWVCaXQgQm9sZA==\",\"--framer-font-family\":'\"PP NeueBit Bold\", \"PP NeueBit Bold Placeholder\", sans-serif',\"--framer-text-alignment\":\"center\",\"--framer-text-color\":\"var(--extracted-r6o4lv, rgb(226, 248, 107))\"},children:\"DOWNLOAD OUR DECK\"})})},\"ikLKrlUqf-hover\":{children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{style:{\"--font-selector\":\"Q1VTVE9NO1BQIE5ldWVCaXQgQm9sZA==\",\"--framer-font-family\":'\"PP NeueBit Bold\", \"PP NeueBit Bold Placeholder\", sans-serif',\"--framer-text-alignment\":\"center\"},children:\"DOWNLOAD OUR DECK\"})})},\"ikLKrlUqf-pressed\":{children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{style:{\"--font-selector\":\"Q1VTVE9NO1BQIE5ldWVCaXQgQm9sZA==\",\"--framer-font-family\":'\"PP NeueBit Bold\", \"PP NeueBit Bold Placeholder\", sans-serif',\"--framer-text-alignment\":\"center\"},children:\"DOWNLOAD OUR DECK\"})})},bslIGj12q:{children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{style:{\"--font-selector\":\"Q1VTVE9NO1BQIE5ldWVCaXQgQm9sZA==\",\"--framer-font-family\":'\"PP NeueBit Bold\", \"PP NeueBit Bold Placeholder\", sans-serif',\"--framer-text-alignment\":\"center\"},children:\"DOWNLOAD OUR DECK\"})})}},baseVariant,gestureVariant)})})})})})});});const css=[\"@supports (aspect-ratio: 1) { body { --framer-aspect-ratio-supported: auto; } }\",\".framer-EKATn.framer-11pvfaz, .framer-EKATn .framer-11pvfaz { display: block; }\",\".framer-EKATn.framer-rfuij5 { 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: hidden; padding: 4px 12px 2px 12px; position: relative; text-decoration: none; width: min-content; will-change: var(--framer-will-change-override, transform); }\",\".framer-EKATn .framer-1pt0mj0 { --framer-text-wrap: balance; flex: none; height: 22px; position: relative; white-space: pre-wrap; width: 132px; word-break: break-word; word-wrap: break-word; }\"];/**\n * This is a generated Framer component.\n * @framerIntrinsicHeight 27.5\n * @framerIntrinsicWidth 155.5\n * @framerCanvasComponentVariantDetails {\"propertyName\":\"variant\",\"data\":{\"default\":{\"layout\":[\"auto\",\"auto\"]},\"bslIGj12q\":{\"layout\":[\"auto\",\"auto\"]},\"jdN_gkxeo\":{\"layout\":[\"auto\",\"auto\"]},\"YbE8glM8z\":{\"layout\":[\"auto\",\"auto\"]},\"bR8nUrm45\":{\"layout\":[\"auto\",\"auto\"]},\"kKKDHStMw\":{\"layout\":[\"auto\",\"auto\"]}}}\n * @framerVariables {\"Lz9CZA3Je\":\"hover\",\"Pq04jnLnz\":\"click\",\"nqqGRlyFd\":\"title\",\"qS6WIkDc_\":\"link2\"}\n * @framerImmutableVariables true\n * @framerDisplayContentsDiv false\n * @framerAutoSizeImages true\n * @framerComponentViewportWidth true\n * @framerColorSyntax true\n */const FramerWx43GpbSh=withCSS(Component,css,\"framer-EKATn\");export default FramerWx43GpbSh;FramerWx43GpbSh.displayName=\"button\";FramerWx43GpbSh.defaultProps={height:27.5,width:155.5};addPropertyControls(FramerWx43GpbSh,{variant:{options:[\"ikLKrlUqf\",\"bslIGj12q\"],optionTitles:[\"secondary\",\"primary\"],title:\"Variant\",type:ControlType.Enum},Lz9CZA3Je:{title:\"Hover\",type:ControlType.EventHandler},Pq04jnLnz:{title:\"Click\",type:ControlType.EventHandler},nqqGRlyFd:{defaultValue:\"DOWNLOAD OUR DECK\",displayTextArea:false,title:\"Title\",type:ControlType.String},qS6WIkDc_:{title:\"Link 2\",type:ControlType.Link}});addFonts(FramerWx43GpbSh,[{explicitInter:true,fonts:[{family:\"PP NeueBit Bold\",source:\"custom\",url:\"https://framerusercontent.com/assets/LhlnRGZ9aD8mHk26ghaljbgKEcs.woff2\"}]}],{supportsExplicitInterCodegen:true});\nexport const __FramerMetadata__ = {\"exports\":{\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"default\":{\"type\":\"reactComponent\",\"name\":\"FramerWx43GpbSh\",\"slots\":[],\"annotations\":{\"framerColorSyntax\":\"true\",\"framerImmutableVariables\":\"true\",\"framerDisplayContentsDiv\":\"false\",\"framerIntrinsicWidth\":\"155.5\",\"framerContractVersion\":\"1\",\"framerIntrinsicHeight\":\"27.5\",\"framerAutoSizeImages\":\"true\",\"framerVariables\":\"{\\\"Lz9CZA3Je\\\":\\\"hover\\\",\\\"Pq04jnLnz\\\":\\\"click\\\",\\\"nqqGRlyFd\\\":\\\"title\\\",\\\"qS6WIkDc_\\\":\\\"link2\\\"}\",\"framerComponentViewportWidth\":\"true\",\"framerCanvasComponentVariantDetails\":\"{\\\"propertyName\\\":\\\"variant\\\",\\\"data\\\":{\\\"default\\\":{\\\"layout\\\":[\\\"auto\\\",\\\"auto\\\"]},\\\"bslIGj12q\\\":{\\\"layout\\\":[\\\"auto\\\",\\\"auto\\\"]},\\\"jdN_gkxeo\\\":{\\\"layout\\\":[\\\"auto\\\",\\\"auto\\\"]},\\\"YbE8glM8z\\\":{\\\"layout\\\":[\\\"auto\\\",\\\"auto\\\"]},\\\"bR8nUrm45\\\":{\\\"layout\\\":[\\\"auto\\\",\\\"auto\\\"]},\\\"kKKDHStMw\\\":{\\\"layout\\\":[\\\"auto\\\",\\\"auto\\\"]}}}\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./Wx43GpbSh.map","var t,e=Object.create,r=Object.defineProperty,n=Object.getOwnPropertyDescriptor,i=Object.getOwnPropertyNames,s=Object.getPrototypeOf,a=Object.prototype.hasOwnProperty,o=(t,e,n)=>e in t?r(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,u=(t,e)=>function(){try{return e||(0,t[i(t)[0]])((e={exports:{}}).exports,e),e.exports;}catch(t){throw e=0,t;}},l=(t,e,s,o)=>{if(e&&\"object\"==typeof e||\"function\"==typeof e)for(let u of i(e))a.call(t,u)||u===s||r(t,u,{get:()=>e[u],enumerable:!(o=n(e,u))||o.enumerable});return t;},h=(t,n,i)=>(i=null!=t?e(s(t)):{},l(// If the importer is in node compatibility mode or this is not an ESM\n    // file that has been converted to a CommonJS file using a Babel-\n    // compatible transform (i.e. \"__esModule\" has not been set), then set\n    // \"default\" to the CommonJS \"module.exports\" for node compatibility.\n    !n&&t&&t.__esModule?i:r(i,\"default\",{value:t,enumerable:!0}),t)),c=(t,e,r)=>o(t,\"symbol\"!=typeof e?e+\"\":e,r),f=u({\"../../../node_modules/dataloader/index.js\"(t,e){var r,n=/* @__PURE__ */function(){function t(t,e){if(\"function\"!=typeof t)throw TypeError(\"DataLoader must be constructed with a function which accepts Array<key> and returns Promise<Array<value>>, but got: \"+t+\".\");this._batchLoadFn=t,this._maxBatchSize=function(t){if(!(!t||!1!==t.batch))return 1;var e=t&&t.maxBatchSize;if(void 0===e)return 1/0;if(\"number\"!=typeof e||e<1)throw TypeError(\"maxBatchSize must be a positive number: \"+e);return e;}(e),this._batchScheduleFn=function(t){var e=t&&t.batchScheduleFn;if(void 0===e)return i;if(\"function\"!=typeof e)throw TypeError(\"batchScheduleFn must be a function: \"+e);return e;}(e),this._cacheKeyFn=function(t){var e=t&&t.cacheKeyFn;if(void 0===e)return function(t){return t;};if(\"function\"!=typeof e)throw TypeError(\"cacheKeyFn must be a function: \"+e);return e;}(e),this._cacheMap=function(t){if(!(!t||!1!==t.cache))return null;var e=t&&t.cacheMap;if(void 0===e)return /* @__PURE__ */new Map;if(null!==e){var r=[\"get\",\"set\",\"delete\",\"clear\"].filter(function(t){return e&&\"function\"!=typeof e[t];});if(0!==r.length)throw TypeError(\"Custom cacheMap missing methods: \"+r.join(\", \"));}return e;}(e),this._batch=null,this.name=e&&e.name?e.name:null;}var e=t.prototype;return e.load=function(t){if(null==t)throw TypeError(\"The loader.load() function must be called with a value, but got: \"+String(t)+\".\");var e=function(t){var e=t._batch;if(null!==e&&!e.hasDispatched&&e.keys.length<t._maxBatchSize)return e;var r={hasDispatched:!1,keys:[],callbacks:[]};return t._batch=r,t._batchScheduleFn(function(){(function(t,e){var r;if(e.hasDispatched=!0,0===e.keys.length){a(e);return;}try{r=t._batchLoadFn(e.keys);}catch(r){return s(t,e,TypeError(\"DataLoader must be constructed with a function which accepts Array<key> and returns Promise<Array<value>>, but the function errored synchronously: \"+String(r)+\".\"));}if(!r||\"function\"!=typeof r.then)return s(t,e,TypeError(\"DataLoader must be constructed with a function which accepts Array<key> and returns Promise<Array<value>>, but the function did not return a Promise: \"+String(r)+\".\"));r.then(function(t){if(!o(t))throw TypeError(\"DataLoader must be constructed with a function which accepts Array<key> and returns Promise<Array<value>>, but the function did not return a Promise of an Array: \"+String(t)+\".\");if(t.length!==e.keys.length)throw TypeError(\"DataLoader must be constructed with a function which accepts Array<key> and returns Promise<Array<value>>, but the function did not return a Promise of an Array of the same length as the Array of keys.\\n\\nKeys:\\n\"+String(e.keys)+\"\\n\\nValues:\\n\"+String(t));a(e);for(var r=0;r<e.callbacks.length;r++){var n=t[r];n instanceof Error?e.callbacks[r].reject(n):e.callbacks[r].resolve(n);}}).catch(function(r){s(t,e,r);});})(t,r);}),r;}(this),r=this._cacheMap,n=this._cacheKeyFn(t);if(r){var i=r.get(n);if(i){var u=e.cacheHits||(e.cacheHits=[]);return new Promise(function(t){u.push(function(){t(i);});});}}e.keys.push(t);var l=new Promise(function(t,r){e.callbacks.push({resolve:t,reject:r});});return r&&r.set(n,l),l;},e.loadMany=function(t){if(!o(t))throw TypeError(\"The loader.loadMany() function must be called with Array<key> but got: \"+t+\".\");for(var e=[],r=0;r<t.length;r++)e.push(this.load(t[r]).catch(function(t){return t;}));return Promise.all(e);},e.clear=function(t){var e=this._cacheMap;if(e){var r=this._cacheKeyFn(t);e.delete(r);}return this;},e.clearAll=function(){var t=this._cacheMap;return t&&t.clear(),this;},e.prime=function(t,e){var r=this._cacheMap;if(r){var n,i=this._cacheKeyFn(t);void 0===r.get(i)&&(e instanceof Error?(n=Promise.reject(e)).catch(function(){}):n=Promise.resolve(e),r.set(i,n));}return this;},t;}(),i=\"object\"==typeof process&&\"function\"==typeof process.nextTick?function(t){r||(r=Promise.resolve()),r.then(function(){process.nextTick(t);});}:\"function\"==typeof setImmediate?function(t){setImmediate(t);}:function(t){setTimeout(t);};function s(t,e,r){a(e);for(var n=0;n<e.keys.length;n++)t.clear(e.keys[n]),e.callbacks[n].reject(r);}function a(t){if(t.cacheHits)for(var e=0;e<t.cacheHits.length;e++)t.cacheHits[e]();}function o(t){return\"object\"==typeof t&&null!==t&&\"number\"==typeof t.length&&(0===t.length||t.length>0&&Object.prototype.hasOwnProperty.call(t,t.length-1));}e.exports=n;}}),d=h(f(),1),g={Uint8:1,Uint16:2,Uint32:4,BigUint64:8,Int8:1,Int16:2,Int32:4,BigInt64:8,Float32:4,Float64:8},y=class{getOffset(){return this.offset;}ensureLength(t){let e=this.bytes.length;if(!(this.offset+t<=e))throw Error(\"Reading out of bounds\");}readUint8(){let t=g.Uint8;this.ensureLength(t);let e=this.view.getUint8(this.offset);return this.offset+=t,e;}readUint16(){let t=g.Uint16;this.ensureLength(t);let e=this.view.getUint16(this.offset);return this.offset+=t,e;}readUint32(){let t=g.Uint32;this.ensureLength(t);let e=this.view.getUint32(this.offset);return this.offset+=t,e;}readUint64(){let t=this.readBigUint64();return Number(t);}readBigUint64(){let t=g.BigUint64;this.ensureLength(t);let e=this.view.getBigUint64(this.offset);return this.offset+=t,e;}readInt8(){let t=g.Int8;this.ensureLength(t);let e=this.view.getInt8(this.offset);return this.offset+=t,e;}readInt16(){let t=g.Int16;this.ensureLength(t);let e=this.view.getInt16(this.offset);return this.offset+=t,e;}readInt32(){let t=g.Int32;this.ensureLength(t);let e=this.view.getInt32(this.offset);return this.offset+=t,e;}readInt64(){let t=this.readBigInt64();return Number(t);}readBigInt64(){let t=g.BigInt64;this.ensureLength(t);let e=this.view.getBigInt64(this.offset);return this.offset+=t,e;}readFloat32(){let t=g.Float32;this.ensureLength(t);let e=this.view.getFloat32(this.offset);return this.offset+=t,e;}readFloat64(){let t=g.Float64;this.ensureLength(t);let e=this.view.getFloat64(this.offset);return this.offset+=t,e;}readBytes(t){let e=this.offset,r=e+t,n=this.bytes.subarray(e,r);return this.offset=r,n;}readString(){let t=this.readUint32(),e=this.readBytes(t);return this.decoder.decode(e);}readJson(){let t=this.readString();return JSON.parse(t);}constructor(t){c(this,\"bytes\",t),c(this,\"offset\",0),c(this,\"view\"),c(this,\"decoder\",new TextDecoder),this.view=p(this.bytes);}};function p(t){return new DataView(t.buffer,t.byteOffset,t.byteLength);}// src/code-generation/components/cms/bundled/DatabaseDictionaryIndex.ts\nimport{ControlType as v}from\"framer\";// ../../library/src/utils/utils.ts\nvar m=\"undefined\"!=typeof window,w=m&&\"function\"==typeof window.requestIdleCallback;// src/code-generation/components/cms/bundled/assert.ts\nfunction I(t,...e){if(!t)throw Error(\"Assertion Error\"+(e.length>0?\": \"+e.join(\" \"):\"\"));}function b(t){throw Error(`Unexpected value: ${t}`);}// src/code-generation/components/cms/bundled/BufferWriter.ts\nvar U=1024,S=1.5,k=t=>2**t-1,L=t=>-(2**(t-1)),B=t=>2**(t-1)-1,E={Uint8:0,Uint16:0,Uint32:0,Uint64:0,BigUint64:0,Int8:L(8),Int16:L(16),Int32:L(32),Int64:Number.MIN_SAFE_INTEGER,BigInt64:-(BigInt(2)**BigInt(63))},M={Uint8:k(8),Uint16:k(16),Uint32:k(32),Uint64:Number.MAX_SAFE_INTEGER,BigUint64:BigInt(2)**BigInt(64)-BigInt(1),Int8:B(8),Int16:B(16),Int32:B(32),Int64:Number.MAX_SAFE_INTEGER,BigInt64:BigInt(2)**BigInt(63)-BigInt(1)};function T(t,e,r,n){I(t>=e,t,\"outside lower bound for\",n),I(t<=r,t,\"outside upper bound for\",n);}var F=class{getOffset(){return this.offset;}slice(t=0,e=this.offset){return this.bytes.slice(t,e);}subarray(t=0,e=this.offset){return this.bytes.subarray(t,e);}ensureLength(t){let e=this.bytes.length;if(this.offset+t<=e)return;let r=new Uint8Array(Math.ceil(e*S)+t);r.set(this.bytes),this.bytes=r,this.view=p(r);}writeUint8(t){T(t,E.Uint8,M.Uint8,\"Uint8\");let e=g.Uint8;this.ensureLength(e),this.view.setUint8(this.offset,t),this.offset+=e;}writeUint16(t){T(t,E.Uint16,M.Uint16,\"Uint16\");let e=g.Uint16;this.ensureLength(e),this.view.setUint16(this.offset,t),this.offset+=e;}writeUint32(t){T(t,E.Uint32,M.Uint32,\"Uint32\");let e=g.Uint32;this.ensureLength(e),this.view.setUint32(this.offset,t),this.offset+=e;}writeUint64(t){T(t,E.Uint64,M.Uint64,\"Uint64\");let e=BigInt(t);this.writeBigUint64(e);}writeBigUint64(t){T(t,E.BigUint64,M.BigUint64,\"BigUint64\");let e=g.BigUint64;this.ensureLength(e),this.view.setBigUint64(this.offset,t),this.offset+=e;}writeInt8(t){T(t,E.Int8,M.Int8,\"Int8\");let e=g.Int8;this.ensureLength(e),this.view.setInt8(this.offset,t),this.offset+=e;}writeInt16(t){T(t,E.Int16,M.Int16,\"Int16\");let e=g.Int16;this.ensureLength(e),this.view.setInt16(this.offset,t),this.offset+=e;}writeInt32(t){T(t,E.Int32,M.Int32,\"Int32\");let e=g.Int32;this.ensureLength(e),this.view.setInt32(this.offset,t),this.offset+=e;}writeInt64(t){T(t,E.Int64,M.Int64,\"Int64\");let e=BigInt(t);this.writeBigInt64(e);}writeBigInt64(t){T(t,E.BigInt64,M.BigInt64,\"BigInt64\");let e=g.BigInt64;this.ensureLength(e),this.view.setBigInt64(this.offset,t),this.offset+=e;}writeFloat32(t){let e=g.Float32;this.ensureLength(e),this.view.setFloat32(this.offset,t),this.offset+=e;}writeFloat64(t){let e=g.Float64;this.ensureLength(e),this.view.setFloat64(this.offset,t),this.offset+=e;}writeBytes(t){let e=t.length;this.ensureLength(e),this.bytes.set(t,this.offset),this.offset+=e;}encodeString(t){let e=this.encodedStrings.get(t);if(e)return e;let r=this.encoder.encode(t);return this.encodedStrings.set(t,r),r;}writeString(t){let e=this.encodeString(t),r=e.length;this.writeUint32(r),this.writeBytes(e);}writeJson(t){let e=JSON.stringify(t);this.writeString(e);}constructor(){c(this,\"offset\",0),c(this,\"bytes\",new Uint8Array(U)),c(this,\"view\",p(this.bytes)),c(this,\"encoder\",new TextEncoder),c(this,\"encodedStrings\",/* @__PURE__ */new Map);}};// src/utils/typeChecks.ts\nfunction x(t){return\"string\"==typeof t;}function N(t){return Number.isFinite(t);}function A(t){return null===t;}// src/code-generation/components/cms/bundled/models/DatabaseItemPointerModel.ts\nvar O=class t{static fromString(e){let[r,n,i]=e.split(\"/\").map(Number);return I(N(r),\"Invalid chunkId\"),I(N(n),\"Invalid offset\"),I(N(i),\"Invalid length\"),new t(r,n,i);}toString(){return`${this.chunkId}/${this.offset}/${this.length}`;}static read(e){let r=e.readUint16(),n=e.readUint32(),i=e.readUint32();return new t(r,n,i);}write(t){t.writeUint16(this.chunkId),t.writeUint32(this.offset),t.writeUint32(this.length);}compare(t){return this.chunkId<t.chunkId?-1:this.chunkId>t.chunkId?1:this.offset<t.offset?-1:this.offset>t.offset?1:(I(this.length===t.length),0);}constructor(t,e,r){c(this,\"chunkId\",t),c(this,\"offset\",e),c(this,\"length\",r);}};// src/code-generation/components/cms/bundled/models/DatabaseValueModel.ts\nimport{ControlType as P}from\"framer\";function R(t){if(A(t))return 0/* Null */;switch(t.type){case P.Array:return 1/* Array */;case P.Boolean:return 2/* Boolean */;case P.Color:return 3/* Color */;case P.Date:return 4/* Date */;case P.Enum:return 5/* Enum */;case P.File:return 6/* File */;case P.ResponsiveImage:return 10/* ResponsiveImage */;case P.Link:return 7/* Link */;case P.Number:return 8/* Number */;case P.Object:return 9/* Object */;case P.RichText:return 11/* RichText */;case P.String:return 12/* String */;case P.VectorSetItem:return 13/* VectorSetItem */;default:b(t);}}function q(e){let r=e.readUint16(),n=[];for(let i=0;i<r;i++){let r=t.read(e);n.push(r);}return{type:P.Array,value:n};}function _(e,r){for(let n of(e.writeUint16(r.value.length),r.value))t.write(e,n);}function D(e,r,n){let i=e.value.length,s=r.value.length;if(i<s)return -1;if(i>s)return 1;for(let s=0;s<i;s++){let i=e.value[s],a=r.value[s],o=t.compare(i,a,n);if(0!==o)return o;}return 0;}function j(t){return{type:P.Boolean,value:0!==t.readUint8()};}function C(t,e){t.writeUint8(e.value?1:0);}function J(t,e){return t.value<e.value?-1:t.value>e.value?1:0;}function V(t){return{type:P.Color,value:t.readString()};}function W(t,e){t.writeString(e.value);}function $(t,e){return t.value<e.value?-1:t.value>e.value?1:0;}function z(t){let e=t.readInt64(),r=new Date(e);return{type:P.Date,value:r.toISOString()};}function G(t,e){let r=new Date(e.value),n=r.getTime();t.writeInt64(n);}function K(t,e){let r=new Date(t.value),n=new Date(e.value);return r<n?-1:r>n?1:0;}function H(t){return{type:P.Enum,value:t.readString()};}function X(t,e){t.writeString(e.value);}function Q(t,e){return t.value<e.value?-1:t.value>e.value?1:0;}function Y(t){return{type:P.File,value:t.readString()};}function Z(t,e){t.writeString(e.value);}function tt(t,e){return t.value<e.value?-1:t.value>e.value?1:0;}function te(t){return{type:P.Link,value:t.readJson()};}function tr(t,e){t.writeJson(e.value);}function tn(t,e){let r=JSON.stringify(t.value),n=JSON.stringify(e.value);return r<n?-1:r>n?1:0;}function ti(t){return{type:P.Number,value:t.readFloat64()};}function ts(t,e){t.writeFloat64(e.value);}function ta(t,e){return t.value<e.value?-1:t.value>e.value?1:0;}function to(e){let r=e.readUint16(),n={};for(let i=0;i<r;i++){let r=e.readString();n[r]=t.read(e);}return{type:P.Object,value:n};}function tu(e,r){let n=Object.entries(r.value);for(let[r,i]of(e.writeUint16(n.length),n))e.writeString(r),t.write(e,i);}function tl(e,r,n){let i=Object.keys(e.value).sort(),s=Object.keys(r.value).sort();if(i.length<s.length)return -1;if(i.length>s.length)return 1;for(let a=0;a<i.length;a++){let o=i[a],u=s[a];if(o<u)return -1;if(o>u)return 1;let l=e.value[o]??null,h=r.value[u]??null,c=t.compare(l,h,n);if(0!==c)return c;}return 0;}function th(t){return{type:P.ResponsiveImage,value:t.readJson()};}function tc(t,e){t.writeJson(e.value);}function tf(t,e){let r=JSON.stringify(t.value),n=JSON.stringify(e.value);return r<n?-1:r>n?1:0;}function td(t){let e=t.readInt8();if(0===e)return{type:P.RichText,value:t.readUint32()};if(1===e)return{type:P.RichText,value:t.readString()};throw Error(\"Invalid rich text pointer\");}function tg(t,e){if(N(e.value)){t.writeInt8(0),t.writeUint32(e.value);return;}if(x(e.value)){t.writeInt8(1),t.writeString(e.value);return;}throw Error(\"Invalid rich text pointer\");}function ty(t,e){let r=t.value,n=e.value;if(N(r)&&N(n)||x(r)&&x(n))return r<n?-1:r>n?1:0;throw Error(\"Invalid rich text pointer\");}function tp(t){return{type:P.String,value:t.readString()};}function tv(t,e){t.writeString(e.value);}function tm(t,e,r){let n=t.value,i=e.value;return(0/* CaseInsensitive */===r.type&&(n=t.value.toLowerCase(),i=e.value.toLowerCase()),n<i)?-1:n>i?1:0;}function tw(t){return{type:P.VectorSetItem,value:t.readUint32()};}function tI(t,e){t.writeUint32(e.value);}function tb(t,e){let r=t.value,n=e.value;return r<n?-1:r>n?1:0;}(t=>{t.read=function(t){let e=t.readUint8();switch(e){case 0/* Null */:return null;case 1/* Array */:return q(t);case 2/* Boolean */:return j(t);case 3/* Color */:return V(t);case 4/* Date */:return z(t);case 5/* Enum */:return H(t);case 6/* File */:return Y(t);case 7/* Link */:return te(t);case 8/* Number */:return ti(t);case 9/* Object */:return to(t);case 10/* ResponsiveImage */:return th(t);case 11/* RichText */:return td(t);case 12/* String */:return tp(t);case 13/* VectorSetItem */:return tw(t);default:b(e);}},t.write=function(t,e){let r=R(e);if(t.writeUint8(r),!A(e))switch(e.type){case P.Array:return _(t,e);case P.Boolean:return C(t,e);case P.Color:return W(t,e);case P.Date:return G(t,e);case P.Enum:return X(t,e);case P.File:return Z(t,e);case P.Link:return tr(t,e);case P.Number:return ts(t,e);case P.Object:return tu(t,e);case P.ResponsiveImage:return tc(t,e);case P.RichText:return tg(t,e);case P.VectorSetItem:return tI(t,e);case P.String:return tv(t,e);default:b(e);}},t.compare=function(t,e,r){let n=R(t),i=R(e);if(n<i)return -1;if(n>i)return 1;if(A(t)||A(e))return 0;switch(t.type){case P.Array:return I(e.type===P.Array),D(t,e,r);case P.Boolean:return I(e.type===P.Boolean),J(t,e);case P.Color:return I(e.type===P.Color),$(t,e);case P.Date:return I(e.type===P.Date),K(t,e);case P.Enum:return I(e.type===P.Enum),Q(t,e);case P.File:return I(e.type===P.File),tt(t,e);case P.Link:return I(e.type===P.Link),tn(t,e);case P.Number:return I(e.type===P.Number),ta(t,e);case P.Object:return I(e.type===P.Object),tl(t,e,r);case P.ResponsiveImage:return I(e.type===P.ResponsiveImage),tf(t,e);case P.RichText:return I(e.type===P.RichText),ty(t,e);case P.VectorSetItem:return I(e.type===P.VectorSetItem),tb(t,e);case P.String:return I(e.type===P.String),tm(t,e,r);default:b(t);}};})(t||(t={}));// src/code-generation/components/cms/bundled/models/DatabaseDictionaryIndexModel.ts\nvar tU=class e{sortEntries(){this.entries.sort((e,r)=>{for(let n=0;n<this.fieldNames.length;n++){let i=e.values[n],s=r.values[n],a=t.compare(i,s,this.options.collation);if(0!==a)return a;}return e.pointer.compare(r.pointer);});}static deserialize(r){let n=new y(r),i=n.readJson(),s=n.readUint8(),a=[];for(let t=0;t<s;t++){let t=n.readString();a.push(t);}let o=new e(a,{collation:i}),u=n.readUint32();for(let e=0;e<u;e++){let e=[];for(let r=0;r<s;r++){let r=t.read(n);e.push(r);}let r=O.read(n);o.entries.push({values:e,pointer:r});}return o;}serialize(){let e=new F;for(let t of(e.writeJson(this.options.collation),e.writeUint8(this.fieldNames.length),this.fieldNames))e.writeString(t);for(let r of(this.sortEntries(),e.writeUint32(this.entries.length),this.entries)){let{values:n,pointer:i}=r;for(let r of n)t.write(e,r);i.write(e);}return e.subarray();}addItem(t,e){let r=this.fieldNames.map(e=>t.getField(e)??null);this.entries.push({values:r,pointer:e});}constructor(t,e){c(this,\"fieldNames\",t),c(this,\"options\",e),c(this,\"entries\",[]);}},tS=3,tk=250,tL=[408,// Request Timeout\n429,// Too Many Requests\n500,// Internal Server Error\n502,// Bad Gateway\n503,// Service Unavailable\n504],tB=async(t,e)=>{let r=0;for(;;){try{let n=await fetch(t,e);if(!tL.includes(n.status)||++r>tS)return n;}catch(t){if(e?.signal?.aborted||++r>tS)throw t;}await tE(r);}};async function tE(t){let e=Math.floor(tk*(Math.random()+1)*2**(t-1));await new Promise(t=>{setTimeout(t,e);});}// src/code-generation/components/cms/bundled/rangeRequest.ts\nasync function tM(t,e){let r=tx(e),n=[],i=0;for(let t of r)n.push(`${t.from}-${t.to-1}`),i+=t.to-t.from;let s=new URL(t),a=n.join(\",\");s.searchParams.set(\"range\",a);let o=await tB(s);if(200!==o.status)throw Error(`Request failed: ${o.status} ${o.statusText}`);let u=await o.arrayBuffer(),l=new Uint8Array(u);if(l.length!==i)throw Error(\"Request failed: Unexpected response length\");let h=new tT,c=0;for(let t of r){let e=t.to-t.from,r=c+e,n=l.subarray(c,r);h.write(t.from,n),c=r;}return e.map(t=>h.read(t.from,t.to-t.from));}var tT=class{read(t,e){for(let r of this.chunks){if(t<r.start)break;if(t>r.end)continue;if(t+e>r.end)break;let n=t-r.start,i=n+e;return r.data.slice(n,i);}throw Error(\"Missing data\");}write(t,e){let r=t,n=r+e.length,i=0,s=this.chunks.length;for(;i<s;i++){let t=this.chunks[i];if(I(t,\"Missing chunk\"),!(r>t.end)){if(r>t.start){let n=r-t.start,i=t.data.subarray(0,n);e=tF(i,e),r=t.start;}break;}}for(;s>i;s--){let t=this.chunks[s-1];if(I(t,\"Missing chunk\"),!(n<t.start)){if(n<t.end){let r=n-t.start,i=t.data.subarray(r);e=tF(e,i),n=t.end;}break;}}let a={start:r,end:n,data:e},o=s-i;this.chunks.splice(i,o,a);}constructor(){c(this,\"chunks\",[]);}};function tF(t,e){let r=t.length+e.length,n=new Uint8Array(r);return n.set(t,0),n.set(e,t.length),n;}function tx(t){I(t.length>0,\"Must have at least one range\");let e=[...t].sort((t,e)=>t.from-e.from),r=[];for(let t of e){let e=r.length-1,n=r[e];n&&t.from<=n.to?r[e]={from:n.from,to:Math.max(n.to,t.to)}:r.push(t);}return r;}// src/code-generation/components/cms/bundled/DatabaseDictionaryIndex.ts\nvar tN=class{async loadModel(){let[t]=await tM(this.options.url,[this.options.range]);return I(t,\"Failed to load model\"),tU.deserialize(t);}async getModel(){return this.modelPromise??=this.loadModel(),this.model??=await this.modelPromise,this.model;}async lookupItems(t){I(t.length===this.fields.length,\"Invalid query length\");let e=await this.getModel(),r=t.reduce((t,e,r)=>t.flatMap(t=>{switch(e.type){case\"All\"/* All */:return[t];case\"Equals\"/* Equals */:return this.queryEquals(t,e,r);case\"NotEquals\"/* NotEquals */:return this.queryNotEquals(t,e,r);case\"LessThan\"/* LessThan */:return this.queryLessThan(t,e,r);case\"GreaterThan\"/* GreaterThan */:return this.queryGreaterThan(t,e,r);case\"Contains\"/* Contains */:return this.queryContains(t,e,r);case\"StartsWith\"/* StartsWith */:return this.queryStartsWith(t,e,r);case\"EndsWith\"/* EndsWith */:return this.queryEndsWith(t,e,r);default:b(e);}}),[e.entries]),n=[];for(let t of r)for(let e of t){let t={};for(let r=0;r<this.options.fieldNames.length;r++){let n=this.options.fieldNames[r],i=e.values[r];t[n]=i;}n.push({pointer:e.pointer.toString(),data:t});}return n;}queryEquals(t,e,r){let n=this.getLeftMost(t,r,e.value),i=this.getRightMost(t,r,e.value),s=t.slice(n,i+1);return s.length>0?[s]:[];}queryNotEquals(t,e,r){let n=this.getLeftMost(t,r,e.value),i=this.getRightMost(t,r,e.value),s=[],a=t.slice(0,n);a.length>0&&s.push(a);let o=t.slice(i+1);return o.length>0&&s.push(o),s;}queryLessThan(t,e,r){let n=this.getRightMost(t,r,null);if(t=t.slice(n+1),e.inclusive){let n=this.getRightMost(t,r,e.value),i=t.slice(0,n+1);return i.length>0?[i]:[];}let i=this.getLeftMost(t,r,e.value),s=t.slice(0,i);return s.length>0?[s]:[];}queryGreaterThan(t,e,r){let n=this.getRightMost(t,r,null);if(t=t.slice(n+1),e.inclusive){let n=this.getLeftMost(t,r,e.value),i=t.slice(n);return i.length>0?[i]:[];}let i=this.getRightMost(t,r,e.value),s=t.slice(i+1);return s.length>0?[s]:[];}queryContains(t,e,r){return this.findItems(t,r,t=>{if(t?.type!==v.String||e.value?.type!==v.String)return!1;let r=t.value,n=e.value.value;return 0/* CaseInsensitive */===this.collation.type&&(r=r.toLowerCase(),n=n.toLowerCase()),r.includes(n);});}queryStartsWith(t,e,r){return this.findItems(t,r,t=>{if(t?.type!==v.String||e.value?.type!==v.String)return!1;let r=t.value,n=e.value.value;return 0/* CaseInsensitive */===this.collation.type&&(r=r.toLowerCase(),n=n.toLowerCase()),r.startsWith(n);});}queryEndsWith(t,e,r){return this.findItems(t,r,t=>{if(t?.type!==v.String||e.value?.type!==v.String)return!1;let r=t.value,n=e.value.value;return 0/* CaseInsensitive */===this.collation.type&&(r=r.toLowerCase(),n=n.toLowerCase()),r.endsWith(n);});}/**\n   * Returns the index of the left most entry that is equal to the target.\n   *\n   * ```text\n   *   Left most\n   *       ↓\n   * ┌───┬───┬───┬───┬───┬───┐\n   * │ 1 │ 2 │ 2 │ 2 │ 2 │ 3 │\n   * └───┴───┴───┴───┴───┴───┘\n   * ```\n   *\n   * @param entries The entries array to search in.\n   * @param position The position of the value in the entry.\n   * @param target The target value to search for.\n   * @returns The index of the left most entry that is equal to the target.\n   */getLeftMost(e,r,n){let i=0,s=e.length;for(;i<s;){let a=i+s>>1,o=e[a],u=o.values[r];0>t.compare(u,n,this.collation)?i=a+1:s=a;}return i;}/**\n   * Returns the index of the right most entry that is equal to the target.\n   *\n   * ```text\n   *              Right most\n   *                   ↓\n   * ┌───┬───┬───┬───┬───┬───┐\n   * │ 1 │ 2 │ 2 │ 2 │ 2 │ 3 │\n   * └───┴───┴───┴───┴───┴───┘\n   * ```\n   *\n   * @param entries The entries array to search in.\n   * @param position The position of the value in the entry.\n   * @param target The target value to search for.\n   * @returns The index of the right most entry that is equal to the target.\n   */getRightMost(e,r,n){let i=0,s=e.length;for(;i<s;){let a=i+s>>1,o=e[a],u=o.values[r];t.compare(u,n,this.collation)>0?s=a:i=a+1;}return s-1;}/**\n   * Finds all items that are matching the predicate and groups adjacent items together.\n   *\n   * @param entries The entries array to search in.\n   * @param position The position of the value in the entry.\n   * @param predicate The predicate to match the values against.\n   * @returns An array of chunks that match the predicate.\n   */findItems(t,e,r){let n=[],i=0;for(let s=0;s<t.length;s++){let a=t[s],o=a.values[e],u=r(o);if(!u){if(i<s){let e=t.slice(i,s);n.push(e);}i=s+1;}}if(i<t.length){let e=t.slice(i);n.push(e);}return n;}constructor(t){c(this,\"options\",t),c(this,\"schema\"),c(this,\"fields\"),c(this,\"supportedLookupTypes\",[\"All\"/* All */,\"Equals\"/* Equals */,\"NotEquals\"/* NotEquals */,\"LessThan\"/* LessThan */,\"GreaterThan\"/* GreaterThan */,\"Contains\"/* Contains */,\"StartsWith\"/* StartsWith */,\"EndsWith\"/* EndsWith */]),c(this,\"modelPromise\"),c(this,\"model\"),c(this,\"collation\");let e={},r=[];for(let t of this.options.fieldNames){let n=this.options.collectionSchema[t];I(n,\"Missing definition for field\",t),e[t]=n,r.push({type:\"Identifier\",name:t});}this.schema=e,this.fields=r,this.collation=this.options.collation;}},tA=class e{static read(r){let n=new e,i=r.readUint16();for(let e=0;e<i;e++){let e=r.readString(),i=t.read(r);n.setField(e,i);}return n;}write(e){for(let[r,n]of(e.writeUint16(this.fields.size),this.fields))e.writeString(r),t.write(e,n);}getData(){let t={};for(let[e,r]of this.fields)t[e]=r;return t;}setField(t,e){this.fields.set(t,e);}getField(t){return this.fields.get(t);}constructor(){c(this,\"fields\",/* @__PURE__ */new Map);}},tO=class{scanItems(){return this.itemsPromise??=tB(this.url).then(async t=>{if(!t.ok)throw Error(`Request failed: ${t.status} ${t.statusText}`);let e=await t.arrayBuffer(),r=new Uint8Array(e),n=new y(r),i=[],s=n.readUint32();for(let t=0;t<s;t++){let t=n.getOffset(),e=tA.read(n),r=n.getOffset()-t,s=new O(this.id,t,r),a=s.toString(),o={pointer:a,data:e.getData()};this.itemLoader.prime(a,o),i.push(o);}return i;}),this.itemsPromise;}resolveItem(t){return this.itemLoader.load(t);}constructor(t,e){c(this,\"id\",t),c(this,\"url\",e),c(this,\"itemsPromise\"),c(this,\"itemLoader\",new d.default(async t=>{let e=t.map(t=>{let e=O.fromString(t);return{from:e.offset,to:e.offset+e.length};}),r=await tM(this.url,e);return r.map((e,r)=>{let n=new y(e),i=tA.read(n),s=t[r];return I(s,\"Missing pointer\"),{pointer:s,data:i.getData()};});},{maxBatchSize:250}));}},tP=class{async scanItems(){let t=await Promise.all(this.chunks.map(async t=>t.scanItems()));return t.flat();}resolveItems(t){return Promise.all(t.map(t=>{let e=O.fromString(t),r=this.chunks[e.chunkId];return I(r,\"Missing chunk\"),r.resolveItem(t);}));}compareItems(t,e){let r=O.fromString(t.pointer),n=O.fromString(e.pointer);return r.compare(n);}compareValues(e,r,n){return t.compare(e,r,n);}constructor(t){c(this,\"options\",t),c(this,\"id\"),c(this,\"schema\"),c(this,\"indexes\"),c(this,\"resolveRichText\"),c(this,\"resolveVectorSetItem\"),c(this,\"chunks\"),this.chunks=this.options.chunks.map((t,e)=>new tO(e,t)),this.schema=t.schema,this.indexes=t.indexes,this.resolveRichText=t.resolveRichText,this.resolveVectorSetItem=t.resolveVectorSetItem,this.id=t.id;}};export{tP as DatabaseCollection,tN as DatabaseDictionaryIndex};\nexport const __FramerMetadata__ = {\"exports\":{\"DatabaseDictionaryIndex\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"DatabaseCollection\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// src/code-generation/components/cms/bundled/getRichTextJsonResolver.tsx?bundle\nimport{jsx as e}from\"react/jsx-runtime\";import{AutoBreakpointVariant as t,ComponentPresetsConsumer as r,Link as n,motion as o}from\"framer\";// ../../library/src/router/lazy.tsx\nimport{isValidElement as i}from\"react\";// ../../library/src/utils/utils.ts\nvar a,l=\"undefined\"!=typeof window,f=l&&\"function\"==typeof window.requestIdleCallback,u=\"preload\";function c(e){return\"object\"==typeof e&&null!==e&&!/*#__PURE__*/i(e)&&u in e;}// src/code-generation/components/cms/bundled/getRichTextJsonResolver.tsx?bundle\nimport{Fragment as p,createElement as s}from\"react\";// src/code-generation/components/cms/bundled/assert.ts\nfunction m(e,...t){if(!e)throw Error(\"Assertion Error\"+(t.length>0?\": \"+t.join(\" \"):\"\"));}// src/code-generation/components/cms/bundled/getRichTextJsonResolver.tsx?bundle\nvar d=((a=d||{})[a.Fragment=1]=\"Fragment\",a[a.Link=2]=\"Link\",a[a.Module=3]=\"Module\",a[a.Tag=4]=\"Tag\",a[a.Text=5]=\"Text\",a);function g(i){let a=/* @__PURE__ */new Map;return l=>{let f=a.get(l);if(f)return f;let u=JSON.parse(l),d=function a(l){switch(l[0]){case 1/* Fragment */:{let[,...e]=l,t=e.map(a);return /*#__PURE__*/s(p,void 0,...t);}case 2/* Link */:{let[,e,...t]=l,r=t.map(a);return /*#__PURE__*/s(n,e,...r);}case 3/* Module */:{let[,n,o,f,u]=l;for(let e of f){let t=o[e];t&&(o[e]=a(t));}for(let e of u){let t=o[e];if(\"string\"!=typeof t)continue;let r=i[t];r&&(c(r)&&r.preload(),o[e]=r);}let p=i[n];return m(p,\"Module not found\"),c(p)&&p.preload(),/*#__PURE__*/e(r,{componentIdentifier:n,children:r=>/*#__PURE__*/e(t,{component:p,props:{...r,...o}})});}case 4/* Tag */:{let[,e,t,...r]=l,n=r.map(a);if(\"a\"===e)return /*#__PURE__*/s(o.a,t,...n);return /*#__PURE__*/s(e,t,...n);}case 5/* Text */:{let[,e]=l;return e;}}}(u);return a.set(l,d),d;};}export{d as RichTextJsonType,g as getRichTextJsonResolver};\nexport const __FramerMetadata__ = {\"exports\":{\"getRichTextJsonResolver\":{\"type\":\"reactComponent\",\"name\":\"getRichTextJsonResolver\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\"}},\"RichTextJsonType\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// Generated by Framer (0116799)\nimport{addPropertyControls as e,ControlType as t,QueryEngine as l}from\"framer\";import{DatabaseCollection as a}from\"./o8ErbAEQu-0.js\";import{getRichTextJsonResolver as i}from\"./o8ErbAEQu-1.js\";let r={createdAt:{isNullable:!0,type:t.Date},CTBXSZh3C:{isNullable:!0,type:t.ResponsiveImage},cvqcMWzWp:{isNullable:!0,type:t.String},FuXccmOu_:{isNullable:!0,type:t.String},GSOzXv3XK:{isNullable:!0,type:t.String},id:{isNullable:!1,type:t.String},nextItemId:{isNullable:!0,type:t.String},nIu0qGKLy:{isNullable:!0,type:t.RichText},previousItemId:{isNullable:!0,type:t.String},RFMMeyKAz:{isNullable:!0,type:t.String},s1uptatnP:{isNullable:!0,type:t.String},txyAi20aN:{definition:{definitions:{id:{isNullable:!1,type:t.String},xVhHYUTEl:{isNullable:!0,type:t.ResponsiveImage}},isNullable:!0,type:t.Object},isNullable:!0,type:t.Array},updatedAt:{isNullable:!0,type:t.Date},WnjmVhL20:{isNullable:!0,type:t.Color},ybmMzF300:{isNullable:!0,type:t.Enum}},n=[],u=e=>{let t=n[e];if(t)return t().then(e=>e.default);},o={},p=i(o),s=new l,c={collectionByLocaleId:{AqDalB09P:new a({chunks:[new URL(\"./o8ErbAEQu-chunk-AqDalB09P-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")],id:\"0ce2dfb4-3b98-4b77-a570-c0e599e6e264AqDalB09P\",indexes:[],resolveRichText:p,resolveVectorSetItem:u,schema:r}),default:new a({chunks:[new URL(\"./o8ErbAEQu-chunk-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")],id:\"0ce2dfb4-3b98-4b77-a570-c0e599e6e264default\",indexes:[],resolveRichText:p,resolveVectorSetItem:u,schema:r})},displayName:\"Projects\",id:\"0ce2dfb4-3b98-4b77-a570-c0e599e6e264\"};export default c;e(c,{FuXccmOu_:{defaultValue:\"\",title:\"Title\",type:t.String},GSOzXv3XK:{preventLocalization:!1,title:\"Slug\",type:t.String},RFMMeyKAz:{defaultValue:\"\",title:\"Client\",type:t.String},cvqcMWzWp:{defaultValue:\"\",title:\"Category Tagline\",type:t.String},CTBXSZh3C:{title:\"Cover Image\",type:t.ResponsiveImage},s1uptatnP:{defaultValue:\"\",title:\"Year\",type:t.String},nIu0qGKLy:{defaultValue:'<p dir=\"auto\"><br class=\"trailing-break\"></p>',title:\"Case Study Description\",type:t.RichText},txyAi20aN:{__vekterDefault:[],control:{controls:{xVhHYUTEl:{title:\"Image\",type:\"responsiveimage\"}},type:\"object\"},title:\"Case Study Images\",type:t.Array},WnjmVhL20:{defaultValue:\"rgb(189, 59, 50)\",title:\"Background Color\",type:t.Color},ybmMzF300:{defaultValue:\"BZVirOhot\",options:[\"BZVirOhot\",\"sFfmI9cnQ\",\"Zo93xpSc2\",\"Kcj0snYn2\",\"iiTz4nz6u\"],optionTitles:[\"Variant 1\",\"Variant 2\",\"Variant 3\",\"Variant 4\",\"Variant 5\"],title:\"Card Variant\",type:t.Enum},createdAt:{title:\"Created\",type:t.Date},updatedAt:{title:\"Updated\",type:t.Date},previousItemId:{dataIdentifier:\"local-module:collection/o8ErbAEQu:default\",title:\"Previous\",type:t.CollectionReference},nextItemId:{dataIdentifier:\"local-module:collection/o8ErbAEQu:default\",title:\"Next\",type:t.CollectionReference}});export const ybmMzF300ToDisplayName=(e,t)=>{switch(t?.fallback,e){case\"BZVirOhot\":return\"Variant 1\";case\"sFfmI9cnQ\":return\"Variant 2\";case\"Zo93xpSc2\":return\"Variant 3\";case\"Kcj0snYn2\":return\"Variant 4\";case\"iiTz4nz6u\":return\"Variant 5\";default:return\"\";}};export const enumToDisplayNameFunctions={ybmMzF300:ybmMzF300ToDisplayName};export const utils={async getSlugByRecordId(e,t){let[l]=await s.query({from:{data:c,type:\"Collection\"},limit:{type:\"LiteralValue\",value:1},select:[{name:\"GSOzXv3XK\",type:\"Identifier\"}],where:{left:{name:\"id\",type:\"Identifier\"},operator:\"==\",right:{type:\"LiteralValue\",value:e},type:\"BinaryOperation\"}},t);return l?.GSOzXv3XK;},async getRecordIdBySlug(e,t){let[l]=await s.query({from:{data:c,type:\"Collection\"},limit:{type:\"LiteralValue\",value:1},select:[{name:\"id\",type:\"Identifier\"}],where:{left:{name:\"GSOzXv3XK\",type:\"Identifier\"},operator:\"==\",right:{type:\"LiteralValue\",value:e},type:\"BinaryOperation\"}},t);return l?.id;}};\nexport const __FramerMetadata__ = {\"exports\":{\"enumToDisplayNameFunctions\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"ybmMzF300ToDisplayName\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"default\":{\"type\":\"data\",\"name\":\"data\",\"annotations\":{\"framerAutoSizeImages\":\"true\",\"framerCollectionUtils\":\"1\",\"framerCollectionId\":\"o8ErbAEQu\",\"framerData\":\"true\",\"framerSlug\":\"GSOzXv3XK\",\"framerRecordIdKey\":\"id\",\"framerEnumToDisplayNameUtils\":\"2\",\"framerContractVersion\":\"1\",\"framerColorSyntax\":\"false\"}},\"utils\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// Generated by Framer (e1541bb)\nimport{LazyValue}from\"framer\";const valuesByLocaleId={AqDalB09P:new LazyValue(()=>import(\"./U1uzqqflT-0.js\"))};export default function getLocalizedValue(key,locale){while(locale){const values=valuesByLocaleId[locale.id];if(values){const value=values.read()[key];if(value)return value;}locale=locale.fallback;}}function preload(locale){const promises=[];while(locale){const values=valuesByLocaleId[locale.id];if(values){const promise=values.preload();if(promise)promises.push(promise);}locale=locale.fallback;}if(promises.length>0)return Promise.all(promises);}export function usePreloadLocalizedValues(locale){const preloadPromise=preload(locale);if(preloadPromise)throw preloadPromise;}\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"usePreloadLocalizedValues\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// Generated by Framer (e1541bb)\nconst valuesByLocaleId={AqDalB09P:{v0:\"Noi proiectăm mărci, jocuri, site-uri web și produse pentru industria iGaming — de \\xeencredere de către Aviator, BetConstruct, Xbet, FortuneJack, Hispin.com, Setanta Sports și mulți alții.\"}};function getLocalizedValue(key,locale){while(locale){const values=valuesByLocaleId[locale.id];if(values){const value=values[key];if(value)return value;}locale=locale.fallback;}}export default function metadata(params,activeLocale){return{breakpoints:[{hash:\"9j1d3f\",mediaQuery:\"(min-width: 1200px)\"},{hash:\"1kb06hj\",mediaQuery:\"(min-width: 810px) and (max-width: 1199.98px)\"},{hash:\"12mizny\",mediaQuery:\"(max-width: 809.98px)\"}],description:getLocalizedValue(\"v0\",activeLocale)??\"Cubicle designs brands, games, websites and products for iGaming operators — trusted by Aviator, BetConstruct, Xbet, FortuneJack and more.\",elements:{},framerSearch:{index:true},robots:\"max-image-preview:large\",serializationId:\"framer-ueUpH\",socialImage:\"https://framerusercontent.com/assets/Y95wD5SMBr0EA4rR5ZwxKiFXUbA.jpg\",title:\"Cubicle - Partner for iGaming Operators & Studios\",viewport:\"width=device-width\"};}export const metadataVersion=1;\nexport const __FramerMetadata__ = {\"exports\":{\"metadataVersion\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"default\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// Generated by Framer (e1541bb)\nimport{jsx as _jsx,jsxs as _jsxs,Fragment as _Fragment}from\"react/jsx-runtime\";import{addFonts,ChildrenCanSuspend,ComponentViewportProvider,Container,cx,Floating,forwardLoader,GeneratedComponentContext,getFonts,getFontsFromSharedStyle,PathVariablesContext,PropertyOverrides,queryCache,RichText,SVG,useActiveVariantCallback,useComponentViewport,useCustomCursors,useHydratedBreakpointVariants,useIsOnFramerCanvas,useLocaleInfo,useMetadata,useOverlayState,useQueryData,withCSS}from\"framer\";import{AnimatePresence,LayoutGroup,motion,MotionConfigContext}from\"framer-motion\";import*as React from\"react\";import{useRef}from\"react\";import{Video}from\"https://framerusercontent.com/modules/lRDHiNWNVWmE0lqtoVHP/tbiAmyP8q4mMaXLQcmj3/Video.js\";import ButtonMain from\"#framer/local/canvasComponent/gj1fg0_el/gj1fg0_el.js\";import ProjectList2 from\"#framer/local/canvasComponent/lXR4W_c3T/lXR4W_c3T.js\";import Form from\"#framer/local/canvasComponent/rbymmAw6a/rbymmAw6a.js\";import AviatorLogo from\"#framer/local/canvasComponent/TU2OwVTIC/TU2OwVTIC.js\";import Button from\"#framer/local/canvasComponent/Wx43GpbSh/Wx43GpbSh.js\";import Projects from\"#framer/local/collection/o8ErbAEQu/o8ErbAEQu.js\";import*as sharedStyle2 from\"#framer/local/css/i9K2DYagJ/i9K2DYagJ.js\";import*as sharedStyle from\"#framer/local/css/JAfRlDZX1/JAfRlDZX1.js\";import*as sharedStyle3 from\"#framer/local/css/oPcNbSwuU/oPcNbSwuU.js\";import*as sharedStyle1 from\"#framer/local/css/ZAi46TVi4/ZAi46TVi4.js\";import getLocalizedValue,{usePreloadLocalizedValues}from\"#framer/local/localization/U1uzqqflT/U1uzqqflT.js\";import metadataProvider from\"#framer/local/webPageMetadata/U1uzqqflT/U1uzqqflT.js\";const ButtonFonts=getFonts(Button);const FormFonts=getFonts(Form);const VideoFonts=getFonts(Video);const AviatorLogoFonts=getFonts(AviatorLogo);const ButtonMainFonts=getFonts(ButtonMain);const ProjectList2Fonts=getFonts(ProjectList2);const breakpoints={j6bbW8Ert:\"(max-width: 809.98px)\",nm6cchMMm:\"(min-width: 810px) and (max-width: 1199.98px)\",tA0HXBmgj:\"(min-width: 1200px)\"};const isBrowser=()=>typeof document!==\"undefined\";export const queryParamNames=[\"selected-project\"];const serializationHash=\"framer-ueUpH\";const variantClassNames={j6bbW8Ert:\"framer-v-12mizny\",nm6cchMMm:\"framer-v-1kb06hj\",tA0HXBmgj:\"framer-v-9j1d3f\"};const CTBXSZh3Cn0vVvGFtd=undefined;const cvqcMWzWpn0vVvGFtd=undefined;const s1uptatnPn0vVvGFtd=undefined;const FuXccmOu_n0vVvGFtd=undefined;const nIu0qGKLyn0vVvGFtd=undefined;const GSOzXv3XKn0vVvGFtd=undefined;const idn0vVvGFtd=undefined;const getRootLayoutProp=(hasLayoutTemplate,hasInheritedFlowEffect,fallback)=>{if(!hasLayoutTemplate)return fallback;return hasInheritedFlowEffect?\"position\":fallback;};const matchVariant=(...args)=>{for(const arg of args){if(arg&&typeof arg===\"string\")return arg;}return undefined;};const transition1={bounce:.2,delay:0,duration:.4,type:\"spring\"};const animation={opacity:0,rotate:0,rotateX:0,rotateY:0,scale:1,skewX:0,skewY:0,transition:transition1,x:0,y:0};const animation1={opacity:1,rotate:0,rotateX:0,rotateY:0,scale:1,skewX:0,skewY:0,transition:transition1,x:0,y:0};const animation2={opacity:0,rotate:0,rotateX:0,rotateY:0,scale:1,skewX:0,skewY:0,x:0,y:0};const Overlay=({children,blockDocumentScrolling,dismissWithEsc,enabled=true})=>{const[visible,setVisible]=useOverlayState({blockDocumentScrolling,dismissWithEsc:enabled&&dismissWithEsc});return children({hide:()=>setVisible(false),show:()=>setVisible(true),toggle:()=>setVisible(!visible),visible:enabled&&visible});};const toResponsiveImage=value=>{if(typeof value===\"object\"&&value!==null&&typeof value.src===\"string\"){return value;}return typeof value===\"string\"?{src:value}:undefined;};const query=()=>({from:{alias:\"n0vVvGFtd\",data:Projects,type:\"Collection\"},limit:{type:\"LiteralValue\",value:10},select:[{collection:\"n0vVvGFtd\",name:\"CTBXSZh3C\",type:\"Identifier\"},{collection:\"n0vVvGFtd\",name:\"cvqcMWzWp\",type:\"Identifier\"},{collection:\"n0vVvGFtd\",name:\"s1uptatnP\",type:\"Identifier\"},{collection:\"n0vVvGFtd\",name:\"FuXccmOu_\",type:\"Identifier\"},{collection:\"n0vVvGFtd\",name:\"nIu0qGKLy\",type:\"Identifier\"},{collection:\"n0vVvGFtd\",name:\"GSOzXv3XK\",type:\"Identifier\"},{collection:\"n0vVvGFtd\",name:\"id\",type:\"Identifier\"}]});const QueryData=({query,pageSize,children})=>{const data=useQueryData(query);return children(data);};const humanReadableVariantMap={Desktop:\"tA0HXBmgj\",Phone:\"j6bbW8Ert\",Tablet:\"nm6cchMMm\"};const HTMLStyle=({value})=>{const onCanvas=useIsOnFramerCanvas();if(onCanvas)return null;return /*#__PURE__*/_jsx(\"style\",{dangerouslySetInnerHTML:{__html:value},\"data-framer-html-style\":\"\"});};const getProps=({height,id,width,...props})=>{return{...props,variant:humanReadableVariantMap[props.variant]??props.variant??\"tA0HXBmgj\"};};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 metadata=React.useMemo(()=>metadataProvider({},activeLocale),[activeLocale]);useMetadata(metadata);const[baseVariant,hydratedBaseVariant]=useHydratedBreakpointVariants(variant,breakpoints,false);const gestureVariant=undefined;const{activeVariantCallback,delay}=useActiveVariantCallback(undefined);const Pq04jnLnz13elrgn=({overlay})=>activeVariantCallback(async(...args)=>{overlay.show();});const sharedStyleClassNames=[sharedStyle.className,sharedStyle1.className,sharedStyle2.className,sharedStyle3.className];const scopingClassNames=cx(serializationHash,...sharedStyleClassNames);const hasLayoutTemplate=React.useContext(GeneratedComponentContext)?.isLayoutTemplate;const hasInheritedFlowEffect=Boolean(React.useContext(MotionConfigContext)?.transition?.layout);const motionLayout=getRootLayoutProp(hasLayoutTemplate,hasInheritedFlowEffect);usePreloadLocalizedValues(activeLocale);const ref1=React.useRef(null);const ref2=React.useRef(null);useCustomCursors({});return /*#__PURE__*/_jsx(GeneratedComponentContext.Provider,{value:{activeVariantId:baseVariant,humanReadableVariantMap,primaryVariantId:\"tA0HXBmgj\",variantClassNames},children:/*#__PURE__*/_jsxs(LayoutGroup,{id:layoutId??defaultLayoutId,children:[/*#__PURE__*/_jsx(HTMLStyle,{value:\"html body { background: rgb(0, 0, 0); }\"}),/*#__PURE__*/_jsx(motion.div,{...restProps,className:cx(scopingClassNames,\"framer-9j1d3f\",className),ref:refBinding,style:{...style},children:/*#__PURE__*/_jsxs(motion.div,{className:\"framer-b7h9jf\",layout:motionLayout,children:[/*#__PURE__*/_jsxs(\"div\",{className:\"framer-l98n5o\",children:[/*#__PURE__*/_jsx(\"div\",{className:\"framer-1igc7yd\",children:/*#__PURE__*/_jsx(\"div\",{className:\"framer-suks4y\",children:/*#__PURE__*/_jsxs(SVG,{className:\"framer-1v29pq2\",requiresOverflowVisible:false,svg:'<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" viewBox=\"0 0 159.974 19.008\" overflow=\"visible\"><g><path d=\"M 0 0.032 L 159.974 0.032 L 159.974 19.008 L 0 19.008 Z\" fill=\"transparent\"></path><path d=\"M 83.395 6.626 C 83.077 6.183 82.687 5.781 82.283 5.414 C 80.813 4.081 79.314 2.782 77.847 1.446 C 76.783 0.477 75.575 -0.004 74.126 0.003 C 68.964 0.026 63.803 0.012 58.641 0.012 L 58.276 0.012 L 58.276 16.954 C 58.33 16.959 58.363 16.965 58.398 16.965 C 63.735 16.965 69.071 16.965 74.406 16.963 C 75.582 16.963 76.624 16.587 77.513 15.798 C 78.442 14.974 79.378 14.158 80.303 13.331 C 81.182 12.544 82.061 11.758 82.92 10.948 C 84.225 9.715 84.093 7.595 83.395 6.628 Z M 80.034 12.261 C 79.578 13.174 78.81 13.581 77.807 13.581 C 72.864 13.579 67.919 13.581 62.976 13.581 L 61.941 13.581 L 61.941 10.209 L 80.244 10.209 C 80.221 10.906 80.357 11.613 80.034 12.261 Z M 61.94 6.78 L 61.94 3.403 L 62.209 3.403 C 67.414 3.403 72.618 3.417 77.823 3.393 C 78.982 3.387 79.983 4.157 80.163 5.103 C 80.265 5.639 80.24 6.199 80.275 6.779 L 61.94 6.779 Z M 137.774 13.581 C 137.073 13.581 136.468 13.364 135.972 12.844 C 135.241 12.078 135.388 11.135 135.388 10.189 L 135.752 10.189 C 139.817 10.189 143.881 10.177 147.947 10.196 C 149.345 10.203 150.544 9.759 151.539 8.779 C 153.018 7.327 154.491 5.869 155.945 4.394 C 157.132 3.19 157.527 1.707 157.312 0.027 C 157.249 0.024 157.172 0.013 157.097 0.013 C 151.848 0.013 146.601 0.018 141.352 0.01 C 140.104 0.008 139.01 0.379 138.07 1.206 C 137.282 1.898 136.498 2.594 135.717 3.294 C 134.707 4.198 133.687 5.091 132.702 6.017 C 131.962 6.711 131.7 7.616 131.716 8.618 C 131.735 9.745 132.254 10.611 133.067 11.333 C 134.675 12.761 136.294 14.174 137.883 15.621 C 138.907 16.553 140.08 16.978 141.45 16.975 C 146.638 16.961 151.824 16.968 157.013 16.968 L 157.328 16.968 L 157.328 13.585 L 137.776 13.585 Z M 135.516 4.928 C 135.722 4.088 136.573 3.471 137.428 3.416 C 137.567 3.407 137.705 3.403 137.844 3.403 L 153.698 3.403 C 153.654 4.115 153.829 4.83 153.49 5.486 C 153.04 6.358 152.311 6.79 151.331 6.788 C 149.487 6.785 147.643 6.788 145.797 6.788 L 135.322 6.788 C 135.383 6.139 135.372 5.514 135.516 4.93 L 135.516 4.928 Z M 6.718 5.616 C 6.715 7.522 6.704 9.432 6.72 11.338 C 6.732 12.644 7.727 13.572 9.092 13.578 C 10.936 13.585 12.781 13.579 14.627 13.579 L 28.687 13.579 L 28.687 16.963 L 28.406 16.963 C 23.183 16.963 17.961 16.955 12.738 16.966 C 11.415 16.97 10.275 16.562 9.284 15.665 C 7.683 14.216 6.054 12.801 4.446 11.361 C 3.944 10.911 3.465 10.418 3.264 9.748 C 2.85 8.366 2.972 7.067 4.044 6.017 C 4.918 5.161 5.847 4.365 6.76 3.548 C 7.653 2.75 8.549 1.957 9.45 1.169 C 10.385 0.347 11.485 0.004 12.717 0.006 C 17.957 0.015 23.197 0.01 28.436 0.01 L 28.694 0.01 L 28.694 3.402 L 28.357 3.402 C 21.96 3.402 15.562 3.405 9.163 3.396 C 8.363 3.396 7.7 3.647 7.19 4.279 C 6.873 4.669 6.718 5.119 6.718 5.616 Z M 98.49 5.691 C 98.486 7.553 98.478 9.416 98.492 11.28 C 98.504 12.634 99.479 13.572 100.86 13.58 C 102.035 13.588 103.211 13.581 104.386 13.581 L 120.458 13.581 L 120.458 16.965 L 120.176 16.965 C 114.954 16.965 109.731 16.958 104.508 16.97 C 103.164 16.973 102.015 16.541 101.014 15.632 C 99.429 14.194 97.81 12.791 96.218 11.36 C 95.58 10.786 95.036 10.137 94.9 9.238 C 94.711 7.998 94.903 6.859 95.859 5.975 C 97.013 4.906 98.191 3.864 99.364 2.814 C 99.969 2.272 100.58 1.736 101.191 1.198 C 102.131 0.368 103.229 0.005 104.475 0.006 C 109.724 0.015 114.971 0.01 120.22 0.01 C 120.297 0.01 120.372 0.02 120.461 0.026 L 120.461 3.402 L 120.113 3.402 C 113.716 3.402 107.319 3.405 100.92 3.398 C 100.117 3.398 99.462 3.661 98.953 4.295 C 98.625 4.704 98.492 5.177 98.49 5.689 L 98.49 5.691 Z M 56.287 0.026 L 56.287 16.945 L 52.642 16.945 L 52.642 13.436 C 52.534 13.535 52.469 13.586 52.41 13.645 C 51.758 14.291 51.102 14.935 50.456 15.586 C 49.898 16.149 49.278 16.617 48.498 16.788 C 48.009 16.894 47.5 16.954 46.998 16.957 C 44.649 16.975 42.298 16.968 39.949 16.965 C 38.92 16.963 37.936 16.795 37.102 16.123 C 36.879 15.941 36.665 15.749 36.46 15.546 C 35.02 14.116 33.604 12.663 32.139 11.259 C 31.112 10.274 30.643 9.088 30.643 7.685 C 30.642 5.198 30.643 2.712 30.643 0.223 C 30.643 0.165 30.654 0.103 30.661 0.029 L 34.317 0.029 L 34.317 0.405 C 34.317 3.982 34.317 7.558 34.316 11.135 C 34.316 11.703 34.419 12.231 34.781 12.688 C 35.259 13.292 35.891 13.578 36.644 13.579 C 41.195 13.583 45.747 13.586 50.299 13.579 C 51.419 13.578 52.272 12.935 52.559 11.903 C 52.625 11.663 52.63 11.398 52.63 11.148 C 52.634 7.553 52.632 3.959 52.632 0.366 L 52.632 0.027 L 56.285 0.027 Z M 133.431 16.682 C 133.432 16.896 133.378 16.975 133.154 16.97 C 132.52 16.956 131.882 16.987 131.247 16.959 C 130.421 16.922 129.673 16.631 128.996 16.149 C 128.052 15.475 127.299 14.591 126.474 13.789 C 125.59 12.932 124.7 12.077 123.857 11.177 C 122.994 10.256 122.429 9.187 122.438 7.858 C 122.455 5.283 122.44 2.708 122.438 0.135 C 122.438 0.11 122.445 0.084 122.455 0.024 L 126.077 0.024 C 126.082 0.096 126.089 0.154 126.089 0.211 C 126.089 3.875 126.095 7.539 126.086 11.202 C 126.084 12.178 126.491 12.911 127.351 13.327 C 127.696 13.495 128.121 13.546 128.51 13.551 C 130.033 13.576 131.555 13.56 133.077 13.562 C 133.422 13.562 133.424 13.562 133.424 13.911 C 133.424 14.832 133.418 15.755 133.427 16.678 Z M 92.881 16.843 C 92.881 16.867 92.874 16.894 92.867 16.95 L 89.209 16.95 L 89.209 5.846 C 89.209 5.241 89.079 4.692 88.677 4.214 C 88.211 3.661 87.634 3.398 86.922 3.402 C 85.652 3.405 84.381 3.402 83.11 3.402 L 82.815 3.402 L 82.815 0.006 C 83.745 0.047 84.669 -0.105 85.569 0.167 C 86.076 0.321 86.519 0.615 86.884 0.995 C 87.903 2.05 88.904 3.121 89.909 4.191 C 90.485 4.801 91.047 5.421 91.622 6.033 C 92.393 6.856 92.846 7.826 92.857 8.961 C 92.881 11.589 92.874 14.215 92.879 16.841 L 92.881 16.843 Z\" fill=\"rgb(255,255,255)\"></path></g></svg>',withExternalLayout:true,children:[/*#__PURE__*/_jsx(SVG,{className:\"framer-kbs1ew\",requiresOverflowVisible:false,svg:'<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" viewBox=\"0 0 159.974 18.976\" overflow=\"visible\"><path d=\"M 0 0 L 159.974 0 L 159.974 18.976 L 0 18.976 Z\" fill=\"transparent\"></path></svg>',withExternalLayout:true}),/*#__PURE__*/_jsxs(SVG,{className:\"framer-hv5o4d\",requiresOverflowVisible:false,svg:'<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" viewBox=\"0 0 154.324 16.975\" overflow=\"visible\"><path d=\"M 80.351 6.626 C 80.033 6.183 79.643 5.781 79.239 5.414 C 77.769 4.081 76.27 2.782 74.803 1.446 C 73.739 0.477 72.531 -0.004 71.082 0.003 C 65.921 0.026 60.759 0.012 55.597 0.012 L 55.232 0.012 L 55.232 16.954 C 55.286 16.959 55.319 16.965 55.354 16.965 C 60.691 16.965 66.027 16.965 71.362 16.963 C 72.538 16.963 73.58 16.587 74.469 15.798 C 75.398 14.974 76.334 14.158 77.259 13.331 C 78.138 12.544 79.018 11.758 79.876 10.948 C 81.181 9.715 81.049 7.595 80.351 6.628 Z M 76.99 12.261 C 76.534 13.174 75.766 13.581 74.763 13.581 C 69.82 13.579 64.875 13.581 59.932 13.581 L 58.897 13.581 L 58.897 10.209 L 77.2 10.209 C 77.177 10.906 77.313 11.613 76.99 12.261 Z M 58.896 6.78 L 58.896 3.403 L 59.165 3.403 C 64.37 3.403 69.574 3.417 74.779 3.393 C 75.938 3.387 76.939 4.157 77.119 5.103 C 77.221 5.639 77.196 6.199 77.231 6.779 L 58.896 6.779 Z M 134.73 13.581 C 134.029 13.581 133.425 13.364 132.928 12.844 C 132.198 12.078 132.344 11.135 132.344 10.189 L 132.708 10.189 C 136.774 10.189 140.837 10.177 144.903 10.196 C 146.301 10.203 147.5 9.759 148.495 8.779 C 149.974 7.327 151.447 5.869 152.901 4.394 C 154.088 3.19 154.483 1.707 154.268 0.027 C 154.205 0.024 154.129 0.013 154.053 0.013 C 148.804 0.013 143.557 0.018 138.308 0.01 C 137.06 0.008 135.966 0.379 135.026 1.206 C 134.238 1.898 133.454 2.594 132.673 3.294 C 131.663 4.198 130.644 5.091 129.658 6.017 C 128.918 6.711 128.656 7.616 128.672 8.618 C 128.691 9.745 129.21 10.611 130.023 11.333 C 131.631 12.761 133.25 14.174 134.839 15.621 C 135.863 16.553 137.036 16.978 138.406 16.975 C 143.594 16.961 148.78 16.968 153.969 16.968 L 154.284 16.968 L 154.284 13.585 L 134.732 13.585 Z M 132.472 4.928 C 132.678 4.088 133.529 3.471 134.384 3.416 C 134.523 3.407 134.661 3.403 134.8 3.403 L 150.654 3.403 C 150.61 4.115 150.785 4.83 150.446 5.486 C 149.996 6.358 149.268 6.79 148.287 6.788 C 146.443 6.785 144.599 6.788 142.753 6.788 L 132.278 6.788 C 132.339 6.139 132.329 5.514 132.472 4.93 L 132.472 4.928 Z M 3.674 5.616 C 3.671 7.522 3.66 9.432 3.676 11.338 C 3.688 12.644 4.683 13.572 6.048 13.578 C 7.892 13.585 9.738 13.579 11.583 13.579 L 25.644 13.579 L 25.644 16.963 L 25.362 16.963 C 20.139 16.963 14.917 16.955 9.694 16.966 C 8.371 16.97 7.231 16.562 6.24 15.665 C 4.639 14.216 3.01 12.801 1.402 11.361 C 0.9 10.911 0.421 10.418 0.22 9.748 C -0.194 8.366 -0.072 7.067 1 6.017 C 1.874 5.161 2.804 4.365 3.716 3.548 C 4.609 2.75 5.505 1.957 6.406 1.169 C 7.341 0.347 8.441 0.004 9.673 0.006 C 14.913 0.015 20.153 0.01 25.392 0.01 L 25.65 0.01 L 25.65 3.402 L 25.313 3.402 C 18.916 3.402 12.519 3.405 6.119 3.396 C 5.319 3.396 4.656 3.647 4.146 4.279 C 3.83 4.669 3.674 5.119 3.674 5.616 Z M 95.446 5.691 C 95.443 7.553 95.434 9.416 95.448 11.28 C 95.46 12.634 96.435 13.572 97.816 13.58 C 98.991 13.588 100.167 13.581 101.342 13.581 L 117.414 13.581 L 117.414 16.965 L 117.132 16.965 C 111.91 16.965 106.687 16.958 101.464 16.97 C 100.12 16.973 98.972 16.541 97.97 15.632 C 96.385 14.194 94.766 12.791 93.174 11.36 C 92.536 10.786 91.992 10.137 91.856 9.238 C 91.667 7.998 91.859 6.859 92.816 5.975 C 93.969 4.906 95.147 3.864 96.32 2.814 C 96.925 2.272 97.537 1.736 98.147 1.198 C 99.087 0.368 100.185 0.005 101.431 0.006 C 106.68 0.015 111.927 0.01 117.176 0.01 C 117.253 0.01 117.328 0.02 117.417 0.026 L 117.417 3.402 L 117.069 3.402 C 110.672 3.402 104.275 3.405 97.876 3.398 C 97.073 3.398 96.418 3.661 95.909 4.295 C 95.581 4.704 95.448 5.177 95.446 5.689 L 95.446 5.691 Z M 53.243 0.026 L 53.243 16.945 L 49.599 16.945 L 49.599 13.436 C 49.49 13.535 49.426 13.586 49.366 13.645 C 48.714 14.291 48.059 14.935 47.412 15.586 C 46.854 16.149 46.234 16.617 45.454 16.788 C 44.965 16.894 44.456 16.954 43.955 16.957 C 41.605 16.975 39.254 16.968 36.905 16.965 C 35.876 16.963 34.892 16.795 34.058 16.123 C 33.835 15.941 33.621 15.749 33.416 15.546 C 31.976 14.116 30.56 12.663 29.096 11.259 C 28.068 10.274 27.6 9.088 27.6 7.685 C 27.598 5.198 27.6 2.712 27.6 0.223 C 27.6 0.165 27.61 0.103 27.617 0.029 L 31.274 0.029 L 31.274 0.405 C 31.274 3.982 31.274 7.558 31.272 11.135 C 31.272 11.703 31.375 12.231 31.737 12.688 C 32.216 13.292 32.847 13.578 33.6 13.579 C 38.152 13.583 42.703 13.586 47.255 13.579 C 48.375 13.578 49.228 12.935 49.515 11.903 C 49.581 11.663 49.586 11.398 49.586 11.148 C 49.59 7.553 49.588 3.959 49.588 0.366 L 49.588 0.027 L 53.241 0.027 Z M 130.387 16.682 C 130.389 16.896 130.334 16.975 130.11 16.97 C 129.476 16.956 128.838 16.987 128.204 16.959 C 127.377 16.922 126.629 16.631 125.952 16.149 C 125.008 15.475 124.255 14.591 123.43 13.789 C 122.546 12.932 121.656 12.077 120.814 11.177 C 119.95 10.256 119.385 9.187 119.394 7.858 C 119.412 5.283 119.396 2.708 119.394 0.135 C 119.394 0.11 119.401 0.084 119.412 0.024 L 123.033 0.024 C 123.038 0.096 123.046 0.154 123.046 0.211 C 123.046 3.875 123.051 7.539 123.042 11.202 C 123.04 12.178 123.448 12.911 124.308 13.327 C 124.652 13.495 125.077 13.546 125.466 13.551 C 126.989 13.576 128.511 13.56 130.034 13.562 C 130.378 13.562 130.38 13.562 130.38 13.911 C 130.38 14.832 130.375 15.755 130.383 16.678 Z M 89.837 16.843 C 89.837 16.867 89.83 16.894 89.823 16.95 L 86.165 16.95 L 86.165 5.846 C 86.165 5.241 86.035 4.692 85.633 4.214 C 85.167 3.661 84.59 3.398 83.879 3.402 C 82.608 3.405 81.337 3.402 80.066 3.402 L 79.771 3.402 L 79.771 0.006 C 80.701 0.047 81.625 -0.105 82.526 0.167 C 83.032 0.321 83.475 0.615 83.84 0.995 C 84.859 2.05 85.861 3.121 86.866 4.191 C 87.441 4.801 88.003 5.421 88.579 6.033 C 89.349 6.856 89.802 7.826 89.813 8.961 C 89.837 11.589 89.83 14.215 89.835 16.841 L 89.837 16.843 Z\" fill=\"rgb(255,255,255)\"></path></svg>',withExternalLayout:true,children:[/*#__PURE__*/_jsx(SVG,{className:\"framer-15o1x1j\",requiresOverflowVisible:false,svg:'<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" viewBox=\"0 0 25.638 16.962\" overflow=\"visible\"><path d=\"M 25.119 6.623 C 24.801 6.18 24.411 5.778 24.007 5.411 C 22.537 4.078 21.038 2.78 19.571 1.444 C 18.507 0.475 17.299 -0.007 15.85 0 C 10.689 0.023 5.527 0.009 0.365 0.009 L 0 0.009 L 0 16.951 C 0.054 16.957 0.087 16.962 0.122 16.962 C 5.459 16.962 10.795 16.962 16.13 16.96 C 17.306 16.96 18.348 16.584 19.237 15.795 C 20.166 14.971 21.102 14.156 22.027 13.328 C 22.906 12.541 23.785 11.755 24.644 10.946 C 25.949 9.712 25.817 7.592 25.119 6.625 Z\" fill=\"transparent\"></path></svg>',withExternalLayout:true}),/*#__PURE__*/_jsx(SVG,{className:\"framer-1wnyhiu\",requiresOverflowVisible:false,svg:'<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" viewBox=\"0 0 18.312 3.373\" overflow=\"visible\"><path d=\"M 18.093 2.053 C 17.636 2.965 16.869 3.373 15.866 3.373 C 10.923 3.371 5.978 3.373 1.035 3.373 L 0 3.373 L 0 0 L 18.302 0 C 18.28 0.697 18.416 1.405 18.093 2.053 Z\" fill=\"transparent\"></path></svg>',withExternalLayout:true}),/*#__PURE__*/_jsx(SVG,{className:\"framer-cwvf9k\",requiresOverflowVisible:false,svg:'<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" viewBox=\"0 0 18.335 3.387\" overflow=\"visible\"><path d=\"M 0 3.387 L 0 0.01 L 0.269 0.01 C 5.474 0.01 10.678 0.025 15.883 0 C 17.042 -0.005 18.044 0.764 18.224 1.71 C 18.325 2.247 18.3 2.806 18.335 3.387 L 0 3.387 Z\" fill=\"transparent\"></path></svg>',withExternalLayout:true}),/*#__PURE__*/_jsx(SVG,{className:\"framer-4t48nh\",requiresOverflowVisible:false,svg:'<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" viewBox=\"0 0 25.653 16.965\" overflow=\"visible\"><path d=\"M 6.059 13.572 C 5.358 13.572 4.753 13.354 4.257 12.834 C 3.526 12.068 3.673 11.125 3.673 10.179 L 4.036 10.179 C 8.102 10.179 12.166 10.167 16.232 10.187 C 17.63 10.193 18.829 9.749 19.824 8.769 C 21.302 7.317 22.776 5.859 24.23 4.384 C 25.417 3.18 25.812 1.698 25.597 0.018 C 25.534 0.014 25.457 0.003 25.382 0.003 C 20.133 0.003 14.886 0.009 9.637 0 C 8.389 -0.002 7.295 0.369 6.354 1.197 C 5.567 1.889 4.783 2.585 4.002 3.284 C 2.991 4.188 1.972 5.081 0.986 6.007 C 0.247 6.701 -0.015 7.606 0.001 8.609 C 0.02 9.735 0.539 10.601 1.352 11.323 C 2.96 12.751 4.578 14.164 6.167 15.612 C 7.191 16.543 8.364 16.969 9.735 16.965 C 14.922 16.951 20.108 16.958 25.298 16.958 L 25.613 16.958 L 25.613 13.575 L 6.061 13.575 Z\" fill=\"transparent\"></path></svg>',withExternalLayout:true}),/*#__PURE__*/_jsx(SVG,{className:\"framer-10v1197\",requiresOverflowVisible:false,svg:'<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" viewBox=\"0 0 18.383 3.385\" overflow=\"visible\"><path d=\"M 0.194 1.525 C 0.4 0.685 1.252 0.067 2.106 0.012 C 2.245 0.004 2.384 0 2.522 0 L 18.376 0 C 18.332 0.711 18.507 1.426 18.168 2.083 C 17.719 2.954 16.99 3.387 16.009 3.385 C 14.165 3.381 12.321 3.385 10.475 3.385 L 0 3.385 C 0.061 2.736 0.051 2.111 0.194 1.527 L 0.194 1.525 Z\" fill=\"transparent\"></path></svg>',withExternalLayout:true}),/*#__PURE__*/_jsx(SVG,{className:\"framer-1dppmqp\",requiresOverflowVisible:false,svg:'<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" viewBox=\"0 0 25.65 16.96\" overflow=\"visible\"><path d=\"M 3.674 5.61 C 3.671 7.516 3.66 9.426 3.676 11.332 C 3.688 12.638 4.683 13.566 6.048 13.572 C 7.892 13.579 9.738 13.573 11.583 13.573 L 25.644 13.573 L 25.644 16.956 L 25.362 16.956 C 20.139 16.956 14.917 16.949 9.694 16.96 C 8.371 16.964 7.231 16.556 6.24 15.659 C 4.639 14.21 3.01 12.795 1.402 11.355 C 0.9 10.905 0.421 10.412 0.22 9.742 C -0.194 8.36 -0.072 7.061 1 6.011 C 1.874 5.155 2.804 4.359 3.716 3.542 C 4.609 2.744 5.505 1.951 6.406 1.163 C 7.341 0.341 8.441 -0.002 9.673 0 C 14.913 0.009 20.153 0.004 25.392 0.004 L 25.65 0.004 L 25.65 3.396 L 25.313 3.396 C 18.916 3.396 12.519 3.399 6.119 3.39 C 5.319 3.39 4.656 3.641 4.146 4.273 C 3.83 4.663 3.674 5.113 3.674 5.61 Z\" fill=\"transparent\"></path></svg>',withExternalLayout:true}),/*#__PURE__*/_jsx(SVG,{className:\"framer-j05ffx\",requiresOverflowVisible:false,svg:'<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" viewBox=\"0 0 25.627 16.963\" overflow=\"visible\"><path d=\"M 3.655 5.684 C 3.652 7.546 3.643 9.41 3.657 11.273 C 3.669 12.627 4.645 13.566 6.026 13.573 C 7.2 13.582 8.376 13.575 9.551 13.575 L 25.623 13.575 L 25.623 16.958 L 25.342 16.958 C 20.119 16.958 14.896 16.951 9.673 16.963 C 8.329 16.967 7.181 16.535 6.179 15.626 C 4.594 14.187 2.975 12.784 1.383 11.353 C 0.745 10.779 0.201 10.13 0.065 9.232 C -0.124 7.991 0.069 6.853 1.025 5.969 C 2.178 4.899 3.356 3.858 4.529 2.808 C 5.134 2.266 5.746 1.73 6.356 1.191 C 7.296 0.362 8.394 -0.002 9.64 0 C 14.889 0.009 20.136 0.003 25.385 0.003 C 25.462 0.003 25.537 0.014 25.627 0.019 L 25.627 3.395 L 25.279 3.395 C 18.881 3.395 12.484 3.399 6.085 3.392 C 5.283 3.392 4.627 3.655 4.119 4.288 C 3.79 4.698 3.657 5.171 3.655 5.682 L 3.655 5.684 Z\" fill=\"transparent\"></path></svg>',withExternalLayout:true}),/*#__PURE__*/_jsx(SVG,{className:\"framer-1flzlf9\",requiresOverflowVisible:false,svg:'<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" viewBox=\"0 0 25.644 16.943\" overflow=\"visible\"><path d=\"M 25.644 0 L 25.644 16.919 L 22 16.919 L 22 13.411 C 21.891 13.51 21.827 13.561 21.767 13.619 C 21.115 14.265 20.46 14.909 19.813 15.561 C 19.256 16.124 18.635 16.591 17.856 16.762 C 17.366 16.868 16.857 16.928 16.356 16.932 C 14.007 16.949 11.656 16.942 9.307 16.939 C 8.277 16.937 7.293 16.769 6.459 16.097 C 6.236 15.916 6.022 15.723 5.818 15.52 C 4.377 14.091 2.962 12.638 1.497 11.233 C 0.469 10.248 0.001 9.062 0.001 7.659 C -0.001 5.173 0.001 2.686 0.001 0.198 C 0.001 0.139 0.011 0.078 0.018 0.004 L 3.675 0.004 L 3.675 0.38 C 3.675 3.957 3.675 7.532 3.673 11.11 C 3.673 11.678 3.776 12.205 4.138 12.663 C 4.617 13.266 5.248 13.552 6.001 13.554 C 10.553 13.558 15.104 13.561 19.656 13.554 C 20.776 13.552 21.629 12.91 21.916 11.877 C 21.982 11.637 21.988 11.373 21.988 11.122 C 21.991 7.527 21.989 3.934 21.989 0.341 L 21.989 0.002 L 25.643 0.002 Z\" fill=\"transparent\"></path></svg>',withExternalLayout:true}),/*#__PURE__*/_jsx(SVG,{className:\"framer-uezvla\",requiresOverflowVisible:false,svg:'<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" viewBox=\"0 0 10.993 16.948\" overflow=\"visible\"><path d=\"M 10.993 16.658 C 10.995 16.872 10.94 16.951 10.716 16.946 C 10.082 16.932 9.444 16.964 8.81 16.935 C 7.983 16.898 7.235 16.607 6.558 16.125 C 5.614 15.451 4.861 14.567 4.036 13.766 C 3.152 12.908 2.262 12.054 1.42 11.154 C 0.556 10.232 -0.008 9.163 0 7.834 C 0.018 5.259 0.002 2.684 0 0.111 C 0 0.086 0.007 0.06 0.018 0 L 3.639 0 C 3.645 0.072 3.652 0.131 3.652 0.187 C 3.652 3.851 3.657 7.515 3.648 11.178 C 3.646 12.154 4.054 12.887 4.914 13.303 C 5.258 13.471 5.683 13.522 6.072 13.527 C 7.595 13.552 9.117 13.536 10.64 13.538 C 10.984 13.538 10.986 13.538 10.986 13.888 C 10.986 14.809 10.981 15.732 10.989 16.655 Z\" fill=\"transparent\"></path></svg>',withExternalLayout:true}),/*#__PURE__*/_jsx(SVG,{className:\"framer-h4sdo2\",requiresOverflowVisible:false,svg:'<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" viewBox=\"0 0 10.066 16.95\" overflow=\"visible\"><path d=\"M 10.066 16.843 C 10.066 16.867 10.059 16.894 10.052 16.95 L 6.394 16.95 L 6.394 5.846 C 6.394 5.241 6.264 4.692 5.862 4.214 C 5.396 3.661 4.819 3.398 4.108 3.402 C 2.837 3.405 1.566 3.402 0.295 3.402 L 0 3.402 L 0 0.006 C 0.93 0.047 1.854 -0.105 2.755 0.167 C 3.261 0.321 3.704 0.615 4.069 0.995 C 5.088 2.05 6.09 3.121 7.095 4.191 C 7.67 4.801 8.232 5.421 8.808 6.033 C 9.578 6.856 10.031 7.826 10.042 8.961 C 10.066 11.589 10.059 14.215 10.064 16.841 L 10.066 16.843 Z\" fill=\"transparent\"></path></svg>',withExternalLayout:true})]})]})})}),/*#__PURE__*/_jsx(\"div\",{className:\"framer-1chthv1\"}),/*#__PURE__*/_jsx(Overlay,{blockDocumentScrolling:false,dismissWithEsc:false,children:overlay=>/*#__PURE__*/_jsx(_Fragment,{children:/*#__PURE__*/_jsx(ComponentViewportProvider,{height:27,y:(componentViewport?.y||0)+0+0+0+0+18.5,children:/*#__PURE__*/_jsxs(Container,{className:\"framer-qfdfjl-container\",id:\"qfdfjl\",nodeId:\"Xs48SHj7U\",ref:ref1,scopeId:\"U1uzqqflT\",children:[/*#__PURE__*/_jsx(Button,{height:\"100%\",id:\"Xs48SHj7U\",layoutId:\"Xs48SHj7U\",nqqGRlyFd:getLocalizedValue(\"v0\",activeLocale)??\"BOOK A CALL\",Pq04jnLnz:Pq04jnLnz13elrgn({overlay}),qS6WIkDc_:\"https://cal.com/cubicle\",variant:matchVariant(overlay.visible&&\"ikLKrlUqf\",overlay.visible?\"ikLKrlUqf\":\"bslIGj12q\"),width:\"100%\"}),/*#__PURE__*/_jsx(AnimatePresence,{children:overlay.visible&&/*#__PURE__*/_jsx(Floating,{alignment:\"end\",anchorRef:ref1,className:cx(scopingClassNames),collisionDetection:true,collisionDetectionPadding:20,\"data-framer-portal-id\":\"qfdfjl\",offsetX:-30152034014463425e-21,offsetY:16.000007087597623,onDismiss:overlay.hide,placement:\"bottom\",safeArea:false,zIndex:11,children:/*#__PURE__*/_jsx(motion.div,{animate:animation1,className:\"framer-1h7vryw\",exit:animation,initial:animation2,ref:ref2,role:\"dialog\",children:/*#__PURE__*/_jsx(ComponentViewportProvider,{children:/*#__PURE__*/_jsx(Container,{className:\"framer-sr8jce-container\",inComponentSlot:true,nodeId:\"DR4jYCaLs\",rendersWithMotion:true,scopeId:\"U1uzqqflT\",children:/*#__PURE__*/_jsx(Form,{height:\"100%\",id:\"DR4jYCaLs\",layoutId:\"DR4jYCaLs\",variant:matchVariant(\"e4V4EI3ie\"),width:\"100%\"})})})})})})]})})})})]}),/*#__PURE__*/_jsx(\"div\",{className:\"framer-1noj9ui\",children:/*#__PURE__*/_jsxs(\"div\",{className:\"framer-11jev28\",\"data-framer-name\":\"Hero\",children:[/*#__PURE__*/_jsx(\"div\",{className:\"framer-1uanwlj\",\"data-framer-name\":\"Supply Manifest\",children:/*#__PURE__*/_jsx(ComponentViewportProvider,{children:/*#__PURE__*/_jsx(Container,{className:\"framer-yzlvvi-container\",isAuthoredByUser:true,isModuleExternal:true,nodeId:\"ZHm_L2i_v\",scopeId:\"U1uzqqflT\",children:/*#__PURE__*/_jsx(Video,{backgroundColor:\"rgba(0, 0, 0, 0)\",borderRadius:0,bottomLeftRadius:0,bottomRightRadius:0,controls:false,height:\"100%\",id:\"ZHm_L2i_v\",isMixedBorderRadius:false,layoutId:\"ZHm_L2i_v\",loop:true,muted:true,objectFit:\"cover\",playing:true,posterEnabled:false,srcFile:\"https://framerusercontent.com/assets/61YhuhY9JjOlzznIQYDJNj1dADs.mp4\",srcType:\"Upload\",srcUrl:getLocalizedValue(\"v1\",activeLocale)??\"https://framerusercontent.com/assets/MLWPbW1dUQawJLhhun3dBwpgJak.mp4\",startTime:0,style:{height:\"100%\",width:\"100%\"},topLeftRadius:0,topRightRadius:0,volume:25,width:\"100%\"})})})}),/*#__PURE__*/_jsxs(\"div\",{className:\"framer-1enl52c\",children:[/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(\"p\",{className:\"framer-styles-preset-5ebu2v\",\"data-styles-preset\":\"JAfRlDZX1\",dir:\"auto\",children:\"DESIGN OPS FOR IGAMING OPERATORS\"})}),className:\"framer-12gczs6\",\"data-framer-name\":\"DESIGN OPS FOR IGAMING OPERATORS\",fonts:[\"Inter\"],verticalAlignment:\"top\",withExternalLayout:true}),/*#__PURE__*/_jsxs(\"div\",{className:\"framer-vv50ge\",children:[/*#__PURE__*/_jsx(ComponentViewportProvider,{height:88,width:\"88px\",y:(componentViewport?.y||0)+0+0+0+144+0+28+297+0+0+0+0,children:/*#__PURE__*/_jsx(Container,{className:\"framer-4h1ako-container\",nodeId:\"noSDrqz4x\",scopeId:\"U1uzqqflT\",children:/*#__PURE__*/_jsx(AviatorLogo,{height:\"100%\",id:\"noSDrqz4x\",layoutId:\"noSDrqz4x\",style:{height:\"100%\",width:\"100%\"},width:\"100%\"})})}),/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(\"p\",{className:\"framer-styles-preset-5ebu2v\",\"data-styles-preset\":\"JAfRlDZX1\",dir:\"auto\",style:{\"--framer-text-color\":\"var(--token-640420f3-88d8-4bb7-8bb6-65aec150fca2, rgb(255, 255, 255))\"},children:\"FLAGSHIP PARTNER\"})}),className:\"framer-1p0czpd\",\"data-framer-name\":\"DESIGN OPS FOR IGAMING OPERATORS\",fonts:[\"Inter\"],verticalAlignment:\"top\",withExternalLayout:true})]})]}),/*#__PURE__*/_jsxs(\"div\",{className:\"framer-10gia52\",\"data-framer-name\":\"Frame 5\",children:[/*#__PURE__*/_jsxs(\"div\",{className:\"framer-19qqf9\",\"data-framer-name\":\"Copy\",children:[/*#__PURE__*/_jsx(\"div\",{className:\"framer-xpt9on\",\"data-framer-name\":\"Frame 3\",children:/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(\"h1\",{className:\"framer-styles-preset-1wln86d\",\"data-styles-preset\":\"ZAi46TVi4\",dir:\"auto\",children:\"The design partner for iGaming companies moving from ambition to market leadership.\"})}),className:\"framer-1n1hkog\",\"data-framer-name\":\"The design partner for iGaming companies moving from ambition to market leadership.\",fonts:[\"Inter\"],verticalAlignment:\"top\",withExternalLayout:true})}),/*#__PURE__*/_jsxs(\"div\",{className:\"framer-auzyo1\",\"data-framer-name\":\"Frame 4\",children:[/*#__PURE__*/_jsx(PropertyOverrides,{breakpoint:baseVariant,overrides:{j6bbW8Ert:{children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(\"p\",{className:\"framer-styles-preset-18j4xkt\",\"data-styles-preset\":\"i9K2DYagJ\",dir:\"auto\",style:{\"--framer-text-alignment\":\"start\"},children:\"We align brand, platform and game experience under one creative direction—helping operators, platforms and game studios launch stronger and scale without fragmented design.\"})})}},children:/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(\"p\",{className:\"framer-styles-preset-18j4xkt\",\"data-styles-preset\":\"i9K2DYagJ\",dir:\"auto\",style:{\"--framer-text-alignment\":\"end\"},children:\"We align brand, platform and game experience under one creative direction—helping operators, platforms and game studios launch stronger and scale without fragmented design.\"})}),className:\"framer-t2uhgo\",\"data-framer-name\":\"We align brand, platform and game experience under one creative direction—helping operators, platforms and game studios launch stronger and scale without fragmented design.\",fonts:[\"Inter\"],verticalAlignment:\"top\",withExternalLayout:true})}),/*#__PURE__*/_jsxs(\"div\",{className:\"framer-vgwie9\",\"data-framer-name\":\"Actions\",children:[/*#__PURE__*/_jsx(PropertyOverrides,{breakpoint:baseVariant,overrides:{j6bbW8Ert:{y:(componentViewport?.y||0)+0+0+0+144+0+28+432.2+0+0+0+101+0+129+0}},children:/*#__PURE__*/_jsx(ComponentViewportProvider,{height:47,y:(componentViewport?.y||0)+0+0+0+144+0+28+432.2+0+0+0+0+30+0,children:/*#__PURE__*/_jsx(Container,{className:\"framer-cv9w8m-container\",nodeId:\"Geo3GRAKH\",scopeId:\"U1uzqqflT\",children:/*#__PURE__*/_jsx(ButtonMain,{HbFRaVRF5:\"https://cal.com/cubicle\",height:\"100%\",id:\"Geo3GRAKH\",layoutId:\"Geo3GRAKH\",variant:matchVariant(\"tMFiXHyWJ\"),width:\"100%\",zLPXA8nod:\"BOOK A CALL\"})})})}),/*#__PURE__*/_jsx(PropertyOverrides,{breakpoint:baseVariant,overrides:{j6bbW8Ert:{y:(componentViewport?.y||0)+0+0+0+144+0+28+432.2+0+0+0+101+0+129+0}},children:/*#__PURE__*/_jsx(ComponentViewportProvider,{height:47,y:(componentViewport?.y||0)+0+0+0+144+0+28+432.2+0+0+0+0+30+0,children:/*#__PURE__*/_jsx(Container,{className:\"framer-17ml14n-container\",nodeId:\"QEQwzcrr5\",scopeId:\"U1uzqqflT\",children:/*#__PURE__*/_jsx(ButtonMain,{height:\"100%\",id:\"QEQwzcrr5\",layoutId:\"QEQwzcrr5\",variant:matchVariant(\"If1ky5S8B\"),width:\"100%\",zLPXA8nod:\"SELECTED WORK\"})})})})]})]})]}),/*#__PURE__*/_jsx(SVG,{className:\"framer-1cx5bpe\",\"data-framer-name\":\"Line 1\",fill:\"rgba(0,0,0,1)\",intrinsicHeight:3,intrinsicWidth:1186,svg:'<svg width=\"1186\" height=\"3\" viewBox=\"-1 -1 1186 3\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\\n<line y1=\"0.5\" x2=\"1184\" y2=\"0.5\" stroke=\"#1C1C1C\"/>\\n</svg>\\n',withExternalLayout:true})]})]})}),/*#__PURE__*/_jsxs(\"section\",{className:\"framer-1hicxbu\",\"data-framer-name\":\"Horizontal Scroll\",children:[/*#__PURE__*/_jsx(\"div\",{className:\"framer-rqfzqq\",children:/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(\"h2\",{className:\"framer-styles-preset-1k7qxxi\",\"data-styles-preset\":\"oPcNbSwuU\",dir:\"auto\",children:\"OUR STORY\"})}),className:\"framer-1q2ai7e\",\"data-framer-name\":\"The design partner for iGaming companies moving from ambition to market leadership.\",fonts:[\"Inter\"],verticalAlignment:\"top\",withExternalLayout:true})}),/*#__PURE__*/_jsxs(\"div\",{className:\"framer-196tyld\",children:[/*#__PURE__*/_jsx(PropertyOverrides,{breakpoint:baseVariant,overrides:{j6bbW8Ert:{children:/*#__PURE__*/_jsxs(React.Fragment,{children:[/*#__PURE__*/_jsxs(\"h4\",{dir:\"auto\",style:{\"--font-selector\":\"Q1VTVE9NVjI7UFAgUmlnaHQgR3JvdGVzayBNZWRpdW0=\",\"--framer-font-family\":'\"PP Right Grotesk Medium\", \"PP Right Grotesk Medium Placeholder\", sans-serif',\"--framer-font-open-type-features\":\"'blwf' on, 'cv09' on, 'cv03' on, 'cv04' on, 'cv11' on\",\"--framer-font-size\":\"22px\",\"--framer-font-weight\":\"500\",\"--framer-letter-spacing\":\"-0.04em\",\"--framer-line-height\":\"1.4em\",\"--framer-text-color\":\"var(--token-20608b9f-0145-4a1e-b971-ee948ebbb015, rgb(255, 255, 255))\"},children:[\"Our story began ten years ago, while working on Aviator. Years later, together with Aviator Studio, we returned to the industry where it all started—this time to realise our own vision.\",/*#__PURE__*/_jsx(\"br\",{}),/*#__PURE__*/_jsx(\"br\",{className:\"trailing-break\"})]}),/*#__PURE__*/_jsxs(\"h4\",{dir:\"auto\",style:{\"--font-selector\":\"Q1VTVE9NVjI7UFAgUmlnaHQgR3JvdGVzayBNZWRpdW0=\",\"--framer-font-family\":'\"PP Right Grotesk Medium\", \"PP Right Grotesk Medium Placeholder\", sans-serif',\"--framer-font-open-type-features\":\"'blwf' on, 'cv09' on, 'cv03' on, 'cv04' on, 'cv11' on\",\"--framer-font-size\":\"22px\",\"--framer-font-weight\":\"500\",\"--framer-letter-spacing\":\"-0.04em\",\"--framer-line-height\":\"1.4em\",\"--framer-text-color\":\"var(--token-20608b9f-0145-4a1e-b971-ee948ebbb015, rgb(255, 255, 255))\"},children:[\"Today, Cubicle creates\",/*#__PURE__*/_jsx(\"span\",{style:{\"--framer-text-color\":\"var(--token-0af6a8ba-d2b3-46fd-bb59-920b51fdd118, rgb(254, 241, 80))\"},children:\" \"}),\"connected experiences across brands, games, platforms and digital products through Cubicle Design, Cubicle Play and Thumbs.store.\",/*#__PURE__*/_jsx(\"br\",{}),/*#__PURE__*/_jsx(\"br\",{className:\"trailing-break\"})]}),/*#__PURE__*/_jsx(\"h4\",{dir:\"auto\",style:{\"--font-selector\":\"Q1VTVE9NVjI7UFAgUmlnaHQgR3JvdGVzayBNZWRpdW0=\",\"--framer-font-family\":'\"PP Right Grotesk Medium\", \"PP Right Grotesk Medium Placeholder\", sans-serif',\"--framer-font-open-type-features\":\"'blwf' on, 'cv09' on, 'cv03' on, 'cv04' on, 'cv11' on\",\"--framer-font-size\":\"22px\",\"--framer-font-weight\":\"500\",\"--framer-letter-spacing\":\"-0.04em\",\"--framer-line-height\":\"1.4em\",\"--framer-text-color\":\"var(--token-20608b9f-0145-4a1e-b971-ee948ebbb015, rgb(255, 255, 255))\"},children:\"And we’re still building.\"})]})},nm6cchMMm:{children:/*#__PURE__*/_jsxs(React.Fragment,{children:[/*#__PURE__*/_jsxs(\"h4\",{dir:\"auto\",style:{\"--font-selector\":\"Q1VTVE9NVjI7UFAgUmlnaHQgR3JvdGVzayBNZWRpdW0=\",\"--framer-font-family\":'\"PP Right Grotesk Medium\", \"PP Right Grotesk Medium Placeholder\", sans-serif',\"--framer-font-open-type-features\":\"'blwf' on, 'cv09' on, 'cv03' on, 'cv04' on, 'cv11' on\",\"--framer-font-size\":\"22px\",\"--framer-font-weight\":\"500\",\"--framer-letter-spacing\":\"-0.04em\",\"--framer-line-height\":\"1.4em\",\"--framer-text-color\":\"var(--token-20608b9f-0145-4a1e-b971-ee948ebbb015, rgb(255, 255, 255))\"},children:[\"Our story began ten years ago, while working on Aviator. Years later, together with Aviator Studio, we returned to the industry where it all started—this time to realise our own vision.\",/*#__PURE__*/_jsx(\"br\",{}),/*#__PURE__*/_jsx(\"br\",{className:\"trailing-break\"})]}),/*#__PURE__*/_jsxs(\"h4\",{dir:\"auto\",style:{\"--font-selector\":\"Q1VTVE9NVjI7UFAgUmlnaHQgR3JvdGVzayBNZWRpdW0=\",\"--framer-font-family\":'\"PP Right Grotesk Medium\", \"PP Right Grotesk Medium Placeholder\", sans-serif',\"--framer-font-open-type-features\":\"'blwf' on, 'cv09' on, 'cv03' on, 'cv04' on, 'cv11' on\",\"--framer-font-size\":\"22px\",\"--framer-font-weight\":\"500\",\"--framer-letter-spacing\":\"-0.04em\",\"--framer-line-height\":\"1.4em\",\"--framer-text-color\":\"var(--token-20608b9f-0145-4a1e-b971-ee948ebbb015, rgb(255, 255, 255))\"},children:[\"Today, Cubicle creates\",/*#__PURE__*/_jsx(\"span\",{style:{\"--framer-text-color\":\"var(--token-0af6a8ba-d2b3-46fd-bb59-920b51fdd118, rgb(254, 241, 80))\"},children:\" \"}),\"connected experiences across brands, games, platforms and digital products through Cubicle Design, Cubicle Play and Thumbs.store.\",/*#__PURE__*/_jsx(\"br\",{}),/*#__PURE__*/_jsx(\"br\",{className:\"trailing-break\"})]}),/*#__PURE__*/_jsx(\"h4\",{dir:\"auto\",style:{\"--font-selector\":\"Q1VTVE9NVjI7UFAgUmlnaHQgR3JvdGVzayBNZWRpdW0=\",\"--framer-font-family\":'\"PP Right Grotesk Medium\", \"PP Right Grotesk Medium Placeholder\", sans-serif',\"--framer-font-open-type-features\":\"'blwf' on, 'cv09' on, 'cv03' on, 'cv04' on, 'cv11' on\",\"--framer-font-size\":\"22px\",\"--framer-font-weight\":\"500\",\"--framer-letter-spacing\":\"-0.04em\",\"--framer-line-height\":\"1.4em\",\"--framer-text-color\":\"var(--token-20608b9f-0145-4a1e-b971-ee948ebbb015, rgb(255, 255, 255))\"},children:\"And we’re still building.\"})]})}},children:/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsxs(React.Fragment,{children:[/*#__PURE__*/_jsxs(\"h4\",{dir:\"auto\",style:{\"--font-selector\":\"Q1VTVE9NVjI7UFAgUmlnaHQgR3JvdGVzayBNZWRpdW0=\",\"--framer-font-family\":'\"PP Right Grotesk Medium\", \"PP Right Grotesk Medium Placeholder\", sans-serif',\"--framer-font-open-type-features\":\"'blwf' on, 'cv09' on, 'cv03' on, 'cv04' on, 'cv11' on\",\"--framer-font-size\":\"22px\",\"--framer-font-weight\":\"500\",\"--framer-letter-spacing\":\"-0.04em\",\"--framer-line-height\":\"1.4em\",\"--framer-text-color\":\"var(--token-10fcfb6f-8e0a-4c07-8ee3-1d5062767fb8, rgb(212, 212, 212))\"},children:[\"Our story began years ago, while working on Aviator. Years later, together with Aviator Studio, we returned to the industry where it all started—this time to realise our own vision.\",/*#__PURE__*/_jsx(\"br\",{}),/*#__PURE__*/_jsx(\"br\",{className:\"trailing-break\"})]}),/*#__PURE__*/_jsxs(\"h4\",{dir:\"auto\",style:{\"--font-selector\":\"Q1VTVE9NVjI7UFAgUmlnaHQgR3JvdGVzayBNZWRpdW0=\",\"--framer-font-family\":'\"PP Right Grotesk Medium\", \"PP Right Grotesk Medium Placeholder\", sans-serif',\"--framer-font-open-type-features\":\"'blwf' on, 'cv09' on, 'cv03' on, 'cv04' on, 'cv11' on\",\"--framer-font-size\":\"22px\",\"--framer-font-weight\":\"500\",\"--framer-letter-spacing\":\"-0.04em\",\"--framer-line-height\":\"1.4em\",\"--framer-text-color\":\"var(--token-10fcfb6f-8e0a-4c07-8ee3-1d5062767fb8, rgb(212, 212, 212))\"},children:[\"Today, Cubicle creates\",/*#__PURE__*/_jsx(\"span\",{style:{\"--framer-text-color\":\"var(--token-0af6a8ba-d2b3-46fd-bb59-920b51fdd118, rgb(254, 241, 80))\"},children:\" \"}),\"connected experiences across brands, games, platforms and digital products through Cubicle Design, Cubicle Play and Thumbs.store.\",/*#__PURE__*/_jsx(\"br\",{}),/*#__PURE__*/_jsx(\"br\",{className:\"trailing-break\"})]}),/*#__PURE__*/_jsx(\"h4\",{dir:\"auto\",style:{\"--font-selector\":\"Q1VTVE9NVjI7UFAgUmlnaHQgR3JvdGVzayBNZWRpdW0=\",\"--framer-font-family\":'\"PP Right Grotesk Medium\", \"PP Right Grotesk Medium Placeholder\", sans-serif',\"--framer-font-open-type-features\":\"'blwf' on, 'cv09' on, 'cv03' on, 'cv04' on, 'cv11' on\",\"--framer-font-size\":\"22px\",\"--framer-font-weight\":\"500\",\"--framer-letter-spacing\":\"-0.04em\",\"--framer-line-height\":\"1.4em\",\"--framer-text-color\":\"var(--token-10fcfb6f-8e0a-4c07-8ee3-1d5062767fb8, rgb(212, 212, 212))\"},children:\"And we’re still building.\"})]}),className:\"framer-q3tthr\",\"data-framer-name\":\"The design partner for iGaming companies moving from ambition to market leadership.\",fonts:[\"CUSTOMV2;PP Right Grotesk Medium\"],verticalAlignment:\"top\",withExternalLayout:true})}),/*#__PURE__*/_jsxs(\"div\",{className:\"framer-2ad8i\",children:[/*#__PURE__*/_jsx(SVG,{className:\"framer-1wmjeu9\",\"data-framer-name\":\"Ortak\",opacity:1,svg:'<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" viewBox=\"0 0 230.48 100.8\"><path d=\"M 44.588 94.693 C 46.229 94.693 47.131 95.456 47.234 96.92 L 46.024 97.121 C 45.987 96.059 45.519 95.558 44.588 95.558 C 43.555 95.558 43.054 96.198 43.054 97.547 L 43.054 97.789 C 43.054 99.131 43.559 99.77 44.6 99.77 C 45.523 99.77 46.003 99.27 46.065 98.212 L 47.287 98.442 C 47.152 99.889 46.233 100.64 44.596 100.64 C 42.759 100.64 41.807 99.627 41.807 97.675 L 41.807 97.658 C 41.807 95.71 42.759 94.693 44.588 94.693 Z M 61.388 94.693 C 62.939 94.693 63.759 95.411 63.804 96.62 L 62.692 96.801 C 62.66 95.923 62.258 95.501 61.359 95.501 C 60.642 95.501 60.219 95.772 60.219 96.231 C 60.219 96.612 60.392 96.809 61.351 97.072 L 62.27 97.318 C 63.205 97.572 63.96 97.9 63.96 98.913 C 63.96 99.996 63.033 100.64 61.495 100.64 C 59.891 100.64 58.968 99.959 58.87 98.675 L 60.072 98.491 C 60.133 99.438 60.609 99.832 61.56 99.832 C 62.327 99.832 62.766 99.561 62.766 99.069 C 62.766 98.622 62.483 98.425 61.548 98.171 L 60.629 97.921 C 59.686 97.658 59.067 97.256 59.071 96.338 C 59.071 95.275 59.94 94.693 61.388 94.693 Z M 111.345 94.693 C 112.895 94.693 113.716 95.411 113.761 96.62 L 112.65 96.801 C 112.617 95.923 112.215 95.501 111.316 95.501 C 110.599 95.501 110.176 95.772 110.176 96.231 C 110.176 96.612 110.348 96.809 111.308 97.072 L 112.227 97.318 C 113.162 97.572 113.917 97.9 113.917 98.913 C 113.917 99.996 112.99 100.64 111.452 100.64 C 109.848 100.64 108.925 99.959 108.827 98.675 L 110.028 98.491 C 110.09 99.438 110.566 99.832 111.517 99.832 C 112.284 99.832 112.723 99.561 112.723 99.069 C 112.723 98.622 112.44 98.425 111.505 98.171 L 110.586 97.921 C 109.643 97.658 109.024 97.256 109.028 96.338 C 109.028 95.275 109.897 94.693 111.345 94.693 Z M 156.618 94.693 C 158.259 94.693 159.161 95.456 159.264 96.92 L 158.054 97.121 C 158.017 96.059 157.549 95.558 156.618 95.558 C 155.585 95.558 155.084 96.198 155.084 97.547 L 155.084 97.789 C 155.084 99.131 155.589 99.77 156.631 99.77 C 157.553 99.77 158.033 99.27 158.095 98.212 L 159.317 98.442 C 159.182 99.889 158.263 100.64 156.626 100.64 C 154.789 100.64 153.837 99.627 153.837 97.675 L 153.837 97.658 C 153.837 95.71 154.789 94.693 156.618 94.693 Z M 161.278 98.478 C 161.278 99.385 161.688 99.791 162.574 99.791 C 163.456 99.791 163.857 99.385 163.857 98.478 L 163.857 94.795 L 165.072 94.795 L 165.072 98.577 C 165.072 99.992 164.264 100.64 162.574 100.64 C 160.88 100.64 160.068 99.992 160.068 98.577 L 160.068 94.795 L 161.278 94.795 Z M 176.371 94.693 C 178.012 94.693 178.914 95.456 179.017 96.92 L 177.807 97.121 C 177.77 96.059 177.302 95.558 176.371 95.558 C 175.338 95.558 174.837 96.198 174.837 97.547 L 174.837 97.789 C 174.837 99.131 175.342 99.77 176.384 99.77 C 177.306 99.77 177.786 99.27 177.848 98.212 L 179.07 98.442 C 178.935 99.889 178.016 100.64 176.38 100.64 C 174.542 100.64 173.59 99.627 173.59 97.675 L 173.59 97.658 C 173.59 95.71 174.542 94.693 176.371 94.693 Z M 75.141 94.693 C 76.728 94.693 77.593 95.341 77.741 96.559 L 76.535 96.772 C 76.465 95.944 76.014 95.562 75.141 95.562 C 74.082 95.562 73.57 96.194 73.57 97.547 L 73.57 97.732 C 73.57 99.106 74.054 99.746 75.055 99.746 C 75.965 99.746 76.465 99.225 76.601 98.142 L 74.862 98.142 L 74.862 97.289 L 77.807 97.289 L 77.807 100.538 L 76.74 100.538 C 76.724 100.201 76.777 99.84 76.97 99.09 L 76.875 99.065 C 76.519 100.09 75.776 100.628 74.71 100.628 C 73.143 100.628 72.323 99.611 72.323 97.662 L 72.323 97.646 C 72.323 95.702 73.287 94.693 75.141 94.693 Z M 119.478 94.693 C 121.066 94.693 121.931 95.341 122.079 96.559 L 120.873 96.772 C 120.803 95.944 120.352 95.562 119.478 95.562 C 118.42 95.562 117.908 96.194 117.908 97.547 L 117.908 97.732 C 117.908 99.106 118.392 99.746 119.392 99.746 C 120.303 99.746 120.803 99.225 120.939 98.142 L 119.2 98.142 L 119.2 97.289 L 122.144 97.289 L 122.144 100.538 L 121.078 100.538 C 121.062 100.201 121.115 99.84 121.308 99.09 L 121.214 99.065 C 120.857 100.09 120.114 100.628 119.048 100.628 C 117.481 100.628 116.661 99.611 116.661 97.662 L 116.661 97.646 C 116.661 95.702 117.625 94.693 119.478 94.693 Z M 50.822 94.795 C 52.127 94.795 52.812 95.345 52.812 96.366 L 52.812 96.383 C 52.812 97.166 52.365 97.633 51.528 97.728 L 51.528 97.81 C 52.008 97.933 52.205 98.167 52.393 98.782 L 52.578 99.397 C 52.767 100.008 52.939 100.291 53.152 100.435 L 53.14 100.537 L 51.77 100.537 C 51.622 100.324 51.52 100.045 51.372 99.475 L 51.22 98.909 C 51.069 98.339 50.905 98.085 50.306 98.085 L 49.268 98.085 L 49.268 100.537 L 48.058 100.537 L 48.058 94.795 Z M 58.751 100.537 L 57.479 100.537 L 57.102 99.43 L 54.846 99.43 L 54.469 100.537 L 53.275 100.537 L 55.277 94.795 L 56.741 94.795 Z M 65.92 97.055 L 68.545 97.055 L 68.545 94.795 L 69.759 94.795 L 69.759 100.537 L 68.545 100.537 L 68.545 97.941 L 65.92 97.941 L 65.92 100.537 L 64.71 100.537 L 64.71 94.795 L 65.92 94.795 Z M 83.778 100.537 L 82.507 100.537 L 82.13 99.43 L 79.874 99.43 L 79.497 100.537 L 78.303 100.537 L 80.305 94.795 L 81.769 94.795 Z M 86.978 97.74 C 87.142 98.155 87.281 98.577 87.433 99.122 L 87.519 99.122 C 87.675 98.577 87.814 98.155 87.975 97.744 L 89.123 94.795 L 90.636 94.795 L 90.636 100.537 L 89.455 100.537 L 89.455 97.654 C 89.455 97.24 89.467 96.887 89.517 96.383 L 89.435 96.37 L 87.9 100.537 L 87.027 100.537 L 85.489 96.366 L 85.403 96.378 C 85.448 96.887 85.46 97.24 85.46 97.654 L 85.46 100.537 L 84.3 100.537 L 84.3 94.795 L 85.813 94.795 Z M 95.735 95.644 L 92.769 95.644 L 92.769 97.15 L 95.546 97.15 L 95.546 97.921 L 92.769 97.921 L 92.769 99.689 L 95.817 99.689 L 95.817 100.537 L 91.559 100.537 L 91.559 94.795 L 95.735 94.795 Z M 100.71 94.795 C 102.506 94.795 103.405 95.751 103.405 97.662 L 103.405 97.679 C 103.405 99.582 102.506 100.537 100.71 100.537 L 98.294 100.537 L 98.294 94.795 Z M 108.359 95.644 L 105.394 95.644 L 105.394 97.15 L 108.17 97.15 L 108.17 97.921 L 105.394 97.921 L 105.394 99.689 L 108.441 99.689 L 108.441 100.537 L 104.184 100.537 L 104.184 94.795 L 108.359 94.795 Z M 115.877 100.537 L 114.667 100.537 L 114.667 94.795 L 115.877 94.795 Z M 126.381 98.097 C 126.582 98.425 126.701 98.655 126.861 99.016 L 126.947 99.003 C 126.898 98.565 126.874 98.212 126.874 97.831 L 126.874 94.795 L 128.047 94.795 L 128.047 100.537 L 126.747 100.537 L 124.749 97.269 C 124.54 96.924 124.405 96.653 124.24 96.28 L 124.154 96.297 C 124.203 96.744 124.224 97.1 124.224 97.482 L 124.224 100.537 L 123.051 100.537 L 123.051 94.795 L 124.368 94.795 Z M 133.149 95.644 L 130.184 95.644 L 130.184 97.15 L 132.96 97.15 L 132.96 97.921 L 130.184 97.921 L 130.184 99.689 L 133.231 99.689 L 133.231 100.537 L 128.974 100.537 L 128.974 94.795 L 133.149 94.795 Z M 136.336 94.795 C 138.132 94.795 139.031 95.751 139.031 97.662 L 139.031 97.679 C 139.031 99.582 138.132 100.537 136.336 100.537 L 133.92 100.537 L 133.92 94.795 Z M 144.633 94.795 C 145.765 94.795 146.344 95.275 146.344 96.202 L 146.344 96.223 C 146.344 96.903 146.011 97.322 145.376 97.449 L 145.376 97.531 C 146.135 97.658 146.528 98.13 146.528 98.913 L 146.528 98.93 C 146.528 99.984 145.909 100.537 144.699 100.537 L 141.598 100.537 L 141.598 94.795 Z M 148.731 96.325 C 148.907 96.637 149.055 96.957 149.223 97.379 L 149.309 97.379 C 149.477 96.957 149.621 96.637 149.793 96.329 L 150.646 94.795 L 151.897 94.795 L 149.842 98.384 L 149.842 100.537 L 148.632 100.537 L 148.632 98.384 L 146.578 94.795 L 147.869 94.795 Z M 169.013 94.795 C 170.145 94.795 170.723 95.275 170.723 96.202 L 170.723 96.223 C 170.723 96.903 170.391 97.322 169.756 97.449 L 169.756 97.531 C 170.514 97.658 170.908 98.13 170.908 98.913 L 170.908 98.93 C 170.908 99.984 170.289 100.537 169.079 100.537 L 165.978 100.537 L 165.978 94.795 Z M 172.807 100.537 L 171.597 100.537 L 171.597 94.795 L 172.807 94.795 Z M 181.051 99.639 L 183.898 99.639 L 183.898 100.537 L 179.841 100.537 L 179.841 94.795 L 181.051 94.795 Z M 188.676 95.644 L 185.711 95.644 L 185.711 97.15 L 188.487 97.15 L 188.487 97.921 L 185.711 97.921 L 185.711 99.689 L 188.758 99.689 L 188.758 100.537 L 184.5 100.537 L 184.5 94.795 L 188.676 94.795 Z M 142.808 99.713 L 144.309 99.713 C 144.945 99.713 145.261 99.414 145.261 98.807 L 145.261 98.79 C 145.261 98.195 144.945 97.896 144.309 97.896 L 142.808 97.896 Z M 167.188 99.713 L 168.689 99.713 C 169.325 99.713 169.641 99.414 169.641 98.807 L 169.641 98.79 C 169.641 98.195 169.325 97.896 168.689 97.896 L 167.188 97.896 Z M 99.504 99.689 L 100.644 99.689 C 101.678 99.689 102.158 99.106 102.158 97.818 L 102.158 97.519 C 102.158 96.227 101.678 95.64 100.644 95.64 L 99.504 95.64 Z M 135.13 99.689 L 136.27 99.689 C 137.304 99.689 137.784 99.106 137.784 97.818 L 137.784 97.519 C 137.784 96.227 137.304 95.64 136.27 95.64 L 135.13 95.64 Z M 55.933 95.763 C 55.802 96.292 55.691 96.69 55.539 97.158 L 55.055 98.655 L 56.897 98.655 L 56.417 97.154 C 56.269 96.69 56.155 96.292 56.015 95.763 Z M 80.961 95.763 C 80.83 96.292 80.719 96.69 80.567 97.158 L 80.083 98.655 L 81.925 98.655 L 81.445 97.154 C 81.297 96.69 81.182 96.292 81.043 95.763 Z M 49.268 97.301 L 50.581 97.301 C 51.257 97.301 51.585 97.051 51.585 96.473 L 51.585 96.456 C 51.585 95.874 51.265 95.624 50.605 95.624 L 49.268 95.624 Z M 142.808 97.141 L 144.272 97.141 C 144.851 97.141 145.138 96.887 145.138 96.378 L 145.138 96.362 C 145.138 95.862 144.851 95.616 144.272 95.616 L 142.808 95.616 Z M 167.188 97.141 L 168.652 97.141 C 169.231 97.141 169.518 96.887 169.518 96.378 L 169.518 96.362 C 169.518 95.862 169.23 95.616 168.652 95.616 L 167.188 95.616 Z M 46.84 82.093 C 48.48 82.093 49.383 82.856 49.485 84.32 L 48.275 84.521 C 48.239 83.459 47.771 82.958 46.84 82.958 C 45.806 82.958 45.306 83.598 45.306 84.947 L 45.306 85.189 C 45.306 86.531 45.81 87.17 46.852 87.17 C 47.775 87.17 48.255 86.67 48.316 85.612 L 49.539 85.842 C 49.403 87.289 48.485 88.04 46.848 88.04 C 45.011 88.04 44.059 87.027 44.059 85.075 L 44.059 85.058 C 44.059 83.11 45.011 82.093 46.84 82.093 Z M 52.992 82.093 C 54.858 82.093 55.826 83.11 55.826 85.062 L 55.826 85.079 C 55.826 87.027 54.858 88.04 52.992 88.04 C 51.13 88.04 50.162 87.027 50.162 85.079 L 50.162 85.062 C 50.162 83.11 51.13 82.093 52.992 82.093 Z M 78.766 82.093 C 80.633 82.093 81.6 83.11 81.6 85.062 L 81.6 85.079 C 81.6 87.027 80.633 88.04 78.766 88.04 C 76.904 88.04 75.936 87.027 75.936 85.079 L 75.936 85.062 C 75.936 83.11 76.904 82.093 78.766 82.093 Z M 159.198 82.093 C 161.064 82.093 162.032 83.11 162.032 85.062 L 162.032 85.079 C 162.032 87.027 161.064 88.04 159.198 88.04 C 157.336 88.04 156.368 87.027 156.368 85.079 L 156.368 85.062 C 156.368 83.11 157.336 82.093 159.198 82.093 Z M 172.397 82.093 C 173.947 82.093 174.768 82.811 174.813 84.02 L 173.701 84.201 C 173.668 83.323 173.266 82.901 172.368 82.901 C 171.65 82.901 171.228 83.172 171.228 83.631 C 171.228 84.012 171.4 84.209 172.36 84.472 L 173.279 84.718 C 174.214 84.972 174.969 85.3 174.969 86.313 C 174.969 87.396 174.042 88.04 172.503 88.04 C 170.9 88.04 169.977 87.359 169.878 86.075 L 171.08 85.891 C 171.142 86.838 171.618 87.232 172.569 87.232 C 173.336 87.232 173.775 86.961 173.775 86.469 C 173.775 86.022 173.492 85.825 172.557 85.571 L 171.638 85.321 C 170.695 85.058 170.075 84.656 170.08 83.738 C 170.08 82.675 170.949 82.093 172.397 82.093 Z M 181.74 85.878 C 181.74 86.785 182.15 87.191 183.036 87.191 C 183.918 87.191 184.32 86.785 184.32 85.878 L 184.32 82.195 L 185.534 82.195 L 185.534 85.977 C 185.534 87.392 184.726 88.04 183.036 88.04 C 181.342 88.04 180.53 87.392 180.53 85.977 L 180.53 82.195 L 181.74 82.195 Z M 197.154 82.093 C 199.02 82.093 199.988 83.11 199.988 85.062 L 199.988 85.079 C 199.988 87.027 199.02 88.04 197.154 88.04 C 195.292 88.04 194.324 87.027 194.324 85.079 L 194.324 85.062 C 194.324 83.11 195.292 82.093 197.154 82.093 Z M 28.785 85.497 C 28.986 85.825 29.105 86.055 29.265 86.416 L 29.351 86.403 C 29.302 85.965 29.277 85.612 29.277 85.231 L 29.277 82.195 L 30.45 82.195 L 30.45 87.937 L 29.15 87.937 L 27.152 84.669 C 26.943 84.324 26.808 84.053 26.644 83.68 L 26.558 83.697 C 26.607 84.144 26.627 84.5 26.627 84.882 L 26.627 87.937 L 25.454 87.937 L 25.454 82.195 L 26.771 82.195 Z M 35.552 83.044 L 32.587 83.044 L 32.587 84.55 L 35.364 84.55 L 35.364 85.321 L 32.587 85.321 L 32.587 87.089 L 35.634 87.089 L 35.634 87.937 L 31.377 87.937 L 31.377 82.195 L 35.552 82.195 Z M 37.935 85.308 C 38.054 85.788 38.145 86.239 38.231 86.834 L 38.313 86.834 C 38.407 86.239 38.493 85.78 38.612 85.3 L 39.379 82.195 L 40.454 82.195 L 41.25 85.308 C 41.372 85.788 41.455 86.239 41.536 86.826 L 41.627 86.826 C 41.717 86.239 41.803 85.792 41.918 85.312 L 42.681 82.195 L 43.875 82.195 L 42.386 87.937 L 40.917 87.937 L 40.232 85.259 C 40.122 84.833 40.027 84.316 39.941 83.697 L 39.859 83.697 C 39.773 84.316 39.675 84.833 39.568 85.255 L 38.883 87.937 L 37.435 87.937 L 35.922 82.195 L 37.152 82.195 Z M 59.288 85.14 C 59.452 85.555 59.592 85.977 59.743 86.522 L 59.83 86.522 C 59.985 85.977 60.125 85.555 60.285 85.144 L 61.433 82.195 L 62.947 82.195 L 62.947 87.937 L 61.765 87.937 L 61.765 85.054 C 61.765 84.64 61.778 84.287 61.827 83.783 L 61.745 83.77 L 60.211 87.937 L 59.337 87.937 L 57.799 83.766 L 57.713 83.778 C 57.758 84.287 57.77 84.64 57.77 85.054 L 57.77 87.937 L 56.61 87.937 L 56.61 82.195 L 58.123 82.195 Z M 68.045 83.044 L 65.08 83.044 L 65.08 84.55 L 67.856 84.55 L 67.856 85.321 L 65.08 85.321 L 65.08 87.089 L 68.127 87.089 L 68.127 87.937 L 63.869 87.937 L 63.869 82.195 L 68.045 82.195 Z M 71.581 82.195 C 72.885 82.195 73.57 82.745 73.57 83.766 L 73.57 83.783 C 73.57 84.566 73.123 85.033 72.286 85.128 L 72.286 85.21 C 72.766 85.333 72.963 85.567 73.151 86.182 L 73.336 86.797 C 73.525 87.408 73.697 87.691 73.91 87.835 L 73.898 87.937 L 72.528 87.937 C 72.38 87.724 72.278 87.445 72.13 86.875 L 71.978 86.309 C 71.827 85.739 71.662 85.485 71.064 85.485 L 70.026 85.485 L 70.026 87.937 L 68.816 87.937 L 68.816 82.195 Z M 86.432 83.053 L 83.594 83.053 L 83.594 84.595 L 86.203 84.595 L 86.203 85.394 L 83.594 85.394 L 83.594 87.937 L 82.384 87.937 L 82.384 82.195 L 86.432 82.195 Z M 93.13 83.102 L 91.321 83.102 L 91.321 87.937 L 90.107 87.937 L 90.107 83.102 L 88.298 83.102 L 88.298 82.195 L 93.13 82.195 Z M 94.865 84.455 L 97.49 84.455 L 97.49 82.195 L 98.704 82.195 L 98.704 87.937 L 97.49 87.937 L 97.49 85.341 L 94.865 85.341 L 94.865 87.937 L 93.655 87.937 L 93.655 82.195 L 94.865 82.195 Z M 103.802 83.044 L 100.837 83.044 L 100.837 84.55 L 103.614 84.55 L 103.614 85.321 L 100.837 85.321 L 100.837 87.089 L 103.884 87.089 L 103.884 87.937 L 99.627 87.937 L 99.627 82.195 L 103.802 82.195 Z M 107.883 83.725 C 108.06 84.037 108.207 84.357 108.375 84.779 L 108.462 84.779 C 108.63 84.357 108.773 84.037 108.946 83.729 L 109.799 82.195 L 111.05 82.195 L 108.995 85.784 L 108.995 87.937 L 107.785 87.937 L 107.785 85.784 L 105.73 82.195 L 107.022 82.195 Z M 115.746 83.044 L 112.781 83.044 L 112.781 84.55 L 115.557 84.55 L 115.557 85.321 L 112.781 85.321 L 112.781 87.089 L 115.828 87.089 L 115.828 87.937 L 111.571 87.937 L 111.571 82.195 L 115.746 82.195 Z M 121.583 87.937 L 120.311 87.937 L 119.934 86.83 L 117.678 86.83 L 117.3 87.937 L 116.107 87.937 L 118.109 82.195 L 119.573 82.195 Z M 124.868 82.195 C 126.172 82.195 126.857 82.745 126.857 83.766 L 126.857 83.783 C 126.857 84.566 126.41 85.033 125.573 85.128 L 125.573 85.21 C 126.053 85.333 126.25 85.567 126.439 86.182 L 126.623 86.797 C 126.812 87.408 126.984 87.691 127.198 87.835 L 127.185 87.937 L 125.815 87.937 C 125.668 87.724 125.565 87.445 125.418 86.875 L 125.266 86.309 C 125.114 85.739 124.95 85.485 124.351 85.485 L 123.314 85.485 L 123.314 87.937 L 122.103 87.937 L 122.103 82.195 Z M 139.039 87.937 L 137.767 87.937 L 137.39 86.83 L 135.134 86.83 L 134.757 87.937 L 133.563 87.937 L 135.565 82.195 L 137.029 82.195 Z M 140.86 85.284 C 141.024 85.797 141.143 86.223 141.282 86.818 L 141.364 86.818 C 141.5 86.223 141.619 85.797 141.783 85.284 L 142.775 82.195 L 143.994 82.195 L 142.017 87.937 L 140.581 87.937 L 138.575 82.195 L 139.863 82.195 Z M 145.725 87.937 L 144.514 87.937 L 144.514 82.195 L 145.725 82.195 Z M 151.721 87.937 L 150.45 87.937 L 150.072 86.83 L 147.816 86.83 L 147.439 87.937 L 146.245 87.937 L 148.247 82.195 L 149.711 82.195 Z M 156.106 83.102 L 154.297 83.102 L 154.297 87.937 L 153.083 87.937 L 153.083 83.102 L 151.274 83.102 L 151.274 82.195 L 156.106 82.195 Z M 165.58 82.195 C 166.884 82.195 167.569 82.745 167.569 83.766 L 167.569 83.783 C 167.569 84.566 167.122 85.033 166.286 85.128 L 166.286 85.21 C 166.765 85.333 166.962 85.567 167.151 86.182 L 167.336 86.797 C 167.524 87.408 167.697 87.691 167.91 87.835 L 167.897 87.937 L 166.528 87.937 C 166.38 87.724 166.277 87.445 166.13 86.875 L 165.978 86.309 C 165.826 85.739 165.662 85.485 165.063 85.485 L 164.025 85.485 L 164.025 87.937 L 162.816 87.937 L 162.816 82.195 Z M 180.026 83.102 L 178.217 83.102 L 178.217 87.937 L 177.003 87.937 L 177.003 83.102 L 175.194 83.102 L 175.194 82.195 L 180.026 82.195 Z M 188.856 82.195 C 190.653 82.195 191.551 83.151 191.551 85.062 L 191.551 85.079 C 191.551 86.982 190.653 87.937 188.856 87.937 L 186.441 87.937 L 186.441 82.195 Z M 193.54 87.937 L 192.331 87.937 L 192.331 82.195 L 193.54 82.195 Z M 52.992 82.958 C 51.926 82.958 51.409 83.606 51.409 84.96 L 51.409 85.198 C 51.409 86.535 51.926 87.17 52.992 87.17 C 54.063 87.17 54.575 86.535 54.575 85.198 L 54.575 84.96 C 54.575 83.606 54.063 82.958 52.992 82.958 Z M 78.766 82.958 C 77.7 82.958 77.183 83.606 77.183 84.96 L 77.183 85.198 C 77.183 86.535 77.7 87.17 78.766 87.17 C 79.837 87.17 80.35 86.535 80.35 85.198 L 80.35 84.96 C 80.35 83.606 79.837 82.958 78.766 82.958 Z M 159.198 82.958 C 158.132 82.958 157.615 83.606 157.615 84.96 L 157.615 85.198 C 157.615 86.535 158.132 87.17 159.198 87.17 C 160.269 87.17 160.781 86.535 160.781 85.198 L 160.781 84.96 C 160.781 83.606 160.269 82.958 159.198 82.958 Z M 197.154 82.958 C 196.087 82.958 195.571 83.606 195.571 84.96 L 195.571 85.198 C 195.571 86.535 196.087 87.17 197.154 87.17 C 198.225 87.17 198.737 86.535 198.737 85.198 L 198.737 84.96 C 198.737 83.606 198.225 82.958 197.154 82.958 Z M 187.65 87.089 L 188.791 87.089 C 189.825 87.089 190.304 86.506 190.304 85.218 L 190.304 84.919 C 190.304 83.627 189.825 83.04 188.791 83.04 L 187.65 83.04 Z M 118.765 83.163 C 118.634 83.692 118.523 84.09 118.371 84.558 L 117.887 86.055 L 119.729 86.055 L 119.249 84.554 C 119.101 84.09 118.986 83.692 118.847 83.163 Z M 136.221 83.163 C 136.09 83.692 135.979 84.09 135.827 84.558 L 135.343 86.055 L 137.185 86.055 L 136.705 84.554 C 136.557 84.09 136.443 83.692 136.303 83.163 Z M 148.903 83.163 C 148.772 83.692 148.661 84.09 148.509 84.558 L 148.025 86.055 L 149.867 86.055 L 149.387 84.554 C 149.239 84.09 149.125 83.692 148.985 83.163 Z M 70.026 84.701 L 71.339 84.701 C 72.015 84.701 72.343 84.451 72.343 83.873 L 72.343 83.856 C 72.343 83.274 72.023 83.024 71.363 83.024 L 70.026 83.024 Z M 123.314 84.701 L 124.626 84.701 C 125.303 84.701 125.631 84.451 125.631 83.873 L 125.631 83.856 C 125.631 83.274 125.311 83.024 124.65 83.024 L 123.314 83.024 Z M 164.025 84.701 L 165.338 84.701 C 166.015 84.701 166.343 84.451 166.343 83.873 L 166.343 83.856 C 166.343 83.274 166.023 83.024 165.363 83.024 L 164.025 83.024 Z M 201.965 83.147 C 201.965 84.086 201.51 84.484 200.661 84.566 L 200.566 84.111 C 201.063 84.037 201.272 83.844 201.272 83.344 L 200.653 83.344 L 200.653 82.195 L 201.965 82.195 Z M 203.61 83.147 C 203.61 84.086 203.155 84.484 202.306 84.566 L 202.211 84.111 C 202.708 84.037 202.917 83.844 202.917 83.344 L 202.297 83.344 L 202.297 82.195 L 203.61 82.195 Z M 132.181 82.548 C 131.685 82.622 131.472 82.815 131.472 83.315 L 132.091 83.315 L 132.091 84.464 L 130.778 84.464 L 130.778 83.512 C 130.778 82.573 131.238 82.175 132.083 82.093 Z M 133.826 82.548 C 133.33 82.622 133.116 82.815 133.116 83.315 L 133.736 83.315 L 133.736 84.464 L 132.423 84.464 L 132.423 83.512 C 132.423 82.573 132.882 82.175 133.727 82.093 Z M 38.513 62.445 C 39.694 62.123 40.896 62.123 42.156 62.168 C 42.073 63.392 41.734 64.558 41.135 65.586 C 40.54 66.582 39.685 67.437 38.609 68.104 C 38.072 68.437 37.48 68.723 36.844 68.954 C 36.212 69.159 35.543 69.275 34.84 69.347 C 34.138 69.414 33.403 69.42 32.654 69.36 C 31.905 69.302 31.168 69.078 30.419 68.839 C 30.808 67.672 31.477 66.663 32.296 65.815 C 32.706 65.389 33.154 65.011 33.631 64.664 C 34.115 64.294 34.626 63.963 35.155 63.674 C 36.221 63.073 37.335 62.743 38.513 62.445 Z M 188.098 62.168 C 189.357 62.123 190.559 62.123 191.74 62.445 C 192.918 62.743 194.033 63.073 195.098 63.674 C 195.627 63.963 196.138 64.294 196.622 64.664 C 197.099 65.011 197.546 65.389 197.957 65.815 C 198.777 66.663 199.445 67.672 199.834 68.839 C 199.085 69.078 198.348 69.302 197.598 69.36 C 196.85 69.42 196.116 69.414 195.413 69.347 C 194.71 69.275 194.041 69.159 193.409 68.954 C 192.773 68.723 192.181 68.437 191.644 68.104 C 190.568 67.437 189.713 66.582 189.118 65.586 C 188.519 64.558 188.18 63.392 188.098 62.168 Z M 25.147 59.577 C 27.482 59.122 29.94 59.21 32.292 60.075 C 31.464 62.389 29.665 64.174 27.234 64.799 C 26.023 65.122 24.623 65.26 23.259 64.947 C 21.894 64.648 20.4 64.188 19.152 63.226 C 20.561 61.208 22.785 60.126 25.147 59.577 Z M 197.962 60.075 C 200.313 59.21 202.772 59.122 205.107 59.577 C 207.468 60.126 209.693 61.208 211.101 63.226 C 209.854 64.188 208.36 64.648 206.995 64.947 C 205.631 65.26 204.231 65.122 203.02 64.799 C 200.589 64.174 198.79 62.389 197.962 60.075 Z M 157.63 26.774 C 161.257 24.707 168.208 26.707 171.445 28.956 C 182.427 36.59 180.963 57.109 167.918 61.759 C 163.014 63.505 155.309 63.715 151.675 59.363 C 151.421 59.058 150.989 58.073 150.925 58.034 C 150.766 57.931 148.12 57.339 147.323 56.979 C 144.776 55.82 140.456 52.245 140.455 49.194 L 140.455 44.35 L 134.905 44.35 L 134.905 49.889 L 128.363 49.889 L 128.363 31.888 L 134.905 31.888 L 134.905 37.82 L 140.455 37.82 L 140.455 32.182 L 140.753 31.884 L 146.998 31.884 L 146.998 44.441 L 146.994 44.449 C 149.692 46.044 152.457 47.754 154.151 50.468 L 155.496 49.865 C 155.761 49.408 153.774 47.679 153.373 46.984 C 152.453 45.378 152.064 43.16 152.394 41.331 C 152.767 39.272 154.81 40.141 156.317 40.117 L 157.869 36.169 C 156.893 35.169 155.44 34.463 154.032 34.463 C 152.929 34.463 150.089 35.729 150.156 33.582 C 150.231 31.103 154.786 28.774 157 28.714 C 158.13 28.687 159.349 29.004 160.475 29.119 C 159.757 28.103 158.015 28.25 157.107 27.635 C 156.726 27.381 157.412 26.901 157.63 26.774 Z M 168.989 28.821 C 165.803 27.163 162.419 26.818 158.876 27.341 C 158.797 27.889 158.936 27.643 159.174 27.738 C 160.717 28.345 162.062 28.833 162.681 30.571 C 162.788 30.868 162.915 30.809 162.542 31.095 C 159.023 28.512 153.183 29.551 151.342 33.67 L 155.615 33.67 C 156.258 33.67 159.344 35.304 159.46 35.971 C 158.384 37.605 157.468 39.379 157.289 41.371 L 154.056 41.164 C 153.012 44.029 154.302 47.778 157.099 49.19 C 156.54 49.698 154.52 51.384 153.858 51.285 C 151.644 48.742 147.569 44.687 143.911 45.136 C 141.542 45.425 141.439 48.052 141.931 49.889 C 142.625 52.475 145.169 54.848 147.581 55.919 C 148.513 56.332 150.628 56.653 151.227 57.026 C 151.604 57.26 152.663 58.708 153.223 59.188 C 157.591 62.922 164.371 62.704 169.168 59.859 C 179.598 53.678 180.027 34.562 168.989 28.821 Z M 144.704 45.91 C 149.008 45.898 153.233 52.165 156.102 54.824 L 154.607 52.063 C 156.674 50.274 159.277 49.35 161.756 48.31 C 162.026 48.326 162.244 50.302 162.443 50.786 C 162.994 52.147 164.557 53.293 166.017 53.448 L 163.637 50.881 C 166.454 51.861 169.342 51.798 171.469 49.496 C 172.135 48.774 172.806 47.076 173.242 46.719 C 173.623 46.41 174.905 46.037 175.111 46.656 C 175.265 47.12 174.627 49.651 174.437 50.282 C 172.175 57.765 165.656 62.26 157.781 59.978 C 151.441 58.141 152.235 51.409 147.251 49.322 C 146.835 49.147 145.72 48.564 145.398 49.092 C 147.283 49.786 148.954 51.488 149.866 53.238 C 150.001 53.496 150.751 55.214 150.743 55.325 C 150.723 55.575 150.401 55.59 150.152 55.527 C 147.934 54.995 144.787 53.392 143.573 51.405 C 142.49 49.631 141.705 45.918 144.704 45.91 Z M 36.615 50.225 C 37.037 50.356 37.412 50.6 37.793 50.801 C 38.173 51.005 38.527 51.266 38.862 51.577 C 39.196 51.883 39.507 52.257 39.805 52.642 C 40.107 53.001 40.39 53.404 40.65 53.845 C 41.17 54.727 41.607 55.758 41.905 56.874 C 42.205 57.958 42.364 59.127 42.281 60.356 C 41.083 60.316 39.981 59.826 39.047 59.274 C 38.113 58.7 37.389 57.778 36.876 56.857 C 36.621 56.385 36.423 55.887 36.284 55.37 C 36.151 54.831 36.079 54.265 36.063 53.698 C 36.03 52.56 36.226 51.39 36.615 50.225 Z M 193.638 50.225 C 194.027 51.39 194.223 52.56 194.191 53.698 C 194.174 54.265 194.102 54.831 193.97 55.37 C 193.831 55.887 193.632 56.385 193.377 56.857 C 192.865 57.778 192.141 58.7 191.206 59.274 C 190.272 59.826 189.17 60.316 187.972 60.356 C 187.889 59.127 188.048 57.958 188.348 56.874 C 188.646 55.758 189.083 54.727 189.603 53.845 C 189.863 53.404 190.146 53.001 190.448 52.642 C 190.746 52.257 191.057 51.883 191.392 51.577 C 191.726 51.266 192.08 51.005 192.46 50.801 C 192.841 50.6 193.216 50.356 193.638 50.225 Z M 30.289 47.076 C 30.974 47.648 31.623 48.18 32.068 48.999 C 32.507 49.83 32.907 50.658 33.153 51.667 C 33.624 53.7 33.739 56.057 32.912 58.368 C 30.654 57.54 29.098 55.659 28.695 53.509 C 28.219 51.423 28.886 49.087 30.289 47.076 Z M 199.965 47.076 C 201.368 49.087 202.034 51.423 201.558 53.509 C 201.156 55.659 199.599 57.54 197.342 58.368 C 196.515 56.057 196.63 53.7 197.101 51.667 C 197.347 50.658 197.747 49.83 198.186 48.999 C 198.63 48.18 199.28 47.648 199.965 47.076 Z M 9.789 54.622 C 11.675 53.1 14.214 52.589 16.577 52.771 C 17.171 52.818 17.751 52.917 18.324 53.054 C 18.925 53.162 19.512 53.316 20.079 53.518 C 21.21 53.927 22.244 54.543 23.296 55.243 C 22.568 56.233 21.663 57.024 20.604 57.571 C 19.532 58.135 18.35 58.401 17.108 58.36 C 15.872 58.318 14.499 58.051 13.25 57.407 C 12.027 56.739 10.793 55.827 9.789 54.622 Z M 213.676 52.771 C 216.04 52.589 218.579 53.1 220.465 54.622 C 219.461 55.827 218.227 56.739 217.004 57.407 C 215.756 58.051 214.382 58.318 213.146 58.36 C 211.904 58.401 210.722 58.135 209.65 57.571 C 208.59 57.024 207.686 56.233 206.958 55.243 C 208.01 54.543 209.043 53.927 210.175 53.518 C 210.742 53.316 211.329 53.162 211.93 53.054 C 212.503 52.917 213.083 52.818 213.676 52.771 Z M 24.983 42.209 C 25.555 42.886 25.97 43.643 26.17 44.56 C 26.395 45.451 26.542 46.369 26.483 47.423 C 26.428 48.474 26.244 49.577 25.931 50.633 C 25.603 51.706 25.102 52.789 24.374 53.779 C 23.372 53.116 22.685 52.14 22.231 51.127 C 22.001 50.622 21.832 50.103 21.724 49.583 C 21.645 49.035 21.636 48.477 21.682 47.934 C 21.861 45.747 23.045 43.775 24.983 42.209 Z M 205.271 42.209 C 207.209 43.775 208.392 45.747 208.572 47.934 C 208.617 48.477 208.608 49.035 208.529 49.583 C 208.422 50.103 208.253 50.622 208.022 51.127 C 207.568 52.14 206.882 53.116 205.88 53.779 C 205.152 52.789 204.651 51.706 204.323 50.633 C 204.009 49.577 203.826 48.474 203.77 47.423 C 203.712 46.369 203.859 45.451 204.084 44.56 C 204.283 43.643 204.699 42.886 205.271 42.209 Z M 168.405 43.859 C 168.683 43.756 168.921 43.657 169.199 43.847 C 169.913 44.343 168.203 45.517 168.005 46.029 L 170.171 47.045 C 170.234 47.223 170.159 47.358 170.087 47.513 C 169.959 47.791 166.355 50.281 166.112 50.286 C 164.49 50.31 167.108 48.009 166.81 47.711 L 166.814 47.711 C 166.318 47.703 164.783 47.469 164.644 46.993 C 164.581 46.815 164.656 46.68 164.727 46.525 C 164.823 46.319 168.076 43.982 168.405 43.859 Z M 86.927 38.515 L 84.792 40.883 L 86.927 43.458 L 86.927 49.885 L 68.391 49.885 L 68.093 49.588 L 68.093 32.186 L 68.391 31.888 L 86.927 31.888 Z M 107.15 32.186 L 107.15 38.118 L 106.853 38.415 L 94.859 38.415 C 94.95 39.121 94.593 40.07 95.157 40.589 L 105.563 40.589 L 105.563 46.917 L 94.859 46.917 L 94.859 49.885 L 88.317 49.885 L 88.317 32.186 L 88.614 31.888 L 106.853 31.888 Z M 126.971 32.186 L 126.971 38.118 L 126.674 38.415 L 120.826 38.415 L 120.826 49.885 L 114.283 49.885 L 114.283 38.415 L 108.435 38.415 L 108.138 38.118 L 108.138 32.186 L 108.435 31.888 L 126.674 31.888 Z M 3.203 43.699 C 5.472 42.756 8.037 42.995 10.233 43.846 C 11.294 44.299 12.463 44.814 13.398 45.542 C 14.319 46.284 15.25 47.088 16.012 48.093 C 14.088 49.587 11.611 50.117 9.181 49.373 C 8.001 48.987 6.824 48.303 5.744 47.362 C 4.725 46.391 3.873 45.125 3.203 43.699 Z M 220.02 43.846 C 222.216 42.995 224.782 42.756 227.051 43.699 C 226.381 45.125 225.529 46.391 224.509 47.362 C 223.431 48.303 222.253 48.987 221.073 49.373 C 218.643 50.117 216.166 49.587 214.242 48.093 C 215.004 47.088 215.935 46.284 216.855 45.542 C 217.791 44.814 218.96 44.299 220.02 43.846 Z M 159.277 43.076 C 159.447 43.747 158.182 44.639 158.289 44.743 L 158.293 44.743 L 159.884 45.032 C 160.102 45.187 160.138 45.568 160.086 45.802 C 160.043 46 157.067 48.27 156.706 47.909 C 156.488 47.056 157.285 46.893 157.495 46.23 C 157.388 45.739 155.726 46.195 155.722 45.258 L 158.813 42.791 Z M 51.45 38.606 C 51.486 38.078 51.843 37.657 52.347 38.002 C 52.946 38.411 55.656 41.569 55.909 41.569 C 57.1 40.673 58.314 38.796 59.472 38.002 C 59.988 37.645 60.488 38.201 60.282 38.606 C 60.024 39.117 57.735 41.089 57.1 41.78 C 56.988 41.903 56.775 41.954 56.604 41.97 L 56.6 41.978 C 56.52 42.271 56.679 42.307 56.794 42.474 C 57.5 43.514 60.262 45.462 60.662 46.326 C 60.805 46.632 60.766 47.057 60.46 47.116 C 59.849 47.239 56.889 43.446 56.076 42.978 C 55.909 42.95 53.882 44.831 53.529 45.14 C 53.406 45.247 52.295 46.838 52.041 45.826 C 51.851 45.073 55.342 42.585 55.215 42.077 C 53.862 41.073 52.858 39.439 51.45 38.606 Z M 21.279 36.076 C 21.68 36.863 21.783 37.738 21.747 38.653 C 21.769 39.536 21.581 40.494 21.233 41.487 C 20.584 43.422 19.411 45.475 17.453 46.99 C 16.729 46.035 16.233 44.982 16.13 43.85 C 16.011 42.731 16.04 41.683 16.488 40.639 C 17.3 38.581 19.01 37.02 21.279 36.076 Z M 208.974 36.076 C 211.243 37.02 212.953 38.581 213.766 40.639 C 214.214 41.683 214.243 42.731 214.124 43.85 C 214.02 44.982 213.524 46.035 212.8 46.99 C 210.843 45.475 209.669 43.422 209.021 41.487 C 208.673 40.494 208.485 39.536 208.507 38.653 C 208.47 37.738 208.573 36.863 208.974 36.076 Z M 74.437 44.747 L 80.484 44.747 L 80.749 44.422 L 80.781 43.168 L 80.781 43.164 L 74.437 43.164 Z M 162.85 28.536 C 170.214 28.972 175.284 35.86 174.943 42.973 L 174.943 42.965 L 158.887 41.481 L 158.538 41.065 C 158.443 40.573 159.224 38.482 159.518 37.959 C 160.43 36.328 161.926 36.47 160.176 34.661 C 159.414 33.876 158.212 33.332 157.24 32.844 L 155.32 32.194 C 157.962 30.206 161.327 30.849 163.838 32.686 C 164.215 31.309 163.699 29.678 162.85 28.536 Z M 0 31.533 C 2.442 31.256 4.83 32.197 6.685 33.624 C 8.65 35.058 10.128 36.978 11.053 39.314 C 8.77 40.219 6.32 40.013 4.13 38.639 C 3.112 37.938 2.185 36.953 1.423 35.746 C 0.655 34.544 0.251 33.083 0 31.533 Z M 223.569 33.624 C 225.423 32.197 227.812 31.256 230.254 31.533 C 230.003 33.083 229.599 34.544 228.83 35.746 C 228.069 36.953 227.142 37.938 226.124 38.639 C 223.934 40.013 221.484 40.219 219.201 39.314 C 220.126 36.978 221.604 35.058 223.569 33.624 Z M 74.437 38.812 L 80.781 38.812 L 80.781 37.229 L 74.437 37.229 Z M 19.482 29.219 C 19.653 30.087 19.448 30.973 19.218 31.832 C 18.98 32.69 18.522 33.564 17.904 34.423 C 16.805 36.081 15.03 37.75 12.746 38.654 C 11.856 36.412 12.319 33.987 13.587 32.281 C 14.954 30.525 17.04 29.495 19.482 29.219 Z M 210.772 29.219 C 213.214 29.495 215.299 30.525 216.666 32.281 C 217.935 33.987 218.398 36.412 217.507 38.654 C 215.224 37.75 213.449 36.081 212.35 34.423 C 211.732 33.564 211.274 32.69 211.036 31.832 C 210.805 30.973 210.601 30.087 210.772 29.219 Z M 0.296 18.816 C 2.718 19.232 4.745 20.8 6.122 22.688 C 6.857 23.644 7.488 24.699 7.891 25.815 C 8.269 26.933 8.681 28.113 8.724 29.371 C 6.279 29.599 3.99 28.715 2.28 26.787 C 1.473 25.831 0.883 24.626 0.486 23.257 C 0.271 22.572 0.179 21.852 0.166 21.108 C 0.144 20.363 0.185 19.594 0.296 18.816 Z M 229.958 18.816 C 230.068 19.594 230.11 20.363 230.088 21.108 C 230.074 21.852 229.983 22.572 229.768 23.257 C 229.371 24.626 228.781 25.831 227.973 26.787 C 226.263 28.715 223.974 29.599 221.53 29.371 C 221.572 28.113 221.985 26.933 222.363 25.815 C 222.765 24.699 223.397 23.644 224.132 22.688 C 225.509 20.8 227.536 19.231 229.958 18.816 Z M 13.124 23.324 C 14.933 22.019 17.227 21.614 19.649 22.029 C 19.595 22.47 19.476 22.888 19.298 23.292 C 19.112 23.694 18.882 24.083 18.665 24.465 C 18.2 25.225 17.491 25.937 16.684 26.589 C 15.156 27.878 12.979 28.984 10.534 29.211 C 10.497 28.015 10.585 26.858 11.108 25.848 C 11.604 24.837 12.27 23.972 13.124 23.324 Z M 210.604 22.029 C 213.026 21.614 215.32 22.019 217.129 23.324 C 217.983 23.972 218.649 24.837 219.146 25.848 C 219.668 26.858 219.756 28.015 219.719 29.211 C 217.274 28.984 215.097 27.878 213.569 26.589 C 212.762 25.937 212.053 25.225 211.588 24.465 C 211.372 24.083 211.142 23.694 210.955 23.292 C 210.778 22.888 210.659 22.47 210.604 22.029 Z M 112.405 11.86 C 113.532 5.623 120.793 3.072 125.918 6.567 C 126.129 6.52 126.518 5.58 126.724 5.58 L 131.679 5.58 L 131.977 5.877 L 131.977 22.096 L 131.679 22.394 C 130.699 22.394 127.129 22.592 126.526 22.394 L 126.533 22.394 C 126.307 22.318 126.176 21.541 125.776 21.624 C 121.562 24.35 115.31 23.021 113.112 18.375 C 112.187 16.419 112.025 13.971 112.405 11.86 Z M 63.753 0.105 C 73.557 -0.891 82.138 5.29 80.432 15.756 C 79.933 18.823 77.723 24.247 73.712 22.691 C 69.7 21.136 68.998 20.259 64.285 20.609 C 61.277 20.831 60.313 21.969 57.905 22.747 C 54.386 23.882 52.307 19.291 51.763 16.502 C 50.117 8.071 55.152 0.977 63.753 0.105 Z M 106.609 1.922 L 106.609 5.584 L 110.374 5.584 L 110.374 10.825 L 110.077 11.122 L 106.609 11.122 L 106.609 15.177 C 106.609 15.288 107.137 15.883 107.391 15.975 C 108.339 16.324 109.573 16.26 110.573 16.264 L 110.573 22.394 L 105.518 22.394 C 102.737 22.394 99.471 19.625 99.471 16.756 L 99.471 11.118 L 96.302 10.92 L 96.302 5.877 L 96.599 5.58 L 99.471 5.58 L 99.471 1.624 L 106.311 1.624 Z M 141.301 10.726 L 144.276 5.584 L 152.009 5.584 L 147.312 13.598 L 152.402 22.394 L 144.574 22.394 L 141.301 16.859 L 141.301 22.394 L 134.465 22.394 L 134.167 22.101 L 134.167 1.926 L 134.465 1.628 L 141.301 1.628 Z M 89.07 7.167 C 90.749 5.778 92.558 5.393 94.716 5.584 L 94.716 11.713 L 91.844 11.713 C 91.463 11.713 90.356 12.638 90.356 12.999 L 90.356 22.096 L 90.058 22.394 L 83.219 22.394 L 83.219 5.584 L 88.079 5.584 Z M 15.189 14.602 C 17.292 13.861 19.617 14.124 21.823 15.203 C 21.044 16.776 19.643 17.93 17.703 18.733 C 15.871 19.54 13.468 19.993 11.057 19.529 C 11.354 18.369 11.786 17.29 12.546 16.46 C 13.306 15.628 14.21 14.994 15.189 14.602 Z M 208.43 15.203 C 210.636 14.124 212.962 13.861 215.064 14.602 C 216.044 14.994 216.947 15.628 217.706 16.46 C 218.467 17.29 218.899 18.369 219.196 19.529 C 216.785 19.993 214.382 19.54 212.55 18.733 C 210.61 17.93 209.21 16.776 208.43 15.203 Z M 4.158 6.673 C 6.366 7.753 7.859 9.827 8.648 12.027 C 9.108 13.161 9.396 14.342 9.47 15.527 C 9.542 16.713 9.585 17.955 9.276 19.175 C 6.865 18.711 4.917 17.224 3.821 14.895 C 2.819 12.621 2.76 9.516 4.158 6.673 Z M 226.096 6.673 C 227.494 9.516 227.435 12.621 226.433 14.895 C 225.337 17.224 223.389 18.711 220.978 19.175 C 220.669 17.955 220.711 16.713 220.784 15.527 C 220.858 14.342 221.146 13.161 221.606 12.027 C 222.394 9.827 223.887 7.753 226.096 6.673 Z M 66.074 19.033 C 73.212 19.045 73.319 7.341 65.543 7.813 C 58.691 8.23 58.937 19.021 66.074 19.033 Z M 121.776 17.054 C 126.764 17.581 126.232 10.13 121.626 10.971 C 118.567 11.527 118.495 16.708 121.776 17.054 Z M 19.549 1.575 C 19.592 2.834 19.437 3.993 19.098 5.026 C 18.74 6.046 18.379 7.085 17.737 7.92 C 16.566 9.661 14.795 11.037 12.534 11.943 C 11.607 9.639 12.055 7.011 13.429 4.984 C 14.165 4.008 14.989 3.081 16.091 2.527 C 17.175 1.958 18.353 1.616 19.549 1.575 Z M 210.704 1.575 C 211.9 1.616 213.079 1.958 214.162 2.527 C 215.264 3.081 216.088 4.008 216.825 4.984 C 218.198 7.011 218.647 9.639 217.719 11.943 C 215.458 11.037 213.688 9.661 212.516 7.92 C 211.874 7.085 211.513 6.046 211.155 5.026 C 210.816 3.993 210.661 2.834 210.704 1.575 Z\" fill=\"rgb(255,255,255)\"></path></svg>',svgContentId:9708832246,withExternalLayout:true}),/*#__PURE__*/_jsx(SVG,{className:\"framer-1y5sfx7\",\"data-framer-name\":\"European\",opacity:1,svg:'<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" viewBox=\"0 0 200.03 111.3\"><path d=\"M 54.731 101.103 C 54.731 102.01 55.141 102.416 56.027 102.416 C 56.909 102.416 57.311 102.01 57.311 101.103 L 57.311 97.42 L 58.525 97.42 L 58.525 101.202 C 58.525 102.617 57.717 103.265 56.027 103.265 C 54.333 103.265 53.521 102.617 53.521 101.202 L 53.521 97.42 L 54.731 97.42 Z M 74.616 97.318 C 76.166 97.318 76.986 98.036 77.031 99.245 L 75.92 99.426 C 75.887 98.548 75.485 98.126 74.587 98.126 C 73.869 98.126 73.447 98.397 73.447 98.856 C 73.447 99.237 73.619 99.434 74.579 99.697 L 75.497 99.943 C 76.433 100.197 77.187 100.525 77.187 101.538 C 77.187 102.621 76.26 103.265 74.722 103.265 C 73.119 103.265 72.196 102.584 72.097 101.3 L 73.299 101.116 C 73.361 102.063 73.836 102.457 74.788 102.457 C 75.555 102.457 75.994 102.186 75.994 101.694 C 75.994 101.247 75.711 101.05 74.775 100.796 L 73.857 100.546 C 72.914 100.283 72.294 99.881 72.298 98.963 C 72.298 97.9 73.168 97.318 74.616 97.318 Z M 82.253 97.318 C 83.803 97.318 84.623 98.036 84.669 99.245 L 83.557 99.426 C 83.524 98.548 83.122 98.126 82.224 98.126 C 81.506 98.126 81.084 98.397 81.084 98.856 C 81.084 99.237 81.256 99.434 82.216 99.697 L 83.135 99.943 C 84.07 100.197 84.825 100.525 84.825 101.538 C 84.825 102.621 83.897 103.265 82.359 103.265 C 80.756 103.265 79.833 102.584 79.734 101.3 L 80.936 101.116 C 80.998 102.063 81.473 102.457 82.425 102.457 C 83.192 102.457 83.631 102.186 83.631 101.694 C 83.631 101.247 83.348 101.05 82.413 100.796 L 81.494 100.546 C 80.55 100.283 79.931 99.881 79.935 98.963 C 79.935 97.9 80.805 97.318 82.253 97.318 Z M 92.974 97.318 C 94.84 97.318 95.808 98.335 95.808 100.287 L 95.808 100.304 C 95.808 102.252 94.84 103.265 92.974 103.265 C 91.112 103.265 90.144 102.252 90.144 100.304 L 90.144 100.287 C 90.144 98.335 91.112 97.318 92.974 97.318 Z M 123.933 97.318 C 125.573 97.318 126.476 98.081 126.578 99.545 L 125.368 99.746 C 125.331 98.684 124.864 98.183 123.933 98.183 C 122.899 98.183 122.399 98.823 122.399 100.172 L 122.399 100.414 C 122.399 101.756 122.903 102.395 123.945 102.395 C 124.868 102.395 125.348 101.895 125.409 100.837 L 126.632 101.067 C 126.496 102.514 125.578 103.265 123.941 103.265 C 122.103 103.265 121.152 102.252 121.152 100.3 L 121.152 100.283 C 121.152 98.335 122.103 97.318 123.933 97.318 Z M 128.592 101.103 C 128.592 102.01 129.002 102.416 129.888 102.416 C 130.77 102.416 131.172 102.01 131.172 101.103 L 131.172 97.42 L 132.386 97.42 L 132.386 101.202 C 132.386 102.617 131.578 103.265 129.888 103.265 C 128.194 103.265 127.382 102.617 127.382 101.202 L 127.382 97.42 L 128.592 97.42 Z M 143.686 97.318 C 145.327 97.318 146.229 98.081 146.331 99.545 L 145.122 99.746 C 145.085 98.684 144.617 98.183 143.686 98.183 C 142.652 98.183 142.152 98.823 142.152 100.172 L 142.152 100.414 C 142.152 101.756 142.656 102.395 143.698 102.395 C 144.621 102.395 145.101 101.895 145.163 100.837 L 146.385 101.067 C 146.25 102.514 145.331 103.265 143.694 103.265 C 141.857 103.265 140.905 102.252 140.905 100.3 L 140.905 100.283 C 140.905 98.335 141.857 97.318 143.686 97.318 Z M 47.045 98.327 L 45.236 98.327 L 45.236 103.162 L 44.022 103.162 L 44.022 98.327 L 42.213 98.327 L 42.213 97.42 L 47.045 97.42 Z M 48.78 99.68 L 51.405 99.68 L 51.405 97.42 L 52.619 97.42 L 52.619 103.162 L 51.405 103.162 L 51.405 100.566 L 48.78 100.566 L 48.78 103.162 L 47.57 103.162 L 47.57 97.42 L 48.78 97.42 Z M 62.11 100.365 C 62.274 100.78 62.414 101.202 62.565 101.747 L 62.651 101.747 C 62.807 101.202 62.947 100.78 63.107 100.369 L 64.255 97.42 L 65.769 97.42 L 65.769 103.162 L 64.587 103.162 L 64.587 100.279 C 64.587 99.865 64.6 99.512 64.649 99.008 L 64.567 98.995 L 63.033 103.162 L 62.159 103.162 L 60.621 98.991 L 60.535 99.003 C 60.58 99.512 60.592 99.865 60.592 100.279 L 60.592 103.162 L 59.432 103.162 L 59.432 97.42 L 60.945 97.42 Z M 69.727 97.42 C 70.859 97.42 71.437 97.9 71.437 98.827 L 71.437 98.848 C 71.437 99.528 71.105 99.947 70.469 100.074 L 70.469 100.156 C 71.228 100.283 71.622 100.755 71.622 101.538 L 71.622 101.555 C 71.622 102.609 71.002 103.162 69.792 103.162 L 66.691 103.162 L 66.691 97.42 Z M 79.131 103.162 L 77.819 103.162 L 77.819 102.014 L 79.131 102.014 Z M 89.882 98.327 L 88.073 98.327 L 88.073 103.162 L 86.859 103.162 L 86.859 98.327 L 85.05 98.327 L 85.05 97.42 L 89.882 97.42 Z M 99.356 97.42 C 100.661 97.42 101.345 97.97 101.345 98.991 L 101.345 99.008 C 101.345 99.791 100.898 100.259 100.062 100.353 L 100.062 100.435 C 100.542 100.558 100.739 100.792 100.927 101.407 L 101.112 102.022 C 101.3 102.633 101.473 102.916 101.686 103.06 L 101.674 103.162 L 100.304 103.162 C 100.156 102.949 100.053 102.67 99.906 102.1 L 99.754 101.534 C 99.602 100.964 99.438 100.71 98.839 100.71 L 97.802 100.71 L 97.802 103.162 L 96.592 103.162 L 96.592 97.42 Z M 106.353 98.269 L 103.388 98.269 L 103.388 99.775 L 106.165 99.775 L 106.165 100.546 L 103.388 100.546 L 103.388 102.314 L 106.436 102.314 L 106.436 103.162 L 102.178 103.162 L 102.178 97.42 L 106.353 97.42 Z M 111.948 97.42 C 113.08 97.42 113.658 97.9 113.658 98.827 L 113.658 98.848 C 113.658 99.528 113.326 99.947 112.69 100.074 L 112.69 100.156 C 113.449 100.283 113.843 100.755 113.843 101.538 L 113.843 101.555 C 113.843 102.609 113.224 103.162 112.014 103.162 L 108.913 103.162 L 108.913 97.42 Z M 116.045 98.95 C 116.222 99.262 116.369 99.582 116.538 100.004 L 116.624 100.004 C 116.792 99.582 116.936 99.262 117.108 98.954 L 117.961 97.42 L 119.212 97.42 L 117.157 101.009 L 117.157 103.162 L 115.947 103.162 L 115.947 101.009 L 113.892 97.42 L 115.184 97.42 Z M 136.328 97.42 C 137.46 97.42 138.038 97.9 138.038 98.827 L 138.038 98.848 C 138.038 99.528 137.706 99.947 137.07 100.074 L 137.07 100.156 C 137.829 100.283 138.223 100.755 138.223 101.538 L 138.223 101.555 C 138.223 102.609 137.603 103.162 136.393 103.162 L 133.293 103.162 L 133.293 97.42 Z M 140.122 103.162 L 138.912 103.162 L 138.912 97.42 L 140.122 97.42 Z M 148.366 102.264 L 151.212 102.264 L 151.212 103.162 L 147.156 103.162 L 147.156 97.42 L 148.366 97.42 Z M 155.991 98.269 L 153.025 98.269 L 153.025 99.775 L 155.802 99.775 L 155.802 100.546 L 153.025 100.546 L 153.025 102.314 L 156.073 102.314 L 156.073 103.162 L 151.815 103.162 L 151.815 97.42 L 155.991 97.42 Z M 92.974 98.183 C 91.908 98.183 91.391 98.831 91.391 100.185 L 91.391 100.423 C 91.391 101.76 91.908 102.395 92.974 102.395 C 94.045 102.395 94.557 101.76 94.557 100.423 L 94.557 100.185 C 94.557 98.831 94.045 98.183 92.974 98.183 Z M 67.901 102.338 L 69.403 102.338 C 70.038 102.338 70.354 102.039 70.354 101.432 L 70.354 101.415 C 70.354 100.82 70.038 100.521 69.403 100.521 L 67.901 100.521 Z M 110.123 102.338 L 111.624 102.338 C 112.26 102.338 112.575 102.039 112.575 101.432 L 112.575 101.415 C 112.575 100.82 112.26 100.521 111.624 100.521 L 110.123 100.521 Z M 134.503 102.338 L 136.004 102.338 C 136.639 102.338 136.955 102.039 136.955 101.432 L 136.955 101.415 C 136.955 100.82 136.639 100.521 136.004 100.521 L 134.503 100.521 Z M 97.802 99.926 L 99.114 99.926 C 99.791 99.926 100.119 99.676 100.119 99.098 L 100.119 99.081 C 100.119 98.499 99.799 98.249 99.139 98.249 L 97.802 98.249 Z M 67.901 99.766 L 69.366 99.766 C 69.944 99.766 70.231 99.512 70.231 99.003 L 70.231 98.987 C 70.231 98.487 69.944 98.241 69.366 98.241 L 67.901 98.241 Z M 110.123 99.766 L 111.587 99.766 C 112.165 99.766 112.453 99.512 112.453 99.003 L 112.453 98.987 C 112.453 98.487 112.165 98.241 111.587 98.241 L 110.123 98.241 Z M 134.503 99.766 L 135.967 99.766 C 136.545 99.766 136.832 99.512 136.832 99.003 L 136.832 98.987 C 136.832 98.487 136.545 98.241 135.967 98.241 L 134.503 98.241 Z M 26.045 88.503 C 26.045 89.41 26.455 89.816 27.341 89.816 C 28.223 89.816 28.625 89.41 28.625 88.503 L 28.625 84.82 L 29.839 84.82 L 29.839 88.602 C 29.839 90.017 29.031 90.665 27.341 90.665 C 25.647 90.665 24.835 90.017 24.835 88.602 L 24.835 84.82 L 26.045 84.82 Z M 59.358 84.718 C 60.998 84.718 61.901 85.481 62.003 86.945 L 60.793 87.146 C 60.756 86.084 60.289 85.583 59.358 85.583 C 58.324 85.583 57.824 86.223 57.824 87.572 L 57.824 87.814 C 57.824 89.156 58.328 89.795 59.37 89.795 C 60.293 89.795 60.773 89.295 60.834 88.237 L 62.057 88.467 C 61.921 89.914 61.003 90.665 59.366 90.665 C 57.528 90.665 56.577 89.652 56.577 87.7 L 56.577 87.683 C 56.577 85.735 57.528 84.718 59.358 84.718 Z M 65.51 84.718 C 67.376 84.718 68.344 85.735 68.344 87.687 L 68.344 87.704 C 68.344 89.652 67.376 90.665 65.51 90.665 C 63.648 90.665 62.68 89.652 62.68 87.704 L 62.68 87.687 C 62.68 85.735 63.648 84.718 65.51 84.718 Z M 125.598 84.718 C 127.464 84.718 128.432 85.735 128.432 87.687 L 128.432 87.704 C 128.432 89.652 127.464 90.665 125.598 90.665 C 123.736 90.665 122.768 89.652 122.768 87.704 L 122.768 87.687 C 122.768 85.735 123.736 84.718 125.598 84.718 Z M 87.121 84.718 C 88.709 84.718 89.574 85.366 89.722 86.584 L 88.516 86.797 C 88.446 85.969 87.995 85.587 87.121 85.587 C 86.063 85.587 85.55 86.219 85.55 87.572 L 85.55 87.757 C 85.55 89.131 86.034 89.771 87.035 89.771 C 87.946 89.771 88.446 89.25 88.581 88.167 L 86.842 88.167 L 86.842 87.314 L 89.787 87.314 L 89.787 90.563 L 88.721 90.563 C 88.705 90.226 88.758 89.865 88.95 89.115 L 88.856 89.09 C 88.5 90.115 87.757 90.653 86.691 90.653 C 85.124 90.653 84.303 89.636 84.303 87.687 L 84.303 87.671 C 84.303 85.727 85.267 84.718 87.121 84.718 Z M 33.411 84.82 C 34.753 84.82 35.433 85.44 35.433 86.633 L 35.433 86.65 C 35.433 87.835 34.753 88.45 33.411 88.45 L 31.955 88.45 L 31.955 90.563 L 30.745 90.563 L 30.745 84.82 Z M 42.603 90.563 L 41.331 90.563 L 40.954 89.455 L 38.698 89.455 L 38.321 90.563 L 37.127 90.563 L 39.129 84.82 L 40.593 84.82 Z M 46.454 88.122 C 46.655 88.45 46.774 88.68 46.934 89.041 L 47.02 89.028 C 46.971 88.59 46.947 88.237 46.947 87.856 L 46.947 84.82 L 48.119 84.82 L 48.119 90.563 L 46.819 90.563 L 44.822 87.294 C 44.613 86.949 44.477 86.678 44.313 86.305 L 44.227 86.322 C 44.276 86.769 44.297 87.125 44.297 87.507 L 44.297 90.563 L 43.124 90.563 L 43.124 84.82 L 44.44 84.82 Z M 51.462 84.82 C 53.259 84.82 54.157 85.776 54.157 87.687 L 54.157 87.704 C 54.157 89.607 53.259 90.563 51.462 90.563 L 49.047 90.563 L 49.047 84.82 Z M 71.806 87.765 C 71.97 88.18 72.11 88.602 72.261 89.147 L 72.347 89.147 C 72.503 88.602 72.643 88.18 72.803 87.769 L 73.951 84.82 L 75.465 84.82 L 75.465 90.563 L 74.283 90.563 L 74.283 87.679 C 74.283 87.265 74.296 86.912 74.345 86.408 L 74.263 86.395 L 72.729 90.563 L 71.855 90.563 L 70.317 86.391 L 70.231 86.403 C 70.276 86.912 70.289 87.265 70.289 87.679 L 70.289 90.563 L 69.128 90.563 L 69.128 84.82 L 70.641 84.82 Z M 77.597 90.563 L 76.388 90.563 L 76.388 84.82 L 77.597 84.82 Z M 81.859 88.122 C 82.06 88.45 82.179 88.68 82.339 89.041 L 82.425 89.028 C 82.376 88.59 82.351 88.237 82.351 87.856 L 82.351 84.82 L 83.524 84.82 L 83.524 90.563 L 82.224 90.563 L 80.227 87.294 C 80.017 86.949 79.882 86.678 79.718 86.305 L 79.632 86.322 C 79.681 86.769 79.702 87.125 79.702 87.507 L 79.702 90.563 L 78.528 90.563 L 78.528 84.82 L 79.845 84.82 Z M 95.517 84.82 C 96.649 84.82 97.228 85.3 97.228 86.227 L 97.228 86.248 C 97.228 86.928 96.895 87.347 96.26 87.474 L 96.26 87.556 C 97.018 87.683 97.412 88.155 97.412 88.938 L 97.412 88.955 C 97.412 90.009 96.793 90.563 95.583 90.563 L 92.482 90.563 L 92.482 84.82 Z M 100.866 84.82 C 102.17 84.82 102.855 85.37 102.855 86.391 L 102.855 86.408 C 102.855 87.191 102.408 87.659 101.571 87.753 L 101.571 87.835 C 102.051 87.958 102.248 88.192 102.436 88.807 L 102.621 89.422 C 102.81 90.033 102.982 90.316 103.195 90.46 L 103.183 90.563 L 101.813 90.563 C 101.665 90.349 101.563 90.07 101.415 89.5 L 101.264 88.934 C 101.112 88.364 100.948 88.11 100.349 88.11 L 99.311 88.11 L 99.311 90.563 L 98.101 90.563 L 98.101 84.82 Z M 108.794 90.563 L 107.522 90.563 L 107.145 89.455 L 104.889 89.455 L 104.512 90.563 L 103.318 90.563 L 105.32 84.82 L 106.784 84.82 Z M 112.645 88.122 C 112.846 88.45 112.965 88.68 113.125 89.041 L 113.211 89.028 C 113.162 88.59 113.137 88.237 113.137 87.856 L 113.137 84.82 L 114.311 84.82 L 114.311 90.563 L 113.01 90.563 L 111.013 87.294 C 110.804 86.949 110.668 86.678 110.504 86.305 L 110.418 86.322 C 110.467 86.769 110.488 87.125 110.488 87.507 L 110.488 90.563 L 109.315 90.563 L 109.315 84.82 L 110.631 84.82 Z M 117.653 84.82 C 119.45 84.82 120.348 85.776 120.348 87.687 L 120.348 87.704 C 120.348 89.607 119.45 90.563 117.653 90.563 L 115.237 90.563 L 115.237 84.82 Z M 133.264 85.678 L 130.425 85.678 L 130.425 87.22 L 133.034 87.22 L 133.034 88.019 L 130.425 88.019 L 130.425 90.563 L 129.216 90.563 L 129.216 84.82 L 133.264 84.82 Z M 139.962 85.727 L 138.153 85.727 L 138.153 90.563 L 136.939 90.563 L 136.939 85.727 L 135.13 85.727 L 135.13 84.82 L 139.962 84.82 Z M 141.697 87.08 L 144.322 87.08 L 144.322 84.82 L 145.536 84.82 L 145.536 90.563 L 144.322 90.563 L 144.322 87.966 L 141.697 87.966 L 141.697 90.563 L 140.487 90.563 L 140.487 84.82 L 141.697 84.82 Z M 150.634 85.669 L 147.669 85.669 L 147.669 87.175 L 150.445 87.175 L 150.445 87.946 L 147.669 87.946 L 147.669 89.714 L 150.716 89.714 L 150.716 90.563 L 146.459 90.563 L 146.459 84.82 L 150.634 84.82 Z M 154.715 86.35 C 154.891 86.662 155.039 86.982 155.207 87.404 L 155.293 87.404 C 155.461 86.982 155.605 86.662 155.777 86.354 L 156.631 84.82 L 157.881 84.82 L 155.827 88.409 L 155.827 90.563 L 154.617 90.563 L 154.617 88.409 L 152.562 84.82 L 153.854 84.82 Z M 162.578 85.669 L 159.612 85.669 L 159.612 87.175 L 162.389 87.175 L 162.389 87.946 L 159.612 87.946 L 159.612 89.714 L 162.66 89.714 L 162.66 90.563 L 158.402 90.563 L 158.402 84.82 L 162.578 84.82 Z M 168.414 90.563 L 167.143 90.563 L 166.765 89.455 L 164.51 89.455 L 164.132 90.563 L 162.939 90.563 L 164.94 84.82 L 166.405 84.82 Z M 171.7 84.82 C 173.004 84.82 173.689 85.37 173.689 86.391 L 173.689 86.408 C 173.689 87.191 173.242 87.659 172.405 87.753 L 172.405 87.835 C 172.885 87.958 173.082 88.192 173.27 88.807 L 173.455 89.422 C 173.644 90.033 173.816 90.316 174.029 90.46 L 174.017 90.563 L 172.647 90.563 C 172.5 90.349 172.397 90.07 172.249 89.5 L 172.097 88.934 C 171.946 88.364 171.782 88.11 171.183 88.11 L 170.145 88.11 L 170.145 90.563 L 168.935 90.563 L 168.935 84.82 Z M 65.51 85.583 C 64.444 85.583 63.927 86.231 63.927 87.585 L 63.927 87.823 C 63.927 89.16 64.444 89.795 65.51 89.795 C 66.581 89.795 67.093 89.16 67.093 87.823 L 67.093 87.585 C 67.093 86.231 66.581 85.583 65.51 85.583 Z M 125.598 85.583 C 124.532 85.583 124.015 86.231 124.015 87.585 L 124.015 87.823 C 124.015 89.16 124.532 89.795 125.598 89.795 C 126.669 89.795 127.181 89.16 127.181 87.823 L 127.181 87.585 C 127.181 86.231 126.669 85.583 125.598 85.583 Z M 93.692 89.738 L 95.193 89.738 C 95.829 89.738 96.145 89.439 96.145 88.832 L 96.145 88.815 C 96.145 88.22 95.829 87.921 95.193 87.921 L 93.692 87.921 Z M 50.256 89.714 L 51.397 89.714 C 52.43 89.714 52.91 89.131 52.91 87.843 L 52.91 87.544 C 52.91 86.252 52.43 85.665 51.397 85.665 L 50.256 85.665 Z M 116.447 89.714 L 117.588 89.714 C 118.621 89.714 119.101 89.131 119.101 87.843 L 119.101 87.544 C 119.101 86.252 118.621 85.665 117.588 85.665 L 116.447 85.665 Z M 39.785 85.788 C 39.654 86.317 39.543 86.715 39.391 87.183 L 38.907 88.68 L 40.749 88.68 L 40.269 87.179 C 40.122 86.715 40.007 86.317 39.867 85.788 Z M 105.976 85.788 C 105.845 86.317 105.734 86.715 105.582 87.183 L 105.098 88.68 L 106.94 88.68 L 106.46 87.179 C 106.313 86.715 106.198 86.317 106.058 85.788 Z M 165.597 85.788 C 165.465 86.317 165.355 86.715 165.203 87.183 L 164.719 88.68 L 166.56 88.68 L 166.081 87.179 C 165.933 86.715 165.818 86.317 165.678 85.788 Z M 31.955 87.63 L 33.165 87.63 C 33.875 87.63 34.219 87.318 34.219 86.65 L 34.219 86.633 C 34.219 85.961 33.875 85.641 33.165 85.641 L 31.955 85.641 Z M 99.311 87.326 L 100.624 87.326 C 101.3 87.326 101.628 87.076 101.628 86.498 L 101.628 86.481 C 101.628 85.899 101.309 85.649 100.648 85.649 L 99.311 85.649 Z M 170.145 87.326 L 171.458 87.326 C 172.134 87.326 172.462 87.076 172.462 86.498 L 172.462 86.481 C 172.462 85.899 172.143 85.649 171.482 85.649 L 170.145 85.649 Z M 93.692 87.166 L 95.156 87.166 C 95.735 87.166 96.022 86.912 96.022 86.403 L 96.022 86.387 C 96.022 85.887 95.735 85.641 95.156 85.641 L 93.692 85.641 Z M 38.513 65.07 C 39.694 64.748 40.896 64.748 42.156 64.793 C 42.073 66.017 41.734 67.183 41.135 68.211 C 40.54 69.206 39.685 70.062 38.609 70.729 C 38.072 71.062 37.48 71.348 36.844 71.579 C 36.212 71.784 35.543 71.9 34.84 71.972 C 34.138 72.039 33.403 72.045 32.654 71.985 C 31.905 71.927 31.168 71.703 30.419 71.464 C 30.808 70.298 31.477 69.288 32.296 68.44 C 32.706 68.014 33.154 67.636 33.631 67.289 C 34.115 66.919 34.626 66.588 35.155 66.299 C 36.221 65.698 37.335 65.368 38.513 65.07 Z M 157.581 64.793 C 158.841 64.748 160.043 64.748 161.224 65.07 C 162.401 65.368 163.516 65.698 164.581 66.299 C 165.111 66.588 165.621 66.919 166.106 67.289 C 166.583 67.636 167.03 68.014 167.441 68.44 C 168.26 69.288 168.928 70.298 169.317 71.464 C 168.569 71.703 167.831 71.927 167.082 71.985 C 166.333 72.045 165.599 72.039 164.897 71.972 C 164.193 71.9 163.524 71.784 162.892 71.579 C 162.257 71.348 161.664 71.062 161.127 70.729 C 160.052 70.062 159.197 69.206 158.601 68.211 C 158.002 67.183 157.663 66.017 157.581 64.793 Z M 96.243 54.085 C 96.853 54.042 97.204 54.029 97.812 54.061 C 98.468 54.964 100.179 60.508 100.644 61.864 L 102.522 67.259 C 102.729 67.858 103.393 69.526 103.408 70.088 L 102.075 70.088 C 101.881 69.772 101.767 69.372 101.656 69.018 C 101.282 67.827 100.812 66.666 100.452 65.472 C 99.947 65.422 93.855 65.338 93.747 65.552 C 93.175 66.71 92.785 68.923 92.083 70.062 L 92.067 70.088 L 90.709 70.088 C 90.819 69.338 91.38 68.092 91.634 67.338 C 92.907 63.568 94.25 59.816 95.561 56.058 C 95.784 55.42 95.981 54.696 96.243 54.085 Z M 111.584 54.061 C 112.639 54.061 113.903 54.025 114.935 54.103 C 115.707 54.636 116.247 55.281 116.882 55.966 C 116.975 56.822 116.909 57.699 116.941 58.534 C 117.036 60.978 117.048 61.288 115.124 62.863 C 115.694 63.441 116.405 64.2 116.933 64.813 C 117.02 65.556 117.042 69.302 116.957 70.088 L 115.577 70.088 C 115.517 68.588 115.553 66.896 115.551 65.375 C 115.257 64.871 113.969 63.601 113.503 63.132 C 111.449 63.117 109.396 63.115 107.342 63.127 C 107.429 63.581 107.451 69.579 107.358 70.088 L 106.091 70.088 C 105.959 68.772 106.046 66.069 106.048 64.662 L 106.048 54.064 Z M 136.753 54.076 C 138.77 54.107 141.009 53.949 143.008 54.091 C 143.669 54.6 144.915 55.638 145.043 56.52 C 145.068 56.695 145.046 57.169 145.038 57.366 C 144.418 57.365 144.355 57.315 143.743 57.19 C 143.612 56.8 143.54 56.532 143.286 56.203 L 143.254 56.161 C 143.007 55.841 142.598 55.527 142.281 55.267 C 140.619 55.215 138.66 55.216 136.993 55.256 C 136.648 55.601 136.087 56.135 135.779 56.499 C 135.717 57.314 135.713 58.132 135.688 58.948 C 135.656 59.986 136.342 60.471 136.995 61.163 C 138.224 61.154 142.327 60.993 143.196 61.318 C 143.499 61.432 143.815 61.788 144.045 62.014 C 145.223 63.176 145.159 63.302 145.168 64.93 C 145.172 65.759 145.318 67.268 145.04 68.005 C 144.943 68.263 144.742 68.477 144.551 68.669 C 144.079 69.149 143.55 69.69 143.01 70.087 L 136.43 70.087 C 135.554 69.351 134.023 68.204 134.343 66.916 C 134.706 66.506 135.601 66.944 135.601 66.957 C 135.628 67.434 136.686 68.485 136.892 68.848 C 138.639 68.804 140.646 68.823 142.403 68.843 C 142.794 68.589 143.463 67.88 143.773 67.505 C 143.768 66.319 143.697 64.925 143.785 63.772 C 143.322 63.224 143.039 62.853 142.465 62.404 C 140.52 62.408 138.358 62.456 136.431 62.395 C 135.773 61.92 134.965 61.081 134.449 60.431 C 134.353 59.607 134.389 58.647 134.383 57.807 C 134.415 57.079 134.225 56.167 134.77 55.594 C 135.226 55.114 136.058 54.065 136.753 54.076 Z M 65.194 54.072 C 65.807 54.04 66.18 54.032 66.792 54.08 C 67.213 54.994 67.401 55.683 67.734 56.614 L 69.632 62.061 L 71.444 67.277 C 71.669 67.926 72.299 69.451 72.352 70.087 L 70.93 70.087 C 70.395 68.596 69.851 66.935 69.34 65.428 C 69.008 65.448 68.625 65.443 68.291 65.435 C 66.415 65.392 64.499 65.496 62.628 65.406 C 62.376 66.498 61.485 69.019 61.05 70.087 L 59.627 70.087 C 59.747 69.38 60.329 67.937 60.586 67.218 L 62.065 62.967 C 62.649 61.297 63.168 59.659 63.785 57.984 C 64.268 56.67 64.568 55.387 65.194 54.072 Z M 81.046 54.158 C 81.294 54.006 82.044 53.935 82.29 54.187 C 82.842 55.367 83.677 58.85 84.065 60.231 L 85.281 64.585 C 85.621 65.777 85.98 66.83 86.193 68.062 C 87.17 63.585 87.798 59.041 88.78 54.568 C 88.94 53.836 89.714 54.053 90.334 54.07 L 88.234 64.496 C 88.077 65.311 87.36 69.669 87.089 70.087 L 85.647 70.087 C 85.248 69.225 84.905 67.695 84.651 66.717 C 83.722 63.143 82.474 59.462 81.646 55.883 C 81.266 57.675 80.488 59.937 79.958 61.747 L 78.468 66.779 C 78.148 67.896 77.881 68.971 77.525 70.087 L 76.072 70.087 C 75.627 69.13 75.359 66.969 75.138 65.847 C 74.706 63.644 74.253 61.439 73.818 59.237 C 73.495 57.602 73.25 55.663 72.784 54.079 C 73.329 54.052 73.656 54.042 74.197 54.081 C 74.718 55.628 75.114 58.707 75.435 60.404 C 75.884 62.777 76.59 65.724 76.806 68.108 C 77.661 65.293 78.483 62.534 79.289 59.699 L 80.374 55.938 C 80.484 55.57 80.73 54.351 81.046 54.158 Z M 125.323 54.063 C 126.531 54.062 127.917 54.027 129.113 54.088 C 129.834 54.675 131.368 55.905 131.403 56.878 C 131.457 58.402 131.431 59.947 131.435 61.474 C 131.376 63.472 131.532 65.618 131.422 67.598 C 131.099 68.097 129.457 69.758 128.974 70.071 L 128.95 70.087 L 120.094 70.087 C 119.986 68.339 120.054 65.975 120.055 64.186 C 120.069 60.814 120.063 57.441 120.04 54.068 C 121.801 54.055 123.562 54.053 125.323 54.063 Z M 121.468 55.237 C 121.557 56.348 121.528 57.576 121.529 58.701 L 121.532 63.838 L 121.533 66.93 C 121.533 67.45 121.556 68.358 121.481 68.842 C 123.704 68.844 126.127 68.794 128.335 68.843 L 129.285 67.9 C 129.75 67.451 130.057 67.28 130.058 66.637 C 130.059 63.444 129.982 60.188 130.065 56.998 C 129.425 56.206 129.106 55.926 128.357 55.248 C 126.121 55.248 123.69 55.296 121.468 55.237 Z M 25.147 62.202 C 27.482 61.747 29.94 61.835 32.292 62.7 C 31.464 65.014 29.665 66.8 27.234 67.424 C 26.023 67.747 24.623 67.885 23.259 67.572 C 21.894 67.273 20.4 66.813 19.152 65.851 C 20.561 63.833 22.785 62.751 25.147 62.202 Z M 167.445 62.7 C 169.797 61.835 172.256 61.747 174.59 62.202 C 176.952 62.751 179.176 63.833 180.585 65.851 C 179.337 66.813 177.844 67.273 176.478 67.572 C 175.114 67.885 173.714 67.747 172.503 67.424 C 170.072 66.799 168.274 65.014 167.445 62.7 Z M 97.07 55.685 C 96.895 56.439 96.488 57.381 96.235 58.153 L 94.875 62.199 C 94.642 62.878 94.453 63.614 94.137 64.253 C 95.163 64.237 96.189 64.234 97.214 64.242 C 98.153 64.237 99.155 64.214 100.089 64.231 C 99.31 62.226 97.961 57.983 97.207 55.808 C 97.203 55.805 97.084 55.698 97.07 55.685 Z M 65.951 55.61 C 65.545 57.104 64.936 58.792 64.419 60.249 C 64.005 61.416 63.572 63.229 62.968 64.239 L 66.156 64.241 C 66.935 64.234 68.263 64.182 68.999 64.235 C 68.288 62.692 67.929 60.953 67.282 59.404 C 67.03 58.801 66.263 55.847 65.951 55.61 Z M 36.615 52.85 C 37.037 52.981 37.412 53.225 37.793 53.426 C 38.173 53.63 38.527 53.891 38.862 54.202 C 39.196 54.508 39.507 54.882 39.805 55.267 C 40.107 55.626 40.39 56.029 40.65 56.47 C 41.17 57.352 41.607 58.383 41.905 59.499 C 42.205 60.583 42.364 61.752 42.281 62.981 C 41.083 62.941 39.981 62.451 39.047 61.899 C 38.113 61.325 37.389 60.403 36.876 59.482 C 36.621 59.01 36.423 58.512 36.284 57.995 C 36.151 57.456 36.079 56.89 36.063 56.323 C 36.03 55.185 36.226 54.015 36.615 52.85 Z M 163.122 52.85 C 163.51 54.015 163.707 55.185 163.674 56.323 C 163.657 56.89 163.586 57.456 163.453 57.995 C 163.314 58.512 163.116 59.01 162.861 59.482 C 162.348 60.403 161.624 61.325 160.69 61.899 C 159.755 62.451 158.653 62.941 157.455 62.981 C 157.372 61.752 157.532 60.583 157.831 59.499 C 158.13 58.383 158.566 57.352 159.086 56.47 C 159.347 56.029 159.629 55.626 159.932 55.267 C 160.229 54.882 160.541 54.508 160.875 54.202 C 161.209 53.891 161.564 53.63 161.943 53.426 C 162.324 53.225 162.699 52.981 163.122 52.85 Z M 114.242 55.248 C 112.647 55.171 110.881 55.239 109.263 55.222 C 108.629 55.233 107.977 55.253 107.345 55.241 C 107.455 55.779 107.397 57.986 107.384 58.643 C 107.365 59.56 107.429 61.088 107.354 61.954 C 109.446 61.936 111.54 61.93 113.633 61.937 C 114.005 61.944 114.14 61.98 114.43 61.718 C 114.793 61.39 115.1 61.06 115.489 60.76 C 115.499 59.389 115.576 57.929 115.426 56.578 C 115.387 56.221 114.532 55.521 114.242 55.248 Z M 30.289 49.701 C 30.974 50.273 31.623 50.805 32.068 51.624 C 32.507 52.455 32.907 53.283 33.153 54.292 C 33.624 56.325 33.739 58.682 32.912 60.993 C 30.654 60.164 29.098 58.284 28.695 56.134 C 28.219 54.048 28.886 51.712 30.289 49.701 Z M 169.448 49.701 C 170.852 51.712 171.518 54.048 171.042 56.134 C 170.639 58.284 169.083 60.164 166.825 60.993 C 165.998 58.682 166.113 56.325 166.584 54.292 C 166.83 53.283 167.23 52.455 167.67 51.624 C 168.114 50.805 168.764 50.273 169.448 49.701 Z M 9.789 57.247 C 11.675 55.725 14.214 55.214 16.577 55.396 C 17.171 55.443 17.751 55.542 18.324 55.679 C 18.925 55.787 19.512 55.941 20.079 56.143 C 21.21 56.552 22.244 57.168 23.296 57.868 C 22.568 58.858 21.663 59.649 20.604 60.196 C 19.532 60.76 18.35 61.026 17.108 60.985 C 15.872 60.943 14.499 60.676 13.25 60.032 C 12.027 59.364 10.793 58.452 9.789 57.247 Z M 183.16 55.396 C 185.523 55.214 188.062 55.725 189.948 57.247 C 188.944 58.452 187.71 59.364 186.488 60.032 C 185.239 60.676 183.865 60.943 182.629 60.985 C 181.387 61.026 180.205 60.76 179.133 60.196 C 178.073 59.649 177.169 58.858 176.441 57.868 C 177.493 57.168 178.527 56.552 179.658 56.143 C 180.225 55.941 180.812 55.787 181.413 55.679 C 181.986 55.542 182.567 55.443 183.16 55.396 Z M 24.983 44.834 C 25.555 45.511 25.97 46.268 26.17 47.185 C 26.395 48.076 26.542 48.994 26.483 50.048 C 26.428 51.099 26.244 52.202 25.931 53.258 C 25.603 54.331 25.102 55.414 24.374 56.404 C 23.372 55.741 22.685 54.765 22.231 53.752 C 22.001 53.247 21.832 52.728 21.724 52.208 C 21.645 51.66 21.636 51.102 21.682 50.559 C 21.861 48.372 23.045 46.4 24.983 44.834 Z M 174.754 44.834 C 176.692 46.4 177.876 48.372 178.055 50.559 C 178.101 51.102 178.092 51.66 178.013 52.208 C 177.906 52.728 177.736 53.247 177.506 53.752 C 177.052 54.765 176.365 55.741 175.363 56.404 C 174.635 55.414 174.134 54.331 173.806 53.258 C 173.493 52.202 173.309 51.099 173.254 50.048 C 173.195 48.994 173.342 48.076 173.567 47.185 C 173.766 46.268 174.182 45.511 174.754 44.834 Z M 3.203 46.324 C 5.472 45.381 8.037 45.62 10.233 46.471 C 11.294 46.924 12.463 47.439 13.398 48.167 C 14.319 48.909 15.25 49.713 16.012 50.718 C 14.088 52.212 11.611 52.742 9.181 51.998 C 8.001 51.612 6.824 50.928 5.744 49.987 C 4.725 49.016 3.873 47.75 3.203 46.324 Z M 189.504 46.471 C 191.7 45.62 194.265 45.381 196.534 46.324 C 195.864 47.75 195.013 49.016 193.993 49.987 C 192.914 50.928 191.737 51.612 190.556 51.998 C 188.126 52.742 185.649 52.212 183.725 50.718 C 184.487 49.713 185.418 48.909 186.339 48.167 C 187.274 47.439 188.444 46.924 189.504 46.471 Z M 107.534 35.553 C 108.036 35.341 109.809 35.431 110.37 35.527 C 110.3 38.835 110.273 42.144 110.289 45.453 C 110.29 47.034 110.242 49.554 110.374 51.099 C 110.268 51.118 110.161 51.133 110.055 51.143 C 106.534 51.488 107.234 50.941 107.243 47.83 C 107.246 46.174 107.122 43.284 107.364 41.765 C 106.278 43.442 104.95 46.951 103.817 48.748 C 103.615 49.069 102.318 48.947 101.867 48.922 C 101.647 48.451 101.371 47.96 101.133 47.492 C 100.177 45.614 99.307 43.676 98.365 41.792 C 98.48 42.66 98.438 44.294 98.438 45.227 C 98.431 47.21 98.435 49.193 98.451 51.176 C 97.441 51.143 96.419 51.172 95.405 51.155 C 95.361 49.496 95.197 36.181 95.465 35.468 C 96.249 35.426 97.551 35.389 98.277 35.56 C 99.508 38.546 101.065 41.44 102.305 44.431 C 102.405 44.67 102.578 45.1 102.795 45.228 C 103.01 45.115 103.824 43.219 103.985 42.869 L 106.242 37.977 C 106.507 37.41 107.154 35.908 107.534 35.553 Z M 85.815 35.47 C 86.112 35.46 87.872 35.36 88.005 35.607 C 88.717 36.933 89.111 38.466 89.629 39.874 C 90.38 41.916 91.162 43.958 91.893 46.005 L 93.116 49.338 C 93.333 49.92 93.532 50.612 93.829 51.143 C 92.81 51.203 91.677 51.148 90.631 51.167 C 90.29 50.297 89.508 48.49 89.433 47.655 C 88.869 47.725 87.972 47.697 87.38 47.696 C 86.322 47.699 84.96 47.738 83.931 47.649 C 83.567 48.816 83.169 49.971 82.737 51.113 C 81.711 51.21 80.542 51.141 79.473 51.194 C 79.76 50.321 80.091 49.499 80.405 48.638 C 81.22 46.409 82.03 44.176 82.854 41.95 L 84.333 37.936 C 84.598 37.197 84.797 36.211 85.295 35.585 C 85.377 35.483 85.681 35.477 85.815 35.47 Z M 127.949 35.568 C 128.313 35.353 130.425 35.455 130.976 35.466 C 130.794 39.427 130.976 43.478 130.916 47.45 C 130.897 48.667 130.9 49.971 130.971 51.182 C 130.021 51.178 129.1 51.181 128.152 51.122 C 127.614 50.655 121.697 41.642 121.113 40.562 C 121.295 41.799 121.238 43.39 121.24 44.667 C 121.234 46.838 121.247 49.008 121.282 51.179 C 120.284 51.154 119.24 51.167 118.239 51.166 C 118.159 50.673 118.167 49.529 118.166 49.005 L 118.162 45.55 C 118.159 44.117 118.032 35.946 118.325 35.45 C 119.156 35.426 119.985 35.449 120.812 35.518 C 121.575 36.085 123.598 39.636 124.286 40.644 C 125.451 42.351 126.791 44.339 127.842 46.1 C 127.91 44.556 127.58 36.412 127.949 35.568 Z M 135.778 35.468 C 137.3 35.384 138.914 35.488 140.447 35.448 C 141.337 35.425 142.355 35.435 143.232 35.531 C 143.97 36.104 145.269 37.387 145.829 38.14 C 146.058 41.201 145.71 40.611 142.78 40.501 C 142.746 39.23 142.583 39.155 141.773 38.17 C 140.288 38.201 138.693 38.191 137.207 38.177 C 136.805 38.565 136.523 38.84 136.168 39.268 C 136.226 41.862 136.099 44.557 136.159 47.155 C 136.164 47.378 136.919 48.337 137.175 48.359 C 138.718 48.487 140.293 48.398 141.851 48.432 C 143.27 46.868 142.703 47.073 142.859 45.005 C 142.057 45.069 140.921 45.052 140.093 45.062 C 139.884 45.071 139.819 45.082 139.612 45.015 C 139.383 44.764 139.494 42.824 139.511 42.335 C 141.472 42.236 143.825 42.36 145.888 42.29 C 145.875 44.094 145.916 45.907 145.891 47.71 C 145.888 47.873 145.834 48.36 145.742 48.511 C 145.209 49.384 144.252 50.056 143.56 50.807 C 143.372 51.011 143.093 51.069 142.841 51.096 C 141.621 51.203 140.497 51.14 139.253 51.126 C 138.359 51.116 136.324 51.321 135.542 50.978 C 135.001 50.741 134.107 49.661 133.644 49.243 C 132.851 48.527 132.888 47.557 132.897 46.577 C 132.939 43.79 132.813 40.958 132.959 38.176 C 133.416 37.551 135.146 35.631 135.778 35.468 Z M 112.706 35.441 C 113.624 35.489 114.84 35.45 115.781 35.445 L 115.786 45.784 C 115.788 47.189 115.874 49.758 115.775 51.088 L 115.68 51.151 C 114.681 51.138 113.682 51.145 112.683 51.173 C 112.566 49.839 112.502 36.071 112.706 35.441 Z M 60.482 40.805 C 61.222 40.93 62.728 40.854 63.508 40.818 C 63.56 41.923 63.524 43.3 63.524 44.42 L 63.538 51.171 C 62.509 51.15 61.481 51.148 60.452 51.163 C 60.355 50.049 60.273 41.303 60.482 40.805 Z M 68.583 35.467 C 70.184 35.401 71.819 35.474 73.423 35.452 C 74.268 35.441 75.144 35.441 75.985 35.511 C 76.568 35.914 77.976 37.417 78.479 37.985 C 78.532 38.755 78.529 39.691 78.513 40.458 C 77.789 40.572 76.286 40.553 75.531 40.507 C 75.496 39.225 75.373 39.15 74.517 38.202 C 73.162 38.099 71.371 38.222 69.924 38.166 C 69.557 38.543 69.175 38.879 68.91 39.329 C 68.965 41.933 68.909 44.75 68.89 47.369 C 69.145 47.708 69.57 48.152 69.895 48.419 C 71.415 48.383 73.067 48.423 74.6 48.432 C 74.906 48.044 75.201 47.671 75.491 47.271 C 75.468 46.589 75.423 45.674 75.525 45.015 C 74.711 45.089 73.417 45.061 72.565 45.066 C 72.402 45.067 72.464 45.078 72.315 44.983 C 72.098 44.458 72.197 42.865 72.229 42.266 C 72.718 42.331 73.212 42.33 73.704 42.327 C 75.302 42.315 76.914 42.395 78.508 42.263 C 78.508 44.227 78.588 46.686 78.482 48.61 C 77.644 49.443 76.843 50.267 75.993 51.096 C 75.099 51.214 73.402 51.142 72.437 51.141 C 71.225 51.139 69.623 51.218 68.45 51.12 C 67.466 50.506 66.549 49.429 65.81 48.549 C 65.629 47.576 65.692 45.25 65.697 44.114 C 65.706 42.206 65.649 40.099 65.726 38.209 C 66.18 37.551 67.851 35.612 68.583 35.467 Z M 21.279 38.701 C 21.68 39.488 21.783 40.363 21.747 41.278 C 21.769 42.161 21.581 43.119 21.233 44.112 C 20.584 46.047 19.411 48.1 17.453 49.615 C 16.729 48.66 16.233 47.607 16.13 46.475 C 16.011 45.356 16.04 44.308 16.488 43.264 C 17.3 41.206 19.01 39.645 21.279 38.701 Z M 178.457 38.701 C 180.727 39.645 182.436 41.206 183.249 43.264 C 183.697 44.308 183.726 45.356 183.607 46.475 C 183.504 47.607 183.008 48.66 182.284 49.615 C 180.326 48.1 179.153 46.047 178.504 44.112 C 178.156 43.119 177.968 42.161 177.99 41.278 C 177.953 40.363 178.057 39.488 178.457 38.701 Z M 86.526 39.535 C 86.136 41.109 85.503 42.615 85.012 44.158 C 84.907 44.488 84.797 44.814 84.673 45.137 L 86.871 45.119 C 87.438 45.12 88.191 45.099 88.743 45.139 C 88.097 44.13 86.976 39.845 86.526 39.535 Z M 0 34.158 C 2.442 33.881 4.83 34.822 6.685 36.249 C 8.65 37.683 10.128 39.603 11.053 41.939 C 8.77 42.844 6.32 42.638 4.13 41.264 C 3.112 40.563 2.185 39.578 1.423 38.371 C 0.655 37.169 0.251 35.708 0 34.158 Z M 193.052 36.249 C 194.907 34.822 197.295 33.881 199.737 34.158 C 199.486 35.708 199.082 37.169 198.313 38.371 C 197.552 39.578 196.625 40.563 195.607 41.264 C 193.417 42.638 190.967 42.844 188.684 41.939 C 189.61 39.603 191.087 37.683 193.052 36.249 Z M 19.482 31.844 C 19.653 32.712 19.448 33.598 19.218 34.457 C 18.98 35.315 18.522 36.189 17.904 37.048 C 16.805 38.706 15.03 40.375 12.746 41.279 C 11.856 39.037 12.319 36.612 13.587 34.906 C 14.954 33.15 17.04 32.12 19.482 31.844 Z M 180.255 31.844 C 182.697 32.12 184.783 33.15 186.15 34.906 C 187.418 36.612 187.881 39.037 186.991 41.279 C 184.707 40.375 182.932 38.706 181.833 37.048 C 181.215 36.189 180.757 35.315 180.519 34.457 C 180.289 33.598 180.085 32.712 180.255 31.844 Z M 63.237 36.644 C 63.324 36.635 63.338 36.661 63.432 36.706 C 63.594 37.03 63.533 39.241 63.53 39.775 C 62.653 39.815 61.477 39.777 60.577 39.773 C 60.249 39.525 60.305 37.219 60.567 36.826 C 60.655 36.756 60.822 36.657 60.932 36.668 C 61.77 36.748 62.401 36.746 63.237 36.644 Z M 115.118 20.696 C 117.848 20.754 120.647 20.709 123.387 20.732 L 123.38 22.755 C 121.525 22.721 118.858 22.82 117.105 22.708 C 117.23 23.314 117.197 25.02 117.054 25.617 C 117.774 25.588 122.363 25.555 122.65 25.734 C 122.873 26.065 122.958 27.242 122.724 27.544 C 122.239 27.789 118.15 27.684 117.321 27.669 L 117.184 27.711 C 117.151 27.771 117.112 30.363 117.198 30.49 C 117.694 30.587 118.658 30.562 119.194 30.569 C 120.603 30.589 121.968 30.582 123.372 30.481 C 123.376 31.188 123.375 31.895 123.37 32.602 C 122.553 32.707 115.458 32.726 114.803 32.581 C 114.643 31.719 114.652 21.005 114.818 20.755 Z M 81.586 20.696 C 83.871 20.754 86.326 20.636 88.576 20.749 C 89.528 21.41 89.757 21.714 90.533 22.569 C 90.612 23.133 90.707 25.677 90.473 26.268 C 90.4 26.45 89.63 26.899 89.487 27.196 C 89.637 27.843 90.253 28.087 90.611 28.676 C 90.659 29.397 90.823 31.94 90.56 32.496 C 90.197 32.782 88.728 32.659 88.198 32.639 C 88.146 32.275 88.141 31.548 88.127 31.155 C 88.035 29.591 88.385 27.88 86.124 28.102 C 85.439 28.17 84.274 28.154 83.615 28.096 C 83.666 28.716 83.785 32.21 83.546 32.532 C 83.072 32.768 81.892 32.661 81.334 32.631 C 81.194 31.708 81.157 21.285 81.324 20.878 C 81.372 20.761 81.479 20.743 81.586 20.696 Z M 70.007 20.69 C 70.701 20.725 71.492 20.721 72.194 20.732 C 72.154 23.693 72.18 26.751 72.192 29.714 C 72.741 30.603 73.095 30.612 74.134 30.596 C 74.806 30.586 75.493 30.578 76.166 30.581 C 77.404 29.682 76.834 29.003 76.96 27.844 C 77.087 26.68 76.703 21.571 77.109 20.812 C 77.429 20.623 79.081 20.725 79.538 20.737 C 79.517 21.498 79.504 22.258 79.502 23.019 C 79.49 25.451 79.557 28.038 79.484 30.442 C 79.122 30.895 77.7 32.504 77.171 32.573 C 75.738 32.764 74.23 32.621 72.784 32.646 C 71.404 32.67 70.644 31.489 69.811 30.539 C 69.521 28.38 69.766 23.327 69.784 20.973 C 69.785 20.809 69.896 20.759 70.007 20.69 Z M 94.304 20.75 C 95.994 20.674 98.483 20.665 100.169 20.748 C 100.929 21.215 101.593 21.939 102.15 22.627 C 102.31 23.491 102.387 30.048 102.123 30.6 C 101.803 31.273 100.687 32.367 99.987 32.605 C 98.628 32.735 96.264 32.641 94.848 32.626 C 93.916 32.617 92.815 31.381 92.226 30.624 C 92.122 29.531 91.987 23.616 92.216 22.802 C 92.423 22.066 93.652 21.124 94.304 20.75 Z M 136.625 20.678 C 138.46 20.714 138.641 20.585 139.624 22.249 C 140.927 24.454 142.463 26.557 143.828 28.721 C 143.588 26.245 143.765 23.559 143.792 21.064 C 143.794 20.893 143.904 20.82 144.021 20.734 C 144.439 20.687 145.688 20.651 146.026 20.861 C 146.25 21.739 145.905 30.899 146.109 32.357 C 146.122 32.451 145.948 32.539 145.854 32.601 C 145.121 32.725 144.659 32.651 143.924 32.575 L 140.562 27.507 C 139.992 26.639 139.282 25.462 138.676 24.658 C 138.791 26.614 138.707 28.611 138.747 30.572 C 138.76 31.228 138.773 31.928 138.705 32.579 C 137.998 32.712 137.168 32.677 136.451 32.627 C 136.44 32.544 136.431 32.462 136.423 32.379 C 136.266 30.681 136.428 28.153 136.373 26.358 C 136.323 24.711 136.383 22.759 136.435 21.096 C 136.441 20.881 136.5 20.826 136.625 20.678 Z M 104.451 20.698 C 106.352 20.762 108.313 20.684 110.231 20.705 C 111.46 20.719 111.648 20.923 112.524 21.762 C 112.693 21.924 113.105 22.423 113.147 22.607 C 113.385 23.67 113.279 25.412 113.262 26.517 C 112.895 27.106 111.926 28.135 111.359 28.522 C 110.488 28.606 109.408 28.567 108.522 28.554 C 107.778 28.586 107.033 28.601 106.289 28.599 C 106.356 29.046 106.435 32.103 106.177 32.489 C 106.001 32.75 104.459 32.655 103.97 32.639 C 103.911 31.991 103.935 30.936 103.935 30.266 L 103.934 26.19 L 103.934 22.852 C 103.934 22.26 103.909 21.373 103.974 20.821 C 104.142 20.685 104.202 20.722 104.451 20.698 Z M 128.994 20.702 C 129.601 20.695 130.175 20.721 130.781 20.748 L 130.793 20.772 C 131.43 22.033 132.066 24.059 132.56 25.42 L 135.204 32.608 C 134.3 32.674 133.662 32.672 132.768 32.639 C 132.486 31.8 132.014 30.763 131.81 29.917 C 131.388 29.971 130.97 29.961 130.544 29.962 C 130.175 29.967 128.033 29.893 127.788 30.037 C 127.358 30.293 127.177 32.117 126.785 32.462 C 126.416 32.787 124.847 32.634 124.381 32.611 C 124.515 31.899 124.8 31.378 125.012 30.716 C 125.537 29.076 126.171 27.498 126.764 25.883 L 127.9 22.773 C 128.1 22.222 128.285 21.629 128.526 21.098 C 128.652 20.821 128.745 20.789 128.994 20.702 Z M 60.001 20.69 C 62.697 20.763 65.564 20.72 68.272 20.723 L 68.275 22.77 C 66.237 22.668 63.982 22.836 62.061 22.705 C 62.122 23.461 62.076 24.705 62.065 25.493 C 62.417 25.815 66.867 25.483 67.64 25.684 C 67.924 25.758 68.103 27.688 67.413 27.689 C 66.927 27.689 66.366 27.684 65.879 27.684 C 64.703 27.691 63.526 27.687 62.349 27.671 C 62.278 27.661 62.224 27.676 62.151 27.686 C 62.04 27.854 62.066 30.179 62.094 30.513 C 62.616 30.674 67.581 30.543 68.265 30.464 C 68.275 31.173 68.275 31.884 68.267 32.593 C 67.546 32.682 60.027 32.703 59.701 32.549 C 59.531 32.024 59.501 21.189 59.685 20.848 C 59.757 20.714 59.864 20.724 60.001 20.69 Z M 0.296 21.441 C 2.718 21.857 4.745 23.425 6.122 25.313 C 6.856 26.269 7.488 27.324 7.891 28.44 C 8.269 29.558 8.681 30.738 8.724 31.996 C 6.279 32.224 3.99 31.34 2.28 29.412 C 1.473 28.456 0.883 27.251 0.486 25.882 C 0.271 25.197 0.179 24.477 0.166 23.733 C 0.144 22.988 0.185 22.218 0.296 21.441 Z M 199.441 21.441 C 199.551 22.218 199.593 22.988 199.571 23.733 C 199.557 24.477 199.466 25.197 199.251 25.882 C 198.854 27.251 198.264 28.456 197.457 29.412 C 195.747 31.34 193.458 32.224 191.013 31.996 C 191.055 30.738 191.468 29.558 191.846 28.44 C 192.249 27.324 192.881 26.269 193.616 25.313 C 194.992 23.425 197.019 21.856 199.441 21.441 Z M 13.124 25.949 C 14.933 24.644 17.227 24.238 19.649 24.654 C 19.595 25.094 19.476 25.513 19.298 25.917 C 19.112 26.319 18.882 26.708 18.665 27.09 C 18.2 27.85 17.491 28.562 16.684 29.214 C 15.156 30.503 12.979 31.609 10.534 31.836 C 10.497 30.64 10.585 29.483 11.108 28.473 C 11.604 27.462 12.27 26.597 13.124 25.949 Z M 180.087 24.654 C 182.509 24.238 184.803 24.644 186.613 25.949 C 187.466 26.597 188.132 27.462 188.629 28.473 C 189.152 29.483 189.24 30.64 189.202 31.836 C 186.757 31.609 184.58 30.503 183.053 29.214 C 182.246 28.562 181.536 27.85 181.071 27.09 C 180.855 26.708 180.625 26.319 180.438 25.917 C 180.261 25.513 180.142 25.094 180.087 24.654 Z M 56.618 0 C 56.617 1.178 56.763 11.25 56.557 11.592 L 56.557 11.592 C 56.634 11.788 56.617 11.851 56.819 11.924 C 57.951 12.328 59.188 12.662 60.319 13.019 C 61.804 13.489 63.322 14.014 64.791 14.517 C 65.518 14.766 67.208 15.255 67.859 15.556 C 66.307 16.41 56.962 19.026 56.652 19.363 C 56.619 19.482 56.586 19.587 56.567 19.709 L 56.566 19.709 C 56.687 19.895 56.667 30.859 56.504 31.067 C 56.226 30.95 55.802 30.393 55.627 30.129 C 53.715 27.26 51.305 24.486 49.5 21.569 C 48.686 21.953 46.533 22.625 45.658 22.899 L 40.595 24.523 C 39.81 24.78 38.795 25.083 38.063 25.426 C 38.855 23.943 40.588 21.759 41.608 20.316 C 42.547 18.989 43.724 17.298 44.777 16.074 L 44.778 16.074 C 44.888 15.921 44.949 15.819 45.04 15.658 C 45.015 15.377 43.821 13.832 43.562 13.477 L 40.537 9.326 C 39.746 8.253 38.749 6.976 38.092 5.839 C 41.877 6.988 45.601 8.316 49.383 9.482 C 49.61 9.407 49.594 9.353 49.773 9.134 C 49.957 8.404 55.551 1 56.388 0 Z M 95.717 22.781 C 95.242 22.868 95.108 22.97 94.823 23.38 C 94.759 23.472 94.698 23.566 94.639 23.66 C 94.634 25.554 94.685 27.822 94.609 29.692 C 94.985 30.189 95.223 30.541 95.922 30.579 C 96.924 30.633 97.93 30.546 98.935 30.586 C 99.266 30.354 99.611 29.909 99.883 29.587 C 99.828 27.745 99.823 25.575 99.842 23.725 C 99.614 23.453 99.294 23.046 99.059 22.796 C 98.049 22.772 96.62 22.842 95.717 22.781 Z M 129.651 23.782 C 129.529 24.671 129.157 25.402 128.875 26.249 C 128.674 26.851 128.498 27.453 128.29 28.054 C 128.901 27.96 129.453 27.96 130.071 27.971 C 130.484 27.986 130.889 27.999 131.302 28.032 C 131.002 27.378 129.981 24.019 129.651 23.782 Z M 110.67 22.978 C 110.156 22.522 107.256 22.767 106.34 22.735 C 106.276 22.95 106.305 26.171 106.356 26.502 C 106.822 26.559 110.195 26.606 110.506 26.494 C 111.161 25.813 110.736 24.967 110.843 24.106 C 110.889 23.731 110.858 23.314 110.67 22.978 Z M 87.858 22.899 C 87.292 22.559 84.554 22.782 83.617 22.707 C 83.684 23.396 83.721 25.458 83.59 26.107 C 84.421 26.068 87.316 26.238 87.777 25.954 L 87.811 25.933 C 88.344 25.361 88.06 24.543 88.087 23.825 C 88.1 23.492 88.059 23.174 87.858 22.899 Z M 15.189 17.227 C 17.292 16.486 19.617 16.749 21.823 17.828 C 21.044 19.401 19.643 20.555 17.703 21.358 C 15.871 22.165 13.468 22.618 11.057 22.154 C 11.354 20.994 11.786 19.915 12.546 19.085 C 13.306 18.253 14.21 17.619 15.189 17.227 Z M 177.914 17.828 C 180.119 16.749 182.445 16.486 184.548 17.227 C 185.527 17.619 186.43 18.253 187.19 19.085 C 187.951 19.915 188.382 20.994 188.679 22.154 C 186.269 22.618 183.865 22.165 182.034 21.358 C 180.094 20.555 178.693 19.401 177.914 17.828 Z M 4.158 9.298 C 6.366 10.378 7.859 12.452 8.648 14.652 C 9.108 15.786 9.396 16.967 9.47 18.152 C 9.542 19.338 9.585 20.58 9.276 21.8 C 6.865 21.336 4.917 19.849 3.821 17.52 C 2.819 15.246 2.76 12.141 4.158 9.298 Z M 195.579 9.298 C 196.977 12.141 196.918 15.246 195.917 17.52 C 194.821 19.849 192.873 21.336 190.462 21.8 C 190.152 20.58 190.195 19.338 190.267 18.152 C 190.341 16.967 190.629 15.786 191.089 14.652 C 191.878 12.452 193.371 10.378 195.579 9.298 Z M 56.326 18.938 C 56.529 19.274 56.212 19.333 56.476 19.62 C 56.213 19.333 56.529 19.275 56.326 18.938 Z M 19.549 4.2 C 19.592 5.459 19.437 6.618 19.098 7.651 C 18.74 8.671 18.379 9.71 17.737 10.545 C 16.566 12.286 14.795 13.662 12.534 14.568 C 11.607 12.264 12.055 9.636 13.429 7.609 C 14.165 6.633 14.989 5.706 16.091 5.152 C 17.175 4.583 18.353 4.241 19.549 4.2 Z M 180.188 4.2 C 181.384 4.241 182.562 4.583 183.646 5.152 C 184.748 5.706 185.571 6.633 186.308 7.609 C 187.682 9.636 188.13 12.264 187.203 14.568 C 184.941 13.662 183.171 12.286 182 10.545 C 181.358 9.71 180.997 8.671 180.639 7.651 C 180.3 6.618 180.145 5.459 180.188 4.2 Z\" fill=\"rgb(255,255,255)\"></path></svg>',svgContentId:11228385707,withExternalLayout:true})]})]})]}),/*#__PURE__*/_jsxs(\"div\",{className:\"framer-1rc13t6\",children:[/*#__PURE__*/_jsx(SVG,{className:\"framer-e4rhlp\",\"data-framer-name\":\"Line 1\",fill:\"rgba(0,0,0,1)\",intrinsicHeight:3,intrinsicWidth:1186,svg:'<svg width=\"1186\" height=\"3\" viewBox=\"-1 -1 1186 3\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\\n<line y1=\"0.5\" x2=\"1184\" y2=\"0.5\" stroke=\"#1C1C1C\"/>\\n</svg>\\n',withExternalLayout:true}),/*#__PURE__*/_jsx(\"section\",{className:\"framer-joh03j\",\"data-framer-name\":\"Horizontal Scroll\",children:/*#__PURE__*/_jsx(\"div\",{className:\"framer-19a0wdq\",children:/*#__PURE__*/_jsx(ChildrenCanSuspend,{children:/*#__PURE__*/_jsx(QueryData,{query:query(),children:(collection,paginationInfo,loadMore)=>{return /*#__PURE__*/_jsx(_Fragment,{children:collection?.map(({CTBXSZh3C:CTBXSZh3Cn0vVvGFtd,cvqcMWzWp:cvqcMWzWpn0vVvGFtd,FuXccmOu_:FuXccmOu_n0vVvGFtd,GSOzXv3XK:GSOzXv3XKn0vVvGFtd,id:idn0vVvGFtd,nIu0qGKLy:nIu0qGKLyn0vVvGFtd,s1uptatnP:s1uptatnPn0vVvGFtd},index)=>{cvqcMWzWpn0vVvGFtd??=\"\";s1uptatnPn0vVvGFtd??=\"\";FuXccmOu_n0vVvGFtd??=\"\";nIu0qGKLyn0vVvGFtd??=\"\";GSOzXv3XKn0vVvGFtd??=\"\";return /*#__PURE__*/_jsx(LayoutGroup,{id:`n0vVvGFtd-${idn0vVvGFtd}`,children:/*#__PURE__*/_jsx(PathVariablesContext.Provider,{value:{GSOzXv3XK:GSOzXv3XKn0vVvGFtd},children:/*#__PURE__*/_jsx(\"div\",{className:\"framer-11velb6\",children:/*#__PURE__*/_jsx(PropertyOverrides,{breakpoint:baseVariant,overrides:{j6bbW8Ert:{width:`calc(max(${componentViewport?.width||\"100vw\"}, 0px) - 40px)`,y:(componentViewport?.y||0)+0+0+0+1547.7+0+63+0+0+0+600+0+0}},children:/*#__PURE__*/_jsx(ComponentViewportProvider,{height:260,width:`max(max(${componentViewport?.width||\"100vw\"}, 0px) - 80px, 1px)`,y:(componentViewport?.y||0)+0+0+0+1154.9+0+63+0+0+0+656+0,children:/*#__PURE__*/_jsx(Container,{className:\"framer-112j4ae-container\",nodeId:\"l8EDSrglb\",scopeId:\"U1uzqqflT\",children:/*#__PURE__*/_jsx(ProjectList2,{aHUUZQ0qr:nIu0qGKLyn0vVvGFtd,height:\"100%\",I0LZ6qrpy:s1uptatnPn0vVvGFtd,id:\"l8EDSrglb\",layoutId:\"l8EDSrglb\",olb_Q0q6I:cvqcMWzWpn0vVvGFtd,OzXRhyx5H:toResponsiveImage(CTBXSZh3Cn0vVvGFtd),pslnzNlAh:FuXccmOu_n0vVvGFtd,style:{width:\"100%\"},width:\"100%\"})})})})})})},idn0vVvGFtd);})});}})})})})]})]})}),/*#__PURE__*/_jsx(\"div\",{id:\"overlay\"})]})});});const css=[\".framer-ueUpH.framer-fgnhwm, .framer-ueUpH .framer-fgnhwm { display: block; }\",\".framer-ueUpH.framer-9j1d3f { align-content: center; align-items: center; background-color: #000000; display: flex; flex-direction: column; flex-wrap: nowrap; height: min-content; justify-content: space-between; overflow: hidden; padding: 0px; position: relative; width: 1200px; }\",\".framer-ueUpH .framer-b7h9jf { align-content: center; align-items: center; display: flex; flex: none; flex-direction: column; flex-wrap: nowrap; gap: 80px; height: min-content; justify-content: center; min-width: 0px; overflow: hidden; padding: 0px; position: relative; width: 100%; }\",\".framer-ueUpH .framer-l98n5o { align-content: center; align-items: center; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; height: min-content; justify-content: space-between; overflow: hidden; padding: 16px; position: relative; width: 100%; }\",\".framer-ueUpH .framer-1igc7yd { 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: hidden; padding: 0px; position: relative; width: min-content; }\",\".framer-ueUpH .framer-suks4y { align-content: center; align-items: center; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; gap: 10px; height: 32px; justify-content: flex-start; overflow: hidden; padding: 0px; position: relative; width: min-content; }\",\".framer-ueUpH .framer-1v29pq2 { height: 19px; position: relative; width: 160px; }\",\".framer-ueUpH .framer-kbs1ew { height: 19px; left: 0px; position: absolute; top: 0px; width: 160px; }\",\".framer-ueUpH .framer-hv5o4d { height: 17px; left: 3px; position: absolute; top: 0px; width: 155px; }\",\".framer-ueUpH .framer-15o1x1j { height: 17px; left: 55px; position: absolute; top: 0px; width: 26px; }\",\".framer-ueUpH .framer-1wnyhiu { height: 4px; left: 59px; position: absolute; top: 10px; width: 19px; }\",\".framer-ueUpH .framer-cwvf9k { height: 4px; left: 59px; position: absolute; top: 4px; width: 19px; }\",\".framer-ueUpH .framer-4t48nh { height: 17px; left: 129px; position: absolute; top: 0px; width: 26px; }\",\".framer-ueUpH .framer-10v1197 { height: 4px; left: 133px; position: absolute; top: 4px; width: 19px; }\",\".framer-ueUpH .framer-1dppmqp { height: 17px; left: 0px; position: absolute; top: 0px; width: 26px; }\",\".framer-ueUpH .framer-j05ffx { height: 17px; left: 92px; position: absolute; top: 0px; width: 26px; }\",\".framer-ueUpH .framer-1flzlf9 { height: 17px; left: 28px; position: absolute; top: 0px; width: 26px; }\",\".framer-ueUpH .framer-uezvla { height: 17px; left: 120px; position: absolute; top: 0px; width: 11px; }\",\".framer-ueUpH .framer-h4sdo2 { height: 17px; left: 80px; position: absolute; top: 0px; width: 10px; }\",\".framer-ueUpH .framer-1chthv1 { align-content: center; align-items: center; display: flex; flex: 1 0 0px; flex-direction: row; flex-wrap: nowrap; gap: 10px; height: min-content; justify-content: center; min-height: 28px; overflow: hidden; padding: 0px; position: relative; width: 1px; }\",\".framer-ueUpH .framer-qfdfjl-container, .framer-ueUpH .framer-sr8jce-container, .framer-ueUpH .framer-cv9w8m-container, .framer-ueUpH .framer-17ml14n-container { flex: none; height: auto; position: relative; width: auto; }\",\".framer-ueUpH .framer-1h7vryw { align-content: center; align-items: center; display: flex; flex-direction: row; flex-wrap: nowrap; gap: 10px; height: min-content; justify-content: center; overflow: hidden; padding: 0px; position: relative; width: min-content; will-change: var(--framer-will-change-effect-override, transform); }\",\".framer-ueUpH .framer-1noj9ui { 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: hidden; padding: 0px; position: relative; width: 100%; }\",\".framer-ueUpH .framer-11jev28 { align-content: center; align-items: center; display: flex; flex: 1 0 0px; flex-direction: column; flex-wrap: nowrap; gap: 24px; height: min-content; justify-content: center; overflow: var(--overflow-clip-fallback, clip); padding: 28px 28px 0px 28px; position: relative; width: 1px; }\",\".framer-ueUpH .framer-1uanwlj { align-content: flex-start; align-items: flex-start; border-bottom-left-radius: 12px; border-bottom-right-radius: 12px; border-top-left-radius: 12px; border-top-right-radius: 12px; display: flex; flex: none; flex-direction: column; flex-wrap: nowrap; gap: 0px; height: 273px; justify-content: flex-start; overflow: var(--overflow-clip-fallback, clip); padding: 0px; position: relative; width: 100%; will-change: var(--framer-will-change-override, transform); }\",\".framer-ueUpH .framer-yzlvvi-container { flex: none; height: 274px; position: relative; width: 328px; z-index: 1; }\",\".framer-ueUpH .framer-1enl52c { align-content: flex-end; align-items: flex-end; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; height: min-content; justify-content: space-between; overflow: var(--overflow-clip-fallback, clip); padding: 0px; position: relative; width: 100%; }\",\".framer-ueUpH .framer-12gczs6, .framer-ueUpH .framer-1p0czpd { --framer-paragraph-spacing: 0px; flex: none; height: auto; position: relative; white-space: pre; width: auto; }\",\".framer-ueUpH .framer-vv50ge { align-content: center; align-items: center; display: flex; flex: none; flex-direction: column; flex-wrap: nowrap; gap: 4px; height: min-content; justify-content: flex-end; overflow: var(--overflow-clip-fallback, clip); padding: 0px; position: relative; width: min-content; }\",\".framer-ueUpH .framer-4h1ako-container { flex: none; height: 88px; position: relative; width: 88px; }\",\".framer-ueUpH .framer-10gia52 { align-content: flex-start; align-items: flex-start; display: flex; flex: none; flex-direction: column; flex-wrap: nowrap; gap: 54px; height: min-content; justify-content: flex-start; overflow: visible; padding: 0px; position: relative; width: 100%; }\",\".framer-ueUpH .framer-19qqf9 { align-content: center; align-items: center; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; gap: 92px; height: min-content; justify-content: flex-start; max-width: 110%; overflow: var(--overflow-clip-fallback, clip); padding: 0px; position: relative; width: 100%; }\",\".framer-ueUpH .framer-xpt9on { align-content: flex-start; align-items: flex-start; display: flex; flex: 1 0 0px; flex-direction: column; flex-wrap: nowrap; gap: 12px; height: min-content; justify-content: flex-start; overflow: visible; padding: 0px; position: relative; width: 1px; }\",\".framer-ueUpH .framer-1n1hkog, .framer-ueUpH .framer-q3tthr { --framer-paragraph-spacing: 0px; flex: none; height: auto; position: relative; white-space: pre-wrap; width: 100%; word-break: break-word; word-wrap: break-word; }\",\".framer-ueUpH .framer-auzyo1 { align-content: flex-end; align-items: flex-end; align-self: stretch; display: flex; flex: none; flex-direction: column; flex-wrap: nowrap; height: auto; justify-content: space-between; overflow: visible; padding: 0px; position: relative; width: 330px; }\",\".framer-ueUpH .framer-t2uhgo { --framer-paragraph-spacing: 0px; flex: none; height: auto; position: relative; white-space: pre-wrap; width: 330px; word-break: break-word; word-wrap: break-word; }\",\".framer-ueUpH .framer-vgwie9 { align-content: flex-start; align-items: flex-start; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; gap: 14px; height: min-content; justify-content: flex-end; overflow: var(--overflow-clip-fallback, clip); padding: 0px; position: relative; width: 100%; }\",\".framer-ueUpH .framer-1cx5bpe, .framer-ueUpH .framer-e4rhlp { flex: none; height: 3px; position: relative; width: 100%; }\",\".framer-ueUpH .framer-1hicxbu { align-content: flex-start; align-items: flex-start; background-color: #000000; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; gap: 0px; height: min-content; justify-content: flex-start; overflow: visible; padding: 0px 40px 0px 40px; position: relative; width: 100%; z-index: 1; }\",\".framer-ueUpH .framer-rqfzqq { align-content: center; align-items: center; display: flex; flex: 1 0 0px; flex-direction: row; flex-wrap: nowrap; gap: 10px; height: min-content; justify-content: center; overflow: var(--overflow-clip-fallback, clip); padding: 0px; position: relative; width: 1px; }\",\".framer-ueUpH .framer-1q2ai7e { --framer-paragraph-spacing: 0px; flex: 1 0 0px; height: auto; position: relative; white-space: pre-wrap; width: 1px; word-break: break-word; word-wrap: break-word; }\",\".framer-ueUpH .framer-196tyld { align-content: flex-start; align-items: flex-start; display: flex; flex: 1 0 0px; flex-direction: column; flex-wrap: nowrap; gap: 53px; height: min-content; justify-content: center; overflow: var(--overflow-clip-fallback, clip); padding: 0px; position: relative; width: 1px; }\",\".framer-ueUpH .framer-2ad8i { align-content: center; align-items: center; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; gap: 53px; height: min-content; justify-content: flex-start; overflow: var(--overflow-clip-fallback, clip); padding: 0px; position: relative; width: 100%; }\",\".framer-ueUpH .framer-1wmjeu9 { flex: none; height: 101px; position: relative; width: 230px; }\",\".framer-ueUpH .framer-1y5sfx7 { flex: none; height: 111px; position: relative; width: 200px; }\",\".framer-ueUpH .framer-1rc13t6 { align-content: center; align-items: center; display: flex; flex: none; flex-direction: column; flex-wrap: nowrap; gap: 60px; height: min-content; justify-content: center; overflow: var(--overflow-clip-fallback, clip); padding: 0px 0px 50px 0px; position: relative; width: 100%; }\",\".framer-ueUpH .framer-joh03j { align-content: flex-start; align-items: flex-start; background-color: #000000; display: flex; flex: none; flex-direction: column; flex-wrap: nowrap; gap: 24px; height: min-content; justify-content: flex-start; overflow: visible; padding: 0px 40px 0px 40px; position: relative; width: 100%; z-index: 1; }\",\".framer-ueUpH .framer-19a0wdq { align-content: flex-start; align-items: flex-start; display: flex; flex: none; flex-direction: column; flex-wrap: nowrap; gap: 68px; height: min-content; justify-content: center; padding: 0px; position: relative; width: 100%; }\",\".framer-ueUpH .framer-11velb6 { align-content: center; align-items: center; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; gap: 10px; height: min-content; justify-content: flex-start; padding: 0px; position: relative; width: 100%; }\",\".framer-ueUpH .framer-112j4ae-container { flex: 1 0 0px; height: auto; position: relative; width: 1px; }\",...sharedStyle.css,...sharedStyle1.css,...sharedStyle2.css,...sharedStyle3.css,\"@media (min-width: 810px) and (max-width: 1199.98px) { .framer-ueUpH.framer-9j1d3f { width: 810px; }}\",\"@media (max-width: 809.98px) { .framer-ueUpH.framer-9j1d3f { width: 390px; } .framer-ueUpH .framer-19qqf9 { align-content: flex-start; align-items: flex-start; flex-direction: column; gap: 24px; max-width: 100%; } .framer-ueUpH .framer-xpt9on, .framer-ueUpH .framer-rqfzqq, .framer-ueUpH .framer-196tyld, .framer-ueUpH .framer-112j4ae-container { flex: none; width: 100%; } .framer-ueUpH .framer-auzyo1 { align-content: flex-start; align-items: flex-start; align-self: unset; gap: 24px; height: min-content; justify-content: flex-start; width: 100%; } .framer-ueUpH .framer-t2uhgo { width: 100%; } .framer-ueUpH .framer-vgwie9 { justify-content: flex-start; } .framer-ueUpH .framer-1hicxbu { flex-direction: column; padding: 0px 20px 0px 20px; } .framer-ueUpH .framer-2ad8i { flex-direction: column; } .framer-ueUpH .framer-joh03j { padding: 0px 20px 0px 20px; } .framer-ueUpH .framer-19a0wdq { gap: 40px; } .framer-ueUpH .framer-11velb6 { align-content: flex-start; align-items: flex-start; flex-direction: column; gap: 20px; }}\"];/**\n * This is a generated Framer component.\n * @framerIntrinsicHeight 2744.5\n * @framerIntrinsicWidth 1200\n * @framerCanvasComponentVariantDetails {\"propertyName\":\"variant\",\"data\":{\"default\":{\"layout\":[\"fixed\",\"auto\"]},\"nm6cchMMm\":{\"layout\":[\"fixed\",\"auto\"]},\"j6bbW8Ert\":{\"layout\":[\"fixed\",\"auto\"]}}}\n * @framerImmutableVariables true\n * @framerDisplayContentsDiv false\n * @framerAutoSizeImages true\n * @framerComponentViewportWidth true\n * @framerColorSyntax true\n * @framerAcceptsLayoutTemplate true\n * @framerScrollSections false\n * @framerResponsiveScreen true\n * @framerLayoutTemplateFlowEffect true\n */const FramerU1uzqqflT=withCSS(Component,css,\"framer-ueUpH\");export default FramerU1uzqqflT;FramerU1uzqqflT.displayName=\"Home\";FramerU1uzqqflT.defaultProps={height:2744.5,width:1200};addFonts(FramerU1uzqqflT,[{explicitInter:true,fonts:[{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",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\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116\",url:\"https://framerusercontent.com/assets/EOr0mi4hNtlgWNn9if640EZzXCo.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+1F00-1FFF\",url:\"https://framerusercontent.com/assets/Y9k9QrlZAqio88Klkmbd8VoMQc.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0370-03FF\",url:\"https://framerusercontent.com/assets/OYrD2tBIBPvoJXiIHnLoOXnY9M.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",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\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2070, U+2074-207E, U+2080-208E, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD\",url:\"https://framerusercontent.com/assets/GrgcKwrN6d3Uz8EwcLHZxwEfC4.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",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\"},{cssFamilyName:\"PP Right Grotesk Medium\",source:\"custom\",style:\"normal\",uiFamilyName:\"PP Right Grotesk\",url:\"https://framerusercontent.com/assets/2U88UW5HhR6M2A12LG6GPpDMMQI.woff2\",weight:\"500\"}]},...ButtonFonts,...FormFonts,...VideoFonts,...AviatorLogoFonts,...ButtonMainFonts,...ProjectList2Fonts,...getFontsFromSharedStyle(sharedStyle.fonts),...getFontsFromSharedStyle(sharedStyle1.fonts),...getFontsFromSharedStyle(sharedStyle2.fonts),...getFontsFromSharedStyle(sharedStyle3.fonts)],{supportsExplicitInterCodegen:true});FramerU1uzqqflT.loader={load:(props,context)=>{const locale=context.locale;const queryCacheEntry=queryCache.get(query(),locale);return Promise.allSettled([queryCacheEntry.preload(),forwardLoader(Button,{},context),forwardLoader(Form,{},context),forwardLoader(AviatorLogo,{},context),forwardLoader(ButtonMain,{},context),(async()=>{const parentData=await queryCacheEntry.readMaybeAsync()??[];return Promise.allSettled(parentData.flatMap(item=>forwardLoader(ProjectList2,{},context)));})()]);}};\nexport const __FramerMetadata__ = {\"exports\":{\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"queryParamNames\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"default\":{\"type\":\"reactComponent\",\"name\":\"FramerU1uzqqflT\",\"slots\":[],\"annotations\":{\"framerAutoSizeImages\":\"true\",\"framerAcceptsLayoutTemplate\":\"true\",\"framerLayoutTemplateFlowEffect\":\"true\",\"framerIntrinsicHeight\":\"2744.5\",\"framerColorSyntax\":\"true\",\"framerIntrinsicWidth\":\"1200\",\"framerCanvasComponentVariantDetails\":\"{\\\"propertyName\\\":\\\"variant\\\",\\\"data\\\":{\\\"default\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"auto\\\"]},\\\"nm6cchMMm\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"auto\\\"]},\\\"j6bbW8Ert\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"auto\\\"]}}}\",\"framerComponentViewportWidth\":\"true\",\"framerImmutableVariables\":\"true\",\"framerScrollSections\":\"false\",\"framerDisplayContentsDiv\":\"false\",\"framerContractVersion\":\"1\",\"framerResponsiveScreen\":\"true\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// Generated by Framer (bee8ea6)\nconst snippets=[{code:params=>{return'<script type=\"application/ld+json\">\\n{\\n  \"@context\": \"https://schema.org\",\\n    \"@type\": \"Organization\",\\n      \"name\": \"Cubicle\",\\n        \"url\": \"https://www.cubicle.design/\",\\n          \"logo\": \"https://framerusercontent.com/images/1Mk1lsuW1ZlThGKceLGlSFrOQ.png\",\\n            \"description\": \"Cubicle designs brands, games, websites and products for iGaming operators, platforms and studios.\",\\n              \"sameAs\": [\\n                  \"https://www.linkedin.com/company/cubicledesign/\",\\n                      \"https://www.instagram.com/cubicleglobal\"\\n                        ]\\n                        }\\n                        </script>';},id:\"WA0lXINFd\",loadMode:\"once\",name:\"Organization Schema (JSON-LD)\",pageIds:new Set([\"U1uzqqflT\"]),placement:\"headStart\"}];const queryLoaders={};export const snippetsSorting={bodyEnd:[],bodyStart:[],headEnd:[],headStart:[\"legacy-headStart\",\"legacy-headStart-U1uzqqflT\",\"WA0lXINFd\"]};export async function getSnippets(pageId,pathVariables,activeLocale){const queryLoader=queryLoaders[pageId];const params=queryLoader?await queryLoader(pathVariables,activeLocale):undefined;const result={bodyEnd:[],bodyStart:[],headEnd:[],headStart:[]};for(const snippet of snippets){if(snippet.pageIds&&!snippet.pageIds.has(pageId))continue;const code=snippet.code(params);if(code){result[snippet.placement].push({...snippet,code});}}return result;}\nexport const __FramerMetadata__ = {\"exports\":{\"snippetsSorting\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"getSnippets\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","import{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import*as React from\"react\";import{withCSS}from\"framer\";const NotFoundPage=()=>{React.useEffect(()=>{let robotsTag=document.querySelector('meta[name=\"robots\"]');if(robotsTag){robotsTag.setAttribute(\"content\",\"noindex\");}else{robotsTag=document.createElement(\"meta\");robotsTag.setAttribute(\"name\",\"robots\");robotsTag.setAttribute(\"content\",\"noindex\");document.head.appendChild(robotsTag);}},[]);return /*#__PURE__*/_jsx(\"div\",{className:\"__framer-not-found-page\",style:{display:\"flex\",height:\"100vh\",alignItems:\"center\",justifyContent:\"center\",backgroundColor:\"var(--color-primary)\",background:\"var(--color-background)\",fontSize:\"var(--font-size-body)\",boxSizing:\"border-box\",fontFeatureSettings:'\"liga\", \"clig\"',fontVariantLigatures:\"common-ligatures\",textRendering:\"optimizeLegibility\"},children:/*#__PURE__*/_jsxs(\"main\",{style:{boxSizing:\"border-box\",fontFamily:'\"Inter\", sans-serif',fontWeight:500,maxWidth:\"240px\",width:\"100%\",display:\"flex\",alignItems:\"center\",flexDirection:\"column\",padding:\"0 20px\",textWrap:\"balance\"},children:[/*#__PURE__*/_jsx(\"svg\",{xmlns:\"http://www.w3.org/2000/svg\",width:\"14\",height:\"21\",style:{verticalAlign:\"middle\",color:\"var(--color-primary)\",marginBottom:\"20px\"},children:/*#__PURE__*/_jsx(\"path\",{d:\"M 14 0 L 14 7 L 7 7 L 0 0 Z M 14 14 L 7 14 L 7 21 L 0 14 L 0 7 L 7 7 Z\",fill:\"currentColor\"})}),/*#__PURE__*/_jsx(\"h1\",{style:{margin:\"0 0 10px 0\",fontSize:\"var(--font-size-title)\",color:\"var(--color-primary)\",textAlign:\"center\"},children:\"Page Not Found\"}),/*#__PURE__*/_jsx(\"div\",{style:{color:\"var(--color-secondary)\",marginBottom:\"20px\",lineHeight:\"1.5em\",textAlign:\"center\"},children:\"The page you are looking for does not exist or may have been moved.\"}),/*#__PURE__*/_jsx(\"a\",{href:\"/\",role:\"button\",style:{backgroundColor:\"var(--color-tint)\",color:\"#ffffff\",paddingLeft:\"8px\",paddingRight:\"8px\",borderRadius:\"8px\",lineHeight:\"30px\",height:\"30px\",textDecoration:\"none\",verticalAlign:\"baseline\"},children:\"Back to Home\"})]})});};const css=[`@font-face {\n      font-family: Inter;\n      src: url(https://framerusercontent.com/assets/hyOgCu0Xnghbimh0pE8QTvtt2AU.woff2);\n      font-display: swap;\n      font-style: normal;\n      font-weight: 600;\n      unicode-range: U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F,\n        U+FE2E-FE2F;\n    }`,`@font-face {\n      font-family: Inter;\n      src: url(https://framerusercontent.com/assets/NeGmSOXrPBfEFIy5YZeHq17LEDA.woff2);\n      font-display: swap;\n      font-style: normal;\n      font-weight: 600;\n      unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;\n    }`,`@font-face {\n      font-family: Inter;\n      src: url(https://framerusercontent.com/assets/oYaAX5himiTPYuN8vLWnqBbfD2s.woff2);\n      font-display: swap;\n      font-style: normal;\n      font-weight: 600;\n      unicode-range: U+1F00-1FFF;\n    }`,`@font-face {\n      font-family: Inter;\n      src: url(https://framerusercontent.com/assets/lEJLP4R0yuCaMCjSXYHtJw72M.woff2);\n      font-display: swap;\n      font-style: normal;\n      font-weight: 600;\n      unicode-range: U+0370-03FF;\n    }`,`@font-face {\n      font-family: Inter;\n      src: url(https://framerusercontent.com/assets/cRJyLNuTJR5jbyKzGi33wU9cqIQ.woff2);\n      font-display: swap;\n      font-style: normal;\n      font-weight: 600;\n      unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB,\n        U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF;\n    }`,`@font-face {\n      font-family: Inter;\n      src: url(https://framerusercontent.com/assets/1ZFS7N918ojhhd0nQWdj3jz4w.woff2);\n      font-display: swap;\n      font-style: normal;\n      font-weight: 600;\n      unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6,\n        U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193,\n        U+2212, U+2215, U+FEFF, U+FFFD;\n    }`,`@font-face {\n      font-family: Inter;\n      src: url(https://framerusercontent.com/assets/A0Wcc7NgXMjUuFdquHDrIZpzZw0.woff2);\n      font-display: swap;\n      font-style: normal;\n      font-weight: 600;\n      unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169,\n        U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB;\n    }`,`@font-face {\n      font-family: Inter;\n      src: url(https://framerusercontent.com/assets/5A3Ce6C9YYmCjpQx9M4inSaKU.woff2);\n      font-display: swap;\n      font-style: normal;\n      font-weight: 500;\n      unicode-range: U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F,\n        U+FE2E-FE2F;\n    }`,`@font-face {\n      font-family: Inter;\n      src: url(https://framerusercontent.com/assets/Qx95Xyt0Ka3SGhinnbXIGpEIyP4.woff2);\n      font-display: swap;\n      font-style: normal;\n      font-weight: 500;\n      unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;\n    }`,`@font-face {\n      font-family: Inter;\n      src: url(https://framerusercontent.com/assets/6mJuEAguuIuMog10gGvH5d3cl8.woff2);\n      font-display: swap;\n      font-style: normal;\n      font-weight: 500;\n      unicode-range: U+1F00-1FFF;\n    }`,`@font-face {\n      font-family: Inter;\n      src: url(https://framerusercontent.com/assets/xYYWaj7wCU5zSQH0eXvSaS19wo.woff2);\n      font-display: swap;\n      font-style: normal;\n      font-weight: 500;\n      unicode-range: U+0370-03FF;\n    }`,`@font-face {\n      font-family: Inter;\n      src: url(https://framerusercontent.com/assets/otTaNuNpVK4RbdlT7zDDdKvQBA.woff2);\n      font-display: swap;\n      font-style: normal;\n      font-weight: 500;\n      unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB,\n        U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF;\n    }`,`@font-face {\n      font-family: Inter;\n      src: url(https://framerusercontent.com/assets/d3tHnaQIAeqiE5hGcRw4mmgWYU.woff2);\n      font-display: swap;\n      font-style: normal;\n      font-weight: 500;\n      unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6,\n        U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193,\n        U+2212, U+2215, U+FEFF, U+FFFD;\n    }`,`@font-face {\n      font-family: Inter;\n      src: url(https://framerusercontent.com/assets/DolVirEGb34pEXEp8t8FQBSK4.woff2);\n      font-display: swap;\n      font-style: normal;\n      font-weight: 500;\n      unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169,\n        U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB;\n    }`,`@font-face {\n      font-family: Inter Placeholder;\n      src: local(\"Arial\");\n      ascent-override: 89.79%;\n      descent-override: 22.36%;\n      line-gap-override: 0%;\n      size-adjust: 107.89%;\n    }`,`.__framer-not-found-page {\n      --color-background: #ffffff;\n      --color-primary: #333;\n      --color-secondary: #888;\n      --color-tint: #0099ff;\n      --font-size-body: 12px;\n      --font-size-title: 12px;\n    }`,`@media (prefers-color-scheme: dark) {\n      .__framer-not-found-page {\n        --color-background: #000000;\n        --color-primary: #fff;\n        --color-secondary: #888;\n      }\n    }`];const component=withCSS(NotFoundPage,css);export default component;\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"component\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./NotFoundPage.map","/*\n * NotFoundPage (framer/SitesNotFoundPage@1.4.0)\n *\n * Learn More: https://www.framer.com/asset-urls\n */\n\nexport * from \"https://framerusercontent.com/modules/7cPhjQw0EGNBHRZlzbhH/4hSO1fMoujYmMhk8FjXZ/NotFoundPage.js\"\nexport { default } from \"https://framerusercontent.com/modules/7cPhjQw0EGNBHRZlzbhH/4hSO1fMoujYmMhk8FjXZ/NotFoundPage.js\"\n","export const v0=\"SĂ COLABORĂM\";export const v1=\"https://framerusercontent.com/assets/MLWPbW1dUQawJLhhun3dBwpgJak.mp4\";\nexport const __FramerMetadata__ = {\"exports\":{\"v0\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"v1\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}"],"mappings":"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"}