{"version":3,"file":"shared-lib.xIVFvef9.mjs","names":["isBrowser","useReducer","isBrowser","useState","isBrowser","useState","_Fragment","Suspense","isBrowser","useState","_Fragment","Suspense","fonts","css","className","fonts","css","className","useRef","useMemo","useMemo","useMemo","useRef","useCallback","useRef","useCallback","lottie","addPropertyOverrides","cycleOrder","serializationHash","variantClassNames","transition1","Transition","React.useContext","React.useMemo","Variants","React.Fragment","humanReadableVariantMap","getProps","createLayoutDependency","React.forwardRef","useRef","React.useId","v","I","b","T","x","N","A","R","P","q","t","_","D","j","C","J","V","W","$","z","G","K","H","X","Q","Y","Z","tt","te","tr","tn","ti","ts","ta","to","tu","tl","th","tc","tf","td","tg","tp","tv","ty","tm","tw","tI","tb","tE","tk","tM","tx","tB","tT","tF","e","r","n","i","s","a","o","u","l","h","c","d","g","p","U","S","k","L","B","E","M","F","O","tU","tS","tL","tN","y","tA","tO","tP","c","u","m","g","p","n","r","t","o","d","a","i","l","m","c","n","s","u","f","d","p","w","S","h","y","N","g","R","x","b","P","O","K","U","j","V","L","C","T","I","v","A","Q","F","J","M","W","X","D","G","z","H","k","B","_","E","Y","Z","q","$","ee","el","et","er","ea","eo","ei","em","ec","en","es","eu","ef","ed","ep","ew","eS","eh","ey","eN","eg","eR","ex","eb","eP","eO","eK","eU","ej","eV","eL","eC","eT","eI","ev","eA","eQ","eF","eJ","eM","eW","eX","eD","eG","ez","eH","ek","eB","e_","eE","eY","eZ","eq","e$","e0","e1","o","e3","t","e4","r","a","enumToDisplayNameFunctions","utils","__FramerMetadata__","v","I","b","T","x","N","A","R","P","q","t","_","D","j","C","J","V","W","$","z","G","K","H","X","Q","Y","Z","tt","te","tr","tn","ti","ts","ta","to","tu","tl","th","tc","tf","td","tg","tp","tv","ty","tm","tw","tI","tb","tE","tk","tM","tx","tB","tT","tF","e","r","n","i","s","a","o","u","l","h","c","d","g","p","U","S","k","L","B","E","M","F","O","tU","tS","tL","tN","y","tA","tO","tP","f","u","s","d","c","r","t","n","m","i","o","l","m","c","n","u","f","s","d","p","N","y","g","S","h","w","x","R","L","b","V","T","W","q","O","U","I","v","k","A","B","F","Q","D","P","M","E","z","X","C","G","J","H","j","K","Y","_","Z","$","ee","el","et","ea","er","ei","eo","em","ec","en","eu","es","i","t","a","r","enumToDisplayNameFunctions","utils","__FramerMetadata__","useState","ServiceLottieIcon","RollingTextFonts","serializationHash","variantClassNames","numberToPixelString","transition1","Transition","React.useContext","React.useMemo","Variants","React.Fragment","humanReadableEnumMap","getProps","createLayoutDependency","Component","useRef","React.useId","sharedStyle.className","css","sharedStyle.css","sharedStyle.fonts","mask","SVG","getProps","Icon","React.forwardRef","mask","SVG","getProps","Icon","React.forwardRef","addPropertyOverrides","RollingTextFonts","Chevron","Arrow40","enabledGestures","cycleOrder","serializationHash","variantClassNames","transition1","transformTemplate1","Transition","React.useContext","React.useMemo","Variants","React.Fragment","humanReadableVariantMap","getProps","createLayoutDependency","React.forwardRef","useRef","React.useId","addPropertyOverrides","NavLink","NavDropdownItem","cycleOrder","serializationHash","variantClassNames","transition1","query1","UseCases","QueryData","query3","Services","Transition","React.useContext","React.useMemo","Variants","React.Fragment","humanReadableVariantMap","getProps","createLayoutDependency","React.forwardRef","useRef","React.useId","_Fragment","mask","SVG","getProps","Icon","React.forwardRef","mask","SVG","getProps","Icon","React.forwardRef","addPropertyOverrides","LogoSimple","SprintValley","cycleOrder","serializationHash","variantClassNames","transition1","transition2","transition3","Transition","React.useContext","React.useMemo","Variants","React.Fragment","humanReadableVariantMap","getProps","createLayoutDependency","React.forwardRef","useRef","React.useId","addPropertyOverrides","enabledGestures","cycleOrder","serializationHash","variantClassNames","transition1","Transition","React.useContext","React.useMemo","Variants","React.Fragment","humanReadableVariantMap","getProps","createLayoutDependency","React.forwardRef","useRef","React.useId","addPropertyOverrides","Logo","NavLinks","MenuButton","cycleOrder","serializationHash","variantClassNames","transition1","transition2","Transition","React.useContext","React.useMemo","Variants","React.Fragment","humanReadableVariantMap","getProps","createLayoutDependency","React.forwardRef","useRef","React.useId","addPropertyOverrides","RollingTextFonts","cycleOrder","serializationHash","variantClassNames","transition1","Transition","React.useContext","React.useMemo","Variants","React.Fragment","humanReadableVariantMap","getProps","createLayoutDependency","React.forwardRef","useRef","React.useId","fonts","css","className","fonts","css","className","css","RollingTextFonts","serializationHash","variantClassNames","transition1","Transition","React.useContext","React.useMemo","Variants","React.Fragment","getProps","createLayoutDependency","React.forwardRef","useRef","React.useId","getProps","React.forwardRef","serializationHash","variantClassNames","transition1","Transition","React.useContext","React.useMemo","Variants","React.Fragment","getProps","createLayoutDependency","React.forwardRef","useRef","React.useId","addPropertyOverrides","FooterLink","FooterLogo","cycleOrder","serializationHash","variantClassNames","transition1","animation","transition2","animation1","Services","UseCases","Transition","React.useContext","React.useMemo","Variants","React.Fragment","humanReadableVariantMap","getProps","createLayoutDependency","Component","useRef","React.useId","sharedStyle.className","sharedStyle1.className","className","_Fragment","SVG","css","sharedStyle.css","sharedStyle1.css","sharedStyle.fonts","sharedStyle1.fonts","v","I","b","T","x","N","A","R","P","q","t","_","D","j","C","J","V","W","$","z","G","K","H","X","Q","Y","Z","tt","te","tr","tn","ti","ts","ta","to","tu","tl","th","tc","tf","td","tg","tp","tv","ty","tm","tw","tI","tb","tE","tk","tM","tx","tB","tT","tF","e","r","n","i","s","a","o","u","l","h","c","d","g","p","U","S","k","L","B","E","M","F","O","tU","tS","tL","tN","y","tA","tO","tP","f","u","s","d","c","r","t","n","m","i","m","t","n","l","c","u","s","f","d","p","y","g","h","w","S","V","N","R","x","D","L","b","U","E","Q","T","I","_","X","B","C","P","k","v","Y","J","A","F","H","K","O","W","M","q","z","G","Z","j","$","ee","el","et","ea","er","eo","i","en","a","ec","r","o","enumToDisplayNameFunctions","utils","__FramerMetadata__","TextLink","React.useContext","React.useMemo","React.Fragment","useRef","React.useId","sharedStyle.className","sharedStyle1.className","Image","sharedStyle.css","sharedStyle1.css","sharedStyle.fonts","sharedStyle1.fonts","v","I","b","T","x","N","A","R","P","q","_","D","j","C","J","V","W","$","z","G","K","H","X","Q","Y","Z","n","s","a","o","u","h","c","d","g","p","U","S","k","L","B","E","M","F","O","y","c","u","m","g","p","n","r","t","o","d","l","i","t","a","r","\"dataLayer\"","dataLayerName","dataLayer","params","environment","gtm_auth","gtm_preview","customDomain","customScriptName","id","dataLayerScript","script","gtm","positionParts","position","justifyContent","alignItems","shadows","output","shadow","jsonString","onError","options","resolve","fn","consent","action","state","dispatch","isOnFramerCanvas","consentModeLocalStorageKey","dismissedLocalStorageKey","autoAcceptedLocalStorageKey","getStateFromLocalStorage","consentFromLocalStorage","dismissedFromLocalStorage","autoAcceptedFromLocalStorage","isDismissed","isAutoAccepted","defaultConsent","syncToGTM","gtmId","gtmLoadedExternally","defaultsFromGTM","shouldSync","dismiss","autoAccept","acceptAll","rejectAll","acceptCurrent","toggleMode","setConsent","result","region","v","locale","country","regionBasedOnLocation","skipEUCheck","regionFromGTM","regionFromProps","content","useRegionFromProps","padding","banner","onDismiss","button","title","onReject","onAccept","showOptions","setShowOptions","optionTheme","optionNames","shouldShowOptions","previewOptions","option","onOptionToggle","onAcceptCurrent","showReject","onRejectAll","onAcceptAll","paddingValue","theme","borderShadow","titleColor","optional","enabled","description","descriptionColor","style","policy","descriptionParagraphs","index","line","linkColor","direction","maxHeightReduction","bannerShadow","bannerStyle","animateOnMount","onToggleConsent","consentModes","settings","primary","children","isPreview","preview","skipLogic","isInEU","gtmDefaults","isOpen","setIsOpen","instantlyShowOnMount","setInstantlyShowOnMount","onShown","noConsentGiven","shouldAutoAccept","onConsentChange","handleDismiss","handleAcceptAll","handleRejectAll","handleAcceptCurrent","onSavePreferences","insetValue","props","shouldRenderPortal","setShouldRenderPortal","blocking","color","trigger","onEnter","onExit","isInTarget","goal","callback","ref","init","userAgent","isMixedBorderRadius","topLeftRadius","topRightRadius","bottomRightRadius","bottomLeftRadius","borderRadius","optionsRef","animation","didInitialMount","isOnCanvas","onChangeDeps","onChange","transformer","value","value1","inputValue","ref1","newValue","ref2","factory","root","propertyNames","i","len","val","absArr","type","currentTime","totalTime","frameMultiplier","currentLoop","totalLoops","firstFrame","totalFrames","target","nativeError","_count","r","g","b","h","f","p","s","q","t","max","min","d","hsv","offset","colorMap","hex","eventName","args","createRegularArray","arr","createTypedArrayFactory","prop","container","blendModeEnums","mode","_cos","_sin","_tan","_rnd","reset","rotate","angle","mCos","mSin","rotateX","rotateY","rotateZ","shear","sy","sx","skew","ax","ay","skewFromAxis","scale","sz","setTransform","a","c","e","j","k","l","m","n","o","translate","tx","ty","tz","transform","_p","a2","b2","c2","d2","e2","f2","g2","h2","i2","j2","k2","l2","m2","n2","o2","p2","a1","b1","c1","d1","e1","f1","g1","h1","i1","j1","k1","l1","m1","n1","o1","p1","isIdentity","equals","matr","clone","cloneFromProps","applyToPoint","x","y","z","applyToX","applyToY","applyToZ","getInverseMatrix","determinant","inverseMatrix","inversePoint","pt","inversePoints","pts","retPts","applyToTriplePoints","pt1","pt2","pt3","p0","p4","p5","p12","p13","applyToPointArray","applyToPointStringified","toCSS","cssValue","roundMatrixProperty","to2dCSS","_a","_b","_c","_d","_e","_f","global","width","chunks","digits","rngname","startdenom","math","significance","overflow","mask","nodecrypto","seedrandom","key","shortseed","mixkey","flatten","seed","tostring","pool","autoseed","arc4","ARC4","prng","copy","is_math_call","keylen","me","typ","obj","depth","stringseed","smear","out","browser","plugins","ob","getBezierEasing","beziers","str","nm","bezEasing","BezierEasing","NEWTON_ITERATIONS","NEWTON_MIN_SLOPE","SUBDIVISION_PRECISION","SUBDIVISION_MAX_ITERATIONS","kSplineTableSize","kSampleStepSize","float32ArraySupported","A","aA2","aA1","B","C","calcBezier","aT","getSlope","binarySubdivide","currentX","currentT","aA","aB","mX1","mX2","aX","newtonRaphsonIterate","currentSlope","aGuessT","points","mY1","mY2","mSampleValues","intervalStart","currentSample","lastSample","dist","guessForT","initialSlope","lastTime","vendors","currTime","timeToCall","sources","sourcePrototype","attr","object","ProxyFunction","prototype","pointOnLine2D","det1","x1","y2","y1","x3","x2","y3","pointOnLine3D","z1","z2","z3","dist1","dist2","dist3","diffDist","getBezierLength","curveSegments","ptCoord","perc","addedLength","ptDistance","point","lastPoint","lengthData","pt4","getSegmentsLength","segmentsLength","closed","shapeData","pathV","pathO","pathI","lengths","totalLength","BezierData","length","PointData","partial","buildBezierData","storedData","bezierName","bezierData","getDistancePerc","percents","initPos","lengthPos","lPerc","dir","flag","getPointInSegment","t1","percent","u1","bezierSegmentPoints","getNewSegment","startPerc","t0","endPerc","u0","u0u0u0","t0u0u0_3","t0t0u0_3","t0t0t0","u0u0u1","t0u0u1_3","t0t0u1_3","t0t0t1","u0u1u1","t0u1u1_3","t0t1u1_3","t0t1t1","u1u1u1","t1u1u1_3","t1t1u1_3","t1t1t1","completeLayers","layerData","layers","jLen","kLen","maskProps","convertPathsToAbsoluteValues","findCompLayers","comps","fontManager","completeShapes","completeText","path","checkVersion","animVersion","animVersionString","minimum","checkText","minimumVersion","updateTextLayer","documentData","textLayer","iterateLayers","animationData","checkChars","pathData","paths","checkColors","iterateShapes","shapes","checkShapes","completeClosingShapes","completeData","data","moduleOb","styles","fontData","fWeight","fStyle","styleName","maxWaitingTime","emptyChar","combinedCharacters","trimFontOptions","familyArray","font","enabledFamilies","setUpNode","parentNode","family","node","checkLoadedFonts","w","loadedCount","createHelper","tHelper","fontProps","def","tCanvasHelper","addFonts","fontArr","_pendingFonts","shouldLoadFont","loadedSelector","defs","sc","addChars","chars","found","getCharData","char","measureText","fontName","doubleSize","singleSize","size","getFontByName","name","getCombinedCharacterCodes","setIsLoaded","Font","initFrame","mathAbs","interpolateValue","offsetTime","iterationIndex","caching","keyData","nextKeyData","frameNum","fnc","nextKeyTime","keyTime","endValue","ind","distanceInLine","segmentPerc","outX","outY","inX","inY","keyValue","quatStart","createQuaternion","quatEnd","time","quaternionToEuler","slerp","az","aw","bx","by","bz","bw","omega","cosom","sinom","scale0","scale1","qx","quat","qy","qz","qw","heading","attitude","bank","values","c3","s1","s2","s3","getValueAtCurrentTime","initTime","endTime","renderResult","setVValue","multipliedValue","processEffectsSequence","finalValue","addEffect","effectFunction","ValueProperty","mult","elem","MultiDimensionalProperty","KeyframedValueProperty","KeyframedMultidimensionalProperty","to","ti","arrLen","getProp","defaultVector","applyToMatrix","_mdf","mat","processKeys","forceRender","frameRate","v1","v2","px","py","precalculateMatrix","autoOrient","addDynamicProperty","TransformProperty","getTransformProperty","pos","replace","vX","vY","oX","oY","iX","iY","newPath","vertices","outPoints","inPoints","cnt","interpolateShape","keyPropS","keyPropE","isHold","vertexValue","kf","previousValue","interpolateShapeCurrentTime","lastFrame","resetShape","shapesEqual","shape1","shape2","ShapeProperty","KeyframedShapeProperty","EllShapeProperty","cPoint","EllShapePropertyFactory","s0","_cw","_v","StarShapeProperty","StarShapePropertyFactory","numPts","longFlag","longRad","shortRad","longRound","shortRound","longPerimSegment","shortPerimSegment","rad","roundness","perimSegment","currentAng","ox","oy","RectShapeProperty","RectShapePropertyFactory","v0","round","getShapeProp","getConstructorFunction","getKeyframedConstructorFunction","modifiers","registerModifier","getModifier","segments","shapeSegments","segmentOb","totalModifierLength","shapeLength","shapeS","shapeE","pathsData","_isFirstFrame","_s","shapePaths","totalShapeLength","localShapeCollection","edges","newShapesData","lastShape","newPaths","shapePath","newShape","currentLengthData","segmentCount","segment","shapeSegment","segmentLength","clonedPath","currentV","currentI","currentO","closerV","distance","newPosPerc","rd","amount","centerPoint","pathLength","inv","scaleX","scaleY","pMatrix","rMatrix","sMatrix","elemsData","elements","newElements","renderFlag","items","itemsTransform","cont","hasReloaded","copies","group","elems","transformData","offsetModulo","roundOffset","pProps","rProps","sProps","iteration","renderer","cLength","diff","_o","pathNodes","_i","shapeString","AudioController","audioFactory","audio","rateValue","assetPath","proxyImage","canvas","ctx","imageLoaded","footageLoaded","getAssetsPath","assetData","assetsPath","imagePath","originalPath","testImageLoaded","intervalId","img","createImageData","createImgData","createFootageData","footageData","loadAssets","cb","assets","setPath","setAssetsPath","getAsset","destroy","loadedImages","loadedFootages","setCacheType","elementHelper","ImagePreloaderFactory","createFilter","createAlphaToLuminanceFilter","fil","filId","skipCoordinates","feColorMatrix","formatResponse","xhr","loadAsset","response","err","errorCallback","textData","renderType","animatorProps","lettersChangedFlag","alignment","animators","matrixHelper","renderedLettersCount","xPos","yPos","letters","pathInfo","currentLength","currentPoint","pointInd","segmentInd","prevPoint","partialLength","tanAngle","yOff","firstLine","animatorSelector","letterValue","offf","xPathPos","yPathPos","initPathPos","initSegmentInd","initPointInd","currentLine","elemOpacity","sw","fc","letterSw","letterSc","letterFc","letterM","letterP","letterO","animatorJustifyOffset","animatorFirstCharOffset","justifyOffsetMult","lastIndex","isNewLine","animatorOffset","rot","defaultData","textAnimatorAnimatables","updated","_finalValue","currentValue","currentIndex","textKeys","charactersArray","text","charCode","newLineFlag","anchorGrouping","currentSize","currentPos","lineWidths","lineWidth","maxLineWidth","charData","trackingOffset","boxWidth","boxHeight","currentHeight","finalText","lastSpaceIndex","uncollapsedSpaces","currentChar","animatorData","letterData","based","indexes","currentInd","newInd","dData","newData","_canResize","_fontValue","floor","TextSelectorPropFactory","easer","tot","newCharsFlag","divisor","getTextSelectorProp","_length","_maxLength","initialLength","newElement","element","_create","release","_release","double","create","cloned","shape","newShapeCollection","shapeCollection","parsePayloadLines","lines","payload","keys","keysCount","markers","_markers","_marker","markerData","num","layer","newLayers","pInterface","parentName","hierarchy","comp","animData","fontsContainer","animationItem","ariaLabel","config","titleElement","titleId","descElement","descId","maskElement","rect","maskId","nextElement","cProps","trProps","op","actionFlag","popped","containerStyle","origin","elementWidth","elementHeight","elementRel","animationRel","par","fillType","newDOMElement","nextDOMElement","nextLayer","tmpDOMElement","perspectiveElem","center","matrix","threeDContainerData","lastThreeDContainerData","currentContainer","resizerElem","wrapper","svg","cWidth","cHeight","floatingContainer","globalData","properties","count","currentMasks","layerId","expansor","feMorph","maskType","maskRef","filterID","finalMat","isFirstFrame","pathString","viewData","pathShapeValue","isVisible","transforms","ptNew","component","level","transformers","styleOb","gradientId","gfill","stops","stop","pathElement","opacityId","opFill","_identityMatrix","_matrixHelper","createRenderFunction","renderFill","renderGradient","renderGradientStroke","renderStroke","renderPath","renderContentTransform","itemData","pathStringTransformed","redraw","lLen","lvl","iterations","styleData","styleElem","hasOpacity","attr1","attr2","cValues","oValues","ang","sequence","styledShape","transformsManager","effectsInterface","blendModeValue","layerElementParent","gg","masker","maskGroup","maskGrouper","feCTr","feFunc","alphaRect","cp","clipId","cpGroup","shouldBreakProcess","shapeStr","_fontSize","lineNumber","colorData","timeRemapped","volumeValue","textArray","textContents","currentTextContent","usesGlyphs","tSpan","singleShape","tElement","justify","textContent","cachedSpansLength","textBox","renderedLetters","renderedLetter","textSpan","tempShapes","areAnimated","elementData","transformProperty","ownTransformers","ownStyles","ownModifiers","currentTransform","modifier","processedPos","prevViewData","render","itemsData","animatedContent","filterManager","filter","feMerge","feMergeNode","colorBlack","colorWhite","opacity","feGaussianBlur","sigma","dimensions","sigmaX","sigmaY","edgeMode","elemChildren","groupPath","dasharrayValue","lineLength","units","feComponentTransfer","feFuncR","feFuncG","feFuncB","color1","color2","color3","tableR","tableG","tableB","effectElements","inputBlack","inputWhite","table","colorValue","outputDelta","outputWhite","outputBlack","inputDelta","gamma","filterSize","feOffset","feFlood","feComposite","col","filterElem","nextChild","useElem","symbolId","symbol","newLength","currentSavedOp","forceRealStack","imgW","imgH","imgRel","canvasRel","widthCrop","heightCrop","hasMasks","ownTransforms","shouldRender","parentTransform","groupTransform","nodes","currentStyle","isMain","shapeNodes","groupTransformMat","grd","hasFill","hasStroke","commands","pathArr","lastFill","lastStroke","lastStrokeW","transformedElementStyle","matrixValue","item","vPoint","oPoint","nextIPoint","nextVPoint","boundingBox","bounds","p3","b2ac","t2","box","tempBoundingBox","changed","shapeStyle","shapeTransform","innerElemStyle","textColor","tParent","tCont","tContStyle","tContTranslation","tStyle","tSpanTranslation","svgStyle","translation","textPath","margin","svgTransform","perspectiveStyle","perspective","mTransf","diffVector","mag","lookDir","lookLengthOnXZ","mRotationX","mRotationY","hasMatrixChanged","matValue","registeredAnimations","playingAnimationsNum","_stopped","_isFrozen","removeElement","animItem","ev","subtractPlayingCount","registerAnimation","setupAnimation","getRegisteredAnimations","lenAnims","animations","addPlayingCount","activate","loadAnimation","setSpeed","setDirection","play","resume","elapsedTime","nowTime","first","pause","goToAndStop","isFrame","togglePause","searchAnimations","animElements","standalone","body","div","resize","freeze","unfreeze","setVolume","mute","unmute","animType","wrapperAttributes","loop","segmentPath","error","marker","markerName","numValue","nextValue","_isComplete","pendingFrame","end","forceFlag","initExpressions","stackCount","registers","pushExpression","popExpression","releaseInstances","registerExpressionProperty","expression","tOfV","tOfA","lenA","retArr","tOfB","lenB","mm","arr1","arr2","vec","value2","tMin","tMax","_tMin","rnd","rndm","arrPlaceholder","inVertexPoint","outVertexPoint","inTangents","outTangents","iWiggle","lenWiggle","addedAmps","freq","amp","periods","duration","fVec","elem2","elem1","pitch","val1","val2","iKey","lenKey","obKey","fps","frames","framesPerSecond","_value","searchExpressions","getValueAtTime","getSpeedAtTime","delta","speed","getVelocityAtTime","velocity","getStaticValueAtTime","setGroupProperty","propertyGroup","loopOut","currentFrame","keyframes","lastKeyFrame","cycleDuration","firstKeyFrame","durationFlag","ret","initV","endV","current","repeats","lastValue","nextLastValue","loopIn","firstValue","nextFirstValue","smooth","samples","endFrame","sampleFrequency","sampleValue","getTransformValueAtTime","anchor","skewAxis","rotation","rotationZ","rotationY","rotationX","orientation","positionX","positionY","positionZ","getTransformStaticValueAtTime","propertyGetProp","getShapeValueAtTime","ShapePropertyConstructorFunction","KeyframedShapePropertyConstructorFunction","ShapeExpressions","accumulatedLength","initIndex","endIndex","xLength","yLength","magnitude","vectorType","propertyGetShapeProp","trims","isKeyframed","hasExpressions","view","interfaceFunction","_propertyGroup","parentPropertyGroup","propertyName","iterateElements","groupInterfaceFactory","fillInterfaceFactory","strokeInterfaceFactory","trimInterfaceFactory","ellipseInterfaceFactory","starInterfaceFactory","rectInterfaceFactory","roundedInterfaceFactory","repeaterInterfaceFactory","contentsInterfaceFactory","interfaces","transformInterfaceFactory","transformInterface","_dashPropertyGroup","dashOb","addPropertyToDashOb","_interfaceFunction","parentGroupWrapper","_prevValue","_sourceText","_thisLayerFunction","stringValue","getMatrix","toWorldMat","toWorldVec","toWorld","fromWorldVec","fromWorld","applyPoint","invertPoint","fromComp","sampleImage","_registerMaskInterface","maskManager","_registerEffectsInterface","effects","anchorPointDescriptor","outlineInterfaceFactory","currentPropertyName","currentProperty","searchProperty","propertyNameIndex","dataInterfaceFactory","_thisFunction","_px","_py","_pz","_transformFactory","registerComposition","_thisProjectFunction","createEffectsInterface","effectsData","createGroupInterface","groupInterface","createValueInterface","expressionProperty","MaskInterface","_masksInterfaces","defaultUnidimensionalValue","defaultMultidimensionalValue","completeProperty","expressionValue","property","valueProp","UnidimensionalPropertyInterface","MultidimensionalPropertyInterface","arrValue","defaultGetter","TextExpressionSelectorProp","getValueProxy","total","propertyGetTextProp","effectItem","eff","href","plugin","vars","pair","variable","progressRaw","shouldPlay","pauseOnCanvas","playing","isForwardsDirection","isCustomPoster","poster","el","animationInfo","progress","_animationInfo_current_animation","_animationInfo_current","scrubTo","frameNumberTarget","normalizedProgress","shouldPlayAfter","fetchLottieData","url","dataUrl","srcType","srcUrl","srcFile","setup","anim","posterProgress","cleanup","normalizedPosterProgress","\"File\"","\"Url\"","\"Auto\"","\"Custom\"","variants","nextOverrides","variant","overrides","transition","contextValue","fallbackRef","refBinding","defaultLayoutId","restProps","layoutDependency","scopingClassNames","layoutId","gestureHandlers","className","classNames","baseVariant","gestureVariant","u","\"exports\"","\"AbUN7WmJnToDisplayName\"","\"type\"","\"annotations\"","\"framerContractVersion\"","\"enumToDisplayNameFunctions\"","\"utils\"","\"default\"","\"name\"","\"framerCollectionId\"","\"framerSlug\"","\"framerData\"","\"framerCollectionUtils\"","\"framerAutoSizeImages\"","\"framerColorSyntax\"","\"framerEnumToDisplayNameUtils\"","\"framerRecordIdKey\"","\"__FramerMetadata__\"","\"PPDPp2_51ToDisplayName\"","isHovered","setIsHovered","innerClassName","Tag","tag","fontSizeStr","rawLineHeight","fontFamily","fontSizeNum","absoluteLineHeightPx","pxValue","absoluteLineHeightStr","yOffset","textTransform","wrapperStyle","spanVariants","baseDuration","staggerFactor","stagger","charIndex","reverse","delay","motionSpanStyle","iconVisible","copyVisible","linkPadding","link","variant1","cardPadding","N59rtww48","yx2a2t8nT","AlGm5pcqF","WzsE8XxEv","klUWsT3Rt","mknhGN1kS","HJi06y7Kh","Mp_VvpfoP","\"variant\"","rest","animated","AtYGEjJ6O","fill","xXK25e0o3","click","onTap1iomd2r","activeVariantCallback","setGestureState","EVdq85liR","isDisplayed","je5svDMh0","l_cb5b3fU","eKNXzRH5A","query","componentViewport","EVdq85liRr62e0i","setVariant","EVdq85liR1hsc8yh","EVdq85liR9z4lp8","mqS6tPQUV","collection","idlSpQdGlke","v9lQ7zU23lSpQdGlke","wHBqvefJulSpQdGlke","resolvedLinks","collection1","AbUN7WmJnx8FHrjL5Q","CNN_66BWJx8FHrjL5Q","idx8FHrjL5Q","wdlqZNHTPx8FHrjL5Q","YLPAr33BMx8FHrjL5Q","resolvedLinks1","activeLocale","resolvedLinks2","context","kMIDWDvEF","foreground","background","VIAmIN3lK","lFJotSPq6","accent","onTap1hxf5og","vXbntLEbe","SlzEJ7aXV","Q8hLfU8M0","bGFill","iconFill","onTap1wnr3g2","bIHpFToaX","iQIjS7eJG","z6_peNF_v","menu","logo","bIHpFToaXhusd1c","ijSSb3wts","t9hRlziHj","pdB3AVmAa","mAfscUSFG","ssG1BonXY","onTap3s5b5f","a_pmUkHL8","LI_fEXy9G","FT27jn3Y9","o7iF_ZOrI","NzdMRh5fL","cursor","borderColor","linkText","F4VKstm46","CRkqcbL2Z","LkIWwtCYk","bEO2J6l3S","O42oi8gzG","pD22xtyWP","jTrWnixsp","className$5","CNN_66BWJmLyVop5A2","FvNpjzgFtmLyVop5A2","idmLyVop5A2","iduLhWt0Ydc","v9lQ7zU23uLhWt0Ydc","wHBqvefJuuLhWt0Ydc","resolvedLinks3","resolvedLinks4","resolvedLinks5","resolvedLinks6","resolvedLinks7","resolvedLinks8","resolvedLinks9","\"gfGscdiJBToDisplayName\"","category","image","linkVisible","categoryColor","linkUnderlineColor","Opojs7YFR","hyWz5Kh5E","sgQnmvMym","GE8Y275UW","eZMZyfKcp","RyNC8ubyV","zH6wfal_e","LnbhwMt2n","WK2J3bAG0","i5qDcydTf","\"uOp22HLwKToDisplayName\"","\"S2SNwqR2SToDisplayName\""],"sources":["https:/framerusercontent.com/modules/RFM6zI5MxOiqwwNiQep4/2CcJhEanvh9oX5JHRkd8/send.js","https:/framerusercontent.com/modules/tfq8EDfrazNLXzc9LJte/hLcdFz4t8UjInDMvzq41/utils.js","https:/framerusercontent.com/modules/zvf2WTzc98u6EX2y7YDj/dsQTNWNk09IMnZEHMfzP/consent.js","https:/framerusercontent.com/modules/HKzIAGtbudIGLRAteuFH/Nhaar5CYKIbxxEaVvTJs/inEU.js","https:/framerusercontent.com/modules/0oeZpJVursioGAbwgB9e/atthcI0SmGvO4HAxG9e5/region.js","https:/framerusercontent.com/modules/EkwkxVF9vkTs720qqBC8/L9fJK0tucMOkjZFRszrm/Banner.js","https:/framerusercontent.com/modules/GbX8S6ghmyszcS2GLR2F/0rbDSfgig0pa1jgTUVPk/Cookies.js","https:/framerusercontent.com/modules/TDkARzmDOWBAhM45qCn0/ZtObCraX9NwmaDkndcmR/CENc_xTn7.js","https:/framerusercontent.com/modules/0S98ieSFri1jRXhiUfjj/tbqjR4Dv9nWqzK37x8Cj/WLOnYD1bn.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:/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/KebjuZb2nzGZkTGRmkN7/4MlS1Ard0fxAa9a9iilf/Fc0gBqpvF.js","https:/framerusercontent.com/modules/aAnQNgZvTO6wUi27jRI5/9zmauvp8QZrf0D8MWD3r/jrP0OSwKt-0.js","https:/framerusercontent.com/modules/aAnQNgZvTO6wUi27jRI5/9zmauvp8QZrf0D8MWD3r/jrP0OSwKt-1.js","https:/framerusercontent.com/modules/aAnQNgZvTO6wUi27jRI5/9zmauvp8QZrf0D8MWD3r/jrP0OSwKt.js","https:/framerusercontent.com/modules/VbgPh62TnLmdYg1BHLFV/rjvreXDuxqpQs3zEpaWc/Wq1Of9c3N-0.js","https:/framerusercontent.com/modules/VbgPh62TnLmdYg1BHLFV/rjvreXDuxqpQs3zEpaWc/Wq1Of9c3N-1.js","https:/framerusercontent.com/modules/VbgPh62TnLmdYg1BHLFV/rjvreXDuxqpQs3zEpaWc/Wq1Of9c3N.js","https:/framerusercontent.com/modules/FiiQ0BKlVUNzxXjo8hFs/BDeIULpeB9kBv3zq3U1w/RollingTextHover_Prod.js","https:/framerusercontent.com/modules/d4OrTvbUxmSKydkZk4PC/0d29tyBFbTz5g5km6nfT/Ky0OPWEEl.js","https:/framerusercontent.com/modules/RbK2xL5cdUS0huaXx44p/KMUHQmfPrUP6Dd9UVn9c/o1l9Fjloy.js","https:/framerusercontent.com/modules/4clKEIhErvp984Ab5qOg/dCnXcQagrQNZcjCCvTxW/xzZMWf8qZ.js","https:/framerusercontent.com/modules/C5aKNLEjGPcS3Ja1V4ze/gR9Czt88uB1Vpq4CQraB/QCLLYWdqj.js","https:/framerusercontent.com/modules/udR4LfpN4nKiHzD70fSi/5AKF6sNQeLZBqFcAtKIJ/i6Pug0076.js","https:/framerusercontent.com/modules/OlzMPpRfoMaEvxyIXt8W/BVbF9SFY83Uwq6uFkR7g/CCHsguXhJ.js","https:/framerusercontent.com/modules/GXhJCpP5rtWxGXh3Pp8l/Md1COZKSFD9oQnF1dfFo/WP6JC1W_F.js","https:/framerusercontent.com/modules/DcCp5h9Xs0BU26EVwXcS/A2LfXnsS5rzFUsiFORv9/lVoJoAxt3.js","https:/framerusercontent.com/modules/su1Wssh0eO95BkDxkzPR/q0pNyJNCMNo19ZU2jn8A/Sqpvu7_6L.js","https:/framerusercontent.com/modules/a2GV2o0SOmqqcXd4ZCa3/iNbwndProcHkPXWVPd7V/epFzzyj7O.js","https:/framerusercontent.com/modules/W1AUOi51apUJLLgodUAJ/tul3aMvJkyMdlrBdbjHW/F2Fk1w8O5.js","https:/framerusercontent.com/modules/ldOjEyfi6SSN818Ph8Qm/4yHtQu8AojQ0yflztjwr/UT2cMIxkY.js","https:/framerusercontent.com/modules/gYQTrNuLiXJFlVXsnLQP/37tEJSNKuCk7OauqOuby/fsjuxSFtF.js","https:/framerusercontent.com/modules/HySZtPl1d0FoCAeDv9Qz/wPDODTuegBoVULn3MD1t/xeRob8x4H.js","https:/framerusercontent.com/modules/HSmFh6rNkXvYEDY8qIkD/nvrxVrynoGOGEVzacEfi/TkPFXFW01.js","https:/framerusercontent.com/modules/SN8wyFf1ZNAM5hHzPBix/vTVFZ9hZfXyMVir0Gw4O/RSwi34hfZ.js","https:/framerusercontent.com/modules/55xdAxlvUTHBUQRIsaDq/v1Kn7xTnH06ZxcmS1Nx3/wHeZtCQqt.js","https:/framerusercontent.com/modules/cMMTNCXRBRS1aSmEZwub/CYdFoS5XoIIHWmJ9OZDj/MJ1a0PqaK.js","https:/framerusercontent.com/modules/GfCWoO6Y2yFtGw2gEEsF/UuGzPhmrANEqTvatAeAe/XfEDg_QyV-0.js","https:/framerusercontent.com/modules/GfCWoO6Y2yFtGw2gEEsF/UuGzPhmrANEqTvatAeAe/XfEDg_QyV-1.js","https:/framerusercontent.com/modules/GfCWoO6Y2yFtGw2gEEsF/UuGzPhmrANEqTvatAeAe/XfEDg_QyV.js","https:/framerusercontent.com/modules/Ey4odzL5LqoNudU1MOcD/74E8jT8MaYelAXXy0cpd/NeoxTEQgN.js","https:/framerusercontent.com/modules/58u5J8zNYd6tsJXfzrRF/PHfbIIn9hNvEdV7BEbQg/AydynzuSC-0.js","https:/framerusercontent.com/modules/58u5J8zNYd6tsJXfzrRF/PHfbIIn9hNvEdV7BEbQg/AydynzuSC-1.js","https:/framerusercontent.com/modules/58u5J8zNYd6tsJXfzrRF/PHfbIIn9hNvEdV7BEbQg/AydynzuSC.js"],"sourcesContent":["import{isBrowser}from\"framer-motion\";export const DEFAULT_DOMAIN=\"https://www.googletagmanager.com\";export const DEFAULT_SCRIPT_NAME=\"gtm.js\";/**\n * Function to get and set dataLayer\n * @param dataLayer - The dataLayer\n * @param dataLayerName - The dataLayer name\n */const getDataLayerSnippet=(dataLayer,dataLayerName=\"dataLayer\")=>`window['${dataLayerName}']=window['${dataLayerName}']||[];`+(dataLayer?`window['${dataLayerName}'].push(${JSON.stringify(dataLayer)});`:\"\")+`window['${dataLayerName}'].push({'gtm.start':new Date().getTime(),event:'gtm.js'})`;/**\n * Function to get the GTM script\n * @param dataLayerName - The name of the dataLayer\n * @param customDomain - Custom domain for gtm\n * @param customScriptName - Custom script file name for gtm\n * @param environment - The parameters to use a custom environment\n * @param id - The id of the container\n */const getGTMScript=(dataLayerName,id,environment,customDomain=DEFAULT_DOMAIN,customScriptName=DEFAULT_SCRIPT_NAME)=>{let params=\"\";if(environment){const{gtm_auth,gtm_preview}=environment;params=`&gtm_auth=${gtm_auth}&gtm_preview=${gtm_preview}&gtm_cookies_win=x`;}return`${customDomain}/${customScriptName}?id=${id}${dataLayerName===\"dataLayer\"?\"\":`&l=${dataLayerName}`}${params}`;};/**\n * Function to setup the Google Tag Manager\n * @param params - The snippets params\n */const setupGTM=params=>{const getDataLayerScript=()=>{const dataLayerScript=document.createElement(\"script\");if(params.nonce){dataLayerScript.setAttribute(\"nonce\",params.nonce);}dataLayerScript.innerHTML=getDataLayerSnippet(params.dataLayer,params.dataLayerName);return dataLayerScript;};const getScript=()=>{const script=document.createElement(\"script\");if(params.nonce){script.setAttribute(\"nonce\",params.nonce);}script.src=getGTMScript(params.dataLayerName,params.id,params.environment,params.customDomain,params.customScriptName);script.crossOrigin=\"anonymous\"// allows for more detailed INP collection\n;return script;};return{getDataLayerScript,getScript};};/**\n * Function to init the GTM\n * @param dataLayer - The dataLayer\n * @param dataLayerName - The dataLayer name\n * @param environment - Specify the custom environment to use\n * @param nonce - Server-generated nonce\n * @param id - The ID of the GTM\n */export const initGTM=({dataLayer,dataLayerName,environment,nonce,id,customDomain,customScriptName})=>{const gtm=setupGTM({dataLayer,dataLayerName,environment,nonce,id,customDomain,customScriptName});const dataLayerScript=gtm.getDataLayerScript();const script=gtm.getScript();document.head.append(dataLayerScript,script);};export function sendToGTM(){if(isBrowser){window[\"dataLayer\"]=window[\"dataLayer\"]||[];window[\"dataLayer\"].push(arguments);}}\nexport const __FramerMetadata__ = {\"exports\":{\"DEFAULT_DOMAIN\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"DEFAULT_SCRIPT_NAME\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"initGTM\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"sendToGTM\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./send.map","import{isBrowser}from\"framer-motion\";import{useLayoutEffect}from\"react\";export const DEFAULT_FONT_FAMILY=`\"Inter\", system-ui, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\"`;export function getFlexboxValues(position){const positionParts=position.split(\"-\");let justifyContent,alignItems;switch(positionParts[0]){case\"top\":alignItems=\"flex-start\";break;case\"bottom\":alignItems=\"flex-end\";break;case\"center\":alignItems=\"center\";break;default:alignItems=\"initial\";break;}switch(positionParts[1]){case\"left\":justifyContent=\"flex-start\";break;case\"right\":justifyContent=\"flex-end\";break;case\"center\":justifyContent=\"center\";break;default:justifyContent=\"initial\";break;}return{justifyContent,alignItems};}export function getMultipleShadows(...shadows){const output=[];shadows.forEach(shadow=>{return shadow&&output.push(shadow);});return output.join(\", \");}export function getShadow(shadow){if(shadow){return`${shadow.shadowX}px ${shadow.shadowY}px ${shadow.shadowBlur}px ${shadow.shadowColor}`;}else return null;}export function safeJSONParse(jsonString,onError){try{return JSON.parse(jsonString);}catch{if(onError)onError();}}export const getCookie=(name,cookies)=>{cookies=cookies?cookies:isBrowser?document.cookie:\"\";var _cookies_match;const[,,cookie]=(_cookies_match=cookies.match(`(^|;) ?${name}=([^;]*)(;|$)`))!==null&&_cookies_match!==void 0?_cookies_match:[null,null,null];return cookie;};/**\n * Yields to main thread before continuing execution, which might allow the browser to paint.\n * If `options.priority` is 'user-blocking', it will asynchronously resolve in older browsers.\n * @param {object} options - see https://github.com/WICG/scheduling-apis/blob/main/explainers/yield-and-continuation.md\n * @see interactionResponse for guaranteeing execution after a paint\n */export function yieldToMain(options){if(\"scheduler\"in window){if(\"yield\"in scheduler)return scheduler.yield(options);if(\"postTask\"in scheduler)return scheduler.postTask(()=>{},options);}if((options===null||options===void 0?void 0:options.priority)===\"user-blocking\"){// `setTimeout` could suffer from being delayed for longer: https://developer.chrome.com/blog/introducing-scheduler-yield-origin-trial#the_problem_with_current_yielding_strategies\n// so for browsers not supporting yield, we guarantee execution for high priority actions, but this does not create space for a paint opportunity as trade-off.\nreturn Promise.resolve();}return new Promise(resolve=>{setTimeout(resolve);});}/**\n * Helper function for `yieldToMain`, which yields before calling `fn`.\n * @see yieldToMain\n */export async function yieldBeforeCb(fn,options){await yieldToMain(options);return fn();}/**\n * Similar to `yieldToMain`, but also waits for the next animation frame before yielding (with a fallback of 100ms if the animation frame never fires).\n * Compared to `yieldToMain`, it guarantees improved INP, but might make processing a little slower. Use only if necessary.\n * @see yieldToMain\n */export function interactionResponse(options){return new Promise(resolve=>{setTimeout(resolve,200)// Fallback for the case where the animation frame never fires.\n;requestAnimationFrame(()=>{void yieldBeforeCb(resolve,options);});});}/**\n * Runs `fn` after the next paint. Similar to `useEffect`, but *guarantees* that the function is run after the next paint.\n * @important Does not support a cleanup fn.\n * @see https://thoughtspile.github.io/2021/11/15/unintentional-layout-effect/\n */export function useAfterPaintEffect(fn,deps,options){useLayoutEffect(()=>{const runAfterPaint=async()=>{await interactionResponse(options);fn();};void runAfterPaint();// eslint-disable-next-line react-hooks/exhaustive-deps -- deps are passed in\n},deps);}\nexport const __FramerMetadata__ = {\"exports\":{\"useAfterPaintEffect\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"getCookie\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"safeJSONParse\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"getFlexboxValues\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"yieldBeforeCb\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"getShadow\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"getMultipleShadows\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"FlexboxPosition\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"yieldToMain\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"interactionResponse\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"DEFAULT_FONT_FAMILY\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./utils.map","import{useIsOnFramerCanvas}from\"framer\";import{isBrowser}from\"framer-motion\";import{useEffect,useReducer,useState,startTransition}from\"react\";import{initGTM,sendToGTM}from\"https://framerusercontent.com/modules/RFM6zI5MxOiqwwNiQep4/2CcJhEanvh9oX5JHRkd8/send.js\";import{safeJSONParse,yieldBeforeCb}from\"https://framerusercontent.com/modules/tfq8EDfrazNLXzc9LJte/hLcdFz4t8UjInDMvzq41/utils.js\";function toGTMConsent(consent){return{functionality_storage:consent.necessary?\"granted\":\"denied\",security_storage:consent.necessary?\"granted\":\"denied\",ad_storage:consent.marketing?\"granted\":\"denied\",ad_user_data:consent.marketing?\"granted\":\"denied\",ad_personalization:consent.marketing?\"granted\":\"denied\",analytics_storage:consent.analytics?\"granted\":\"denied\",personalization_storage:consent.preferences?\"granted\":\"denied\"};}function fromGTMConsent(consent){return{necessary:consent.functionality_storage===\"granted\"&&consent.security_storage===\"granted\",marketing:consent.ad_storage===\"granted\"&&consent.ad_user_data===\"granted\"&&consent.ad_personalization===\"granted\",analytics:consent.analytics_storage===\"granted\",preferences:consent.personalization_storage===\"granted\"};}function reducer(state,action){switch(action.type){case\"autoAccept\":return{...state,sync:true,autoAccepted:true,modes:{analytics:true,marketing:true,necessary:true,preferences:true}};case\"acceptAll\":return{...state,sync:true,dismissed:true,modes:{analytics:true,marketing:true,necessary:true,preferences:true}};case\"rejectAll\":return{...state,sync:true,dismissed:true,modes:{analytics:false,marketing:false,necessary:false,preferences:false}};case\"acceptCurrent\":return{...state,dismissed:true,sync:true};case\"update\":return{...state,modes:{...state.modes,...action.modes},sync:action.sync};case\"toggle\":return{...state,modes:{...state.modes,[action.mode]:!state.modes[action.mode]}};case\"initFromLocalStorage\":return{...state,modes:action.modes,dismissed:action.dismissed,autoAccepted:action.autoAccepted,initializedFromLocalStorage:true,sync:true};case\"initFromGTM\":return{...state,modes:action.modes,initializedFromGTM:true};case\"dismiss\":return{...state,dismissed:true};case\"synced\":return{...state,sync:false,hasSynced:state.hasSynced||action.success};default:return state;}}const initialState={dismissed:false,autoAccepted:false,modes:null,sync:false,initializedFromLocalStorage:false,initializedFromGTM:false,hasSynced:false};export const defaultConsent={necessary:false,analytics:false,marketing:false,preferences:false};// Keep track of if GTM has been loaded as a script and default consent has been set,\n// to ensure the script does not keep appending between page switches.\nlet hasInitializedGTM=false;export function useConsent({gtmId,defaultConsent,gtmLoadedExternally=false,defaultsFromGTM=false}){const[state,dispatch]=useReducer(reducer,initialState);const isOnFramerCanvas=useIsOnFramerCanvas();const consentModeLocalStorageKey=\"framerCookiesConsentMode\";const dismissedLocalStorageKey=\"framerCookiesDismissed\";const autoAcceptedLocalStorageKey=\"framerCookiesAutoAccepted\";function getStateFromLocalStorage(){const consentFromLocalStorage=localStorage.getItem(consentModeLocalStorageKey);const dismissedFromLocalStorage=localStorage.getItem(dismissedLocalStorageKey);const autoAcceptedFromLocalStorage=localStorage.getItem(autoAcceptedLocalStorageKey);const isDismissed=dismissedFromLocalStorage!==null;const isAutoAccepted=autoAcceptedFromLocalStorage!==null;const hasConsentInLocalStorage=consentFromLocalStorage!==null;const consentInLocalStorageIsNotDefault=isDismissed||isAutoAccepted;const shouldLoadConsentFromLocalStorage=hasConsentInLocalStorage&&consentInLocalStorageIsNotDefault;dispatch({type:\"initFromLocalStorage\",dismissed:isDismissed,autoAccepted:isAutoAccepted,modes:shouldLoadConsentFromLocalStorage?safeJSONParse(consentFromLocalStorage,()=>localStorage.removeItem(consentModeLocalStorageKey)):defaultConsent});}function syncToGTM(){if(gtmId){if(!hasInitializedGTM&&!gtmLoadedExternally&&!defaultsFromGTM){// This is the first time we sync consent, so we save it as \"default\" and initialize tag manager.\n// This order is important, because we need to have set the default consent BEFORE we initialize\n// GTM. See https://developers.google.com/tag-platform/devguides/consent?tab=tag-manager&sjid=11348191096952324675-EU#implementation_example\n// It might seem weird that we're \"sending\" before initializing, but \"sending\" here means building up\n// the \"dataLayer\" object that GTM picks up when it initializes.\nsendToGTM(\"consent\",\"default\",toGTMConsent(state.modes));initGTM({dataLayer:undefined,dataLayerName:\"dataLayer\",environment:undefined,nonce:undefined,injectScript:true,id:gtmId});hasInitializedGTM=true;}else{hasInitializedGTM=true;sendToGTM(\"consent\",\"update\",toGTMConsent(state.modes));// must be sent like this or else GTM doesn't act on it(?)\n// Publically documented: https://www.framer.com/academy/lessons/cookie-banner-component#:~:text=Run%20a%20Tag%20After%20The%20Consent%20Update\nwindow.dataLayer.push({event:\"cookie_consent_update\"});}}}useEffect(()=>{if(isOnFramerCanvas)return;if(!defaultsFromGTM)return;if(defaultConsent===null)return;if(state.initializedFromGTM)return;if(state.modes!==null)return;// State was already set (from localStorage)\nyieldBeforeCb(()=>{dispatch({type:\"initFromGTM\",modes:defaultConsent});},{priority:\"user-blocking\"});},[defaultsFromGTM,defaultConsent,state.initializedFromGTM,state.modes]);useEffect(()=>{if(isOnFramerCanvas)return;yieldBeforeCb(()=>getStateFromLocalStorage(),{priority:\"user-blocking\"});},[]);// Anytime the dismissed value is updated, we need to persist it in local storage.\nuseEffect(()=>{if(isOnFramerCanvas)return;if(state.dismissed){localStorage.setItem(dismissedLocalStorageKey,\"true\");}},[state.dismissed]);// Anytime consent is auto accepted, we need to persist it in local storage.\nuseEffect(()=>{if(isOnFramerCanvas)return;if(state.autoAccepted){localStorage.setItem(autoAcceptedLocalStorageKey,\"true\");}},[state.autoAccepted]);// Sync data to dataLayer and localStorage.\nuseEffect(()=>{if(isOnFramerCanvas)return;if(!state.sync)return;const shouldSync=isBrowser&&state.modes!==null;yieldBeforeCb(()=>{if(!shouldSync){dispatch({type:\"synced\",success:false});return;}// else\nsyncToGTM();// Save locally\nlocalStorage.setItem(consentModeLocalStorageKey,JSON.stringify(state.modes));dispatch({type:\"synced\",success:true});},{priority:\"user-blocking\"});},[state.sync,state.modes]);function dismiss(){dispatch({type:\"dismiss\"});localStorage.setItem(dismissedLocalStorageKey,\"true\");}function autoAccept(){dispatch({type:\"autoAccept\"});}function acceptAll(){dispatch({type:\"acceptAll\"});}function rejectAll(){dispatch({type:\"rejectAll\"});}function acceptCurrent(){dispatch({type:\"acceptCurrent\"});}function toggleMode(mode){dispatch({type:\"toggle\",mode});}return{modes:state.modes,isInitialized:state.hasSynced||state.initializedFromGTM,isDismissed:state.dismissed,isAutoAccepted:state.autoAccepted,dismiss,autoAccept,acceptAll,rejectAll,acceptCurrent,toggleMode};}////////////////////////////////////////////////////////////////////////////////\nconst PROMISE_NAME=\"__framer_cookieBannerDefaultConsentPromise\";// NOTE: Error can be ignored, because of `isBrowser`\nconst gtmSetsDefaultConsent=isBrowser&&!!window[PROMISE_NAME];export function useGTMDefaultConsent(){const[consent,setConsent]=useState(null);useEffect(()=>{if(!gtmSetsDefaultConsent)return;window[PROMISE_NAME].then(result=>{startTransition(()=>{setConsent(result);});});},[]);// Simplified region to use for the cookie banner\nlet region;if(consent){region=Object.values(consent).every(v=>v===\"granted\")?\"World\":\"EU\";}return{available:gtmSetsDefaultConsent,consent:consent?fromGTMConsent(consent):null,region};}\nexport const __FramerMetadata__ = {\"exports\":{\"ConsentModeName\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useGTMDefaultConsent\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"ConsentModes\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useConsent\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"defaultConsent\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./consent.map","// Check if visitor is in EU\nconst countries=[\"BE\",\"EL\",\"LT\",\"PT\",\"BG\",\"ES\",\"LU\",\"RO\",\"CZ\",\"FR\",\"RE\",\"GP\",\"MQ\",\"GF\",\"YT\",\"BL\",\"MF\",\"PM\",\"WF\",\"PF\",\"NC\",\"HU\",\"SI\",\"DK\",\"FO\",\"GL\",\"HR\",\"MT\",\"SK\",\"DE\",\"IT\",\"NL\",\"AW\",\"CW\",\"SX\",\"FI\",\"AX\",\"EE\",\"CY\",\"AT\",\"SE\",\"IE\",\"LV\",\"PL\",\"UK\",\"GB\",\"AI\",\"BM\",\"IO\",\"VG\",\"KY\",\"FK\",\"GI\",\"MS\",\"PN\",\"SH\",\"TC\",\"GG\",\"JE\",\"IM\"];const isInEUTimezone=()=>{return Intl?.DateTimeFormat()?.resolvedOptions()?.timeZone?.startsWith(\"Europe\");};const isEULocale=()=>{const locale=navigator.language??navigator.languages?.[0];return countries.some(country=>locale?.toUpperCase()?.includes(country));};let _inEU=null;export const inEU=()=>{if(_inEU===null)_inEU=isInEUTimezone()||isEULocale();return _inEU;};\nexport const __FramerMetadata__ = {\"exports\":{\"inEU\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./inEU.map","import{isBrowser}from\"framer-motion\";import{inEU}from\"https://framerusercontent.com/modules/HKzIAGtbudIGLRAteuFH/Nhaar5CYKIbxxEaVvTJs/inEU.js\";export function useRegion({content,useRegionFromProps,skipEUCheck,regionFromGTM}){const isInEUBasedOnLocation=isBrowser&&!skipEUCheck&&!regionFromGTM?inEU():false;const regionBasedOnLocation=isInEUBasedOnLocation?\"EU\":\"World\";const regionFromProps=content.isEU?\"EU\":\"World\";const regionContent={EU:{title:content.euTitle,description:content.euDescription,type:content.euType,defaults:content.euDefaults,policy:content.euPolicy,blocking:content.euBlocking,showReject:content.euType===\"advanced\"?content.euShowReject:true},World:{title:content.worldTitle,description:content.worldDescription,type:content.worldType,defaults:content.worldDefaults,policy:content.worldPolicy,blocking:content.worldBlocking,showReject:content.worldType===\"advanced\"?content.worldShowReject:true}};return regionContent[regionFromGTM?regionFromGTM:useRegionFromProps?regionFromProps:regionBasedOnLocation];}\nexport const __FramerMetadata__ = {\"exports\":{\"RegionContent\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"RegionType\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useRegion\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./region.map","import{jsx as _jsx,jsxs as _jsxs,Fragment as _Fragment}from\"react/jsx-runtime\";import{useState,lazy,Suspense}from\"react\";import{withCSS}from\"framer\";import{AnimatePresence,motion}from\"framer-motion\";import{DEFAULT_FONT_FAMILY,getMultipleShadows,getShadow}from\"https://framerusercontent.com/modules/tfq8EDfrazNLXzc9LJte/hLcdFz4t8UjInDMvzq41/utils.js\";const SPACING=20;// if you update the Toggle component inside this project, copy the new URL to here:\nconst Toggle=/*#__PURE__*/lazy(()=>import(\"https://framerusercontent.com/modules/QDCSmi7dYWSK5AcRSFyX/sBWK1WbcsjrFOSoIzxuJ/Blf0sjosZ.js\"));export const Banner=withCSS(function Banner({banner,button,region,options,previewOptions,consentModes,onDismiss,onAcceptAll,onRejectAll,onAcceptCurrent,onToggleConsent,animateOnMount}){const maxHeightReduction=banner.insetPerSide?banner.insetTop+banner.insetBottom:banner.inset*2;const linkColor=banner.style.link||button.primary.fill;const paddingValue=banner.paddingPerSide?`${banner.paddingTop}px ${banner.paddingRight}px ${banner.paddingBottom}px ${banner.paddingLeft}px`:`${banner.padding}px`;const bannerShadow=getShadow(banner.style.shadow);const borderShadow=banner.style.border?.width?`inset 0 0 0 ${banner.style.border.width}px ${banner.style.border.color}`:null;const bannerStyle={background:banner.style.fill,boxShadow:getMultipleShadows(bannerShadow,borderShadow),overflow:\"hidden\",borderRadius:banner.style.border.radius};return /*#__PURE__*/_jsx(motion.div,{initial:animateOnMount&&{x:banner.animation.x,y:banner.animation.y,scale:banner.animation.scale,opacity:0},animate:{y:0,x:0,scale:1,opacity:1},exit:{x:banner.animation.x,y:banner.animation.y,scale:banner.animation.scale,opacity:0},transition:animateOnMount?banner.animation.transition:{duration:0},style:{fontFamily:DEFAULT_FONT_FAMILY,maxHeight:`calc(100vh - ${maxHeightReduction}px)`,flexDirection:\"column\",gap:12,position:\"relative\",display:\"flex\",zIndex:100,pointerEvents:\"auto\"},children:/*#__PURE__*/_jsx(\"div\",{style:{...bannerStyle,overflow:\"scroll\",width:\"100%\",maxWidth:banner.width},className:`--framer-cookie-banner-container --framer-cookie-banner-type-${region.type}`,children:region.type===\"simple\"?/*#__PURE__*/_jsx(SimpleBanner,{banner:banner,button:button,linkColor:linkColor,description:region.description,policy:region.policy,onDismiss:onDismiss}):region.type===\"medium\"?/*#__PURE__*/_jsx(AcceptRejectBanner,{banner:banner,button:button,linkColor:linkColor,title:region.title,description:region.description,policy:region.policy,onAccept:onAcceptAll,onReject:onRejectAll}):/*#__PURE__*/_jsx(OptionsBanner,{banner:banner,button:button,options:options,previewOptions:previewOptions,linkColor:linkColor,title:region.title,description:region.description,showReject:region.showReject,policy:region.policy,onOptionToggle:onToggleConsent,consent:consentModes,onAcceptAll:onAcceptAll,onRejectAll:onRejectAll,onAcceptCurrent:onAcceptCurrent})})});},[`.--framer-cookie-banner-container::-webkit-scrollbar { display: none; }`,`.--framer-cookie-banner-container { \n            -ms-overflow-style: none; \n            scrollbar-width: none;  \n        }`],\"framer-lib-cookie-banner\");function SimpleBanner({banner,button,description,policy,onDismiss,linkColor}){const padding=banner.paddingPerSide?`${banner.paddingTop}px ${banner.paddingRight}px ${banner.paddingBottom}px ${banner.paddingLeft}px`:`${banner.padding}px`;return /*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",flexDirection:\"row\",padding,gap:SPACING},children:[/*#__PURE__*/_jsx(Description,{style:{...banner.style.fontBody,flex:1,alignItems:\"center\",color:banner.style.colorBody},linkColor:linkColor,description:description,policy:policy}),/*#__PURE__*/_jsx(motion.div,{style:{display:\"flex\",justifyContent:\"center\",alignItems:\"center\"},children:/*#__PURE__*/_jsx(Button,{onClick:onDismiss,settings:{...button,fluid:false},id:\"dismiss\",children:button.labels.confirm})})]});}function AcceptRejectBanner({banner,button,title,linkColor,description,policy,onAccept,onReject}){const padding=banner.paddingPerSide?`${banner.paddingTop}px ${banner.paddingRight}px ${banner.paddingBottom}px ${banner.paddingLeft}px`:`${banner.padding}px`;return /*#__PURE__*/_jsxs(\"div\",{style:{padding},children:[/*#__PURE__*/_jsxs(\"div\",{children:[title&&/*#__PURE__*/_jsx(Headline,{style:{...banner.style.fontTitle,color:banner.style.colorTitle},children:title}),/*#__PURE__*/_jsx(Description,{style:{...banner.style.fontBody,color:banner.style.colorBody},linkColor:linkColor,description:description,policy:policy})]}),/*#__PURE__*/_jsxs(Buttons,{direction:button.direction,children:[/*#__PURE__*/_jsx(Button,{settings:button,onClick:onReject,id:\"reject\",children:button.labels.reject}),/*#__PURE__*/_jsx(Button,{settings:button,primary:true,onClick:onAccept,id:\"accept\",children:button.labels.accept})]})]});}function OptionsBanner({banner,button,options,previewOptions,title,description,policy,showReject=true,linkColor,consent,onAcceptCurrent,onAcceptAll,onRejectAll,onOptionToggle}){const[showOptions,setShowOptions]=useState(false);const optionTheme={...options.style,color:banner.style.colorBody};const padding=banner.paddingPerSide?`${banner.paddingTop}px ${banner.paddingRight}px ${banner.paddingBottom}px ${banner.paddingLeft}px`:`${banner.padding}px`;// const optionNames = consent && Object.keys(consent)\nconst optionNames=[\"necessary\",\"preferences\",\"analytics\",\"marketing\"];const shouldShowOptions=showOptions||previewOptions;return /*#__PURE__*/_jsxs(\"div\",{style:{padding},children:[/*#__PURE__*/_jsxs(\"div\",{children:[title&&/*#__PURE__*/_jsx(Headline,{style:{...banner.style.fontTitle,color:banner.style.colorTitle},children:title}),/*#__PURE__*/_jsx(Description,{style:{...banner.style.fontBody,color:banner.style.colorBody},linkColor:linkColor,description:description,policy:policy}),/*#__PURE__*/_jsx(AnimatePresence,{children:shouldShowOptions&&/*#__PURE__*/_jsx(motion.div,{initial:previewOptions?null:{opacity:0,height:0},animate:{opacity:1,height:\"auto\"},exit:{opacity:0,height:0},style:{display:\"flex\",flexDirection:\"column\",gap:10,marginTop:SPACING,overflow:\"hidden\"},children:optionNames&&optionNames.map(option=>/*#__PURE__*/_jsx(Option,{title:options[option].title,description:options[option].description,titleColor:banner.style.colorTitle,descriptionColor:banner.style.colorBody,showDescription:options.descriptions,enabled:consent[option],onClick:()=>onOptionToggle(option),theme:optionTheme,optional:option===\"necessary\"?options[option].optional:true}))},\"modal\")})]}),/*#__PURE__*/_jsx(Buttons,{direction:button.direction,children:shouldShowOptions?/*#__PURE__*/_jsx(Button,{settings:button,primary:true,onClick:onAcceptCurrent,id:\"accept\",children:button.labels.save}):/*#__PURE__*/_jsxs(_Fragment,{children:[showReject&&/*#__PURE__*/_jsx(Button,{settings:button,onClick:onRejectAll,id:\"reject\",children:button.labels.rejectAll}),/*#__PURE__*/_jsx(Button,{settings:button,onClick:()=>{setShowOptions(true);},id:\"customize\",children:button.labels.customize}),/*#__PURE__*/_jsx(Button,{settings:button,primary:true,onClick:onAcceptAll,id:\"accept\",children:button.labels.acceptAll})]})})]});}function Option({title,titleColor,description,descriptionColor,showDescription,enabled,optional,onClick,theme}){const paddingValue=theme.paddingPerSide?`${theme.paddingTop}px ${theme.paddingRight}px ${theme.paddingBottom}px ${theme.paddingLeft}px`:`${theme.padding}px`;const borderShadow=theme.border?`inset 0 0 0 ${theme.border.width}px ${theme.border.color}`:null;return /*#__PURE__*/_jsxs(motion.div,{style:{boxShadow:borderShadow,background:theme.background,borderRadius:theme.border.radius,padding:paddingValue,cursor:\"pointer\",userSelect:\"none\",pointerEvents:\"all\"},onClick:onClick,whileHover:{opacity:.5},children:[/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",justifyContent:\"space-between\"},children:[/*#__PURE__*/_jsx(\"p\",{style:{margin:0,fontWeight:600,fontSize:12,color:titleColor,...theme.fontTitle},children:title}),optional?/*#__PURE__*/_jsx(Suspense,{children:/*#__PURE__*/_jsx(Toggle,{variant:enabled?\"On\":\"Off\",background:theme.toggleColor,backgroundInactive:theme.toggleColorInactive,ariaLabel:`Toggle for ${title}`})}):/*#__PURE__*/_jsx(\"p\",{style:{margin:0,fontSize:12,color:theme.toggleColor,...theme.fontTitle,fontWeight:400},children:\"Always active\"})]}),description&&/*#__PURE__*/_jsx(\"p\",{style:{margin:0,marginTop:10,fontSize:12,lineHeight:1.5,color:descriptionColor,...theme.fontBody},children:description})]});}function Headline({children,style}){return /*#__PURE__*/_jsx(\"p\",{style:{fontSize:14,margin:\"0px 0px 10px 0px\",fontWeight:\"bold\",padding:0,...style},children:children});}function Description({style,description,policy,linkColor}){const shouldShow=description||policy?.link;if(!shouldShow)return null;if(!description){return /*#__PURE__*/_jsx(DescriptionParagraph,{policy:policy,style:style,linkColor:linkColor});}// @ivan: Support rendering the description in multiple paragraphs.\n// This is a site speed optimization: it allows to split a single\n// huge <p> into several smaller ones, which prevents the huge <p>\n// from becoming an LCP element.\nconst descriptionParagraphs=description?.split(\"\\n\\n\");return description.split(\"\\n\\n\").map((line,index)=>/*#__PURE__*/_jsx(DescriptionParagraph,{line:line,// Only render the policy in the last paragraph\n    policy:index===descriptionParagraphs.length-1?policy:null,style:{// Add a spacing between paragraphs\n    marginTop:index>0?4:0,...style},linkColor:linkColor},index));}function DescriptionParagraph({line,policy,style,linkColor}){return /*#__PURE__*/_jsxs(\"p\",{style:{lineHeight:1.5,margin:0,padding:0,fontSize:14,...style},children:[line,line&&policy?.link?\" \":null,policy?.link&&/*#__PURE__*/_jsxs(\"span\",{children:[policy?.prefix,\" \",/*#__PURE__*/_jsx(\"a\",{href:policy?.link,target:\"_blank\",style:{color:linkColor,textDecoration:\"none\"},children:policy?.label}),\".\"]})]});}function Buttons({children,direction}){return /*#__PURE__*/_jsx(\"div\",{style:{display:\"flex\",flexDirection:direction,gap:10,marginTop:16},children:children});}const Button=withCSS(function Button({id,children,primary,settings,onClick}){const paddingValue=settings.paddingPerSide?`${settings.paddingTop}px ${settings.paddingRight}px ${settings.paddingBottom}px ${settings.paddingLeft}px`:`${settings.padding}px`;const theme=primary?settings.primary:settings.secondary;return /*#__PURE__*/_jsx(motion.input,{className:\"__framer-cookie-component-button\",id:`__framer-cookie-component-button-${id}`,onClick:onClick,type:\"button\",value:`${children}`,whileHover:{opacity:settings.hoverOpacity??.6},whileTap:{opacity:settings.tapOpacity??.4},style:{WebkitAppearance:\"none\",appearance:\"none\",width:settings.fluid?\"100%\":\"auto\",height:\"auto\",border:\"none\",padding:paddingValue,borderRadius:settings.borderRadius,boxShadow:getShadow(theme.shadow),background:theme.fill,color:theme.color,fontSize:14,lineHeight:1,cursor:\"pointer\",fontWeight:settings.font?\"unset\":600,...settings.font}});},\".__framer-cookie-component-button:focus:not(:focus-visible){outline-color:transparent}\");\nexport const __FramerMetadata__ = {\"exports\":{\"Banner\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"BannerComponentProps\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./Banner.map","import{jsx as _jsx,jsxs as _jsxs,Fragment as _Fragment}from\"react/jsx-runtime\";import{addPropertyControls,ControlType,useIsOnFramerCanvas,withCSS}from\"framer\";import{AnimatePresence,isBrowser,motion}from\"framer-motion\";import{lazy,Suspense,useEffect,useState}from\"react\";import{createPortal}from\"react-dom\";import{defaultConsent,useConsent,useGTMDefaultConsent}from\"https://framerusercontent.com/modules/zvf2WTzc98u6EX2y7YDj/dsQTNWNk09IMnZEHMfzP/consent.js\";import{useRegion}from\"https://framerusercontent.com/modules/0oeZpJVursioGAbwgB9e/atthcI0SmGvO4HAxG9e5/region.js\";import{Banner}from\"https://framerusercontent.com/modules/EkwkxVF9vkTs720qqBC8/L9fJK0tucMOkjZFRszrm/Banner.js\";import{inEU}from\"https://framerusercontent.com/modules/HKzIAGtbudIGLRAteuFH/Nhaar5CYKIbxxEaVvTJs/inEU.js\";import{DEFAULT_FONT_FAMILY,getFlexboxValues,interactionResponse,yieldBeforeCb}from\"https://framerusercontent.com/modules/tfq8EDfrazNLXzc9LJte/hLcdFz4t8UjInDMvzq41/utils.js\";// Keep track of open state between page reloads\nlet initiallyOpen=false;/**\n * COOKIE BANNER\n * By Floris Verloop\n *\n * @framerSupportedLayoutWidth auto\n * @framerSupportedLayoutHeight auto\n *\n * @framerDisableUnlink\n *\n */export default function CookieBanner({gtmId,preview,trigger,banner,button,content,options,style,gtmLoadedExternally,onShown,onConsentChange,onAccept,onDismiss,onReject,onSavePreferences}){const isOnFramerCanvas=useIsOnFramerCanvas();const isPreview=preview&&isOnFramerCanvas;const skipLogic=!preview&&isOnFramerCanvas;const isInEU=isBrowser?inEU():false;const gtmDefaults=useGTMDefaultConsent();const region=useRegion({content,useRegionFromProps:isPreview,// skip EU check (expensive) if we are on the canvas and don't want a preview\nskipEUCheck:skipLogic,regionFromGTM:gtmDefaults.region});const consent=useConsent({gtmId,defaultConsent:gtmDefaults.available?gtmDefaults.consent:region.defaults,gtmLoadedExternally,defaultsFromGTM:gtmDefaults.available});const[isOpen,setIsOpen]=useState(initiallyOpen);// On page switch, disable all transitions so the banner shows up as fast as possible.\nconst[instantlyShowOnMount,setInstantlyShowOnMount]=useState(initiallyOpen);useEffect(()=>{if(skipLogic)return;// Save open state between page switches\ninitiallyOpen=isOpen;// Disable instantly show on mount after first open\nif(isOpen){setInstantlyShowOnMount(false);}// Track shown event\nif(isOpen&&!isPreview&&onShown){yieldBeforeCb(()=>onShown({isInEU}),{priority:\"user-blocking\"});}},[isOpen,skipLogic]);// Check if user should be prompted\nuseEffect(()=>{if(skipLogic)return;const noConsentGiven=consent.isInitialized&&!consent.isDismissed;const shouldAutoAccept=region.type===\"simple\"&&!consent.isAutoAccepted;if(noConsentGiven){performance.mark(\"framer-cookie-open\");setIsOpen(true);/** Automatically accept all cookies for simple banner. */if(shouldAutoAccept){consent.autoAccept();// Fire callback\nif(onAccept){yieldBeforeCb(()=>onAccept({isInEU}));}}}if(consent.isDismissed){setIsOpen(false);}},[consent.isInitialized,consent.isDismissed,skipLogic]);useEffect(()=>{if(skipLogic)return;if(onConsentChange){yieldBeforeCb(()=>onConsentChange({isInEU,consent:consent.modes}));}},[consent.modes,skipLogic]);async function handleDismiss(){await interactionResponse();consent.dismiss();setIsOpen(false);// Fire callback\nif(onDismiss){yieldBeforeCb(()=>onDismiss({isInEU}));}}async function handleAcceptAll(){await interactionResponse();consent.acceptAll();setIsOpen(false);// Fire callback\nif(onAccept){yieldBeforeCb(()=>onAccept({isInEU}));}}async function handleRejectAll(){await interactionResponse();consent.rejectAll();setIsOpen(false);// Fire callback\nif(onReject){yieldBeforeCb(()=>onReject({isInEU}));}}async function handleAcceptCurrent(){await interactionResponse();consent.acceptCurrent();setIsOpen(false);// Fire callbacks\nyieldBeforeCb(()=>{if(onAccept){onAccept({isInEU});}});yieldBeforeCb(()=>{if(onSavePreferences){onSavePreferences({isInEU});}});}if(isPreview){return /*#__PURE__*/_jsx(\"div\",{style:{...style,width:banner.width},children:/*#__PURE__*/_jsx(Banner,{banner:banner,button:button,region:region,options:options,previewOptions:isPreview&&options.preview,consentModes:{...defaultConsent,necessary:true},animateOnMount:false})});}return /*#__PURE__*/_jsxs(_Fragment,{children:[/*#__PURE__*/_jsx(Trigger,{style:style,trigger:trigger,onClick:()=>setIsOpen(true)}),!skipLogic&&/*#__PURE__*/_jsx(Overlay,{banner:banner,button:button,region:region,options:options,consentModes:consent.modes,animateOnMount:!instantlyShowOnMount,onAcceptAll:handleAcceptAll,onAcceptCurrent:handleAcceptCurrent,onRejectAll:handleRejectAll,onDismiss:handleDismiss,onToggleConsent:consent.toggleMode,isOpen:isOpen})]});}const IconCookie=/*#__PURE__*/lazy(()=>import(\"https://framerusercontent.com/modules/80EyUU0Nk6u7skW3IlHH/qKhU3oZiLDe4R0LcF3Tp/Icons.js\"));function Overlay(props){const insetValue=props.banner.insetPerSide?`${props.banner.insetTop}px ${props.banner.insetRight}px ${props.banner.insetBottom}px ${props.banner.insetLeft}px`:`${props.banner.inset}px`;const{justifyContent,alignItems}=getFlexboxValues(props.banner.position);const isOpen=props.isOpen;const[shouldRenderPortal,setShouldRenderPortal]=useState(isOpen);// if the portal has previously been rendered, we want to keep rendering the portal, which ensures:\n// - that AnimatePresence works (fade out effect)\n// - we don't cause body style recalc/reflow when the DOM node is removed\nif(!shouldRenderPortal&&isOpen)setShouldRenderPortal(isOpen);if(!shouldRenderPortal)return null;const blocking=props.region.blocking;return /*#__PURE__*/createPortal(/*#__PURE__*/_jsx(\"div\",{style:{display:\"contents\"},children:/*#__PURE__*/_jsx(AnimatePresence,{children:isOpen?/*#__PURE__*/_jsxs(motion.div,{style:{// We only need to span to the full viewport width if the overlay is blocking.\n// Otherwise, we optimize for a smaller layer size. see: https://framer-team.slack.com/archives/C05V49Q4NJ2/p1709820207863249\ntop:blocking||alignItems===\"flex-start\"?0:undefined,left:blocking||justifyContent===\"flex-start\"?0:undefined,right:blocking||justifyContent===\"flex-end\"?0:undefined,height:blocking?\"100%\":undefined,width:blocking||justifyContent===\"center\"?\"100%\":undefined,bottom:blocking||alignItems===\"flex-end\"?0:undefined,boxSizing:\"border-box\",position:\"fixed\",touchAction:\"none\",padding:insetValue,zIndex:props.banner.zIndex,display:\"flex\",flexDirection:\"row\",gap:20,justifyContent:\"center\",pointerEvents:blocking?\"all\":\"none\"},children:[blocking&&/*#__PURE__*/_jsx(Backdrop,{color:props.banner.style?.backdrop}),/*#__PURE__*/_jsx(\"div\",{style:{width:\"100%\",height:\"100%\",display:\"flex\",justifyContent,alignItems,pointerEvents:\"none\",maxWidth:props.banner.containerWidth>0?props.banner.containerWidth:\"unset\"},children:/*#__PURE__*/_jsx(Banner,{...props})})]}):null})}),document.body);}const Trigger=withCSS(({trigger,style,onClick})=>{const isOnFramerCanvas=useIsOnFramerCanvas();if(trigger.type!==\"none\"){return /*#__PURE__*/_jsx(\"button\",{className:\"__framer-cookie-component-button\",\"aria-label\":\"Cookie Trigger\",style:{width:\"100%\",height:\"100%\",background:\"none\",display:\"flex\",border:\"none\",padding:0,color:trigger.color,fontSize:16,cursor:\"pointer\",...trigger.textFont},onClick:onClick,children:trigger.type===\"icon\"?/*#__PURE__*/_jsx(_Fragment,{children:trigger.iconType===\"custom\"&&trigger.iconImage?/*#__PURE__*/_jsx(\"img\",{alt:\"icon entry point for Site Search\",src:trigger.iconImage.src,width:trigger.iconSize,height:trigger.iconSize}):/*#__PURE__*/_jsx(Suspense,{children:/*#__PURE__*/_jsx(IconCookie,{width:trigger.iconSize,height:trigger.iconSize,color:trigger.color})})}):/*#__PURE__*/_jsx(\"span\",{style:{whiteSpace:\"nowrap\"},children:trigger.text})});}if(isOnFramerCanvas){return /*#__PURE__*/_jsxs(\"div\",{style:{borderRadius:8,color:\"#09F\",border:\"1px dashed #09F\",background:\"rgba(0, 153, 255, 0.1)\",padding:20,display:\"flex\",flexDirection:\"column\",gap:5,fontFamily:DEFAULT_FONT_FAMILY,textAlign:\"center\",justifyContent:\"center\",width:164,...style},children:[/*#__PURE__*/_jsx(\"p\",{style:{fontSize:12,fontWeight:600,lineHeight:1,margin:0},children:\"Cookie Banner\"}),/*#__PURE__*/_jsx(\"p\",{style:{fontSize:12,lineHeight:1.5,margin:0},children:\"Put on a page to add a Cookie Banner.\"})]});}},\".__framer-cookie-component-button:focus:not(:focus-visible){outline-color:transparent}\",\"framer-lib-cookie-trigger\");function Backdrop({color}){return /*#__PURE__*/_jsx(motion.div,{initial:{opacity:0},animate:{opacity:1},exit:{opacity:0},style:{position:\"absolute\",top:0,left:0,right:0,bottom:0,width:\"100%\",height:\"100%\",backgroundColor:color,pointerEvents:\"none\"}});}addPropertyControls(CookieBanner,{gtmId:{title:\"GTM ID\",type:ControlType.String,placeholder:\"GTM-AAAAAAA\",description:\"Your GTM container ID.\\n[Learn more](https://www.framer.com/learn/cookie-banner/)\"},preview:{type:ControlType.Boolean,defaultValue:true,description:\"Lets you preview the banner on the Canvas.\"},trigger:{type:ControlType.Object,buttonTitle:\"Icon, Text\",controls:{type:{title:\"Type\",type:ControlType.Enum,options:[\"text\",\"icon\",\"none\"],optionTitles:[\"Text\",\"Icon\",\"None\"],defaultValue:\"text\",displaySegmentedControl:true},iconType:{title:\"Icon\",type:ControlType.Enum,options:[\"default\",\"custom\"],optionTitles:[\"Default\",\"Custom\"],displaySegmentedControl:true,hidden:props=>props.type!==\"icon\"},text:{title:\"Label\",type:ControlType.String,defaultValue:\"Cookie Settings\",hidden:props=>props.type!==\"text\"},textFont:{// @ts-ignore - internal\ntype:ControlType.Font,title:\" \",controls:\"extended\",hidden:props=>props.type!==\"text\"},iconSize:{title:\"Size\",type:ControlType.Number,displayStepper:true,defaultValue:24,hidden:props=>props.type!==\"icon\"},color:{title:\"Color\",type:ControlType.Color,defaultValue:\"#333\",hidden:props=>props.type===\"none\"||props.type===\"icon\"&&props.iconType===\"custom\"},iconImage:{title:\"File\",type:ControlType.ResponsiveImage,allowedFileTypes:[\"jpg\",\"png\",\"svg\"],hidden:props=>props.iconType===\"default\"}}},banner:{title:\"Banner\",type:ControlType.Object,buttonTitle:\"Font, Styles\",controls:{position:{type:ControlType.Enum,title:\"Position\",options:[\"top-left\",\"top-center\",\"top-right\",\"bottom-right\",\"bottom-center\",\"bottom-left\"],optionTitles:[\"Top Left\",\"Top Center\",\"Top Right\",\"Bottom Right\",\"Bottom Center\",\"Bottom Left\"],defaultValue:\"bottom-right\"},zIndex:{title:\"Z Index\",type:ControlType.Number,defaultValue:10,displayStepper:true,min:0,max:10},width:{title:\"Width\",type:ControlType.Number,defaultValue:360,min:200,max:1e3,displayStepper:true,step:5},containerWidth:{title:\"Wrapping\",type:ControlType.Number,defaultValue:0,min:0},padding:{title:\"Padding\",type:ControlType.FusedNumber,toggleKey:\"paddingPerSide\",toggleTitles:[\"Padding\",\"Padding per side\"],defaultValue:20,valueKeys:[\"paddingTop\",\"paddingRight\",\"paddingBottom\",\"paddingLeft\"],valueLabels:[\"T\",\"R\",\"B\",\"L\"],min:0},inset:{title:\"Inset\",type:ControlType.FusedNumber,toggleKey:\"insetPerSide\",toggleTitles:[\"Inset\",\"Inset per side\"],defaultValue:20,valueKeys:[\"insetTop\",\"insetRight\",\"insetBottom\",\"insetLeft\"],valueLabels:[\"T\",\"R\",\"B\",\"L\"],min:0},style:{type:ControlType.Object,title:\"Style\",buttonTitle:\"Fonts, Colors, Shadow\",controls:{fontTitle:{// @ts-ignore - internal\ntype:ControlType.Font,title:\"Title\",controls:\"extended\"},colorTitle:{title:\" \",type:ControlType.Color,defaultValue:\"#000\"},fontBody:{// @ts-ignore - internal\ntype:ControlType.Font,title:\"Body\",controls:\"extended\"},colorBody:{title:\" \",type:ControlType.Color,defaultValue:\"#444\"},fill:{title:\"Fill\",type:ControlType.Color,defaultValue:\"#FFF\"},link:{title:\"Link\",type:ControlType.Color,optional:true,defaultValue:\"#999\"},border:{type:ControlType.Object,title:\"Border\",buttonTitle:\"Radius, Width\",controls:{radius:{title:\"Radius\",type:ControlType.Number,displayStepper:true,min:0,defaultValue:14},width:{title:\"Width\",type:ControlType.Number,displayStepper:true,min:0,defaultValue:1},color:{title:\"Color\",type:ControlType.Color,defaultValue:\"rgba(0,0,0,0.05)\"}}},shadow:{type:ControlType.Object,title:\"Shadow\",optional:true,controls:{shadowColor:{title:\"Color\",type:ControlType.Color,defaultValue:\"rgba(0,0,0,0.25)\"},shadowX:{title:\"X\",type:ControlType.Number,min:-100,max:100,defaultValue:0},shadowY:{title:\"Y\",type:ControlType.Number,min:-100,max:100,defaultValue:2},shadowBlur:{title:\"Blur\",type:ControlType.Number,min:0,max:100,defaultValue:4}}},backdrop:{title:\"Backdrop\",type:ControlType.Color,defaultValue:\"rgba(0,0,0,0.1)\",hidden:(_,props)=>!props.content.euBlocking&&!props.content.worldBlocking}}},animation:{icon:\"effect\",buttonTitle:\"Options\",type:ControlType.Object,controls:{x:{type:ControlType.Number,displayStepper:true,defaultValue:0},y:{type:ControlType.Number,displayStepper:true,defaultValue:10},scale:{type:ControlType.Number,min:0,step:.1,defaultValue:1},transition:{type:ControlType.Transition}}}}},button:{title:\"Buttons\",type:ControlType.Object,buttonTitle:\"Variants, Style\",controls:{primary:{title:\"Primary\",type:ControlType.Object,buttonTitle:\"Colors, Shadow\",controls:{fill:{title:\"Fill\",type:ControlType.Color,defaultValue:\"#000\"},color:{title:\"Color\",type:ControlType.Color,defaultValue:\"#FFF\"},shadow:{type:ControlType.Object,title:\"Shadow\",optional:true,controls:{shadowColor:{title:\"Color\",type:ControlType.Color,defaultValue:\"rgba(0,0,0,0.25)\"},shadowX:{title:\"X\",type:ControlType.Number,min:-100,max:100},shadowY:{title:\"Y\",type:ControlType.Number,min:-100,max:100},shadowBlur:{title:\"Blur\",type:ControlType.Number,min:0,max:100}}}}},secondary:{title:\"Secondary\",type:ControlType.Object,buttonTitle:\"Colors, Shadow\",controls:{fill:{title:\"Fill\",type:ControlType.Color,defaultValue:\"#EEE\"},color:{title:\"Color\",type:ControlType.Color,defaultValue:\"#444\"},shadow:{type:ControlType.Object,title:\"Shadow\",optional:true,controls:{shadowColor:{title:\"Color\",type:ControlType.Color,defaultValue:\"rgba(0,0,0,0.25)\"},shadowX:{title:\"X\",type:ControlType.Number,min:-100,max:100},shadowY:{title:\"Y\",type:ControlType.Number,min:-100,max:100},shadowBlur:{title:\"Blur\",type:ControlType.Number,min:0,max:100}}}}},labels:{type:ControlType.Object,controls:{accept:{type:ControlType.String,defaultValue:\"Accept\"},reject:{type:ControlType.String,defaultValue:\"Reject\"},acceptAll:{type:ControlType.String,defaultValue:\"Accept all\"},rejectAll:{type:ControlType.String,defaultValue:\"Reject all\"},customize:{type:ControlType.String,defaultValue:\"Customize\"},save:{type:ControlType.String,defaultValue:\"Save Preferences\"},confirm:{type:ControlType.String,defaultValue:\"Okay\"}}},font:{// @ts-ignore - internal\ntype:ControlType.Font,title:\"Font\",controls:\"extended\"},padding:{title:\"Padding\",type:ControlType.FusedNumber,toggleKey:\"paddingPerSide\",toggleTitles:[\"Padding\",\"Padding per side\"],defaultValue:10,valueKeys:[\"paddingTop\",\"paddingRight\",\"paddingBottom\",\"paddingLeft\"],valueLabels:[\"T\",\"R\",\"B\",\"L\"],min:0},borderRadius:{title:\"Radius\",type:ControlType.Number,displayStepper:true,min:0,defaultValue:8},tapOpacity:{title:\"Tap Opacity\",type:ControlType.Number,step:.1,displayStepper:true,max:1,min:0,defaultValue:.4},hoverOpacity:{title:\"Hover Opacity\",type:ControlType.Number,step:.1,displayStepper:true,max:1,min:0,defaultValue:.6},direction:{type:ControlType.Enum,title:\"Direction\",options:[\"row\",\"column\"],// @ts-ignore - internal\noptionIcons:[\"direction-horizontal\",\"direction-vertical\"],defaultValue:\"row\",displaySegmentedControl:true},fluid:{title:\"Fluid\",type:ControlType.Boolean,defaultValue:true}}},content:{title:\"Regions\",type:ControlType.Object,buttonTitle:\"World, EU\",controls:{isEU:{title:\" \",type:ControlType.Boolean,defaultValue:true,enabledTitle:\"EU\",disabledTitle:\"World\"},euType:{title:\"Choices\",type:ControlType.Enum,options:[\"simple\",\"medium\",\"advanced\"],optionTitles:[\"None\",\"Accept/Reject\",\"Customizable\"],defaultValue:\"medium\",hidden:props=>!props.isEU},euTitle:{title:\"Title\",type:ControlType.String,defaultValue:\"Cookie Settings\",hidden:props=>props.euType===\"simple\"||!props.isEU},euDescription:{title:\"Description\",type:ControlType.String,defaultValue:\"We use cookies to enhance your experience, analyze site traffic and deliver personalized content.\",displayTextArea:true,hidden:props=>!props.isEU},euPolicy:{title:\"Policy\",type:ControlType.Object,buttonTitle:\"Link, Prefix\",controls:{link:{title:\"Link\",type:ControlType.Link,defaultValue:\"https://www.framer.com/legal/policy/\"},prefix:{title:\"Prefix\",type:ControlType.String,defaultValue:\"Read our\"},label:{title:\"Label\",type:ControlType.String,defaultValue:\"Cookie Policy\"}},hidden:props=>!props.isEU},euDefaults:{title:\"Defaults\",buttonTitle:\"Options\",type:ControlType.Object,controls:{necessary:{type:ControlType.Boolean,enabledTitle:\"Granted\",disabledTitle:\"Denied\",defaultValue:true},preferences:{type:ControlType.Boolean,enabledTitle:\"Granted\",disabledTitle:\"Denied\",defaultValue:false},analytics:{type:ControlType.Boolean,enabledTitle:\"Granted\",disabledTitle:\"Denied\",defaultValue:false},marketing:{type:ControlType.Boolean,enabledTitle:\"Granted\",disabledTitle:\"Denied\",defaultValue:false,description:\"The default consent when the user hasn’t provided any yet.\"}},hidden:props=>!props.isEU},euShowReject:{title:\"Reject All\",type:ControlType.Boolean,defaultValue:true,enabledTitle:\"Show\",disabledTitle:\"Hide\",hidden:props=>props.euType!==\"advanced\"},euBlocking:{title:\"Blocking\",type:ControlType.Boolean,defaultValue:false,description:\"Renders a content blocking backdrop.\",hidden:props=>!props.isEU},worldType:{title:\"Choices\",type:ControlType.Enum,options:[\"simple\",\"medium\",\"advanced\"],optionTitles:[\"None\",\"Accept/Reject\",\"Customizable\"],defaultValue:\"simple\",hidden:props=>props.isEU},worldTitle:{title:\"Title\",type:ControlType.String,defaultValue:\"Cookie Settings\",hidden:props=>props.worldType===\"simple\"||props.isEU},worldDescription:{title:\"Description\",type:ControlType.String,defaultValue:\"We use cookies to personalize content, run ads, and analyze traffic.\",displayTextArea:true,hidden:props=>props.isEU},worldPolicy:{title:\"Policy\",type:ControlType.Object,buttonTitle:\"Link, Prefix\",controls:{link:{title:\"Link\",type:ControlType.Link},prefix:{title:\"Prefix\",type:ControlType.String,defaultValue:\"Read our\"},label:{title:\"Label\",type:ControlType.String,defaultValue:\"Cookie Policy\"}},hidden:props=>props.isEU},worldDefaults:{title:\"Defaults\",buttonTitle:\"Options\",type:ControlType.Object,controls:{necessary:{type:ControlType.Boolean,enabledTitle:\"Granted\",disabledTitle:\"Denied\",defaultValue:true},preferences:{type:ControlType.Boolean,enabledTitle:\"Granted\",disabledTitle:\"Denied\",defaultValue:true},analytics:{type:ControlType.Boolean,enabledTitle:\"Granted\",disabledTitle:\"Denied\",defaultValue:true},marketing:{type:ControlType.Boolean,enabledTitle:\"Granted\",disabledTitle:\"Denied\",defaultValue:true,description:\"The default consent when the user hasn’t provided any yet.\"}},hidden:props=>props.isEU},worldShowReject:{title:\"Reject All\",type:ControlType.Boolean,defaultValue:true,enabledTitle:\"Show\",disabledTitle:\"Hide\",hidden:props=>props.worldType!==\"advanced\"},worldBlocking:{title:\"Blocking\",type:ControlType.Boolean,defaultValue:false,description:\"Renders a content blocking backdrop.\",hidden:props=>props.isEU}}},options:{type:ControlType.Object,buttonTitle:\"Content, Styles\",hidden:(_,props)=>props.content.euType!==\"advanced\"&&props.content.worldType!==\"advanced\",controls:{preview:{type:ControlType.Boolean,defaultValue:false,description:\"Open when previewing banner on the canvas.\",hidden:(_,props)=>!props.preview},necessary:{title:\"Necessary\",type:ControlType.Object,buttonTitle:\"Content\",controls:{title:{title:\"Title\",type:ControlType.String,defaultValue:\"Necessary\"},description:{title:\"Description\",type:ControlType.String,defaultValue:\"Enables security and basic functionality.\",displayTextArea:true},optional:{title:\"Optional\",type:ControlType.Boolean,defaultValue:true}}},preferences:{title:\"Preferences\",type:ControlType.Object,buttonTitle:\"Content\",controls:{title:{title:\"Title\",type:ControlType.String,defaultValue:\"Preferences\"},description:{title:\"Description\",type:ControlType.String,defaultValue:\"Enables personalized content and settings.\",displayTextArea:true,optional:true}}},analytics:{title:\"Analytics\",type:ControlType.Object,buttonTitle:\"Content\",controls:{title:{title:\"Title\",type:ControlType.String,defaultValue:\"Analytics\"},description:{title:\"Description\",type:ControlType.String,defaultValue:\"Enables tracking of performance.\",displayTextArea:true}}},marketing:{title:\"Marketing\",type:ControlType.Object,buttonTitle:\"Content\",controls:{title:{title:\"Title\",type:ControlType.String,defaultValue:\"Marketing\"},description:{title:\"Description\",type:ControlType.String,defaultValue:\"Enables ads personalization and tracking.\",displayTextArea:true}}},style:{type:ControlType.Object,title:\"Style\",buttonTitle:\"Fonts, Colors\",controls:{fontTitle:{// @ts-ignore - internal\ntype:ControlType.Font,title:\"Title\",controls:\"basic\"},fontBody:{// @ts-ignore - internal\ntype:ControlType.Font,title:\"Body\",controls:\"basic\"},background:{title:\"Background\",type:ControlType.Color,defaultValue:\"rgba(0,0,0,0.02)\"},border:{type:ControlType.Object,title:\"Border\",buttonTitle:\"Radius, Width\",controls:{radius:{title:\"Radius\",type:ControlType.Number,displayStepper:true,min:0,defaultValue:8},width:{title:\"Width\",type:ControlType.Number,displayStepper:true},color:{title:\"Color\",type:ControlType.Color,defaultValue:\"rgba(0,0,0,0.02)\"}}},toggleColor:{title:\"On\",type:ControlType.Color,defaultValue:\"#000\"},toggleColorInactive:{title:\"Off\",type:ControlType.Color,defaultValue:\"rgba(0,0,0,0.1)\"},padding:{title:\"Padding\",type:ControlType.FusedNumber,toggleKey:\"paddingPerSide\",toggleTitles:[\"Padding\",\"Padding per side\"],defaultValue:12,valueKeys:[\"paddingTop\",\"paddingRight\",\"paddingBottom\",\"paddingLeft\"],valueLabels:[\"T\",\"R\",\"B\",\"L\"],min:0}}}}}});CookieBanner.displayName=\"Cookie Banner\";\nexport const __FramerMetadata__ = {\"exports\":{\"ContentType\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"ContentProps\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"OptionsStyle\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"ButtonsProps\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"default\":{\"type\":\"reactComponent\",\"name\":\"CookieBanner\",\"slots\":[],\"annotations\":{\"framerDisableUnlink\":\"*\",\"framerSupportedLayoutWidth\":\"auto\",\"framerSupportedLayoutHeight\":\"auto\",\"framerContractVersion\":\"1\"}},\"CookieBannerProps\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"PolicyProps\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./Cookies.map","// Generated by Framer (3256e0c)\nimport{fontStore}from\"framer\";fontStore.loadFonts([\"CUSTOMV2;KH Teka Regular\",\"CUSTOMV2;KH Teka Bold\"]);export const fonts=[{explicitInter:true,fonts:[{cssFamilyName:\"KH Teka Regular\",source:\"custom\",style:\"normal\",uiFamilyName:\"KH Teka\",url:\"https://framerusercontent.com/assets/4z6CvOOuX9Bttg9AJPxIBtoCGyw.woff2\",weight:\"400\"},{cssFamilyName:\"KH Teka Bold\",source:\"custom\",style:\"normal\",uiFamilyName:\"KH Teka\",url:\"https://framerusercontent.com/assets/6B7NXkPgI9JKoAjYsEp7mk7WL8.woff2\",weight:\"700\"}]}];export const css=['.framer-pTucH .framer-styles-preset-11unnkq:not(.rich-text-wrapper), .framer-pTucH .framer-styles-preset-11unnkq.rich-text-wrapper p { --framer-font-family: \"KH Teka Regular\", \"KH Teka Regular Placeholder\", sans-serif; --framer-font-family-bold: \"KH Teka Bold\", \"KH Teka Bold Placeholder\", sans-serif; --framer-font-open-type-features: normal; --framer-font-size: calc(var(--framer-root-font-size, 1rem) * 1); --framer-font-style: normal; --framer-font-style-bold: normal; --framer-font-variation-axes: normal; --framer-font-weight: 400; --framer-font-weight-bold: 700; --framer-letter-spacing: 0em; --framer-line-height: 130%; --framer-paragraph-spacing: 8px; --framer-text-alignment: start; --framer-text-color: var(--token-a1e55884-84c4-4296-a29f-befcef912aac, #000000); --framer-text-decoration: none; --framer-text-stroke-color: initial; --framer-text-stroke-width: initial; --framer-text-transform: none; }'];export const className=\"framer-pTucH\";\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 (3256e0c)\nimport{fontStore}from\"framer\";fontStore.loadFonts([\"CUSTOMV2;KH Teka Bold\"]);export const fonts=[{explicitInter:true,fonts:[{cssFamilyName:\"KH Teka Bold\",source:\"custom\",style:\"normal\",uiFamilyName:\"KH Teka\",url:\"https://framerusercontent.com/assets/6B7NXkPgI9JKoAjYsEp7mk7WL8.woff2\",weight:\"700\"}]}];export const css=['.framer-d7JZn .framer-styles-preset-lwauge:not(.rich-text-wrapper), .framer-d7JZn .framer-styles-preset-lwauge.rich-text-wrapper h6 { --framer-font-family: \"KH Teka Bold\", \"KH Teka Bold Placeholder\", sans-serif; --framer-font-open-type-features: normal; --framer-font-size: calc(var(--framer-root-font-size, 1rem) * 1.5); --framer-font-style: normal; --framer-font-variation-axes: normal; --framer-font-weight: 700; --framer-letter-spacing: 0em; --framer-line-height: 110%; --framer-paragraph-spacing: 0px; --framer-text-alignment: start; --framer-text-color: var(--token-a1e55884-84c4-4296-a29f-befcef912aac, #000000); --framer-text-decoration: none; --framer-text-stroke-color: initial; --framer-text-stroke-width: initial; --framer-text-transform: none; }','@media (max-width: 1439px) and (min-width: 810px) { .framer-d7JZn .framer-styles-preset-lwauge:not(.rich-text-wrapper), .framer-d7JZn .framer-styles-preset-lwauge.rich-text-wrapper h6 { --framer-font-family: \"KH Teka Bold\", \"KH Teka Bold Placeholder\", sans-serif; --framer-font-open-type-features: normal; --framer-font-size: calc(var(--framer-root-font-size, 1rem) * 1.33); --framer-font-style: normal; --framer-font-variation-axes: normal; --framer-font-weight: 700; --framer-letter-spacing: 0em; --framer-line-height: 110%; --framer-paragraph-spacing: 0px; --framer-text-alignment: start; --framer-text-color: var(--token-a1e55884-84c4-4296-a29f-befcef912aac, #000000); --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-d7JZn .framer-styles-preset-lwauge:not(.rich-text-wrapper), .framer-d7JZn .framer-styles-preset-lwauge.rich-text-wrapper h6 { --framer-font-family: \"KH Teka Bold\", \"KH Teka Bold Placeholder\", sans-serif; --framer-font-open-type-features: normal; --framer-font-size: calc(var(--framer-root-font-size, 1rem) * 1.13); --framer-font-style: normal; --framer-font-variation-axes: normal; --framer-font-weight: 700; --framer-letter-spacing: 0em; --framer-line-height: 110%; --framer-paragraph-spacing: 0px; --framer-text-alignment: start; --framer-text-color: var(--token-a1e55884-84c4-4296-a29f-befcef912aac, #000000); --framer-text-decoration: none; --framer-text-stroke-color: initial; --framer-text-stroke-width: initial; --framer-text-transform: none; } }'];export const className=\"framer-d7JZn\";\nexport const __FramerMetadata__ = {\"exports\":{\"fonts\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"className\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"css\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","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\"}}}}","/*\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","// Generated by Framer (c90503a)\nimport{jsx as _jsx}from\"react/jsx-runtime\";import{addFonts,addPropertyControls,ComponentViewportProvider,ControlType,cx,getFonts,SmartComponentScopedContainer,useComponentViewport,useLocaleInfo,useVariantState,withCSS}from\"framer\";import{LayoutGroup,motion,MotionConfigContext}from\"framer-motion\";import*as React from\"react\";import{useRef}from\"react\";import{Lottie}from\"https://framerusercontent.com/modules/YbkSqZ7STzW5WsMb1yan/RLfsHd78NBd0kbafA9hd/Lottie.js\";const LottieFonts=getFonts(Lottie);const cycleOrder=[\"xOV3Yi9TT\",\"tYOr00y5a\",\"Q3YNUf7BA\"];const serializationHash=\"framer-lxWki\";const variantClassNames={Q3YNUf7BA:\"framer-v-zy2k67\",tYOr00y5a:\"framer-v-1sox2t1\",xOV3Yi9TT:\"framer-v-1ckvxxc\"};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 humanReadableVariantMap={Faciliation:\"xOV3Yi9TT\",Optimisation:\"Q3YNUf7BA\",Ownership:\"tYOr00y5a\"};const getProps=({height,id,width,...props})=>{return{...props,variant:humanReadableVariantMap[props.variant]??props.variant??\"xOV3Yi9TT\"};};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:\"xOV3Yi9TT\",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-1ckvxxc\",className,classNames),\"data-framer-name\":\"Faciliation\",layoutDependency:layoutDependency,layoutId:\"xOV3Yi9TT\",ref:refBinding,style:{backgroundColor:\"var(--token-05b2fef4-1432-47e4-9fba-4ad50d065397, rgb(171, 215, 255))\",borderBottomLeftRadius:16,borderBottomRightRadius:16,borderTopLeftRadius:16,borderTopRightRadius:16,...style},...addPropertyOverrides({Q3YNUf7BA:{\"data-framer-name\":\"Optimisation\"},tYOr00y5a:{\"data-framer-name\":\"Ownership\"}},baseVariant,gestureVariant),children:/*#__PURE__*/_jsx(ComponentViewportProvider,{children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-1blg6ed-container\",isAuthoredByUser:true,isModuleExternal:true,layoutDependency:layoutDependency,layoutId:\"Cc6j7e2f7-container\",nodeId:\"Cc6j7e2f7\",rendersWithMotion:true,scopeId:\"Fc0gBqpvF\",children:/*#__PURE__*/_jsx(Lottie,{height:\"100%\",id:\"Cc6j7e2f7\",isForwardsDirection:true,layoutId:\"Cc6j7e2f7\",loop:true,pauseOnCanvas:true,playing:true,poster:\"Auto\",posterProgress:0,progress:0,speed:1,srcFile:\"https://framerusercontent.com/assets/5Mw4xmVIMpM4aidEr75sprLZC5o.json\",srcType:\"Upload\",srcUrl:\"https://misc.framerstatic.com/lottie/logo.json\",style:{height:\"100%\",width:\"100%\"},width:\"100%\",...addPropertyOverrides({Q3YNUf7BA:{srcFile:\"https://framerusercontent.com/assets/GyX5D5q3ruhDC9j1CHAnuBfs4d0.json\"},tYOr00y5a:{srcFile:\"https://framerusercontent.com/assets/A2SnMzPfOBmYUAKW3NCcAJOoc0.json\"}},baseVariant,gestureVariant)})})})})})})});});const css=[\"@supports (aspect-ratio: 1) { body { --framer-aspect-ratio-supported: auto; } }\",\".framer-lxWki.framer-1vpo74j, .framer-lxWki .framer-1vpo74j { display: block; }\",\".framer-lxWki.framer-1ckvxxc { gap: 0px; height: 48px; overflow: hidden; position: relative; width: 48px; will-change: var(--framer-will-change-override, transform); }\",\".framer-lxWki .framer-1blg6ed-container { aspect-ratio: 1 / 1; flex: none; height: var(--framer-aspect-ratio-supported, 60px); left: -6px; position: absolute; right: -6px; top: -6px; }\",\".framer-lxWki.framer-v-1sox2t1.framer-1ckvxxc, .framer-lxWki.framer-v-zy2k67.framer-1ckvxxc { aspect-ratio: 1 / 1; height: var(--framer-aspect-ratio-supported, 48px); }\"];/**\n * This is a generated Framer component.\n * @framerIntrinsicHeight 48\n * @framerIntrinsicWidth 48\n * @framerCanvasComponentVariantDetails {\"propertyName\":\"variant\",\"data\":{\"default\":{\"layout\":[\"fixed\",\"fixed\"]},\"tYOr00y5a\":{\"layout\":[\"fixed\",\"fixed\"]},\"Q3YNUf7BA\":{\"layout\":[\"fixed\",\"fixed\"]}}}\n * @framerImmutableVariables true\n * @framerDisplayContentsDiv false\n * @framerAutoSizeImages true\n * @framerComponentViewportWidth true\n * @framerColorSyntax true\n */const FramerFc0gBqpvF=withCSS(Component,css,\"framer-lxWki\");export default FramerFc0gBqpvF;FramerFc0gBqpvF.displayName=\"Service Lottie Icon\";FramerFc0gBqpvF.defaultProps={height:48,width:48};addPropertyControls(FramerFc0gBqpvF,{variant:{options:[\"xOV3Yi9TT\",\"tYOr00y5a\",\"Q3YNUf7BA\"],optionTitles:[\"Faciliation\",\"Ownership\",\"Optimisation\"],title:\"Variant\",type:ControlType.Enum}});addFonts(FramerFc0gBqpvF,[{explicitInter:true,fonts:[]},...LottieFonts],{supportsExplicitInterCodegen:true});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"FramerFc0gBqpvF\",\"slots\":[],\"annotations\":{\"framerAutoSizeImages\":\"true\",\"framerCanvasComponentVariantDetails\":\"{\\\"propertyName\\\":\\\"variant\\\",\\\"data\\\":{\\\"default\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"tYOr00y5a\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"Q3YNUf7BA\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]}}}\",\"framerContractVersion\":\"1\",\"framerIntrinsicWidth\":\"48\",\"framerIntrinsicHeight\":\"48\",\"framerComponentViewportWidth\":\"true\",\"framerDisplayContentsDiv\":\"false\",\"framerImmutableVariables\":\"true\",\"framerColorSyntax\":\"true\"}},\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./Fc0gBqpvF.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(){return e||(0,t[i(t)[0]])((e={exports:{}}).exports,e),e.exports;},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},p=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){this.bytes=t,c(this,\"offset\",0),c(this,\"view\"),c(this,\"decoder\",new TextDecoder),this.view=v(this.bytes);}};function v(t){return new DataView(t.buffer,t.byteOffset,t.byteLength);}// src/code-generation/components/cms/bundled/DatabaseDictionaryIndex.ts\nimport{ControlType as y}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=v(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\",v(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){this.chunkId=t,this.offset=e,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 tp(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 tv(t){return{type:P.String,value:t.readString()};}function ty(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 tv(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 ty(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),tp(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 p(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){this.fieldNames=t,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!==y.String||e.value?.type!==y.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!==y.String||e.value?.type!==y.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!==y.String||e.value?.type!==y.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){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 p(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){this.id=t,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 p(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){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\":{\"RichTextJsonType\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"getRichTextJsonResolver\":{\"type\":\"reactComponent\",\"name\":\"getRichTextJsonResolver\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// Generated by Framer (02d7f84)\nimport{addPropertyControls as e,ControlType as l,QueryEngine as t}from\"framer\";import{DatabaseCollection as r,DatabaseDictionaryIndex as a}from\"./jrP0OSwKt-0.js\";import{getRichTextJsonResolver as o}from\"./jrP0OSwKt-1.js\";let i={A_7lpD2lf:{isNullable:!0,type:l.RichText},AbUN7WmJn:{isNullable:!0,type:l.Enum},acafWJBWV:{isNullable:!0,type:l.String},BAmpC90GM:{isNullable:!0,type:l.RichText},bboPSuWjg:{isNullable:!0,type:l.String},bUTmcnKMX:{definition:{isNullable:!0,type:l.String},isNullable:!0,type:l.Array},cDbwqv8cp:{isNullable:!0,type:l.String},cleN2CUh1:{isNullable:!0,type:l.VectorSetItem},CNN_66BWJ:{isNullable:!0,type:l.String},CQ_l_iThI:{isNullable:!0,type:l.RichText},createdAt:{isNullable:!0,type:l.Date},CRfN6jzLK:{isNullable:!0,type:l.String},crtqZ4s3s:{isNullable:!0,type:l.String},Dfg82ji9M:{isNullable:!0,type:l.RichText},dk75Vp1g9:{isNullable:!0,type:l.String},DTbSbZdzy:{isNullable:!0,type:l.String},dtdWK2n2h:{isNullable:!0,type:l.String},DxKL3PV0O:{isNullable:!0,type:l.ResponsiveImage},E2fQQhoGV:{isNullable:!0,type:l.Color},EnPzmcRGN:{isNullable:!0,type:l.RichText},Fa43ZB5_f:{isNullable:!0,type:l.String},fblXFYOrD:{isNullable:!0,type:l.Link},FvNpjzgFt:{isNullable:!0,type:l.String},g9ivP61xm:{isNullable:!0,type:l.RichText},gJ3y4SmKr:{isNullable:!0,type:l.RichText},h5XYWJQba:{isNullable:!0,type:l.RichText},HCPvmPXgP:{isNullable:!0,type:l.RichText},hnzrx7E3g:{isNullable:!0,type:l.RichText},HsbbluCdF:{isNullable:!0,type:l.String},hsyH_3MGG:{isNullable:!0,type:l.String},HzXXhfb8k:{isNullable:!0,type:l.RichText},I0KGyudlg:{isNullable:!0,type:l.String},id:{isNullable:!1,type:l.String},ismHe8_QV:{isNullable:!0,type:l.String},J87ovznJo:{isNullable:!0,type:l.String},jA_IX07Wb:{isNullable:!0,type:l.String},jQDClCFu9:{isNullable:!0,type:l.String},Jv2zqgCsN:{isNullable:!0,type:l.String},jyCwROY8O:{isNullable:!0,type:l.VectorSetItem},kgD6ITOqk:{isNullable:!0,type:l.Color},kOxJQdzBY:{isNullable:!0,type:l.RichText},Ktut4q1W0:{isNullable:!0,type:l.String},kvKBpZlHp:{isNullable:!0,type:l.String},lLBFfJQE7:{isNullable:!0,type:l.String},lnYerlkQI:{isNullable:!0,type:l.String},mbg93KYLU:{isNullable:!0,type:l.RichText},Ms0pRmHWv:{isNullable:!0,type:l.VectorSetItem},MvOpxZtYE:{isNullable:!0,type:l.String},NbnpZPvRj:{isNullable:!0,type:l.String},NeEKDEMoS:{isNullable:!0,type:l.String},nextItemId:{isNullable:!0,type:l.String},NFMeT2ESO:{isNullable:!0,type:l.RichText},NG00WIYNN:{isNullable:!0,type:l.String},NppPtJZv_:{isNullable:!0,type:l.ResponsiveImage},NpwxnWMrc:{isNullable:!0,type:l.String},O4XmhoexV:{isNullable:!0,type:l.VectorSetItem},OtGrHSYNN:{isNullable:!0,type:l.String},PG_sRjkOH:{isNullable:!0,type:l.Color},pHMm6e_Iu:{isNullable:!0,type:l.String},pMUvKuiwp:{isNullable:!0,type:l.String},previousItemId:{isNullable:!0,type:l.String},QH6sTTtw6:{isNullable:!0,type:l.RichText},RtDjRrZKD:{isNullable:!0,type:l.ResponsiveImage},Rw5XNMBj1:{isNullable:!0,type:l.ResponsiveImage},sFV0eEIpO:{isNullable:!0,type:l.String},SkAGKBXLu:{isNullable:!0,type:l.VectorSetItem},sXbRPLpoN:{isNullable:!0,type:l.ResponsiveImage},T6FJxTYjX:{isNullable:!0,type:l.ResponsiveImage},tFtY8lddB:{isNullable:!0,type:l.RichText},ThBhfd5TD:{isNullable:!0,type:l.RichText},tprMeshGV:{isNullable:!0,type:l.Color},umAJiKSUq:{isNullable:!0,type:l.String},updatedAt:{isNullable:!0,type:l.Date},UWtm6QrK0:{isNullable:!0,type:l.String},V5HeAcndk:{isNullable:!0,type:l.String},VdSufQESa:{isNullable:!0,type:l.RichText},vf8LCWTup:{isNullable:!0,type:l.String},vh7ZZtQqa:{isNullable:!0,type:l.RichText},Vhjja7iwE:{isNullable:!0,type:l.String},VJh7UanRx:{isNullable:!0,type:l.String},VQOKPUP8K:{isNullable:!0,type:l.RichText},vVx5OgKHP:{isNullable:!0,type:l.String},w3wpfi1cq:{isNullable:!0,type:l.ResponsiveImage},wdlqZNHTP:{isNullable:!0,type:l.String},wnwPio39V:{isNullable:!0,type:l.RichText},WuQdlj3PN:{isNullable:!0,type:l.Color},XcGXdUzh5:{isNullable:!0,type:l.String},XGKGnRNS4:{isNullable:!0,type:l.String},XgrpARdyy:{isNullable:!0,type:l.VectorSetItem},xHvREmHod:{isNullable:!0,type:l.String},xrOJXxhUA:{isNullable:!0,type:l.String},XzCufA_QI:{isNullable:!0,type:l.ResponsiveImage},y0jR_vcwy:{isNullable:!0,type:l.RichText},YLPAr33BM:{isNullable:!0,type:l.String},yqL1pYDAR:{isNullable:!0,type:l.String},yR8hIsxvZ:{isNullable:!0,type:l.String},yUGifP405:{isNullable:!0,type:l.File},zIFz3N69b:{isNullable:!0,type:l.Color}},m=[\"id\"],c={type:1},n=[\"previousItemId\"],s=[\"nextItemId\"],u=[\"id\",\"CNN_66BWJ\"],f=[\"CNN_66BWJ\",\"id\"],d=[\"NbnpZPvRj\"],p={type:0},w=[\"wdlqZNHTP\"],S=[\"CNN_66BWJ\"],h=[\"FvNpjzgFt\"],y=[\"AbUN7WmJn\"],N=[\"Vhjja7iwE\"],g=[\"fblXFYOrD\"],R=[\"YLPAr33BM\"],x=[\"I0KGyudlg\"],b=[\"Jv2zqgCsN\"],P=[\"XzCufA_QI\"],O=[\"XcGXdUzh5\"],K=[\"lLBFfJQE7\"],U=[\"yqL1pYDAR\"],j=[\"Rw5XNMBj1\"],V=[\"hsyH_3MGG\"],L=[\"pHMm6e_Iu\"],C=[\"jA_IX07Wb\"],T=[\"HzXXhfb8k\"],I=[\"OtGrHSYNN\"],v=[\"HCPvmPXgP\"],A=[\"w3wpfi1cq\"],Q=[\"yUGifP405\"],F=[\"NppPtJZv_\"],J=[\"Ktut4q1W0\"],M=[\"vf8LCWTup\"],W=[\"VQOKPUP8K\"],X=[\"DxKL3PV0O\"],D=[\"cDbwqv8cp\"],G=[\"RtDjRrZKD\"],z=[\"jQDClCFu9\"],H=[\"Fa43ZB5_f\"],k=[\"UWtm6QrK0\"],B=[\"sXbRPLpoN\"],_=[\"xrOJXxhUA\"],E=[\"MvOpxZtYE\"],Y=[\"bboPSuWjg\"],Z=[\"T6FJxTYjX\"],q=[\"dk75Vp1g9\"],$=[\"J87ovznJo\"],ee=[\"lnYerlkQI\"],el=[\"NeEKDEMoS\"],et=[\"dtdWK2n2h\"],er=[\"Ms0pRmHWv\"],ea=[\"zIFz3N69b\"],eo=[\"V5HeAcndk\"],ei=[\"CQ_l_iThI\"],em=[\"cleN2CUh1\"],ec=[\"kgD6ITOqk\"],en=[\"NG00WIYNN\"],es=[\"tFtY8lddB\"],eu=[\"O4XmhoexV\"],ef=[\"tprMeshGV\"],ed=[\"umAJiKSUq\"],ep=[\"EnPzmcRGN\"],ew=[\"vVx5OgKHP\"],eS=[\"kvKBpZlHp\"],eh=[\"XgrpARdyy\"],ey=[\"PG_sRjkOH\"],eN=[\"crtqZ4s3s\"],eg=[\"NFMeT2ESO\"],eR=[\"QH6sTTtw6\"],ex=[\"jyCwROY8O\"],eb=[\"E2fQQhoGV\"],eP=[\"yR8hIsxvZ\"],eO=[\"mbg93KYLU\"],eK=[\"kOxJQdzBY\"],eU=[\"SkAGKBXLu\"],ej=[\"WuQdlj3PN\"],eV=[\"XGKGnRNS4\"],eL=[\"ThBhfd5TD\"],eC=[\"Dfg82ji9M\"],eT=[\"sFV0eEIpO\"],eI=[\"vh7ZZtQqa\"],ev=[\"VJh7UanRx\"],eA=[\"VdSufQESa\"],eQ=[\"xHvREmHod\"],eF=[\"BAmpC90GM\"],eJ=[\"NpwxnWMrc\"],eM=[\"h5XYWJQba\"],eW=[\"HsbbluCdF\"],eX=[\"wnwPio39V\"],eD=[\"acafWJBWV\"],eG=[\"A_7lpD2lf\"],ez=[\"ismHe8_QV\"],eH=[\"gJ3y4SmKr\"],ek=[\"DTbSbZdzy\"],eB=[\"y0jR_vcwy\"],e_=[\"pMUvKuiwp\"],eE=[\"hnzrx7E3g\"],eY=[\"CRfN6jzLK\"],eZ=[\"g9ivP61xm\"],eq=[\"bUTmcnKMX\"],e$=[()=>import(\"https://framerusercontent.com/modules/BWRbop1oYu2FtLpmJKW6/pBGb4RvubiTRE6VKwwe2/fiEOzFtpZ.js\"),()=>import(\"https://framerusercontent.com/modules/rxeUiOqustGu2OA8gBBi/CByJvB3pBylXXMmSZ9XO/gNYa1v1zE.js\"),()=>import(\"https://framerusercontent.com/modules/ULEOT8b5XAv3Vq5uNUw1/aq0vRPRbavcVa7N96BL9/JqDBfMFpY.js\"),()=>import(\"https://framerusercontent.com/modules/2yGg4ClgU0HZPs2sn2yy/Gwwitha40KqBHcO17cd2/CIOtnbGym.js\"),()=>import(\"https://framerusercontent.com/modules/fXtOMgzeNvdrfGtfLYAp/zBG24ey6Dvj3lDFNTEmg/BsveWQPg5.js\"),()=>import(\"https://framerusercontent.com/modules/G1fkJ0vEtksH0Uvk4knJ/T5ZRGPzjN21837DYnMqp/RiFTJkajb.js\"),()=>import(\"https://framerusercontent.com/modules/H3vnFOJxUprEpWUDY7i3/zwxeiNyiPT8zP1hQzXUV/xQjMkRUXK.js\"),()=>import(\"https://framerusercontent.com/modules/6FpmtJHkjapLF2AX5FrX/lL9SuvExMTXASgLQBIkB/m4iTvoen5.js\")],e0=e=>{let l=e$[e];if(l)return l().then(e=>e.default);},e2={},e1=o(e2),e3=new t,e4={collectionByLocaleId:{default:new r({chunks:[new URL(\"./jrP0OSwKt-chunk-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")],id:\"fa901104-4879-4127-aa26-9757a22b83dedefault\",indexes:[new a({collation:c,collectionSchema:i,fieldNames:m,range:{from:0,to:97},url:new URL(\"./jrP0OSwKt-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new a({collation:c,collectionSchema:i,fieldNames:n,range:{from:97,to:193},url:new URL(\"./jrP0OSwKt-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new a({collation:c,collectionSchema:i,fieldNames:s,range:{from:193,to:285},url:new URL(\"./jrP0OSwKt-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new a({collation:c,collectionSchema:i,fieldNames:u,range:{from:285,to:458},url:new URL(\"./jrP0OSwKt-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new a({collation:c,collectionSchema:i,fieldNames:f,range:{from:458,to:631},url:new URL(\"./jrP0OSwKt-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new a({collation:p,collectionSchema:i,fieldNames:d,range:{from:631,to:8157},url:new URL(\"./jrP0OSwKt-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new a({collation:p,collectionSchema:i,fieldNames:w,range:{from:8157,to:8282},url:new URL(\"./jrP0OSwKt-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new a({collation:p,collectionSchema:i,fieldNames:S,range:{from:8282,to:8407},url:new URL(\"./jrP0OSwKt-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new a({collation:p,collectionSchema:i,fieldNames:h,range:{from:8407,to:8532},url:new URL(\"./jrP0OSwKt-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new a({collation:p,collectionSchema:i,fieldNames:y,range:{from:8532,to:8636},url:new URL(\"./jrP0OSwKt-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new a({collation:p,collectionSchema:i,fieldNames:N,range:{from:8636,to:8764},url:new URL(\"./jrP0OSwKt-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new a({collation:p,collectionSchema:i,fieldNames:g,range:{from:8764,to:9402},url:new URL(\"./jrP0OSwKt-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new a({collation:p,collectionSchema:i,fieldNames:R,range:{from:9402,to:9599},url:new URL(\"./jrP0OSwKt-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new a({collation:p,collectionSchema:i,fieldNames:x,range:{from:9599,to:9724},url:new URL(\"./jrP0OSwKt-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new a({collation:p,collectionSchema:i,fieldNames:b,range:{from:9724,to:10207},url:new URL(\"./jrP0OSwKt-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new a({collation:p,collectionSchema:i,fieldNames:P,range:{from:10207,to:11698},url:new URL(\"./jrP0OSwKt-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new a({collation:p,collectionSchema:i,fieldNames:O,range:{from:11698,to:11845},url:new URL(\"./jrP0OSwKt-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new a({collation:p,collectionSchema:i,fieldNames:K,range:{from:11845,to:12023},url:new URL(\"./jrP0OSwKt-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new a({collation:p,collectionSchema:i,fieldNames:U,range:{from:12023,to:12499},url:new URL(\"./jrP0OSwKt-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new a({collation:p,collectionSchema:i,fieldNames:j,range:{from:12499,to:14691},url:new URL(\"./jrP0OSwKt-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new a({collation:p,collectionSchema:i,fieldNames:V,range:{from:14691,to:14947},url:new URL(\"./jrP0OSwKt-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new a({collation:p,collectionSchema:i,fieldNames:L,range:{from:14947,to:15609},url:new URL(\"./jrP0OSwKt-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new a({collation:p,collectionSchema:i,fieldNames:C,range:{from:15609,to:15742},url:new URL(\"./jrP0OSwKt-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new a({collation:p,collectionSchema:i,fieldNames:T,range:{from:15742,to:16364},url:new URL(\"./jrP0OSwKt-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new a({collation:p,collectionSchema:i,fieldNames:I,range:{from:16364,to:16502},url:new URL(\"./jrP0OSwKt-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new a({collation:p,collectionSchema:i,fieldNames:v,range:{from:16502,to:17112},url:new URL(\"./jrP0OSwKt-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new a({collation:p,collectionSchema:i,fieldNames:A,range:{from:17112,to:18891},url:new URL(\"./jrP0OSwKt-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new a({collation:p,collectionSchema:i,fieldNames:Q,range:{from:18891,to:18956},url:new URL(\"./jrP0OSwKt-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new a({collation:p,collectionSchema:i,fieldNames:F,range:{from:18956,to:19021},url:new URL(\"./jrP0OSwKt-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new a({collation:p,collectionSchema:i,fieldNames:J,range:{from:19021,to:19245},url:new URL(\"./jrP0OSwKt-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new a({collation:p,collectionSchema:i,fieldNames:M,range:{from:19245,to:19819},url:new URL(\"./jrP0OSwKt-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new a({collation:p,collectionSchema:i,fieldNames:W,range:{from:19819,to:20710},url:new URL(\"./jrP0OSwKt-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new a({collation:p,collectionSchema:i,fieldNames:X,range:{from:20710,to:20775},url:new URL(\"./jrP0OSwKt-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new a({collation:p,collectionSchema:i,fieldNames:D,range:{from:20775,to:20959},url:new URL(\"./jrP0OSwKt-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new a({collation:p,collectionSchema:i,fieldNames:G,range:{from:20959,to:21438},url:new URL(\"./jrP0OSwKt-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new a({collation:p,collectionSchema:i,fieldNames:z,range:{from:21438,to:21543},url:new URL(\"./jrP0OSwKt-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new a({collation:p,collectionSchema:i,fieldNames:H,range:{from:21543,to:21872},url:new URL(\"./jrP0OSwKt-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new a({collation:p,collectionSchema:i,fieldNames:k,range:{from:21872,to:21937},url:new URL(\"./jrP0OSwKt-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new a({collation:p,collectionSchema:i,fieldNames:B,range:{from:21937,to:22416},url:new URL(\"./jrP0OSwKt-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new a({collation:p,collectionSchema:i,fieldNames:_,range:{from:22416,to:22526},url:new URL(\"./jrP0OSwKt-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new a({collation:p,collectionSchema:i,fieldNames:E,range:{from:22526,to:22876},url:new URL(\"./jrP0OSwKt-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new a({collation:p,collectionSchema:i,fieldNames:Y,range:{from:22876,to:22980},url:new URL(\"./jrP0OSwKt-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new a({collation:p,collectionSchema:i,fieldNames:Z,range:{from:22980,to:23458},url:new URL(\"./jrP0OSwKt-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new a({collation:p,collectionSchema:i,fieldNames:q,range:{from:23458,to:23557},url:new URL(\"./jrP0OSwKt-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new a({collation:p,collectionSchema:i,fieldNames:$,range:{from:23557,to:23901},url:new URL(\"./jrP0OSwKt-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new a({collation:p,collectionSchema:i,fieldNames:ee,range:{from:23901,to:23966},url:new URL(\"./jrP0OSwKt-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new a({collation:p,collectionSchema:i,fieldNames:el,range:{from:23966,to:24137},url:new URL(\"./jrP0OSwKt-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new a({collation:p,collectionSchema:i,fieldNames:et,range:{from:24137,to:24540},url:new URL(\"./jrP0OSwKt-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new a({collation:p,collectionSchema:i,fieldNames:er,range:{from:24540,to:24617},url:new URL(\"./jrP0OSwKt-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new a({collation:p,collectionSchema:i,fieldNames:ea,range:{from:24617,to:24901},url:new URL(\"./jrP0OSwKt-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new a({collation:p,collectionSchema:i,fieldNames:eo,range:{from:24901,to:25034},url:new URL(\"./jrP0OSwKt-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new a({collation:p,collectionSchema:i,fieldNames:ei,range:{from:25034,to:25479},url:new URL(\"./jrP0OSwKt-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new a({collation:p,collectionSchema:i,fieldNames:em,range:{from:25479,to:25556},url:new URL(\"./jrP0OSwKt-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new a({collation:p,collectionSchema:i,fieldNames:ec,range:{from:25556,to:25840},url:new URL(\"./jrP0OSwKt-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new a({collation:p,collectionSchema:i,fieldNames:en,range:{from:25840,to:25979},url:new URL(\"./jrP0OSwKt-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new a({collation:p,collectionSchema:i,fieldNames:es,range:{from:25979,to:26376},url:new URL(\"./jrP0OSwKt-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new a({collation:p,collectionSchema:i,fieldNames:eu,range:{from:26376,to:26453},url:new URL(\"./jrP0OSwKt-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new a({collation:p,collectionSchema:i,fieldNames:ef,range:{from:26453,to:26737},url:new URL(\"./jrP0OSwKt-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new a({collation:p,collectionSchema:i,fieldNames:ed,range:{from:26737,to:26890},url:new URL(\"./jrP0OSwKt-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new a({collation:p,collectionSchema:i,fieldNames:ep,range:{from:26890,to:27309},url:new URL(\"./jrP0OSwKt-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new a({collation:p,collectionSchema:i,fieldNames:ew,range:{from:27309,to:27484},url:new URL(\"./jrP0OSwKt-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new a({collation:p,collectionSchema:i,fieldNames:eS,range:{from:27484,to:28016},url:new URL(\"./jrP0OSwKt-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new a({collation:p,collectionSchema:i,fieldNames:eh,range:{from:28016,to:28093},url:new URL(\"./jrP0OSwKt-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new a({collation:p,collectionSchema:i,fieldNames:ey,range:{from:28093,to:28377},url:new URL(\"./jrP0OSwKt-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new a({collation:p,collectionSchema:i,fieldNames:eN,range:{from:28377,to:28477},url:new URL(\"./jrP0OSwKt-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new a({collation:p,collectionSchema:i,fieldNames:eg,range:{from:28477,to:28839},url:new URL(\"./jrP0OSwKt-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new a({collation:p,collectionSchema:i,fieldNames:eR,range:{from:28839,to:30571},url:new URL(\"./jrP0OSwKt-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new a({collation:p,collectionSchema:i,fieldNames:ex,range:{from:30571,to:30648},url:new URL(\"./jrP0OSwKt-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new a({collation:p,collectionSchema:i,fieldNames:eb,range:{from:30648,to:30932},url:new URL(\"./jrP0OSwKt-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new a({collation:p,collectionSchema:i,fieldNames:eP,range:{from:30932,to:31034},url:new URL(\"./jrP0OSwKt-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new a({collation:p,collectionSchema:i,fieldNames:eO,range:{from:31034,to:31404},url:new URL(\"./jrP0OSwKt-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new a({collation:p,collectionSchema:i,fieldNames:eK,range:{from:31404,to:33153},url:new URL(\"./jrP0OSwKt-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new a({collation:p,collectionSchema:i,fieldNames:eU,range:{from:33153,to:33230},url:new URL(\"./jrP0OSwKt-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new a({collation:p,collectionSchema:i,fieldNames:ej,range:{from:33230,to:33514},url:new URL(\"./jrP0OSwKt-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new a({collation:p,collectionSchema:i,fieldNames:eV,range:{from:33514,to:33608},url:new URL(\"./jrP0OSwKt-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new a({collation:p,collectionSchema:i,fieldNames:eL,range:{from:33608,to:33949},url:new URL(\"./jrP0OSwKt-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new a({collation:p,collectionSchema:i,fieldNames:eC,range:{from:33949,to:35651},url:new URL(\"./jrP0OSwKt-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new a({collation:p,collectionSchema:i,fieldNames:eT,range:{from:35651,to:35900},url:new URL(\"./jrP0OSwKt-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new a({collation:p,collectionSchema:i,fieldNames:eI,range:{from:35900,to:37482},url:new URL(\"./jrP0OSwKt-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new a({collation:p,collectionSchema:i,fieldNames:ev,range:{from:37482,to:37708},url:new URL(\"./jrP0OSwKt-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new a({collation:p,collectionSchema:i,fieldNames:eA,range:{from:37708,to:38717},url:new URL(\"./jrP0OSwKt-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new a({collation:p,collectionSchema:i,fieldNames:eQ,range:{from:38717,to:38876},url:new URL(\"./jrP0OSwKt-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new a({collation:p,collectionSchema:i,fieldNames:eF,range:{from:38876,to:39697},url:new URL(\"./jrP0OSwKt-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new a({collation:p,collectionSchema:i,fieldNames:eJ,range:{from:39697,to:39912},url:new URL(\"./jrP0OSwKt-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new a({collation:p,collectionSchema:i,fieldNames:eM,range:{from:39912,to:40936},url:new URL(\"./jrP0OSwKt-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new a({collation:p,collectionSchema:i,fieldNames:eW,range:{from:40936,to:41155},url:new URL(\"./jrP0OSwKt-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new a({collation:p,collectionSchema:i,fieldNames:eX,range:{from:41155,to:42103},url:new URL(\"./jrP0OSwKt-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new a({collation:p,collectionSchema:i,fieldNames:eD,range:{from:42103,to:42366},url:new URL(\"./jrP0OSwKt-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new a({collation:p,collectionSchema:i,fieldNames:eG,range:{from:42366,to:43327},url:new URL(\"./jrP0OSwKt-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new a({collation:p,collectionSchema:i,fieldNames:ez,range:{from:43327,to:43549},url:new URL(\"./jrP0OSwKt-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new a({collation:p,collectionSchema:i,fieldNames:eH,range:{from:43549,to:44607},url:new URL(\"./jrP0OSwKt-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new a({collation:p,collectionSchema:i,fieldNames:ek,range:{from:44607,to:44803},url:new URL(\"./jrP0OSwKt-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new a({collation:p,collectionSchema:i,fieldNames:eB,range:{from:44803,to:45267},url:new URL(\"./jrP0OSwKt-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new a({collation:p,collectionSchema:i,fieldNames:e_,range:{from:45267,to:45506},url:new URL(\"./jrP0OSwKt-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new a({collation:p,collectionSchema:i,fieldNames:eE,range:{from:45506,to:46653},url:new URL(\"./jrP0OSwKt-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new a({collation:p,collectionSchema:i,fieldNames:eY,range:{from:46653,to:46806},url:new URL(\"./jrP0OSwKt-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new a({collation:p,collectionSchema:i,fieldNames:eZ,range:{from:46806,to:47488},url:new URL(\"./jrP0OSwKt-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new a({collation:p,collectionSchema:i,fieldNames:eq,range:{from:47488,to:47643},url:new URL(\"./jrP0OSwKt-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")})],resolveRichText:e1,resolveVectorSetItem:e0,schema:i})},displayName:\"Services\",id:\"fa901104-4879-4127-aa26-9757a22b83de\"};export default e4;e(e4,{NbnpZPvRj:{defaultValue:\"\",title:\"Schema\",type:l.String},wdlqZNHTP:{defaultValue:\"\",title:\"Title\",type:l.String},CNN_66BWJ:{preventLocalization:!0,title:\"Slug\",type:l.String},FvNpjzgFt:{defaultValue:\"\",title:\"Tagline\",type:l.String},AbUN7WmJn:{defaultValue:\"iDYvF_QPZ\",options:[\"iDYvF_QPZ\",\"dqKLlfG2n\",\"MgJlw0tDw\"],optionTitles:[\"Facilitation\",\"Optimisation\",\"Ownership\"],title:\"Service Category\",type:l.Enum},Vhjja7iwE:{defaultValue:\"\",title:\"Button - Text\",type:l.String},fblXFYOrD:{title:\"Button - Link\",type:l.Link},YLPAr33BM:{defaultValue:\"\",displayTextArea:!1,title:\"Menu Subline\",type:l.String},I0KGyudlg:{defaultValue:\"\",displayTextArea:!1,title:\"SEO Title\",type:l.String},Jv2zqgCsN:{defaultValue:\"\",displayTextArea:!0,title:\"SEO Description\",type:l.String},XzCufA_QI:{title:\"Share Image\",type:l.ResponsiveImage},XcGXdUzh5:{defaultValue:\"\",preventLocalization:!1,title:\"Preload Title\",type:l.String},lLBFfJQE7:{defaultValue:\"\",title:\"Hero Title\",type:l.String},yqL1pYDAR:{defaultValue:\"\",displayTextArea:!0,preventLocalization:!1,title:\"Hero Copy\",type:l.String},Rw5XNMBj1:{title:\"Hero Image\",type:l.ResponsiveImage},hsyH_3MGG:{defaultValue:\"\",title:\"Intro Title\",type:l.String},pHMm6e_Iu:{defaultValue:\"\",displayTextArea:!0,title:\"Intro Copy\",type:l.String},jA_IX07Wb:{defaultValue:\"\",title:\"Intro Subtitle 1\",type:l.String},HzXXhfb8k:{defaultValue:\"\",title:\"Intro Subcopy 1\",type:l.RichText},OtGrHSYNN:{defaultValue:\"\",title:\"Intro Subtitle 2\",type:l.String},HCPvmPXgP:{defaultValue:\"\",title:\"Intro Subcopy 2\",type:l.RichText},w3wpfi1cq:{title:\"Intro Image\",type:l.ResponsiveImage},yUGifP405:{allowedFileTypes:[\".mp4\"],title:\"Intro Video\",type:l.File},NppPtJZv_:{title:\"Intro Video - Poster\",type:l.ResponsiveImage},Ktut4q1W0:{defaultValue:\"\",title:\"CTA Title\",type:l.String},vf8LCWTup:{defaultValue:\"\",displayTextArea:!0,title:\"CTA Intro\",type:l.String},VQOKPUP8K:{defaultValue:\"\",title:\"CTA Copy\",type:l.RichText},DxKL3PV0O:{title:\"CTA Image\",type:l.ResponsiveImage},cDbwqv8cp:{defaultValue:\"\",title:\"CTA Vimeo URL\",type:l.String},RtDjRrZKD:{title:\"Use Case Card 1 - Logo\",type:l.ResponsiveImage},jQDClCFu9:{defaultValue:\"\",title:\"Use Case Card 1 - Title\",type:l.String},Fa43ZB5_f:{defaultValue:\"\",displayTextArea:!0,title:\"Use Case Card 1 - Copy\",type:l.String},UWtm6QrK0:{dataIdentifier:\"local-module:collection/Wq1Of9c3N:default\",title:\"Use Case Card 1 - Link\",type:l.CollectionReference},sXbRPLpoN:{title:\"Use Case Card 2 - Logo\",type:l.ResponsiveImage},xrOJXxhUA:{defaultValue:\"\",title:\"Use Case Card 2 - Title\",type:l.String},MvOpxZtYE:{defaultValue:\"\",displayTextArea:!0,title:\"Use Case Card 2 - Copy\",type:l.String},bboPSuWjg:{dataIdentifier:\"local-module:collection/Wq1Of9c3N:default\",title:\"Use Case Card 2 - Link\",type:l.CollectionReference},T6FJxTYjX:{title:\"Use Case Card 3 - Logo\",type:l.ResponsiveImage},dk75Vp1g9:{defaultValue:\"\",title:\"Use Case Card 3 - Title\",type:l.String},J87ovznJo:{defaultValue:\"\",displayTextArea:!0,title:\"Use Case Card 3 - Copy\",type:l.String},lnYerlkQI:{dataIdentifier:\"local-module:collection/Wq1Of9c3N:default\",title:\"Use Case Card 3 - Link\",type:l.CollectionReference},NeEKDEMoS:{defaultValue:\"\",displayTextArea:!1,title:\"Offer Title\",type:l.String},dtdWK2n2h:{defaultValue:\"\",displayTextArea:!0,title:\"Offer Copy\",type:l.String},Ms0pRmHWv:{defaultValue:{identifier:\"local-module:vector/iDJ7NVyus:default\",moduleId:\"1gMLVTWBVOfrO83V04G9\"},setModuleId:\"8FUxTtyzmHCcv3ILLwh5\",title:\"Offer Card 1 - Icon\",type:l.VectorSetItem},zIFz3N69b:{defaultValue:'var(--token-9f5f02f4-64be-4f26-8441-508b1d80bd1a, rgb(255, 166, 166)) /* {\"name\":\"Red\"} */',title:\"Offer Card 1 - Icon Color\",type:l.Color},V5HeAcndk:{defaultValue:\"\",title:\"Offer Card 1 - Title\",type:l.String},CQ_l_iThI:{defaultValue:\"\",title:\"Offer Card 1 - Copy\",type:l.RichText},cleN2CUh1:{defaultValue:{identifier:\"local-module:vector/iDJ7NVyus:default\",moduleId:\"1gMLVTWBVOfrO83V04G9\"},setModuleId:\"8FUxTtyzmHCcv3ILLwh5\",title:\"Offer Card 2 - Icon\",type:l.VectorSetItem},kgD6ITOqk:{defaultValue:'var(--token-9f5f02f4-64be-4f26-8441-508b1d80bd1a, rgb(255, 166, 166)) /* {\"name\":\"Red\"} */',title:\"Offer Card 2 - Icon Color\",type:l.Color},NG00WIYNN:{defaultValue:\"\",title:\"Offer Card 2 - Title\",type:l.String},tFtY8lddB:{defaultValue:\"\",title:\"Offer Card 2 - Copy\",type:l.RichText},O4XmhoexV:{defaultValue:{identifier:\"local-module:vector/iDJ7NVyus:default\",moduleId:\"1gMLVTWBVOfrO83V04G9\"},setModuleId:\"8FUxTtyzmHCcv3ILLwh5\",title:\"Offer Card 3 - Icon\",type:l.VectorSetItem},tprMeshGV:{defaultValue:'var(--token-9f5f02f4-64be-4f26-8441-508b1d80bd1a, rgb(255, 166, 166)) /* {\"name\":\"Red\"} */',title:\"Offer Card 3 - Icon Color\",type:l.Color},umAJiKSUq:{defaultValue:\"\",title:\"Offer Card 3 - Title\",type:l.String},EnPzmcRGN:{defaultValue:\"\",title:\"Offer Card 3 - Copy\",type:l.RichText},vVx5OgKHP:{defaultValue:\"\",title:\"Process Title\",type:l.String},kvKBpZlHp:{defaultValue:\"\",displayTextArea:!0,preventLocalization:!1,title:\"Process Copy\",type:l.String},XgrpARdyy:{defaultValue:{identifier:\"local-module:vector/RKkVe0RTz:default\",moduleId:\"ueegcfcPmjl67GXGK42h\"},setModuleId:\"yNZxEdbMkdUvTh2z1dO2\",title:\"Process Card 1 - Icon\",type:l.VectorSetItem},PG_sRjkOH:{defaultValue:'var(--token-9f5f02f4-64be-4f26-8441-508b1d80bd1a, rgb(255, 166, 166)) /* {\"name\":\"Red\"} */',title:\"Process Card 1 - Icon Color\",type:l.Color},crtqZ4s3s:{defaultValue:\"\",title:\"Process Card 1 - Title\",type:l.String},NFMeT2ESO:{defaultValue:\"\",title:\"Process Card 1 - Intro\",type:l.RichText},QH6sTTtw6:{defaultValue:\"\",title:\"Process Card 1 - Copy\",type:l.RichText},jyCwROY8O:{defaultValue:{identifier:\"local-module:vector/RKkVe0RTz:default\",moduleId:\"ueegcfcPmjl67GXGK42h\"},setModuleId:\"yNZxEdbMkdUvTh2z1dO2\",title:\"Process Card 2 - Icon\",type:l.VectorSetItem},E2fQQhoGV:{defaultValue:'var(--token-9f5f02f4-64be-4f26-8441-508b1d80bd1a, rgb(255, 166, 166)) /* {\"name\":\"Red\"} */',title:\"Process Card 2 - Icon Color\",type:l.Color},yR8hIsxvZ:{defaultValue:\"\",title:\"Process Card 2 - Title\",type:l.String},mbg93KYLU:{defaultValue:\"\",title:\"Process Card 2 - Intro\",type:l.RichText},kOxJQdzBY:{defaultValue:\"\",title:\"Process Card 2 - Copy\",type:l.RichText},SkAGKBXLu:{defaultValue:{identifier:\"local-module:vector/RKkVe0RTz:default\",moduleId:\"ueegcfcPmjl67GXGK42h\"},setModuleId:\"yNZxEdbMkdUvTh2z1dO2\",title:\"Process Card 3 - Icon\",type:l.VectorSetItem},WuQdlj3PN:{defaultValue:'var(--token-9f5f02f4-64be-4f26-8441-508b1d80bd1a, rgb(255, 166, 166)) /* {\"name\":\"Red\"} */',title:\"Process Card 3 - Icon Color\",type:l.Color},XGKGnRNS4:{defaultValue:\"\",title:\"Process Card 3 - Title\",type:l.String},ThBhfd5TD:{defaultValue:\"\",title:\"Process Card 3 - Intro\",type:l.RichText},Dfg82ji9M:{defaultValue:\"\",title:\"Process Card 3 - Copy\",type:l.RichText},sFV0eEIpO:{defaultValue:\"\",title:\"FAQ - Question 1\",type:l.String},vh7ZZtQqa:{defaultValue:\"\",title:\"FAQ - Answer 1\",type:l.RichText},VJh7UanRx:{defaultValue:\"\",title:\"FAQ - Question 2\",type:l.String},VdSufQESa:{defaultValue:\"\",title:\"FAQ - Answer 2\",type:l.RichText},xHvREmHod:{defaultValue:\"\",title:\"FAQ - Question 3\",type:l.String},BAmpC90GM:{defaultValue:\"\",title:\"FAQ - Answer 3\",type:l.RichText},NpwxnWMrc:{defaultValue:\"\",title:\"FAQ - Question 4\",type:l.String},h5XYWJQba:{defaultValue:\"\",title:\"FAQ - Answer 4\",type:l.RichText},HsbbluCdF:{defaultValue:\"\",title:\"FAQ - Question 5\",type:l.String},wnwPio39V:{defaultValue:\"\",title:\"FAQ - Answer 5\",type:l.RichText},acafWJBWV:{defaultValue:\"\",title:\"FAQ - Question 6\",type:l.String},A_7lpD2lf:{defaultValue:\"\",title:\"FAQ - Answer 6\",type:l.RichText},ismHe8_QV:{defaultValue:\"\",title:\"FAQ - Question 7\",type:l.String},gJ3y4SmKr:{defaultValue:\"\",title:\"FAQ - Answer 7\",type:l.RichText},DTbSbZdzy:{defaultValue:\"\",title:\"FAQ - Question 8\",type:l.String},y0jR_vcwy:{defaultValue:\"\",title:\"FAQ - Answer 8\",type:l.RichText},pMUvKuiwp:{defaultValue:\"\",title:\"FAQ - Question 9\",type:l.String},hnzrx7E3g:{defaultValue:\"\",title:\"FAQ - Answer 9\",type:l.RichText},CRfN6jzLK:{defaultValue:\"\",title:\"FAQ - Question 10\",type:l.String},g9ivP61xm:{defaultValue:\"\",title:\"FAQ - Answer 10\",type:l.RichText},bUTmcnKMX:{dataIdentifier:\"local-module:collection/XfEDg_QyV:default\",title:\"Articles\",type:l.MultiCollectionReference},createdAt:{title:\"Created\",type:l.Date},updatedAt:{title:\"Updated\",type:l.Date},previousItemId:{dataIdentifier:\"local-module:collection/jrP0OSwKt:default\",title:\"Previous\",type:l.CollectionReference},nextItemId:{dataIdentifier:\"local-module:collection/jrP0OSwKt:default\",title:\"Next\",type:l.CollectionReference}});export const AbUN7WmJnToDisplayName=(e,l)=>{switch(l?.fallback,e){case\"iDYvF_QPZ\":return\"Facilitation\";case\"dqKLlfG2n\":return\"Optimisation\";case\"MgJlw0tDw\":return\"Ownership\";default:return\"\";}};export const enumToDisplayNameFunctions={AbUN7WmJn:AbUN7WmJnToDisplayName};export const utils={async getSlugByRecordId(e,l){let[t]=await e3.query({from:{data:e4,type:\"Collection\"},limit:{type:\"LiteralValue\",value:1},select:[{name:\"CNN_66BWJ\",type:\"Identifier\"}],where:{left:{name:\"id\",type:\"Identifier\"},operator:\"==\",right:{type:\"LiteralValue\",value:e},type:\"BinaryOperation\"}},l);return t?.CNN_66BWJ;},async getRecordIdBySlug(e,l){let[t]=await e3.query({from:{data:e4,type:\"Collection\"},limit:{type:\"LiteralValue\",value:1},select:[{name:\"id\",type:\"Identifier\"}],where:{left:{name:\"CNN_66BWJ\",type:\"Identifier\"},operator:\"==\",right:{type:\"LiteralValue\",value:e},type:\"BinaryOperation\"}},l);return t?.id;}};\nexport const __FramerMetadata__ = {\"exports\":{\"AbUN7WmJnToDisplayName\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"enumToDisplayNameFunctions\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"utils\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"default\":{\"type\":\"data\",\"name\":\"data\",\"annotations\":{\"framerCollectionId\":\"jrP0OSwKt\",\"framerSlug\":\"CNN_66BWJ\",\"framerData\":\"true\",\"framerCollectionUtils\":\"1\",\"framerAutoSizeImages\":\"true\",\"framerColorSyntax\":\"false\",\"framerEnumToDisplayNameUtils\":\"2\",\"framerRecordIdKey\":\"id\",\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","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(){return e||(0,t[i(t)[0]])((e={exports:{}}).exports,e),e.exports;},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()),g={Uint8:1,Uint16:2,Uint32:4,BigUint64:8,Int8:1,Int16:2,Int32:4,BigInt64:8,Float32:4,Float64:8},p=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){this.bytes=t,c(this,\"offset\",0),c(this,\"view\"),c(this,\"decoder\",new TextDecoder),this.view=v(this.bytes);}};function v(t){return new DataView(t.buffer,t.byteOffset,t.byteLength);}// src/code-generation/components/cms/bundled/DatabaseDictionaryIndex.ts\nimport{ControlType as y}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=v(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\",v(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){this.chunkId=t,this.offset=e,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 tp(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 tv(t){return{type:P.String,value:t.readString()};}function ty(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 tv(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 ty(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),tp(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 p(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){this.fieldNames=t,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!==y.String||e.value?.type!==y.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!==y.String||e.value?.type!==y.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!==y.String||e.value?.type!==y.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){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 p(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){this.id=t,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 p(e),i=tA.read(n),s=t[r];return I(s,\"Missing pointer\"),{pointer:s,data:i.getData()};});}));}},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){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\":{\"DatabaseCollection\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"DatabaseDictionaryIndex\":{\"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{ComponentPresetsConsumer as t,Link as r,motion as n}from\"framer\";// ../../library/src/router/lazy.tsx\nimport{isValidElement as o}from\"react\";// ../../library/src/utils/utils.ts\nvar i,a=\"undefined\"!=typeof window,l=a&&\"function\"==typeof window.requestIdleCallback,u=\"preload\";function f(e){return\"object\"==typeof e&&null!==e&&!/*#__PURE__*/o(e)&&u in e;}// src/code-generation/components/cms/bundled/getRichTextJsonResolver.tsx?bundle\nimport{Fragment as c,createElement as p}from\"react\";// src/code-generation/components/cms/bundled/assert.ts\nfunction s(e,...t){if(!e)throw Error(\"Assertion Error\"+(t.length>0?\": \"+t.join(\" \"):\"\"));}// src/code-generation/components/cms/bundled/getRichTextJsonResolver.tsx?bundle\nvar m=((i=m||{})[i.Fragment=1]=\"Fragment\",i[i.Link=2]=\"Link\",i[i.Module=3]=\"Module\",i[i.Tag=4]=\"Tag\",i[i.Text=5]=\"Text\",i);function d(o){let i=/* @__PURE__ */new Map;return a=>{let l=i.get(a);if(l)return l;let u=JSON.parse(a),m=function i(a){switch(a[0]){case 1/* Fragment */:{let[,...e]=a,t=e.map(i);return /*#__PURE__*/p(c,void 0,...t);}case 2/* Link */:{let[,e,...t]=a,n=t.map(i);return /*#__PURE__*/p(r,e,...n);}case 3/* Module */:{let[,r,n,l]=a;for(let e of l){let t=n[e];t&&(n[e]=i(t));}let u=o[r];return s(u,\"Module not found\"),f(u)&&u.preload(),/*#__PURE__*/e(t,{componentIdentifier:r,children:t=>/*#__PURE__*/e(u,{...t,...n})});}case 4/* Tag */:{let[,e,t,...r]=a,o=r.map(i);if(\"a\"===e)return /*#__PURE__*/p(n.a,t,...o);return /*#__PURE__*/p(e,t,...o);}case 5/* Text */:{let[,e]=a;return e;}}}(u);return i.set(a,m),m;};}export{m as RichTextJsonType,d as getRichTextJsonResolver};\nexport const __FramerMetadata__ = {\"exports\":{\"RichTextJsonType\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"getRichTextJsonResolver\":{\"type\":\"reactComponent\",\"name\":\"getRichTextJsonResolver\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// Generated by Framer (89f6630)\nimport{addPropertyControls as e,ControlType as l,QueryEngine as t}from\"framer\";import{DatabaseCollection as a,DatabaseDictionaryIndex as r}from\"./Wq1Of9c3N-0.js\";import{getRichTextJsonResolver as i}from\"./Wq1Of9c3N-1.js\";let o={aERQd1Lx_:{isNullable:!0,type:l.VectorSetItem},AIpn_Kuvq:{isNullable:!0,type:l.Link},akqhZZKpD:{isNullable:!0,type:l.String},Amz4kgrqp:{isNullable:!0,type:l.RichText},Boymn3Xdm:{isNullable:!0,type:l.RichText},BoyX9lroi:{isNullable:!0,type:l.String},BvDP6EE_z:{isNullable:!0,type:l.ResponsiveImage},bwiwjsFvn:{isNullable:!0,type:l.String},ByD4ncjxj:{isNullable:!0,type:l.String},C4GQWxI6v:{isNullable:!0,type:l.Link},createdAt:{isNullable:!0,type:l.Date},CWbLwKYag:{isNullable:!0,type:l.String},D86KDtbVU:{isNullable:!0,type:l.String},DV8HR61ef:{isNullable:!0,type:l.RichText},dwNetX5kD:{isNullable:!0,type:l.String},DZWXLh1Bd:{isNullable:!0,type:l.Link},eJ1PSvlti:{isNullable:!0,type:l.Link},EMI0BDiz8:{isNullable:!0,type:l.String},eMxPaSad9:{isNullable:!0,type:l.String},ETj0BR1gM:{isNullable:!0,type:l.File},eWjNwTGgc:{isNullable:!0,type:l.String},EXaT1t8bz:{isNullable:!0,type:l.String},f363EIMpu:{isNullable:!0,type:l.String},f7_WlGjlQ:{isNullable:!0,type:l.String},FR7ZVpVBT:{isNullable:!0,type:l.String},fvEXv9AMK:{isNullable:!0,type:l.File},FYbUkUiW2:{isNullable:!0,type:l.String},G_cwCbyiX:{isNullable:!0,type:l.RichText},GhWfm9cmX:{isNullable:!0,type:l.RichText},GmSLnb1w4:{isNullable:!0,type:l.String},Gmvdlokaz:{isNullable:!0,type:l.String},gyhMJJ4eS:{isNullable:!0,type:l.String},GZzgYb6jN:{isNullable:!0,type:l.RichText},hOHnhPtko:{isNullable:!0,type:l.Link},HSEh6k2sk:{isNullable:!0,type:l.String},HyIHhgb7F:{isNullable:!0,type:l.String},id:{isNullable:!1,type:l.String},IjCsEmPon:{isNullable:!0,type:l.ResponsiveImage},iphYNa3Kk:{isNullable:!0,type:l.String},IQVtx88Gw:{isNullable:!0,type:l.Link},Jmvuq4TcL:{isNullable:!0,type:l.RichText},k13QTfzlQ:{isNullable:!0,type:l.String},K5yvI7s0m:{isNullable:!0,type:l.String},KcaNA8oP0:{isNullable:!0,type:l.Link},kpvqwLNHT:{isNullable:!0,type:l.String},kSAtfUjB4:{isNullable:!0,type:l.VectorSetItem},KYdpNgRAB:{isNullable:!0,type:l.Link},LLXuG_b6b:{isNullable:!0,type:l.RichText},LVGuXwGq5:{isNullable:!0,type:l.String},m16IXKMet:{isNullable:!0,type:l.String},M8gwKnM2I:{isNullable:!0,type:l.ResponsiveImage},M8j5rMmU1:{isNullable:!0,type:l.String},Mc_8TIA12:{isNullable:!0,type:l.String},mJEl7zBXV:{isNullable:!0,type:l.String},mlAmCtDYV:{isNullable:!0,type:l.ResponsiveImage},nc3ZvGiIL:{isNullable:!0,type:l.String},nextItemId:{isNullable:!0,type:l.String},NkIRGkh87:{isNullable:!0,type:l.String},NW_kksM5S:{isNullable:!0,type:l.ResponsiveImage},NzbKsCQpp:{isNullable:!0,type:l.String},o68RWnDoy:{isNullable:!0,type:l.RichText},Ob01RE8zH:{isNullable:!0,type:l.String},OOannEdAe:{isNullable:!0,type:l.String},oQgTgjjaq:{isNullable:!0,type:l.String},PlMqEJJd1:{isNullable:!0,type:l.String},PPDPp2_51:{isNullable:!0,type:l.Enum},pphZlvXXm:{isNullable:!0,type:l.Link},previousItemId:{isNullable:!0,type:l.String},PSIt7XViB:{isNullable:!0,type:l.RichText},PVmerGoK8:{isNullable:!0,type:l.String},q_d1LUHCP:{isNullable:!0,type:l.String},q14VJDrLT:{isNullable:!0,type:l.RichText},Q3Rd0xbec:{isNullable:!0,type:l.String},q9ZFC09xL:{isNullable:!0,type:l.File},qmj7g6YJ2:{isNullable:!0,type:l.RichText},QSywNtIJ4:{isNullable:!0,type:l.String},RG6sbyvtf:{isNullable:!0,type:l.String},rQ9ylzZWb:{isNullable:!0,type:l.String},RzFQF9kaz:{isNullable:!0,type:l.RichText},s2kJyaMKe:{isNullable:!0,type:l.String},s4BEYQJgI:{isNullable:!0,type:l.String},sBNVMPp38:{isNullable:!0,type:l.ResponsiveImage},sT6XBRpZT:{isNullable:!0,type:l.RichText},sTLQD_MAN:{isNullable:!0,type:l.String},symvNr31g:{isNullable:!0,type:l.ResponsiveImage},T9896FP5G:{isNullable:!0,type:l.ResponsiveImage},td5wHY82w:{isNullable:!0,type:l.String},TdPBdIdKf:{isNullable:!0,type:l.String},tT_1enJbt:{isNullable:!0,type:l.ResponsiveImage},TuFZF_fKH:{isNullable:!0,type:l.String},tX6j_WQ8q:{isNullable:!0,type:l.RichText},U3wTV0M9X:{isNullable:!0,type:l.String},UEGkTLhc6:{isNullable:!0,type:l.String},uevz7IAHx:{isNullable:!0,type:l.String},Ufz6x4bZF:{isNullable:!0,type:l.Link},UnQVDhdWd:{isNullable:!0,type:l.String},updatedAt:{isNullable:!0,type:l.Date},uS47QYo_V:{isNullable:!0,type:l.String},V7vkJysDw:{isNullable:!0,type:l.RichText},v9lQ7zU23:{isNullable:!0,type:l.String},vHQqjT4IF:{isNullable:!0,type:l.String},viEOsOJKr:{isNullable:!0,type:l.String},vVCUjOMgz:{isNullable:!0,type:l.File},VYuxcER33:{isNullable:!0,type:l.ResponsiveImage},wHBqvefJu:{isNullable:!0,type:l.String},WPhb69DTM:{isNullable:!0,type:l.VectorSetItem},WS0DOOA40:{isNullable:!0,type:l.VectorSetItem},Wz8HJ3j83:{isNullable:!0,type:l.RichText},X2e5lSYEB:{isNullable:!0,type:l.ResponsiveImage},X4YdLEZtd:{isNullable:!0,type:l.RichText},XFLEsvYKE:{isNullable:!0,type:l.String},xrqflxyNf:{isNullable:!0,type:l.VectorSetItem},xrvgco4vF:{isNullable:!0,type:l.RichText},XXSxOniVn:{isNullable:!0,type:l.VectorSetItem},yFp2tucRh:{isNullable:!0,type:l.RichText},YfSPHkEpM:{isNullable:!0,type:l.VectorSetItem},YG7urboWF:{isNullable:!0,type:l.String},Yrb_AWm3j:{isNullable:!0,type:l.Link},YRlvztTk_:{isNullable:!0,type:l.RichText},zUHjOfM3l:{isNullable:!0,type:l.String}},m=[\"id\"],c={type:1},n=[\"previousItemId\"],u=[\"nextItemId\"],f=[\"id\",\"wHBqvefJu\"],s=[\"wHBqvefJu\",\"id\"],d=[\"v9lQ7zU23\"],p={type:0},N=[\"wHBqvefJu\"],y=[\"sTLQD_MAN\"],g=[\"LVGuXwGq5\"],S=[\"Yrb_AWm3j\"],h=[\"nc3ZvGiIL\"],w=[\"C4GQWxI6v\"],x=[\"PPDPp2_51\"],R=[\"PlMqEJJd1\"],L=[\"k13QTfzlQ\"],b=[\"M8gwKnM2I\"],V=[\"T9896FP5G\"],T=[\"ETj0BR1gM\"],W=[\"symvNr31g\"],q=[\"td5wHY82w\"],O=[\"BoyX9lroi\"],U=[\"mlAmCtDYV\"],I=[\"vVCUjOMgz\"],v=[\"NW_kksM5S\"],k=[\"G_cwCbyiX\"],A=[\"xrvgco4vF\"],B=[\"YRlvztTk_\"],F=[\"Wz8HJ3j83\"],Q=[\"RzFQF9kaz\"],D=[\"OOannEdAe\"],P=[\"q_d1LUHCP\"],M=[\"hOHnhPtko\"],E=[\"Gmvdlokaz\"],z=[\"EMI0BDiz8\"],X=[\"KcaNA8oP0\"],C=[\"HyIHhgb7F\"],G=[\"akqhZZKpD\"],J=[\"eJ1PSvlti\"],H=[\"UEGkTLhc6\"],j=[\"CWbLwKYag\"],K=[\"IQVtx88Gw\"],Y=[\"U3wTV0M9X\"],_=[\"s2kJyaMKe\"],Z=[\"pphZlvXXm\"],$=[\"QSywNtIJ4\"],ee=[\"zUHjOfM3l\"],el=[\"KYdpNgRAB\"],et=[\"Q3Rd0xbec\"],ea=[\"FR7ZVpVBT\"],er=[\"gyhMJJ4eS\"],ei=[\"IjCsEmPon\"],eo=[\"fvEXv9AMK\"],em=[\"sBNVMPp38\"],ec=[\"kSAtfUjB4\"],en=[\"ByD4ncjxj\"],eu=[\"X4YdLEZtd\"],ef=[\"xrqflxyNf\"],es=[\"FYbUkUiW2\"],ed=[\"q14VJDrLT\"],ep=[\"WPhb69DTM\"],eN=[\"RG6sbyvtf\"],ey=[\"DV8HR61ef\"],eg=[\"WS0DOOA40\"],eS=[\"f7_WlGjlQ\"],eh=[\"GhWfm9cmX\"],ew=[\"HSEh6k2sk\"],ex=[\"EXaT1t8bz\"],eR=[\"YfSPHkEpM\"],eL=[\"NzbKsCQpp\"],eb=[\"YG7urboWF\"],eV=[\"f363EIMpu\"],eT=[\"Ufz6x4bZF\"],eW=[\"aERQd1Lx_\"],eq=[\"TuFZF_fKH\"],eO=[\"UnQVDhdWd\"],eU=[\"K5yvI7s0m\"],eI=[\"AIpn_Kuvq\"],ev=[\"XXSxOniVn\"],ek=[\"PVmerGoK8\"],eA=[\"eMxPaSad9\"],eB=[\"mJEl7zBXV\"],eF=[\"DZWXLh1Bd\"],eQ=[\"m16IXKMet\"],eD=[\"D86KDtbVU\"],eP=[\"VYuxcER33\"],eM=[\"kpvqwLNHT\"],eE=[\"BvDP6EE_z\"],ez=[\"viEOsOJKr\"],eX=[\"qmj7g6YJ2\"],eC=[\"tT_1enJbt\"],eG=[\"q9ZFC09xL\"],eJ=[\"X2e5lSYEB\"],eH=[\"M8j5rMmU1\"],ej=[\"TdPBdIdKf\"],eK=[\"oQgTgjjaq\"],eY=[\"uS47QYo_V\"],e_=[\"iphYNa3Kk\"],eZ=[\"rQ9ylzZWb\"],e$=[\"XFLEsvYKE\"],e1=[\"sT6XBRpZT\"],e0=[\"Mc_8TIA12\"],e3=[\"tX6j_WQ8q\"],e9=[\"uevz7IAHx\"],e2=[\"yFp2tucRh\"],e4=[\"eWjNwTGgc\"],e5=[\"Jmvuq4TcL\"],e6=[\"Ob01RE8zH\"],e8=[\"PSIt7XViB\"],e7=[\"dwNetX5kD\"],le=[\"Amz4kgrqp\"],ll=[\"GmSLnb1w4\"],lt=[\"GZzgYb6jN\"],la=[\"s4BEYQJgI\"],lr=[\"LLXuG_b6b\"],li=[\"bwiwjsFvn\"],lo=[\"o68RWnDoy\"],lm=[\"NkIRGkh87\"],lc=[\"V7vkJysDw\"],ln=[\"vHQqjT4IF\"],lu=[\"Boymn3Xdm\"],lf=[()=>import(\"https://framerusercontent.com/modules/1gMLVTWBVOfrO83V04G9/1w0W6RUhaMsPEOjeYuLf/iDJ7NVyus.js\"),()=>import(\"https://framerusercontent.com/modules/6FpmtJHkjapLF2AX5FrX/lL9SuvExMTXASgLQBIkB/m4iTvoen5.js\"),()=>import(\"https://framerusercontent.com/modules/4ClI3RDrKmJqZ7q8nw2g/fLi1SLpiEMB1k7rSL3BX/l4xAdfaph.js\"),()=>import(\"https://framerusercontent.com/modules/Ya6GTQqj8jfeAQChPcyO/KeDK7i5a9qBvZ1taO8vg/kRpKQGv0e.js\"),()=>import(\"https://framerusercontent.com/modules/s32UN4uWgN3ofk0LVyA2/s8Vksmcu9yxrX3BM0vXR/ETV6gQBxe.js\"),()=>import(\"https://framerusercontent.com/modules/BWRbop1oYu2FtLpmJKW6/pBGb4RvubiTRE6VKwwe2/fiEOzFtpZ.js\"),()=>import(\"https://framerusercontent.com/modules/H3vnFOJxUprEpWUDY7i3/zwxeiNyiPT8zP1hQzXUV/xQjMkRUXK.js\")],ls=e=>{let l=lf[e];if(l)return l().then(e=>e.default);},ld={},lp=i(ld),lN=new t,ly={collectionByLocaleId:{default:new a({chunks:[new URL(\"./Wq1Of9c3N-chunk-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")],id:\"52bbc230-6f57-46d0-8a94-2a0a2fdf22c7default\",indexes:[new r({collation:c,collectionSchema:o,fieldNames:m,range:{from:0,to:145},url:new URL(\"./Wq1Of9c3N-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:c,collectionSchema:o,fieldNames:n,range:{from:145,to:289},url:new URL(\"./Wq1Of9c3N-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:c,collectionSchema:o,fieldNames:u,range:{from:289,to:429},url:new URL(\"./Wq1Of9c3N-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:c,collectionSchema:o,fieldNames:f,range:{from:429,to:751},url:new URL(\"./Wq1Of9c3N-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:c,collectionSchema:o,fieldNames:s,range:{from:751,to:1073},url:new URL(\"./Wq1Of9c3N-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:d,range:{from:1073,to:1319},url:new URL(\"./Wq1Of9c3N-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:N,range:{from:1319,to:1565},url:new URL(\"./Wq1Of9c3N-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:y,range:{from:1565,to:2034},url:new URL(\"./Wq1Of9c3N-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:g,range:{from:2034,to:2226},url:new URL(\"./Wq1Of9c3N-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:S,range:{from:2226,to:3342},url:new URL(\"./Wq1Of9c3N-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:h,range:{from:3342,to:3514},url:new URL(\"./Wq1Of9c3N-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:w,range:{from:3514,to:3746},url:new URL(\"./Wq1Of9c3N-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:x,range:{from:3746,to:3898},url:new URL(\"./Wq1Of9c3N-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:R,range:{from:3898,to:4144},url:new URL(\"./Wq1Of9c3N-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:L,range:{from:4144,to:4851},url:new URL(\"./Wq1Of9c3N-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:b,range:{from:4851,to:4938},url:new URL(\"./Wq1Of9c3N-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:V,range:{from:4938,to:8227},url:new URL(\"./Wq1Of9c3N-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:T,range:{from:8227,to:8314},url:new URL(\"./Wq1Of9c3N-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:W,range:{from:8314,to:8401},url:new URL(\"./Wq1Of9c3N-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:q,range:{from:8401,to:8689},url:new URL(\"./Wq1Of9c3N-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:O,range:{from:8689,to:9557},url:new URL(\"./Wq1Of9c3N-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:U,range:{from:9557,to:12978},url:new URL(\"./Wq1Of9c3N-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:I,range:{from:12978,to:13065},url:new URL(\"./Wq1Of9c3N-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:v,range:{from:13065,to:13152},url:new URL(\"./Wq1Of9c3N-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:k,range:{from:13152,to:13758},url:new URL(\"./Wq1Of9c3N-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:A,range:{from:13758,to:14376},url:new URL(\"./Wq1Of9c3N-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:B,range:{from:14376,to:14992},url:new URL(\"./Wq1Of9c3N-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:F,range:{from:14992,to:15539},url:new URL(\"./Wq1Of9c3N-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:Q,range:{from:15539,to:15626},url:new URL(\"./Wq1Of9c3N-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:D,range:{from:15626,to:16221},url:new URL(\"./Wq1Of9c3N-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:P,range:{from:16221,to:16328},url:new URL(\"./Wq1Of9c3N-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:M,range:{from:16328,to:16415},url:new URL(\"./Wq1Of9c3N-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:E,range:{from:16415,to:16853},url:new URL(\"./Wq1Of9c3N-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:z,range:{from:16853,to:16960},url:new URL(\"./Wq1Of9c3N-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:X,range:{from:16960,to:17047},url:new URL(\"./Wq1Of9c3N-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:C,range:{from:17047,to:17486},url:new URL(\"./Wq1Of9c3N-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:G,range:{from:17486,to:17593},url:new URL(\"./Wq1Of9c3N-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:J,range:{from:17593,to:17680},url:new URL(\"./Wq1Of9c3N-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:H,range:{from:17680,to:18216},url:new URL(\"./Wq1Of9c3N-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:j,range:{from:18216,to:18396},url:new URL(\"./Wq1Of9c3N-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:K,range:{from:18396,to:18611},url:new URL(\"./Wq1Of9c3N-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:Y,range:{from:18611,to:19085},url:new URL(\"./Wq1Of9c3N-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:_,range:{from:19085,to:19192},url:new URL(\"./Wq1Of9c3N-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:Z,range:{from:19192,to:19279},url:new URL(\"./Wq1Of9c3N-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:$,range:{from:19279,to:20023},url:new URL(\"./Wq1Of9c3N-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:ee,range:{from:20023,to:20130},url:new URL(\"./Wq1Of9c3N-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:el,range:{from:20130,to:20217},url:new URL(\"./Wq1Of9c3N-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:et,range:{from:20217,to:20547},url:new URL(\"./Wq1Of9c3N-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:ea,range:{from:20547,to:20754},url:new URL(\"./Wq1Of9c3N-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:er,range:{from:20754,to:21698},url:new URL(\"./Wq1Of9c3N-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:ei,range:{from:21698,to:21785},url:new URL(\"./Wq1Of9c3N-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:eo,range:{from:21785,to:21872},url:new URL(\"./Wq1Of9c3N-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:em,range:{from:21872,to:21959},url:new URL(\"./Wq1Of9c3N-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:ec,range:{from:21959,to:22066},url:new URL(\"./Wq1Of9c3N-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:en,range:{from:22066,to:22332},url:new URL(\"./Wq1Of9c3N-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:eu,range:{from:22332,to:22942},url:new URL(\"./Wq1Of9c3N-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:ef,range:{from:22942,to:23049},url:new URL(\"./Wq1Of9c3N-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:es,range:{from:23049,to:23284},url:new URL(\"./Wq1Of9c3N-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:ed,range:{from:23284,to:23925},url:new URL(\"./Wq1Of9c3N-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:ep,range:{from:23925,to:24032},url:new URL(\"./Wq1Of9c3N-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:eN,range:{from:24032,to:24255},url:new URL(\"./Wq1Of9c3N-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:ey,range:{from:24255,to:24985},url:new URL(\"./Wq1Of9c3N-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:eg,range:{from:24985,to:25092},url:new URL(\"./Wq1Of9c3N-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:eS,range:{from:25092,to:25316},url:new URL(\"./Wq1Of9c3N-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:eh,range:{from:25316,to:25974},url:new URL(\"./Wq1Of9c3N-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:ew,range:{from:25974,to:26299},url:new URL(\"./Wq1Of9c3N-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:ex,range:{from:26299,to:26801},url:new URL(\"./Wq1Of9c3N-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:eR,range:{from:26801,to:26908},url:new URL(\"./Wq1Of9c3N-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:eL,range:{from:26908,to:27116},url:new URL(\"./Wq1Of9c3N-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:eb,range:{from:27116,to:27731},url:new URL(\"./Wq1Of9c3N-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:eV,range:{from:27731,to:27965},url:new URL(\"./Wq1Of9c3N-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:eT,range:{from:27965,to:28795},url:new URL(\"./Wq1Of9c3N-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:eW,range:{from:28795,to:28902},url:new URL(\"./Wq1Of9c3N-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:eq,range:{from:28902,to:29105},url:new URL(\"./Wq1Of9c3N-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:eO,range:{from:29105,to:29691},url:new URL(\"./Wq1Of9c3N-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:eU,range:{from:29691,to:30027},url:new URL(\"./Wq1Of9c3N-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:eI,range:{from:30027,to:31104},url:new URL(\"./Wq1Of9c3N-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:ev,range:{from:31104,to:31211},url:new URL(\"./Wq1Of9c3N-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:ek,range:{from:31211,to:31407},url:new URL(\"./Wq1Of9c3N-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:eA,range:{from:31407,to:31942},url:new URL(\"./Wq1Of9c3N-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:eB,range:{from:31942,to:32211},url:new URL(\"./Wq1Of9c3N-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:eF,range:{from:32211,to:33183},url:new URL(\"./Wq1Of9c3N-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:eQ,range:{from:33183,to:33345},url:new URL(\"./Wq1Of9c3N-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:eD,range:{from:33345,to:33788},url:new URL(\"./Wq1Of9c3N-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:eP,range:{from:33788,to:33875},url:new URL(\"./Wq1Of9c3N-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:eM,range:{from:33875,to:34157},url:new URL(\"./Wq1Of9c3N-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:eE,range:{from:34157,to:34927},url:new URL(\"./Wq1Of9c3N-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:ez,range:{from:34927,to:35317},url:new URL(\"./Wq1Of9c3N-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:eX,range:{from:35317,to:39876},url:new URL(\"./Wq1Of9c3N-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:eC,range:{from:39876,to:43176},url:new URL(\"./Wq1Of9c3N-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:eG,range:{from:43176,to:43263},url:new URL(\"./Wq1Of9c3N-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:eJ,range:{from:43263,to:43350},url:new URL(\"./Wq1Of9c3N-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:eH,range:{from:43350,to:43489},url:new URL(\"./Wq1Of9c3N-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:ej,range:{from:43489,to:43811},url:new URL(\"./Wq1Of9c3N-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:eK,range:{from:43811,to:44621},url:new URL(\"./Wq1Of9c3N-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:eY,range:{from:44621,to:45015},url:new URL(\"./Wq1Of9c3N-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:e_,range:{from:45015,to:45457},url:new URL(\"./Wq1Of9c3N-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:eZ,range:{from:45457,to:45966},url:new URL(\"./Wq1Of9c3N-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:e$,range:{from:45966,to:46531},url:new URL(\"./Wq1Of9c3N-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:e1,range:{from:46531,to:48934},url:new URL(\"./Wq1Of9c3N-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:e0,range:{from:48934,to:49348},url:new URL(\"./Wq1Of9c3N-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:e3,range:{from:49348,to:51853},url:new URL(\"./Wq1Of9c3N-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:e9,range:{from:51853,to:52251},url:new URL(\"./Wq1Of9c3N-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:e2,range:{from:52251,to:55082},url:new URL(\"./Wq1Of9c3N-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:e4,range:{from:55082,to:55486},url:new URL(\"./Wq1Of9c3N-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:e5,range:{from:55486,to:58246},url:new URL(\"./Wq1Of9c3N-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:e6,range:{from:58246,to:58609},url:new URL(\"./Wq1Of9c3N-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:e8,range:{from:58609,to:61811},url:new URL(\"./Wq1Of9c3N-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:e7,range:{from:61811,to:62121},url:new URL(\"./Wq1Of9c3N-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:le,range:{from:62121,to:64460},url:new URL(\"./Wq1Of9c3N-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:ll,range:{from:64460,to:64645},url:new URL(\"./Wq1Of9c3N-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:lt,range:{from:64645,to:65243},url:new URL(\"./Wq1Of9c3N-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:la,range:{from:65243,to:65350},url:new URL(\"./Wq1Of9c3N-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:lr,range:{from:65350,to:65437},url:new URL(\"./Wq1Of9c3N-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:li,range:{from:65437,to:65544},url:new URL(\"./Wq1Of9c3N-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:lo,range:{from:65544,to:65631},url:new URL(\"./Wq1Of9c3N-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:lm,range:{from:65631,to:65738},url:new URL(\"./Wq1Of9c3N-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:lc,range:{from:65738,to:65825},url:new URL(\"./Wq1Of9c3N-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:ln,range:{from:65825,to:65932},url:new URL(\"./Wq1Of9c3N-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:lu,range:{from:65932,to:66019},url:new URL(\"./Wq1Of9c3N-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")})],resolveRichText:lp,resolveVectorSetItem:ls,schema:o})},displayName:\"Use Cases\",id:\"52bbc230-6f57-46d0-8a94-2a0a2fdf22c7\"};export default ly;e(ly,{v9lQ7zU23:{defaultValue:\"\",title:\"Title\",type:l.String},wHBqvefJu:{preventLocalization:!0,title:\"Slug\",type:l.String},sTLQD_MAN:{defaultValue:\"\",displayTextArea:!0,title:\"Summary\",type:l.String},LVGuXwGq5:{defaultValue:\"\",title:\"Primary Button - Text\",type:l.String},Yrb_AWm3j:{title:\"Primary Button - Link\",type:l.Link},nc3ZvGiIL:{defaultValue:\"\",title:\"Secondary Button - Text\",type:l.String},C4GQWxI6v:{title:\"Secondary Button - Link\",type:l.Link},PPDPp2_51:{defaultValue:\"oSsabloay\",options:[\"oSsabloay\",\"kfw7TaRNz\",\"ymPKD0uEt\"],optionTitles:[\"Orange\",\"Blue\",\"Green\"],title:\"Color Theme\",type:l.Enum},PlMqEJJd1:{defaultValue:\"\",displayTextArea:!1,title:\"SEO Title\",type:l.String},k13QTfzlQ:{defaultValue:\"\",displayTextArea:!0,title:\"SEO Description\",type:l.String},M8gwKnM2I:{title:\"Share Image\",type:l.ResponsiveImage},T9896FP5G:{title:\"Hero Image\",type:l.ResponsiveImage},ETj0BR1gM:{allowedFileTypes:[\".mp4\"],title:\"Hero Video\",type:l.File},symvNr31g:{title:\"Hero Video - Poster\",type:l.ResponsiveImage},td5wHY82w:{defaultValue:\"\",title:\"Problems Title\",type:l.String},BoyX9lroi:{defaultValue:\"\",displayTextArea:!0,preventLocalization:!1,title:\"Problems Intro\",type:l.String},mlAmCtDYV:{title:\"Problem Image\",type:l.ResponsiveImage},vVCUjOMgz:{allowedFileTypes:[\".mp4\"],title:\"Problem Video\",type:l.File},NW_kksM5S:{title:\"Problem Video - Poster\",type:l.ResponsiveImage},G_cwCbyiX:{defaultValue:\"\",title:\"Problem 1\",type:l.RichText},xrvgco4vF:{defaultValue:\"\",title:\"Problem 2\",type:l.RichText},YRlvztTk_:{defaultValue:\"\",title:\"Problem 3\",type:l.RichText},Wz8HJ3j83:{defaultValue:\"\",title:\"Problem 4\",type:l.RichText},RzFQF9kaz:{defaultValue:\"\",title:\"Problem 5\",type:l.RichText},OOannEdAe:{defaultValue:\"\",displayTextArea:!0,title:\"Big Text 1\",type:l.String},q_d1LUHCP:{defaultValue:\"\",title:\"Big Text 1 - Source\",type:l.String},hOHnhPtko:{title:\"Big Text 1 - Source Link\",type:l.Link},Gmvdlokaz:{defaultValue:\"\",displayTextArea:!0,title:\"Big Text 2\",type:l.String},EMI0BDiz8:{defaultValue:\"\",title:\"Big Text 2 - Source\",type:l.String},KcaNA8oP0:{title:\"Big Text 2 - Source Link\",type:l.Link},HyIHhgb7F:{defaultValue:\"\",displayTextArea:!0,title:\"Big Text 3\",type:l.String},akqhZZKpD:{defaultValue:\"\",title:\"Big Text 3 - Source\",type:l.String},eJ1PSvlti:{title:\"Big Text 3 - Source Link\",type:l.Link},UEGkTLhc6:{defaultValue:\"\",displayTextArea:!0,title:\"Big Text 4\",type:l.String},CWbLwKYag:{defaultValue:\"\",title:\"Big Text 4 - Source\",type:l.String},IQVtx88Gw:{title:\"Big Text 4 - Source Link\",type:l.Link},U3wTV0M9X:{defaultValue:\"\",displayTextArea:!0,title:\"Big Text 5\",type:l.String},s2kJyaMKe:{defaultValue:\"\",title:\"Big Text 5 - Source\",type:l.String},pphZlvXXm:{title:\"Big Text 5 - Source Link\",type:l.Link},QSywNtIJ4:{defaultValue:\"\",displayTextArea:!0,title:\"Big Text 6\",type:l.String},zUHjOfM3l:{defaultValue:\"\",title:\"Big Text 6 - Source\",type:l.String},KYdpNgRAB:{title:\"Big Text 6 - Source Link\",type:l.Link},Q3Rd0xbec:{defaultValue:\"\",title:\"Solutions Title\",type:l.String},FR7ZVpVBT:{defaultValue:\"\",title:\"Solutions Subtitle\",type:l.String},gyhMJJ4eS:{defaultValue:\"\",displayTextArea:!0,title:\"Solutions Copy\",type:l.String},IjCsEmPon:{title:\"Solution Image\",type:l.ResponsiveImage},fvEXv9AMK:{allowedFileTypes:[\".mp4\"],title:\"Solution Video\",type:l.File},sBNVMPp38:{title:\"Solution Video - Poster\",type:l.ResponsiveImage},kSAtfUjB4:{defaultValue:{identifier:\"local-module:vector/iDJ7NVyus:default\",moduleId:\"1gMLVTWBVOfrO83V04G9\"},setModuleId:\"8FUxTtyzmHCcv3ILLwh5\",title:\"Solution 1 - Icon\",type:l.VectorSetItem},ByD4ncjxj:{defaultValue:\"\",title:\"Solution 1 - Title\",type:l.String},X4YdLEZtd:{defaultValue:\"\",title:\"Solution 1 - Copy\",type:l.RichText},xrqflxyNf:{defaultValue:{identifier:\"local-module:vector/iDJ7NVyus:default\",moduleId:\"1gMLVTWBVOfrO83V04G9\"},setModuleId:\"8FUxTtyzmHCcv3ILLwh5\",title:\"Solution 2 - Icon\",type:l.VectorSetItem},FYbUkUiW2:{defaultValue:\"\",title:\"Solution 2 - Title\",type:l.String},q14VJDrLT:{defaultValue:\"\",title:\"Solution 2 - Copy\",type:l.RichText},WPhb69DTM:{defaultValue:{identifier:\"local-module:vector/iDJ7NVyus:default\",moduleId:\"1gMLVTWBVOfrO83V04G9\"},setModuleId:\"8FUxTtyzmHCcv3ILLwh5\",title:\"Solution 3 - Icon\",type:l.VectorSetItem},RG6sbyvtf:{defaultValue:\"\",title:\"Solution 3 - Title\",type:l.String},DV8HR61ef:{defaultValue:\"\",title:\"Solution 3 - Copy\",type:l.RichText},WS0DOOA40:{defaultValue:{identifier:\"local-module:vector/iDJ7NVyus:default\",moduleId:\"1gMLVTWBVOfrO83V04G9\"},setModuleId:\"8FUxTtyzmHCcv3ILLwh5\",title:\"Solution 4 - Icon\",type:l.VectorSetItem},f7_WlGjlQ:{defaultValue:\"\",title:\"Solution 4 - Title\",type:l.String},GhWfm9cmX:{defaultValue:\"\",title:\"Solution 4 - Copy\",type:l.RichText},HSEh6k2sk:{defaultValue:\"\",title:\"Strategy Title\",type:l.String},EXaT1t8bz:{defaultValue:\"\",displayTextArea:!0,title:\"Strategy Copy\",type:l.String},YfSPHkEpM:{defaultValue:{identifier:\"local-module:vector/iDJ7NVyus:default\",moduleId:\"1gMLVTWBVOfrO83V04G9\"},setModuleId:\"8FUxTtyzmHCcv3ILLwh5\",title:\"Strategy - Card 1 - Icon\",type:l.VectorSetItem},NzbKsCQpp:{defaultValue:\"\",title:\"Strategy - Card 1 - Title\",type:l.String},YG7urboWF:{defaultValue:\"\",displayTextArea:!0,title:\"Strategy - Card 1 - Copy\",type:l.String},f363EIMpu:{defaultValue:\"\",displayTextArea:!1,title:\"Strategy - Card 1 - Link Title\",type:l.String},Ufz6x4bZF:{title:\"Strategy - Card 1 - Link\",type:l.Link},aERQd1Lx_:{defaultValue:{identifier:\"local-module:vector/iDJ7NVyus:default\",moduleId:\"1gMLVTWBVOfrO83V04G9\"},setModuleId:\"8FUxTtyzmHCcv3ILLwh5\",title:\"Strategy - Card 2 - Icon\",type:l.VectorSetItem},TuFZF_fKH:{defaultValue:\"\",title:\"Strategy - Card 2 - Title\",type:l.String},UnQVDhdWd:{defaultValue:\"\",displayTextArea:!0,title:\"Strategy - Card 2 - Copy\",type:l.String},K5yvI7s0m:{defaultValue:\"\",displayTextArea:!1,title:\"Strategy - Card 2 - Link Title\",type:l.String},AIpn_Kuvq:{title:\"Strategy - Card 2 - Link\",type:l.Link},XXSxOniVn:{defaultValue:{identifier:\"local-module:vector/iDJ7NVyus:default\",moduleId:\"1gMLVTWBVOfrO83V04G9\"},setModuleId:\"8FUxTtyzmHCcv3ILLwh5\",title:\"Strategy - Card 3 - Icon\",type:l.VectorSetItem},PVmerGoK8:{defaultValue:\"\",title:\"Strategy - Card 3 - Title\",type:l.String},eMxPaSad9:{defaultValue:\"\",displayTextArea:!0,title:\"Strategy - Card 3 - Copy\",type:l.String},mJEl7zBXV:{defaultValue:\"\",displayTextArea:!1,title:\"Strategy - Card 3 - Link Title\",type:l.String},DZWXLh1Bd:{title:\"Strategy - Card 3 - Link\",type:l.Link},m16IXKMet:{defaultValue:\"\",title:\"Strategy Subtitle\",type:l.String},D86KDtbVU:{defaultValue:\"\",displayTextArea:!0,title:\"Strategy Subcopy\",type:l.String},VYuxcER33:{title:\"Strategy Image\",type:l.ResponsiveImage},kpvqwLNHT:{defaultValue:\"\",displayTextArea:!1,title:\"Strategy Vimeo URL\",type:l.String},BvDP6EE_z:{title:\"Client Logo\",type:l.ResponsiveImage},viEOsOJKr:{defaultValue:\"\",title:\"Results Title\",type:l.String},qmj7g6YJ2:{defaultValue:\"\",title:\"Results Copy\",type:l.RichText},tT_1enJbt:{title:\"Results Image\",type:l.ResponsiveImage},q9ZFC09xL:{allowedFileTypes:[\".mp4\"],title:\"Results Video\",type:l.File},X2e5lSYEB:{title:\"Results Video - Poster\",type:l.ResponsiveImage},M8j5rMmU1:{dataIdentifier:\"local-module:collection/gs9aDJrP7:default\",title:\"Awward\",type:l.CollectionReference},TdPBdIdKf:{defaultValue:\"\",title:\"ID - Title\",type:l.String},oQgTgjjaq:{defaultValue:\"\",displayTextArea:!0,title:\"ID - Intro\",type:l.String},uS47QYo_V:{defaultValue:\"\",displayTextArea:!1,title:\"ID - Subtitle\",type:l.String},iphYNa3Kk:{defaultValue:\"\",displayTextArea:!1,title:\"ID - Difference 1\",type:l.String},rQ9ylzZWb:{defaultValue:\"\",displayTextArea:!1,title:\"ID - Difference 2\",type:l.String},XFLEsvYKE:{defaultValue:\"\",displayTextArea:!1,title:\"ID - Difference 3\",type:l.String},sT6XBRpZT:{defaultValue:\"\",title:\"ID - Footer Copy\",type:l.RichText},Mc_8TIA12:{defaultValue:\"\",title:\"FAQ - Question 1\",type:l.String},tX6j_WQ8q:{defaultValue:\"\",title:\"FAQ - Answer 1\",type:l.RichText},uevz7IAHx:{defaultValue:\"\",title:\"FAQ - Question 2\",type:l.String},yFp2tucRh:{defaultValue:\"\",title:\"FAQ - Answer 2\",type:l.RichText},eWjNwTGgc:{defaultValue:\"\",title:\"FAQ - Question 3\",type:l.String},Jmvuq4TcL:{defaultValue:\"\",title:\"FAQ - Answer 3\",type:l.RichText},Ob01RE8zH:{defaultValue:\"\",title:\"FAQ - Question 4\",type:l.String},PSIt7XViB:{defaultValue:\"\",title:\"FAQ - Answer 4\",type:l.RichText},dwNetX5kD:{defaultValue:\"\",title:\"FAQ - Question 5\",type:l.String},Amz4kgrqp:{defaultValue:\"\",title:\"FAQ - Answer 5\",type:l.RichText},GmSLnb1w4:{defaultValue:\"\",title:\"FAQ - Question 6\",type:l.String},GZzgYb6jN:{defaultValue:\"\",title:\"FAQ - Answer 6\",type:l.RichText},s4BEYQJgI:{defaultValue:\"\",title:\"FAQ - Question 7\",type:l.String},LLXuG_b6b:{defaultValue:\"\",title:\"FAQ - Answer 7\",type:l.RichText},bwiwjsFvn:{defaultValue:\"\",title:\"FAQ - Question 8\",type:l.String},o68RWnDoy:{defaultValue:\"\",title:\"FAQ - Answer 8\",type:l.RichText},NkIRGkh87:{defaultValue:\"\",title:\"FAQ - Question 9\",type:l.String},V7vkJysDw:{defaultValue:\"\",title:\"FAQ - Answer 9\",type:l.RichText},vHQqjT4IF:{defaultValue:\"\",title:\"FAQ - Question 10\",type:l.String},Boymn3Xdm:{defaultValue:\"\",title:\"FAQ - Answer 10\",type:l.RichText},createdAt:{title:\"Created\",type:l.Date},updatedAt:{title:\"Updated\",type:l.Date},previousItemId:{dataIdentifier:\"local-module:collection/Wq1Of9c3N:default\",title:\"Previous\",type:l.CollectionReference},nextItemId:{dataIdentifier:\"local-module:collection/Wq1Of9c3N:default\",title:\"Next\",type:l.CollectionReference}});export const PPDPp2_51ToDisplayName=(e,l)=>{switch(l?.fallback,e){case\"oSsabloay\":return\"Orange\";case\"kfw7TaRNz\":return\"Blue\";case\"ymPKD0uEt\":return\"Green\";default:return\"\";}};export const enumToDisplayNameFunctions={PPDPp2_51:PPDPp2_51ToDisplayName};export const utils={async getSlugByRecordId(e,l){let[t]=await lN.query({from:{data:ly,type:\"Collection\"},limit:{type:\"LiteralValue\",value:1},select:[{name:\"wHBqvefJu\",type:\"Identifier\"}],where:{left:{name:\"id\",type:\"Identifier\"},operator:\"==\",right:{type:\"LiteralValue\",value:e},type:\"BinaryOperation\"}},l);return t?.wHBqvefJu;},async getRecordIdBySlug(e,l){let[t]=await lN.query({from:{data:ly,type:\"Collection\"},limit:{type:\"LiteralValue\",value:1},select:[{name:\"id\",type:\"Identifier\"}],where:{left:{name:\"wHBqvefJu\",type:\"Identifier\"},operator:\"==\",right:{type:\"LiteralValue\",value:e},type:\"BinaryOperation\"}},l);return t?.id;}};\nexport const __FramerMetadata__ = {\"exports\":{\"enumToDisplayNameFunctions\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"PPDPp2_51ToDisplayName\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"utils\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"default\":{\"type\":\"data\",\"name\":\"data\",\"annotations\":{\"framerAutoSizeImages\":\"true\",\"framerEnumToDisplayNameUtils\":\"2\",\"framerCollectionId\":\"Wq1Of9c3N\",\"framerRecordIdKey\":\"id\",\"framerContractVersion\":\"1\",\"framerCollectionUtils\":\"1\",\"framerData\":\"true\",\"framerSlug\":\"wHBqvefJu\",\"framerColorSyntax\":\"false\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","import{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{useState}from\"react\";import{addPropertyControls,ControlType}from\"framer\";import{motion}from\"framer-motion\";// --- Helper Functions ---\nconst uuidv4=()=>{return\"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx\".replace(/[xy]/g,c=>{const r=Math.random()*16|0;const v=c===\"x\"?r:r&3|8;return v.toString(16);});};// --- Component ---\n/**\n * @framerIntrinsicWidth 200\n * @framerIntrinsicHeight 50\n * @framerDisableUnlink\n */export default function RollingText({text,transition,stagger,reverse,font,color,textTransform,tag,padding}){const[isHovered,setIsHovered]=useState(false);const innerClassName=`rolling-text-inner-${uuidv4()}`;const Tag=tag;const fontSizeStr=font?.fontSize??\"16px\";const letterSpacingStr=font?.letterSpacing??\"0px\";const rawLineHeight=font?.lineHeight;const fontFamily=font?.fontFamily??\"Inter\";const fontSizeNum=parseInt(fontSizeStr,10)||16;let absoluteLineHeightPx;if(typeof rawLineHeight===\"number\"){absoluteLineHeightPx=fontSizeNum*rawLineHeight;}else if(typeof rawLineHeight===\"string\"&&rawLineHeight.includes(\"em\")){const emValue=parseFloat(rawLineHeight)||1.2;absoluteLineHeightPx=fontSizeNum*emValue;}else if(typeof rawLineHeight===\"string\"){const pxValue=parseFloat(rawLineHeight);absoluteLineHeightPx=isNaN(pxValue)?rawLineHeight:`${pxValue}px`;}else{absoluteLineHeightPx=fontSizeNum*1.2;}const absoluteLineHeightStr=typeof absoluteLineHeightPx===\"number\"?`${absoluteLineHeightPx}px`:absoluteLineHeightPx;const yOffset=`-${absoluteLineHeightStr}`;const styles=`\n    .${innerClassName} {\n      --font-size: ${fontSizeStr};\n      --text: ${color};\n      --line-height-abs: ${absoluteLineHeightStr};\n      box-sizing: border-box; margin: 0; padding: 0; vertical-align: top;\n      display: flex; overflow: hidden; width: max-content;\n      font-family: ${fontFamily}; font-size: ${fontSizeStr};\n      text-transform: ${textTransform}; user-select: none;\n      text-shadow: 0 var(--line-height-abs) 0 var(--text);\n    }\n    .${innerClassName} span {\n      display: block; -webkit-backface-visibility: hidden; backface-visibility: hidden;\n      white-space: pre; flex-shrink: 0;\n      font-family: inherit; font-weight: inherit; font-style: inherit;\n      font-size: inherit; letter-spacing: inherit;\n      line-height: ${rawLineHeight??1.2};\n      color: var(--text);\n    }\n  `;const wrapperStyle={display:\"flex\",alignItems:\"center\",justifyContent:\"center\",width:\"100%\",height:\"100%\",overflow:\"hidden\",padding:padding,boxSizing:\"border-box\"};const spanVariants={initial:{y:\"0%\"},hover:{y:yOffset}};const baseDuration=typeof transition?.duration===\"number\"?transition.duration:.5;// Convert stagger percentage (0-100) to a factor (0-1)\nconst staggerFactor=stagger/100;return /*#__PURE__*/_jsxs(\"div\",{style:wrapperStyle,onMouseEnter:()=>setIsHovered(true),onMouseLeave:()=>setIsHovered(false),children:[/*#__PURE__*/_jsx(Tag,{className:innerClassName,children:[...text].map((str,index)=>{const charIndex=reverse?text.length-1-index:index;// Apply staggerFactor to the delay calculation\nconst delay=text.length>0?baseDuration/text.length*charIndex*staggerFactor// Multiply by factor\n:0;const motionSpanStyle={display:\"block\",...font};return /*#__PURE__*/_jsx(motion.span,{variants:spanVariants,initial:\"initial\",animate:isHovered?\"hover\":\"initial\",transition:{...transition,delay:delay},style:motionSpanStyle,children:str===\" \"?\"\\xa0\":str},index);})}),/*#__PURE__*/_jsx(\"style\",{children:styles})]});}// --- Component Display Name ---\nRollingText.displayName=\"Rolling Text\";// --- Default Properties ---\nconst defaultFont={fontFamily:\"Inter\",fontWeight:\"400\",fontSize:\"16px\",fontStyle:\"normal\",letterSpacing:\"0px\",lineHeight:1.2};const defaultTransition={type:\"spring\",duration:.4,bounce:0};// --- Framer Property Controls ---\naddPropertyControls(RollingText,{text:{type:ControlType.String,title:\"Text\",defaultValue:\"Rolling Text\"},font:{type:ControlType.Font,title:\"Font\",controls:\"extended\",defaultValue:defaultFont},color:{type:ControlType.Color,title:\"Color\",defaultValue:\"#808080\"},transition:{type:ControlType.Transition,title:\"Transition\",defaultValue:defaultTransition},// Added Stagger control\nstagger:{title:\"Stagger\",type:ControlType.Number,min:0,max:100,step:1,defaultValue:35,unit:\"%\"},padding:{title:\"Padding\",type:ControlType.Padding,defaultValue:\"0px\"},reverse:{type:ControlType.Boolean,title:\"Reverse\",defaultValue:false,enabledTitle:\"Yes\",disabledTitle:\"No\"},textTransform:{title:\"Transform\",type:ControlType.Enum,defaultValue:\"none\",options:[\"none\",\"uppercase\",\"lowercase\",\"capitalize\"],optionTitles:[\"None\",\"Uppercase\",\"Lowercase\",\"Capitalize\"]},tag:{type:ControlType.Enum,title:\"Tag\",options:[\"p\",\"span\",\"h1\",\"h2\",\"h3\",\"h4\",\"h5\",\"h6\"],optionTitles:[\"p\",\"span\",\"h1\",\"h2\",\"h3\",\"h4\",\"h5\",\"h6\"],defaultValue:\"p\",description:\"More components at [Framer University](https://frameruni.link/cc).\"}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"RollingText\",\"slots\":[],\"annotations\":{\"framerIntrinsicHeight\":\"50\",\"framerDisableUnlink\":\"\",\"framerIntrinsicWidth\":\"200\",\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./RollingTextHover_Prod.map","// Generated by Framer (3bd990b)\nimport{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{addFonts,addPropertyControls,ComponentViewportProvider,ControlType,cx,getFonts,getFontsFromSharedStyle,getPropertyControls,Link,RichText,SmartComponentScopedContainer,useComponentViewport,useLocaleInfo,useVariantState,withCSS}from\"framer\";import{LayoutGroup,motion,MotionConfigContext}from\"framer-motion\";import*as React from\"react\";import{useRef}from\"react\";import RollingText from\"https://framerusercontent.com/modules/FiiQ0BKlVUNzxXjo8hFs/BDeIULpeB9kBv3zq3U1w/RollingTextHover_Prod.js\";import*as sharedStyle from\"https://framerusercontent.com/modules/TDkARzmDOWBAhM45qCn0/ZtObCraX9NwmaDkndcmR/CENc_xTn7.js\";import ServiceLottieIcon from\"https://framerusercontent.com/modules/KebjuZb2nzGZkTGRmkN7/4MlS1Ard0fxAa9a9iilf/Fc0gBqpvF.js\";const ServiceLottieIconFonts=getFonts(ServiceLottieIcon);const RollingTextFonts=getFonts(RollingText);const ServiceLottieIconControls=getPropertyControls(ServiceLottieIcon);const serializationHash=\"framer-QvfHP\";const variantClassNames={JHoDI8_2h:\"framer-v-1u4941x\"};function addPropertyOverrides(overrides,...variants){const nextOverrides={};variants?.forEach(variant=>variant&&Object.assign(nextOverrides,overrides[variant]));return nextOverrides;}const yx2a2t8nT=undefined;const N59rtww48=undefined;const AlGm5pcqF=undefined;const WzsE8XxEv=undefined;const mknhGN1kS=undefined;const klUWsT3Rt=undefined;const HJi06y7Kh=undefined;const Mp_VvpfoP=undefined;const numberToPixelString=value=>{if(typeof value!==\"number\")return value;if(!Number.isFinite(value))return undefined;return Math.max(0,value)+\"px\";};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 humanReadableEnumMap={Faciliation:\"xOV3Yi9TT\",Optimisation:\"Q3YNUf7BA\",Ownership:\"tYOr00y5a\"};const getProps=({cardPadding,copy,copyVisible,height,iconVisible,id,link,linkPadding,title,variant1,width,...props})=>{return{...props,AlGm5pcqF:iconVisible??props.AlGm5pcqF??true,HJi06y7Kh:copyVisible??props.HJi06y7Kh??true,klUWsT3Rt:linkPadding??props.klUWsT3Rt??\"8px 8px 8px 0px\",mknhGN1kS:title??props.mknhGN1kS??\"Facilitation\",Mp_VvpfoP:copy??props.Mp_VvpfoP??\"Align your team on a bold strategy in 48 hours\",N59rtww48:link??props.N59rtww48,WzsE8XxEv:humanReadableEnumMap[variant1]??variant1??props.WzsE8XxEv??\"xOV3Yi9TT\",yx2a2t8nT:cardPadding??props.yx2a2t8nT??\"0px 0px 32px 0px\"};};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,AlGm5pcqF,WzsE8XxEv,mknhGN1kS,HJi06y7Kh,Mp_VvpfoP,N59rtww48,klUWsT3Rt,yx2a2t8nT,...restProps}=getProps(props);const{baseVariant,classNames,clearLoadingGesture,gestureHandlers,gestureVariant,isLoading,setGestureState,setVariant,variants}=useVariantState({defaultVariant:\"JHoDI8_2h\",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:N59rtww48,motionChild:true,nodeId:\"JHoDI8_2h\",scopeId:\"Ky0OPWEEl\",smoothScroll:true,children:/*#__PURE__*/_jsxs(motion.a,{...restProps,...gestureHandlers,className:`${cx(scopingClassNames,\"framer-1u4941x\",className,classNames)} framer-xz4lty`,\"data-border\":true,\"data-framer-name\":\"Default\",layoutDependency:layoutDependency,layoutId:\"JHoDI8_2h\",ref:refBinding,style:{\"--1f5dr1e\":numberToPixelString(yx2a2t8nT),\"--border-bottom-width\":\"1px\",\"--border-color\":\"rgba(0, 0, 0, 0.1)\",\"--border-left-width\":\"0px\",\"--border-right-width\":\"0px\",\"--border-style\":\"solid\",\"--border-top-width\":\"0px\",...style},children:[AlGm5pcqF&&/*#__PURE__*/_jsx(ComponentViewportProvider,{height:48,width:\"48px\",children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-1dhq2cl-container\",layoutDependency:layoutDependency,layoutId:\"FvpPoz5QV-container\",nodeId:\"FvpPoz5QV\",rendersWithMotion:true,scopeId:\"Ky0OPWEEl\",children:/*#__PURE__*/_jsx(ServiceLottieIcon,{height:\"100%\",id:\"FvpPoz5QV\",layoutId:\"FvpPoz5QV\",style:{height:\"100%\",width:\"100%\"},variant:WzsE8XxEv,width:\"100%\"})})}),/*#__PURE__*/_jsxs(motion.div,{className:\"framer-13afkfe\",layoutDependency:layoutDependency,layoutId:\"w4UCqGoj0\",children:[/*#__PURE__*/_jsx(ComponentViewportProvider,{children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-1jbty8y-container\",isAuthoredByUser:true,isModuleExternal:true,layoutDependency:layoutDependency,layoutId:\"SC38ZfUAH-container\",nodeId:\"SC38ZfUAH\",rendersWithMotion:true,scopeId:\"Ky0OPWEEl\",children:/*#__PURE__*/_jsx(RollingText,{color:\"var(--token-a1e55884-84c4-4296-a29f-befcef912aac, rgb(0, 0, 0))\",font:{fontFamily:'\"KH Teka Bold\", \"KH Teka Bold Placeholder\", sans-serif',fontSize:\"calc(var(--framer-root-font-size, 1rem) * 1.13)\",fontStyle:\"normal\",fontWeight:700,letterSpacing:\"0px\",lineHeight:\"1.2em\",textAlign:\"left\"},height:\"100%\",id:\"SC38ZfUAH\",layoutId:\"SC38ZfUAH\",padding:numberToPixelString(klUWsT3Rt),reverse:false,stagger:35,tag:\"p\",text:mknhGN1kS,textTransform:\"none\",transition:{delay:0,duration:.3,ease:[.55,0,.2,1],type:\"tween\"},width:\"100%\"})})}),HJi06y7Kh&&/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{className:\"framer-styles-preset-11unnkq\",\"data-styles-preset\":\"CENc_xTn7\",children:\"Align your team on a bold strategy in 48 hours\"})}),className:\"framer-141c9pu\",\"data-framer-name\":\"Align your team on a bold strategy in 48 hours\",fonts:[\"Inter\"],layoutDependency:layoutDependency,layoutId:\"KomFAdv9C\",style:{\"--framer-paragraph-spacing\":\"0px\",opacity:.7},text:Mp_VvpfoP,verticalAlignment:\"top\",withExternalLayout:true})]})]})})})})});});const css=[\"@supports (aspect-ratio: 1) { body { --framer-aspect-ratio-supported: auto; } }\",\".framer-QvfHP.framer-xz4lty, .framer-QvfHP .framer-xz4lty { display: block; }\",\".framer-QvfHP.framer-1u4941x { align-content: flex-start; align-items: flex-start; cursor: pointer; display: flex; flex-direction: row; flex-wrap: nowrap; gap: 32px; height: min-content; justify-content: flex-start; padding: var(--1f5dr1e); position: relative; text-decoration: none; width: min-content; }\",\".framer-QvfHP .framer-1dhq2cl-container { aspect-ratio: 1 / 1; flex: none; height: var(--framer-aspect-ratio-supported, 48px); position: relative; width: 48px; }\",\".framer-QvfHP .framer-13afkfe { align-content: flex-start; align-items: flex-start; display: flex; flex: none; flex-direction: column; flex-wrap: nowrap; gap: 0px; height: min-content; justify-content: center; overflow: visible; padding: 0px; position: relative; width: min-content; }\",\".framer-QvfHP .framer-1jbty8y-container { -webkit-user-select: auto; flex: none; height: auto; pointer-events: auto; position: relative; user-select: auto; width: auto; z-index: 2; }\",\".framer-QvfHP .framer-141c9pu { flex: none; height: auto; position: relative; white-space: pre-wrap; width: 190px; word-break: break-word; word-wrap: break-word; }\",...sharedStyle.css,'.framer-QvfHP[data-border=\"true\"]::after, .framer-QvfHP [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 111\n * @framerIntrinsicWidth 270\n * @framerCanvasComponentVariantDetails {\"propertyName\":\"variant\",\"data\":{\"default\":{\"layout\":[\"auto\",\"auto\"]}}}\n * @framerVariables {\"AlGm5pcqF\":\"iconVisible\",\"WzsE8XxEv\":\"variant1\",\"mknhGN1kS\":\"title\",\"HJi06y7Kh\":\"copyVisible\",\"Mp_VvpfoP\":\"copy\",\"N59rtww48\":\"link\",\"klUWsT3Rt\":\"linkPadding\",\"yx2a2t8nT\":\"cardPadding\"}\n * @framerImmutableVariables true\n * @framerDisplayContentsDiv false\n * @framerAutoSizeImages true\n * @framerComponentViewportWidth true\n * @framerColorSyntax true\n */const FramerKy0OPWEEl=withCSS(Component,css,\"framer-QvfHP\");export default FramerKy0OPWEEl;FramerKy0OPWEEl.displayName=\"Nav Dropdown Item\";FramerKy0OPWEEl.defaultProps={height:111,width:270};addPropertyControls(FramerKy0OPWEEl,{AlGm5pcqF:{defaultValue:true,title:\"Icon Visible\",type:ControlType.Boolean},WzsE8XxEv:ServiceLottieIconControls?.[\"variant\"]&&{...ServiceLottieIconControls[\"variant\"],defaultValue:\"xOV3Yi9TT\",description:undefined,hidden:undefined,title:\"Variant\"},mknhGN1kS:{defaultValue:\"Facilitation\",title:\"Title\",type:ControlType.String},HJi06y7Kh:{defaultValue:true,title:\"Copy Visible\",type:ControlType.Boolean},Mp_VvpfoP:{defaultValue:\"Align your team on a bold strategy in 48 hours\",displayTextArea:false,title:\"Copy\",type:ControlType.String},N59rtww48:{title:\"Link\",type:ControlType.Link},klUWsT3Rt:{defaultValue:\"8px 8px 8px 0px\",title:\"Link Padding\",type:ControlType.Padding},yx2a2t8nT:{defaultValue:\"0px 0px 32px 0px\",title:\"Card Padding\",type:ControlType.Padding}});addFonts(FramerKy0OPWEEl,[{explicitInter:true,fonts:[{cssFamilyName:\"KH Teka Bold\",source:\"custom\",style:\"normal\",uiFamilyName:\"KH Teka\",url:\"https://framerusercontent.com/assets/6B7NXkPgI9JKoAjYsEp7mk7WL8.woff2\",weight:\"700\"},{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\"}]},...ServiceLottieIconFonts,...RollingTextFonts,...getFontsFromSharedStyle(sharedStyle.fonts)],{supportsExplicitInterCodegen:true});\nexport const __FramerMetadata__ = {\"exports\":{\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"default\":{\"type\":\"reactComponent\",\"name\":\"FramerKy0OPWEEl\",\"slots\":[],\"annotations\":{\"framerAutoSizeImages\":\"true\",\"framerDisplayContentsDiv\":\"false\",\"framerVariables\":\"{\\\"AlGm5pcqF\\\":\\\"iconVisible\\\",\\\"WzsE8XxEv\\\":\\\"variant1\\\",\\\"mknhGN1kS\\\":\\\"title\\\",\\\"HJi06y7Kh\\\":\\\"copyVisible\\\",\\\"Mp_VvpfoP\\\":\\\"copy\\\",\\\"N59rtww48\\\":\\\"link\\\",\\\"klUWsT3Rt\\\":\\\"linkPadding\\\",\\\"yx2a2t8nT\\\":\\\"cardPadding\\\"}\",\"framerCanvasComponentVariantDetails\":\"{\\\"propertyName\\\":\\\"variant\\\",\\\"data\\\":{\\\"default\\\":{\\\"layout\\\":[\\\"auto\\\",\\\"auto\\\"]}}}\",\"framerComponentViewportWidth\":\"true\",\"framerImmutableVariables\":\"true\",\"framerIntrinsicWidth\":\"270\",\"framerColorSyntax\":\"true\",\"framerIntrinsicHeight\":\"111\",\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// Generated by Framer (22e536a)\nimport{jsx as _jsx}from\"react/jsx-runtime\";import{addPropertyControls,ControlType,cx,motion,withCSS}from\"framer\";import*as React from\"react\";import{forwardRef}from\"react\";const AtYGEjJ6O=undefined;const mask='url(\\'data:image/svg+xml,<svg display=\"block\" role=\"presentation\" viewBox=\"0 0 24 24\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M 15 7.199 C 16.333 7.969 16.333 9.893 15 10.663 L 3 17.591 C 1.667 18.361 0 17.398 0 15.859 L 0 2.001 C 0 0.462 1.667 -0.499 3 0.271 Z\" fill=\"var(--19au03e, var(--token-a1e55884-84c4-4296-a29f-befcef912aac, rgb(0, 0, 0)))\" height=\"17.862181929793856px\" id=\"pXdaUK3hf\" transform=\"translate(4 3)\" width=\"15.999749999999999px\"/></svg>\\') alpha no-repeat center / auto var(--framer-icon-mask-mode, add), var(--framer-icon-mask, none)';const SVG=/*#__PURE__*/forwardRef((props,ref)=>{const{animated,layoutId,children,...rest}=props;return animated?/*#__PURE__*/_jsx(motion.div,{...rest,layoutId:layoutId,ref:ref}):/*#__PURE__*/_jsx(\"div\",{...rest,ref:ref});});const getProps=({color,height,id,width,...props})=>{return{...props,AtYGEjJ6O:color??props.AtYGEjJ6O??\"var(--token-a1e55884-84c4-4296-a29f-befcef912aac, rgb(0, 0, 0))\"};};const Component=/*#__PURE__*/React.forwardRef(function(props,ref){const{style,className,layoutId,variant,AtYGEjJ6O,...restProps}=getProps(props);return /*#__PURE__*/_jsx(SVG,{...restProps,className:cx(\"framer-XIcj8\",className),layoutId:layoutId,ref:ref,style:{\"--19au03e\":AtYGEjJ6O,...style}});});const css=[`.framer-XIcj8 { -webkit-mask: ${mask}; aspect-ratio: 1; background-color: var(--19au03e); mask: ${mask}; width: 24px; }`];/**\n * This is a generated Framer component.\n * @framerIntrinsicWidth 24\n * @framerIntrinsicHeight 24\n * @framerSupportedLayoutWidth any-prefer-fixed\n * @framerSupportedLayoutHeight any-prefer-fixed\n * @framerVariables {\"AtYGEjJ6O\":\"color\"}\n * @framerImmutableVariables true\n * @framerVector {\"name\":\"Chevron\",\"color\":{\"type\":\"variable\",\"value\":\"19au03e\"},\"set\":{\"localId\":\"vectorSet/obosTI6sy\",\"id\":\"obosTI6sy\",\"moduleId\":\"l3LubP2d5xQeQLCN0iX3\"}}\n */const Icon=withCSS(Component,css,\"framer-XIcj8\");Icon.displayName=\"Chevron\";export default Icon;addPropertyControls(Icon,{AtYGEjJ6O:{defaultValue:'var(--token-a1e55884-84c4-4296-a29f-befcef912aac, rgb(0, 0, 0)) /* {\"name\":\"Black\"} */',hidden:false,title:\"Color\",type:ControlType.Color}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"Icon\",\"slots\":[],\"annotations\":{\"framerSupportedLayoutHeight\":\"any-prefer-fixed\",\"framerImmutableVariables\":\"true\",\"framerVector\":\"{\\\"name\\\":\\\"Chevron\\\",\\\"color\\\":{\\\"type\\\":\\\"variable\\\",\\\"value\\\":\\\"19au03e\\\"},\\\"set\\\":{\\\"localId\\\":\\\"vectorSet/obosTI6sy\\\",\\\"id\\\":\\\"obosTI6sy\\\",\\\"moduleId\\\":\\\"l3LubP2d5xQeQLCN0iX3\\\"}}\",\"framerSupportedLayoutWidth\":\"any-prefer-fixed\",\"framerIntrinsicHeight\":\"24\",\"framerContractVersion\":\"1\",\"framerVariables\":\"{\\\"AtYGEjJ6O\\\":\\\"color\\\"}\",\"framerIntrinsicWidth\":\"24\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// Generated by Framer (3f9109a)\nimport{jsx as _jsx}from\"react/jsx-runtime\";import{addPropertyControls,ControlType,cx,motion,withCSS}from\"framer\";import*as React from\"react\";import{forwardRef}from\"react\";const xXK25e0o3=undefined;const mask='url(\\'data:image/svg+xml,<svg display=\"block\" role=\"presentation\" viewBox=\"0 0 40 40\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M 31.626 14.453 L 19.62 26.603 C 19.37 26.855 19.031 26.997 18.676 26.997 C 18.322 26.997 17.982 26.855 17.733 26.603 C 17.21 26.074 17.21 25.223 17.733 24.693 L 27.461 14.848 L 1.335 14.848 C 0.982 14.848 0.642 14.706 0.392 14.452 C -0.131 13.923 -0.131 13.072 0.392 12.543 C 0.642 12.29 0.982 12.148 1.335 12.148 L 27.461 12.148 L 17.733 2.304 C 17.21 1.775 17.21 0.924 17.733 0.394 C 17.982 0.142 18.322 0 18.676 0 C 19.031 0 19.371 0.142 19.62 0.394 L 31.626 12.543 C 31.877 12.797 32.018 13.141 32.017 13.498 C 32.016 13.855 31.876 14.198 31.626 14.453 Z\" fill=\"var(--yqxm16, var(--token-3a3b2bb2-cb19-4140-bd1d-a5dd96e6b197, rgb(255, 248, 237)))\" height=\"26.996990613237216px\" id=\"SpvurqrLy\" transform=\"translate(3.984 7)\" width=\"32.016725976836064px\"/></svg>\\') alpha no-repeat center / auto var(--framer-icon-mask-mode, add), var(--framer-icon-mask, none)';const SVG=/*#__PURE__*/forwardRef((props,ref)=>{const{animated,layoutId,children,...rest}=props;return animated?/*#__PURE__*/_jsx(motion.div,{...rest,layoutId:layoutId,ref:ref}):/*#__PURE__*/_jsx(\"div\",{...rest,ref:ref});});const getProps=({fill,height,id,width,...props})=>{return{...props,xXK25e0o3:fill??props.xXK25e0o3??\"var(--token-3a3b2bb2-cb19-4140-bd1d-a5dd96e6b197, rgb(255, 248, 237))\"};};const Component=/*#__PURE__*/React.forwardRef(function(props,ref){const{style,className,layoutId,variant,xXK25e0o3,...restProps}=getProps(props);return /*#__PURE__*/_jsx(SVG,{...restProps,className:cx(\"framer-aPiPu\",className),layoutId:layoutId,ref:ref,style:{\"--yqxm16\":xXK25e0o3,...style}});});const css=[`.framer-aPiPu { -webkit-mask: ${mask}; aspect-ratio: 1; background-color: var(--yqxm16); mask: ${mask}; width: 40px; }`];/**\n * This is a generated Framer component.\n * @framerIntrinsicWidth 40\n * @framerIntrinsicHeight 40\n * @framerSupportedLayoutWidth any-prefer-fixed\n * @framerSupportedLayoutHeight any-prefer-fixed\n * @framerVariables {\"xXK25e0o3\":\"fill\"}\n * @framerImmutableVariables true\n * @framerVector {\"name\":\"Arrow 40\",\"color\":{\"type\":\"variable\",\"value\":\"yqxm16\"},\"set\":{\"localId\":\"vectorSet/qx8h0W9Aa\",\"id\":\"qx8h0W9Aa\",\"moduleId\":\"Cv6aWhXykndl33uvj2AU\"}}\n */const Icon=withCSS(Component,css,\"framer-aPiPu\");Icon.displayName=\"Arrow 40\";export default Icon;addPropertyControls(Icon,{xXK25e0o3:{defaultValue:'var(--token-3a3b2bb2-cb19-4140-bd1d-a5dd96e6b197, rgb(255, 248, 237)) /* {\"name\":\"Off White\"} */',hidden:false,title:\"Fill\",type:ControlType.Color}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"Icon\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\",\"framerImmutableVariables\":\"true\",\"framerIntrinsicWidth\":\"40\",\"framerIntrinsicHeight\":\"40\",\"framerSupportedLayoutHeight\":\"any-prefer-fixed\",\"framerVector\":\"{\\\"name\\\":\\\"Arrow 40\\\",\\\"color\\\":{\\\"type\\\":\\\"variable\\\",\\\"value\\\":\\\"yqxm16\\\"},\\\"set\\\":{\\\"localId\\\":\\\"vectorSet/qx8h0W9Aa\\\",\\\"id\\\":\\\"qx8h0W9Aa\\\",\\\"moduleId\\\":\\\"Cv6aWhXykndl33uvj2AU\\\"}}\",\"framerVariables\":\"{\\\"xXK25e0o3\\\":\\\"fill\\\"}\",\"framerSupportedLayoutWidth\":\"any-prefer-fixed\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// Generated by Framer (beb597f)\nimport{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{addFonts,addPropertyControls,ComponentViewportProvider,ControlType,cx,getFonts,Link,SmartComponentScopedContainer,useActiveVariantCallback,useComponentViewport,useLocaleInfo,useVariantState,withCSS}from\"framer\";import{LayoutGroup,motion,MotionConfigContext}from\"framer-motion\";import*as React from\"react\";import{useRef}from\"react\";import RollingText from\"https://framerusercontent.com/modules/FiiQ0BKlVUNzxXjo8hFs/BDeIULpeB9kBv3zq3U1w/RollingTextHover_Prod.js\";import Chevron from\"https://framerusercontent.com/modules/RbK2xL5cdUS0huaXx44p/KMUHQmfPrUP6Dd9UVn9c/o1l9Fjloy.js\";import Arrow40 from\"https://framerusercontent.com/modules/4clKEIhErvp984Ab5qOg/dCnXcQagrQNZcjCCvTxW/xzZMWf8qZ.js\";const RollingTextFonts=getFonts(RollingText);const ChevronFonts=getFonts(Chevron);const Arrow40Fonts=getFonts(Arrow40);const enabledGestures={n5SG0tuvZ:{hover:true}};const cycleOrder=[\"Hu73Hnnhh\",\"n5SG0tuvZ\",\"U6WIfZjaY\"];const serializationHash=\"framer-s2IEi\";const variantClassNames={Hu73Hnnhh:\"framer-v-ot7xx4\",n5SG0tuvZ:\"framer-v-1knnxsz\",U6WIfZjaY:\"framer-v-mhlm07\"};function addPropertyOverrides(overrides,...variants){const nextOverrides={};variants?.forEach(variant=>variant&&Object.assign(nextOverrides,overrides[variant]));return nextOverrides;}const EVdq85liR=undefined;const je5svDMh0=undefined;const eKNXzRH5A=undefined;const l_cb5b3fU=undefined;const transition1={bounce:.2,delay:0,duration:.4,type:\"spring\"};const transformTemplate1=(_,t)=>`translateY(-50%) ${t}`;const Transition=({value,children})=>{const config=React.useContext(MotionConfigContext);const transition=value??config.transition;const contextValue=React.useMemo(()=>({...config,transition}),[JSON.stringify(transition)]);return /*#__PURE__*/_jsx(MotionConfigContext.Provider,{value:contextValue,children:children});};const Variants=motion.create(React.Fragment);const humanReadableVariantMap={\"Variant 1\":\"Hu73Hnnhh\",\"Variant 2\":\"n5SG0tuvZ\",\"Variant 3\":\"U6WIfZjaY\"};const getProps=({click,color,height,id,link,title,width,...props})=>{return{...props,eKNXzRH5A:title??props.eKNXzRH5A??\"Case Studies\",EVdq85liR:click??props.EVdq85liR,je5svDMh0:link??props.je5svDMh0,l_cb5b3fU:color??props.l_cb5b3fU??\"var(--token-a1e55884-84c4-4296-a29f-befcef912aac, rgb(0, 0, 0))\",variant:humanReadableVariantMap[props.variant]??props.variant??\"Hu73Hnnhh\"};};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,eKNXzRH5A,je5svDMh0,l_cb5b3fU,EVdq85liR,...restProps}=getProps(props);const{baseVariant,classNames,clearLoadingGesture,gestureHandlers,gestureVariant,isLoading,setGestureState,setVariant,variants}=useVariantState({cycleOrder,defaultVariant:\"Hu73Hnnhh\",enabledGestures,ref:refBinding,variant,variantClassNames});const layoutDependency=createLayoutDependency(props,variants);const{activeVariantCallback,delay}=useActiveVariantCallback(baseVariant);const onTap1iomd2r=activeVariantCallback(async(...args)=>{setGestureState({isPressed:false});if(EVdq85liR){const res=await EVdq85liR(...args);if(res===false)return false;}});const sharedStyleClassNames=[];const scopingClassNames=cx(serializationHash,...sharedStyleClassNames);const isDisplayed=()=>{if(gestureVariant===\"n5SG0tuvZ-hover\")return false;if(baseVariant===\"n5SG0tuvZ\")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(Link,{href:je5svDMh0,motionChild:true,nodeId:\"Hu73Hnnhh\",openInNewTab:false,scopeId:\"QCLLYWdqj\",children:/*#__PURE__*/_jsxs(motion.a,{...restProps,...gestureHandlers,className:`${cx(scopingClassNames,\"framer-ot7xx4\",className,classNames)} framer-14838yf`,\"data-framer-name\":\"Variant 1\",\"data-highlight\":true,layoutDependency:layoutDependency,layoutId:\"Hu73Hnnhh\",onTap:onTap1iomd2r,ref:refBinding,style:{...style},...addPropertyOverrides({\"n5SG0tuvZ-hover\":{\"data-framer-name\":undefined},n5SG0tuvZ:{\"data-framer-name\":\"Variant 2\"},U6WIfZjaY:{\"data-framer-name\":\"Variant 3\"}},baseVariant,gestureVariant),children:[/*#__PURE__*/_jsx(ComponentViewportProvider,{children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-1p1275h-container\",isAuthoredByUser:true,isModuleExternal:true,layoutDependency:layoutDependency,layoutId:\"Mb5e1HH8U-container\",nodeId:\"Mb5e1HH8U\",rendersWithMotion:true,scopeId:\"QCLLYWdqj\",children:/*#__PURE__*/_jsx(RollingText,{color:l_cb5b3fU,font:{fontFamily:'\"KH Teka Regular\", \"KH Teka Regular Placeholder\", sans-serif',fontSize:\"calc(var(--framer-root-font-size, 1rem) * 1.13)\",fontStyle:\"normal\",fontWeight:400,letterSpacing:\"0px\",lineHeight:\"1.2em\"},height:\"100%\",id:\"Mb5e1HH8U\",layoutId:\"Mb5e1HH8U\",padding:\"8px 8px 8px 8px\",reverse:false,stagger:35,tag:\"p\",text:eKNXzRH5A,textTransform:\"none\",transition:{delay:0,duration:.3,ease:[.55,0,.2,1],type:\"tween\"},width:\"100%\"})})}),/*#__PURE__*/_jsx(Chevron,{animated:true,className:\"framer-1xmxwxm\",layoutDependency:layoutDependency,layoutId:\"hkLd0EOns\",style:{\"--19au03e\":l_cb5b3fU,opacity:0,rotate:0},transformTemplate:transformTemplate1,variants:{\"n5SG0tuvZ-hover\":{opacity:1,rotate:0},U6WIfZjaY:{opacity:1,rotate:90}},...addPropertyOverrides({\"n5SG0tuvZ-hover\":{transformTemplate:undefined},U6WIfZjaY:{transformTemplate:undefined}},baseVariant,gestureVariant)}),isDisplayed()&&/*#__PURE__*/_jsx(Arrow40,{animated:true,className:\"framer-lc0pur\",layoutDependency:layoutDependency,layoutId:\"YC2CuOCO7\",style:{\"--yqxm16\":l_cb5b3fU,opacity:0,rotate:90}})]})})})})});});const css=[\"@supports (aspect-ratio: 1) { body { --framer-aspect-ratio-supported: auto; } }\",\".framer-s2IEi.framer-14838yf, .framer-s2IEi .framer-14838yf { display: block; }\",\".framer-s2IEi.framer-ot7xx4 { 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: 0px; position: relative; text-decoration: none; width: min-content; }\",\".framer-s2IEi .framer-1p1275h-container { -webkit-user-select: auto; flex: none; height: auto; pointer-events: auto; position: relative; user-select: auto; width: auto; z-index: 2; }\",\".framer-s2IEi .framer-1xmxwxm { aspect-ratio: 1 / 1; flex: none; height: var(--framer-aspect-ratio-supported, 12px); position: absolute; right: 0px; top: 50%; width: 12px; z-index: 1; }\",\".framer-s2IEi .framer-lc0pur { aspect-ratio: 1 / 1; flex: none; height: var(--framer-aspect-ratio-supported, 24px); position: absolute; right: -24px; top: 7px; width: 24px; z-index: 1; }\",\".framer-s2IEi.framer-v-mhlm07 .framer-1xmxwxm, .framer-s2IEi.framer-v-1knnxsz.hover .framer-1xmxwxm { position: relative; right: unset; top: unset; }\"];/**\n * This is a generated Framer component.\n * @framerIntrinsicHeight 38\n * @framerIntrinsicWidth 122\n * @framerCanvasComponentVariantDetails {\"propertyName\":\"variant\",\"data\":{\"default\":{\"layout\":[\"auto\",\"auto\"]},\"n5SG0tuvZ\":{\"layout\":[\"auto\",\"auto\"]},\"U6WIfZjaY\":{\"layout\":[\"auto\",\"auto\"]},\"diDBOjmf3\":{\"layout\":[\"auto\",\"auto\"]}}}\n * @framerVariables {\"eKNXzRH5A\":\"title\",\"je5svDMh0\":\"link\",\"l_cb5b3fU\":\"color\",\"EVdq85liR\":\"click\"}\n * @framerImmutableVariables true\n * @framerDisplayContentsDiv false\n * @framerAutoSizeImages true\n * @framerComponentViewportWidth true\n * @framerColorSyntax true\n */const FramerQCLLYWdqj=withCSS(Component,css,\"framer-s2IEi\");export default FramerQCLLYWdqj;FramerQCLLYWdqj.displayName=\"Nav Link\";FramerQCLLYWdqj.defaultProps={height:38,width:122};addPropertyControls(FramerQCLLYWdqj,{variant:{options:[\"Hu73Hnnhh\",\"n5SG0tuvZ\",\"U6WIfZjaY\"],optionTitles:[\"Variant 1\",\"Variant 2\",\"Variant 3\"],title:\"Variant\",type:ControlType.Enum},eKNXzRH5A:{defaultValue:\"Case Studies\",title:\"Title\",type:ControlType.String},je5svDMh0:{title:\"Link\",type:ControlType.Link},l_cb5b3fU:{defaultValue:'var(--token-a1e55884-84c4-4296-a29f-befcef912aac, rgb(0, 0, 0)) /* {\"name\":\"Black\"} */',title:\"Color\",type:ControlType.Color},EVdq85liR:{title:\"Click\",type:ControlType.EventHandler}});addFonts(FramerQCLLYWdqj,[{explicitInter:true,fonts:[{cssFamilyName:\"KH Teka Regular\",source:\"custom\",style:\"normal\",uiFamilyName:\"KH Teka\",url:\"https://framerusercontent.com/assets/4z6CvOOuX9Bttg9AJPxIBtoCGyw.woff2\",weight:\"400\"}]},...RollingTextFonts,...ChevronFonts,...Arrow40Fonts],{supportsExplicitInterCodegen:true});\nexport const __FramerMetadata__ = {\"exports\":{\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"default\":{\"type\":\"reactComponent\",\"name\":\"FramerQCLLYWdqj\",\"slots\":[],\"annotations\":{\"framerCanvasComponentVariantDetails\":\"{\\\"propertyName\\\":\\\"variant\\\",\\\"data\\\":{\\\"default\\\":{\\\"layout\\\":[\\\"auto\\\",\\\"auto\\\"]},\\\"n5SG0tuvZ\\\":{\\\"layout\\\":[\\\"auto\\\",\\\"auto\\\"]},\\\"U6WIfZjaY\\\":{\\\"layout\\\":[\\\"auto\\\",\\\"auto\\\"]},\\\"diDBOjmf3\\\":{\\\"layout\\\":[\\\"auto\\\",\\\"auto\\\"]}}}\",\"framerComponentViewportWidth\":\"true\",\"framerVariables\":\"{\\\"eKNXzRH5A\\\":\\\"title\\\",\\\"je5svDMh0\\\":\\\"link\\\",\\\"l_cb5b3fU\\\":\\\"color\\\",\\\"EVdq85liR\\\":\\\"click\\\"}\",\"framerIntrinsicWidth\":\"122\",\"framerImmutableVariables\":\"true\",\"framerDisplayContentsDiv\":\"false\",\"framerColorSyntax\":\"true\",\"framerAutoSizeImages\":\"true\",\"framerContractVersion\":\"1\",\"framerIntrinsicHeight\":\"38\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./QCLLYWdqj.map","// Generated by Framer (77d7dc9)\nimport{jsx as _jsx,jsxs as _jsxs,Fragment as _Fragment}from\"react/jsx-runtime\";import{addFonts,addPropertyControls,ChildrenCanSuspend,ComponentViewportProvider,ControlType,cx,getFonts,PathVariablesContext,queryCache,ResolveLinks,SmartComponentScopedContainer,useActiveVariantCallback,useComponentViewport,useLocaleInfo,useQueryData,useRouter,useVariantState,withCSS}from\"framer\";import{LayoutGroup,motion,MotionConfigContext}from\"framer-motion\";import*as React from\"react\";import{useRef}from\"react\";import Services from\"https://framerusercontent.com/modules/aAnQNgZvTO6wUi27jRI5/9zmauvp8QZrf0D8MWD3r/jrP0OSwKt.js\";import UseCases from\"https://framerusercontent.com/modules/VbgPh62TnLmdYg1BHLFV/rjvreXDuxqpQs3zEpaWc/Wq1Of9c3N.js\";import NavDropdownItem from\"https://framerusercontent.com/modules/d4OrTvbUxmSKydkZk4PC/0d29tyBFbTz5g5km6nfT/Ky0OPWEEl.js\";import NavLink from\"https://framerusercontent.com/modules/C5aKNLEjGPcS3Ja1V4ze/gR9Czt88uB1Vpq4CQraB/QCLLYWdqj.js\";const NavLinkFonts=getFonts(NavLink);const NavDropdownItemFonts=getFonts(NavDropdownItem);const cycleOrder=[\"FLRvZVu0T\",\"QicF8mHf9\",\"QwsfTpVkL\"];const serializationHash=\"framer-2O4nJ\";const variantClassNames={FLRvZVu0T:\"framer-v-drhpbh\",QicF8mHf9:\"framer-v-vjxczy\",QwsfTpVkL:\"framer-v-hh3ycx\"};function addPropertyOverrides(overrides,...variants){const nextOverrides={};variants?.forEach(variant=>variant&&Object.assign(nextOverrides,overrides[variant]));return nextOverrides;}const mqS6tPQUV=undefined;const v9lQ7zU23lSpQdGlke=undefined;const wHBqvefJulSpQdGlke=undefined;const idlSpQdGlke=undefined;const AbUN7WmJnx8FHrjL5Q=undefined;const wdlqZNHTPx8FHrjL5Q=undefined;const YLPAr33BMx8FHrjL5Q=undefined;const CNN_66BWJx8FHrjL5Q=undefined;const idx8FHrjL5Q=undefined;const transition1={delay:0,duration:.6,ease:[.25,.3,.2,1],type:\"tween\"};const query=prequery=>prequery({from:{alias:\"lSpQdGlke\",data:UseCases,type:\"Collection\"},limit:{type:\"LiteralValue\",value:10},select:[{collection:\"lSpQdGlke\",name:\"v9lQ7zU23\",type:\"Identifier\"},{collection:\"lSpQdGlke\",name:\"wHBqvefJu\",type:\"Identifier\"},{collection:\"lSpQdGlke\",name:\"id\",type:\"Identifier\"}]});const query1=()=>({from:{alias:\"lSpQdGlke\",data:UseCases,type:\"Collection\"},limit:{type:\"LiteralValue\",value:10},select:[{collection:\"lSpQdGlke\",name:\"v9lQ7zU23\",type:\"Identifier\"},{collection:\"lSpQdGlke\",name:\"wHBqvefJu\",type:\"Identifier\"},{collection:\"lSpQdGlke\",name:\"id\",type:\"Identifier\"}]});const QueryData=({query,pageSize,children})=>{const data=useQueryData(query);return children(data);};const convertFromEnum=(value,activeLocale)=>{switch(value){case\"iDYvF_QPZ\":return\"xOV3Yi9TT\";case\"dqKLlfG2n\":return\"Q3YNUf7BA\";case\"MgJlw0tDw\":return\"tYOr00y5a\";default:return\"xOV3Yi9TT\";}};const query2=prequery=>prequery({from:{alias:\"x8FHrjL5Q\",data:Services,type:\"Collection\"},limit:{type:\"LiteralValue\",value:10},select:[{collection:\"x8FHrjL5Q\",name:\"AbUN7WmJn\",type:\"Identifier\"},{collection:\"x8FHrjL5Q\",name:\"wdlqZNHTP\",type:\"Identifier\"},{collection:\"x8FHrjL5Q\",name:\"YLPAr33BM\",type:\"Identifier\"},{collection:\"x8FHrjL5Q\",name:\"CNN_66BWJ\",type:\"Identifier\"},{collection:\"x8FHrjL5Q\",name:\"id\",type:\"Identifier\"}]});const query3=()=>({from:{alias:\"x8FHrjL5Q\",data:Services,type:\"Collection\"},limit:{type:\"LiteralValue\",value:10},select:[{collection:\"x8FHrjL5Q\",name:\"AbUN7WmJn\",type:\"Identifier\"},{collection:\"x8FHrjL5Q\",name:\"wdlqZNHTP\",type:\"Identifier\"},{collection:\"x8FHrjL5Q\",name:\"YLPAr33BM\",type:\"Identifier\"},{collection:\"x8FHrjL5Q\",name:\"CNN_66BWJ\",type:\"Identifier\"},{collection:\"x8FHrjL5Q\",name:\"id\",type:\"Identifier\"}]});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={\"Use Cases\":\"QwsfTpVkL\",Default:\"FLRvZVu0T\",Services:\"QicF8mHf9\"};const getProps=({height,id,linkColor,width,...props})=>{return{...props,mqS6tPQUV:linkColor??props.mqS6tPQUV??\"var(--token-a1e55884-84c4-4296-a29f-befcef912aac, rgb(0, 0, 0))\",variant:humanReadableVariantMap[props.variant]??props.variant??\"FLRvZVu0T\"};};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,mqS6tPQUV,...restProps}=getProps(props);const{baseVariant,classNames,clearLoadingGesture,gestureHandlers,gestureVariant,isLoading,setGestureState,setVariant,variants}=useVariantState({cycleOrder,defaultVariant:\"FLRvZVu0T\",ref:refBinding,variant,variantClassNames});const layoutDependency=createLayoutDependency(props,variants);const{activeVariantCallback,delay}=useActiveVariantCallback(baseVariant);const EVdq85liRr62e0i=activeVariantCallback(async(...args)=>{setVariant(\"QwsfTpVkL\");});const EVdq85liR1hsc8yh=activeVariantCallback(async(...args)=>{setVariant(\"FLRvZVu0T\");});const EVdq85liR9z4lp8=activeVariantCallback(async(...args)=>{setVariant(\"QicF8mHf9\");});const sharedStyleClassNames=[];const scopingClassNames=cx(serializationHash,...sharedStyleClassNames);const router=useRouter();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-drhpbh\",className,classNames),\"data-framer-name\":\"Default\",layoutDependency:layoutDependency,layoutId:\"FLRvZVu0T\",ref:refBinding,style:{...style},...addPropertyOverrides({QicF8mHf9:{\"data-framer-name\":\"Services\"},QwsfTpVkL:{\"data-framer-name\":\"Use Cases\"}},baseVariant,gestureVariant),children:[/*#__PURE__*/_jsxs(motion.div,{className:\"framer-10066dn\",\"data-framer-name\":\"Use Cases\",layoutDependency:layoutDependency,layoutId:\"K9d989XXY\",children:[/*#__PURE__*/_jsx(ComponentViewportProvider,{height:38,y:(componentViewport?.y||0)+(0+((componentViewport?.height||38)-0-38)/2)+0+0,children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-18g28s9-container\",layoutDependency:layoutDependency,layoutId:\"BlA5MOW8a-container\",nodeId:\"BlA5MOW8a\",rendersWithMotion:true,scopeId:\"i6Pug0076\",children:/*#__PURE__*/_jsx(NavLink,{eKNXzRH5A:\"Use Cases\",EVdq85liR:EVdq85liRr62e0i,height:\"100%\",id:\"BlA5MOW8a\",l_cb5b3fU:mqS6tPQUV,layoutId:\"BlA5MOW8a\",variant:\"n5SG0tuvZ\",width:\"100%\",...addPropertyOverrides({QwsfTpVkL:{EVdq85liR:EVdq85liR1hsc8yh,variant:\"U6WIfZjaY\"}},baseVariant,gestureVariant)})})}),/*#__PURE__*/_jsx(motion.div,{className:\"framer-burjp7\",\"data-border\":true,layoutDependency:layoutDependency,layoutId:\"lSpQdGlke\",style:{\"--border-bottom-width\":\"12px\",\"--border-color\":\"var(--token-9e85da99-017f-4da3-b160-f0fb42ac6e20, rgb(255, 255, 255))\",\"--border-left-width\":\"0px\",\"--border-right-width\":\"0px\",\"--border-style\":\"solid\",\"--border-top-width\":\"0px\",backgroundColor:\"var(--token-9e85da99-017f-4da3-b160-f0fb42ac6e20, rgb(255, 255, 255))\",borderBottomLeftRadius:8,borderBottomRightRadius:8,borderTopLeftRadius:8,borderTopRightRadius:8,opacity:0},variants:{QwsfTpVkL:{opacity:1}},children:/*#__PURE__*/_jsx(ChildrenCanSuspend,{children:/*#__PURE__*/_jsx(QueryData,{query:query1(),children:(collection,paginationInfo,loadMore)=>{return /*#__PURE__*/_jsx(_Fragment,{children:collection?.map(({id:idlSpQdGlke,v9lQ7zU23:v9lQ7zU23lSpQdGlke,wHBqvefJu:wHBqvefJulSpQdGlke},index)=>{v9lQ7zU23lSpQdGlke??=\"\";wHBqvefJulSpQdGlke??=\"\";return /*#__PURE__*/_jsx(LayoutGroup,{id:`lSpQdGlke-${idlSpQdGlke}`,children:/*#__PURE__*/_jsx(PathVariablesContext.Provider,{value:{wHBqvefJu:wHBqvefJulSpQdGlke},children:/*#__PURE__*/_jsx(ResolveLinks,{links:[{href:{pathVariables:{wHBqvefJu:wHBqvefJulSpQdGlke},webPageId:\"uuw5uXNm0\"},implicitPathVariables:undefined},{href:{pathVariables:{wHBqvefJu:wHBqvefJulSpQdGlke},webPageId:\"uuw5uXNm0\"},implicitPathVariables:undefined},{href:{pathVariables:{wHBqvefJu:wHBqvefJulSpQdGlke},webPageId:\"uuw5uXNm0\"},implicitPathVariables:undefined}],children:resolvedLinks=>/*#__PURE__*/_jsx(ComponentViewportProvider,{height:111,width:\"320px\",y:(componentViewport?.y||0)+(0+((componentViewport?.height||38)-0-38)/2)+62+40+508,...addPropertyOverrides({QicF8mHf9:{y:(componentViewport?.y||0)+(0+((componentViewport?.height||38)-0-38)/2)+62+40+0},QwsfTpVkL:{y:(componentViewport?.y||0)+(0+((componentViewport?.height||38)-0-38)/2)+46+40+0}},baseVariant,gestureVariant),children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-pu9y1y-container\",layoutDependency:layoutDependency,layoutId:\"HMTQEHchU-container\",nodeId:\"HMTQEHchU\",rendersWithMotion:true,scopeId:\"i6Pug0076\",children:/*#__PURE__*/_jsx(NavDropdownItem,{AlGm5pcqF:false,height:\"100%\",HJi06y7Kh:false,id:\"HMTQEHchU\",klUWsT3Rt:\"16px 8px 16px 0px\",layoutId:\"HMTQEHchU\",mknhGN1kS:v9lQ7zU23lSpQdGlke,Mp_VvpfoP:v9lQ7zU23lSpQdGlke,N59rtww48:resolvedLinks[0],style:{width:\"100%\"},width:\"100%\",WzsE8XxEv:\"xOV3Yi9TT\",yx2a2t8nT:\"0px 0px 16px 0px\",...addPropertyOverrides({QicF8mHf9:{N59rtww48:resolvedLinks[1]},QwsfTpVkL:{N59rtww48:resolvedLinks[2]}},baseVariant,gestureVariant)})})})})})},idlSpQdGlke);})});}})})})]}),/*#__PURE__*/_jsxs(motion.div,{className:\"framer-vw4y6z\",\"data-framer-name\":\"Services\",layoutDependency:layoutDependency,layoutId:\"XCNx9qb8o\",children:[/*#__PURE__*/_jsx(ComponentViewportProvider,{height:38,y:(componentViewport?.y||0)+(0+((componentViewport?.height||38)-0-38)/2)+0+0,children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-nk8n1m-container\",layoutDependency:layoutDependency,layoutId:\"BOl6UgiOz-container\",nodeId:\"BOl6UgiOz\",rendersWithMotion:true,scopeId:\"i6Pug0076\",children:/*#__PURE__*/_jsx(NavLink,{eKNXzRH5A:\"Services\",EVdq85liR:EVdq85liR9z4lp8,height:\"100%\",id:\"BOl6UgiOz\",l_cb5b3fU:mqS6tPQUV,layoutId:\"BOl6UgiOz\",variant:\"n5SG0tuvZ\",width:\"100%\",...addPropertyOverrides({QicF8mHf9:{EVdq85liR:EVdq85liR1hsc8yh,variant:\"U6WIfZjaY\"}},baseVariant,gestureVariant)})})}),/*#__PURE__*/_jsx(motion.div,{className:\"framer-1d4hkfl\",\"data-border\":true,layoutDependency:layoutDependency,layoutId:\"x8FHrjL5Q\",style:{\"--border-bottom-width\":\"9px\",\"--border-color\":\"var(--token-9e85da99-017f-4da3-b160-f0fb42ac6e20, rgb(255, 255, 255))\",\"--border-left-width\":\"0px\",\"--border-right-width\":\"0px\",\"--border-style\":\"solid\",\"--border-top-width\":\"0px\",backgroundColor:\"var(--token-9e85da99-017f-4da3-b160-f0fb42ac6e20, rgb(255, 255, 255))\",borderBottomLeftRadius:8,borderBottomRightRadius:8,borderTopLeftRadius:8,borderTopRightRadius:8,opacity:0},variants:{QicF8mHf9:{opacity:1}},children:/*#__PURE__*/_jsx(ChildrenCanSuspend,{children:/*#__PURE__*/_jsx(QueryData,{query:query3(),children:(collection1,paginationInfo1,loadMore1)=>{return /*#__PURE__*/_jsx(_Fragment,{children:collection1?.map(({AbUN7WmJn:AbUN7WmJnx8FHrjL5Q,CNN_66BWJ:CNN_66BWJx8FHrjL5Q,id:idx8FHrjL5Q,wdlqZNHTP:wdlqZNHTPx8FHrjL5Q,YLPAr33BM:YLPAr33BMx8FHrjL5Q},index1)=>{wdlqZNHTPx8FHrjL5Q??=\"\";YLPAr33BMx8FHrjL5Q??=\"\";CNN_66BWJx8FHrjL5Q??=\"\";return /*#__PURE__*/_jsx(LayoutGroup,{id:`x8FHrjL5Q-${idx8FHrjL5Q}`,children:/*#__PURE__*/_jsx(PathVariablesContext.Provider,{value:{CNN_66BWJ:CNN_66BWJx8FHrjL5Q},children:/*#__PURE__*/_jsx(ResolveLinks,{links:[{href:{pathVariables:{CNN_66BWJ:CNN_66BWJx8FHrjL5Q},webPageId:\"rEeY9FftX\"},implicitPathVariables:undefined},{href:{pathVariables:{CNN_66BWJ:CNN_66BWJx8FHrjL5Q},webPageId:\"rEeY9FftX\"},implicitPathVariables:undefined},{href:{pathVariables:{CNN_66BWJ:CNN_66BWJx8FHrjL5Q},webPageId:\"rEeY9FftX\"},implicitPathVariables:undefined}],children:resolvedLinks1=>/*#__PURE__*/_jsx(ComponentViewportProvider,{height:111,width:\"270px\",y:(componentViewport?.y||0)+(0+((componentViewport?.height||38)-0-38)/2)+62+40+0,...addPropertyOverrides({QicF8mHf9:{y:(componentViewport?.y||0)+(0+((componentViewport?.height||38)-0-38)/2)+46+40+0}},baseVariant,gestureVariant),children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-noyhfb-container\",layoutDependency:layoutDependency,layoutId:\"qAuy2FvWc-container\",nodeId:\"qAuy2FvWc\",rendersWithMotion:true,scopeId:\"i6Pug0076\",children:/*#__PURE__*/_jsx(NavDropdownItem,{AlGm5pcqF:true,height:\"100%\",HJi06y7Kh:true,id:\"qAuy2FvWc\",klUWsT3Rt:\"8px 8px 8px 0px\",layoutId:\"qAuy2FvWc\",mknhGN1kS:wdlqZNHTPx8FHrjL5Q,Mp_VvpfoP:YLPAr33BMx8FHrjL5Q,N59rtww48:resolvedLinks1[0],style:{width:\"100%\"},width:\"100%\",WzsE8XxEv:convertFromEnum(AbUN7WmJnx8FHrjL5Q,activeLocale),yx2a2t8nT:\"0px 0px 32px 0px\",...addPropertyOverrides({QicF8mHf9:{N59rtww48:resolvedLinks1[1]},QwsfTpVkL:{N59rtww48:resolvedLinks1[2]}},baseVariant,gestureVariant)})})})})})},idx8FHrjL5Q);})});}})})})]}),/*#__PURE__*/_jsx(ResolveLinks,{links:[{href:{webPageId:\"r5F18MhFI\"},implicitPathVariables:undefined},{href:{webPageId:\"r5F18MhFI\"},implicitPathVariables:undefined},{href:{webPageId:\"r5F18MhFI\"},implicitPathVariables:undefined}],children:resolvedLinks2=>/*#__PURE__*/_jsx(ComponentViewportProvider,{height:38,y:(componentViewport?.y||0)+(0+((componentViewport?.height||38)-0-38)/2),children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-gqtm5z-container\",layoutDependency:layoutDependency,layoutId:\"qxz7ndzuw-container\",nodeId:\"qxz7ndzuw\",rendersWithMotion:true,scopeId:\"i6Pug0076\",children:/*#__PURE__*/_jsx(NavLink,{eKNXzRH5A:\"Results\",height:\"100%\",id:\"qxz7ndzuw\",je5svDMh0:resolvedLinks2[0],l_cb5b3fU:mqS6tPQUV,layoutId:\"qxz7ndzuw\",variant:\"Hu73Hnnhh\",width:\"100%\",...addPropertyOverrides({QicF8mHf9:{je5svDMh0:resolvedLinks2[1]},QwsfTpVkL:{je5svDMh0:resolvedLinks2[2]}},baseVariant,gestureVariant)})})})})]})})})});});const css=[\"@supports (aspect-ratio: 1) { body { --framer-aspect-ratio-supported: auto; } }\",\".framer-2O4nJ.framer-1dnsrsl, .framer-2O4nJ .framer-1dnsrsl { display: block; }\",\".framer-2O4nJ.framer-drhpbh { align-content: center; align-items: center; display: flex; flex-direction: row; flex-wrap: nowrap; gap: 4px; height: min-content; justify-content: flex-start; overflow: hidden; padding: 0px; position: relative; width: min-content; }\",\".framer-2O4nJ .framer-10066dn, .framer-2O4nJ .framer-vw4y6z { align-content: flex-end; align-items: flex-end; display: flex; flex: none; flex-direction: column; flex-wrap: nowrap; gap: 10px; height: min-content; justify-content: center; overflow: visible; padding: 0px; position: relative; width: min-content; }\",\".framer-2O4nJ .framer-18g28s9-container, .framer-2O4nJ .framer-nk8n1m-container, .framer-2O4nJ .framer-gqtm5z-container { flex: none; height: auto; position: relative; width: auto; }\",\".framer-2O4nJ .framer-burjp7 { align-content: flex-start; align-items: flex-start; display: flex; flex: none; flex-direction: column; flex-wrap: nowrap; gap: 16px; height: min-content; justify-content: center; min-width: 400px; padding: 40px 40px 8px 40px; pointer-events: none; position: absolute; right: 0px; top: 62px; width: 400px; z-index: 0; }\",\".framer-2O4nJ .framer-pu9y1y-container, .framer-2O4nJ .framer-noyhfb-container { flex: none; height: auto; pointer-events: none; position: relative; width: 100%; }\",\".framer-2O4nJ .framer-1d4hkfl { align-content: center; align-items: center; display: flex; flex: none; flex-direction: column; flex-wrap: nowrap; gap: 32px; height: min-content; justify-content: center; min-width: 350px; padding: 40px 40px 8px 40px; pointer-events: none; position: absolute; right: 0px; top: 62px; width: 350px; z-index: 0; }\",\".framer-2O4nJ.framer-v-vjxczy.framer-drhpbh, .framer-2O4nJ.framer-v-hh3ycx.framer-drhpbh { overflow: visible; }\",\".framer-2O4nJ.framer-v-vjxczy .framer-1d4hkfl, .framer-2O4nJ.framer-v-hh3ycx .framer-burjp7 { pointer-events: auto; top: 46px; z-index: 2; }\",\".framer-2O4nJ.framer-v-vjxczy .framer-noyhfb-container { pointer-events: auto; }\",'.framer-2O4nJ[data-border=\"true\"]::after, .framer-2O4nJ [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 38\n * @framerIntrinsicWidth 269\n * @framerCanvasComponentVariantDetails {\"propertyName\":\"variant\",\"data\":{\"default\":{\"layout\":[\"auto\",\"auto\"]},\"QicF8mHf9\":{\"layout\":[\"auto\",\"auto\"]},\"QwsfTpVkL\":{\"layout\":[\"auto\",\"auto\"]}}}\n * @framerVariables {\"mqS6tPQUV\":\"linkColor\"}\n * @framerImmutableVariables true\n * @framerDisplayContentsDiv false\n * @framerAutoSizeImages true\n * @framerComponentViewportWidth true\n * @framerColorSyntax true\n */const Frameri6Pug0076=withCSS(Component,css,\"framer-2O4nJ\");export default Frameri6Pug0076;Frameri6Pug0076.displayName=\"Nav Links\";Frameri6Pug0076.defaultProps={height:38,width:269};addPropertyControls(Frameri6Pug0076,{variant:{options:[\"FLRvZVu0T\",\"QicF8mHf9\",\"QwsfTpVkL\"],optionTitles:[\"Default\",\"Services\",\"Use Cases\"],title:\"Variant\",type:ControlType.Enum},mqS6tPQUV:{defaultValue:'var(--token-a1e55884-84c4-4296-a29f-befcef912aac, rgb(0, 0, 0)) /* {\"name\":\"Black\"} */',title:\"Link Color\",type:ControlType.Color}});addFonts(Frameri6Pug0076,[{explicitInter:true,fonts:[]},...NavLinkFonts,...NavDropdownItemFonts],{supportsExplicitInterCodegen:true});Frameri6Pug0076.loader={load:(props,context)=>Promise.allSettled([queryCache.get(query1(),context.locale).preload(),queryCache.get(query3(),context.locale).preload()])};\nexport const __FramerMetadata__ = {\"exports\":{\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"default\":{\"type\":\"reactComponent\",\"name\":\"Frameri6Pug0076\",\"slots\":[],\"annotations\":{\"framerColorSyntax\":\"true\",\"framerContractVersion\":\"1\",\"framerIntrinsicWidth\":\"269\",\"framerVariables\":\"{\\\"mqS6tPQUV\\\":\\\"linkColor\\\"}\",\"framerImmutableVariables\":\"true\",\"framerAutoSizeImages\":\"true\",\"framerIntrinsicHeight\":\"38\",\"framerComponentViewportWidth\":\"true\",\"framerDisplayContentsDiv\":\"false\",\"framerCanvasComponentVariantDetails\":\"{\\\"propertyName\\\":\\\"variant\\\",\\\"data\\\":{\\\"default\\\":{\\\"layout\\\":[\\\"auto\\\",\\\"auto\\\"]},\\\"QicF8mHf9\\\":{\\\"layout\\\":[\\\"auto\\\",\\\"auto\\\"]},\\\"QwsfTpVkL\\\":{\\\"layout\\\":[\\\"auto\\\",\\\"auto\\\"]}}}\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// Generated by Framer (808fccf)\nimport{jsx as _jsx}from\"react/jsx-runtime\";import{addPropertyControls,ControlType,cx,motion,withCSS}from\"framer\";import*as React from\"react\";import{forwardRef}from\"react\";const mask='url(\\'data:image/svg+xml,<svg display=\"block\" role=\"presentation\" viewBox=\"0 0 142 24\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M 1.135 17.741 L 1.135 14.912 L 3.8 14.912 C 4.486 14.912 4.882 14.753 5.146 14.092 L 5.542 13.061 L 0 0 L 3.959 0 L 7.284 8.566 L 10.292 0 L 14.198 0 L 8.366 15.256 C 7.548 17.45 6.149 17.741 4.592 17.741 Z\" fill=\"var(--nb9y5d, var(--token-a1e55884-84c4-4296-a29f-befcef912aac, rgb(0, 0, 0)))\" height=\"17.74082px\" id=\"ju2VlPswV\" transform=\"translate(127.078 5.526)\" width=\"14.198000000000008px\"/><path d=\"M 6.597 14.013 C 2.56 14.013 0 10.999 0 7.006 C 0 3.041 2.56 0 6.597 0 C 10.239 0 13.063 2.142 12.905 7.932 L 3.721 7.932 C 3.932 9.888 4.856 11.131 6.597 11.131 C 7.89 11.131 8.682 10.549 9.078 9.492 L 12.799 9.492 C 12.403 11.924 10.345 14.013 6.597 14.013 Z M 3.774 5.579 L 9.184 5.579 C 8.999 3.622 8.022 2.829 6.571 2.829 C 4.935 2.829 4.09 4.019 3.774 5.579 Z\" fill=\"var(--nb9y5d, var(--token-a1e55884-84c4-4296-a29f-befcef912aac, rgb(0, 0, 0)))\" height=\"14.01287px\" id=\"zXj6w7qJa\" transform=\"translate(114.178 5.182)\" width=\"12.911319499675226px\"/><path d=\"M 0 18.508 L 0 0 L 3.826 0 L 3.826 18.508 Z\" fill=\"var(--nb9y5d, var(--token-a1e55884-84c4-4296-a29f-befcef912aac, rgb(0, 0, 0)))\" height=\"18.50765px\" id=\"BOclSaUZz\" transform=\"translate(108.66 0.344)\" width=\"3.8260000000000076px\"/><path d=\"M 0 18.508 L 0 0 L 3.827 0 L 3.827 18.508 Z\" fill=\"var(--nb9y5d, var(--token-a1e55884-84c4-4296-a29f-befcef912aac, rgb(0, 0, 0)))\" height=\"18.50765px\" id=\"P_RxVFa13\" transform=\"translate(102.954 0.344)\" width=\"3.8270000000000124px\"/><path d=\"M 4.17 14.013 C 1.636 14.013 0 12.506 0 10.232 C 0 7.086 2.718 6.293 5.014 5.896 L 7.284 5.526 C 8.154 5.367 8.445 4.918 8.445 4.336 C 8.445 3.464 7.812 2.776 6.597 2.776 C 5.357 2.776 4.46 3.331 4.275 4.627 L 0.501 4.627 C 0.924 1.375 3.51 0 6.703 0 C 10.345 0 12.219 1.666 12.219 5.103 L 12.219 10.1 C 12.219 10.523 12.483 10.787 12.905 10.787 L 13.538 10.787 L 13.538 13.669 L 11.216 13.669 C 9.791 13.669 8.761 12.982 8.761 11.898 L 8.761 11.66 C 7.627 13.352 5.991 14.013 4.17 14.013 Z M 3.827 9.703 C 3.827 10.734 4.513 11.263 5.542 11.263 C 7.416 11.263 8.471 9.518 8.471 7.747 L 8.471 7.218 C 8.128 7.429 7.785 7.509 7.363 7.615 L 5.753 7.958 C 4.407 8.223 3.827 8.804 3.827 9.703 Z\" fill=\"var(--nb9y5d, var(--token-a1e55884-84c4-4296-a29f-befcef912aac, rgb(0, 0, 0)))\" height=\"14.01287px\" id=\"LucpO1OQA\" transform=\"translate(87.867 5.182)\" width=\"13.537800000000004px\"/><path d=\"M 6.175 18.508 L 0 0 L 4.354 0 L 8.788 14.436 L 13.195 0 L 17.549 0 L 11.374 18.508 Z\" fill=\"var(--nb9y5d, var(--token-a1e55884-84c4-4296-a29f-befcef912aac, rgb(0, 0, 0)))\" height=\"18.50765px\" id=\"BrkkUywDq\" transform=\"translate(71.61 0.344)\" width=\"17.549400000000006px\"/><path d=\"M 5.753 17.741 C 3.404 17.741 2.085 16.578 2.085 14.224 L 2.085 7.244 L 0 7.244 L 0 4.415 L 1.399 4.415 C 1.847 4.415 2.085 4.151 2.085 3.702 L 2.085 0 L 5.859 0 L 5.859 4.415 L 8.656 4.415 L 8.656 7.244 L 5.859 7.244 L 5.859 13.273 C 5.859 14.357 6.254 14.859 7.231 14.859 L 8.999 14.859 L 8.999 17.741 Z\" fill=\"var(--nb9y5d, var(--token-a1e55884-84c4-4296-a29f-befcef912aac, rgb(0, 0, 0)))\" height=\"17.74086px\" id=\"bO4cRSLWZ\" transform=\"translate(62.488 1.111)\" width=\"8.999000000000002px\"/><path d=\"M 0 13.669 L 0 0.344 L 3.827 0.344 L 3.827 2.38 C 4.777 0.82 6.492 0 8.155 0 C 11.242 0 12.773 2.036 12.773 5.288 L 12.773 13.669 L 8.946 13.669 L 8.946 5.896 C 8.946 4.177 8.049 3.173 6.65 3.173 C 4.935 3.173 3.827 4.574 3.827 6.345 L 3.827 13.669 Z\" fill=\"var(--nb9y5d, var(--token-a1e55884-84c4-4296-a29f-befcef912aac, rgb(0, 0, 0)))\" height=\"13.669169999999998px\" id=\"dKg31Zpga\" transform=\"translate(48.391 5.182)\" width=\"12.772799999999997px\"/><path d=\"M 0.053 18.508 L 0.053 5.182 L 3.906 5.182 L 3.906 18.508 Z M 0 3.464 L 0 0 L 3.959 0 L 3.959 3.464 Z\" fill=\"var(--nb9y5d, var(--token-a1e55884-84c4-4296-a29f-befcef912aac, rgb(0, 0, 0)))\" height=\"18.507649859924317px\" id=\"Ondn_kJmb\" transform=\"translate(42.562 0.344)\" width=\"3.958500000000001px\"/><path d=\"M 0 13.326 L 0 0 L 3.827 0 L 3.827 2.3 C 4.539 0.714 5.779 0 7.574 0 L 8.286 0 L 8.286 3.622 L 7.125 3.622 C 4.724 3.622 3.827 5.182 3.827 7.456 L 3.827 13.326 Z\" fill=\"var(--nb9y5d, var(--token-a1e55884-84c4-4296-a29f-befcef912aac, rgb(0, 0, 0)))\" height=\"13.325520000000001px\" id=\"OdQnC5ZtA\" transform=\"translate(32.549 5.526)\" width=\"8.286499999999997px\"/><path d=\"M 0 18.058 L 0 0.344 L 3.827 0.344 L 3.827 2.221 C 4.856 0.661 6.334 0 8.075 0 C 10.794 0 13.406 2.432 13.406 7.006 C 13.406 11.607 10.794 14.013 8.075 14.013 C 6.334 14.013 4.777 13.193 3.827 11.792 L 3.827 18.058 Z M 3.747 7.033 C 3.747 9.254 4.803 10.867 6.65 10.867 C 8.498 10.867 9.5 9.254 9.5 7.033 C 9.5 4.838 8.498 3.12 6.65 3.12 C 4.803 3.12 3.747 4.838 3.747 7.033 Z\" fill=\"var(--nb9y5d, var(--token-a1e55884-84c4-4296-a29f-befcef912aac, rgb(0, 0, 0)))\" height=\"18.05817px\" id=\"RlVrjcLnb\" transform=\"translate(17.504 5.182)\" width=\"13.406199999999998px\"/><path d=\"M 8.075 19.195 C 3.193 19.195 0.106 16.657 0 13.008 L 4.038 13.008 C 4.328 14.912 5.991 15.837 8.102 15.837 C 10.028 15.837 11.612 15.15 11.612 13.59 C 11.612 12.532 10.82 11.977 9.632 11.713 L 6.228 10.919 C 3.352 10.258 0.581 9.201 0.581 5.499 C 0.581 2.247 3.589 0 7.996 0 C 12.298 0 15.042 2.221 15.227 5.605 L 11.189 5.605 C 10.978 4.151 9.87 3.226 7.864 3.226 C 6.017 3.226 4.697 4.045 4.697 5.341 C 4.697 6.504 5.621 6.98 6.861 7.271 L 10.635 8.09 C 13.749 8.778 15.755 10.364 15.755 13.405 C 15.755 17.159 12.482 19.195 8.075 19.195 Z\" fill=\"var(--nb9y5d, var(--token-a1e55884-84c4-4296-a29f-befcef912aac, rgb(0, 0, 0)))\" height=\"19.195px\" id=\"MLRMKcW_5\" width=\"15.7549px\"/></svg>\\') alpha no-repeat center / auto var(--framer-icon-mask-mode, add), var(--framer-icon-mask, none)';const SVG=/*#__PURE__*/forwardRef((props,ref)=>{const{animated,layoutId,children,...rest}=props;return animated?/*#__PURE__*/_jsx(motion.div,{...rest,layoutId:layoutId,ref:ref}):/*#__PURE__*/_jsx(\"div\",{...rest,ref:ref});});const getProps=({fill,height,id,width,...props})=>{return{...props,kMIDWDvEF:fill??props.kMIDWDvEF??\"var(--token-a1e55884-84c4-4296-a29f-befcef912aac, rgb(0, 0, 0))\"};};const Component=/*#__PURE__*/React.forwardRef(function(props,ref){const{style,className,layoutId,variant,kMIDWDvEF,...restProps}=getProps(props);return /*#__PURE__*/_jsx(SVG,{...restProps,className:cx(\"framer-4sUGI\",className),layoutId:layoutId,ref:ref,style:{\"--nb9y5d\":kMIDWDvEF,...style}});});const css=[`.framer-4sUGI { -webkit-mask: ${mask}; aspect-ratio: 5.916666666666667; background-color: var(--nb9y5d); mask: ${mask}; width: 142px; }`];/**\n * This is a generated Framer component.\n * @framerIntrinsicWidth 142\n * @framerIntrinsicHeight 24\n * @framerSupportedLayoutWidth any-prefer-fixed\n * @framerSupportedLayoutHeight any-prefer-fixed\n * @framerVariables {\"kMIDWDvEF\":\"fill\"}\n * @framerImmutableVariables true\n * @framerVector {\"name\":\"SprintValley\",\"color\":{\"type\":\"variable\",\"value\":\"nb9y5d\"},\"set\":{\"localId\":\"vectorSet/QJFR2LzhN\",\"id\":\"QJFR2LzhN\",\"moduleId\":\"xKfFRKsNs90tnmet6IdB\"}}\n */const Icon=withCSS(Component,css,\"framer-4sUGI\");Icon.displayName=\"SprintValley\";export default Icon;addPropertyControls(Icon,{kMIDWDvEF:{defaultValue:'var(--token-a1e55884-84c4-4296-a29f-befcef912aac, rgb(0, 0, 0)) /* {\"name\":\"Black\"} */',hidden:false,title:\"Fill\",type:ControlType.Color}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"Icon\",\"slots\":[],\"annotations\":{\"framerSupportedLayoutHeight\":\"any-prefer-fixed\",\"framerVariables\":\"{\\\"kMIDWDvEF\\\":\\\"fill\\\"}\",\"framerIntrinsicWidth\":\"142\",\"framerSupportedLayoutWidth\":\"any-prefer-fixed\",\"framerIntrinsicHeight\":\"24\",\"framerContractVersion\":\"1\",\"framerVector\":\"{\\\"name\\\":\\\"SprintValley\\\",\\\"color\\\":{\\\"type\\\":\\\"variable\\\",\\\"value\\\":\\\"nb9y5d\\\"},\\\"set\\\":{\\\"localId\\\":\\\"vectorSet/QJFR2LzhN\\\",\\\"id\\\":\\\"QJFR2LzhN\\\",\\\"moduleId\\\":\\\"xKfFRKsNs90tnmet6IdB\\\"}}\",\"framerImmutableVariables\":\"true\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// Generated by Framer (808fccf)\nimport{jsx as _jsx}from\"react/jsx-runtime\";import{addPropertyControls,ControlType,cx,motion,useSVGTemplate,withCSS}from\"framer\";import*as React from\"react\";import{forwardRef}from\"react\";const mask=\"var(--framer-icon-mask)\";const Base=/*#__PURE__*/forwardRef(function(props,ref){return /*#__PURE__*/_jsx(\"svg\",{...props,ref:ref,children:props.children});});const MotionSVG=motion.create(Base);const SVG=/*#__PURE__*/forwardRef((props,ref)=>{const{animated,layoutId,children,...rest}=props;return animated?/*#__PURE__*/_jsx(MotionSVG,{...rest,layoutId:layoutId,ref:ref,children:children}):/*#__PURE__*/_jsx(\"svg\",{...rest,ref:ref,children:children});});const svg='<svg display=\"block\" role=\"presentation\" viewBox=\"0 0 40 40\" xmlns=\"http://www.w3.org/2000/svg\"><g d=\"M 44.01 0 C 50.401 0 55.583 5.181 55.583 11.573 L 55.583 28.427 C 55.583 34.819 50.401 40 44.01 40 L 27.23 40 C 20.839 40 15.657 34.819 15.657 28.427 L 15.657 11.573 C 15.657 5.181 20.839 0 27.23 0 Z M 29.817 21.16 C 28.289 25.79 25.417 29.005 23.401 28.339 C 21.385 27.674 20.989 23.382 22.517 18.752 C 24.045 14.121 26.918 10.907 28.933 11.572 C 30.949 12.238 31.345 16.53 29.817 21.16 Z M 40.989 21.574 C 36.643 24.083 32.684 25.364 32.148 24.434 C 31.611 23.505 34.699 20.717 39.045 18.207 C 43.392 15.698 47.35 14.417 47.887 15.347 C 48.424 16.277 45.336 19.065 40.989 21.574 Z M 0 20.049 C 0 16.054 4.342 12.817 9.697 12.817 C 15.053 12.817 19.394 16.054 19.394 20.049 C 19.394 24.043 15.053 27.28 9.697 27.28 C 4.342 27.28 0 24.043 0 20.049 Z M 49.472 20.049 C 49.472 16.054 53.813 12.817 59.169 12.817 C 64.525 12.817 68.866 16.054 68.866 20.049 C 68.866 24.043 64.525 27.28 59.169 27.28 C 53.813 27.28 49.472 24.043 49.472 20.049 Z\" fill=\"transparent\" height=\"40px\" id=\"dAkqJepm4\" transform=\"translate(-15.657 0)\" width=\"68.86620949584962px\"><path d=\"M 28.353 0 C 34.744 0 39.925 5.181 39.925 11.573 L 39.925 28.427 C 39.925 34.819 34.744 40 28.353 40 L 11.573 40 C 5.181 40 0 34.819 0 28.427 L 0 11.573 C 0 5.181 5.181 0 11.573 0 Z\" fill=\"var(--1p6pic6, var(--token-a1e55884-84c4-4296-a29f-befcef912aac, rgb(0, 0, 0)))\" height=\"40px\" id=\"w2uT1AtSj\" transform=\"translate(15.657 0)\" width=\"39.92540000000001px\"/><path d=\"M 8.23 9.675 C 6.702 14.305 3.83 17.519 1.814 16.854 C -0.202 16.189 -0.598 11.896 0.93 7.266 C 2.458 2.636 5.331 -0.578 7.346 0.087 C 9.362 0.752 9.758 5.045 8.23 9.675 Z\" fill=\"var(--xigt9h, var(--token-3a3b2bb2-cb19-4140-bd1d-a5dd96e6b197, rgb(255, 248, 237)))\" height=\"16.941389322033103px\" id=\"qSj6TWEcA\" transform=\"translate(21.587 11.485)\" width=\"9.160274710557909px\"/><path d=\"M 8.902 6.53 C 4.556 9.039 0.597 10.32 0.061 9.39 C -0.476 8.461 2.612 5.673 6.959 3.163 C 11.305 0.654 15.264 -0.627 15.8 0.303 C 16.337 1.233 13.249 4.021 8.902 6.53 Z\" fill=\"var(--xigt9h, var(--token-3a3b2bb2-cb19-4140-bd1d-a5dd96e6b197, rgb(255, 248, 237)))\" height=\"9.693524360146302px\" id=\"GMpwo_3bo\" transform=\"translate(32.087 15.044)\" width=\"15.860870611092672px\"/><path d=\"M 0 7.232 C 0 3.238 4.342 0 9.697 0 C 15.053 0 19.394 3.238 19.394 7.232 C 19.394 11.226 15.053 14.464 9.697 14.464 C 4.342 14.464 0 11.226 0 7.232 Z\" fill=\"var(--xigt9h, var(--token-3a3b2bb2-cb19-4140-bd1d-a5dd96e6b197, rgb(255, 248, 237)))\" height=\"14.463560000000001px\" id=\"VYQo7LWDg\" transform=\"translate(0 12.817)\" width=\"19.39432px\"/><path d=\"M 0 7.232 C 0 3.238 4.342 0 9.697 0 C 15.053 0 19.394 3.238 19.394 7.232 C 19.394 11.226 15.053 14.464 9.697 14.464 C 4.342 14.464 0 11.226 0 7.232 Z\" fill=\"var(--xigt9h, var(--token-3a3b2bb2-cb19-4140-bd1d-a5dd96e6b197, rgb(255, 248, 237)))\" height=\"14.463560000000001px\" id=\"sNLbHGpQh\" transform=\"translate(49.472 12.817)\" width=\"19.394320000000008px\"/></g></svg>';const getProps=({background,foreground,height,id,width,...props})=>{return{...props,lFJotSPq6:foreground??props.lFJotSPq6??\"var(--token-3a3b2bb2-cb19-4140-bd1d-a5dd96e6b197, rgb(255, 248, 237))\",VIAmIN3lK:background??props.VIAmIN3lK??\"var(--token-a1e55884-84c4-4296-a29f-befcef912aac, rgb(0, 0, 0))\"};};const Component=/*#__PURE__*/React.forwardRef(function(props,ref){const{style,className,layoutId,variant,lFJotSPq6,VIAmIN3lK,...restProps}=getProps(props);const href=useSVGTemplate(\"3181577827\",svg);return /*#__PURE__*/_jsx(SVG,{...restProps,className:cx(\"framer-ZZUgf\",className),layoutId:layoutId,ref:ref,role:\"presentation\",style:{\"--1p6pic6\":VIAmIN3lK,\"--xigt9h\":lFJotSPq6,...style},viewBox:\"0 0 40 40\",children:/*#__PURE__*/_jsx(\"use\",{href:href})});});const css=[`.framer-ZZUgf { -webkit-mask: ${mask}; aspect-ratio: 1; display: block; mask: ${mask}; width: 40px; }`];/**\n * This is a generated Framer component.\n * @framerIntrinsicWidth 40\n * @framerIntrinsicHeight 40\n * @framerSupportedLayoutWidth any-prefer-fixed\n * @framerSupportedLayoutHeight any-prefer-fixed\n * @framerVariables {\"lFJotSPq6\":\"foreground\",\"VIAmIN3lK\":\"background\"}\n * @framerImmutableVariables true\n * @framerVector {\"name\":\"Logo Simple\",\"set\":{\"localId\":\"vectorSet/U3Fr75KrG\",\"id\":\"U3Fr75KrG\",\"moduleId\":\"a1DIwDbMGCQZzcdsi03b\"}}\n */const Icon=withCSS(Component,css,\"framer-ZZUgf\");Icon.displayName=\"Logo Simple\";export default Icon;addPropertyControls(Icon,{lFJotSPq6:{defaultValue:'var(--token-3a3b2bb2-cb19-4140-bd1d-a5dd96e6b197, rgb(255, 248, 237)) /* {\"name\":\"Off White\"} */',hidden:false,title:\"Foreground\",type:ControlType.Color},VIAmIN3lK:{defaultValue:'var(--token-a1e55884-84c4-4296-a29f-befcef912aac, rgb(0, 0, 0)) /* {\"name\":\"Black\"} */',hidden:false,title:\"Background\",type:ControlType.Color}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"Icon\",\"slots\":[],\"annotations\":{\"framerSupportedLayoutWidth\":\"any-prefer-fixed\",\"framerIntrinsicWidth\":\"40\",\"framerVector\":\"{\\\"name\\\":\\\"Logo Simple\\\",\\\"set\\\":{\\\"localId\\\":\\\"vectorSet/U3Fr75KrG\\\",\\\"id\\\":\\\"U3Fr75KrG\\\",\\\"moduleId\\\":\\\"a1DIwDbMGCQZzcdsi03b\\\"}}\",\"framerImmutableVariables\":\"true\",\"framerVariables\":\"{\\\"lFJotSPq6\\\":\\\"foreground\\\",\\\"VIAmIN3lK\\\":\\\"background\\\"}\",\"framerSupportedLayoutHeight\":\"any-prefer-fixed\",\"framerIntrinsicHeight\":\"40\",\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// Generated by Framer (3256e0c)\nimport{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{addFonts,addPropertyControls,ControlType,cx,getFonts,useActiveVariantCallback,useComponentViewport,useLocaleInfo,useVariantState,withCSS}from\"framer\";import{LayoutGroup,motion,MotionConfigContext}from\"framer-motion\";import*as React from\"react\";import{useRef}from\"react\";import SprintValley from\"https://framerusercontent.com/modules/OlzMPpRfoMaEvxyIXt8W/BVbF9SFY83Uwq6uFkR7g/CCHsguXhJ.js\";import LogoSimple from\"https://framerusercontent.com/modules/GXhJCpP5rtWxGXh3Pp8l/Md1COZKSFD9oQnF1dfFo/WP6JC1W_F.js\";const LogoSimpleFonts=getFonts(LogoSimple);const SprintValleyFonts=getFonts(SprintValley);const cycleOrder=[\"NgHxEwAf2\",\"MgY4kMRpl\"];const serializationHash=\"framer-nUe7m\";const variantClassNames={MgY4kMRpl:\"framer-v-f29c8b\",NgHxEwAf2:\"framer-v-swubq4\"};function addPropertyOverrides(overrides,...variants){const nextOverrides={};variants?.forEach(variant=>variant&&Object.assign(nextOverrides,overrides[variant]));return nextOverrides;}const vXbntLEbe=undefined;const Q8hLfU8M0=undefined;const SlzEJ7aXV=undefined;const transition1={delay:0,duration:2,ease:[.44,0,.56,1],type:\"tween\"};const transition2={delay:0,duration:.6,ease:[.44,0,.56,1],type:\"tween\"};const transformTemplate1=(_,t)=>`translateX(-50%) ${t}`;const transition3={delay:.8,duration:.5,ease:[.25,.3,.2,1],type:\"tween\"};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={\"Variant 1\":\"NgHxEwAf2\",Variant:\"MgY4kMRpl\"};const getProps=({accent,click,fill,height,id,width,...props})=>{return{...props,Q8hLfU8M0:accent??props.Q8hLfU8M0??\"var(--token-3a3b2bb2-cb19-4140-bd1d-a5dd96e6b197, rgb(255, 248, 237))\",SlzEJ7aXV:fill??props.SlzEJ7aXV??\"var(--token-a1e55884-84c4-4296-a29f-befcef912aac, rgb(0, 0, 0))\",variant:humanReadableVariantMap[props.variant]??props.variant??\"NgHxEwAf2\",vXbntLEbe:click??props.vXbntLEbe};};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,SlzEJ7aXV,Q8hLfU8M0,vXbntLEbe,...restProps}=getProps(props);const{baseVariant,classNames,clearLoadingGesture,gestureHandlers,gestureVariant,isLoading,setGestureState,setVariant,variants}=useVariantState({cycleOrder,defaultVariant:\"NgHxEwAf2\",ref:refBinding,variant,variantClassNames});const layoutDependency=createLayoutDependency(props,variants);const{activeVariantCallback,delay}=useActiveVariantCallback(baseVariant);const onTap1hxf5og=activeVariantCallback(async(...args)=>{setGestureState({isPressed:false});if(vXbntLEbe){const res=await vXbntLEbe(...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__*/_jsxs(motion.div,{...restProps,...gestureHandlers,className:cx(scopingClassNames,\"framer-swubq4\",className,classNames),\"data-framer-name\":\"Variant 1\",\"data-highlight\":true,layoutDependency:layoutDependency,layoutId:\"NgHxEwAf2\",onTap:onTap1hxf5og,ref:refBinding,style:{...style},...addPropertyOverrides({MgY4kMRpl:{\"data-framer-name\":undefined}},baseVariant,gestureVariant),children:[/*#__PURE__*/_jsx(Transition,{value:transition2,children:/*#__PURE__*/_jsx(motion.div,{className:\"framer-16bijxa\",layoutDependency:layoutDependency,layoutId:\"BWD0yLGel\",children:/*#__PURE__*/_jsx(Transition,{value:transition3,children:/*#__PURE__*/_jsx(LogoSimple,{animated:true,className:\"framer-15n5mx5\",layoutDependency:layoutDependency,layoutId:\"kkl_c261S\",style:{\"--1p6pic6\":SlzEJ7aXV,\"--xigt9h\":Q8hLfU8M0},transformTemplate:transformTemplate1})})})}),/*#__PURE__*/_jsx(Transition,{value:transition3,children:/*#__PURE__*/_jsx(SprintValley,{animated:true,className:\"framer-8igtq4\",\"data-framer-name\":\"SprintValley\",layoutDependency:layoutDependency,layoutId:\"SAAYGs2AD\",style:{\"--nb9y5d\":SlzEJ7aXV}})})]})})})});});const css=[\"@supports (aspect-ratio: 1) { body { --framer-aspect-ratio-supported: auto; } }\",\".framer-nUe7m.framer-j9l16c, .framer-nUe7m .framer-j9l16c { display: block; }\",\".framer-nUe7m.framer-swubq4 { align-content: center; align-items: center; cursor: pointer; display: flex; flex-direction: row; flex-wrap: nowrap; gap: 12px; height: min-content; justify-content: center; overflow: visible; padding: 0px; position: relative; width: min-content; }\",\".framer-nUe7m .framer-16bijxa { flex: none; height: 40px; overflow: visible; position: relative; width: 40px; }\",\".framer-nUe7m .framer-15n5mx5 { bottom: var(--framer-aspect-ratio-supported, 0px); flex: none; left: 50%; position: absolute; top: 0px; width: 100%; }\",\".framer-nUe7m .framer-8igtq4 { flex: none; height: var(--framer-aspect-ratio-supported, 24px); position: relative; width: 142px; }\",\".framer-nUe7m.framer-v-f29c8b .framer-16bijxa { aspect-ratio: 1 / 1; height: var(--framer-aspect-ratio-supported, 32px); width: 28px; }\",\".framer-nUe7m.framer-v-f29c8b .framer-8igtq4 { height: var(--framer-aspect-ratio-supported, 16px); width: 95px; }\"];/**\n * This is a generated Framer component.\n * @framerIntrinsicHeight 40\n * @framerIntrinsicWidth 194\n * @framerCanvasComponentVariantDetails {\"propertyName\":\"variant\",\"data\":{\"default\":{\"layout\":[\"auto\",\"auto\"]},\"MgY4kMRpl\":{\"layout\":[\"auto\",\"auto\"]}}}\n * @framerVariables {\"SlzEJ7aXV\":\"fill\",\"Q8hLfU8M0\":\"accent\",\"vXbntLEbe\":\"click\"}\n * @framerImmutableVariables true\n * @framerDisplayContentsDiv false\n * @framerAutoSizeImages true\n * @framerComponentViewportWidth true\n * @framerColorSyntax true\n */const FramerlVoJoAxt3=withCSS(Component,css,\"framer-nUe7m\");export default FramerlVoJoAxt3;FramerlVoJoAxt3.displayName=\"Logo\";FramerlVoJoAxt3.defaultProps={height:40,width:194};addPropertyControls(FramerlVoJoAxt3,{variant:{options:[\"NgHxEwAf2\",\"MgY4kMRpl\"],optionTitles:[\"Variant 1\",\"Variant\"],title:\"Variant\",type:ControlType.Enum},SlzEJ7aXV:{defaultValue:'var(--token-a1e55884-84c4-4296-a29f-befcef912aac, rgb(0, 0, 0)) /* {\"name\":\"Black\"} */',title:\"Fill\",type:ControlType.Color},Q8hLfU8M0:{defaultValue:'var(--token-3a3b2bb2-cb19-4140-bd1d-a5dd96e6b197, rgb(255, 248, 237)) /* {\"name\":\"Off White\"} */',title:\"Accent\",type:ControlType.Color},vXbntLEbe:{title:\"Click\",type:ControlType.EventHandler}});addFonts(FramerlVoJoAxt3,[{explicitInter:true,fonts:[]},...LogoSimpleFonts,...SprintValleyFonts],{supportsExplicitInterCodegen:true});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"FramerlVoJoAxt3\",\"slots\":[],\"annotations\":{\"framerAutoSizeImages\":\"true\",\"framerColorSyntax\":\"true\",\"framerCanvasComponentVariantDetails\":\"{\\\"propertyName\\\":\\\"variant\\\",\\\"data\\\":{\\\"default\\\":{\\\"layout\\\":[\\\"auto\\\",\\\"auto\\\"]},\\\"MgY4kMRpl\\\":{\\\"layout\\\":[\\\"auto\\\",\\\"auto\\\"]}}}\",\"framerIntrinsicWidth\":\"194\",\"framerContractVersion\":\"1\",\"framerIntrinsicHeight\":\"40\",\"framerImmutableVariables\":\"true\",\"framerVariables\":\"{\\\"SlzEJ7aXV\\\":\\\"fill\\\",\\\"Q8hLfU8M0\\\":\\\"accent\\\",\\\"vXbntLEbe\\\":\\\"click\\\"}\",\"framerDisplayContentsDiv\":\"false\",\"framerComponentViewportWidth\":\"true\"}},\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./lVoJoAxt3.map","// Generated by Framer (c9d77eb)\nimport{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{addFonts,addPropertyControls,ControlType,cx,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={gDsGQXYfa:{hover:true},QJCVPIHpM:{hover:true}};const cycleOrder=[\"gDsGQXYfa\",\"QJCVPIHpM\"];const serializationHash=\"framer-34fU8\";const variantClassNames={gDsGQXYfa:\"framer-v-gvnyh3\",QJCVPIHpM:\"framer-v-10k1jp9\"};function addPropertyOverrides(overrides,...variants){const nextOverrides={};variants?.forEach(variant=>variant&&Object.assign(nextOverrides,overrides[variant]));return nextOverrides;}const iQIjS7eJG=undefined;const bIHpFToaX=undefined;const z6_peNF_v=undefined;const transition1={delay:0,duration:.3,ease:[.25,.3,.2,1],type:\"tween\"};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={\"Variant 1\":\"gDsGQXYfa\",\"Variant 3\":\"QJCVPIHpM\"};const getProps=({bGFill,click,height,iconFill,id,width,...props})=>{return{...props,bIHpFToaX:click??props.bIHpFToaX,iQIjS7eJG:bGFill??props.iQIjS7eJG??\"var(--token-a1e55884-84c4-4296-a29f-befcef912aac, rgb(0, 0, 0))\",variant:humanReadableVariantMap[props.variant]??props.variant??\"gDsGQXYfa\",z6_peNF_v:iconFill??props.z6_peNF_v??\"var(--token-3a3b2bb2-cb19-4140-bd1d-a5dd96e6b197, rgb(255, 248, 237))\"};};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,bIHpFToaX,iQIjS7eJG,z6_peNF_v,...restProps}=getProps(props);const{baseVariant,classNames,clearLoadingGesture,gestureHandlers,gestureVariant,isLoading,setGestureState,setVariant,variants}=useVariantState({cycleOrder,defaultVariant:\"gDsGQXYfa\",enabledGestures,ref:refBinding,variant,variantClassNames});const layoutDependency=createLayoutDependency(props,variants);const{activeVariantCallback,delay}=useActiveVariantCallback(baseVariant);const onTap1wnr3g2=activeVariantCallback(async(...args)=>{setGestureState({isPressed:false});if(bIHpFToaX){const res=await bIHpFToaX(...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(motion.div,{...restProps,...gestureHandlers,className:cx(scopingClassNames,\"framer-gvnyh3\",className,classNames),\"data-framer-name\":\"Variant 1\",\"data-highlight\":true,layoutDependency:layoutDependency,layoutId:\"gDsGQXYfa\",onTap:onTap1wnr3g2,ref:refBinding,style:{backgroundColor:iQIjS7eJG,borderBottomLeftRadius:4,borderBottomRightRadius:4,borderTopLeftRadius:4,borderTopRightRadius:4,...style},variants:{\"gDsGQXYfa-hover\":{borderBottomLeftRadius:12,borderBottomRightRadius:12,borderTopLeftRadius:12,borderTopRightRadius:12},\"QJCVPIHpM-hover\":{borderBottomLeftRadius:12,borderBottomRightRadius:12,borderTopLeftRadius:12,borderTopRightRadius:12},QJCVPIHpM:{backgroundColor:\"var(--token-3a3b2bb2-cb19-4140-bd1d-a5dd96e6b197, rgb(255, 248, 237))\"}},...addPropertyOverrides({\"gDsGQXYfa-hover\":{\"data-framer-name\":undefined},\"QJCVPIHpM-hover\":{\"data-framer-name\":undefined},QJCVPIHpM:{\"data-framer-name\":\"Variant 3\"}},baseVariant,gestureVariant),children:/*#__PURE__*/_jsxs(motion.div,{className:\"framer-1mgkng9\",layoutDependency:layoutDependency,layoutId:\"ObkLtGCyI\",children:[/*#__PURE__*/_jsx(motion.div,{className:\"framer-j04ca7\",layoutDependency:layoutDependency,layoutId:\"NS18ywRtn\",style:{backgroundColor:z6_peNF_v,rotate:0},variants:{\"gDsGQXYfa-hover\":{rotate:0},QJCVPIHpM:{backgroundColor:\"var(--token-a1e55884-84c4-4296-a29f-befcef912aac, rgb(0, 0, 0))\",rotate:45}}}),/*#__PURE__*/_jsx(motion.div,{className:\"framer-1cvdpyt\",layoutDependency:layoutDependency,layoutId:\"lrkd6vebl\",style:{backgroundColor:z6_peNF_v},variants:{QJCVPIHpM:{backgroundColor:\"var(--token-a1e55884-84c4-4296-a29f-befcef912aac, rgb(0, 0, 0))\"}}}),/*#__PURE__*/_jsx(motion.div,{className:\"framer-m6o6pn\",layoutDependency:layoutDependency,layoutId:\"YGtODRGcy\",style:{backgroundColor:z6_peNF_v,rotate:0},variants:{\"gDsGQXYfa-hover\":{rotate:0},QJCVPIHpM:{backgroundColor:\"var(--token-a1e55884-84c4-4296-a29f-befcef912aac, rgb(0, 0, 0))\",rotate:-45}}})]})})})})});});const css=[\"@supports (aspect-ratio: 1) { body { --framer-aspect-ratio-supported: auto; } }\",\".framer-34fU8.framer-188m68h, .framer-34fU8 .framer-188m68h { display: block; }\",\".framer-34fU8.framer-gvnyh3 { align-content: center; align-items: center; cursor: pointer; display: flex; flex-direction: row; flex-wrap: nowrap; gap: 8px; height: 40px; justify-content: center; overflow: visible; padding: 12px 16px 12px 16px; position: relative; width: 40px; }\",\".framer-34fU8 .framer-1mgkng9 { flex: none; gap: 10px; height: 10px; overflow: visible; position: relative; width: 12px; }\",\".framer-34fU8 .framer-j04ca7 { flex: none; height: 1px; left: calc(50.00000000000002% - 12px / 2); overflow: visible; position: absolute; top: 0px; width: 12px; }\",\".framer-34fU8 .framer-1cvdpyt { flex: none; height: 1px; left: calc(50.00000000000002% - 12px / 2); overflow: visible; position: absolute; top: calc(50.00000000000002% - 1px / 2); width: 12px; }\",\".framer-34fU8 .framer-m6o6pn { bottom: 0px; flex: none; height: 1px; left: calc(50.00000000000002% - 12px / 2); overflow: visible; position: absolute; width: 12px; }\",\".framer-34fU8.framer-v-10k1jp9 .framer-j04ca7 { left: 0px; top: calc(50.00000000000002% - 1px / 2); }\",\".framer-34fU8.framer-v-10k1jp9 .framer-1cvdpyt { left: calc(50.00000000000002% - 0px / 2); width: 0px; }\",\".framer-34fU8.framer-v-10k1jp9 .framer-m6o6pn { bottom: unset; left: unset; right: 0px; top: calc(50.00000000000002% - 1px / 2); }\",\".framer-34fU8.framer-v-gvnyh3.hover .framer-m6o6pn { left: unset; right: 0px; }\",\".framer-34fU8.framer-v-10k1jp9.hover .framer-m6o6pn { bottom: unset; left: unset; }\"];/**\n * This is a generated Framer component.\n * @framerIntrinsicHeight 40\n * @framerIntrinsicWidth 40\n * @framerCanvasComponentVariantDetails {\"propertyName\":\"variant\",\"data\":{\"default\":{\"layout\":[\"fixed\",\"fixed\"]},\"QJCVPIHpM\":{\"layout\":[\"fixed\",\"fixed\"]},\"aFUDStZJT\":{\"layout\":[\"fixed\",\"fixed\"]},\"GXDBGrNci\":{\"layout\":[\"fixed\",\"fixed\"]}}}\n * @framerVariables {\"bIHpFToaX\":\"click\",\"iQIjS7eJG\":\"bGFill\",\"z6_peNF_v\":\"iconFill\"}\n * @framerImmutableVariables true\n * @framerDisplayContentsDiv false\n * @framerAutoSizeImages true\n * @framerComponentViewportWidth true\n * @framerColorSyntax true\n */const FramerSqpvu7_6L=withCSS(Component,css,\"framer-34fU8\");export default FramerSqpvu7_6L;FramerSqpvu7_6L.displayName=\"Menu Button\";FramerSqpvu7_6L.defaultProps={height:40,width:40};addPropertyControls(FramerSqpvu7_6L,{variant:{options:[\"gDsGQXYfa\",\"QJCVPIHpM\"],optionTitles:[\"Variant 1\",\"Variant 3\"],title:\"Variant\",type:ControlType.Enum},bIHpFToaX:{title:\"Click\",type:ControlType.EventHandler},iQIjS7eJG:{defaultValue:'var(--token-a1e55884-84c4-4296-a29f-befcef912aac, rgb(0, 0, 0)) /* {\"name\":\"Black\"} */',title:\"BG Fill\",type:ControlType.Color},z6_peNF_v:{defaultValue:'var(--token-3a3b2bb2-cb19-4140-bd1d-a5dd96e6b197, rgb(255, 248, 237)) /* {\"name\":\"Off White\"} */',title:\"Icon Fill\",type:ControlType.Color}});addFonts(FramerSqpvu7_6L,[{explicitInter:true,fonts:[]}],{supportsExplicitInterCodegen:true});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"FramerSqpvu7_6L\",\"slots\":[],\"annotations\":{\"framerIntrinsicHeight\":\"40\",\"framerDisplayContentsDiv\":\"false\",\"framerVariables\":\"{\\\"bIHpFToaX\\\":\\\"click\\\",\\\"iQIjS7eJG\\\":\\\"bGFill\\\",\\\"z6_peNF_v\\\":\\\"iconFill\\\"}\",\"framerImmutableVariables\":\"true\",\"framerAutoSizeImages\":\"true\",\"framerContractVersion\":\"1\",\"framerIntrinsicWidth\":\"40\",\"framerColorSyntax\":\"true\",\"framerCanvasComponentVariantDetails\":\"{\\\"propertyName\\\":\\\"variant\\\",\\\"data\\\":{\\\"default\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"QJCVPIHpM\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"aFUDStZJT\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"GXDBGrNci\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]}}}\",\"framerComponentViewportWidth\":\"true\"}},\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./Sqpvu7_6L.map","// Generated by Framer (77d7dc9)\nimport{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{addFonts,addPropertyControls,ComponentViewportProvider,ControlType,cx,getFonts,getPropertyControls,Link,SmartComponentScopedContainer,useActiveVariantCallback,useComponentViewport,useLocaleInfo,useVariantState,withCSS}from\"framer\";import{LayoutGroup,motion,MotionConfigContext}from\"framer-motion\";import*as React from\"react\";import{useRef}from\"react\";import NavLinks from\"https://framerusercontent.com/modules/udR4LfpN4nKiHzD70fSi/5AKF6sNQeLZBqFcAtKIJ/i6Pug0076.js\";import Logo from\"https://framerusercontent.com/modules/DcCp5h9Xs0BU26EVwXcS/A2LfXnsS5rzFUsiFORv9/lVoJoAxt3.js\";import MenuButton from\"https://framerusercontent.com/modules/su1Wssh0eO95BkDxkzPR/q0pNyJNCMNo19ZU2jn8A/Sqpvu7_6L.js\";const LogoFonts=getFonts(Logo);const NavLinksFonts=getFonts(NavLinks);const MenuButtonFonts=getFonts(MenuButton);const LogoControls=getPropertyControls(Logo);const cycleOrder=[\"Pt9ebxPPw\",\"d2srYn7Ok\",\"c8GlrD5IV\",\"sCQYl6Aae\",\"rpxSPNdnD\",\"p6iesR43p\"];const serializationHash=\"framer-wL2rY\";const variantClassNames={c8GlrD5IV:\"framer-v-13mrc7x\",d2srYn7Ok:\"framer-v-6nvg1x\",p6iesR43p:\"framer-v-1d3ffy6\",Pt9ebxPPw:\"framer-v-8dumz9\",rpxSPNdnD:\"framer-v-1ksxsx5\",sCQYl6Aae:\"framer-v-vt3684\"};function addPropertyOverrides(overrides,...variants){const nextOverrides={};variants?.forEach(variant=>variant&&Object.assign(nextOverrides,overrides[variant]));return nextOverrides;}const t9hRlziHj=undefined;const ssG1BonXY=undefined;const mAfscUSFG=undefined;const pdB3AVmAa=undefined;const ijSSb3wts=undefined;const numberToPixelString=value=>{if(typeof value!==\"number\")return value;if(!Number.isFinite(value))return undefined;return Math.max(0,value)+\"px\";};const transition1={delay:0,duration:.5,ease:[.25,.3,.2,1],type:\"tween\"};const transition2={delay:.8,duration:.5,ease:[.25,.3,.2,1],type:\"tween\"};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 humanReadableEnumMap={\"Variant 1\":\"NgHxEwAf2\",Variant:\"MgY4kMRpl\"};const humanReadableVariantMap={\"Close Mobile\":\"sCQYl6Aae\",\"Mobile Scroll\":\"p6iesR43p\",Close:\"d2srYn7Ok\",Default:\"Pt9ebxPPw\",Mobile:\"c8GlrD5IV\",Scroll:\"rpxSPNdnD\"};const getProps=({height,iconFill,id,linkColor,logo,menu,padding,width,...props})=>{return{...props,ijSSb3wts:menu??props.ijSSb3wts,mAfscUSFG:linkColor??props.mAfscUSFG??\"var(--token-a1e55884-84c4-4296-a29f-befcef912aac, rgb(0, 0, 0))\",pdB3AVmAa:iconFill??props.pdB3AVmAa??\"var(--token-3a3b2bb2-cb19-4140-bd1d-a5dd96e6b197, rgb(255, 248, 237))\",ssG1BonXY:humanReadableEnumMap[logo]??logo??props.ssG1BonXY??\"NgHxEwAf2\",t9hRlziHj:padding??props.t9hRlziHj??\"0px 48px 0px 48px\",variant:humanReadableVariantMap[props.variant]??props.variant??\"Pt9ebxPPw\"};};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,ijSSb3wts,ssG1BonXY,mAfscUSFG,pdB3AVmAa,t9hRlziHj,...restProps}=getProps(props);const{baseVariant,classNames,clearLoadingGesture,gestureHandlers,gestureVariant,isLoading,setGestureState,setVariant,variants}=useVariantState({cycleOrder,defaultVariant:\"Pt9ebxPPw\",ref:refBinding,variant,variantClassNames});const layoutDependency=createLayoutDependency(props,variants);const{activeVariantCallback,delay}=useActiveVariantCallback(baseVariant);const bIHpFToaXhusd1c=activeVariantCallback(async(...args)=>{if(ijSSb3wts){const res=await ijSSb3wts(...args);if(res===false)return false;}});const sharedStyleClassNames=[];const scopingClassNames=cx(serializationHash,...sharedStyleClassNames);const isDisplayed=()=>{if([\"d2srYn7Ok\",\"c8GlrD5IV\",\"sCQYl6Aae\",\"p6iesR43p\"].includes(baseVariant))return false;return true;};return /*#__PURE__*/_jsx(LayoutGroup,{id:layoutId??defaultLayoutId,children:/*#__PURE__*/_jsx(Variants,{animate:variants,initial:false,children:/*#__PURE__*/_jsx(Transition,{value:transition1,...addPropertyOverrides({d2srYn7Ok:{value:transition2},sCQYl6Aae:{value:transition2}},baseVariant,gestureVariant),children:/*#__PURE__*/_jsxs(motion.header,{...restProps,...gestureHandlers,className:cx(scopingClassNames,\"framer-8dumz9\",className,classNames),\"data-framer-name\":\"Default\",layoutDependency:layoutDependency,layoutId:\"Pt9ebxPPw\",ref:refBinding,style:{\"--v3x797\":numberToPixelString(t9hRlziHj),...style},...addPropertyOverrides({c8GlrD5IV:{\"data-framer-name\":\"Mobile\"},d2srYn7Ok:{\"data-framer-name\":\"Close\"},p6iesR43p:{\"data-framer-name\":\"Mobile Scroll\"},rpxSPNdnD:{\"data-framer-name\":\"Scroll\"},sCQYl6Aae:{\"data-framer-name\":\"Close Mobile\"}},baseVariant,gestureVariant),children:[/*#__PURE__*/_jsx(Link,{href:{webPageId:\"augiA20Il\"},motionChild:true,nodeId:\"pjfifRaxR\",openInNewTab:false,scopeId:\"epFzzyj7O\",children:/*#__PURE__*/_jsx(motion.a,{className:\"framer-vpyazi framer-1e0mjj1\",layoutDependency:layoutDependency,layoutId:\"pjfifRaxR\",style:{opacity:1},variants:{p6iesR43p:{opacity:0}},children:/*#__PURE__*/_jsx(ComponentViewportProvider,{height:40,...addPropertyOverrides({c8GlrD5IV:{y:(componentViewport?.y||0)+(0+((componentViewport?.height||40)-0-40)/2)+0},p6iesR43p:{y:(componentViewport?.y||0)+(0+((componentViewport?.height||40)-0-40)/2)+0},sCQYl6Aae:{y:(componentViewport?.y||0)+(0+((componentViewport?.height||40)-0-40)/2)+0}},baseVariant,gestureVariant),children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-1wiicyp-container\",layoutDependency:layoutDependency,layoutId:\"iN0SG55SB-container\",nodeId:\"iN0SG55SB\",rendersWithMotion:true,scopeId:\"epFzzyj7O\",style:{opacity:1},variants:{p6iesR43p:{opacity:1},rpxSPNdnD:{opacity:0}},children:/*#__PURE__*/_jsx(Logo,{height:\"100%\",id:\"iN0SG55SB\",layoutId:\"iN0SG55SB\",Q8hLfU8M0:pdB3AVmAa,SlzEJ7aXV:mAfscUSFG,variant:ssG1BonXY,width:\"100%\",...addPropertyOverrides({c8GlrD5IV:{variant:\"MgY4kMRpl\"},d2srYn7Ok:{variant:\"NgHxEwAf2\"},p6iesR43p:{variant:\"MgY4kMRpl\"},sCQYl6Aae:{variant:\"MgY4kMRpl\"}},baseVariant,gestureVariant)})})})})}),/*#__PURE__*/_jsxs(motion.nav,{className:\"framer-15v7dft\",\"data-framer-name\":\"nav\",layoutDependency:layoutDependency,layoutId:\"Gh8BYkaSC\",children:[isDisplayed()&&/*#__PURE__*/_jsx(ComponentViewportProvider,{height:38,children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-104lpdy-container\",layoutDependency:layoutDependency,layoutId:\"Vbftunf8V-container\",nodeId:\"Vbftunf8V\",rendersWithMotion:true,scopeId:\"epFzzyj7O\",style:{opacity:1},variants:{rpxSPNdnD:{opacity:0}},children:/*#__PURE__*/_jsx(NavLinks,{height:\"100%\",id:\"Vbftunf8V\",layoutId:\"Vbftunf8V\",mqS6tPQUV:mAfscUSFG,variant:\"FLRvZVu0T\",width:\"100%\"})})}),/*#__PURE__*/_jsx(ComponentViewportProvider,{height:40,...addPropertyOverrides({c8GlrD5IV:{y:(componentViewport?.y||0)+(0+((componentViewport?.height||40)-0-40)/2)+0},p6iesR43p:{y:(componentViewport?.y||0)+(0+((componentViewport?.height||40)-0-40)/2)+0},sCQYl6Aae:{y:(componentViewport?.y||0)+(0+((componentViewport?.height||40)-0-40)/2)+0}},baseVariant,gestureVariant),children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-1klmje9-container\",layoutDependency:layoutDependency,layoutId:\"Zjv16Y6md-container\",nodeId:\"Zjv16Y6md\",rendersWithMotion:true,scopeId:\"epFzzyj7O\",children:/*#__PURE__*/_jsx(MenuButton,{bIHpFToaX:bIHpFToaXhusd1c,height:\"100%\",id:\"Zjv16Y6md\",iQIjS7eJG:\"var(--token-a1e55884-84c4-4296-a29f-befcef912aac, rgb(0, 0, 0))\",layoutId:\"Zjv16Y6md\",style:{height:\"100%\"},variant:\"gDsGQXYfa\",width:\"100%\",z6_peNF_v:\"var(--token-3a3b2bb2-cb19-4140-bd1d-a5dd96e6b197, rgb(255, 248, 237))\",...addPropertyOverrides({d2srYn7Ok:{variant:\"QJCVPIHpM\"},sCQYl6Aae:{variant:\"QJCVPIHpM\"}},baseVariant,gestureVariant)})})})]})]})})})});});const css=[\"@supports (aspect-ratio: 1) { body { --framer-aspect-ratio-supported: auto; } }\",\".framer-wL2rY.framer-1e0mjj1, .framer-wL2rY .framer-1e0mjj1 { display: block; }\",\".framer-wL2rY.framer-8dumz9 { align-content: center; align-items: center; display: flex; flex-direction: row; flex-wrap: nowrap; height: min-content; justify-content: space-between; max-width: 1600px; overflow: visible; padding: var(--v3x797); position: relative; width: 1440px; }\",\".framer-wL2rY .framer-vpyazi { align-content: center; align-items: center; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; gap: 10px; height: min-content; justify-content: center; overflow: visible; padding: 0px; position: relative; text-decoration: none; width: min-content; }\",\".framer-wL2rY .framer-1wiicyp-container { flex: none; height: auto; position: relative; width: auto; z-index: 10; }\",\".framer-wL2rY .framer-15v7dft { align-content: center; align-items: center; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; gap: 12px; height: min-content; justify-content: flex-end; overflow: visible; padding: 0px; position: relative; width: min-content; }\",\".framer-wL2rY .framer-104lpdy-container { flex: none; height: auto; position: relative; width: auto; }\",\".framer-wL2rY .framer-1klmje9-container { flex: none; height: 40px; position: relative; width: auto; }\",\".framer-wL2rY.framer-v-13mrc7x.framer-8dumz9, .framer-wL2rY.framer-v-vt3684.framer-8dumz9, .framer-wL2rY.framer-v-1d3ffy6.framer-8dumz9 { max-width: unset; padding: 0px 16px 0px 16px; width: 400px; }\"];/**\n * This is a generated Framer component.\n * @framerIntrinsicHeight 40\n * @framerIntrinsicWidth 1440\n * @framerCanvasComponentVariantDetails {\"propertyName\":\"variant\",\"data\":{\"default\":{\"layout\":[\"fixed\",\"auto\"],\"constraints\":[null,\"1600px\",null,null]},\"d2srYn7Ok\":{\"layout\":[\"fixed\",\"auto\"],\"constraints\":[null,\"1600px\",null,null]},\"c8GlrD5IV\":{\"layout\":[\"fixed\",\"auto\"]},\"sCQYl6Aae\":{\"layout\":[\"fixed\",\"auto\"]},\"rpxSPNdnD\":{\"layout\":[\"fixed\",\"auto\"],\"constraints\":[null,\"1600px\",null,null]},\"p6iesR43p\":{\"layout\":[\"fixed\",\"auto\"]}}}\n * @framerVariables {\"ijSSb3wts\":\"menu\",\"ssG1BonXY\":\"logo\",\"mAfscUSFG\":\"linkColor\",\"pdB3AVmAa\":\"iconFill\",\"t9hRlziHj\":\"padding\"}\n * @framerImmutableVariables true\n * @framerDisplayContentsDiv false\n * @framerAutoSizeImages true\n * @framerComponentViewportWidth true\n * @framerColorSyntax true\n */const FramerepFzzyj7O=withCSS(Component,css,\"framer-wL2rY\");export default FramerepFzzyj7O;FramerepFzzyj7O.displayName=\"Header\";FramerepFzzyj7O.defaultProps={height:40,width:1440};addPropertyControls(FramerepFzzyj7O,{variant:{options:[\"Pt9ebxPPw\",\"d2srYn7Ok\",\"c8GlrD5IV\",\"sCQYl6Aae\",\"rpxSPNdnD\",\"p6iesR43p\"],optionTitles:[\"Default\",\"Close\",\"Mobile\",\"Close Mobile\",\"Scroll\",\"Mobile Scroll\"],title:\"Variant\",type:ControlType.Enum},ijSSb3wts:{title:\"Menu\",type:ControlType.EventHandler},ssG1BonXY:LogoControls?.[\"variant\"]&&{...LogoControls[\"variant\"],defaultValue:\"NgHxEwAf2\",description:undefined,hidden:undefined,title:\"Logo\"},mAfscUSFG:{defaultValue:'var(--token-a1e55884-84c4-4296-a29f-befcef912aac, rgb(0, 0, 0)) /* {\"name\":\"Black\"} */',title:\"Link Color\",type:ControlType.Color},pdB3AVmAa:{defaultValue:'var(--token-3a3b2bb2-cb19-4140-bd1d-a5dd96e6b197, rgb(255, 248, 237)) /* {\"name\":\"Off White\"} */',title:\"Icon Fill\",type:ControlType.Color},t9hRlziHj:{defaultValue:\"0px 48px 0px 48px\",title:\"Padding\",type:ControlType.Padding}});addFonts(FramerepFzzyj7O,[{explicitInter:true,fonts:[]},...LogoFonts,...NavLinksFonts,...MenuButtonFonts],{supportsExplicitInterCodegen:true});\nexport const __FramerMetadata__ = {\"exports\":{\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"default\":{\"type\":\"reactComponent\",\"name\":\"FramerepFzzyj7O\",\"slots\":[],\"annotations\":{\"framerComponentViewportWidth\":\"true\",\"framerIntrinsicHeight\":\"40\",\"framerColorSyntax\":\"true\",\"framerDisplayContentsDiv\":\"false\",\"framerVariables\":\"{\\\"ijSSb3wts\\\":\\\"menu\\\",\\\"ssG1BonXY\\\":\\\"logo\\\",\\\"mAfscUSFG\\\":\\\"linkColor\\\",\\\"pdB3AVmAa\\\":\\\"iconFill\\\",\\\"t9hRlziHj\\\":\\\"padding\\\"}\",\"framerContractVersion\":\"1\",\"framerCanvasComponentVariantDetails\":\"{\\\"propertyName\\\":\\\"variant\\\",\\\"data\\\":{\\\"default\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"auto\\\"],\\\"constraints\\\":[null,\\\"1600px\\\",null,null]},\\\"d2srYn7Ok\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"auto\\\"],\\\"constraints\\\":[null,\\\"1600px\\\",null,null]},\\\"c8GlrD5IV\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"auto\\\"]},\\\"sCQYl6Aae\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"auto\\\"]},\\\"rpxSPNdnD\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"auto\\\"],\\\"constraints\\\":[null,\\\"1600px\\\",null,null]},\\\"p6iesR43p\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"auto\\\"]}}}\",\"framerIntrinsicWidth\":\"1440\",\"framerAutoSizeImages\":\"true\",\"framerImmutableVariables\":\"true\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// Generated by Framer (c9d77eb)\nimport{jsx as _jsx}from\"react/jsx-runtime\";import{addFonts,addPropertyControls,ComponentViewportProvider,ControlType,cx,getFonts,Link,SmartComponentScopedContainer,useActiveVariantCallback,useComponentViewport,useLocaleInfo,useVariantState,withCSS}from\"framer\";import{LayoutGroup,motion,MotionConfigContext}from\"framer-motion\";import*as React from\"react\";import{useRef}from\"react\";import RollingText from\"https://framerusercontent.com/modules/FiiQ0BKlVUNzxXjo8hFs/BDeIULpeB9kBv3zq3U1w/RollingTextHover_Prod.js\";const RollingTextFonts=getFonts(RollingText);const cycleOrder=[\"namDSF10D\",\"z2WRnzbXc\",\"UzfnjPO1b\",\"cio40CGtS\"];const serializationHash=\"framer-Ylmqz\";const variantClassNames={cio40CGtS:\"framer-v-pz8i7w\",namDSF10D:\"framer-v-i5y96d\",UzfnjPO1b:\"framer-v-mn377w\",z2WRnzbXc:\"framer-v-1ovdha1\"};function addPropertyOverrides(overrides,...variants){const nextOverrides={};variants?.forEach(variant=>variant&&Object.assign(nextOverrides,overrides[variant]));return nextOverrides;}const FT27jn3Y9=undefined;const a_pmUkHL8=undefined;const LI_fEXy9G=undefined;const NzdMRh5fL=undefined;const o7iF_ZOrI=undefined;const transition1={delay:0,duration:.3,ease:[.36,0,.66,1],type:\"tween\"};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 Mobile\":\"UzfnjPO1b\",\"Secondary Mobile\":\"cio40CGtS\",Primary:\"namDSF10D\",Secondary:\"z2WRnzbXc\"};const getProps=({click,fill,height,id,link,textColor,title,width,...props})=>{return{...props,a_pmUkHL8:click??props.a_pmUkHL8,FT27jn3Y9:fill??props.FT27jn3Y9??\"var(--token-e8a4e18d-cd37-45e5-ad8f-7121c62c6847, rgb(182, 245, 150))\",LI_fEXy9G:link??props.LI_fEXy9G,NzdMRh5fL:title??props.NzdMRh5fL??\"Talk to us\",o7iF_ZOrI:textColor??props.o7iF_ZOrI??\"var(--token-a1e55884-84c4-4296-a29f-befcef912aac, rgb(0, 0, 0))\",variant:humanReadableVariantMap[props.variant]??props.variant??\"namDSF10D\"};};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,NzdMRh5fL,FT27jn3Y9,o7iF_ZOrI,LI_fEXy9G,a_pmUkHL8,...restProps}=getProps(props);const{baseVariant,classNames,clearLoadingGesture,gestureHandlers,gestureVariant,isLoading,setGestureState,setVariant,variants}=useVariantState({cycleOrder,defaultVariant:\"namDSF10D\",ref:refBinding,variant,variantClassNames});const layoutDependency=createLayoutDependency(props,variants);const{activeVariantCallback,delay}=useActiveVariantCallback(baseVariant);const onTap3s5b5f=activeVariantCallback(async(...args)=>{setGestureState({isPressed:false});if(a_pmUkHL8){const res=await a_pmUkHL8(...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:LI_fEXy9G,motionChild:true,nodeId:\"namDSF10D\",openInNewTab:false,scopeId:\"F2Fk1w8O5\",smoothScroll:true,children:/*#__PURE__*/_jsx(motion.a,{...restProps,...gestureHandlers,className:`${cx(scopingClassNames,\"framer-i5y96d\",className,classNames)} framer-zx2rpi`,\"data-framer-name\":\"Primary\",\"data-highlight\":true,layoutDependency:layoutDependency,layoutId:\"namDSF10D\",onTap:onTap3s5b5f,ref:refBinding,style:{backgroundColor:FT27jn3Y9,borderBottomLeftRadius:100,borderBottomRightRadius:100,borderTopLeftRadius:100,borderTopRightRadius:100,...style},...addPropertyOverrides({cio40CGtS:{\"data-framer-name\":\"Secondary Mobile\"},UzfnjPO1b:{\"data-framer-name\":\"Primary Mobile\"},z2WRnzbXc:{\"data-framer-name\":\"Secondary\"}},baseVariant,gestureVariant),children:/*#__PURE__*/_jsx(ComponentViewportProvider,{children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-bleyi7-container\",isAuthoredByUser:true,isModuleExternal:true,layoutDependency:layoutDependency,layoutId:\"qfrNTEz2P-container\",nodeId:\"qfrNTEz2P\",rendersWithMotion:true,scopeId:\"F2Fk1w8O5\",children:/*#__PURE__*/_jsx(RollingText,{color:o7iF_ZOrI,font:{fontFamily:'\"KH Teka Regular\", \"KH Teka Regular Placeholder\", sans-serif',fontSize:\"calc(var(--framer-root-font-size, 1rem) * 1.13)\",fontStyle:\"normal\",fontWeight:400,letterSpacing:\"-0.01em\",lineHeight:\"1.2em\"},height:\"100%\",id:\"qfrNTEz2P\",layoutId:\"qfrNTEz2P\",padding:\"12px 24px 12px 24px\",reverse:false,stagger:35,tag:\"p\",text:NzdMRh5fL,textTransform:\"none\",transition:{delay:0,duration:.3,ease:[.55,0,.2,1],type:\"tween\"},width:\"100%\",...addPropertyOverrides({cio40CGtS:{font:{fontFamily:'\"KH Teka Regular\", \"KH Teka Regular Placeholder\", sans-serif',fontSize:\"calc(var(--framer-root-font-size, 1rem) * 1)\",fontStyle:\"normal\",fontWeight:400,letterSpacing:\"-0.01em\",lineHeight:\"1.2em\"},padding:\"8px 20px 8px 20px\"},UzfnjPO1b:{font:{fontFamily:'\"KH Teka Regular\", \"KH Teka Regular Placeholder\", sans-serif',fontSize:\"calc(var(--framer-root-font-size, 1rem) * 1)\",fontStyle:\"normal\",fontWeight:400,letterSpacing:\"-0.01em\",lineHeight:\"1.2em\"}},z2WRnzbXc:{font:{fontFamily:'\"KH Teka Regular\", \"KH Teka Regular Placeholder\", sans-serif',fontSize:\"calc(var(--framer-root-font-size, 1rem) * 0.88)\",fontStyle:\"normal\",fontWeight:400,letterSpacing:\"-0.01em\",lineHeight:\"1.2em\"},padding:\"8px 20px 8px 20px\"}},baseVariant,gestureVariant)})})})})})})})});});const css=[\"@supports (aspect-ratio: 1) { body { --framer-aspect-ratio-supported: auto; } }\",\".framer-Ylmqz.framer-zx2rpi, .framer-Ylmqz .framer-zx2rpi { display: block; }\",\".framer-Ylmqz.framer-i5y96d { align-content: center; align-items: center; cursor: pointer; display: flex; flex-direction: row; flex-wrap: nowrap; gap: 10px; height: min-content; justify-content: center; min-height: 48px; overflow: hidden; padding: 0px; position: relative; text-decoration: none; width: min-content; will-change: var(--framer-will-change-override, transform); }\",\".framer-Ylmqz .framer-bleyi7-container { flex: none; height: auto; position: relative; width: auto; }\",\".framer-Ylmqz.framer-v-1ovdha1.framer-i5y96d { min-height: 36px; }\",\".framer-Ylmqz.framer-v-mn377w.framer-i5y96d { min-height: 40px; }\",\".framer-Ylmqz.framer-v-pz8i7w.framer-i5y96d { min-height: 32px; }\"];/**\n * This is a generated Framer component.\n * @framerIntrinsicHeight 48\n * @framerIntrinsicWidth 123\n * @framerCanvasComponentVariantDetails {\"propertyName\":\"variant\",\"data\":{\"default\":{\"layout\":[\"auto\",\"auto\"],\"constraints\":[null,null,\"48px\",null]},\"z2WRnzbXc\":{\"layout\":[\"auto\",\"auto\"],\"constraints\":[null,null,\"36px\",null]},\"UzfnjPO1b\":{\"layout\":[\"auto\",\"auto\"],\"constraints\":[null,null,\"40px\",null]},\"cio40CGtS\":{\"layout\":[\"auto\",\"auto\"],\"constraints\":[null,null,\"32px\",null]}}}\n * @framerVariables {\"NzdMRh5fL\":\"title\",\"FT27jn3Y9\":\"fill\",\"o7iF_ZOrI\":\"textColor\",\"LI_fEXy9G\":\"link\",\"a_pmUkHL8\":\"click\"}\n * @framerImmutableVariables true\n * @framerDisplayContentsDiv false\n * @framerAutoSizeImages true\n * @framerComponentViewportWidth true\n * @framerColorSyntax true\n */const FramerF2Fk1w8O5=withCSS(Component,css,\"framer-Ylmqz\");export default FramerF2Fk1w8O5;FramerF2Fk1w8O5.displayName=\"Button\";FramerF2Fk1w8O5.defaultProps={height:48,width:123};addPropertyControls(FramerF2Fk1w8O5,{variant:{options:[\"namDSF10D\",\"z2WRnzbXc\",\"UzfnjPO1b\",\"cio40CGtS\"],optionTitles:[\"Primary\",\"Secondary\",\"Primary Mobile\",\"Secondary Mobile\"],title:\"Variant\",type:ControlType.Enum},NzdMRh5fL:{defaultValue:\"Talk to us\",title:\"Title\",type:ControlType.String},FT27jn3Y9:{defaultValue:'var(--token-e8a4e18d-cd37-45e5-ad8f-7121c62c6847, rgb(182, 245, 150)) /* {\"name\":\"Green\"} */',title:\"Fill\",type:ControlType.Color},o7iF_ZOrI:{defaultValue:'var(--token-a1e55884-84c4-4296-a29f-befcef912aac, rgb(0, 0, 0)) /* {\"name\":\"Black\"} */',title:\"Text Color\",type:ControlType.Color},LI_fEXy9G:{title:\"Link\",type:ControlType.Link},a_pmUkHL8:{title:\"Click\",type:ControlType.EventHandler}});addFonts(FramerF2Fk1w8O5,[{explicitInter:true,fonts:[{cssFamilyName:\"KH Teka Regular\",source:\"custom\",style:\"normal\",uiFamilyName:\"KH Teka\",url:\"https://framerusercontent.com/assets/4z6CvOOuX9Bttg9AJPxIBtoCGyw.woff2\",weight:\"400\"}]},...RollingTextFonts],{supportsExplicitInterCodegen:true});\nexport const __FramerMetadata__ = {\"exports\":{\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"default\":{\"type\":\"reactComponent\",\"name\":\"FramerF2Fk1w8O5\",\"slots\":[],\"annotations\":{\"framerAutoSizeImages\":\"true\",\"framerVariables\":\"{\\\"NzdMRh5fL\\\":\\\"title\\\",\\\"FT27jn3Y9\\\":\\\"fill\\\",\\\"o7iF_ZOrI\\\":\\\"textColor\\\",\\\"LI_fEXy9G\\\":\\\"link\\\",\\\"a_pmUkHL8\\\":\\\"click\\\"}\",\"framerComponentViewportWidth\":\"true\",\"framerContractVersion\":\"1\",\"framerIntrinsicWidth\":\"123\",\"framerColorSyntax\":\"true\",\"framerCanvasComponentVariantDetails\":\"{\\\"propertyName\\\":\\\"variant\\\",\\\"data\\\":{\\\"default\\\":{\\\"layout\\\":[\\\"auto\\\",\\\"auto\\\"],\\\"constraints\\\":[null,null,\\\"48px\\\",null]},\\\"z2WRnzbXc\\\":{\\\"layout\\\":[\\\"auto\\\",\\\"auto\\\"],\\\"constraints\\\":[null,null,\\\"36px\\\",null]},\\\"UzfnjPO1b\\\":{\\\"layout\\\":[\\\"auto\\\",\\\"auto\\\"],\\\"constraints\\\":[null,null,\\\"40px\\\",null]},\\\"cio40CGtS\\\":{\\\"layout\\\":[\\\"auto\\\",\\\"auto\\\"],\\\"constraints\\\":[null,null,\\\"32px\\\",null]}}}\",\"framerDisplayContentsDiv\":\"false\",\"framerIntrinsicHeight\":\"48\",\"framerImmutableVariables\":\"true\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./F2Fk1w8O5.map","// Generated by Framer (77d7dc9)\nimport{fontStore}from\"framer\";fontStore.loadFonts([\"CUSTOMV2;. Regular\"]);export const fonts=[{explicitInter:true,fonts:[{cssFamilyName:\". Regular\",source:\"custom\",style:\"normal\",uiFamilyName:\".\",url:\"https://framerusercontent.com/assets/kGxmEW2K8EQ9CXyOiUYJl5SiG8.woff2\",weight:\"400\"}]}];export const css=['.framer-ddtmn .framer-styles-preset-18ni8la:not(.rich-text-wrapper), .framer-ddtmn .framer-styles-preset-18ni8la.rich-text-wrapper h3 { --framer-font-family: \". Regular\", \". Regular Placeholder\", sans-serif; --framer-font-open-type-features: normal; --framer-font-size: calc(var(--framer-root-font-size, 1rem) * 3); --framer-font-style: normal; --framer-font-variation-axes: normal; --framer-font-weight: 400; --framer-letter-spacing: -0.02em; --framer-line-height: 110%; --framer-paragraph-spacing: 48px; --framer-text-alignment: start; --framer-text-color: var(--token-a1e55884-84c4-4296-a29f-befcef912aac, #000000); --framer-text-decoration: none; --framer-text-stroke-color: initial; --framer-text-stroke-width: initial; --framer-text-transform: none; --framer-text-wrap: balance; }','@media (max-width: 1199px) and (min-width: 810px) { .framer-ddtmn .framer-styles-preset-18ni8la:not(.rich-text-wrapper), .framer-ddtmn .framer-styles-preset-18ni8la.rich-text-wrapper h3 { --framer-font-family: \". Regular\", \". Regular Placeholder\", sans-serif; --framer-font-open-type-features: normal; --framer-font-size: calc(var(--framer-root-font-size, 1rem) * 2.5); --framer-font-style: normal; --framer-font-variation-axes: normal; --framer-font-weight: 400; --framer-letter-spacing: -0.02em; --framer-line-height: 110%; --framer-paragraph-spacing: 48px; --framer-text-alignment: start; --framer-text-color: var(--token-a1e55884-84c4-4296-a29f-befcef912aac, #000000); --framer-text-decoration: none; --framer-text-stroke-color: initial; --framer-text-stroke-width: initial; --framer-text-transform: none; --framer-text-wrap: balance; } }','@media (max-width: 809px) and (min-width: 0px) { .framer-ddtmn .framer-styles-preset-18ni8la:not(.rich-text-wrapper), .framer-ddtmn .framer-styles-preset-18ni8la.rich-text-wrapper h3 { --framer-font-family: \". Regular\", \". Regular Placeholder\", sans-serif; --framer-font-open-type-features: normal; --framer-font-size: calc(var(--framer-root-font-size, 1rem) * 1.8); --framer-font-style: normal; --framer-font-variation-axes: normal; --framer-font-weight: 400; --framer-letter-spacing: -0.02em; --framer-line-height: 110%; --framer-paragraph-spacing: 48px; --framer-text-alignment: start; --framer-text-color: var(--token-a1e55884-84c4-4296-a29f-befcef912aac, #000000); --framer-text-decoration: none; --framer-text-stroke-color: initial; --framer-text-stroke-width: initial; --framer-text-transform: none; --framer-text-wrap: balance; } }'];export const className=\"framer-ddtmn\";\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 (3256e0c)\nimport{fontStore}from\"framer\";fontStore.loadFonts([\"CUSTOMV2;KH Teka Regular\",\"CUSTOMV2;KH Teka Bold\"]);export const fonts=[{explicitInter:true,fonts:[{cssFamilyName:\"KH Teka Regular\",source:\"custom\",style:\"normal\",uiFamilyName:\"KH Teka\",url:\"https://framerusercontent.com/assets/4z6CvOOuX9Bttg9AJPxIBtoCGyw.woff2\",weight:\"400\"},{cssFamilyName:\"KH Teka Bold\",source:\"custom\",style:\"normal\",uiFamilyName:\"KH Teka\",url:\"https://framerusercontent.com/assets/6B7NXkPgI9JKoAjYsEp7mk7WL8.woff2\",weight:\"700\"}]}];export const css=['.framer-qpNWm .framer-styles-preset-io8e5k:not(.rich-text-wrapper), .framer-qpNWm .framer-styles-preset-io8e5k.rich-text-wrapper p { --framer-font-family: \"KH Teka Regular\", \"KH Teka Regular Placeholder\", sans-serif; --framer-font-family-bold: \"KH Teka Bold\", \"KH Teka Bold Placeholder\", sans-serif; --framer-font-open-type-features: normal; --framer-font-size: calc(var(--framer-root-font-size, 1rem) * 1.13); --framer-font-style: normal; --framer-font-style-bold: normal; --framer-font-variation-axes: normal; --framer-font-weight: 400; --framer-font-weight-bold: 700; --framer-letter-spacing: -0.02em; --framer-line-height: 130%; --framer-paragraph-spacing: 16px; --framer-text-alignment: start; --framer-text-color: var(--token-a1e55884-84c4-4296-a29f-befcef912aac, #000000); --framer-text-decoration: none; --framer-text-stroke-color: initial; --framer-text-stroke-width: initial; --framer-text-transform: none; }'];export const className=\"framer-qpNWm\";\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 (31f1c56)\nimport{fontStore}from\"framer\";fontStore.loadFonts([\"CUSTOMV2;KH Teka Bold\"]);export const fonts=[{explicitInter:true,fonts:[{cssFamilyName:\"KH Teka Bold\",source:\"custom\",style:\"normal\",uiFamilyName:\"KH Teka\",url:\"https://framerusercontent.com/assets/6B7NXkPgI9JKoAjYsEp7mk7WL8.woff2\",weight:\"700\"}]}];export const css=['.framer-IcB4S .framer-styles-preset-jek80d:not(.rich-text-wrapper), .framer-IcB4S .framer-styles-preset-jek80d.rich-text-wrapper p { --framer-font-family: \"KH Teka Bold\", \"KH Teka Bold Placeholder\", sans-serif; --framer-font-open-type-features: normal; --framer-font-size: 16px; --framer-font-style: normal; --framer-font-variation-axes: normal; --framer-font-weight: 700; --framer-letter-spacing: 0em; --framer-line-height: 130%; --framer-paragraph-spacing: 20px; --framer-text-alignment: start; --framer-text-color: var(--token-a1e55884-84c4-4296-a29f-befcef912aac, #000000); --framer-text-decoration: none; --framer-text-stroke-color: initial; --framer-text-stroke-width: initial; --framer-text-transform: none; }'];export const className=\"framer-IcB4S\";\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 (0138aee)\nimport{jsx as _jsx}from\"react/jsx-runtime\";import{addFonts,addPropertyControls,ComponentViewportProvider,ControlType,cx,getFonts,Link,SmartComponentScopedContainer,useComponentViewport,useLocaleInfo,useVariantState,withCSS}from\"framer\";import{LayoutGroup,motion,MotionConfigContext}from\"framer-motion\";import*as React from\"react\";import{useRef}from\"react\";import RollingText from\"https://framerusercontent.com/modules/FiiQ0BKlVUNzxXjo8hFs/BDeIULpeB9kBv3zq3U1w/RollingTextHover_Prod.js\";const RollingTextFonts=getFonts(RollingText);const serializationHash=\"framer-OxCr0\";const variantClassNames={IxP27VWe6:\"framer-v-v1iyjw\"};function addPropertyOverrides(overrides,...variants){const nextOverrides={};variants?.forEach(variant=>variant&&Object.assign(nextOverrides,overrides[variant]));return nextOverrides;}const CRkqcbL2Z=undefined;const LkIWwtCYk=undefined;const F4VKstm46=undefined;const O42oi8gzG=undefined;const bEO2J6l3S=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 Variants=motion.create(React.Fragment);const getProps=({borderColor,color,cursor,height,id,link,linkText,width,...props})=>{return{...props,bEO2J6l3S:color??props.bEO2J6l3S??\"var(--token-3a3b2bb2-cb19-4140-bd1d-a5dd96e6b197, rgb(255, 248, 237))\",CRkqcbL2Z:cursor??props.CRkqcbL2Z??\"pointer\",F4VKstm46:link??props.F4VKstm46,LkIWwtCYk:borderColor??props.LkIWwtCYk??{borderBottomWidth:1,borderColor:\"var(--token-3a3b2bb2-cb19-4140-bd1d-a5dd96e6b197, rgb(255, 248, 237))\",borderLeftWidth:0,borderRightWidth:0,borderStyle:\"solid\",borderTopWidth:0},O42oi8gzG:linkText??props.O42oi8gzG??\"View case study\"};};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,O42oi8gzG,F4VKstm46,bEO2J6l3S,LkIWwtCYk,CRkqcbL2Z,...restProps}=getProps(props);const{baseVariant,classNames,clearLoadingGesture,gestureHandlers,gestureVariant,isLoading,setGestureState,setVariant,variants}=useVariantState({defaultVariant:\"IxP27VWe6\",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(Link,{href:F4VKstm46,motionChild:true,nodeId:\"IxP27VWe6\",openInNewTab:false,scopeId:\"TkPFXFW01\",children:/*#__PURE__*/_jsx(motion.a,{...restProps,...gestureHandlers,className:`${cx(scopingClassNames,\"framer-v1iyjw\",className,classNames)} framer-vzq0k`,\"data-border\":true,\"data-framer-name\":\"Variant 1\",layoutDependency:layoutDependency,layoutId:\"IxP27VWe6\",ref:refBinding,style:{\"--12sobb2\":CRkqcbL2Z,\"--border-bottom-width\":(LkIWwtCYk.borderBottomWidth??LkIWwtCYk.borderWidth)+\"px\",\"--border-color\":LkIWwtCYk.borderColor,\"--border-left-width\":(LkIWwtCYk.borderLeftWidth??LkIWwtCYk.borderWidth)+\"px\",\"--border-right-width\":(LkIWwtCYk.borderRightWidth??LkIWwtCYk.borderWidth)+\"px\",\"--border-style\":LkIWwtCYk.borderStyle,\"--border-top-width\":(LkIWwtCYk.borderTopWidth??LkIWwtCYk.borderWidth)+\"px\",...style},children:/*#__PURE__*/_jsx(ComponentViewportProvider,{children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-1ob5d7r-container\",isAuthoredByUser:true,isModuleExternal:true,layoutDependency:layoutDependency,layoutId:\"MNRRbmMwp-container\",nodeId:\"MNRRbmMwp\",rendersWithMotion:true,scopeId:\"TkPFXFW01\",children:/*#__PURE__*/_jsx(RollingText,{color:bEO2J6l3S,font:{fontFamily:'\"KH Teka Regular\", \"KH Teka Regular Placeholder\", sans-serif',fontSize:\"calc(var(--framer-root-font-size, 1rem) * 0.88)\",fontStyle:\"normal\",fontWeight:400,letterSpacing:\"-0.01em\",lineHeight:\"1.2em\"},height:\"100%\",id:\"MNRRbmMwp\",layoutId:\"MNRRbmMwp\",padding:\"0px 0px 2px 0px\",reverse:false,stagger:35,tag:\"p\",text:O42oi8gzG,textTransform:\"none\",transition:{delay:0,duration:.3,ease:[.55,0,.2,1],type:\"tween\"},width:\"100%\"})})})})})})})});});const css=[\"@supports (aspect-ratio: 1) { body { --framer-aspect-ratio-supported: auto; } }\",\".framer-OxCr0.framer-vzq0k, .framer-OxCr0 .framer-vzq0k { display: block; }\",\".framer-OxCr0.framer-v1iyjw { align-content: center; align-items: center; cursor: var(--12sobb2); display: flex; flex-direction: column; flex-wrap: nowrap; gap: 0px; height: min-content; justify-content: center; overflow: visible; padding: 0px 0px 2px 0px; position: relative; text-decoration: none; width: min-content; }\",\".framer-OxCr0 .framer-1ob5d7r-container { flex: none; height: auto; position: relative; width: auto; }\",'.framer-OxCr0[data-border=\"true\"]::after, .framer-OxCr0 [data-border=\"true\"]::after { content: \"\"; border-width: var(--border-top-width, 0) var(--border-right-width, 0) var(--border-bottom-width, 0) var(--border-left-width, 0); border-color: var(--border-color, none); border-style: var(--border-style, none); width: 100%; height: 100%; position: absolute; box-sizing: border-box; left: 0; top: 0; border-radius: inherit; pointer-events: none; }'];/**\n * This is a generated Framer component.\n * @framerIntrinsicHeight 21\n * @framerIntrinsicWidth 98.5\n * @framerCanvasComponentVariantDetails {\"propertyName\":\"variant\",\"data\":{\"default\":{\"layout\":[\"auto\",\"auto\"]}}}\n * @framerVariables {\"O42oi8gzG\":\"linkText\",\"F4VKstm46\":\"link\",\"bEO2J6l3S\":\"color\",\"LkIWwtCYk\":\"borderColor\",\"CRkqcbL2Z\":\"cursor\"}\n * @framerImmutableVariables true\n * @framerDisplayContentsDiv false\n * @framerAutoSizeImages true\n * @framerComponentViewportWidth true\n * @framerColorSyntax true\n */const FramerTkPFXFW01=withCSS(Component,css,\"framer-OxCr0\");export default FramerTkPFXFW01;FramerTkPFXFW01.displayName=\"Text Link\";FramerTkPFXFW01.defaultProps={height:21,width:98.5};addPropertyControls(FramerTkPFXFW01,{O42oi8gzG:{defaultValue:\"View case study\",title:\"Link Text\",type:ControlType.String},F4VKstm46:{title:\"Link\",type:ControlType.Link},bEO2J6l3S:{defaultValue:'var(--token-3a3b2bb2-cb19-4140-bd1d-a5dd96e6b197, rgb(255, 248, 237)) /* {\"name\":\"Off White\"} */',title:\"Color\",type:ControlType.Color},LkIWwtCYk:{defaultValue:{borderBottomWidth:1,borderColor:\"var(--token-3a3b2bb2-cb19-4140-bd1d-a5dd96e6b197, rgb(255, 248, 237))\",borderLeftWidth:0,borderRightWidth:0,borderStyle:\"solid\",borderTopWidth:0},title:\"Border Color\",type:ControlType.Border},CRkqcbL2Z:{defaultValue:\"pointer\",title:\"Cursor\",type:ControlType.Cursor}});addFonts(FramerTkPFXFW01,[{explicitInter:true,fonts:[{cssFamilyName:\"KH Teka Regular\",source:\"custom\",style:\"normal\",uiFamilyName:\"KH Teka\",url:\"https://framerusercontent.com/assets/4z6CvOOuX9Bttg9AJPxIBtoCGyw.woff2\",weight:\"400\"}]},...RollingTextFonts],{supportsExplicitInterCodegen:true});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"FramerTkPFXFW01\",\"slots\":[],\"annotations\":{\"framerAutoSizeImages\":\"true\",\"framerDisplayContentsDiv\":\"false\",\"framerContractVersion\":\"1\",\"framerImmutableVariables\":\"true\",\"framerIntrinsicWidth\":\"98.5\",\"framerColorSyntax\":\"true\",\"framerComponentViewportWidth\":\"true\",\"framerVariables\":\"{\\\"O42oi8gzG\\\":\\\"linkText\\\",\\\"F4VKstm46\\\":\\\"link\\\",\\\"bEO2J6l3S\\\":\\\"color\\\",\\\"LkIWwtCYk\\\":\\\"borderColor\\\",\\\"CRkqcbL2Z\\\":\\\"cursor\\\"}\",\"framerCanvasComponentVariantDetails\":\"{\\\"propertyName\\\":\\\"variant\\\",\\\"data\\\":{\\\"default\\\":{\\\"layout\\\":[\\\"auto\\\",\\\"auto\\\"]}}}\",\"framerIntrinsicHeight\":\"21\"}},\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./TkPFXFW01.map","// Generated by Framer (31f1c56)\nimport{jsx as _jsx}from\"react/jsx-runtime\";import{cx,motion,withCSS}from\"framer\";import*as React from\"react\";import{forwardRef}from\"react\";const mask='url(\\'data:image/svg+xml,<svg display=\"block\" role=\"presentation\" viewBox=\"0 0 1436 240\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M 82.62 196.02 C 32.67 196.02 1.08 170.1 0 132.84 L 41.31 132.84 C 44.28 152.28 61.29 161.73 82.89 161.73 C 102.6 161.73 118.8 154.71 118.8 138.78 C 118.8 127.98 110.7 122.31 98.55 119.61 L 63.72 111.51 C 34.29 104.76 5.94 93.96 5.94 56.16 C 5.94 22.95 36.72 0 81.81 0 C 125.82 0 153.9 22.68 155.79 57.24 L 114.48 57.24 C 112.32 42.39 100.98 32.94 80.46 32.94 C 61.56 32.94 48.06 41.31 48.06 54.54 C 48.06 66.42 57.51 71.28 70.2 74.25 L 108.81 82.62 C 140.67 89.64 161.19 105.84 161.19 136.89 C 161.19 175.23 127.71 196.02 82.62 196.02 Z\" fill=\"var(--token-3a3b2bb2-cb19-4140-bd1d-a5dd96e6b197, rgb(255, 248, 237))\" height=\"196.02px\" id=\"rM_5gq3Xl\" transform=\"translate(1 1)\" width=\"161.19px\"/><path d=\"M 0 184.41 L 0 3.51 L 39.15 3.51 L 39.15 22.68 C 49.68 6.75 64.8 0 82.62 0 C 110.43 0 137.16 24.84 137.16 71.55 C 137.16 118.53 110.43 143.1 82.62 143.1 C 64.8 143.1 48.87 134.73 39.15 120.42 L 39.15 184.41 Z M 38.34 71.82 C 38.34 94.5 49.14 110.97 68.04 110.97 C 86.94 110.97 97.2 94.5 97.2 71.82 C 97.2 49.41 86.94 31.86 68.04 31.86 C 49.14 31.86 38.34 49.41 38.34 71.82 Z\" fill=\"var(--token-3a3b2bb2-cb19-4140-bd1d-a5dd96e6b197, rgb(255, 248, 237))\" height=\"184.41000000000003px\" id=\"TKocYVM7l\" transform=\"translate(177.39 53.92)\" width=\"137.16000000000003px\"/><path d=\"M 0 136.08 L 0 0 L 39.15 0 L 39.15 23.49 C 46.44 7.29 59.13 0 77.49 0 L 84.78 0 L 84.78 36.99 L 72.9 36.99 C 48.33 36.99 39.15 52.92 39.15 76.14 L 39.15 136.08 Z\" fill=\"var(--token-3a3b2bb2-cb19-4140-bd1d-a5dd96e6b197, rgb(255, 248, 237))\" height=\"136.07999999999998px\" id=\"FZ7UH_Qsm\" transform=\"translate(328.611 57.43)\" width=\"84.78000000000003px\"/><path d=\"M 0.54 189 L 0.54 52.92 L 39.96 52.92 L 39.96 189 Z M 0 35.37 L 0 0 L 40.5 0 L 40.5 35.37 Z\" fill=\"var(--token-3a3b2bb2-cb19-4140-bd1d-a5dd96e6b197, rgb(255, 248, 237))\" height=\"188.9999981689453px\" id=\"iPNQaQXaO\" transform=\"translate(426.564 4.51)\" width=\"40.5px\"/><path d=\"M 0 139.59 L 0 3.51 L 39.15 3.51 L 39.15 24.3 C 48.87 8.37 66.42 0 83.43 0 C 115.02 0 130.68 20.79 130.68 54 L 130.68 139.59 L 91.53 139.59 L 91.53 60.21 C 91.53 42.66 82.35 32.4 68.04 32.4 C 50.49 32.4 39.15 46.71 39.15 64.8 L 39.15 139.59 Z\" fill=\"var(--token-3a3b2bb2-cb19-4140-bd1d-a5dd96e6b197, rgb(255, 248, 237))\" height=\"139.58999999999997px\" id=\"MAKJrg_WX\" transform=\"translate(487.089 53.92)\" width=\"130.68px\"/><path d=\"M 58.86 181.17 C 34.83 181.17 21.33 169.29 21.33 145.26 L 21.33 73.98 L 0 73.98 L 0 45.09 L 14.31 45.09 C 18.9 45.09 21.33 42.39 21.33 37.8 L 21.33 0 L 59.94 0 L 59.94 45.09 L 88.56 45.09 L 88.56 73.98 L 59.94 73.98 L 59.94 135.54 C 59.94 146.61 63.99 151.74 73.98 151.74 L 92.07 151.74 L 92.07 181.17 Z\" fill=\"var(--token-3a3b2bb2-cb19-4140-bd1d-a5dd96e6b197, rgb(255, 248, 237))\" height=\"181.17px\" id=\"Lm_H1ecIa\" transform=\"translate(628.615 12.34)\" width=\"92.06999999999994px\"/><path d=\"M 63.18 189 L 0 0 L 44.55 0 L 89.91 147.42 L 135 0 L 179.55 0 L 116.37 189 Z\" fill=\"var(--token-3a3b2bb2-cb19-4140-bd1d-a5dd96e6b197, rgb(255, 248, 237))\" height=\"189px\" id=\"L6l36HgBL\" transform=\"translate(722.82 4.51)\" width=\"179.54999999999995px\"/><path d=\"M 42.66 143.1 C 16.74 143.1 0 127.71 0 104.49 C 0 72.36 27.81 64.26 51.3 60.21 L 74.52 56.43 C 83.43 54.81 86.4 50.22 86.4 44.28 C 86.4 35.37 79.92 28.35 67.5 28.35 C 54.81 28.35 45.63 34.02 43.74 47.25 L 5.13 47.25 C 9.45 14.04 35.91 0 68.58 0 C 105.84 0 125.009 17.01 125.009 52.11 L 125.009 103.14 C 125.009 107.46 127.709 110.16 132.029 110.16 L 138.509 110.16 L 138.509 139.59 L 114.749 139.59 C 100.17 139.59 89.64 132.57 89.64 121.5 L 89.64 119.07 C 78.03 136.35 61.29 143.1 42.66 143.1 Z M 39.15 99.09 C 39.15 109.62 46.17 115.02 56.7 115.02 C 75.87 115.02 86.67 97.2 86.67 79.11 L 86.67 73.71 C 83.16 75.87 79.65 76.68 75.33 77.76 L 58.86 81.27 C 45.09 83.97 39.15 89.91 39.15 99.09 Z\" fill=\"var(--token-3a3b2bb2-cb19-4140-bd1d-a5dd96e6b197, rgb(255, 248, 237))\" height=\"143.10000000000002px\" id=\"LRCjqYcOI\" transform=\"translate(891.821 53.92)\" width=\"138.5089999999999px\"/><path d=\"M 0 189 L 0 0 L 39.15 0 L 39.15 189 Z\" fill=\"var(--token-3a3b2bb2-cb19-4140-bd1d-a5dd96e6b197, rgb(255, 248, 237))\" height=\"189px\" id=\"XXqZrpAeI\" transform=\"translate(1043.48 4.51)\" width=\"39.15000000000009px\"/><path d=\"M 0 189 L 0 0 L 39.15 0 L 39.15 189 Z\" fill=\"var(--token-3a3b2bb2-cb19-4140-bd1d-a5dd96e6b197, rgb(255, 248, 237))\" height=\"189px\" id=\"Agl9mVdsp\" transform=\"translate(1104.52 4.51)\" width=\"39.15000000000009px\"/><path d=\"M 67.5 143.1 C 26.19 143.1 0 112.32 0 71.55 C 0 31.05 26.19 0 67.5 0 C 104.76 0 133.65 21.87 132.03 81 L 38.07 81 C 40.23 100.98 49.68 113.67 67.5 113.67 C 80.73 113.67 88.83 107.73 92.88 96.93 L 130.95 96.93 C 126.9 121.77 105.84 143.1 67.5 143.1 Z M 38.61 56.97 L 93.96 56.97 C 92.07 36.99 82.08 28.89 67.23 28.89 C 50.49 28.89 41.85 41.04 38.61 56.97 Z\" fill=\"var(--token-3a3b2bb2-cb19-4140-bd1d-a5dd96e6b197, rgb(255, 248, 237))\" height=\"143.10000000000002px\" id=\"NpwMwYvS0\" transform=\"translate(1158.28 53.92)\" width=\"132.094933669967px\"/><path d=\"M 11.61 181.17 L 11.61 152.28 L 38.88 152.28 C 45.9 152.28 49.95 150.66 52.65 143.91 L 56.7 133.38 L 0 0 L 40.5 0 L 74.52 87.48 L 105.3 0 L 145.26 0 L 85.59 155.79 C 77.22 178.2 62.91 181.17 46.98 181.17 Z\" fill=\"var(--token-3a3b2bb2-cb19-4140-bd1d-a5dd96e6b197, rgb(255, 248, 237))\" height=\"181.17px\" id=\"oqpxzlkcE\" transform=\"translate(1289.35 57.43)\" width=\"145.26px\"/></svg>\\') alpha no-repeat center / auto var(--framer-icon-mask-mode, add), var(--framer-icon-mask, none)';const SVG=/*#__PURE__*/forwardRef((props,ref)=>{const{animated,layoutId,children,...rest}=props;return animated?/*#__PURE__*/_jsx(motion.div,{...rest,layoutId:layoutId,ref:ref}):/*#__PURE__*/_jsx(\"div\",{...rest,ref:ref});});const getProps=({height,id,width,...props})=>{return{...props};};const Component=/*#__PURE__*/React.forwardRef(function(props,ref){const{style,className,layoutId,variant,...restProps}=getProps(props);return /*#__PURE__*/_jsx(SVG,{...restProps,className:cx(\"framer-umKPp\",className),layoutId:layoutId,ref:ref,style:{...style}});});const css=[`.framer-umKPp { -webkit-mask: ${mask}; aspect-ratio: 5.983333333333333; background-color: var(--token-3a3b2bb2-cb19-4140-bd1d-a5dd96e6b197, #fff8ed); mask: ${mask}; width: 1436px; }`];/**\n * This is a generated Framer component.\n * @framerIntrinsicWidth 1436\n * @framerIntrinsicHeight 240\n * @framerSupportedLayoutWidth any-prefer-fixed\n * @framerSupportedLayoutHeight any-prefer-fixed\n * @framerImmutableVariables true\n * @framerVector {\"name\":\"Footer Logo\",\"color\":{\"type\":\"static\",\"value\":\"var(--token-3a3b2bb2-cb19-4140-bd1d-a5dd96e6b197, rgb(255, 248, 237))\"},\"set\":{\"localId\":\"vectorSet/S_KjAQCmk\",\"id\":\"S_KjAQCmk\",\"moduleId\":\"IydgZQAgVOf3T0QHtpuq\"}}\n */const Icon=withCSS(Component,css,\"framer-umKPp\");Icon.displayName=\"Footer Logo\";export default Icon;\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"Icon\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\",\"framerVector\":\"{\\\"name\\\":\\\"Footer Logo\\\",\\\"color\\\":{\\\"type\\\":\\\"static\\\",\\\"value\\\":\\\"var(--token-3a3b2bb2-cb19-4140-bd1d-a5dd96e6b197, rgb(255, 248, 237))\\\"},\\\"set\\\":{\\\"localId\\\":\\\"vectorSet/S_KjAQCmk\\\",\\\"id\\\":\\\"S_KjAQCmk\\\",\\\"moduleId\\\":\\\"IydgZQAgVOf3T0QHtpuq\\\"}}\",\"framerIntrinsicHeight\":\"240\",\"framerIntrinsicWidth\":\"1436\",\"framerImmutableVariables\":\"true\",\"framerSupportedLayoutHeight\":\"any-prefer-fixed\",\"framerSupportedLayoutWidth\":\"any-prefer-fixed\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// Generated by Framer (3bd990b)\nimport{jsx as _jsx}from\"react/jsx-runtime\";import{addFonts,addPropertyControls,ComponentViewportProvider,ControlType,cx,getFonts,Link,SmartComponentScopedContainer,useComponentViewport,useLocaleInfo,useVariantState,withCSS}from\"framer\";import{LayoutGroup,motion,MotionConfigContext}from\"framer-motion\";import*as React from\"react\";import{useRef}from\"react\";import RollingText from\"https://framerusercontent.com/modules/FiiQ0BKlVUNzxXjo8hFs/BDeIULpeB9kBv3zq3U1w/RollingTextHover_Prod.js\";const RollingTextFonts=getFonts(RollingText);const serializationHash=\"framer-LHFqV\";const variantClassNames={WwtqI0WC6:\"framer-v-1jn54ja\"};function addPropertyOverrides(overrides,...variants){const nextOverrides={};variants?.forEach(variant=>variant&&Object.assign(nextOverrides,overrides[variant]));return nextOverrides;}const pD22xtyWP=undefined;const jTrWnixsp=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 Variants=motion.create(React.Fragment);const getProps=({height,id,link,text,width,...props})=>{return{...props,jTrWnixsp:text??props.jTrWnixsp??\"Facilitation\",pD22xtyWP:link??props.pD22xtyWP};};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,jTrWnixsp,pD22xtyWP,...restProps}=getProps(props);const{baseVariant,classNames,clearLoadingGesture,gestureHandlers,gestureVariant,isLoading,setGestureState,setVariant,variants}=useVariantState({defaultVariant:\"WwtqI0WC6\",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(Link,{href:pD22xtyWP,motionChild:true,nodeId:\"WwtqI0WC6\",openInNewTab:false,scopeId:\"wHeZtCQqt\",children:/*#__PURE__*/_jsx(motion.a,{...restProps,...gestureHandlers,className:`${cx(scopingClassNames,\"framer-1jn54ja\",className,classNames)} framer-1krpam4`,\"data-framer-name\":\"Variant 1\",layoutDependency:layoutDependency,layoutId:\"WwtqI0WC6\",ref:refBinding,style:{...style},children:/*#__PURE__*/_jsx(ComponentViewportProvider,{children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-1tvlbrf-container\",isAuthoredByUser:true,isModuleExternal:true,layoutDependency:layoutDependency,layoutId:\"sodW1yv0j-container\",nodeId:\"sodW1yv0j\",rendersWithMotion:true,scopeId:\"wHeZtCQqt\",children:/*#__PURE__*/_jsx(RollingText,{color:\"var(--token-3a3b2bb2-cb19-4140-bd1d-a5dd96e6b197, rgb(255, 248, 237))\",font:{fontFamily:'\"KH Teka Regular\", \"KH Teka Regular Placeholder\", sans-serif',fontSize:\"calc(var(--framer-root-font-size, 1rem) * 1)\",fontStyle:\"normal\",fontWeight:400,letterSpacing:\"0px\",lineHeight:\"1.2em\"},height:\"100%\",id:\"sodW1yv0j\",layoutId:\"sodW1yv0j\",padding:\"0px 0px 0px 0px\",reverse:false,stagger:35,tag:\"p\",text:jTrWnixsp,textTransform:\"none\",transition:{delay:0,duration:.3,ease:[.55,0,.2,1],type:\"tween\"},width:\"100%\"})})})})})})})});});const css=[\"@supports (aspect-ratio: 1) { body { --framer-aspect-ratio-supported: auto; } }\",\".framer-LHFqV.framer-1krpam4, .framer-LHFqV .framer-1krpam4 { display: block; }\",\".framer-LHFqV.framer-1jn54ja { align-content: center; align-items: center; cursor: pointer; display: flex; flex-direction: row; flex-wrap: nowrap; gap: 10px; height: min-content; justify-content: flex-start; overflow: visible; padding: 0px; position: relative; text-decoration: none; width: min-content; }\",\".framer-LHFqV .framer-1tvlbrf-container { -webkit-user-select: auto; flex: none; height: auto; pointer-events: auto; position: relative; user-select: auto; width: auto; }\"];/**\n * This is a generated Framer component.\n * @framerIntrinsicHeight 19\n * @framerIntrinsicWidth 78\n * @framerCanvasComponentVariantDetails {\"propertyName\":\"variant\",\"data\":{\"default\":{\"layout\":[\"auto\",\"auto\"]}}}\n * @framerVariables {\"jTrWnixsp\":\"text\",\"pD22xtyWP\":\"link\"}\n * @framerImmutableVariables true\n * @framerDisplayContentsDiv false\n * @framerAutoSizeImages true\n * @framerComponentViewportWidth true\n * @framerColorSyntax true\n */const FramerwHeZtCQqt=withCSS(Component,css,\"framer-LHFqV\");export default FramerwHeZtCQqt;FramerwHeZtCQqt.displayName=\"Footer Link\";FramerwHeZtCQqt.defaultProps={height:19,width:78};addPropertyControls(FramerwHeZtCQqt,{jTrWnixsp:{defaultValue:\"Facilitation\",title:\"Text\",type:ControlType.String},pD22xtyWP:{title:\"Link\",type:ControlType.Link}});addFonts(FramerwHeZtCQqt,[{explicitInter:true,fonts:[{cssFamilyName:\"KH Teka Regular\",source:\"custom\",style:\"normal\",uiFamilyName:\"KH Teka\",url:\"https://framerusercontent.com/assets/4z6CvOOuX9Bttg9AJPxIBtoCGyw.woff2\",weight:\"400\"}]},...RollingTextFonts],{supportsExplicitInterCodegen:true});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"FramerwHeZtCQqt\",\"slots\":[],\"annotations\":{\"framerDisplayContentsDiv\":\"false\",\"framerComponentViewportWidth\":\"true\",\"framerCanvasComponentVariantDetails\":\"{\\\"propertyName\\\":\\\"variant\\\",\\\"data\\\":{\\\"default\\\":{\\\"layout\\\":[\\\"auto\\\",\\\"auto\\\"]}}}\",\"framerIntrinsicHeight\":\"19\",\"framerVariables\":\"{\\\"jTrWnixsp\\\":\\\"text\\\",\\\"pD22xtyWP\\\":\\\"link\\\"}\",\"framerContractVersion\":\"1\",\"framerIntrinsicWidth\":\"78\",\"framerImmutableVariables\":\"true\",\"framerAutoSizeImages\":\"true\",\"framerColorSyntax\":\"true\"}},\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./wHeZtCQqt.map","// Generated by Framer (77d7dc9)\nimport{jsx as _jsx,jsxs as _jsxs,Fragment as _Fragment}from\"react/jsx-runtime\";import{addFonts,addPropertyControls,ChildrenCanSuspend,ComponentViewportProvider,ControlType,cx,getFonts,getFontsFromSharedStyle,Link,PathVariablesContext,queryCache,ResolveLinks,RichText,SmartComponentScopedContainer,SVG,useComponentViewport,useLocaleInfo,useQueryData,useRouter,useVariantState,withColumnMasonryLayout,withCSS,withFX}from\"framer\";import{LayoutGroup,motion,MotionConfigContext}from\"framer-motion\";import*as React from\"react\";import{useRef}from\"react\";import Services from\"https://framerusercontent.com/modules/aAnQNgZvTO6wUi27jRI5/9zmauvp8QZrf0D8MWD3r/jrP0OSwKt.js\";import UseCases from\"https://framerusercontent.com/modules/VbgPh62TnLmdYg1BHLFV/rjvreXDuxqpQs3zEpaWc/Wq1Of9c3N.js\";import*as sharedStyle1 from\"https://framerusercontent.com/modules/TDkARzmDOWBAhM45qCn0/ZtObCraX9NwmaDkndcmR/CENc_xTn7.js\";import*as sharedStyle from\"https://framerusercontent.com/modules/HySZtPl1d0FoCAeDv9Qz/wPDODTuegBoVULn3MD1t/xeRob8x4H.js\";import FooterLogo from\"https://framerusercontent.com/modules/SN8wyFf1ZNAM5hHzPBix/vTVFZ9hZfXyMVir0Gw4O/RSwi34hfZ.js\";import FooterLink from\"https://framerusercontent.com/modules/55xdAxlvUTHBUQRIsaDq/v1Kn7xTnH06ZxcmS1Nx3/wHeZtCQqt.js\";const FooterLinkFonts=getFonts(FooterLink);const MotionDivWithFX=withFX(motion.div);const MotionDivWithColumnMasonryLayout=withColumnMasonryLayout(motion.div);const FooterLogoFonts=getFonts(FooterLogo);const FooterLogoWithFX=withFX(FooterLogo);const cycleOrder=[\"hhLJRLmnM\",\"ioCDYYlJI\",\"iUH5ZuV9t\"];const serializationHash=\"framer-P2DjR\";const variantClassNames={hhLJRLmnM:\"framer-v-rbwh7v\",ioCDYYlJI:\"framer-v-1efs5yf\",iUH5ZuV9t:\"framer-v-z2r1vi\"};function addPropertyOverrides(overrides,...variants){const nextOverrides={};variants?.forEach(variant=>variant&&Object.assign(nextOverrides,overrides[variant]));return nextOverrides;}const FvNpjzgFtmLyVop5A2=undefined;const CNN_66BWJmLyVop5A2=undefined;const idmLyVop5A2=undefined;const v9lQ7zU23uLhWt0Ydc=undefined;const wHBqvefJuuLhWt0Ydc=undefined;const iduLhWt0Ydc=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,x:0,y:16};const transition2={delay:0,duration:.5,ease:[.25,.3,.2,1],type:\"tween\"};const animation1={opacity:0,rotate:0,rotateX:0,rotateY:0,scale:1,skewX:0,skewY:0,transition:transition2,x:0,y:16};const query=prequery=>prequery({from:{alias:\"mLyVop5A2\",data:Services,type:\"Collection\"},limit:{type:\"LiteralValue\",value:10},select:[{collection:\"mLyVop5A2\",name:\"FvNpjzgFt\",type:\"Identifier\"},{collection:\"mLyVop5A2\",name:\"CNN_66BWJ\",type:\"Identifier\"},{collection:\"mLyVop5A2\",name:\"id\",type:\"Identifier\"}]});const query1=()=>({from:{alias:\"mLyVop5A2\",data:Services,type:\"Collection\"},limit:{type:\"LiteralValue\",value:10},select:[{collection:\"mLyVop5A2\",name:\"FvNpjzgFt\",type:\"Identifier\"},{collection:\"mLyVop5A2\",name:\"CNN_66BWJ\",type:\"Identifier\"},{collection:\"mLyVop5A2\",name:\"id\",type:\"Identifier\"}]});const QueryData=({query,pageSize,children})=>{const data=useQueryData(query);return children(data);};const transition3={delay:.05,duration:.5,ease:[.25,.3,.2,1],type:\"tween\"};const animation2={opacity:0,rotate:0,rotateX:0,rotateY:0,scale:1,skewX:0,skewY:0,transition:transition3,x:0,y:16};const query2=prequery=>prequery({from:{alias:\"uLhWt0Ydc\",data:UseCases,type:\"Collection\"},limit:{type:\"LiteralValue\",value:10},select:[{collection:\"uLhWt0Ydc\",name:\"v9lQ7zU23\",type:\"Identifier\"},{collection:\"uLhWt0Ydc\",name:\"wHBqvefJu\",type:\"Identifier\"},{collection:\"uLhWt0Ydc\",name:\"id\",type:\"Identifier\"}]});const query3=()=>({from:{alias:\"uLhWt0Ydc\",data:UseCases,type:\"Collection\"},limit:{type:\"LiteralValue\",value:10},select:[{collection:\"uLhWt0Ydc\",name:\"v9lQ7zU23\",type:\"Identifier\"},{collection:\"uLhWt0Ydc\",name:\"wHBqvefJu\",type:\"Identifier\"},{collection:\"uLhWt0Ydc\",name:\"id\",type:\"Identifier\"}]});const transition4={delay:.1,duration:.5,ease:[.25,.3,.2,1],type:\"tween\"};const animation3={opacity:0,rotate:0,rotateX:0,rotateY:0,scale:1,skewX:0,skewY:0,transition:transition4,x:0,y:16};const transition5={delay:.15,duration:.5,ease:[.25,.3,.2,1],type:\"tween\"};const animation4={opacity:0,rotate:0,rotateX:0,rotateY:0,scale:1,skewX:0,skewY:0,transition:transition5,x:0,y:16};const transition6={delay:.2,duration:.5,ease:[.25,.3,.2,1],type:\"tween\"};const animation5={opacity:0,rotate:0,rotateX:0,rotateY:0,scale:1,skewX:0,skewY:0,transition:transition6,x:0,y:16};const animation6={opacity:0,rotate:0,rotateX:0,rotateY:0,scale:1,skewX:0,skewY:0,x:0,y:40};const animation7={opacity:0,rotate:0,rotateX:0,rotateY:0,scale:1,skewX:0,skewY:0,transition:transition4,x:0,y:40};const animation8={opacity:0,rotate:0,rotateX:0,rotateY:0,scale:1,skewX:0,skewY:0,transition:transition2,x:0,y:40};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={\"Variant 1\":\"hhLJRLmnM\",Mobile:\"iUH5ZuV9t\",Tablet:\"ioCDYYlJI\"};const getProps=({height,id,width,...props})=>{return{...props,variant:humanReadableVariantMap[props.variant]??props.variant??\"hhLJRLmnM\"};};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:\"hhLJRLmnM\",ref:refBinding,variant,variantClassNames});const layoutDependency=createLayoutDependency(props,variants);const sharedStyleClassNames=[sharedStyle.className,sharedStyle1.className];const scopingClassNames=cx(serializationHash,...sharedStyleClassNames);const router=useRouter();const isDisplayed=()=>{if(baseVariant===\"ioCDYYlJI\")return true;return false;};return /*#__PURE__*/_jsx(LayoutGroup,{id:layoutId??defaultLayoutId,children:/*#__PURE__*/_jsx(Variants,{animate:variants,initial:false,children:/*#__PURE__*/_jsx(Transition,{value:transition1,children:/*#__PURE__*/_jsx(motion.footer,{...restProps,...gestureHandlers,className:cx(scopingClassNames,\"framer-rbwh7v\",className,classNames),\"data-framer-name\":\"Variant 1\",layoutDependency:layoutDependency,layoutId:\"hhLJRLmnM\",ref:refBinding,style:{backgroundColor:\"var(--token-a1e55884-84c4-4296-a29f-befcef912aac, rgb(0, 0, 0))\",...style},...addPropertyOverrides({ioCDYYlJI:{\"data-framer-name\":\"Tablet\"},iUH5ZuV9t:{\"data-framer-name\":\"Mobile\"}},baseVariant,gestureVariant),children:/*#__PURE__*/_jsxs(motion.div,{className:\"framer-y6bpd0\",\"data-framer-name\":\"max-width\",layoutDependency:layoutDependency,layoutId:\"C0cm9nhJz\",children:[/*#__PURE__*/_jsxs(MotionDivWithColumnMasonryLayout,{className:\"framer-14ywe4w\",\"data-framer-name\":\"Footer Nav\",layoutDependency:layoutDependency,layoutId:\"dF4PmZaGa\",...addPropertyOverrides({ioCDYYlJI:{columnMasonryLayoutEnabled:true,itemsOrder:[\"LB9FI1KFo\",\"riZGAXkTZ\",\"LgUHp4wsz\",\"rpUzBs0JP\",\"KBfJ5WQJH\"],parentIsDataRepeater:false,rowGap:32,trackCount:2}},baseVariant,gestureVariant),children:[/*#__PURE__*/_jsx(MotionDivWithFX,{__framer__animate:{transition:transition2},__framer__animateOnce:true,__framer__enter:animation,__framer__exit:animation1,__framer__styleAppearEffectEnabled:true,__framer__threshold:.5,__perspectiveFX:false,__smartComponentFX:true,__targetOpacity:1,className:\"framer-5xlcb4\",\"data-framer-name\":\"Row 1\",\"data-framer-order-id\":\"LB9FI1KFo\",layoutDependency:layoutDependency,layoutId:\"LB9FI1KFo\",children:/*#__PURE__*/_jsx(motion.div,{className:\"framer-m9go5z\",layoutDependency:layoutDependency,layoutId:\"mLyVop5A2\",children:/*#__PURE__*/_jsx(ChildrenCanSuspend,{children:/*#__PURE__*/_jsx(QueryData,{query:query1(),children:(collection,paginationInfo,loadMore)=>{return /*#__PURE__*/_jsxs(_Fragment,{children:[/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{className:\"framer-styles-preset-jek80d\",\"data-styles-preset\":\"xeRob8x4H\",style:{\"--framer-text-color\":\"var(--extracted-r6o4lv, var(--token-3a3b2bb2-cb19-4140-bd1d-a5dd96e6b197, rgb(255, 248, 237)))\"},children:\"Services\"})}),className:\"framer-1os828r\",\"data-framer-name\":\"Services\",fonts:[\"Inter\"],layoutDependency:layoutDependency,layoutId:\"cf1xGVOt_\",style:{\"--extracted-r6o4lv\":\"var(--token-3a3b2bb2-cb19-4140-bd1d-a5dd96e6b197, rgb(255, 248, 237))\",\"--framer-paragraph-spacing\":\"0px\"},verticalAlignment:\"top\",withExternalLayout:true}),collection?.map(({CNN_66BWJ:CNN_66BWJmLyVop5A2,FvNpjzgFt:FvNpjzgFtmLyVop5A2,id:idmLyVop5A2},index)=>{FvNpjzgFtmLyVop5A2??=\"\";CNN_66BWJmLyVop5A2??=\"\";return /*#__PURE__*/_jsx(LayoutGroup,{id:`mLyVop5A2-${idmLyVop5A2}`,children:/*#__PURE__*/_jsx(PathVariablesContext.Provider,{value:{CNN_66BWJ:CNN_66BWJmLyVop5A2},children:/*#__PURE__*/_jsx(motion.div,{className:\"framer-o3bwdl\",layoutDependency:layoutDependency,layoutId:\"lI9iH65YU\",children:/*#__PURE__*/_jsx(ResolveLinks,{links:[{href:{pathVariables:{CNN_66BWJ:CNN_66BWJmLyVop5A2},webPageId:\"rEeY9FftX\"},implicitPathVariables:undefined},{href:{pathVariables:{CNN_66BWJ:CNN_66BWJmLyVop5A2},webPageId:\"rEeY9FftX\"},implicitPathVariables:undefined},{href:{pathVariables:{CNN_66BWJ:CNN_66BWJmLyVop5A2},webPageId:\"rEeY9FftX\"},implicitPathVariables:undefined}],children:resolvedLinks=>/*#__PURE__*/_jsx(ComponentViewportProvider,{height:22,width:`max(max((min(max(${componentViewport?.width||\"100vw\"}, 1px), 1600px) - 156px) / 5.5, 1px) - 20px, 1px)`,...addPropertyOverrides({ioCDYYlJI:{width:`max(max((max(${componentViewport?.width||\"100vw\"}, 1px) - 96px) / 2, 50px), 1px)`},iUH5ZuV9t:{width:`max(max(${componentViewport?.width||\"100vw\"}, 1px) - 32px, 1px)`}},baseVariant,gestureVariant),children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-1855q3-container\",layoutDependency:layoutDependency,layoutId:\"NHRMed2lL-container\",nodeId:\"NHRMed2lL\",rendersWithMotion:true,scopeId:\"MJ1a0PqaK\",children:/*#__PURE__*/_jsx(FooterLink,{height:\"100%\",id:\"NHRMed2lL\",jTrWnixsp:FvNpjzgFtmLyVop5A2,layoutId:\"NHRMed2lL\",pD22xtyWP:resolvedLinks[0],style:{height:\"100%\",width:\"100%\"},width:\"100%\",...addPropertyOverrides({ioCDYYlJI:{pD22xtyWP:resolvedLinks[1]},iUH5ZuV9t:{pD22xtyWP:resolvedLinks[2]}},baseVariant,gestureVariant)})})})})})})},idmLyVop5A2);})]});}})})})}),/*#__PURE__*/_jsx(MotionDivWithFX,{__framer__animate:{transition:transition3},__framer__animateOnce:true,__framer__enter:animation,__framer__exit:animation2,__framer__styleAppearEffectEnabled:true,__framer__threshold:.5,__perspectiveFX:false,__smartComponentFX:true,__targetOpacity:1,className:\"framer-tvp5va\",\"data-framer-name\":\"Row 2\",\"data-framer-order-id\":\"riZGAXkTZ\",layoutDependency:layoutDependency,layoutId:\"riZGAXkTZ\",...addPropertyOverrides({iUH5ZuV9t:{__framer__animate:{transition:transition2},__framer__exit:animation1}},baseVariant,gestureVariant),children:/*#__PURE__*/_jsx(motion.div,{className:\"framer-1miao91\",layoutDependency:layoutDependency,layoutId:\"uLhWt0Ydc\",children:/*#__PURE__*/_jsx(ChildrenCanSuspend,{children:/*#__PURE__*/_jsx(QueryData,{query:query3(),children:(collection1,paginationInfo1,loadMore1)=>{return /*#__PURE__*/_jsxs(_Fragment,{children:[/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{className:\"framer-styles-preset-jek80d\",\"data-styles-preset\":\"xeRob8x4H\",style:{\"--framer-text-color\":\"var(--extracted-r6o4lv, var(--token-3a3b2bb2-cb19-4140-bd1d-a5dd96e6b197, rgb(255, 248, 237)))\"},children:\"Use Cases\"})}),className:\"framer-elrehu\",\"data-framer-name\":\"Use Cases\",fonts:[\"Inter\"],layoutDependency:layoutDependency,layoutId:\"MpUI2fkQz\",style:{\"--extracted-r6o4lv\":\"var(--token-3a3b2bb2-cb19-4140-bd1d-a5dd96e6b197, rgb(255, 248, 237))\",\"--framer-paragraph-spacing\":\"0px\"},verticalAlignment:\"top\",withExternalLayout:true}),collection1?.map(({id:iduLhWt0Ydc,v9lQ7zU23:v9lQ7zU23uLhWt0Ydc,wHBqvefJu:wHBqvefJuuLhWt0Ydc},index1)=>{v9lQ7zU23uLhWt0Ydc??=\"\";wHBqvefJuuLhWt0Ydc??=\"\";return /*#__PURE__*/_jsx(LayoutGroup,{id:`uLhWt0Ydc-${iduLhWt0Ydc}`,children:/*#__PURE__*/_jsx(PathVariablesContext.Provider,{value:{wHBqvefJu:wHBqvefJuuLhWt0Ydc},children:/*#__PURE__*/_jsx(motion.div,{className:\"framer-19dngvy\",layoutDependency:layoutDependency,layoutId:\"m1nZhRXEt\",children:/*#__PURE__*/_jsx(ResolveLinks,{links:[{href:{pathVariables:{wHBqvefJu:wHBqvefJuuLhWt0Ydc},webPageId:\"uuw5uXNm0\"},implicitPathVariables:undefined},{href:{pathVariables:{wHBqvefJu:wHBqvefJuuLhWt0Ydc},webPageId:\"uuw5uXNm0\"},implicitPathVariables:undefined},{href:{pathVariables:{wHBqvefJu:wHBqvefJuuLhWt0Ydc},webPageId:\"uuw5uXNm0\"},implicitPathVariables:undefined}],children:resolvedLinks1=>/*#__PURE__*/_jsx(ComponentViewportProvider,{height:22,width:`max(max((min(max(${componentViewport?.width||\"100vw\"}, 1px), 1600px) - 156px) * 0.2727, 1px) - 20px, 1px)`,...addPropertyOverrides({ioCDYYlJI:{width:`max(max((max(${componentViewport?.width||\"100vw\"}, 1px) - 96px) / 2, 50px), 1px)`},iUH5ZuV9t:{width:`max(max(${componentViewport?.width||\"100vw\"}, 1px) - 32px, 1px)`}},baseVariant,gestureVariant),children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-1vnsmw9-container\",layoutDependency:layoutDependency,layoutId:\"yLfL_QQ50-container\",nodeId:\"yLfL_QQ50\",rendersWithMotion:true,scopeId:\"MJ1a0PqaK\",children:/*#__PURE__*/_jsx(FooterLink,{height:\"100%\",id:\"yLfL_QQ50\",jTrWnixsp:v9lQ7zU23uLhWt0Ydc,layoutId:\"yLfL_QQ50\",pD22xtyWP:resolvedLinks1[0],style:{height:\"100%\",width:\"100%\"},width:\"100%\",...addPropertyOverrides({ioCDYYlJI:{pD22xtyWP:resolvedLinks1[1]},iUH5ZuV9t:{pD22xtyWP:resolvedLinks1[2]}},baseVariant,gestureVariant)})})})})})})},iduLhWt0Ydc);})]});}})})})}),/*#__PURE__*/_jsxs(MotionDivWithFX,{__framer__animate:{transition:transition4},__framer__animateOnce:true,__framer__enter:animation,__framer__exit:animation3,__framer__styleAppearEffectEnabled:true,__framer__threshold:.5,__perspectiveFX:false,__smartComponentFX:true,__targetOpacity:1,className:\"framer-1s55wxd\",\"data-framer-name\":\"Row 3\",\"data-framer-order-id\":\"LgUHp4wsz\",layoutDependency:layoutDependency,layoutId:\"LgUHp4wsz\",...addPropertyOverrides({ioCDYYlJI:{__framer__animate:{transition:transition2},__framer__exit:animation1},iUH5ZuV9t:{__framer__animate:{transition:transition2},__framer__exit:animation1}},baseVariant,gestureVariant),children:[/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{className:\"framer-styles-preset-jek80d\",\"data-styles-preset\":\"xeRob8x4H\",style:{\"--framer-text-color\":\"var(--extracted-r6o4lv, var(--token-3a3b2bb2-cb19-4140-bd1d-a5dd96e6b197, rgb(255, 248, 237)))\"},children:\"Others\"})}),className:\"framer-3tjn2q\",\"data-framer-name\":\"Use Cases\",fonts:[\"Inter\"],layoutDependency:layoutDependency,layoutId:\"fc4WKnEhF\",style:{\"--extracted-r6o4lv\":\"var(--token-3a3b2bb2-cb19-4140-bd1d-a5dd96e6b197, rgb(255, 248, 237))\",\"--framer-paragraph-spacing\":\"0px\"},verticalAlignment:\"top\",withExternalLayout:true}),/*#__PURE__*/_jsx(ResolveLinks,{links:[{href:{webPageId:\"X6lFGk9A9\"},implicitPathVariables:undefined},{href:{webPageId:\"X6lFGk9A9\"},implicitPathVariables:undefined},{href:{webPageId:\"X6lFGk9A9\"},implicitPathVariables:undefined}],children:resolvedLinks2=>/*#__PURE__*/_jsx(ComponentViewportProvider,{height:22,width:`calc(max((min(max(${componentViewport?.width||\"100vw\"}, 1px), 1600px) - 156px) / 5.5, 1px) - 20px)`,...addPropertyOverrides({ioCDYYlJI:{width:`max((max(${componentViewport?.width||\"100vw\"}, 1px) - 96px) / 2, 50px)`},iUH5ZuV9t:{width:`calc(max(${componentViewport?.width||\"100vw\"}, 1px) - 32px)`}},baseVariant,gestureVariant),children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-1dlk356-container\",layoutDependency:layoutDependency,layoutId:\"TrGqrrSIM-container\",nodeId:\"TrGqrrSIM\",rendersWithMotion:true,scopeId:\"MJ1a0PqaK\",children:/*#__PURE__*/_jsx(FooterLink,{height:\"100%\",id:\"TrGqrrSIM\",jTrWnixsp:\"Team\",layoutId:\"TrGqrrSIM\",pD22xtyWP:resolvedLinks2[0],style:{height:\"100%\",width:\"100%\"},width:\"100%\",...addPropertyOverrides({ioCDYYlJI:{pD22xtyWP:resolvedLinks2[1]},iUH5ZuV9t:{pD22xtyWP:resolvedLinks2[2]}},baseVariant,gestureVariant)})})})}),/*#__PURE__*/_jsx(ResolveLinks,{links:[{href:{webPageId:\"r5F18MhFI\"},implicitPathVariables:undefined},{href:{webPageId:\"r5F18MhFI\"},implicitPathVariables:undefined},{href:{webPageId:\"r5F18MhFI\"},implicitPathVariables:undefined}],children:resolvedLinks3=>/*#__PURE__*/_jsx(ComponentViewportProvider,{height:22,width:`calc(max((min(max(${componentViewport?.width||\"100vw\"}, 1px), 1600px) - 156px) / 5.5, 1px) - 20px)`,...addPropertyOverrides({ioCDYYlJI:{width:`max((max(${componentViewport?.width||\"100vw\"}, 1px) - 96px) / 2, 50px)`},iUH5ZuV9t:{width:`calc(max(${componentViewport?.width||\"100vw\"}, 1px) - 32px)`}},baseVariant,gestureVariant),children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-cg9590-container\",layoutDependency:layoutDependency,layoutId:\"HMV8zrVCK-container\",nodeId:\"HMV8zrVCK\",rendersWithMotion:true,scopeId:\"MJ1a0PqaK\",children:/*#__PURE__*/_jsx(FooterLink,{height:\"100%\",id:\"HMV8zrVCK\",jTrWnixsp:\"Results\",layoutId:\"HMV8zrVCK\",pD22xtyWP:resolvedLinks3[0],style:{height:\"100%\",width:\"100%\"},width:\"100%\",...addPropertyOverrides({ioCDYYlJI:{pD22xtyWP:resolvedLinks3[1]},iUH5ZuV9t:{pD22xtyWP:resolvedLinks3[2]}},baseVariant,gestureVariant)})})})}),/*#__PURE__*/_jsx(ResolveLinks,{links:[{href:{hash:\":Vhxig8x8C\",webPageId:\"YSxdLsHE5\"},implicitPathVariables:undefined},{href:{hash:\":Vhxig8x8C\",webPageId:\"YSxdLsHE5\"},implicitPathVariables:undefined},{href:{hash:\":Vhxig8x8C\",webPageId:\"YSxdLsHE5\"},implicitPathVariables:undefined}],children:resolvedLinks4=>/*#__PURE__*/_jsx(ComponentViewportProvider,{height:22,width:`calc(max((min(max(${componentViewport?.width||\"100vw\"}, 1px), 1600px) - 156px) / 5.5, 1px) - 20px)`,...addPropertyOverrides({ioCDYYlJI:{width:`max((max(${componentViewport?.width||\"100vw\"}, 1px) - 96px) / 2, 50px)`},iUH5ZuV9t:{width:`calc(max(${componentViewport?.width||\"100vw\"}, 1px) - 32px)`}},baseVariant,gestureVariant),children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-ndqzxn-container\",layoutDependency:layoutDependency,layoutId:\"xXXpJQUIP-container\",nodeId:\"xXXpJQUIP\",rendersWithMotion:true,scopeId:\"MJ1a0PqaK\",children:/*#__PURE__*/_jsx(FooterLink,{height:\"100%\",id:\"xXXpJQUIP\",jTrWnixsp:\"Resources\",layoutId:\"xXXpJQUIP\",pD22xtyWP:resolvedLinks4[0],style:{height:\"100%\",width:\"100%\"},width:\"100%\",...addPropertyOverrides({ioCDYYlJI:{pD22xtyWP:resolvedLinks4[1]},iUH5ZuV9t:{pD22xtyWP:resolvedLinks4[2]}},baseVariant,gestureVariant)})})})}),/*#__PURE__*/_jsx(ResolveLinks,{links:[{href:{webPageId:\"nB_Xiw0pO\"},implicitPathVariables:undefined},{href:{webPageId:\"nB_Xiw0pO\"},implicitPathVariables:undefined},{href:{webPageId:\"nB_Xiw0pO\"},implicitPathVariables:undefined}],children:resolvedLinks5=>/*#__PURE__*/_jsx(ComponentViewportProvider,{height:22,width:`calc(max((min(max(${componentViewport?.width||\"100vw\"}, 1px), 1600px) - 156px) / 5.5, 1px) - 20px)`,...addPropertyOverrides({ioCDYYlJI:{width:`max((max(${componentViewport?.width||\"100vw\"}, 1px) - 96px) / 2, 50px)`},iUH5ZuV9t:{width:`calc(max(${componentViewport?.width||\"100vw\"}, 1px) - 32px)`}},baseVariant,gestureVariant),children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-u7eauj-container\",layoutDependency:layoutDependency,layoutId:\"nSvi1ySrw-container\",nodeId:\"nSvi1ySrw\",rendersWithMotion:true,scopeId:\"MJ1a0PqaK\",children:/*#__PURE__*/_jsx(FooterLink,{height:\"100%\",id:\"nSvi1ySrw\",jTrWnixsp:\"About\",layoutId:\"nSvi1ySrw\",pD22xtyWP:resolvedLinks5[0],style:{height:\"100%\",width:\"100%\"},width:\"100%\",...addPropertyOverrides({ioCDYYlJI:{pD22xtyWP:resolvedLinks5[1]},iUH5ZuV9t:{pD22xtyWP:resolvedLinks5[2]}},baseVariant,gestureVariant)})})})}),/*#__PURE__*/_jsx(ResolveLinks,{links:[{href:{webPageId:\"p05Y6XoQZ\"},implicitPathVariables:undefined},{href:{webPageId:\"p05Y6XoQZ\"},implicitPathVariables:undefined},{href:{webPageId:\"p05Y6XoQZ\"},implicitPathVariables:undefined}],children:resolvedLinks6=>/*#__PURE__*/_jsx(ComponentViewportProvider,{height:22,width:`calc(max((min(max(${componentViewport?.width||\"100vw\"}, 1px), 1600px) - 156px) / 5.5, 1px) - 20px)`,...addPropertyOverrides({ioCDYYlJI:{width:`max((max(${componentViewport?.width||\"100vw\"}, 1px) - 96px) / 2, 50px)`},iUH5ZuV9t:{width:`calc(max(${componentViewport?.width||\"100vw\"}, 1px) - 32px)`}},baseVariant,gestureVariant),children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-11voj0t-container\",layoutDependency:layoutDependency,layoutId:\"gbxQbYmSR-container\",nodeId:\"gbxQbYmSR\",rendersWithMotion:true,scopeId:\"MJ1a0PqaK\",children:/*#__PURE__*/_jsx(FooterLink,{height:\"100%\",id:\"gbxQbYmSR\",jTrWnixsp:\"Contact\",layoutId:\"gbxQbYmSR\",pD22xtyWP:resolvedLinks6[0],style:{height:\"100%\",width:\"100%\"},width:\"100%\",...addPropertyOverrides({ioCDYYlJI:{pD22xtyWP:resolvedLinks6[1]},iUH5ZuV9t:{pD22xtyWP:resolvedLinks6[2]}},baseVariant,gestureVariant)})})})})]}),/*#__PURE__*/_jsxs(motion.div,{className:\"framer-jee5tr\",\"data-framer-order-id\":\"KBfJ5WQJH\",layoutDependency:layoutDependency,layoutId:\"KBfJ5WQJH\",children:[/*#__PURE__*/_jsxs(MotionDivWithFX,{__framer__animate:{transition:transition5},__framer__animateOnce:true,__framer__enter:animation,__framer__exit:animation4,__framer__styleAppearEffectEnabled:true,__framer__threshold:.5,__perspectiveFX:false,__smartComponentFX:true,__targetOpacity:1,className:\"framer-2rmoue\",\"data-framer-name\":\"Row 4\",layoutDependency:layoutDependency,layoutId:\"e8JfmmWMx\",...addPropertyOverrides({ioCDYYlJI:{__framer__animate:{transition:transition2},__framer__exit:animation1},iUH5ZuV9t:{__framer__animate:{transition:transition2},__framer__exit:animation1}},baseVariant,gestureVariant),children:[/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{className:\"framer-styles-preset-jek80d\",\"data-styles-preset\":\"xeRob8x4H\",style:{\"--framer-text-color\":\"var(--extracted-r6o4lv, var(--token-3a3b2bb2-cb19-4140-bd1d-a5dd96e6b197, rgb(255, 248, 237)))\"},children:\"Contact\"})}),className:\"framer-i2gow\",\"data-framer-name\":\"Come Visit Us\",fonts:[\"Inter\"],layoutDependency:layoutDependency,layoutId:\"QEpHn4dF8\",style:{\"--extracted-r6o4lv\":\"var(--token-3a3b2bb2-cb19-4140-bd1d-a5dd96e6b197, rgb(255, 248, 237))\",\"--framer-paragraph-spacing\":\"0px\"},verticalAlignment:\"top\",withExternalLayout:true}),/*#__PURE__*/_jsx(ComponentViewportProvider,{height:19,...addPropertyOverrides({ioCDYYlJI:{width:`calc(max((max(${componentViewport?.width||\"100vw\"}, 1px) - 96px) / 2, 50px) * 2)`},iUH5ZuV9t:{width:`calc(max(${componentViewport?.width||\"100vw\"}, 1px) - 32px)`}},baseVariant,gestureVariant),children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-vemgkj-container\",layoutDependency:layoutDependency,layoutId:\"eMjGp3tho-container\",nodeId:\"eMjGp3tho\",rendersWithMotion:true,scopeId:\"MJ1a0PqaK\",children:/*#__PURE__*/_jsx(FooterLink,{height:\"100%\",id:\"eMjGp3tho\",jTrWnixsp:\"+44 (0)1905 814420\",layoutId:\"eMjGp3tho\",pD22xtyWP:\"tel:+441905 814420\",width:\"100%\",...addPropertyOverrides({ioCDYYlJI:{style:{width:\"100%\"}},iUH5ZuV9t:{style:{width:\"100%\"}}},baseVariant,gestureVariant)})})}),/*#__PURE__*/_jsx(ComponentViewportProvider,{height:19,...addPropertyOverrides({ioCDYYlJI:{width:`calc(max((max(${componentViewport?.width||\"100vw\"}, 1px) - 96px) / 2, 50px) * 2)`},iUH5ZuV9t:{width:`calc(max(${componentViewport?.width||\"100vw\"}, 1px) - 32px)`}},baseVariant,gestureVariant),children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-1l9hxhc-container\",layoutDependency:layoutDependency,layoutId:\"wo5NIX8iA-container\",nodeId:\"wo5NIX8iA\",rendersWithMotion:true,scopeId:\"MJ1a0PqaK\",children:/*#__PURE__*/_jsx(FooterLink,{height:\"100%\",id:\"wo5NIX8iA\",jTrWnixsp:\"contact@sprintvalley.com\",layoutId:\"wo5NIX8iA\",pD22xtyWP:\"mailto:contact@sprintvalley.com\",width:\"100%\",...addPropertyOverrides({ioCDYYlJI:{style:{width:\"100%\"}},iUH5ZuV9t:{style:{width:\"100%\"}}},baseVariant,gestureVariant)})})}),/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{className:\"framer-styles-preset-11unnkq\",\"data-styles-preset\":\"CENc_xTn7\",style:{\"--framer-text-color\":\"var(--extracted-r6o4lv, var(--token-3a3b2bb2-cb19-4140-bd1d-a5dd96e6b197, rgb(255, 248, 237)))\"},children:\"Minerva Mill Innovation Centre Station Road Alcester B49 5ET\"})}),className:\"framer-1rb6fk3\",\"data-framer-name\":\"Minerva Mill Innovation Centre Station Road Alcester B49 5ET\",fonts:[\"Inter\"],layoutDependency:layoutDependency,layoutId:\"P4_L3kL26\",style:{\"--extracted-r6o4lv\":\"var(--token-3a3b2bb2-cb19-4140-bd1d-a5dd96e6b197, rgb(255, 248, 237))\",\"--framer-paragraph-spacing\":\"0px\"},verticalAlignment:\"top\",withExternalLayout:true})]}),/*#__PURE__*/_jsxs(MotionDivWithFX,{__framer__animate:{transition:transition6},__framer__animateOnce:true,__framer__enter:animation,__framer__exit:animation5,__framer__styleAppearEffectEnabled:true,__framer__threshold:.5,__perspectiveFX:false,__smartComponentFX:true,__targetOpacity:1,className:\"framer-1guf86t\",\"data-framer-name\":\"Row 5\",layoutDependency:layoutDependency,layoutId:\"OIE71LGDc\",...addPropertyOverrides({ioCDYYlJI:{__framer__animate:{transition:transition2},__framer__exit:animation1},iUH5ZuV9t:{__framer__animate:{transition:transition2},__framer__exit:animation1}},baseVariant,gestureVariant),children:[/*#__PURE__*/_jsxs(motion.div,{className:\"framer-vvsc9o\",layoutDependency:layoutDependency,layoutId:\"U8eSwHUnh\",children:[/*#__PURE__*/_jsx(ResolveLinks,{links:[{href:{webPageId:\"yIZUQWlL3\"},implicitPathVariables:undefined},{href:{webPageId:\"yIZUQWlL3\"},implicitPathVariables:undefined},{href:{webPageId:\"yIZUQWlL3\"},implicitPathVariables:undefined}],children:resolvedLinks7=>/*#__PURE__*/_jsx(ComponentViewportProvider,{height:19,children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-1rick2k-container\",layoutDependency:layoutDependency,layoutId:\"THD_o3nNz-container\",nodeId:\"THD_o3nNz\",rendersWithMotion:true,scopeId:\"MJ1a0PqaK\",children:/*#__PURE__*/_jsx(FooterLink,{height:\"100%\",id:\"THD_o3nNz\",jTrWnixsp:\"Terms\",layoutId:\"THD_o3nNz\",pD22xtyWP:resolvedLinks7[0],width:\"100%\",...addPropertyOverrides({ioCDYYlJI:{pD22xtyWP:resolvedLinks7[1]},iUH5ZuV9t:{pD22xtyWP:resolvedLinks7[2]}},baseVariant,gestureVariant)})})})}),/*#__PURE__*/_jsx(SVG,{className:\"framer-3vr1o2\",layoutDependency:layoutDependency,layoutId:\"sX0PDlvRJ\",opacity:1,requiresOverflowVisible:true,svg:'<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" viewBox=\"0 0 1 12\" overflow=\"visible\"><path d=\"M 0 0 L 0 12\" fill=\"transparent\" stroke=\"var(--token-5c79608c-e8df-4c63-bc8e-e4e937507dd4, rgba(255, 248, 237, 0.5)) /* {&quot;name&quot;:&quot;Off White 50%&quot;} */\"></path></svg>',withExternalLayout:true}),/*#__PURE__*/_jsx(ResolveLinks,{links:[{href:{webPageId:\"QpS8PaTc8\"},implicitPathVariables:undefined},{href:{webPageId:\"QpS8PaTc8\"},implicitPathVariables:undefined},{href:{webPageId:\"QpS8PaTc8\"},implicitPathVariables:undefined}],children:resolvedLinks8=>/*#__PURE__*/_jsx(ComponentViewportProvider,{height:19,children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-1j75wyk-container\",layoutDependency:layoutDependency,layoutId:\"oogVPJTGD-container\",nodeId:\"oogVPJTGD\",rendersWithMotion:true,scopeId:\"MJ1a0PqaK\",children:/*#__PURE__*/_jsx(FooterLink,{height:\"100%\",id:\"oogVPJTGD\",jTrWnixsp:\"Privacy\",layoutId:\"oogVPJTGD\",pD22xtyWP:resolvedLinks8[0],width:\"100%\",...addPropertyOverrides({ioCDYYlJI:{pD22xtyWP:resolvedLinks8[1]},iUH5ZuV9t:{pD22xtyWP:resolvedLinks8[2]}},baseVariant,gestureVariant)})})})}),/*#__PURE__*/_jsx(SVG,{className:\"framer-1a2nmto\",layoutDependency:layoutDependency,layoutId:\"Zkop7PQ8d\",opacity:1,requiresOverflowVisible:true,svg:'<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" viewBox=\"0 0 1 12\" overflow=\"visible\"><path d=\"M 0 0 L 0 12\" fill=\"transparent\" stroke=\"var(--token-5c79608c-e8df-4c63-bc8e-e4e937507dd4, rgba(255, 248, 237, 0.5)) /* {&quot;name&quot;:&quot;Off White 50%&quot;} */\"></path></svg>',withExternalLayout:true}),/*#__PURE__*/_jsx(ResolveLinks,{links:[{href:{webPageId:\"wVpRHmhY9\"},implicitPathVariables:undefined},{href:{webPageId:\"wVpRHmhY9\"},implicitPathVariables:undefined},{href:{webPageId:\"wVpRHmhY9\"},implicitPathVariables:undefined}],children:resolvedLinks9=>/*#__PURE__*/_jsx(ComponentViewportProvider,{height:19,children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-o3w2cs-container\",layoutDependency:layoutDependency,layoutId:\"chkohmQU7-container\",nodeId:\"chkohmQU7\",rendersWithMotion:true,scopeId:\"MJ1a0PqaK\",children:/*#__PURE__*/_jsx(FooterLink,{height:\"100%\",id:\"chkohmQU7\",jTrWnixsp:\"AI Info\",layoutId:\"chkohmQU7\",pD22xtyWP:resolvedLinks9[0],width:\"100%\",...addPropertyOverrides({ioCDYYlJI:{pD22xtyWP:resolvedLinks9[1]},iUH5ZuV9t:{pD22xtyWP:resolvedLinks9[2]}},baseVariant,gestureVariant)})})})})]}),/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{className:\"framer-styles-preset-11unnkq\",\"data-styles-preset\":\"CENc_xTn7\",style:{\"--framer-text-color\":\"var(--extracted-r6o4lv, var(--token-3a3b2bb2-cb19-4140-bd1d-a5dd96e6b197, rgb(255, 248, 237)))\"},children:\"\\xa9 Copyright 2025 Sprint Valley Limited. All rights reserved.\"})}),className:\"framer-1l0gi7z\",\"data-framer-name\":\"Minerva Mill Innovation Centre Station Road Alcester B49 5ET\",fonts:[\"Inter\"],layoutDependency:layoutDependency,layoutId:\"zCJ8ZVuLl\",style:{\"--extracted-r6o4lv\":\"var(--token-3a3b2bb2-cb19-4140-bd1d-a5dd96e6b197, rgb(255, 248, 237))\",\"--framer-paragraph-spacing\":\"0px\"},verticalAlignment:\"top\",withExternalLayout:true})]})]}),isDisplayed()&&/*#__PURE__*/_jsx(motion.div,{className:\"framer-1614nlc\",\"data-framer-name\":\"Spacer\",\"data-framer-order-id\":\"rpUzBs0JP\",layoutDependency:layoutDependency,layoutId:\"rpUzBs0JP\"})]}),/*#__PURE__*/_jsx(Link,{href:{hash:\":d7m8lgMgq\",webPageId:\"augiA20Il\"},motionChild:true,nodeId:\"AufqnAW7M\",openInNewTab:false,scopeId:\"MJ1a0PqaK\",smoothScroll:true,children:/*#__PURE__*/_jsx(motion.a,{className:\"framer-1mbz13u framer-c8nyhn\",\"data-framer-name\":\"Link Stack\",layoutDependency:layoutDependency,layoutId:\"AufqnAW7M\",children:/*#__PURE__*/_jsx(FooterLogoWithFX,{__framer__animate:{transition:transition4},__framer__animateOnce:true,__framer__enter:animation6,__framer__exit:animation7,__framer__styleAppearEffectEnabled:true,__framer__threshold:0,__perspectiveFX:false,__smartComponentFX:true,__targetOpacity:1,animated:true,className:\"framer-1rmd8rk\",\"data-framer-name\":\"Footer Logo\",layoutDependency:layoutDependency,layoutId:\"MjwJewUjH\",...addPropertyOverrides({ioCDYYlJI:{__framer__animate:{transition:transition2},__framer__exit:animation8},iUH5ZuV9t:{__framer__animate:{transition:transition2},__framer__exit:animation8}},baseVariant,gestureVariant)})})})]})})})})});});const css=[\"@supports (aspect-ratio: 1) { body { --framer-aspect-ratio-supported: auto; } }\",\".framer-P2DjR.framer-c8nyhn, .framer-P2DjR .framer-c8nyhn { display: block; }\",\".framer-P2DjR.framer-rbwh7v { align-content: center; align-items: center; display: flex; flex-direction: row; flex-wrap: nowrap; gap: 56px; height: min-content; justify-content: center; overflow: var(--overflow-clip-fallback, clip); padding: 0px; position: relative; width: 1440px; }\",\".framer-P2DjR .framer-y6bpd0 { align-content: center; align-items: center; display: flex; flex: 1 0 0px; flex-direction: column; flex-wrap: nowrap; gap: 72px; height: min-content; justify-content: center; max-width: 1600px; overflow: hidden; padding: 96px 0px 16px 0px; position: relative; width: 1px; }\",\".framer-P2DjR .framer-14ywe4w { align-content: flex-start; align-items: flex-start; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; height: min-content; justify-content: space-between; overflow: visible; padding: 0px 48px 0px 48px; position: relative; width: 100%; }\",\".framer-P2DjR .framer-5xlcb4, .framer-P2DjR .framer-1s55wxd, .framer-P2DjR .framer-1guf86t { 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 20px 0px 0px; position: relative; width: 1px; }\",\".framer-P2DjR .framer-m9go5z { align-content: flex-start; align-items: flex-start; display: flex; flex: none; flex-direction: column; flex-wrap: nowrap; gap: 12px; height: min-content; justify-content: center; padding: 0px; position: relative; width: 100%; }\",\".framer-P2DjR .framer-1os828r { flex: none; height: auto; position: relative; white-space: pre-wrap; width: 207px; word-break: break-word; word-wrap: break-word; }\",\".framer-P2DjR .framer-o3bwdl, .framer-P2DjR .framer-19dngvy { 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-P2DjR .framer-1855q3-container, .framer-P2DjR .framer-1vnsmw9-container { flex: 1 0 0px; height: 22px; position: relative; width: 1px; }\",\".framer-P2DjR .framer-tvp5va { align-content: flex-start; align-items: flex-start; display: flex; flex: 1.5 0 0px; flex-direction: column; flex-wrap: nowrap; gap: 12px; height: min-content; justify-content: flex-start; overflow: visible; padding: 0px 20px 0px 0px; position: relative; width: 1px; }\",\".framer-P2DjR .framer-1miao91 { align-content: flex-start; align-items: flex-start; display: flex; flex: none; flex-direction: column; flex-wrap: wrap; gap: 12px; height: 191px; justify-content: flex-start; padding: 0px; position: relative; width: 100%; }\",\".framer-P2DjR .framer-elrehu, .framer-P2DjR .framer-3tjn2q { flex: none; height: auto; position: relative; white-space: pre-wrap; width: 208px; word-break: break-word; word-wrap: break-word; }\",\".framer-P2DjR .framer-1dlk356-container, .framer-P2DjR .framer-cg9590-container, .framer-P2DjR .framer-ndqzxn-container, .framer-P2DjR .framer-u7eauj-container, .framer-P2DjR .framer-11voj0t-container { flex: none; height: 22px; position: relative; width: 100%; }\",\".framer-P2DjR .framer-jee5tr { align-content: center; align-items: center; display: flex; flex: 2 0 0px; flex-direction: row; flex-wrap: nowrap; gap: 10px; height: min-content; justify-content: center; overflow: visible; padding: 0px; position: relative; width: 1px; }\",\".framer-P2DjR .framer-2rmoue { align-content: flex-start; align-items: flex-start; display: flex; flex: 1 0 0px; flex-direction: column; flex-wrap: nowrap; gap: 13px; height: min-content; justify-content: flex-start; overflow: visible; padding: 0px 40px 0px 0px; position: relative; width: 1px; }\",\".framer-P2DjR .framer-i2gow { flex: none; height: auto; position: relative; white-space: pre-wrap; width: 203px; word-break: break-word; word-wrap: break-word; }\",\".framer-P2DjR .framer-vemgkj-container, .framer-P2DjR .framer-1l9hxhc-container, .framer-P2DjR .framer-1rick2k-container, .framer-P2DjR .framer-1j75wyk-container, .framer-P2DjR .framer-o3w2cs-container { flex: none; height: auto; position: relative; width: auto; }\",\".framer-P2DjR .framer-1rb6fk3, .framer-P2DjR .framer-1l0gi7z { flex: none; height: auto; position: relative; white-space: pre-wrap; width: 100%; word-break: break-word; word-wrap: break-word; }\",\".framer-P2DjR .framer-vvsc9o { align-content: center; align-items: center; display: flex; flex: none; flex-direction: row; flex-wrap: wrap; gap: 8px 16px; height: min-content; justify-content: flex-start; overflow: visible; padding: 0px; position: relative; width: 100%; }\",\".framer-P2DjR .framer-3vr1o2, .framer-P2DjR .framer-1a2nmto { height: 12px; position: relative; width: 1px; }\",\".framer-P2DjR .framer-1614nlc { flex: none; height: 100px; overflow: visible; position: relative; width: 100%; }\",\".framer-P2DjR .framer-1mbz13u { align-content: center; align-items: center; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; gap: 10px; height: min-content; justify-content: center; overflow: visible; padding: 0px; position: relative; text-decoration: none; width: 100%; }\",\".framer-P2DjR .framer-1rmd8rk { aspect-ratio: 5.983333333333333 / 1; flex: none; height: var(--framer-aspect-ratio-supported, 241px); position: relative; width: 100%; z-index: 1; }\",\".framer-P2DjR.framer-v-1efs5yf.framer-rbwh7v { width: 600px; }\",\".framer-P2DjR.framer-v-1efs5yf .framer-y6bpd0 { gap: 64px; max-width: unset; padding: 64px 0px 8px 0px; }\",\".framer-P2DjR.framer-v-1efs5yf .framer-14ywe4w { align-content: unset; align-items: unset; display: grid; gap: 32px 32px; justify-content: unset; padding: 0px 32px 0px 32px; }\",\".framer-P2DjR.framer-v-1efs5yf .framer-5xlcb4, .framer-P2DjR.framer-v-1efs5yf .framer-tvp5va, .framer-P2DjR.framer-v-1efs5yf .framer-1s55wxd { align-self: start; flex: none; justify-self: start; padding: 0px; width: 100%; }\",\".framer-P2DjR.framer-v-1efs5yf .framer-3tjn2q, .framer-P2DjR.framer-v-1efs5yf .framer-i2gow, .framer-P2DjR.framer-v-1efs5yf .framer-vemgkj-container, .framer-P2DjR.framer-v-1efs5yf .framer-1l9hxhc-container, .framer-P2DjR.framer-v-z2r1vi .framer-3tjn2q, .framer-P2DjR.framer-v-z2r1vi .framer-i2gow, .framer-P2DjR.framer-v-z2r1vi .framer-vemgkj-container, .framer-P2DjR.framer-v-z2r1vi .framer-1l9hxhc-container { width: 100%; }\",\".framer-P2DjR.framer-v-1efs5yf .framer-jee5tr { align-content: flex-start; align-items: flex-start; align-self: start; flex: none; flex-direction: column; gap: 48px; justify-self: start; padding: 16px 0px 0px 0px; width: 200%; }\",\".framer-P2DjR.framer-v-1efs5yf .framer-2rmoue, .framer-P2DjR.framer-v-1efs5yf .framer-1guf86t, .framer-P2DjR.framer-v-z2r1vi .framer-2rmoue, .framer-P2DjR.framer-v-z2r1vi .framer-1guf86t { flex: none; padding: 0px; width: 100%; }\",\".framer-P2DjR.framer-v-1efs5yf .framer-1614nlc { align-self: start; justify-self: start; }\",\".framer-P2DjR.framer-v-1efs5yf .framer-1rmd8rk { height: var(--framer-aspect-ratio-supported, 101px); }\",\".framer-P2DjR.framer-v-z2r1vi.framer-rbwh7v { width: 400px; }\",\".framer-P2DjR.framer-v-z2r1vi .framer-y6bpd0 { gap: 64px; max-width: unset; padding: 40px 0px 8px 0px; }\",\".framer-P2DjR.framer-v-z2r1vi .framer-14ywe4w { flex-direction: column; flex-wrap: wrap; gap: 32px 32px; justify-content: flex-start; padding: 0px 16px 0px 16px; }\",\".framer-P2DjR.framer-v-z2r1vi .framer-5xlcb4 { flex: none; order: 0; padding: 0px; width: 100%; }\",\".framer-P2DjR.framer-v-z2r1vi .framer-tvp5va { flex: none; order: 1; padding: 0px; width: 100%; }\",\".framer-P2DjR.framer-v-z2r1vi .framer-1s55wxd { flex: none; order: 2; padding: 0px; width: 100%; }\",\".framer-P2DjR.framer-v-z2r1vi .framer-jee5tr { align-content: flex-start; align-items: flex-start; flex: none; flex-direction: column; gap: 64px; order: 4; padding: 24px 0px 0px 0px; width: 100%; }\",\".framer-P2DjR.framer-v-z2r1vi .framer-1rmd8rk { height: var(--framer-aspect-ratio-supported, 240px); }\",...sharedStyle.css,...sharedStyle1.css];/**\n * This is a generated Framer component.\n * @framerIntrinsicHeight 616\n * @framerIntrinsicWidth 1440\n * @framerCanvasComponentVariantDetails {\"propertyName\":\"variant\",\"data\":{\"default\":{\"layout\":[\"fixed\",\"auto\"]},\"ioCDYYlJI\":{\"layout\":[\"fixed\",\"auto\"]},\"iUH5ZuV9t\":{\"layout\":[\"fixed\",\"auto\"]}}}\n * @framerImmutableVariables true\n * @framerDisplayContentsDiv false\n * @framerAutoSizeImages true\n * @framerComponentViewportWidth true\n * @framerColorSyntax true\n */const FramerMJ1a0PqaK=withCSS(Component,css,\"framer-P2DjR\");export default FramerMJ1a0PqaK;FramerMJ1a0PqaK.displayName=\"Footer\";FramerMJ1a0PqaK.defaultProps={height:616,width:1440};addPropertyControls(FramerMJ1a0PqaK,{variant:{options:[\"hhLJRLmnM\",\"ioCDYYlJI\",\"iUH5ZuV9t\"],optionTitles:[\"Variant 1\",\"Tablet\",\"Mobile\"],title:\"Variant\",type:ControlType.Enum}});addFonts(FramerMJ1a0PqaK,[{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\"}]},...FooterLinkFonts,...FooterLogoFonts,...getFontsFromSharedStyle(sharedStyle.fonts),...getFontsFromSharedStyle(sharedStyle1.fonts)],{supportsExplicitInterCodegen:true});FramerMJ1a0PqaK.loader={load:(props,context)=>Promise.allSettled([queryCache.get(query1(),context.locale).preload(),queryCache.get(query3(),context.locale).preload()])};\nexport const __FramerMetadata__ = {\"exports\":{\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"default\":{\"type\":\"reactComponent\",\"name\":\"FramerMJ1a0PqaK\",\"slots\":[],\"annotations\":{\"framerImmutableVariables\":\"true\",\"framerDisplayContentsDiv\":\"false\",\"framerIntrinsicHeight\":\"616\",\"framerColorSyntax\":\"true\",\"framerCanvasComponentVariantDetails\":\"{\\\"propertyName\\\":\\\"variant\\\",\\\"data\\\":{\\\"default\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"auto\\\"]},\\\"ioCDYYlJI\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"auto\\\"]},\\\"iUH5ZuV9t\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"auto\\\"]}}}\",\"framerAutoSizeImages\":\"true\",\"framerComponentViewportWidth\":\"true\",\"framerIntrinsicWidth\":\"1440\",\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","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(){return e||(0,t[i(t)[0]])((e={exports:{}}).exports,e),e.exports;},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()),g={Uint8:1,Uint16:2,Uint32:4,BigUint64:8,Int8:1,Int16:2,Int32:4,BigInt64:8,Float32:4,Float64:8},p=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){this.bytes=t,c(this,\"offset\",0),c(this,\"view\"),c(this,\"decoder\",new TextDecoder),this.view=v(this.bytes);}};function v(t){return new DataView(t.buffer,t.byteOffset,t.byteLength);}// src/code-generation/components/cms/bundled/DatabaseDictionaryIndex.ts\nimport{ControlType as y}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=v(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\",v(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){this.chunkId=t,this.offset=e,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 tp(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 tv(t){return{type:P.String,value:t.readString()};}function ty(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 tv(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 ty(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),tp(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 p(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){this.fieldNames=t,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!==y.String||e.value?.type!==y.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!==y.String||e.value?.type!==y.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!==y.String||e.value?.type!==y.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){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 p(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){this.id=t,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 p(e),i=tA.read(n),s=t[r];return I(s,\"Missing pointer\"),{pointer:s,data:i.getData()};});}));}},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){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{ComponentPresetsConsumer as t,Link as r,motion as n}from\"framer\";// ../../library/src/router/lazy.tsx\nimport{isValidElement as o}from\"react\";// ../../library/src/utils/utils.ts\nvar i,a=\"undefined\"!=typeof window,l=a&&\"function\"==typeof window.requestIdleCallback,u=\"preload\";function f(e){return\"object\"==typeof e&&null!==e&&!/*#__PURE__*/o(e)&&u in e;}// src/code-generation/components/cms/bundled/getRichTextJsonResolver.tsx?bundle\nimport{Fragment as c,createElement as p}from\"react\";// src/code-generation/components/cms/bundled/assert.ts\nfunction s(e,...t){if(!e)throw Error(\"Assertion Error\"+(t.length>0?\": \"+t.join(\" \"):\"\"));}// src/code-generation/components/cms/bundled/getRichTextJsonResolver.tsx?bundle\nvar m=((i=m||{})[i.Fragment=1]=\"Fragment\",i[i.Link=2]=\"Link\",i[i.Module=3]=\"Module\",i[i.Tag=4]=\"Tag\",i[i.Text=5]=\"Text\",i);function d(o){let i=/* @__PURE__ */new Map;return a=>{let l=i.get(a);if(l)return l;let u=JSON.parse(a),m=function i(a){switch(a[0]){case 1/* Fragment */:{let[,...e]=a,t=e.map(i);return /*#__PURE__*/p(c,void 0,...t);}case 2/* Link */:{let[,e,...t]=a,n=t.map(i);return /*#__PURE__*/p(r,e,...n);}case 3/* Module */:{let[,r,n,l]=a;for(let e of l){let t=n[e];t&&(n[e]=i(t));}let u=o[r];return s(u,\"Module not found\"),f(u)&&u.preload(),/*#__PURE__*/e(t,{componentIdentifier:r,children:t=>/*#__PURE__*/e(u,{...t,...n})});}case 4/* Tag */:{let[,e,t,...r]=a,o=r.map(i);if(\"a\"===e)return /*#__PURE__*/p(n.a,t,...o);return /*#__PURE__*/p(e,t,...o);}case 5/* Text */:{let[,e]=a;return e;}}}(u);return i.set(a,m),m;};}export{m as RichTextJsonType,d 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 (89f6630)\nimport{addPropertyControls as e,ControlType as l,lazy as t,QueryEngine as a}from\"framer\";import{DatabaseCollection as r,DatabaseDictionaryIndex as o}from\"./XfEDg_QyV-0.js\";import{getRichTextJsonResolver as i}from\"./XfEDg_QyV-1.js\";let m=t(()=>import(\"https://framerusercontent.com/modules/NEd4VmDdsxM3StIUbddO/4sbLnuatuUfmOTwFGSJM/YouTube.js\"),\"Youtube\"),n={biTrAKx_F:{isNullable:!0,type:l.String},cfHRUNKAJ:{isNullable:!0,type:l.File},CFpr_lyI5:{isNullable:!0,type:l.Link},createdAt:{isNullable:!0,type:l.Date},DuahtPX4U:{isNullable:!0,type:l.String},EnzLQmrqU:{isNullable:!0,type:l.Link},FYl1GB8ce:{isNullable:!0,type:l.Boolean},fZ4JODRrE:{isNullable:!0,type:l.ResponsiveImage},gfGscdiJB:{isNullable:!0,type:l.Enum},gFYDsyzVr:{isNullable:!0,type:l.ResponsiveImage},gu4RKnKdS:{isNullable:!0,type:l.String},h0MQ4FWA5:{isNullable:!0,type:l.String},HuektrRaT:{isNullable:!0,type:l.String},id:{isNullable:!1,type:l.String},IkDVC6pYb:{isNullable:!0,type:l.String},IkmhuoTOC:{isNullable:!0,type:l.Boolean},J9SLpOaYq:{isNullable:!0,type:l.ResponsiveImage},JiIuwPQWD:{isNullable:!0,type:l.String},knoHPPLTC:{isNullable:!0,type:l.ResponsiveImage},lfjUKD_KY:{isNullable:!0,type:l.String},nextItemId:{isNullable:!0,type:l.String},NLKrtgZv6:{isNullable:!0,type:l.String},otTxC4S8c:{isNullable:!0,type:l.RichText},OwYklj3CZ:{isNullable:!0,type:l.ResponsiveImage},PfJA_S1gq:{isNullable:!0,type:l.String},Pi9ucydWo:{isNullable:!0,type:l.String},previousItemId:{isNullable:!0,type:l.String},q5RRAbgco:{isNullable:!0,type:l.Boolean},qQBluktHJ:{isNullable:!0,type:l.File},r0TinkuHf:{isNullable:!0,type:l.String},S39mTYCyU:{isNullable:!0,type:l.RichText},sGzInftsL:{isNullable:!0,type:l.RichText},sutcPtmJ4:{isNullable:!0,type:l.String},TQYbuConc:{isNullable:!0,type:l.File},TwB9dcEb9:{isNullable:!0,type:l.String},U0UtSlV3d:{isNullable:!0,type:l.String},updatedAt:{isNullable:!0,type:l.Date},V2dDmeAyV:{isNullable:!0,type:l.String},Vim2faoFo:{isNullable:!0,type:l.ResponsiveImage},W8uH9K5mc:{isNullable:!0,type:l.RichText},WukW44MT4:{isNullable:!0,type:l.String},XNE3Lfe1W:{isNullable:!0,type:l.String},xUM8od1XT:{isNullable:!0,type:l.ResponsiveImage},y8DdwuCwa:{isNullable:!0,type:l.ResponsiveImage},YcmuR7JxA:{isNullable:!0,type:l.Boolean},Za1Yw7_iZ:{isNullable:!0,type:l.String},zbhQ1HxYC:{isNullable:!0,type:l.String}},c=[\"id\"],u={type:1},s=[\"previousItemId\"],f=[\"nextItemId\"],d=[\"id\",\"sutcPtmJ4\"],p=[\"sutcPtmJ4\",\"id\"],y=[\"V2dDmeAyV\"],g={type:0},h=[\"sutcPtmJ4\"],w=[\"U0UtSlV3d\"],S=[\"gfGscdiJB\"],V=[\"NLKrtgZv6\"],N=[\"WukW44MT4\"],R=[\"J9SLpOaYq\"],x=[\"HuektrRaT\"],D=[\"XNE3Lfe1W\"],L=[\"Vim2faoFo\"],b=[\"r0TinkuHf\"],U=[\"fZ4JODRrE\"],E=[\"cfHRUNKAJ\"],Q=[\"knoHPPLTC\"],T=[\"q5RRAbgco\"],I=[\"h0MQ4FWA5\"],_=[\"PfJA_S1gq\"],X=[\"biTrAKx_F\"],B=[\"gu4RKnKdS\"],C=[\"Za1Yw7_iZ\"],P=[\"JiIuwPQWD\"],k=[\"S39mTYCyU\"],v=[\"sGzInftsL\"],Y=[\"IkmhuoTOC\"],J=[\"IkDVC6pYb\"],A=[\"lfjUKD_KY\"],F=[\"y8DdwuCwa\"],H=[\"qQBluktHJ\"],K=[\"gFYDsyzVr\"],O=[\"W8uH9K5mc\"],W=[\"YcmuR7JxA\"],M=[\"DuahtPX4U\"],q=[\"Pi9ucydWo\"],z=[\"zbhQ1HxYC\"],G=[\"EnzLQmrqU\"],Z=[\"TwB9dcEb9\"],j=[\"CFpr_lyI5\"],$=[\"FYl1GB8ce\"],ee=[\"xUM8od1XT\"],el=[\"TQYbuConc\"],et=[\"OwYklj3CZ\"],ea=[\"otTxC4S8c\"],er=[],eo=e=>{let l=er[e];if(l)return l().then(e=>e.default);},ei={\"module:NEd4VmDdsxM3StIUbddO/4sbLnuatuUfmOTwFGSJM/YouTube.js:Youtube\":m},em=i(ei),en=new a,ec={collectionByLocaleId:{default:new r({chunks:[new URL(\"./XfEDg_QyV-chunk-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")],id:\"790da3b2-9447-476c-91f1-25f8b54973e1default\",indexes:[new o({collation:u,collectionSchema:n,fieldNames:c,range:{from:0,to:337},url:new URL(\"./XfEDg_QyV-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new o({collation:u,collectionSchema:n,fieldNames:s,range:{from:337,to:673},url:new URL(\"./XfEDg_QyV-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new o({collation:u,collectionSchema:n,fieldNames:f,range:{from:673,to:1005},url:new URL(\"./XfEDg_QyV-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new o({collation:u,collectionSchema:n,fieldNames:d,range:{from:1005,to:1965},url:new URL(\"./XfEDg_QyV-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new o({collation:u,collectionSchema:n,fieldNames:p,range:{from:1965,to:2925},url:new URL(\"./XfEDg_QyV-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new o({collation:g,collectionSchema:n,fieldNames:y,range:{from:2925,to:3771},url:new URL(\"./XfEDg_QyV-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new o({collation:g,collectionSchema:n,fieldNames:h,range:{from:3771,to:4543},url:new URL(\"./XfEDg_QyV-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new o({collation:g,collectionSchema:n,fieldNames:w,range:{from:4543,to:4887},url:new URL(\"./XfEDg_QyV-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new o({collation:g,collectionSchema:n,fieldNames:S,range:{from:4887,to:5231},url:new URL(\"./XfEDg_QyV-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new o({collation:g,collectionSchema:n,fieldNames:V,range:{from:5231,to:6010},url:new URL(\"./XfEDg_QyV-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new o({collation:g,collectionSchema:n,fieldNames:N,range:{from:6010,to:8508},url:new URL(\"./XfEDg_QyV-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new o({collation:g,collectionSchema:n,fieldNames:R,range:{from:8508,to:17142},url:new URL(\"./XfEDg_QyV-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new o({collation:g,collectionSchema:n,fieldNames:x,range:{from:17142,to:18007},url:new URL(\"./XfEDg_QyV-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new o({collation:g,collectionSchema:n,fieldNames:D,range:{from:18007,to:19278},url:new URL(\"./XfEDg_QyV-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new o({collation:g,collectionSchema:n,fieldNames:L,range:{from:19278,to:27892},url:new URL(\"./XfEDg_QyV-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new o({collation:g,collectionSchema:n,fieldNames:b,range:{from:27892,to:30296},url:new URL(\"./XfEDg_QyV-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new o({collation:g,collectionSchema:n,fieldNames:U,range:{from:30296,to:38936},url:new URL(\"./XfEDg_QyV-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new o({collation:g,collectionSchema:n,fieldNames:E,range:{from:38936,to:39111},url:new URL(\"./XfEDg_QyV-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new o({collation:g,collectionSchema:n,fieldNames:Q,range:{from:39111,to:39286},url:new URL(\"./XfEDg_QyV-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new o({collation:g,collectionSchema:n,fieldNames:T,range:{from:39286,to:39474},url:new URL(\"./XfEDg_QyV-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new o({collation:g,collectionSchema:n,fieldNames:I,range:{from:39474,to:40734},url:new URL(\"./XfEDg_QyV-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new o({collation:g,collectionSchema:n,fieldNames:_,range:{from:40734,to:41929},url:new URL(\"./XfEDg_QyV-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new o({collation:g,collectionSchema:n,fieldNames:X,range:{from:41929,to:43301},url:new URL(\"./XfEDg_QyV-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new o({collation:g,collectionSchema:n,fieldNames:B,range:{from:43301,to:43818},url:new URL(\"./XfEDg_QyV-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new o({collation:g,collectionSchema:n,fieldNames:C,range:{from:43818,to:44677},url:new URL(\"./XfEDg_QyV-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new o({collation:g,collectionSchema:n,fieldNames:P,range:{from:44677,to:47001},url:new URL(\"./XfEDg_QyV-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new o({collation:g,collectionSchema:n,fieldNames:k,range:{from:47001,to:56489},url:new URL(\"./XfEDg_QyV-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new o({collation:g,collectionSchema:n,fieldNames:v,range:{from:56489,to:80528},url:new URL(\"./XfEDg_QyV-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new o({collation:g,collectionSchema:n,fieldNames:Y,range:{from:80528,to:80716},url:new URL(\"./XfEDg_QyV-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new o({collation:g,collectionSchema:n,fieldNames:J,range:{from:80716,to:81226},url:new URL(\"./XfEDg_QyV-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new o({collation:g,collectionSchema:n,fieldNames:A,range:{from:81226,to:82304},url:new URL(\"./XfEDg_QyV-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new o({collation:g,collectionSchema:n,fieldNames:F,range:{from:82304,to:82479},url:new URL(\"./XfEDg_QyV-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new o({collation:g,collectionSchema:n,fieldNames:H,range:{from:82479,to:82654},url:new URL(\"./XfEDg_QyV-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new o({collation:g,collectionSchema:n,fieldNames:K,range:{from:82654,to:82829},url:new URL(\"./XfEDg_QyV-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new o({collation:g,collectionSchema:n,fieldNames:O,range:{from:82829,to:114327},url:new URL(\"./XfEDg_QyV-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new o({collation:g,collectionSchema:n,fieldNames:W,range:{from:114327,to:114515},url:new URL(\"./XfEDg_QyV-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new o({collation:g,collectionSchema:n,fieldNames:M,range:{from:114515,to:115069},url:new URL(\"./XfEDg_QyV-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new o({collation:g,collectionSchema:n,fieldNames:q,range:{from:115069,to:116291},url:new URL(\"./XfEDg_QyV-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new o({collation:g,collectionSchema:n,fieldNames:z,range:{from:116291,to:116681},url:new URL(\"./XfEDg_QyV-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new o({collation:g,collectionSchema:n,fieldNames:G,range:{from:116681,to:117849},url:new URL(\"./XfEDg_QyV-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new o({collation:g,collectionSchema:n,fieldNames:Z,range:{from:117849,to:118249},url:new URL(\"./XfEDg_QyV-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new o({collation:g,collectionSchema:n,fieldNames:j,range:{from:118249,to:118801},url:new URL(\"./XfEDg_QyV-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new o({collation:g,collectionSchema:n,fieldNames:$,range:{from:118801,to:118989},url:new URL(\"./XfEDg_QyV-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new o({collation:g,collectionSchema:n,fieldNames:ee,range:{from:118989,to:121804},url:new URL(\"./XfEDg_QyV-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new o({collation:g,collectionSchema:n,fieldNames:el,range:{from:121804,to:121979},url:new URL(\"./XfEDg_QyV-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new o({collation:g,collectionSchema:n,fieldNames:et,range:{from:121979,to:122154},url:new URL(\"./XfEDg_QyV-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new o({collation:g,collectionSchema:n,fieldNames:ea,range:{from:122154,to:188111},url:new URL(\"./XfEDg_QyV-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")})],resolveRichText:em,resolveVectorSetItem:eo,schema:n})},displayName:\"Articles\",id:\"790da3b2-9447-476c-91f1-25f8b54973e1\"};export default ec;e(ec,{V2dDmeAyV:{defaultValue:\"\",title:\"Title\",type:l.String},sutcPtmJ4:{preventLocalization:!0,title:\"Slug\",type:l.String},U0UtSlV3d:{dataIdentifier:\"local-module:collection/Z_CYdM7oA:default\",title:\"Author\",type:l.CollectionReference},gfGscdiJB:{defaultValue:\"pBkby9U4d\",options:[\"pBkby9U4d\",\"ElvanSx9f\",\"eSsFvMuQE\"],optionTitles:[\"Green\",\"Orange\",\"Pink\"],title:\"Color Theme\",type:l.Enum},NLKrtgZv6:{defaultValue:\"\",displayTextArea:!1,preventLocalization:!1,title:\"SEO Title\",type:l.String},WukW44MT4:{defaultValue:\"\",displayTextArea:!0,preventLocalization:!1,title:\"SEO Description\",type:l.String},J9SLpOaYq:{title:\"Share Image\",type:l.ResponsiveImage},HuektrRaT:{defaultValue:\"\",displayTextArea:!0,title:\"Preview - Title\",type:l.String},XNE3Lfe1W:{defaultValue:\"\",displayTextArea:!0,maxLength:150,title:\"Preview - Copy\",type:l.String},Vim2faoFo:{title:\"Preview - Thumbnail\",type:l.ResponsiveImage},r0TinkuHf:{defaultValue:\"\",displayTextArea:!0,preventLocalization:!1,title:\"Hero - Intro\",type:l.String},fZ4JODRrE:{title:\"Hero - Image\",type:l.ResponsiveImage},cfHRUNKAJ:{allowedFileTypes:[\".mp4\"],title:\"Hero - Video\",type:l.File},knoHPPLTC:{title:\"Hero - Video - Poster\",type:l.ResponsiveImage},q5RRAbgco:{defaultValue:!0,title:\"TLDR - Visible\",type:l.Boolean},h0MQ4FWA5:{defaultValue:\"\",title:\"TLDR - Item 1\",type:l.String},PfJA_S1gq:{defaultValue:\"\",title:\"TLDR - Item 2\",type:l.String},biTrAKx_F:{defaultValue:\"\",title:\"TLDR - Item 3\",type:l.String},gu4RKnKdS:{defaultValue:\"\",title:\"TLDR - Item 4\",type:l.String},Za1Yw7_iZ:{defaultValue:\"\",title:\"Intro - Title\",type:l.String},JiIuwPQWD:{defaultValue:\"\",displayTextArea:!0,title:\"Intro - Intro\",type:l.String},S39mTYCyU:{defaultValue:\"\",title:\"Intro - Copy\",type:l.RichText},sGzInftsL:{defaultValue:\"\",title:\"Main Body - 1 - Copy\",type:l.RichText},IkmhuoTOC:{defaultValue:!0,title:\"Promo Visible\",type:l.Boolean},IkDVC6pYb:{defaultValue:\"\",title:\"Promo - Title\",type:l.String},lfjUKD_KY:{defaultValue:\"\",title:\"Promo - Copy\",type:l.String},y8DdwuCwa:{title:\"Promo - Image\",type:l.ResponsiveImage},qQBluktHJ:{allowedFileTypes:[\".mp4\"],title:\"Promo - Video\",type:l.File},gFYDsyzVr:{title:\"Promo - Video - Poster\",type:l.ResponsiveImage},W8uH9K5mc:{defaultValue:\"\",title:\"Main Body - 2 - Copy\",type:l.RichText},YcmuR7JxA:{defaultValue:!0,title:\"Banner - Visible\",type:l.Boolean},DuahtPX4U:{defaultValue:\"\",title:\"Banner - Title\",type:l.String},Pi9ucydWo:{defaultValue:\"\",title:\"Banner - Copy\",type:l.String},zbhQ1HxYC:{defaultValue:\"\",title:\"Banner - Prim. Button - Text\",type:l.String},EnzLQmrqU:{title:\"Banner - Prim. Button - Link\",type:l.Link},TwB9dcEb9:{defaultValue:\"\",title:\"Banner - Sec. Button - Copy\",type:l.String},CFpr_lyI5:{title:\"Banner - Sec. Button - Link\",type:l.Link},FYl1GB8ce:{defaultValue:!1,title:\"Banner - Media Visible\",type:l.Boolean},xUM8od1XT:{title:\"Banner - Image\",type:l.ResponsiveImage},TQYbuConc:{allowedFileTypes:[\".mp4\"],title:\"Banner - Video\",type:l.File},OwYklj3CZ:{title:\"Banner - Video - Poster\",type:l.ResponsiveImage},otTxC4S8c:{defaultValue:\"\",title:\"Main Body - 3 - Copy\",type:l.RichText},createdAt:{title:\"Created\",type:l.Date},updatedAt:{title:\"Updated\",type:l.Date},previousItemId:{dataIdentifier:\"local-module:collection/XfEDg_QyV:default\",title:\"Previous\",type:l.CollectionReference},nextItemId:{dataIdentifier:\"local-module:collection/XfEDg_QyV:default\",title:\"Next\",type:l.CollectionReference}});export const gfGscdiJBToDisplayName=(e,l)=>{switch(l?.fallback,e){case\"pBkby9U4d\":return\"Green\";case\"ElvanSx9f\":return\"Orange\";case\"eSsFvMuQE\":return\"Pink\";default:return\"\";}};export const enumToDisplayNameFunctions={gfGscdiJB:gfGscdiJBToDisplayName};export const utils={async getSlugByRecordId(e,l){let[t]=await en.query({from:{data:ec,type:\"Collection\"},limit:{type:\"LiteralValue\",value:1},select:[{name:\"sutcPtmJ4\",type:\"Identifier\"}],where:{left:{name:\"id\",type:\"Identifier\"},operator:\"==\",right:{type:\"LiteralValue\",value:e},type:\"BinaryOperation\"}},l);return t?.sutcPtmJ4;},async getRecordIdBySlug(e,l){let[t]=await en.query({from:{data:ec,type:\"Collection\"},limit:{type:\"LiteralValue\",value:1},select:[{name:\"id\",type:\"Identifier\"}],where:{left:{name:\"sutcPtmJ4\",type:\"Identifier\"},operator:\"==\",right:{type:\"LiteralValue\",value:e},type:\"BinaryOperation\"}},l);return t?.id;}};\nexport const __FramerMetadata__ = {\"exports\":{\"gfGscdiJBToDisplayName\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"default\":{\"type\":\"data\",\"name\":\"data\",\"annotations\":{\"framerColorSyntax\":\"false\",\"framerData\":\"true\",\"framerCollectionId\":\"XfEDg_QyV\",\"framerContractVersion\":\"1\",\"framerEnumToDisplayNameUtils\":\"2\",\"framerAutoSizeImages\":\"true\",\"framerRecordIdKey\":\"id\",\"framerSlug\":\"sutcPtmJ4\",\"framerCollectionUtils\":\"1\"}},\"utils\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"enumToDisplayNameFunctions\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// Generated by Framer (50fb820)\nimport{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{addFonts,addPropertyControls,ComponentViewportProvider,ControlType,cx,forwardLoader,getFonts,getFontsFromSharedStyle,getLoadingLazyAtYPosition,Image,Link,RichText,SmartComponentScopedContainer,useComponentViewport,useLocaleInfo,useVariantState,withCSS,withFX,withOptimizedAppearEffect}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/TDkARzmDOWBAhM45qCn0/ZtObCraX9NwmaDkndcmR/CENc_xTn7.js\";import*as sharedStyle1 from\"https://framerusercontent.com/modules/0S98ieSFri1jRXhiUfjj/tbqjR4Dv9nWqzK37x8Cj/WLOnYD1bn.js\";import TextLink from\"https://framerusercontent.com/modules/HSmFh6rNkXvYEDY8qIkD/nvrxVrynoGOGEVzacEfi/TkPFXFW01.js\";const TextLinkFonts=getFonts(TextLink);const SmartComponentScopedContainerWithFXWithOptimizedAppearEffect=withOptimizedAppearEffect(withFX(SmartComponentScopedContainer));const enabledGestures={jgLrQeT8U:{hover:true}};const cycleOrder=[\"dz2vJRwDL\",\"jgLrQeT8U\",\"FDXhoJsJO\"];const serializationHash=\"framer-TN3v7\";const variantClassNames={dz2vJRwDL:\"framer-v-no6pnj\",FDXhoJsJO:\"framer-v-vuaxge\",jgLrQeT8U:\"framer-v-1b6w0qk\"};function addPropertyOverrides(overrides,...variants){const nextOverrides={};variants?.forEach(variant=>variant&&Object.assign(nextOverrides,overrides[variant]));return nextOverrides;}const Opojs7YFR=undefined;const hyWz5Kh5E=undefined;const sgQnmvMym=undefined;const GE8Y275UW=undefined;const eZMZyfKcp=undefined;const RyNC8ubyV=undefined;const zH6wfal_e=undefined;const LnbhwMt2n=undefined;const i5qDcydTf=undefined;const WK2J3bAG0=undefined;const transition1={delay:0,duration:.4,ease:[.55,0,.2,1],type:\"tween\"};const transition2={delay:0,duration:.3,ease:[.55,0,.2,1],type:\"tween\"};const toResponsiveImage=value=>{if(typeof value===\"object\"&&value!==null&&typeof value.src===\"string\"){return value;}return typeof value===\"string\"?{src:value}:undefined;};const transition3={delay:.85,duration:.5,ease:[.25,.3,.2,1],type:\"tween\"};const animation={opacity:.7,rotate:0,rotateX:0,rotateY:0,scale:1,skewX:0,skewY:0,transition:transition3,x:0,y:0};const animation1={opacity:.001,rotate:0,rotateX:0,rotateY:0,scale:1,skewX:0,skewY:0,x:0,y:6};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={Default:\"dz2vJRwDL\",Menu:\"jgLrQeT8U\",Mobile:\"FDXhoJsJO\"};const Variants=motion.create(React.Fragment);const getProps=({category,categoryColor,height,id,image,link,linkText,linkUnderlineColor,linkVisible,text,textColor,title,width,...props})=>{return{...props,eZMZyfKcp:textColor??props.eZMZyfKcp??\"var(--token-3a3b2bb2-cb19-4140-bd1d-a5dd96e6b197, rgb(255, 248, 237))\",GE8Y275UW:category??props.GE8Y275UW??\"About Us\",hyWz5Kh5E:image??props.hyWz5Kh5E??{alt:\"\",pixelHeight:320,pixelWidth:320,src:\"https://framerusercontent.com/images/UTFJAOi0BXwPmhU5ntDYH5TX4.jpg?width=320&height=320\"},i5qDcydTf:linkText??props.i5qDcydTf??\"View case study\",LnbhwMt2n:linkVisible??props.LnbhwMt2n,Opojs7YFR:link??props.Opojs7YFR,RyNC8ubyV:title??props.RyNC8ubyV??\"We’re change experts\",sgQnmvMym:categoryColor??props.sgQnmvMym??\"var(--token-e8a4e18d-cd37-45e5-ad8f-7121c62c6847, rgb(182, 245, 150))\",variant:humanReadableVariantMap[props.variant]??props.variant??\"dz2vJRwDL\",WK2J3bAG0:linkUnderlineColor??props.WK2J3bAG0??{borderBottomWidth:1,borderColor:\"var(--token-3a3b2bb2-cb19-4140-bd1d-a5dd96e6b197, rgb(255, 248, 237))\",borderLeftWidth:0,borderRightWidth:0,borderStyle:\"solid\",borderTopWidth:0},zH6wfal_e:text??props.zH6wfal_e??\"We’ll simplify the chaos, unlock inventive thinking, gather evidence to back up ambitious ideas and run small scale experiments.\"};};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,hyWz5Kh5E,GE8Y275UW,sgQnmvMym,RyNC8ubyV,zH6wfal_e,eZMZyfKcp,LnbhwMt2n,i5qDcydTf,Opojs7YFR,WK2J3bAG0,...restProps}=getProps(props);const{baseVariant,classNames,clearLoadingGesture,gestureHandlers,gestureVariant,isLoading,setGestureState,setVariant,variants}=useVariantState({cycleOrder,defaultVariant:\"dz2vJRwDL\",enabledGestures,ref:refBinding,variant,variantClassNames});const layoutDependency=createLayoutDependency(props,variants);const sharedStyleClassNames=[sharedStyle.className,sharedStyle1.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,...addPropertyOverrides({jgLrQeT8U:{value:transition2}},baseVariant,gestureVariant),children:/*#__PURE__*/_jsx(Link,{motionChild:true,nodeId:\"dz2vJRwDL\",scopeId:\"NeoxTEQgN\",...addPropertyOverrides({jgLrQeT8U:{href:Opojs7YFR,openInNewTab:false,smoothScroll:true}},baseVariant,gestureVariant),children:/*#__PURE__*/_jsxs(motion.a,{...restProps,...gestureHandlers,className:`${cx(scopingClassNames,\"framer-no6pnj\",className,classNames)} framer-1ipkur7`,\"data-framer-name\":\"Default\",layoutDependency:layoutDependency,layoutId:\"dz2vJRwDL\",ref:refBinding,style:{...style},...addPropertyOverrides({\"jgLrQeT8U-hover\":{\"data-framer-name\":undefined},FDXhoJsJO:{\"data-framer-name\":\"Mobile\"},jgLrQeT8U:{\"data-framer-name\":\"Menu\"}},baseVariant,gestureVariant),children:[/*#__PURE__*/_jsx(motion.div,{className:\"framer-1cnnfe1\",\"data-framer-name\":\"picture\",layoutDependency:layoutDependency,layoutId:\"uURDVswVi\",style:{backgroundColor:\"rgb(255, 255, 255)\",borderBottomLeftRadius:4,borderBottomRightRadius:4,borderTopLeftRadius:4,borderTopRightRadius:4},variants:{\"jgLrQeT8U-hover\":{borderBottomLeftRadius:24,borderBottomRightRadius:24,borderTopLeftRadius:24,borderTopRightRadius:24}},children:/*#__PURE__*/_jsx(Image,{background:{alt:\"\",fit:\"fill\",intrinsicHeight:145.45454230190316,intrinsicWidth:145.45454230190316,loading:getLoadingLazyAtYPosition((componentViewport?.y||0)+2+0),pixelHeight:320,pixelWidth:320,sizes:\"180px\",...toResponsiveImage(hyWz5Kh5E)},className:\"framer-2k1kpm\",\"data-framer-name\":\"normal picture\",layoutDependency:layoutDependency,layoutId:\"WB9EkK4F_\",...addPropertyOverrides({FDXhoJsJO:{background:{alt:\"\",fit:\"fill\",intrinsicHeight:145.45454230190316,intrinsicWidth:145.45454230190316,loading:getLoadingLazyAtYPosition((componentViewport?.y||0)+2+0+0),pixelHeight:320,pixelWidth:320,sizes:\"180px\",...toResponsiveImage(hyWz5Kh5E)}}},baseVariant,gestureVariant)})}),/*#__PURE__*/_jsxs(motion.div,{className:\"framer-17h4ew3\",\"data-framer-name\":\"copy\",layoutDependency:layoutDependency,layoutId:\"ZciHuzVAc\",children:[/*#__PURE__*/_jsxs(motion.div,{className:\"framer-1jxdqpa\",\"data-framer-name\":\"Title\",layoutDependency:layoutDependency,layoutId:\"ckmPtl3Qi\",children:[/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{className:\"framer-styles-preset-11unnkq\",\"data-styles-preset\":\"CENc_xTn7\",style:{\"--framer-text-color\":\"var(--extracted-r6o4lv, var(--variable-reference-sgQnmvMym-NeoxTEQgN))\"},children:\"About Us\"})}),className:\"framer-ab0ky6\",\"data-framer-name\":\"About Us\",fonts:[\"Inter\"],layoutDependency:layoutDependency,layoutId:\"RWwi1Rz3S\",style:{\"--extracted-r6o4lv\":\"var(--variable-reference-sgQnmvMym-NeoxTEQgN)\",\"--framer-paragraph-spacing\":\"0px\",\"--variable-reference-sgQnmvMym-NeoxTEQgN\":sgQnmvMym},text:GE8Y275UW,verticalAlignment:\"top\",withExternalLayout:true}),/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.h6,{className:\"framer-styles-preset-lwauge\",\"data-styles-preset\":\"WLOnYD1bn\",style:{\"--framer-text-color\":\"var(--extracted-1w1cjl5, var(--variable-reference-eZMZyfKcp-NeoxTEQgN))\"},children:\"We’re change experts\"})}),className:\"framer-is7xk5\",\"data-framer-name\":\"We’re change experts\",fonts:[\"Inter\"],layoutDependency:layoutDependency,layoutId:\"Q3J2cBOWl\",style:{\"--extracted-1w1cjl5\":\"var(--variable-reference-eZMZyfKcp-NeoxTEQgN)\",\"--framer-paragraph-spacing\":\"0px\",\"--variable-reference-eZMZyfKcp-NeoxTEQgN\":eZMZyfKcp},text:RyNC8ubyV,verticalAlignment:\"top\",withExternalLayout:true})]}),/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{className:\"framer-styles-preset-11unnkq\",\"data-styles-preset\":\"CENc_xTn7\",dir:\"auto\",style:{\"--framer-text-color\":\"var(--extracted-r6o4lv, var(--variable-reference-eZMZyfKcp-NeoxTEQgN))\"},children:\"We’ll simplify the chaos, unlock inventive thinking, gather evidence to back up ambitious ideas and run small scale experiments.\"})}),className:\"framer-4a0j26\",\"data-framer-name\":\"We’ll simplify the chaos, unlock inventive thinking, gather evidence to back up ambitious ideas and run small scale experiments.\",fonts:[\"Inter\"],layoutDependency:layoutDependency,layoutId:\"satUOS8Gr\",style:{\"--extracted-r6o4lv\":\"var(--variable-reference-eZMZyfKcp-NeoxTEQgN)\",\"--framer-paragraph-spacing\":\"0px\",\"--variable-reference-eZMZyfKcp-NeoxTEQgN\":eZMZyfKcp,opacity:.7},text:zH6wfal_e,verticalAlignment:\"top\",withExternalLayout:true}),LnbhwMt2n!==false&&/*#__PURE__*/_jsx(ComponentViewportProvider,{height:21,y:(componentViewport?.y||0)+2+0+262.4,...addPropertyOverrides({FDXhoJsJO:{width:`calc(${componentViewport?.width||\"100vw\"} - 12px)`,y:(componentViewport?.y||0)+2+184+0+262.4}},baseVariant,gestureVariant),children:/*#__PURE__*/_jsx(SmartComponentScopedContainerWithFXWithOptimizedAppearEffect,{__perspectiveFX:false,__smartComponentFX:true,__targetOpacity:.7,animate:animation,className:\"framer-97dps6-container\",\"data-framer-appear-id\":\"97dps6\",initial:animation1,layoutDependency:layoutDependency,layoutId:\"fdml8ST7u-container\",nodeId:\"fdml8ST7u\",optimized:true,rendersWithMotion:true,scopeId:\"NeoxTEQgN\",style:{opacity:.7},children:/*#__PURE__*/_jsx(TextLink,{bEO2J6l3S:eZMZyfKcp,CRkqcbL2Z:\"pointer\",F4VKstm46:Opojs7YFR,height:\"100%\",id:\"fdml8ST7u\",layoutId:\"fdml8ST7u\",LkIWwtCYk:WK2J3bAG0,O42oi8gzG:i5qDcydTf,width:\"100%\",...addPropertyOverrides({FDXhoJsJO:{style:{width:\"100%\"}}},baseVariant,gestureVariant)})})})]})]})})})})});});const css=[\"@supports (aspect-ratio: 1) { body { --framer-aspect-ratio-supported: auto; } }\",\".framer-TN3v7.framer-1ipkur7, .framer-TN3v7 .framer-1ipkur7 { display: block; }\",\".framer-TN3v7.framer-no6pnj { align-content: flex-start; align-items: flex-start; display: flex; flex-direction: row; flex-wrap: nowrap; gap: 40px; height: min-content; justify-content: flex-start; overflow: visible; padding: 2px; position: relative; width: 547px; }\",\".framer-TN3v7 .framer-1cnnfe1 { aspect-ratio: 1 / 1; flex: none; height: var(--framer-aspect-ratio-supported, 180px); overflow: hidden; position: relative; width: 180px; will-change: var(--framer-will-change-override, transform); }\",\".framer-TN3v7 .framer-2k1kpm { aspect-ratio: 1 / 1; flex: none; height: var(--framer-aspect-ratio-supported, 180px); left: 0px; overflow: visible; position: absolute; right: 0px; top: 0px; }\",\".framer-TN3v7 .framer-17h4ew3 { align-content: flex-start; align-items: flex-start; display: flex; flex: 1 0 0px; flex-direction: column; flex-wrap: nowrap; gap: 8px; height: min-content; justify-content: flex-start; overflow: visible; padding: 0px; position: relative; width: 1px; }\",\".framer-TN3v7 .framer-1jxdqpa { align-content: flex-start; align-items: flex-start; display: flex; flex: none; flex-direction: column; flex-wrap: nowrap; gap: 4px; height: min-content; justify-content: center; overflow: visible; padding: 4px 0px 4px 0px; position: relative; width: 100%; }\",\".framer-TN3v7 .framer-ab0ky6 { flex: none; height: auto; position: relative; white-space: pre-wrap; width: 117px; word-break: break-word; word-wrap: break-word; }\",\".framer-TN3v7 .framer-is7xk5, .framer-TN3v7 .framer-4a0j26 { flex: none; height: auto; position: relative; white-space: pre-wrap; width: 100%; word-break: break-word; word-wrap: break-word; }\",\".framer-TN3v7 .framer-97dps6-container { flex: none; height: auto; position: relative; width: auto; }\",\".framer-TN3v7.framer-v-1b6w0qk.framer-no6pnj { cursor: pointer; text-decoration: none; }\",\".framer-TN3v7.framer-v-vuaxge.framer-no6pnj { flex-direction: column; gap: 24px; max-width: 180px; width: min-content; }\",\".framer-TN3v7.framer-v-vuaxge .framer-17h4ew3 { align-self: stretch; flex: none; padding: 0px 8px 0px 0px; width: auto; }\",\".framer-TN3v7.framer-v-vuaxge .framer-ab0ky6, .framer-TN3v7.framer-v-vuaxge .framer-97dps6-container { width: 100%; }\",...sharedStyle.css,...sharedStyle1.css];/**\n * This is a generated Framer component.\n * @framerIntrinsicHeight 184\n * @framerIntrinsicWidth 547\n * @framerCanvasComponentVariantDetails {\"propertyName\":\"variant\",\"data\":{\"default\":{\"layout\":[\"fixed\",\"auto\"]},\"jgLrQeT8U\":{\"layout\":[\"fixed\",\"auto\"]},\"FDXhoJsJO\":{\"layout\":[\"auto\",\"auto\"],\"constraints\":[null,\"180px\",null,null]},\"phPNU9LkJ\":{\"layout\":[\"fixed\",\"auto\"]}}}\n * @framerVariables {\"hyWz5Kh5E\":\"image\",\"GE8Y275UW\":\"category\",\"sgQnmvMym\":\"categoryColor\",\"RyNC8ubyV\":\"title\",\"zH6wfal_e\":\"text\",\"eZMZyfKcp\":\"textColor\",\"LnbhwMt2n\":\"linkVisible\",\"i5qDcydTf\":\"linkText\",\"Opojs7YFR\":\"link\",\"WK2J3bAG0\":\"linkUnderlineColor\"}\n * @framerImmutableVariables true\n * @framerDisplayContentsDiv false\n * @framerAutoSizeImages true\n * @framerComponentViewportWidth true\n * @framerColorSyntax true\n */const FramerNeoxTEQgN=withCSS(Component,css,\"framer-TN3v7\");export default FramerNeoxTEQgN;FramerNeoxTEQgN.displayName=\"Small Image Card\";FramerNeoxTEQgN.defaultProps={height:184,width:547};addPropertyControls(FramerNeoxTEQgN,{variant:{options:[\"dz2vJRwDL\",\"jgLrQeT8U\",\"FDXhoJsJO\"],optionTitles:[\"Default\",\"Menu\",\"Mobile\"],title:\"Variant\",type:ControlType.Enum},hyWz5Kh5E:{__defaultAssetReference:\"data:framer/asset-reference,UTFJAOi0BXwPmhU5ntDYH5TX4.jpg?originalFilename=Frame+1948759287.jpg&width=320&height=320\",__vekterDefault:{alt:\"\",assetReference:\"data:framer/asset-reference,UTFJAOi0BXwPmhU5ntDYH5TX4.jpg?originalFilename=Frame+1948759287.jpg&width=320&height=320\"},title:\"Image\",type:ControlType.ResponsiveImage},GE8Y275UW:{defaultValue:\"About Us\",displayTextArea:false,title:\"Category\",type:ControlType.String},onGE8Y275UWChange:{changes:\"GE8Y275UW\",type:ControlType.ChangeHandler},sgQnmvMym:{defaultValue:\"var(--token-e8a4e18d-cd37-45e5-ad8f-7121c62c6847, rgb(182, 245, 150))\",title:\"Category Color\",type:ControlType.Color},RyNC8ubyV:{defaultValue:\"We’re change experts\",displayTextArea:false,title:\"Title\",type:ControlType.String},onRyNC8ubyVChange:{changes:\"RyNC8ubyV\",type:ControlType.ChangeHandler},zH6wfal_e:{defaultValue:\"We’ll simplify the chaos, unlock inventive thinking, gather evidence to back up ambitious ideas and run small scale experiments.\",displayTextArea:true,title:\"Text\",type:ControlType.String},onzH6wfal_eChange:{changes:\"zH6wfal_e\",type:ControlType.ChangeHandler},eZMZyfKcp:{defaultValue:\"var(--token-3a3b2bb2-cb19-4140-bd1d-a5dd96e6b197, rgb(255, 248, 237))\",title:\"Text Color\",type:ControlType.Color},LnbhwMt2n:{defaultValue:false,title:\"Link Visible\",type:ControlType.Boolean},onLnbhwMt2nChange:{changes:\"LnbhwMt2n\",type:ControlType.ChangeHandler},i5qDcydTf:{defaultValue:\"View case study\",title:\"Link Text\",type:ControlType.String},oni5qDcydTfChange:{changes:\"i5qDcydTf\",type:ControlType.ChangeHandler},Opojs7YFR:{title:\"Link\",type:ControlType.Link},WK2J3bAG0:{defaultValue:{borderBottomWidth:1,borderColor:\"var(--token-3a3b2bb2-cb19-4140-bd1d-a5dd96e6b197, rgb(255, 248, 237))\",borderLeftWidth:0,borderRightWidth:0,borderStyle:\"solid\",borderTopWidth:0},title:\"Link Underline Color\",type:ControlType.Border}});addFonts(FramerNeoxTEQgN,[{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\"}]},...TextLinkFonts,...getFontsFromSharedStyle(sharedStyle.fonts),...getFontsFromSharedStyle(sharedStyle1.fonts)],{supportsExplicitInterCodegen:true});FramerNeoxTEQgN.loader={load:(props,context)=>{const locale=context.locale;return Promise.allSettled([forwardLoader(TextLink,{},context)]);}};\nexport const __FramerMetadata__ = {\"exports\":{\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"default\":{\"type\":\"reactComponent\",\"name\":\"FramerNeoxTEQgN\",\"slots\":[],\"annotations\":{\"framerCanvasComponentVariantDetails\":\"{\\\"propertyName\\\":\\\"variant\\\",\\\"data\\\":{\\\"default\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"auto\\\"]},\\\"jgLrQeT8U\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"auto\\\"]},\\\"FDXhoJsJO\\\":{\\\"layout\\\":[\\\"auto\\\",\\\"auto\\\"],\\\"constraints\\\":[null,\\\"180px\\\",null,null]},\\\"phPNU9LkJ\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"auto\\\"]}}}\",\"framerIntrinsicHeight\":\"184\",\"framerIntrinsicWidth\":\"547\",\"framerDisplayContentsDiv\":\"false\",\"framerImmutableVariables\":\"true\",\"framerAutoSizeImages\":\"true\",\"framerContractVersion\":\"1\",\"framerComponentViewportWidth\":\"true\",\"framerVariables\":\"{\\\"hyWz5Kh5E\\\":\\\"image\\\",\\\"GE8Y275UW\\\":\\\"category\\\",\\\"sgQnmvMym\\\":\\\"categoryColor\\\",\\\"RyNC8ubyV\\\":\\\"title\\\",\\\"zH6wfal_e\\\":\\\"text\\\",\\\"eZMZyfKcp\\\":\\\"textColor\\\",\\\"LnbhwMt2n\\\":\\\"linkVisible\\\",\\\"i5qDcydTf\\\":\\\"linkText\\\",\\\"Opojs7YFR\\\":\\\"link\\\",\\\"WK2J3bAG0\\\":\\\"linkUnderlineColor\\\"}\",\"framerColorSyntax\":\"true\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./NeoxTEQgN.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(){return e||(0,t[i(t)[0]])((e={exports:{}}).exports,e),e.exports;},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},p=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){this.bytes=t,c(this,\"offset\",0),c(this,\"view\"),c(this,\"decoder\",new TextDecoder),this.view=v(this.bytes);}};function v(t){return new DataView(t.buffer,t.byteOffset,t.byteLength);}// src/code-generation/components/cms/bundled/DatabaseDictionaryIndex.ts\nimport{ControlType as y}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=v(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\",v(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){this.chunkId=t,this.offset=e,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 tp(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 tv(t){return{type:P.String,value:t.readString()};}function ty(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 tv(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 ty(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),tp(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 p(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){this.fieldNames=t,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!==y.String||e.value?.type!==y.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!==y.String||e.value?.type!==y.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!==y.String||e.value?.type!==y.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){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 p(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){this.id=t,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 p(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){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\":{\"RichTextJsonType\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"getRichTextJsonResolver\":{\"type\":\"reactComponent\",\"name\":\"getRichTextJsonResolver\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// Generated by Framer (a1faaee)\nimport{addPropertyControls as e,ControlType as l,QueryEngine as t}from\"framer\";import{DatabaseCollection as a,DatabaseDictionaryIndex as r}from\"./AydynzuSC-0.js\";import{getRichTextJsonResolver as i}from\"./AydynzuSC-1.js\";let o={Ak1D4WU5z:{isNullable:!0,type:l.String},aLIxOj0uS:{isNullable:!0,type:l.String},b04Ny4hF7:{isNullable:!0,type:l.Boolean},b04q7E4Dp:{isNullable:!0,type:l.VectorSetItem},B24iXJeZs:{isNullable:!0,type:l.String},b3fXnpfYB:{isNullable:!0,type:l.String},B4Ul9J4yG:{isNullable:!0,type:l.String},bZsI1tXE4:{isNullable:!0,type:l.String},createdAt:{isNullable:!0,type:l.Date},DKzEXWyLV:{isNullable:!0,type:l.ResponsiveImage},due_o5xt4:{isNullable:!0,type:l.String},EeDX0T8gg:{isNullable:!0,type:l.String},ENQblSSg5:{isNullable:!0,type:l.String},EQ2XhpBWl:{isNullable:!0,type:l.ResponsiveImage},es7VBuKh5:{isNullable:!0,type:l.String},F_9v1Jh6I:{isNullable:!0,type:l.String},FV34NZ0lP:{isNullable:!0,type:l.String},gmot3_Rb6:{isNullable:!0,type:l.String},HQhGJMtzU:{isNullable:!0,type:l.String},i_m1rEutu:{isNullable:!0,type:l.VectorSetItem},i_uIeyDMh:{isNullable:!0,type:l.String},id:{isNullable:!1,type:l.String},ioGIKpaxS:{isNullable:!0,type:l.String},J11i1rxBu:{isNullable:!0,type:l.File},jhDiS8jAQ:{isNullable:!0,type:l.ResponsiveImage},jQoEoPwRa:{isNullable:!0,type:l.String},JRG8Xzcoz:{isNullable:!0,type:l.VectorSetItem},K7iX6pizd:{isNullable:!0,type:l.String},KY5TzDI2U:{isNullable:!0,type:l.String},lJ2ugcy30:{isNullable:!0,type:l.String},ljrTZwZ7z:{isNullable:!0,type:l.String},lMZ8BfqW2:{isNullable:!0,type:l.String},n52bnwTsE:{isNullable:!0,type:l.String},NECpvgNff:{isNullable:!0,type:l.ResponsiveImage},nextItemId:{isNullable:!0,type:l.String},NgO8GLbZr:{isNullable:!0,type:l.String},p1oDpJmow:{isNullable:!0,type:l.String},previousItemId:{isNullable:!0,type:l.String},rk0oaQO8r:{isNullable:!0,type:l.String},S2SNwqR2S:{isNullable:!0,type:l.Enum},SfDqutk5V:{isNullable:!0,type:l.ResponsiveImage},t9Dfmx5Pw:{isNullable:!0,type:l.String},UF6sqNINh:{isNullable:!0,type:l.Link},uOp22HLwK:{isNullable:!0,type:l.Enum},updatedAt:{isNullable:!0,type:l.Date},VcKHLwLlL:{isNullable:!0,type:l.String},VLB9COz97:{isNullable:!0,type:l.String},WgpBlYmYi:{isNullable:!0,type:l.String},WTEQHqEFz:{isNullable:!0,type:l.ResponsiveImage},X6EdU71JF:{isNullable:!0,type:l.ResponsiveImage},ydDMO7KR4:{isNullable:!0,type:l.File}},n=[\"id\"],m={type:1},u=[\"previousItemId\"],c=[\"nextItemId\"],s=[\"id\",\"VcKHLwLlL\"],d=[\"VcKHLwLlL\",\"id\"],f=[\"i_uIeyDMh\"],p={type:0},y=[\"VcKHLwLlL\"],S=[\"S2SNwqR2S\"],g=[\"Ak1D4WU5z\"],w=[\"UF6sqNINh\"],N=[\"b04Ny4hF7\"],h=[\"KY5TzDI2U\"],L=[\"F_9v1Jh6I\"],C=[\"EQ2XhpBWl\"],z=[\"DKzEXWyLV\"],x=[\"n52bnwTsE\"],A=[\"uOp22HLwK\"],R=[\"lJ2ugcy30\"],I=[\"ioGIKpaxS\"],V=[\"jQoEoPwRa\"],b=[\"es7VBuKh5\"],U=[\"SfDqutk5V\"],T=[\"J11i1rxBu\"],B=[\"jhDiS8jAQ\"],D=[\"aLIxOj0uS\"],E=[\"rk0oaQO8r\"],v=[\"gmot3_Rb6\"],O=[\"FV34NZ0lP\"],K=[\"K7iX6pizd\"],J=[\"b3fXnpfYB\"],F=[\"i_m1rEutu\"],X=[\"due_o5xt4\"],q=[\"NgO8GLbZr\"],k=[\"JRG8Xzcoz\"],H=[\"p1oDpJmow\"],Q=[\"HQhGJMtzU\"],P=[\"b04q7E4Dp\"],Z=[\"t9Dfmx5Pw\"],M=[\"bZsI1tXE4\"],W=[\"X6EdU71JF\"],G=[\"ydDMO7KR4\"],j=[\"WTEQHqEFz\"],Y=[\"ENQblSSg5\"],_=[\"ljrTZwZ7z\"],$=[\"VLB9COz97\"],ee=[\"WgpBlYmYi\"],el=[\"B24iXJeZs\"],et=[\"lMZ8BfqW2\"],ea=[\"B4Ul9J4yG\"],er=[\"EeDX0T8gg\"],ei=[\"NECpvgNff\"],eo=[()=>import(\"https://framerusercontent.com/modules/1gMLVTWBVOfrO83V04G9/1w0W6RUhaMsPEOjeYuLf/iDJ7NVyus.js\"),()=>import(\"https://framerusercontent.com/modules/dRd5hPbtYrINJ6jOrSYB/0epLNF4VHMBbJ6oFnH9p/qAi67Zw25.js\"),()=>import(\"https://framerusercontent.com/modules/SCq51IZtkfNChA1JQjnA/4JKhysJJDInOlz1a9m5B/jhgRT6tX0.js\"),()=>import(\"https://framerusercontent.com/modules/br9WBBz16Dv8Jg7qSTSl/WNEKH26EsC6Y4gGLpB84/Oukku_aaY.js\"),()=>import(\"https://framerusercontent.com/modules/H3vnFOJxUprEpWUDY7i3/zwxeiNyiPT8zP1hQzXUV/xQjMkRUXK.js\"),()=>import(\"https://framerusercontent.com/modules/rxeUiOqustGu2OA8gBBi/CByJvB3pBylXXMmSZ9XO/gNYa1v1zE.js\")],en=e=>{let l=eo[e];if(l)return l().then(e=>e.default);},em={},eu=i(em),ec=new t,es={collectionByLocaleId:{default:new a({chunks:[new URL(\"./AydynzuSC-chunk-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")],id:\"de7bc8d9-af15-4ee7-a3bb-adfd9fe09b52default\",indexes:[new r({collation:m,collectionSchema:o,fieldNames:n,range:{from:0,to:145},url:new URL(\"./AydynzuSC-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:m,collectionSchema:o,fieldNames:u,range:{from:145,to:289},url:new URL(\"./AydynzuSC-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:m,collectionSchema:o,fieldNames:c,range:{from:289,to:429},url:new URL(\"./AydynzuSC-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:m,collectionSchema:o,fieldNames:s,range:{from:429,to:673},url:new URL(\"./AydynzuSC-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:m,collectionSchema:o,fieldNames:d,range:{from:673,to:917},url:new URL(\"./AydynzuSC-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:f,range:{from:917,to:1105},url:new URL(\"./AydynzuSC-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:y,range:{from:1105,to:1273},url:new URL(\"./AydynzuSC-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:S,range:{from:1273,to:1425},url:new URL(\"./AydynzuSC-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:g,range:{from:1425,to:1633},url:new URL(\"./AydynzuSC-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:w,range:{from:1633,to:2671},url:new URL(\"./AydynzuSC-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:N,range:{from:2671,to:2763},url:new URL(\"./AydynzuSC-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:h,range:{from:2763,to:3072},url:new URL(\"./AydynzuSC-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:L,range:{from:3072,to:4058},url:new URL(\"./AydynzuSC-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:C,range:{from:4058,to:4145},url:new URL(\"./AydynzuSC-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:z,range:{from:4145,to:7096},url:new URL(\"./AydynzuSC-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:x,range:{from:7096,to:7538},url:new URL(\"./AydynzuSC-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:A,range:{from:7538,to:7690},url:new URL(\"./AydynzuSC-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:R,range:{from:7690,to:7842},url:new URL(\"./AydynzuSC-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:I,range:{from:7842,to:7960},url:new URL(\"./AydynzuSC-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:V,range:{from:7960,to:8266},url:new URL(\"./AydynzuSC-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:b,range:{from:8266,to:9734},url:new URL(\"./AydynzuSC-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:U,range:{from:9734,to:12685},url:new URL(\"./AydynzuSC-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:T,range:{from:12685,to:12772},url:new URL(\"./AydynzuSC-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:B,range:{from:12772,to:12859},url:new URL(\"./AydynzuSC-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:D,range:{from:12859,to:13107},url:new URL(\"./AydynzuSC-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:E,range:{from:13107,to:13515},url:new URL(\"./AydynzuSC-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:v,range:{from:13515,to:13950},url:new URL(\"./AydynzuSC-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:O,range:{from:13950,to:14344},url:new URL(\"./AydynzuSC-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:K,range:{from:14344,to:14559},url:new URL(\"./AydynzuSC-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:J,range:{from:14559,to:15549},url:new URL(\"./AydynzuSC-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:F,range:{from:15549,to:15656},url:new URL(\"./AydynzuSC-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:X,range:{from:15656,to:15911},url:new URL(\"./AydynzuSC-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:q,range:{from:15911,to:16448},url:new URL(\"./AydynzuSC-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:k,range:{from:16448,to:16555},url:new URL(\"./AydynzuSC-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:H,range:{from:16555,to:16823},url:new URL(\"./AydynzuSC-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:Q,range:{from:16823,to:17405},url:new URL(\"./AydynzuSC-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:P,range:{from:17405,to:17512},url:new URL(\"./AydynzuSC-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:Z,range:{from:17512,to:17758},url:new URL(\"./AydynzuSC-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:M,range:{from:17758,to:18321},url:new URL(\"./AydynzuSC-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:W,range:{from:18321,to:21272},url:new URL(\"./AydynzuSC-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:G,range:{from:21272,to:21359},url:new URL(\"./AydynzuSC-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:j,range:{from:21359,to:21446},url:new URL(\"./AydynzuSC-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:Y,range:{from:21446,to:21669},url:new URL(\"./AydynzuSC-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:_,range:{from:21669,to:22798},url:new URL(\"./AydynzuSC-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:$,range:{from:22798,to:23244},url:new URL(\"./AydynzuSC-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:ee,range:{from:23244,to:23635},url:new URL(\"./AydynzuSC-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:el,range:{from:23635,to:24099},url:new URL(\"./AydynzuSC-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:et,range:{from:24099,to:24502},url:new URL(\"./AydynzuSC-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:ea,range:{from:24502,to:24828},url:new URL(\"./AydynzuSC-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:er,range:{from:24828,to:25139},url:new URL(\"./AydynzuSC-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:p,collectionSchema:o,fieldNames:ei,range:{from:25139,to:25907},url:new URL(\"./AydynzuSC-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")})],resolveRichText:eu,resolveVectorSetItem:en,schema:o})},displayName:\"Resources\",id:\"de7bc8d9-af15-4ee7-a3bb-adfd9fe09b52\"};export default es;e(es,{i_uIeyDMh:{defaultValue:\"\",title:\"Title\",type:l.String},VcKHLwLlL:{preventLocalization:!0,title:\"Slug\",type:l.String},S2SNwqR2S:{defaultValue:\"p4J017zcf\",options:[\"p4J017zcf\",\"Yz7bEpACP\",\"AEPAXBdGl\",\"KAgz4yC3y\",\"toADfV28S\"],optionTitles:[\"Purple\",\"Gren\",\"Orange\",\"Pink\",\"Blue\"],title:\"Color Theme\",type:l.Enum},Ak1D4WU5z:{defaultValue:\"\",displayTextArea:!1,title:\"Button Text\",type:l.String},UF6sqNINh:{title:\"Resource Link\",type:l.Link},b04Ny4hF7:{defaultValue:!1,title:\"Menu Featured\",type:l.Boolean},KY5TzDI2U:{defaultValue:\"\",displayTextArea:!1,title:\"SEO Title\",type:l.String},F_9v1Jh6I:{defaultValue:\"\",displayTextArea:!0,title:\"SEO Description\",type:l.String},EQ2XhpBWl:{title:\"Share Image\",type:l.ResponsiveImage},DKzEXWyLV:{title:\"Preview - Thumbnail\",type:l.ResponsiveImage},n52bnwTsE:{defaultValue:\"\",displayTextArea:!0,title:\"Preview - Copy\",type:l.String},uOp22HLwK:{defaultValue:\"VlkzUqQn1\",options:[\"VlkzUqQn1\",\"Bn3lku0OZ\",\"FVHWPUaqt\",\"vCctd2Hep\"],optionTitles:[\"None\",\"Trending\",\"New\",\"Most Loved\"],title:\"Tag\",type:l.Enum},lJ2ugcy30:{defaultValue:\"\",displayTextArea:!1,placeholder:\"3 Minutes\",title:\"Duration\",type:l.String},ioGIKpaxS:{defaultValue:\"\",displayTextArea:!1,placeholder:\"120k\",title:\"Download Amount\",type:l.String},jQoEoPwRa:{defaultValue:\"\",title:\"Intro - Title\",type:l.String},es7VBuKh5:{defaultValue:\"\",displayTextArea:!0,title:\"Intro - Copy\",type:l.String},SfDqutk5V:{title:\"Intro - Image\",type:l.ResponsiveImage},J11i1rxBu:{allowedFileTypes:[\".mp4\"],title:\"Intro - Video\",type:l.File},jhDiS8jAQ:{title:\"Intro - Video - Poster\",type:l.ResponsiveImage},aLIxOj0uS:{defaultValue:\"\",title:\"TLDR - Title\",type:l.String},rk0oaQO8r:{defaultValue:\"\",displayTextArea:!1,title:\"TLDR - Item 1\",type:l.String},gmot3_Rb6:{defaultValue:\"\",displayTextArea:!1,title:\"TLDR - Item 2\",type:l.String},FV34NZ0lP:{defaultValue:\"\",displayTextArea:!1,title:\"TLDR - Item 3\",type:l.String},K7iX6pizd:{defaultValue:\"\",title:\"Benefits - Title\",type:l.String},b3fXnpfYB:{defaultValue:\"\",displayTextArea:!0,title:\"Benefits - Copy\",type:l.String},i_m1rEutu:{defaultValue:{identifier:\"local-module:vector/iDJ7NVyus:default\",moduleId:\"1gMLVTWBVOfrO83V04G9\"},setModuleId:\"8FUxTtyzmHCcv3ILLwh5\",title:\"Benefits - Card 1 - Icon\",type:l.VectorSetItem},due_o5xt4:{defaultValue:\"\",displayTextArea:!1,title:\"Benefits - Card 1 - Title\",type:l.String},NgO8GLbZr:{defaultValue:\"\",displayTextArea:!0,title:\"Benefits - Card 1 - Copy\",type:l.String},JRG8Xzcoz:{defaultValue:{identifier:\"local-module:vector/iDJ7NVyus:default\",moduleId:\"1gMLVTWBVOfrO83V04G9\"},setModuleId:\"8FUxTtyzmHCcv3ILLwh5\",title:\"Benefits - Card 2 - Icon\",type:l.VectorSetItem},p1oDpJmow:{defaultValue:\"\",displayTextArea:!1,title:\"Benefits - Card 2 - Title\",type:l.String},HQhGJMtzU:{defaultValue:\"\",displayTextArea:!0,title:\"Benefits - Card 2 - Copy\",type:l.String},b04q7E4Dp:{defaultValue:{identifier:\"local-module:vector/iDJ7NVyus:default\",moduleId:\"1gMLVTWBVOfrO83V04G9\"},setModuleId:\"8FUxTtyzmHCcv3ILLwh5\",title:\"Benefits - Card 3 - Icon\",type:l.VectorSetItem},t9Dfmx5Pw:{defaultValue:\"\",displayTextArea:!1,title:\"Benefits - Card 3 - Title\",type:l.String},bZsI1tXE4:{defaultValue:\"\",displayTextArea:!0,title:\"Benefits - Card 3 - Copy\",type:l.String},X6EdU71JF:{title:\"Content - Image\",type:l.ResponsiveImage},ydDMO7KR4:{allowedFileTypes:[\".mp4\"],title:\"Content - Video\",type:l.File},WTEQHqEFz:{title:\"Content - Video - Poster\",type:l.ResponsiveImage},ENQblSSg5:{defaultValue:\"\",title:\"Content - Title\",type:l.String},ljrTZwZ7z:{defaultValue:\"\",displayTextArea:!0,title:\"Content - Intro\",type:l.String},VLB9COz97:{defaultValue:\"\",displayTextArea:!0,title:\"Content - Subtitle\",type:l.String},WgpBlYmYi:{defaultValue:\"\",title:\"Content - List Item 1\",type:l.String},B24iXJeZs:{defaultValue:\"\",title:\"Content - List Item 2\",type:l.String},lMZ8BfqW2:{defaultValue:\"\",title:\"Content - List Item 3\",type:l.String},B4Ul9J4yG:{defaultValue:\"\",title:\"Content - List Item 4\",type:l.String},EeDX0T8gg:{defaultValue:\"\",title:\"Content - List Item 5\",type:l.String},NECpvgNff:{title:\"CTA - Image\",type:l.ResponsiveImage},createdAt:{title:\"Created\",type:l.Date},updatedAt:{title:\"Updated\",type:l.Date},previousItemId:{dataIdentifier:\"local-module:collection/AydynzuSC:default\",title:\"Previous\",type:l.CollectionReference},nextItemId:{dataIdentifier:\"local-module:collection/AydynzuSC:default\",title:\"Next\",type:l.CollectionReference}});export const S2SNwqR2SToDisplayName=(e,l)=>{switch(l?.fallback,e){case\"p4J017zcf\":return\"Purple\";case\"Yz7bEpACP\":return\"Gren\";case\"AEPAXBdGl\":return\"Orange\";case\"KAgz4yC3y\":return\"Pink\";case\"toADfV28S\":return\"Blue\";default:return\"\";}};export const uOp22HLwKToDisplayName=(e,l)=>{switch(l?.fallback,e){case\"VlkzUqQn1\":return\"None\";case\"Bn3lku0OZ\":return\"Trending\";case\"FVHWPUaqt\":return\"New\";case\"vCctd2Hep\":return\"Most Loved\";default:return\"\";}};export const enumToDisplayNameFunctions={S2SNwqR2S:S2SNwqR2SToDisplayName,uOp22HLwK:uOp22HLwKToDisplayName};export const utils={async getSlugByRecordId(e,l){let[t]=await ec.query({from:{data:es,type:\"Collection\"},limit:{type:\"LiteralValue\",value:1},select:[{name:\"VcKHLwLlL\",type:\"Identifier\"}],where:{left:{name:\"id\",type:\"Identifier\"},operator:\"==\",right:{type:\"LiteralValue\",value:e},type:\"BinaryOperation\"}},l);return t?.VcKHLwLlL;},async getRecordIdBySlug(e,l){let[t]=await ec.query({from:{data:es,type:\"Collection\"},limit:{type:\"LiteralValue\",value:1},select:[{name:\"id\",type:\"Identifier\"}],where:{left:{name:\"VcKHLwLlL\",type:\"Identifier\"},operator:\"==\",right:{type:\"LiteralValue\",value:e},type:\"BinaryOperation\"}},l);return t?.id;}};\nexport const __FramerMetadata__ = {\"exports\":{\"uOp22HLwKToDisplayName\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"utils\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"default\":{\"type\":\"data\",\"name\":\"data\",\"annotations\":{\"framerAutoSizeImages\":\"true\",\"framerContractVersion\":\"1\",\"framerRecordIdKey\":\"id\",\"framerColorSyntax\":\"false\",\"framerCollectionUtils\":\"1\",\"framerCollectionId\":\"AydynzuSC\",\"framerEnumToDisplayNameUtils\":\"2\",\"framerSlug\":\"VcKHLwLlL\",\"framerData\":\"true\"}},\"enumToDisplayNameFunctions\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"S2SNwqR2SToDisplayName\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}"],"mappings":"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A,EAAAC,IAAA,CAAA,KAAA,WAAA,EAAAC,IAAA,CAAA,YAAA,IAAA,EAAAC,IAAA,CAAA,WAAA,EAAAC,IAAA,CAAA,KAAA,CAAA,EAAAC,IAAA,CAAA,WAAA,EAAAC,IAAA,CAAA,WAAA,EAAAC,IAAA,CAAA,WAAA,EAAAC,IAAA,CAAA,WAAA,EAAAC,IAAA,CAAA,WAAA,EAAAC,IAAA,CAAA,WAAA,EAAAC,IAAA,CAAA,WAAA,EAAAC,IAAA,CAAA,WAAA,EAAAC,IAAA,CAAA,WAAA,EAAAC,IAAA,CAAA,WAAA,EAAAC,IAAA,CAAA,WAAA,EAAAC,IAAA,CAAA,WAAA,EAAAC,IAAA,CAAA,WAAA,EAAAC,IAAA,CAAA,WAAA,EAAAC,IAAA,CAAA,WAAA,EAAAC,IAAA,CAAA,WAAA,EAAAC,IAAA,CAAA,WAAA,EAAAC,IAAA,CAAA,WAAA,EAAAC,IAAA,CAAA,WAAA,EAAAC,IAAA,CAAA,WAAA,EAAAC,IAAA,CAAA,WAAA,EAAAC,IAAA,CAAA,WAAA,EAAAC,IAAA,CAAA,WAAA,EAAAC,IAAA,CAAA,WAAA,EAAAC,IAAA,CAAA,WAAA,EAAAC,IAAA,CAAA,WAAA,EAAAC,IAAA,CAAA,WAAA,EAAAC,IAAA,CAAA,WAAA,EAAAC,IAAA,CAAA,WAAA,EAAAC,IAAA,CAAA,WAAA,EAAAC,IAAA,CAAA,WAAA,EAAAC,IAAA,CAAA,WAAA,EAAAC,IAAA,CAAA,WAAA,EAAAC,IAAA,CAAA,WAAA,EAAAC,IAAA,CAAA,WAAA,EAAAC,IAAA,CAAA,WAAA,EAAAC,IAAA,CAAA,WAAA,EAAAC,IAAA,CAAA,WAAA,EAAAC,IAAA,CAAA,WAAA,EAAAC,KAAA,CAAA,WAAA,EAAAC,KAAA,CAAA,WAAA,EAAAC,KAAA,CAAA,WAAA,EAAAC,KAAA,CAAA,WAAA,EAAAC,KAAA,CAAA,WAAA,EAAAC,KAAA,CAAA,WAAA,EAAAC,KAAA,CAAA,WAAA,EAAAC,KAAA,CAAA,WAAA,EAAAC,KAAA,CAAA,WAAA,EAAAC,KAAA,CAAA,WAAA,EAAAC,KAAA,CAAA,WAAA,EAAAC,KAAA,CAAA,WAAA,EAAAC,KAAA,CAAA,WAAA,EAAAC,K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,EAAA,KAAAA,YAAA,IAAA,EAAA,UAAA,CAAA,WAAA,CAAA,EAAA,KAAAA,YAAA,IAAA,EAAA,UAAA,CAAA,WAAA,CAAA,EAAA,KAAAA,YAAA,MAAA,EAAA,UAAA,CAAA,WAAA,CAAA,EAAA,KAAAA,YAAA,MAAA,EAAA,UAAA,CAAA,WAAA,CAAA,EAAA,KAAAA,YAAA,QAAA,EAAA,UAAA,CAAA,WAAA,CAAA,EAAA,KAAAA,YAAA,MAAA,EAAA,UAAA,CAAA,WAAA,CAAA,EAAA,KAAAA,YAAA,IAAA,EAAA,UAAA,CAAA,WAAA,CAAA,EAAA,KAAAA,YAAA,IAAA,EAAA,UAAA,CAAA,WAAA,CAAA,EAAA,KAAAA,YAAA,MAAA,EAAA,UAAA,CAAA,WAAA,CAAA,EAAA,KAAAA,YAAA,MAAA,EAAA,UAAA,CAAA,WAAA,CAAA,EAAA,KAAAA,YAAA,IAAA,EAAA,UAAA,CAAA,WAAA,CAAA,EAAA,KAAAA,YAAA,MAAA,EAAA,UAAA,CAAA,WAAA,CAAA,EAAA,KAAAA,YAAA,MAAA,EAAA,UAAA,CAAA,WAAA,CAAA,EAAA,KAAAA,YAAA,MAAA,EAAA,UAAA,CAAA,WAAA,CAAA,EAAA,KAAAA,YAAA,MAAA,EAAA,UAAA,CAAA,WAAA,CAAA,EAAA,KAAAA,YAAA,MAAA,EAAA,UAAA,CAAA,WAAA,CAAA,EAAA,KAAAA,YAAA,IAAA,EAAA,UAAA,CAAA,WAAA,CAAA,EAAA,KAAAA,YAAA,MAAA,EAAA,UAAA,CAAA,WAAA,CAAA,EAAA,KAAAA,YAAA,QAAA,EAAA,UAAA,CAAA,WAAA,CAAA,EAAA,KAAAA,YAAA,QAAA,EAAA,UAAA,CAAA,WAAA,CAAA,EAAA,KAAAA,YAAA,MAAA,EAAA,UAAA,CAAA,WAAA,CAAA,EAAA,KAAAA,YAAA,MAAA,EAAA,UAAA,CAAA,WAAA,CAAA,EAAA,KAAAA,YAAA,MAAA,EAAA,UAAA,CAAA,WAAA,CAAA,EAAA,KAAAA,YAAA,QAAA,EAAA,UAAA,CAAA,WAAA,CAAA,EAAA,KAAAA,YAAA,IAAA,EAAA,UAAA,CAAA,WAAA,CAAA,EAAA,KAAAA,YAAA,MAAA,EAAA,UAAA,CAAA,WAAA,CAAA,EAA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,CAAA,WAAA,EAAAC,IAAA,CAAA,WAAA,EAAAC,IAAA,CAAA,WAAA,EAAAC,IAAA,CAAA,WAAA,EAAAC,IAAA,CAAA,WAAA,EAAAC,KAAA,CAAA,WAAA,EAAAC,KAAA,CAAA,WAAA,EAAAC,KAAA,CAAA,WAAA,EAAAC,KAAA,CAAA,WAAA,EAAAC,KAAA,CAAA,WAAA,EAAAC,KAAA,CAAA,WAAA,EAAAC,KAAA,CAAA,WAAA,EAAAC,KAAA,CAAA,WAAA,EAAAC,KAAA,CAAA,WAAA,EAAAC,KAAA,CAAA,WAAA,EAAAC,KAAA,CAAA,WAAA,EAAA,GAAA,CAAA,WAAA,EAAAC,KAAA,CAAA,WAAA,EAAA,GAAA,CAAA,WAAA,EAAA,GAAA,CAAA,WAAA,EAAA,GAAA,CAAA,WAAA,EAAA,GAAA,CAAA,WAAA,EAAA,GAAA,CAAA,WAAA,EAAA,GAAA,CAAA,WAAA,EAAA,GAAA,CAAA,WAAA,EAAA,GAAA,CAAA,WAAA,EAAA,GAAA,CAAA,WAAA,EAAA,GAAA,CAAA,WAAA,EAAA,GAAA,CAAA,WAAA,EAAA,GAAA,CAAA,WAAA,EAAA,GAAA,CAAA,WAAA,EAAA,GAAA,CAAA,WAAA,EAAA,GAAA,CAAA,WAAA,EAAA,GAAA,CAAA,WAAA,EAAA,GAAA,CAAA,WAAA,EAAA,GAAA,CAAA,WAAA,EAAA,GAAA,CAAA,WAAA,EAAA,GAAA,CAAA,WAAA,EAAA,GAAA,CAAA,WAAA,EAAA,GAAA,CAAA,WAAA,EAAA,GAAA,CAAA,WAAA,EAAA,GAAA,CAAA,WAAA,EAAA,GAAA,CAAA,WAAA,EAAA,GAAA,CAAA,WAAA,EAAA,GAAA,CAAA,WAAA,EAAA,GAAA,CAAA,WAAA,EAAA,GAAA,CAAA,WAAA,EAAA,GAAA,CAAA,WAAA,EAAA,GAAA,CAAA,WAAA,EAAA,GAAA,CAAA,WAAA,EAAA,GAAA,CAAA,WAAA,EAAA,GAAA,CAAA,WAAA,EAAA,GAAA,CAAA,WAAA,EAAA,GAAA,CAAA,WAAA,EAAA,GAAA,CAAA,WAAA,EAAA,GAAA,CAAA,WAAA,EAAA,GAAA,CAAA,WAAA,EAAA,GAAA,CAAA,WAAA,EAAA,GAAA,CAAA,WAAA,EAAA,GAAA,CAA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"}