{
  "version": 3,
  "sources": ["ssg:https://framerusercontent.com/modules/AbIU28zT1Rk0aG4LW35A/YWE4XJfJu7FK671xR5XA/InAbEgGo5.js", "ssg:https://framerusercontent.com/modules/8U64GbmOW9DXCPWqlYcq/N8fUr6RlfP0NamwtjP3p/kxN7gAslB.js", "ssg:https://framerusercontent.com/modules/GsMgYeqUEYoY1hsnEMM8/NRM5Q1XYkzmWoEPmwXVp/pcoDLsO59.js", "ssg:https://framerusercontent.com/modules/RwquBhWhgnFy8YZTajJ8/pNJ4BdDGlKDraehpy0Mk/vKGxKv6WT.js", "ssg:https://framerusercontent.com/modules/5IVyUB9sruGGtdCTNI96/utzDCi5MqZsv7Ld611Dn/AJk7X8LQA.js", "ssg:https://ga.jspm.io/npm:@motionone/utils@10.14.0/dist/index.es.js", "ssg:https://ga.jspm.io/npm:@motionone/easing@10.12.0/dist/index.es.js", "ssg:https://ga.jspm.io/npm:@motionone/animation@10.18.0/dist/index.es.js", "ssg:https://ga.jspm.io/npm:hey-listen@1.0.8/dist/index.js", "ssg:https://ga.jspm.io/npm:@motionone/types@10.17.1/dist/index.es.js", "ssg:https://ga.jspm.io/npm:tslib@2.6.3/tslib.es6.mjs", "ssg:https://ga.jspm.io/npm:@motionone/generators@10.18.0/dist/index.es.js", "ssg:https://ga.jspm.io/npm:@motionone/dom@10.18.0/dist/index.es.js", "ssg:https://framerusercontent.com/modules/B2xAlJLcN0gOnt11mSPw/jyRNgY7vYWXe6t31T0wo/Ticker.js", "ssg:https://framerusercontent.com/modules/JWnhsyraEL2iUqIQ6iz2/aqKck7CIhk4py0hDWGqL/zTLW18KXI.js", "ssg:https://framerusercontent.com/modules/ldmExqodGE2KrndruQ6v/1I6bFXgawCCWbgEyEZeL/gmrJkOvDu.js", "ssg:https://framerusercontent.com/modules/lZUhWDkLl4N4omozy18D/uEqz5Qw9PbesznejfGpP/cj3FVOB4Y.js", "ssg:https://framerusercontent.com/modules/dYZ6T2wXu2s1uJ3fLvFp/K4iKfQw7gESm6Tr1IBUz/ht0qGf7EI.js", "ssg:https://framerusercontent.com/modules/AewarRfSz6DlAz9pi5Qr/vu91qosogs6ajpmZcEYk/eafUe285s.js", "ssg:https://framerusercontent.com/modules/rEa7PwxdVkSVmmHlKEB0/b2S5072wvgY24vymAFyb/CY_18tmTg.js", "ssg:https://framerusercontent.com/modules/Y5rqz7F8bsPJUQSKDfbB/WqEPOXEbORviWIaK4laF/gPZgk2LeF.js", "ssg:https://framerusercontent.com/modules/qRV5LwvdhuSqJS5Rp8xp/IqUxwCOU5qxjaAtDYPnC/HfXvyjRaq.js", "ssg:https://framerusercontent.com/modules/NEd4VmDdsxM3StIUbddO/8aCGinfRQO68tQ3QF42d/YouTube.js", "ssg:https://framerusercontent.com/modules/6yBOYiNoJNQgKPnBLQrp/TJdEGZ23lmni6WfsQXTw/OwraS6EHV.js", "ssg:https://framerusercontent.com/modules/3mKFSGQqKHV82uOV1eBc/TbXI1XaZFNevVKcgIt7G/isMotionValue.js", "ssg:https://framer.com/m/framer/useAutoMotionValue.js@0.3.0", "ssg:https://jspm.dev/npm:lottie-web@5.7.8!cjs", "ssg:https://framerusercontent.com/modules/YbkSqZ7STzW5WsMb1yan/RLfsHd78NBd0kbafA9hd/Lottie.js", "ssg:https://framerusercontent.com/modules/7mga6uDSVZUZonrPS2ZL/tBfTbNQCYEpogPZbFkyL/Pbf2GHKDL.js", "ssg:https://framerusercontent.com/modules/vwJFl4XQCzYsbay3Yyuv/UGOQQ6lJ3Lf3Xqq1iN1f/t8Oa9Zgb5.js", "ssg:https://framerusercontent.com/modules/p4akNjfItYJ6zQ8NeHWA/XmmSzBGWeMycDPOxDAHy/uUCvdlGwy.js", "ssg:https://framerusercontent.com/modules/hJg8eRoErPeq0xUiW2j3/Zgyra2e43djuP4VawRLm/wWjfgdtli.js", "ssg:https://framerusercontent.com/modules/V9ryrjN5Am9WM1dJeyyJ/GzHgU466IQmt8g4qOKj8/UsePageVisibility.js", "ssg:https://framerusercontent.com/modules/zvkTOpMSuRzRhLzZZIwG/bJnHw5VokAqNKlg6Rp7L/SlideShow.js", "ssg:https://framerusercontent.com/modules/tK6DnJZ3Z3LzS9l2nbYU/6tnGlmWQkFXgBlvAEaem/rr47LD73u.js", "ssg:https://framerusercontent.com/modules/mAHyzzkeqLmxwZqmltbv/LhkxqtumzaSu0zabxnkF/Xa9II8U1H.js", "ssg:https://framerusercontent.com/modules/vznjdcpMeNUZ284WbUVu/SEI4tfiXYLxRvKhrnVDP/JJB7u8Dfa-0.js", "ssg:https://framerusercontent.com/modules/vznjdcpMeNUZ284WbUVu/SEI4tfiXYLxRvKhrnVDP/JJB7u8Dfa-1.js", "ssg:https://framerusercontent.com/modules/vznjdcpMeNUZ284WbUVu/SEI4tfiXYLxRvKhrnVDP/JJB7u8Dfa.js", "ssg:https://framerusercontent.com/modules/AOkwFCUwq8lkbxYSDWKA/b2r9IBZLdfN2Y50LroWt/augiA20Il.js"],
  "sourcesContent": ["// Generated by Framer (e4277c8)\nimport{fontStore}from\"framer\";fontStore.loadFonts([\"Inter-Medium\",\"Inter-Bold\",\"Inter-BoldItalic\",\"Inter-MediumItalic\"]);export const fonts=[{explicitInter:true,fonts:[{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F\",url:\"https://framerusercontent.com/assets/5A3Ce6C9YYmCjpQx9M4inSaKU.woff2\",weight:\"500\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116\",url:\"https://framerusercontent.com/assets/Qx95Xyt0Ka3SGhinnbXIGpEIyP4.woff2\",weight:\"500\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+1F00-1FFF\",url:\"https://framerusercontent.com/assets/6mJuEAguuIuMog10gGvH5d3cl8.woff2\",weight:\"500\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0370-03FF\",url:\"https://framerusercontent.com/assets/xYYWaj7wCU5zSQH0eXvSaS19wo.woff2\",weight:\"500\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF\",url:\"https://framerusercontent.com/assets/otTaNuNpVK4RbdlT7zDDdKvQBA.woff2\",weight:\"500\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD\",url:\"https://framerusercontent.com/assets/d3tHnaQIAeqiE5hGcRw4mmgWYU.woff2\",weight:\"500\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB\",url:\"https://framerusercontent.com/assets/DolVirEGb34pEXEp8t8FQBSK4.woff2\",weight:\"500\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F\",url:\"https://framerusercontent.com/assets/DpPBYI0sL4fYLgAkX8KXOPVt7c.woff2\",weight:\"700\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116\",url:\"https://framerusercontent.com/assets/4RAEQdEOrcnDkhHiiCbJOw92Lk.woff2\",weight:\"700\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+1F00-1FFF\",url:\"https://framerusercontent.com/assets/1K3W8DizY3v4emK8Mb08YHxTbs.woff2\",weight:\"700\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0370-03FF\",url:\"https://framerusercontent.com/assets/tUSCtfYVM1I1IchuyCwz9gDdQ.woff2\",weight:\"700\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF\",url:\"https://framerusercontent.com/assets/VgYFWiwsAC5OYxAycRXXvhze58.woff2\",weight:\"700\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD\",url:\"https://framerusercontent.com/assets/DXD0Q7LSl7HEvDzucnyLnGBHM.woff2\",weight:\"700\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB\",url:\"https://framerusercontent.com/assets/GIryZETIX4IFypco5pYZONKhJIo.woff2\",weight:\"700\"},{family:\"Inter\",source:\"framer\",style:\"italic\",unicodeRange:\"U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F\",url:\"https://framerusercontent.com/assets/H89BbHkbHDzlxZzxi8uPzTsp90.woff2\",weight:\"700\"},{family:\"Inter\",source:\"framer\",style:\"italic\",unicodeRange:\"U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116\",url:\"https://framerusercontent.com/assets/u6gJwDuwB143kpNK1T1MDKDWkMc.woff2\",weight:\"700\"},{family:\"Inter\",source:\"framer\",style:\"italic\",unicodeRange:\"U+1F00-1FFF\",url:\"https://framerusercontent.com/assets/43sJ6MfOPh1LCJt46OvyDuSbA6o.woff2\",weight:\"700\"},{family:\"Inter\",source:\"framer\",style:\"italic\",unicodeRange:\"U+0370-03FF\",url:\"https://framerusercontent.com/assets/wccHG0r4gBDAIRhfHiOlq6oEkqw.woff2\",weight:\"700\"},{family:\"Inter\",source:\"framer\",style:\"italic\",unicodeRange:\"U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF\",url:\"https://framerusercontent.com/assets/WZ367JPwf9bRW6LdTHN8rXgSjw.woff2\",weight:\"700\"},{family:\"Inter\",source:\"framer\",style:\"italic\",unicodeRange:\"U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD\",url:\"https://framerusercontent.com/assets/QxmhnWTzLtyjIiZcfaLIJ8EFBXU.woff2\",weight:\"700\"},{family:\"Inter\",source:\"framer\",style:\"italic\",unicodeRange:\"U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB\",url:\"https://framerusercontent.com/assets/2A4Xx7CngadFGlVV4xrO06OBHY.woff2\",weight:\"700\"},{family:\"Inter\",source:\"framer\",style:\"italic\",unicodeRange:\"U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F\",url:\"https://framerusercontent.com/assets/khkJkwSL66WFg8SX6Wa726c.woff2\",weight:\"500\"},{family:\"Inter\",source:\"framer\",style:\"italic\",unicodeRange:\"U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116\",url:\"https://framerusercontent.com/assets/0E7IMbDzcGABpBwwqNEt60wU0w.woff2\",weight:\"500\"},{family:\"Inter\",source:\"framer\",style:\"italic\",unicodeRange:\"U+1F00-1FFF\",url:\"https://framerusercontent.com/assets/NTJ0nQgIF0gcDelS14zQ9NR9Q.woff2\",weight:\"500\"},{family:\"Inter\",source:\"framer\",style:\"italic\",unicodeRange:\"U+0370-03FF\",url:\"https://framerusercontent.com/assets/QrcNhgEPfRl0LS8qz5Ln8olanl8.woff2\",weight:\"500\"},{family:\"Inter\",source:\"framer\",style:\"italic\",unicodeRange:\"U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF\",url:\"https://framerusercontent.com/assets/JEXmejW8mXOYMtt0hyRg811kHac.woff2\",weight:\"500\"},{family:\"Inter\",source:\"framer\",style:\"italic\",unicodeRange:\"U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD\",url:\"https://framerusercontent.com/assets/ksvR4VsLksjpSwnC2fPgHRNMw.woff2\",weight:\"500\"},{family:\"Inter\",source:\"framer\",style:\"italic\",unicodeRange:\"U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB\",url:\"https://framerusercontent.com/assets/uy9s0iWuxiNnVt8EpTI3gzohpwo.woff2\",weight:\"500\"}]}];export const css=['.framer-LfL5P .framer-styles-preset-w9j9br:not(.rich-text-wrapper), .framer-LfL5P .framer-styles-preset-w9j9br.rich-text-wrapper h1 { --framer-font-family: \"Inter\", \"Inter Placeholder\", sans-serif; --framer-font-family-bold: \"Inter\", \"Inter Placeholder\", sans-serif; --framer-font-family-bold-italic: \"Inter\", \"Inter Placeholder\", sans-serif; --framer-font-family-italic: \"Inter\", \"Inter Placeholder\", sans-serif; --framer-font-open-type-features: normal; --framer-font-size: 72px; --framer-font-style: normal; --framer-font-style-bold: normal; --framer-font-style-bold-italic: italic; --framer-font-style-italic: italic; --framer-font-weight: 500; --framer-font-weight-bold: 700; --framer-font-weight-bold-italic: 700; --framer-font-weight-italic: 500; --framer-letter-spacing: 0em; --framer-line-height: 1.1em; --framer-paragraph-spacing: 40px; --framer-text-alignment: center; --framer-text-color: var(--token-8e562c71-b86d-432e-ad04-cd3f03e73a71, #ffffff); --framer-text-decoration: none; --framer-text-stroke-color: initial; --framer-text-stroke-width: initial; --framer-text-transform: capitalize; }','@media (max-width: 1199px) and (min-width: 810px) { .framer-LfL5P .framer-styles-preset-w9j9br:not(.rich-text-wrapper), .framer-LfL5P .framer-styles-preset-w9j9br.rich-text-wrapper h1 { --framer-font-family: \"Inter\", \"Inter Placeholder\", sans-serif; --framer-font-family-bold: \"Inter\", \"Inter Placeholder\", sans-serif; --framer-font-family-bold-italic: \"Inter\", \"Inter Placeholder\", sans-serif; --framer-font-family-italic: \"Inter\", \"Inter Placeholder\", sans-serif; --framer-font-open-type-features: normal; --framer-font-size: 56px; --framer-font-style: normal; --framer-font-style-bold: normal; --framer-font-style-bold-italic: italic; --framer-font-style-italic: italic; --framer-font-weight: 500; --framer-font-weight-bold: 700; --framer-font-weight-bold-italic: 700; --framer-font-weight-italic: 500; --framer-letter-spacing: 0em; --framer-line-height: 1.1em; --framer-paragraph-spacing: 40px; --framer-text-alignment: center; --framer-text-color: var(--token-8e562c71-b86d-432e-ad04-cd3f03e73a71, #ffffff); --framer-text-decoration: none; --framer-text-stroke-color: initial; --framer-text-stroke-width: initial; --framer-text-transform: capitalize; } }','@media (max-width: 809px) and (min-width: 0px) { .framer-LfL5P .framer-styles-preset-w9j9br:not(.rich-text-wrapper), .framer-LfL5P .framer-styles-preset-w9j9br.rich-text-wrapper h1 { --framer-font-family: \"Inter\", \"Inter Placeholder\", sans-serif; --framer-font-family-bold: \"Inter\", \"Inter Placeholder\", sans-serif; --framer-font-family-bold-italic: \"Inter\", \"Inter Placeholder\", sans-serif; --framer-font-family-italic: \"Inter\", \"Inter Placeholder\", sans-serif; --framer-font-open-type-features: normal; --framer-font-size: 36px; --framer-font-style: normal; --framer-font-style-bold: normal; --framer-font-style-bold-italic: italic; --framer-font-style-italic: italic; --framer-font-weight: 500; --framer-font-weight-bold: 700; --framer-font-weight-bold-italic: 700; --framer-font-weight-italic: 500; --framer-letter-spacing: 0em; --framer-line-height: 1.1em; --framer-paragraph-spacing: 40px; --framer-text-alignment: center; --framer-text-color: var(--token-8e562c71-b86d-432e-ad04-cd3f03e73a71, #ffffff); --framer-text-decoration: none; --framer-text-stroke-color: initial; --framer-text-stroke-width: initial; --framer-text-transform: capitalize; } }'];export const className=\"framer-LfL5P\";\nexport const __FramerMetadata__ = {\"exports\":{\"css\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"className\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"fonts\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}", "// Generated by Framer (2923eb5)\nimport{fontStore}from\"framer\";fontStore.loadFonts([\"Inter-Medium\",\"Inter-Bold\",\"Inter-BoldItalic\",\"Inter-MediumItalic\"]);export const fonts=[{explicitInter:true,fonts:[{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F\",url:\"https://framerusercontent.com/assets/5A3Ce6C9YYmCjpQx9M4inSaKU.woff2\",weight:\"500\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116\",url:\"https://framerusercontent.com/assets/Qx95Xyt0Ka3SGhinnbXIGpEIyP4.woff2\",weight:\"500\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+1F00-1FFF\",url:\"https://framerusercontent.com/assets/6mJuEAguuIuMog10gGvH5d3cl8.woff2\",weight:\"500\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0370-03FF\",url:\"https://framerusercontent.com/assets/xYYWaj7wCU5zSQH0eXvSaS19wo.woff2\",weight:\"500\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF\",url:\"https://framerusercontent.com/assets/otTaNuNpVK4RbdlT7zDDdKvQBA.woff2\",weight:\"500\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD\",url:\"https://framerusercontent.com/assets/d3tHnaQIAeqiE5hGcRw4mmgWYU.woff2\",weight:\"500\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB\",url:\"https://framerusercontent.com/assets/DolVirEGb34pEXEp8t8FQBSK4.woff2\",weight:\"500\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F\",url:\"https://framerusercontent.com/assets/DpPBYI0sL4fYLgAkX8KXOPVt7c.woff2\",weight:\"700\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116\",url:\"https://framerusercontent.com/assets/4RAEQdEOrcnDkhHiiCbJOw92Lk.woff2\",weight:\"700\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+1F00-1FFF\",url:\"https://framerusercontent.com/assets/1K3W8DizY3v4emK8Mb08YHxTbs.woff2\",weight:\"700\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0370-03FF\",url:\"https://framerusercontent.com/assets/tUSCtfYVM1I1IchuyCwz9gDdQ.woff2\",weight:\"700\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF\",url:\"https://framerusercontent.com/assets/VgYFWiwsAC5OYxAycRXXvhze58.woff2\",weight:\"700\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD\",url:\"https://framerusercontent.com/assets/DXD0Q7LSl7HEvDzucnyLnGBHM.woff2\",weight:\"700\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB\",url:\"https://framerusercontent.com/assets/GIryZETIX4IFypco5pYZONKhJIo.woff2\",weight:\"700\"},{family:\"Inter\",source:\"framer\",style:\"italic\",unicodeRange:\"U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F\",url:\"https://framerusercontent.com/assets/H89BbHkbHDzlxZzxi8uPzTsp90.woff2\",weight:\"700\"},{family:\"Inter\",source:\"framer\",style:\"italic\",unicodeRange:\"U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116\",url:\"https://framerusercontent.com/assets/u6gJwDuwB143kpNK1T1MDKDWkMc.woff2\",weight:\"700\"},{family:\"Inter\",source:\"framer\",style:\"italic\",unicodeRange:\"U+1F00-1FFF\",url:\"https://framerusercontent.com/assets/43sJ6MfOPh1LCJt46OvyDuSbA6o.woff2\",weight:\"700\"},{family:\"Inter\",source:\"framer\",style:\"italic\",unicodeRange:\"U+0370-03FF\",url:\"https://framerusercontent.com/assets/wccHG0r4gBDAIRhfHiOlq6oEkqw.woff2\",weight:\"700\"},{family:\"Inter\",source:\"framer\",style:\"italic\",unicodeRange:\"U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF\",url:\"https://framerusercontent.com/assets/WZ367JPwf9bRW6LdTHN8rXgSjw.woff2\",weight:\"700\"},{family:\"Inter\",source:\"framer\",style:\"italic\",unicodeRange:\"U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD\",url:\"https://framerusercontent.com/assets/QxmhnWTzLtyjIiZcfaLIJ8EFBXU.woff2\",weight:\"700\"},{family:\"Inter\",source:\"framer\",style:\"italic\",unicodeRange:\"U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB\",url:\"https://framerusercontent.com/assets/2A4Xx7CngadFGlVV4xrO06OBHY.woff2\",weight:\"700\"},{family:\"Inter\",source:\"framer\",style:\"italic\",unicodeRange:\"U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F\",url:\"https://framerusercontent.com/assets/khkJkwSL66WFg8SX6Wa726c.woff2\",weight:\"500\"},{family:\"Inter\",source:\"framer\",style:\"italic\",unicodeRange:\"U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116\",url:\"https://framerusercontent.com/assets/0E7IMbDzcGABpBwwqNEt60wU0w.woff2\",weight:\"500\"},{family:\"Inter\",source:\"framer\",style:\"italic\",unicodeRange:\"U+1F00-1FFF\",url:\"https://framerusercontent.com/assets/NTJ0nQgIF0gcDelS14zQ9NR9Q.woff2\",weight:\"500\"},{family:\"Inter\",source:\"framer\",style:\"italic\",unicodeRange:\"U+0370-03FF\",url:\"https://framerusercontent.com/assets/QrcNhgEPfRl0LS8qz5Ln8olanl8.woff2\",weight:\"500\"},{family:\"Inter\",source:\"framer\",style:\"italic\",unicodeRange:\"U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF\",url:\"https://framerusercontent.com/assets/JEXmejW8mXOYMtt0hyRg811kHac.woff2\",weight:\"500\"},{family:\"Inter\",source:\"framer\",style:\"italic\",unicodeRange:\"U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD\",url:\"https://framerusercontent.com/assets/ksvR4VsLksjpSwnC2fPgHRNMw.woff2\",weight:\"500\"},{family:\"Inter\",source:\"framer\",style:\"italic\",unicodeRange:\"U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB\",url:\"https://framerusercontent.com/assets/uy9s0iWuxiNnVt8EpTI3gzohpwo.woff2\",weight:\"500\"}]}];export const css=['.framer-l0z6l .framer-styles-preset-bjb6tn:not(.rich-text-wrapper), .framer-l0z6l .framer-styles-preset-bjb6tn.rich-text-wrapper h2 { --framer-font-family: \"Inter\", \"Inter Placeholder\", sans-serif; --framer-font-family-bold: \"Inter\", \"Inter Placeholder\", sans-serif; --framer-font-family-bold-italic: \"Inter\", \"Inter Placeholder\", sans-serif; --framer-font-family-italic: \"Inter\", \"Inter Placeholder\", sans-serif; --framer-font-open-type-features: normal; --framer-font-size: 44px; --framer-font-style: normal; --framer-font-style-bold: normal; --framer-font-style-bold-italic: italic; --framer-font-style-italic: italic; --framer-font-weight: 500; --framer-font-weight-bold: 700; --framer-font-weight-bold-italic: 700; --framer-font-weight-italic: 500; --framer-letter-spacing: 0em; --framer-line-height: 1.2em; --framer-paragraph-spacing: 40px; --framer-text-alignment: center; --framer-text-color: var(--token-8e562c71-b86d-432e-ad04-cd3f03e73a71, #ffffff); --framer-text-decoration: none; --framer-text-stroke-color: initial; --framer-text-stroke-width: initial; --framer-text-transform: capitalize; --framer-text-wrap: balance; }','@media (max-width: 1199px) and (min-width: 810px) { .framer-l0z6l .framer-styles-preset-bjb6tn:not(.rich-text-wrapper), .framer-l0z6l .framer-styles-preset-bjb6tn.rich-text-wrapper h2 { --framer-font-family: \"Inter\", \"Inter Placeholder\", sans-serif; --framer-font-family-bold: \"Inter\", \"Inter Placeholder\", sans-serif; --framer-font-family-bold-italic: \"Inter\", \"Inter Placeholder\", sans-serif; --framer-font-family-italic: \"Inter\", \"Inter Placeholder\", sans-serif; --framer-font-open-type-features: normal; --framer-font-size: 32px; --framer-font-style: normal; --framer-font-style-bold: normal; --framer-font-style-bold-italic: italic; --framer-font-style-italic: italic; --framer-font-weight: 500; --framer-font-weight-bold: 700; --framer-font-weight-bold-italic: 700; --framer-font-weight-italic: 500; --framer-letter-spacing: 0em; --framer-line-height: 1.2em; --framer-paragraph-spacing: 40px; --framer-text-alignment: center; --framer-text-color: var(--token-8e562c71-b86d-432e-ad04-cd3f03e73a71, #ffffff); --framer-text-decoration: none; --framer-text-stroke-color: initial; --framer-text-stroke-width: initial; --framer-text-transform: capitalize; --framer-text-wrap: balance; } }','@media (max-width: 809px) and (min-width: 0px) { .framer-l0z6l .framer-styles-preset-bjb6tn:not(.rich-text-wrapper), .framer-l0z6l .framer-styles-preset-bjb6tn.rich-text-wrapper h2 { --framer-font-family: \"Inter\", \"Inter Placeholder\", sans-serif; --framer-font-family-bold: \"Inter\", \"Inter Placeholder\", sans-serif; --framer-font-family-bold-italic: \"Inter\", \"Inter Placeholder\", sans-serif; --framer-font-family-italic: \"Inter\", \"Inter Placeholder\", sans-serif; --framer-font-open-type-features: normal; --framer-font-size: 24px; --framer-font-style: normal; --framer-font-style-bold: normal; --framer-font-style-bold-italic: italic; --framer-font-style-italic: italic; --framer-font-weight: 500; --framer-font-weight-bold: 700; --framer-font-weight-bold-italic: 700; --framer-font-weight-italic: 500; --framer-letter-spacing: 0em; --framer-line-height: 1.2em; --framer-paragraph-spacing: 40px; --framer-text-alignment: center; --framer-text-color: var(--token-8e562c71-b86d-432e-ad04-cd3f03e73a71, #ffffff); --framer-text-decoration: none; --framer-text-stroke-color: initial; --framer-text-stroke-width: initial; --framer-text-transform: capitalize; --framer-text-wrap: balance; } }'];export const className=\"framer-l0z6l\";\nexport const __FramerMetadata__ = {\"exports\":{\"css\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"className\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"fonts\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}", "// Generated by Framer (12ecc5e)\nimport{fontStore}from\"framer\";fontStore.loadFonts([]);export const fonts=[{explicitInter:true,fonts:[]}];export const css=[\".framer-tzf5P .framer-styles-preset-1t2subd:not(.rich-text-wrapper), .framer-tzf5P .framer-styles-preset-1t2subd.rich-text-wrapper a { --framer-link-current-text-color: var(--token-8e562c71-b86d-432e-ad04-cd3f03e73a71, #ffffff); --framer-link-current-text-decoration: none; --framer-link-hover-text-color: var(--token-f4f48dc3-167d-47d5-90e8-15dc8302feb5, #a8a8a8); --framer-link-hover-text-decoration: none; --framer-link-text-color: var(--token-8e562c71-b86d-432e-ad04-cd3f03e73a71, #ffffff); --framer-link-text-decoration: none; transition: color 0.2s cubic-bezier(0.44, 0, 0.56, 1) 0s; }\"];export const className=\"framer-tzf5P\";\nexport const __FramerMetadata__ = {\"exports\":{\"fonts\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"css\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"className\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}", "// Generated by Framer (e4277c8)\nimport{fontStore}from\"framer\";fontStore.loadFonts([\"Inter-Medium\",\"Inter-Bold\",\"Inter-BoldItalic\",\"Inter-MediumItalic\"]);export const fonts=[{explicitInter:true,fonts:[{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F\",url:\"https://framerusercontent.com/assets/5A3Ce6C9YYmCjpQx9M4inSaKU.woff2\",weight:\"500\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116\",url:\"https://framerusercontent.com/assets/Qx95Xyt0Ka3SGhinnbXIGpEIyP4.woff2\",weight:\"500\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+1F00-1FFF\",url:\"https://framerusercontent.com/assets/6mJuEAguuIuMog10gGvH5d3cl8.woff2\",weight:\"500\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0370-03FF\",url:\"https://framerusercontent.com/assets/xYYWaj7wCU5zSQH0eXvSaS19wo.woff2\",weight:\"500\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF\",url:\"https://framerusercontent.com/assets/otTaNuNpVK4RbdlT7zDDdKvQBA.woff2\",weight:\"500\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD\",url:\"https://framerusercontent.com/assets/d3tHnaQIAeqiE5hGcRw4mmgWYU.woff2\",weight:\"500\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB\",url:\"https://framerusercontent.com/assets/DolVirEGb34pEXEp8t8FQBSK4.woff2\",weight:\"500\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F\",url:\"https://framerusercontent.com/assets/DpPBYI0sL4fYLgAkX8KXOPVt7c.woff2\",weight:\"700\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116\",url:\"https://framerusercontent.com/assets/4RAEQdEOrcnDkhHiiCbJOw92Lk.woff2\",weight:\"700\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+1F00-1FFF\",url:\"https://framerusercontent.com/assets/1K3W8DizY3v4emK8Mb08YHxTbs.woff2\",weight:\"700\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0370-03FF\",url:\"https://framerusercontent.com/assets/tUSCtfYVM1I1IchuyCwz9gDdQ.woff2\",weight:\"700\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF\",url:\"https://framerusercontent.com/assets/VgYFWiwsAC5OYxAycRXXvhze58.woff2\",weight:\"700\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD\",url:\"https://framerusercontent.com/assets/DXD0Q7LSl7HEvDzucnyLnGBHM.woff2\",weight:\"700\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB\",url:\"https://framerusercontent.com/assets/GIryZETIX4IFypco5pYZONKhJIo.woff2\",weight:\"700\"},{family:\"Inter\",source:\"framer\",style:\"italic\",unicodeRange:\"U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F\",url:\"https://framerusercontent.com/assets/H89BbHkbHDzlxZzxi8uPzTsp90.woff2\",weight:\"700\"},{family:\"Inter\",source:\"framer\",style:\"italic\",unicodeRange:\"U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116\",url:\"https://framerusercontent.com/assets/u6gJwDuwB143kpNK1T1MDKDWkMc.woff2\",weight:\"700\"},{family:\"Inter\",source:\"framer\",style:\"italic\",unicodeRange:\"U+1F00-1FFF\",url:\"https://framerusercontent.com/assets/43sJ6MfOPh1LCJt46OvyDuSbA6o.woff2\",weight:\"700\"},{family:\"Inter\",source:\"framer\",style:\"italic\",unicodeRange:\"U+0370-03FF\",url:\"https://framerusercontent.com/assets/wccHG0r4gBDAIRhfHiOlq6oEkqw.woff2\",weight:\"700\"},{family:\"Inter\",source:\"framer\",style:\"italic\",unicodeRange:\"U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF\",url:\"https://framerusercontent.com/assets/WZ367JPwf9bRW6LdTHN8rXgSjw.woff2\",weight:\"700\"},{family:\"Inter\",source:\"framer\",style:\"italic\",unicodeRange:\"U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD\",url:\"https://framerusercontent.com/assets/QxmhnWTzLtyjIiZcfaLIJ8EFBXU.woff2\",weight:\"700\"},{family:\"Inter\",source:\"framer\",style:\"italic\",unicodeRange:\"U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB\",url:\"https://framerusercontent.com/assets/2A4Xx7CngadFGlVV4xrO06OBHY.woff2\",weight:\"700\"},{family:\"Inter\",source:\"framer\",style:\"italic\",unicodeRange:\"U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F\",url:\"https://framerusercontent.com/assets/khkJkwSL66WFg8SX6Wa726c.woff2\",weight:\"500\"},{family:\"Inter\",source:\"framer\",style:\"italic\",unicodeRange:\"U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116\",url:\"https://framerusercontent.com/assets/0E7IMbDzcGABpBwwqNEt60wU0w.woff2\",weight:\"500\"},{family:\"Inter\",source:\"framer\",style:\"italic\",unicodeRange:\"U+1F00-1FFF\",url:\"https://framerusercontent.com/assets/NTJ0nQgIF0gcDelS14zQ9NR9Q.woff2\",weight:\"500\"},{family:\"Inter\",source:\"framer\",style:\"italic\",unicodeRange:\"U+0370-03FF\",url:\"https://framerusercontent.com/assets/QrcNhgEPfRl0LS8qz5Ln8olanl8.woff2\",weight:\"500\"},{family:\"Inter\",source:\"framer\",style:\"italic\",unicodeRange:\"U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF\",url:\"https://framerusercontent.com/assets/JEXmejW8mXOYMtt0hyRg811kHac.woff2\",weight:\"500\"},{family:\"Inter\",source:\"framer\",style:\"italic\",unicodeRange:\"U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD\",url:\"https://framerusercontent.com/assets/ksvR4VsLksjpSwnC2fPgHRNMw.woff2\",weight:\"500\"},{family:\"Inter\",source:\"framer\",style:\"italic\",unicodeRange:\"U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB\",url:\"https://framerusercontent.com/assets/uy9s0iWuxiNnVt8EpTI3gzohpwo.woff2\",weight:\"500\"}]}];export const css=['.framer-xG3QT .framer-styles-preset-5a4759:not(.rich-text-wrapper), .framer-xG3QT .framer-styles-preset-5a4759.rich-text-wrapper h3 { --framer-font-family: \"Inter\", \"Inter Placeholder\", sans-serif; --framer-font-family-bold: \"Inter\", \"Inter Placeholder\", sans-serif; --framer-font-family-bold-italic: \"Inter\", \"Inter Placeholder\", sans-serif; --framer-font-family-italic: \"Inter\", \"Inter Placeholder\", sans-serif; --framer-font-open-type-features: normal; --framer-font-size: 20px; --framer-font-style: normal; --framer-font-style-bold: normal; --framer-font-style-bold-italic: italic; --framer-font-style-italic: italic; --framer-font-weight: 500; --framer-font-weight-bold: 700; --framer-font-weight-bold-italic: 700; --framer-font-weight-italic: 500; --framer-letter-spacing: 0em; --framer-line-height: 1.2em; --framer-paragraph-spacing: 40px; --framer-text-alignment: left; --framer-text-color: var(--token-8e562c71-b86d-432e-ad04-cd3f03e73a71, #ffffff); --framer-text-decoration: none; --framer-text-stroke-color: initial; --framer-text-stroke-width: initial; --framer-text-transform: none; }','@media (max-width: 1199px) and (min-width: 810px) { .framer-xG3QT .framer-styles-preset-5a4759:not(.rich-text-wrapper), .framer-xG3QT .framer-styles-preset-5a4759.rich-text-wrapper h3 { --framer-font-family: \"Inter\", \"Inter Placeholder\", sans-serif; --framer-font-family-bold: \"Inter\", \"Inter Placeholder\", sans-serif; --framer-font-family-bold-italic: \"Inter\", \"Inter Placeholder\", sans-serif; --framer-font-family-italic: \"Inter\", \"Inter Placeholder\", sans-serif; --framer-font-open-type-features: normal; --framer-font-size: 18px; --framer-font-style: normal; --framer-font-style-bold: normal; --framer-font-style-bold-italic: italic; --framer-font-style-italic: italic; --framer-font-weight: 500; --framer-font-weight-bold: 700; --framer-font-weight-bold-italic: 700; --framer-font-weight-italic: 500; --framer-letter-spacing: 0em; --framer-line-height: 1.2em; --framer-paragraph-spacing: 40px; --framer-text-alignment: left; --framer-text-color: var(--token-8e562c71-b86d-432e-ad04-cd3f03e73a71, #ffffff); --framer-text-decoration: none; --framer-text-stroke-color: initial; --framer-text-stroke-width: initial; --framer-text-transform: none; } }','@media (max-width: 809px) and (min-width: 0px) { .framer-xG3QT .framer-styles-preset-5a4759:not(.rich-text-wrapper), .framer-xG3QT .framer-styles-preset-5a4759.rich-text-wrapper h3 { --framer-font-family: \"Inter\", \"Inter Placeholder\", sans-serif; --framer-font-family-bold: \"Inter\", \"Inter Placeholder\", sans-serif; --framer-font-family-bold-italic: \"Inter\", \"Inter Placeholder\", sans-serif; --framer-font-family-italic: \"Inter\", \"Inter Placeholder\", sans-serif; --framer-font-open-type-features: normal; --framer-font-size: 16px; --framer-font-style: normal; --framer-font-style-bold: normal; --framer-font-style-bold-italic: italic; --framer-font-style-italic: italic; --framer-font-weight: 500; --framer-font-weight-bold: 700; --framer-font-weight-bold-italic: 700; --framer-font-weight-italic: 500; --framer-letter-spacing: 0em; --framer-line-height: 1.2em; --framer-paragraph-spacing: 40px; --framer-text-alignment: left; --framer-text-color: var(--token-8e562c71-b86d-432e-ad04-cd3f03e73a71, #ffffff); --framer-text-decoration: none; --framer-text-stroke-color: initial; --framer-text-stroke-width: initial; --framer-text-transform: none; } }'];export const className=\"framer-xG3QT\";\nexport const __FramerMetadata__ = {\"exports\":{\"fonts\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"css\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"className\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}", "// Generated by Framer (99bc0fd)\nimport{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{addFonts,addPropertyControls,ControlType,cx,getFontsFromSharedStyle,getLoadingLazyAtYPosition,Image,RichText,useComponentViewport,useLocaleInfo,useVariantState,withCSS}from\"framer\";import{LayoutGroup,motion,MotionConfigContext}from\"framer-motion\";import*as React from\"react\";import*as sharedStyle2 from\"https://framerusercontent.com/modules/AbIU28zT1Rk0aG4LW35A/YWE4XJfJu7FK671xR5XA/InAbEgGo5.js\";import*as sharedStyle4 from\"https://framerusercontent.com/modules/yhwxvTNo3tHUNTZTCUXd/rnjts2scwUlJE6DcMt7a/IZpeieEjn.js\";import*as sharedStyle3 from\"https://framerusercontent.com/modules/8U64GbmOW9DXCPWqlYcq/N8fUr6RlfP0NamwtjP3p/kxN7gAslB.js\";import*as sharedStyle5 from\"https://framerusercontent.com/modules/GsMgYeqUEYoY1hsnEMM8/NRM5Q1XYkzmWoEPmwXVp/pcoDLsO59.js\";import*as sharedStyle from\"https://framerusercontent.com/modules/s1wXpYYf2GX4ofFesE8d/4El76fvq2TUHYwvG0c1v/QYfoYIhhT.js\";import*as sharedStyle1 from\"https://framerusercontent.com/modules/RwquBhWhgnFy8YZTajJ8/pNJ4BdDGlKDraehpy0Mk/vKGxKv6WT.js\";const serializationHash=\"framer-m2URK\";const variantClassNames={amTteP01N:\"framer-v-zlpxpk\"};function addPropertyOverrides(overrides,...variants){const nextOverrides={};variants===null||variants===void 0?void 0:variants.forEach(variant=>variant&&Object.assign(nextOverrides,overrides[variant]));return nextOverrides;}const transition1={damping:30,delay:0,mass:1,stiffness:200,type:\"spring\"};const toResponsiveImage=value=>{if(typeof value===\"object\"&&value!==null&&typeof value.src===\"string\"){return value;}return typeof value===\"string\"?{src:value}:undefined;};const Transition=({value,children})=>{const config=React.useContext(MotionConfigContext);const transition=value!==null&&value!==void 0?value:config.transition;const contextValue=React.useMemo(()=>({...config,transition}),[JSON.stringify(transition)]);return /*#__PURE__*/_jsx(MotionConfigContext.Provider,{value:contextValue,children:children});};const Variants=motion.create(React.Fragment);const getProps=({description,height,id,image,industry,projectName,width,...props})=>{var _ref,_ref1,_ref2;return{...props,aWgDXYqV_:(_ref=industry!==null&&industry!==void 0?industry:props.aWgDXYqV_)!==null&&_ref!==void 0?_ref:\"Industry\",RLYruWW0a:image!==null&&image!==void 0?image:props.RLYruWW0a,vKmuugASL:(_ref1=description!==null&&description!==void 0?description:props.vKmuugASL)!==null&&_ref1!==void 0?_ref1:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{children:\"Description\"})}),wxYaM1O2N:(_ref2=projectName!==null&&projectName!==void 0?projectName:props.wxYaM1O2N)!==null&&_ref2!==void 0?_ref2:\"Project name\"};};const createLayoutDependency=(props,variants)=>{if(props.layoutDependency)return variants.join(\"-\")+props.layoutDependency;return variants.join(\"-\");};const Component=/*#__PURE__*/React.forwardRef(function(props,ref){const{activeLocale,setLocale}=useLocaleInfo();const{style,className,layoutId,variant,RLYruWW0a,aWgDXYqV_,wxYaM1O2N,vKmuugASL,...restProps}=getProps(props);const{baseVariant,classNames,clearLoadingGesture,gestureHandlers,gestureVariant,isLoading,setGestureState,setVariant,variants}=useVariantState({defaultVariant:\"amTteP01N\",variant,variantClassNames});const layoutDependency=createLayoutDependency(props,variants);const ref1=React.useRef(null);const defaultLayoutId=React.useId();const sharedStyleClassNames=[sharedStyle.className,sharedStyle1.className,sharedStyle2.className,sharedStyle3.className,sharedStyle4.className,sharedStyle5.className];const componentViewport=useComponentViewport();return /*#__PURE__*/_jsx(LayoutGroup,{id:layoutId!==null&&layoutId!==void 0?layoutId:defaultLayoutId,children:/*#__PURE__*/_jsx(Variants,{animate:variants,initial:false,children:/*#__PURE__*/_jsx(Transition,{value:transition1,children:/*#__PURE__*/_jsx(motion.div,{...restProps,...gestureHandlers,className:cx(serializationHash,...sharedStyleClassNames,\"framer-zlpxpk\",className,classNames),\"data-framer-name\":\"Default\",layoutDependency:layoutDependency,layoutId:\"amTteP01N\",ref:ref!==null&&ref!==void 0?ref:ref1,style:{background:'radial-gradient(50% 50% at 50% 50%, var(--token-ab8a1628-3695-47a5-8496-32bf3ecfdf66, rgb(21, 58, 161)) /* {\"name\":\"Blue\"} */ 0%, var(--token-17d94287-c97e-4602-9cf7-4d2036e50e01, rgb(0, 24, 94)) /* {\"name\":\"Dark blue\"} */ 100%)',borderBottomLeftRadius:12,borderBottomRightRadius:12,borderTopLeftRadius:12,borderTopRightRadius:12,...style},children:/*#__PURE__*/_jsxs(motion.div,{className:\"framer-xwwfp2\",\"data-framer-name\":\"Content\",layoutDependency:layoutDependency,layoutId:\"eInuS55rj\",style:{background:'linear-gradient(130deg, var(--token-f5d2506d-9c8c-423b-a07c-4bdb7316df89, rgba(5, 5, 5, 0.75)) /* {\"name\":\"Black 75%\"} */ 0%, var(--token-7be8625f-297b-4b2a-908d-7056e5d82d0a, rgb(5, 5, 5)) /* {\"name\":\"Black\"} */ 120%)',borderBottomLeftRadius:11,borderBottomRightRadius:11,borderTopLeftRadius:11,borderTopRightRadius:11},children:[/*#__PURE__*/_jsx(Image,{background:{alt:\"\",fit:\"fill\",loading:getLoadingLazyAtYPosition(((componentViewport===null||componentViewport===void 0?void 0:componentViewport.y)||0)+(1+(((componentViewport===null||componentViewport===void 0?void 0:componentViewport.height)||459)-2-527.6)/2)+12+0),sizes:`calc(max(${(componentViewport===null||componentViewport===void 0?void 0:componentViewport.width)||\"100vw\"} - 2px, 1px) - 24px)`,...toResponsiveImage(RLYruWW0a),...{positionX:\"center\",positionY:\"center\"}},className:\"framer-10bpjb3\",\"data-border\":true,\"data-framer-name\":\"Image\",layoutDependency:layoutDependency,layoutId:\"VgssKlhn2\",style:{\"--border-bottom-width\":\"1px\",\"--border-color\":\"var(--token-b065af26-ed04-4754-81f1-004a104fdd7f, rgba(0, 24, 94, 0.3))\",\"--border-left-width\":\"1px\",\"--border-right-width\":\"1px\",\"--border-style\":\"solid\",\"--border-top-width\":\"1px\",borderBottomLeftRadius:9,borderBottomRightRadius:9,borderTopLeftRadius:9,borderTopRightRadius:9}}),/*#__PURE__*/_jsxs(motion.div,{className:\"framer-1wbx958\",\"data-framer-name\":\"Info\",layoutDependency:layoutDependency,layoutId:\"fKUiqfG08\",children:[/*#__PURE__*/_jsx(motion.div,{className:\"framer-9dle8k\",\"data-border\":true,\"data-framer-name\":\"Tag\",layoutDependency:layoutDependency,layoutId:\"LU2Xhp5ya\",style:{\"--border-bottom-width\":\"1px\",\"--border-color\":\"var(--token-17d94287-c97e-4602-9cf7-4d2036e50e01, rgb(0, 24, 94))\",\"--border-left-width\":\"1px\",\"--border-right-width\":\"1px\",\"--border-style\":\"solid\",\"--border-top-width\":\"1px\",background:'linear-gradient(180deg, var(--token-17d94287-c97e-4602-9cf7-4d2036e50e01, rgb(0, 24, 94)) /* {\"name\":\"Dark blue\"} */ 0%, var(--token-7be8625f-297b-4b2a-908d-7056e5d82d0a, rgb(5, 5, 5)) /* {\"name\":\"Black\"} */ 100%)',borderBottomLeftRadius:20,borderBottomRightRadius:20,borderTopLeftRadius:20,borderTopRightRadius:20},children:/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{className:\"framer-styles-preset-1ecbodc\",\"data-styles-preset\":\"QYfoYIhhT\",style:{\"--framer-text-color\":\"var(--extracted-r6o4lv, var(--token-8e562c71-b86d-432e-ad04-cd3f03e73a71, rgb(255, 255, 255)))\"},children:\"Industry\"})}),className:\"framer-py0dfd\",fonts:[\"Inter\"],layoutDependency:layoutDependency,layoutId:\"xBhH8bBBo\",style:{\"--extracted-r6o4lv\":\"var(--token-8e562c71-b86d-432e-ad04-cd3f03e73a71, rgb(255, 255, 255))\",\"--framer-link-text-color\":\"rgb(0, 153, 255)\",\"--framer-link-text-decoration\":\"underline\"},text:aWgDXYqV_,verticalAlignment:\"top\",withExternalLayout:true})}),/*#__PURE__*/_jsxs(motion.div,{className:\"framer-1gronyn\",\"data-framer-name\":\"Details\",layoutDependency:layoutDependency,layoutId:\"Egzja6ReY\",children:[/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.h3,{className:\"framer-styles-preset-5a4759\",\"data-styles-preset\":\"vKGxKv6WT\",children:\"Project name\"})}),className:\"framer-jir4bk\",fonts:[\"Inter\"],layoutDependency:layoutDependency,layoutId:\"o80XAMCBl\",style:{\"--framer-link-text-color\":\"rgb(0, 153, 255)\",\"--framer-link-text-decoration\":\"underline\",\"--framer-paragraph-spacing\":\"20px\"},text:wxYaM1O2N,verticalAlignment:\"top\",withExternalLayout:true}),/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:vKmuugASL,className:\"framer-327t5x\",fonts:[\"Inter\"],layoutDependency:layoutDependency,layoutId:\"uI8OAg7q0\",style:{\"--framer-link-text-color\":\"rgb(0, 153, 255)\",\"--framer-link-text-decoration\":\"underline\",\"--framer-paragraph-spacing\":\"20px\"},stylesPresetsClassNames:{a:\"framer-styles-preset-1t2subd\",h1:\"framer-styles-preset-w9j9br\",h2:\"framer-styles-preset-bjb6tn\",h3:\"framer-styles-preset-5a4759\",p:\"framer-styles-preset-f8bv20\"},verticalAlignment:\"top\",withExternalLayout:true})]})]})]})})})})});});const css=[\"@supports (aspect-ratio: 1) { body { --framer-aspect-ratio-supported: auto; } }\",\".framer-m2URK.framer-nuft9r, .framer-m2URK .framer-nuft9r { display: block; }\",\".framer-m2URK.framer-zlpxpk { align-content: center; align-items: center; display: flex; flex-direction: row; flex-wrap: nowrap; gap: 0px; height: min-content; justify-content: center; overflow: hidden; padding: 1px; position: relative; width: 575px; will-change: var(--framer-will-change-override, transform); }\",\".framer-m2URK .framer-xwwfp2 { align-content: flex-start; align-items: flex-start; display: flex; flex: 1 0 0px; flex-direction: column; flex-wrap: nowrap; gap: 16px; height: min-content; justify-content: flex-start; overflow: hidden; padding: 12px; position: relative; width: 1px; will-change: var(--framer-will-change-override, transform); z-index: 1; }\",\".framer-m2URK .framer-10bpjb3 { flex: none; height: 260px; overflow: visible; position: relative; width: 100%; }\",\".framer-m2URK .framer-1wbx958 { align-content: flex-start; align-items: flex-start; display: flex; flex: none; flex-direction: column; flex-wrap: nowrap; gap: 32px; height: min-content; justify-content: center; overflow: hidden; padding: 12px; position: relative; width: 100%; }\",\".framer-m2URK .framer-9dle8k { align-content: center; align-items: center; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; gap: 6px; height: min-content; justify-content: center; overflow: visible; padding: 8px 16px 8px 16px; position: relative; width: min-content; }\",\".framer-m2URK .framer-py0dfd { flex: none; height: auto; position: relative; white-space: pre; width: auto; }\",\".framer-m2URK .framer-1gronyn { 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; overflow: hidden; padding: 0px; position: relative; width: 100%; }\",\".framer-m2URK .framer-jir4bk { flex: none; height: auto; max-width: 600px; position: relative; white-space: pre-wrap; width: 100%; word-break: break-word; word-wrap: break-word; z-index: 1; }\",\".framer-m2URK .framer-327t5x { flex: none; height: auto; max-width: 600px; position: relative; width: 100%; z-index: 1; }\",\"@supports (background: -webkit-named-image(i)) and (not (font-palette:dark)) { .framer-m2URK.framer-zlpxpk, .framer-m2URK .framer-xwwfp2, .framer-m2URK .framer-1wbx958, .framer-m2URK .framer-9dle8k, .framer-m2URK .framer-1gronyn { gap: 0px; } .framer-m2URK.framer-zlpxpk > * { margin: 0px; margin-left: calc(0px / 2); margin-right: calc(0px / 2); } .framer-m2URK.framer-zlpxpk > :first-child, .framer-m2URK .framer-9dle8k > :first-child { margin-left: 0px; } .framer-m2URK.framer-zlpxpk > :last-child, .framer-m2URK .framer-9dle8k > :last-child { margin-right: 0px; } .framer-m2URK .framer-xwwfp2 > *, .framer-m2URK .framer-1gronyn > * { margin: 0px; margin-bottom: calc(16px / 2); margin-top: calc(16px / 2); } .framer-m2URK .framer-xwwfp2 > :first-child, .framer-m2URK .framer-1wbx958 > :first-child, .framer-m2URK .framer-1gronyn > :first-child { margin-top: 0px; } .framer-m2URK .framer-xwwfp2 > :last-child, .framer-m2URK .framer-1wbx958 > :last-child, .framer-m2URK .framer-1gronyn > :last-child { margin-bottom: 0px; } .framer-m2URK .framer-1wbx958 > * { margin: 0px; margin-bottom: calc(32px / 2); margin-top: calc(32px / 2); } .framer-m2URK .framer-9dle8k > * { margin: 0px; margin-left: calc(6px / 2); margin-right: calc(6px / 2); } }\",...sharedStyle.css,...sharedStyle1.css,...sharedStyle2.css,...sharedStyle3.css,...sharedStyle4.css,...sharedStyle5.css,'.framer-m2URK[data-border=\"true\"]::after, .framer-m2URK [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 459\n * @framerIntrinsicWidth 575\n * @framerCanvasComponentVariantDetails {\"propertyName\":\"variant\",\"data\":{\"default\":{\"layout\":[\"fixed\",\"auto\"]}}}\n * @framerVariables {\"RLYruWW0a\":\"image\",\"aWgDXYqV_\":\"industry\",\"wxYaM1O2N\":\"projectName\",\"vKmuugASL\":\"description\"}\n * @framerImmutableVariables true\n * @framerDisplayContentsDiv false\n * @framerComponentViewportWidth true\n */const FramerAJk7X8LQA=withCSS(Component,css,\"framer-m2URK\");export default FramerAJk7X8LQA;FramerAJk7X8LQA.displayName=\"Cards/Projects\";FramerAJk7X8LQA.defaultProps={height:459,width:575};addPropertyControls(FramerAJk7X8LQA,{RLYruWW0a:{title:\"Image\",type:ControlType.ResponsiveImage},aWgDXYqV_:{defaultValue:\"Industry\",displayTextArea:false,title:\"Industry\",type:ControlType.String},wxYaM1O2N:{defaultValue:\"Project name\",displayTextArea:false,title:\"Project name\",type:ControlType.String},vKmuugASL:{defaultValue:\"<p>Description</p>\",title:\"Description\",type:ControlType.RichText}});addFonts(FramerAJk7X8LQA,[{explicitInter:true,fonts:[{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F\",url:\"https://framerusercontent.com/assets/5vvr9Vy74if2I6bQbJvbw7SY1pQ.woff2\",weight:\"400\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116\",url:\"https://framerusercontent.com/assets/EOr0mi4hNtlgWNn9if640EZzXCo.woff2\",weight:\"400\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+1F00-1FFF\",url:\"https://framerusercontent.com/assets/Y9k9QrlZAqio88Klkmbd8VoMQc.woff2\",weight:\"400\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0370-03FF\",url:\"https://framerusercontent.com/assets/OYrD2tBIBPvoJXiIHnLoOXnY9M.woff2\",weight:\"400\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF\",url:\"https://framerusercontent.com/assets/JeYwfuaPfZHQhEG8U5gtPDZ7WQ.woff2\",weight:\"400\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD\",url:\"https://framerusercontent.com/assets/vQyevYAyHtARFwPqUzQGpnDs.woff2\",weight:\"400\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB\",url:\"https://framerusercontent.com/assets/b6Y37FthZeALduNqHicBT6FutY.woff2\",weight:\"400\"}]},...getFontsFromSharedStyle(sharedStyle.fonts),...getFontsFromSharedStyle(sharedStyle1.fonts),...getFontsFromSharedStyle(sharedStyle2.fonts),...getFontsFromSharedStyle(sharedStyle3.fonts),...getFontsFromSharedStyle(sharedStyle4.fonts),...getFontsFromSharedStyle(sharedStyle5.fonts)],{supportsExplicitInterCodegen:true});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"FramerAJk7X8LQA\",\"slots\":[],\"annotations\":{\"framerImmutableVariables\":\"true\",\"framerContractVersion\":\"1\",\"framerIntrinsicWidth\":\"575\",\"framerComponentViewportWidth\":\"true\",\"framerDisplayContentsDiv\":\"false\",\"framerVariables\":\"{\\\"RLYruWW0a\\\":\\\"image\\\",\\\"aWgDXYqV_\\\":\\\"industry\\\",\\\"wxYaM1O2N\\\":\\\"projectName\\\",\\\"vKmuugASL\\\":\\\"description\\\"}\",\"framerCanvasComponentVariantDetails\":\"{\\\"propertyName\\\":\\\"variant\\\",\\\"data\\\":{\\\"default\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"auto\\\"]}}}\",\"framerIntrinsicHeight\":\"459\"}},\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./AJk7X8LQA.map", "function addUniqueItem(t,e){-1===t.indexOf(e)&&t.push(e)}function removeItem(t,e){const n=t.indexOf(e);n>-1&&t.splice(n,1)}const clamp=(t,e,n)=>Math.min(Math.max(n,t),e);const t={duration:.3,delay:0,endDelay:0,repeat:0,easing:\"ease\"};const isNumber=t=>\"number\"===typeof t;const isEasingList=t=>Array.isArray(t)&&!isNumber(t[0]);const wrap=(t,e,n)=>{const o=e-t;return((n-t)%o+o)%o+t};function getEasingForSegment(t,e){return isEasingList(t)?t[wrap(0,t.length,e)]:t}const mix=(t,e,n)=>-n*t+n*e+t;const noop=()=>{};const noopReturn=t=>t;const progress=(t,e,n)=>e-t===0?1:(n-t)/(e-t);function fillOffset(t,e){const n=t[t.length-1];for(let o=1;o<=e;o++){const s=progress(0,e,o);t.push(mix(n,1,s))}}function defaultOffset(t){const e=[0];fillOffset(e,t-1);return e}function interpolate(t,e=defaultOffset(t.length),n=noopReturn){const o=t.length;const s=o-e.length;s>0&&fillOffset(e,s);return s=>{let f=0;for(;f<o-2;f++)if(s<e[f+1])break;let r=clamp(0,1,progress(e[f],e[f+1],s));const c=getEasingForSegment(n,f);r=c(r);return mix(t[f],t[f+1],r)}}const isCubicBezier=t=>Array.isArray(t)&&isNumber(t[0]);const isEasingGenerator=t=>\"object\"===typeof t&&Boolean(t.createAnimation);const isFunction=t=>\"function\"===typeof t;const isString=t=>\"string\"===typeof t;const e={ms:t=>1e3*t,s:t=>t/1e3};\n/*\n  Convert velocity into velocity per second\n\n  @param [number]: Unit per frame\n  @param [number]: Frame duration in ms\n*/function velocityPerSecond(t,e){return e?t*(1e3/e):0}export{addUniqueItem,clamp,defaultOffset,t as defaults,fillOffset,getEasingForSegment,interpolate,isCubicBezier,isEasingGenerator,isEasingList,isFunction,isNumber,isString,mix,noop,noopReturn,progress,removeItem,e as time,velocityPerSecond,wrap};\n\n//# sourceMappingURL=index.es.js.map", "import{noopReturn as t,clamp as n}from\"@motionone/utils\";const calcBezier=(t,n,e)=>(((1-3*e+3*n)*t+(3*e-6*n))*t+3*n)*t;const e=1e-7;const i=12;function binarySubdivide(t,n,o,r,c){let u;let a;let s=0;do{a=n+(o-n)/2;u=calcBezier(a,r,c)-t;u>0?o=a:n=a}while(Math.abs(u)>e&&++s<i);return a}function cubicBezier(n,e,i,o){if(n===e&&i===o)return t;const getTForX=t=>binarySubdivide(t,0,1,n,i);return t=>0===t||1===t?t:calcBezier(getTForX(t),e,o)}const steps=(t,e=\"end\")=>i=>{i=\"end\"===e?Math.min(i,.999):Math.max(i,.001);const o=i*t;const r=\"end\"===e?Math.floor(o):Math.ceil(o);return n(0,1,r/t)};export{cubicBezier,steps};\n\n//# sourceMappingURL=index.es.js.map", "import{isFunction as t,isCubicBezier as i,noopReturn as e,defaults as s,isEasingGenerator as a,isEasingList as n,interpolate as r}from\"@motionone/utils\";import{cubicBezier as o,steps as h}from\"@motionone/easing\";const l={ease:o(.25,.1,.25,1),\"ease-in\":o(.42,0,1,1),\"ease-in-out\":o(.42,0,.58,1),\"ease-out\":o(0,0,.58,1)};const u=/\\((.*?)\\)/;function getEasingFunction(s){if(t(s))return s;if(i(s))return o(...s);const a=l[s];if(a)return a;if(s.startsWith(\"steps\")){const t=u.exec(s);if(t){const i=t[1].split(\",\");return h(parseFloat(i[0]),i[1].trim())}}return e}class Animation{constructor(t,i=[0,1],{easing:o,duration:h=s.duration,delay:l=s.delay,endDelay:u=s.endDelay,repeat:m=s.repeat,offset:c,direction:p=\"normal\",autoplay:d=true}={}){this.startTime=null;this.rate=1;this.t=0;this.cancelTimestamp=null;this.easing=e;this.duration=0;this.totalDuration=0;this.repeat=0;this.playState=\"idle\";this.finished=new Promise(((t,i)=>{this.resolve=t;this.reject=i}));o=o||s.easing;if(a(o)){const t=o.createAnimation(i);o=t.easing;i=t.keyframes||i;h=t.duration||h}this.repeat=m;this.easing=n(o)?e:getEasingFunction(o);this.updateDuration(h);const f=r(i,c,n(o)?o.map(getEasingFunction):e);this.tick=i=>{var e;l;let s=0;s=this.pauseTime!==void 0?this.pauseTime:(i-this.startTime)*this.rate;this.t=s;s/=1e3;s=Math.max(s-l,0);this.playState===\"finished\"&&this.pauseTime===void 0&&(s=this.totalDuration);const a=s/this.duration;let n=Math.floor(a);let r=a%1;!r&&a>=1&&(r=1);r===1&&n--;const o=n%2;(p===\"reverse\"||p===\"alternate\"&&o||p===\"alternate-reverse\"&&!o)&&(r=1-r);const h=s>=this.totalDuration?1:Math.min(r,1);const m=f(this.easing(h));t(m);const c=this.pauseTime===void 0&&(this.playState===\"finished\"||s>=this.totalDuration+u);if(c){this.playState=\"finished\";(e=this.resolve)===null||e===void 0?void 0:e.call(this,m)}else this.playState!==\"idle\"&&(this.frameRequestId=requestAnimationFrame(this.tick))};d&&this.play()}play(){const t=performance.now();this.playState=\"running\";this.pauseTime!==void 0?this.startTime=t-this.pauseTime:this.startTime||(this.startTime=t);this.cancelTimestamp=this.startTime;this.pauseTime=void 0;this.frameRequestId=requestAnimationFrame(this.tick)}pause(){this.playState=\"paused\";this.pauseTime=this.t}finish(){this.playState=\"finished\";this.tick(0)}stop(){var t;this.playState=\"idle\";this.frameRequestId!==void 0&&cancelAnimationFrame(this.frameRequestId);(t=this.reject)===null||t===void 0?void 0:t.call(this,false)}cancel(){this.stop();this.tick(this.cancelTimestamp)}reverse(){this.rate*=-1}commitStyles(){}updateDuration(t){this.duration=t;this.totalDuration=t*(this.repeat+1)}get currentTime(){return this.t}set currentTime(t){this.pauseTime!==void 0||this.rate===0?this.pauseTime=t:this.startTime=performance.now()-t/this.rate}get playbackRate(){return this.rate}set playbackRate(t){this.rate=t}}export{Animation,getEasingFunction};\n//# sourceMappingURL=index.es.js.map\n", "var n={};Object.defineProperty(n,\"__esModule\",{value:true});n.warning=function(){};n.invariant=function(){};const e=n.__esModule,t=n.warning,r=n.invariant;export default n;export{e as __esModule,r as invariant,t as warning};\n\n//# sourceMappingURL=index.js.map", "class MotionValue{setAnimation(i){this.animation=i;i===null||i===void 0?void 0:i.finished.then((()=>this.clearAnimation())).catch((()=>{}))}clearAnimation(){this.animation=this.generator=void 0}}export{MotionValue};\n//# sourceMappingURL=index.es.js.map\n", "var extendStatics=function(e,t){extendStatics=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])};return extendStatics(e,t)};function __extends(e,t){if(typeof t!==\"function\"&&t!==null)throw new TypeError(\"Class extends value \"+String(t)+\" is not a constructor or null\");extendStatics(e,t);function __(){this.constructor=e}e.prototype=t===null?Object.create(t):(__.prototype=t.prototype,new __)}var __assign=function(){__assign=Object.assign||function __assign(e){for(var t,r=1,n=arguments.length;r<n;r++){t=arguments[r];for(var o in t)Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o])}return e};return __assign.apply(this,arguments)};function __rest(e,t){var r={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(e!=null&&typeof Object.getOwnPropertySymbols===\"function\"){var o=0;for(n=Object.getOwnPropertySymbols(e);o<n.length;o++)t.indexOf(n[o])<0&&Object.prototype.propertyIsEnumerable.call(e,n[o])&&(r[n[o]]=e[n[o]])}return r}function __decorate(e,t,r,n){var o,a=arguments.length,i=a<3?t:n===null?n=Object.getOwnPropertyDescriptor(t,r):n;if(typeof Reflect===\"object\"&&typeof Reflect.decorate===\"function\")i=Reflect.decorate(e,t,r,n);else for(var c=e.length-1;c>=0;c--)(o=e[c])&&(i=(a<3?o(i):a>3?o(t,r,i):o(t,r))||i);return a>3&&i&&Object.defineProperty(t,r,i),i}function __param(e,t){return function(r,n){t(r,n,e)}}function __esDecorate(e,t,r,n,o,a){function accept(e){if(e!==void 0&&typeof e!==\"function\")throw new TypeError(\"Function expected\");return e}var i=n.kind,c=i===\"getter\"?\"get\":i===\"setter\"?\"set\":\"value\";var s=!t&&e?n.static?e:e.prototype:null;var l=t||(s?Object.getOwnPropertyDescriptor(s,n.name):{});var u,_=false;for(var f=r.length-1;f>=0;f--){var p={};for(var y in n)p[y]=y===\"access\"?{}:n[y];for(var y in n.access)p.access[y]=n.access[y];p.addInitializer=function(e){if(_)throw new TypeError(\"Cannot add initializers after decoration has completed\");a.push(accept(e||null))};var d=(0,r[f])(i===\"accessor\"?{get:l.get,set:l.set}:l[c],p);if(i===\"accessor\"){if(d===void 0)continue;if(d===null||typeof d!==\"object\")throw new TypeError(\"Object expected\");(u=accept(d.get))&&(l.get=u);(u=accept(d.set))&&(l.set=u);(u=accept(d.init))&&o.unshift(u)}else(u=accept(d))&&(i===\"field\"?o.unshift(u):l[c]=u)}s&&Object.defineProperty(s,n.name,l);_=true}function __runInitializers(e,t,r){var n=arguments.length>2;for(var o=0;o<t.length;o++)r=n?t[o].call(e,r):t[o].call(e);return n?r:void 0}function __propKey(e){return typeof e===\"symbol\"?e:\"\".concat(e)}function __setFunctionName(e,t,r){typeof t===\"symbol\"&&(t=t.description?\"[\".concat(t.description,\"]\"):\"\");return Object.defineProperty(e,\"name\",{configurable:true,value:r?\"\".concat(r,\" \",t):t})}function __metadata(e,t){if(typeof Reflect===\"object\"&&typeof Reflect.metadata===\"function\")return Reflect.metadata(e,t)}function __awaiter(e,t,r,n){function adopt(e){return e instanceof r?e:new r((function(t){t(e)}))}return new(r||(r=Promise))((function(r,o){function fulfilled(e){try{step(n.next(e))}catch(e){o(e)}}function rejected(e){try{step(n.throw(e))}catch(e){o(e)}}function step(e){e.done?r(e.value):adopt(e.value).then(fulfilled,rejected)}step((n=n.apply(e,t||[])).next())}))}function __generator(e,t){var r,n,o,a,i={label:0,sent:function(){if(o[0]&1)throw o[1];return o[1]},trys:[],ops:[]};return a={next:verb(0),throw:verb(1),return:verb(2)},typeof Symbol===\"function\"&&(a[Symbol.iterator]=function(){return this}),a;function verb(e){return function(t){return step([e,t])}}function step(c){if(r)throw new TypeError(\"Generator is already executing.\");while(a&&(a=0,c[0]&&(i=0)),i)try{if(r=1,n&&(o=c[0]&2?n.return:c[0]?n.throw||((o=n.return)&&o.call(n),0):n.next)&&!(o=o.call(n,c[1])).done)return o;(n=0,o)&&(c=[c[0]&2,o.value]);switch(c[0]){case 0:case 1:o=c;break;case 4:i.label++;return{value:c[1],done:false};case 5:i.label++;n=c[1];c=[0];continue;case 7:c=i.ops.pop();i.trys.pop();continue;default:if(!(o=i.trys,o=o.length>0&&o[o.length-1])&&(c[0]===6||c[0]===2)){i=0;continue}if(c[0]===3&&(!o||c[1]>o[0]&&c[1]<o[3])){i.label=c[1];break}if(c[0]===6&&i.label<o[1]){i.label=o[1];o=c;break}if(o&&i.label<o[2]){i.label=o[2];i.ops.push(c);break}o[2]&&i.ops.pop();i.trys.pop();continue}c=t.call(e,i)}catch(e){c=[6,e];n=0}finally{r=o=0}if(c[0]&5)throw c[1];return{value:c[0]?c[1]:void 0,done:true}}}var e=Object.create?function(e,t,r,n){n===void 0&&(n=r);var o=Object.getOwnPropertyDescriptor(t,r);o&&!(\"get\"in o?!t.__esModule:o.writable||o.configurable)||(o={enumerable:true,get:function(){return t[r]}});Object.defineProperty(e,n,o)}:function(e,t,r,n){n===void 0&&(n=r);e[n]=t[r]};function __exportStar(t,r){for(var n in t)n===\"default\"||Object.prototype.hasOwnProperty.call(r,n)||e(r,t,n)}function __values(e){var t=typeof Symbol===\"function\"&&Symbol.iterator,r=t&&e[t],n=0;if(r)return r.call(e);if(e&&typeof e.length===\"number\")return{next:function(){e&&n>=e.length&&(e=void 0);return{value:e&&e[n++],done:!e}}};throw new TypeError(t?\"Object is not iterable.\":\"Symbol.iterator is not defined.\")}function __read(e,t){var r=typeof Symbol===\"function\"&&e[Symbol.iterator];if(!r)return e;var n,o,a=r.call(e),i=[];try{while((t===void 0||t-- >0)&&!(n=a.next()).done)i.push(n.value)}catch(e){o={error:e}}finally{try{n&&!n.done&&(r=a.return)&&r.call(a)}finally{if(o)throw o.error}}return i}\n/** @deprecated */function __spread(){for(var e=[],t=0;t<arguments.length;t++)e=e.concat(__read(arguments[t]));return e}\n/** @deprecated */function __spreadArrays(){for(var e=0,t=0,r=arguments.length;t<r;t++)e+=arguments[t].length;var n=Array(e),o=0;for(t=0;t<r;t++)for(var a=arguments[t],i=0,c=a.length;i<c;i++,o++)n[o]=a[i];return n}function __spreadArray(e,t,r){if(r||arguments.length===2)for(var n,o=0,a=t.length;o<a;o++)if(n||!(o in t)){n||(n=Array.prototype.slice.call(t,0,o));n[o]=t[o]}return e.concat(n||Array.prototype.slice.call(t))}function __await(e){return this instanceof __await?(this.v=e,this):new __await(e)}function __asyncGenerator(e,t,r){if(!Symbol.asyncIterator)throw new TypeError(\"Symbol.asyncIterator is not defined.\");var n,o=r.apply(e,t||[]),a=[];return n={},verb(\"next\"),verb(\"throw\"),verb(\"return\",awaitReturn),n[Symbol.asyncIterator]=function(){return this},n;function awaitReturn(e){return function(t){return Promise.resolve(t).then(e,reject)}}function verb(e,t){if(o[e]){n[e]=function(t){return new Promise((function(r,n){a.push([e,t,r,n])>1||resume(e,t)}))};t&&(n[e]=t(n[e]))}}function resume(e,t){try{step(o[e](t))}catch(e){settle(a[0][3],e)}}function step(e){e.value instanceof __await?Promise.resolve(e.value.v).then(fulfill,reject):settle(a[0][2],e)}function fulfill(e){resume(\"next\",e)}function reject(e){resume(\"throw\",e)}function settle(e,t){(e(t),a.shift(),a.length)&&resume(a[0][0],a[0][1])}}function __asyncDelegator(e){var t,r;return t={},verb(\"next\"),verb(\"throw\",(function(e){throw e})),verb(\"return\"),t[Symbol.iterator]=function(){return this},t;function verb(n,o){t[n]=e[n]?function(t){return(r=!r)?{value:__await(e[n](t)),done:false}:o?o(t):t}:o}}function __asyncValues(e){if(!Symbol.asyncIterator)throw new TypeError(\"Symbol.asyncIterator is not defined.\");var t,r=e[Symbol.asyncIterator];return r?r.call(e):(e=typeof __values===\"function\"?__values(e):e[Symbol.iterator](),t={},verb(\"next\"),verb(\"throw\"),verb(\"return\"),t[Symbol.asyncIterator]=function(){return this},t);function verb(r){t[r]=e[r]&&function(t){return new Promise((function(n,o){t=e[r](t),settle(n,o,t.done,t.value)}))}}function settle(e,t,r,n){Promise.resolve(n).then((function(t){e({value:t,done:r})}),t)}}function __makeTemplateObject(e,t){Object.defineProperty?Object.defineProperty(e,\"raw\",{value:t}):e.raw=t;return e}var t=Object.create?function(e,t){Object.defineProperty(e,\"default\",{enumerable:true,value:t})}:function(e,t){e.default=t};function __importStar(r){if(r&&r.__esModule)return r;var n={};if(r!=null)for(var o in r)o!==\"default\"&&Object.prototype.hasOwnProperty.call(r,o)&&e(n,r,o);t(n,r);return n}function __importDefault(e){return e&&e.__esModule?e:{default:e}}function __classPrivateFieldGet(e,t,r,n){if(r===\"a\"&&!n)throw new TypeError(\"Private accessor was defined without a getter\");if(typeof t===\"function\"?e!==t||!n:!t.has(e))throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");return r===\"m\"?n:r===\"a\"?n.call(e):n?n.value:t.get(e)}function __classPrivateFieldSet(e,t,r,n,o){if(n===\"m\")throw new TypeError(\"Private method is not writable\");if(n===\"a\"&&!o)throw new TypeError(\"Private accessor was defined without a setter\");if(typeof t===\"function\"?e!==t||!o:!t.has(e))throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");return n===\"a\"?o.call(e,r):o?o.value=r:t.set(e,r),r}function __classPrivateFieldIn(e,t){if(t===null||typeof t!==\"object\"&&typeof t!==\"function\")throw new TypeError(\"Cannot use 'in' operator on non-object\");return typeof e===\"function\"?t===e:e.has(t)}function __addDisposableResource(e,t,r){if(t!==null&&t!==void 0){if(typeof t!==\"object\"&&typeof t!==\"function\")throw new TypeError(\"Object expected.\");var n,o;if(r){if(!Symbol.asyncDispose)throw new TypeError(\"Symbol.asyncDispose is not defined.\");n=t[Symbol.asyncDispose]}if(n===void 0){if(!Symbol.dispose)throw new TypeError(\"Symbol.dispose is not defined.\");n=t[Symbol.dispose];r&&(o=n)}if(typeof n!==\"function\")throw new TypeError(\"Object not disposable.\");o&&(n=function(){try{o.call(this)}catch(e){return Promise.reject(e)}});e.stack.push({value:t,dispose:n,async:r})}else r&&e.stack.push({async:true});return t}var r=typeof SuppressedError===\"function\"?SuppressedError:function(e,t,r){var n=new Error(r);return n.name=\"SuppressedError\",n.error=e,n.suppressed=t,n};function __disposeResources(e){function fail(t){e.error=e.hasError?new r(t,e.error,\"An error was suppressed during disposal.\"):t;e.hasError=true}function next(){while(e.stack.length){var t=e.stack.pop();try{var r=t.dispose&&t.dispose.call(t.value);if(t.async)return Promise.resolve(r).then(next,(function(e){fail(e);return next()}))}catch(e){fail(e)}}if(e.hasError)throw e.error}return next()}var n={__extends:__extends,__assign:__assign,__rest:__rest,__decorate:__decorate,__param:__param,__metadata:__metadata,__awaiter:__awaiter,__generator:__generator,__createBinding:e,__exportStar:__exportStar,__values:__values,__read:__read,__spread:__spread,__spreadArrays:__spreadArrays,__spreadArray:__spreadArray,__await:__await,__asyncGenerator:__asyncGenerator,__asyncDelegator:__asyncDelegator,__asyncValues:__asyncValues,__makeTemplateObject:__makeTemplateObject,__importStar:__importStar,__importDefault:__importDefault,__classPrivateFieldGet:__classPrivateFieldGet,__classPrivateFieldSet:__classPrivateFieldSet,__classPrivateFieldIn:__classPrivateFieldIn,__addDisposableResource:__addDisposableResource,__disposeResources:__disposeResources};export{__addDisposableResource,__assign,__asyncDelegator,__asyncGenerator,__asyncValues,__await,__awaiter,__classPrivateFieldGet,__classPrivateFieldIn,__classPrivateFieldSet,e as __createBinding,__decorate,__disposeResources,__esDecorate,__exportStar,__extends,__generator,__importDefault,__importStar,__makeTemplateObject,__metadata,__param,__propKey,__read,__rest,__runInitializers,__setFunctionName,__spread,__spreadArray,__spreadArrays,__values,n as default};\n//# sourceMappingURL=tslib.es6.mjs.map\n", "import{velocityPerSecond as e,time as t,noopReturn as s}from\"@motionone/utils\";const n=5;function calcGeneratorVelocity(t,s,r){const a=Math.max(s-n,0);return e(r-t(a),s-a)}const r={stiffness:100,damping:10,mass:1};const calcDampingRatio=(e=r.stiffness,t=r.damping,s=r.mass)=>t/(2*Math.sqrt(e*s));function hasReachedTarget(e,t,s){return e<t&&s>=t||e>t&&s<=t}const spring=({stiffness:e=r.stiffness,damping:s=r.damping,mass:n=r.mass,from:a=0,to:o=1,velocity:c=0,restSpeed:i,restDistance:h}={})=>{c=c?t.s(c):0;const u={done:false,hasReachedTarget:false,current:a,target:o};const d=o-a;const f=Math.sqrt(e/n)/1e3;const l=calcDampingRatio(e,s,n);const g=Math.abs(d)<5;i||(i=g?.01:2);h||(h=g?.005:.5);let m;if(l<1){const e=f*Math.sqrt(1-l*l);m=t=>o-Math.exp(-l*f*t)*((l*f*d-c)/e*Math.sin(e*t)+d*Math.cos(e*t))}else m=e=>o-Math.exp(-f*e)*(d+(f*d-c)*e);return e=>{u.current=m(e);const t=e===0?c:calcGeneratorVelocity(m,e,u.current);const s=Math.abs(t)<=i;const n=Math.abs(o-u.current)<=h;u.done=s&&n;u.hasReachedTarget=hasReachedTarget(a,o,u.current);return u}};const glide=({from:e=0,velocity:s=0,power:n=.8,decay:r=.325,bounceDamping:a,bounceStiffness:o,changeTarget:c,min:i,max:h,restDistance:u=.5,restSpeed:d})=>{r=t.ms(r);const f={hasReachedTarget:false,done:false,current:e,target:e};const isOutOfBounds=e=>i!==void 0&&e<i||h!==void 0&&e>h;const nearestBoundary=e=>i===void 0?h:h===void 0||Math.abs(i-e)<Math.abs(h-e)?i:h;let l=n*s;const g=e+l;const m=c===void 0?g:c(g);f.target=m;m!==g&&(l=m-e);const calcDelta=e=>-l*Math.exp(-e/r);const calcLatest=e=>m+calcDelta(e);const applyFriction=e=>{const t=calcDelta(e);const s=calcLatest(e);f.done=Math.abs(t)<=u;f.current=f.done?m:s};let p;let M;const checkCatchBoundary=e=>{if(isOutOfBounds(f.current)){p=e;M=spring({from:f.current,to:nearestBoundary(f.current),velocity:calcGeneratorVelocity(calcLatest,e,f.current),damping:a,stiffness:o,restDistance:u,restSpeed:d})}};checkCatchBoundary(0);return e=>{let t=false;if(!M&&p===void 0){t=true;applyFriction(e);checkCatchBoundary(e)}if(p!==void 0&&e>p){f.hasReachedTarget=true;return M(e-p)}f.hasReachedTarget=false;!t&&applyFriction(e);return f}};const a=10;const o=1e4;function pregenerateKeyframes(e,t=s){let n;let r=a;let c=e(0);const i=[t(c.current)];while(!c.done&&r<o){c=e(r);i.push(t(c.done?c.target:c.current));n===void 0&&c.hasReachedTarget&&(n=r);r+=a}const h=r-a;i.length===1&&i.push(c.current);return{keyframes:i,duration:h/1e3,overshootDuration:(n!==null&&n!==void 0?n:h)/1e3}}export{calcGeneratorVelocity,glide,pregenerateKeyframes,spring};\n//# sourceMappingURL=index.es.js.map\n", "import{getEasingFunction as e,Animation as t}from\"@motionone/animation\";import{invariant as n}from\"hey-listen\";import{MotionValue as o}from\"@motionone/types\";import{noopReturn as i,addUniqueItem as s,progress as r,isFunction as a,defaults as c,isCubicBezier as l,isString as f,isEasingGenerator as u,isEasingList as d,isNumber as g,time as m,noop as h,removeItem as p,mix as v,getEasingForSegment as y,defaultOffset as w,fillOffset as E,velocityPerSecond as b,interpolate as A}from\"@motionone/utils\";import{__rest as S}from\"tslib\";import{pregenerateKeyframes as O,calcGeneratorVelocity as x,spring as z,glide as V}from\"@motionone/generators\";const W=new WeakMap;function getAnimationData(e){W.has(e)||W.set(e,{transforms:[],values:new Map});return W.get(e)}function getMotionValue(e,t){e.has(t)||e.set(t,new o);return e.get(t)}const L=[\"\",\"X\",\"Y\",\"Z\"];const T=[\"translate\",\"scale\",\"rotate\",\"skew\"];const M={x:\"translateX\",y:\"translateY\",z:\"translateZ\"};const D={syntax:\"<angle>\",initialValue:\"0deg\",toDefaultUnit:e=>e+\"deg\"};const B={translate:{syntax:\"<length-percentage>\",initialValue:\"0px\",toDefaultUnit:e=>e+\"px\"},rotate:D,scale:{syntax:\"<number>\",initialValue:1,toDefaultUnit:i},skew:D};const k=new Map;const asTransformCssVar=e=>`--motion-${e}`;const N=[\"x\",\"y\",\"z\"];T.forEach((e=>{L.forEach((t=>{N.push(e+t);k.set(asTransformCssVar(e+t),B[e])}))}));const compareTransformOrder=(e,t)=>N.indexOf(e)-N.indexOf(t);const $=new Set(N);const isTransform=e=>$.has(e);const addTransformToElement=(e,t)=>{M[t]&&(t=M[t]);const{transforms:n}=getAnimationData(e);s(n,t);e.style.transform=buildTransformTemplate(n)};const buildTransformTemplate=e=>e.sort(compareTransformOrder).reduce(transformListToString,\"\").trim();const transformListToString=(e,t)=>`${e} ${t}(var(${asTransformCssVar(t)}))`;const isCssVar=e=>e.startsWith(\"--\");const C=new Set;function registerCssVariable(e){if(!C.has(e)){C.add(e);try{const{syntax:t,initialValue:n}=k.has(e)?k.get(e):{};CSS.registerProperty({name:e,inherits:false,syntax:t,initialValue:n})}catch(e){}}}const testAnimation=(e,t)=>document.createElement(\"div\").animate(e,t);const j={cssRegisterProperty:()=>typeof CSS!==\"undefined\"&&Object.hasOwnProperty.call(CSS,\"registerProperty\"),waapi:()=>Object.hasOwnProperty.call(Element.prototype,\"animate\"),partialKeyframes:()=>{try{testAnimation({opacity:[1]})}catch(e){return false}return true},finished:()=>Boolean(testAnimation({opacity:[0,1]},{duration:.001}).finished),linearEasing:()=>{try{testAnimation({opacity:0},{easing:\"linear(0, 1)\"})}catch(e){return false}return true}};const P={};const R={};for(const e in j)R[e]=()=>{P[e]===void 0&&(P[e]=j[e]());return P[e]};const H=.015;const generateLinearEasingPoints=(e,t)=>{let n=\"\";const o=Math.round(t/H);for(let t=0;t<o;t++)n+=e(r(0,o-1,t))+\", \";return n.substring(0,n.length-2)};const convertEasing=(e,t)=>a(e)?R.linearEasing()?`linear(${generateLinearEasingPoints(e,t)})`:c.easing:l(e)?cubicBezierAsString(e):e;const cubicBezierAsString=([e,t,n,o])=>`cubic-bezier(${e}, ${t}, ${n}, ${o})`;function hydrateKeyframes(e,t){for(let n=0;n<e.length;n++)e[n]===null&&(e[n]=n?e[n-1]:t());return e}const keyframesList=e=>Array.isArray(e)?e:[e];function getStyleName(e){M[e]&&(e=M[e]);return isTransform(e)?asTransformCssVar(e):e}const I={get:(e,t)=>{t=getStyleName(t);let n=isCssVar(t)?e.style.getPropertyValue(t):getComputedStyle(e)[t];if(!n&&n!==0){const e=k.get(t);e&&(n=e.initialValue)}return n},set:(e,t,n)=>{t=getStyleName(t);isCssVar(t)?e.style.setProperty(t,n):e.style[t]=n}};function stopAnimation(e,t=true){if(e&&e.playState!==\"finished\")try{if(e.stop)e.stop();else{t&&e.commitStyles();e.cancel()}}catch(e){}}function getUnitConverter(e,t){var n;let o=(t===null||t===void 0?void 0:t.toDefaultUnit)||i;const s=e[e.length-1];if(f(s)){const e=((n=s.match(/(-?[\\d.]+)([a-z%]*)/))===null||n===void 0?void 0:n[2])||\"\";e&&(o=t=>t+e)}return o}function getDevToolsRecord(){return window.__MOTION_DEV_TOOLS_RECORD}function animateStyle(e,t,n,o={},i){const s=getDevToolsRecord();const r=o.record!==false&&s;let l;let{duration:f=c.duration,delay:p=c.delay,endDelay:v=c.endDelay,repeat:y=c.repeat,easing:w=c.easing,persist:E=false,direction:b,offset:A,allowWebkitAcceleration:S=false,autoplay:O=true}=o;const x=getAnimationData(e);const z=isTransform(t);let V=R.waapi();z&&addTransformToElement(e,t);const W=getStyleName(t);const L=getMotionValue(x.values,W);const T=k.get(W);stopAnimation(L.animation,!(u(w)&&L.generator)&&o.record!==false);return()=>{const readInitialValue=()=>{var t,n;return(n=(t=I.get(e,W))!==null&&t!==void 0?t:T===null||T===void 0?void 0:T.initialValue)!==null&&n!==void 0?n:0};let c=hydrateKeyframes(keyframesList(n),readInitialValue);const x=getUnitConverter(c,T);if(u(w)){const e=w.createAnimation(c,t!==\"opacity\",readInitialValue,W,L);w=e.easing;c=e.keyframes||c;f=e.duration||f}isCssVar(W)&&(R.cssRegisterProperty()?registerCssVariable(W):V=false);z&&!R.linearEasing()&&(a(w)||d(w)&&w.some(a))&&(V=false);if(V){T&&(c=c.map((e=>g(e)?T.toDefaultUnit(e):e)));c.length!==1||R.partialKeyframes()&&!r||c.unshift(readInitialValue());const t={delay:m.ms(p),duration:m.ms(f),endDelay:m.ms(v),easing:d(w)?void 0:convertEasing(w,f),direction:b,iterations:y+1,fill:\"both\"};l=e.animate({[W]:c,offset:A,easing:d(w)?w.map((e=>convertEasing(e,f))):void 0},t);l.finished||(l.finished=new Promise(((e,t)=>{l.onfinish=e;l.oncancel=t})));const n=c[c.length-1];l.finished.then((()=>{if(!E){I.set(e,W,n);l.cancel()}})).catch(h);S||(l.playbackRate=1.000001)}else if(i&&z){c=c.map((e=>typeof e===\"string\"?parseFloat(e):e));c.length===1&&c.unshift(parseFloat(readInitialValue()));l=new i((t=>{I.set(e,W,x?x(t):t)}),c,Object.assign(Object.assign({},o),{duration:f,easing:w}))}else{const t=c[c.length-1];I.set(e,W,T&&g(t)?T.toDefaultUnit(t):t)}r&&s(e,t,c,{duration:f,delay:p,easing:w,repeat:y,offset:A},\"motion-one\");L.setAnimation(l);l&&!O&&l.pause();return l}}const getOptions=(e,t)=>e[t]?Object.assign(Object.assign({},e),e[t]):Object.assign({},e);function resolveElements(e,t){var n;if(typeof e===\"string\")if(t){(n=t[e])!==null&&n!==void 0?n:t[e]=document.querySelectorAll(e);e=t[e]}else e=document.querySelectorAll(e);else e instanceof Element&&(e=[e]);return Array.from(e||[])}const createAnimation=e=>e();const withControls=(e,t,n=c.duration)=>new Proxy({animations:e.map(createAnimation).filter(Boolean),duration:n,options:t},U);const getActiveAnimation=e=>e.animations[0];const U={get:(e,t)=>{const n=getActiveAnimation(e);switch(t){case\"duration\":return e.duration;case\"currentTime\":return m.s((n===null||n===void 0?void 0:n[t])||0);case\"playbackRate\":case\"playState\":return n===null||n===void 0?void 0:n[t];case\"finished\":e.finished||(e.finished=Promise.all(e.animations.map(selectFinished)).catch(h));return e.finished;case\"stop\":return()=>{e.animations.forEach((e=>stopAnimation(e)))};case\"forEachNative\":return t=>{e.animations.forEach((n=>t(n,e)))};default:return typeof(n===null||n===void 0?void 0:n[t])===\"undefined\"?void 0:()=>e.animations.forEach((e=>e[t]()))}},set:(e,t,n)=>{switch(t){case\"currentTime\":n=m.ms(n);case\"playbackRate\":for(let o=0;o<e.animations.length;o++)e.animations[o][t]=n;return true}return false}};const selectFinished=e=>e.finished;function stagger(t=.1,{start:n=0,from:o=0,easing:i}={}){return(s,r)=>{const a=g(o)?o:getFromIndex(o,r);const c=Math.abs(a-s);let l=t*c;if(i){const n=r*t;const o=e(i);l=o(l/n)*n}return n+l}}function getFromIndex(e,t){if(e===\"first\")return 0;{const n=t-1;return e===\"last\"?n:n/2}}function resolveOption(e,t,n){return a(e)?e(t,n):e}function createAnimate(e){return function animate(t,o,i={}){t=resolveElements(t);const s=t.length;n(Boolean(s),\"No valid element provided.\");n(Boolean(o),\"No keyframes defined.\");const r=[];for(let n=0;n<s;n++){const a=t[n];for(const t in o){const c=getOptions(i,t);c.delay=resolveOption(c.delay,n,s);const l=animateStyle(a,t,o[t],c,e);r.push(l)}}return withControls(r,i,i.duration)}}const F=createAnimate(t);function calcNextTime(e,t,n,o){var i;return g(t)?t:t.startsWith(\"-\")||t.startsWith(\"+\")?Math.max(0,e+parseFloat(t)):t===\"<\"?n:(i=o.get(t))!==null&&i!==void 0?i:e}function eraseKeyframes(e,t,n){for(let o=0;o<e.length;o++){const i=e[o];if(i.at>t&&i.at<n){p(e,i);o--}}}function addKeyframes(e,t,n,o,i,s){eraseKeyframes(e,i,s);for(let r=0;r<t.length;r++)e.push({value:t[r],at:v(i,s,o[r]),easing:y(n,r)})}function compareByTime(e,t){return e.at===t.at?e.value===null?1:-1:e.at-t.at}function timeline(e,n={}){var o;const i=createAnimationsFromTimeline(e,n);const s=i.map((e=>animateStyle(...e,t))).filter(Boolean);return withControls(s,n,(o=i[0])===null||o===void 0?void 0:o[3].duration)}function createAnimationsFromTimeline(e,t={}){var{defaultOptions:o={}}=t,i=S(t,[\"defaultOptions\"]);const s=[];const a=new Map;const l={};const d=new Map;let g=0;let m=0;let h=0;for(let t=0;t<e.length;t++){const i=e[t];if(f(i)){d.set(i,m);continue}if(!Array.isArray(i)){d.set(i.name,calcNextTime(m,i.at,g,d));continue}const[s,r,p={}]=i;p.at!==void 0&&(m=calcNextTime(m,p.at,g,d));let v=0;const y=resolveElements(s,l);const b=y.length;for(let e=0;e<b;e++){const t=y[e];const i=getElementSequence(t,a);for(const t in r){const s=getValueSequence(t,i);let a=keyframesList(r[t]);const l=getOptions(p,t);let{duration:f=o.duration||c.duration,easing:d=o.easing||c.easing}=l;if(u(d)){n(t===\"opacity\"||a.length>1,\"spring must be provided 2 keyframes within timeline()\");const e=d.createAnimation(a,t!==\"opacity\",(()=>0),t);d=e.easing;a=e.keyframes||a;f=e.duration||f}const g=resolveOption(p.delay,e,b)||0;const y=m+g;const A=y+f;let{offset:S=w(a.length)}=l;S.length===1&&S[0]===0&&(S[1]=1);const O=S.length-a.length;O>0&&E(S,O);a.length===1&&a.unshift(null);addKeyframes(s,a,d,S,y,A);v=Math.max(g+f,v);h=Math.max(A,h)}}g=m;m+=v}a.forEach(((e,t)=>{for(const n in e){const a=e[n];a.sort(compareByTime);const l=[];const f=[];const u=[];for(let e=0;e<a.length;e++){const{at:t,value:n,easing:o}=a[e];l.push(n);f.push(r(0,h,t));u.push(o||c.easing)}if(f[0]!==0){f.unshift(0);l.unshift(l[0]);u.unshift(\"linear\")}if(f[f.length-1]!==1){f.push(1);l.push(null)}s.push([t,n,l,Object.assign(Object.assign(Object.assign({},o),{duration:h,easing:u,offset:f}),i)])}}));return s}function getElementSequence(e,t){!t.has(e)&&t.set(e,{});return t.get(e)}function getValueSequence(e,t){t[e]||(t[e]=[]);return t[e]}function canGenerate(e){return g(e)&&!isNaN(e)}function getAsNumber(e){return f(e)?parseFloat(e):e}function createGeneratorEasing(e){const t=new WeakMap;return(n={})=>{const o=new Map;const getGenerator=(t=0,i=100,s=0,r=false)=>{const a=`${t}-${i}-${s}-${r}`;o.has(a)||o.set(a,e(Object.assign({from:t,to:i,velocity:s},n)));return o.get(a)};const getKeyframes=(e,n)=>{t.has(e)||t.set(e,O(e,n));return t.get(e)};return{createAnimation:(e,t=true,n,o,s)=>{let r;let a;let c;let l=0;let f=i;const u=e.length;if(t){f=getUnitConverter(e,o?k.get(getStyleName(o)):void 0);const t=e[u-1];c=getAsNumber(t);if(u>1&&e[0]!==null)a=getAsNumber(e[0]);else{const e=s===null||s===void 0?void 0:s.generator;if(e){const{animation:t,generatorStartTime:n}=s;const o=(t===null||t===void 0?void 0:t.startTime)||n||0;const i=(t===null||t===void 0?void 0:t.currentTime)||performance.now()-o;const r=e(i).current;a=r;l=x((t=>e(t).current),i,r)}else n&&(a=getAsNumber(n()))}}if(canGenerate(a)&&canGenerate(c)){const e=getGenerator(a,c,l,o===null||o===void 0?void 0:o.includes(\"scale\"));r=Object.assign(Object.assign({},getKeyframes(e,f)),{easing:\"linear\"});if(s){s.generator=e;s.generatorStartTime=performance.now()}}if(!r){const e=getKeyframes(getGenerator(0,100));r={easing:\"ease\",duration:e.overshootDuration}}return r}}}}const G=createGeneratorEasing(z);const q=createGeneratorEasing(V);const K={any:0,all:1};function inView$1(e,t,{root:n,margin:o,amount:i=\"any\"}={}){if(typeof IntersectionObserver===\"undefined\")return()=>{};const s=resolveElements(e);const r=new WeakMap;const onIntersectionChange=e=>{e.forEach((e=>{const n=r.get(e.target);if(e.isIntersecting!==Boolean(n))if(e.isIntersecting){const n=t(e);a(n)?r.set(e.target,n):c.unobserve(e.target)}else if(n){n(e);r.delete(e.target)}}))};const c=new IntersectionObserver(onIntersectionChange,{root:n,rootMargin:o,threshold:typeof i===\"number\"?i:K[i]});s.forEach((e=>c.observe(e)));return()=>c.disconnect()}const _=new WeakMap;let Z;function getElementSize(e,t){if(t){const{inlineSize:e,blockSize:n}=t[0];return{width:e,height:n}}return e instanceof SVGElement&&\"getBBox\"in e?e.getBBox():{width:e.offsetWidth,height:e.offsetHeight}}function notifyTarget({target:e,contentRect:t,borderBoxSize:n}){var o;(o=_.get(e))===null||o===void 0?void 0:o.forEach((o=>{o({target:e,contentSize:t,get size(){return getElementSize(e,n)}})}))}function notifyAll(e){e.forEach(notifyTarget)}function createResizeObserver(){typeof ResizeObserver!==\"undefined\"&&(Z=new ResizeObserver(notifyAll))}function resizeElement(e,t){Z||createResizeObserver();const n=resolveElements(e);n.forEach((e=>{let n=_.get(e);if(!n){n=new Set;_.set(e,n)}n.add(t);Z===null||Z===void 0?void 0:Z.observe(e)}));return()=>{n.forEach((e=>{const n=_.get(e);n===null||n===void 0?void 0:n.delete(t);(n===null||n===void 0?void 0:n.size)||(Z===null||Z===void 0?void 0:Z.unobserve(e))}))}}const X=new Set;let Y;function createWindowResizeHandler(){Y=()=>{const e={width:window.innerWidth,height:window.innerHeight};const t={target:window,size:e,contentSize:e};X.forEach((e=>e(t)))};window.addEventListener(\"resize\",Y)}function resizeWindow(e){X.add(e);Y||createWindowResizeHandler();return()=>{X.delete(e);!X.size&&Y&&(Y=void 0)}}function resize(e,t){return a(e)?resizeWindow(e):resizeElement(e,t)}const J=50;const createAxisInfo=()=>({current:0,offset:[],progress:0,scrollLength:0,targetOffset:0,targetLength:0,containerLength:0,velocity:0});const createScrollInfo=()=>({time:0,x:createAxisInfo(),y:createAxisInfo()});const Q={x:{length:\"Width\",position:\"Left\"},y:{length:\"Height\",position:\"Top\"}};function updateAxisInfo(e,t,n,o){const i=n[t];const{length:s,position:a}=Q[t];const c=i.current;const l=n.time;i.current=e[`scroll${a}`];i.scrollLength=e[`scroll${s}`]-e[`client${s}`];i.offset.length=0;i.offset[0]=0;i.offset[1]=i.scrollLength;i.progress=r(0,i.scrollLength,i.current);const f=o-l;i.velocity=f>J?0:b(i.current-c,f)}function updateScrollInfo(e,t,n){updateAxisInfo(e,\"x\",t,n);updateAxisInfo(e,\"y\",t,n);t.time=n}function calcInset(e,t){let n={x:0,y:0};let o=e;while(o&&o!==t)if(o instanceof HTMLElement){n.x+=o.offsetLeft;n.y+=o.offsetTop;o=o.offsetParent}else if(o instanceof SVGGraphicsElement&&\"getBBox\"in o){const{top:e,left:t}=o.getBBox();n.x+=t;n.y+=e;while(o&&o.tagName!==\"svg\")o=o.parentNode}return n}const ee={Enter:[[0,1],[1,1]],Exit:[[0,0],[1,0]],Any:[[1,0],[0,1]],All:[[0,0],[1,1]]};const te={start:0,center:.5,end:1};function resolveEdge(e,t,n=0){let o=0;te[e]!==void 0&&(e=te[e]);if(f(e)){const t=parseFloat(e);e.endsWith(\"px\")?o=t:e.endsWith(\"%\")?e=t/100:e.endsWith(\"vw\")?o=t/100*document.documentElement.clientWidth:e.endsWith(\"vh\")?o=t/100*document.documentElement.clientHeight:e=t}g(e)&&(o=t*e);return n+o}const ne=[0,0];function resolveOffset(e,t,n,o){let i=Array.isArray(e)?e:ne;let s=0;let r=0;if(g(e))i=[e,e];else if(f(e)){e=e.trim();i=e.includes(\" \")?e.split(\" \"):[e,te[e]?e:\"0\"]}s=resolveEdge(i[0],n,o);r=resolveEdge(i[1],t);return s-r}const oe={x:0,y:0};function resolveOffsets(e,t,n){let{offset:o=ee.All}=n;const{target:i=e,axis:s=\"y\"}=n;const r=s===\"y\"?\"height\":\"width\";const a=i!==e?calcInset(i,e):oe;const c=i===e?{width:e.scrollWidth,height:e.scrollHeight}:{width:i.clientWidth,height:i.clientHeight};const l={width:e.clientWidth,height:e.clientHeight};t[s].offset.length=0;let f=!t[s].interpolate;const u=o.length;for(let e=0;e<u;e++){const n=resolveOffset(o[e],l[r],c[r],a[s]);f||n===t[s].interpolatorOffsets[e]||(f=true);t[s].offset[e]=n}if(f){t[s].interpolate=A(w(u),t[s].offset);t[s].interpolatorOffsets=[...t[s].offset]}t[s].progress=t[s].interpolate(t[s].current)}function measure(e,t=e,n){n.x.targetOffset=0;n.y.targetOffset=0;if(t!==e){let o=t;while(o&&o!=e){n.x.targetOffset+=o.offsetLeft;n.y.targetOffset+=o.offsetTop;o=o.offsetParent}}n.x.targetLength=t===e?t.scrollWidth:t.clientWidth;n.y.targetLength=t===e?t.scrollHeight:t.clientHeight;n.x.containerLength=e.clientWidth;n.y.containerLength=e.clientHeight}function createOnScrollHandler(e,t,n,o={}){const i=o.axis||\"y\";return{measure:()=>measure(e,o.target,n),update:t=>{updateScrollInfo(e,n,t);(o.offset||o.target)&&resolveOffsets(e,n,o)},notify:a(t)?()=>t(n):scrubAnimation(t,n[i])}}function scrubAnimation(e,t){e.pause();e.forEachNative(((e,{easing:t})=>{var n,o;if(e.updateDuration){t||(e.easing=i);e.updateDuration(1)}else{const i={duration:1e3};t||(i.easing=\"linear\");(o=(n=e.effect)===null||n===void 0?void 0:n.updateTiming)===null||o===void 0?void 0:o.call(n,i)}}));return()=>{e.currentTime=t.progress}}const ie=new WeakMap;const se=new WeakMap;const re=new WeakMap;const getEventTarget=e=>e===document.documentElement?window:e;function scroll(e,t={}){var{container:n=document.documentElement}=t,o=S(t,[\"container\"]);let i=re.get(n);if(!i){i=new Set;re.set(n,i)}const s=createScrollInfo();const r=createOnScrollHandler(n,e,s,o);i.add(r);if(!ie.has(n)){const listener=()=>{const e=performance.now();for(const e of i)e.measure();for(const t of i)t.update(e);for(const e of i)e.notify()};ie.set(n,listener);const e=getEventTarget(n);window.addEventListener(\"resize\",listener,{passive:true});n!==document.documentElement&&se.set(n,resize(n,listener));e.addEventListener(\"scroll\",listener,{passive:true})}const a=ie.get(n);const c=requestAnimationFrame(a);return()=>{var t;typeof e!==\"function\"&&e.stop();cancelAnimationFrame(c);const o=re.get(n);if(!o)return;o.delete(r);if(o.size)return;const i=ie.get(n);ie.delete(n);if(i){getEventTarget(n).removeEventListener(\"scroll\",i);(t=se.get(n))===null||t===void 0?void 0:t();window.removeEventListener(\"resize\",i)}}}function hasChanged(e,t){return typeof e!==typeof t||(Array.isArray(e)&&Array.isArray(t)?!shallowCompare(e,t):e!==t)}function shallowCompare(e,t){const n=t.length;if(n!==e.length)return false;for(let o=0;o<n;o++)if(t[o]!==e[o])return false;return true}function isVariant(e){return typeof e===\"object\"}function resolveVariant(e,t){return isVariant(e)?e:e&&t?t[e]:void 0}let ae;function processScheduledAnimations(){if(!ae)return;const e=ae.sort(compareByDepth).map(fireAnimateUpdates);e.forEach(fireNext);e.forEach(fireNext);ae=void 0}function scheduleAnimation(e){if(ae)s(ae,e);else{ae=[e];requestAnimationFrame(processScheduledAnimations)}}function unscheduleAnimation(e){ae&&p(ae,e)}const compareByDepth=(e,t)=>e.getDepth()-t.getDepth();const fireAnimateUpdates=e=>e.animateUpdates();const fireNext=e=>e.next();const motionEvent=(e,t)=>new CustomEvent(e,{detail:{target:t}});function dispatchPointerEvent(e,t,n){e.dispatchEvent(new CustomEvent(t,{detail:{originalEvent:n}}))}function dispatchViewEvent(e,t,n){e.dispatchEvent(new CustomEvent(t,{detail:{originalEntry:n}}))}const ce={isActive:e=>Boolean(e.inView),subscribe:(e,{enable:t,disable:n},{inViewOptions:o={}})=>{const{once:i}=o,s=S(o,[\"once\"]);return inView$1(e,(o=>{t();dispatchViewEvent(e,\"viewenter\",o);if(!i)return t=>{n();dispatchViewEvent(e,\"viewleave\",t)}}),s)}};const mouseEvent=(e,t,n)=>o=>{if(!o.pointerType||o.pointerType===\"mouse\"){n();dispatchPointerEvent(e,t,o)}};const le={isActive:e=>Boolean(e.hover),subscribe:(e,{enable:t,disable:n})=>{const o=mouseEvent(e,\"hoverstart\",t);const i=mouseEvent(e,\"hoverend\",n);e.addEventListener(\"pointerenter\",o);e.addEventListener(\"pointerleave\",i);return()=>{e.removeEventListener(\"pointerenter\",o);e.removeEventListener(\"pointerleave\",i)}}};const fe={isActive:e=>Boolean(e.press),subscribe:(e,{enable:t,disable:n})=>{const onPointerUp=t=>{n();dispatchPointerEvent(e,\"pressend\",t);window.removeEventListener(\"pointerup\",onPointerUp)};const onPointerDown=n=>{t();dispatchPointerEvent(e,\"pressstart\",n);window.addEventListener(\"pointerup\",onPointerUp)};e.addEventListener(\"pointerdown\",onPointerDown);return()=>{e.removeEventListener(\"pointerdown\",onPointerDown);window.removeEventListener(\"pointerup\",onPointerUp)}}};const ue={inView:ce,hover:le,press:fe};const de=[\"initial\",\"animate\",...Object.keys(ue),\"exit\"];const ge=new WeakMap;function createMotionState(e={},o){let i;let s=o?o.getDepth()+1:0;const r={initial:true,animate:true};const a={};const c={};for(const t of de)c[t]=typeof e[t]===\"string\"?e[t]:o===null||o===void 0?void 0:o.getContext()[t];const l=e.initial===false?\"animate\":\"initial\";let f=resolveVariant(e[l]||c[l],e.variants)||{},u=S(f,[\"transition\"]);const d=Object.assign({},u);function*animateUpdates(){var n,o;const s=u;u={};const a={};for(const t of de){if(!r[t])continue;const i=resolveVariant(e[t]);if(i)for(const t in i)if(t!==\"transition\"){u[t]=i[t];a[t]=getOptions((o=(n=i.transition)!==null&&n!==void 0?n:e.transition)!==null&&o!==void 0?o:{},t)}}const c=new Set([...Object.keys(u),...Object.keys(s)]);const l=[];c.forEach((e=>{var n;u[e]===void 0&&(u[e]=d[e]);if(hasChanged(s[e],u[e])){(n=d[e])!==null&&n!==void 0?n:d[e]=I.get(i,e);l.push(animateStyle(i,e,u[e],a[e],t))}}));yield;const f=l.map((e=>e())).filter(Boolean);if(!f.length)return;const g=u;i.dispatchEvent(motionEvent(\"motionstart\",g));Promise.all(f.map((e=>e.finished))).then((()=>{i.dispatchEvent(motionEvent(\"motioncomplete\",g))})).catch(h)}const setGesture=(e,t)=>()=>{r[e]=t;scheduleAnimation(g)};const updateGestureSubscriptions=()=>{for(const t in ue){const n=ue[t].isActive(e);const o=a[t];if(n&&!o)a[t]=ue[t].subscribe(i,{enable:setGesture(t,true),disable:setGesture(t,false)},e);else if(!n&&o){o();delete a[t]}}};const g={update:t=>{if(i){e=t;updateGestureSubscriptions();scheduleAnimation(g)}},setActive:(e,t)=>{if(i){r[e]=t;scheduleAnimation(g)}},animateUpdates:animateUpdates,getDepth:()=>s,getTarget:()=>u,getOptions:()=>e,getContext:()=>c,mount:e=>{n(Boolean(e),\"Animation state must be mounted with valid Element\");i=e;ge.set(i,g);updateGestureSubscriptions();return()=>{ge.delete(i);unscheduleAnimation(g);for(const e in a)a[e]()}},isMounted:()=>Boolean(i)};return g}function createStyles(e){const t={};const n=[];for(let o in e){const i=e[o];if(isTransform(o)){M[o]&&(o=M[o]);n.push(o);o=asTransformCssVar(o)}let s=Array.isArray(i)?i[0]:i;const r=k.get(o);r&&(s=g(i)?r.toDefaultUnit(i):i);t[o]=s}n.length&&(t.transform=buildTransformTemplate(n));return t}const camelLetterToPipeLetter=e=>`-${e.toLowerCase()}`;const camelToPipeCase=e=>e.replace(/[A-Z]/g,camelLetterToPipeLetter);function createStyleString(e={}){const t=createStyles(e);let n=\"\";for(const e in t){n+=e.startsWith(\"--\")?e:camelToPipeCase(e);n+=`: ${t[e]}; `}return n}export{ee as ScrollOffset,F as animate,animateStyle,createAnimate,createMotionState,createStyleString,createStyles,getAnimationData,getStyleName,q as glide,inView$1 as inView,ge as mountedStates,resize,scroll,G as spring,stagger,I as style,timeline,withControls};\n//# sourceMappingURL=index.es.js.map\n", "import{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{Children,useLayoutEffect,useEffect,useState,useRef,useMemo,useCallback,cloneElement}from\"react\";import{addPropertyControls,ControlType,RenderTarget}from\"framer\";import{useReducedMotion,LayoutGroup,useInView,useMotionValue,useTransform,motion,frame}from\"framer-motion\";import{resize}from\"@motionone/dom\";const MAX_DUPLICATED_ITEMS=100;const directionTransformers={left:offset=>`translateX(-${offset}px)`,right:offset=>`translateX(${offset}px)`,top:offset=>`translateY(-${offset}px)`,bottom:offset=>`translateY(${offset}px)`};/**\n *\n * @framerIntrinsicWidth 400\n * @framerIntrinsicHeight 200\n *\n * @framerDisableUnlink\n *\n * @framerSupportedLayoutWidth fixed\n * @framerSupportedLayoutHeight fixed\n */export default function Ticker(props){/* Props */let{slots=[],gap,padding,paddingPerSide,paddingTop,paddingRight,paddingBottom,paddingLeft,speed,hoverFactor,direction,alignment,sizingOptions,fadeOptions,style}=props;const{fadeContent,overflow,fadeWidth,fadeInset,fadeAlpha}=fadeOptions;const{widthType,heightType}=sizingOptions;const paddingValue=paddingPerSide?`${paddingTop}px ${paddingRight}px ${paddingBottom}px ${paddingLeft}px`:`${padding}px`;/* Checks */const currentTarget=RenderTarget.current();const isCanvas=currentTarget===RenderTarget.canvas||currentTarget===RenderTarget.export;// Remove empty slots (such as hidden layers)\nconst filteredSlots=slots.filter(Boolean);const numChildren=Children.count(filteredSlots);const hasChildren=numChildren>0;if(direction===true){direction=\"left\";}const isHorizontal=direction===\"left\"||direction===\"right\";const offset=useMotionValue(0);const transformer=directionTransformers[direction];const transform=useTransform(offset,transformer);/* Refs and State */const parentRef=useRef(null);const childrenRef=useMemo(()=>{return[{current:null},{current:null}];},[]);const[size,setSize]=useState({parent:null,children:null});/* Arrays */let clonedChildren=null;let dupedChildren=[];/* Duplicate value */let duplicateBy=0;let opacity=0;if(isCanvas){duplicateBy=numChildren?Math.floor(10/numChildren):0;opacity=1;}if(!isCanvas&&hasChildren&&size.parent){duplicateBy=Math.round(size.parent/size.children*2)+1;duplicateBy=Math.min(duplicateBy,MAX_DUPLICATED_ITEMS);opacity=1;}/* Measure parent and child */const measure=useCallback(()=>{if(hasChildren&&parentRef.current){const parentLength=isHorizontal?parentRef.current.offsetWidth:parentRef.current.offsetHeight;const start=childrenRef[0].current?isHorizontal?childrenRef[0].current.offsetLeft:childrenRef[0].current.offsetTop:0;const end=childrenRef[1].current?isHorizontal?childrenRef[1].current.offsetLeft+childrenRef[1].current.offsetWidth:childrenRef[1].current.offsetTop+childrenRef[1].current.offsetHeight:0;const childrenLength=end-start+gap;setSize({parent:parentLength,children:childrenLength});}},[]);const childrenStyles=isCanvas?{contentVisibility:\"auto\"}:{};/* Add refs to first and last child */if(hasChildren){// TODO: These conditional hooks will be unsafe if hasChildren ever changes outside the canvas.\nif(!isCanvas){/**\n             * Track whether this is the initial resize event. By default this will fire on mount,\n             * which we do in the useEffect. We should only fire it on subsequent resizes.\n             */let initialResize=useRef(true);useLayoutEffect(()=>{frame.read(measure,false,true);return resize(parentRef.current,({contentSize})=>{if(!initialResize.current&&(contentSize.width||contentSize.height)){frame.read(measure,false,true);}initialResize.current=false;});},[]);}clonedChildren=Children.map(filteredSlots,(child,index)=>{let ref;if(index===0){ref=childrenRef[0];}if(index===filteredSlots.length-1){ref=childrenRef[1];}const size={width:widthType?child.props?.width:\"100%\",height:heightType?child.props?.height:\"100%\"};return /*#__PURE__*/_jsx(LayoutGroup,{inherit:\"id\",children:/*#__PURE__*/_jsx(\"li\",{ref:ref,style:size,children:/*#__PURE__*/cloneElement(child,{style:{...child.props?.style,...size,flexShrink:0,...childrenStyles},layoutId:child.props.layoutId?child.props.layoutId+\"-original-\"+index:undefined},child.props?.children)})});});}const isInView=isCanvas?true:useInView(parentRef);if(!isCanvas){for(let i=0;i<duplicateBy;i++){dupedChildren=dupedChildren.concat(Children.map(filteredSlots,(child,childIndex)=>{const size={width:widthType?child.props?.width:\"100%\",height:heightType?child.props?.height:\"100%\",willChange:!isInView?undefined:\"transform\"};return /*#__PURE__*/_jsx(LayoutGroup,{inherit:\"id\",children:/*#__PURE__*/_jsx(\"li\",{style:size,\"aria-hidden\":true,children:/*#__PURE__*/cloneElement(child,{key:i+\" \"+childIndex,style:{...child.props?.style,width:widthType?child.props?.width:\"100%\",height:heightType?child.props?.height:\"100%\",flexShrink:0,...childrenStyles},layoutId:child.props.layoutId?child.props.layoutId+\"-dupe-\"+i:undefined},child.props?.children)},i+\"li\"+childIndex)},i+\"lg\"+childIndex);}));}}const animateToValue=size.children+size.children*Math.round(size.parent/size.children);const initialTime=useRef(null);const prevTime=useRef(null);const xOrY=useRef(0);const isHover=useRef(false);const isReducedMotion=useReducedMotion();const listRef=useRef(null);const animationRef=useRef(null);/**\n     * Setup animations\n     */if(!isCanvas){useEffect(()=>{if(isReducedMotion||!animateToValue||!speed){return;}animationRef.current=listRef.current.animate({transform:[transformer(0),transformer(animateToValue)]},{duration:Math.abs(animateToValue)/speed*1e3,iterations:Infinity,easing:\"linear\"});return()=>animationRef.current.cancel();},[hoverFactor,animateToValue,speed]);const playOrPause=useCallback(()=>{if(!animationRef.current)return;const hidden=document.hidden;if(isInView&&!hidden&&animationRef.current.playState===\"paused\"){animationRef.current.play();}else if((!isInView||hidden)&&animationRef.current.playState===\"running\"){animationRef.current.pause();}},[isInView]);useEffect(()=>{playOrPause();},[isInView,hoverFactor,animateToValue,speed]);useEffect(()=>{document.addEventListener(\"visibilitychange\",playOrPause);return()=>{document.removeEventListener(\"visibilitychange\",playOrPause);};},[playOrPause]);}/* Fades */const fadeDirection=isHorizontal?\"to right\":\"to bottom\";const fadeWidthStart=fadeWidth/2;const fadeWidthEnd=100-fadeWidth/2;const fadeInsetStart=clamp(fadeInset,0,fadeWidthStart);const fadeInsetEnd=100-fadeInset;const fadeMask=`linear-gradient(${fadeDirection}, rgba(0, 0, 0, ${fadeAlpha}) ${fadeInsetStart}%, rgba(0, 0, 0, 1) ${fadeWidthStart}%, rgba(0, 0, 0, 1) ${fadeWidthEnd}%, rgba(0, 0, 0, ${fadeAlpha}) ${fadeInsetEnd}%)`;/* Empty state */if(!hasChildren){return /*#__PURE__*/_jsxs(\"section\",{style:placeholderStyles,children:[/*#__PURE__*/_jsx(\"div\",{style:emojiStyles,children:\"\u2728\"}),/*#__PURE__*/_jsx(\"p\",{style:titleStyles,children:\"Connect to Content\"}),/*#__PURE__*/_jsx(\"p\",{style:subtitleStyles,children:\"Add layers or components to infinitely loop on your page.\"})]});}return /*#__PURE__*/_jsx(\"section\",{style:{...containerStyle,opacity:opacity,WebkitMaskImage:fadeContent?fadeMask:undefined,maskImage:fadeContent?fadeMask:undefined,overflow:overflow?\"visible\":\"hidden\",padding:paddingValue},ref:parentRef,children:/*#__PURE__*/_jsxs(motion.ul,{ref:listRef,style:{...containerStyle,gap:gap,top:direction===\"bottom\"&&isValidNumber(animateToValue)?-animateToValue:undefined,left:direction===\"right\"&&isValidNumber(animateToValue)?-animateToValue:undefined,placeItems:alignment,position:\"relative\",flexDirection:isHorizontal?\"row\":\"column\",...style,willChange:isCanvas||!isInView?\"auto\":\"transform\",transform:transformer(0)},onMouseEnter:()=>{isHover.current=true;if(animationRef.current){// TODO Replace with updatePlaybackRate when Chrome bugs sorted\nanimationRef.current.playbackRate=hoverFactor;}},onMouseLeave:()=>{isHover.current=false;if(animationRef.current){// TODO Replace with updatePlaybackRate when Chrome bugs sorted\nanimationRef.current.playbackRate=1;}},children:[clonedChildren,dupedChildren]})});}/* Default Properties */Ticker.defaultProps={gap:10,padding:10,sizingOptions:{widthType:true,heightType:true},fadeOptions:{fadeContent:true,overflow:false,fadeWidth:25,fadeAlpha:0,fadeInset:0},direction:true};/* Property Controls */addPropertyControls(Ticker,{slots:{type:ControlType.Array,title:\"Children\",control:{type:ControlType.ComponentInstance}},speed:{type:ControlType.Number,title:\"Speed\",min:0,max:1e3,defaultValue:100,unit:\"%\",displayStepper:true,step:5},direction:{type:ControlType.Enum,title:\"Direction\",options:[\"left\",\"right\",\"top\",\"bottom\"],optionIcons:[\"direction-left\",\"direction-right\",\"direction-up\",\"direction-down\"],optionTitles:[\"Left\",\"Right\",\"Top\",\"Bottom\"],defaultValue:\"left\",displaySegmentedControl:true},alignment:{type:ControlType.Enum,title:\"Align\",options:[\"flex-start\",\"center\",\"flex-end\"],optionIcons:{direction:{right:[\"align-top\",\"align-middle\",\"align-bottom\"],left:[\"align-top\",\"align-middle\",\"align-bottom\"],top:[\"align-left\",\"align-center\",\"align-right\"],bottom:[\"align-left\",\"align-center\",\"align-right\"]}},defaultValue:\"center\",displaySegmentedControl:true},gap:{type:ControlType.Number,title:\"Gap\"},padding:{title:\"Padding\",type:ControlType.FusedNumber,toggleKey:\"paddingPerSide\",toggleTitles:[\"Padding\",\"Padding per side\"],valueKeys:[\"paddingTop\",\"paddingRight\",\"paddingBottom\",\"paddingLeft\"],valueLabels:[\"T\",\"R\",\"B\",\"L\"],min:0},sizingOptions:{type:ControlType.Object,title:\"Sizing\",controls:{widthType:{type:ControlType.Boolean,title:\"Width\",enabledTitle:\"Auto\",disabledTitle:\"Stretch\",defaultValue:true},heightType:{type:ControlType.Boolean,title:\"Height\",enabledTitle:\"Auto\",disabledTitle:\"Stretch\",defaultValue:true}}},fadeOptions:{type:ControlType.Object,title:\"Clipping\",controls:{fadeContent:{type:ControlType.Boolean,title:\"Fade\",defaultValue:true},overflow:{type:ControlType.Boolean,title:\"Overflow\",enabledTitle:\"Show\",disabledTitle:\"Hide\",defaultValue:false,hidden(props){return props.fadeContent===true;}},fadeWidth:{type:ControlType.Number,title:\"Width\",defaultValue:25,min:0,max:100,unit:\"%\",hidden(props){return props.fadeContent===false;}},fadeInset:{type:ControlType.Number,title:\"Inset\",defaultValue:0,min:0,max:100,unit:\"%\",hidden(props){return props.fadeContent===false;}},fadeAlpha:{type:ControlType.Number,title:\"Opacity\",defaultValue:0,min:0,max:1,step:.05,hidden(props){return props.fadeContent===false;}}}},hoverFactor:{type:ControlType.Number,title:\"Hover\",min:0,max:1,unit:\"x\",defaultValue:1,step:.1,displayStepper:true,description:\"Slows down the speed while you are hovering.\"}});/* Placeholder Styles */const containerStyle={display:\"flex\",width:\"100%\",height:\"100%\",maxWidth:\"100%\",maxHeight:\"100%\",placeItems:\"center\",margin:0,padding:0,listStyleType:\"none\",textIndent:\"none\"};/* Styles */const placeholderStyles={display:\"flex\",width:\"100%\",height:\"100%\",placeContent:\"center\",placeItems:\"center\",flexDirection:\"column\",color:\"#96F\",background:\"rgba(136, 85, 255, 0.1)\",fontSize:11,overflow:\"hidden\",padding:\"20px 20px 30px 20px\"};const emojiStyles={fontSize:32,marginBottom:10};const titleStyles={margin:0,marginBottom:10,fontWeight:600,textAlign:\"center\"};const subtitleStyles={margin:0,opacity:.7,maxWidth:150,lineHeight:1.5,textAlign:\"center\"};/* Clamp function, used for fadeInset */const clamp=(num,min,max)=>Math.min(Math.max(num,min),max);const isValidNumber=value=>typeof value===\"number\"&&!isNaN(value);\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"Ticker\",\"slots\":[],\"annotations\":{\"framerIntrinsicWidth\":\"400\",\"framerSupportedLayoutHeight\":\"fixed\",\"framerDisableUnlink\":\"*\",\"framerSupportedLayoutWidth\":\"fixed\",\"framerIntrinsicHeight\":\"200\",\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./Ticker.map", "// Generated by Framer (f22aa3d)\nimport{jsx as _jsx}from\"react/jsx-runtime\";import{addFonts,addPropertyControls,ControlType,cx,getLoadingLazyAtYPosition,Image,useComponentViewport,useLocaleInfo,useVariantState,withCSS}from\"framer\";import{LayoutGroup,motion,MotionConfigContext}from\"framer-motion\";import*as React from\"react\";const serializationHash=\"framer-yEsg2\";const variantClassNames={nt1hXHk9i:\"framer-v-18np1mg\"};function addPropertyOverrides(overrides,...variants){const nextOverrides={};variants===null||variants===void 0?void 0:variants.forEach(variant=>variant&&Object.assign(nextOverrides,overrides[variant]));return nextOverrides;}const transition1={bounce:.2,delay:0,duration:.4,type:\"spring\"};const toResponsiveImage=value=>{if(typeof value===\"object\"&&value!==null&&typeof value.src===\"string\"){return value;}return typeof value===\"string\"?{src:value}:undefined;};const Transition=({value,children})=>{const config=React.useContext(MotionConfigContext);const transition=value!==null&&value!==void 0?value:config.transition;const contextValue=React.useMemo(()=>({...config,transition}),[JSON.stringify(transition)]);return /*#__PURE__*/_jsx(MotionConfigContext.Provider,{value:contextValue,children:children});};const Variants=motion.create(React.Fragment);const getProps=({height,id,image,width,...props})=>{var _ref;return{...props,uhb7iFYF3:(_ref=image!==null&&image!==void 0?image:props.uhb7iFYF3)!==null&&_ref!==void 0?_ref:{src:\"https://framerusercontent.com/images/7ccIrhplk721bhbtvb1UCavI.svg\"}};};const createLayoutDependency=(props,variants)=>{if(props.layoutDependency)return variants.join(\"-\")+props.layoutDependency;return variants.join(\"-\");};const Component=/*#__PURE__*/React.forwardRef(function(props,ref){const{activeLocale,setLocale}=useLocaleInfo();const{style,className,layoutId,variant,uhb7iFYF3,...restProps}=getProps(props);const{baseVariant,classNames,clearLoadingGesture,gestureHandlers,gestureVariant,isLoading,setGestureState,setVariant,variants}=useVariantState({defaultVariant:\"nt1hXHk9i\",variant,variantClassNames});const layoutDependency=createLayoutDependency(props,variants);const ref1=React.useRef(null);const defaultLayoutId=React.useId();const sharedStyleClassNames=[];const componentViewport=useComponentViewport();return /*#__PURE__*/_jsx(LayoutGroup,{id:layoutId!==null&&layoutId!==void 0?layoutId:defaultLayoutId,children:/*#__PURE__*/_jsx(Variants,{animate:variants,initial:false,children:/*#__PURE__*/_jsx(Transition,{value:transition1,children:/*#__PURE__*/_jsx(motion.div,{...restProps,...gestureHandlers,className:cx(serializationHash,...sharedStyleClassNames,\"framer-18np1mg\",className,classNames),\"data-border\":true,\"data-framer-name\":\"Variant 1\",layoutDependency:layoutDependency,layoutId:\"nt1hXHk9i\",ref:ref!==null&&ref!==void 0?ref:ref1,style:{\"--border-bottom-width\":\"1px\",\"--border-color\":\"var(--token-ef727c83-0227-4900-b478-e0fde1daabc5, rgb(38, 38, 38))\",\"--border-left-width\":\"1px\",\"--border-right-width\":\"1px\",\"--border-style\":\"solid\",\"--border-top-width\":\"1px\",background:'linear-gradient(180deg, var(--token-7be8625f-297b-4b2a-908d-7056e5d82d0a, rgb(5, 5, 5)) /* {\"name\":\"Black\"} */ 0%, var(--token-fac97835-8102-4c2d-a364-9b29482fa5eb, rgb(18, 18, 18)) /* {\"name\":\"Black 900\"} */ 100%)',borderBottomLeftRadius:8,borderBottomRightRadius:8,borderTopLeftRadius:8,borderTopRightRadius:8,boxShadow:\"0px 0.3613123810646357px 0.650362285916344px 0px rgba(0, 0, 0, 0.01505), 0px 1.3731199819460742px 2.471615967502933px 0px rgba(0, 0, 0, 0.05721), 0px 6px 10.799999999999997px 0px rgba(0, 0, 0, 0.25)\",...style},children:/*#__PURE__*/_jsx(motion.div,{className:\"framer-vmgsuj\",layoutDependency:layoutDependency,layoutId:\"l0gdDIRay\",style:{borderBottomLeftRadius:10,borderBottomRightRadius:10,borderTopLeftRadius:10,borderTopRightRadius:10},children:/*#__PURE__*/_jsx(Image,{background:{alt:\"\",fit:\"fill\",loading:getLoadingLazyAtYPosition(((componentViewport===null||componentViewport===void 0?void 0:componentViewport.y)||0)+(8+(((componentViewport===null||componentViewport===void 0?void 0:componentViewport.height)||46)-16-(((componentViewport===null||componentViewport===void 0?void 0:componentViewport.height)||46)-16)*1)/2)+(0+((((componentViewport===null||componentViewport===void 0?void 0:componentViewport.height)||46)-16)*1-0-((((componentViewport===null||componentViewport===void 0?void 0:componentViewport.height)||46)-16)*1-0)*1)/2)),pixelHeight:48,pixelWidth:49,sizes:`max(${(componentViewport===null||componentViewport===void 0?void 0:componentViewport.width)||\"100vw\"} - 16px, 1px)`,...toResponsiveImage(uhb7iFYF3),...{positionX:\"center\",positionY:\"center\"}},className:\"framer-1mzha4q\",\"data-framer-name\":\"Icon\",layoutDependency:layoutDependency,layoutId:\"lYuPhJUuH\",style:{borderBottomLeftRadius:10,borderBottomRightRadius:10,borderTopLeftRadius:10,borderTopRightRadius:10}})})})})})});});const css=[\"@supports (aspect-ratio: 1) { body { --framer-aspect-ratio-supported: auto; } }\",\".framer-yEsg2.framer-19oi25w, .framer-yEsg2 .framer-19oi25w { display: block; }\",\".framer-yEsg2.framer-18np1mg { align-content: center; align-items: center; cursor: default; display: flex; flex-direction: row; flex-wrap: nowrap; gap: 6px; height: 46px; justify-content: center; overflow: visible; padding: 8px; position: relative; width: 46px; }\",\".framer-yEsg2 .framer-vmgsuj { align-content: center; align-items: center; display: flex; flex: 1 0 0px; flex-direction: row; flex-wrap: nowrap; gap: 10px; height: 100%; justify-content: center; overflow: visible; padding: 0px; position: relative; width: 1px; }\",\".framer-yEsg2 .framer-1mzha4q { flex: 1 0 0px; height: 100%; overflow: hidden; position: relative; width: 1px; will-change: var(--framer-will-change-override, transform); }\",\"@supports (background: -webkit-named-image(i)) and (not (font-palette:dark)) { .framer-yEsg2.framer-18np1mg, .framer-yEsg2 .framer-vmgsuj { gap: 0px; } .framer-yEsg2.framer-18np1mg > * { margin: 0px; margin-left: calc(6px / 2); margin-right: calc(6px / 2); } .framer-yEsg2.framer-18np1mg > :first-child, .framer-yEsg2 .framer-vmgsuj > :first-child { margin-left: 0px; } .framer-yEsg2.framer-18np1mg > :last-child, .framer-yEsg2 .framer-vmgsuj > :last-child { margin-right: 0px; } .framer-yEsg2 .framer-vmgsuj > * { margin: 0px; margin-left: calc(10px / 2); margin-right: calc(10px / 2); } }\",'.framer-yEsg2[data-border=\"true\"]::after, .framer-yEsg2 [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 46\n * @framerIntrinsicWidth 46\n * @framerCanvasComponentVariantDetails {\"propertyName\":\"variant\",\"data\":{\"default\":{\"layout\":[\"fixed\",\"fixed\"]}}}\n * @framerVariables {\"uhb7iFYF3\":\"image\"}\n * @framerImmutableVariables true\n * @framerDisplayContentsDiv false\n * @framerComponentViewportWidth true\n */const FramerzTLW18KXI=withCSS(Component,css,\"framer-yEsg2\");export default FramerzTLW18KXI;FramerzTLW18KXI.displayName=\"Cards/Icons\";FramerzTLW18KXI.defaultProps={height:46,width:46};addPropertyControls(FramerzTLW18KXI,{uhb7iFYF3:{__defaultAssetReference:\"data:framer/asset-reference,7ccIrhplk721bhbtvb1UCavI.svg?originalFilename=logoipsum-223.svg&preferredSize=auto\",title:\"Image\",type:ControlType.ResponsiveImage}});addFonts(FramerzTLW18KXI,[{explicitInter:true,fonts:[]}],{supportsExplicitInterCodegen:true});\nexport const __FramerMetadata__ = {\"exports\":{\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"default\":{\"type\":\"reactComponent\",\"name\":\"FramerzTLW18KXI\",\"slots\":[],\"annotations\":{\"framerImmutableVariables\":\"true\",\"framerCanvasComponentVariantDetails\":\"{\\\"propertyName\\\":\\\"variant\\\",\\\"data\\\":{\\\"default\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]}}}\",\"framerVariables\":\"{\\\"uhb7iFYF3\\\":\\\"image\\\"}\",\"framerIntrinsicWidth\":\"46\",\"framerComponentViewportWidth\":\"true\",\"framerIntrinsicHeight\":\"46\",\"framerDisplayContentsDiv\":\"false\",\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./zTLW18KXI.map", "// Generated by Framer (ab692b1)\nimport{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{addFonts,addPropertyControls,ComponentViewportProvider,ControlType,cx,getFonts,getPropertyControls,SmartComponentScopedContainer,useComponentViewport,useLocaleInfo,useVariantState,withCSS}from\"framer\";import{LayoutGroup,motion,MotionConfigContext}from\"framer-motion\";import*as React from\"react\";import{useRef}from\"react\";import Ticker from\"https://framerusercontent.com/modules/B2xAlJLcN0gOnt11mSPw/jyRNgY7vYWXe6t31T0wo/Ticker.js\";import CardsIcons from\"https://framerusercontent.com/modules/JWnhsyraEL2iUqIQ6iz2/aqKck7CIhk4py0hDWGqL/zTLW18KXI.js\";const CardsIconsFonts=getFonts(CardsIcons);const TickerFonts=getFonts(Ticker);const TickerControls=getPropertyControls(Ticker);const serializationHash=\"framer-MYuDe\";const variantClassNames={d06CVVB0q:\"framer-v-1x0jyg2\"};function addPropertyOverrides(overrides,...variants){const nextOverrides={};variants?.forEach(variant=>variant&&Object.assign(nextOverrides,overrides[variant]));return nextOverrides;}const transition1={damping:60,delay:0,mass:1,stiffness:500,type:\"spring\"};const toResponsiveImage=value=>{if(typeof value===\"object\"&&value!==null&&typeof value.src===\"string\"){return value;}return typeof value===\"string\"?{src:value}:undefined;};const Transition=({value,children})=>{const config=React.useContext(MotionConfigContext);const transition=value??config.transition;const contextValue=React.useMemo(()=>({...config,transition}),[JSON.stringify(transition)]);return /*#__PURE__*/_jsx(MotionConfigContext.Provider,{value:contextValue,children:children});};const Variants=motion.create(React.Fragment);const humanReadableEnumMap={Bottom:\"bottom\",Left:\"left\",Right:\"right\",Top:\"top\"};const getProps=({direction,gap,height,icon1,icon2,icon3,icon4,id,speed,width,...props})=>{return{...props,EjsVVRGWK:humanReadableEnumMap[direction]??direction??props.EjsVVRGWK??\"left\",HMhf4zsBQ:icon4??props.HMhf4zsBQ,hqb8et3Qp:icon2??props.hqb8et3Qp??{src:\"https://framerusercontent.com/images/7ccIrhplk721bhbtvb1UCavI.svg\"},jY69pN90C:speed??props.jY69pN90C??25,P1OSnlSDO:gap??props.P1OSnlSDO??12,tIS2Z9GXY:icon1??props.tIS2Z9GXY??{src:\"https://framerusercontent.com/images/7ccIrhplk721bhbtvb1UCavI.svg\"},VGqYPkCYU:icon3??props.VGqYPkCYU??{src:\"https://framerusercontent.com/images/7ccIrhplk721bhbtvb1UCavI.svg\"}};};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,tIS2Z9GXY,hqb8et3Qp,VGqYPkCYU,HMhf4zsBQ,EjsVVRGWK,jY69pN90C,P1OSnlSDO,...restProps}=getProps(props);const{baseVariant,classNames,clearLoadingGesture,gestureHandlers,gestureVariant,isLoading,setGestureState,setVariant,variants}=useVariantState({defaultVariant:\"d06CVVB0q\",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-1x0jyg2\",className,classNames),\"data-framer-name\":\"Variant 1\",layoutDependency:layoutDependency,layoutId:\"d06CVVB0q\",ref:refBinding,style:{...style},children:/*#__PURE__*/_jsx(ComponentViewportProvider,{children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-175pgf5-container\",isAuthoredByUser:true,isModuleExternal:true,layoutDependency:layoutDependency,layoutId:\"Nsl5QOmKs-container\",nodeId:\"Nsl5QOmKs\",rendersWithMotion:true,scopeId:\"gmrJkOvDu\",children:/*#__PURE__*/_jsx(Ticker,{alignment:\"center\",direction:EjsVVRGWK,fadeOptions:{fadeAlpha:0,fadeContent:true,fadeInset:0,fadeWidth:25,overflow:false},gap:P1OSnlSDO,height:\"100%\",hoverFactor:1,id:\"Nsl5QOmKs\",layoutId:\"Nsl5QOmKs\",padding:0,paddingBottom:0,paddingLeft:0,paddingPerSide:false,paddingRight:0,paddingTop:0,sizingOptions:{heightType:true,widthType:true},slots:[/*#__PURE__*/_jsx(ComponentViewportProvider,{height:52,width:\"52px\",children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-vy7vnu-container\",inComponentSlot:true,layoutDependency:layoutDependency,layoutId:\"MYTL0dtY5-container\",nodeId:\"MYTL0dtY5\",rendersWithMotion:true,scopeId:\"gmrJkOvDu\",children:/*#__PURE__*/_jsx(CardsIcons,{height:\"100%\",id:\"MYTL0dtY5\",layoutId:\"MYTL0dtY5\",style:{height:\"100%\",width:\"100%\"},uhb7iFYF3:toResponsiveImage(tIS2Z9GXY),width:\"100%\"})})}),/*#__PURE__*/_jsxs(motion.div,{className:\"framer-yq0f6t\",layoutDependency:layoutDependency,layoutId:\"Hby3WdVF7\",children:[/*#__PURE__*/_jsx(motion.div,{className:\"framer-n5a1mn\",layoutDependency:layoutDependency,layoutId:\"esKpG06Km\",style:{background:'linear-gradient(180deg, var(--token-ab8a1628-3695-47a5-8496-32bf3ecfdf66, rgb(21, 58, 161)) /* {\"name\":\"Blue\"} */ 0%, var(--token-17d94287-c97e-4602-9cf7-4d2036e50e01, rgb(0, 24, 94)) /* {\"name\":\"Dark blue\"} */ 100%)',borderBottomLeftRadius:3,borderBottomRightRadius:3,borderTopLeftRadius:3,borderTopRightRadius:3}}),/*#__PURE__*/_jsx(motion.div,{className:\"framer-bf4m8f\",layoutDependency:layoutDependency,layoutId:\"wWCrMGmnR\",style:{backgroundColor:\"var(--token-17d94287-c97e-4602-9cf7-4d2036e50e01, rgb(0, 24, 94))\"}}),/*#__PURE__*/_jsx(motion.div,{className:\"framer-3cl65y\",layoutDependency:layoutDependency,layoutId:\"bAsaPyQXh\",style:{background:'linear-gradient(180deg, var(--token-ab8a1628-3695-47a5-8496-32bf3ecfdf66, rgb(21, 58, 161)) /* {\"name\":\"Blue\"} */ 0%, var(--token-17d94287-c97e-4602-9cf7-4d2036e50e01, rgb(0, 24, 94)) /* {\"name\":\"Dark blue\"} */ 100%)',borderBottomLeftRadius:3,borderBottomRightRadius:3,borderTopLeftRadius:3,borderTopRightRadius:3}})]}),/*#__PURE__*/_jsx(ComponentViewportProvider,{height:52,width:\"52px\",children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-4tpc2b-container\",inComponentSlot:true,layoutDependency:layoutDependency,layoutId:\"jzJ3iQQHM-container\",nodeId:\"jzJ3iQQHM\",rendersWithMotion:true,scopeId:\"gmrJkOvDu\",children:/*#__PURE__*/_jsx(CardsIcons,{height:\"100%\",id:\"jzJ3iQQHM\",layoutId:\"jzJ3iQQHM\",style:{height:\"100%\",width:\"100%\"},uhb7iFYF3:toResponsiveImage(hqb8et3Qp),width:\"100%\"})})}),/*#__PURE__*/_jsxs(motion.div,{className:\"framer-bunreu\",layoutDependency:layoutDependency,layoutId:\"KgnvQgNFM\",children:[/*#__PURE__*/_jsx(motion.div,{className:\"framer-1j6wjjz\",layoutDependency:layoutDependency,layoutId:\"TNqp0RnNA\",style:{background:'linear-gradient(180deg, var(--token-ab8a1628-3695-47a5-8496-32bf3ecfdf66, rgb(21, 58, 161)) /* {\"name\":\"Blue\"} */ 0%, var(--token-17d94287-c97e-4602-9cf7-4d2036e50e01, rgb(0, 24, 94)) /* {\"name\":\"Dark blue\"} */ 100%)',borderBottomLeftRadius:3,borderBottomRightRadius:3,borderTopLeftRadius:3,borderTopRightRadius:3}}),/*#__PURE__*/_jsx(motion.div,{className:\"framer-1af3x99\",layoutDependency:layoutDependency,layoutId:\"OGVezZF2N\",style:{backgroundColor:\"var(--token-17d94287-c97e-4602-9cf7-4d2036e50e01, rgb(0, 24, 94))\"}}),/*#__PURE__*/_jsx(motion.div,{className:\"framer-1ed8fz4\",layoutDependency:layoutDependency,layoutId:\"vjDwm8tAi\",style:{background:'linear-gradient(180deg, var(--token-ab8a1628-3695-47a5-8496-32bf3ecfdf66, rgb(21, 58, 161)) /* {\"name\":\"Blue\"} */ 0%, var(--token-17d94287-c97e-4602-9cf7-4d2036e50e01, rgb(0, 24, 94)) /* {\"name\":\"Dark blue\"} */ 100%)',borderBottomLeftRadius:3,borderBottomRightRadius:3,borderTopLeftRadius:3,borderTopRightRadius:3}})]}),/*#__PURE__*/_jsx(ComponentViewportProvider,{height:52,width:\"52px\",children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-1xfot4q-container\",inComponentSlot:true,layoutDependency:layoutDependency,layoutId:\"W8KcPoHYb-container\",nodeId:\"W8KcPoHYb\",rendersWithMotion:true,scopeId:\"gmrJkOvDu\",children:/*#__PURE__*/_jsx(CardsIcons,{height:\"100%\",id:\"W8KcPoHYb\",layoutId:\"W8KcPoHYb\",style:{height:\"100%\",width:\"100%\"},uhb7iFYF3:toResponsiveImage(VGqYPkCYU),width:\"100%\"})})}),/*#__PURE__*/_jsxs(motion.div,{className:\"framer-19jjm6l\",layoutDependency:layoutDependency,layoutId:\"nzZK_MAxb\",children:[/*#__PURE__*/_jsx(motion.div,{className:\"framer-17odkrh\",layoutDependency:layoutDependency,layoutId:\"y6qnPpp5j\",style:{background:'linear-gradient(180deg, var(--token-ab8a1628-3695-47a5-8496-32bf3ecfdf66, rgb(21, 58, 161)) /* {\"name\":\"Blue\"} */ 0%, var(--token-17d94287-c97e-4602-9cf7-4d2036e50e01, rgb(0, 24, 94)) /* {\"name\":\"Dark blue\"} */ 100%)',borderBottomLeftRadius:3,borderBottomRightRadius:3,borderTopLeftRadius:3,borderTopRightRadius:3}}),/*#__PURE__*/_jsx(motion.div,{className:\"framer-47hyea\",layoutDependency:layoutDependency,layoutId:\"aqnfAhKar\",style:{backgroundColor:\"var(--token-17d94287-c97e-4602-9cf7-4d2036e50e01, rgb(0, 24, 94))\"}}),/*#__PURE__*/_jsx(motion.div,{className:\"framer-kx33h9\",layoutDependency:layoutDependency,layoutId:\"UYIcyxqlb\",style:{background:'linear-gradient(180deg, var(--token-ab8a1628-3695-47a5-8496-32bf3ecfdf66, rgb(21, 58, 161)) /* {\"name\":\"Blue\"} */ 0%, var(--token-17d94287-c97e-4602-9cf7-4d2036e50e01, rgb(0, 24, 94)) /* {\"name\":\"Dark blue\"} */ 100%)',borderBottomLeftRadius:3,borderBottomRightRadius:3,borderTopLeftRadius:3,borderTopRightRadius:3}})]}),/*#__PURE__*/_jsx(ComponentViewportProvider,{height:53,width:\"52px\",children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-17txra5-container\",inComponentSlot:true,layoutDependency:layoutDependency,layoutId:\"FjINrxQ5h-container\",nodeId:\"FjINrxQ5h\",rendersWithMotion:true,scopeId:\"gmrJkOvDu\",children:/*#__PURE__*/_jsx(CardsIcons,{height:\"100%\",id:\"FjINrxQ5h\",layoutId:\"FjINrxQ5h\",style:{height:\"100%\",width:\"100%\"},uhb7iFYF3:toResponsiveImage(HMhf4zsBQ),width:\"100%\"})})}),/*#__PURE__*/_jsxs(motion.div,{className:\"framer-bmlync\",layoutDependency:layoutDependency,layoutId:\"kRuSk0zHB\",children:[/*#__PURE__*/_jsx(motion.div,{className:\"framer-1490y5d\",layoutDependency:layoutDependency,layoutId:\"TzPuoJUn2\",style:{background:'linear-gradient(180deg, var(--token-ab8a1628-3695-47a5-8496-32bf3ecfdf66, rgb(21, 58, 161)) /* {\"name\":\"Blue\"} */ 0%, var(--token-17d94287-c97e-4602-9cf7-4d2036e50e01, rgb(0, 24, 94)) /* {\"name\":\"Dark blue\"} */ 100%)',borderBottomLeftRadius:3,borderBottomRightRadius:3,borderTopLeftRadius:3,borderTopRightRadius:3}}),/*#__PURE__*/_jsx(motion.div,{className:\"framer-h1vegt\",layoutDependency:layoutDependency,layoutId:\"HJznVURCj\",style:{backgroundColor:\"var(--token-17d94287-c97e-4602-9cf7-4d2036e50e01, rgb(0, 24, 94))\"}}),/*#__PURE__*/_jsx(motion.div,{className:\"framer-1eavz6b\",layoutDependency:layoutDependency,layoutId:\"VQf4Ox7Z5\",style:{background:'linear-gradient(180deg, var(--token-ab8a1628-3695-47a5-8496-32bf3ecfdf66, rgb(21, 58, 161)) /* {\"name\":\"Blue\"} */ 0%, var(--token-17d94287-c97e-4602-9cf7-4d2036e50e01, rgb(0, 24, 94)) /* {\"name\":\"Dark blue\"} */ 100%)',borderBottomLeftRadius:3,borderBottomRightRadius:3,borderTopLeftRadius:3,borderTopRightRadius:3}})]})],speed:jY69pN90C,style:{height:\"100%\",width:\"100%\"},width:\"100%\"})})})})})})});});const css=[\"@supports (aspect-ratio: 1) { body { --framer-aspect-ratio-supported: auto; } }\",\".framer-MYuDe.framer-ovkyed, .framer-MYuDe .framer-ovkyed { display: block; }\",\".framer-MYuDe.framer-1x0jyg2 { align-content: center; align-items: center; display: flex; flex-direction: row; flex-wrap: nowrap; gap: 10px; height: min-content; justify-content: center; overflow: hidden; padding: 0px; position: relative; width: 413px; }\",\".framer-MYuDe .framer-175pgf5-container { flex: 1 0 0px; height: 80px; position: relative; width: 1px; }\",\".framer-MYuDe .framer-vy7vnu-container, .framer-MYuDe .framer-4tpc2b-container, .framer-MYuDe .framer-1xfot4q-container { height: 52px; position: relative; width: 52px; z-index: 1; }\",\".framer-MYuDe .framer-yq0f6t, .framer-MYuDe .framer-bunreu, .framer-MYuDe .framer-19jjm6l, .framer-MYuDe .framer-bmlync { align-content: center; align-items: center; display: flex; flex-direction: row; flex-wrap: nowrap; gap: 0px; height: min-content; justify-content: center; overflow: hidden; padding: 0px; position: relative; width: 36px; }\",\".framer-MYuDe .framer-n5a1mn, .framer-MYuDe .framer-3cl65y, .framer-MYuDe .framer-1j6wjjz, .framer-MYuDe .framer-1ed8fz4, .framer-MYuDe .framer-17odkrh, .framer-MYuDe .framer-kx33h9, .framer-MYuDe .framer-1490y5d, .framer-MYuDe .framer-1eavz6b { aspect-ratio: 1 / 1; flex: none; height: var(--framer-aspect-ratio-supported, 5px); overflow: hidden; position: relative; width: 5px; will-change: var(--framer-will-change-override, transform); }\",\".framer-MYuDe .framer-bf4m8f, .framer-MYuDe .framer-1af3x99, .framer-MYuDe .framer-47hyea, .framer-MYuDe .framer-h1vegt { flex: none; height: 1px; overflow: hidden; position: relative; width: 20px; }\",\".framer-MYuDe .framer-17txra5-container { height: 53px; position: relative; width: 52px; z-index: 1; }\",\"@supports (background: -webkit-named-image(i)) and (not (font-palette:dark)) { .framer-MYuDe.framer-1x0jyg2, .framer-MYuDe .framer-yq0f6t, .framer-MYuDe .framer-bunreu, .framer-MYuDe .framer-19jjm6l, .framer-MYuDe .framer-bmlync { gap: 0px; } .framer-MYuDe.framer-1x0jyg2 > * { margin: 0px; margin-left: calc(10px / 2); margin-right: calc(10px / 2); } .framer-MYuDe.framer-1x0jyg2 > :first-child, .framer-MYuDe .framer-yq0f6t > :first-child, .framer-MYuDe .framer-bunreu > :first-child, .framer-MYuDe .framer-19jjm6l > :first-child, .framer-MYuDe .framer-bmlync > :first-child { margin-left: 0px; } .framer-MYuDe.framer-1x0jyg2 > :last-child, .framer-MYuDe .framer-yq0f6t > :last-child, .framer-MYuDe .framer-bunreu > :last-child, .framer-MYuDe .framer-19jjm6l > :last-child, .framer-MYuDe .framer-bmlync > :last-child { margin-right: 0px; } .framer-MYuDe .framer-yq0f6t > *, .framer-MYuDe .framer-bunreu > *, .framer-MYuDe .framer-19jjm6l > *, .framer-MYuDe .framer-bmlync > * { margin: 0px; margin-left: calc(0px / 2); margin-right: calc(0px / 2); } }\"];/**\n * This is a generated Framer component.\n * @framerIntrinsicHeight 80\n * @framerIntrinsicWidth 413\n * @framerCanvasComponentVariantDetails {\"propertyName\":\"variant\",\"data\":{\"default\":{\"layout\":[\"fixed\",\"auto\"]}}}\n * @framerVariables {\"tIS2Z9GXY\":\"icon1\",\"hqb8et3Qp\":\"icon2\",\"VGqYPkCYU\":\"icon3\",\"HMhf4zsBQ\":\"icon4\",\"EjsVVRGWK\":\"direction\",\"jY69pN90C\":\"speed\",\"P1OSnlSDO\":\"gap\"}\n * @framerImmutableVariables true\n * @framerDisplayContentsDiv false\n * @framerComponentViewportWidth true\n */const FramergmrJkOvDu=withCSS(Component,css,\"framer-MYuDe\");export default FramergmrJkOvDu;FramergmrJkOvDu.displayName=\"Ticker/Icons\";FramergmrJkOvDu.defaultProps={height:80,width:413};addPropertyControls(FramergmrJkOvDu,{tIS2Z9GXY:{__defaultAssetReference:\"data:framer/asset-reference,7ccIrhplk721bhbtvb1UCavI.svg?originalFilename=logoipsum-223.svg&preferredSize=auto\",title:\"Icon 1\",type:ControlType.ResponsiveImage},hqb8et3Qp:{__defaultAssetReference:\"data:framer/asset-reference,7ccIrhplk721bhbtvb1UCavI.svg?originalFilename=logoipsum-223.svg&preferredSize=auto\",title:\"Icon 2\",type:ControlType.ResponsiveImage},VGqYPkCYU:{__defaultAssetReference:\"data:framer/asset-reference,7ccIrhplk721bhbtvb1UCavI.svg?originalFilename=logoipsum-223.svg&preferredSize=auto\",title:\"Icon 3\",type:ControlType.ResponsiveImage},HMhf4zsBQ:{title:\"Icon 4\",type:ControlType.ResponsiveImage},EjsVVRGWK:TickerControls?.[\"direction\"]&&{...TickerControls[\"direction\"],defaultValue:\"left\",description:undefined,hidden:undefined,title:\"Direction\"},jY69pN90C:{defaultValue:25,displayStepper:true,max:1e3,min:0,step:5,title:\"Speed\",type:ControlType.Number},P1OSnlSDO:{defaultValue:12,title:\"Gap\",type:ControlType.Number}});addFonts(FramergmrJkOvDu,[{explicitInter:true,fonts:[]},...CardsIconsFonts,...TickerFonts],{supportsExplicitInterCodegen:true});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"FramergmrJkOvDu\",\"slots\":[],\"annotations\":{\"framerIntrinsicWidth\":\"413\",\"framerDisplayContentsDiv\":\"false\",\"framerContractVersion\":\"1\",\"framerComponentViewportWidth\":\"true\",\"framerVariables\":\"{\\\"tIS2Z9GXY\\\":\\\"icon1\\\",\\\"hqb8et3Qp\\\":\\\"icon2\\\",\\\"VGqYPkCYU\\\":\\\"icon3\\\",\\\"HMhf4zsBQ\\\":\\\"icon4\\\",\\\"EjsVVRGWK\\\":\\\"direction\\\",\\\"jY69pN90C\\\":\\\"speed\\\",\\\"P1OSnlSDO\\\":\\\"gap\\\"}\",\"framerCanvasComponentVariantDetails\":\"{\\\"propertyName\\\":\\\"variant\\\",\\\"data\\\":{\\\"default\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"auto\\\"]}}}\",\"framerIntrinsicHeight\":\"80\",\"framerImmutableVariables\":\"true\"}},\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./gmrJkOvDu.map", "// Generated by Framer (f22aa3d)\nimport{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{addFonts,addPropertyControls,ComponentViewportProvider,ControlType,cx,getFonts,getFontsFromSharedStyle,RichText,useComponentViewport,useLocaleInfo,useVariantState,withCSS,withFX}from\"framer\";import{LayoutGroup,motion,MotionConfigContext}from\"framer-motion\";import*as React from\"react\";import*as sharedStyle1 from\"https://framerusercontent.com/modules/yhwxvTNo3tHUNTZTCUXd/rnjts2scwUlJE6DcMt7a/IZpeieEjn.js\";import*as sharedStyle from\"https://framerusercontent.com/modules/RwquBhWhgnFy8YZTajJ8/pNJ4BdDGlKDraehpy0Mk/vKGxKv6WT.js\";import TickerIcons from\"https://framerusercontent.com/modules/ldmExqodGE2KrndruQ6v/1I6bFXgawCCWbgEyEZeL/gmrJkOvDu.js\";const TickerIconsFonts=getFonts(TickerIcons);const MotionDivWithFX=withFX(motion.div);const cycleOrder=[\"TvB1KrCp1\",\"gmK2MTPgR\"];const serializationHash=\"framer-trrbT\";const variantClassNames={gmK2MTPgR:\"framer-v-b7z247\",TvB1KrCp1:\"framer-v-1wvg9p0\"};function addPropertyOverrides(overrides,...variants){const nextOverrides={};variants?.forEach(variant=>variant&&Object.assign(nextOverrides,overrides[variant]));return nextOverrides;}const transition1={damping:30,delay:0,mass:1,stiffness:200,type:\"spring\"};const addImageAlt=(image,alt)=>{if(!image||typeof image!==\"object\"){return;}return{...image,alt};};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={\"Tablet/phone\":\"gmK2MTPgR\",Desktop:\"TvB1KrCp1\"};const getProps=({description,height,id,title,width,...props})=>{return{...props,DXWWgGjsz:description??props.DXWWgGjsz??\"Description\",tLs69h6vu:title??props.tLs69h6vu??\"Title\",variant:humanReadableVariantMap[props.variant]??props.variant??\"TvB1KrCp1\"};};const createLayoutDependency=(props,variants)=>{if(props.layoutDependency)return variants.join(\"-\")+props.layoutDependency;return variants.join(\"-\");};const Component=/*#__PURE__*/React.forwardRef(function(props,ref){const{activeLocale,setLocale}=useLocaleInfo();const{style,className,layoutId,variant,tLs69h6vu,DXWWgGjsz,...restProps}=getProps(props);const{baseVariant,classNames,clearLoadingGesture,gestureHandlers,gestureVariant,isLoading,setGestureState,setVariant,variants}=useVariantState({cycleOrder,defaultVariant:\"TvB1KrCp1\",variant,variantClassNames});const layoutDependency=createLayoutDependency(props,variants);const ref1=React.useRef(null);const defaultLayoutId=React.useId();const sharedStyleClassNames=[sharedStyle.className,sharedStyle1.className];const componentViewport=useComponentViewport();return /*#__PURE__*/_jsx(LayoutGroup,{id:layoutId??defaultLayoutId,children:/*#__PURE__*/_jsx(Variants,{animate:variants,initial:false,children:/*#__PURE__*/_jsx(Transition,{value:transition1,children:/*#__PURE__*/_jsx(motion.div,{...restProps,...gestureHandlers,className:cx(serializationHash,...sharedStyleClassNames,\"framer-1wvg9p0\",className,classNames),\"data-framer-name\":\"Desktop\",layoutDependency:layoutDependency,layoutId:\"TvB1KrCp1\",ref:ref??ref1,style:{background:'radial-gradient(50% 50% at 50% 50%, var(--token-ab8a1628-3695-47a5-8496-32bf3ecfdf66, rgb(21, 58, 161)) /* {\"name\":\"Blue\"} */ 0%, var(--token-17d94287-c97e-4602-9cf7-4d2036e50e01, rgb(0, 24, 94)) /* {\"name\":\"Dark blue\"} */ 100%)',borderBottomLeftRadius:12,borderBottomRightRadius:12,borderTopLeftRadius:12,borderTopRightRadius:12,...style},...addPropertyOverrides({gmK2MTPgR:{\"data-framer-name\":\"Tablet/phone\"}},baseVariant,gestureVariant),children:/*#__PURE__*/_jsxs(motion.div,{className:\"framer-165h4cd\",\"data-framer-name\":\"Content\",layoutDependency:layoutDependency,layoutId:\"Sp9f5VtMZ\",style:{background:'linear-gradient(130deg, var(--token-f5d2506d-9c8c-423b-a07c-4bdb7316df89, rgba(5, 5, 5, 0.75)) /* {\"name\":\"Black 75%\"} */ 0%, var(--token-7be8625f-297b-4b2a-908d-7056e5d82d0a, rgb(5, 5, 5)) /* {\"name\":\"Black\"} */ 120%)',borderBottomLeftRadius:11,borderBottomRightRadius:11,borderTopLeftRadius:11,borderTopRightRadius:11},children:[/*#__PURE__*/_jsx(motion.div,{className:\"framer-vdgzj1\",\"data-framer-name\":\"Interaction\",layoutDependency:layoutDependency,layoutId:\"YYQVwq8Fy\",style:{borderTopLeftRadius:9,borderTopRightRadius:9,mask:\"linear-gradient(180deg, rgb(0, 0, 0) 80%, rgba(0, 0, 0, 0) 100%) add\",WebkitMask:\"linear-gradient(180deg, rgb(0, 0, 0) 80%, rgba(0, 0, 0, 0) 100%) add\"},children:/*#__PURE__*/_jsxs(MotionDivWithFX,{__framer__spring:{damping:30,delay:0,duration:.3,ease:[.44,0,.56,1],mass:1,stiffness:150,type:\"spring\"},__framer__styleTransformEffectEnabled:true,__framer__transformTargets:[{target:{opacity:.3,rotate:0,rotateX:0,rotateY:0,scale:1,skewX:0,skewY:0,x:0,y:0}},{target:{opacity:1,rotate:0,rotateX:0,rotateY:0,scale:1,skewX:0,skewY:0,x:0,y:0}}],__framer__transformTrigger:\"onInView\",__perspectiveFX:false,__smartComponentFX:true,__targetOpacity:1,className:\"framer-pty37y\",\"data-border\":true,\"data-framer-name\":\"Container\",layoutDependency:layoutDependency,layoutId:\"SlGLYkoPX\",style:{\"--border-bottom-width\":\"0px\",\"--border-color\":\"var(--token-b065af26-ed04-4754-81f1-004a104fdd7f, rgba(0, 24, 94, 0.3))\",\"--border-left-width\":\"1px\",\"--border-right-width\":\"1px\",\"--border-style\":\"solid\",\"--border-top-width\":\"1px\",backgroundColor:\"rgba(5, 5, 5, 0.5)\",borderTopLeftRadius:9,borderTopRightRadius:9},...addPropertyOverrides({gmK2MTPgR:{__framer__styleTransformEffectEnabled:undefined}},baseVariant,gestureVariant),children:[/*#__PURE__*/_jsx(ComponentViewportProvider,{height:80,width:`max(max(${componentViewport?.width||\"100vw\"} - 2px, 1px) - 40px, 1px)`,y:(componentViewport?.y||0)+(1+((componentViewport?.height||429)-2-((componentViewport?.height||429)-2)*1)/2)+12+0+8+0+((Math.max((Math.max(0,(((componentViewport?.height||429)-2)*1-24-174)/1)*1-16)*1,240)-0-168)/2+0+0),...addPropertyOverrides({gmK2MTPgR:{width:`max(max(${componentViewport?.width||\"100vw\"} - 2px, 1px) - 24px, 1px)`,y:(componentViewport?.y||0)+(1+((componentViewport?.height||429)-2-((componentViewport?.height||429)-2)*1)/2)+12+0+0+0+((Math.max((Math.max(0,(((componentViewport?.height||429)-2)*1-24-174)/1)*1-0)*1,240)-0-168)/2+0+0)}},baseVariant,gestureVariant),children:/*#__PURE__*/_jsx(motion.div,{className:\"framer-1nsmeqg-container\",layoutDependency:layoutDependency,layoutId:\"tWBr9ly1K-container\",children:/*#__PURE__*/_jsx(TickerIcons,{EjsVVRGWK:\"left\",height:\"100%\",HMhf4zsBQ:addImageAlt({src:\"https://framerusercontent.com/images/ScGavdIdTjHTgHXBhFQXusFFEn4.svg\"},\"\"),hqb8et3Qp:addImageAlt({src:\"https://framerusercontent.com/images/qc6WiaOLMJCgLjRA2nE1Poq3zLk.svg\"},\"\"),id:\"tWBr9ly1K\",jY69pN90C:20,layoutId:\"tWBr9ly1K\",P1OSnlSDO:8,style:{width:\"100%\"},VGqYPkCYU:addImageAlt({src:\"https://framerusercontent.com/images/8y8OLtsq3aj0TJnWcRwlcPqvWE.svg\"},\"\"),width:\"100%\"})})}),/*#__PURE__*/_jsx(ComponentViewportProvider,{height:80,width:`max(max(${componentViewport?.width||\"100vw\"} - 2px, 1px) - 40px, 1px)`,y:(componentViewport?.y||0)+(1+((componentViewport?.height||429)-2-((componentViewport?.height||429)-2)*1)/2)+12+0+8+0+((Math.max((Math.max(0,(((componentViewport?.height||429)-2)*1-24-174)/1)*1-16)*1,240)-0-168)/2+80+8),...addPropertyOverrides({gmK2MTPgR:{width:`max(max(${componentViewport?.width||\"100vw\"} - 2px, 1px) - 24px, 1px)`,y:(componentViewport?.y||0)+(1+((componentViewport?.height||429)-2-((componentViewport?.height||429)-2)*1)/2)+12+0+0+0+((Math.max((Math.max(0,(((componentViewport?.height||429)-2)*1-24-174)/1)*1-0)*1,240)-0-168)/2+80+8)}},baseVariant,gestureVariant),children:/*#__PURE__*/_jsx(motion.div,{className:\"framer-42vbcn-container\",layoutDependency:layoutDependency,layoutId:\"c1K_zU5qF-container\",children:/*#__PURE__*/_jsx(TickerIcons,{EjsVVRGWK:\"right\",height:\"100%\",HMhf4zsBQ:addImageAlt({src:\"https://framerusercontent.com/images/Kjci2ZiHnCXWVjKZxU9rwu3GSfI.svg\"},\"\"),hqb8et3Qp:addImageAlt({src:\"https://framerusercontent.com/images/YcyG9QsC7RV1Onc50wyEXquv1k.svg\"},\"\"),id:\"c1K_zU5qF\",jY69pN90C:20,layoutId:\"c1K_zU5qF\",P1OSnlSDO:8,style:{width:\"100%\"},tIS2Z9GXY:addImageAlt({src:\"https://framerusercontent.com/images/hvfBGbwc1AsKFtdq8R2VcwHAv0A.svg\"},\"\"),VGqYPkCYU:addImageAlt({src:\"https://framerusercontent.com/images/ZokCuPJkR8AKgTToaXlDYY95I.svg\"},\"\"),width:\"100%\"})})})]})}),/*#__PURE__*/_jsxs(motion.div,{className:\"framer-rtsyxk\",\"data-framer-name\":\"Info\",layoutDependency:layoutDependency,layoutId:\"V60UXLnG2\",children:[/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.h3,{className:\"framer-styles-preset-5a4759\",\"data-styles-preset\":\"vKGxKv6WT\",children:\"Title\"})}),className:\"framer-1qm7jm3\",fonts:[\"Inter\"],layoutDependency:layoutDependency,layoutId:\"GGaa8bZG8\",style:{\"--framer-link-text-color\":\"rgb(0, 153, 255)\",\"--framer-link-text-decoration\":\"underline\"},text:tLs69h6vu,verticalAlignment:\"top\",withExternalLayout:true}),/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{className:\"framer-styles-preset-f8bv20\",\"data-styles-preset\":\"IZpeieEjn\",children:\"Description\"})}),className:\"framer-enft2q\",fonts:[\"Inter\"],layoutDependency:layoutDependency,layoutId:\"XggsYmK9N\",style:{\"--framer-link-text-color\":\"rgb(0, 153, 255)\",\"--framer-link-text-decoration\":\"underline\"},text:DXWWgGjsz,verticalAlignment:\"top\",withExternalLayout:true})]})]})})})})});});const css=[\"@supports (aspect-ratio: 1) { body { --framer-aspect-ratio-supported: auto; } }\",\".framer-trrbT.framer-cl2ui, .framer-trrbT .framer-cl2ui { display: block; }\",\".framer-trrbT.framer-1wvg9p0 { align-content: center; align-items: center; cursor: default; display: flex; flex-direction: row; flex-wrap: nowrap; gap: 0px; height: 429px; justify-content: center; overflow: hidden; padding: 1px; position: relative; width: 763px; will-change: var(--framer-will-change-override, transform); }\",\".framer-trrbT .framer-165h4cd { align-content: flex-start; align-items: flex-start; display: flex; flex: 1 0 0px; flex-direction: column; flex-wrap: nowrap; gap: 0px; height: 100%; justify-content: flex-start; overflow: hidden; padding: 12px; position: relative; width: 1px; will-change: var(--framer-will-change-override, transform); z-index: 1; }\",\".framer-trrbT .framer-vdgzj1 { align-content: flex-start; align-items: flex-start; display: flex; flex: 1 0 0px; flex-direction: row; flex-wrap: nowrap; gap: 8px; height: 1px; justify-content: center; overflow: visible; padding: 8px; position: relative; width: 100%; }\",\".framer-trrbT .framer-pty37y { align-content: center; align-items: center; display: flex; flex: 1 0 0px; flex-direction: column; flex-wrap: nowrap; gap: 8px; height: 100%; justify-content: center; min-height: 240px; overflow: visible; padding: 0px; position: relative; width: 1px; }\",\".framer-trrbT .framer-1nsmeqg-container, .framer-trrbT .framer-42vbcn-container { flex: none; height: auto; position: relative; width: 100%; }\",\".framer-trrbT .framer-rtsyxk { align-content: flex-start; align-items: flex-start; display: flex; flex: none; flex-direction: column; flex-wrap: nowrap; gap: 8px; height: min-content; justify-content: center; overflow: hidden; padding: 8px; position: relative; width: 100%; }\",\".framer-trrbT .framer-1qm7jm3 { flex: none; height: auto; max-width: 600px; position: relative; white-space: pre-wrap; width: 100%; word-break: break-word; word-wrap: break-word; z-index: 1; }\",\".framer-trrbT .framer-enft2q { flex: none; height: auto; max-width: 520px; position: relative; white-space: pre-wrap; width: 100%; word-break: break-word; word-wrap: break-word; z-index: 1; }\",\"@supports (background: -webkit-named-image(i)) and (not (font-palette:dark)) { .framer-trrbT.framer-1wvg9p0, .framer-trrbT .framer-165h4cd, .framer-trrbT .framer-vdgzj1, .framer-trrbT .framer-pty37y, .framer-trrbT .framer-rtsyxk { gap: 0px; } .framer-trrbT.framer-1wvg9p0 > * { margin: 0px; margin-left: calc(0px / 2); margin-right: calc(0px / 2); } .framer-trrbT.framer-1wvg9p0 > :first-child, .framer-trrbT .framer-vdgzj1 > :first-child { margin-left: 0px; } .framer-trrbT.framer-1wvg9p0 > :last-child, .framer-trrbT .framer-vdgzj1 > :last-child { margin-right: 0px; } .framer-trrbT .framer-165h4cd > * { margin: 0px; margin-bottom: calc(0px / 2); margin-top: calc(0px / 2); } .framer-trrbT .framer-165h4cd > :first-child, .framer-trrbT .framer-pty37y > :first-child, .framer-trrbT .framer-rtsyxk > :first-child { margin-top: 0px; } .framer-trrbT .framer-165h4cd > :last-child, .framer-trrbT .framer-pty37y > :last-child, .framer-trrbT .framer-rtsyxk > :last-child { margin-bottom: 0px; } .framer-trrbT .framer-vdgzj1 > * { margin: 0px; margin-left: calc(8px / 2); margin-right: calc(8px / 2); } .framer-trrbT .framer-pty37y > *, .framer-trrbT .framer-rtsyxk > * { margin: 0px; margin-bottom: calc(8px / 2); margin-top: calc(8px / 2); } }\",\".framer-trrbT.framer-v-b7z247 .framer-vdgzj1 { padding: 0px; }\",...sharedStyle.css,...sharedStyle1.css,'.framer-trrbT[data-border=\"true\"]::after, .framer-trrbT [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 429\n * @framerIntrinsicWidth 763\n * @framerCanvasComponentVariantDetails {\"propertyName\":\"variant\",\"data\":{\"default\":{\"layout\":[\"fixed\",\"fixed\"]},\"gmK2MTPgR\":{\"layout\":[\"fixed\",\"fixed\"]}}}\n * @framerVariables {\"tLs69h6vu\":\"title\",\"DXWWgGjsz\":\"description\"}\n * @framerImmutableVariables true\n * @framerDisplayContentsDiv false\n * @framerComponentViewportWidth true\n */const Framercj3FVOB4Y=withCSS(Component,css,\"framer-trrbT\");export default Framercj3FVOB4Y;Framercj3FVOB4Y.displayName=\"Service cards/Automation\";Framercj3FVOB4Y.defaultProps={height:429,width:763};addPropertyControls(Framercj3FVOB4Y,{variant:{options:[\"TvB1KrCp1\",\"gmK2MTPgR\"],optionTitles:[\"Desktop\",\"Tablet/phone\"],title:\"Variant\",type:ControlType.Enum},tLs69h6vu:{defaultValue:\"Title\",displayTextArea:false,title:\"Title\",type:ControlType.String},DXWWgGjsz:{defaultValue:\"Description\",displayTextArea:true,title:\"Description\",type:ControlType.String}});addFonts(Framercj3FVOB4Y,[{explicitInter:true,fonts:[{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F\",url:\"https://framerusercontent.com/assets/5vvr9Vy74if2I6bQbJvbw7SY1pQ.woff2\",weight:\"400\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116\",url:\"https://framerusercontent.com/assets/EOr0mi4hNtlgWNn9if640EZzXCo.woff2\",weight:\"400\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+1F00-1FFF\",url:\"https://framerusercontent.com/assets/Y9k9QrlZAqio88Klkmbd8VoMQc.woff2\",weight:\"400\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0370-03FF\",url:\"https://framerusercontent.com/assets/OYrD2tBIBPvoJXiIHnLoOXnY9M.woff2\",weight:\"400\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF\",url:\"https://framerusercontent.com/assets/JeYwfuaPfZHQhEG8U5gtPDZ7WQ.woff2\",weight:\"400\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD\",url:\"https://framerusercontent.com/assets/vQyevYAyHtARFwPqUzQGpnDs.woff2\",weight:\"400\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB\",url:\"https://framerusercontent.com/assets/b6Y37FthZeALduNqHicBT6FutY.woff2\",weight:\"400\"}]},...TickerIconsFonts,...getFontsFromSharedStyle(sharedStyle.fonts),...getFontsFromSharedStyle(sharedStyle1.fonts)],{supportsExplicitInterCodegen:true});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"Framercj3FVOB4Y\",\"slots\":[],\"annotations\":{\"framerIntrinsicWidth\":\"763\",\"framerIntrinsicHeight\":\"429\",\"framerContractVersion\":\"1\",\"framerImmutableVariables\":\"true\",\"framerComponentViewportWidth\":\"true\",\"framerCanvasComponentVariantDetails\":\"{\\\"propertyName\\\":\\\"variant\\\",\\\"data\\\":{\\\"default\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"gmK2MTPgR\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]}}}\",\"framerDisplayContentsDiv\":\"false\",\"framerVariables\":\"{\\\"tLs69h6vu\\\":\\\"title\\\",\\\"DXWWgGjsz\\\":\\\"description\\\"}\"}},\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}", "// Generated by Framer (99bc0fd)\nimport{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{addFonts,addPropertyControls,ControlType,cx,Link,RichText,useComponentViewport,useLocaleInfo,useVariantState,withCSS}from\"framer\";import{LayoutGroup,motion,MotionConfigContext}from\"framer-motion\";import*as React from\"react\";const enabledGestures={c4xNaovMW:{hover:true},zH_wh2O1w:{hover:true}};const cycleOrder=[\"c4xNaovMW\",\"zH_wh2O1w\"];const serializationHash=\"framer-jXoIK\";const variantClassNames={c4xNaovMW:\"framer-v-caezjm\",zH_wh2O1w:\"framer-v-1nuojpc\"};function addPropertyOverrides(overrides,...variants){const nextOverrides={};variants===null||variants===void 0?void 0:variants.forEach(variant=>variant&&Object.assign(nextOverrides,overrides[variant]));return nextOverrides;}const transition1={damping:60,delay:0,mass:1,stiffness:400,type:\"spring\"};const Transition=({value,children})=>{const config=React.useContext(MotionConfigContext);const transition=value!==null&&value!==void 0?value:config.transition;const contextValue=React.useMemo(()=>({...config,transition}),[JSON.stringify(transition)]);return /*#__PURE__*/_jsx(MotionConfigContext.Provider,{value:contextValue,children:children});};const Variants=motion.create(React.Fragment);const humanReadableVariantMap={Default:\"c4xNaovMW\",Navigation:\"zH_wh2O1w\"};const getProps=({height,id,link,text,width,...props})=>{var _ref,_humanReadableVariantMap_props_variant,_ref1;return{...props,LcMln3Vkv:(_ref=text!==null&&text!==void 0?text:props.LcMln3Vkv)!==null&&_ref!==void 0?_ref:\"Book a Free Consultation\",uTdAD3NkH:link!==null&&link!==void 0?link:props.uTdAD3NkH,variant:(_ref1=(_humanReadableVariantMap_props_variant=humanReadableVariantMap[props.variant])!==null&&_humanReadableVariantMap_props_variant!==void 0?_humanReadableVariantMap_props_variant:props.variant)!==null&&_ref1!==void 0?_ref1:\"c4xNaovMW\"};};const createLayoutDependency=(props,variants)=>{if(props.layoutDependency)return variants.join(\"-\")+props.layoutDependency;return variants.join(\"-\");};const Component=/*#__PURE__*/React.forwardRef(function(props,ref){const{activeLocale,setLocale}=useLocaleInfo();const{style,className,layoutId,variant,LcMln3Vkv,uTdAD3NkH,...restProps}=getProps(props);const{baseVariant,classNames,clearLoadingGesture,gestureHandlers,gestureVariant,isLoading,setGestureState,setVariant,variants}=useVariantState({cycleOrder,defaultVariant:\"c4xNaovMW\",enabledGestures,variant,variantClassNames});const layoutDependency=createLayoutDependency(props,variants);const ref1=React.useRef(null);const defaultLayoutId=React.useId();const sharedStyleClassNames=[];const componentViewport=useComponentViewport();return /*#__PURE__*/_jsx(LayoutGroup,{id:layoutId!==null&&layoutId!==void 0?layoutId:defaultLayoutId,children:/*#__PURE__*/_jsx(Variants,{animate:variants,initial:false,children:/*#__PURE__*/_jsx(Transition,{value:transition1,children:/*#__PURE__*/_jsx(Link,{href:uTdAD3NkH,children:/*#__PURE__*/_jsxs(motion.a,{...restProps,...gestureHandlers,className:`${cx(serializationHash,...sharedStyleClassNames,\"framer-caezjm\",className,classNames)} framer-t09rro`,\"data-framer-name\":\"Default\",layoutDependency:layoutDependency,layoutId:\"c4xNaovMW\",ref:ref!==null&&ref!==void 0?ref:ref1,style:{backgroundColor:\"var(--token-ab8a1628-3695-47a5-8496-32bf3ecfdf66, rgb(30, 58, 138))\",borderBottomLeftRadius:12,borderBottomRightRadius:12,borderTopLeftRadius:12,borderTopRightRadius:12,...style},variants:{zH_wh2O1w:{borderBottomLeftRadius:10,borderBottomRightRadius:10,borderTopLeftRadius:10,borderTopRightRadius:10}},...addPropertyOverrides({\"c4xNaovMW-hover\":{\"data-framer-name\":undefined},\"zH_wh2O1w-hover\":{\"data-framer-name\":undefined},zH_wh2O1w:{\"data-framer-name\":\"Navigation\"}},baseVariant,gestureVariant),children:[/*#__PURE__*/_jsx(motion.div,{className:\"framer-1wkbc4w\",\"data-framer-name\":\"BG\",layoutDependency:layoutDependency,layoutId:\"Wq7mw7m2A\",style:{background:'linear-gradient(180deg, var(--token-ab8a1628-3695-47a5-8496-32bf3ecfdf66, rgb(30, 58, 138)) /* {\"name\":\"Blue\"} */ 0%, var(--token-17d94287-c97e-4602-9cf7-4d2036e50e01, rgb(0, 9, 36)) /* {\"name\":\"Dark blue\"} */ 100%)',opacity:1},variants:{\"c4xNaovMW-hover\":{opacity:0},\"zH_wh2O1w-hover\":{opacity:0}}}),/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{style:{\"--font-selector\":\"SW50ZXItTWVkaXVt\",\"--framer-font-family\":'\"Inter\", \"Inter Placeholder\", sans-serif',\"--framer-font-weight\":\"500\",\"--framer-text-alignment\":\"center\",\"--framer-text-color\":\"var(--extracted-r6o4lv, var(--token-8e562c71-b86d-432e-ad04-cd3f03e73a71, rgb(255, 255, 255)))\"},children:\"Book a Free Consultation\"})}),className:\"framer-1ji4cnl\",fonts:[\"Inter-Medium\"],layoutDependency:layoutDependency,layoutId:\"JLnnqo8Td\",style:{\"--extracted-r6o4lv\":\"var(--token-8e562c71-b86d-432e-ad04-cd3f03e73a71, rgb(255, 255, 255))\",\"--framer-link-text-color\":\"rgb(0, 153, 255)\",\"--framer-link-text-decoration\":\"underline\"},text:LcMln3Vkv,verticalAlignment:\"top\",withExternalLayout:true,...addPropertyOverrides({zH_wh2O1w:{children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{style:{\"--font-selector\":\"SW50ZXItTWVkaXVt\",\"--framer-font-family\":'\"Inter\", \"Inter Placeholder\", sans-serif',\"--framer-font-size\":\"14px\",\"--framer-font-weight\":\"500\",\"--framer-text-alignment\":\"center\",\"--framer-text-color\":\"var(--extracted-r6o4lv, var(--token-8e562c71-b86d-432e-ad04-cd3f03e73a71, rgb(255, 255, 255)))\"},children:\"Book a Free Consultation\"})})}},baseVariant,gestureVariant)})]})})})})});});const css=[\"@supports (aspect-ratio: 1) { body { --framer-aspect-ratio-supported: auto; } }\",\".framer-jXoIK.framer-t09rro, .framer-jXoIK .framer-t09rro { display: block; }\",\".framer-jXoIK.framer-caezjm { align-content: center; align-items: center; cursor: pointer; display: flex; flex-direction: column; flex-wrap: nowrap; gap: 10px; height: 52px; justify-content: center; overflow: hidden; padding: 16px 24px 16px 24px; position: relative; text-decoration: none; width: min-content; will-change: var(--framer-will-change-override, transform); }\",\".framer-jXoIK .framer-1wkbc4w { bottom: 0px; flex: none; left: 0px; overflow: visible; position: absolute; right: 0px; top: 0px; z-index: 0; }\",\".framer-jXoIK .framer-1ji4cnl { flex: none; height: auto; position: relative; white-space: pre; width: auto; z-index: 1; }\",\"@supports (background: -webkit-named-image(i)) and (not (font-palette:dark)) { .framer-jXoIK.framer-caezjm { gap: 0px; } .framer-jXoIK.framer-caezjm > * { margin: 0px; margin-bottom: calc(10px / 2); margin-top: calc(10px / 2); } .framer-jXoIK.framer-caezjm > :first-child { margin-top: 0px; } .framer-jXoIK.framer-caezjm > :last-child { margin-bottom: 0px; } }\"];/**\n * This is a generated Framer component.\n * @framerIntrinsicHeight 52\n * @framerIntrinsicWidth 239\n * @framerCanvasComponentVariantDetails {\"propertyName\":\"variant\",\"data\":{\"default\":{\"layout\":[\"auto\",\"fixed\"]},\"zH_wh2O1w\":{\"layout\":[\"auto\",\"fixed\"]},\"aHv68MZLG\":{\"layout\":[\"auto\",\"fixed\"]},\"D7WJ_S3pR\":{\"layout\":[\"auto\",\"fixed\"]}}}\n * @framerVariables {\"LcMln3Vkv\":\"text\",\"uTdAD3NkH\":\"link\"}\n * @framerImmutableVariables true\n * @framerDisplayContentsDiv false\n * @framerComponentViewportWidth true\n */const Framerht0qGf7EI=withCSS(Component,css,\"framer-jXoIK\");export default Framerht0qGf7EI;Framerht0qGf7EI.displayName=\"Buttons/Primary\";Framerht0qGf7EI.defaultProps={height:52,width:239};addPropertyControls(Framerht0qGf7EI,{variant:{options:[\"c4xNaovMW\",\"zH_wh2O1w\"],optionTitles:[\"Default\",\"Navigation\"],title:\"Variant\",type:ControlType.Enum},LcMln3Vkv:{defaultValue:\"Book a Free Consultation\",displayTextArea:false,title:\"Text\",type:ControlType.String},uTdAD3NkH:{title:\"Link\",type:ControlType.Link}});addFonts(Framerht0qGf7EI,[{explicitInter:true,fonts:[{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F\",url:\"https://framerusercontent.com/assets/5A3Ce6C9YYmCjpQx9M4inSaKU.woff2\",weight:\"500\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116\",url:\"https://framerusercontent.com/assets/Qx95Xyt0Ka3SGhinnbXIGpEIyP4.woff2\",weight:\"500\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+1F00-1FFF\",url:\"https://framerusercontent.com/assets/6mJuEAguuIuMog10gGvH5d3cl8.woff2\",weight:\"500\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0370-03FF\",url:\"https://framerusercontent.com/assets/xYYWaj7wCU5zSQH0eXvSaS19wo.woff2\",weight:\"500\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF\",url:\"https://framerusercontent.com/assets/otTaNuNpVK4RbdlT7zDDdKvQBA.woff2\",weight:\"500\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD\",url:\"https://framerusercontent.com/assets/d3tHnaQIAeqiE5hGcRw4mmgWYU.woff2\",weight:\"500\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB\",url:\"https://framerusercontent.com/assets/DolVirEGb34pEXEp8t8FQBSK4.woff2\",weight:\"500\"}]}],{supportsExplicitInterCodegen:true});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"Framerht0qGf7EI\",\"slots\":[],\"annotations\":{\"framerIntrinsicWidth\":\"239\",\"framerVariables\":\"{\\\"LcMln3Vkv\\\":\\\"text\\\",\\\"uTdAD3NkH\\\":\\\"link\\\"}\",\"framerImmutableVariables\":\"true\",\"framerCanvasComponentVariantDetails\":\"{\\\"propertyName\\\":\\\"variant\\\",\\\"data\\\":{\\\"default\\\":{\\\"layout\\\":[\\\"auto\\\",\\\"fixed\\\"]},\\\"zH_wh2O1w\\\":{\\\"layout\\\":[\\\"auto\\\",\\\"fixed\\\"]},\\\"aHv68MZLG\\\":{\\\"layout\\\":[\\\"auto\\\",\\\"fixed\\\"]},\\\"D7WJ_S3pR\\\":{\\\"layout\\\":[\\\"auto\\\",\\\"fixed\\\"]}}}\",\"framerIntrinsicHeight\":\"52\",\"framerContractVersion\":\"1\",\"framerComponentViewportWidth\":\"true\",\"framerDisplayContentsDiv\":\"false\"}},\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./ht0qGf7EI.map", "// Generated by Framer (12ecc5e)\nimport{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{addFonts,addPropertyControls,ComponentViewportProvider,ControlType,cx,getFonts,getFontsFromSharedStyle,RichText,useComponentViewport,useLocaleInfo,useVariantState,withCSS}from\"framer\";import{LayoutGroup,motion,MotionConfigContext}from\"framer-motion\";import*as React from\"react\";import{Icon as Phosphor}from\"https://framerusercontent.com/modules/tYScH7LTqUtz5KUaUAYP/CAjjxbTJBxHwH1MagCef/Phosphor.js\";import*as sharedStyle2 from\"https://framerusercontent.com/modules/yhwxvTNo3tHUNTZTCUXd/rnjts2scwUlJE6DcMt7a/IZpeieEjn.js\";import*as sharedStyle from\"https://framerusercontent.com/modules/s1wXpYYf2GX4ofFesE8d/4El76fvq2TUHYwvG0c1v/QYfoYIhhT.js\";import*as sharedStyle1 from\"https://framerusercontent.com/modules/RwquBhWhgnFy8YZTajJ8/pNJ4BdDGlKDraehpy0Mk/vKGxKv6WT.js\";import ButtonsPrimary from\"https://framerusercontent.com/modules/dYZ6T2wXu2s1uJ3fLvFp/K4iKfQw7gESm6Tr1IBUz/ht0qGf7EI.js\";const ButtonsPrimaryFonts=getFonts(ButtonsPrimary);const PhosphorFonts=getFonts(Phosphor);const cycleOrder=[\"jdtUJHGVc\",\"iAuBR8ngF\"];const serializationHash=\"framer-bybQS\";const variantClassNames={iAuBR8ngF:\"framer-v-wxu8ia\",jdtUJHGVc:\"framer-v-1ft3hpy\"};function addPropertyOverrides(overrides,...variants){const nextOverrides={};variants===null||variants===void 0?void 0:variants.forEach(variant=>variant&&Object.assign(nextOverrides,overrides[variant]));return nextOverrides;}const transition1={damping:40,delay:0,mass:1,stiffness:400,type:\"spring\"};const isSet=value=>{if(Array.isArray(value)){return value.length>0;}return value!==undefined&&value!==null&&value!==\"\";};const Transition=({value,children})=>{const config=React.useContext(MotionConfigContext);const transition=value!==null&&value!==void 0?value:config.transition;const contextValue=React.useMemo(()=>({...config,transition}),[JSON.stringify(transition)]);return /*#__PURE__*/_jsx(MotionConfigContext.Provider,{value:contextValue,children:children});};const Variants=motion.create(React.Fragment);const humanReadableVariantMap={Default:\"jdtUJHGVc\",Popular:\"iAuBR8ngF\"};const getProps=({buttonLink,buttonText,description,feature1,feature2,feature3,feature4,feature5,feature6,feature7,height,id,paymentDetails,planName,price,tagline,width,...props})=>{var _ref,_ref1,_ref2,_ref3,_ref4,_ref5,_ref6,_ref7,_ref8,_ref9,_ref10,_ref11,_humanReadableVariantMap_props_variant,_ref12,_ref13;return{...props,AICV_JBwn:(_ref=feature3!==null&&feature3!==void 0?feature3:props.AICV_JBwn)!==null&&_ref!==void 0?_ref:\"Feature 3\",AINojTrO1:(_ref1=feature1!==null&&feature1!==void 0?feature1:props.AINojTrO1)!==null&&_ref1!==void 0?_ref1:\"Feature 1\",awfKgLoP0:(_ref2=feature6!==null&&feature6!==void 0?feature6:props.awfKgLoP0)!==null&&_ref2!==void 0?_ref2:\"Feature 6\",GM6xbsAjG:(_ref3=buttonText!==null&&buttonText!==void 0?buttonText:props.GM6xbsAjG)!==null&&_ref3!==void 0?_ref3:\"Get Started\",kDFNVuvri:(_ref4=description!==null&&description!==void 0?description:props.kDFNVuvri)!==null&&_ref4!==void 0?_ref4:\"Description\",NPcpuOJ_c:(_ref5=planName!==null&&planName!==void 0?planName:props.NPcpuOJ_c)!==null&&_ref5!==void 0?_ref5:\"Standard\",qytFyYd41:(_ref6=tagline!==null&&tagline!==void 0?tagline:props.qytFyYd41)!==null&&_ref6!==void 0?_ref6:\"Tagline\",qZmhJ2LDU:(_ref7=feature2!==null&&feature2!==void 0?feature2:props.qZmhJ2LDU)!==null&&_ref7!==void 0?_ref7:\"Feature 2\",RBB9xjZlB:(_ref8=feature7!==null&&feature7!==void 0?feature7:props.RBB9xjZlB)!==null&&_ref8!==void 0?_ref8:\"Feature 7\",sNn6CWkIN:(_ref9=price!==null&&price!==void 0?price:props.sNn6CWkIN)!==null&&_ref9!==void 0?_ref9:\"$5000\",uNcMhG2ib:(_ref10=feature4!==null&&feature4!==void 0?feature4:props.uNcMhG2ib)!==null&&_ref10!==void 0?_ref10:\"Feature 4\",V4tD38RXL:(_ref11=paymentDetails!==null&&paymentDetails!==void 0?paymentDetails:props.V4tD38RXL)!==null&&_ref11!==void 0?_ref11:\"/month\",variant:(_ref12=(_humanReadableVariantMap_props_variant=humanReadableVariantMap[props.variant])!==null&&_humanReadableVariantMap_props_variant!==void 0?_humanReadableVariantMap_props_variant:props.variant)!==null&&_ref12!==void 0?_ref12:\"jdtUJHGVc\",wCt4tT5jS:buttonLink!==null&&buttonLink!==void 0?buttonLink:props.wCt4tT5jS,Zx7vhVzb9:(_ref13=feature5!==null&&feature5!==void 0?feature5:props.Zx7vhVzb9)!==null&&_ref13!==void 0?_ref13:\"Feature 5\"};};const createLayoutDependency=(props,variants)=>{if(props.layoutDependency)return variants.join(\"-\")+props.layoutDependency;return variants.join(\"-\");};const Component=/*#__PURE__*/React.forwardRef(function(props,ref){const{activeLocale,setLocale}=useLocaleInfo();const{style,className,layoutId,variant,NPcpuOJ_c,sNn6CWkIN,V4tD38RXL,qytFyYd41,kDFNVuvri,AINojTrO1,qZmhJ2LDU,AICV_JBwn,uNcMhG2ib,Zx7vhVzb9,awfKgLoP0,RBB9xjZlB,GM6xbsAjG,wCt4tT5jS,...restProps}=getProps(props);const{baseVariant,classNames,clearLoadingGesture,gestureHandlers,gestureVariant,isLoading,setGestureState,setVariant,variants}=useVariantState({cycleOrder,defaultVariant:\"jdtUJHGVc\",variant,variantClassNames});const layoutDependency=createLayoutDependency(props,variants);const ref1=React.useRef(null);const visible=isSet(qytFyYd41);const visible1=isSet(kDFNVuvri);const visible2=isSet(AINojTrO1);const visible3=isSet(qZmhJ2LDU);const visible4=isSet(AICV_JBwn);const visible5=isSet(uNcMhG2ib);const visible6=isSet(Zx7vhVzb9);const visible7=isSet(awfKgLoP0);const visible8=isSet(RBB9xjZlB);const defaultLayoutId=React.useId();const sharedStyleClassNames=[sharedStyle.className,sharedStyle1.className,sharedStyle2.className];const componentViewport=useComponentViewport();return /*#__PURE__*/_jsx(LayoutGroup,{id:layoutId!==null&&layoutId!==void 0?layoutId:defaultLayoutId,children:/*#__PURE__*/_jsx(Variants,{animate:variants,initial:false,children:/*#__PURE__*/_jsx(Transition,{value:transition1,children:/*#__PURE__*/_jsx(motion.div,{...restProps,...gestureHandlers,className:cx(serializationHash,...sharedStyleClassNames,\"framer-1ft3hpy\",className,classNames),\"data-framer-name\":\"Default\",layoutDependency:layoutDependency,layoutId:\"jdtUJHGVc\",ref:ref!==null&&ref!==void 0?ref:ref1,style:{background:'radial-gradient(50% 50% at 50% 50%, var(--token-ab8a1628-3695-47a5-8496-32bf3ecfdf66, rgb(21, 58, 161)) /* {\"name\":\"Blue\"} */ 0%, var(--token-17d94287-c97e-4602-9cf7-4d2036e50e01, rgb(0, 24, 94)) /* {\"name\":\"Dark blue\"} */ 100%)',borderBottomLeftRadius:12,borderBottomRightRadius:12,borderTopLeftRadius:12,borderTopRightRadius:12,...style},variants:{iAuBR8ngF:{background:'radial-gradient(50% 50% at 50% 50%, var(--token-ab8a1628-3695-47a5-8496-32bf3ecfdf66, rgb(21, 58, 161)) /* {\"name\":\"Blue\"} */ -30%, var(--token-ab8a1628-3695-47a5-8496-32bf3ecfdf66, rgb(21, 58, 161)) /* {\"name\":\"Blue\"} */ 150%)'}},...addPropertyOverrides({iAuBR8ngF:{\"data-framer-name\":\"Popular\"}},baseVariant,gestureVariant),children:/*#__PURE__*/_jsxs(motion.div,{className:\"framer-2uao5i\",\"data-framer-name\":\"Plan\",layoutDependency:layoutDependency,layoutId:\"UPX3gbU46\",style:{background:'linear-gradient(130deg, var(--token-f5d2506d-9c8c-423b-a07c-4bdb7316df89, rgba(5, 5, 5, 0.75)) /* {\"name\":\"Black 75%\"} */ 0%, var(--token-7be8625f-297b-4b2a-908d-7056e5d82d0a, rgb(5, 5, 5)) /* {\"name\":\"Black\"} */ 120%)',borderBottomLeftRadius:11,borderBottomRightRadius:11,borderTopLeftRadius:11,borderTopRightRadius:11,boxShadow:\"0px 0.6021873017743928px 2.0474368260329356px 0px rgba(0, 0, 0, 0.00602), 0px 2.288533303243457px 7.781013231027754px 0px rgba(0, 0, 0, 0.02289), 0px 10px 34px 0px rgba(0, 0, 0, 0.1)\"},children:[/*#__PURE__*/_jsx(motion.div,{className:\"framer-15x8wcl\",\"data-framer-name\":\"Title\",layoutDependency:layoutDependency,layoutId:\"LM9XhHssC\",children:/*#__PURE__*/_jsxs(motion.div,{className:\"framer-1ceq5t6\",layoutDependency:layoutDependency,layoutId:\"dpAO6KPR_\",children:[/*#__PURE__*/_jsx(motion.div,{className:\"framer-cjcd2l\",\"data-border\":true,\"data-framer-name\":\"Tag\",layoutDependency:layoutDependency,layoutId:\"y5gzi3SOA\",style:{\"--border-bottom-width\":\"1px\",\"--border-color\":\"var(--token-ef727c83-0227-4900-b478-e0fde1daabc5, rgb(38, 38, 38))\",\"--border-left-width\":\"1px\",\"--border-right-width\":\"1px\",\"--border-style\":\"solid\",\"--border-top-width\":\"1px\",borderBottomLeftRadius:20,borderBottomRightRadius:20,borderTopLeftRadius:20,borderTopRightRadius:20},variants:{iAuBR8ngF:{\"--border-color\":\"var(--token-ab8a1628-3695-47a5-8496-32bf3ecfdf66, rgb(21, 58, 161))\",background:'linear-gradient(180deg, var(--token-7be8625f-297b-4b2a-908d-7056e5d82d0a, rgb(5, 5, 5)) /* {\"name\":\"Black\"} */ 0%, var(--token-ab8a1628-3695-47a5-8496-32bf3ecfdf66, rgb(21, 58, 161)) /* {\"name\":\"Blue\"} */ 100%)'}},children:/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{className:\"framer-styles-preset-1ecbodc\",\"data-styles-preset\":\"QYfoYIhhT\",style:{\"--framer-text-color\":\"var(--extracted-r6o4lv, var(--token-8e562c71-b86d-432e-ad04-cd3f03e73a71, rgb(255, 255, 255)))\"},children:\"Standard\"})}),className:\"framer-1ntr30v\",fonts:[\"Inter\"],layoutDependency:layoutDependency,layoutId:\"NaF3FCKNY\",style:{\"--extracted-r6o4lv\":\"var(--token-8e562c71-b86d-432e-ad04-cd3f03e73a71, rgb(255, 255, 255))\",\"--framer-link-text-color\":\"rgb(0, 153, 255)\",\"--framer-link-text-decoration\":\"underline\"},text:NPcpuOJ_c,verticalAlignment:\"top\",withExternalLayout:true})}),/*#__PURE__*/_jsxs(motion.div,{className:\"framer-10p5i3p\",\"data-framer-name\":\"Price\",layoutDependency:layoutDependency,layoutId:\"Z1zeqNbwL\",children:[/*#__PURE__*/_jsxs(motion.div,{className:\"framer-12nqcgj\",layoutDependency:layoutDependency,layoutId:\"syRDdI1a6\",children:[/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.h3,{className:\"framer-styles-preset-5a4759\",\"data-styles-preset\":\"vKGxKv6WT\",children:\"$5000\"})}),className:\"framer-6cvfd3\",fonts:[\"Inter\"],layoutDependency:layoutDependency,layoutId:\"ge3yJZrAT\",style:{\"--framer-link-text-color\":\"rgb(0, 153, 255)\",\"--framer-link-text-decoration\":\"underline\"},text:sNn6CWkIN,verticalAlignment:\"top\",withExternalLayout:true}),/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{className:\"framer-styles-preset-1ecbodc\",\"data-styles-preset\":\"QYfoYIhhT\",style:{\"--framer-text-color\":\"var(--extracted-r6o4lv, var(--token-f4f48dc3-167d-47d5-90e8-15dc8302feb5, rgb(168, 168, 168)))\"},children:\"/month\"})}),className:\"framer-bnj7zv\",fonts:[\"Inter\"],layoutDependency:layoutDependency,layoutId:\"wYHp4k4mK\",style:{\"--extracted-r6o4lv\":\"var(--token-f4f48dc3-167d-47d5-90e8-15dc8302feb5, rgb(168, 168, 168))\",\"--framer-link-text-color\":\"rgb(0, 153, 255)\",\"--framer-link-text-decoration\":\"underline\"},text:V4tD38RXL,verticalAlignment:\"top\",withExternalLayout:true})]}),visible&&/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{className:\"framer-styles-preset-1ecbodc\",\"data-styles-preset\":\"QYfoYIhhT\",children:\"Tagline\"})}),className:\"framer-13nzfo8\",fonts:[\"Inter\"],layoutDependency:layoutDependency,layoutId:\"x0iujnHZy\",style:{\"--framer-link-text-color\":\"rgb(0, 153, 255)\",\"--framer-link-text-decoration\":\"underline\"},text:qytFyYd41,verticalAlignment:\"top\",withExternalLayout:true})]}),/*#__PURE__*/_jsx(motion.div,{className:\"framer-azk9uw\",\"data-framer-name\":\"Description\",layoutDependency:layoutDependency,layoutId:\"Np21MdYdz\",children:visible1&&/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{className:\"framer-styles-preset-f8bv20\",\"data-styles-preset\":\"IZpeieEjn\",style:{\"--framer-text-color\":\"var(--extracted-r6o4lv, var(--token-f4f48dc3-167d-47d5-90e8-15dc8302feb5, rgb(168, 168, 168)))\"},children:\"Description\"})}),className:\"framer-wa01dq\",fonts:[\"Inter\"],layoutDependency:layoutDependency,layoutId:\"iFP3UavXT\",style:{\"--extracted-r6o4lv\":\"var(--token-f4f48dc3-167d-47d5-90e8-15dc8302feb5, rgb(168, 168, 168))\",\"--framer-link-text-color\":\"rgb(0, 153, 255)\",\"--framer-link-text-decoration\":\"underline\"},text:kDFNVuvri,verticalAlignment:\"top\",withExternalLayout:true})})]})}),/*#__PURE__*/_jsx(motion.div,{className:\"framer-15zpb6k\",\"data-framer-name\":\"CTA\",layoutDependency:layoutDependency,layoutId:\"goPyiN0q3\",children:/*#__PURE__*/_jsx(ComponentViewportProvider,{height:52,width:`calc(${(componentViewport===null||componentViewport===void 0?void 0:componentViewport.width)||\"100vw\"} - 50px)`,children:/*#__PURE__*/_jsx(motion.div,{className:\"framer-1krrtnt-container\",layoutDependency:layoutDependency,layoutId:\"FcdqOf9Yv-container\",children:/*#__PURE__*/_jsx(ButtonsPrimary,{height:\"100%\",id:\"FcdqOf9Yv\",layoutId:\"FcdqOf9Yv\",LcMln3Vkv:GM6xbsAjG,style:{height:\"100%\",width:\"100%\"},uTdAD3NkH:wCt4tT5jS,variant:\"c4xNaovMW\",width:\"100%\"})})})}),/*#__PURE__*/_jsxs(motion.div,{className:\"framer-h50mlj\",\"data-framer-name\":\"Features\",layoutDependency:layoutDependency,layoutId:\"nsXgfcYEG\",children:[/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{className:\"framer-styles-preset-1ecbodc\",\"data-styles-preset\":\"QYfoYIhhT\",style:{\"--framer-text-color\":\"var(--extracted-r6o4lv, var(--token-f4f48dc3-167d-47d5-90e8-15dc8302feb5, rgb(168, 168, 168)))\"},children:\"Includes:\"})}),className:\"framer-hqgrmp\",fonts:[\"Inter\"],layoutDependency:layoutDependency,layoutId:\"oryX0ts0W\",style:{\"--extracted-r6o4lv\":\"var(--token-f4f48dc3-167d-47d5-90e8-15dc8302feb5, rgb(168, 168, 168))\",\"--framer-link-text-color\":\"rgb(0, 153, 255)\",\"--framer-link-text-decoration\":\"underline\"},verticalAlignment:\"top\",withExternalLayout:true}),visible2&&/*#__PURE__*/_jsxs(motion.div,{className:\"framer-1js1g3b\",\"data-framer-name\":\"Feature\",layoutDependency:layoutDependency,layoutId:\"rqMPQjFbw\",children:[/*#__PURE__*/_jsx(ComponentViewportProvider,{children:/*#__PURE__*/_jsx(motion.div,{className:\"framer-1k8dva9-container\",layoutDependency:layoutDependency,layoutId:\"zkuVAuFbA-container\",children:/*#__PURE__*/_jsx(Phosphor,{color:\"var(--token-ab8a1628-3695-47a5-8496-32bf3ecfdf66, rgb(21, 58, 161))\",height:\"100%\",iconSearch:\"House\",iconSelection:\"Check\",id:\"zkuVAuFbA\",layoutId:\"zkuVAuFbA\",mirrored:false,selectByList:true,style:{height:\"100%\",width:\"100%\"},weight:\"bold\",width:\"100%\"})})}),/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{className:\"framer-styles-preset-1ecbodc\",\"data-styles-preset\":\"QYfoYIhhT\",style:{\"--framer-text-color\":\"var(--extracted-r6o4lv, var(--token-d085bc1e-c0c1-4753-8ee2-8e531ff7b917, rgb(242, 242, 242)))\"},children:\"Feature 1\"})}),className:\"framer-5i5wzu\",fonts:[\"Inter\"],layoutDependency:layoutDependency,layoutId:\"kgHqurexH\",style:{\"--extracted-r6o4lv\":\"var(--token-d085bc1e-c0c1-4753-8ee2-8e531ff7b917, rgb(242, 242, 242))\",\"--framer-link-text-color\":\"rgb(0, 153, 255)\",\"--framer-link-text-decoration\":\"underline\"},text:AINojTrO1,verticalAlignment:\"top\",withExternalLayout:true})]}),visible3&&/*#__PURE__*/_jsxs(motion.div,{className:\"framer-iv4n19\",\"data-framer-name\":\"Feature\",layoutDependency:layoutDependency,layoutId:\"zTTQ_fzWT\",children:[/*#__PURE__*/_jsx(ComponentViewportProvider,{children:/*#__PURE__*/_jsx(motion.div,{className:\"framer-1xhjy3r-container\",layoutDependency:layoutDependency,layoutId:\"LceIZUeRi-container\",children:/*#__PURE__*/_jsx(Phosphor,{color:\"var(--token-ab8a1628-3695-47a5-8496-32bf3ecfdf66, rgb(21, 58, 161))\",height:\"100%\",iconSearch:\"House\",iconSelection:\"Check\",id:\"LceIZUeRi\",layoutId:\"LceIZUeRi\",mirrored:false,selectByList:true,style:{height:\"100%\",width:\"100%\"},weight:\"bold\",width:\"100%\"})})}),/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{className:\"framer-styles-preset-1ecbodc\",\"data-styles-preset\":\"QYfoYIhhT\",style:{\"--framer-text-color\":\"var(--extracted-r6o4lv, var(--token-d085bc1e-c0c1-4753-8ee2-8e531ff7b917, rgb(242, 242, 242)))\"},children:\"Feature 2\"})}),className:\"framer-xn8hkz\",fonts:[\"Inter\"],layoutDependency:layoutDependency,layoutId:\"L3Sp1FP06\",style:{\"--extracted-r6o4lv\":\"var(--token-d085bc1e-c0c1-4753-8ee2-8e531ff7b917, rgb(242, 242, 242))\",\"--framer-link-text-color\":\"rgb(0, 153, 255)\",\"--framer-link-text-decoration\":\"underline\"},text:qZmhJ2LDU,verticalAlignment:\"top\",withExternalLayout:true})]}),visible4&&/*#__PURE__*/_jsxs(motion.div,{className:\"framer-1o6mw83\",\"data-framer-name\":\"Feature\",layoutDependency:layoutDependency,layoutId:\"PaimHEGKx\",children:[/*#__PURE__*/_jsx(ComponentViewportProvider,{children:/*#__PURE__*/_jsx(motion.div,{className:\"framer-1mdqrzz-container\",layoutDependency:layoutDependency,layoutId:\"ibHTjt4fk-container\",children:/*#__PURE__*/_jsx(Phosphor,{color:\"var(--token-ab8a1628-3695-47a5-8496-32bf3ecfdf66, rgb(21, 58, 161))\",height:\"100%\",iconSearch:\"House\",iconSelection:\"Check\",id:\"ibHTjt4fk\",layoutId:\"ibHTjt4fk\",mirrored:false,selectByList:true,style:{height:\"100%\",width:\"100%\"},weight:\"bold\",width:\"100%\"})})}),/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{className:\"framer-styles-preset-1ecbodc\",\"data-styles-preset\":\"QYfoYIhhT\",style:{\"--framer-text-color\":\"var(--extracted-r6o4lv, var(--token-d085bc1e-c0c1-4753-8ee2-8e531ff7b917, rgb(242, 242, 242)))\"},children:\"Feature 3\"})}),className:\"framer-jx6742\",fonts:[\"Inter\"],layoutDependency:layoutDependency,layoutId:\"Qb5LLJAdH\",style:{\"--extracted-r6o4lv\":\"var(--token-d085bc1e-c0c1-4753-8ee2-8e531ff7b917, rgb(242, 242, 242))\",\"--framer-link-text-color\":\"rgb(0, 153, 255)\",\"--framer-link-text-decoration\":\"underline\"},text:AICV_JBwn,verticalAlignment:\"top\",withExternalLayout:true})]}),visible5&&/*#__PURE__*/_jsxs(motion.div,{className:\"framer-1ay6cg6\",\"data-framer-name\":\"Feature\",layoutDependency:layoutDependency,layoutId:\"hLaRo2jUc\",children:[/*#__PURE__*/_jsx(ComponentViewportProvider,{children:/*#__PURE__*/_jsx(motion.div,{className:\"framer-1oxr2r4-container\",layoutDependency:layoutDependency,layoutId:\"vzqS3gKmK-container\",children:/*#__PURE__*/_jsx(Phosphor,{color:\"var(--token-ab8a1628-3695-47a5-8496-32bf3ecfdf66, rgb(21, 58, 161))\",height:\"100%\",iconSearch:\"House\",iconSelection:\"Check\",id:\"vzqS3gKmK\",layoutId:\"vzqS3gKmK\",mirrored:false,selectByList:true,style:{height:\"100%\",width:\"100%\"},weight:\"bold\",width:\"100%\"})})}),/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{className:\"framer-styles-preset-1ecbodc\",\"data-styles-preset\":\"QYfoYIhhT\",style:{\"--framer-text-color\":\"var(--extracted-r6o4lv, var(--token-d085bc1e-c0c1-4753-8ee2-8e531ff7b917, rgb(242, 242, 242)))\"},children:\"Feature 4\"})}),className:\"framer-5sp9a\",fonts:[\"Inter\"],layoutDependency:layoutDependency,layoutId:\"gRIkbYGHy\",style:{\"--extracted-r6o4lv\":\"var(--token-d085bc1e-c0c1-4753-8ee2-8e531ff7b917, rgb(242, 242, 242))\",\"--framer-link-text-color\":\"rgb(0, 153, 255)\",\"--framer-link-text-decoration\":\"underline\"},text:uNcMhG2ib,verticalAlignment:\"top\",withExternalLayout:true})]}),visible6&&/*#__PURE__*/_jsxs(motion.div,{className:\"framer-skadpk\",\"data-framer-name\":\"Feature\",layoutDependency:layoutDependency,layoutId:\"S1FcoN6XT\",children:[/*#__PURE__*/_jsx(ComponentViewportProvider,{children:/*#__PURE__*/_jsx(motion.div,{className:\"framer-jwjpnn-container\",layoutDependency:layoutDependency,layoutId:\"djF_myhfR-container\",children:/*#__PURE__*/_jsx(Phosphor,{color:\"var(--token-ab8a1628-3695-47a5-8496-32bf3ecfdf66, rgb(21, 58, 161))\",height:\"100%\",iconSearch:\"House\",iconSelection:\"Check\",id:\"djF_myhfR\",layoutId:\"djF_myhfR\",mirrored:false,selectByList:true,style:{height:\"100%\",width:\"100%\"},weight:\"bold\",width:\"100%\"})})}),/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{className:\"framer-styles-preset-1ecbodc\",\"data-styles-preset\":\"QYfoYIhhT\",style:{\"--framer-text-color\":\"var(--extracted-r6o4lv, var(--token-d085bc1e-c0c1-4753-8ee2-8e531ff7b917, rgb(242, 242, 242)))\"},children:\"Feature 5\"})}),className:\"framer-y22h21\",fonts:[\"Inter\"],layoutDependency:layoutDependency,layoutId:\"GaFl_Qq8g\",style:{\"--extracted-r6o4lv\":\"var(--token-d085bc1e-c0c1-4753-8ee2-8e531ff7b917, rgb(242, 242, 242))\",\"--framer-link-text-color\":\"rgb(0, 153, 255)\",\"--framer-link-text-decoration\":\"underline\"},text:Zx7vhVzb9,verticalAlignment:\"top\",withExternalLayout:true})]}),visible7&&/*#__PURE__*/_jsxs(motion.div,{className:\"framer-mpmfu8\",\"data-framer-name\":\"Feature\",layoutDependency:layoutDependency,layoutId:\"USYT5jGWe\",children:[/*#__PURE__*/_jsx(ComponentViewportProvider,{children:/*#__PURE__*/_jsx(motion.div,{className:\"framer-ogwzbb-container\",layoutDependency:layoutDependency,layoutId:\"VNwOCm0CR-container\",children:/*#__PURE__*/_jsx(Phosphor,{color:\"var(--token-ab8a1628-3695-47a5-8496-32bf3ecfdf66, rgb(21, 58, 161))\",height:\"100%\",iconSearch:\"House\",iconSelection:\"Check\",id:\"VNwOCm0CR\",layoutId:\"VNwOCm0CR\",mirrored:false,selectByList:true,style:{height:\"100%\",width:\"100%\"},weight:\"bold\",width:\"100%\"})})}),/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{className:\"framer-styles-preset-1ecbodc\",\"data-styles-preset\":\"QYfoYIhhT\",style:{\"--framer-text-color\":\"var(--extracted-r6o4lv, var(--token-d085bc1e-c0c1-4753-8ee2-8e531ff7b917, rgb(242, 242, 242)))\"},children:\"Feature 6\"})}),className:\"framer-meod8b\",fonts:[\"Inter\"],layoutDependency:layoutDependency,layoutId:\"Bymwsz6el\",style:{\"--extracted-r6o4lv\":\"var(--token-d085bc1e-c0c1-4753-8ee2-8e531ff7b917, rgb(242, 242, 242))\",\"--framer-link-text-color\":\"rgb(0, 153, 255)\",\"--framer-link-text-decoration\":\"underline\"},text:awfKgLoP0,verticalAlignment:\"top\",withExternalLayout:true})]}),visible8&&/*#__PURE__*/_jsxs(motion.div,{className:\"framer-rft8yk\",\"data-framer-name\":\"Feature\",layoutDependency:layoutDependency,layoutId:\"XwmIh8N96\",children:[/*#__PURE__*/_jsx(ComponentViewportProvider,{children:/*#__PURE__*/_jsx(motion.div,{className:\"framer-1fa6nj5-container\",layoutDependency:layoutDependency,layoutId:\"fhBjWR0n2-container\",children:/*#__PURE__*/_jsx(Phosphor,{color:\"var(--token-ab8a1628-3695-47a5-8496-32bf3ecfdf66, rgb(21, 58, 161))\",height:\"100%\",iconSearch:\"House\",iconSelection:\"Check\",id:\"fhBjWR0n2\",layoutId:\"fhBjWR0n2\",mirrored:false,selectByList:true,style:{height:\"100%\",width:\"100%\"},weight:\"bold\",width:\"100%\"})})}),/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{className:\"framer-styles-preset-1ecbodc\",\"data-styles-preset\":\"QYfoYIhhT\",style:{\"--framer-text-color\":\"var(--extracted-r6o4lv, var(--token-d085bc1e-c0c1-4753-8ee2-8e531ff7b917, rgb(242, 242, 242)))\"},children:\"Feature 7\"})}),className:\"framer-gyoqtn\",fonts:[\"Inter\"],layoutDependency:layoutDependency,layoutId:\"tipRyXXO7\",style:{\"--extracted-r6o4lv\":\"var(--token-d085bc1e-c0c1-4753-8ee2-8e531ff7b917, rgb(242, 242, 242))\",\"--framer-link-text-color\":\"rgb(0, 153, 255)\",\"--framer-link-text-decoration\":\"underline\"},text:RBB9xjZlB,verticalAlignment:\"top\",withExternalLayout:true})]})]})]})})})})});});const css=[\"@supports (aspect-ratio: 1) { body { --framer-aspect-ratio-supported: auto; } }\",\".framer-bybQS.framer-3cuv3s, .framer-bybQS .framer-3cuv3s { display: block; }\",\".framer-bybQS.framer-1ft3hpy { align-content: center; align-items: center; display: flex; flex-direction: row; flex-wrap: wrap; gap: 0px; height: min-content; justify-content: flex-start; overflow: hidden; padding: 1px; position: relative; width: 425px; will-change: var(--framer-will-change-override, transform); }\",\".framer-bybQS .framer-2uao5i { align-content: center; align-items: center; display: flex; flex: 1 0 0px; flex-direction: column; flex-wrap: nowrap; gap: 0px; height: min-content; justify-content: flex-start; overflow: visible; padding: 0px; position: relative; width: 1px; }\",\".framer-bybQS .framer-15x8wcl { 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-height: 200px; overflow: visible; padding: 16px 32px 0px 32px; position: relative; width: 100%; z-index: 1; }\",\".framer-bybQS .framer-1ceq5t6 { 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; overflow: visible; padding: 0px; position: relative; width: 100%; }\",\".framer-bybQS .framer-cjcd2l { align-content: center; align-items: center; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; gap: 6px; height: min-content; justify-content: center; overflow: visible; padding: 8px 16px 8px 16px; position: relative; width: min-content; }\",\".framer-bybQS .framer-1ntr30v, .framer-bybQS .framer-6cvfd3, .framer-bybQS .framer-bnj7zv { flex: none; height: auto; position: relative; white-space: pre; width: auto; }\",\".framer-bybQS .framer-10p5i3p { align-content: flex-end; align-items: flex-end; display: flex; flex: none; flex-direction: column; flex-wrap: nowrap; gap: 6px; height: min-content; justify-content: center; overflow: hidden; padding: 16px 0px 0px 0px; position: relative; width: 100%; }\",\".framer-bybQS .framer-12nqcgj { align-content: center; align-items: center; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; gap: 2px; height: min-content; justify-content: flex-start; overflow: visible; padding: 0px; position: relative; width: 100%; }\",\".framer-bybQS .framer-13nzfo8 { flex: none; height: auto; position: relative; white-space: pre-wrap; width: 100%; word-break: break-word; word-wrap: break-word; z-index: 1; }\",\".framer-bybQS .framer-azk9uw { 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: 100%; }\",\".framer-bybQS .framer-wa01dq, .framer-bybQS .framer-hqgrmp { flex: none; height: auto; max-width: 350px; position: relative; white-space: pre-wrap; width: 100%; word-break: break-word; word-wrap: break-word; z-index: 1; }\",\".framer-bybQS .framer-15zpb6k { align-content: center; align-items: center; display: flex; flex: none; flex-direction: column; flex-wrap: nowrap; gap: 24px; height: min-content; justify-content: flex-end; overflow: visible; padding: 24px 24px 16px 24px; position: relative; width: 100%; z-index: 1; }\",\".framer-bybQS .framer-1krrtnt-container { flex: none; height: 52px; position: relative; width: 100%; }\",\".framer-bybQS .framer-h50mlj { 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: flex-start; min-height: 240px; overflow: visible; padding: 16px 32px 32px 32px; position: relative; width: 100%; z-index: 1; }\",\".framer-bybQS .framer-1js1g3b, .framer-bybQS .framer-iv4n19, .framer-bybQS .framer-1o6mw83, .framer-bybQS .framer-1ay6cg6, .framer-bybQS .framer-skadpk, .framer-bybQS .framer-mpmfu8, .framer-bybQS .framer-rft8yk { align-content: center; align-items: center; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; gap: 10px; height: min-content; justify-content: flex-start; overflow: hidden; padding: 0px; position: relative; width: 100%; }\",\".framer-bybQS .framer-1k8dva9-container, .framer-bybQS .framer-1xhjy3r-container, .framer-bybQS .framer-1mdqrzz-container, .framer-bybQS .framer-1oxr2r4-container, .framer-bybQS .framer-jwjpnn-container, .framer-bybQS .framer-ogwzbb-container, .framer-bybQS .framer-1fa6nj5-container { flex: none; height: 16px; position: relative; width: 16px; }\",\".framer-bybQS .framer-5i5wzu, .framer-bybQS .framer-xn8hkz, .framer-bybQS .framer-jx6742, .framer-bybQS .framer-5sp9a, .framer-bybQS .framer-y22h21, .framer-bybQS .framer-meod8b, .framer-bybQS .framer-gyoqtn { flex: 1 0 0px; height: auto; position: relative; white-space: pre-wrap; width: 1px; word-break: break-word; word-wrap: break-word; }\",\"@supports (background: -webkit-named-image(i)) and (not (font-palette:dark)) { .framer-bybQS.framer-1ft3hpy, .framer-bybQS .framer-2uao5i, .framer-bybQS .framer-15x8wcl, .framer-bybQS .framer-1ceq5t6, .framer-bybQS .framer-cjcd2l, .framer-bybQS .framer-10p5i3p, .framer-bybQS .framer-12nqcgj, .framer-bybQS .framer-azk9uw, .framer-bybQS .framer-15zpb6k, .framer-bybQS .framer-h50mlj, .framer-bybQS .framer-1js1g3b, .framer-bybQS .framer-iv4n19, .framer-bybQS .framer-1o6mw83, .framer-bybQS .framer-1ay6cg6, .framer-bybQS .framer-skadpk, .framer-bybQS .framer-mpmfu8, .framer-bybQS .framer-rft8yk { gap: 0px; } .framer-bybQS.framer-1ft3hpy > * { margin: 0px; margin-left: calc(0px / 2); margin-right: calc(0px / 2); } .framer-bybQS.framer-1ft3hpy > :first-child, .framer-bybQS .framer-cjcd2l > :first-child, .framer-bybQS .framer-12nqcgj > :first-child, .framer-bybQS .framer-1js1g3b > :first-child, .framer-bybQS .framer-iv4n19 > :first-child, .framer-bybQS .framer-1o6mw83 > :first-child, .framer-bybQS .framer-1ay6cg6 > :first-child, .framer-bybQS .framer-skadpk > :first-child, .framer-bybQS .framer-mpmfu8 > :first-child, .framer-bybQS .framer-rft8yk > :first-child { margin-left: 0px; } .framer-bybQS.framer-1ft3hpy > :last-child, .framer-bybQS .framer-cjcd2l > :last-child, .framer-bybQS .framer-12nqcgj > :last-child, .framer-bybQS .framer-1js1g3b > :last-child, .framer-bybQS .framer-iv4n19 > :last-child, .framer-bybQS .framer-1o6mw83 > :last-child, .framer-bybQS .framer-1ay6cg6 > :last-child, .framer-bybQS .framer-skadpk > :last-child, .framer-bybQS .framer-mpmfu8 > :last-child, .framer-bybQS .framer-rft8yk > :last-child { margin-right: 0px; } .framer-bybQS .framer-2uao5i > *, .framer-bybQS .framer-azk9uw > * { margin: 0px; margin-bottom: calc(0px / 2); margin-top: calc(0px / 2); } .framer-bybQS .framer-2uao5i > :first-child, .framer-bybQS .framer-15x8wcl > :first-child, .framer-bybQS .framer-1ceq5t6 > :first-child, .framer-bybQS .framer-10p5i3p > :first-child, .framer-bybQS .framer-azk9uw > :first-child, .framer-bybQS .framer-15zpb6k > :first-child, .framer-bybQS .framer-h50mlj > :first-child { margin-top: 0px; } .framer-bybQS .framer-2uao5i > :last-child, .framer-bybQS .framer-15x8wcl > :last-child, .framer-bybQS .framer-1ceq5t6 > :last-child, .framer-bybQS .framer-10p5i3p > :last-child, .framer-bybQS .framer-azk9uw > :last-child, .framer-bybQS .framer-15zpb6k > :last-child, .framer-bybQS .framer-h50mlj > :last-child { margin-bottom: 0px; } .framer-bybQS .framer-15x8wcl > *, .framer-bybQS .framer-h50mlj > * { margin: 0px; margin-bottom: calc(16px / 2); margin-top: calc(16px / 2); } .framer-bybQS .framer-1ceq5t6 > * { margin: 0px; margin-bottom: calc(12px / 2); margin-top: calc(12px / 2); } .framer-bybQS .framer-cjcd2l > * { margin: 0px; margin-left: calc(6px / 2); margin-right: calc(6px / 2); } .framer-bybQS .framer-10p5i3p > * { margin: 0px; margin-bottom: calc(6px / 2); margin-top: calc(6px / 2); } .framer-bybQS .framer-12nqcgj > * { margin: 0px; margin-left: calc(2px / 2); margin-right: calc(2px / 2); } .framer-bybQS .framer-15zpb6k > * { margin: 0px; margin-bottom: calc(24px / 2); margin-top: calc(24px / 2); } .framer-bybQS .framer-1js1g3b > *, .framer-bybQS .framer-iv4n19 > *, .framer-bybQS .framer-1o6mw83 > *, .framer-bybQS .framer-1ay6cg6 > *, .framer-bybQS .framer-skadpk > *, .framer-bybQS .framer-mpmfu8 > *, .framer-bybQS .framer-rft8yk > * { margin: 0px; margin-left: calc(10px / 2); margin-right: calc(10px / 2); } }\",...sharedStyle.css,...sharedStyle1.css,...sharedStyle2.css,'.framer-bybQS[data-border=\"true\"]::after, .framer-bybQS [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 611\n * @framerIntrinsicWidth 425\n * @framerCanvasComponentVariantDetails {\"propertyName\":\"variant\",\"data\":{\"default\":{\"layout\":[\"fixed\",\"auto\"]},\"iAuBR8ngF\":{\"layout\":[\"fixed\",\"auto\"]}}}\n * @framerVariables {\"NPcpuOJ_c\":\"planName\",\"sNn6CWkIN\":\"price\",\"V4tD38RXL\":\"paymentDetails\",\"qytFyYd41\":\"tagline\",\"kDFNVuvri\":\"description\",\"AINojTrO1\":\"feature1\",\"qZmhJ2LDU\":\"feature2\",\"AICV_JBwn\":\"feature3\",\"uNcMhG2ib\":\"feature4\",\"Zx7vhVzb9\":\"feature5\",\"awfKgLoP0\":\"feature6\",\"RBB9xjZlB\":\"feature7\",\"GM6xbsAjG\":\"buttonText\",\"wCt4tT5jS\":\"buttonLink\"}\n * @framerImmutableVariables true\n * @framerDisplayContentsDiv false\n * @framerComponentViewportWidth true\n */const FramereafUe285s=withCSS(Component,css,\"framer-bybQS\");export default FramereafUe285s;FramereafUe285s.displayName=\"Cards/Pricing\";FramereafUe285s.defaultProps={height:611,width:425};addPropertyControls(FramereafUe285s,{variant:{options:[\"jdtUJHGVc\",\"iAuBR8ngF\"],optionTitles:[\"Default\",\"Popular\"],title:\"Variant\",type:ControlType.Enum},NPcpuOJ_c:{defaultValue:\"Standard\",displayTextArea:false,title:\"Plan name\",type:ControlType.String},sNn6CWkIN:{defaultValue:\"$5000\",displayTextArea:false,title:\"Price\",type:ControlType.String},V4tD38RXL:{defaultValue:\"/month\",displayTextArea:false,title:\"Payment details\",type:ControlType.String},qytFyYd41:{defaultValue:\"Tagline\",displayTextArea:false,title:\"Tagline\",type:ControlType.String},kDFNVuvri:{defaultValue:\"Description\",displayTextArea:true,title:\"Description\",type:ControlType.String},AINojTrO1:{defaultValue:\"Feature 1\",displayTextArea:false,title:\"Feature 1\",type:ControlType.String},qZmhJ2LDU:{defaultValue:\"Feature 2\",displayTextArea:false,title:\"Feature 2\",type:ControlType.String},AICV_JBwn:{defaultValue:\"Feature 3\",displayTextArea:false,title:\"Feature 3\",type:ControlType.String},uNcMhG2ib:{defaultValue:\"Feature 4\",displayTextArea:false,title:\"Feature 4\",type:ControlType.String},Zx7vhVzb9:{defaultValue:\"Feature 5\",displayTextArea:false,title:\"Feature 5\",type:ControlType.String},awfKgLoP0:{defaultValue:\"Feature 6\",displayTextArea:false,title:\"Feature 6\",type:ControlType.String},RBB9xjZlB:{defaultValue:\"Feature 7\",displayTextArea:false,title:\"Feature 7\",type:ControlType.String},GM6xbsAjG:{defaultValue:\"Get Started\",displayTextArea:false,title:\"Button text\",type:ControlType.String},wCt4tT5jS:{title:\"Button link\",type:ControlType.Link}});addFonts(FramereafUe285s,[{explicitInter:true,fonts:[{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F\",url:\"https://framerusercontent.com/assets/5vvr9Vy74if2I6bQbJvbw7SY1pQ.woff2\",weight:\"400\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116\",url:\"https://framerusercontent.com/assets/EOr0mi4hNtlgWNn9if640EZzXCo.woff2\",weight:\"400\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+1F00-1FFF\",url:\"https://framerusercontent.com/assets/Y9k9QrlZAqio88Klkmbd8VoMQc.woff2\",weight:\"400\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0370-03FF\",url:\"https://framerusercontent.com/assets/OYrD2tBIBPvoJXiIHnLoOXnY9M.woff2\",weight:\"400\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF\",url:\"https://framerusercontent.com/assets/JeYwfuaPfZHQhEG8U5gtPDZ7WQ.woff2\",weight:\"400\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD\",url:\"https://framerusercontent.com/assets/vQyevYAyHtARFwPqUzQGpnDs.woff2\",weight:\"400\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB\",url:\"https://framerusercontent.com/assets/b6Y37FthZeALduNqHicBT6FutY.woff2\",weight:\"400\"}]},...ButtonsPrimaryFonts,...PhosphorFonts,...getFontsFromSharedStyle(sharedStyle.fonts),...getFontsFromSharedStyle(sharedStyle1.fonts),...getFontsFromSharedStyle(sharedStyle2.fonts)],{supportsExplicitInterCodegen:true});\nexport const __FramerMetadata__ = {\"exports\":{\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"default\":{\"type\":\"reactComponent\",\"name\":\"FramereafUe285s\",\"slots\":[],\"annotations\":{\"framerIntrinsicWidth\":\"425\",\"framerDisplayContentsDiv\":\"false\",\"framerComponentViewportWidth\":\"true\",\"framerIntrinsicHeight\":\"611\",\"framerCanvasComponentVariantDetails\":\"{\\\"propertyName\\\":\\\"variant\\\",\\\"data\\\":{\\\"default\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"auto\\\"]},\\\"iAuBR8ngF\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"auto\\\"]}}}\",\"framerContractVersion\":\"1\",\"framerImmutableVariables\":\"true\",\"framerVariables\":\"{\\\"NPcpuOJ_c\\\":\\\"planName\\\",\\\"sNn6CWkIN\\\":\\\"price\\\",\\\"V4tD38RXL\\\":\\\"paymentDetails\\\",\\\"qytFyYd41\\\":\\\"tagline\\\",\\\"kDFNVuvri\\\":\\\"description\\\",\\\"AINojTrO1\\\":\\\"feature1\\\",\\\"qZmhJ2LDU\\\":\\\"feature2\\\",\\\"AICV_JBwn\\\":\\\"feature3\\\",\\\"uNcMhG2ib\\\":\\\"feature4\\\",\\\"Zx7vhVzb9\\\":\\\"feature5\\\",\\\"awfKgLoP0\\\":\\\"feature6\\\",\\\"RBB9xjZlB\\\":\\\"feature7\\\",\\\"GM6xbsAjG\\\":\\\"buttonText\\\",\\\"wCt4tT5jS\\\":\\\"buttonLink\\\"}\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}", "// Generated by Framer (12ecc5e)\nimport{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{addFonts,addPropertyControls,ComponentViewportProvider,ControlType,cx,getFonts,getFontsFromSharedStyle,RichText,useActiveVariantCallback,useComponentViewport,useLocaleInfo,useVariantState,withCSS}from\"framer\";import{LayoutGroup,motion,MotionConfigContext}from\"framer-motion\";import*as React from\"react\";import{Icon as Phosphor}from\"https://framerusercontent.com/modules/tYScH7LTqUtz5KUaUAYP/p8dptk4UIND8hbFWz9V7/Phosphor.js\";import*as sharedStyle1 from\"https://framerusercontent.com/modules/AbIU28zT1Rk0aG4LW35A/YWE4XJfJu7FK671xR5XA/InAbEgGo5.js\";import*as sharedStyle from\"https://framerusercontent.com/modules/yhwxvTNo3tHUNTZTCUXd/rnjts2scwUlJE6DcMt7a/IZpeieEjn.js\";import*as sharedStyle2 from\"https://framerusercontent.com/modules/8U64GbmOW9DXCPWqlYcq/N8fUr6RlfP0NamwtjP3p/kxN7gAslB.js\";import*as sharedStyle4 from\"https://framerusercontent.com/modules/GsMgYeqUEYoY1hsnEMM8/NRM5Q1XYkzmWoEPmwXVp/pcoDLsO59.js\";import*as sharedStyle3 from\"https://framerusercontent.com/modules/RwquBhWhgnFy8YZTajJ8/pNJ4BdDGlKDraehpy0Mk/vKGxKv6WT.js\";const PhosphorFonts=getFonts(Phosphor);const enabledGestures={VQsn2gS3R:{hover:true}};const cycleOrder=[\"VQsn2gS3R\",\"t2rTBmrff\"];const serializationHash=\"framer-gl9fU\";const variantClassNames={t2rTBmrff:\"framer-v-cv5ad6\",VQsn2gS3R:\"framer-v-xgp3s5\"};function addPropertyOverrides(overrides,...variants){const nextOverrides={};variants===null||variants===void 0?void 0:variants.forEach(variant=>variant&&Object.assign(nextOverrides,overrides[variant]));return nextOverrides;}const transition1={damping:60,delay:0,mass:1,stiffness:400,type:\"spring\"};const Transition=({value,children})=>{const config=React.useContext(MotionConfigContext);const transition=value!==null&&value!==void 0?value:config.transition;const contextValue=React.useMemo(()=>({...config,transition}),[JSON.stringify(transition)]);return /*#__PURE__*/_jsx(MotionConfigContext.Provider,{value:contextValue,children:children});};const Variants=motion.create(React.Fragment);const humanReadableVariantMap={Closed:\"VQsn2gS3R\",Open:\"t2rTBmrff\"};const getProps=({answer,height,id,question,width,...props})=>{var _ref,_ref1,_humanReadableVariantMap_props_variant,_ref2;return{...props,jLJZKfNK7:(_ref=answer!==null&&answer!==void 0?answer:props.jLJZKfNK7)!==null&&_ref!==void 0?_ref:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{children:\"Answer\"})}),n_nqF67s7:(_ref1=question!==null&&question!==void 0?question:props.n_nqF67s7)!==null&&_ref1!==void 0?_ref1:\"Question\",variant:(_ref2=(_humanReadableVariantMap_props_variant=humanReadableVariantMap[props.variant])!==null&&_humanReadableVariantMap_props_variant!==void 0?_humanReadableVariantMap_props_variant:props.variant)!==null&&_ref2!==void 0?_ref2:\"VQsn2gS3R\"};};const createLayoutDependency=(props,variants)=>{if(props.layoutDependency)return variants.join(\"-\")+props.layoutDependency;return variants.join(\"-\");};const Component=/*#__PURE__*/React.forwardRef(function(props,ref){const{activeLocale,setLocale}=useLocaleInfo();const{style,className,layoutId,variant,n_nqF67s7,jLJZKfNK7,...restProps}=getProps(props);const{baseVariant,classNames,clearLoadingGesture,gestureHandlers,gestureVariant,isLoading,setGestureState,setVariant,variants}=useVariantState({cycleOrder,defaultVariant:\"VQsn2gS3R\",enabledGestures,variant,variantClassNames});const layoutDependency=createLayoutDependency(props,variants);const{activeVariantCallback,delay}=useActiveVariantCallback(baseVariant);const onTapwqbh36=activeVariantCallback(async(...args)=>{setGestureState({isPressed:false});setVariant(\"t2rTBmrff\");});const onTapzxbxno=activeVariantCallback(async(...args)=>{setGestureState({isPressed:false});setVariant(\"VQsn2gS3R\");});const ref1=React.useRef(null);const isDisplayed=()=>{if(baseVariant===\"t2rTBmrff\")return true;return false;};const defaultLayoutId=React.useId();const sharedStyleClassNames=[sharedStyle.className,sharedStyle1.className,sharedStyle2.className,sharedStyle3.className,sharedStyle4.className];const componentViewport=useComponentViewport();return /*#__PURE__*/_jsx(LayoutGroup,{id:layoutId!==null&&layoutId!==void 0?layoutId:defaultLayoutId,children:/*#__PURE__*/_jsx(Variants,{animate:variants,initial:false,children:/*#__PURE__*/_jsx(Transition,{value:transition1,children:/*#__PURE__*/_jsxs(motion.div,{...restProps,...gestureHandlers,className:cx(serializationHash,...sharedStyleClassNames,\"framer-xgp3s5\",className,classNames),\"data-framer-name\":\"Closed\",\"data-highlight\":true,layoutDependency:layoutDependency,layoutId:\"VQsn2gS3R\",onTap:onTapwqbh36,ref:ref!==null&&ref!==void 0?ref:ref1,style:{background:'radial-gradient(50% 50% at 50% 50%, var(--token-ab8a1628-3695-47a5-8496-32bf3ecfdf66, rgb(21, 58, 161)) /* {\"name\":\"Blue\"} */ 0%, var(--token-17d94287-c97e-4602-9cf7-4d2036e50e01, rgb(0, 24, 94)) /* {\"name\":\"Dark blue\"} */ 100%)',borderBottomLeftRadius:12,borderBottomRightRadius:12,borderTopLeftRadius:12,borderTopRightRadius:12,...style},variants:{\"VQsn2gS3R-hover\":{background:'radial-gradient(50% 50% at 50% 50%, var(--token-17d94287-c97e-4602-9cf7-4d2036e50e01, rgb(0, 24, 94)) /* {\"name\":\"Dark blue\"} */ 0%, var(--token-ab8a1628-3695-47a5-8496-32bf3ecfdf66, rgb(21, 58, 161)) /* {\"name\":\"Blue\"} */ 100%)'}},...addPropertyOverrides({\"VQsn2gS3R-hover\":{\"data-framer-name\":undefined},t2rTBmrff:{\"data-framer-name\":\"Open\",onTap:onTapzxbxno}},baseVariant,gestureVariant),children:[/*#__PURE__*/_jsxs(motion.div,{className:\"framer-1hbbnqf\",layoutDependency:layoutDependency,layoutId:\"XQl2zNCNG\",children:[/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{className:\"framer-styles-preset-f8bv20\",\"data-styles-preset\":\"IZpeieEjn\",style:{\"--framer-text-color\":\"var(--extracted-r6o4lv, var(--token-8e562c71-b86d-432e-ad04-cd3f03e73a71, rgb(255, 255, 255)))\"},children:\"Question\"})}),className:\"framer-1v7xx4b\",\"data-framer-name\":\"Reading\",fonts:[\"Inter\"],layoutDependency:layoutDependency,layoutId:\"WuBfpgmu0\",style:{\"--extracted-r6o4lv\":\"var(--token-8e562c71-b86d-432e-ad04-cd3f03e73a71, rgb(255, 255, 255))\",\"--framer-paragraph-spacing\":\"0px\"},text:n_nqF67s7,verticalAlignment:\"top\",withExternalLayout:true}),/*#__PURE__*/_jsx(ComponentViewportProvider,{children:/*#__PURE__*/_jsx(motion.div,{className:\"framer-1vz2o3c-container\",layoutDependency:layoutDependency,layoutId:\"iZRNH9H0N-container\",style:{rotate:0},variants:{t2rTBmrff:{rotate:-45}},children:/*#__PURE__*/_jsx(Phosphor,{color:\"var(--token-8e562c71-b86d-432e-ad04-cd3f03e73a71, rgb(255, 255, 255))\",height:\"100%\",iconSearch:\"House\",iconSelection:\"Plus\",id:\"iZRNH9H0N\",layoutId:\"iZRNH9H0N\",mirrored:false,selectByList:true,style:{height:\"100%\",width:\"100%\"},weight:\"bold\",width:\"100%\"})})})]}),isDisplayed()&&/*#__PURE__*/_jsx(motion.div,{className:\"framer-1v5ogwx\",layoutDependency:layoutDependency,layoutId:\"aeLKCvi5x\",children:/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:jLJZKfNK7,className:\"framer-e2smno\",\"data-framer-name\":\"Reading\",fonts:[\"Inter\"],layoutDependency:layoutDependency,layoutId:\"C6Da9eSXc\",style:{\"--framer-paragraph-spacing\":\"20px\"},stylesPresetsClassNames:{a:\"framer-styles-preset-1t2subd\",h1:\"framer-styles-preset-w9j9br\",h2:\"framer-styles-preset-bjb6tn\",h3:\"framer-styles-preset-5a4759\",p:\"framer-styles-preset-f8bv20\"},verticalAlignment:\"top\",withExternalLayout:true})}),isDisplayed()&&/*#__PURE__*/_jsx(motion.div,{className:\"framer-fc92zl\",\"data-framer-name\":\"Line\",layoutDependency:layoutDependency,layoutId:\"gsYGsa5A0\",style:{background:'linear-gradient(90deg, var(--token-17d94287-c97e-4602-9cf7-4d2036e50e01, rgb(0, 24, 94)) /* {\"name\":\"Dark blue\"} */ 0%, rgba(60, 60, 60, 0) 100%, rgba(51, 51, 51, 0) 100%)'}}),/*#__PURE__*/_jsx(motion.div,{className:\"framer-vmcq2h\",\"data-framer-name\":\"BG\",layoutDependency:layoutDependency,layoutId:\"RHTzOevlO\",style:{background:'linear-gradient(130deg, var(--token-f5d2506d-9c8c-423b-a07c-4bdb7316df89, rgba(5, 5, 5, 0.75)) /* {\"name\":\"Black 75%\"} */ 0%, var(--token-7be8625f-297b-4b2a-908d-7056e5d82d0a, rgb(5, 5, 5)) /* {\"name\":\"Black\"} */ 120%)',borderBottomLeftRadius:11,borderBottomRightRadius:11,borderTopLeftRadius:11,borderTopRightRadius:11}})]})})})});});const css=[\"@supports (aspect-ratio: 1) { body { --framer-aspect-ratio-supported: auto; } }\",\".framer-gl9fU.framer-zauxw6, .framer-gl9fU .framer-zauxw6 { display: block; }\",\".framer-gl9fU.framer-xgp3s5 { align-content: center; align-items: center; cursor: pointer; display: flex; flex-direction: column; flex-wrap: nowrap; gap: 14px; height: min-content; justify-content: center; overflow: hidden; padding: 16px 20px 16px 20px; position: relative; width: 840px; will-change: var(--framer-will-change-override, transform); }\",\".framer-gl9fU .framer-1hbbnqf { align-content: center; align-items: center; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; gap: 8px; height: min-content; justify-content: center; overflow: visible; padding: 0px; position: relative; width: 100%; z-index: 1; }\",\".framer-gl9fU .framer-1v7xx4b { flex: 1 0 0px; height: auto; position: relative; white-space: pre-wrap; width: 1px; word-break: break-word; word-wrap: break-word; }\",\".framer-gl9fU .framer-1vz2o3c-container { flex: none; height: 20px; position: relative; width: 20px; z-index: 1; }\",\".framer-gl9fU .framer-1v5ogwx { align-content: center; align-items: center; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; height: min-content; justify-content: space-between; overflow: visible; padding: 0px; position: relative; width: 100%; z-index: 1; }\",\".framer-gl9fU .framer-e2smno { flex: 1 0 0px; height: auto; max-width: 700px; position: relative; width: 1px; }\",\".framer-gl9fU .framer-fc92zl { flex: none; height: 1px; overflow: hidden; position: relative; width: 100%; z-index: 1; }\",\".framer-gl9fU .framer-vmcq2h { bottom: 1px; flex: none; left: 1px; overflow: visible; position: absolute; right: 1px; top: 1px; z-index: 0; }\",\"@supports (background: -webkit-named-image(i)) and (not (font-palette:dark)) { .framer-gl9fU.framer-xgp3s5, .framer-gl9fU .framer-1hbbnqf { gap: 0px; } .framer-gl9fU.framer-xgp3s5 > * { margin: 0px; margin-bottom: calc(14px / 2); margin-top: calc(14px / 2); } .framer-gl9fU.framer-xgp3s5 > :first-child { margin-top: 0px; } .framer-gl9fU.framer-xgp3s5 > :last-child { margin-bottom: 0px; } .framer-gl9fU .framer-1hbbnqf > * { margin: 0px; margin-left: calc(8px / 2); margin-right: calc(8px / 2); } .framer-gl9fU .framer-1hbbnqf > :first-child { margin-left: 0px; } .framer-gl9fU .framer-1hbbnqf > :last-child { margin-right: 0px; } }\",\".framer-gl9fU.framer-v-cv5ad6 .framer-1hbbnqf { gap: 10px; order: 0; }\",\".framer-gl9fU.framer-v-cv5ad6 .framer-1v5ogwx { order: 2; }\",\".framer-gl9fU.framer-v-cv5ad6 .framer-fc92zl { order: 1; }\",\".framer-gl9fU.framer-v-cv5ad6 .framer-vmcq2h { order: 3; }\",\"@supports (background: -webkit-named-image(i)) and (not (font-palette:dark)) { .framer-gl9fU.framer-v-cv5ad6 .framer-1hbbnqf { gap: 0px; } .framer-gl9fU.framer-v-cv5ad6 .framer-1hbbnqf > * { margin: 0px; margin-left: calc(10px / 2); margin-right: calc(10px / 2); } .framer-gl9fU.framer-v-cv5ad6 .framer-1hbbnqf > :first-child { margin-left: 0px; } .framer-gl9fU.framer-v-cv5ad6 .framer-1hbbnqf > :last-child { margin-right: 0px; } }\",...sharedStyle.css,...sharedStyle1.css,...sharedStyle2.css,...sharedStyle3.css,...sharedStyle4.css];/**\n * This is a generated Framer component.\n * @framerIntrinsicHeight 57\n * @framerIntrinsicWidth 840\n * @framerCanvasComponentVariantDetails {\"propertyName\":\"variant\",\"data\":{\"default\":{\"layout\":[\"fixed\",\"auto\"]},\"t2rTBmrff\":{\"layout\":[\"fixed\",\"auto\"]},\"xfjN78iqD\":{\"layout\":[\"fixed\",\"auto\"]}}}\n * @framerVariables {\"n_nqF67s7\":\"question\",\"jLJZKfNK7\":\"answer\"}\n * @framerImmutableVariables true\n * @framerDisplayContentsDiv false\n * @framerComponentViewportWidth true\n */const FramerCY_18tmTg=withCSS(Component,css,\"framer-gl9fU\");export default FramerCY_18tmTg;FramerCY_18tmTg.displayName=\"FAQs/FAQs\";FramerCY_18tmTg.defaultProps={height:57,width:840};addPropertyControls(FramerCY_18tmTg,{variant:{options:[\"VQsn2gS3R\",\"t2rTBmrff\"],optionTitles:[\"Closed\",\"Open\"],title:\"Variant\",type:ControlType.Enum},n_nqF67s7:{defaultValue:\"Question\",displayTextArea:true,placeholder:\"\",title:\"Question\",type:ControlType.String},jLJZKfNK7:{defaultValue:\"<p>Answer</p>\",title:\"Answer\",type:ControlType.RichText}});addFonts(FramerCY_18tmTg,[{explicitInter:true,fonts:[{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F\",url:\"https://framerusercontent.com/assets/5vvr9Vy74if2I6bQbJvbw7SY1pQ.woff2\",weight:\"400\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116\",url:\"https://framerusercontent.com/assets/EOr0mi4hNtlgWNn9if640EZzXCo.woff2\",weight:\"400\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+1F00-1FFF\",url:\"https://framerusercontent.com/assets/Y9k9QrlZAqio88Klkmbd8VoMQc.woff2\",weight:\"400\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0370-03FF\",url:\"https://framerusercontent.com/assets/OYrD2tBIBPvoJXiIHnLoOXnY9M.woff2\",weight:\"400\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF\",url:\"https://framerusercontent.com/assets/JeYwfuaPfZHQhEG8U5gtPDZ7WQ.woff2\",weight:\"400\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD\",url:\"https://framerusercontent.com/assets/vQyevYAyHtARFwPqUzQGpnDs.woff2\",weight:\"400\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB\",url:\"https://framerusercontent.com/assets/b6Y37FthZeALduNqHicBT6FutY.woff2\",weight:\"400\"}]},...PhosphorFonts,...getFontsFromSharedStyle(sharedStyle.fonts),...getFontsFromSharedStyle(sharedStyle1.fonts),...getFontsFromSharedStyle(sharedStyle2.fonts),...getFontsFromSharedStyle(sharedStyle3.fonts),...getFontsFromSharedStyle(sharedStyle4.fonts)],{supportsExplicitInterCodegen:true});\nexport const __FramerMetadata__ = {\"exports\":{\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"default\":{\"type\":\"reactComponent\",\"name\":\"FramerCY_18tmTg\",\"slots\":[],\"annotations\":{\"framerComponentViewportWidth\":\"true\",\"framerContractVersion\":\"1\",\"framerIntrinsicHeight\":\"57\",\"framerCanvasComponentVariantDetails\":\"{\\\"propertyName\\\":\\\"variant\\\",\\\"data\\\":{\\\"default\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"auto\\\"]},\\\"t2rTBmrff\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"auto\\\"]},\\\"xfjN78iqD\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"auto\\\"]}}}\",\"framerIntrinsicWidth\":\"840\",\"framerDisplayContentsDiv\":\"false\",\"framerImmutableVariables\":\"true\",\"framerVariables\":\"{\\\"n_nqF67s7\\\":\\\"question\\\",\\\"jLJZKfNK7\\\":\\\"answer\\\"}\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./CY_18tmTg.map", "// Generated by Framer (e22b717)\nimport{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{addFonts,ComponentViewportProvider,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 FAQsFAQs from\"https://framerusercontent.com/modules/rEa7PwxdVkSVmmHlKEB0/b2S5072wvgY24vymAFyb/CY_18tmTg.js\";const FAQsFAQsFonts=getFonts(FAQsFAQs);const serializationHash=\"framer-d2zQv\";const variantClassNames={mCo5fm4MP:\"framer-v-e7423c\"};function addPropertyOverrides(overrides,...variants){const nextOverrides={};variants?.forEach(variant=>variant&&Object.assign(nextOverrides,overrides[variant]));return nextOverrides;}const transition1={damping:60,delay:0,mass:1,stiffness:400,type:\"spring\"};const Transition=({value,children})=>{const config=React.useContext(MotionConfigContext);const transition=value??config.transition;const contextValue=React.useMemo(()=>({...config,transition}),[JSON.stringify(transition)]);return /*#__PURE__*/_jsx(MotionConfigContext.Provider,{value:contextValue,children:children});};const Variants=motion.create(React.Fragment);const getProps=({height,id,width,...props})=>{return{...props};};const createLayoutDependency=(props,variants)=>{if(props.layoutDependency)return variants.join(\"-\")+props.layoutDependency;return variants.join(\"-\");};const Component=/*#__PURE__*/React.forwardRef(function(props,ref){const fallbackRef=useRef(null);const refBinding=ref??fallbackRef;const defaultLayoutId=React.useId();const{activeLocale,setLocale}=useLocaleInfo();const componentViewport=useComponentViewport();const{style,className,layoutId,variant,...restProps}=getProps(props);const{baseVariant,classNames,clearLoadingGesture,gestureHandlers,gestureVariant,isLoading,setGestureState,setVariant,variants}=useVariantState({defaultVariant:\"mCo5fm4MP\",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__*/_jsxs(motion.div,{...restProps,...gestureHandlers,className:cx(scopingClassNames,\"framer-e7423c\",className,classNames),\"data-framer-name\":\"Variant 1\",layoutDependency:layoutDependency,layoutId:\"mCo5fm4MP\",ref:refBinding,style:{...style},children:[/*#__PURE__*/_jsx(ComponentViewportProvider,{height:57,width:componentViewport?.width||\"100vw\",y:(componentViewport?.y||0)+0+(((componentViewport?.height||200)-0-349)/2+0+0),children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-11qivfj-container\",layoutDependency:layoutDependency,layoutId:\"RG_oo12AE-container\",nodeId:\"RG_oo12AE\",rendersWithMotion:true,scopeId:\"gPZgk2LeF\",children:/*#__PURE__*/_jsx(FAQsFAQs,{height:\"100%\",id:\"RG_oo12AE\",jLJZKfNK7:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(\"p\",{children:\"Bit4Bit specializes in AI-powered solutions, including automation, predictive analytics, AI video and image generation, chatbots, and custom AI agents tailored to various industries. Our goal is to help businesses enhance their operations and make data-driven decisions.\"})}),layoutId:\"RG_oo12AE\",n_nqF67s7:\"What services does Bit4Bit offer?\",style:{width:\"100%\"},variant:\"VQsn2gS3R\",width:\"100%\"})})}),/*#__PURE__*/_jsx(ComponentViewportProvider,{height:57,width:componentViewport?.width||\"100vw\",y:(componentViewport?.y||0)+0+(((componentViewport?.height||200)-0-349)/2+57+16),children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-13ynz3q-container\",layoutDependency:layoutDependency,layoutId:\"kbkhw81tH-container\",nodeId:\"kbkhw81tH\",rendersWithMotion:true,scopeId:\"gPZgk2LeF\",children:/*#__PURE__*/_jsx(FAQsFAQs,{height:\"100%\",id:\"kbkhw81tH\",jLJZKfNK7:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(\"p\",{children:\"Our subscription-based model offers continuous AI support and optimization. Each plan includes regular updates, performance monitoring, and priority support. You can choose from our Starter, Growth, or Enterprise plans, depending on your business needs.\"})}),layoutId:\"kbkhw81tH\",n_nqF67s7:\"How does the monthly subscription work?\",style:{width:\"100%\"},variant:\"VQsn2gS3R\",width:\"100%\"})})}),/*#__PURE__*/_jsx(ComponentViewportProvider,{height:57,width:componentViewport?.width||\"100vw\",y:(componentViewport?.y||0)+0+(((componentViewport?.height||200)-0-349)/2+114+32),children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-ioqoim-container\",layoutDependency:layoutDependency,layoutId:\"kfstPg_2W-container\",nodeId:\"kfstPg_2W\",rendersWithMotion:true,scopeId:\"gPZgk2LeF\",children:/*#__PURE__*/_jsx(FAQsFAQs,{height:\"100%\",id:\"kfstPg_2W\",jLJZKfNK7:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(\"p\",{children:\"Absolutely! Bit4Bit is dedicated to seamless AI integration. Whether it's your CRM, marketing platforms, or workflow automation tools, we ensure that our solutions work in harmony with your existing infrastructure.\"})}),layoutId:\"kfstPg_2W\",n_nqF67s7:\"Can Bit4Bit integrate AI with our existing systems?\",style:{width:\"100%\"},variant:\"VQsn2gS3R\",width:\"100%\"})})}),/*#__PURE__*/_jsx(ComponentViewportProvider,{height:57,width:componentViewport?.width||\"100vw\",y:(componentViewport?.y||0)+0+(((componentViewport?.height||200)-0-349)/2+171+48),children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-1weq5l5-container\",layoutDependency:layoutDependency,layoutId:\"fz7Pnf2Zy-container\",nodeId:\"fz7Pnf2Zy\",rendersWithMotion:true,scopeId:\"gPZgk2LeF\",children:/*#__PURE__*/_jsx(FAQsFAQs,{height:\"100%\",id:\"fz7Pnf2Zy\",jLJZKfNK7:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(\"p\",{children:\"The implementation time depends on the complexity of the project. For basic solutions, it may take a few weeks, while more advanced AI integrations could require a couple of months. We always provide a clear timeline during the discovery phase.\"})}),layoutId:\"fz7Pnf2Zy\",n_nqF67s7:\"How long does it take to implement an AI solution?\",style:{width:\"100%\"},variant:\"VQsn2gS3R\",width:\"100%\"})})}),/*#__PURE__*/_jsx(ComponentViewportProvider,{height:57,width:componentViewport?.width||\"100vw\",y:(componentViewport?.y||0)+0+(((componentViewport?.height||200)-0-349)/2+228+64),children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-1q7ama8-container\",layoutDependency:layoutDependency,layoutId:\"MOcTupr9Z-container\",nodeId:\"MOcTupr9Z\",rendersWithMotion:true,scopeId:\"gPZgk2LeF\",children:/*#__PURE__*/_jsx(FAQsFAQs,{height:\"100%\",id:\"MOcTupr9Z\",jLJZKfNK7:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(\"p\",{children:\"Bit4Bit works with a wide range of industries including healthcare, e-commerce, finance, marketing, media, manufacturing, and more. Our AI solutions are customizable to meet the specific needs of each industry.\"})}),layoutId:\"MOcTupr9Z\",n_nqF67s7:\"What industries can benefit from Bit4Bit\u2019 AI solutions?\",style:{width:\"100%\"},variant:\"VQsn2gS3R\",width:\"100%\"})})})]})})})});});const css=[\"@supports (aspect-ratio: 1) { body { --framer-aspect-ratio-supported: auto; } }\",\".framer-d2zQv.framer-jlyu7c, .framer-d2zQv .framer-jlyu7c { display: block; }\",\".framer-d2zQv.framer-e7423c { align-content: center; align-items: center; display: flex; flex-direction: column; flex-wrap: nowrap; gap: 16px; height: min-content; justify-content: center; overflow: hidden; padding: 0px; position: relative; width: 1040px; }\",\".framer-d2zQv .framer-11qivfj-container, .framer-d2zQv .framer-13ynz3q-container, .framer-d2zQv .framer-ioqoim-container, .framer-d2zQv .framer-1weq5l5-container, .framer-d2zQv .framer-1q7ama8-container { flex: none; height: auto; position: relative; width: 100%; z-index: 1; }\",\"@supports (background: -webkit-named-image(i)) and (not (font-palette:dark)) { .framer-d2zQv.framer-e7423c { gap: 0px; } .framer-d2zQv.framer-e7423c > * { margin: 0px; margin-bottom: calc(16px / 2); margin-top: calc(16px / 2); } .framer-d2zQv.framer-e7423c > :first-child { margin-top: 0px; } .framer-d2zQv.framer-e7423c > :last-child { margin-bottom: 0px; } }\"];/**\n * This is a generated Framer component.\n * @framerIntrinsicHeight 350\n * @framerIntrinsicWidth 1040\n * @framerCanvasComponentVariantDetails {\"propertyName\":\"variant\",\"data\":{\"default\":{\"layout\":[\"fixed\",\"auto\"]}}}\n * @framerImmutableVariables true\n * @framerDisplayContentsDiv false\n * @framerComponentViewportWidth true\n */const FramergPZgk2LeF=withCSS(Component,css,\"framer-d2zQv\");export default FramergPZgk2LeF;FramergPZgk2LeF.displayName=\"FAQs/Section\";FramergPZgk2LeF.defaultProps={height:350,width:1040};addFonts(FramergPZgk2LeF,[{explicitInter:true,fonts:[]},...FAQsFAQsFonts],{supportsExplicitInterCodegen:true});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"FramergPZgk2LeF\",\"slots\":[],\"annotations\":{\"framerImmutableVariables\":\"true\",\"framerContractVersion\":\"1\",\"framerIntrinsicHeight\":\"350\",\"framerDisplayContentsDiv\":\"false\",\"framerComponentViewportWidth\":\"true\",\"framerIntrinsicWidth\":\"1040\",\"framerCanvasComponentVariantDetails\":\"{\\\"propertyName\\\":\\\"variant\\\",\\\"data\\\":{\\\"default\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"auto\\\"]}}}\"}},\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./gPZgk2LeF.map", "// Generated by Framer (cf240c2)\nimport{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{addFonts,addPropertyControls,ControlType,cx,getFontsFromSharedStyle,RichText,useComponentViewport,useLocaleInfo,useVariantState,withCSS,withFX}from\"framer\";import{LayoutGroup,motion,MotionConfigContext}from\"framer-motion\";import*as React from\"react\";import*as sharedStyle1 from\"https://framerusercontent.com/modules/yhwxvTNo3tHUNTZTCUXd/rnjts2scwUlJE6DcMt7a/IZpeieEjn.js\";import*as sharedStyle from\"https://framerusercontent.com/modules/RwquBhWhgnFy8YZTajJ8/pNJ4BdDGlKDraehpy0Mk/vKGxKv6WT.js\";const MotionDivWithFX=withFX(motion.div);const cycleOrder=[\"EusG2sP1O\",\"QR2Y_5NyP\"];const serializationHash=\"framer-d6InC\";const variantClassNames={EusG2sP1O:\"framer-v-15sq28m\",QR2Y_5NyP:\"framer-v-1rshiw7\"};function addPropertyOverrides(overrides,...variants){const nextOverrides={};variants===null||variants===void 0?void 0:variants.forEach(variant=>variant&&Object.assign(nextOverrides,overrides[variant]));return nextOverrides;}const transition1={damping:30,delay:0,mass:1,stiffness:200,type:\"spring\"};const transition2={delay:0,duration:4,ease:[0,0,1,1],type:\"tween\"};const animation={opacity:1,rotate:0,rotateX:0,rotateY:0,scale:1,skewX:0,skewY:0,x:0,y:-150};const transition3={delay:0,duration:3.5,ease:[0,0,1,1],type:\"tween\"};const transition4={delay:0,duration:3,ease:[0,0,1,1],type:\"tween\"};const animation1={opacity:1,rotate:0,rotateX:0,rotateY:0,scale:1,skewX:0,skewY:0,x:-150,y:0};const animation2={opacity:1,rotate:0,rotateX:0,rotateY:0,scale:1,skewX:0,skewY:0,x:150,y:0};const animation3={opacity:1,rotate:0,rotateX:0,rotateY:0,scale:1,skewX:0,skewY:0,x:0,y:150};const Transition=({value,children})=>{const config=React.useContext(MotionConfigContext);const transition=value!==null&&value!==void 0?value:config.transition;const contextValue=React.useMemo(()=>({...config,transition}),[JSON.stringify(transition)]);return /*#__PURE__*/_jsx(MotionConfigContext.Provider,{value:contextValue,children:children});};const Variants=motion.create(React.Fragment);const humanReadableVariantMap={\"Tablet/phone\":\"QR2Y_5NyP\",Desktop:\"EusG2sP1O\"};const getProps=({description,height,id,title,width,...props})=>{var _ref,_ref1,_humanReadableVariantMap_props_variant,_ref2;return{...props,DXWWgGjsz:(_ref=description!==null&&description!==void 0?description:props.DXWWgGjsz)!==null&&_ref!==void 0?_ref:\"Description\",tLs69h6vu:(_ref1=title!==null&&title!==void 0?title:props.tLs69h6vu)!==null&&_ref1!==void 0?_ref1:\"Title\",variant:(_ref2=(_humanReadableVariantMap_props_variant=humanReadableVariantMap[props.variant])!==null&&_humanReadableVariantMap_props_variant!==void 0?_humanReadableVariantMap_props_variant:props.variant)!==null&&_ref2!==void 0?_ref2:\"EusG2sP1O\"};};const createLayoutDependency=(props,variants)=>{if(props.layoutDependency)return variants.join(\"-\")+props.layoutDependency;return variants.join(\"-\");};const Component=/*#__PURE__*/React.forwardRef(function(props,ref){const{activeLocale,setLocale}=useLocaleInfo();const{style,className,layoutId,variant,tLs69h6vu,DXWWgGjsz,...restProps}=getProps(props);const{baseVariant,classNames,clearLoadingGesture,gestureHandlers,gestureVariant,isLoading,setGestureState,setVariant,variants}=useVariantState({cycleOrder,defaultVariant:\"EusG2sP1O\",variant,variantClassNames});const layoutDependency=createLayoutDependency(props,variants);const ref1=React.useRef(null);const defaultLayoutId=React.useId();const sharedStyleClassNames=[sharedStyle.className,sharedStyle1.className];const componentViewport=useComponentViewport();return /*#__PURE__*/_jsx(LayoutGroup,{id:layoutId!==null&&layoutId!==void 0?layoutId:defaultLayoutId,children:/*#__PURE__*/_jsx(Variants,{animate:variants,initial:false,children:/*#__PURE__*/_jsx(Transition,{value:transition1,children:/*#__PURE__*/_jsx(motion.div,{...restProps,...gestureHandlers,className:cx(serializationHash,...sharedStyleClassNames,\"framer-15sq28m\",className,classNames),\"data-framer-name\":\"Desktop\",layoutDependency:layoutDependency,layoutId:\"EusG2sP1O\",ref:ref!==null&&ref!==void 0?ref:ref1,style:{background:'radial-gradient(50% 50% at 50% 50%, var(--token-ab8a1628-3695-47a5-8496-32bf3ecfdf66, rgb(21, 58, 161)) /* {\"name\":\"Blue\"} */ 0%, var(--token-17d94287-c97e-4602-9cf7-4d2036e50e01, rgb(0, 24, 94)) /* {\"name\":\"Dark blue\"} */ 100%)',borderBottomLeftRadius:12,borderBottomRightRadius:12,borderTopLeftRadius:12,borderTopRightRadius:12,...style},...addPropertyOverrides({QR2Y_5NyP:{\"data-framer-name\":\"Tablet/phone\"}},baseVariant,gestureVariant),children:/*#__PURE__*/_jsxs(motion.div,{className:\"framer-1nkxpey\",\"data-framer-name\":\"Content\",layoutDependency:layoutDependency,layoutId:\"vDaet2b2q\",style:{background:'linear-gradient(130deg, var(--token-f5d2506d-9c8c-423b-a07c-4bdb7316df89, rgba(5, 5, 5, 0.75)) /* {\"name\":\"Black 75%\"} */ 0%, var(--token-7be8625f-297b-4b2a-908d-7056e5d82d0a, rgb(5, 5, 5)) /* {\"name\":\"Black\"} */ 120%)',borderBottomLeftRadius:11,borderBottomRightRadius:11,borderTopLeftRadius:11,borderTopRightRadius:11},children:[/*#__PURE__*/_jsx(motion.div,{className:\"framer-k83yrs\",\"data-border\":true,\"data-framer-name\":\"Interaction\",layoutDependency:layoutDependency,layoutId:\"tZd6dV_wL\",style:{\"--border-bottom-width\":\"0px\",\"--border-color\":\"var(--token-b065af26-ed04-4754-81f1-004a104fdd7f, rgba(0, 24, 94, 0.3))\",\"--border-left-width\":\"1px\",\"--border-right-width\":\"1px\",\"--border-style\":\"solid\",\"--border-top-width\":\"1px\",backgroundColor:\"rgba(5, 5, 5, 0.5)\",borderTopLeftRadius:9,borderTopRightRadius:9,mask:\"linear-gradient(180deg, rgb(0, 0, 0) 80%, rgba(0, 0, 0, 0) 100%) add\",WebkitMask:\"linear-gradient(180deg, rgb(0, 0, 0) 80%, rgba(0, 0, 0, 0) 100%) add\"},children:/*#__PURE__*/_jsxs(MotionDivWithFX,{__framer__spring:{damping:30,delay:0,duration:.3,ease:[.44,0,.56,1],mass:1,stiffness:150,type:\"spring\"},__framer__styleTransformEffectEnabled:true,__framer__transformTargets:[{target:{opacity:.3,rotate:0,rotateX:0,rotateY:0,scale:1,skewX:0,skewY:0,x:0,y:0}},{target:{opacity:1,rotate:0,rotateX:0,rotateY:0,scale:1,skewX:0,skewY:0,x:0,y:0}}],__framer__transformTrigger:\"onInView\",__perspectiveFX:false,__smartComponentFX:true,__targetOpacity:1,className:\"framer-15galog\",\"data-framer-name\":\"Container\",layoutDependency:layoutDependency,layoutId:\"mkNIo3uOd\",style:{mask:\"radial-gradient(53% 53% at 50% 50%, rgb(0, 0, 0) 0%, rgba(0, 0, 0, 0) 100%) add\",WebkitMask:\"radial-gradient(53% 53% at 50% 50%, rgb(0, 0, 0) 0%, rgba(0, 0, 0, 0) 100%) add\"},...addPropertyOverrides({QR2Y_5NyP:{__framer__styleTransformEffectEnabled:undefined}},baseVariant,gestureVariant),children:[/*#__PURE__*/_jsxs(motion.div,{className:\"framer-pqtyjh\",\"data-framer-name\":\"Up\",layoutDependency:layoutDependency,layoutId:\"qsvuNGV8n\",children:[/*#__PURE__*/_jsxs(motion.div,{className:\"framer-vae97n\",layoutDependency:layoutDependency,layoutId:\"NTcktwUEa\",children:[/*#__PURE__*/_jsx(motion.div,{className:\"framer-1aqpotm\",\"data-framer-name\":\"Line\",layoutDependency:layoutDependency,layoutId:\"HfADAgufz\",style:{backgroundColor:\"var(--token-71ea3e47-bcbd-4707-9061-859b6588ce9a, rgb(145, 145, 145))\"},variants:{QR2Y_5NyP:{backgroundColor:\"var(--token-71ea3e47-bcbd-4707-9061-859b6588ce9a, rgb(117, 117, 117))\"}},children:/*#__PURE__*/_jsx(MotionDivWithFX,{__framer__loop:animation,__framer__loopEffectEnabled:true,__framer__loopRepeatDelay:0,__framer__loopRepeatType:\"loop\",__framer__loopTransition:transition2,__perspectiveFX:false,__smartComponentFX:true,__targetOpacity:1,className:\"framer-6xippo\",layoutDependency:layoutDependency,layoutId:\"ctVpNpvkV\",style:{background:'linear-gradient(180deg, var(--token-ab8a1628-3695-47a5-8496-32bf3ecfdf66, rgb(21, 58, 161)) /* {\"name\":\"Blue\"} */ 0%, var(--token-71ea3e47-bcbd-4707-9061-859b6588ce9a, rgb(145, 145, 145)) /* {\"name\":\"Gray 400\"} */ 100%)',borderBottomLeftRadius:20,borderBottomRightRadius:20,borderTopLeftRadius:20,borderTopRightRadius:20,filter:\"blur(0px)\",WebkitFilter:\"blur(0px)\"},variants:{QR2Y_5NyP:{background:'linear-gradient(180deg, var(--token-ab8a1628-3695-47a5-8496-32bf3ecfdf66, rgb(21, 58, 161)) /* {\"name\":\"Blue\"} */ 0%, var(--token-71ea3e47-bcbd-4707-9061-859b6588ce9a, rgb(117, 117, 117)) /* {\"name\":\"Gray 500\"} */ 100%)'}}})}),/*#__PURE__*/_jsx(motion.div,{className:\"framer-1gcw5od\",layoutDependency:layoutDependency,layoutId:\"ICiCwI8bX\",style:{background:'linear-gradient(270deg, var(--token-71ea3e47-bcbd-4707-9061-859b6588ce9a, rgb(105, 105, 105)) /* {\"name\":\"Gray\"} */ 0%, var(--token-fac97835-8102-4c2d-a364-9b29482fa5eb, rgb(18, 18, 18)) /* {\"name\":\"Black 900\"} */ 100%)',borderTopLeftRadius:2,borderTopRightRadius:2}})]}),/*#__PURE__*/_jsxs(motion.div,{className:\"framer-1bvwnkp\",layoutDependency:layoutDependency,layoutId:\"q7OKzkcnz\",children:[/*#__PURE__*/_jsx(motion.div,{className:\"framer-4hcc4o\",\"data-framer-name\":\"Line\",layoutDependency:layoutDependency,layoutId:\"yKHmHddz4\",style:{backgroundColor:\"var(--token-71ea3e47-bcbd-4707-9061-859b6588ce9a, rgb(145, 145, 145))\"},variants:{QR2Y_5NyP:{backgroundColor:\"var(--token-71ea3e47-bcbd-4707-9061-859b6588ce9a, rgb(117, 117, 117))\"}},children:/*#__PURE__*/_jsx(MotionDivWithFX,{__framer__loop:animation,__framer__loopEffectEnabled:true,__framer__loopRepeatDelay:0,__framer__loopRepeatType:\"loop\",__framer__loopTransition:transition3,__perspectiveFX:false,__smartComponentFX:true,__targetOpacity:1,className:\"framer-1ov3g22\",layoutDependency:layoutDependency,layoutId:\"hJHZ_qrPS\",style:{background:'linear-gradient(180deg, var(--token-ab8a1628-3695-47a5-8496-32bf3ecfdf66, rgb(21, 58, 161)) /* {\"name\":\"Blue\"} */ 0%, var(--token-71ea3e47-bcbd-4707-9061-859b6588ce9a, rgb(145, 145, 145)) /* {\"name\":\"Gray 400\"} */ 100%)',borderBottomLeftRadius:20,borderBottomRightRadius:20,borderTopLeftRadius:20,borderTopRightRadius:20,filter:\"blur(0px)\",WebkitFilter:\"blur(0px)\"},variants:{QR2Y_5NyP:{background:'linear-gradient(180deg, var(--token-ab8a1628-3695-47a5-8496-32bf3ecfdf66, rgb(21, 58, 161)) /* {\"name\":\"Blue\"} */ 0%, var(--token-71ea3e47-bcbd-4707-9061-859b6588ce9a, rgb(117, 117, 117)) /* {\"name\":\"Gray 500\"} */ 100%)'}}})}),/*#__PURE__*/_jsx(motion.div,{className:\"framer-xcyan3\",layoutDependency:layoutDependency,layoutId:\"qLS9tmDGK\",style:{background:'linear-gradient(270deg, var(--token-71ea3e47-bcbd-4707-9061-859b6588ce9a, rgb(105, 105, 105)) /* {\"name\":\"Gray\"} */ 0%, var(--token-fac97835-8102-4c2d-a364-9b29482fa5eb, rgb(18, 18, 18)) /* {\"name\":\"Black 900\"} */ 100%)',borderTopLeftRadius:2,borderTopRightRadius:2}})]}),/*#__PURE__*/_jsxs(motion.div,{className:\"framer-4s3mka\",layoutDependency:layoutDependency,layoutId:\"cmRd2n9sy\",children:[/*#__PURE__*/_jsx(motion.div,{className:\"framer-f379um\",\"data-framer-name\":\"Line\",layoutDependency:layoutDependency,layoutId:\"wWYeG0skV\",style:{backgroundColor:\"var(--token-71ea3e47-bcbd-4707-9061-859b6588ce9a, rgb(145, 145, 145))\"},variants:{QR2Y_5NyP:{backgroundColor:\"var(--token-71ea3e47-bcbd-4707-9061-859b6588ce9a, rgb(117, 117, 117))\"}},children:/*#__PURE__*/_jsx(MotionDivWithFX,{__framer__loop:animation,__framer__loopEffectEnabled:true,__framer__loopRepeatDelay:0,__framer__loopRepeatType:\"loop\",__framer__loopTransition:transition4,__perspectiveFX:false,__smartComponentFX:true,__targetOpacity:1,className:\"framer-9p5z4o\",layoutDependency:layoutDependency,layoutId:\"pj7lJTk8L\",style:{background:'linear-gradient(180deg, var(--token-ab8a1628-3695-47a5-8496-32bf3ecfdf66, rgb(21, 58, 161)) /* {\"name\":\"Blue\"} */ 0%, var(--token-71ea3e47-bcbd-4707-9061-859b6588ce9a, rgb(145, 145, 145)) /* {\"name\":\"Gray 400\"} */ 100%)',borderBottomLeftRadius:20,borderBottomRightRadius:20,borderTopLeftRadius:20,borderTopRightRadius:20,filter:\"blur(0px)\",WebkitFilter:\"blur(0px)\"},variants:{QR2Y_5NyP:{background:'linear-gradient(180deg, var(--token-ab8a1628-3695-47a5-8496-32bf3ecfdf66, rgb(21, 58, 161)) /* {\"name\":\"Blue\"} */ 0%, var(--token-71ea3e47-bcbd-4707-9061-859b6588ce9a, rgb(117, 117, 117)) /* {\"name\":\"Gray 500\"} */ 100%)'}}})}),/*#__PURE__*/_jsx(motion.div,{className:\"framer-h062dl\",layoutDependency:layoutDependency,layoutId:\"fBQ6j2FKv\",style:{background:'linear-gradient(270deg, var(--token-71ea3e47-bcbd-4707-9061-859b6588ce9a, rgb(105, 105, 105)) /* {\"name\":\"Gray\"} */ 0%, var(--token-fac97835-8102-4c2d-a364-9b29482fa5eb, rgb(18, 18, 18)) /* {\"name\":\"Black 900\"} */ 100%)',borderTopLeftRadius:2,borderTopRightRadius:2}})]})]}),/*#__PURE__*/_jsxs(motion.div,{className:\"framer-ftxmy4\",\"data-framer-name\":\"Middle\",layoutDependency:layoutDependency,layoutId:\"DMy9OJFVe\",children:[/*#__PURE__*/_jsxs(motion.div,{className:\"framer-yfd843\",\"data-framer-name\":\"Left\",layoutDependency:layoutDependency,layoutId:\"zglOwO5Ia\",children:[/*#__PURE__*/_jsxs(motion.div,{className:\"framer-1mmzuyx\",layoutDependency:layoutDependency,layoutId:\"QPSAGDdSb\",children:[/*#__PURE__*/_jsx(motion.div,{className:\"framer-1qlm7k\",\"data-framer-name\":\"Line\",layoutDependency:layoutDependency,layoutId:\"zJhRglQIX\",style:{backgroundColor:\"var(--token-71ea3e47-bcbd-4707-9061-859b6588ce9a, rgb(145, 145, 145))\"},variants:{QR2Y_5NyP:{backgroundColor:\"var(--token-71ea3e47-bcbd-4707-9061-859b6588ce9a, rgb(117, 117, 117))\"}},children:/*#__PURE__*/_jsx(MotionDivWithFX,{__framer__loop:animation1,__framer__loopEffectEnabled:true,__framer__loopRepeatDelay:0,__framer__loopRepeatType:\"loop\",__framer__loopTransition:transition2,__perspectiveFX:false,__smartComponentFX:true,__targetOpacity:1,className:\"framer-10pvsgy\",layoutDependency:layoutDependency,layoutId:\"DEOwn6bEZ\",style:{background:'linear-gradient(90deg, var(--token-ab8a1628-3695-47a5-8496-32bf3ecfdf66, rgb(21, 58, 161)) /* {\"name\":\"Blue\"} */ 0%, var(--token-71ea3e47-bcbd-4707-9061-859b6588ce9a, rgb(145, 145, 145)) /* {\"name\":\"Gray 400\"} */ 100%)',borderBottomLeftRadius:20,borderBottomRightRadius:20,borderTopLeftRadius:20,borderTopRightRadius:20,filter:\"blur(0px)\",WebkitFilter:\"blur(0px)\"},variants:{QR2Y_5NyP:{background:'linear-gradient(90deg, var(--token-ab8a1628-3695-47a5-8496-32bf3ecfdf66, rgb(21, 58, 161)) /* {\"name\":\"Blue\"} */ 0%, var(--token-71ea3e47-bcbd-4707-9061-859b6588ce9a, rgb(117, 117, 117)) /* {\"name\":\"Gray 500\"} */ 100%)'}}})}),/*#__PURE__*/_jsx(motion.div,{className:\"framer-1oa8p9w\",layoutDependency:layoutDependency,layoutId:\"MKeVP7v4b\",style:{background:'linear-gradient(90deg, var(--token-71ea3e47-bcbd-4707-9061-859b6588ce9a, rgb(105, 105, 105)) /* {\"name\":\"Gray\"} */ 0%, var(--token-fac97835-8102-4c2d-a364-9b29482fa5eb, rgb(18, 18, 18)) /* {\"name\":\"Black 900\"} */ 100%)',borderBottomLeftRadius:2,borderTopLeftRadius:2}})]}),/*#__PURE__*/_jsxs(motion.div,{className:\"framer-12ca3ip\",layoutDependency:layoutDependency,layoutId:\"bj5hLLbyp\",children:[/*#__PURE__*/_jsx(motion.div,{className:\"framer-16b0vje\",\"data-framer-name\":\"Line\",layoutDependency:layoutDependency,layoutId:\"MN69zcDEv\",style:{backgroundColor:\"var(--token-71ea3e47-bcbd-4707-9061-859b6588ce9a, rgb(145, 145, 145))\"},variants:{QR2Y_5NyP:{backgroundColor:\"var(--token-71ea3e47-bcbd-4707-9061-859b6588ce9a, rgb(117, 117, 117))\"}},children:/*#__PURE__*/_jsx(MotionDivWithFX,{__framer__loop:animation1,__framer__loopEffectEnabled:true,__framer__loopRepeatDelay:0,__framer__loopRepeatType:\"loop\",__framer__loopTransition:transition3,__perspectiveFX:false,__smartComponentFX:true,__targetOpacity:1,className:\"framer-175r3tp\",layoutDependency:layoutDependency,layoutId:\"wYhPuyDTm\",style:{background:'linear-gradient(90deg, var(--token-ab8a1628-3695-47a5-8496-32bf3ecfdf66, rgb(21, 58, 161)) /* {\"name\":\"Blue\"} */ 0%, var(--token-71ea3e47-bcbd-4707-9061-859b6588ce9a, rgb(145, 145, 145)) /* {\"name\":\"Gray 400\"} */ 100%)',borderBottomLeftRadius:20,borderBottomRightRadius:20,borderTopLeftRadius:20,borderTopRightRadius:20,filter:\"blur(0px)\",WebkitFilter:\"blur(0px)\"},variants:{QR2Y_5NyP:{background:'linear-gradient(90deg, var(--token-ab8a1628-3695-47a5-8496-32bf3ecfdf66, rgb(21, 58, 161)) /* {\"name\":\"Blue\"} */ 0%, var(--token-71ea3e47-bcbd-4707-9061-859b6588ce9a, rgb(117, 117, 117)) /* {\"name\":\"Gray 500\"} */ 100%)'}}})}),/*#__PURE__*/_jsx(motion.div,{className:\"framer-10yyln2\",layoutDependency:layoutDependency,layoutId:\"cqtY5ocat\",style:{background:'linear-gradient(90deg, var(--token-71ea3e47-bcbd-4707-9061-859b6588ce9a, rgb(105, 105, 105)) /* {\"name\":\"Gray\"} */ 0%, var(--token-fac97835-8102-4c2d-a364-9b29482fa5eb, rgb(18, 18, 18)) /* {\"name\":\"Black 900\"} */ 100%)',borderBottomLeftRadius:2,borderTopLeftRadius:2}})]}),/*#__PURE__*/_jsxs(motion.div,{className:\"framer-irpxgc\",layoutDependency:layoutDependency,layoutId:\"mjc7ymRhq\",children:[/*#__PURE__*/_jsx(motion.div,{className:\"framer-rcb7k7\",\"data-framer-name\":\"Line\",layoutDependency:layoutDependency,layoutId:\"bBsps8ilg\",style:{backgroundColor:\"var(--token-71ea3e47-bcbd-4707-9061-859b6588ce9a, rgb(145, 145, 145))\"},variants:{QR2Y_5NyP:{backgroundColor:\"var(--token-71ea3e47-bcbd-4707-9061-859b6588ce9a, rgb(117, 117, 117))\"}},children:/*#__PURE__*/_jsx(MotionDivWithFX,{__framer__loop:animation1,__framer__loopEffectEnabled:true,__framer__loopRepeatDelay:0,__framer__loopRepeatType:\"loop\",__framer__loopTransition:transition4,__perspectiveFX:false,__smartComponentFX:true,__targetOpacity:1,className:\"framer-ebafcx\",layoutDependency:layoutDependency,layoutId:\"pKRhq1Src\",style:{background:'linear-gradient(90deg, var(--token-ab8a1628-3695-47a5-8496-32bf3ecfdf66, rgb(21, 58, 161)) /* {\"name\":\"Blue\"} */ 0%, var(--token-71ea3e47-bcbd-4707-9061-859b6588ce9a, rgb(145, 145, 145)) /* {\"name\":\"Gray 400\"} */ 100%)',borderBottomLeftRadius:20,borderBottomRightRadius:20,borderTopLeftRadius:20,borderTopRightRadius:20,filter:\"blur(0px)\",WebkitFilter:\"blur(0px)\"},variants:{QR2Y_5NyP:{background:'linear-gradient(90deg, var(--token-ab8a1628-3695-47a5-8496-32bf3ecfdf66, rgb(21, 58, 161)) /* {\"name\":\"Blue\"} */ 0%, var(--token-71ea3e47-bcbd-4707-9061-859b6588ce9a, rgb(117, 117, 117)) /* {\"name\":\"Gray 500\"} */ 100%)'}}})}),/*#__PURE__*/_jsx(motion.div,{className:\"framer-emxqf1\",layoutDependency:layoutDependency,layoutId:\"nqpD2RH0r\",style:{background:'linear-gradient(90deg, var(--token-71ea3e47-bcbd-4707-9061-859b6588ce9a, rgb(105, 105, 105)) /* {\"name\":\"Gray\"} */ 0%, var(--token-fac97835-8102-4c2d-a364-9b29482fa5eb, rgb(18, 18, 18)) /* {\"name\":\"Black 900\"} */ 100%)',borderBottomLeftRadius:2,borderTopLeftRadius:2}})]})]}),/*#__PURE__*/_jsx(motion.div,{className:\"framer-19tkysx\",\"data-border\":true,\"data-framer-name\":\"Center\",layoutDependency:layoutDependency,layoutId:\"AozEDsudT\",style:{\"--border-bottom-width\":\"1px\",\"--border-color\":\"var(--token-ab8a1628-3695-47a5-8496-32bf3ecfdf66, rgb(21, 58, 161))\",\"--border-left-width\":\"1px\",\"--border-right-width\":\"1px\",\"--border-style\":\"solid\",\"--border-top-width\":\"1px\",background:'linear-gradient(180deg, var(--token-17d94287-c97e-4602-9cf7-4d2036e50e01, rgb(0, 24, 94)) /* {\"name\":\"Dark blue\"} */ 0%, var(--token-7be8625f-297b-4b2a-908d-7056e5d82d0a, rgb(5, 5, 5)) /* {\"name\":\"Black\"} */ 100%)',borderBottomLeftRadius:10,borderBottomRightRadius:10,borderTopLeftRadius:10,borderTopRightRadius:10,boxShadow:\"0px 0.6021873017743928px 3.010936508871964px 0px rgba(0, 2, 128, 0.01505), 0px 2.288533303243457px 11.442666516217285px 0px rgba(0, 2, 128, 0.05721), 0px 10px 50px 0px rgba(0, 2, 128, 0.25)\"},children:/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{style:{\"--font-selector\":\"SW50ZXItU2VtaUJvbGQ=\",\"--framer-font-family\":'\"Inter\", \"Inter Placeholder\", sans-serif',\"--framer-font-size\":\"36px\",\"--framer-font-weight\":\"600\",\"--framer-text-alignment\":\"center\",\"--framer-text-color\":\"var(--extracted-r6o4lv, var(--token-d085bc1e-c0c1-4753-8ee2-8e531ff7b917, rgb(242, 242, 242)))\"},children:/*#__PURE__*/_jsx(motion.span,{\"data-text-fill\":\"true\",style:{backgroundImage:\"linear-gradient(0deg, var(--token-d085bc1e-c0c1-4753-8ee2-8e531ff7b917, rgb(242, 242, 242)) 0%, var(--token-71ea3e47-bcbd-4707-9061-859b6588ce9a, rgb(105, 105, 105)) 100%)\"},children:\"AI\"})})}),className:\"framer-cpamgf\",fonts:[\"Inter-SemiBold\"],layoutDependency:layoutDependency,layoutId:\"jQ5M6UtDM\",style:{\"--extracted-r6o4lv\":\"var(--token-d085bc1e-c0c1-4753-8ee2-8e531ff7b917, rgb(242, 242, 242))\",\"--framer-link-text-color\":\"rgb(0, 153, 255)\",\"--framer-link-text-decoration\":\"underline\"},verticalAlignment:\"top\",withExternalLayout:true})}),/*#__PURE__*/_jsxs(motion.div,{className:\"framer-jwy5ro\",\"data-framer-name\":\"Right\",layoutDependency:layoutDependency,layoutId:\"s1UquvU2e\",children:[/*#__PURE__*/_jsxs(motion.div,{className:\"framer-13jrsyl\",layoutDependency:layoutDependency,layoutId:\"WuZptoDLr\",children:[/*#__PURE__*/_jsx(motion.div,{className:\"framer-1hjw398\",layoutDependency:layoutDependency,layoutId:\"qPZnmHOaK\",style:{background:'linear-gradient(270deg, var(--token-71ea3e47-bcbd-4707-9061-859b6588ce9a, rgb(105, 105, 105)) /* {\"name\":\"Gray\"} */ 0%, var(--token-fac97835-8102-4c2d-a364-9b29482fa5eb, rgb(18, 18, 18)) /* {\"name\":\"Black 900\"} */ 100%)',borderBottomRightRadius:2,borderTopRightRadius:2}}),/*#__PURE__*/_jsx(motion.div,{className:\"framer-1xej3p9\",\"data-framer-name\":\"Line\",layoutDependency:layoutDependency,layoutId:\"vyYCV3urT\",style:{backgroundColor:\"var(--token-71ea3e47-bcbd-4707-9061-859b6588ce9a, rgb(145, 145, 145))\"},variants:{QR2Y_5NyP:{backgroundColor:\"var(--token-71ea3e47-bcbd-4707-9061-859b6588ce9a, rgb(117, 117, 117))\"}},children:/*#__PURE__*/_jsx(MotionDivWithFX,{__framer__loop:animation2,__framer__loopEffectEnabled:true,__framer__loopRepeatDelay:0,__framer__loopRepeatType:\"loop\",__framer__loopTransition:transition2,__perspectiveFX:false,__smartComponentFX:true,__targetOpacity:1,className:\"framer-1tthfbj\",layoutDependency:layoutDependency,layoutId:\"aSWRkbFcX\",style:{background:'linear-gradient(270deg, var(--token-ab8a1628-3695-47a5-8496-32bf3ecfdf66, rgb(21, 58, 161)) /* {\"name\":\"Blue\"} */ 0%, var(--token-71ea3e47-bcbd-4707-9061-859b6588ce9a, rgb(145, 145, 145)) /* {\"name\":\"Gray 400\"} */ 100%)',borderBottomLeftRadius:20,borderBottomRightRadius:20,borderTopLeftRadius:20,borderTopRightRadius:20,filter:\"blur(0px)\",WebkitFilter:\"blur(0px)\"},variants:{QR2Y_5NyP:{background:'linear-gradient(270deg, var(--token-ab8a1628-3695-47a5-8496-32bf3ecfdf66, rgb(21, 58, 161)) /* {\"name\":\"Blue\"} */ 0%, var(--token-71ea3e47-bcbd-4707-9061-859b6588ce9a, rgb(117, 117, 117)) /* {\"name\":\"Gray 500\"} */ 100%)'}}})})]}),/*#__PURE__*/_jsxs(motion.div,{className:\"framer-1sb0on1\",layoutDependency:layoutDependency,layoutId:\"K36P_uhwA\",children:[/*#__PURE__*/_jsx(motion.div,{className:\"framer-169zr2y\",layoutDependency:layoutDependency,layoutId:\"PQmkUPRCy\",style:{background:'linear-gradient(270deg, var(--token-71ea3e47-bcbd-4707-9061-859b6588ce9a, rgb(105, 105, 105)) /* {\"name\":\"Gray\"} */ 0%, var(--token-fac97835-8102-4c2d-a364-9b29482fa5eb, rgb(18, 18, 18)) /* {\"name\":\"Black 900\"} */ 100%)',borderBottomRightRadius:2,borderTopRightRadius:2}}),/*#__PURE__*/_jsx(motion.div,{className:\"framer-1sludu2\",\"data-framer-name\":\"Line\",layoutDependency:layoutDependency,layoutId:\"nXhkNqF5W\",style:{backgroundColor:\"var(--token-71ea3e47-bcbd-4707-9061-859b6588ce9a, rgb(145, 145, 145))\"},variants:{QR2Y_5NyP:{backgroundColor:\"var(--token-71ea3e47-bcbd-4707-9061-859b6588ce9a, rgb(117, 117, 117))\"}},children:/*#__PURE__*/_jsx(MotionDivWithFX,{__framer__loop:animation2,__framer__loopEffectEnabled:true,__framer__loopRepeatDelay:0,__framer__loopRepeatType:\"loop\",__framer__loopTransition:transition3,__perspectiveFX:false,__smartComponentFX:true,__targetOpacity:1,className:\"framer-twg7oe\",layoutDependency:layoutDependency,layoutId:\"DYUeDnqa8\",style:{background:'linear-gradient(270deg, var(--token-ab8a1628-3695-47a5-8496-32bf3ecfdf66, rgb(21, 58, 161)) /* {\"name\":\"Blue\"} */ 0%, var(--token-71ea3e47-bcbd-4707-9061-859b6588ce9a, rgb(145, 145, 145)) /* {\"name\":\"Gray 400\"} */ 100%)',borderBottomLeftRadius:20,borderBottomRightRadius:20,borderTopLeftRadius:20,borderTopRightRadius:20,filter:\"blur(0px)\",WebkitFilter:\"blur(0px)\"},variants:{QR2Y_5NyP:{background:'linear-gradient(270deg, var(--token-ab8a1628-3695-47a5-8496-32bf3ecfdf66, rgb(21, 58, 161)) /* {\"name\":\"Blue\"} */ 0%, var(--token-71ea3e47-bcbd-4707-9061-859b6588ce9a, rgb(117, 117, 117)) /* {\"name\":\"Gray 500\"} */ 100%)'}}})})]}),/*#__PURE__*/_jsxs(motion.div,{className:\"framer-13xn48c\",layoutDependency:layoutDependency,layoutId:\"MJwmtzdgt\",children:[/*#__PURE__*/_jsx(motion.div,{className:\"framer-lehp00\",layoutDependency:layoutDependency,layoutId:\"shiuYM640\",style:{background:'linear-gradient(270deg, var(--token-71ea3e47-bcbd-4707-9061-859b6588ce9a, rgb(105, 105, 105)) /* {\"name\":\"Gray\"} */ 0%, var(--token-fac97835-8102-4c2d-a364-9b29482fa5eb, rgb(18, 18, 18)) /* {\"name\":\"Black 900\"} */ 100%)',borderBottomRightRadius:2,borderTopRightRadius:2}}),/*#__PURE__*/_jsx(motion.div,{className:\"framer-g4kst7\",\"data-framer-name\":\"Line\",layoutDependency:layoutDependency,layoutId:\"RWmgJoqFD\",style:{backgroundColor:\"var(--token-71ea3e47-bcbd-4707-9061-859b6588ce9a, rgb(145, 145, 145))\"},variants:{QR2Y_5NyP:{backgroundColor:\"var(--token-71ea3e47-bcbd-4707-9061-859b6588ce9a, rgb(117, 117, 117))\"}},children:/*#__PURE__*/_jsx(MotionDivWithFX,{__framer__loop:animation2,__framer__loopEffectEnabled:true,__framer__loopRepeatDelay:0,__framer__loopRepeatType:\"loop\",__framer__loopTransition:transition4,__perspectiveFX:false,__smartComponentFX:true,__targetOpacity:1,className:\"framer-yo0grg\",layoutDependency:layoutDependency,layoutId:\"C8DBlHVYd\",style:{background:'linear-gradient(270deg, var(--token-ab8a1628-3695-47a5-8496-32bf3ecfdf66, rgb(21, 58, 161)) /* {\"name\":\"Blue\"} */ 0%, var(--token-71ea3e47-bcbd-4707-9061-859b6588ce9a, rgb(145, 145, 145)) /* {\"name\":\"Gray 400\"} */ 100%)',borderBottomLeftRadius:20,borderBottomRightRadius:20,borderTopLeftRadius:20,borderTopRightRadius:20,filter:\"blur(0px)\",WebkitFilter:\"blur(0px)\"},variants:{QR2Y_5NyP:{background:'linear-gradient(270deg, var(--token-ab8a1628-3695-47a5-8496-32bf3ecfdf66, rgb(21, 58, 161)) /* {\"name\":\"Blue\"} */ 0%, var(--token-71ea3e47-bcbd-4707-9061-859b6588ce9a, rgb(117, 117, 117)) /* {\"name\":\"Gray 500\"} */ 100%)'}}})})]})]})]}),/*#__PURE__*/_jsxs(motion.div,{className:\"framer-ptov2s\",\"data-framer-name\":\"Buttom\",layoutDependency:layoutDependency,layoutId:\"MdJcG7gEJ\",children:[/*#__PURE__*/_jsxs(motion.div,{className:\"framer-sy7gol\",layoutDependency:layoutDependency,layoutId:\"V0TdB7f0D\",children:[/*#__PURE__*/_jsx(motion.div,{className:\"framer-4r0r8i\",layoutDependency:layoutDependency,layoutId:\"fgGIUQCfD\",style:{background:'linear-gradient(0deg, var(--token-71ea3e47-bcbd-4707-9061-859b6588ce9a, rgb(105, 105, 105)) /* {\"name\":\"Gray\"} */ 0%, var(--token-fac97835-8102-4c2d-a364-9b29482fa5eb, rgb(18, 18, 18)) /* {\"name\":\"Black 900\"} */ 100%)',borderBottomLeftRadius:2,borderBottomRightRadius:2}}),/*#__PURE__*/_jsx(motion.div,{className:\"framer-1ld11d3\",\"data-framer-name\":\"Line\",layoutDependency:layoutDependency,layoutId:\"j5P61qOWS\",style:{backgroundColor:\"var(--token-71ea3e47-bcbd-4707-9061-859b6588ce9a, rgb(145, 145, 145))\"},variants:{QR2Y_5NyP:{backgroundColor:\"var(--token-71ea3e47-bcbd-4707-9061-859b6588ce9a, rgb(117, 117, 117))\"}},children:/*#__PURE__*/_jsx(MotionDivWithFX,{__framer__loop:animation3,__framer__loopEffectEnabled:true,__framer__loopRepeatDelay:0,__framer__loopRepeatType:\"loop\",__framer__loopTransition:transition2,__perspectiveFX:false,__smartComponentFX:true,__targetOpacity:1,className:\"framer-aax5na\",layoutDependency:layoutDependency,layoutId:\"PTEMxEkwT\",style:{background:'linear-gradient(0deg, var(--token-ab8a1628-3695-47a5-8496-32bf3ecfdf66, rgb(21, 58, 161)) /* {\"name\":\"Blue\"} */ 0%, var(--token-71ea3e47-bcbd-4707-9061-859b6588ce9a, rgb(145, 145, 145)) /* {\"name\":\"Gray 400\"} */ 100%)',borderBottomLeftRadius:20,borderBottomRightRadius:20,borderTopLeftRadius:20,borderTopRightRadius:20,filter:\"blur(0px)\",WebkitFilter:\"blur(0px)\"},variants:{QR2Y_5NyP:{background:'linear-gradient(0deg, var(--token-ab8a1628-3695-47a5-8496-32bf3ecfdf66, rgb(21, 58, 161)) /* {\"name\":\"Blue\"} */ 0%, var(--token-71ea3e47-bcbd-4707-9061-859b6588ce9a, rgb(117, 117, 117)) /* {\"name\":\"Gray 500\"} */ 100%)'}}})})]}),/*#__PURE__*/_jsxs(motion.div,{className:\"framer-7nxt9q\",layoutDependency:layoutDependency,layoutId:\"T23Z43fMG\",children:[/*#__PURE__*/_jsx(motion.div,{className:\"framer-1s5ek45\",layoutDependency:layoutDependency,layoutId:\"kgHLlvsMD\",style:{background:'linear-gradient(0deg, var(--token-71ea3e47-bcbd-4707-9061-859b6588ce9a, rgb(105, 105, 105)) /* {\"name\":\"Gray\"} */ 0%, var(--token-fac97835-8102-4c2d-a364-9b29482fa5eb, rgb(18, 18, 18)) /* {\"name\":\"Black 900\"} */ 100%)',borderBottomLeftRadius:2,borderBottomRightRadius:2}}),/*#__PURE__*/_jsx(motion.div,{className:\"framer-1vxex73\",\"data-framer-name\":\"Line\",layoutDependency:layoutDependency,layoutId:\"lxIsBIsHo\",style:{backgroundColor:\"var(--token-71ea3e47-bcbd-4707-9061-859b6588ce9a, rgb(145, 145, 145))\"},variants:{QR2Y_5NyP:{backgroundColor:\"var(--token-71ea3e47-bcbd-4707-9061-859b6588ce9a, rgb(117, 117, 117))\"}},children:/*#__PURE__*/_jsx(MotionDivWithFX,{__framer__loop:animation3,__framer__loopEffectEnabled:true,__framer__loopRepeatDelay:0,__framer__loopRepeatType:\"loop\",__framer__loopTransition:transition3,__perspectiveFX:false,__smartComponentFX:true,__targetOpacity:1,className:\"framer-jolvdt\",layoutDependency:layoutDependency,layoutId:\"NrceQOm7V\",style:{background:'linear-gradient(0deg, var(--token-ab8a1628-3695-47a5-8496-32bf3ecfdf66, rgb(21, 58, 161)) /* {\"name\":\"Blue\"} */ 0%, var(--token-71ea3e47-bcbd-4707-9061-859b6588ce9a, rgb(145, 145, 145)) /* {\"name\":\"Gray 400\"} */ 100%)',borderBottomLeftRadius:20,borderBottomRightRadius:20,borderTopLeftRadius:20,borderTopRightRadius:20,filter:\"blur(0px)\",WebkitFilter:\"blur(0px)\"},variants:{QR2Y_5NyP:{background:'linear-gradient(0deg, var(--token-ab8a1628-3695-47a5-8496-32bf3ecfdf66, rgb(21, 58, 161)) /* {\"name\":\"Blue\"} */ 0%, var(--token-71ea3e47-bcbd-4707-9061-859b6588ce9a, rgb(117, 117, 117)) /* {\"name\":\"Gray 500\"} */ 100%)'}}})})]}),/*#__PURE__*/_jsxs(motion.div,{className:\"framer-1mzp8dk\",layoutDependency:layoutDependency,layoutId:\"QfLgtB8u4\",children:[/*#__PURE__*/_jsx(motion.div,{className:\"framer-98v7q\",layoutDependency:layoutDependency,layoutId:\"M41w3hg5I\",style:{background:'linear-gradient(0deg, var(--token-71ea3e47-bcbd-4707-9061-859b6588ce9a, rgb(105, 105, 105)) /* {\"name\":\"Gray\"} */ 0%, var(--token-fac97835-8102-4c2d-a364-9b29482fa5eb, rgb(18, 18, 18)) /* {\"name\":\"Black 900\"} */ 100%)',borderBottomLeftRadius:2,borderBottomRightRadius:2}}),/*#__PURE__*/_jsx(motion.div,{className:\"framer-i3s61n\",\"data-framer-name\":\"Line\",layoutDependency:layoutDependency,layoutId:\"m_oKcXrA7\",style:{backgroundColor:\"var(--token-71ea3e47-bcbd-4707-9061-859b6588ce9a, rgb(145, 145, 145))\"},variants:{QR2Y_5NyP:{backgroundColor:\"var(--token-71ea3e47-bcbd-4707-9061-859b6588ce9a, rgb(117, 117, 117))\"}},children:/*#__PURE__*/_jsx(MotionDivWithFX,{__framer__loop:animation3,__framer__loopEffectEnabled:true,__framer__loopRepeatDelay:0,__framer__loopRepeatType:\"loop\",__framer__loopTransition:transition4,__perspectiveFX:false,__smartComponentFX:true,__targetOpacity:1,className:\"framer-1uywhcs\",layoutDependency:layoutDependency,layoutId:\"q7CFIUqbC\",style:{background:'linear-gradient(0deg, var(--token-ab8a1628-3695-47a5-8496-32bf3ecfdf66, rgb(21, 58, 161)) /* {\"name\":\"Blue\"} */ 0%, var(--token-71ea3e47-bcbd-4707-9061-859b6588ce9a, rgb(145, 145, 145)) /* {\"name\":\"Gray 400\"} */ 100%)',borderBottomLeftRadius:20,borderBottomRightRadius:20,borderTopLeftRadius:20,borderTopRightRadius:20,filter:\"blur(0px)\",WebkitFilter:\"blur(0px)\"},variants:{QR2Y_5NyP:{background:'linear-gradient(0deg, var(--token-ab8a1628-3695-47a5-8496-32bf3ecfdf66, rgb(21, 58, 161)) /* {\"name\":\"Blue\"} */ 0%, var(--token-71ea3e47-bcbd-4707-9061-859b6588ce9a, rgb(117, 117, 117)) /* {\"name\":\"Gray 500\"} */ 100%)'}}})})]})]})]})}),/*#__PURE__*/_jsxs(motion.div,{className:\"framer-1y6sri9\",\"data-framer-name\":\"Info\",layoutDependency:layoutDependency,layoutId:\"j2L8vnmd1\",children:[/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.h3,{className:\"framer-styles-preset-5a4759\",\"data-styles-preset\":\"vKGxKv6WT\",children:\"Title\"})}),className:\"framer-1oycpjh\",fonts:[\"Inter\"],layoutDependency:layoutDependency,layoutId:\"d0W6wpT7m\",style:{\"--framer-link-text-color\":\"rgb(0, 153, 255)\",\"--framer-link-text-decoration\":\"underline\"},text:tLs69h6vu,verticalAlignment:\"top\",withExternalLayout:true}),/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{className:\"framer-styles-preset-f8bv20\",\"data-styles-preset\":\"IZpeieEjn\",children:\"Description\"})}),className:\"framer-l1x8ja\",fonts:[\"Inter\"],layoutDependency:layoutDependency,layoutId:\"itG0cFLcQ\",style:{\"--framer-link-text-color\":\"rgb(0, 153, 255)\",\"--framer-link-text-decoration\":\"underline\"},text:DXWWgGjsz,verticalAlignment:\"top\",withExternalLayout:true})]})]})})})})});});const css=[\"@supports (aspect-ratio: 1) { body { --framer-aspect-ratio-supported: auto; } }\",\".framer-d6InC.framer-1cjr8w5, .framer-d6InC .framer-1cjr8w5 { display: block; }\",\".framer-d6InC.framer-15sq28m { align-content: center; align-items: center; cursor: default; display: flex; flex-direction: row; flex-wrap: nowrap; gap: 0px; height: 429px; justify-content: center; overflow: hidden; padding: 1px; position: relative; width: 374px; will-change: var(--framer-will-change-override, transform); }\",\".framer-d6InC .framer-1nkxpey { align-content: flex-start; align-items: flex-start; display: flex; flex: 1 0 0px; flex-direction: column; flex-wrap: nowrap; gap: 0px; height: 100%; justify-content: flex-start; overflow: hidden; padding: 20px 20px 12px 20px; position: relative; width: 1px; will-change: var(--framer-will-change-override, transform); z-index: 1; }\",\".framer-d6InC .framer-k83yrs { align-content: flex-start; align-items: flex-start; display: flex; flex: 1 0 0px; flex-direction: row; flex-wrap: nowrap; gap: 0px; height: 1px; justify-content: center; overflow: visible; padding: 0px; position: relative; width: 100%; }\",\".framer-d6InC .framer-15galog { align-content: center; align-items: center; display: flex; flex: 1 0 0px; flex-direction: column; flex-wrap: nowrap; gap: 0px; height: 100%; justify-content: center; min-height: 240px; overflow: hidden; padding: 0px; position: relative; width: 1px; }\",\".framer-d6InC .framer-pqtyjh, .framer-d6InC .framer-ptov2s { align-content: center; align-items: center; display: flex; flex: 1 0 0px; flex-direction: row; flex-wrap: nowrap; gap: 12px; height: 1px; justify-content: center; overflow: visible; padding: 0px; position: relative; width: 100%; z-index: 0; }\",\".framer-d6InC .framer-vae97n, .framer-d6InC .framer-1bvwnkp, .framer-d6InC .framer-4s3mka, .framer-d6InC .framer-sy7gol, .framer-d6InC .framer-7nxt9q, .framer-d6InC .framer-1mzp8dk { align-content: center; align-items: center; display: flex; flex: none; flex-direction: column; flex-wrap: nowrap; gap: 0px; height: 100%; justify-content: center; overflow: visible; padding: 0px; position: relative; width: min-content; }\",\".framer-d6InC .framer-1aqpotm, .framer-d6InC .framer-4hcc4o, .framer-d6InC .framer-f379um, .framer-d6InC .framer-1qlm7k, .framer-d6InC .framer-16b0vje, .framer-d6InC .framer-rcb7k7, .framer-d6InC .framer-1xej3p9, .framer-d6InC .framer-1sludu2, .framer-d6InC .framer-g4kst7, .framer-d6InC .framer-1ld11d3, .framer-d6InC .framer-1vxex73, .framer-d6InC .framer-i3s61n { flex: 1 0 0px; height: 1px; overflow: visible; position: relative; width: 1px; }\",\".framer-d6InC .framer-6xippo, .framer-d6InC .framer-1ov3g22, .framer-d6InC .framer-9p5z4o { bottom: -25px; flex: none; height: 31px; left: 0px; overflow: visible; position: absolute; right: 0px; }\",\".framer-d6InC .framer-1gcw5od, .framer-d6InC .framer-xcyan3, .framer-d6InC .framer-h062dl, .framer-d6InC .framer-4r0r8i, .framer-d6InC .framer-1s5ek45, .framer-d6InC .framer-98v7q { flex: none; height: 4px; overflow: hidden; position: relative; width: 5px; will-change: var(--framer-will-change-override, transform); z-index: 1; }\",\".framer-d6InC .framer-ftxmy4 { align-content: center; align-items: center; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; gap: 0px; height: min-content; justify-content: center; overflow: visible; padding: 0px; position: relative; width: 100%; z-index: 1; }\",\".framer-d6InC .framer-yfd843, .framer-d6InC .framer-jwy5ro { align-content: center; align-items: center; display: flex; flex: 1 0 0px; flex-direction: column; flex-wrap: nowrap; gap: 12px; height: min-content; justify-content: center; overflow: visible; padding: 0px; position: relative; width: 1px; z-index: 0; }\",\".framer-d6InC .framer-1mmzuyx, .framer-d6InC .framer-12ca3ip, .framer-d6InC .framer-irpxgc, .framer-d6InC .framer-13jrsyl, .framer-d6InC .framer-1sb0on1, .framer-d6InC .framer-13xn48c { align-content: center; align-items: center; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; gap: 0px; height: 5px; justify-content: center; overflow: visible; padding: 0px; position: relative; width: 100%; }\",\".framer-d6InC .framer-10pvsgy, .framer-d6InC .framer-175r3tp, .framer-d6InC .framer-ebafcx { bottom: 0px; flex: none; overflow: visible; position: absolute; right: -25px; top: 0px; width: 31px; }\",\".framer-d6InC .framer-1oa8p9w, .framer-d6InC .framer-10yyln2, .framer-d6InC .framer-emxqf1, .framer-d6InC .framer-1hjw398, .framer-d6InC .framer-169zr2y, .framer-d6InC .framer-lehp00 { flex: none; height: 5px; overflow: hidden; position: relative; width: 4px; will-change: var(--framer-will-change-override, transform); z-index: 1; }\",\".framer-d6InC .framer-19tkysx { align-content: center; align-items: center; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; gap: 8px; height: 100px; justify-content: center; overflow: visible; padding: 0px; position: relative; width: 100px; z-index: 2; }\",\".framer-d6InC .framer-cpamgf { flex: none; height: 44px; position: relative; white-space: pre-wrap; width: 37px; word-break: break-word; word-wrap: break-word; }\",\".framer-d6InC .framer-1tthfbj, .framer-d6InC .framer-twg7oe, .framer-d6InC .framer-yo0grg { bottom: 0px; flex: none; left: -25px; overflow: visible; position: absolute; top: 0px; width: 31px; }\",\".framer-d6InC .framer-aax5na, .framer-d6InC .framer-jolvdt, .framer-d6InC .framer-1uywhcs { flex: none; height: 31px; left: 0px; overflow: visible; position: absolute; right: 0px; top: -25px; }\",\".framer-d6InC .framer-1y6sri9 { align-content: flex-start; align-items: flex-start; display: flex; flex: none; flex-direction: column; flex-wrap: nowrap; gap: 8px; height: min-content; justify-content: center; overflow: hidden; padding: 8px; position: relative; width: 100%; }\",\".framer-d6InC .framer-1oycpjh { flex: none; height: auto; max-width: 600px; position: relative; white-space: pre-wrap; width: 100%; word-break: break-word; word-wrap: break-word; z-index: 1; }\",\".framer-d6InC .framer-l1x8ja { flex: none; height: auto; max-width: 520px; position: relative; white-space: pre-wrap; width: 100%; word-break: break-word; word-wrap: break-word; z-index: 1; }\",\"@supports (background: -webkit-named-image(i)) and (not (font-palette:dark)) { .framer-d6InC.framer-15sq28m, .framer-d6InC .framer-1nkxpey, .framer-d6InC .framer-k83yrs, .framer-d6InC .framer-15galog, .framer-d6InC .framer-pqtyjh, .framer-d6InC .framer-vae97n, .framer-d6InC .framer-1bvwnkp, .framer-d6InC .framer-4s3mka, .framer-d6InC .framer-ftxmy4, .framer-d6InC .framer-yfd843, .framer-d6InC .framer-1mmzuyx, .framer-d6InC .framer-12ca3ip, .framer-d6InC .framer-irpxgc, .framer-d6InC .framer-19tkysx, .framer-d6InC .framer-jwy5ro, .framer-d6InC .framer-13jrsyl, .framer-d6InC .framer-1sb0on1, .framer-d6InC .framer-13xn48c, .framer-d6InC .framer-ptov2s, .framer-d6InC .framer-sy7gol, .framer-d6InC .framer-7nxt9q, .framer-d6InC .framer-1mzp8dk, .framer-d6InC .framer-1y6sri9 { gap: 0px; } .framer-d6InC.framer-15sq28m > *, .framer-d6InC .framer-k83yrs > *, .framer-d6InC .framer-ftxmy4 > *, .framer-d6InC .framer-1mmzuyx > *, .framer-d6InC .framer-12ca3ip > *, .framer-d6InC .framer-irpxgc > *, .framer-d6InC .framer-13jrsyl > *, .framer-d6InC .framer-1sb0on1 > *, .framer-d6InC .framer-13xn48c > * { margin: 0px; margin-left: calc(0px / 2); margin-right: calc(0px / 2); } .framer-d6InC.framer-15sq28m > :first-child, .framer-d6InC .framer-k83yrs > :first-child, .framer-d6InC .framer-pqtyjh > :first-child, .framer-d6InC .framer-ftxmy4 > :first-child, .framer-d6InC .framer-1mmzuyx > :first-child, .framer-d6InC .framer-12ca3ip > :first-child, .framer-d6InC .framer-irpxgc > :first-child, .framer-d6InC .framer-19tkysx > :first-child, .framer-d6InC .framer-13jrsyl > :first-child, .framer-d6InC .framer-1sb0on1 > :first-child, .framer-d6InC .framer-13xn48c > :first-child, .framer-d6InC .framer-ptov2s > :first-child { margin-left: 0px; } .framer-d6InC.framer-15sq28m > :last-child, .framer-d6InC .framer-k83yrs > :last-child, .framer-d6InC .framer-pqtyjh > :last-child, .framer-d6InC .framer-ftxmy4 > :last-child, .framer-d6InC .framer-1mmzuyx > :last-child, .framer-d6InC .framer-12ca3ip > :last-child, .framer-d6InC .framer-irpxgc > :last-child, .framer-d6InC .framer-19tkysx > :last-child, .framer-d6InC .framer-13jrsyl > :last-child, .framer-d6InC .framer-1sb0on1 > :last-child, .framer-d6InC .framer-13xn48c > :last-child, .framer-d6InC .framer-ptov2s > :last-child { margin-right: 0px; } .framer-d6InC .framer-1nkxpey > *, .framer-d6InC .framer-15galog > *, .framer-d6InC .framer-vae97n > *, .framer-d6InC .framer-1bvwnkp > *, .framer-d6InC .framer-4s3mka > *, .framer-d6InC .framer-sy7gol > *, .framer-d6InC .framer-7nxt9q > *, .framer-d6InC .framer-1mzp8dk > * { margin: 0px; margin-bottom: calc(0px / 2); margin-top: calc(0px / 2); } .framer-d6InC .framer-1nkxpey > :first-child, .framer-d6InC .framer-15galog > :first-child, .framer-d6InC .framer-vae97n > :first-child, .framer-d6InC .framer-1bvwnkp > :first-child, .framer-d6InC .framer-4s3mka > :first-child, .framer-d6InC .framer-yfd843 > :first-child, .framer-d6InC .framer-jwy5ro > :first-child, .framer-d6InC .framer-sy7gol > :first-child, .framer-d6InC .framer-7nxt9q > :first-child, .framer-d6InC .framer-1mzp8dk > :first-child, .framer-d6InC .framer-1y6sri9 > :first-child { margin-top: 0px; } .framer-d6InC .framer-1nkxpey > :last-child, .framer-d6InC .framer-15galog > :last-child, .framer-d6InC .framer-vae97n > :last-child, .framer-d6InC .framer-1bvwnkp > :last-child, .framer-d6InC .framer-4s3mka > :last-child, .framer-d6InC .framer-yfd843 > :last-child, .framer-d6InC .framer-jwy5ro > :last-child, .framer-d6InC .framer-sy7gol > :last-child, .framer-d6InC .framer-7nxt9q > :last-child, .framer-d6InC .framer-1mzp8dk > :last-child, .framer-d6InC .framer-1y6sri9 > :last-child { margin-bottom: 0px; } .framer-d6InC .framer-pqtyjh > *, .framer-d6InC .framer-ptov2s > * { margin: 0px; margin-left: calc(12px / 2); margin-right: calc(12px / 2); } .framer-d6InC .framer-yfd843 > *, .framer-d6InC .framer-jwy5ro > * { margin: 0px; margin-bottom: calc(12px / 2); margin-top: calc(12px / 2); } .framer-d6InC .framer-19tkysx > * { margin: 0px; margin-left: calc(8px / 2); margin-right: calc(8px / 2); } .framer-d6InC .framer-1y6sri9 > * { margin: 0px; margin-bottom: calc(8px / 2); margin-top: calc(8px / 2); } }\",\".framer-d6InC.framer-v-1rshiw7 .framer-1nkxpey { padding: 12px; }\",...sharedStyle.css,...sharedStyle1.css,'.framer-d6InC[data-border=\"true\"]::after, .framer-d6InC [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 429\n * @framerIntrinsicWidth 374\n * @framerCanvasComponentVariantDetails {\"propertyName\":\"variant\",\"data\":{\"default\":{\"layout\":[\"fixed\",\"fixed\"]},\"QR2Y_5NyP\":{\"layout\":[\"fixed\",\"fixed\"]}}}\n * @framerVariables {\"tLs69h6vu\":\"title\",\"DXWWgGjsz\":\"description\"}\n * @framerImmutableVariables true\n * @framerDisplayContentsDiv false\n * @framerComponentViewportWidth true\n */const FramerHfXvyjRaq=withCSS(Component,css,\"framer-d6InC\");export default FramerHfXvyjRaq;FramerHfXvyjRaq.displayName=\"Service cards/Analysis\";FramerHfXvyjRaq.defaultProps={height:429,width:374};addPropertyControls(FramerHfXvyjRaq,{variant:{options:[\"EusG2sP1O\",\"QR2Y_5NyP\"],optionTitles:[\"Desktop\",\"Tablet/phone\"],title:\"Variant\",type:ControlType.Enum},tLs69h6vu:{defaultValue:\"Title\",displayTextArea:false,title:\"Title\",type:ControlType.String},DXWWgGjsz:{defaultValue:\"Description\",displayTextArea:true,title:\"Description\",type:ControlType.String}});addFonts(FramerHfXvyjRaq,[{explicitInter:true,fonts:[{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F\",url:\"https://framerusercontent.com/assets/hyOgCu0Xnghbimh0pE8QTvtt2AU.woff2\",weight:\"600\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116\",url:\"https://framerusercontent.com/assets/NeGmSOXrPBfEFIy5YZeHq17LEDA.woff2\",weight:\"600\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+1F00-1FFF\",url:\"https://framerusercontent.com/assets/oYaAX5himiTPYuN8vLWnqBbfD2s.woff2\",weight:\"600\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0370-03FF\",url:\"https://framerusercontent.com/assets/lEJLP4R0yuCaMCjSXYHtJw72M.woff2\",weight:\"600\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF\",url:\"https://framerusercontent.com/assets/cRJyLNuTJR5jbyKzGi33wU9cqIQ.woff2\",weight:\"600\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD\",url:\"https://framerusercontent.com/assets/1ZFS7N918ojhhd0nQWdj3jz4w.woff2\",weight:\"600\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB\",url:\"https://framerusercontent.com/assets/A0Wcc7NgXMjUuFdquHDrIZpzZw0.woff2\",weight:\"600\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F\",url:\"https://framerusercontent.com/assets/5vvr9Vy74if2I6bQbJvbw7SY1pQ.woff2\",weight:\"400\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116\",url:\"https://framerusercontent.com/assets/EOr0mi4hNtlgWNn9if640EZzXCo.woff2\",weight:\"400\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+1F00-1FFF\",url:\"https://framerusercontent.com/assets/Y9k9QrlZAqio88Klkmbd8VoMQc.woff2\",weight:\"400\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0370-03FF\",url:\"https://framerusercontent.com/assets/OYrD2tBIBPvoJXiIHnLoOXnY9M.woff2\",weight:\"400\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF\",url:\"https://framerusercontent.com/assets/JeYwfuaPfZHQhEG8U5gtPDZ7WQ.woff2\",weight:\"400\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD\",url:\"https://framerusercontent.com/assets/vQyevYAyHtARFwPqUzQGpnDs.woff2\",weight:\"400\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB\",url:\"https://framerusercontent.com/assets/b6Y37FthZeALduNqHicBT6FutY.woff2\",weight:\"400\"}]},...getFontsFromSharedStyle(sharedStyle.fonts),...getFontsFromSharedStyle(sharedStyle1.fonts)],{supportsExplicitInterCodegen:true});\nexport const __FramerMetadata__ = {\"exports\":{\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"default\":{\"type\":\"reactComponent\",\"name\":\"FramerHfXvyjRaq\",\"slots\":[],\"annotations\":{\"framerImmutableVariables\":\"true\",\"framerCanvasComponentVariantDetails\":\"{\\\"propertyName\\\":\\\"variant\\\",\\\"data\\\":{\\\"default\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"QR2Y_5NyP\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]}}}\",\"framerComponentViewportWidth\":\"true\",\"framerContractVersion\":\"1\",\"framerDisplayContentsDiv\":\"false\",\"framerIntrinsicHeight\":\"429\",\"framerVariables\":\"{\\\"tLs69h6vu\\\":\\\"title\\\",\\\"DXWWgGjsz\\\":\\\"description\\\"}\",\"framerIntrinsicWidth\":\"374\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./HfXvyjRaq.map", "import{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{useReducer,useState}from\"react\";import{ControlType,addPropertyControls}from\"framer\";import{useIsOnCanvas,emptyStateStyle,containerStyles,defaultEvents,useRadius,borderRadiusControl}from\"https://framer.com/m/framer/default-utils.js@^0.45.0\";var PlayOptions;(function(PlayOptions){PlayOptions[\"Normal\"]=\"Off\";PlayOptions[\"Auto\"]=\"On\";PlayOptions[\"Loop\"]=\"Loop\";})(PlayOptions||(PlayOptions={}));var ThumbnailOptions;(function(ThumbnailOptions){ThumbnailOptions[\"High\"]=\"High Quality\";ThumbnailOptions[\"Medium\"]=\"Medium Quality\";ThumbnailOptions[\"Low\"]=\"Low Quality\";ThumbnailOptions[\"Off\"]=\"Off\";})(ThumbnailOptions||(ThumbnailOptions={}));/**\n * @framerIntrinsicWidth 560\n * @framerIntrinsicHeight 315\n *\n * @framerSupportedLayoutWidth fixed\n * @framerSupportedLayoutHeight fixed\n *\n * @framerComponentPresetProps isRed, borderRadius\n */export function Youtube({url,play,shouldMute,thumbnail,isRed,onClick,onMouseEnter,onMouseLeave,onMouseDown,onMouseUp,title,...props}){const onCanvas=useIsOnCanvas();const isAutoplay=play!==\"Off\";const showThumbnail=onCanvas||thumbnail!==\"Off\"&&!isAutoplay;const[isPreloading,preloadVideo]=useReducer(()=>true,false);const[showVideo,startVideo]=useReducer(()=>true,!showThumbnail);const[isHovered,setHovered]=useState(false);const borderRadius=useRadius(props);const hasBorderRadius=borderRadius!==\"0px 0px 0px 0px\"&&borderRadius!==\"0px\";if(url===\"\"){return /*#__PURE__*/_jsx(Instructions,{});}const parsedURL=parseVideoURL(url);if(parsedURL===undefined){return /*#__PURE__*/_jsx(ErrorMessage,{message:\"Invalid Youtube URL.\"});}const[videoId,embedURL]=parsedURL;// https://developers.google.com/youtube/player_parameters\nconst searchParams=embedURL.searchParams;searchParams.set(\"iv_load_policy\",\"3\");searchParams.set(\"rel\",\"0\");searchParams.set(\"modestbranding\",\"1\");searchParams.set(\"playsinline\",\"1\");if(!showVideo){// if a browser does not support `loading=lazy`, make sure the video doesn't start playing in the background\nsearchParams.set(\"autoplay\",\"0\");}else if(isAutoplay||// when there is no thumbnail, we don't want to autoplay, unless video is started\nshowThumbnail&&showVideo){searchParams.set(\"autoplay\",\"1\");}if(isAutoplay&&shouldMute){searchParams.set(\"mute\",\"1\");}if(play===\"Loop\"){searchParams.set(\"loop\",\"1\");searchParams.set(\"playlist\",videoId);}if(!isRed){searchParams.set(\"color\",\"white\");}const iframeProps={title:title||\"Youtube Video\",allow:\"presentation; fullscreen; accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture\",src:embedURL.href,frameBorder:\"0\",onClick,onMouseEnter,onMouseLeave,onMouseDown,onMouseUp};return /*#__PURE__*/_jsxs(\"article\",{onPointerEnter:()=>setHovered(true),onPointerLeave:()=>setHovered(false),onPointerOver:preloadVideo,onKeyDown:startVideo,onClick:startVideo,style:{...wrapperStyle,borderRadius,transform:// Safari sometimes struggles to render border-radius:\n// - on the canvas when changing from 0 to any other value\n// - or when rendering an iframe\nhasBorderRadius&&(showVideo||onCanvas)?\"translateZ(0.000001px)\":\"unset\",cursor:\"pointer\",overflow:\"hidden\"},role:\"presentation\",children:[isPreloading&&/*#__PURE__*/_jsx(\"link\",{rel:\"preconnect\",href:\"https://www.youtube.com\"}),isPreloading&&/*#__PURE__*/_jsx(\"link\",{rel:\"preconnect\",href:\"https://www.google.com\"}),/*#__PURE__*/_jsx(\"div\",{style:{...videoStyle,background:showThumbnail?`center / cover url(${getThumbnailURL(videoId,thumbnail)}) no-repeat`:undefined}}),!onCanvas?/*#__PURE__*/_jsx(\"iframe\",{loading:!showVideo?\"lazy\":undefined,style:!showVideo?{...videoStyle,display:\"none\"}:videoStyle,...iframeProps}):null,showVideo?null:/*#__PURE__*/_jsx(PlayButton,{onClick:startVideo,isHovered:isHovered,isRed:isRed})]});}Youtube.displayName=\"YouTube\";addPropertyControls(Youtube,{url:{type:ControlType.String,title:\"Video\"},play:{type:ControlType.Enum,title:\"Autoplay\",options:Object.values(PlayOptions)},shouldMute:{title:\"Mute\",type:ControlType.Boolean,enabledTitle:\"Yes\",disabledTitle:\"No\",hidden(props){return props.play===\"Off\";}},thumbnail:{title:\"Thumbnail\",description:\"Showing a thumbnail improves performance.\",type:ControlType.Enum,options:Object.values(ThumbnailOptions),hidden(props){return props.play!==\"Off\";}},isRed:{title:\"Color\",type:ControlType.Boolean,enabledTitle:\"Red\",disabledTitle:\"White\"},...borderRadiusControl,...defaultEvents});const defaultProps={url:\"https://youtu.be/smPos0mJvh8\",play:\"Off\",shouldMute:true,thumbnail:\"Medium Quality\",isRed:true};Youtube.defaultProps=defaultProps;function parseVideoURL(urlString){let url;try{url=new URL(urlString);}catch{const embedURL=getEmbedURL(urlString);return[urlString,embedURL];}if(url.hostname===\"youtube.com\"||url.hostname===\"www.youtube.com\"||url.hostname===\"youtube-nocookie.com\"||url.hostname===\"www.youtube-nocookie.com\"){const pathSegments=url.pathname.slice(1).split(\"/\");// https://www.youtube.com/watch?v=Fop2oskTug8\nif(pathSegments[0]===\"watch\"){const videoId=url.searchParams.get(\"v\");const embedURL=getEmbedURL(videoId);return[videoId,embedURL];}// https://www.youtube.com/embed/Fop2oskTug8\nif(pathSegments[0]===\"embed\"){const videoId=pathSegments[1];return[videoId,url];}// https://www.youtube.com/shorts/zwMEhBq4kYM\nif(pathSegments[0]===\"shorts\"){const videoId=pathSegments[1];const embedURL=getEmbedURL(videoId);return[videoId,embedURL];}}// https://youtu.be/Fop2oskTug8\nif(url.hostname===\"youtu.be\"){const videoId=url.pathname.slice(1);const embedURL=getEmbedURL(videoId);return[videoId,embedURL];}}function getEmbedURL(videoId){return new URL(`https://www.youtube.com/embed/${videoId}`);}function getThumbnailURL(videoId,res){// https://gist.github.com/a1ip/be4514c1fd392a8c13b05e082c4da363\nconst pre=\"https://i.ytimg.com/vi_webp/\";const ext=\"webp\";switch(res){case\"Low Quality\":return`${pre}${videoId}/hqdefault.${ext}`;case\"Medium Quality\":return`${pre}${videoId}/sddefault.${ext}`;case\"High Quality\":return`${pre}${videoId}/maxresdefault.${ext}`;default:return`${pre}${videoId}/0.${ext}`;}}// Helper components\nfunction Instructions(){return /*#__PURE__*/_jsx(\"div\",{style:{...emptyStateStyle,overflow:\"hidden\"},children:/*#__PURE__*/_jsx(\"div\",{style:centerTextStyle,children:\"To embed a Youtube video, add the URL to the properties\\xa0panel.\"})});}function ErrorMessage({message}){return /*#__PURE__*/_jsx(\"div\",{className:\"framerInternalUI-errorPlaceholder\",style:{...containerStyles,overflow:\"hidden\"},children:/*#__PURE__*/_jsxs(\"div\",{style:centerTextStyle,children:[\"Error: \",message]})});}function PlayButton({onClick,isHovered,isRed}){return /*#__PURE__*/_jsx(\"button\",{onClick:onClick,\"aria-label\":\"Play\",style:buttonStyle,children:/*#__PURE__*/_jsxs(\"svg\",{height:\"100%\",version:\"1.1\",viewBox:\"0 0 68 48\",width:\"100%\",children:[/*#__PURE__*/_jsx(\"path\",{d:\"M66.52,7.74c-0.78-2.93-2.49-5.41-5.42-6.19C55.79,.13,34,0,34,0S12.21,.13,6.9,1.55 C3.97,2.33,2.27,4.81,1.48,7.74C0.06,13.05,0,24,0,24s0.06,10.95,1.48,16.26c0.78,2.93,2.49,5.41,5.42,6.19 C12.21,47.87,34,48,34,48s21.79-0.13,27.1-1.55c2.93-0.78,4.64-3.26,5.42-6.19C67.94,34.95,68,24,68,24S67.94,13.05,66.52,7.74z\",fill:isHovered?isRed?\"#f00\":\"#000\":\"#212121\",fillOpacity:isHovered?isRed?1:.8:.8,style:{transition:\"fill .1s cubic-bezier(0.4, 0, 1, 1), fill-opacity .1s cubic-bezier(0.4, 0, 1, 1)\"}}),/*#__PURE__*/_jsx(\"path\",{d:\"M 45,24 27,14 27,34\",fill:\"#fff\"})]})});}const buttonStyle={position:\"absolute\",top:\"50%\",left:\"50%\",transform:\"translate(-50%, -50%)\",width:68,height:48,padding:0,border:\"none\",background:\"transparent\",cursor:\"pointer\"};const wrapperStyle={position:\"relative\",width:\"100%\",height:\"100%\"};const centerTextStyle={textAlign:\"center\",minWidth:140};const videoStyle={position:\"absolute\",top:0,left:0,height:\"100%\",width:\"100%\"};\nexport const __FramerMetadata__ = {\"exports\":{\"Youtube\":{\"type\":\"reactComponent\",\"name\":\"Youtube\",\"slots\":[],\"annotations\":{\"framerSupportedLayoutWidth\":\"fixed\",\"framerIntrinsicHeight\":\"315\",\"framerContractVersion\":\"1\",\"framerIntrinsicWidth\":\"560\",\"framerComponentPresetProps\":\"isRed, borderRadius\",\"framerSupportedLayoutHeight\":\"fixed\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./YouTube.map", "// Generated by Framer (013b13c)\nimport{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{addFonts,addPropertyControls,ComponentViewportProvider,ControlType,cx,getFonts,getFontsFromSharedStyle,getPropertyControls,RichText,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{Video}from\"https://framerusercontent.com/modules/lRDHiNWNVWmE0lqtoVHP/7qT0r3So12155VV5Jq5x/Video.js\";import{Youtube as YouTube}from\"https://framerusercontent.com/modules/NEd4VmDdsxM3StIUbddO/8aCGinfRQO68tQ3QF42d/YouTube.js\";import{Icon as Phosphor}from\"https://framerusercontent.com/modules/tYScH7LTqUtz5KUaUAYP/p8dptk4UIND8hbFWz9V7/Phosphor.js\";import*as sharedStyle from\"https://framerusercontent.com/modules/yhwxvTNo3tHUNTZTCUXd/rnjts2scwUlJE6DcMt7a/IZpeieEjn.js\";import*as sharedStyle1 from\"https://framerusercontent.com/modules/s1wXpYYf2GX4ofFesE8d/4El76fvq2TUHYwvG0c1v/QYfoYIhhT.js\";const PhosphorFonts=getFonts(Phosphor);const YouTubeFonts=getFonts(YouTube);const VideoFonts=getFonts(Video);const VideoControls=getPropertyControls(Video);const enabledGestures={N4IJn_koA:{hover:true}};const cycleOrder=[\"N4IJn_koA\",\"b4uFbTahj\",\"zb_TwGR17\"];const serializationHash=\"framer-wrPUo\";const variantClassNames={b4uFbTahj:\"framer-v-l7bvoi\",N4IJn_koA:\"framer-v-4ksw1h\",zb_TwGR17:\"framer-v-5yl0xh\"};function addPropertyOverrides(overrides,...variants){const nextOverrides={};variants?.forEach(variant=>variant&&Object.assign(nextOverrides,overrides[variant]));return nextOverrides;}const transition1={damping:60,delay:0,mass:1,stiffness:400,type:\"spring\"};const convertFromEnum=(value,activeLocale)=>{switch(value){case\"AvhcQtMgm\":return true;case\"JMCHy6Jkj\":return false;default:return true;}};const toBoolean=value=>{return Boolean(value);};const transformTemplate1=(_,t)=>`translate(-50%, -50%) ${t}`;const animation={filter:\"blur(10px)\",opacity:.001,rotate:0,scale:1,skewX:0,skewY:0,x:0,y:10};const transition2={bounce:0,delay:.05,duration:.4,type:\"spring\"};const textEffect={effect:animation,tokenization:\"character\",transition:transition2,trigger:\"onInView\",type:\"appear\"};const convertFromEnum1=(value,activeLocale)=>{switch(value){case\"AvhcQtMgm\":return false;case\"JMCHy6Jkj\":return true;default:return true;}};const toImageSrc=value=>{if(typeof value===\"object\"&&value!==null&&typeof value.src===\"string\"){return value.src;}return typeof value===\"string\"?value:undefined;};const Transition=({value,children})=>{const config=React.useContext(MotionConfigContext);const transition=value??config.transition;const contextValue=React.useMemo(()=>({...config,transition}),[JSON.stringify(transition)]);return /*#__PURE__*/_jsx(MotionConfigContext.Provider,{value:contextValue,children:children});};const Variants=motion.create(React.Fragment);const humanReadableEnumMap={\"Video player\":\"AvhcQtMgm\",Youtube:\"JMCHy6Jkj\"};const humanReadableVariantMap={\"Tablet/Phone\":\"zb_TwGR17\",\"Video player - play\":\"b4uFbTahj\",\"Video player\":\"N4IJn_koA\"};const getProps=({height,id,text,videoFile,videoPlayerYoutube,videoPoster,videoPoster1,width,youtubeLink,...props})=>{return{...props,F4L34O8Rv:humanReadableEnumMap[videoPlayerYoutube]??videoPlayerYoutube??props.F4L34O8Rv??\"AvhcQtMgm\",hlzoOERZk:videoFile??props.hlzoOERZk,JL8Y7mSiZ:videoPoster??props.JL8Y7mSiZ,Mg2lPdiRN:text??props.Mg2lPdiRN??\"How We Work\",NIdlvIwGn:videoPoster1??props.NIdlvIwGn,q7pw1mcVM:youtubeLink??props.q7pw1mcVM??\"https://youtu.be/smPos0mJvh8\",variant:humanReadableVariantMap[props.variant]??props.variant??\"N4IJn_koA\"};};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,Mg2lPdiRN,F4L34O8Rv,hlzoOERZk,JL8Y7mSiZ,NIdlvIwGn,q7pw1mcVM,...restProps}=getProps(props);const{baseVariant,classNames,clearLoadingGesture,gestureHandlers,gestureVariant,isLoading,setGestureState,setVariant,variants}=useVariantState({cycleOrder,defaultVariant:\"N4IJn_koA\",enabledGestures,ref:refBinding,variant,variantClassNames});const layoutDependency=createLayoutDependency(props,variants);const{activeVariantCallback,delay}=useActiveVariantCallback(baseVariant);const onTap1fb2sjq=activeVariantCallback(async(...args)=>{setVariant(\"b4uFbTahj\");});const sharedStyleClassNames=[sharedStyle.className,sharedStyle1.className];const scopingClassNames=cx(serializationHash,...sharedStyleClassNames);const visible=toBoolean(convertFromEnum(F4L34O8Rv,activeLocale));const isDisplayed=value=>{if(baseVariant===\"b4uFbTahj\")return false;return value;};const isDisplayed1=()=>{if(gestureVariant===\"N4IJn_koA-hover\")return true;if(baseVariant===\"zb_TwGR17\")return true;return false;};const visible1=toBoolean(convertFromEnum1(F4L34O8Rv,activeLocale));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-4ksw1h\",className,classNames),\"data-border\":true,\"data-framer-name\":\"Video player\",layoutDependency:layoutDependency,layoutId:\"N4IJn_koA\",ref:refBinding,style:{\"--border-bottom-width\":\"1px\",\"--border-color\":\"var(--token-ef727c83-0227-4900-b478-e0fde1daabc5, rgb(38, 38, 38))\",\"--border-left-width\":\"1px\",\"--border-right-width\":\"1px\",\"--border-style\":\"solid\",\"--border-top-width\":\"1px\",backgroundColor:\"var(--token-7be8625f-297b-4b2a-908d-7056e5d82d0a, rgb(5, 5, 5))\",borderBottomLeftRadius:12,borderBottomRightRadius:12,borderTopLeftRadius:12,borderTopRightRadius:12,...style},...addPropertyOverrides({\"N4IJn_koA-hover\":{\"data-framer-name\":undefined},b4uFbTahj:{\"data-framer-name\":\"Video player - play\"},zb_TwGR17:{\"data-framer-name\":\"Tablet/Phone\"}},baseVariant,gestureVariant),children:[isDisplayed(visible)&&/*#__PURE__*/_jsxs(motion.div,{className:\"framer-1kf10eo\",\"data-border\":true,\"data-highlight\":true,layoutDependency:layoutDependency,layoutId:\"yUGzlBfHt\",onTap:onTap1fb2sjq,style:{\"--border-bottom-width\":\"1px\",\"--border-color\":\"var(--token-ef727c83-0227-4900-b478-e0fde1daabc5, rgb(38, 38, 38))\",\"--border-left-width\":\"1px\",\"--border-right-width\":\"1px\",\"--border-style\":\"solid\",\"--border-top-width\":\"1px\",background:'linear-gradient(180deg, var(--token-7be8625f-297b-4b2a-908d-7056e5d82d0a, rgb(5, 5, 5)) /* {\"name\":\"Black\"} */ 0%, var(--token-fac97835-8102-4c2d-a364-9b29482fa5eb, rgb(18, 18, 18)) /* {\"name\":\"Black 900\"} */ 100%)',borderBottomLeftRadius:53,borderBottomRightRadius:53,borderTopLeftRadius:53,borderTopRightRadius:53},transformTemplate:transformTemplate1,children:[/*#__PURE__*/_jsx(ComponentViewportProvider,{children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-qv3f5h-container\",isAuthoredByUser:true,isModuleExternal:true,layoutDependency:layoutDependency,layoutId:\"ksYqIQgBX-container\",nodeId:\"ksYqIQgBX\",rendersWithMotion:true,scopeId:\"OwraS6EHV\",children:/*#__PURE__*/_jsx(Phosphor,{color:\"var(--token-d085bc1e-c0c1-4753-8ee2-8e531ff7b917, rgb(242, 242, 242))\",height:\"100%\",iconSearch:\"House\",iconSelection:\"Play\",id:\"ksYqIQgBX\",layoutId:\"ksYqIQgBX\",mirrored:false,selectByList:true,style:{height:\"100%\",width:\"100%\"},weight:\"duotone\",width:\"100%\"})})}),isDisplayed1()&&/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{className:\"framer-styles-preset-f8bv20\",\"data-styles-preset\":\"IZpeieEjn\",style:{\"--framer-text-color\":\"var(--extracted-r6o4lv, var(--token-8e562c71-b86d-432e-ad04-cd3f03e73a71, rgb(255, 255, 255)))\"},children:\"How we work\"})}),className:\"framer-ucr0x6\",effect:textEffect,fonts:[\"Inter\"],layoutDependency:layoutDependency,layoutId:\"UZeoxX9o5\",style:{\"--extracted-r6o4lv\":\"var(--token-8e562c71-b86d-432e-ad04-cd3f03e73a71, rgb(255, 255, 255))\",\"--framer-link-text-color\":\"rgb(0, 153, 255)\",\"--framer-link-text-decoration\":\"underline\",opacity:0},text:Mg2lPdiRN,variants:{\"N4IJn_koA-hover\":{opacity:1},zb_TwGR17:{opacity:1}},verticalAlignment:\"top\",withExternalLayout:true,...addPropertyOverrides({zb_TwGR17:{children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{className:\"framer-styles-preset-1ecbodc\",\"data-styles-preset\":\"QYfoYIhhT\",style:{\"--framer-text-color\":\"var(--extracted-r6o4lv, var(--token-8e562c71-b86d-432e-ad04-cd3f03e73a71, rgb(255, 255, 255)))\"},children:\"How We Work\"})}),effect:undefined}},baseVariant,gestureVariant)})]}),visible1&&/*#__PURE__*/_jsx(ComponentViewportProvider,{children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-1r6wrto-container\",isAuthoredByUser:true,isModuleExternal:true,layoutDependency:layoutDependency,layoutId:\"NJmAvWqeZ-container\",nodeId:\"NJmAvWqeZ\",rendersWithMotion:true,scopeId:\"OwraS6EHV\",style:{opacity:.4},variants:{\"N4IJn_koA-hover\":{opacity:.7},b4uFbTahj:{opacity:1}},children:/*#__PURE__*/_jsx(YouTube,{borderRadius:0,bottomLeftRadius:0,bottomRightRadius:0,height:\"100%\",id:\"NJmAvWqeZ\",isMixedBorderRadius:false,isRed:true,layoutId:\"NJmAvWqeZ\",play:\"Off\",shouldMute:true,style:{height:\"100%\",width:\"100%\"},thumbnail:\"Medium Quality\",topLeftRadius:0,topRightRadius:0,url:q7pw1mcVM,width:\"100%\",...addPropertyOverrides({b4uFbTahj:{play:\"On\"}},baseVariant,gestureVariant)})})}),visible&&/*#__PURE__*/_jsx(motion.div,{className:\"framer-5xcq7v\",\"data-framer-name\":\"Video\",\"data-highlight\":true,layoutDependency:layoutDependency,layoutId:\"a1AO4DR5y\",onTap:onTap1fb2sjq,style:{borderBottomLeftRadius:12,borderBottomRightRadius:12,borderTopLeftRadius:12,borderTopRightRadius:12},children:/*#__PURE__*/_jsx(ComponentViewportProvider,{children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-1snf6sq-container\",isAuthoredByUser:true,isModuleExternal:true,layoutDependency:layoutDependency,layoutId:\"bY7MEXhXI-container\",nodeId:\"bY7MEXhXI\",rendersWithMotion:true,scopeId:\"OwraS6EHV\",style:{opacity:.4},variants:{\"N4IJn_koA-hover\":{opacity:.7},b4uFbTahj:{opacity:1}},children:/*#__PURE__*/_jsx(Video,{backgroundColor:\"rgba(0, 0, 0, 0)\",borderRadius:12,bottomLeftRadius:12,bottomRightRadius:12,controls:false,height:\"100%\",id:\"bY7MEXhXI\",isMixedBorderRadius:false,layoutId:\"bY7MEXhXI\",loop:true,muted:true,objectFit:\"cover\",playing:false,poster:toImageSrc(NIdlvIwGn),posterEnabled:JL8Y7mSiZ,srcFile:hlzoOERZk,srcType:\"Upload\",srcUrl:\"https://framerusercontent.com/assets/MLWPbW1dUQawJLhhun3dBwpgJak.mp4\",startTime:0,style:{height:\"100%\",width:\"100%\"},topLeftRadius:12,topRightRadius:12,volume:25,width:\"100%\",...addPropertyOverrides({b4uFbTahj:{controls:true,muted:false,playing:true},zb_TwGR17:{posterEnabled:false}},baseVariant,gestureVariant)})})})})]})})})});});const css=[\"@supports (aspect-ratio: 1) { body { --framer-aspect-ratio-supported: auto; } }\",\".framer-wrPUo.framer-237wlo, .framer-wrPUo .framer-237wlo { display: block; }\",\".framer-wrPUo.framer-4ksw1h { align-content: center; align-items: center; cursor: pointer; display: flex; flex-direction: row; flex-wrap: nowrap; gap: 0px; height: 450px; justify-content: center; overflow: hidden; padding: 0px; position: relative; width: 800px; will-change: var(--framer-will-change-override, transform); }\",\".framer-wrPUo .framer-1kf10eo { align-content: center; align-items: center; cursor: pointer; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; gap: 8px; height: min-content; justify-content: center; left: 50%; overflow: visible; padding: 24px; position: absolute; top: 50%; width: min-content; z-index: 1; }\",\".framer-wrPUo .framer-qv3f5h-container { flex: none; height: 24px; position: relative; width: 24px; }\",\".framer-wrPUo .framer-ucr0x6 { flex: none; height: auto; position: relative; white-space: pre; width: auto; }\",\".framer-wrPUo .framer-1r6wrto-container, .framer-wrPUo .framer-1snf6sq-container { flex: 1 0 0px; height: 100%; position: relative; width: 1px; }\",\".framer-wrPUo .framer-5xcq7v { align-content: center; align-items: center; cursor: pointer; display: flex; flex: 1 0 0px; flex-direction: row; flex-wrap: nowrap; gap: 8px; height: 100%; justify-content: center; overflow: visible; padding: 0px; position: relative; width: 1px; z-index: 0; }\",\"@supports (background: -webkit-named-image(i)) and (not (font-palette:dark)) { .framer-wrPUo.framer-4ksw1h, .framer-wrPUo .framer-1kf10eo, .framer-wrPUo .framer-5xcq7v { gap: 0px; } .framer-wrPUo.framer-4ksw1h > * { margin: 0px; margin-left: calc(0px / 2); margin-right: calc(0px / 2); } .framer-wrPUo.framer-4ksw1h > :first-child, .framer-wrPUo .framer-1kf10eo > :first-child, .framer-wrPUo .framer-5xcq7v > :first-child { margin-left: 0px; } .framer-wrPUo.framer-4ksw1h > :last-child, .framer-wrPUo .framer-1kf10eo > :last-child, .framer-wrPUo .framer-5xcq7v > :last-child { margin-right: 0px; } .framer-wrPUo .framer-1kf10eo > *, .framer-wrPUo .framer-5xcq7v > * { margin: 0px; margin-left: calc(8px / 2); margin-right: calc(8px / 2); } }\",\".framer-wrPUo.framer-v-l7bvoi.framer-4ksw1h, .framer-wrPUo.framer-v-5yl0xh.framer-4ksw1h { cursor: unset; }\",\".framer-wrPUo.framer-v-5yl0xh .framer-qv3f5h-container { height: 20px; width: 20px; }\",...sharedStyle.css,...sharedStyle1.css,'.framer-wrPUo[data-border=\"true\"]::after, .framer-wrPUo [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 450\n * @framerIntrinsicWidth 800\n * @framerCanvasComponentVariantDetails {\"propertyName\":\"variant\",\"data\":{\"default\":{\"layout\":[\"fixed\",\"fixed\"]},\"b4uFbTahj\":{\"layout\":[\"fixed\",\"fixed\"]},\"zb_TwGR17\":{\"layout\":[\"fixed\",\"fixed\"]},\"r0RnifIBF\":{\"layout\":[\"fixed\",\"fixed\"]}}}\n * @framerVariables {\"Mg2lPdiRN\":\"text\",\"F4L34O8Rv\":\"videoPlayerYoutube\",\"hlzoOERZk\":\"videoFile\",\"JL8Y7mSiZ\":\"videoPoster\",\"NIdlvIwGn\":\"videoPoster1\",\"q7pw1mcVM\":\"youtubeLink\"}\n * @framerImmutableVariables true\n * @framerDisplayContentsDiv false\n * @framerComponentViewportWidth true\n */const FramerOwraS6EHV=withCSS(Component,css,\"framer-wrPUo\");export default FramerOwraS6EHV;FramerOwraS6EHV.displayName=\"Hero video\";FramerOwraS6EHV.defaultProps={height:450,width:800};addPropertyControls(FramerOwraS6EHV,{variant:{options:[\"N4IJn_koA\",\"b4uFbTahj\",\"zb_TwGR17\"],optionTitles:[\"Video player\",\"Video player - play\",\"Tablet/Phone\"],title:\"Variant\",type:ControlType.Enum},Mg2lPdiRN:{defaultValue:\"How We Work\",displayTextArea:false,title:\"Text\",type:ControlType.String},F4L34O8Rv:{defaultValue:\"AvhcQtMgm\",description:\"Show video player or Youtube\",options:[\"AvhcQtMgm\",\"JMCHy6Jkj\"],optionTitles:[\"Video player\",\"Youtube\"],title:\"Video player/Youtube\",type:ControlType.Enum},hlzoOERZk:VideoControls?.[\"srcFile\"]&&{...VideoControls[\"srcFile\"],__defaultAssetReference:\"\",description:\".mp4\",hidden:undefined,title:\"Video file\"},JL8Y7mSiZ:{defaultValue:false,title:\"Video poster\",type:ControlType.Boolean},NIdlvIwGn:{title:\"Video poster\",type:ControlType.ResponsiveImage},q7pw1mcVM:{defaultValue:\"https://youtu.be/smPos0mJvh8\",title:\"Youtube link\",type:ControlType.String}});addFonts(FramerOwraS6EHV,[{explicitInter:true,fonts:[{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F\",url:\"https://framerusercontent.com/assets/5vvr9Vy74if2I6bQbJvbw7SY1pQ.woff2\",weight:\"400\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116\",url:\"https://framerusercontent.com/assets/EOr0mi4hNtlgWNn9if640EZzXCo.woff2\",weight:\"400\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+1F00-1FFF\",url:\"https://framerusercontent.com/assets/Y9k9QrlZAqio88Klkmbd8VoMQc.woff2\",weight:\"400\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0370-03FF\",url:\"https://framerusercontent.com/assets/OYrD2tBIBPvoJXiIHnLoOXnY9M.woff2\",weight:\"400\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF\",url:\"https://framerusercontent.com/assets/JeYwfuaPfZHQhEG8U5gtPDZ7WQ.woff2\",weight:\"400\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD\",url:\"https://framerusercontent.com/assets/vQyevYAyHtARFwPqUzQGpnDs.woff2\",weight:\"400\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB\",url:\"https://framerusercontent.com/assets/b6Y37FthZeALduNqHicBT6FutY.woff2\",weight:\"400\"}]},...PhosphorFonts,...YouTubeFonts,...VideoFonts,...getFontsFromSharedStyle(sharedStyle.fonts),...getFontsFromSharedStyle(sharedStyle1.fonts)],{supportsExplicitInterCodegen:true});\nexport const __FramerMetadata__ = {\"exports\":{\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"default\":{\"type\":\"reactComponent\",\"name\":\"FramerOwraS6EHV\",\"slots\":[],\"annotations\":{\"framerVariables\":\"{\\\"Mg2lPdiRN\\\":\\\"text\\\",\\\"F4L34O8Rv\\\":\\\"videoPlayerYoutube\\\",\\\"hlzoOERZk\\\":\\\"videoFile\\\",\\\"JL8Y7mSiZ\\\":\\\"videoPoster\\\",\\\"NIdlvIwGn\\\":\\\"videoPoster1\\\",\\\"q7pw1mcVM\\\":\\\"youtubeLink\\\"}\",\"framerContractVersion\":\"1\",\"framerIntrinsicHeight\":\"450\",\"framerCanvasComponentVariantDetails\":\"{\\\"propertyName\\\":\\\"variant\\\",\\\"data\\\":{\\\"default\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"b4uFbTahj\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"zb_TwGR17\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"r0RnifIBF\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]}}}\",\"framerImmutableVariables\":\"true\",\"framerComponentViewportWidth\":\"true\",\"framerIntrinsicWidth\":\"800\",\"framerDisplayContentsDiv\":\"false\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./OwraS6EHV.map", "import{MotionValue}from\"framer\";// Basic MotionValue check\nexport const isMotionValue=v=>v instanceof MotionValue;\nexport const __FramerMetadata__ = {\"exports\":{\"isMotionValue\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./isMotionValue.map", "import{useCallback,useEffect,useRef}from\"react\";import{motionValue,animate,RenderTarget}from\"framer\";import{isMotionValue}from\"https://framerusercontent.com/modules/3mKFSGQqKHV82uOV1eBc/TbXI1XaZFNevVKcgIt7G/isMotionValue.js\";import{useConstant}from\"https://framerusercontent.com/modules/ExNgrA7EJTKUPpH6vIlN/eiOrSJ2Ab5M9jPCvVwUz/useConstant.js\";export function useAutoMotionValue(inputValue,options){// Put options on a local ref\n// Might wanna just memo instead but it works for now\nconst optionsRef=useRef(options);const animation=useRef();const didInitialMount=useRef(false);const isOnCanvas=RenderTarget.current()===RenderTarget.canvas;// in-progress - trying to figure out effect hooks\nconst onChangeDeps=(options===null||options===void 0?void 0:options.onChangeDeps)?options.onChangeDeps:[];// Memoize the onChange handler\nconst onChange=useCallback(options===null||options===void 0?void 0:options.onChange,[...onChangeDeps,]);// Optionally scale the value from props\nconst transformer=useCallback(value=>{var ref;return((ref=optionsRef.current)===null||ref===void 0?void 0:ref.transform)?optionsRef.current.transform(value):value;},[]);// Create new MotionValue from inputValue\nconst value1=useConstant(()=>isMotionValue(inputValue)?inputValue:motionValue(transformer(inputValue)));// Setting value from prop change\nuseEffect(()=>{if(!isMotionValue(inputValue)&&didInitialMount.current){var ref,ref1;const newValue=transformer(inputValue);(ref=animation.current)===null||ref===void 0?void 0:ref.stop();// Call change callback\nif(onChange)onChange(newValue,value1);// Trigger animation to new value\nif(((ref1=optionsRef.current)===null||ref1===void 0?void 0:ref1.animate)&&!isOnCanvas){var ref2;// @ts-ignore\nanimation.current=animate(value1,newValue,(ref2=optionsRef.current)===null||ref2===void 0?void 0:ref2.transition);}else{value1.set(newValue);}}didInitialMount.current=true;},[inputValue,...onChangeDeps]);return value1;}\nexport const __FramerMetadata__ = {\"exports\":{\"useAutoMotionValue\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./useAutoMotionValue.map", "var _global = typeof globalThis !== \"undefined\" ? globalThis : typeof self !== \"undefined\" ? self : global;\n\nvar exports = {};\ntypeof navigator !== \"undefined\" && function (root, factory) {\n  if (exports) {\n    exports = factory(root);\n  } else {\n    root.lottie = factory(root);\n    root.bodymovin = root.lottie;\n  }\n}(window || {}, function (window) {\n  /* global locationHref:writable, animationManager, subframeEnabled:writable, defaultCurveSegments:writable, roundValues,\r\n  expressionsPlugin:writable, PropertyFactory, ShapePropertyFactory, Matrix */\n\n  /* exported locationHref, subframeEnabled, expressionsPlugin */\n  'use strict';\n  /* exported svgNS, locationHref, initialDefaultFrame */\n\n  var svgNS = \"http://www.w3.org/2000/svg\";\n  var locationHref = \"\";\n  var initialDefaultFrame = -999999;\n  /* global createSizedArray */\n\n  /* exported subframeEnabled, expressionsPlugin, isSafari, cachedColors, bmPow, bmSqrt, bmFloor, bmMax, bmMin, ProjectInterface,\r\n  defaultCurveSegments, degToRads, roundCorner, bmRnd, styleDiv, BMEnterFrameEvent, BMCompleteEvent, BMCompleteLoopEvent,\r\n  BMSegmentStartEvent, BMDestroyEvent, BMRenderFrameErrorEvent, BMConfigErrorEvent, BMAnimationConfigErrorEvent, createElementID,\r\n  addSaturationToRGB, addBrightnessToRGB, addHueToRGB, rgbToHex */\n\n  var subframeEnabled = true;\n  var expressionsPlugin;\n  var isSafari = /^((?!chrome|android).)*safari/i.test(navigator.userAgent);\n  var cachedColors = {};\n  var bmRnd;\n  var bmPow = Math.pow;\n  var bmSqrt = Math.sqrt;\n  var bmFloor = Math.floor;\n  var bmMax = Math.max;\n  var bmMin = Math.min;\n  var BMMath = {};\n\n  (function () {\n    var propertyNames = [\"abs\", \"acos\", \"acosh\", \"asin\", \"asinh\", \"atan\", \"atanh\", \"atan2\", \"ceil\", \"cbrt\", \"expm1\", \"clz32\", \"cos\", \"cosh\", \"exp\", \"floor\", \"fround\", \"hypot\", \"imul\", \"log\", \"log1p\", \"log2\", \"log10\", \"max\", \"min\", \"pow\", \"random\", \"round\", \"sign\", \"sin\", \"sinh\", \"sqrt\", \"tan\", \"tanh\", \"trunc\", \"E\", \"LN10\", \"LN2\", \"LOG10E\", \"LOG2E\", \"PI\", \"SQRT1_2\", \"SQRT2\"];\n    var i;\n    var len = propertyNames.length;\n\n    for (i = 0; i < len; i += 1) {\n      BMMath[propertyNames[i]] = Math[propertyNames[i]];\n    }\n  })();\n\n  function ProjectInterface() {\n    return {};\n  }\n\n  BMMath.random = Math.random;\n\n  BMMath.abs = function (val) {\n    var tOfVal = typeof val;\n\n    if (tOfVal === \"object\" && val.length) {\n      var absArr = createSizedArray(val.length);\n      var i;\n      var len = val.length;\n\n      for (i = 0; i < len; i += 1) {\n        absArr[i] = Math.abs(val[i]);\n      }\n\n      return absArr;\n    }\n\n    return Math.abs(val);\n  };\n\n  var defaultCurveSegments = 150;\n  var degToRads = Math.PI / 180;\n  var roundCorner = 0.5519;\n\n  function roundValues(flag) {\n    if (flag) {\n      bmRnd = Math.round;\n    } else {\n      bmRnd = function (val) {\n        return val;\n      };\n    }\n  }\n\n  roundValues(false);\n\n  function styleDiv(element) {\n    element.style.position = \"absolute\";\n    element.style.top = 0;\n    element.style.left = 0;\n    element.style.display = \"block\";\n    element.style.transformOrigin = \"0 0\";\n    element.style.webkitTransformOrigin = \"0 0\";\n    element.style.backfaceVisibility = \"visible\";\n    element.style.webkitBackfaceVisibility = \"visible\";\n    element.style.transformStyle = \"preserve-3d\";\n    element.style.webkitTransformStyle = \"preserve-3d\";\n    element.style.mozTransformStyle = \"preserve-3d\";\n  }\n\n  function BMEnterFrameEvent(type, currentTime, totalTime, frameMultiplier) {\n    (this || _global).type = type;\n    (this || _global).currentTime = currentTime;\n    (this || _global).totalTime = totalTime;\n    (this || _global).direction = frameMultiplier < 0 ? -1 : 1;\n  }\n\n  function BMCompleteEvent(type, frameMultiplier) {\n    (this || _global).type = type;\n    (this || _global).direction = frameMultiplier < 0 ? -1 : 1;\n  }\n\n  function BMCompleteLoopEvent(type, totalLoops, currentLoop, frameMultiplier) {\n    (this || _global).type = type;\n    (this || _global).currentLoop = currentLoop;\n    (this || _global).totalLoops = totalLoops;\n    (this || _global).direction = frameMultiplier < 0 ? -1 : 1;\n  }\n\n  function BMSegmentStartEvent(type, firstFrame, totalFrames) {\n    (this || _global).type = type;\n    (this || _global).firstFrame = firstFrame;\n    (this || _global).totalFrames = totalFrames;\n  }\n\n  function BMDestroyEvent(type, target) {\n    (this || _global).type = type;\n    (this || _global).target = target;\n  }\n\n  function BMRenderFrameErrorEvent(nativeError, currentTime) {\n    (this || _global).type = \"renderFrameError\";\n    (this || _global).nativeError = nativeError;\n    (this || _global).currentTime = currentTime;\n  }\n\n  function BMConfigErrorEvent(nativeError) {\n    (this || _global).type = \"configError\";\n    (this || _global).nativeError = nativeError;\n  }\n\n  function BMAnimationConfigErrorEvent(type, nativeError) {\n    (this || _global).type = type;\n    (this || _global).nativeError = nativeError;\n  }\n\n  var createElementID = function () {\n    var _count = 0;\n    return function createID() {\n      _count += 1;\n      return \"__lottie_element_\" + _count;\n    };\n  }();\n\n  function HSVtoRGB(h, s, v) {\n    var r;\n    var g;\n    var b;\n    var i;\n    var f;\n    var p;\n    var q;\n    var t;\n    i = Math.floor(h * 6);\n    f = h * 6 - i;\n    p = v * (1 - s);\n    q = v * (1 - f * s);\n    t = v * (1 - (1 - f) * s);\n\n    switch (i % 6) {\n      case 0:\n        r = v;\n        g = t;\n        b = p;\n        break;\n\n      case 1:\n        r = q;\n        g = v;\n        b = p;\n        break;\n\n      case 2:\n        r = p;\n        g = v;\n        b = t;\n        break;\n\n      case 3:\n        r = p;\n        g = q;\n        b = v;\n        break;\n\n      case 4:\n        r = t;\n        g = p;\n        b = v;\n        break;\n\n      case 5:\n        r = v;\n        g = p;\n        b = q;\n        break;\n\n      default:\n        break;\n    }\n\n    return [r, g, b];\n  }\n\n  function RGBtoHSV(r, g, b) {\n    var max = Math.max(r, g, b);\n    var min = Math.min(r, g, b);\n    var d = max - min;\n    var h;\n    var s = max === 0 ? 0 : d / max;\n    var v = max / 255;\n\n    switch (max) {\n      case min:\n        h = 0;\n        break;\n\n      case r:\n        h = g - b + d * (g < b ? 6 : 0);\n        h /= 6 * d;\n        break;\n\n      case g:\n        h = b - r + d * 2;\n        h /= 6 * d;\n        break;\n\n      case b:\n        h = r - g + d * 4;\n        h /= 6 * d;\n        break;\n\n      default:\n        break;\n    }\n\n    return [h, s, v];\n  }\n\n  function addSaturationToRGB(color, offset) {\n    var hsv = RGBtoHSV(color[0] * 255, color[1] * 255, color[2] * 255);\n    hsv[1] += offset;\n\n    if (hsv[1] > 1) {\n      hsv[1] = 1;\n    } else if (hsv[1] <= 0) {\n      hsv[1] = 0;\n    }\n\n    return HSVtoRGB(hsv[0], hsv[1], hsv[2]);\n  }\n\n  function addBrightnessToRGB(color, offset) {\n    var hsv = RGBtoHSV(color[0] * 255, color[1] * 255, color[2] * 255);\n    hsv[2] += offset;\n\n    if (hsv[2] > 1) {\n      hsv[2] = 1;\n    } else if (hsv[2] < 0) {\n      hsv[2] = 0;\n    }\n\n    return HSVtoRGB(hsv[0], hsv[1], hsv[2]);\n  }\n\n  function addHueToRGB(color, offset) {\n    var hsv = RGBtoHSV(color[0] * 255, color[1] * 255, color[2] * 255);\n    hsv[0] += offset / 360;\n\n    if (hsv[0] > 1) {\n      hsv[0] -= 1;\n    } else if (hsv[0] < 0) {\n      hsv[0] += 1;\n    }\n\n    return HSVtoRGB(hsv[0], hsv[1], hsv[2]);\n  }\n\n  var rgbToHex = function () {\n    var colorMap = [];\n    var i;\n    var hex;\n\n    for (i = 0; i < 256; i += 1) {\n      hex = i.toString(16);\n      colorMap[i] = hex.length === 1 ? \"0\" + hex : hex;\n    }\n\n    return function (r, g, b) {\n      if (r < 0) {\n        r = 0;\n      }\n\n      if (g < 0) {\n        g = 0;\n      }\n\n      if (b < 0) {\n        b = 0;\n      }\n\n      return \"#\" + colorMap[r] + colorMap[g] + colorMap[b];\n    };\n  }();\n\n  function BaseEvent() {}\n\n  BaseEvent.prototype = {\n    triggerEvent: function (eventName, args) {\n      if ((this || _global)._cbs[eventName]) {\n        var len = (this || _global)._cbs[eventName].length;\n\n        for (var i = 0; i < len; i += 1) {\n          (this || _global)._cbs[eventName][i](args);\n        }\n      }\n    },\n    addEventListener: function (eventName, callback) {\n      if (!(this || _global)._cbs[eventName]) {\n        (this || _global)._cbs[eventName] = [];\n      }\n\n      (this || _global)._cbs[eventName].push(callback);\n\n      return function () {\n        this.removeEventListener(eventName, callback);\n      }.bind(this || _global);\n    },\n    removeEventListener: function (eventName, callback) {\n      if (!callback) {\n        (this || _global)._cbs[eventName] = null;\n      } else if ((this || _global)._cbs[eventName]) {\n        var i = 0;\n        var len = (this || _global)._cbs[eventName].length;\n\n        while (i < len) {\n          if ((this || _global)._cbs[eventName][i] === callback) {\n            (this || _global)._cbs[eventName].splice(i, 1);\n\n            i -= 1;\n            len -= 1;\n          }\n\n          i += 1;\n        }\n\n        if (!(this || _global)._cbs[eventName].length) {\n          (this || _global)._cbs[eventName] = null;\n        }\n      }\n    }\n  };\n  /* exported createTypedArray, createSizedArray */\n\n  var createTypedArray = function () {\n    function createRegularArray(type, len) {\n      var i = 0;\n      var arr = [];\n      var value;\n\n      switch (type) {\n        case \"int16\":\n        case \"uint8c\":\n          value = 1;\n          break;\n\n        default:\n          value = 1.1;\n          break;\n      }\n\n      for (i = 0; i < len; i += 1) {\n        arr.push(value);\n      }\n\n      return arr;\n    }\n\n    function createTypedArrayFactory(type, len) {\n      if (type === \"float32\") {\n        return new Float32Array(len);\n      }\n\n      if (type === \"int16\") {\n        return new Int16Array(len);\n      }\n\n      if (type === \"uint8c\") {\n        return new Uint8ClampedArray(len);\n      }\n\n      return createRegularArray(type, len);\n    }\n\n    if (typeof Uint8ClampedArray === \"function\" && typeof Float32Array === \"function\") {\n      return createTypedArrayFactory;\n    }\n\n    return createRegularArray;\n  }();\n\n  function createSizedArray(len) {\n    return Array.apply(null, {\n      length: len\n    });\n  }\n  /* global svgNS */\n\n  /* exported createNS */\n\n\n  function createNS(type) {\n    // return {appendChild:function(){},setAttribute:function(){},style:{}}\n    return document.createElementNS(svgNS, type);\n  }\n  /* exported createTag */\n\n\n  function createTag(type) {\n    // return {appendChild:function(){},setAttribute:function(){},style:{}}\n    return document.createElement(type);\n  }\n\n  function DynamicPropertyContainer() {}\n\n  DynamicPropertyContainer.prototype = {\n    addDynamicProperty: function (prop) {\n      if ((this || _global).dynamicProperties.indexOf(prop) === -1) {\n        (this || _global).dynamicProperties.push(prop);\n\n        (this || _global).container.addDynamicProperty(this || _global);\n\n        (this || _global)._isAnimated = true;\n      }\n    },\n    iterateDynamicProperties: function () {\n      (this || _global)._mdf = false;\n      var i;\n      var len = (this || _global).dynamicProperties.length;\n\n      for (i = 0; i < len; i += 1) {\n        (this || _global).dynamicProperties[i].getValue();\n\n        if ((this || _global).dynamicProperties[i]._mdf) {\n          (this || _global)._mdf = true;\n        }\n      }\n    },\n    initDynamicPropertyContainer: function (container) {\n      (this || _global).container = container;\n      (this || _global).dynamicProperties = [];\n      (this || _global)._mdf = false;\n      (this || _global)._isAnimated = false;\n    }\n  };\n  /* exported getBlendMode */\n\n  var getBlendMode = function () {\n    var blendModeEnums = {\n      0: \"source-over\",\n      1: \"multiply\",\n      2: \"screen\",\n      3: \"overlay\",\n      4: \"darken\",\n      5: \"lighten\",\n      6: \"color-dodge\",\n      7: \"color-burn\",\n      8: \"hard-light\",\n      9: \"soft-light\",\n      10: \"difference\",\n      11: \"exclusion\",\n      12: \"hue\",\n      13: \"saturation\",\n      14: \"color\",\n      15: \"luminosity\"\n    };\n    return function (mode) {\n      return blendModeEnums[mode] || \"\";\n    };\n  }();\n  /* global createTypedArray */\n\n  /*!\r\n   Transformation Matrix v2.0\r\n   (c) Epistemex 2014-2015\r\n   www.epistemex.com\r\n   By Ken Fyrstenberg\r\n   Contributions by leeoniya.\r\n   License: MIT, header required.\r\n   */\n\n  /**\r\n   * 2D transformation matrix object initialized with identity matrix.\r\n   *\r\n   * The matrix can synchronize a canvas context by supplying the context\r\n   * as an argument, or later apply current absolute transform to an\r\n   * existing context.\r\n   *\r\n   * All values are handled as floating point values.\r\n   *\r\n   * @param {CanvasRenderingContext2D} [context] - Optional context to sync with Matrix\r\n   * @prop {number} a - scale x\r\n   * @prop {number} b - shear y\r\n   * @prop {number} c - shear x\r\n   * @prop {number} d - scale y\r\n   * @prop {number} e - translate x\r\n   * @prop {number} f - translate y\r\n   * @prop {CanvasRenderingContext2D|null} [context=null] - set or get current canvas context\r\n   * @constructor\r\n   */\n\n\n  var Matrix = function () {\n    var _cos = Math.cos;\n    var _sin = Math.sin;\n    var _tan = Math.tan;\n    var _rnd = Math.round;\n\n    function reset() {\n      (this || _global).props[0] = 1;\n      (this || _global).props[1] = 0;\n      (this || _global).props[2] = 0;\n      (this || _global).props[3] = 0;\n      (this || _global).props[4] = 0;\n      (this || _global).props[5] = 1;\n      (this || _global).props[6] = 0;\n      (this || _global).props[7] = 0;\n      (this || _global).props[8] = 0;\n      (this || _global).props[9] = 0;\n      (this || _global).props[10] = 1;\n      (this || _global).props[11] = 0;\n      (this || _global).props[12] = 0;\n      (this || _global).props[13] = 0;\n      (this || _global).props[14] = 0;\n      (this || _global).props[15] = 1;\n      return this || _global;\n    }\n\n    function rotate(angle) {\n      if (angle === 0) {\n        return this || _global;\n      }\n\n      var mCos = _cos(angle);\n\n      var mSin = _sin(angle);\n\n      return this._t(mCos, -mSin, 0, 0, mSin, mCos, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1);\n    }\n\n    function rotateX(angle) {\n      if (angle === 0) {\n        return this || _global;\n      }\n\n      var mCos = _cos(angle);\n\n      var mSin = _sin(angle);\n\n      return this._t(1, 0, 0, 0, 0, mCos, -mSin, 0, 0, mSin, mCos, 0, 0, 0, 0, 1);\n    }\n\n    function rotateY(angle) {\n      if (angle === 0) {\n        return this || _global;\n      }\n\n      var mCos = _cos(angle);\n\n      var mSin = _sin(angle);\n\n      return this._t(mCos, 0, mSin, 0, 0, 1, 0, 0, -mSin, 0, mCos, 0, 0, 0, 0, 1);\n    }\n\n    function rotateZ(angle) {\n      if (angle === 0) {\n        return this || _global;\n      }\n\n      var mCos = _cos(angle);\n\n      var mSin = _sin(angle);\n\n      return this._t(mCos, -mSin, 0, 0, mSin, mCos, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1);\n    }\n\n    function shear(sx, sy) {\n      return this._t(1, sy, sx, 1, 0, 0);\n    }\n\n    function skew(ax, ay) {\n      return this.shear(_tan(ax), _tan(ay));\n    }\n\n    function skewFromAxis(ax, angle) {\n      var mCos = _cos(angle);\n\n      var mSin = _sin(angle);\n\n      return this._t(mCos, mSin, 0, 0, -mSin, mCos, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)._t(1, 0, 0, 0, _tan(ax), 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)._t(mCos, -mSin, 0, 0, mSin, mCos, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1); // return this._t(mCos, mSin, -mSin, mCos, 0, 0)._t(1, 0, _tan(ax), 1, 0, 0)._t(mCos, -mSin, mSin, mCos, 0, 0);\n    }\n\n    function scale(sx, sy, sz) {\n      if (!sz && sz !== 0) {\n        sz = 1;\n      }\n\n      if (sx === 1 && sy === 1 && sz === 1) {\n        return this || _global;\n      }\n\n      return this._t(sx, 0, 0, 0, 0, sy, 0, 0, 0, 0, sz, 0, 0, 0, 0, 1);\n    }\n\n    function setTransform(a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p) {\n      (this || _global).props[0] = a;\n      (this || _global).props[1] = b;\n      (this || _global).props[2] = c;\n      (this || _global).props[3] = d;\n      (this || _global).props[4] = e;\n      (this || _global).props[5] = f;\n      (this || _global).props[6] = g;\n      (this || _global).props[7] = h;\n      (this || _global).props[8] = i;\n      (this || _global).props[9] = j;\n      (this || _global).props[10] = k;\n      (this || _global).props[11] = l;\n      (this || _global).props[12] = m;\n      (this || _global).props[13] = n;\n      (this || _global).props[14] = o;\n      (this || _global).props[15] = p;\n      return this || _global;\n    }\n\n    function translate(tx, ty, tz) {\n      tz = tz || 0;\n\n      if (tx !== 0 || ty !== 0 || tz !== 0) {\n        return this._t(1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, tx, ty, tz, 1);\n      }\n\n      return this || _global;\n    }\n\n    function transform(a2, b2, c2, d2, e2, f2, g2, h2, i2, j2, k2, l2, m2, n2, o2, p2) {\n      var _p = (this || _global).props;\n\n      if (a2 === 1 && b2 === 0 && c2 === 0 && d2 === 0 && e2 === 0 && f2 === 1 && g2 === 0 && h2 === 0 && i2 === 0 && j2 === 0 && k2 === 1 && l2 === 0) {\n        // NOTE: commenting this condition because TurboFan deoptimizes code when present\n        // if(m2 !== 0 || n2 !== 0 || o2 !== 0){\n        _p[12] = _p[12] * a2 + _p[15] * m2;\n        _p[13] = _p[13] * f2 + _p[15] * n2;\n        _p[14] = _p[14] * k2 + _p[15] * o2;\n        _p[15] *= p2; // }\n\n        (this || _global)._identityCalculated = false;\n        return this || _global;\n      }\n\n      var a1 = _p[0];\n      var b1 = _p[1];\n      var c1 = _p[2];\n      var d1 = _p[3];\n      var e1 = _p[4];\n      var f1 = _p[5];\n      var g1 = _p[6];\n      var h1 = _p[7];\n      var i1 = _p[8];\n      var j1 = _p[9];\n      var k1 = _p[10];\n      var l1 = _p[11];\n      var m1 = _p[12];\n      var n1 = _p[13];\n      var o1 = _p[14];\n      var p1 = _p[15];\n      /* matrix order (canvas compatible):\r\n           * ace\r\n           * bdf\r\n           * 001\r\n           */\n\n      _p[0] = a1 * a2 + b1 * e2 + c1 * i2 + d1 * m2;\n      _p[1] = a1 * b2 + b1 * f2 + c1 * j2 + d1 * n2;\n      _p[2] = a1 * c2 + b1 * g2 + c1 * k2 + d1 * o2;\n      _p[3] = a1 * d2 + b1 * h2 + c1 * l2 + d1 * p2;\n      _p[4] = e1 * a2 + f1 * e2 + g1 * i2 + h1 * m2;\n      _p[5] = e1 * b2 + f1 * f2 + g1 * j2 + h1 * n2;\n      _p[6] = e1 * c2 + f1 * g2 + g1 * k2 + h1 * o2;\n      _p[7] = e1 * d2 + f1 * h2 + g1 * l2 + h1 * p2;\n      _p[8] = i1 * a2 + j1 * e2 + k1 * i2 + l1 * m2;\n      _p[9] = i1 * b2 + j1 * f2 + k1 * j2 + l1 * n2;\n      _p[10] = i1 * c2 + j1 * g2 + k1 * k2 + l1 * o2;\n      _p[11] = i1 * d2 + j1 * h2 + k1 * l2 + l1 * p2;\n      _p[12] = m1 * a2 + n1 * e2 + o1 * i2 + p1 * m2;\n      _p[13] = m1 * b2 + n1 * f2 + o1 * j2 + p1 * n2;\n      _p[14] = m1 * c2 + n1 * g2 + o1 * k2 + p1 * o2;\n      _p[15] = m1 * d2 + n1 * h2 + o1 * l2 + p1 * p2;\n      (this || _global)._identityCalculated = false;\n      return this || _global;\n    }\n\n    function isIdentity() {\n      if (!(this || _global)._identityCalculated) {\n        (this || _global)._identity = !((this || _global).props[0] !== 1 || (this || _global).props[1] !== 0 || (this || _global).props[2] !== 0 || (this || _global).props[3] !== 0 || (this || _global).props[4] !== 0 || (this || _global).props[5] !== 1 || (this || _global).props[6] !== 0 || (this || _global).props[7] !== 0 || (this || _global).props[8] !== 0 || (this || _global).props[9] !== 0 || (this || _global).props[10] !== 1 || (this || _global).props[11] !== 0 || (this || _global).props[12] !== 0 || (this || _global).props[13] !== 0 || (this || _global).props[14] !== 0 || (this || _global).props[15] !== 1);\n        (this || _global)._identityCalculated = true;\n      }\n\n      return (this || _global)._identity;\n    }\n\n    function equals(matr) {\n      var i = 0;\n\n      while (i < 16) {\n        if (matr.props[i] !== (this || _global).props[i]) {\n          return false;\n        }\n\n        i += 1;\n      }\n\n      return true;\n    }\n\n    function clone(matr) {\n      var i;\n\n      for (i = 0; i < 16; i += 1) {\n        matr.props[i] = (this || _global).props[i];\n      }\n\n      return matr;\n    }\n\n    function cloneFromProps(props) {\n      var i;\n\n      for (i = 0; i < 16; i += 1) {\n        (this || _global).props[i] = props[i];\n      }\n    }\n\n    function applyToPoint(x, y, z) {\n      return {\n        x: x * (this || _global).props[0] + y * (this || _global).props[4] + z * (this || _global).props[8] + (this || _global).props[12],\n        y: x * (this || _global).props[1] + y * (this || _global).props[5] + z * (this || _global).props[9] + (this || _global).props[13],\n        z: x * (this || _global).props[2] + y * (this || _global).props[6] + z * (this || _global).props[10] + (this || _global).props[14]\n      };\n      /* return {\r\n           x: x * me.a + y * me.c + me.e,\r\n           y: x * me.b + y * me.d + me.f\r\n           }; */\n    }\n\n    function applyToX(x, y, z) {\n      return x * (this || _global).props[0] + y * (this || _global).props[4] + z * (this || _global).props[8] + (this || _global).props[12];\n    }\n\n    function applyToY(x, y, z) {\n      return x * (this || _global).props[1] + y * (this || _global).props[5] + z * (this || _global).props[9] + (this || _global).props[13];\n    }\n\n    function applyToZ(x, y, z) {\n      return x * (this || _global).props[2] + y * (this || _global).props[6] + z * (this || _global).props[10] + (this || _global).props[14];\n    }\n\n    function getInverseMatrix() {\n      var determinant = (this || _global).props[0] * (this || _global).props[5] - (this || _global).props[1] * (this || _global).props[4];\n      var a = (this || _global).props[5] / determinant;\n      var b = -(this || _global).props[1] / determinant;\n      var c = -(this || _global).props[4] / determinant;\n      var d = (this || _global).props[0] / determinant;\n      var e = ((this || _global).props[4] * (this || _global).props[13] - (this || _global).props[5] * (this || _global).props[12]) / determinant;\n      var f = -((this || _global).props[0] * (this || _global).props[13] - (this || _global).props[1] * (this || _global).props[12]) / determinant;\n      var inverseMatrix = new Matrix();\n      inverseMatrix.props[0] = a;\n      inverseMatrix.props[1] = b;\n      inverseMatrix.props[4] = c;\n      inverseMatrix.props[5] = d;\n      inverseMatrix.props[12] = e;\n      inverseMatrix.props[13] = f;\n      return inverseMatrix;\n    }\n\n    function inversePoint(pt) {\n      var inverseMatrix = this.getInverseMatrix();\n      return inverseMatrix.applyToPointArray(pt[0], pt[1], pt[2] || 0);\n    }\n\n    function inversePoints(pts) {\n      var i;\n      var len = pts.length;\n      var retPts = [];\n\n      for (i = 0; i < len; i += 1) {\n        retPts[i] = inversePoint(pts[i]);\n      }\n\n      return retPts;\n    }\n\n    function applyToTriplePoints(pt1, pt2, pt3) {\n      var arr = createTypedArray(\"float32\", 6);\n\n      if (this.isIdentity()) {\n        arr[0] = pt1[0];\n        arr[1] = pt1[1];\n        arr[2] = pt2[0];\n        arr[3] = pt2[1];\n        arr[4] = pt3[0];\n        arr[5] = pt3[1];\n      } else {\n        var p0 = (this || _global).props[0];\n        var p1 = (this || _global).props[1];\n        var p4 = (this || _global).props[4];\n        var p5 = (this || _global).props[5];\n        var p12 = (this || _global).props[12];\n        var p13 = (this || _global).props[13];\n        arr[0] = pt1[0] * p0 + pt1[1] * p4 + p12;\n        arr[1] = pt1[0] * p1 + pt1[1] * p5 + p13;\n        arr[2] = pt2[0] * p0 + pt2[1] * p4 + p12;\n        arr[3] = pt2[0] * p1 + pt2[1] * p5 + p13;\n        arr[4] = pt3[0] * p0 + pt3[1] * p4 + p12;\n        arr[5] = pt3[0] * p1 + pt3[1] * p5 + p13;\n      }\n\n      return arr;\n    }\n\n    function applyToPointArray(x, y, z) {\n      var arr;\n\n      if (this.isIdentity()) {\n        arr = [x, y, z];\n      } else {\n        arr = [x * (this || _global).props[0] + y * (this || _global).props[4] + z * (this || _global).props[8] + (this || _global).props[12], x * (this || _global).props[1] + y * (this || _global).props[5] + z * (this || _global).props[9] + (this || _global).props[13], x * (this || _global).props[2] + y * (this || _global).props[6] + z * (this || _global).props[10] + (this || _global).props[14]];\n      }\n\n      return arr;\n    }\n\n    function applyToPointStringified(x, y) {\n      if (this.isIdentity()) {\n        return x + \",\" + y;\n      }\n\n      var _p = (this || _global).props;\n      return Math.round((x * _p[0] + y * _p[4] + _p[12]) * 100) / 100 + \",\" + Math.round((x * _p[1] + y * _p[5] + _p[13]) * 100) / 100;\n    }\n\n    function toCSS() {\n      // Doesn't make much sense to add this optimization. If it is an identity matrix, it's very likely this will get called only once since it won't be keyframed.\n\n      /* if(this.isIdentity()) {\r\n              return '';\r\n          } */\n      var i = 0;\n      var props = (this || _global).props;\n      var cssValue = \"matrix3d(\";\n      var v = 10000;\n\n      while (i < 16) {\n        cssValue += _rnd(props[i] * v) / v;\n        cssValue += i === 15 ? \")\" : \",\";\n        i += 1;\n      }\n\n      return cssValue;\n    }\n\n    function roundMatrixProperty(val) {\n      var v = 10000;\n\n      if (val < 0.000001 && val > 0 || val > -0.000001 && val < 0) {\n        return _rnd(val * v) / v;\n      }\n\n      return val;\n    }\n\n    function to2dCSS() {\n      // Doesn't make much sense to add this optimization. If it is an identity matrix, it's very likely this will get called only once since it won't be keyframed.\n\n      /* if(this.isIdentity()) {\r\n              return '';\r\n          } */\n      var props = (this || _global).props;\n\n      var _a = roundMatrixProperty(props[0]);\n\n      var _b = roundMatrixProperty(props[1]);\n\n      var _c = roundMatrixProperty(props[4]);\n\n      var _d = roundMatrixProperty(props[5]);\n\n      var _e = roundMatrixProperty(props[12]);\n\n      var _f = roundMatrixProperty(props[13]);\n\n      return \"matrix(\" + _a + \",\" + _b + \",\" + _c + \",\" + _d + \",\" + _e + \",\" + _f + \")\";\n    }\n\n    return function () {\n      (this || _global).reset = reset;\n      (this || _global).rotate = rotate;\n      (this || _global).rotateX = rotateX;\n      (this || _global).rotateY = rotateY;\n      (this || _global).rotateZ = rotateZ;\n      (this || _global).skew = skew;\n      (this || _global).skewFromAxis = skewFromAxis;\n      (this || _global).shear = shear;\n      (this || _global).scale = scale;\n      (this || _global).setTransform = setTransform;\n      (this || _global).translate = translate;\n      (this || _global).transform = transform;\n      (this || _global).applyToPoint = applyToPoint;\n      (this || _global).applyToX = applyToX;\n      (this || _global).applyToY = applyToY;\n      (this || _global).applyToZ = applyToZ;\n      (this || _global).applyToPointArray = applyToPointArray;\n      (this || _global).applyToTriplePoints = applyToTriplePoints;\n      (this || _global).applyToPointStringified = applyToPointStringified;\n      (this || _global).toCSS = toCSS;\n      (this || _global).to2dCSS = to2dCSS;\n      (this || _global).clone = clone;\n      (this || _global).cloneFromProps = cloneFromProps;\n      (this || _global).equals = equals;\n      (this || _global).inversePoints = inversePoints;\n      (this || _global).inversePoint = inversePoint;\n      (this || _global).getInverseMatrix = getInverseMatrix;\n      (this || _global)._t = (this || _global).transform;\n      (this || _global).isIdentity = isIdentity;\n      (this || _global)._identity = true;\n      (this || _global)._identityCalculated = false;\n      (this || _global).props = createTypedArray(\"float32\", 16);\n      this.reset();\n    };\n  }();\n  /* eslint-disable */\n\n  /*\r\n   Copyright 2014 David Bau.\r\n  \r\n   Permission is hereby granted, free of charge, to any person obtaining\r\n   a copy of this software and associated documentation files (the\r\n   \"Software\"), to deal in the Software without restriction, including\r\n   without limitation the rights to use, copy, modify, merge, publish,\r\n   distribute, sublicense, and/or sell copies of the Software, and to\r\n   permit persons to whom the Software is furnished to do so, subject to\r\n   the following conditions:\r\n  \r\n   The above copyright notice and this permission notice shall be\r\n   included in all copies or substantial portions of the Software.\r\n  \r\n   THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND,\r\n   EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\r\n   MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.\r\n   IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY\r\n   CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,\r\n   TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE\r\n   SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\r\n  \r\n   */\n\n\n  (function (pool, math) {\n    //\n    // The following constants are related to IEEE 754 limits.\n    //\n    var global = this || _global,\n        width = 256,\n        // each RC4 output is 0 <= x < 256\n    chunks = 6,\n        // at least six RC4 outputs for each double\n    digits = 52,\n        // there are 52 significant digits in a double\n    rngname = \"random\",\n        // rngname: name for Math.random and Math.seedrandom\n    startdenom = math.pow(width, chunks),\n        significance = math.pow(2, digits),\n        overflow = significance * 2,\n        mask = width - 1,\n        nodecrypto; // node.js crypto module, initialized at the bottom.\n    //\n    // seedrandom()\n    // This is the seedrandom function described above.\n    //\n\n    function seedrandom(seed, options, callback) {\n      var key = [];\n      options = options === true ? {\n        entropy: true\n      } : options || {}; // Flatten the seed string or build one from local entropy if needed.\n\n      var shortseed = mixkey(flatten(options.entropy ? [seed, tostring(pool)] : seed === null ? autoseed() : seed, 3), key); // Use the seed to initialize an ARC4 generator.\n\n      var arc4 = new ARC4(key); // This function returns a random double in [0, 1) that contains\n      // randomness in every bit of the mantissa of the IEEE 754 value.\n\n      var prng = function () {\n        var n = arc4.g(chunks),\n            // Start with a numerator n < 2 ^ 48\n        d = startdenom,\n            //   and denominator d = 2 ^ 48.\n        x = 0; //   and no 'extra last byte'.\n\n        while (n < significance) {\n          // Fill up all significant digits by\n          n = (n + x) * width; //   shifting numerator and\n\n          d *= width; //   denominator and generating a\n\n          x = arc4.g(1); //   new least-significant-byte.\n        }\n\n        while (n >= overflow) {\n          // To avoid rounding up, before adding\n          n /= 2; //   last byte, shift everything\n\n          d /= 2; //   right using integer math until\n\n          x >>>= 1; //   we have exactly the desired bits.\n        }\n\n        return (n + x) / d; // Form the number within [0, 1).\n      };\n\n      prng.int32 = function () {\n        return arc4.g(4) | 0;\n      };\n\n      prng.quick = function () {\n        return arc4.g(4) / 4294967296;\n      };\n\n      prng.double = prng; // Mix the randomness into accumulated entropy.\n\n      mixkey(tostring(arc4.S), pool); // Calling convention: what to return as a function of prng, seed, is_math.\n\n      return (options.pass || callback || function (prng, seed, is_math_call, state) {\n        if (state) {\n          // Load the arc4 state from the given state if it has an S array.\n          if (state.S) {\n            copy(state, arc4);\n          } // Only provide the .state method if requested via options.state.\n\n\n          prng.state = function () {\n            return copy(arc4, {});\n          };\n        } // If called as a method of Math (Math.seedrandom()), mutate\n        // Math.random because that is how seedrandom.js has worked since v1.0.\n\n\n        if (is_math_call) {\n          math[rngname] = prng;\n          return seed;\n        } // Otherwise, it is a newer calling convention, so return the\n        // prng directly.\n        else return prng;\n      })(prng, shortseed, \"global\" in options ? options.global : (this || _global) == math, options.state);\n    }\n\n    math[\"seed\" + rngname] = seedrandom; //\n    // ARC4\n    //\n    // An ARC4 implementation.  The constructor takes a key in the form of\n    // an array of at most (width) integers that should be 0 <= x < (width).\n    //\n    // The g(count) method returns a pseudorandom integer that concatenates\n    // the next (count) outputs from ARC4.  Its return value is a number x\n    // that is in the range 0 <= x < (width ^ count).\n    //\n\n    function ARC4(key) {\n      var t,\n          keylen = key.length,\n          me = this || _global,\n          i = 0,\n          j = me.i = me.j = 0,\n          s = me.S = []; // The empty key [] is treated as [0].\n\n      if (!keylen) {\n        key = [keylen++];\n      } // Set up S using the standard key scheduling algorithm.\n\n\n      while (i < width) {\n        s[i] = i++;\n      }\n\n      for (i = 0; i < width; i++) {\n        s[i] = s[j = mask & j + key[i % keylen] + (t = s[i])];\n        s[j] = t;\n      } // The \"g\" method returns the next (count) outputs as one number.\n\n\n      me.g = function (count) {\n        // Using instance members instead of closure state nearly doubles speed.\n        var t,\n            r = 0,\n            i = me.i,\n            j = me.j,\n            s = me.S;\n\n        while (count--) {\n          t = s[i = mask & i + 1];\n          r = r * width + s[mask & (s[i] = s[j = mask & j + t]) + (s[j] = t)];\n        }\n\n        me.i = i;\n        me.j = j;\n        return r; // For robust unpredictability, the function call below automatically\n        // discards an initial batch of values.  This is called RC4-drop[256].\n        // See http://google.com/search?q=rsa+fluhrer+response&btnI\n      };\n    } //\n    // copy()\n    // Copies internal state of ARC4 to or from a plain object.\n    //\n\n\n    function copy(f, t) {\n      t.i = f.i;\n      t.j = f.j;\n      t.S = f.S.slice();\n      return t;\n    } //\n    // flatten()\n    // Converts an object tree to nested arrays of strings.\n    //\n\n\n    function flatten(obj, depth) {\n      var result = [],\n          typ = typeof obj,\n          prop;\n\n      if (depth && typ == \"object\") {\n        for (prop in obj) {\n          try {\n            result.push(flatten(obj[prop], depth - 1));\n          } catch (e) {}\n        }\n      }\n\n      return result.length ? result : typ == \"string\" ? obj : obj + \"\\0\";\n    } //\n    // mixkey()\n    // Mixes a string seed into a key that is an array of integers, and\n    // returns a shortened string seed that is equivalent to the result key.\n    //\n\n\n    function mixkey(seed, key) {\n      var stringseed = seed + \"\",\n          smear,\n          j = 0;\n\n      while (j < stringseed.length) {\n        key[mask & j] = mask & (smear ^= key[mask & j] * 19) + stringseed.charCodeAt(j++);\n      }\n\n      return tostring(key);\n    } //\n    // autoseed()\n    // Returns an object for autoseeding, using window.crypto and Node crypto\n    // module if available.\n    //\n\n\n    function autoseed() {\n      try {\n        if (nodecrypto) {\n          return tostring(nodecrypto.randomBytes(width));\n        }\n\n        var out = new Uint8Array(width);\n        (global.crypto || global.msCrypto).getRandomValues(out);\n        return tostring(out);\n      } catch (e) {\n        var browser = global.navigator,\n            plugins = browser && browser.plugins;\n        return [+new Date(), global, plugins, global.screen, tostring(pool)];\n      }\n    } //\n    // tostring()\n    // Converts an array of charcodes to a string\n    //\n\n\n    function tostring(a) {\n      return String.fromCharCode.apply(0, a);\n    } //\n    // When seedrandom.js is loaded, we immediately mix a few bits\n    // from the built-in RNG into the entropy pool.  Because we do\n    // not want to interfere with deterministic PRNG state later,\n    // seedrandom will not call math.random on its own again after\n    // initialization.\n    //\n\n\n    mixkey(math.random(), pool); //\n    // Nodejs and AMD support: export the implementation as a module using\n    // either convention.\n    //\n    // End anonymous scope, and pass initial values.\n  })([], // pool: entropy pool starts empty\n  BMMath // math: package containing random, pow, and seedrandom\n  );\n  /* eslint-disable */\n\n\n  var BezierFactory = function () {\n    /**\r\n       * BezierEasing - use bezier curve for transition easing function\r\n       * by Ga\u00EBtan Renaudeau 2014 - 2015 \u2013 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", "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 (12ecc5e)\nimport{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{addFonts,addPropertyControls,ComponentViewportProvider,ControlType,cx,getFonts,getFontsFromSharedStyle,getPropertyControls,RichText,useComponentViewport,useLocaleInfo,useVariantState,withCSS}from\"framer\";import{LayoutGroup,motion,MotionConfigContext}from\"framer-motion\";import*as React from\"react\";import{Lottie}from\"https://framerusercontent.com/modules/YbkSqZ7STzW5WsMb1yan/RLfsHd78NBd0kbafA9hd/Lottie.js\";import*as sharedStyle1 from\"https://framerusercontent.com/modules/yhwxvTNo3tHUNTZTCUXd/rnjts2scwUlJE6DcMt7a/IZpeieEjn.js\";import*as sharedStyle from\"https://framerusercontent.com/modules/RwquBhWhgnFy8YZTajJ8/pNJ4BdDGlKDraehpy0Mk/vKGxKv6WT.js\";const LottieFonts=getFonts(Lottie);const LottieControls=getPropertyControls(Lottie);const cycleOrder=[\"Z9NOrp_Eq\",\"I9lLXos6M\"];const serializationHash=\"framer-TpQPf\";const variantClassNames={I9lLXos6M:\"framer-v-11sfstt\",Z9NOrp_Eq:\"framer-v-6rborn\"};function addPropertyOverrides(overrides,...variants){const nextOverrides={};variants===null||variants===void 0?void 0:variants.forEach(variant=>variant&&Object.assign(nextOverrides,overrides[variant]));return nextOverrides;}const transition1={duration:0,type:\"tween\"};const Transition=({value,children})=>{const config=React.useContext(MotionConfigContext);const transition=value!==null&&value!==void 0?value:config.transition;const contextValue=React.useMemo(()=>({...config,transition}),[JSON.stringify(transition)]);return /*#__PURE__*/_jsx(MotionConfigContext.Provider,{value:contextValue,children:children});};const Variants=motion.create(React.Fragment);const humanReadableVariantMap={\"Desktop/Tablet\":\"Z9NOrp_Eq\",Phone:\"I9lLXos6M\"};const getProps=({animatedIconJson,animationSpeed,description,height,id,title,width,...props})=>{var _ref,_ref1,_ref2,_humanReadableVariantMap_props_variant,_ref3,_ref4;return{...props,D2NiZ5OHn:(_ref=animationSpeed!==null&&animationSpeed!==void 0?animationSpeed:props.D2NiZ5OHn)!==null&&_ref!==void 0?_ref:.6,d3DGlGQ78:(_ref1=title!==null&&title!==void 0?title:props.d3DGlGQ78)!==null&&_ref1!==void 0?_ref1:\"Expert designers\",GCvgLUZrq:(_ref2=animatedIconJson!==null&&animatedIconJson!==void 0?animatedIconJson:props.GCvgLUZrq)!==null&&_ref2!==void 0?_ref2:\"https://framerusercontent.com/assets/W6bWjQH8YQCyS3uNRiZyWXjHaw.json\",variant:(_ref3=(_humanReadableVariantMap_props_variant=humanReadableVariantMap[props.variant])!==null&&_humanReadableVariantMap_props_variant!==void 0?_humanReadableVariantMap_props_variant:props.variant)!==null&&_ref3!==void 0?_ref3:\"Z9NOrp_Eq\",YssrYlgQi:(_ref4=description!==null&&description!==void 0?description:props.YssrYlgQi)!==null&&_ref4!==void 0?_ref4:\"Access to a team of expert and talented designers\"};};const createLayoutDependency=(props,variants)=>{if(props.layoutDependency)return variants.join(\"-\")+props.layoutDependency;return variants.join(\"-\");};const Component=/*#__PURE__*/React.forwardRef(function(props,ref){const{activeLocale,setLocale}=useLocaleInfo();const{style,className,layoutId,variant,GCvgLUZrq,D2NiZ5OHn,d3DGlGQ78,YssrYlgQi,...restProps}=getProps(props);const{baseVariant,classNames,clearLoadingGesture,gestureHandlers,gestureVariant,isLoading,setGestureState,setVariant,variants}=useVariantState({cycleOrder,defaultVariant:\"Z9NOrp_Eq\",variant,variantClassNames});const layoutDependency=createLayoutDependency(props,variants);const ref1=React.useRef(null);const defaultLayoutId=React.useId();const sharedStyleClassNames=[sharedStyle.className,sharedStyle1.className];const componentViewport=useComponentViewport();return /*#__PURE__*/_jsx(LayoutGroup,{id:layoutId!==null&&layoutId!==void 0?layoutId:defaultLayoutId,children:/*#__PURE__*/_jsx(Variants,{animate:variants,initial:false,children:/*#__PURE__*/_jsx(Transition,{value:transition1,children:/*#__PURE__*/_jsxs(motion.div,{...restProps,...gestureHandlers,className:cx(serializationHash,...sharedStyleClassNames,\"framer-6rborn\",className,classNames),\"data-framer-name\":\"Desktop/Tablet\",layoutDependency:layoutDependency,layoutId:\"Z9NOrp_Eq\",ref:ref!==null&&ref!==void 0?ref:ref1,style:{backdropFilter:\"blur(5px)\",background:'radial-gradient(50% 50% at 50% 50%, var(--token-ab8a1628-3695-47a5-8496-32bf3ecfdf66, rgb(21, 58, 161)) /* {\"name\":\"Blue\"} */ 0%, var(--token-17d94287-c97e-4602-9cf7-4d2036e50e01, rgb(0, 24, 94)) /* {\"name\":\"Dark blue\"} */ 100%)',borderBottomLeftRadius:12,borderBottomRightRadius:12,borderTopLeftRadius:12,borderTopRightRadius:12,WebkitBackdropFilter:\"blur(5px)\",...style},...addPropertyOverrides({I9lLXos6M:{\"data-framer-name\":\"Phone\"}},baseVariant,gestureVariant),children:[/*#__PURE__*/_jsx(motion.div,{className:\"framer-vwe1c\",\"data-framer-name\":\"Icon\",layoutDependency:layoutDependency,layoutId:\"ji19HBi9a\",children:/*#__PURE__*/_jsx(ComponentViewportProvider,{children:/*#__PURE__*/_jsx(motion.div,{className:\"framer-19ivi7c-container\",layoutDependency:layoutDependency,layoutId:\"KTiGauPVA-container\",children:/*#__PURE__*/_jsx(Lottie,{height:\"100%\",id:\"KTiGauPVA\",isForwardsDirection:true,layoutId:\"KTiGauPVA\",loop:true,pauseOnCanvas:true,playing:true,poster:\"Auto\",posterProgress:0,progress:0,speed:D2NiZ5OHn,srcFile:GCvgLUZrq,srcType:\"Upload\",srcUrl:\"https://misc.framerstatic.com/lottie/logo.json\",style:{height:\"100%\",width:\"100%\"},width:\"100%\"})})})}),/*#__PURE__*/_jsxs(motion.div,{className:\"framer-17pzvnz\",\"data-framer-name\":\"Title\",layoutDependency:layoutDependency,layoutId:\"aQ6pq7WPW\",children:[/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.h3,{className:\"framer-styles-preset-5a4759\",\"data-styles-preset\":\"vKGxKv6WT\",style:{\"--framer-text-alignment\":\"left\"},children:\"Expert designers\"})}),className:\"framer-lne0q2\",fonts:[\"Inter\"],layoutDependency:layoutDependency,layoutId:\"Re3gx7pSi\",style:{\"--framer-link-text-color\":\"rgb(0, 153, 255)\",\"--framer-link-text-decoration\":\"underline\"},text:d3DGlGQ78,verticalAlignment:\"top\",withExternalLayout:true}),/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{className:\"framer-styles-preset-f8bv20\",\"data-styles-preset\":\"IZpeieEjn\",style:{\"--framer-text-alignment\":\"left\"},children:\"Access to a team of expert and talented designers\"})}),className:\"framer-185en8s\",fonts:[\"Inter\"],layoutDependency:layoutDependency,layoutId:\"F1gkS5inf\",style:{\"--framer-link-text-color\":\"rgb(0, 153, 255)\",\"--framer-link-text-decoration\":\"underline\"},text:YssrYlgQi,verticalAlignment:\"top\",withExternalLayout:true})]}),/*#__PURE__*/_jsx(motion.div,{className:\"framer-sq1d03\",\"data-framer-name\":\"BG\",layoutDependency:layoutDependency,layoutId:\"t7j8_AtoR\",style:{background:'linear-gradient(130deg, var(--token-f5d2506d-9c8c-423b-a07c-4bdb7316df89, rgba(5, 5, 5, 0.75)) /* {\"name\":\"Black 75%\"} */ 0%, var(--token-7be8625f-297b-4b2a-908d-7056e5d82d0a, rgb(5, 5, 5)) /* {\"name\":\"Black\"} */ 120%)',borderBottomLeftRadius:11,borderBottomRightRadius:11,borderTopLeftRadius:11,borderTopRightRadius:11}})]})})})});});const css=[\"@supports (aspect-ratio: 1) { body { --framer-aspect-ratio-supported: auto; } }\",\".framer-TpQPf.framer-1qd7xvg, .framer-TpQPf .framer-1qd7xvg { display: block; }\",\".framer-TpQPf.framer-6rborn { align-content: flex-start; align-items: flex-start; cursor: default; display: flex; flex-direction: column; flex-wrap: nowrap; gap: 16px; height: min-content; justify-content: flex-start; overflow: hidden; padding: 24px; position: relative; width: 308px; will-change: var(--framer-will-change-override, transform); }\",\".framer-TpQPf .framer-vwe1c { align-content: center; align-items: center; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; gap: 10px; height: min-content; justify-content: center; overflow: visible; padding: 0px; position: relative; width: min-content; z-index: 1; }\",\".framer-TpQPf .framer-19ivi7c-container { flex: none; height: 66px; position: relative; width: 66px; }\",\".framer-TpQPf .framer-17pzvnz { align-content: flex-start; align-items: flex-start; display: flex; flex: none; flex-direction: column; flex-wrap: nowrap; gap: 8px; height: min-content; justify-content: center; overflow: hidden; padding: 0px; position: relative; width: 100%; z-index: 1; }\",\".framer-TpQPf .framer-lne0q2, .framer-TpQPf .framer-185en8s { flex: none; height: auto; position: relative; white-space: pre-wrap; width: 100%; word-break: break-word; word-wrap: break-word; }\",\".framer-TpQPf .framer-sq1d03 { bottom: 1px; flex: none; left: 1px; overflow: visible; position: absolute; right: 1px; top: 1px; z-index: 0; }\",\"@supports (background: -webkit-named-image(i)) and (not (font-palette:dark)) { .framer-TpQPf.framer-6rborn, .framer-TpQPf .framer-vwe1c, .framer-TpQPf .framer-17pzvnz { gap: 0px; } .framer-TpQPf.framer-6rborn > * { margin: 0px; margin-bottom: calc(16px / 2); margin-top: calc(16px / 2); } .framer-TpQPf.framer-6rborn > :first-child, .framer-TpQPf .framer-17pzvnz > :first-child { margin-top: 0px; } .framer-TpQPf.framer-6rborn > :last-child, .framer-TpQPf .framer-17pzvnz > :last-child { margin-bottom: 0px; } .framer-TpQPf .framer-vwe1c > * { margin: 0px; margin-left: calc(10px / 2); margin-right: calc(10px / 2); } .framer-TpQPf .framer-vwe1c > :first-child { margin-left: 0px; } .framer-TpQPf .framer-vwe1c > :last-child { margin-right: 0px; } .framer-TpQPf .framer-17pzvnz > * { margin: 0px; margin-bottom: calc(8px / 2); margin-top: calc(8px / 2); } }\",\".framer-TpQPf.framer-v-11sfstt .framer-19ivi7c-container { height: 55px; width: 55px; }\",...sharedStyle.css,...sharedStyle1.css];/**\n * This is a generated Framer component.\n * @framerIntrinsicHeight 212\n * @framerIntrinsicWidth 308\n * @framerCanvasComponentVariantDetails {\"propertyName\":\"variant\",\"data\":{\"default\":{\"layout\":[\"fixed\",\"auto\"]},\"I9lLXos6M\":{\"layout\":[\"fixed\",\"auto\"]}}}\n * @framerVariables {\"GCvgLUZrq\":\"animatedIconJson\",\"D2NiZ5OHn\":\"animationSpeed\",\"d3DGlGQ78\":\"title\",\"YssrYlgQi\":\"description\"}\n * @framerImmutableVariables true\n * @framerDisplayContentsDiv false\n * @framerComponentViewportWidth true\n */const FramerPbf2GHKDL=withCSS(Component,css,\"framer-TpQPf\");export default FramerPbf2GHKDL;FramerPbf2GHKDL.displayName=\"Cards/Process\";FramerPbf2GHKDL.defaultProps={height:212,width:308};addPropertyControls(FramerPbf2GHKDL,{variant:{options:[\"Z9NOrp_Eq\",\"I9lLXos6M\"],optionTitles:[\"Desktop/Tablet\",\"Phone\"],title:\"Variant\",type:ControlType.Enum},GCvgLUZrq:(LottieControls===null||LottieControls===void 0?void 0:LottieControls[\"srcFile\"])&&{...LottieControls[\"srcFile\"],__defaultAssetReference:\"data:framer/asset-reference,W6bWjQH8YQCyS3uNRiZyWXjHaw.json?originalFilename=Advantage.json\",description:undefined,hidden:undefined,title:\"Animated Icon (.json)\"},D2NiZ5OHn:{defaultValue:.6,displayStepper:true,max:10,min:0,step:.5,title:\"Animation speed\",type:ControlType.Number},d3DGlGQ78:{defaultValue:\"Expert designers\",displayTextArea:false,title:\"Title\",type:ControlType.String},YssrYlgQi:{defaultValue:\"Access to a team of expert and talented designers\",displayTextArea:true,title:\"Description\",type:ControlType.String}});addFonts(FramerPbf2GHKDL,[{explicitInter:true,fonts:[{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F\",url:\"https://framerusercontent.com/assets/5vvr9Vy74if2I6bQbJvbw7SY1pQ.woff2\",weight:\"400\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116\",url:\"https://framerusercontent.com/assets/EOr0mi4hNtlgWNn9if640EZzXCo.woff2\",weight:\"400\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+1F00-1FFF\",url:\"https://framerusercontent.com/assets/Y9k9QrlZAqio88Klkmbd8VoMQc.woff2\",weight:\"400\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0370-03FF\",url:\"https://framerusercontent.com/assets/OYrD2tBIBPvoJXiIHnLoOXnY9M.woff2\",weight:\"400\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF\",url:\"https://framerusercontent.com/assets/JeYwfuaPfZHQhEG8U5gtPDZ7WQ.woff2\",weight:\"400\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD\",url:\"https://framerusercontent.com/assets/vQyevYAyHtARFwPqUzQGpnDs.woff2\",weight:\"400\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB\",url:\"https://framerusercontent.com/assets/b6Y37FthZeALduNqHicBT6FutY.woff2\",weight:\"400\"}]},...LottieFonts,...getFontsFromSharedStyle(sharedStyle.fonts),...getFontsFromSharedStyle(sharedStyle1.fonts)],{supportsExplicitInterCodegen:true});\nexport const __FramerMetadata__ = {\"exports\":{\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"default\":{\"type\":\"reactComponent\",\"name\":\"FramerPbf2GHKDL\",\"slots\":[],\"annotations\":{\"framerVariables\":\"{\\\"GCvgLUZrq\\\":\\\"animatedIconJson\\\",\\\"D2NiZ5OHn\\\":\\\"animationSpeed\\\",\\\"d3DGlGQ78\\\":\\\"title\\\",\\\"YssrYlgQi\\\":\\\"description\\\"}\",\"framerComponentViewportWidth\":\"true\",\"framerCanvasComponentVariantDetails\":\"{\\\"propertyName\\\":\\\"variant\\\",\\\"data\\\":{\\\"default\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"auto\\\"]},\\\"I9lLXos6M\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"auto\\\"]}}}\",\"framerContractVersion\":\"1\",\"framerDisplayContentsDiv\":\"false\",\"framerIntrinsicHeight\":\"212\",\"framerIntrinsicWidth\":\"308\",\"framerImmutableVariables\":\"true\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./Pbf2GHKDL.map", "// Generated by Framer (cf240c2)\nimport{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{addFonts,addPropertyControls,ControlType,cx,getFontsFromSharedStyle,RichText,useComponentViewport,useLocaleInfo,useVariantState,withCSS,withFX}from\"framer\";import{LayoutGroup,motion,MotionConfigContext}from\"framer-motion\";import*as React from\"react\";import*as sharedStyle1 from\"https://framerusercontent.com/modules/yhwxvTNo3tHUNTZTCUXd/rnjts2scwUlJE6DcMt7a/IZpeieEjn.js\";import*as sharedStyle from\"https://framerusercontent.com/modules/RwquBhWhgnFy8YZTajJ8/pNJ4BdDGlKDraehpy0Mk/vKGxKv6WT.js\";const MotionDivWithFX=withFX(motion.div);const cycleOrder=[\"DUTwi3Tvh\",\"XbeyrV_XQ\"];const serializationHash=\"framer-K2mJx\";const variantClassNames={DUTwi3Tvh:\"framer-v-1ko7yuo\",XbeyrV_XQ:\"framer-v-fap7us\"};function addPropertyOverrides(overrides,...variants){const nextOverrides={};variants===null||variants===void 0?void 0:variants.forEach(variant=>variant&&Object.assign(nextOverrides,overrides[variant]));return nextOverrides;}const transition1={damping:30,delay:0,mass:1,stiffness:200,type:\"spring\"};const animation={filter:\"blur(10px)\",opacity:.001,rotate:0,scale:1,skewX:0,skewY:0,x:0,y:10};const transition2={bounce:0,delay:.05,duration:.6,type:\"spring\"};const textEffect={effect:animation,repeat:false,startDelay:0,threshold:0,tokenization:\"character\",transition:transition2,trigger:\"onInView\",type:\"appear\"};const Transition=({value,children})=>{const config=React.useContext(MotionConfigContext);const transition=value!==null&&value!==void 0?value:config.transition;const contextValue=React.useMemo(()=>({...config,transition}),[JSON.stringify(transition)]);return /*#__PURE__*/_jsx(MotionConfigContext.Provider,{value:contextValue,children:children});};const Variants=motion.create(React.Fragment);const humanReadableVariantMap={\"Tablet/phone\":\"XbeyrV_XQ\",Desktop:\"DUTwi3Tvh\"};const getProps=({description,height,id,title,width,...props})=>{var _ref,_ref1,_humanReadableVariantMap_props_variant,_ref2;return{...props,DXWWgGjsz:(_ref=description!==null&&description!==void 0?description:props.DXWWgGjsz)!==null&&_ref!==void 0?_ref:\"Description\",tLs69h6vu:(_ref1=title!==null&&title!==void 0?title:props.tLs69h6vu)!==null&&_ref1!==void 0?_ref1:\"Title\",variant:(_ref2=(_humanReadableVariantMap_props_variant=humanReadableVariantMap[props.variant])!==null&&_humanReadableVariantMap_props_variant!==void 0?_humanReadableVariantMap_props_variant:props.variant)!==null&&_ref2!==void 0?_ref2:\"DUTwi3Tvh\"};};const createLayoutDependency=(props,variants)=>{if(props.layoutDependency)return variants.join(\"-\")+props.layoutDependency;return variants.join(\"-\");};const Component=/*#__PURE__*/React.forwardRef(function(props,ref){const{activeLocale,setLocale}=useLocaleInfo();const{style,className,layoutId,variant,tLs69h6vu,DXWWgGjsz,...restProps}=getProps(props);const{baseVariant,classNames,clearLoadingGesture,gestureHandlers,gestureVariant,isLoading,setGestureState,setVariant,variants}=useVariantState({cycleOrder,defaultVariant:\"DUTwi3Tvh\",variant,variantClassNames});const layoutDependency=createLayoutDependency(props,variants);const ref1=React.useRef(null);const defaultLayoutId=React.useId();const sharedStyleClassNames=[sharedStyle.className,sharedStyle1.className];const componentViewport=useComponentViewport();return /*#__PURE__*/_jsx(LayoutGroup,{id:layoutId!==null&&layoutId!==void 0?layoutId:defaultLayoutId,children:/*#__PURE__*/_jsx(Variants,{animate:variants,initial:false,children:/*#__PURE__*/_jsx(Transition,{value:transition1,children:/*#__PURE__*/_jsx(motion.div,{...restProps,...gestureHandlers,className:cx(serializationHash,...sharedStyleClassNames,\"framer-1ko7yuo\",className,classNames),\"data-framer-name\":\"Desktop\",layoutDependency:layoutDependency,layoutId:\"DUTwi3Tvh\",ref:ref!==null&&ref!==void 0?ref:ref1,style:{background:'radial-gradient(50% 50% at 50% 50%, var(--token-ab8a1628-3695-47a5-8496-32bf3ecfdf66, rgb(21, 58, 161)) /* {\"name\":\"Blue\"} */ 0%, var(--token-17d94287-c97e-4602-9cf7-4d2036e50e01, rgb(0, 24, 94)) /* {\"name\":\"Dark blue\"} */ 100%)',borderBottomLeftRadius:12,borderBottomRightRadius:12,borderTopLeftRadius:12,borderTopRightRadius:12,...style},...addPropertyOverrides({XbeyrV_XQ:{\"data-framer-name\":\"Tablet/phone\"}},baseVariant,gestureVariant),children:/*#__PURE__*/_jsxs(motion.div,{className:\"framer-6tn6i0\",\"data-framer-name\":\"Content\",layoutDependency:layoutDependency,layoutId:\"jR5kQNmNA\",style:{background:'linear-gradient(130deg, var(--token-f5d2506d-9c8c-423b-a07c-4bdb7316df89, rgba(5, 5, 5, 0.75)) /* {\"name\":\"Black 75%\"} */ 0%, var(--token-7be8625f-297b-4b2a-908d-7056e5d82d0a, rgb(5, 5, 5)) /* {\"name\":\"Black\"} */ 120%)',borderBottomLeftRadius:11,borderBottomRightRadius:11,borderTopLeftRadius:11,borderTopRightRadius:11},children:[/*#__PURE__*/_jsx(motion.div,{className:\"framer-zdq0fl\",\"data-framer-name\":\"Interaction\",layoutDependency:layoutDependency,layoutId:\"d_gfPrkOb\",style:{borderTopLeftRadius:9,borderTopRightRadius:9,mask:\"linear-gradient(180deg, rgb(0, 0, 0) 80%, rgba(0, 0, 0, 0) 100%) add\",WebkitMask:\"linear-gradient(180deg, rgb(0, 0, 0) 80%, rgba(0, 0, 0, 0) 100%) add\"},children:/*#__PURE__*/_jsx(motion.div,{className:\"framer-oofy87\",\"data-border\":true,\"data-framer-name\":\"Container\",layoutDependency:layoutDependency,layoutId:\"rFcTmmtz7\",style:{\"--border-bottom-width\":\"0px\",\"--border-color\":\"var(--token-b065af26-ed04-4754-81f1-004a104fdd7f, rgba(0, 24, 94, 0.3))\",\"--border-left-width\":\"1px\",\"--border-right-width\":\"1px\",\"--border-style\":\"solid\",\"--border-top-width\":\"1px\",backgroundColor:\"rgba(5, 5, 5, 0.5)\",borderTopLeftRadius:10,borderTopRightRadius:10},children:/*#__PURE__*/_jsxs(motion.div,{className:\"framer-nhblxy\",\"data-framer-name\":\"Chart\",layoutDependency:layoutDependency,layoutId:\"DduEMo3H3\",children:[/*#__PURE__*/_jsxs(motion.div,{className:\"framer-ao1jdf\",\"data-framer-name\":\"Text\",layoutDependency:layoutDependency,layoutId:\"KmJDg1pth\",children:[/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{style:{\"--framer-font-size\":\"14px\",\"--framer-text-color\":\"var(--extracted-r6o4lv, var(--token-d085bc1e-c0c1-4753-8ee2-8e531ff7b917, rgb(242, 242, 242)))\"},children:\"Conversion rate: \"})}),className:\"framer-1vd95pk\",fonts:[\"Inter\"],layoutDependency:layoutDependency,layoutId:\"T4UOPVluk\",style:{\"--extracted-r6o4lv\":\"var(--token-d085bc1e-c0c1-4753-8ee2-8e531ff7b917, rgb(242, 242, 242))\",\"--framer-link-text-color\":\"rgb(0, 153, 255)\",\"--framer-link-text-decoration\":\"underline\"},verticalAlignment:\"top\",withExternalLayout:true}),/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{style:{\"--framer-font-size\":\"14px\",\"--framer-text-color\":\"var(--extracted-r6o4lv, var(--token-8e562c71-b86d-432e-ad04-cd3f03e73a71, rgb(255, 255, 255)))\"},children:\"45%\"})}),className:\"framer-4k158l\",effect:textEffect,fonts:[\"Inter\"],layoutDependency:layoutDependency,layoutId:\"rUKN1PiNk\",style:{\"--extracted-r6o4lv\":\"var(--token-8e562c71-b86d-432e-ad04-cd3f03e73a71, rgb(255, 255, 255))\",\"--framer-link-text-color\":\"rgb(0, 153, 255)\",\"--framer-link-text-decoration\":\"underline\"},verticalAlignment:\"top\",withExternalLayout:true,...addPropertyOverrides({XbeyrV_XQ:{effect:undefined}},baseVariant,gestureVariant)})]}),/*#__PURE__*/_jsx(MotionDivWithFX,{__framer__spring:{damping:30,delay:0,duration:.3,ease:[.44,0,.56,1],mass:1,stiffness:150,type:\"spring\"},__framer__styleTransformEffectEnabled:true,__framer__transformTargets:[{target:{opacity:.6,rotate:0,rotateX:0,rotateY:0,scale:1,skewX:0,skewY:0,x:0,y:80}},{target:{opacity:1,rotate:0,rotateX:0,rotateY:0,scale:1,skewX:0,skewY:0,x:0,y:0}}],__framer__transformTrigger:\"onInView\",__perspectiveFX:false,__smartComponentFX:true,__targetOpacity:1,className:\"framer-12vaq0b\",layoutDependency:layoutDependency,layoutId:\"FDvmrm8en\",...addPropertyOverrides({XbeyrV_XQ:{__framer__styleTransformEffectEnabled:undefined}},baseVariant,gestureVariant),children:/*#__PURE__*/_jsx(motion.div,{className:\"framer-kc2fnt\",\"data-border\":true,layoutDependency:layoutDependency,layoutId:\"oJ6fTqbfy\",style:{\"--border-bottom-width\":\"0px\",\"--border-color\":\"var(--token-ab8a1628-3695-47a5-8496-32bf3ecfdf66, rgb(21, 58, 161))\",\"--border-left-width\":\"1px\",\"--border-right-width\":\"1px\",\"--border-style\":\"solid\",\"--border-top-width\":\"1px\",background:'linear-gradient(180deg, var(--token-ab8a1628-3695-47a5-8496-32bf3ecfdf66, rgb(21, 58, 161)) /* {\"name\":\"Blue\"} */ 0%, var(--token-7be8625f-297b-4b2a-908d-7056e5d82d0a, rgb(5, 5, 5)) /* {\"name\":\"Black\"} */ 100%)',borderTopLeftRadius:15,borderTopRightRadius:15}})}),/*#__PURE__*/_jsx(MotionDivWithFX,{__framer__spring:{damping:30,delay:0,duration:.3,ease:[.44,0,.56,1],mass:1,stiffness:150,type:\"spring\"},__framer__styleTransformEffectEnabled:true,__framer__transformTargets:[{target:{opacity:.6,rotate:0,rotateX:0,rotateY:0,scale:1,skewX:0,skewY:0,x:0,y:80}},{target:{opacity:1,rotate:0,rotateX:0,rotateY:0,scale:1,skewX:0,skewY:0,x:0,y:0}}],__framer__transformTrigger:\"onInView\",__perspectiveFX:false,__smartComponentFX:true,__targetOpacity:1,className:\"framer-1smmf1z\",layoutDependency:layoutDependency,layoutId:\"pqPvWpOUD\",...addPropertyOverrides({XbeyrV_XQ:{__framer__styleTransformEffectEnabled:undefined}},baseVariant,gestureVariant),children:/*#__PURE__*/_jsx(motion.div,{className:\"framer-1p1vedy\",\"data-border\":true,layoutDependency:layoutDependency,layoutId:\"WdTHDABOY\",style:{\"--border-bottom-width\":\"0px\",\"--border-color\":\"var(--token-ab8a1628-3695-47a5-8496-32bf3ecfdf66, rgb(21, 58, 161))\",\"--border-left-width\":\"1px\",\"--border-right-width\":\"1px\",\"--border-style\":\"solid\",\"--border-top-width\":\"1px\",background:'linear-gradient(180deg, var(--token-ab8a1628-3695-47a5-8496-32bf3ecfdf66, rgb(21, 58, 161)) /* {\"name\":\"Blue\"} */ 0%, var(--token-7be8625f-297b-4b2a-908d-7056e5d82d0a, rgb(5, 5, 5)) /* {\"name\":\"Black\"} */ 100%)',borderTopLeftRadius:15,borderTopRightRadius:15}})}),/*#__PURE__*/_jsxs(motion.div,{className:\"framer-ildfwc\",\"data-framer-name\":\"Lines\",layoutDependency:layoutDependency,layoutId:\"MmcKuK5H2\",children:[/*#__PURE__*/_jsx(motion.div,{className:\"framer-bwbkjr\",\"data-framer-name\":\"Line\",layoutDependency:layoutDependency,layoutId:\"rjpx9ifTb\",style:{background:'linear-gradient(90deg, rgba(84, 84, 84, 0) 0%, var(--token-fac97835-8102-4c2d-a364-9b29482fa5eb, rgb(18, 18, 18)) /* {\"name\":\"Black 900\"} */ 50%, rgba(0, 0, 0, 0) 100%)'}}),/*#__PURE__*/_jsx(motion.div,{className:\"framer-1lhcg9t\",\"data-framer-name\":\"Line\",layoutDependency:layoutDependency,layoutId:\"vLLlhOTrA\",style:{background:'linear-gradient(90deg, rgba(84, 84, 84, 0) 0%, var(--token-fac97835-8102-4c2d-a364-9b29482fa5eb, rgb(18, 18, 18)) /* {\"name\":\"Black 900\"} */ 50%, rgba(0, 0, 0, 0) 100%)'}}),/*#__PURE__*/_jsx(motion.div,{className:\"framer-fn8zuj\",\"data-framer-name\":\"Line\",layoutDependency:layoutDependency,layoutId:\"tvZsCY7K4\",style:{background:'linear-gradient(90deg, rgba(84, 84, 84, 0) 0%, var(--token-fac97835-8102-4c2d-a364-9b29482fa5eb, rgb(18, 18, 18)) /* {\"name\":\"Black 900\"} */ 50%, rgba(0, 0, 0, 0) 100%)'}}),/*#__PURE__*/_jsx(motion.div,{className:\"framer-1id1zt3\",\"data-framer-name\":\"Line\",layoutDependency:layoutDependency,layoutId:\"ImeDWP812\",style:{background:'linear-gradient(90deg, rgba(84, 84, 84, 0) 0%, var(--token-fac97835-8102-4c2d-a364-9b29482fa5eb, rgb(18, 18, 18)) /* {\"name\":\"Black 900\"} */ 50%, rgba(0, 0, 0, 0) 100%)'}}),/*#__PURE__*/_jsx(motion.div,{className:\"framer-qqsgc5\",\"data-framer-name\":\"Line\",layoutDependency:layoutDependency,layoutId:\"Xr5fYsAEm\",style:{background:'linear-gradient(90deg, rgba(84, 84, 84, 0) 0%, var(--token-fac97835-8102-4c2d-a364-9b29482fa5eb, rgb(18, 18, 18)) /* {\"name\":\"Black 900\"} */ 50%, rgba(0, 0, 0, 0) 100%)'}})]}),/*#__PURE__*/_jsx(MotionDivWithFX,{__framer__spring:{damping:30,delay:0,duration:.3,ease:[.44,0,.56,1],mass:1,stiffness:150,type:\"spring\"},__framer__styleTransformEffectEnabled:true,__framer__transformTargets:[{target:{opacity:.6,rotate:0,rotateX:0,rotateY:0,scale:1,skewX:0,skewY:0,x:0,y:80}},{target:{opacity:1,rotate:0,rotateX:0,rotateY:0,scale:1,skewX:0,skewY:0,x:0,y:0}}],__framer__transformTrigger:\"onInView\",__perspectiveFX:false,__smartComponentFX:true,__targetOpacity:1,className:\"framer-2xmvuy\",layoutDependency:layoutDependency,layoutId:\"JIs0Ax144\",...addPropertyOverrides({XbeyrV_XQ:{__framer__styleTransformEffectEnabled:undefined}},baseVariant,gestureVariant),children:/*#__PURE__*/_jsx(motion.div,{className:\"framer-n24pfg\",\"data-border\":true,layoutDependency:layoutDependency,layoutId:\"enYA75swd\",style:{\"--border-bottom-width\":\"0px\",\"--border-color\":\"var(--token-ab8a1628-3695-47a5-8496-32bf3ecfdf66, rgb(21, 58, 161))\",\"--border-left-width\":\"1px\",\"--border-right-width\":\"1px\",\"--border-style\":\"solid\",\"--border-top-width\":\"1px\",background:'linear-gradient(180deg, var(--token-ab8a1628-3695-47a5-8496-32bf3ecfdf66, rgb(21, 58, 161)) /* {\"name\":\"Blue\"} */ 0%, var(--token-7be8625f-297b-4b2a-908d-7056e5d82d0a, rgb(5, 5, 5)) /* {\"name\":\"Black\"} */ 100%)',borderTopLeftRadius:15,borderTopRightRadius:15}})}),/*#__PURE__*/_jsx(MotionDivWithFX,{__framer__spring:{damping:30,delay:0,duration:.3,ease:[.44,0,.56,1],mass:1,stiffness:150,type:\"spring\"},__framer__styleTransformEffectEnabled:true,__framer__transformTargets:[{target:{opacity:.6,rotate:0,rotateX:0,rotateY:0,scale:1,skewX:0,skewY:0,x:0,y:80}},{target:{opacity:1,rotate:0,rotateX:0,rotateY:0,scale:1,skewX:0,skewY:0,x:0,y:0}}],__framer__transformTrigger:\"onInView\",__perspectiveFX:false,__smartComponentFX:true,__targetOpacity:1,className:\"framer-1ozkrzo\",layoutDependency:layoutDependency,layoutId:\"e3psFZoO2\",...addPropertyOverrides({XbeyrV_XQ:{__framer__styleTransformEffectEnabled:undefined}},baseVariant,gestureVariant),children:/*#__PURE__*/_jsx(motion.div,{className:\"framer-818opo\",\"data-border\":true,layoutDependency:layoutDependency,layoutId:\"zUj7crlgg\",style:{\"--border-bottom-width\":\"0px\",\"--border-color\":\"var(--token-ab8a1628-3695-47a5-8496-32bf3ecfdf66, rgb(21, 58, 161))\",\"--border-left-width\":\"1px\",\"--border-right-width\":\"1px\",\"--border-style\":\"solid\",\"--border-top-width\":\"1px\",background:'linear-gradient(180deg, var(--token-ab8a1628-3695-47a5-8496-32bf3ecfdf66, rgb(21, 58, 161)) /* {\"name\":\"Blue\"} */ 0%, var(--token-7be8625f-297b-4b2a-908d-7056e5d82d0a, rgb(5, 5, 5)) /* {\"name\":\"Black\"} */ 100%)',borderTopLeftRadius:15,borderTopRightRadius:15}})}),/*#__PURE__*/_jsx(MotionDivWithFX,{__framer__spring:{damping:30,delay:0,duration:.3,ease:[.44,0,.56,1],mass:1,stiffness:150,type:\"spring\"},__framer__styleTransformEffectEnabled:true,__framer__transformTargets:[{target:{opacity:.6,rotate:0,rotateX:0,rotateY:0,scale:1,skewX:0,skewY:0,x:0,y:80}},{target:{opacity:1,rotate:0,rotateX:0,rotateY:0,scale:1,skewX:0,skewY:0,x:0,y:0}}],__framer__transformTrigger:\"onInView\",__perspectiveFX:false,__smartComponentFX:true,__targetOpacity:1,className:\"framer-1mzw8wi\",layoutDependency:layoutDependency,layoutId:\"rvT62dbTb\",...addPropertyOverrides({XbeyrV_XQ:{__framer__styleTransformEffectEnabled:undefined}},baseVariant,gestureVariant),children:/*#__PURE__*/_jsx(motion.div,{className:\"framer-t4y4km\",\"data-border\":true,layoutDependency:layoutDependency,layoutId:\"U1v86Lmxx\",style:{\"--border-bottom-width\":\"0px\",\"--border-color\":\"var(--token-ab8a1628-3695-47a5-8496-32bf3ecfdf66, rgb(21, 58, 161))\",\"--border-left-width\":\"1px\",\"--border-right-width\":\"1px\",\"--border-style\":\"solid\",\"--border-top-width\":\"1px\",background:'linear-gradient(180deg, var(--token-ab8a1628-3695-47a5-8496-32bf3ecfdf66, rgb(21, 58, 161)) /* {\"name\":\"Blue\"} */ 0%, var(--token-7be8625f-297b-4b2a-908d-7056e5d82d0a, rgb(5, 5, 5)) /* {\"name\":\"Black\"} */ 100%)',borderTopLeftRadius:15,borderTopRightRadius:15}})}),/*#__PURE__*/_jsx(MotionDivWithFX,{__framer__spring:{damping:30,delay:0,duration:.3,ease:[.44,0,.56,1],mass:1,stiffness:150,type:\"spring\"},__framer__styleTransformEffectEnabled:true,__framer__transformTargets:[{target:{opacity:.6,rotate:0,rotateX:0,rotateY:0,scale:1,skewX:0,skewY:0,x:0,y:80}},{target:{opacity:1,rotate:0,rotateX:0,rotateY:0,scale:1,skewX:0,skewY:0,x:0,y:0}}],__framer__transformTrigger:\"onInView\",__perspectiveFX:false,__smartComponentFX:true,__targetOpacity:1,className:\"framer-i8ljj5\",layoutDependency:layoutDependency,layoutId:\"tCRhRAreM\",...addPropertyOverrides({XbeyrV_XQ:{__framer__styleTransformEffectEnabled:undefined}},baseVariant,gestureVariant),children:/*#__PURE__*/_jsx(motion.div,{className:\"framer-oyj42g\",\"data-border\":true,layoutDependency:layoutDependency,layoutId:\"hoENf7Ao0\",style:{\"--border-bottom-width\":\"0px\",\"--border-color\":\"var(--token-ab8a1628-3695-47a5-8496-32bf3ecfdf66, rgb(21, 58, 161))\",\"--border-left-width\":\"1px\",\"--border-right-width\":\"1px\",\"--border-style\":\"solid\",\"--border-top-width\":\"1px\",background:'linear-gradient(180deg, var(--token-ab8a1628-3695-47a5-8496-32bf3ecfdf66, rgb(21, 58, 161)) /* {\"name\":\"Blue\"} */ 0%, var(--token-7be8625f-297b-4b2a-908d-7056e5d82d0a, rgb(5, 5, 5)) /* {\"name\":\"Black\"} */ 100%)',borderTopLeftRadius:15,borderTopRightRadius:15}})}),/*#__PURE__*/_jsx(MotionDivWithFX,{__framer__spring:{damping:30,delay:0,duration:.3,ease:[.44,0,.56,1],mass:1,stiffness:150,type:\"spring\"},__framer__styleTransformEffectEnabled:true,__framer__transformTargets:[{target:{opacity:.6,rotate:0,rotateX:0,rotateY:0,scale:1,skewX:0,skewY:0,x:0,y:80}},{target:{opacity:1,rotate:0,rotateX:0,rotateY:0,scale:1,skewX:0,skewY:0,x:0,y:0}}],__framer__transformTrigger:\"onInView\",__perspectiveFX:false,__smartComponentFX:true,__targetOpacity:1,className:\"framer-11hz74y\",layoutDependency:layoutDependency,layoutId:\"nlBLvqNmE\",...addPropertyOverrides({XbeyrV_XQ:{__framer__styleTransformEffectEnabled:undefined}},baseVariant,gestureVariant),children:/*#__PURE__*/_jsx(motion.div,{className:\"framer-1ycq6e4\",\"data-border\":true,layoutDependency:layoutDependency,layoutId:\"eWExV7tKb\",style:{\"--border-bottom-width\":\"0px\",\"--border-color\":\"var(--token-ab8a1628-3695-47a5-8496-32bf3ecfdf66, rgb(21, 58, 161))\",\"--border-left-width\":\"1px\",\"--border-right-width\":\"1px\",\"--border-style\":\"solid\",\"--border-top-width\":\"1px\",background:'linear-gradient(180deg, var(--token-ab8a1628-3695-47a5-8496-32bf3ecfdf66, rgb(21, 58, 161)) /* {\"name\":\"Blue\"} */ 0%, var(--token-7be8625f-297b-4b2a-908d-7056e5d82d0a, rgb(5, 5, 5)) /* {\"name\":\"Black\"} */ 100%)',borderTopLeftRadius:15,borderTopRightRadius:15}})}),/*#__PURE__*/_jsx(MotionDivWithFX,{__framer__spring:{damping:30,delay:0,duration:.3,ease:[.44,0,.56,1],mass:1,stiffness:150,type:\"spring\"},__framer__styleTransformEffectEnabled:true,__framer__transformTargets:[{target:{opacity:.6,rotate:0,rotateX:0,rotateY:0,scale:1,skewX:0,skewY:0,x:0,y:80}},{target:{opacity:1,rotate:0,rotateX:0,rotateY:0,scale:1,skewX:0,skewY:0,x:0,y:0}}],__framer__transformTrigger:\"onInView\",__perspectiveFX:false,__smartComponentFX:true,__targetOpacity:1,className:\"framer-1uowkla\",layoutDependency:layoutDependency,layoutId:\"YiY5ZAbpk\",...addPropertyOverrides({XbeyrV_XQ:{__framer__styleTransformEffectEnabled:undefined}},baseVariant,gestureVariant),children:/*#__PURE__*/_jsx(motion.div,{className:\"framer-1du0jf2\",\"data-border\":true,layoutDependency:layoutDependency,layoutId:\"zGYJGlmGu\",style:{\"--border-bottom-width\":\"0px\",\"--border-color\":\"var(--token-ab8a1628-3695-47a5-8496-32bf3ecfdf66, rgb(21, 58, 161))\",\"--border-left-width\":\"1px\",\"--border-right-width\":\"1px\",\"--border-style\":\"solid\",\"--border-top-width\":\"1px\",background:'linear-gradient(180deg, var(--token-ab8a1628-3695-47a5-8496-32bf3ecfdf66, rgb(21, 58, 161)) /* {\"name\":\"Blue\"} */ 0%, var(--token-7be8625f-297b-4b2a-908d-7056e5d82d0a, rgb(5, 5, 5)) /* {\"name\":\"Black\"} */ 100%)',borderTopLeftRadius:15,borderTopRightRadius:15}})})]})})}),/*#__PURE__*/_jsxs(motion.div,{className:\"framer-dz8hxp\",\"data-framer-name\":\"Info\",layoutDependency:layoutDependency,layoutId:\"COmRkgVeB\",children:[/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.h3,{className:\"framer-styles-preset-5a4759\",\"data-styles-preset\":\"vKGxKv6WT\",children:\"Title\"})}),className:\"framer-1uir1q3\",fonts:[\"Inter\"],layoutDependency:layoutDependency,layoutId:\"CgJsdfdly\",style:{\"--framer-link-text-color\":\"rgb(0, 153, 255)\",\"--framer-link-text-decoration\":\"underline\"},text:tLs69h6vu,verticalAlignment:\"top\",withExternalLayout:true}),/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{className:\"framer-styles-preset-f8bv20\",\"data-styles-preset\":\"IZpeieEjn\",children:\"Description\"})}),className:\"framer-1wcncpy\",fonts:[\"Inter\"],layoutDependency:layoutDependency,layoutId:\"upXOVgzTW\",style:{\"--framer-link-text-color\":\"rgb(0, 153, 255)\",\"--framer-link-text-decoration\":\"underline\"},text:DXWWgGjsz,verticalAlignment:\"top\",withExternalLayout:true})]})]})})})})});});const css=[\"@supports (aspect-ratio: 1) { body { --framer-aspect-ratio-supported: auto; } }\",\".framer-K2mJx.framer-1ttj2qn, .framer-K2mJx .framer-1ttj2qn { display: block; }\",\".framer-K2mJx.framer-1ko7yuo { align-content: center; align-items: center; cursor: default; display: flex; flex-direction: row; flex-wrap: nowrap; gap: 0px; height: 429px; justify-content: center; overflow: hidden; padding: 1px; position: relative; width: 374px; will-change: var(--framer-will-change-override, transform); }\",\".framer-K2mJx .framer-6tn6i0 { align-content: flex-start; align-items: flex-start; display: flex; flex: 1 0 0px; flex-direction: column; flex-wrap: nowrap; gap: 12px; height: 100%; justify-content: flex-start; overflow: hidden; padding: 12px; position: relative; width: 1px; will-change: var(--framer-will-change-override, transform); z-index: 1; }\",\".framer-K2mJx .framer-zdq0fl { align-content: flex-start; align-items: flex-start; display: flex; flex: 1 0 0px; flex-direction: row; flex-wrap: nowrap; gap: 8px; height: 1px; justify-content: center; overflow: visible; padding: 8px; position: relative; width: 100%; }\",\".framer-K2mJx .framer-oofy87 { align-content: center; align-items: center; display: flex; flex: 1 0 0px; flex-direction: column; flex-wrap: nowrap; gap: 8px; height: 100%; justify-content: center; min-height: 240px; overflow: visible; padding: 0px; position: relative; width: 1px; }\",\".framer-K2mJx .framer-nhblxy { align-content: flex-end; align-items: flex-end; display: flex; flex: 1 0 0px; flex-direction: row; flex-wrap: nowrap; height: 1px; justify-content: space-evenly; overflow: hidden; padding: 24px 24px 0px 24px; position: relative; width: 100%; z-index: 1; }\",\".framer-K2mJx .framer-ao1jdf { align-content: center; align-items: center; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; gap: 2px; height: min-content; justify-content: flex-start; left: 16px; overflow: visible; padding: 0px; position: absolute; right: 16px; top: 16px; z-index: 1; }\",\".framer-K2mJx .framer-1vd95pk, .framer-K2mJx .framer-4k158l { flex: none; height: auto; position: relative; white-space: pre; width: auto; z-index: 1; }\",\".framer-K2mJx .framer-12vaq0b, .framer-K2mJx .framer-1smmf1z, .framer-K2mJx .framer-2xmvuy, .framer-K2mJx .framer-1ozkrzo, .framer-K2mJx .framer-1mzw8wi, .framer-K2mJx .framer-i8ljj5, .framer-K2mJx .framer-11hz74y, .framer-K2mJx .framer-1uowkla { flex: none; height: 100%; overflow: hidden; position: relative; width: 16px; z-index: 1; }\",\".framer-K2mJx .framer-kc2fnt { flex: none; height: 291px; left: 0px; overflow: hidden; position: absolute; right: 0px; top: 142px; will-change: var(--framer-will-change-override, transform); }\",\".framer-K2mJx .framer-1p1vedy { flex: none; height: 291px; left: 0px; overflow: hidden; position: absolute; right: 0px; top: 120px; will-change: var(--framer-will-change-override, transform); }\",\".framer-K2mJx .framer-ildfwc { align-content: center; align-items: center; bottom: 0px; display: flex; flex: none; flex-direction: column; flex-wrap: nowrap; justify-content: space-evenly; left: 0px; overflow: visible; padding: 0px; position: absolute; right: 0px; top: 0px; z-index: 0; }\",\".framer-K2mJx .framer-bwbkjr, .framer-K2mJx .framer-1lhcg9t, .framer-K2mJx .framer-fn8zuj, .framer-K2mJx .framer-1id1zt3, .framer-K2mJx .framer-qqsgc5 { flex: none; height: 1px; overflow: visible; position: relative; width: 100%; z-index: 0; }\",\".framer-K2mJx .framer-n24pfg { flex: none; height: 291px; left: 0px; overflow: hidden; position: absolute; right: 0px; top: 110px; will-change: var(--framer-will-change-override, transform); }\",\".framer-K2mJx .framer-818opo { flex: none; height: 291px; overflow: hidden; position: absolute; right: 0px; top: 99px; width: 16px; will-change: var(--framer-will-change-override, transform); }\",\".framer-K2mJx .framer-t4y4km { flex: none; height: 291px; left: 0px; overflow: hidden; position: absolute; right: 0px; top: 81px; will-change: var(--framer-will-change-override, transform); }\",\".framer-K2mJx .framer-oyj42g { flex: none; height: 291px; left: 0px; overflow: hidden; position: absolute; right: 0px; top: 54px; will-change: var(--framer-will-change-override, transform); }\",\".framer-K2mJx .framer-1ycq6e4 { flex: none; height: 291px; left: 0px; overflow: hidden; position: absolute; right: 0px; top: 29px; will-change: var(--framer-will-change-override, transform); }\",\".framer-K2mJx .framer-1du0jf2 { flex: none; height: 291px; left: 0px; overflow: hidden; position: absolute; right: 0px; top: 7px; will-change: var(--framer-will-change-override, transform); }\",\".framer-K2mJx .framer-dz8hxp { align-content: flex-start; align-items: flex-start; display: flex; flex: none; flex-direction: column; flex-wrap: nowrap; gap: 8px; height: min-content; justify-content: center; overflow: hidden; padding: 8px; position: relative; width: 100%; }\",\".framer-K2mJx .framer-1uir1q3 { flex: none; height: auto; max-width: 600px; position: relative; white-space: pre-wrap; width: 100%; word-break: break-word; word-wrap: break-word; z-index: 1; }\",\".framer-K2mJx .framer-1wcncpy { flex: none; height: auto; max-width: 580px; position: relative; white-space: pre-wrap; width: 100%; word-break: break-word; word-wrap: break-word; z-index: 1; }\",\"@supports (background: -webkit-named-image(i)) and (not (font-palette:dark)) { .framer-K2mJx.framer-1ko7yuo, .framer-K2mJx .framer-6tn6i0, .framer-K2mJx .framer-zdq0fl, .framer-K2mJx .framer-oofy87, .framer-K2mJx .framer-ao1jdf, .framer-K2mJx .framer-dz8hxp { gap: 0px; } .framer-K2mJx.framer-1ko7yuo > * { margin: 0px; margin-left: calc(0px / 2); margin-right: calc(0px / 2); } .framer-K2mJx.framer-1ko7yuo > :first-child, .framer-K2mJx .framer-zdq0fl > :first-child, .framer-K2mJx .framer-ao1jdf > :first-child { margin-left: 0px; } .framer-K2mJx.framer-1ko7yuo > :last-child, .framer-K2mJx .framer-zdq0fl > :last-child, .framer-K2mJx .framer-ao1jdf > :last-child { margin-right: 0px; } .framer-K2mJx .framer-6tn6i0 > * { margin: 0px; margin-bottom: calc(12px / 2); margin-top: calc(12px / 2); } .framer-K2mJx .framer-6tn6i0 > :first-child, .framer-K2mJx .framer-oofy87 > :first-child, .framer-K2mJx .framer-dz8hxp > :first-child { margin-top: 0px; } .framer-K2mJx .framer-6tn6i0 > :last-child, .framer-K2mJx .framer-oofy87 > :last-child, .framer-K2mJx .framer-dz8hxp > :last-child { margin-bottom: 0px; } .framer-K2mJx .framer-zdq0fl > * { margin: 0px; margin-left: calc(8px / 2); margin-right: calc(8px / 2); } .framer-K2mJx .framer-oofy87 > *, .framer-K2mJx .framer-dz8hxp > * { margin: 0px; margin-bottom: calc(8px / 2); margin-top: calc(8px / 2); } .framer-K2mJx .framer-ao1jdf > * { margin: 0px; margin-left: calc(2px / 2); margin-right: calc(2px / 2); } }\",\".framer-K2mJx.framer-v-fap7us .framer-zdq0fl { padding: 0px; }\",...sharedStyle.css,...sharedStyle1.css,'.framer-K2mJx[data-border=\"true\"]::after, .framer-K2mJx [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 429\n * @framerIntrinsicWidth 374\n * @framerCanvasComponentVariantDetails {\"propertyName\":\"variant\",\"data\":{\"default\":{\"layout\":[\"fixed\",\"fixed\"]},\"XbeyrV_XQ\":{\"layout\":[\"fixed\",\"fixed\"]}}}\n * @framerVariables {\"tLs69h6vu\":\"title\",\"DXWWgGjsz\":\"description\"}\n * @framerImmutableVariables true\n * @framerDisplayContentsDiv false\n * @framerComponentViewportWidth true\n */const Framert8Oa9Zgb5=withCSS(Component,css,\"framer-K2mJx\");export default Framert8Oa9Zgb5;Framert8Oa9Zgb5.displayName=\"Service cards/Chart\";Framert8Oa9Zgb5.defaultProps={height:429,width:374};addPropertyControls(Framert8Oa9Zgb5,{variant:{options:[\"DUTwi3Tvh\",\"XbeyrV_XQ\"],optionTitles:[\"Desktop\",\"Tablet/phone\"],title:\"Variant\",type:ControlType.Enum},tLs69h6vu:{defaultValue:\"Title\",displayTextArea:false,title:\"Title\",type:ControlType.String},DXWWgGjsz:{defaultValue:\"Description\",displayTextArea:true,title:\"Description\",type:ControlType.String}});addFonts(Framert8Oa9Zgb5,[{explicitInter:true,fonts:[{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F\",url:\"https://framerusercontent.com/assets/5vvr9Vy74if2I6bQbJvbw7SY1pQ.woff2\",weight:\"400\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116\",url:\"https://framerusercontent.com/assets/EOr0mi4hNtlgWNn9if640EZzXCo.woff2\",weight:\"400\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+1F00-1FFF\",url:\"https://framerusercontent.com/assets/Y9k9QrlZAqio88Klkmbd8VoMQc.woff2\",weight:\"400\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0370-03FF\",url:\"https://framerusercontent.com/assets/OYrD2tBIBPvoJXiIHnLoOXnY9M.woff2\",weight:\"400\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF\",url:\"https://framerusercontent.com/assets/JeYwfuaPfZHQhEG8U5gtPDZ7WQ.woff2\",weight:\"400\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD\",url:\"https://framerusercontent.com/assets/vQyevYAyHtARFwPqUzQGpnDs.woff2\",weight:\"400\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB\",url:\"https://framerusercontent.com/assets/b6Y37FthZeALduNqHicBT6FutY.woff2\",weight:\"400\"}]},...getFontsFromSharedStyle(sharedStyle.fonts),...getFontsFromSharedStyle(sharedStyle1.fonts)],{supportsExplicitInterCodegen:true});\nexport const __FramerMetadata__ = {\"exports\":{\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"default\":{\"type\":\"reactComponent\",\"name\":\"Framert8Oa9Zgb5\",\"slots\":[],\"annotations\":{\"framerDisplayContentsDiv\":\"false\",\"framerImmutableVariables\":\"true\",\"framerIntrinsicHeight\":\"429\",\"framerComponentViewportWidth\":\"true\",\"framerIntrinsicWidth\":\"374\",\"framerVariables\":\"{\\\"tLs69h6vu\\\":\\\"title\\\",\\\"DXWWgGjsz\\\":\\\"description\\\"}\",\"framerContractVersion\":\"1\",\"framerCanvasComponentVariantDetails\":\"{\\\"propertyName\\\":\\\"variant\\\",\\\"data\\\":{\\\"default\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"XbeyrV_XQ\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]}}}\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./t8Oa9Zgb5.map", "// Generated by Framer (99bc0fd)\nimport{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{addFonts,addPropertyControls,ComponentViewportProvider,ControlType,cx,getFonts,getFontsFromSharedStyle,getPropertyControls,RichText,useComponentViewport,useLocaleInfo,useVariantState,withCSS}from\"framer\";import{LayoutGroup,motion,MotionConfigContext}from\"framer-motion\";import*as React from\"react\";import{Lottie}from\"https://framerusercontent.com/modules/YbkSqZ7STzW5WsMb1yan/RLfsHd78NBd0kbafA9hd/Lottie.js\";import*as sharedStyle1 from\"https://framerusercontent.com/modules/yhwxvTNo3tHUNTZTCUXd/rnjts2scwUlJE6DcMt7a/IZpeieEjn.js\";import*as sharedStyle from\"https://framerusercontent.com/modules/RwquBhWhgnFy8YZTajJ8/pNJ4BdDGlKDraehpy0Mk/vKGxKv6WT.js\";const LottieFonts=getFonts(Lottie);const LottieControls=getPropertyControls(Lottie);const cycleOrder=[\"XHwcI4e2F\",\"GvskXmch5\"];const serializationHash=\"framer-QiNAU\";const variantClassNames={GvskXmch5:\"framer-v-1dioix3\",XHwcI4e2F:\"framer-v-rmpgvs\"};function addPropertyOverrides(overrides,...variants){const nextOverrides={};variants===null||variants===void 0?void 0:variants.forEach(variant=>variant&&Object.assign(nextOverrides,overrides[variant]));return nextOverrides;}const transition1={duration:0,type:\"tween\"};const Transition=({value,children})=>{const config=React.useContext(MotionConfigContext);const transition=value!==null&&value!==void 0?value:config.transition;const contextValue=React.useMemo(()=>({...config,transition}),[JSON.stringify(transition)]);return /*#__PURE__*/_jsx(MotionConfigContext.Provider,{value:contextValue,children:children});};const Variants=motion.create(React.Fragment);const humanReadableVariantMap={\"Desktop/Tablet\":\"XHwcI4e2F\",Phone:\"GvskXmch5\"};const getProps=({animatedIconJson,animationSpeed,description,height,id,title,width,...props})=>{var _ref,_ref1,_ref2,_humanReadableVariantMap_props_variant,_ref3,_ref4;return{...props,D2NiZ5OHn:(_ref=animationSpeed!==null&&animationSpeed!==void 0?animationSpeed:props.D2NiZ5OHn)!==null&&_ref!==void 0?_ref:.6,d3DGlGQ78:(_ref1=title!==null&&title!==void 0?title:props.d3DGlGQ78)!==null&&_ref1!==void 0?_ref1:\"Expert designers\",GCvgLUZrq:(_ref2=animatedIconJson!==null&&animatedIconJson!==void 0?animatedIconJson:props.GCvgLUZrq)!==null&&_ref2!==void 0?_ref2:\"https://framerusercontent.com/assets/3wv4JWhMwcG8CSsZj2zdw0TXrY.json\",variant:(_ref3=(_humanReadableVariantMap_props_variant=humanReadableVariantMap[props.variant])!==null&&_humanReadableVariantMap_props_variant!==void 0?_humanReadableVariantMap_props_variant:props.variant)!==null&&_ref3!==void 0?_ref3:\"XHwcI4e2F\",YssrYlgQi:(_ref4=description!==null&&description!==void 0?description:props.YssrYlgQi)!==null&&_ref4!==void 0?_ref4:\"Access to a team of expert and talented designers\"};};const createLayoutDependency=(props,variants)=>{if(props.layoutDependency)return variants.join(\"-\")+props.layoutDependency;return variants.join(\"-\");};const Component=/*#__PURE__*/React.forwardRef(function(props,ref){const{activeLocale,setLocale}=useLocaleInfo();const{style,className,layoutId,variant,GCvgLUZrq,D2NiZ5OHn,d3DGlGQ78,YssrYlgQi,...restProps}=getProps(props);const{baseVariant,classNames,clearLoadingGesture,gestureHandlers,gestureVariant,isLoading,setGestureState,setVariant,variants}=useVariantState({cycleOrder,defaultVariant:\"XHwcI4e2F\",variant,variantClassNames});const layoutDependency=createLayoutDependency(props,variants);const ref1=React.useRef(null);const defaultLayoutId=React.useId();const sharedStyleClassNames=[sharedStyle.className,sharedStyle1.className];const componentViewport=useComponentViewport();return /*#__PURE__*/_jsx(LayoutGroup,{id:layoutId!==null&&layoutId!==void 0?layoutId:defaultLayoutId,children:/*#__PURE__*/_jsx(Variants,{animate:variants,initial:false,children:/*#__PURE__*/_jsx(Transition,{value:transition1,children:/*#__PURE__*/_jsxs(motion.div,{...restProps,...gestureHandlers,className:cx(serializationHash,...sharedStyleClassNames,\"framer-rmpgvs\",className,classNames),\"data-framer-name\":\"Desktop/Tablet\",layoutDependency:layoutDependency,layoutId:\"XHwcI4e2F\",ref:ref!==null&&ref!==void 0?ref:ref1,style:{backdropFilter:\"blur(0px)\",borderBottomLeftRadius:12,borderBottomRightRadius:12,borderTopLeftRadius:12,borderTopRightRadius:12,WebkitBackdropFilter:\"blur(0px)\",...style},...addPropertyOverrides({GvskXmch5:{\"data-framer-name\":\"Phone\"}},baseVariant,gestureVariant),children:[/*#__PURE__*/_jsx(motion.div,{className:\"framer-1hrm6ia\",\"data-framer-name\":\"Icon\",layoutDependency:layoutDependency,layoutId:\"CquPOiDxI\",children:/*#__PURE__*/_jsx(ComponentViewportProvider,{children:/*#__PURE__*/_jsx(motion.div,{className:\"framer-a0czyx-container\",layoutDependency:layoutDependency,layoutId:\"AunjnxnGW-container\",children:/*#__PURE__*/_jsx(Lottie,{height:\"100%\",id:\"AunjnxnGW\",isForwardsDirection:true,layoutId:\"AunjnxnGW\",loop:true,pauseOnCanvas:true,playing:true,poster:\"Auto\",posterProgress:0,progress:0,speed:D2NiZ5OHn,srcFile:GCvgLUZrq,srcType:\"Upload\",srcUrl:\"https://misc.framerstatic.com/lottie/logo.json\",style:{height:\"100%\",width:\"100%\"},width:\"100%\"})})})}),/*#__PURE__*/_jsxs(motion.div,{className:\"framer-hcpnl4\",\"data-framer-name\":\"Title\",layoutDependency:layoutDependency,layoutId:\"WT9vcvke8\",children:[/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.h3,{className:\"framer-styles-preset-5a4759\",\"data-styles-preset\":\"vKGxKv6WT\",style:{\"--framer-text-alignment\":\"center\"},children:\"Expert designers\"})}),className:\"framer-5blrb6\",fonts:[\"Inter\"],layoutDependency:layoutDependency,layoutId:\"Ssd9U4gw8\",style:{\"--framer-link-text-color\":\"rgb(0, 153, 255)\",\"--framer-link-text-decoration\":\"underline\"},text:d3DGlGQ78,verticalAlignment:\"top\",withExternalLayout:true}),/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{className:\"framer-styles-preset-f8bv20\",\"data-styles-preset\":\"IZpeieEjn\",style:{\"--framer-text-alignment\":\"center\"},children:\"Access to a team of expert and talented designers\"})}),className:\"framer-13qi3hl\",fonts:[\"Inter\"],layoutDependency:layoutDependency,layoutId:\"ByBaRE07I\",style:{\"--framer-link-text-color\":\"rgb(0, 153, 255)\",\"--framer-link-text-decoration\":\"underline\"},text:YssrYlgQi,verticalAlignment:\"top\",withExternalLayout:true})]}),/*#__PURE__*/_jsx(motion.div,{className:\"framer-11luc9r\",\"data-framer-name\":\"BG\",layoutDependency:layoutDependency,layoutId:\"Lf1sajQ2C\",style:{borderBottomLeftRadius:11,borderBottomRightRadius:11,borderTopLeftRadius:11,borderTopRightRadius:11}})]})})})});});const css=[\"@supports (aspect-ratio: 1) { body { --framer-aspect-ratio-supported: auto; } }\",\".framer-QiNAU.framer-nerafn, .framer-QiNAU .framer-nerafn { display: block; }\",\".framer-QiNAU.framer-rmpgvs { align-content: center; align-items: center; cursor: default; display: flex; flex-direction: column; flex-wrap: nowrap; gap: 16px; height: min-content; justify-content: center; overflow: hidden; padding: 24px; position: relative; width: 308px; will-change: var(--framer-will-change-override, transform); }\",\".framer-QiNAU .framer-1hrm6ia { align-content: center; align-items: center; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; gap: 10px; height: min-content; justify-content: center; overflow: visible; padding: 0px; position: relative; width: min-content; z-index: 1; }\",\".framer-QiNAU .framer-a0czyx-container { flex: none; height: 66px; position: relative; width: 66px; }\",\".framer-QiNAU .framer-hcpnl4 { align-content: center; align-items: center; display: flex; flex: none; flex-direction: column; flex-wrap: nowrap; gap: 8px; height: min-content; justify-content: center; overflow: hidden; padding: 0px; position: relative; width: 100%; z-index: 1; }\",\".framer-QiNAU .framer-5blrb6, .framer-QiNAU .framer-13qi3hl { flex: none; height: auto; position: relative; white-space: pre-wrap; width: 100%; word-break: break-word; word-wrap: break-word; }\",\".framer-QiNAU .framer-11luc9r { bottom: 1px; flex: none; left: 1px; overflow: visible; position: absolute; right: 1px; top: 1px; z-index: 0; }\",\"@supports (background: -webkit-named-image(i)) and (not (font-palette:dark)) { .framer-QiNAU.framer-rmpgvs, .framer-QiNAU .framer-1hrm6ia, .framer-QiNAU .framer-hcpnl4 { gap: 0px; } .framer-QiNAU.framer-rmpgvs > * { margin: 0px; margin-bottom: calc(16px / 2); margin-top: calc(16px / 2); } .framer-QiNAU.framer-rmpgvs > :first-child, .framer-QiNAU .framer-hcpnl4 > :first-child { margin-top: 0px; } .framer-QiNAU.framer-rmpgvs > :last-child, .framer-QiNAU .framer-hcpnl4 > :last-child { margin-bottom: 0px; } .framer-QiNAU .framer-1hrm6ia > * { margin: 0px; margin-left: calc(10px / 2); margin-right: calc(10px / 2); } .framer-QiNAU .framer-1hrm6ia > :first-child { margin-left: 0px; } .framer-QiNAU .framer-1hrm6ia > :last-child { margin-right: 0px; } .framer-QiNAU .framer-hcpnl4 > * { margin: 0px; margin-bottom: calc(8px / 2); margin-top: calc(8px / 2); } }\",\".framer-QiNAU.framer-v-1dioix3 .framer-a0czyx-container { height: 55px; width: 55px; }\",...sharedStyle.css,...sharedStyle1.css];/**\n * This is a generated Framer component.\n * @framerIntrinsicHeight 228\n * @framerIntrinsicWidth 308\n * @framerCanvasComponentVariantDetails {\"propertyName\":\"variant\",\"data\":{\"default\":{\"layout\":[\"fixed\",\"auto\"]},\"GvskXmch5\":{\"layout\":[\"fixed\",\"auto\"]}}}\n * @framerVariables {\"GCvgLUZrq\":\"animatedIconJson\",\"D2NiZ5OHn\":\"animationSpeed\",\"d3DGlGQ78\":\"title\",\"YssrYlgQi\":\"description\"}\n * @framerImmutableVariables true\n * @framerDisplayContentsDiv false\n * @framerComponentViewportWidth true\n */const FrameruUCvdlGwy=withCSS(Component,css,\"framer-QiNAU\");export default FrameruUCvdlGwy;FrameruUCvdlGwy.displayName=\"Cards/Benefits\";FrameruUCvdlGwy.defaultProps={height:228,width:308};addPropertyControls(FrameruUCvdlGwy,{variant:{options:[\"XHwcI4e2F\",\"GvskXmch5\"],optionTitles:[\"Desktop/Tablet\",\"Phone\"],title:\"Variant\",type:ControlType.Enum},GCvgLUZrq:(LottieControls===null||LottieControls===void 0?void 0:LottieControls[\"srcFile\"])&&{...LottieControls[\"srcFile\"],__defaultAssetReference:\"data:framer/asset-reference,3wv4JWhMwcG8CSsZj2zdw0TXrY.json?originalFilename=Design.json\",description:\"\",hidden:undefined,title:\"Animated Icon (.json)\"},D2NiZ5OHn:{defaultValue:.6,displayStepper:true,max:10,min:0,step:.5,title:\"Animation speed\",type:ControlType.Number},d3DGlGQ78:{defaultValue:\"Expert designers\",displayTextArea:false,title:\"Title\",type:ControlType.String},YssrYlgQi:{defaultValue:\"Access to a team of expert and talented designers\",displayTextArea:true,title:\"Description\",type:ControlType.String}});addFonts(FrameruUCvdlGwy,[{explicitInter:true,fonts:[{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F\",url:\"https://framerusercontent.com/assets/5vvr9Vy74if2I6bQbJvbw7SY1pQ.woff2\",weight:\"400\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116\",url:\"https://framerusercontent.com/assets/EOr0mi4hNtlgWNn9if640EZzXCo.woff2\",weight:\"400\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+1F00-1FFF\",url:\"https://framerusercontent.com/assets/Y9k9QrlZAqio88Klkmbd8VoMQc.woff2\",weight:\"400\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0370-03FF\",url:\"https://framerusercontent.com/assets/OYrD2tBIBPvoJXiIHnLoOXnY9M.woff2\",weight:\"400\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF\",url:\"https://framerusercontent.com/assets/JeYwfuaPfZHQhEG8U5gtPDZ7WQ.woff2\",weight:\"400\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD\",url:\"https://framerusercontent.com/assets/vQyevYAyHtARFwPqUzQGpnDs.woff2\",weight:\"400\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB\",url:\"https://framerusercontent.com/assets/b6Y37FthZeALduNqHicBT6FutY.woff2\",weight:\"400\"}]},...LottieFonts,...getFontsFromSharedStyle(sharedStyle.fonts),...getFontsFromSharedStyle(sharedStyle1.fonts)],{supportsExplicitInterCodegen:true});\nexport const __FramerMetadata__ = {\"exports\":{\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"default\":{\"type\":\"reactComponent\",\"name\":\"FrameruUCvdlGwy\",\"slots\":[],\"annotations\":{\"framerVariables\":\"{\\\"GCvgLUZrq\\\":\\\"animatedIconJson\\\",\\\"D2NiZ5OHn\\\":\\\"animationSpeed\\\",\\\"d3DGlGQ78\\\":\\\"title\\\",\\\"YssrYlgQi\\\":\\\"description\\\"}\",\"framerCanvasComponentVariantDetails\":\"{\\\"propertyName\\\":\\\"variant\\\",\\\"data\\\":{\\\"default\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"auto\\\"]},\\\"GvskXmch5\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"auto\\\"]}}}\",\"framerIntrinsicHeight\":\"228\",\"framerIntrinsicWidth\":\"308\",\"framerContractVersion\":\"1\",\"framerImmutableVariables\":\"true\",\"framerComponentViewportWidth\":\"true\",\"framerDisplayContentsDiv\":\"false\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./uUCvdlGwy.map", "// Generated by Framer (f030ee3)\nimport{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{addFonts,addPropertyControls,ComponentViewportProvider,ControlType,cx,getFonts,getFontsFromSharedStyle,RichText,SmartComponentScopedContainer,SVG,useComponentViewport,useLocaleInfo,useVariantState,withCSS}from\"framer\";import{LayoutGroup,motion,MotionConfigContext}from\"framer-motion\";import*as React from\"react\";import{useRef}from\"react\";import{Icon as Phosphor}from\"https://framerusercontent.com/modules/tYScH7LTqUtz5KUaUAYP/p8dptk4UIND8hbFWz9V7/Phosphor.js\";import*as sharedStyle1 from\"https://framerusercontent.com/modules/plnNbTCg6n271q4fCjax/lr3qtcl0tCR0czhaQd5t/IZpeieEjn.js\";import*as sharedStyle from\"https://framerusercontent.com/modules/yl4TVXEZA8FyQNuQkXZi/obXBpFps8MI5i4aIAdiU/vKGxKv6WT.js\";const PhosphorFonts=getFonts(Phosphor);const cycleOrder=[\"hlCjCLcd1\",\"RCSbjZupD\",\"MxgA9mGRn\"];const serializationHash=\"framer-NceQy\";const variantClassNames={hlCjCLcd1:\"framer-v-p0840z\",MxgA9mGRn:\"framer-v-jqdp0u\",RCSbjZupD:\"framer-v-fsg1vt\"};function addPropertyOverrides(overrides,...variants){const nextOverrides={};variants?.forEach(variant=>variant&&Object.assign(nextOverrides,overrides[variant]));return nextOverrides;}const transition1={damping:30,delay:0,mass:1,stiffness:200,type:\"spring\"};const animation={filter:\"blur(10px)\",opacity:.001,rotate:0,scale:1,skewX:0,skewY:0,x:0,y:10};const transition2={damping:30,delay:.05,mass:1,stiffness:150,type:\"spring\"};const textEffect={effect:animation,repeat:false,tokenization:\"line\",transition:transition2,trigger:\"onInView\",type:\"appear\"};const Transition=({value,children})=>{const config=React.useContext(MotionConfigContext);const transition=value??config.transition;const contextValue=React.useMemo(()=>({...config,transition}),[JSON.stringify(transition)]);return /*#__PURE__*/_jsx(MotionConfigContext.Provider,{value:contextValue,children:children});};const Variants=motion.create(React.Fragment);const humanReadableVariantMap={Desktop:\"hlCjCLcd1\",Phone:\"MxgA9mGRn\",Tablet:\"RCSbjZupD\"};const getProps=({description,height,id,title,width,...props})=>{return{...props,DXWWgGjsz:description??props.DXWWgGjsz??\"Description\",tLs69h6vu:title??props.tLs69h6vu??\"Title\",variant:humanReadableVariantMap[props.variant]??props.variant??\"hlCjCLcd1\"};};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,tLs69h6vu,DXWWgGjsz,...restProps}=getProps(props);const{baseVariant,classNames,clearLoadingGesture,gestureHandlers,gestureVariant,isLoading,setGestureState,setVariant,variants}=useVariantState({cycleOrder,defaultVariant:\"hlCjCLcd1\",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,children:/*#__PURE__*/_jsx(motion.div,{...restProps,...gestureHandlers,className:cx(scopingClassNames,\"framer-p0840z\",className,classNames),\"data-framer-name\":\"Desktop\",layoutDependency:layoutDependency,layoutId:\"hlCjCLcd1\",ref:refBinding,style:{background:'radial-gradient(50% 50% at 50% 50%, var(--token-ab8a1628-3695-47a5-8496-32bf3ecfdf66, rgb(21, 58, 161)) /* {\"name\":\"Blue\"} */ 0%, var(--token-17d94287-c97e-4602-9cf7-4d2036e50e01, rgb(0, 24, 94)) /* {\"name\":\"Dark blue\"} */ 100%)',borderBottomLeftRadius:12,borderBottomRightRadius:12,borderTopLeftRadius:12,borderTopRightRadius:12,...style},...addPropertyOverrides({MxgA9mGRn:{\"data-framer-name\":\"Phone\"},RCSbjZupD:{\"data-framer-name\":\"Tablet\"}},baseVariant,gestureVariant),children:/*#__PURE__*/_jsxs(motion.div,{className:\"framer-sf1q5f\",\"data-framer-name\":\"Content\",layoutDependency:layoutDependency,layoutId:\"yr22chMjA\",style:{background:'linear-gradient(130deg, var(--token-f5d2506d-9c8c-423b-a07c-4bdb7316df89, rgba(5, 5, 5, 0.75)) /* {\"name\":\"Black 75%\"} */ 0%, var(--token-7be8625f-297b-4b2a-908d-7056e5d82d0a, rgb(5, 5, 5)) /* {\"name\":\"Black\"} */ 120%)',borderBottomLeftRadius:11,borderBottomRightRadius:11,borderTopLeftRadius:11,borderTopRightRadius:11},children:[/*#__PURE__*/_jsx(motion.div,{className:\"framer-jpyaua\",\"data-framer-name\":\"Interaction\",layoutDependency:layoutDependency,layoutId:\"EtJRuEYY6\",style:{borderTopLeftRadius:9,borderTopRightRadius:9},children:/*#__PURE__*/_jsxs(motion.div,{className:\"framer-12c6h3v\",\"data-framer-name\":\"Container\",layoutDependency:layoutDependency,layoutId:\"gy_Ox9_DS\",style:{borderBottomLeftRadius:8,borderBottomRightRadius:8,borderTopLeftRadius:8,borderTopRightRadius:8,mask:\"linear-gradient(180deg, rgb(0, 0, 0) 80%, rgba(0, 0, 0, 0) 100%) add\",WebkitMask:\"linear-gradient(180deg, rgb(0, 0, 0) 80%, rgba(0, 0, 0, 0) 100%) add\"},children:[/*#__PURE__*/_jsxs(motion.div,{className:\"framer-h41hct\",\"data-border\":true,\"data-framer-name\":\"Chatbox\",layoutDependency:layoutDependency,layoutId:\"bBqJ4s1JE\",style:{\"--border-bottom-width\":\"1px\",\"--border-color\":\"var(--token-b065af26-ed04-4754-81f1-004a104fdd7f, rgba(0, 24, 94, 0.3))\",\"--border-left-width\":\"1px\",\"--border-right-width\":\"1px\",\"--border-style\":\"solid\",\"--border-top-width\":\"1px\",backgroundColor:\"rgba(5, 5, 5, 0.5)\",borderBottomLeftRadius:9,borderBottomRightRadius:9,borderTopLeftRadius:9,borderTopRightRadius:9},children:[/*#__PURE__*/_jsxs(motion.div,{className:\"framer-5v4cje\",\"data-framer-name\":\"User\",layoutDependency:layoutDependency,layoutId:\"Abnx5WvNw\",children:[/*#__PURE__*/_jsxs(motion.div,{className:\"framer-1n1to2j\",\"data-framer-name\":\"Title\",layoutDependency:layoutDependency,layoutId:\"BTBFAWt2u\",children:[/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{style:{\"--framer-font-size\":\"14px\",\"--framer-line-height\":\"1.4em\",\"--framer-text-alignment\":\"left\",\"--framer-text-color\":\"var(--extracted-r6o4lv, var(--token-f4f48dc3-167d-47d5-90e8-15dc8302feb5, rgb(168, 168, 168)))\"},children:\"Customer\"})}),className:\"framer-1vrhg7n\",fonts:[\"Inter\"],layoutDependency:layoutDependency,layoutId:\"uGiNDPo2S\",style:{\"--extracted-r6o4lv\":\"var(--token-f4f48dc3-167d-47d5-90e8-15dc8302feb5, rgb(168, 168, 168))\",\"--framer-link-text-color\":\"rgb(0, 153, 255)\",\"--framer-link-text-decoration\":\"underline\"},verticalAlignment:\"top\",withExternalLayout:true}),/*#__PURE__*/_jsx(motion.div,{className:\"framer-1xhck3n\",\"data-border\":true,layoutDependency:layoutDependency,layoutId:\"KVHfa0QOY\",style:{\"--border-bottom-width\":\"1px\",\"--border-color\":\"var(--token-ef727c83-0227-4900-b478-e0fde1daabc5, rgb(38, 38, 38))\",\"--border-left-width\":\"1px\",\"--border-right-width\":\"1px\",\"--border-style\":\"solid\",\"--border-top-width\":\"1px\",background:'linear-gradient(180deg, var(--token-7be8625f-297b-4b2a-908d-7056e5d82d0a, rgb(5, 5, 5)) /* {\"name\":\"Black\"} */ 0%, var(--token-ef727c83-0227-4900-b478-e0fde1daabc5, rgb(38, 38, 38)) /* {\"name\":\"Gray 800\"} */ 100%)',borderBottomLeftRadius:30,borderBottomRightRadius:30,borderTopLeftRadius:30,borderTopRightRadius:30},children:/*#__PURE__*/_jsx(ComponentViewportProvider,{children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-20wzxu-container\",isAuthoredByUser:true,isModuleExternal:true,layoutDependency:layoutDependency,layoutId:\"neh4IbEN4-container\",nodeId:\"neh4IbEN4\",rendersWithMotion:true,scopeId:\"wWjfgdtli\",children:/*#__PURE__*/_jsx(Phosphor,{color:\"var(--token-8e562c71-b86d-432e-ad04-cd3f03e73a71, rgb(255, 255, 255))\",height:\"100%\",iconSearch:\"House\",iconSelection:\"User\",id:\"neh4IbEN4\",layoutId:\"neh4IbEN4\",mirrored:false,selectByList:true,style:{height:\"100%\",width:\"100%\"},weight:\"regular\",width:\"100%\"})})})})]}),/*#__PURE__*/_jsx(motion.div,{className:\"framer-wf1gpj\",layoutDependency:layoutDependency,layoutId:\"mNRWjtnGg\",children:/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{style:{\"--font-selector\":\"SW50ZXItTGlnaHQ=\",\"--framer-font-family\":'\"Inter\", \"Inter Placeholder\", sans-serif',\"--framer-font-size\":\"12px\",\"--framer-font-weight\":\"300\",\"--framer-line-height\":\"1.4em\",\"--framer-text-alignment\":\"right\",\"--framer-text-color\":\"var(--extracted-r6o4lv, var(--token-71ea3e47-bcbd-4707-9061-859b6588ce9a, rgb(120, 120, 120)))\"},children:\"How can Bit4Bit AI help improve my business processes?\"})}),className:\"framer-1916f4n\",fonts:[\"Inter-Light\"],layoutDependency:layoutDependency,layoutId:\"CFY4_NAph\",style:{\"--extracted-r6o4lv\":\"var(--token-71ea3e47-bcbd-4707-9061-859b6588ce9a, rgb(120, 120, 120))\",\"--framer-link-text-color\":\"rgb(0, 153, 255)\",\"--framer-link-text-decoration\":\"underline\"},verticalAlignment:\"top\",withExternalLayout:true})})]}),/*#__PURE__*/_jsxs(motion.div,{className:\"framer-1byh0bl\",\"data-framer-name\":\"AI\",layoutDependency:layoutDependency,layoutId:\"SmOtcjsAa\",children:[/*#__PURE__*/_jsxs(motion.div,{className:\"framer-1xohghz\",\"data-framer-name\":\"Title\",layoutDependency:layoutDependency,layoutId:\"NtWPupbh8\",children:[/*#__PURE__*/_jsx(motion.div,{className:\"framer-1uf09ra\",\"data-border\":true,layoutDependency:layoutDependency,layoutId:\"ZZFXpccbK\",style:{\"--border-bottom-width\":\"1px\",\"--border-color\":\"var(--token-17d94287-c97e-4602-9cf7-4d2036e50e01, rgb(0, 24, 94))\",\"--border-left-width\":\"1px\",\"--border-right-width\":\"1px\",\"--border-style\":\"solid\",\"--border-top-width\":\"1px\",background:'linear-gradient(180deg, var(--token-17d94287-c97e-4602-9cf7-4d2036e50e01, rgb(0, 24, 94)) /* {\"name\":\"Dark blue\"} */ 0%, var(--token-7be8625f-297b-4b2a-908d-7056e5d82d0a, rgb(5, 5, 5)) /* {\"name\":\"Black\"} */ 100%)',borderBottomLeftRadius:30,borderBottomRightRadius:30,borderTopLeftRadius:30,borderTopRightRadius:30},children:/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{style:{\"--framer-text-alignment\":\"center\",\"--framer-text-color\":\"var(--extracted-r6o4lv, var(--token-d085bc1e-c0c1-4753-8ee2-8e531ff7b917, rgb(242, 242, 242)))\"},children:\"AI\"})}),className:\"framer-tuz7ct\",fonts:[\"Inter\"],layoutDependency:layoutDependency,layoutId:\"qSLnT8z3i\",style:{\"--extracted-r6o4lv\":\"var(--token-d085bc1e-c0c1-4753-8ee2-8e531ff7b917, rgb(242, 242, 242))\",\"--framer-link-text-color\":\"rgb(0, 153, 255)\",\"--framer-link-text-decoration\":\"underline\"},verticalAlignment:\"top\",withExternalLayout:true})}),/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{style:{\"--framer-font-size\":\"14px\",\"--framer-line-height\":\"1.4em\",\"--framer-text-alignment\":\"left\",\"--framer-text-color\":\"var(--extracted-r6o4lv, var(--token-f4f48dc3-167d-47d5-90e8-15dc8302feb5, rgb(168, 168, 168)))\"},children:\"AI Assistant\"})}),className:\"framer-14zdb33\",fonts:[\"Inter\"],layoutDependency:layoutDependency,layoutId:\"K8JIpse_0\",style:{\"--extracted-r6o4lv\":\"var(--token-f4f48dc3-167d-47d5-90e8-15dc8302feb5, rgb(168, 168, 168))\",\"--framer-link-text-color\":\"rgb(0, 153, 255)\",\"--framer-link-text-decoration\":\"underline\"},verticalAlignment:\"top\",withExternalLayout:true})]}),/*#__PURE__*/_jsx(motion.div,{className:\"framer-kyyd12\",layoutDependency:layoutDependency,layoutId:\"m6ZoEWiMW\",children:/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{style:{\"--font-selector\":\"SW50ZXItTGlnaHQ=\",\"--framer-font-family\":'\"Inter\", \"Inter Placeholder\", sans-serif',\"--framer-font-size\":\"12px\",\"--framer-font-weight\":\"300\",\"--framer-line-height\":\"1.4em\",\"--framer-text-color\":\"var(--extracted-r6o4lv, var(--token-71ea3e47-bcbd-4707-9061-859b6588ce9a, rgb(120, 120, 120)))\"},children:\"Bit4Bit AI can significantly improve your business processes by leveraging artificial intelligence to automate repetitive tasks, optimize workflows, and provide data-driven insights\"})}),className:\"framer-i5etkj\",effect:textEffect,fonts:[\"Inter-Light\"],layoutDependency:layoutDependency,layoutId:\"Ac0fPwuUN\",style:{\"--extracted-r6o4lv\":\"var(--token-71ea3e47-bcbd-4707-9061-859b6588ce9a, rgb(120, 120, 120))\",\"--framer-link-text-color\":\"rgb(0, 153, 255)\",\"--framer-link-text-decoration\":\"underline\"},verticalAlignment:\"top\",withExternalLayout:true,...addPropertyOverrides({MxgA9mGRn:{effect:undefined}},baseVariant,gestureVariant)})})]})]}),/*#__PURE__*/_jsxs(motion.div,{className:\"framer-1022ve9\",\"data-border\":true,\"data-framer-name\":\"Write here\",layoutDependency:layoutDependency,layoutId:\"sKG6u61UZ\",style:{\"--border-bottom-width\":\"1px\",\"--border-color\":\"var(--token-b065af26-ed04-4754-81f1-004a104fdd7f, rgba(0, 24, 94, 0.3))\",\"--border-left-width\":\"1px\",\"--border-right-width\":\"1px\",\"--border-style\":\"solid\",\"--border-top-width\":\"1px\",backgroundColor:\"rgba(5, 5, 5, 0.5)\",borderBottomLeftRadius:10,borderBottomRightRadius:10,borderTopLeftRadius:10,borderTopRightRadius:10},children:[/*#__PURE__*/_jsx(ComponentViewportProvider,{children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-1mzcwsm-container\",isAuthoredByUser:true,isModuleExternal:true,layoutDependency:layoutDependency,layoutId:\"ocE4dG7cg-container\",nodeId:\"ocE4dG7cg\",rendersWithMotion:true,scopeId:\"wWjfgdtli\",children:/*#__PURE__*/_jsx(Phosphor,{color:\"var(--token-71ea3e47-bcbd-4707-9061-859b6588ce9a, rgb(105, 105, 105))\",height:\"100%\",iconSearch:\"House\",iconSelection:\"Paperclip\",id:\"ocE4dG7cg\",layoutId:\"ocE4dG7cg\",mirrored:false,selectByList:true,style:{height:\"100%\",width:\"100%\"},weight:\"regular\",width:\"100%\"})})}),/*#__PURE__*/_jsx(ComponentViewportProvider,{children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-llyucr-container\",isAuthoredByUser:true,isModuleExternal:true,layoutDependency:layoutDependency,layoutId:\"QzA4jYG8v-container\",nodeId:\"QzA4jYG8v\",rendersWithMotion:true,scopeId:\"wWjfgdtli\",children:/*#__PURE__*/_jsx(Phosphor,{color:\"var(--token-71ea3e47-bcbd-4707-9061-859b6588ce9a, rgb(105, 105, 105))\",height:\"100%\",iconSearch:\"House\",iconSelection:\"Image\",id:\"QzA4jYG8v\",layoutId:\"QzA4jYG8v\",mirrored:false,selectByList:true,style:{height:\"100%\",width:\"100%\"},weight:\"regular\",width:\"100%\"})})}),/*#__PURE__*/_jsx(motion.div,{className:\"framer-jpc8fz\",layoutDependency:layoutDependency,layoutId:\"MjMevrAT4\"}),/*#__PURE__*/_jsx(SVG,{className:\"framer-10cthgj\",\"data-framer-name\":\"Vector\",layout:\"position\",layoutDependency:layoutDependency,layoutId:\"K0pEtN4PI\",opacity:1,svg:'<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" viewBox=\"0 0 15 15\"><path d=\"M 1.347 7.218 L 0.844 2.687 C 0.7 1.39 2.035 0.438 3.214 0.997 L 13.167 5.712 C 14.438 6.313 14.438 8.122 13.167 8.723 L 3.214 13.439 C 2.035 13.998 0.7 13.046 0.844 11.749 Z M 1.347 7.218 L 7.181 7.218\" fill=\"transparent\" stroke-width=\"1.3\" stroke=\"var(--token-d085bc1e-c0c1-4753-8ee2-8e531ff7b917, rgb(242, 242, 242))\" stroke-linecap=\"round\" stroke-linejoin=\"round\"></path></svg>',svgContentId:11904909524,withExternalLayout:true})]})]})}),/*#__PURE__*/_jsxs(motion.div,{className:\"framer-1m5ccbc\",\"data-framer-name\":\"Info\",layoutDependency:layoutDependency,layoutId:\"l9SwJ2DjG\",children:[/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.h3,{className:\"framer-styles-preset-5a4759\",\"data-styles-preset\":\"vKGxKv6WT\",children:\"Title\"})}),className:\"framer-1s8qqjs\",fonts:[\"Inter\"],layoutDependency:layoutDependency,layoutId:\"ZEwLsdfje\",style:{\"--framer-link-text-color\":\"rgb(0, 153, 255)\",\"--framer-link-text-decoration\":\"underline\"},text:tLs69h6vu,verticalAlignment:\"top\",withExternalLayout:true}),/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{className:\"framer-styles-preset-f8bv20\",\"data-styles-preset\":\"IZpeieEjn\",children:\"Description\"})}),className:\"framer-lf0cd1\",fonts:[\"Inter\"],layoutDependency:layoutDependency,layoutId:\"bbTDrZqxD\",style:{\"--framer-link-text-color\":\"rgb(0, 153, 255)\",\"--framer-link-text-decoration\":\"underline\"},text:DXWWgGjsz,verticalAlignment:\"top\",withExternalLayout:true})]})]})})})})});});const css=[\"@supports (aspect-ratio: 1) { body { --framer-aspect-ratio-supported: auto; } }\",\".framer-NceQy.framer-jwb4d3, .framer-NceQy .framer-jwb4d3 { display: block; }\",\".framer-NceQy.framer-p0840z { align-content: center; align-items: center; cursor: default; display: flex; flex-direction: row; flex-wrap: nowrap; gap: 10px; height: 417px; justify-content: center; overflow: hidden; padding: 1px; position: relative; width: 794px; will-change: var(--framer-will-change-override, transform); }\",\".framer-NceQy .framer-sf1q5f { align-content: flex-start; align-items: flex-start; display: flex; flex: 1 0 0px; flex-direction: column; flex-wrap: nowrap; gap: 12px; height: 100%; justify-content: flex-start; overflow: hidden; padding: 12px; position: relative; width: 1px; will-change: var(--framer-will-change-override, transform); z-index: 1; }\",\".framer-NceQy .framer-jpyaua { align-content: flex-start; align-items: flex-start; display: flex; flex: 1 0 0px; flex-direction: row; flex-wrap: nowrap; gap: 8px; height: 1px; justify-content: center; overflow: visible; padding: 8px; position: relative; width: 100%; }\",\".framer-NceQy .framer-12c6h3v { align-content: center; align-items: center; display: flex; flex: 1 0 0px; flex-direction: column; flex-wrap: nowrap; gap: 12px; height: 100%; justify-content: center; min-height: 280px; overflow: visible; padding: 0px; position: relative; width: 1px; }\",\".framer-NceQy .framer-h41hct { align-content: flex-start; align-items: flex-start; display: flex; flex: 1 0 0px; flex-direction: column; flex-wrap: nowrap; gap: 32px; height: 1px; justify-content: center; overflow: hidden; padding: 14px; position: relative; width: 100%; will-change: var(--framer-will-change-override, transform); }\",\".framer-NceQy .framer-5v4cje, .framer-NceQy .framer-1byh0bl { align-content: center; align-items: center; display: flex; flex: none; flex-direction: column; flex-wrap: nowrap; gap: 0px; height: min-content; justify-content: center; overflow: visible; padding: 0px; position: relative; width: 100%; }\",\".framer-NceQy .framer-1n1to2j { align-content: center; align-items: center; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; gap: 8px; height: min-content; justify-content: flex-end; overflow: visible; padding: 0px; position: relative; width: 100%; }\",\".framer-NceQy .framer-1vrhg7n, .framer-NceQy .framer-tuz7ct { flex: none; height: auto; position: relative; white-space: pre; width: auto; }\",\".framer-NceQy .framer-1xhck3n, .framer-NceQy .framer-1uf09ra { align-content: center; align-items: center; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; gap: 10px; height: 39px; justify-content: center; overflow: visible; padding: 0px; position: relative; width: 39px; }\",\".framer-NceQy .framer-20wzxu-container { flex: none; height: 19px; position: relative; width: 19px; }\",\".framer-NceQy .framer-wf1gpj { align-content: center; align-items: center; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; gap: 8px; height: min-content; justify-content: flex-end; overflow: visible; padding: 0px 50px 0px 0px; position: relative; width: 100%; }\",\".framer-NceQy .framer-1916f4n { flex: 1 0 0px; height: auto; max-width: 320px; position: relative; white-space: pre-wrap; width: 1px; word-break: break-word; word-wrap: break-word; }\",\".framer-NceQy .framer-1xohghz { align-content: center; align-items: center; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; gap: 8px; height: min-content; justify-content: center; overflow: visible; padding: 0px; position: relative; width: 100%; }\",\".framer-NceQy .framer-14zdb33 { flex: 1 0 0px; height: auto; position: relative; white-space: pre-wrap; width: 1px; word-break: break-word; word-wrap: break-word; }\",\".framer-NceQy .framer-kyyd12 { align-content: center; align-items: center; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; gap: 8px; height: min-content; justify-content: flex-start; overflow: visible; padding: 0px 0px 0px 50px; position: relative; width: 100%; }\",\".framer-NceQy .framer-i5etkj { flex: 1 0 0px; height: auto; max-width: 400px; position: relative; white-space: pre-wrap; width: 1px; word-break: break-word; word-wrap: break-word; }\",\".framer-NceQy .framer-1022ve9 { align-content: center; align-items: center; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; gap: 10px; height: 45px; justify-content: center; overflow: hidden; padding: 14px; position: relative; width: 100%; will-change: var(--framer-will-change-override, transform); }\",\".framer-NceQy .framer-1mzcwsm-container, .framer-NceQy .framer-llyucr-container, .framer-NceQy .framer-10cthgj { flex: none; height: 15px; position: relative; width: 15px; }\",\".framer-NceQy .framer-jpc8fz { align-content: center; align-items: center; display: flex; flex: 1 0 0px; flex-direction: row; flex-wrap: nowrap; gap: 5px; height: min-content; justify-content: flex-start; min-height: 6px; overflow: visible; padding: 0px; position: relative; width: 1px; z-index: 1; }\",\".framer-NceQy .framer-1m5ccbc { align-content: flex-start; align-items: flex-start; display: flex; flex: none; flex-direction: column; flex-wrap: nowrap; gap: 8px; height: min-content; justify-content: center; overflow: hidden; padding: 8px; position: relative; width: 100%; }\",\".framer-NceQy .framer-1s8qqjs { flex: none; height: auto; max-width: 600px; position: relative; white-space: pre-wrap; width: 100%; word-break: break-word; word-wrap: break-word; z-index: 1; }\",\".framer-NceQy .framer-lf0cd1 { flex: none; height: auto; max-width: 580px; position: relative; white-space: pre-wrap; width: 100%; word-break: break-word; word-wrap: break-word; z-index: 1; }\",\"@supports (background: -webkit-named-image(i)) and (not (font-palette:dark)) { .framer-NceQy.framer-p0840z, .framer-NceQy .framer-sf1q5f, .framer-NceQy .framer-jpyaua, .framer-NceQy .framer-12c6h3v, .framer-NceQy .framer-h41hct, .framer-NceQy .framer-5v4cje, .framer-NceQy .framer-1n1to2j, .framer-NceQy .framer-1xhck3n, .framer-NceQy .framer-wf1gpj, .framer-NceQy .framer-1byh0bl, .framer-NceQy .framer-1xohghz, .framer-NceQy .framer-1uf09ra, .framer-NceQy .framer-kyyd12, .framer-NceQy .framer-1022ve9, .framer-NceQy .framer-jpc8fz, .framer-NceQy .framer-1m5ccbc { gap: 0px; } .framer-NceQy.framer-p0840z > *, .framer-NceQy .framer-1xhck3n > *, .framer-NceQy .framer-1uf09ra > *, .framer-NceQy .framer-1022ve9 > * { margin: 0px; margin-left: calc(10px / 2); margin-right: calc(10px / 2); } .framer-NceQy.framer-p0840z > :first-child, .framer-NceQy .framer-jpyaua > :first-child, .framer-NceQy .framer-1n1to2j > :first-child, .framer-NceQy .framer-1xhck3n > :first-child, .framer-NceQy .framer-wf1gpj > :first-child, .framer-NceQy .framer-1xohghz > :first-child, .framer-NceQy .framer-1uf09ra > :first-child, .framer-NceQy .framer-kyyd12 > :first-child, .framer-NceQy .framer-1022ve9 > :first-child, .framer-NceQy .framer-jpc8fz > :first-child { margin-left: 0px; } .framer-NceQy.framer-p0840z > :last-child, .framer-NceQy .framer-jpyaua > :last-child, .framer-NceQy .framer-1n1to2j > :last-child, .framer-NceQy .framer-1xhck3n > :last-child, .framer-NceQy .framer-wf1gpj > :last-child, .framer-NceQy .framer-1xohghz > :last-child, .framer-NceQy .framer-1uf09ra > :last-child, .framer-NceQy .framer-kyyd12 > :last-child, .framer-NceQy .framer-1022ve9 > :last-child, .framer-NceQy .framer-jpc8fz > :last-child { margin-right: 0px; } .framer-NceQy .framer-sf1q5f > *, .framer-NceQy .framer-12c6h3v > * { margin: 0px; margin-bottom: calc(12px / 2); margin-top: calc(12px / 2); } .framer-NceQy .framer-sf1q5f > :first-child, .framer-NceQy .framer-12c6h3v > :first-child, .framer-NceQy .framer-h41hct > :first-child, .framer-NceQy .framer-5v4cje > :first-child, .framer-NceQy .framer-1byh0bl > :first-child, .framer-NceQy .framer-1m5ccbc > :first-child { margin-top: 0px; } .framer-NceQy .framer-sf1q5f > :last-child, .framer-NceQy .framer-12c6h3v > :last-child, .framer-NceQy .framer-h41hct > :last-child, .framer-NceQy .framer-5v4cje > :last-child, .framer-NceQy .framer-1byh0bl > :last-child, .framer-NceQy .framer-1m5ccbc > :last-child { margin-bottom: 0px; } .framer-NceQy .framer-jpyaua > *, .framer-NceQy .framer-1n1to2j > *, .framer-NceQy .framer-wf1gpj > *, .framer-NceQy .framer-1xohghz > *, .framer-NceQy .framer-kyyd12 > * { margin: 0px; margin-left: calc(8px / 2); margin-right: calc(8px / 2); } .framer-NceQy .framer-h41hct > * { margin: 0px; margin-bottom: calc(32px / 2); margin-top: calc(32px / 2); } .framer-NceQy .framer-5v4cje > *, .framer-NceQy .framer-1byh0bl > * { margin: 0px; margin-bottom: calc(0px / 2); margin-top: calc(0px / 2); } .framer-NceQy .framer-jpc8fz > * { margin: 0px; margin-left: calc(5px / 2); margin-right: calc(5px / 2); } .framer-NceQy .framer-1m5ccbc > * { margin: 0px; margin-bottom: calc(8px / 2); margin-top: calc(8px / 2); } }\",\".framer-NceQy.framer-v-fsg1vt.framer-p0840z { height: 468px; width: 475px; }\",\".framer-NceQy.framer-v-fsg1vt .framer-jpyaua { padding: 0px; }\",\".framer-NceQy.framer-v-fsg1vt .framer-1xhck3n, .framer-NceQy.framer-v-fsg1vt .framer-1uf09ra, .framer-NceQy.framer-v-jqdp0u .framer-1xhck3n, .framer-NceQy.framer-v-jqdp0u .framer-1uf09ra { height: 38px; width: 38px; }\",\".framer-NceQy.framer-v-jqdp0u.framer-p0840z { height: min-content; width: 333px; }\",\".framer-NceQy.framer-v-jqdp0u .framer-sf1q5f { height: min-content; }\",\".framer-NceQy.framer-v-jqdp0u .framer-jpyaua { flex: none; height: min-content; padding: 0px; }\",\".framer-NceQy.framer-v-jqdp0u .framer-12c6h3v { height: min-content; min-height: unset; }\",\".framer-NceQy.framer-v-jqdp0u .framer-h41hct { flex: none; height: min-content; }\",\".framer-NceQy.framer-v-jqdp0u .framer-wf1gpj { padding: 0px 48px 0px 0px; }\",\".framer-NceQy.framer-v-jqdp0u .framer-kyyd12 { padding: 0px 0px 0px 48px; }\",...sharedStyle.css,...sharedStyle1.css,'.framer-NceQy[data-border=\"true\"]::after, .framer-NceQy [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 417\n * @framerIntrinsicWidth 794\n * @framerCanvasComponentVariantDetails {\"propertyName\":\"variant\",\"data\":{\"default\":{\"layout\":[\"fixed\",\"fixed\"]},\"RCSbjZupD\":{\"layout\":[\"fixed\",\"fixed\"]},\"MxgA9mGRn\":{\"layout\":[\"fixed\",\"auto\"]}}}\n * @framerVariables {\"tLs69h6vu\":\"title\",\"DXWWgGjsz\":\"description\"}\n * @framerImmutableVariables true\n * @framerDisplayContentsDiv false\n * @framerComponentViewportWidth true\n */const FramerwWjfgdtli=withCSS(Component,css,\"framer-NceQy\");export default FramerwWjfgdtli;FramerwWjfgdtli.displayName=\"Service cards/Chatbot\";FramerwWjfgdtli.defaultProps={height:417,width:794};addPropertyControls(FramerwWjfgdtli,{variant:{options:[\"hlCjCLcd1\",\"RCSbjZupD\",\"MxgA9mGRn\"],optionTitles:[\"Desktop\",\"Tablet\",\"Phone\"],title:\"Variant\",type:ControlType.Enum},tLs69h6vu:{defaultValue:\"Title\",displayTextArea:false,title:\"Title\",type:ControlType.String},DXWWgGjsz:{defaultValue:\"Description\",displayTextArea:true,title:\"Description\",type:ControlType.String}});addFonts(FramerwWjfgdtli,[{explicitInter:true,fonts:[{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F\",url:\"https://framerusercontent.com/assets/5vvr9Vy74if2I6bQbJvbw7SY1pQ.woff2\",weight:\"400\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116\",url:\"https://framerusercontent.com/assets/EOr0mi4hNtlgWNn9if640EZzXCo.woff2\",weight:\"400\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+1F00-1FFF\",url:\"https://framerusercontent.com/assets/Y9k9QrlZAqio88Klkmbd8VoMQc.woff2\",weight:\"400\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0370-03FF\",url:\"https://framerusercontent.com/assets/OYrD2tBIBPvoJXiIHnLoOXnY9M.woff2\",weight:\"400\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF\",url:\"https://framerusercontent.com/assets/JeYwfuaPfZHQhEG8U5gtPDZ7WQ.woff2\",weight:\"400\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD\",url:\"https://framerusercontent.com/assets/vQyevYAyHtARFwPqUzQGpnDs.woff2\",weight:\"400\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB\",url:\"https://framerusercontent.com/assets/b6Y37FthZeALduNqHicBT6FutY.woff2\",weight:\"400\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F\",url:\"https://framerusercontent.com/assets/BkDpl4ghaqvMi1btKFyG2tdbec.woff2\",weight:\"300\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116\",url:\"https://framerusercontent.com/assets/zAMK70AQRFSShJgUiaR5IiIhgzk.woff2\",weight:\"300\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+1F00-1FFF\",url:\"https://framerusercontent.com/assets/IETjvc5qzUaRoaruDpPSwCUM8.woff2\",weight:\"300\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0370-03FF\",url:\"https://framerusercontent.com/assets/oLCoaT3ioA0fHdJnWR9W6k7NY.woff2\",weight:\"300\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF\",url:\"https://framerusercontent.com/assets/Sj0PCHQSBjFmEp6NBWg6FNaKc.woff2\",weight:\"300\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD\",url:\"https://framerusercontent.com/assets/v2q8JTTTs7McDMSEhnxAIBqd0.woff2\",weight:\"300\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB\",url:\"https://framerusercontent.com/assets/H4TfENUY1rh8R9UaSD6vngjJP3M.woff2\",weight:\"300\"}]},...PhosphorFonts,...getFontsFromSharedStyle(sharedStyle.fonts),...getFontsFromSharedStyle(sharedStyle1.fonts)],{supportsExplicitInterCodegen:true});\nexport const __FramerMetadata__ = {\"exports\":{\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"default\":{\"type\":\"reactComponent\",\"name\":\"FramerwWjfgdtli\",\"slots\":[],\"annotations\":{\"framerComponentViewportWidth\":\"true\",\"framerIntrinsicWidth\":\"794\",\"framerContractVersion\":\"1\",\"framerVariables\":\"{\\\"tLs69h6vu\\\":\\\"title\\\",\\\"DXWWgGjsz\\\":\\\"description\\\"}\",\"framerCanvasComponentVariantDetails\":\"{\\\"propertyName\\\":\\\"variant\\\",\\\"data\\\":{\\\"default\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"RCSbjZupD\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"MxgA9mGRn\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"auto\\\"]}}}\",\"framerDisplayContentsDiv\":\"false\",\"framerIntrinsicHeight\":\"417\",\"framerImmutableVariables\":\"true\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./wWjfgdtli.map", "import{useState,useEffect}from\"react\";export const isBrowser=()=>typeof document===\"object\";export function usePageVisibility(){if(!isBrowser())return;const[isVisible,setIsVisible]=useState(!document.hidden);useEffect(()=>{const onVisibilityChange=()=>setIsVisible(!document.hidden);document.addEventListener(\"visibilitychange\",onVisibilityChange,false);return()=>{document.removeEventListener(\"visibilitychange\",onVisibilityChange);};},[]);return isVisible;}\nexport const __FramerMetadata__ = {\"exports\":{\"isBrowser\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"usePageVisibility\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./UsePageVisibility.map", "import{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{resize}from\"@motionone/dom\";import{addPropertyControls,ControlType,RenderTarget}from\"framer\";import{animate,LayoutGroup,mix,motion,frame,useInView,useMotionValue,useTransform,wrap}from\"framer-motion\";import{Children,cloneElement,forwardRef,memo,startTransition,useCallback,useEffect,useLayoutEffect,useMemo,useRef,useState}from\"react\";import{usePageVisibility}from\"https://framerusercontent.com/modules/V9ryrjN5Am9WM1dJeyyJ/GzHgU466IQmt8g4qOKj8/UsePageVisibility.js\";function awaitRefCallback(element,controller){let refCallbackResolve;// we need to listen to the ref setter, so let's override `current` - we can do that, because we don't use React's `useRef` hook for those refs.\nlet current=element.current;Object.defineProperty(element,\"current\",{get(){return current;},set(node){current=node;if(node===null){// React calls with null when the element is unmounted\n// we abort here so that the promise isn't left around in case the ref is never set\ncontroller.abort();return;}refCallbackResolve?.(node);},configurable:true});// no need to create a promise if current already exists\nif(current)return current;const refCallbackPromise=new Promise((resolve,reject)=>{refCallbackResolve=resolve;controller.signal.addEventListener(\"abort\",reject);}).catch(()=>{});return refCallbackPromise;}// Using opacity: 0.001 instead of 0 as an LCP hack. (opacity: 0.001 is still 0\n// to a human eye but makes Google think the elements are visible)\nconst OPACITY_0=.001;/**\n *\n * SLIDESHOW\n * V2 with Drag\n * By Benjamin and Matt\n *\n * @framerIntrinsicWidth 400\n * @framerIntrinsicHeight 200\n *\n * @framerDisableUnlink\n *\n * @framerSupportedLayoutWidth fixed\n * @framerSupportedLayoutHeight fixed\n */export default function Slideshow(props){/**\n     * Properties\n     */const{slots=[],startFrom,direction,effectsOptions,autoPlayControl,dragControl,alignment,gap,padding,paddingPerSide,paddingTop,paddingRight,paddingBottom,paddingLeft,itemAmount,fadeOptions,intervalControl,transitionControl,arrowOptions,borderRadius,progressOptions,style}=props;const{effectsOpacity,effectsScale,effectsRotate,effectsPerspective,effectsHover,playOffscreen}=effectsOptions;const{fadeContent,overflow,fadeWidth,fadeInset,fadeAlpha}=fadeOptions;const{showMouseControls,arrowSize,arrowRadius,arrowFill,leftArrow,rightArrow,arrowShouldSpace=true,arrowShouldFadeIn=false,arrowPosition,arrowPadding,arrowGap,arrowPaddingTop,arrowPaddingRight,arrowPaddingBottom,arrowPaddingLeft}=arrowOptions;const{showProgressDots,dotSize,dotsInset,dotsRadius,dotsPadding,dotsGap,dotsFill,dotsBackground,dotsActiveOpacity,dotsOpacity,dotsBlur}=progressOptions;const paddingValue=paddingPerSide?`${paddingTop}px ${paddingRight}px ${paddingBottom}px ${paddingLeft}px`:`${padding}px`;/**\n     * Checks\n     */const isCanvas=RenderTarget.current()===RenderTarget.canvas;// Remove empty slots (such as hidden layers)\nconst filteredSlots=slots.filter(Boolean);const hasChildren=Children.count(filteredSlots)>0;const isHorizontal=direction===\"left\"||direction===\"right\";const isInverted=direction===\"right\"||direction===\"bottom\";/**\n     * Empty state for Canvas\n     */if(!hasChildren){return /*#__PURE__*/_jsxs(\"section\",{style:placeholderStyles,children:[/*#__PURE__*/_jsx(\"div\",{style:emojiStyles,children:\"\u2B50\uFE0F\"}),/*#__PURE__*/_jsx(\"p\",{style:titleStyles,children:\"Connect to Content\"}),/*#__PURE__*/_jsx(\"p\",{style:subtitleStyles,children:\"Add layers or components to make infinite auto-playing slideshows.\"})]});}/**\n     * Refs, State\n     */const parentRef=useRef(null);const childrenRef=useMemo(()=>{return[{current:null},{current:null}];// when the slots change, generate new array\n},[filteredSlots]);const timeoutRef=useRef(undefined);const[size,setSize]=useState({parent:null,children:null,item:null,itemWidth:null,itemHeight:null,viewportLength:null});/* For pausing on hover */const[isHovering,setIsHovering]=useState(false);const[shouldPlayOnHover,setShouldPlayOnHover]=useState(autoPlayControl);/* For cursor updates */const[isMouseDown,setIsMouseDown]=useState(false);/* Check if resizing */const[isResizing,setIsResizing]=useState(false);/**\n     * Array for children\n     */let dupedChildren=[];let duplicateBy=4;if(isCanvas){duplicateBy=1;}/**\n     * Measure parent, child, items\n     */const measure=useCallback(()=>{if(!parentRef.current)return;const firstChild=childrenRef[0].current;const lastChild=childrenRef[1].current;const parentLength=isHorizontal?parentRef.current.offsetWidth:parentRef.current.offsetHeight;const start=firstChild?isHorizontal?firstChild.offsetLeft:firstChild.offsetTop:0;const end=lastChild?isHorizontal?lastChild.offsetLeft+lastChild.offsetWidth:lastChild.offsetTop+lastChild.offsetHeight:0;const childrenLength=end-start+gap;const itemSize=firstChild?isHorizontal?firstChild.offsetWidth:firstChild.offsetHeight:0;const itemWidth=firstChild?firstChild.offsetWidth:0;const itemHeight=firstChild?firstChild.offsetHeight:0;const viewportLength=isHorizontal?Math.max(document.documentElement.clientWidth||0,window.innerWidth||0,parentRef.current.offsetWidth):Math.max(document.documentElement.clientHeight||0,window.innerHeight||0,parentRef.current.offsetHeight);setSize({parent:parentLength,children:childrenLength,item:itemSize,itemWidth,itemHeight,viewportLength});},[]);const scheduleMeasure=useCallback(async()=>{const controller=new AbortController;/**\n         * The elements in the set are refs of children. If they're wrapped in Suspense, they could mount later than the parent.\n         * Thus, we wait for each ref to be set step by step if required.\n         */const[firstChild,lastChild]=childrenRef;if(!isCanvas&&(!firstChild.current||!lastChild.current))try{await Promise.all([awaitRefCallback(firstChild,controller),awaitRefCallback(lastChild,controller)]);}catch{controller.abort();}frame.read(measure,false,true);},[measure]);/**\n     * Add refs to all children\n     * Added itemAmount for resizing\n     */useLayoutEffect(()=>{scheduleMeasure();},[itemAmount]);/**\n     * Track whether this is the initial resize event. By default this will fire on mount,\n     * which we do in the useEffect. We should only fire it on subsequent resizes.\n     */const initialResize=useRef(true);useEffect(()=>{return resize(parentRef.current,({contentSize})=>{if(!initialResize.current&&(contentSize.width||contentSize.height)){scheduleMeasure();startTransition(()=>setIsResizing(true));}initialResize.current=false;});},[]);useEffect(()=>{if(isResizing){const timer=setTimeout(()=>startTransition(()=>setIsResizing(false)),500);return()=>clearTimeout(timer);}},[isResizing]);/**\n     * Animation, pagination\n     */const totalItems=filteredSlots?.length;const childrenSize=isCanvas?0:size?.children;const itemWithGap=size?.item+gap;const itemOffset=startFrom*itemWithGap;const[currentItem,setCurrentItem]=useState(startFrom+totalItems);const[isDragging,setIsDragging]=useState(false);if(isCanvas){if(currentItem!==startFrom){setCurrentItem(startFrom);}}/* Check for browser window visibility *//* Otherwise, it will re-play all the item increments */const visibilityRef=useRef(null);const isInView=useInView(visibilityRef);const isVisible=usePageVisibility()&&isInView;const factor=isInverted?1:-1;/* The x and y values to start from */const xOrY=useMotionValue(childrenSize);/* For canvas only. Using xOrY is slower upon page switching */const canvasPosition=isHorizontal?-startFrom*(size?.itemWidth+gap):-startFrom*(size?.itemHeight+gap);/* Calculate the new value to animate to */const newPosition=()=>factor*currentItem*itemWithGap;/* Wrapped values for infinite looping *//* Instead of 0 to a negative full duplicated row, we start with an offset */const wrappedValue=!isCanvas?useTransform(xOrY,value=>{const wrapped=wrap(-childrenSize,-childrenSize*2,value);return isNaN(wrapped)?0:wrapped;}):0;/* Convert the current item to a wrapping index for dots */const wrappedIndex=wrap(0,totalItems,currentItem);const wrappedIndexInverted=wrap(0,-totalItems,currentItem);/* Update x or y with the provided starting point *//* The subtraction of a full row of children is for overflow */useLayoutEffect(()=>{if(size?.children===null)return;/* Initial measure */// if (initialResize.current) {\n//     xOrY.set((childrenSize + itemOffset) * factor)\n// }\n/* Subsequent resizes */if(!initialResize.current&&isResizing){xOrY.set(newPosition());}},[size,childrenSize,factor,itemOffset,currentItem,itemWithGap,isResizing]);/**\n     * Page item methods\n     * Switching, deltas, autoplaying\n     *//* Next and previous function, animates the X */const switchPages=()=>{if(isCanvas||!hasChildren||!size.parent||isDragging)return;if(xOrY.get()!==newPosition()){animate(xOrY,newPosition(),transitionControl);}if(autoPlayControl&&shouldPlayOnHover&&(playOffscreen||isVisible)){timeoutRef.current=setTimeout(()=>{startTransition(()=>setCurrentItem(item=>item+1));switchPages();},intervalControl*1e3);}};/* Page navigation functions */const setDelta=(delta,transition=false)=>{if(!isInverted){if(transition)startTransition(()=>setCurrentItem(item=>item+delta));else setCurrentItem(item=>item+delta);}else{if(transition)startTransition(()=>setCurrentItem(item=>item-delta));else setCurrentItem(item=>item-delta);}};const setPage=index=>{const currentItemWrapped=wrap(0,totalItems,currentItem);const currentItemWrappedInvert=wrap(0,-totalItems,currentItem);const goto=index-currentItemWrapped;const gotoInverted=index-Math.abs(currentItemWrappedInvert);if(!isInverted){startTransition(()=>setCurrentItem(item=>item+goto));}else{startTransition(()=>setCurrentItem(item=>item-gotoInverted));}};/**\n     * Drag\n     */const handleDragStart=()=>{startTransition(()=>setIsDragging(true));};const handleDragEnd=(event,{offset,velocity})=>{startTransition(()=>setIsDragging(false));const offsetXorY=isHorizontal?offset.x:offset.y;const velocityThreshold=200// Based on testing, can be tweaked or could be 0\n;const velocityXorY=isHorizontal?velocity.x:velocity.y;const isHalfOfNext=offsetXorY<-size.item/2;const isHalfOfPrev=offsetXorY>size.item/2;/* In case you drag more than 1 item left or right */const normalizedOffset=Math.abs(offsetXorY);const itemDelta=Math.round(normalizedOffset/size.item);/* Minimum delta is 1 to initiate a page switch *//* For velocity use only */const itemDeltaFromOne=itemDelta===0?1:itemDelta;/* For quick flicks, even with low offsets */if(velocityXorY>velocityThreshold){setDelta(-itemDeltaFromOne,true);}else if(velocityXorY<-velocityThreshold){setDelta(itemDeltaFromOne,true);}else{/* For dragging over half of the current item with 0 velocity */if(isHalfOfNext){setDelta(itemDelta,true);}if(isHalfOfPrev){setDelta(-itemDelta,true);}}};/* Kickstart the auto-playing once we have all the children */useEffect(()=>{if(!isVisible||isResizing)return;switchPages();return()=>timeoutRef.current&&clearTimeout(timeoutRef.current);},[dupedChildren,isVisible,isResizing]);/* Create copies of our children to create a perfect loop */let childCounter=0;/**\n     * Sizing\n     * */const columnOrRowValue=`calc(${100/itemAmount}% - ${gap}px + ${gap/itemAmount}px)`;/**\n     * Nested array to create duplicates of the children for infinite looping\n     * These are wrapped around, and start at a full \"page\" worth of offset\n     * as defined above.\n     */for(let index=0;index<duplicateBy;index++){dupedChildren=dupedChildren.concat(Children.map(filteredSlots,(child,childIndex)=>{let ref;if(index===0){if(childIndex===0){ref=childrenRef[0];}if(childIndex===filteredSlots.length-1){ref=childrenRef[1];}}return /*#__PURE__*/_jsx(Slide,{ref:ref,slideKey:index+childIndex+\"lg\",index:index,width:isHorizontal?itemAmount>1?columnOrRowValue:\"100%\":\"100%\",height:!isHorizontal?itemAmount>1?columnOrRowValue:\"100%\":\"100%\",size:size,child:child,numChildren:filteredSlots?.length,wrappedValue:wrappedValue,childCounter:childCounter++,gap:gap,isCanvas:isCanvas,isHorizontal:isHorizontal,effectsOpacity:effectsOpacity,effectsScale:effectsScale,effectsRotate:effectsRotate,children:index+childIndex},index+childIndex+\"lg\");}));}/**\n     * Fades with masks\n     */const fadeDirection=isHorizontal?\"to right\":\"to bottom\";const fadeWidthStart=fadeWidth/2;const fadeWidthEnd=100-fadeWidth/2;const fadeInsetStart=clamp(fadeInset,0,fadeWidthStart);const fadeInsetEnd=100-fadeInset;const fadeMask=`linear-gradient(${fadeDirection}, rgba(0, 0, 0, ${fadeAlpha}) ${fadeInsetStart}%, rgba(0, 0, 0, 1) ${fadeWidthStart}%, rgba(0, 0, 0, 1) ${fadeWidthEnd}%, rgba(0, 0, 0, ${fadeAlpha}) ${fadeInsetEnd}%)`;/**\n     * Dots\n     */const dots=[];const dotsBlurStyle={};if(showProgressDots){for(let i=0;i<filteredSlots?.length;i++){dots.push(/*#__PURE__*/_jsx(Dot,{dotStyle:{...dotStyle,width:dotSize,height:dotSize,backgroundColor:dotsFill},buttonStyle:baseButtonStyles,selectedOpacity:dotsActiveOpacity,opacity:dotsOpacity,onClick:()=>setPage(i),wrappedIndex:wrappedIndex,wrappedIndexInverted:wrappedIndexInverted,total:totalItems,index:i,gap:dotsGap,padding:dotsPadding,isHorizontal:isHorizontal,isInverted:isInverted},i));}if(dotsBlur>0){dotsBlurStyle.backdropFilter=dotsBlurStyle.WebkitBackdropFilter=`blur(${dotsBlur}px)`;}}const dragProps=dragControl?{drag:isHorizontal?\"x\":\"y\",onDragStart:handleDragStart,onDragEnd:handleDragEnd,dragDirectionLock:true,values:{x:xOrY,y:xOrY},dragMomentum:false}:{};const arrowHasTop=arrowPosition===\"top-left\"||arrowPosition===\"top-mid\"||arrowPosition===\"top-right\";const arrowHasBottom=arrowPosition===\"bottom-left\"||arrowPosition===\"bottom-mid\"||arrowPosition===\"bottom-right\";const arrowHasLeft=arrowPosition===\"top-left\"||arrowPosition===\"bottom-left\";const arrowHasRight=arrowPosition===\"top-right\"||arrowPosition===\"bottom-right\";const arrowHasMid=arrowPosition===\"top-mid\"||arrowPosition===\"bottom-mid\"||arrowPosition===\"auto\";return /*#__PURE__*/_jsxs(\"section\",{style:{...containerStyle,padding:paddingValue,WebkitMaskImage:fadeContent?fadeMask:undefined,maskImage:fadeContent?fadeMask:undefined,opacity:size?.item!==null?1:OPACITY_0,userSelect:\"none\"},onMouseEnter:()=>{setIsHovering(true);if(!effectsHover)setShouldPlayOnHover(false);},onMouseLeave:()=>{setIsHovering(false);if(!effectsHover)setShouldPlayOnHover(true);},onMouseDown:event=>{// Preventdefault fixes the cursor switching to text on drag on safari\nevent.preventDefault();startTransition(()=>setIsMouseDown(true));},onMouseUp:()=>startTransition(()=>setIsMouseDown(false)),ref:visibilityRef,children:[/*#__PURE__*/_jsx(\"div\",{style:{width:\"100%\",height:\"100%\",margin:0,padding:\"inherit\",position:\"absolute\",inset:0,overflow:overflow?\"visible\":\"hidden\",borderRadius:borderRadius,userSelect:\"none\",perspective:isCanvas?\"none\":effectsPerspective},children:/*#__PURE__*/_jsx(motion.ul,{ref:parentRef,...dragProps,style:{...containerStyle,gap:gap,placeItems:alignment,x:isHorizontal?isCanvas?canvasPosition:wrappedValue:0,y:!isHorizontal?isCanvas?canvasPosition:wrappedValue:0,flexDirection:isHorizontal?\"row\":\"column\",transformStyle:effectsRotate!==0&&!isCanvas?\"preserve-3d\":undefined,cursor:dragControl?isMouseDown?\"grabbing\":\"grab\":\"auto\",userSelect:\"none\",...style},children:dupedChildren})}),/*#__PURE__*/_jsxs(\"fieldset\",{style:{...controlsStyles},\"aria-label\":\"Slideshow pagination controls\",className:\"framer--slideshow-controls\",children:[/*#__PURE__*/_jsxs(motion.div,{style:{position:\"absolute\",display:\"flex\",flexDirection:isHorizontal?\"row\":\"column\",justifyContent:arrowShouldSpace?\"space-between\":\"center\",gap:arrowShouldSpace?\"unset\":arrowGap,opacity:arrowShouldFadeIn?OPACITY_0:1,alignItems:\"center\",inset:arrowPadding,top:arrowShouldSpace?arrowPadding:arrowHasTop?arrowPaddingTop:\"unset\",left:arrowShouldSpace?arrowPadding:arrowHasLeft?arrowPaddingLeft:arrowHasMid?0:\"unset\",right:arrowShouldSpace?arrowPadding:arrowHasRight?arrowPaddingRight:arrowHasMid?0:\"unset\",bottom:arrowShouldSpace?arrowPadding:arrowHasBottom?arrowPaddingBottom:\"unset\"},animate:arrowShouldFadeIn&&{opacity:isHovering?1:OPACITY_0},transition:transitionControl,children:[/*#__PURE__*/_jsx(motion.button,{type:\"button\",style:{...baseButtonStyles,backgroundColor:arrowFill,width:arrowSize,height:arrowSize,borderRadius:arrowRadius,rotate:!isHorizontal?90:0,display:showMouseControls?\"block\":\"none\",pointerEvents:\"auto\"},onClick:()=>setDelta(-1,true),\"aria-label\":\"Previous\",whileTap:{scale:.9},transition:{duration:.15},children:/*#__PURE__*/_jsx(\"img\",{decoding:\"async\",width:arrowSize,height:arrowSize,src:leftArrow||\"https://framerusercontent.com/images/6tTbkXggWgQCAJ4DO2QEdXXmgM.svg\",alt:\"Back Arrow\"})}),/*#__PURE__*/_jsx(motion.button,{type:\"button\",style:{...baseButtonStyles,backgroundColor:arrowFill,width:arrowSize,height:arrowSize,borderRadius:arrowRadius,rotate:!isHorizontal?90:0,display:showMouseControls?\"block\":\"none\",pointerEvents:\"auto\"},onClick:()=>setDelta(1,true),\"aria-label\":\"Next\",whileTap:{scale:.9},transition:{duration:.15},children:/*#__PURE__*/_jsx(\"img\",{decoding:\"async\",width:arrowSize,height:arrowSize,src:rightArrow||\"https://framerusercontent.com/images/11KSGbIZoRSg4pjdnUoif6MKHI.svg\",alt:\"Next Arrow\"})})]}),dots.length>1?/*#__PURE__*/_jsx(\"div\",{style:{...dotsContainerStyle,left:isHorizontal?\"50%\":dotsInset,top:!isHorizontal?\"50%\":\"unset\",transform:isHorizontal?\"translateX(-50%)\":\"translateY(-50%)\",flexDirection:isHorizontal?\"row\":\"column\",bottom:isHorizontal?dotsInset:\"unset\",borderRadius:dotsRadius,backgroundColor:dotsBackground,userSelect:\"none\",...dotsBlurStyle},children:dots}):null]})]});}/* Default Properties */Slideshow.defaultProps={direction:\"left\",dragControl:false,startFrom:0,itemAmount:1,infinity:true,gap:10,padding:10,autoPlayControl:true,effectsOptions:{effectsOpacity:1,effectsScale:1,effectsRotate:0,effectsPerspective:1200,effectsHover:true,playOffscreen:false},transitionControl:{type:\"spring\",stiffness:200,damping:40},fadeOptions:{fadeContent:false,overflow:false,fadeWidth:25,fadeAlpha:0,fadeInset:0},arrowOptions:{showMouseControls:true,arrowShouldFadeIn:false,arrowShouldSpace:true,arrowFill:\"rgba(0,0,0,0.2)\",arrowSize:40},progressOptions:{showProgressDots:true}};/* Property Controls */addPropertyControls(Slideshow,{slots:{type:ControlType.Array,title:\"Content\",control:{type:ControlType.ComponentInstance}},direction:{type:ControlType.Enum,title:\"Direction\",options:[\"left\",\"right\",\"top\",\"bottom\"],optionIcons:[\"direction-left\",\"direction-right\",\"direction-up\",\"direction-down\"],optionTitles:[\"Left\",\"Right\",\"Top\",\"Bottom\"],displaySegmentedControl:true,defaultValue:Slideshow.defaultProps.direction},autoPlayControl:{type:ControlType.Boolean,title:\"Auto Play\",defaultValue:true},intervalControl:{type:ControlType.Number,title:\"Interval\",defaultValue:1.5,min:.5,max:10,step:.1,displayStepper:true,unit:\"s\",hidden:props=>!props.autoPlayControl},dragControl:{type:ControlType.Boolean,title:\"Draggable\",defaultValue:false},startFrom:{type:ControlType.Number,title:\"Current\",min:0,max:10,displayStepper:true,defaultValue:Slideshow.defaultProps.startFrom},effectsOptions:{type:ControlType.Object,title:\"Effects\",controls:{effectsOpacity:{type:ControlType.Number,title:\"Opacity\",defaultValue:Slideshow.defaultProps.effectsOptions.effectsOpacity,min:0,max:1,step:.01,displayStepper:true},effectsScale:{type:ControlType.Number,title:\"Scale\",defaultValue:Slideshow.defaultProps.effectsOptions.effectsScale,min:0,max:1,step:.01,displayStepper:true},effectsPerspective:{type:ControlType.Number,title:\"Perspective\",defaultValue:Slideshow.defaultProps.effectsOptions.effectsPerspective,min:200,max:2e3,step:1},effectsRotate:{type:ControlType.Number,title:\"Rotate\",defaultValue:Slideshow.defaultProps.effectsOptions.effectsRotate,min:-180,max:180,step:1},effectsHover:{type:ControlType.Boolean,title:\"On Hover\",enabledTitle:\"Play\",disabledTitle:\"Pause\",defaultValue:Slideshow.defaultProps.effectsOptions.effectsHover},playOffscreen:{type:ControlType.Boolean,title:\"Offscreen\",enabledTitle:\"Play\",disabledTitle:\"Pause\",defaultValue:Slideshow.defaultProps.effectsOptions.playOffscreen}}},alignment:{type:ControlType.Enum,title:\"Align\",options:[\"flex-start\",\"center\",\"flex-end\"],optionIcons:{direction:{right:[\"align-top\",\"align-middle\",\"align-bottom\"],left:[\"align-top\",\"align-middle\",\"align-bottom\"],top:[\"align-left\",\"align-center\",\"align-right\"],bottom:[\"align-left\",\"align-center\",\"align-right\"]}},defaultValue:\"center\",displaySegmentedControl:true},itemAmount:{type:ControlType.Number,title:\"Items\",min:1,max:10,displayStepper:true,defaultValue:Slideshow.defaultProps.itemAmount},gap:{type:ControlType.Number,title:\"Gap\",min:0},padding:{title:\"Padding\",type:ControlType.FusedNumber,toggleKey:\"paddingPerSide\",toggleTitles:[\"Padding\",\"Padding per side\"],defaultValue:0,valueKeys:[\"paddingTop\",\"paddingRight\",\"paddingBottom\",\"paddingLeft\"],valueLabels:[\"T\",\"R\",\"B\",\"L\"],min:0},borderRadius:{type:ControlType.Number,title:\"Radius\",min:0,max:500,displayStepper:true,defaultValue:0},transitionControl:{type:ControlType.Transition,defaultValue:Slideshow.defaultProps.transitionControl,title:\"Transition\"},fadeOptions:{type:ControlType.Object,title:\"Clipping\",controls:{fadeContent:{type:ControlType.Boolean,title:\"Fade\",defaultValue:false},overflow:{type:ControlType.Boolean,title:\"Overflow\",enabledTitle:\"Show\",disabledTitle:\"Hide\",defaultValue:false,hidden(props){return props.fadeContent===true;}},fadeWidth:{type:ControlType.Number,title:\"Width\",defaultValue:25,min:0,max:100,unit:\"%\",hidden(props){return props.fadeContent===false;}},fadeInset:{type:ControlType.Number,title:\"Inset\",defaultValue:0,min:0,max:100,unit:\"%\",hidden(props){return props.fadeContent===false;}},fadeAlpha:{type:ControlType.Number,title:\"Opacity\",defaultValue:0,min:0,max:1,step:.05,hidden(props){return props.fadeContent===false;}}}},arrowOptions:{type:ControlType.Object,title:\"Arrows\",controls:{showMouseControls:{type:ControlType.Boolean,title:\"Show\",defaultValue:Slideshow.defaultProps.arrowOptions.showMouseControls},arrowFill:{type:ControlType.Color,title:\"Fill\",hidden:props=>!props.showMouseControls,defaultValue:Slideshow.defaultProps.arrowOptions.arrowFill},leftArrow:{type:ControlType.Image,title:\"Previous\",hidden:props=>!props.showMouseControls},rightArrow:{type:ControlType.Image,title:\"Next\",hidden:props=>!props.showMouseControls},arrowSize:{type:ControlType.Number,title:\"Size\",min:0,max:200,displayStepper:true,defaultValue:Slideshow.defaultProps.arrowOptions.arrowSize,hidden:props=>!props.showMouseControls},arrowRadius:{type:ControlType.Number,title:\"Radius\",min:0,max:500,defaultValue:40,hidden:props=>!props.showMouseControls},arrowShouldFadeIn:{type:ControlType.Boolean,title:\"Fade In\",defaultValue:false,hidden:props=>!props.showMouseControls},arrowShouldSpace:{type:ControlType.Boolean,title:\"Distance\",enabledTitle:\"Space\",disabledTitle:\"Group\",defaultValue:Slideshow.defaultProps.arrowOptions.arrowShouldSpace,hidden:props=>!props.showMouseControls},arrowPosition:{type:ControlType.Enum,title:\"Position\",options:[\"auto\",\"top-left\",\"top-mid\",\"top-right\",\"bottom-left\",\"bottom-mid\",\"bottom-right\"],optionTitles:[\"Center\",\"Top Left\",\"Top Middle\",\"Top Right\",\"Bottom Left\",\"Bottom Middle\",\"Bottom Right\"],hidden:props=>!props.showMouseControls||props.arrowShouldSpace},arrowPadding:{type:ControlType.Number,title:\"Inset\",min:-100,max:100,defaultValue:20,displayStepper:true,hidden:props=>!props.showMouseControls||!props.arrowShouldSpace},arrowPaddingTop:{type:ControlType.Number,title:\"Top\",min:-500,max:500,defaultValue:0,displayStepper:true,hidden:props=>!props.showMouseControls||props.arrowShouldSpace||props.arrowPosition===\"auto\"||props.arrowPosition===\"bottom-mid\"||props.arrowPosition===\"bottom-left\"||props.arrowPosition===\"bottom-right\"},arrowPaddingBottom:{type:ControlType.Number,title:\"Bottom\",min:-500,max:500,defaultValue:0,displayStepper:true,hidden:props=>!props.showMouseControls||props.arrowShouldSpace||props.arrowPosition===\"auto\"||props.arrowPosition===\"top-mid\"||props.arrowPosition===\"top-left\"||props.arrowPosition===\"top-right\"},arrowPaddingRight:{type:ControlType.Number,title:\"Right\",min:-500,max:500,defaultValue:0,displayStepper:true,hidden:props=>!props.showMouseControls||props.arrowShouldSpace||props.arrowPosition===\"auto\"||props.arrowPosition===\"top-left\"||props.arrowPosition===\"top-mid\"||props.arrowPosition===\"bottom-left\"||props.arrowPosition===\"bottom-mid\"},arrowPaddingLeft:{type:ControlType.Number,title:\"Left\",min:-500,max:500,defaultValue:0,displayStepper:true,hidden:props=>!props.showMouseControls||props.arrowShouldSpace||props.arrowPosition===\"auto\"||props.arrowPosition===\"top-right\"||props.arrowPosition===\"top-mid\"||props.arrowPosition===\"bottom-right\"||props.arrowPosition===\"bottom-mid\"},arrowGap:{type:ControlType.Number,title:\"Gap\",min:0,max:100,defaultValue:10,displayStepper:true,hidden:props=>!props.showMouseControls||props.arrowShouldSpace}}},progressOptions:{type:ControlType.Object,title:\"Dots\",controls:{showProgressDots:{type:ControlType.Boolean,title:\"Show\",defaultValue:false},dotSize:{type:ControlType.Number,title:\"Size\",min:1,max:100,defaultValue:10,displayStepper:true,hidden:props=>!props.showProgressDots||props.showScrollbar},dotsInset:{type:ControlType.Number,title:\"Inset\",min:-100,max:100,defaultValue:10,displayStepper:true,hidden:props=>!props.showProgressDots||props.showScrollbar},dotsGap:{type:ControlType.Number,title:\"Gap\",min:0,max:100,defaultValue:10,displayStepper:true,hidden:props=>!props.showProgressDots||props.showScrollbar},dotsPadding:{type:ControlType.Number,title:\"Padding\",min:0,max:100,defaultValue:10,displayStepper:true,hidden:props=>!props.showProgressDots||props.showScrollbar},dotsFill:{type:ControlType.Color,title:\"Fill\",defaultValue:\"#fff\",hidden:props=>!props.showProgressDots||props.showScrollbar},dotsBackground:{type:ControlType.Color,title:\"Backdrop\",defaultValue:\"rgba(0,0,0,0.2)\",hidden:props=>!props.showProgressDots||props.showScrollbar},dotsRadius:{type:ControlType.Number,title:\"Radius\",min:0,max:200,defaultValue:50,hidden:props=>!props.showProgressDots||props.showScrollbar},dotsOpacity:{type:ControlType.Number,title:\"Opacity\",min:0,max:1,defaultValue:.5,step:.1,displayStepper:true,hidden:props=>!props.showProgressDots||props.showScrollbar},dotsActiveOpacity:{type:ControlType.Number,title:\"Current\",min:0,max:1,defaultValue:1,step:.1,displayStepper:true,hidden:props=>!props.showProgressDots||props.showScrollbar},dotsBlur:{type:ControlType.Number,title:\"Blur\",min:0,max:50,defaultValue:0,step:1,hidden:props=>!props.showProgressDots||props.showScrollbar}}}});/* Placeholder Styles */const containerStyle={display:\"flex\",flexDirection:\"row\",width:\"100%\",height:\"100%\",maxWidth:\"100%\",maxHeight:\"100%\",placeItems:\"center\",margin:0,padding:0,listStyleType:\"none\",textIndent:\"none\"};/* Component Styles */const placeholderStyles={display:\"flex\",width:\"100%\",height:\"100%\",placeContent:\"center\",placeItems:\"center\",flexDirection:\"column\",color:\"#96F\",background:\"rgba(136, 85, 255, 0.1)\",fontSize:11,overflow:\"hidden\",padding:\"20px 20px 30px 20px\"};const emojiStyles={fontSize:32,marginBottom:10};const titleStyles={margin:0,marginBottom:10,fontWeight:600,textAlign:\"center\"};const subtitleStyles={margin:0,opacity:.7,maxWidth:180,lineHeight:1.5,textAlign:\"center\"};/* Control Styles */const baseButtonStyles={border:\"none\",display:\"flex\",placeContent:\"center\",placeItems:\"center\",overflow:\"hidden\",background:\"transparent\",cursor:\"pointer\",margin:0,padding:0};const controlsStyles={display:\"flex\",justifyContent:\"space-between\",alignItems:\"center\",position:\"absolute\",pointerEvents:\"none\",userSelect:\"none\",top:0,left:0,right:0,bottom:0,border:0,padding:0,margin:0};/* Clamp function, used for fadeInset */const clamp=(num,min,max)=>Math.min(Math.max(num,min),max);/* Slide Component */const Slide=/*#__PURE__*/memo(/*#__PURE__*/forwardRef(function Component(props,ref){const{slideKey,width,height,child,size,gap,wrappedValue,numChildren,childCounter,isCanvas,effects,effectsOpacity,effectsScale,effectsRotate,isHorizontal,isLast,index}=props;const fallbackRef=useRef();/**\n         * Unique offsets + scroll range [0, 1, 1, 0]\n         */const childOffset=(size?.item+gap)*childCounter;const scrollRange=[-size?.item,0,size?.parent-size?.item+gap,size?.parent].map(val=>val-childOffset);/**\n         * Effects\n         */const rotateY=!isCanvas&&useTransform(wrappedValue,scrollRange,[-effectsRotate,0,0,effectsRotate]);const rotateX=!isCanvas&&useTransform(wrappedValue,scrollRange,[effectsRotate,0,0,-effectsRotate]);const opacity=!isCanvas&&useTransform(wrappedValue,scrollRange,[effectsOpacity,1,1,effectsOpacity]);const scale=!isCanvas&&useTransform(wrappedValue,scrollRange,[effectsScale,1,1,effectsScale]);const originXorY=!isCanvas&&useTransform(wrappedValue,scrollRange,[1,1,0,0]);const isVisible=!isCanvas&&useTransform(wrappedValue,latest=>latest>=scrollRange[1]&&latest<=scrollRange[2]);useEffect(()=>{if(!isVisible)return;return isVisible.on(\"change\",newValue=>{const node=ref?.current??fallbackRef.current;node?.setAttribute(\"aria-hidden\",!newValue);});},[]);const visibility=isCanvas?\"visible\":useTransform(wrappedValue,[scrollRange[0]-size.viewportLength,mix(scrollRange[1],scrollRange[2],.5),scrollRange[3]+size.viewportLength],[\"hidden\",\"visible\",\"hidden\"]);const key=slideKey+\"child\";return /*#__PURE__*/_jsx(LayoutGroup,{inherit:\"id\",id:key,children:/*#__PURE__*/_jsx(\"li\",{style:{display:\"contents\"},\"aria-hidden\":index===0?false:true,children:/*#__PURE__*/cloneElement(child,{ref:ref??fallbackRef,key,style:{...child.props?.style,flexShrink:0,userSelect:\"none\",width,height,opacity:opacity,scale:scale,originX:isHorizontal?originXorY:.5,originY:!isHorizontal?originXorY:.5,rotateY:isHorizontal?rotateY:0,rotateX:!isHorizontal?rotateX:0,visibility},layoutId:child.props.layoutId?child.props.layoutId+\"-original-\"+index:undefined})})});}));const Dot=/*#__PURE__*/memo(function Dot({selectedOpacity,opacity,total,index,wrappedIndex,wrappedIndexInverted,dotStyle,buttonStyle,gap,padding,isHorizontal,isInverted,...props}){/* Check active item *//* Go 0\u20141\u20142\u20143\u20144\u20145\u20140 */let isSelected=wrappedIndex===index;/* Go 0\u20145\u20144\u20143\u20142\u20141\u20140\u20145 instead when inverted */if(isInverted){isSelected=Math.abs(wrappedIndexInverted)===index;}const inlinePadding=gap/2;const top=!isHorizontal&&index>0?inlinePadding:padding;const bottom=!isHorizontal&&index!==total-1?inlinePadding:padding;const right=isHorizontal&&index!==total-1?inlinePadding:padding;const left=isHorizontal&&index>0?inlinePadding:padding;return /*#__PURE__*/_jsx(\"button\",{\"aria-label\":`Scroll to page ${index+1}`,type:\"button\",...props,style:{...buttonStyle,padding:`${top}px ${right}px ${bottom}px ${left}px`},children:/*#__PURE__*/_jsx(motion.div,{style:{...dotStyle},initial:false,animate:{opacity:isSelected?selectedOpacity:opacity},transition:{duration:.3}})});});/* Dot Styles */const dotsContainerStyle={display:\"flex\",placeContent:\"center\",placeItems:\"center\",overflow:\"hidden\",position:\"absolute\",pointerEvents:\"auto\"};const dotStyle={borderRadius:\"50%\",background:\"white\",cursor:\"pointer\",border:\"none\",placeContent:\"center\",placeItems:\"center\",padding:0};\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"Slideshow\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\",\"framerDisableUnlink\":\"*\",\"framerSupportedLayoutHeight\":\"fixed\",\"framerSupportedLayoutWidth\":\"fixed\",\"framerIntrinsicHeight\":\"200\",\"framerIntrinsicWidth\":\"400\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./SlideShow.map", "// Generated by Framer (3bc9980)\nimport{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{addFonts,addPropertyControls,ComponentViewportProvider,ControlType,cx,getFonts,getFontsFromSharedStyle,getLoadingLazyAtYPosition,Image,RichText,useComponentViewport,useLocaleInfo,useVariantState,withCSS}from\"framer\";import{LayoutGroup,motion,MotionConfigContext}from\"framer-motion\";import*as React from\"react\";import{Icon as Phosphor}from\"https://framerusercontent.com/modules/tYScH7LTqUtz5KUaUAYP/p8dptk4UIND8hbFWz9V7/Phosphor.js\";import*as sharedStyle1 from\"https://framerusercontent.com/modules/yhwxvTNo3tHUNTZTCUXd/rnjts2scwUlJE6DcMt7a/IZpeieEjn.js\";import*as sharedStyle from\"https://framerusercontent.com/modules/RwquBhWhgnFy8YZTajJ8/pNJ4BdDGlKDraehpy0Mk/vKGxKv6WT.js\";const PhosphorFonts=getFonts(Phosphor);const serializationHash=\"framer-lqr9v\";const variantClassNames={tR5X0a0T1:\"framer-v-15z7hp\"};function addPropertyOverrides(overrides,...variants){const nextOverrides={};variants===null||variants===void 0?void 0:variants.forEach(variant=>variant&&Object.assign(nextOverrides,overrides[variant]));return nextOverrides;}const transition1={damping:60,delay:0,mass:1,stiffness:500,type:\"spring\"};const toResponsiveImage=value=>{if(typeof value===\"object\"&&value!==null&&typeof value.src===\"string\"){return value;}return typeof value===\"string\"?{src:value}:undefined;};const Transition=({value,children})=>{const config=React.useContext(MotionConfigContext);const transition=value!==null&&value!==void 0?value:config.transition;const contextValue=React.useMemo(()=>({...config,transition}),[JSON.stringify(transition)]);return /*#__PURE__*/_jsx(MotionConfigContext.Provider,{value:contextValue,children:children});};const Variants=motion.create(React.Fragment);const getProps=({height,id,name1,photo,profession,review,reviewTitle,width,...props})=>{var _ref,_ref1,_ref2,_ref3;return{...props,dhmQaw67Q:(_ref=reviewTitle!==null&&reviewTitle!==void 0?reviewTitle:props.dhmQaw67Q)!==null&&_ref!==void 0?_ref:'\"Transformative AI Solutions!\"',hQUvFvwqs:(_ref1=review!==null&&review!==void 0?review:props.hQUvFvwqs)!==null&&_ref1!==void 0?_ref1:\"Review\",hRrIvxKlX:(_ref2=profession!==null&&profession!==void 0?profession:props.hRrIvxKlX)!==null&&_ref2!==void 0?_ref2:\"Profession\",L04dSzjGv:(_ref3=name1!==null&&name1!==void 0?name1:props.L04dSzjGv)!==null&&_ref3!==void 0?_ref3:\"Name\",YhKDzD0FO:photo!==null&&photo!==void 0?photo:props.YhKDzD0FO};};const createLayoutDependency=(props,variants)=>{if(props.layoutDependency)return variants.join(\"-\")+props.layoutDependency;return variants.join(\"-\");};const Component=/*#__PURE__*/React.forwardRef(function(props,ref){const{activeLocale,setLocale}=useLocaleInfo();const{style,className,layoutId,variant,dhmQaw67Q,hQUvFvwqs,YhKDzD0FO,L04dSzjGv,hRrIvxKlX,...restProps}=getProps(props);const{baseVariant,classNames,clearLoadingGesture,gestureHandlers,gestureVariant,isLoading,setGestureState,setVariant,variants}=useVariantState({defaultVariant:\"tR5X0a0T1\",variant,variantClassNames});const layoutDependency=createLayoutDependency(props,variants);const ref1=React.useRef(null);const defaultLayoutId=React.useId();const sharedStyleClassNames=[sharedStyle.className,sharedStyle1.className];const componentViewport=useComponentViewport();return /*#__PURE__*/_jsx(LayoutGroup,{id:layoutId!==null&&layoutId!==void 0?layoutId:defaultLayoutId,children:/*#__PURE__*/_jsx(Variants,{animate:variants,initial:false,children:/*#__PURE__*/_jsx(Transition,{value:transition1,children:/*#__PURE__*/_jsx(motion.div,{...restProps,...gestureHandlers,className:cx(serializationHash,...sharedStyleClassNames,\"framer-15z7hp\",className,classNames),\"data-framer-name\":\"Default\",layoutDependency:layoutDependency,layoutId:\"tR5X0a0T1\",ref:ref!==null&&ref!==void 0?ref:ref1,style:{background:'radial-gradient(50% 50% at 50% 50%, var(--token-ab8a1628-3695-47a5-8496-32bf3ecfdf66, rgb(21, 58, 161)) /* {\"name\":\"Blue\"} */ 0%, var(--token-17d94287-c97e-4602-9cf7-4d2036e50e01, rgb(0, 24, 94)) /* {\"name\":\"Dark blue\"} */ 100%)',borderBottomLeftRadius:12,borderBottomRightRadius:12,borderTopLeftRadius:12,borderTopRightRadius:12,...style},children:/*#__PURE__*/_jsxs(motion.div,{className:\"framer-tl1bwr\",\"data-framer-name\":\"Container\",layoutDependency:layoutDependency,layoutId:\"fHBbtFIpK\",style:{background:'linear-gradient(130deg, var(--token-f5d2506d-9c8c-423b-a07c-4bdb7316df89, rgba(5, 5, 5, 0.75)) /* {\"name\":\"Black 75%\"} */ 0%, var(--token-7be8625f-297b-4b2a-908d-7056e5d82d0a, rgb(5, 5, 5)) /* {\"name\":\"Black\"} */ 120%)',borderBottomLeftRadius:11,borderBottomRightRadius:11,borderTopLeftRadius:11,borderTopRightRadius:11,boxShadow:\"0px 0.6021873017743928px 2.0474368260329356px 0px rgba(0, 0, 0, 0.00602), 0px 2.288533303243457px 7.781013231027754px 0px rgba(0, 0, 0, 0.02289), 0px 10px 34px 0px rgba(0, 0, 0, 0.1)\"},children:[/*#__PURE__*/_jsxs(motion.div,{className:\"framer-1rb1i70\",\"data-framer-name\":\"Stars\",layoutDependency:layoutDependency,layoutId:\"Yq1Wkj2xi\",children:[/*#__PURE__*/_jsx(ComponentViewportProvider,{children:/*#__PURE__*/_jsx(motion.div,{className:\"framer-x67xjr-container\",layoutDependency:layoutDependency,layoutId:\"H9DrdSF_s-container\",style:{opacity:.8},children:/*#__PURE__*/_jsx(Phosphor,{color:\"var(--token-4b59dad1-0c05-4dfe-95c7-04c765f05269, rgb(250, 208, 57))\",height:\"100%\",iconSearch:\"House\",iconSelection:\"Star\",id:\"H9DrdSF_s\",layoutId:\"H9DrdSF_s\",mirrored:false,selectByList:true,style:{height:\"100%\",width:\"100%\"},weight:\"fill\",width:\"100%\"})})}),/*#__PURE__*/_jsx(ComponentViewportProvider,{children:/*#__PURE__*/_jsx(motion.div,{className:\"framer-19ic2h7-container\",layoutDependency:layoutDependency,layoutId:\"Rito9MbRX-container\",style:{opacity:.8},children:/*#__PURE__*/_jsx(Phosphor,{color:\"var(--token-4b59dad1-0c05-4dfe-95c7-04c765f05269, rgb(250, 208, 57))\",height:\"100%\",iconSearch:\"House\",iconSelection:\"Star\",id:\"Rito9MbRX\",layoutId:\"Rito9MbRX\",mirrored:false,selectByList:true,style:{height:\"100%\",width:\"100%\"},weight:\"fill\",width:\"100%\"})})}),/*#__PURE__*/_jsx(ComponentViewportProvider,{children:/*#__PURE__*/_jsx(motion.div,{className:\"framer-1q4ivsz-container\",layoutDependency:layoutDependency,layoutId:\"KedgzqljI-container\",style:{opacity:.8},children:/*#__PURE__*/_jsx(Phosphor,{color:\"var(--token-4b59dad1-0c05-4dfe-95c7-04c765f05269, rgb(250, 208, 57))\",height:\"100%\",iconSearch:\"House\",iconSelection:\"Star\",id:\"KedgzqljI\",layoutId:\"KedgzqljI\",mirrored:false,selectByList:true,style:{height:\"100%\",width:\"100%\"},weight:\"fill\",width:\"100%\"})})}),/*#__PURE__*/_jsx(ComponentViewportProvider,{children:/*#__PURE__*/_jsx(motion.div,{className:\"framer-1pqtp0g-container\",layoutDependency:layoutDependency,layoutId:\"mLYK7Ua8a-container\",style:{opacity:.8},children:/*#__PURE__*/_jsx(Phosphor,{color:\"var(--token-4b59dad1-0c05-4dfe-95c7-04c765f05269, rgb(250, 208, 57))\",height:\"100%\",iconSearch:\"House\",iconSelection:\"Star\",id:\"mLYK7Ua8a\",layoutId:\"mLYK7Ua8a\",mirrored:false,selectByList:true,style:{height:\"100%\",width:\"100%\"},weight:\"fill\",width:\"100%\"})})}),/*#__PURE__*/_jsx(ComponentViewportProvider,{children:/*#__PURE__*/_jsx(motion.div,{className:\"framer-2yxo8i-container\",layoutDependency:layoutDependency,layoutId:\"TYDmoam5c-container\",style:{opacity:.8},children:/*#__PURE__*/_jsx(Phosphor,{color:\"var(--token-4b59dad1-0c05-4dfe-95c7-04c765f05269, rgb(250, 208, 57))\",height:\"100%\",iconSearch:\"House\",iconSelection:\"Star\",id:\"TYDmoam5c\",layoutId:\"TYDmoam5c\",mirrored:false,selectByList:true,style:{height:\"100%\",width:\"100%\"},weight:\"fill\",width:\"100%\"})})})]}),/*#__PURE__*/_jsxs(motion.div,{className:\"framer-1fjui6l\",\"data-framer-name\":\"Review\",layoutDependency:layoutDependency,layoutId:\"Hze9bEVlT\",children:[/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.h3,{className:\"framer-styles-preset-5a4759\",\"data-styles-preset\":\"vKGxKv6WT\",style:{\"--framer-text-color\":\"var(--extracted-a0htzi, var(--token-8e562c71-b86d-432e-ad04-cd3f03e73a71, rgb(255, 255, 255)))\"},children:'\"Transformative AI Solutions!\"'})}),className:\"framer-4pynsm\",fonts:[\"Inter\"],layoutDependency:layoutDependency,layoutId:\"exNcYq5WQ\",style:{\"--extracted-a0htzi\":\"var(--token-8e562c71-b86d-432e-ad04-cd3f03e73a71, rgb(255, 255, 255))\",\"--framer-link-text-color\":\"rgb(0, 153, 255)\",\"--framer-link-text-decoration\":\"underline\"},text:dhmQaw67Q,verticalAlignment:\"top\",withExternalLayout:true}),/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{className:\"framer-styles-preset-f8bv20\",\"data-styles-preset\":\"IZpeieEjn\",children:\"Review\"})}),className:\"framer-11h70k5\",fonts:[\"Inter\"],layoutDependency:layoutDependency,layoutId:\"pguGSvZsm\",style:{\"--framer-link-text-color\":\"rgb(0, 153, 255)\",\"--framer-link-text-decoration\":\"underline\"},text:hQUvFvwqs,verticalAlignment:\"top\",withExternalLayout:true})]}),/*#__PURE__*/_jsx(motion.div,{className:\"framer-1z0jkc3\",\"data-framer-name\":\"Linee\",layoutDependency:layoutDependency,layoutId:\"D66_Jjxry\",style:{background:'linear-gradient(90deg, rgba(84, 84, 84, 0) 0%, var(--token-17d94287-c97e-4602-9cf7-4d2036e50e01, rgb(0, 24, 94)) /* {\"name\":\"Dark blue\"} */ 50%, rgba(0, 0, 0, 0) 100%)'}}),/*#__PURE__*/_jsxs(motion.div,{className:\"framer-12vsevt\",\"data-framer-name\":\"Name\",layoutDependency:layoutDependency,layoutId:\"tHRTDS_bj\",children:[/*#__PURE__*/_jsx(motion.div,{className:\"framer-z9iw7v\",\"data-framer-name\":\"Icon\",layoutDependency:layoutDependency,layoutId:\"OCL4C7ndF\",style:{borderBottomLeftRadius:12,borderBottomRightRadius:12,borderTopLeftRadius:12,borderTopRightRadius:12},children:/*#__PURE__*/_jsx(motion.div,{className:\"framer-gtuh1u\",layoutDependency:layoutDependency,layoutId:\"UQ88BuPkH\",style:{backgroundColor:\"var(--token-a4408031-301f-4586-8a06-8fff745fcb68, rgb(247, 247, 247))\",borderBottomLeftRadius:10,borderBottomRightRadius:10,borderTopLeftRadius:10,borderTopRightRadius:10},children:/*#__PURE__*/_jsx(Image,{background:{alt:\"\",fit:\"fill\",loading:getLoadingLazyAtYPosition(((componentViewport===null||componentViewport===void 0?void 0:componentViewport.y)||0)+(1+(((componentViewport===null||componentViewport===void 0?void 0:componentViewport.height)||250)-2-450)/2)+24+248+0+0+0),sizes:\"52px\",...toResponsiveImage(YhKDzD0FO),...{positionX:\"center\",positionY:\"center\"}},className:\"framer-1xbdxun\",\"data-framer-name\":\"Icon\",layoutDependency:layoutDependency,layoutId:\"QpGP1JS7x\",style:{borderBottomLeftRadius:10,borderBottomRightRadius:10,borderTopLeftRadius:10,borderTopRightRadius:10}})})}),/*#__PURE__*/_jsxs(motion.div,{className:\"framer-1uj3kj4\",\"data-framer-name\":\"Title\",layoutDependency:layoutDependency,layoutId:\"sEJQiATkH\",children:[/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.h3,{className:\"framer-styles-preset-5a4759\",\"data-styles-preset\":\"vKGxKv6WT\",children:\"Name\"})}),className:\"framer-2ludbk\",fonts:[\"Inter\"],layoutDependency:layoutDependency,layoutId:\"QTYrLWnqb\",style:{\"--framer-link-text-color\":\"rgb(0, 153, 255)\",\"--framer-link-text-decoration\":\"underline\"},text:L04dSzjGv,verticalAlignment:\"top\",withExternalLayout:true}),/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{className:\"framer-styles-preset-f8bv20\",\"data-styles-preset\":\"IZpeieEjn\",children:\"Profession\"})}),className:\"framer-6qbaam\",fonts:[\"Inter\"],layoutDependency:layoutDependency,layoutId:\"Lj1oa3ti5\",style:{\"--framer-link-text-color\":\"rgb(0, 153, 255)\",\"--framer-link-text-decoration\":\"underline\"},text:hRrIvxKlX,verticalAlignment:\"top\",withExternalLayout:true})]})]})]})})})})});});const css=[\"@supports (aspect-ratio: 1) { body { --framer-aspect-ratio-supported: auto; } }\",\".framer-lqr9v.framer-1ijmm7w, .framer-lqr9v .framer-1ijmm7w { display: block; }\",\".framer-lqr9v.framer-15z7hp { align-content: center; align-items: center; cursor: default; display: flex; flex-direction: row; flex-wrap: nowrap; gap: 10px; height: min-content; justify-content: center; overflow: hidden; padding: 1px; position: relative; width: 395px; will-change: var(--framer-will-change-override, transform); }\",\".framer-lqr9v .framer-tl1bwr { align-content: flex-start; align-items: flex-start; display: flex; flex: 1 0 0px; flex-direction: column; flex-wrap: nowrap; gap: 24px; height: min-content; justify-content: center; overflow: hidden; padding: 24px; position: relative; width: 1px; will-change: var(--framer-will-change-override, transform); }\",\".framer-lqr9v .framer-1rb1i70 { align-content: center; align-items: center; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; gap: 3px; height: min-content; justify-content: center; overflow: hidden; padding: 0px; position: relative; width: min-content; }\",\".framer-lqr9v .framer-x67xjr-container, .framer-lqr9v .framer-19ic2h7-container, .framer-lqr9v .framer-1q4ivsz-container, .framer-lqr9v .framer-1pqtp0g-container, .framer-lqr9v .framer-2yxo8i-container { aspect-ratio: 1 / 1; flex: none; height: 17px; position: relative; width: var(--framer-aspect-ratio-supported, 17px); }\",\".framer-lqr9v .framer-1fjui6l { align-content: center; align-items: center; display: flex; flex: none; flex-direction: column; flex-wrap: nowrap; gap: 8px; height: min-content; justify-content: center; overflow: visible; padding: 0px; position: relative; width: 100%; }\",\".framer-lqr9v .framer-4pynsm, .framer-lqr9v .framer-11h70k5, .framer-lqr9v .framer-6qbaam { flex: none; height: auto; position: relative; white-space: pre-wrap; width: 100%; word-break: break-word; word-wrap: break-word; z-index: 1; }\",\".framer-lqr9v .framer-1z0jkc3 { flex: none; height: 1px; overflow: visible; position: relative; width: 100%; }\",\".framer-lqr9v .framer-12vsevt { align-content: flex-start; align-items: flex-start; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; gap: 12px; height: min-content; justify-content: center; overflow: hidden; padding: 0px; position: relative; width: 100%; }\",\".framer-lqr9v .framer-z9iw7v { align-content: center; align-items: center; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; gap: 6px; height: 52px; justify-content: center; overflow: visible; padding: 0px; position: relative; width: 52px; }\",\".framer-lqr9v .framer-gtuh1u { align-content: center; align-items: center; display: flex; flex: 1 0 0px; flex-direction: row; flex-wrap: nowrap; gap: 10px; height: 100%; justify-content: center; overflow: visible; padding: 0px; position: relative; width: 1px; }\",\".framer-lqr9v .framer-1xbdxun { flex: 1 0 0px; height: 100%; overflow: hidden; position: relative; width: 1px; will-change: var(--framer-will-change-override, transform); }\",\".framer-lqr9v .framer-1uj3kj4 { align-content: center; align-items: center; display: flex; flex: 1 0 0px; flex-direction: column; flex-wrap: nowrap; gap: 4px; height: min-content; justify-content: center; overflow: hidden; padding: 0px 16px 0px 0px; position: relative; width: 1px; }\",\".framer-lqr9v .framer-2ludbk { flex: none; height: auto; max-width: 1000px; position: relative; white-space: pre-wrap; width: 100%; word-break: break-word; word-wrap: break-word; z-index: 1; }\",\"@supports (background: -webkit-named-image(i)) and (not (font-palette:dark)) { .framer-lqr9v.framer-15z7hp, .framer-lqr9v .framer-tl1bwr, .framer-lqr9v .framer-1rb1i70, .framer-lqr9v .framer-1fjui6l, .framer-lqr9v .framer-12vsevt, .framer-lqr9v .framer-z9iw7v, .framer-lqr9v .framer-gtuh1u, .framer-lqr9v .framer-1uj3kj4 { gap: 0px; } .framer-lqr9v.framer-15z7hp > *, .framer-lqr9v .framer-gtuh1u > * { margin: 0px; margin-left: calc(10px / 2); margin-right: calc(10px / 2); } .framer-lqr9v.framer-15z7hp > :first-child, .framer-lqr9v .framer-1rb1i70 > :first-child, .framer-lqr9v .framer-12vsevt > :first-child, .framer-lqr9v .framer-z9iw7v > :first-child, .framer-lqr9v .framer-gtuh1u > :first-child { margin-left: 0px; } .framer-lqr9v.framer-15z7hp > :last-child, .framer-lqr9v .framer-1rb1i70 > :last-child, .framer-lqr9v .framer-12vsevt > :last-child, .framer-lqr9v .framer-z9iw7v > :last-child, .framer-lqr9v .framer-gtuh1u > :last-child { margin-right: 0px; } .framer-lqr9v .framer-tl1bwr > * { margin: 0px; margin-bottom: calc(24px / 2); margin-top: calc(24px / 2); } .framer-lqr9v .framer-tl1bwr > :first-child, .framer-lqr9v .framer-1fjui6l > :first-child, .framer-lqr9v .framer-1uj3kj4 > :first-child { margin-top: 0px; } .framer-lqr9v .framer-tl1bwr > :last-child, .framer-lqr9v .framer-1fjui6l > :last-child, .framer-lqr9v .framer-1uj3kj4 > :last-child { margin-bottom: 0px; } .framer-lqr9v .framer-1rb1i70 > * { margin: 0px; margin-left: calc(3px / 2); margin-right: calc(3px / 2); } .framer-lqr9v .framer-1fjui6l > * { margin: 0px; margin-bottom: calc(8px / 2); margin-top: calc(8px / 2); } .framer-lqr9v .framer-12vsevt > * { margin: 0px; margin-left: calc(12px / 2); margin-right: calc(12px / 2); } .framer-lqr9v .framer-z9iw7v > * { margin: 0px; margin-left: calc(6px / 2); margin-right: calc(6px / 2); } .framer-lqr9v .framer-1uj3kj4 > * { margin: 0px; margin-bottom: calc(4px / 2); margin-top: calc(4px / 2); } }\",...sharedStyle.css,...sharedStyle1.css];/**\n * This is a generated Framer component.\n * @framerIntrinsicHeight 250\n * @framerIntrinsicWidth 395\n * @framerCanvasComponentVariantDetails {\"propertyName\":\"variant\",\"data\":{\"default\":{\"layout\":[\"fixed\",\"auto\"]}}}\n * @framerVariables {\"dhmQaw67Q\":\"reviewTitle\",\"hQUvFvwqs\":\"review\",\"YhKDzD0FO\":\"photo\",\"L04dSzjGv\":\"name1\",\"hRrIvxKlX\":\"profession\"}\n * @framerImmutableVariables true\n * @framerDisplayContentsDiv false\n * @framerComponentViewportWidth true\n */const Framerrr47LD73u=withCSS(Component,css,\"framer-lqr9v\");export default Framerrr47LD73u;Framerrr47LD73u.displayName=\"Cards/Testimonials\";Framerrr47LD73u.defaultProps={height:250,width:395};addPropertyControls(Framerrr47LD73u,{dhmQaw67Q:{defaultValue:'\"Transformative AI Solutions!\"',displayTextArea:false,title:\"Review title\",type:ControlType.String},hQUvFvwqs:{defaultValue:\"Review\",displayTextArea:true,title:\"Review\",type:ControlType.String},YhKDzD0FO:{title:\"Photo\",type:ControlType.ResponsiveImage},L04dSzjGv:{defaultValue:\"Name\",displayTextArea:false,title:\"Name\",type:ControlType.String},hRrIvxKlX:{defaultValue:\"Profession\",displayTextArea:false,title:\"Profession\",type:ControlType.String}});addFonts(Framerrr47LD73u,[{explicitInter:true,fonts:[{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F\",url:\"https://framerusercontent.com/assets/5vvr9Vy74if2I6bQbJvbw7SY1pQ.woff2\",weight:\"400\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116\",url:\"https://framerusercontent.com/assets/EOr0mi4hNtlgWNn9if640EZzXCo.woff2\",weight:\"400\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+1F00-1FFF\",url:\"https://framerusercontent.com/assets/Y9k9QrlZAqio88Klkmbd8VoMQc.woff2\",weight:\"400\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0370-03FF\",url:\"https://framerusercontent.com/assets/OYrD2tBIBPvoJXiIHnLoOXnY9M.woff2\",weight:\"400\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF\",url:\"https://framerusercontent.com/assets/JeYwfuaPfZHQhEG8U5gtPDZ7WQ.woff2\",weight:\"400\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD\",url:\"https://framerusercontent.com/assets/vQyevYAyHtARFwPqUzQGpnDs.woff2\",weight:\"400\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB\",url:\"https://framerusercontent.com/assets/b6Y37FthZeALduNqHicBT6FutY.woff2\",weight:\"400\"}]},...PhosphorFonts,...getFontsFromSharedStyle(sharedStyle.fonts),...getFontsFromSharedStyle(sharedStyle1.fonts)],{supportsExplicitInterCodegen:true});\nexport const __FramerMetadata__ = {\"exports\":{\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"default\":{\"type\":\"reactComponent\",\"name\":\"Framerrr47LD73u\",\"slots\":[],\"annotations\":{\"framerVariables\":\"{\\\"dhmQaw67Q\\\":\\\"reviewTitle\\\",\\\"hQUvFvwqs\\\":\\\"review\\\",\\\"YhKDzD0FO\\\":\\\"photo\\\",\\\"L04dSzjGv\\\":\\\"name1\\\",\\\"hRrIvxKlX\\\":\\\"profession\\\"}\",\"framerIntrinsicHeight\":\"250\",\"framerIntrinsicWidth\":\"395\",\"framerImmutableVariables\":\"true\",\"framerContractVersion\":\"1\",\"framerDisplayContentsDiv\":\"false\",\"framerComponentViewportWidth\":\"true\",\"framerCanvasComponentVariantDetails\":\"{\\\"propertyName\\\":\\\"variant\\\",\\\"data\\\":{\\\"default\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"auto\\\"]}}}\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./rr47LD73u.map", "// Generated by Framer (f030ee3)\nimport{jsx as _jsx,jsxs as _jsxs}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 Ticker from\"https://framerusercontent.com/modules/B2xAlJLcN0gOnt11mSPw/jyRNgY7vYWXe6t31T0wo/Ticker.js\";import Slideshow from\"https://framerusercontent.com/modules/zvkTOpMSuRzRhLzZZIwG/bJnHw5VokAqNKlg6Rp7L/SlideShow.js\";import CardsTestimonials from\"https://framerusercontent.com/modules/tK6DnJZ3Z3LzS9l2nbYU/6tnGlmWQkFXgBlvAEaem/rr47LD73u.js\";const CardsTestimonialsFonts=getFonts(CardsTestimonials);const SlideshowFonts=getFonts(Slideshow);const TickerFonts=getFonts(Ticker);const cycleOrder=[\"Gh7EOXktC\",\"YssOiW_RH\"];const serializationHash=\"framer-olyzC\";const variantClassNames={Gh7EOXktC:\"framer-v-1d1zmsg\",YssOiW_RH:\"framer-v-suurxe\"};function addPropertyOverrides(overrides,...variants){const nextOverrides={};variants?.forEach(variant=>variant&&Object.assign(nextOverrides,overrides[variant]));return nextOverrides;}const transition1={damping:60,delay:0,mass:1,stiffness:500,type:\"spring\"};const addImageAlt=(image,alt)=>{if(!image||typeof image!==\"object\"){return;}return{...image,alt};};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={\"Slideshow - phone\":\"YssOiW_RH\",Ticker:\"Gh7EOXktC\"};const getProps=({height,id,speed,width,...props})=>{return{...props,amp5j9r0L:speed??props.amp5j9r0L??40,variant:humanReadableVariantMap[props.variant]??props.variant??\"Gh7EOXktC\"};};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,amp5j9r0L,...restProps}=getProps(props);const{baseVariant,classNames,clearLoadingGesture,gestureHandlers,gestureVariant,isLoading,setGestureState,setVariant,variants}=useVariantState({cycleOrder,defaultVariant:\"Gh7EOXktC\",ref:refBinding,variant,variantClassNames});const layoutDependency=createLayoutDependency(props,variants);const sharedStyleClassNames=[];const scopingClassNames=cx(serializationHash,...sharedStyleClassNames);const isDisplayed=()=>{if(baseVariant===\"YssOiW_RH\")return true;return false;};const isDisplayed1=()=>{if(baseVariant===\"YssOiW_RH\")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,children:/*#__PURE__*/_jsxs(motion.div,{...restProps,...gestureHandlers,className:cx(scopingClassNames,\"framer-1d1zmsg\",className,classNames),\"data-framer-name\":\"Ticker\",layoutDependency:layoutDependency,layoutId:\"Gh7EOXktC\",ref:refBinding,style:{...style},...addPropertyOverrides({YssOiW_RH:{\"data-framer-name\":\"Slideshow - phone\"}},baseVariant,gestureVariant),children:[isDisplayed()&&/*#__PURE__*/_jsx(ComponentViewportProvider,{children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-1h9yynx-container\",isAuthoredByUser:true,isModuleExternal:true,layoutDependency:layoutDependency,layoutId:\"ydA9zfRkc-container\",nodeId:\"ydA9zfRkc\",rendersWithMotion:true,scopeId:\"Xa9II8U1H\",children:/*#__PURE__*/_jsx(Slideshow,{alignment:\"center\",arrowOptions:{arrowFill:\"rgba(0, 0, 0, 0.2)\",arrowGap:10,arrowPadding:20,arrowPaddingBottom:0,arrowPaddingLeft:0,arrowPaddingRight:0,arrowPaddingTop:0,arrowPosition:\"auto\",arrowRadius:40,arrowShouldFadeIn:false,arrowShouldSpace:true,arrowSize:40,showMouseControls:true},autoPlayControl:false,borderRadius:0,direction:\"left\",dragControl:true,effectsOptions:{effectsHover:true,effectsOpacity:1,effectsPerspective:1200,effectsRotate:0,effectsScale:1,playOffscreen:false},fadeOptions:{fadeAlpha:0,fadeContent:false,fadeInset:0,fadeWidth:25,overflow:false},gap:10,height:\"100%\",id:\"ydA9zfRkc\",intervalControl:1.5,itemAmount:1,layoutId:\"ydA9zfRkc\",padding:0,paddingBottom:0,paddingLeft:0,paddingPerSide:false,paddingRight:0,paddingTop:0,progressOptions:{dotsActiveOpacity:1,dotsBackground:\"rgba(0, 0, 0, 0.2)\",dotsBlur:0,dotsFill:\"rgb(255, 255, 255)\",dotsGap:10,dotsInset:10,dotSize:10,dotsOpacity:.5,dotsPadding:10,dotsRadius:50,showProgressDots:false},slots:[/*#__PURE__*/_jsx(ComponentViewportProvider,{height:250,width:\"559px\",children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-vzsjzl-container\",inComponentSlot:true,layoutDependency:layoutDependency,layoutId:\"UPZCTjUWa-container\",nodeId:\"UPZCTjUWa\",rendersWithMotion:true,scopeId:\"Xa9II8U1H\",children:/*#__PURE__*/_jsx(CardsTestimonials,{dhmQaw67Q:'\"Seamless Integration and Top-Notch Support!\"',height:\"100%\",hQUvFvwqs:\"What really sets Bit4Bit apart is their ability to integrate AI seamlessly into our existing systems. The custom chatbots they created handle 60% of our customer service queries.\",hRrIvxKlX:\"Customer Experience Lead\",id:\"UPZCTjUWa\",L04dSzjGv:\"Jessica R.\",layoutId:\"UPZCTjUWa\",style:{width:\"100%\"},width:\"100%\",YhKDzD0FO:addImageAlt({src:\"https://framerusercontent.com/images/wYtPvzWhc9qtXuROb6JL6kk.jpg\",srcSet:\"https://framerusercontent.com/images/wYtPvzWhc9qtXuROb6JL6kk.jpg?scale-down-to=512 512w,https://framerusercontent.com/images/wYtPvzWhc9qtXuROb6JL6kk.jpg?scale-down-to=1024 1024w,https://framerusercontent.com/images/wYtPvzWhc9qtXuROb6JL6kk.jpg?scale-down-to=2048 2048w,https://framerusercontent.com/images/wYtPvzWhc9qtXuROb6JL6kk.jpg?scale-down-to=4096 4096w,https://framerusercontent.com/images/wYtPvzWhc9qtXuROb6JL6kk.jpg 4928w\"},\"\")})})}),/*#__PURE__*/_jsx(ComponentViewportProvider,{height:250,width:\"559px\",children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-mnv5uu-container\",inComponentSlot:true,layoutDependency:layoutDependency,layoutId:\"YEenzBaOa-container\",nodeId:\"YEenzBaOa\",rendersWithMotion:true,scopeId:\"Xa9II8U1H\",children:/*#__PURE__*/_jsx(CardsTestimonials,{dhmQaw67Q:'\"Incredible Customer Insights!\"',height:\"100%\",hQUvFvwqs:\"Thanks to the AI-driven predictive analytics tools from Bit4Bit, we\u2019ve gained deep insights into our customers' behavior.\",hRrIvxKlX:\"VP of Marketing\",id:\"YEenzBaOa\",L04dSzjGv:\"Emily T.\",layoutId:\"YEenzBaOa\",style:{width:\"100%\"},width:\"100%\",YhKDzD0FO:addImageAlt({src:\"https://framerusercontent.com/images/u8K8rbgmRaS81RzFu2M7Wl00qI.jpg\",srcSet:\"https://framerusercontent.com/images/u8K8rbgmRaS81RzFu2M7Wl00qI.jpg?scale-down-to=1024 682w,https://framerusercontent.com/images/u8K8rbgmRaS81RzFu2M7Wl00qI.jpg?scale-down-to=2048 1365w,https://framerusercontent.com/images/u8K8rbgmRaS81RzFu2M7Wl00qI.jpg?scale-down-to=4096 2730w,https://framerusercontent.com/images/u8K8rbgmRaS81RzFu2M7Wl00qI.jpg 3840w\"},\"\")})})}),/*#__PURE__*/_jsx(ComponentViewportProvider,{height:250,width:\"559px\",children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-wa1nib-container\",inComponentSlot:true,layoutDependency:layoutDependency,layoutId:\"LQoiFGnDu-container\",nodeId:\"LQoiFGnDu\",rendersWithMotion:true,scopeId:\"Xa9II8U1H\",children:/*#__PURE__*/_jsx(CardsTestimonials,{dhmQaw67Q:'\"Unmatched Efficiency and Innovation!\"',height:\"100%\",hQUvFvwqs:\"The AI automation tools provided by Bit4Bit have revolutionized our internal processes. We've reduced manual tasks by 35%, allowing our team to focus on higher-value work.\",hRrIvxKlX:\"CEO\",id:\"LQoiFGnDu\",L04dSzjGv:\"Robin O.\",layoutId:\"LQoiFGnDu\",style:{width:\"100%\"},width:\"100%\",YhKDzD0FO:addImageAlt({src:\"https://framerusercontent.com/images/SXFz8Wuy8bsYZ1ytQVNXmVyWXP0.jpg\",srcSet:\"https://framerusercontent.com/images/SXFz8Wuy8bsYZ1ytQVNXmVyWXP0.jpg?scale-down-to=512 512w,https://framerusercontent.com/images/SXFz8Wuy8bsYZ1ytQVNXmVyWXP0.jpg?scale-down-to=1024 1024w,https://framerusercontent.com/images/SXFz8Wuy8bsYZ1ytQVNXmVyWXP0.jpg?scale-down-to=2048 2048w,https://framerusercontent.com/images/SXFz8Wuy8bsYZ1ytQVNXmVyWXP0.jpg?scale-down-to=4096 4096w,https://framerusercontent.com/images/SXFz8Wuy8bsYZ1ytQVNXmVyWXP0.jpg 5472w\"},\"\")})})}),/*#__PURE__*/_jsx(ComponentViewportProvider,{height:250,width:\"559px\",children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-r93oly-container\",inComponentSlot:true,layoutDependency:layoutDependency,layoutId:\"OsxGKlhzR-container\",nodeId:\"OsxGKlhzR\",rendersWithMotion:true,scopeId:\"Xa9II8U1H\",children:/*#__PURE__*/_jsx(CardsTestimonials,{dhmQaw67Q:'\"Transformative AI Solutions!\"',height:\"100%\",hQUvFvwqs:\"Working with Bit4Bit has been a game-changer for our business. The AI-powered recommendation engine they implemented boosted our sales by 20% in just three months!\",hRrIvxKlX:\"CEO\",id:\"OsxGKlhzR\",L04dSzjGv:\"Sarah P.\",layoutId:\"OsxGKlhzR\",style:{width:\"100%\"},width:\"100%\",YhKDzD0FO:addImageAlt({src:\"https://framerusercontent.com/images/a6V9t9YFzI29cz5gMQRbfWgjVS4.jpg\",srcSet:\"https://framerusercontent.com/images/a6V9t9YFzI29cz5gMQRbfWgjVS4.jpg?scale-down-to=1024 682w,https://framerusercontent.com/images/a6V9t9YFzI29cz5gMQRbfWgjVS4.jpg?scale-down-to=2048 1365w,https://framerusercontent.com/images/a6V9t9YFzI29cz5gMQRbfWgjVS4.jpg?scale-down-to=4096 2730w,https://framerusercontent.com/images/a6V9t9YFzI29cz5gMQRbfWgjVS4.jpg 3840w\"},\"\")})})})],startFrom:0,style:{height:\"100%\",width:\"100%\"},transitionControl:{damping:40,delay:0,mass:1,stiffness:200,type:\"spring\"},width:\"100%\"})})}),isDisplayed1()&&/*#__PURE__*/_jsx(ComponentViewportProvider,{children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-j1qshr-container\",isAuthoredByUser:true,isModuleExternal:true,layoutDependency:layoutDependency,layoutId:\"NxNNr4NoI-container\",nodeId:\"NxNNr4NoI\",rendersWithMotion:true,scopeId:\"Xa9II8U1H\",children:/*#__PURE__*/_jsx(Ticker,{alignment:\"flex-start\",direction:\"left\",fadeOptions:{fadeAlpha:0,fadeContent:true,fadeInset:0,fadeWidth:25,overflow:false},gap:24,height:\"100%\",hoverFactor:.5,id:\"NxNNr4NoI\",layoutId:\"NxNNr4NoI\",padding:0,paddingBottom:0,paddingLeft:0,paddingPerSide:false,paddingRight:0,paddingTop:0,sizingOptions:{heightType:true,widthType:true},slots:[/*#__PURE__*/_jsx(ComponentViewportProvider,{height:250,width:\"559px\",children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-r93oly-container\",inComponentSlot:true,layoutDependency:layoutDependency,layoutId:\"OsxGKlhzR-container\",nodeId:\"OsxGKlhzR\",rendersWithMotion:true,scopeId:\"Xa9II8U1H\",children:/*#__PURE__*/_jsx(CardsTestimonials,{dhmQaw67Q:'\"Transformative AI Solutions!\"',height:\"100%\",hQUvFvwqs:\"Working with Bit4Bit has been a game-changer for our business. The AI-powered recommendation engine they implemented boosted our sales by 20% in just three months!\",hRrIvxKlX:\"CEO\",id:\"OsxGKlhzR\",L04dSzjGv:\"Sarah P.\",layoutId:\"OsxGKlhzR\",style:{width:\"100%\"},width:\"100%\",YhKDzD0FO:addImageAlt({src:\"https://framerusercontent.com/images/a6V9t9YFzI29cz5gMQRbfWgjVS4.jpg\",srcSet:\"https://framerusercontent.com/images/a6V9t9YFzI29cz5gMQRbfWgjVS4.jpg?scale-down-to=1024 682w,https://framerusercontent.com/images/a6V9t9YFzI29cz5gMQRbfWgjVS4.jpg?scale-down-to=2048 1365w,https://framerusercontent.com/images/a6V9t9YFzI29cz5gMQRbfWgjVS4.jpg?scale-down-to=4096 2730w,https://framerusercontent.com/images/a6V9t9YFzI29cz5gMQRbfWgjVS4.jpg 3840w\"},\"\")})})}),/*#__PURE__*/_jsx(ComponentViewportProvider,{height:250,width:\"559px\",children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-wa1nib-container\",inComponentSlot:true,layoutDependency:layoutDependency,layoutId:\"LQoiFGnDu-container\",nodeId:\"LQoiFGnDu\",rendersWithMotion:true,scopeId:\"Xa9II8U1H\",children:/*#__PURE__*/_jsx(CardsTestimonials,{dhmQaw67Q:'\"Unmatched Efficiency and Innovation!\"',height:\"100%\",hQUvFvwqs:\"The AI automation tools provided by Bit4Bit have revolutionized our internal processes. We've reduced manual tasks by 35%, allowing our team to focus on higher-value work.\",hRrIvxKlX:\"CEO\",id:\"LQoiFGnDu\",L04dSzjGv:\"Robin O.\",layoutId:\"LQoiFGnDu\",style:{width:\"100%\"},width:\"100%\",YhKDzD0FO:addImageAlt({src:\"https://framerusercontent.com/images/SXFz8Wuy8bsYZ1ytQVNXmVyWXP0.jpg\",srcSet:\"https://framerusercontent.com/images/SXFz8Wuy8bsYZ1ytQVNXmVyWXP0.jpg?scale-down-to=512 512w,https://framerusercontent.com/images/SXFz8Wuy8bsYZ1ytQVNXmVyWXP0.jpg?scale-down-to=1024 1024w,https://framerusercontent.com/images/SXFz8Wuy8bsYZ1ytQVNXmVyWXP0.jpg?scale-down-to=2048 2048w,https://framerusercontent.com/images/SXFz8Wuy8bsYZ1ytQVNXmVyWXP0.jpg?scale-down-to=4096 4096w,https://framerusercontent.com/images/SXFz8Wuy8bsYZ1ytQVNXmVyWXP0.jpg 5472w\"},\"\")})})}),/*#__PURE__*/_jsx(ComponentViewportProvider,{height:250,width:\"559px\",children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-mnv5uu-container\",inComponentSlot:true,layoutDependency:layoutDependency,layoutId:\"YEenzBaOa-container\",nodeId:\"YEenzBaOa\",rendersWithMotion:true,scopeId:\"Xa9II8U1H\",children:/*#__PURE__*/_jsx(CardsTestimonials,{dhmQaw67Q:'\"Incredible Customer Insights!\"',height:\"100%\",hQUvFvwqs:\"Thanks to the AI-driven predictive analytics tools from Bit4Bit, we\u2019ve gained deep insights into our customers' behavior.\",hRrIvxKlX:\"VP of Marketing\",id:\"YEenzBaOa\",L04dSzjGv:\"Emily T.\",layoutId:\"YEenzBaOa\",style:{width:\"100%\"},width:\"100%\",YhKDzD0FO:addImageAlt({src:\"https://framerusercontent.com/images/u8K8rbgmRaS81RzFu2M7Wl00qI.jpg\",srcSet:\"https://framerusercontent.com/images/u8K8rbgmRaS81RzFu2M7Wl00qI.jpg?scale-down-to=1024 682w,https://framerusercontent.com/images/u8K8rbgmRaS81RzFu2M7Wl00qI.jpg?scale-down-to=2048 1365w,https://framerusercontent.com/images/u8K8rbgmRaS81RzFu2M7Wl00qI.jpg?scale-down-to=4096 2730w,https://framerusercontent.com/images/u8K8rbgmRaS81RzFu2M7Wl00qI.jpg 3840w\"},\"\")})})}),/*#__PURE__*/_jsx(ComponentViewportProvider,{height:250,width:\"559px\",children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-vzsjzl-container\",inComponentSlot:true,layoutDependency:layoutDependency,layoutId:\"UPZCTjUWa-container\",nodeId:\"UPZCTjUWa\",rendersWithMotion:true,scopeId:\"Xa9II8U1H\",children:/*#__PURE__*/_jsx(CardsTestimonials,{dhmQaw67Q:'\"Seamless Integration and Top-Notch Support!\"',height:\"100%\",hQUvFvwqs:\"What really sets Bit4Bit apart is their ability to integrate AI seamlessly into our existing systems. The custom chatbots they created handle 60% of our customer service queries.\",hRrIvxKlX:\"Customer Experience Lead\",id:\"UPZCTjUWa\",L04dSzjGv:\"Jessica R.\",layoutId:\"UPZCTjUWa\",style:{width:\"100%\"},width:\"100%\",YhKDzD0FO:addImageAlt({src:\"https://framerusercontent.com/images/wYtPvzWhc9qtXuROb6JL6kk.jpg\",srcSet:\"https://framerusercontent.com/images/wYtPvzWhc9qtXuROb6JL6kk.jpg?scale-down-to=512 512w,https://framerusercontent.com/images/wYtPvzWhc9qtXuROb6JL6kk.jpg?scale-down-to=1024 1024w,https://framerusercontent.com/images/wYtPvzWhc9qtXuROb6JL6kk.jpg?scale-down-to=2048 2048w,https://framerusercontent.com/images/wYtPvzWhc9qtXuROb6JL6kk.jpg?scale-down-to=4096 4096w,https://framerusercontent.com/images/wYtPvzWhc9qtXuROb6JL6kk.jpg 4928w\"},\"\")})})})],speed:amp5j9r0L,style:{height:\"100%\",width:\"100%\"},width:\"100%\"})})})]})})})});});const css=[\"@supports (aspect-ratio: 1) { body { --framer-aspect-ratio-supported: auto; } }\",\".framer-olyzC.framer-qfud37, .framer-olyzC .framer-qfud37 { display: block; }\",\".framer-olyzC.framer-1d1zmsg { align-content: center; align-items: center; display: flex; flex-direction: row; flex-wrap: nowrap; gap: 10px; height: min-content; justify-content: center; overflow: visible; padding: 0px; position: relative; width: 880px; }\",\".framer-olyzC .framer-1h9yynx-container { flex: 1 0 0px; height: 390px; position: relative; width: 1px; }\",\".framer-olyzC .framer-vzsjzl-container, .framer-olyzC .framer-mnv5uu-container, .framer-olyzC .framer-wa1nib-container, .framer-olyzC .framer-r93oly-container { height: auto; position: relative; width: 559px; }\",\".framer-olyzC .framer-j1qshr-container { flex: 1 0 0px; height: 360px; position: relative; width: 1px; }\",\"@supports (background: -webkit-named-image(i)) and (not (font-palette:dark)) { .framer-olyzC.framer-1d1zmsg { gap: 0px; } .framer-olyzC.framer-1d1zmsg > * { margin: 0px; margin-left: calc(10px / 2); margin-right: calc(10px / 2); } .framer-olyzC.framer-1d1zmsg > :first-child { margin-left: 0px; } .framer-olyzC.framer-1d1zmsg > :last-child { margin-right: 0px; } }\",\".framer-olyzC.framer-v-suurxe.framer-1d1zmsg { width: 567px; }\"];/**\n * This is a generated Framer component.\n * @framerIntrinsicHeight 360\n * @framerIntrinsicWidth 880\n * @framerCanvasComponentVariantDetails {\"propertyName\":\"variant\",\"data\":{\"default\":{\"layout\":[\"fixed\",\"auto\"]},\"YssOiW_RH\":{\"layout\":[\"fixed\",\"auto\"]}}}\n * @framerVariables {\"amp5j9r0L\":\"speed\"}\n * @framerImmutableVariables true\n * @framerDisplayContentsDiv false\n * @framerComponentViewportWidth true\n */const FramerXa9II8U1H=withCSS(Component,css,\"framer-olyzC\");export default FramerXa9II8U1H;FramerXa9II8U1H.displayName=\"Ticker/Testimonials\";FramerXa9II8U1H.defaultProps={height:360,width:880};addPropertyControls(FramerXa9II8U1H,{variant:{options:[\"Gh7EOXktC\",\"YssOiW_RH\"],optionTitles:[\"Ticker\",\"Slideshow - phone\"],title:\"Variant\",type:ControlType.Enum},amp5j9r0L:{defaultValue:40,displayStepper:true,max:1e3,min:0,step:5,title:\"Speed\",type:ControlType.Number}});addFonts(FramerXa9II8U1H,[{explicitInter:true,fonts:[]},...CardsTestimonialsFonts,...SlideshowFonts,...TickerFonts],{supportsExplicitInterCodegen:true});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"FramerXa9II8U1H\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\",\"framerIntrinsicWidth\":\"880\",\"framerImmutableVariables\":\"true\",\"framerComponentViewportWidth\":\"true\",\"framerIntrinsicHeight\":\"360\",\"framerCanvasComponentVariantDetails\":\"{\\\"propertyName\\\":\\\"variant\\\",\\\"data\\\":{\\\"default\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"auto\\\"]},\\\"YssOiW_RH\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"auto\\\"]}}}\",\"framerDisplayContentsDiv\":\"false\",\"framerVariables\":\"{\\\"amp5j9r0L\\\":\\\"speed\\\"}\"}},\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./Xa9II8U1H.map", "var t,e,r,n=Object.create,i=Object.defineProperty,s=Object.getOwnPropertyDescriptor,a=Object.getOwnPropertyNames,o=Object.getPrototypeOf,u=Object.prototype.hasOwnProperty,l=(t,e)=>function(){return e||(0,t[a(t)[0]])((e={exports:{}}).exports,e),e.exports;},h=(t,e,r,n)=>{if(e&&\"object\"==typeof e||\"function\"==typeof e)for(let o of a(e))u.call(t,o)||o===r||i(t,o,{get:()=>e[o],enumerable:!(n=s(e,o))||n.enumerable});return t;},f=(t,e,r)=>(r=null!=t?n(o(t)):{},h(// 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    !e&&t&&t.__esModule?r:i(r,\"default\",{value:t,enumerable:!0}),t)),c=l({\"../../../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;}}),g=l({\"../../../node_modules/whatwg-mimetype/lib/utils.js\"(t){t.removeLeadingAndTrailingHTTPWhitespace=t=>t.replace(/^[ \\t\\n\\r]+/u,\"\").replace(/[ \\t\\n\\r]+$/u,\"\"),t.removeTrailingHTTPWhitespace=t=>t.replace(/[ \\t\\n\\r]+$/u,\"\"),t.isHTTPWhitespaceChar=t=>\" \"===t||\"\t\"===t||\"\\n\"===t||\"\\r\"===t,t.solelyContainsHTTPTokenCodePoints=t=>/^[-!#$%&'*+.^_`|~A-Za-z0-9]*$/u.test(t),t.soleyContainsHTTPQuotedStringTokenCodePoints=t=>/^[\\t\\u0020-\\u007E\\u0080-\\u00FF]*$/u.test(t),t.asciiLowercase=t=>t.replace(/[A-Z]/ug,t=>t.toLowerCase()),t.collectAnHTTPQuotedString=(t,e)=>{let r=\"\";for(e++;;){for(;e<t.length&&'\"'!==t[e]&&\"\\\\\"!==t[e];)r+=t[e],++e;if(e>=t.length)break;let n=t[e];if(++e,\"\\\\\"===n){if(e>=t.length){r+=\"\\\\\";break;}r+=t[e],++e;}else break;}return[r,e];};}}),d=l({\"../../../node_modules/whatwg-mimetype/lib/mime-type-parameters.js\"(t,e){var{asciiLowercase:r,solelyContainsHTTPTokenCodePoints:n,soleyContainsHTTPQuotedStringTokenCodePoints:i}=g();e.exports=class{get size(){return this._map.size;}get(t){return t=r(String(t)),this._map.get(t);}has(t){return t=r(String(t)),this._map.has(t);}set(t,e){if(t=r(String(t)),e=String(e),!n(t))throw Error(`Invalid MIME type parameter name \"${t}\": only HTTP token code points are valid.`);if(!i(e))throw Error(`Invalid MIME type parameter value \"${e}\": only HTTP quoted-string token code points are valid.`);return this._map.set(t,e);}clear(){this._map.clear();}delete(t){return t=r(String(t)),this._map.delete(t);}forEach(t,e){this._map.forEach(t,e);}keys(){return this._map.keys();}values(){return this._map.values();}entries(){return this._map.entries();}[Symbol.iterator](){return this._map[Symbol.iterator]();}constructor(t){this._map=t;}};}}),p=l({\"../../../node_modules/whatwg-mimetype/lib/parser.js\"(t,e){var{removeLeadingAndTrailingHTTPWhitespace:r,removeTrailingHTTPWhitespace:n,isHTTPWhitespaceChar:i,solelyContainsHTTPTokenCodePoints:s,soleyContainsHTTPQuotedStringTokenCodePoints:a,asciiLowercase:o,collectAnHTTPQuotedString:u}=g();e.exports=t=>{t=r(t);let e=0,l=\"\";for(;e<t.length&&\"/\"!==t[e];)l+=t[e],++e;if(0===l.length||!s(l)||e>=t.length)return null;++e;let h=\"\";for(;e<t.length&&\";\"!==t[e];)h+=t[e],++e;if(0===(h=n(h)).length||!s(h))return null;let f={type:o(l),subtype:o(h),parameters:/* @__PURE__ */new Map};for(;e<t.length;){for(++e;i(t[e]);)++e;let r=\"\";for(;e<t.length&&\";\"!==t[e]&&\"=\"!==t[e];)r+=t[e],++e;if(r=o(r),e<t.length){if(\";\"===t[e])continue;++e;}let l=null;if('\"'===t[e])for([l,e]=u(t,e);e<t.length&&\";\"!==t[e];)++e;else{for(l=\"\";e<t.length&&\";\"!==t[e];)l+=t[e],++e;if(\"\"===(l=n(l)))continue;}r.length>0&&s(r)&&a(l)&&!f.parameters.has(r)&&f.parameters.set(r,l);}return f;};}}),y=l({\"../../../node_modules/whatwg-mimetype/lib/serializer.js\"(t,e){var{solelyContainsHTTPTokenCodePoints:r}=g();e.exports=t=>{let e=`${t.type}/${t.subtype}`;if(0===t.parameters.size)return e;for(let[n,i]of t.parameters)e+=\";\"+n+\"=\",r(i)&&0!==i.length||(i=i.replace(/([\"\\\\])/ug,\"\\\\$1\"),i=`\"${i}\"`),e+=i;return e;};}}),v=l({\"../../../node_modules/whatwg-mimetype/lib/mime-type.js\"(t,e){var r=d(),n=p(),i=y(),{asciiLowercase:s,solelyContainsHTTPTokenCodePoints:a}=g();e.exports=class{static parse(t){try{return new this(t);}catch(t){return null;}}get essence(){return`${this.type}/${this.subtype}`;}get type(){return this._type;}set type(t){if(0===(t=s(String(t))).length)throw Error(\"Invalid type: must be a non-empty string\");if(!a(t))throw Error(`Invalid type ${t}: must contain only HTTP token code points`);this._type=t;}get subtype(){return this._subtype;}set subtype(t){if(0===(t=s(String(t))).length)throw Error(\"Invalid subtype: must be a non-empty string\");if(!a(t))throw Error(`Invalid subtype ${t}: must contain only HTTP token code points`);this._subtype=t;}get parameters(){return this._parameters;}toString(){return i(this);}isJavaScript({prohibitParameters:t=!1}={}){switch(this._type){case\"text\":switch(this._subtype){case\"ecmascript\":case\"javascript\":case\"javascript1.0\":case\"javascript1.1\":case\"javascript1.2\":case\"javascript1.3\":case\"javascript1.4\":case\"javascript1.5\":case\"jscript\":case\"livescript\":case\"x-ecmascript\":case\"x-javascript\":return!t||0===this._parameters.size;default:return!1;}case\"application\":switch(this._subtype){case\"ecmascript\":case\"javascript\":case\"x-ecmascript\":case\"x-javascript\":return!t||0===this._parameters.size;default:return!1;}default:return!1;}}isXML(){return\"xml\"===this._subtype&&(\"text\"===this._type||\"application\"===this._type)||this._subtype.endsWith(\"+xml\");}isHTML(){return\"html\"===this._subtype&&\"text\"===this._type;}constructor(t){t=String(t);let e=n(t);if(null===e)throw Error(`Could not parse MIME type string \"${t}\"`);this._type=e.type,this._subtype=e.subtype,this._parameters=new r(e.parameters);}};}}),m=f(c()),w={Uint8:1,Uint16:2,Uint32:4,BigUint64:8,Int8:1,Int16:2,Int32:4,BigInt64:8,Float32:4,Float64:8},b=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=w.Uint8;this.ensureLength(t);let e=this.view.getUint8(this.offset);return this.offset+=t,e;}readUint16(){let t=w.Uint16;this.ensureLength(t);let e=this.view.getUint16(this.offset);return this.offset+=t,e;}readUint32(){let t=w.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=w.BigUint64;this.ensureLength(t);let e=this.view.getBigUint64(this.offset);return this.offset+=t,e;}readInt8(){let t=w.Int8;this.ensureLength(t);let e=this.view.getInt8(this.offset);return this.offset+=t,e;}readInt16(){let t=w.Int16;this.ensureLength(t);let e=this.view.getInt16(this.offset);return this.offset+=t,e;}readInt32(){let t=w.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=w.BigInt64;this.ensureLength(t);let e=this.view.getBigInt64(this.offset);return this.offset+=t,e;}readFloat32(){let t=w.Float32;this.ensureLength(t);let e=this.view.getFloat32(this.offset);return this.offset+=t,e;}readFloat64(){let t=w.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,this.offset=0,this.view=I(this.bytes),this.decoder=new TextDecoder;}};function I(t){return new DataView(t.buffer,t.byteOffset,t.byteLength);}// src/code-generation/components/cms/bundled/DatabaseDictionaryIndex.ts\nimport{ControlType as U}from\"framer\";// src/code-generation/components/cms/bundled/assert.ts\nfunction k(t,...e){if(!t)throw Error(\"Assertion Error\"+(e.length>0?\": \"+e.join(\" \"):\"\"));}function S(t){throw Error(`Unexpected value: ${t}`);}// ../../../node_modules/fflate/esm/browser.js\nvar E=Uint8Array,M=Uint16Array,T=Int32Array,L=new E([0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0,/* unused */0,0,/* impossible */0]),_=new E([0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13,/* unused */0,0]),B=new E([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]),x=function(t,e){for(var r=new M(31),n=0;n<31;++n)r[n]=e+=1<<t[n-1];for(var i=new T(r[30]),n=1;n<30;++n)for(var s=r[n];s<r[n+1];++s)i[s]=s-r[n]<<5|n;return{b:r,r:i};},C=x(L,2),A=C.b,F=C.r;A[28]=258,F[258]=28;var P=x(_,0),j=P.b,D=P.r,N=new M(32768);for(e=0;e<32768;++e)t=(61680&(t=(52428&(t=(43690&e)>>1|(21845&e)<<1))>>2|(13107&t)<<2))>>4|(3855&t)<<4,N[e]=((65280&t)>>8|(255&t)<<8)>>1;var $=function(t,e,r){for(var n,i=t.length,s=0,a=new M(e);s<i;++s)t[s]&&++a[t[s]-1];var o=new M(e);for(s=1;s<e;++s)o[s]=o[s-1]+a[s-1]<<1;if(r){n=new M(1<<e);var u=15-e;for(s=0;s<i;++s)if(t[s])for(var l=s<<4|t[s],h=e-t[s],f=o[t[s]-1]++<<h,c=f|(1<<h)-1;f<=c;++f)n[N[f]>>u]=l;}else for(s=0,n=new M(i);s<i;++s)t[s]&&(n[s]=N[o[t[s]-1]++]>>15-t[s]);return n;},R=new E(288);for(e=0;e<144;++e)R[e]=8;for(e=144;e<256;++e)R[e]=9;for(e=256;e<280;++e)R[e]=7;for(e=280;e<288;++e)R[e]=8;var O=new E(32);for(e=0;e<32;++e)O[e]=5;var q=/* @__PURE__ */$(R,9,0),z=/* @__PURE__ */$(R,9,1),H=/* @__PURE__ */$(O,5,0),J=/* @__PURE__ */$(O,5,1),W=function(t){for(var e=t[0],r=1;r<t.length;++r)t[r]>e&&(e=t[r]);return e;},G=function(t,e,r){var n=e/8|0;return(t[n]|t[n+1]<<8)>>(7&e)&r;},K=function(t,e){var r=e/8|0;return(t[r]|t[r+1]<<8|t[r+2]<<16)>>(7&e);},V=function(t){return(t+7)/8|0;},X=function(t,e,r){return(null==e||e<0)&&(e=0),(null==r||r>t.length)&&(r=t.length),new E(t.subarray(e,r));},Q=[\"unexpected EOF\",\"invalid block type\",\"invalid length/literal\",\"invalid distance\",\"stream finished\",\"no stream handler\",,\"no callback\",\"invalid UTF-8 data\",\"extra field too long\",\"date not in range 1980-2099\",\"filename too long\",\"stream finishing\",\"invalid zip data\"],Z=function(t,e,r){var n=Error(e||Q[t]);if(n.code=t,Error.captureStackTrace&&Error.captureStackTrace(n,Z),!r)throw n;return n;},Y=function(t,e,r,n){var i=t.length,s=n?n.length:0;if(!i||e.f&&!e.l)return r||new E(0);var a=!r,o=a||2!=e.i,u=e.i;a&&(r=new E(3*i));var l=function(t){var e=r.length;if(t>e){var n=new E(Math.max(2*e,t));n.set(r),r=n;}},h=e.f||0,f=e.p||0,c=e.b||0,g=e.l,d=e.d,p=e.m,y=e.n,v=8*i;do{if(!g){h=G(t,f,1);var m=G(t,f+1,3);if(f+=3,m){if(1==m)g=z,d=J,p=9,y=5;else if(2==m){var w=G(t,f,31)+257,b=G(t,f+10,15)+4,I=w+G(t,f+5,31)+1;f+=14;for(var U=new E(I),k=new E(19),S=0;S<b;++S)k[B[S]]=G(t,f+3*S,7);f+=3*b;for(var M=W(k),T=(1<<M)-1,x=$(k,M,1),S=0;S<I;){var C=x[G(t,f,T)];f+=15&C;var F=C>>4;if(F<16)U[S++]=F;else{var P=0,D=0;for(16==F?(D=3+G(t,f,3),f+=2,P=U[S-1]):17==F?(D=3+G(t,f,7),f+=3):18==F&&(D=11+G(t,f,127),f+=7);D--;)U[S++]=P;}}var N=U.subarray(0,w),R=U.subarray(w);p=W(N),y=W(R),g=$(N,p,1),d=$(R,y,1);}else Z(1);}else{var F=V(f)+4,O=t[F-4]|t[F-3]<<8,q=F+O;if(q>i){u&&Z(0);break;}o&&l(c+O),r.set(t.subarray(F,q),c),e.b=c+=O,e.p=f=8*q,e.f=h;continue;}if(f>v){u&&Z(0);break;}}o&&l(c+131072);for(var H=(1<<p)-1,Q=(1<<y)-1,Y=f;;Y=f){var P=g[K(t,f)&H],tt=P>>4;if((f+=15&P)>v){u&&Z(0);break;}if(P||Z(2),tt<256)r[c++]=tt;else if(256==tt){Y=f,g=null;break;}else{var te=tt-254;if(tt>264){var S=tt-257,tr=L[S];te=G(t,f,(1<<tr)-1)+A[S],f+=tr;}var tn=d[K(t,f)&Q],ti=tn>>4;tn||Z(3),f+=15&tn;var R=j[ti];if(ti>3){var tr=_[ti];R+=K(t,f)&(1<<tr)-1,f+=tr;}if(f>v){u&&Z(0);break;}o&&l(c+131072);var ts=c+te;if(c<R){var ta=s-R,to=Math.min(R,ts);for(ta+c<0&&Z(3);c<to;++c)r[c]=n[ta+c];}for(;c<ts;++c)r[c]=r[c-R];}}e.l=g,e.p=Y,e.b=c,e.f=h,g&&(h=1,e.m=p,e.d=d,e.n=y);}while(!h)return c!=r.length&&a?X(r,0,c):r.subarray(0,c);},tt=function(t,e,r){r<<=7&e;var n=e/8|0;t[n]|=r,t[n+1]|=r>>8;},te=function(t,e,r){r<<=7&e;var n=e/8|0;t[n]|=r,t[n+1]|=r>>8,t[n+2]|=r>>16;},tr=function(t,e){for(var r=[],n=0;n<t.length;++n)t[n]&&r.push({s:n,f:t[n]});var i=r.length,s=r.slice();if(!i)return{t:tl,l:0};if(1==i){var a=new E(r[0].s+1);return a[r[0].s]=1,{t:a,l:1};}r.sort(function(t,e){return t.f-e.f;}),r.push({s:-1,f:25001});var o=r[0],u=r[1],l=0,h=1,f=2;for(r[0]={s:-1,f:o.f+u.f,l:o,r:u};h!=i-1;)o=r[r[l].f<r[f].f?l++:f++],u=r[l!=h&&r[l].f<r[f].f?l++:f++],r[h++]={s:-1,f:o.f+u.f,l:o,r:u};for(var c=s[0].s,n=1;n<i;++n)s[n].s>c&&(c=s[n].s);var g=new M(c+1),d=tn(r[h-1],g,0);if(d>e){var n=0,p=0,y=d-e,v=1<<y;for(s.sort(function(t,e){return g[e.s]-g[t.s]||t.f-e.f;});n<i;++n){var m=s[n].s;if(g[m]>e)p+=v-(1<<d-g[m]),g[m]=e;else break;}for(p>>=y;p>0;){var w=s[n].s;g[w]<e?p-=1<<e-g[w]++-1:++n;}for(;n>=0&&p;--n){var b=s[n].s;g[b]==e&&(--g[b],++p);}d=e;}return{t:new E(g),l:d};},tn=function(t,e,r){return -1==t.s?Math.max(tn(t.l,e,r+1),tn(t.r,e,r+1)):e[t.s]=r;},ti=function(t){for(var e=t.length;e&&!t[--e];);for(var r=new M(++e),n=0,i=t[0],s=1,a=function(t){r[n++]=t;},o=1;o<=e;++o)if(t[o]==i&&o!=e)++s;else{if(!i&&s>2){for(;s>138;s-=138)a(32754);s>2&&(a(s>10?s-11<<5|28690:s-3<<5|12305),s=0);}else if(s>3){for(a(i),--s;s>6;s-=6)a(8304);s>2&&(a(s-3<<5|8208),s=0);}for(;s--;)a(i);s=1,i=t[o];}return{c:r.subarray(0,n),n:e};},ts=function(t,e){for(var r=0,n=0;n<e.length;++n)r+=t[n]*e[n];return r;},ta=function(t,e,r){var n=r.length,i=V(e+2);t[i]=255&n,t[i+1]=n>>8,t[i+2]=255^t[i],t[i+3]=255^t[i+1];for(var s=0;s<n;++s)t[i+s+4]=r[s];return(i+4+n)*8;},to=function(t,e,r,n,i,s,a,o,u,l,h){tt(e,h++,r),++i[256];for(var f,c,g,d,p=tr(i,15),y=p.t,v=p.l,m=tr(s,15),w=m.t,b=m.l,I=ti(y),U=I.c,k=I.n,S=ti(w),E=S.c,T=S.n,x=new M(19),C=0;C<U.length;++C)++x[31&U[C]];for(var C=0;C<E.length;++C)++x[31&E[C]];for(var A=tr(x,7),F=A.t,P=A.l,j=19;j>4&&!F[B[j-1]];--j);var D=l+5<<3,N=ts(i,R)+ts(s,O)+a,z=ts(i,y)+ts(s,w)+a+14+3*j+ts(x,F)+2*x[16]+3*x[17]+7*x[18];if(u>=0&&D<=N&&D<=z)return ta(e,h,t.subarray(u,u+l));if(tt(e,h,1+(z<N)),h+=2,z<N){f=$(y,v,0),c=y,g=$(w,b,0),d=w;var J=$(F,P,0);tt(e,h,k-257),tt(e,h+5,T-1),tt(e,h+10,j-4),h+=14;for(var C=0;C<j;++C)tt(e,h+3*C,F[B[C]]);h+=3*j;for(var W=[U,E],G=0;G<2;++G)for(var K=W[G],C=0;C<K.length;++C){var V=31&K[C];tt(e,h,J[V]),h+=F[V],V>15&&(tt(e,h,K[C]>>5&127),h+=K[C]>>12);}}else f=q,c=R,g=H,d=O;for(var C=0;C<o;++C){var X=n[C];if(X>255){var V=X>>18&31;te(e,h,f[V+257]),h+=c[V+257],V>7&&(tt(e,h,X>>23&31),h+=L[V]);var Q=31&X;te(e,h,g[Q]),h+=d[Q],Q>3&&(te(e,h,X>>5&8191),h+=_[Q]);}else te(e,h,f[X]),h+=c[X];}return te(e,h,f[256]),h+c[256];},tu=/* @__PURE__ */new T([65540,131080,131088,131104,262176,1048704,1048832,2114560,2117632]),tl=/* @__PURE__ */new E(0),th=function(t,e,r,n,i,s){var a=s.z||t.length,o=new E(n+a+5*(1+Math.ceil(a/7e3))+i),u=o.subarray(n,o.length-i),l=s.l,h=7&(s.r||0);if(e){h&&(u[0]=s.r>>3);for(var f=tu[e-1],c=f>>13,g=8191&f,d=(1<<r)-1,p=s.p||new M(32768),y=s.h||new M(d+1),v=Math.ceil(r/3),m=2*v,w=function(e){return(t[e]^t[e+1]<<v^t[e+2]<<m)&d;},b=new T(25e3),I=new M(288),U=new M(32),k=0,S=0,B=s.i||0,x=0,C=s.w||0,A=0;B+2<a;++B){var P=w(B),j=32767&B,N=y[P];if(p[j]=N,y[P]=j,C<=B){var $=a-B;if((k>7e3||x>24576)&&($>423||!l)){h=to(t,u,0,b,I,U,S,x,A,B-A,h),x=k=S=0,A=B;for(var R=0;R<286;++R)I[R]=0;for(var R=0;R<30;++R)U[R]=0;}var O=2,q=0,z=g,H=j-N&32767;if($>2&&P==w(B-H))for(var J=Math.min(c,$)-1,W=Math.min(32767,B),G=Math.min(258,$);H<=W&&--z&&j!=N;){if(t[B+O]==t[B+O-H]){for(var K=0;K<G&&t[B+K]==t[B+K-H];++K);if(K>O){if(O=K,q=H,K>J)break;for(var Q=Math.min(H,K-2),Z=0,R=0;R<Q;++R){var Y=B-H+R&32767,tt=p[Y],te=Y-tt&32767;te>Z&&(Z=te,N=Y);}}}N=p[j=N],H+=j-N&32767;}if(q){b[x++]=268435456|F[O]<<18|D[q];var tr=31&F[O],tn=31&D[q];S+=L[tr]+_[tn],++I[257+tr],++U[tn],C=B+O,++k;}else b[x++]=t[B],++I[t[B]];}}for(B=Math.max(B,C);B<a;++B)b[x++]=t[B],++I[t[B]];h=to(t,u,l,b,I,U,S,x,A,B-A,h),l||(s.r=7&h|u[h/8|0]<<3,h-=7,s.h=y,s.p=p,s.i=B,s.w=C);}else{for(var B=s.w||0;B<a+l;B+=65535){var ti=B+65535;ti>=a&&(u[h/8|0]=l,ti=a),h=ta(u,h+1,t.subarray(B,ti));}s.i=a;}return X(o,0,n+V(h)+i);},tf=function(t,e,r,n,i){if(!i&&(i={l:1},e.dictionary)){var s=e.dictionary.subarray(-32768),a=new E(s.length+t.length);a.set(s),a.set(t,s.length),t=a,i.w=s.length;}return th(t,null==e.level?6:e.level,null==e.mem?i.l?Math.ceil(1.5*Math.max(8,Math.min(13,Math.log(t.length)))):20:12+e.mem,r,n,i);};function tc(t,e){return tf(t,e||{},0,0);}function tg(t,e){return Y(t,{i:2},e&&e.out,e&&e.dictionary);}var td=\"undefined\"!=typeof TextDecoder&&/* @__PURE__ */new TextDecoder,tp=0;try{td.decode(tl,{stream:!0}),tp=1;}catch(t){}// src/code-generation/components/cms/bundled/BufferWriter.ts\nvar ty=1024,tv=1.5,tm=t=>2**t-1,tw=t=>-(2**(t-1)),tb=t=>2**(t-1)-1,tI={Uint8:0,Uint16:0,Uint32:0,Uint64:0,BigUint64:0,Int8:tw(8),Int16:tw(16),Int32:tw(32),Int64:Number.MIN_SAFE_INTEGER,BigInt64:-(BigInt(2)**BigInt(63))},tU={Uint8:tm(8),Uint16:tm(16),Uint32:tm(32),Uint64:Number.MAX_SAFE_INTEGER,BigUint64:BigInt(2)**BigInt(64)-BigInt(1),Int8:tb(8),Int16:tb(16),Int32:tb(32),Int64:Number.MAX_SAFE_INTEGER,BigInt64:BigInt(2)**BigInt(63)-BigInt(1)};function tk(t,e,r,n){k(t>=e,t,\"outside lower bound for\",n),k(t<=r,t,\"outside upper bound for\",n);}var tS=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*tv)+t);r.set(this.bytes),this.bytes=r,this.view=I(r);}writeUint8(t){tk(t,tI.Uint8,tU.Uint8,\"Uint8\");let e=w.Uint8;this.ensureLength(e),this.view.setUint8(this.offset,t),this.offset+=e;}writeUint16(t){tk(t,tI.Uint16,tU.Uint16,\"Uint16\");let e=w.Uint16;this.ensureLength(e),this.view.setUint16(this.offset,t),this.offset+=e;}writeUint32(t){tk(t,tI.Uint32,tU.Uint32,\"Uint32\");let e=w.Uint32;this.ensureLength(e),this.view.setUint32(this.offset,t),this.offset+=e;}writeUint64(t){tk(t,tI.Uint64,tU.Uint64,\"Uint64\");let e=BigInt(t);this.writeBigUint64(e);}writeBigUint64(t){tk(t,tI.BigUint64,tU.BigUint64,\"BigUint64\");let e=w.BigUint64;this.ensureLength(e),this.view.setBigUint64(this.offset,t),this.offset+=e;}writeInt8(t){tk(t,tI.Int8,tU.Int8,\"Int8\");let e=w.Int8;this.ensureLength(e),this.view.setInt8(this.offset,t),this.offset+=e;}writeInt16(t){tk(t,tI.Int16,tU.Int16,\"Int16\");let e=w.Int16;this.ensureLength(e),this.view.setInt16(this.offset,t),this.offset+=e;}writeInt32(t){tk(t,tI.Int32,tU.Int32,\"Int32\");let e=w.Int32;this.ensureLength(e),this.view.setInt32(this.offset,t),this.offset+=e;}writeInt64(t){tk(t,tI.Int64,tU.Int64,\"Int64\");let e=BigInt(t);this.writeBigInt64(e);}writeBigInt64(t){tk(t,tI.BigInt64,tU.BigInt64,\"BigInt64\");let e=w.BigInt64;this.ensureLength(e),this.view.setBigInt64(this.offset,t),this.offset+=e;}writeFloat32(t){let e=w.Float32;this.ensureLength(e),this.view.setFloat32(this.offset,t),this.offset+=e;}writeFloat64(t){let e=w.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(){this.offset=0,this.bytes=new Uint8Array(ty),this.view=I(this.bytes),this.encoder=new TextEncoder,this.encodedStrings=/* @__PURE__ */new Map;}};// src/utils/typeChecks.ts\nfunction tE(t){return Number.isFinite(t);}function tM(t){return void 0===t;}function tT(t){return null===t;}// src/code-generation/components/cms/bundled/models/DatabaseItemPointerModel.ts\nvar tL=class{static fromString(t){let[e,r,n]=t.split(\"/\").map(Number);return k(tE(e),\"Invalid chunkId\"),k(tE(r),\"Invalid offset\"),k(tE(n),\"Invalid length\"),new tL(e,r,n);}toString(){return`${this.chunkId}/${this.offset}/${this.length}`;}static read(t){let e=t.readUint16(),r=t.readUint32(),n=t.readUint32();return new tL(e,r,n);}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:(k(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 t_}from\"framer\";function tB(t){if(tT(t))return 0/* Null */;switch(t.type){case t_.Array:return 1/* Array */;case t_.Boolean:return 2/* Boolean */;case t_.Color:return 3/* Color */;case t_.Date:return 4/* Date */;case t_.Enum:return 5/* Enum */;case t_.File:return 6/* File */;case t_.ResponsiveImage:return 10/* ResponsiveImage */;case t_.Link:return 7/* Link */;case t_.Number:return 8/* Number */;case t_.Object:return 9/* Object */;case t_.RichText:return 11/* RichText */;case t_.String:return 12/* String */;default:S(t);}}function tx(t){let e=t.readUint16(),n=[];for(let i=0;i<e;i++){let e=r.read(t);n.push(e);}return{type:t_.Array,value:n};}function tC(t,e){for(let n of(t.writeUint16(e.value.length),e.value))r.write(t,n);}function tA(t,e,n){let i=t.value.length,s=e.value.length;if(i<s)return -1;if(i>s)return 1;for(let s=0;s<i;s++){let i=t.value[s],a=e.value[s],o=r.compare(i,a,n);if(0!==o)return o;}return 0;}function tF(t){return{type:t_.Boolean,value:0!==t.readUint8()};}function tP(t,e){t.writeUint8(e.value?1:0);}function tj(t,e){return t.value<e.value?-1:t.value>e.value?1:0;}function tD(t){return{type:t_.Color,value:t.readString()};}function tN(t,e){t.writeString(e.value);}function t$(t,e){return t.value<e.value?-1:t.value>e.value?1:0;}function tR(t){let e=t.readInt64(),r=new Date(e);return{type:t_.Date,value:r.toISOString()};}function tO(t,e){let r=new Date(e.value),n=r.getTime();t.writeInt64(n);}function tq(t,e){let r=new Date(t.value),n=new Date(e.value);return r<n?-1:r>n?1:0;}function tz(t){return{type:t_.Enum,value:t.readString()};}function tH(t,e){t.writeString(e.value);}function tJ(t,e){return t.value<e.value?-1:t.value>e.value?1:0;}function tW(t){return{type:t_.File,value:t.readString()};}function tG(t,e){t.writeString(e.value);}function tK(t,e){return t.value<e.value?-1:t.value>e.value?1:0;}function tV(t){return{type:t_.Link,value:t.readJson()};}function tX(t,e){t.writeJson(e.value);}function tQ(t,e){let r=JSON.stringify(t.value),n=JSON.stringify(e.value);return r<n?-1:r>n?1:0;}function tZ(t){return{type:t_.Number,value:t.readFloat64()};}function tY(t,e){t.writeFloat64(e.value);}function t1(t,e){return t.value<e.value?-1:t.value>e.value?1:0;}function t0(t){let e=t.readUint16(),n={};for(let i=0;i<e;i++){let e=t.readString();n[e]=r.read(t);}return{type:t_.Object,value:n};}function t2(t,e){let n=Object.entries(e.value);for(let[e,i]of(t.writeUint16(n.length),n))t.writeString(e),r.write(t,i);}function t6(t,e,n){let i=Object.keys(t.value).sort(),s=Object.keys(e.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=t.value[o]??null,h=e.value[u]??null,f=r.compare(l,h,n);if(0!==f)return f;}return 0;}function t3(t){return{type:t_.ResponsiveImage,value:t.readJson()};}function t5(t,e){t.writeJson(e.value);}function t4(t,e){let r=JSON.stringify(t.value),n=JSON.stringify(e.value);return r<n?-1:r>n?1:0;}function t8(t){return{type:t_.RichText,value:t.readUint32()};}function t7(t,e){t.writeUint32(e.value);}function t9(t,e){let r=t.value,n=e.value;return r<n?-1:r>n?1:0;}function et(t){return{type:t_.String,value:t.readString()};}function ee(t,e){t.writeString(e.value);}function er(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;}(t=>{t.read=function(t){let e=t.readUint8();switch(e){case 0/* Null */:return null;case 1/* Array */:return tx(t);case 2/* Boolean */:return tF(t);case 3/* Color */:return tD(t);case 4/* Date */:return tR(t);case 5/* Enum */:return tz(t);case 6/* File */:return tW(t);case 7/* Link */:return tV(t);case 8/* Number */:return tZ(t);case 9/* Object */:return t0(t);case 10/* ResponsiveImage */:return t3(t);case 11/* RichText */:return t8(t);case 12/* String */:return et(t);default:S(e);}},t.write=function(t,e){let r=tB(e);if(t.writeUint8(r),!tT(e))switch(e.type){case t_.Array:return tC(t,e);case t_.Boolean:return tP(t,e);case t_.Color:return tN(t,e);case t_.Date:return tO(t,e);case t_.Enum:return tH(t,e);case t_.File:return tG(t,e);case t_.Link:return tX(t,e);case t_.Number:return tY(t,e);case t_.Object:return t2(t,e);case t_.ResponsiveImage:return t5(t,e);case t_.RichText:return t7(t,e);case t_.String:return ee(t,e);default:S(e);}},t.compare=function(t,e,r){let n=tB(t),i=tB(e);if(n<i)return -1;if(n>i)return 1;if(tT(t)||tT(e))return 0;switch(t.type){case t_.Array:return k(e.type===t_.Array),tA(t,e,r);case t_.Boolean:return k(e.type===t_.Boolean),tj(t,e);case t_.Color:return k(e.type===t_.Color),t$(t,e);case t_.Date:return k(e.type===t_.Date),tq(t,e);case t_.Enum:return k(e.type===t_.Enum),tJ(t,e);case t_.File:return k(e.type===t_.File),tK(t,e);case t_.Link:return k(e.type===t_.Link),tQ(t,e);case t_.Number:return k(e.type===t_.Number),t1(t,e);case t_.Object:return k(e.type===t_.Object),t6(t,e,r);case t_.ResponsiveImage:return k(e.type===t_.ResponsiveImage),t4(t,e);case t_.RichText:return k(e.type===t_.RichText),t9(t,e);case t_.String:return k(e.type===t_.String),er(t,e,r);default:S(t);}};})(r||(r={}));// src/code-generation/components/cms/bundled/models/DatabaseDictionaryIndexModel.ts\nvar en=class{sortEntries(){this.entries.sort((t,e)=>{for(let n=0;n<this.fieldNames.length;n++){let i=t.values[n],s=e.values[n],a=r.compare(i,s,this.options.collation);if(0!==a)return a;}return t.pointer.compare(e.pointer);});}static deserialize(t,e){e||(t=tg(t));let n=new b(t),i=n.readJson(),s=n.readUint8(),a=[];for(let t=0;t<s;t++){let t=n.readString();a.push(t);}let o=new en(a,{collation:i,cmsBackendCompression:e}),u=n.readUint32();for(let t=0;t<u;t++){let t=[];for(let e=0;e<s;e++){let e=r.read(n);t.push(e);}let e=tL.read(n);o.entries.push({values:t,pointer:e});}return o;}serialize(){let t=new tS;for(let e of(t.writeJson(this.options.collation),t.writeUint8(this.fieldNames.length),this.fieldNames))t.writeString(e);for(let e of(this.sortEntries(),t.writeUint32(this.entries.length),this.entries)){let{values:n,pointer:i}=e;for(let e of n)r.write(t,e);i.write(t);}let e=t.subarray();return this.options.cmsBackendCompression?e:tc(e);}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,this.entries=[];}},ei=3,es=250,ea=[408,// Request Timeout\n429,// Too Many Requests\n500,// Internal Server Error\n502,// Bad Gateway\n503,// Service Unavailable\n504],eo=async(t,e)=>{let r=0;for(;;){try{let n=await fetch(t,e);if(!ea.includes(n.status)||++r>ei)return n;}catch(t){if(e?.signal?.aborted||++r>ei)throw t;}await eu(r);}};async function eu(t){let e=Math.floor(es*(Math.random()+1)*2**(t-1));await new Promise(t=>{setTimeout(t,e);});}// ../../shared/src/murmurHash.ts\nfunction el(t){let e=3&t.length,r=t.length-e,n=0,i=0;for(;i<r;){let e=255&t.charCodeAt(i)|(255&t.charCodeAt(++i))<<8|(255&t.charCodeAt(++i))<<16|(255&t.charCodeAt(++i))<<24;++i,n^=e=(65535&(e=(e=(65535&e)*3432918353+(((e>>>16)*3432918353&65535)<<16)&4294967295)<<15|e>>>17))*461845907+(((e>>>16)*461845907&65535)<<16)&4294967295,n=n<<13|n>>>19;let r=(65535&n)*5+(((n>>>16)*5&65535)<<16)&4294967295;n=(65535&r)+27492+(((r>>>16)+58964&65535)<<16);}let s=0;return e>=3&&(s^=(255&t.charCodeAt(i+2))<<16),e>=2&&(s^=(255&t.charCodeAt(i+1))<<8),e>=1&&(s^=255&t.charCodeAt(i),n^=s=(65535&(s=(s=(65535&s)*3432918353+(((s>>>16)*3432918353&65535)<<16)&4294967295)<<15|s>>>17))*461845907+(((s>>>16)*461845907&65535)<<16)&4294967295),n^=t.length,n^=n>>>16,n=(65535&n)*2246822507+(((n>>>16)*2246822507&65535)<<16)&4294967295,n^=n>>>13,n=(65535&n)*3266489909+(((n>>>16)*3266489909&65535)<<16)&4294967295,(n^=n>>>16)>>>0;}// src/code-generation/components/cms/bundled/rangeRequest.old.ts\nvar eh=f(v()),ef=\"\\r\\n\",ec=\"--\";async function eg(t,e){let r=new URL(t),n=eS(e);r.searchParams.set(\"rangeHash\",el(n).toString(16));let i=await eo(r,{headers:{Range:n}});if(!i.ok)throw Error(`Request failed: ${i.status} ${i.statusText}`);let s=await i.arrayBuffer(),a=new Uint8Array(s);if(200===i.status)return e.map(t=>{if(t.to>a.length)throw Error(\"Missing data\");return a.slice(t.from,t.to);});if(206===i.status){let t=i.headers.get(\"Content-Type\");if(!t)throw Error(\"Missing Content-Type header\");let r=new em,n=new eh.default(t);if(\"multipart\"===n.type&&\"byteranges\"===n.subtype){let t=n.parameters.get(\"boundary\");if(!t)throw Error(\"Missing boundary parameter\");let e=ey(a,t);for(let{headers:t,body:n}of e){let e=t.get(\"Content-Range\");if(!e)throw Error(\"Missing Content-Range header\");let i=ev(e);if(\"bytes\"!==i.unit)throw Error(\"Unsupported unit\");r.write(i.start,n);}}else{let t=i.headers.get(\"Content-Range\");if(!t)throw Error(\"Missing Content-Range header\");let e=ev(t);if(\"bytes\"!==e.unit)throw Error(\"Unsupported unit\");r.write(e.start,a);}return e.map(t=>r.read(t.from,t.to-t.from));}throw Error(`Unsupported response: ${i.status} ${i.statusText}`);}var ed=new TextEncoder,ep=new TextDecoder;function ey(t,e){let r=ed.encode(ec+e),n=eb(t,r);if(tM(n))throw Error(\"Missing parts start\");let i=n+r.length,s=ed.encode(ef+ec+e+ec),a=eI(t,s);if(tM(a))throw Error(\"Missing parts end\");let o=ed.encode(ef+ec+e),u=t.subarray(i,a),l=ew(u,o);return l.map(t=>{let e=ed.encode(ef+ef),r=eb(t,e);if(tM(r))throw Error(\"Missing headers end\");let n=ed.encode(ef),i=t.subarray(0,r),s=ew(i,n),a=new Headers;for(let t of s){let e=ep.decode(t),[r,n]=e.split(\": \",2);r&&n&&a.append(r,n);}let o=r+e.length,u=t.slice(o);return{headers:a,body:u};});}function ev(t){let e=RegExp(\"^(?<unit>\\\\w+) (?<start>\\\\d+)-(?<end>\\\\d+)\\\\/(?<size>\\\\d+|\\\\*)$\",\"u\").exec(t);if(!e||!e.groups)throw Error(\"Invalid Content-Range header\");let{unit:r,start:n,end:i,size:s}=e.groups;return{unit:r,start:Number(n),end:Number(i),size:\"*\"!==s?Number(s):null};}var em=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(k(t,\"Missing chunk\"),!(r>t.end)){if(r>t.start){let n=r-t.start,i=t.data.subarray(0,n);e=ek(i,e),r=t.start;}break;}}for(;s>i;s--){let t=this.chunks[s-1];if(k(t,\"Missing chunk\"),!(n<t.start)){if(n<t.end){let r=n-t.start,i=t.data.subarray(r);e=ek(e,i),n=t.end;}break;}}let a={start:r,end:n,data:e},o=s-i;this.chunks.splice(i,o,a);}constructor(){this.chunks=[];}};function ew(t,e){let r=[];for(;t.length>0;){let n=eb(t,e)??t.length,i=t.subarray(0,n);r.push(i),t=t.subarray(n+e.length);}return r;}function eb(t,e){for(let r=0;r<t.length-e.length;r++){let n=t.subarray(r);if(eU(n,e))return r;}}function eI(t,e){for(let r=t.length-e.length;r>=0;r--){let n=t.subarray(r);if(eU(n,e))return r;}}function eU(t,e){for(let r=0;r<e.length;r++)if(t[r]!==e[r])return!1;return!0;}function ek(t,e){let r=t.length+e.length,n=new Uint8Array(r);return n.set(t,0),n.set(e,t.length),n;}function eS(t){k(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);}let n=r.map(t=>`${t.from}-${t.to-1}`);return`bytes=${n.join(\",\")}`;}// src/code-generation/components/cms/bundled/rangeRequest.ts\nasync function eE(t,e,r){if(!r)return eg(t,e);let n=eL(e),i=[],s=0;for(let t of n)i.push(`${t.from}-${t.to-1}`),s+=t.to-t.from;let a=new URL(t),o=i.join(\",\");a.searchParams.set(\"range\",o);let u=await eo(a);if(200!==u.status)throw Error(`Request failed: ${u.status} ${u.statusText}`);let l=await u.arrayBuffer(),h=new Uint8Array(l);if(h.length!==s)throw Error(\"Request failed: Unexpected response length\");let f=new eM,c=0;for(let t of n){let e=t.to-t.from,r=c+e,n=h.subarray(c,r);f.write(t.from,n),c=r;}return e.map(t=>f.read(t.from,t.to-t.from));}var eM=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(k(t,\"Missing chunk\"),!(r>t.end)){if(r>t.start){let n=r-t.start,i=t.data.subarray(0,n);e=eT(i,e),r=t.start;}break;}}for(;s>i;s--){let t=this.chunks[s-1];if(k(t,\"Missing chunk\"),!(n<t.start)){if(n<t.end){let r=n-t.start,i=t.data.subarray(r);e=eT(e,i),n=t.end;}break;}}let a={start:r,end:n,data:e},o=s-i;this.chunks.splice(i,o,a);}constructor(){this.chunks=[];}};function eT(t,e){let r=t.length+e.length,n=new Uint8Array(r);return n.set(t,0),n.set(e,t.length),n;}function eL(t){k(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 e_=class{async loadModel(){let[t]=await eE(this.options.url,[this.options.range],this.options.cmsBackendCompression);return k(t,\"Failed to load model\"),en.deserialize(t,this.options.cmsBackendCompression);}async getModel(){return this.modelPromise??=this.loadModel(),this.model??=await this.modelPromise,this.model;}async lookupItems(t){k(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:S(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!==U.String||e.value?.type!==U.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!==U.String||e.value?.type!==U.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!==U.String||e.value?.type!==U.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   *       \u2193\n   * \u250C\u2500\u2500\u2500\u252C\u2500\u2500\u2500\u252C\u2500\u2500\u2500\u252C\u2500\u2500\u2500\u252C\u2500\u2500\u2500\u252C\u2500\u2500\u2500\u2510\n   * \u2502 1 \u2502 2 \u2502 2 \u2502 2 \u2502 2 \u2502 3 \u2502\n   * \u2514\u2500\u2500\u2500\u2534\u2500\u2500\u2500\u2534\u2500\u2500\u2500\u2534\u2500\u2500\u2500\u2534\u2500\u2500\u2500\u2534\u2500\u2500\u2500\u2518\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(t,e,n){let i=0,s=t.length;for(;i<s;){let a=i+s>>1,o=t[a],u=o.values[e];0>r.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   *                   \u2193\n   * \u250C\u2500\u2500\u2500\u252C\u2500\u2500\u2500\u252C\u2500\u2500\u2500\u252C\u2500\u2500\u2500\u252C\u2500\u2500\u2500\u252C\u2500\u2500\u2500\u2510\n   * \u2502 1 \u2502 2 \u2502 2 \u2502 2 \u2502 2 \u2502 3 \u2502\n   * \u2514\u2500\u2500\u2500\u2534\u2500\u2500\u2500\u2534\u2500\u2500\u2500\u2534\u2500\u2500\u2500\u2534\u2500\u2500\u2500\u2534\u2500\u2500\u2500\u2518\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(t,e,n){let i=0,s=t.length;for(;i<s;){let a=i+s>>1,o=t[a],u=o.values[e];r.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,this.supportedLookupTypes=[\"All\"/* All */,\"Equals\"/* Equals */,\"NotEquals\"/* NotEquals */,\"LessThan\"/* LessThan */,\"GreaterThan\"/* GreaterThan */,\"Contains\"/* Contains */,\"StartsWith\"/* StartsWith */,\"EndsWith\"/* EndsWith */],this.collation=this.options.collation;let e={},r=[];for(let t of this.options.fieldNames){let n=this.options.collectionSchema[t];k(n,\"Missing definition for field\",t),e[t]=n,r.push({type:\"Identifier\",name:t});}this.schema=e,this.fields=r;}},eB=class{static read(t,e){let n=new eB;if(e){let r=t.readUint32(),n=t.readBytes(r),i=tg(n,{dictionary:e});t=new b(i);}let i=t.readUint16();for(let e=0;e<i;e++){let e=t.readString(),i=r.read(t);n.setField(e,i);}return n;}writeUncompressed(t){for(let[e,n]of(t.writeUint16(this.fields.size),this.fields))t.writeString(e),r.write(t,n);}write(t,e){if(e){let r=new tS;this.writeUncompressed(r);let n=tc(r.subarray(),{dictionary:e});t.writeUint32(n.length),t.writeBytes(n);}else this.writeUncompressed(t);}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(){this.fields=/* @__PURE__ */new Map;}},ex=class{scanItems(){return this.itemsPromise??=Promise.all([eo(this.url),this.getCompressionDictionary()]).then(async([t,e])=>{if(!t.ok)throw Error(`Request failed: ${t.status} ${t.statusText}`);let r=await t.arrayBuffer(),n=new Uint8Array(r),i=new b(n),s=[],a=i.readUint32();for(let t=0;t<a;t++){let t=i.getOffset(),r=eB.read(i,e),n=i.getOffset()-t,a=new tL(this.id,t,n),o=a.toString(),u={pointer:o,data:r.getData()};this.itemLoader.prime(o,u),s.push(u);}return s;}),this.itemsPromise;}resolveItem(t){return this.itemLoader.load(t);}getCompressionDictionary(){if(!this.compressionDictionaryUrl)return null;let t=this.compressionDictionaryCache.get(this.compressionDictionaryUrl);if(t)return t;let e=eo(this.compressionDictionaryUrl).then(async t=>{if(!t.ok)throw Error(`Compression dictionary request failed: ${t.status} ${t.statusText}`);let e=await t.arrayBuffer();return new Uint8Array(e);});return this.compressionDictionaryCache.set(this.compressionDictionaryUrl,e),e;}constructor(t,e,r,n){this.id=t,this.url=e,this.compressionDictionaryUrl=r,this.compressionDictionaryCache=n,this.itemLoader=new m.default(async t=>{let e=t.map(t=>{let e=tL.fromString(t);return{from:e.offset,to:e.offset+e.length};}),[r,n]=await Promise.all([eE(this.url,e,!this.compressionDictionaryUrl),this.getCompressionDictionary()]);return r.map((e,r)=>{let i=new b(e),s=eB.read(i,n),a=t[r];return k(a,\"Missing pointer\"),{pointer:a,data:s.getData()};});});}},eC=class{async scanItems(){let t=await Promise.all(this.chunks.map(async t=>t.scanItems()));return t.flat();}async resolveItems(t){return Promise.all(t.map(t=>{let e=tL.fromString(t),r=this.chunks[e.chunkId];return k(r,\"Missing chunk\"),r.resolveItem(t);}));}compareItems(t,e){let r=tL.fromString(t.pointer),n=tL.fromString(e.pointer);return r.compare(n);}compareValues(t,e,n){return r.compare(t,e,n);}constructor(t){this.options=t,this.schema=this.options.schema,this.indexes=this.options.indexes,this.resolveRichText=this.options.resolveRichText;let e=/* @__PURE__ */new Map;this.chunks=this.options.chunks.map((t,r)=>new ex(r,t,this.options.compressionDictionary,e));}};export{eC as DatabaseCollection,e_ as DatabaseDictionaryIndex};\nexport const __FramerMetadata__ = {\"exports\":{\"DatabaseCollection\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"DatabaseDictionaryIndex\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}", "let t=(t,e)=>async()=>{let r=await t();return r[e];},e=()=>import(\"./JJB7u8Dfa-2.js\"),r=[t(e,\"richText\"),t(e,\"richText1\"),t(e,\"richText2\"),t(e,\"richText3\")];export async function resolveRichText(t){let e=r[t];if(e)return await e();}\nexport const __FramerMetadata__ = {\"exports\":{\"resolveRichText\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}", "// Generated by Framer (f030ee3)\nimport{addPropertyControls as e,ControlType as t,QueryCache as l,QueryEngine as i}from\"framer\";import{DatabaseCollection as a}from\"./JJB7u8Dfa-0.js\";import{resolveRichText as r}from\"./JJB7u8Dfa-1.js\";let n={cSUQHOsZ8:{isNullable:!0,type:t.RichText},id:{isNullable:!1,type:t.String},k4UM0Ca6f:{isNullable:!0,type:t.String},NDD3uA1qE:{isNullable:!0,type:t.ResponsiveImage},nextItemId:{isNullable:!0,type:t.String},previousItemId:{isNullable:!0,type:t.String},vanAYq_of:{isNullable:!0,type:t.String},XvBkjwmJo:{isNullable:!0,type:t.String}},o=new i,u=new l(o),p={collectionByLocaleId:{default:new a({chunks:[new URL(\"./JJB7u8Dfa-chunk-default-0.framercms\",\"https://framerusercontent.com/modules/vznjdcpMeNUZ284WbUVu/SEI4tfiXYLxRvKhrnVDP/JJB7u8Dfa.js\").href.replace(\"/modules/\",\"/cms/\")],compressionDictionary:null,indexes:[],resolveRichText:r,schema:n})},displayName:\"Projects\"};export default p;e(p,{vanAYq_of:{defaultValue:\"\",title:\"Project title\",type:t.String},k4UM0Ca6f:{defaultValue:\"\",title:\"Industry\",type:t.String},XvBkjwmJo:{title:\"Slug\",type:t.String},NDD3uA1qE:{title:\"Image\",type:t.ResponsiveImage},cSUQHOsZ8:{defaultValue:\"\",title:\"Content\",type:t.RichText},previousItemId:{dataIdentifier:\"local-module:collection/JJB7u8Dfa:default\",title:\"Previous\",type:t.CollectionReference},nextItemId:{dataIdentifier:\"local-module:collection/JJB7u8Dfa:default\",title:\"Next\",type:t.CollectionReference}});export const enumToDisplayNameFunctions={};export const utils={async getSlugByRecordId(e,t){let[l]=await u.get({from:{data:p,type:\"Collection\"},limit:{type:\"LiteralValue\",value:1},select:[{name:\"XvBkjwmJo\",type:\"Identifier\"}],where:{left:{name:\"id\",type:\"Identifier\"},operator:\"==\",right:{type:\"LiteralValue\",value:e},type:\"BinaryOperation\"}},t).readAsync();return l?.XvBkjwmJo;},async getRecordIdBySlug(e,t){let[l]=await u.get({from:{data:p,type:\"Collection\"},limit:{type:\"LiteralValue\",value:1},select:[{name:\"id\",type:\"Identifier\"}],where:{left:{name:\"XvBkjwmJo\",type:\"Identifier\"},operator:\"==\",right:{type:\"LiteralValue\",value:e},type:\"BinaryOperation\"}},t).readAsync();return l?.id;}};\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"data\",\"name\":\"data\",\"annotations\":{\"framerEnumToDisplayNameUtils\":\"2\",\"framerCollectionUtils\":\"1\",\"framerSlug\":\"XvBkjwmJo\",\"framerContractVersion\":\"1\",\"framerData\":\"\",\"framerRecordIdKey\":\"id\",\"framerCollectionId\":\"JJB7u8Dfa\"}},\"enumToDisplayNameFunctions\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"utils\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}", "// Generated by Framer (e22b717)\nimport{jsx as _jsx,jsxs as _jsxs,Fragment as _Fragment}from\"react/jsx-runtime\";import{addFonts,ChildrenCanSuspend,ComponentViewportProvider,Container,cx,FormContainer,FormPlainTextInput,GeneratedComponentContext,getFonts,getFontsFromSharedStyle,Image,Link,PathVariablesContext,PropertyOverrides,ResolveLinks,RichText,useActiveVariantCallback,useComponentViewport,useCustomCursors,useHydratedBreakpointVariants,useIsOnFramerCanvas,useLoadMorePaginatedQuery,useLocaleCode,useLocaleInfo,useQueryData,useRouteElementId,useRouter,withCSS,withFX}from\"framer\";import{LayoutGroup,motion}from\"framer-motion\";import*as React from\"react\";import{useRef}from\"react\";import{Video}from\"https://framerusercontent.com/modules/lRDHiNWNVWmE0lqtoVHP/7qT0r3So12155VV5Jq5x/Video.js\";import CardsProjects from\"#framer/local/canvasComponent/AJk7X8LQA/AJk7X8LQA.js\";import ButtonsSecondary from\"#framer/local/canvasComponent/BlpxRgQl6/BlpxRgQl6.js\";import Tag from\"#framer/local/canvasComponent/cgnRul16Q/cgnRul16Q.js\";import ServiceCardsAutomation from\"#framer/local/canvasComponent/cj3FVOB4Y/cj3FVOB4Y.js\";import NewsleterCTA from\"#framer/local/canvasComponent/DOn8Na42T/DOn8Na42T.js\";import CardsPricing from\"#framer/local/canvasComponent/eafUe285s/eafUe285s.js\";import FAQsSection from\"#framer/local/canvasComponent/gPZgk2LeF/gPZgk2LeF.js\";import ServiceCardsAnalysis from\"#framer/local/canvasComponent/HfXvyjRaq/HfXvyjRaq.js\";import ButtonsPrimary from\"#framer/local/canvasComponent/ht0qGf7EI/ht0qGf7EI.js\";import Navigation from\"#framer/local/canvasComponent/KCr_QRiN_/KCr_QRiN_.js\";import CardsArticles from\"#framer/local/canvasComponent/nqTjKFDfM/nqTjKFDfM.js\";import HeroVideo from\"#framer/local/canvasComponent/OwraS6EHV/OwraS6EHV.js\";import CardsProcess from\"#framer/local/canvasComponent/Pbf2GHKDL/Pbf2GHKDL.js\";import Footer from\"#framer/local/canvasComponent/Qt65ANnPu/Qt65ANnPu.js\";import ServiceCardsChart from\"#framer/local/canvasComponent/t8Oa9Zgb5/t8Oa9Zgb5.js\";import CardsBenefits from\"#framer/local/canvasComponent/uUCvdlGwy/uUCvdlGwy.js\";import ServiceCardsChatbot from\"#framer/local/canvasComponent/wWjfgdtli/wWjfgdtli.js\";import TickerTestimonials from\"#framer/local/canvasComponent/Xa9II8U1H/Xa9II8U1H.js\";import ButtonsLoadMore from\"#framer/local/canvasComponent/Z2795Ycsf/Z2795Ycsf.js\";import ButtonsForms from\"#framer/local/canvasComponent/ZNb2B61HM/ZNb2B61HM.js\";import Projects from\"#framer/local/collection/JJB7u8Dfa/JJB7u8Dfa.js\";import Blog from\"#framer/local/collection/lDSAEoVb7/lDSAEoVb7.js\";import*as sharedStyle from\"#framer/local/css/InAbEgGo5/InAbEgGo5.js\";import*as sharedStyle1 from\"#framer/local/css/IZpeieEjn/IZpeieEjn.js\";import*as sharedStyle2 from\"#framer/local/css/kxN7gAslB/kxN7gAslB.js\";import*as sharedStyle4 from\"#framer/local/css/pcoDLsO59/pcoDLsO59.js\";import*as sharedStyle3 from\"#framer/local/css/vKGxKv6WT/vKGxKv6WT.js\";import metadataProvider from\"#framer/local/webPageMetadata/augiA20Il/augiA20Il.js\";const NavigationFonts=getFonts(Navigation);const VideoFonts=getFonts(Video);const TagFonts=getFonts(Tag);const ContainerWithFX=withFX(Container);const ButtonsPrimaryFonts=getFonts(ButtonsPrimary);const ButtonsSecondaryFonts=getFonts(ButtonsSecondary);const MotionDivWithFX=withFX(motion.div);const HeroVideoFonts=getFonts(HeroVideo);const CardsProcessFonts=getFonts(CardsProcess);const ServiceCardsChatbotFonts=getFonts(ServiceCardsChatbot);const ServiceCardsAnalysisFonts=getFonts(ServiceCardsAnalysis);const ServiceCardsAutomationFonts=getFonts(ServiceCardsAutomation);const ServiceCardsChartFonts=getFonts(ServiceCardsChart);const CardsBenefitsFonts=getFonts(CardsBenefits);const CardsProjectsFonts=getFonts(CardsProjects);const ButtonsLoadMoreFonts=getFonts(ButtonsLoadMore);const CardsPricingFonts=getFonts(CardsPricing);const TickerTestimonialsFonts=getFonts(TickerTestimonials);const FAQsSectionFonts=getFonts(FAQsSection);const ButtonsFormsFonts=getFonts(ButtonsForms);const CardsArticlesFonts=getFonts(CardsArticles);const NewsleterCTAFonts=getFonts(NewsleterCTA);const FooterFonts=getFonts(Footer);const breakpoints={cGbgDtuOd:\"(max-width: 809px)\",VAQyyE6Cz:\"(min-width: 810px) and (max-width: 1199px)\",WQLkyLRf1:\"(min-width: 1200px)\"};const isBrowser=()=>typeof document!==\"undefined\";const serializationHash=\"framer-PPSqF\";const variantClassNames={cGbgDtuOd:\"framer-v-5zbgu1\",VAQyyE6Cz:\"framer-v-1rda0m2\",WQLkyLRf1:\"framer-v-72rtr7\"};const animation={opacity:0,rotate:0,rotateX:0,rotateY:0,scale:1,skewX:0,skewY:0,x:0,y:0};const transition1={bounce:0,delay:.1,duration:1.5,type:\"spring\"};const animation1={opacity:0,rotate:0,rotateX:0,rotateY:0,scale:1,skewX:0,skewY:0,transition:transition1,x:0,y:0};const animation2={filter:\"blur(15px)\",opacity:.001,rotate:0,scale:1,skewX:0,skewY:0,x:0,y:10};const transition2={bounce:0,delay:.05,duration:.7,type:\"spring\"};const textEffect={effect:animation2,repeat:false,startDelay:0,threshold:0,tokenization:\"word\",transition:transition2,trigger:\"onInView\",type:\"appear\"};const transition3={bounce:0,delay:.2,duration:1.5,type:\"spring\"};const animation3={opacity:0,rotate:0,rotateX:0,rotateY:0,scale:1,skewX:0,skewY:0,transition:transition3,x:0,y:0};const transition4={bounce:0,delay:.3,duration:1.5,type:\"spring\"};const animation4={opacity:0,rotate:0,rotateX:0,rotateY:0,scale:1,skewX:0,skewY:0,transition:transition4,x:0,y:0};const toResponsiveImage=value=>{if(typeof value===\"object\"&&value!==null&&typeof value.src===\"string\"){return value;}return typeof value===\"string\"?{src:value}:undefined;};const loaderVariants=(repeaterState,variants,currentVariant)=>{if(repeaterState.currentPage>=repeaterState.totalPages)return variants.disabled??currentVariant;if(repeaterState.isLoading)return variants.loading??currentVariant;return currentVariant;};const QueryData=({query,pageSize,children})=>{const{paginatedQuery,paginationInfo,loadMore}=useLoadMorePaginatedQuery(query,pageSize,\"b74Dgi6Cp\");const data=useQueryData(paginatedQuery);return children(data,paginationInfo,loadMore);};const formVariants=(form,variants,currentVariant)=>{switch(form.state){case\"success\":return variants.success??currentVariant;case\"pending\":return variants.pending??currentVariant;case\"error\":return variants.error??currentVariant;case\"incomplete\":return variants.incomplete??currentVariant;}};const toDateString=(value,options={},activeLocale)=>{if(typeof value!==\"string\")return\"\";const date=new Date(value);if(isNaN(date.getTime()))return\"\";const display=options.display?options.display:\"date\";const dateOptions={dateStyle:display!==\"time\"?options.dateStyle:undefined,timeStyle:display===\"date\"?undefined:\"short\",timeZone:\"UTC\"};const fallbackLocale=\"en-US\";const locale=options.locale||activeLocale||fallbackLocale;// We add a try block because an invalid language code results in a crash\ntry{return date.toLocaleString(locale,dateOptions);}catch{return date.toLocaleString(fallbackLocale,dateOptions);}};const QueryData1=({query,pageSize,children})=>{const data=useQueryData(query);return children(data);};const HTMLStyle=({value})=>{const onCanvas=useIsOnFramerCanvas();if(onCanvas)return null;return /*#__PURE__*/_jsx(\"style\",{dangerouslySetInnerHTML:{__html:value},\"data-framer-html-style\":\"\"});};const humanReadableVariantMap={Desktop:\"WQLkyLRf1\",Phone:\"cGbgDtuOd\",Tablet:\"VAQyyE6Cz\"};const getProps=({height,id,width,...props})=>{return{...props,variant:humanReadableVariantMap[props.variant]??props.variant??\"WQLkyLRf1\"};};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,NDD3uA1qEb74Dgi6Cp,k4UM0Ca6fb74Dgi6Cp,vanAYq_ofb74Dgi6Cp,cSUQHOsZ8b74Dgi6Cp,XvBkjwmJob74Dgi6Cp,idb74Dgi6Cp,VTQPeE7OZAoeO9qo8h,AKqRwGdMkAoeO9qo8h,T7EsA58zYAoeO9qo8h,t2KOsoS3WAoeO9qo8h,idAoeO9qo8h,...restProps}=getProps(props);React.useEffect(()=>{const metadata=metadataProvider(undefined,activeLocale);if(metadata.robots){let robotsTag=document.querySelector('meta[name=\"robots\"]');if(robotsTag){robotsTag.setAttribute(\"content\",metadata.robots);}else{robotsTag=document.createElement(\"meta\");robotsTag.setAttribute(\"name\",\"robots\");robotsTag.setAttribute(\"content\",metadata.robots);document.head.appendChild(robotsTag);}}},[undefined,activeLocale]);React.useInsertionEffect(()=>{const metadata=metadataProvider(undefined,activeLocale);document.title=metadata.title||\"\";if(metadata.viewport){document.querySelector('meta[name=\"viewport\"]')?.setAttribute(\"content\",metadata.viewport);}},[undefined,activeLocale]);const[baseVariant,hydratedBaseVariant]=useHydratedBreakpointVariants(variant,breakpoints,false);const gestureVariant=undefined;const{activeVariantCallback,delay}=useActiveVariantCallback(undefined);const Wld3NDzSj1b86s49=({overlay,loadMore})=>activeVariantCallback(async(...args)=>{loadMore();});const sharedStyleClassNames=[sharedStyle.className,sharedStyle1.className,sharedStyle2.className,sharedStyle3.className,sharedStyle4.className];const scopingClassNames=cx(serializationHash,...sharedStyleClassNames);const ref1=React.useRef(null);const ref2=React.useRef(null);const ref3=React.useRef(null);const ref4=React.useRef(null);const ref5=React.useRef(null);const elementId=useRouteElementId(\"iujLX9vDm\");const ref6=React.useRef(null);const isDisplayed=()=>{if(!isBrowser())return true;if(baseVariant===\"cGbgDtuOd\")return false;return true;};const isDisplayed1=()=>{if(!isBrowser())return true;if(baseVariant===\"cGbgDtuOd\")return true;return false;};const router=useRouter();const elementId1=useRouteElementId(\"bCQFW2yKd\");const ref7=React.useRef(null);const elementId2=useRouteElementId(\"cG11XA7vV\");const elementId3=useRouteElementId(\"ZbZ0E00XJ\");const elementId4=useRouteElementId(\"HGFJ11HNx\");const elementId5=useRouteElementId(\"jYAtFPJyf\");const elementId6=useRouteElementId(\"JEsFhjZ0g\");const activeLocaleCode=useLocaleCode();useCustomCursors({});return /*#__PURE__*/_jsx(GeneratedComponentContext.Provider,{value:{primaryVariantId:\"WQLkyLRf1\",variantClassNames},children:/*#__PURE__*/_jsxs(LayoutGroup,{id:layoutId??defaultLayoutId,children:[/*#__PURE__*/_jsx(HTMLStyle,{value:\"html body { background: var(--token-7be8625f-297b-4b2a-908d-7056e5d82d0a, rgb(5, 5, 5)); }\"}),/*#__PURE__*/_jsxs(motion.div,{...restProps,className:cx(scopingClassNames,\"framer-72rtr7\",className),ref:refBinding,style:{...style},children:[/*#__PURE__*/_jsx(ComponentViewportProvider,{height:70,width:componentViewport?.width||\"100vw\",y:0,children:/*#__PURE__*/_jsx(Container,{className:\"framer-1kdxca4-container\",layoutScroll:true,nodeId:\"WYQDbjK90\",scopeId:\"augiA20Il\",children:/*#__PURE__*/_jsx(PropertyOverrides,{breakpoint:baseVariant,overrides:{cGbgDtuOd:{nKJ9zrDPZ:false,variant:\"aEVF0P72b\"},VAQyyE6Cz:{variant:\"aEVF0P72b\"}},children:/*#__PURE__*/_jsx(Navigation,{aJNeTc8tu:ref4,height:\"100%\",id:\"WYQDbjK90\",iGgmfc837:ref1,kEliPGedJ:ref5,layoutId:\"WYQDbjK90\",nKJ9zrDPZ:true,oFwbouLR1:ref2,style:{width:\"100%\"},variant:\"epcoFLJnF\",width:\"100%\",xF6wrwj_X:ref3})})})}),/*#__PURE__*/_jsx(\"section\",{className:\"framer-1j8bd08\",\"data-framer-name\":\"Hero\",id:elementId,ref:ref6,children:/*#__PURE__*/_jsxs(\"div\",{className:\"framer-1nvg4dq\",\"data-framer-name\":\"Container\",children:[/*#__PURE__*/_jsxs(\"div\",{className:\"framer-12nyfc4\",\"data-framer-name\":\"Background\",children:[isDisplayed()&&/*#__PURE__*/_jsx(ComponentViewportProvider,{children:/*#__PURE__*/_jsx(Container,{className:\"framer-le3r8y-container hidden-5zbgu1\",isAuthoredByUser:true,isModuleExternal:true,nodeId:\"ZwpsTK_SG\",scopeId:\"augiA20Il\",children:/*#__PURE__*/_jsx(Video,{backgroundColor:\"rgba(0, 0, 0, 0)\",borderRadius:0,bottomLeftRadius:0,bottomRightRadius:0,controls:false,height:\"100%\",id:\"ZwpsTK_SG\",isMixedBorderRadius:false,layoutId:\"ZwpsTK_SG\",loop:true,muted:true,objectFit:\"cover\",playing:true,posterEnabled:true,srcFile:\"https://framerusercontent.com/assets/QJPlCz2pqqlNwL2Rij5UXA1DxY.mp4\",srcType:\"Upload\",srcUrl:\"https://assets.mixkit.co/videos/preview/mixkit-shining-sun-in-the-sky-surrounded-by-moving-clouds-31793-small.mp4\",startTime:0,style:{height:\"100%\",width:\"100%\"},topLeftRadius:0,topRightRadius:0,volume:25,width:\"100%\"})})}),isDisplayed1()&&/*#__PURE__*/_jsx(PropertyOverrides,{breakpoint:baseVariant,overrides:{cGbgDtuOd:{background:{alt:\"\",fit:\"fill\",pixelHeight:1257,pixelWidth:2233,sizes:componentViewport?.width||\"100vw\",src:\"https://framerusercontent.com/images/MDJYzUnGIiJzTF5uxsQLXbIzfw.jpg\",srcSet:\"https://framerusercontent.com/images/MDJYzUnGIiJzTF5uxsQLXbIzfw.jpg?scale-down-to=512 512w,https://framerusercontent.com/images/MDJYzUnGIiJzTF5uxsQLXbIzfw.jpg?scale-down-to=1024 1024w,https://framerusercontent.com/images/MDJYzUnGIiJzTF5uxsQLXbIzfw.jpg?scale-down-to=2048 2048w,https://framerusercontent.com/images/MDJYzUnGIiJzTF5uxsQLXbIzfw.jpg 2233w\"}}},children:/*#__PURE__*/_jsx(Image,{background:{alt:\"\",fit:\"fill\",pixelHeight:1257,pixelWidth:2233,src:\"https://framerusercontent.com/images/MDJYzUnGIiJzTF5uxsQLXbIzfw.jpg\",srcSet:\"https://framerusercontent.com/images/MDJYzUnGIiJzTF5uxsQLXbIzfw.jpg?scale-down-to=512 512w,https://framerusercontent.com/images/MDJYzUnGIiJzTF5uxsQLXbIzfw.jpg?scale-down-to=1024 1024w,https://framerusercontent.com/images/MDJYzUnGIiJzTF5uxsQLXbIzfw.jpg?scale-down-to=2048 2048w,https://framerusercontent.com/images/MDJYzUnGIiJzTF5uxsQLXbIzfw.jpg 2233w\"},className:\"framer-tzstf5 hidden-72rtr7 hidden-1rda0m2\",\"data-framer-name\":\"Image\"})})]}),/*#__PURE__*/_jsxs(\"div\",{className:\"framer-15i4ic3\",\"data-framer-name\":\"Header\",children:[/*#__PURE__*/_jsxs(\"div\",{className:\"framer-c73a7d\",\"data-framer-name\":\"Title\",children:[/*#__PURE__*/_jsx(ComponentViewportProvider,{height:36,children:/*#__PURE__*/_jsx(PropertyOverrides,{breakpoint:baseVariant,overrides:{cGbgDtuOd:{__framer__styleAppearEffectEnabled:undefined}},children:/*#__PURE__*/_jsx(ContainerWithFX,{__framer__animate:{transition:transition1},__framer__animateOnce:true,__framer__enter:animation,__framer__exit:animation1,__framer__styleAppearEffectEnabled:true,__framer__threshold:0,__perspectiveFX:false,__targetOpacity:1,className:\"framer-tq7w78-container\",nodeId:\"SDBiikHGi\",rendersWithMotion:true,scopeId:\"augiA20Il\",children:/*#__PURE__*/_jsx(Tag,{height:\"100%\",id:\"SDBiikHGi\",il_iZEJqM:\"StarFour\",layoutId:\"SDBiikHGi\",qUO9ZFWz7:true,s8eF8ARLI:\"Bit4Bit AI\",width:\"100%\"})})})}),/*#__PURE__*/_jsx(PropertyOverrides,{breakpoint:baseVariant,overrides:{cGbgDtuOd:{effect:undefined}},children:/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(\"h1\",{className:\"framer-styles-preset-w9j9br\",\"data-styles-preset\":\"InAbEgGo5\",children:\"Transform Your Business with Custom AI Solutions\"})}),className:\"framer-1npa1ux\",effect:textEffect,fonts:[\"Inter\"],verticalAlignment:\"top\",withExternalLayout:true})}),/*#__PURE__*/_jsx(PropertyOverrides,{breakpoint:baseVariant,overrides:{cGbgDtuOd:{effect:undefined}},children:/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(\"p\",{className:\"framer-styles-preset-f8bv20\",\"data-styles-preset\":\"IZpeieEjn\",style:{\"--framer-text-alignment\":\"center\"},children:\"We specialize in delivering cutting-edge AI solutions designed to empower businesses across all industries.\"})}),className:\"framer-ca5bh8\",effect:textEffect,fonts:[\"Inter\"],verticalAlignment:\"top\",withExternalLayout:true})})]}),/*#__PURE__*/_jsx(PropertyOverrides,{breakpoint:baseVariant,overrides:{cGbgDtuOd:{__framer__styleAppearEffectEnabled:undefined}},children:/*#__PURE__*/_jsxs(MotionDivWithFX,{__framer__animate:{transition:transition3},__framer__animateOnce:true,__framer__enter:animation,__framer__exit:animation3,__framer__styleAppearEffectEnabled:true,__framer__threshold:0,__perspectiveFX:false,__targetOpacity:1,className:\"framer-d0fwyg\",\"data-framer-name\":\"CTA\",children:[/*#__PURE__*/_jsx(PropertyOverrides,{breakpoint:baseVariant,overrides:{cGbgDtuOd:{width:`min(${componentViewport?.width||\"100vw\"} - 40px, 300px)`}},children:/*#__PURE__*/_jsx(ComponentViewportProvider,{height:52,children:/*#__PURE__*/_jsx(Container,{className:\"framer-1e91ncl-container\",nodeId:\"dd9Tzp6b7\",scopeId:\"augiA20Il\",children:/*#__PURE__*/_jsx(PropertyOverrides,{breakpoint:baseVariant,overrides:{cGbgDtuOd:{style:{height:\"100%\",width:\"100%\"}}},children:/*#__PURE__*/_jsx(ButtonsPrimary,{height:\"100%\",id:\"dd9Tzp6b7\",layoutId:\"dd9Tzp6b7\",LcMln3Vkv:\"Book a Free Consultation\",style:{height:\"100%\"},uTdAD3NkH:\"https://api.leadconnectorhq.com/widget/bookings/bit4bit\",variant:\"c4xNaovMW\",width:\"100%\"})})})})}),/*#__PURE__*/_jsx(ResolveLinks,{links:[{href:{hash:\":cG11XA7vV\",webPageId:\"augiA20Il\"},implicitPathVariables:undefined},{href:{hash:\":cG11XA7vV\",webPageId:\"augiA20Il\"},implicitPathVariables:undefined},{href:{hash:\":cG11XA7vV\",webPageId:\"augiA20Il\"},implicitPathVariables:undefined}],children:resolvedLinks=>/*#__PURE__*/_jsx(PropertyOverrides,{breakpoint:baseVariant,overrides:{cGbgDtuOd:{width:`min(${componentViewport?.width||\"100vw\"} - 40px, 300px)`}},children:/*#__PURE__*/_jsx(ComponentViewportProvider,{height:52,children:/*#__PURE__*/_jsx(Container,{className:\"framer-1sejwci-container\",nodeId:\"I8aqnwcwZ\",scopeId:\"augiA20Il\",children:/*#__PURE__*/_jsx(PropertyOverrides,{breakpoint:baseVariant,overrides:{cGbgDtuOd:{sfey0iyK_:resolvedLinks[2],style:{height:\"100%\",width:\"100%\"}},VAQyyE6Cz:{sfey0iyK_:resolvedLinks[1]}},children:/*#__PURE__*/_jsx(ButtonsSecondary,{Bbrl2mwsl:true,EAvYWKNMt:\"Our Services\",FzBC_80m1:\"ArrowRight\",height:\"100%\",id:\"I8aqnwcwZ\",layoutId:\"I8aqnwcwZ\",sfey0iyK_:resolvedLinks[0],style:{height:\"100%\"},width:\"100%\"})})})})})})]})})]}),/*#__PURE__*/_jsx(PropertyOverrides,{breakpoint:baseVariant,overrides:{cGbgDtuOd:{__framer__styleAppearEffectEnabled:undefined}},children:/*#__PURE__*/_jsx(MotionDivWithFX,{__framer__animate:{transition:transition4},__framer__animateOnce:true,__framer__enter:animation,__framer__exit:animation4,__framer__styleAppearEffectEnabled:true,__framer__threshold:0,__perspectiveFX:false,__targetOpacity:1,className:\"framer-1gywcml\",\"data-framer-name\":\"Video\",children:/*#__PURE__*/_jsx(PropertyOverrides,{breakpoint:baseVariant,overrides:{cGbgDtuOd:{height:220,width:`min(max(${componentViewport?.width||\"100vw\"} - 40px, 1px), 850px)`},VAQyyE6Cz:{width:`min(max(max(${componentViewport?.width||\"100vw\"}, 1px) - 80px, 1px), 850px)`}},children:/*#__PURE__*/_jsx(ComponentViewportProvider,{height:507,width:`min(max(max(${componentViewport?.width||\"100vw\"}, 1px) - 160px, 1px), 850px)`,children:/*#__PURE__*/_jsx(Container,{className:\"framer-61e8s7-container\",nodeId:\"SylyFenhz\",scopeId:\"augiA20Il\",children:/*#__PURE__*/_jsx(PropertyOverrides,{breakpoint:baseVariant,overrides:{cGbgDtuOd:{variant:\"zb_TwGR17\"},VAQyyE6Cz:{variant:\"zb_TwGR17\"}},children:/*#__PURE__*/_jsx(HeroVideo,{F4L34O8Rv:\"AvhcQtMgm\",height:\"100%\",hlzoOERZk:\"https://framerusercontent.com/assets/z2vl0TiqVsgNx29cNkOoy5zluk4.mp4\",id:\"SylyFenhz\",JL8Y7mSiZ:false,layoutId:\"SylyFenhz\",Mg2lPdiRN:\"How We Work\",q7pw1mcVM:\"https://youtu.be/smPos0mJvh8\",style:{height:\"100%\",maxWidth:\"100%\",width:\"100%\"},variant:\"N4IJn_koA\",width:\"100%\"})})})})})})})]})}),/*#__PURE__*/_jsx(\"section\",{className:\"framer-oi1wxq\",\"data-framer-name\":\"Process\",id:elementId1,ref:ref7,children:/*#__PURE__*/_jsxs(\"div\",{className:\"framer-cv1ks2\",\"data-framer-name\":\"Container\",children:[/*#__PURE__*/_jsxs(\"div\",{className:\"framer-r4om2g\",\"data-framer-name\":\"Title\",children:[/*#__PURE__*/_jsx(ComponentViewportProvider,{height:36,children:/*#__PURE__*/_jsx(Container,{className:\"framer-i2xif-container\",nodeId:\"LmrareJIv\",scopeId:\"augiA20Il\",children:/*#__PURE__*/_jsx(Tag,{height:\"100%\",id:\"LmrareJIv\",il_iZEJqM:\"StarFour\",layoutId:\"LmrareJIv\",qUO9ZFWz7:false,s8eF8ARLI:\"Process\",width:\"100%\"})})}),/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(\"h2\",{className:\"framer-styles-preset-bjb6tn\",\"data-styles-preset\":\"kxN7gAslB\",children:\"Simplified AI Solutions\"})}),className:\"framer-1s0l6n0\",fonts:[\"Inter\"],verticalAlignment:\"top\",withExternalLayout:true}),/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(\"p\",{className:\"framer-styles-preset-f8bv20\",\"data-styles-preset\":\"IZpeieEjn\",style:{\"--framer-text-alignment\":\"center\"},children:\"With Bit4Bit, AI is simple, scalable, and always working to improve your business.\"})}),className:\"framer-jzpvdp\",fonts:[\"Inter\"],verticalAlignment:\"top\",withExternalLayout:true})]}),/*#__PURE__*/_jsxs(\"div\",{className:\"framer-1smston\",\"data-framer-name\":\"Steps\",children:[/*#__PURE__*/_jsx(PropertyOverrides,{breakpoint:baseVariant,overrides:{cGbgDtuOd:{width:`calc(min(${componentViewport?.width||\"100vw\"}, 1440px) - 40px)`},VAQyyE6Cz:{width:`min(min(max(${componentViewport?.width||\"100vw\"}, 1px), 1440px) - 80px, 500px)`}},children:/*#__PURE__*/_jsx(ComponentViewportProvider,{height:212,width:`max((min(max(${componentViewport?.width||\"100vw\"}, 1px), 1440px) - 208px) / 3, 50px)`,children:/*#__PURE__*/_jsx(Container,{className:\"framer-1cdn9pu-container\",nodeId:\"CE3l1P7qB\",scopeId:\"augiA20Il\",children:/*#__PURE__*/_jsx(PropertyOverrides,{breakpoint:baseVariant,overrides:{cGbgDtuOd:{style:{width:\"100%\"},variant:\"I9lLXos6M\"},VAQyyE6Cz:{style:{width:\"100%\"}}},children:/*#__PURE__*/_jsx(CardsProcess,{D2NiZ5OHn:.6,d3DGlGQ78:\"1. Discovery & Customization\",GCvgLUZrq:\"https://framerusercontent.com/assets/MIc3mGuAyzuhnPvsp1qe7k6GL4.json\",height:\"100%\",id:\"CE3l1P7qB\",layoutId:\"CE3l1P7qB\",style:{height:\"100%\",width:\"100%\"},variant:\"Z9NOrp_Eq\",width:\"100%\",YssrYlgQi:\"We start by understanding your business needs and goals, tailoring our AI solutions to fit your unique requirements.\"})})})})}),/*#__PURE__*/_jsx(PropertyOverrides,{breakpoint:baseVariant,overrides:{cGbgDtuOd:{width:`calc(min(${componentViewport?.width||\"100vw\"}, 1440px) - 40px)`},VAQyyE6Cz:{width:`min(min(max(${componentViewport?.width||\"100vw\"}, 1px), 1440px) - 80px, 500px)`}},children:/*#__PURE__*/_jsx(ComponentViewportProvider,{height:212,width:`max((min(max(${componentViewport?.width||\"100vw\"}, 1px), 1440px) - 208px) / 3, 50px)`,children:/*#__PURE__*/_jsx(Container,{className:\"framer-sqsggs-container\",nodeId:\"tWEGu5EXQ\",scopeId:\"augiA20Il\",children:/*#__PURE__*/_jsx(PropertyOverrides,{breakpoint:baseVariant,overrides:{cGbgDtuOd:{style:{width:\"100%\"},variant:\"I9lLXos6M\"},VAQyyE6Cz:{style:{width:\"100%\"}}},children:/*#__PURE__*/_jsx(CardsProcess,{D2NiZ5OHn:.6,d3DGlGQ78:\"2. Seamless AI Integration\",GCvgLUZrq:\"https://framerusercontent.com/assets/NOagmibwkwzN8frXV3IaFJckW4A.json\",height:\"100%\",id:\"tWEGu5EXQ\",layoutId:\"tWEGu5EXQ\",style:{height:\"100%\",width:\"100%\"},variant:\"Z9NOrp_Eq\",width:\"100%\",YssrYlgQi:\"Once the plan is set, we integrate our AI tools directly into your existing workflows, software, or platforms.\"})})})})}),/*#__PURE__*/_jsx(PropertyOverrides,{breakpoint:baseVariant,overrides:{cGbgDtuOd:{width:`calc(min(${componentViewport?.width||\"100vw\"}, 1440px) - 40px)`},VAQyyE6Cz:{width:`min(min(max(${componentViewport?.width||\"100vw\"}, 1px), 1440px) - 80px, 500px)`}},children:/*#__PURE__*/_jsx(ComponentViewportProvider,{height:212,width:`max((min(max(${componentViewport?.width||\"100vw\"}, 1px), 1440px) - 208px) / 3, 50px)`,children:/*#__PURE__*/_jsx(Container,{className:\"framer-7vba7p-container\",nodeId:\"sdHlDKt5b\",scopeId:\"augiA20Il\",children:/*#__PURE__*/_jsx(PropertyOverrides,{breakpoint:baseVariant,overrides:{cGbgDtuOd:{style:{width:\"100%\"},variant:\"I9lLXos6M\"},VAQyyE6Cz:{style:{width:\"100%\"}}},children:/*#__PURE__*/_jsx(CardsProcess,{D2NiZ5OHn:.6,d3DGlGQ78:\"3. Optimization & Support\",height:\"100%\",id:\"sdHlDKt5b\",layoutId:\"sdHlDKt5b\",style:{height:\"100%\",width:\"100%\"},variant:\"Z9NOrp_Eq\",width:\"100%\",YssrYlgQi:\"With our monthly subscription, we provide ongoing AI optimization, performance monitoring, and 24/7 support.\"})})})})})]})]})}),/*#__PURE__*/_jsx(\"section\",{className:\"framer-e10l5t\",\"data-framer-name\":\"Services - bento\",id:elementId2,ref:ref1,children:/*#__PURE__*/_jsxs(\"div\",{className:\"framer-ysezwn\",\"data-framer-name\":\"Container\",children:[/*#__PURE__*/_jsxs(\"div\",{className:\"framer-1wcamqv\",\"data-framer-name\":\"Title\",children:[/*#__PURE__*/_jsx(ComponentViewportProvider,{height:36,children:/*#__PURE__*/_jsx(Container,{className:\"framer-1o19cu6-container\",nodeId:\"gbaE61Zyc\",scopeId:\"augiA20Il\",children:/*#__PURE__*/_jsx(Tag,{height:\"100%\",id:\"gbaE61Zyc\",il_iZEJqM:\"StarFour\",layoutId:\"gbaE61Zyc\",qUO9ZFWz7:false,s8eF8ARLI:\"Services\",width:\"100%\"})})}),/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(\"h2\",{className:\"framer-styles-preset-bjb6tn\",\"data-styles-preset\":\"kxN7gAslB\",children:\"how AI can transform your business\"})}),className:\"framer-1ialacx\",fonts:[\"Inter\"],verticalAlignment:\"top\",withExternalLayout:true}),/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(\"p\",{className:\"framer-styles-preset-f8bv20\",\"data-styles-preset\":\"IZpeieEjn\",style:{\"--framer-text-alignment\":\"center\"},children:\"Our services are designed to optimize efficiency, boost productivity, and deliver measurable results.\"})}),className:\"framer-1fye7hq\",fonts:[\"Inter\"],verticalAlignment:\"top\",withExternalLayout:true})]}),/*#__PURE__*/_jsxs(\"div\",{className:\"framer-ts00rz\",\"data-framer-name\":\"Services\",children:[/*#__PURE__*/_jsxs(\"div\",{className:\"framer-2mdr1b\",children:[/*#__PURE__*/_jsx(PropertyOverrides,{breakpoint:baseVariant,overrides:{cGbgDtuOd:{height:417,width:`calc(min(${componentViewport?.width||\"100vw\"}, 1440px) - 40px)`},VAQyyE6Cz:{height:460,width:`max((min(max(${componentViewport?.width||\"100vw\"}, 1px), 1440px) - 96px) / 2, 1px)`}},children:/*#__PURE__*/_jsx(ComponentViewportProvider,{height:440,width:`max((min(max(${componentViewport?.width||\"100vw\"}, 1px), 1440px) - 184px) * 0.5833, 1px)`,children:/*#__PURE__*/_jsx(Container,{className:\"framer-u1ma3w-container\",nodeId:\"ar5imLOeR\",scopeId:\"augiA20Il\",children:/*#__PURE__*/_jsx(PropertyOverrides,{breakpoint:baseVariant,overrides:{cGbgDtuOd:{style:{width:\"100%\"},variant:\"MxgA9mGRn\"},VAQyyE6Cz:{variant:\"RCSbjZupD\"}},children:/*#__PURE__*/_jsx(ServiceCardsChatbot,{DXWWgGjsz:\"Build custom AI-powered chatbots that can handle customer service and other tasks.\",height:\"100%\",id:\"ar5imLOeR\",layoutId:\"ar5imLOeR\",style:{height:\"100%\",width:\"100%\"},tLs69h6vu:\"Customer Support Chatbots\",variant:\"hlCjCLcd1\",width:\"100%\"})})})})}),/*#__PURE__*/_jsx(PropertyOverrides,{breakpoint:baseVariant,overrides:{cGbgDtuOd:{height:400,width:`calc(min(${componentViewport?.width||\"100vw\"}, 1440px) - 40px)`},VAQyyE6Cz:{height:460,width:`max((min(max(${componentViewport?.width||\"100vw\"}, 1px), 1440px) - 96px) / 2, 1px)`}},children:/*#__PURE__*/_jsx(ComponentViewportProvider,{height:440,width:`max((min(max(${componentViewport?.width||\"100vw\"}, 1px), 1440px) - 184px) / 2.4, 1px)`,children:/*#__PURE__*/_jsx(Container,{className:\"framer-4xsmdk-container\",nodeId:\"JhZ8FCzNG\",scopeId:\"augiA20Il\",children:/*#__PURE__*/_jsx(PropertyOverrides,{breakpoint:baseVariant,overrides:{cGbgDtuOd:{variant:\"QR2Y_5NyP\"},VAQyyE6Cz:{variant:\"QR2Y_5NyP\"}},children:/*#__PURE__*/_jsx(ServiceCardsAnalysis,{DXWWgGjsz:\"Develop and train custom agents models for specific business needs.\",height:\"100%\",id:\"JhZ8FCzNG\",layoutId:\"JhZ8FCzNG\",style:{height:\"100%\",width:\"100%\"},tLs69h6vu:\"AI Agents for your business\",variant:\"EusG2sP1O\",width:\"100%\"})})})})})]}),/*#__PURE__*/_jsxs(\"div\",{className:\"framer-paj11d\",children:[/*#__PURE__*/_jsx(PropertyOverrides,{breakpoint:baseVariant,overrides:{cGbgDtuOd:{height:400,width:`calc(min(${componentViewport?.width||\"100vw\"}, 1440px) - 40px)`},VAQyyE6Cz:{width:`max((min(max(${componentViewport?.width||\"100vw\"}, 1px), 1440px) - 96px) / 2, 1px)`}},children:/*#__PURE__*/_jsx(ComponentViewportProvider,{height:420,width:`max((min(max(${componentViewport?.width||\"100vw\"}, 1px), 1440px) - 184px) / 2.4, 1px)`,children:/*#__PURE__*/_jsx(Container,{className:\"framer-ngolec-container\",nodeId:\"ggf9cMhjD\",scopeId:\"augiA20Il\",children:/*#__PURE__*/_jsx(PropertyOverrides,{breakpoint:baseVariant,overrides:{cGbgDtuOd:{variant:\"gmK2MTPgR\"},VAQyyE6Cz:{variant:\"gmK2MTPgR\"}},children:/*#__PURE__*/_jsx(ServiceCardsAutomation,{DXWWgGjsz:\"We help companies integrate AI tools into their existing software platforms, CRM systems, or marketing channels.\",height:\"100%\",id:\"ggf9cMhjD\",layoutId:\"ggf9cMhjD\",style:{height:\"100%\",width:\"100%\"},tLs69h6vu:\"Workflow Automation\",variant:\"TvB1KrCp1\",width:\"100%\"})})})})}),/*#__PURE__*/_jsx(PropertyOverrides,{breakpoint:baseVariant,overrides:{cGbgDtuOd:{height:400,width:`calc(min(${componentViewport?.width||\"100vw\"}, 1440px) - 40px)`},VAQyyE6Cz:{width:`max((min(max(${componentViewport?.width||\"100vw\"}, 1px), 1440px) - 96px) / 2, 1px)`}},children:/*#__PURE__*/_jsx(ComponentViewportProvider,{height:420,width:`max((min(max(${componentViewport?.width||\"100vw\"}, 1px), 1440px) - 184px) * 0.5833, 1px)`,children:/*#__PURE__*/_jsx(Container,{className:\"framer-1n69hrj-container\",nodeId:\"Ned_DP7Yp\",scopeId:\"augiA20Il\",children:/*#__PURE__*/_jsx(PropertyOverrides,{breakpoint:baseVariant,overrides:{cGbgDtuOd:{variant:\"XbeyrV_XQ\"},VAQyyE6Cz:{variant:\"XbeyrV_XQ\"}},children:/*#__PURE__*/_jsx(ServiceCardsChart,{DXWWgGjsz:\"Guide businesses on how to use AI effectively, from strategy development to deployment and scaling.\",height:\"100%\",id:\"Ned_DP7Yp\",layoutId:\"Ned_DP7Yp\",style:{height:\"100%\",width:\"100%\"},tLs69h6vu:\"Strategy Consulting\",variant:\"DUTwi3Tvh\",width:\"100%\"})})})})})]})]})]})}),/*#__PURE__*/_jsx(\"section\",{className:\"framer-1llmauj\",\"data-framer-name\":\"Services - grid\",children:/*#__PURE__*/_jsxs(\"div\",{className:\"framer-aa06mo\",\"data-framer-name\":\"Container\",children:[/*#__PURE__*/_jsxs(\"div\",{className:\"framer-1ys01me\",\"data-framer-name\":\"Title\",children:[/*#__PURE__*/_jsx(ComponentViewportProvider,{height:36,children:/*#__PURE__*/_jsx(Container,{className:\"framer-ca0soe-container\",nodeId:\"rB_WRpkRL\",scopeId:\"augiA20Il\",children:/*#__PURE__*/_jsx(Tag,{height:\"100%\",id:\"rB_WRpkRL\",il_iZEJqM:\"StarFour\",layoutId:\"rB_WRpkRL\",qUO9ZFWz7:false,s8eF8ARLI:\"Services\",width:\"100%\"})})}),/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(\"h2\",{className:\"framer-styles-preset-bjb6tn\",\"data-styles-preset\":\"kxN7gAslB\",children:\"Harness The Full Potential of AI\"})}),className:\"framer-1on0hpd\",fonts:[\"Inter\"],verticalAlignment:\"top\",withExternalLayout:true})]}),/*#__PURE__*/_jsxs(\"div\",{className:\"framer-53d7f9\",\"data-framer-name\":\"Services\",children:[/*#__PURE__*/_jsx(PropertyOverrides,{breakpoint:baseVariant,overrides:{cGbgDtuOd:{width:`min(min(${componentViewport?.width||\"100vw\"}, 1440px) - 40px, 400px)`},VAQyyE6Cz:{width:`max((min(max(${componentViewport?.width||\"100vw\"}, 1px), 1440px) - 96px) / 2, 50px)`}},children:/*#__PURE__*/_jsx(ComponentViewportProvider,{height:228,width:`max((min(max(${componentViewport?.width||\"100vw\"}, 1px), 1440px) - 192px) / 3, 50px)`,children:/*#__PURE__*/_jsx(Container,{className:\"framer-1nqhb14-container\",nodeId:\"jrv2BlgxX\",scopeId:\"augiA20Il\",children:/*#__PURE__*/_jsx(PropertyOverrides,{breakpoint:baseVariant,overrides:{cGbgDtuOd:{style:{width:\"100%\"},variant:\"GvskXmch5\"}},children:/*#__PURE__*/_jsx(CardsBenefits,{D2NiZ5OHn:.6,d3DGlGQ78:\"Predictive Analytics\",GCvgLUZrq:\"https://framerusercontent.com/assets/Ow5CMnAAe6h7xb4vD4Wag6LJw.json\",height:\"100%\",id:\"jrv2BlgxX\",layoutId:\"jrv2BlgxX\",style:{height:\"100%\",width:\"100%\"},variant:\"XHwcI4e2F\",width:\"100%\",YssrYlgQi:\"Use AI to analyze historical data and predict future trends.\"})})})})}),/*#__PURE__*/_jsx(PropertyOverrides,{breakpoint:baseVariant,overrides:{cGbgDtuOd:{width:`min(min(${componentViewport?.width||\"100vw\"}, 1440px) - 40px, 400px)`},VAQyyE6Cz:{width:`max((min(max(${componentViewport?.width||\"100vw\"}, 1px), 1440px) - 96px) / 2, 50px)`}},children:/*#__PURE__*/_jsx(ComponentViewportProvider,{height:228,width:`max((min(max(${componentViewport?.width||\"100vw\"}, 1px), 1440px) - 192px) / 3, 50px)`,children:/*#__PURE__*/_jsx(Container,{className:\"framer-1dzc0nc-container\",nodeId:\"eYR9xJ7S4\",scopeId:\"augiA20Il\",children:/*#__PURE__*/_jsx(PropertyOverrides,{breakpoint:baseVariant,overrides:{cGbgDtuOd:{style:{width:\"100%\"},variant:\"GvskXmch5\"}},children:/*#__PURE__*/_jsx(CardsBenefits,{D2NiZ5OHn:.6,d3DGlGQ78:\"Personalized Marketing Campaigns\",GCvgLUZrq:\"https://framerusercontent.com/assets/N0MXC8ZIvUBGIoGxBwj3x8T8.json\",height:\"100%\",id:\"eYR9xJ7S4\",layoutId:\"eYR9xJ7S4\",style:{height:\"100%\",width:\"100%\"},variant:\"XHwcI4e2F\",width:\"100%\",YssrYlgQi:\"Use AI to target specific audiences with personalized content.\"})})})})}),/*#__PURE__*/_jsx(PropertyOverrides,{breakpoint:baseVariant,overrides:{cGbgDtuOd:{width:`min(min(${componentViewport?.width||\"100vw\"}, 1440px) - 40px, 400px)`},VAQyyE6Cz:{width:`max((min(max(${componentViewport?.width||\"100vw\"}, 1px), 1440px) - 96px) / 2, 50px)`}},children:/*#__PURE__*/_jsx(ComponentViewportProvider,{height:228,width:`max((min(max(${componentViewport?.width||\"100vw\"}, 1px), 1440px) - 192px) / 3, 50px)`,children:/*#__PURE__*/_jsx(Container,{className:\"framer-i6877c-container\",nodeId:\"jTffzqWBu\",scopeId:\"augiA20Il\",children:/*#__PURE__*/_jsx(PropertyOverrides,{breakpoint:baseVariant,overrides:{cGbgDtuOd:{style:{width:\"100%\"},variant:\"GvskXmch5\"}},children:/*#__PURE__*/_jsx(CardsBenefits,{D2NiZ5OHn:.6,d3DGlGQ78:\"AI Personal Assistants\",GCvgLUZrq:\"https://framerusercontent.com/assets/pLjxzmZOwkV8jOIs7zbQMYEM6W4.json\",height:\"100%\",id:\"jTffzqWBu\",layoutId:\"jTffzqWBu\",style:{height:\"100%\",width:\"100%\"},variant:\"XHwcI4e2F\",width:\"100%\",YssrYlgQi:\"Develop virtual assistants that automate tasks and answer complex queries.\"})})})})}),/*#__PURE__*/_jsx(PropertyOverrides,{breakpoint:baseVariant,overrides:{cGbgDtuOd:{width:`min(min(${componentViewport?.width||\"100vw\"}, 1440px) - 40px, 400px)`},VAQyyE6Cz:{width:`max((min(max(${componentViewport?.width||\"100vw\"}, 1px), 1440px) - 96px) / 2, 50px)`}},children:/*#__PURE__*/_jsx(ComponentViewportProvider,{height:228,width:`max((min(max(${componentViewport?.width||\"100vw\"}, 1px), 1440px) - 192px) / 3, 50px)`,children:/*#__PURE__*/_jsx(Container,{className:\"framer-dvv7q3-container\",nodeId:\"i01UpjEwq\",scopeId:\"augiA20Il\",children:/*#__PURE__*/_jsx(PropertyOverrides,{breakpoint:baseVariant,overrides:{cGbgDtuOd:{style:{width:\"100%\"},variant:\"GvskXmch5\"}},children:/*#__PURE__*/_jsx(CardsBenefits,{D2NiZ5OHn:.6,d3DGlGQ78:\"AI Integration\",GCvgLUZrq:\"https://framerusercontent.com/assets/nsU1eOfQL0IC76iogMeBirB27gk.json\",height:\"100%\",id:\"i01UpjEwq\",layoutId:\"i01UpjEwq\",style:{height:\"100%\",width:\"100%\"},variant:\"XHwcI4e2F\",width:\"100%\",YssrYlgQi:\"Help companies integrate AI tools into their existing software platforms.\"})})})})}),/*#__PURE__*/_jsx(PropertyOverrides,{breakpoint:baseVariant,overrides:{cGbgDtuOd:{width:`min(min(${componentViewport?.width||\"100vw\"}, 1440px) - 40px, 400px)`},VAQyyE6Cz:{width:`max((min(max(${componentViewport?.width||\"100vw\"}, 1px), 1440px) - 96px) / 2, 50px)`}},children:/*#__PURE__*/_jsx(ComponentViewportProvider,{height:228,width:`max((min(max(${componentViewport?.width||\"100vw\"}, 1px), 1440px) - 192px) / 3, 50px)`,children:/*#__PURE__*/_jsx(Container,{className:\"framer-8y16as-container\",nodeId:\"K8GSc2fmM\",scopeId:\"augiA20Il\",children:/*#__PURE__*/_jsx(PropertyOverrides,{breakpoint:baseVariant,overrides:{cGbgDtuOd:{style:{width:\"100%\"},variant:\"GvskXmch5\"}},children:/*#__PURE__*/_jsx(CardsBenefits,{D2NiZ5OHn:.6,d3DGlGQ78:\"AI Content Creation\",GCvgLUZrq:\"https://framerusercontent.com/assets/ETYG8K4ccbryftJXWRlTcMQNcL4.json\",height:\"100%\",id:\"K8GSc2fmM\",layoutId:\"K8GSc2fmM\",style:{height:\"100%\",width:\"100%\"},variant:\"XHwcI4e2F\",width:\"100%\",YssrYlgQi:\"Offer AI-generated videos, images, and text for content marketing.\"})})})})}),/*#__PURE__*/_jsx(PropertyOverrides,{breakpoint:baseVariant,overrides:{cGbgDtuOd:{width:`min(min(${componentViewport?.width||\"100vw\"}, 1440px) - 40px, 400px)`},VAQyyE6Cz:{width:`max((min(max(${componentViewport?.width||\"100vw\"}, 1px), 1440px) - 96px) / 2, 50px)`}},children:/*#__PURE__*/_jsx(ComponentViewportProvider,{height:228,width:`max((min(max(${componentViewport?.width||\"100vw\"}, 1px), 1440px) - 192px) / 3, 50px)`,children:/*#__PURE__*/_jsx(Container,{className:\"framer-zdfxe9-container\",nodeId:\"reNRHbtwg\",scopeId:\"augiA20Il\",children:/*#__PURE__*/_jsx(PropertyOverrides,{breakpoint:baseVariant,overrides:{cGbgDtuOd:{style:{width:\"100%\"},variant:\"GvskXmch5\"}},children:/*#__PURE__*/_jsx(CardsBenefits,{D2NiZ5OHn:.6,d3DGlGQ78:\"AI-Powered SEO\",GCvgLUZrq:\"https://framerusercontent.com/assets/QHfr4mg7me1wlpsuqGf6fuBXQw.json\",height:\"100%\",id:\"reNRHbtwg\",layoutId:\"reNRHbtwg\",style:{height:\"100%\",width:\"100%\"},variant:\"XHwcI4e2F\",width:\"100%\",YssrYlgQi:\"Implement AI tools to optimize content for search engines.\"})})})})})]}),/*#__PURE__*/_jsxs(\"div\",{className:\"framer-1ebbqua\",\"data-framer-name\":\"Background\",children:[isDisplayed()&&/*#__PURE__*/_jsx(ComponentViewportProvider,{children:/*#__PURE__*/_jsx(Container,{className:\"framer-1laiqpv-container hidden-5zbgu1\",isAuthoredByUser:true,isModuleExternal:true,nodeId:\"MKMtrcac1\",scopeId:\"augiA20Il\",children:/*#__PURE__*/_jsx(Video,{backgroundColor:\"rgba(0, 0, 0, 0)\",borderRadius:0,bottomLeftRadius:0,bottomRightRadius:0,controls:false,height:\"100%\",id:\"MKMtrcac1\",isMixedBorderRadius:false,layoutId:\"MKMtrcac1\",loop:true,muted:true,objectFit:\"cover\",playing:true,posterEnabled:true,srcFile:\"https://framerusercontent.com/assets/QJPlCz2pqqlNwL2Rij5UXA1DxY.mp4\",srcType:\"Upload\",srcUrl:\"https://assets.mixkit.co/videos/preview/mixkit-shining-sun-in-the-sky-surrounded-by-moving-clouds-31793-small.mp4\",startTime:0,style:{height:\"100%\",width:\"100%\"},topLeftRadius:0,topRightRadius:0,volume:25,width:\"100%\"})})}),isDisplayed1()&&/*#__PURE__*/_jsx(PropertyOverrides,{breakpoint:baseVariant,overrides:{cGbgDtuOd:{background:{alt:\"\",fit:\"fill\",pixelHeight:1257,pixelWidth:2233,sizes:`min(${componentViewport?.width||\"100vw\"}, 1440px)`,src:\"https://framerusercontent.com/images/MDJYzUnGIiJzTF5uxsQLXbIzfw.jpg\",srcSet:\"https://framerusercontent.com/images/MDJYzUnGIiJzTF5uxsQLXbIzfw.jpg?scale-down-to=512 512w,https://framerusercontent.com/images/MDJYzUnGIiJzTF5uxsQLXbIzfw.jpg?scale-down-to=1024 1024w,https://framerusercontent.com/images/MDJYzUnGIiJzTF5uxsQLXbIzfw.jpg?scale-down-to=2048 2048w,https://framerusercontent.com/images/MDJYzUnGIiJzTF5uxsQLXbIzfw.jpg 2233w\"}}},children:/*#__PURE__*/_jsx(Image,{background:{alt:\"\",fit:\"fill\",pixelHeight:1257,pixelWidth:2233,src:\"https://framerusercontent.com/images/MDJYzUnGIiJzTF5uxsQLXbIzfw.jpg\",srcSet:\"https://framerusercontent.com/images/MDJYzUnGIiJzTF5uxsQLXbIzfw.jpg?scale-down-to=512 512w,https://framerusercontent.com/images/MDJYzUnGIiJzTF5uxsQLXbIzfw.jpg?scale-down-to=1024 1024w,https://framerusercontent.com/images/MDJYzUnGIiJzTF5uxsQLXbIzfw.jpg?scale-down-to=2048 2048w,https://framerusercontent.com/images/MDJYzUnGIiJzTF5uxsQLXbIzfw.jpg 2233w\"},className:\"framer-1c2vbcv hidden-72rtr7 hidden-1rda0m2\",\"data-framer-name\":\"Image\"})})]})]})}),/*#__PURE__*/_jsx(\"section\",{className:\"framer-24rt4a\",\"data-framer-name\":\"Projects\",id:elementId3,ref:ref2,children:/*#__PURE__*/_jsxs(\"div\",{className:\"framer-mv0i1v\",\"data-framer-name\":\"Container\",children:[/*#__PURE__*/_jsxs(\"div\",{className:\"framer-1xgcamn\",\"data-framer-name\":\"Title\",children:[/*#__PURE__*/_jsx(ComponentViewportProvider,{height:36,children:/*#__PURE__*/_jsx(Container,{className:\"framer-1f99pmm-container\",nodeId:\"NwSd__VGT\",scopeId:\"augiA20Il\",children:/*#__PURE__*/_jsx(Tag,{height:\"100%\",id:\"NwSd__VGT\",il_iZEJqM:\"StarFour\",layoutId:\"NwSd__VGT\",qUO9ZFWz7:false,s8eF8ARLI:\"Projects\",width:\"100%\"})})}),/*#__PURE__*/_jsx(PropertyOverrides,{breakpoint:baseVariant,overrides:{cGbgDtuOd:{children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(\"h2\",{className:\"framer-styles-preset-bjb6tn\",\"data-styles-preset\":\"kxN7gAslB\",style:{\"--framer-text-alignment\":\"center\"},children:\"Some of our projects\"})})}},children:/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(\"h2\",{className:\"framer-styles-preset-bjb6tn\",\"data-styles-preset\":\"kxN7gAslB\",style:{\"--framer-text-alignment\":\"left\"},children:\"Some of our projects\"})}),className:\"framer-16jagtp\",fonts:[\"Inter\"],verticalAlignment:\"top\",withExternalLayout:true})}),/*#__PURE__*/_jsx(PropertyOverrides,{breakpoint:baseVariant,overrides:{cGbgDtuOd:{children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(\"p\",{className:\"framer-styles-preset-f8bv20\",\"data-styles-preset\":\"IZpeieEjn\",style:{\"--framer-text-alignment\":\"center\"},children:\"Each of these projects demonstrates how AI can deliver measurable results in different industries.\"})})}},children:/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(\"p\",{className:\"framer-styles-preset-f8bv20\",\"data-styles-preset\":\"IZpeieEjn\",style:{\"--framer-text-alignment\":\"left\"},children:\"Each of these projects demonstrates how AI can deliver measurable results in different industries.\"})}),className:\"framer-1vmj9ir\",fonts:[\"Inter\"],verticalAlignment:\"top\",withExternalLayout:true})})]}),/*#__PURE__*/_jsx(\"div\",{className:\"framer-1xviz5z\",\"data-framer-name\":\"Projects\",children:/*#__PURE__*/_jsx(\"div\",{className:\"framer-1k77o12\",children:/*#__PURE__*/_jsx(ChildrenCanSuspend,{children:/*#__PURE__*/_jsx(QueryData,{pageSize:3,query:{from:{alias:\"b74Dgi6Cp\",data:Projects,type:\"Collection\"},select:[{collection:\"b74Dgi6Cp\",name:\"NDD3uA1qE\",type:\"Identifier\"},{collection:\"b74Dgi6Cp\",name:\"k4UM0Ca6f\",type:\"Identifier\"},{collection:\"b74Dgi6Cp\",name:\"vanAYq_of\",type:\"Identifier\"},{collection:\"b74Dgi6Cp\",name:\"cSUQHOsZ8\",type:\"Identifier\"},{collection:\"b74Dgi6Cp\",name:\"XvBkjwmJo\",type:\"Identifier\"},{collection:\"b74Dgi6Cp\",name:\"id\",type:\"Identifier\"}]},children:(collection,paginationInfo,loadMore)=>/*#__PURE__*/_jsxs(_Fragment,{children:[collection?.map(({cSUQHOsZ8:cSUQHOsZ8b74Dgi6Cp,id:idb74Dgi6Cp,k4UM0Ca6f:k4UM0Ca6fb74Dgi6Cp,NDD3uA1qE:NDD3uA1qEb74Dgi6Cp,vanAYq_of:vanAYq_ofb74Dgi6Cp,XvBkjwmJo:XvBkjwmJob74Dgi6Cp},index)=>{k4UM0Ca6fb74Dgi6Cp??=\"\";vanAYq_ofb74Dgi6Cp??=\"\";cSUQHOsZ8b74Dgi6Cp??=\"\";XvBkjwmJob74Dgi6Cp??=\"\";return /*#__PURE__*/_jsx(LayoutGroup,{id:`b74Dgi6Cp-${idb74Dgi6Cp}`,children:/*#__PURE__*/_jsx(PathVariablesContext.Provider,{value:{XvBkjwmJo:XvBkjwmJob74Dgi6Cp},children:/*#__PURE__*/_jsx(PropertyOverrides,{breakpoint:baseVariant,overrides:{cGbgDtuOd:{width:`calc(min(${componentViewport?.width||\"100vw\"}, 1440px) - 40px)`},VAQyyE6Cz:{width:`max((min(max(${componentViewport?.width||\"100vw\"}, 1px), 1440px) - 144px) / 2, 1px)`}},children:/*#__PURE__*/_jsx(ComponentViewportProvider,{height:459,width:`max((min(max(${componentViewport?.width||\"100vw\"}, 1px), 1440px) - 224px) / 2, 1px)`,children:/*#__PURE__*/_jsx(Container,{className:\"framer-s494t-container\",nodeId:\"beefvWveD\",scopeId:\"augiA20Il\",children:/*#__PURE__*/_jsx(CardsProjects,{aWgDXYqV_:k4UM0Ca6fb74Dgi6Cp,height:\"100%\",id:\"beefvWveD\",layoutId:\"beefvWveD\",RLYruWW0a:toResponsiveImage(NDD3uA1qEb74Dgi6Cp),style:{width:\"100%\"},vKmuugASL:cSUQHOsZ8b74Dgi6Cp,width:\"100%\",wxYaM1O2N:vanAYq_ofb74Dgi6Cp})})})})})},idb74Dgi6Cp);}),/*#__PURE__*/_jsx(ComponentViewportProvider,{height:52,width:\"180px\",children:/*#__PURE__*/_jsx(Container,{className:\"framer-u6rt57-container\",nodeId:\"qpzEOIIlk\",scopeId:\"augiA20Il\",children:/*#__PURE__*/_jsx(ButtonsLoadMore,{height:\"100%\",id:\"qpzEOIIlk\",layoutId:\"qpzEOIIlk\",style:{height:\"100%\",width:\"100%\"},variant:loaderVariants(paginationInfo,{disabled:\"E5EFcLsZo\",loading:\"dpah_O3g7\"},\"gdLNasKIZ\"),width:\"100%\",Wld3NDzSj:Wld3NDzSj1b86s49({loadMore})})})})]})})})})})]})}),/*#__PURE__*/_jsx(\"section\",{className:\"framer-sr3pyv\",\"data-framer-name\":\"Pricing\",id:elementId4,ref:ref3,children:/*#__PURE__*/_jsxs(\"div\",{className:\"framer-2hwv7f\",\"data-framer-name\":\"Container\",children:[/*#__PURE__*/_jsxs(\"div\",{className:\"framer-14v9mas\",\"data-framer-name\":\"Title\",children:[/*#__PURE__*/_jsx(ComponentViewportProvider,{height:36,children:/*#__PURE__*/_jsx(Container,{className:\"framer-1l86fh3-container\",nodeId:\"NRSccqqxM\",scopeId:\"augiA20Il\",children:/*#__PURE__*/_jsx(Tag,{height:\"100%\",id:\"NRSccqqxM\",il_iZEJqM:\"StarFour\",layoutId:\"NRSccqqxM\",qUO9ZFWz7:false,s8eF8ARLI:\"Pricing\",width:\"100%\"})})}),/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(\"h2\",{className:\"framer-styles-preset-bjb6tn\",\"data-styles-preset\":\"kxN7gAslB\",children:\"Our pricing plans\"})}),className:\"framer-15udb9h\",fonts:[\"Inter\"],verticalAlignment:\"top\",withExternalLayout:true}),/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(\"p\",{className:\"framer-styles-preset-f8bv20\",\"data-styles-preset\":\"IZpeieEjn\",style:{\"--framer-text-alignment\":\"center\"},children:\"We offer a range of options to meet the needs of different-sized businesses.\"})}),className:\"framer-oqa9fr\",fonts:[\"Inter\"],verticalAlignment:\"top\",withExternalLayout:true})]}),/*#__PURE__*/_jsxs(\"div\",{className:\"framer-17httsr\",\"data-framer-name\":\"Plans\",children:[/*#__PURE__*/_jsx(PropertyOverrides,{breakpoint:baseVariant,overrides:{cGbgDtuOd:{width:`min(min(${componentViewport?.width||\"100vw\"}, 1440px) - 40px, 500px)`},VAQyyE6Cz:{width:`min(min(max(${componentViewport?.width||\"100vw\"}, 1px), 1440px) - 80px, 500px)`}},children:/*#__PURE__*/_jsx(ComponentViewportProvider,{height:611,width:`min(max((min(max(${componentViewport?.width||\"100vw\"}, 1px), 1440px) - 208px) / 3, 1px), 500px)`,children:/*#__PURE__*/_jsx(Container,{className:\"framer-1m84bxb-container\",nodeId:\"inEgMMw_x\",scopeId:\"augiA20Il\",children:/*#__PURE__*/_jsx(CardsPricing,{AICV_JBwn:\"Monthly Performance Report\",AINojTrO1:\"AI-Powered Automation\",awfKgLoP0:\"\",GM6xbsAjG:\"Get Started\",height:\"100%\",id:\"inEgMMw_x\",kDFNVuvri:\"Ideal for small businesses or startups looking to integrate basic AI solutions.\",layoutId:\"inEgMMw_x\",NPcpuOJ_c:\"Starter\",qytFyYd41:\"Pause or cancel anytime\",qZmhJ2LDU:\"Tailored AI setup\",RBB9xjZlB:\"\",sNn6CWkIN:\"$499\",style:{maxWidth:\"100%\",width:\"100%\"},uNcMhG2ib:\"24/7 Email support\",V4tD38RXL:\"/month + development cost\",variant:\"jdtUJHGVc\",wCt4tT5jS:\"https://api.leadconnectorhq.com/widget/bookings/bit4bit\",width:\"100%\",Zx7vhVzb9:\"AI training sessions\"})})})}),/*#__PURE__*/_jsx(PropertyOverrides,{breakpoint:baseVariant,overrides:{cGbgDtuOd:{width:`min(min(${componentViewport?.width||\"100vw\"}, 1440px) - 40px, 500px)`},VAQyyE6Cz:{width:`min(min(max(${componentViewport?.width||\"100vw\"}, 1px), 1440px) - 80px, 500px)`}},children:/*#__PURE__*/_jsx(ComponentViewportProvider,{height:611,width:`min(max((min(max(${componentViewport?.width||\"100vw\"}, 1px), 1440px) - 208px) / 3, 1px), 500px)`,children:/*#__PURE__*/_jsx(Container,{className:\"framer-1whlnnw-container\",nodeId:\"IObWZcSGQ\",scopeId:\"augiA20Il\",children:/*#__PURE__*/_jsx(CardsPricing,{AICV_JBwn:\"AI-driven insights and recommendations\",AINojTrO1:\"All Starter Plan Features\",awfKgLoP0:\"\",GM6xbsAjG:\"Contact Us\",height:\"100%\",id:\"IObWZcSGQ\",kDFNVuvri:\"Ideal for gowing businesses seeking advanced AI capabilities.\",layoutId:\"IObWZcSGQ\",NPcpuOJ_c:\"Growth\",qytFyYd41:\"Pause or cancel anytime\",qZmhJ2LDU:\"Tailored AI integration for up to 4 business processes\",RBB9xjZlB:\"\",sNn6CWkIN:\"Let\\xb4s Talk\",style:{maxWidth:\"100%\",width:\"100%\"},uNcMhG2ib:\"Access to a custom-built dashboard\",V4tD38RXL:\"\",variant:\"iAuBR8ngF\",wCt4tT5jS:\"https://api.leadconnectorhq.com/widget/bookings/bit4bit\",width:\"100%\",Zx7vhVzb9:\"Bi-Weekly Optimization\"})})})}),/*#__PURE__*/_jsx(PropertyOverrides,{breakpoint:baseVariant,overrides:{cGbgDtuOd:{width:`min(min(${componentViewport?.width||\"100vw\"}, 1440px) - 40px, 500px)`},VAQyyE6Cz:{width:`min(min(max(${componentViewport?.width||\"100vw\"}, 1px), 1440px) - 80px, 500px)`}},children:/*#__PURE__*/_jsx(ComponentViewportProvider,{height:611,width:`min(max((min(max(${componentViewport?.width||\"100vw\"}, 1px), 1440px) - 208px) / 3, 1px), 500px)`,children:/*#__PURE__*/_jsx(Container,{className:\"framer-19rfvpk-container\",nodeId:\"TUWHhrpaD\",scopeId:\"augiA20Il\",children:/*#__PURE__*/_jsx(CardsPricing,{AICV_JBwn:\"\",AINojTrO1:\"All Growth Plan Features\",awfKgLoP0:\"\",GM6xbsAjG:\"Contact Us\",height:\"100%\",id:\"TUWHhrpaD\",kDFNVuvri:\"Ideal for Larger businesses looking for full-scale AI integration.\",layoutId:\"TUWHhrpaD\",NPcpuOJ_c:\"Enterprise\",qytFyYd41:\"Scale your entire business with AI\",qZmhJ2LDU:\"Custom AI solutions for up to 10 processes\",RBB9xjZlB:\"\",sNn6CWkIN:\"Let\\xb4s Talk\",style:{maxWidth:\"100%\",width:\"100%\"},uNcMhG2ib:\"Dedicated Account Manager\",V4tD38RXL:\"\",variant:\"jdtUJHGVc\",wCt4tT5jS:\"https://api.leadconnectorhq.com/widget/bookings/bit4bit\",width:\"100%\",Zx7vhVzb9:\"Weekly Reports & Strategy Sessions\"})})})}),isDisplayed()&&/*#__PURE__*/_jsx(\"div\",{className:\"framer-143g7t9 hidden-5zbgu1\",\"data-framer-name\":\"Background\",children:/*#__PURE__*/_jsx(ComponentViewportProvider,{children:/*#__PURE__*/_jsx(Container,{className:\"framer-mzp375-container\",isAuthoredByUser:true,isModuleExternal:true,nodeId:\"XxYqiOtj8\",scopeId:\"augiA20Il\",children:/*#__PURE__*/_jsx(Video,{backgroundColor:\"rgba(0, 0, 0, 0)\",borderRadius:0,bottomLeftRadius:0,bottomRightRadius:0,controls:false,height:\"100%\",id:\"XxYqiOtj8\",isMixedBorderRadius:false,layoutId:\"XxYqiOtj8\",loop:true,muted:true,objectFit:\"cover\",playing:true,posterEnabled:true,srcFile:\"https://framerusercontent.com/assets/QJPlCz2pqqlNwL2Rij5UXA1DxY.mp4\",srcType:\"Upload\",srcUrl:\"https://assets.mixkit.co/videos/preview/mixkit-shining-sun-in-the-sky-surrounded-by-moving-clouds-31793-small.mp4\",startTime:0,style:{height:\"100%\",width:\"100%\"},topLeftRadius:0,topRightRadius:0,volume:25,width:\"100%\"})})})})]})]})}),/*#__PURE__*/_jsx(\"section\",{className:\"framer-1lcmzy5\",\"data-framer-name\":\"Testimonials\",children:/*#__PURE__*/_jsxs(\"div\",{className:\"framer-8qw2h0\",\"data-framer-name\":\"Container\",children:[/*#__PURE__*/_jsxs(\"div\",{className:\"framer-628hgw\",\"data-framer-name\":\"Title\",children:[/*#__PURE__*/_jsx(ComponentViewportProvider,{height:36,children:/*#__PURE__*/_jsx(Container,{className:\"framer-1iwyfnp-container\",nodeId:\"qkkotjteW\",scopeId:\"augiA20Il\",children:/*#__PURE__*/_jsx(Tag,{height:\"100%\",id:\"qkkotjteW\",il_iZEJqM:\"StarFour\",layoutId:\"qkkotjteW\",qUO9ZFWz7:false,s8eF8ARLI:\"Testimonials\",width:\"100%\"})})}),/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(\"h2\",{className:\"framer-styles-preset-bjb6tn\",\"data-styles-preset\":\"kxN7gAslB\",children:\"Kind words from our clients\"})}),className:\"framer-18bwznl\",fonts:[\"Inter\"],verticalAlignment:\"top\",withExternalLayout:true}),/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(\"p\",{className:\"framer-styles-preset-f8bv20\",\"data-styles-preset\":\"IZpeieEjn\",style:{\"--framer-text-alignment\":\"center\"},children:\"Success stories of different clients in various industries.\"})}),className:\"framer-hyezov\",fonts:[\"Inter\"],verticalAlignment:\"top\",withExternalLayout:true})]}),/*#__PURE__*/_jsx(\"div\",{className:\"framer-os1b9\",\"data-framer-name\":\"Ticker\",children:/*#__PURE__*/_jsx(PropertyOverrides,{breakpoint:baseVariant,overrides:{cGbgDtuOd:{width:`calc(min(${componentViewport?.width||\"100vw\"}, 1440px) - 40px)`},VAQyyE6Cz:{width:`max(min(max(${componentViewport?.width||\"100vw\"}, 1px), 1440px) - 80px, 1px)`}},children:/*#__PURE__*/_jsx(ComponentViewportProvider,{height:360,width:`max(min(max(${componentViewport?.width||\"100vw\"}, 1px), 1440px) - 160px, 1px)`,children:/*#__PURE__*/_jsx(Container,{className:\"framer-1ll86vg-container\",nodeId:\"QT4373Zef\",scopeId:\"augiA20Il\",children:/*#__PURE__*/_jsx(PropertyOverrides,{breakpoint:baseVariant,overrides:{cGbgDtuOd:{style:{width:\"100%\"},variant:\"YssOiW_RH\"}},children:/*#__PURE__*/_jsx(TickerTestimonials,{amp5j9r0L:60,height:\"100%\",id:\"QT4373Zef\",layoutId:\"QT4373Zef\",style:{height:\"100%\",width:\"100%\"},variant:\"Gh7EOXktC\",width:\"100%\"})})})})})})]})}),/*#__PURE__*/_jsx(\"section\",{className:\"framer-1lq0nk0\",\"data-framer-name\":\"FAQs\",id:elementId5,ref:ref4,children:/*#__PURE__*/_jsxs(\"div\",{className:\"framer-sto16n\",\"data-framer-name\":\"Container\",children:[/*#__PURE__*/_jsxs(\"div\",{className:\"framer-5wgkey\",\"data-framer-name\":\"Title\",children:[/*#__PURE__*/_jsx(ComponentViewportProvider,{height:36,children:/*#__PURE__*/_jsx(Container,{className:\"framer-4ldj3c-container\",nodeId:\"qeo_E9EN3\",scopeId:\"augiA20Il\",children:/*#__PURE__*/_jsx(Tag,{height:\"100%\",id:\"qeo_E9EN3\",il_iZEJqM:\"StarFour\",layoutId:\"qeo_E9EN3\",qUO9ZFWz7:false,s8eF8ARLI:\"FAQs\",width:\"100%\"})})}),/*#__PURE__*/_jsx(PropertyOverrides,{breakpoint:baseVariant,overrides:{cGbgDtuOd:{children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(\"h2\",{className:\"framer-styles-preset-bjb6tn\",\"data-styles-preset\":\"kxN7gAslB\",style:{\"--framer-text-alignment\":\"center\"},children:\"Frequently asked questions\"})})}},children:/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(\"h2\",{className:\"framer-styles-preset-bjb6tn\",\"data-styles-preset\":\"kxN7gAslB\",style:{\"--framer-text-alignment\":\"left\"},children:\"Frequently asked questions\"})}),className:\"framer-11rdecb\",fonts:[\"Inter\"],verticalAlignment:\"top\",withExternalLayout:true})})]}),/*#__PURE__*/_jsx(\"div\",{className:\"framer-741jnq\",\"data-framer-name\":\"Questions\",children:/*#__PURE__*/_jsx(PropertyOverrides,{breakpoint:baseVariant,overrides:{cGbgDtuOd:{width:`min(min(${componentViewport?.width||\"100vw\"}, 1440px) - 40px, 800px)`},VAQyyE6Cz:{width:`min(max((min(max(${componentViewport?.width||\"100vw\"}, 1px), 1440px) - 144px) * 0.5455, 1px), 800px)`}},children:/*#__PURE__*/_jsx(ComponentViewportProvider,{height:350,width:`min(max((min(max(${componentViewport?.width||\"100vw\"}, 1px), 1440px) - 224px) * 0.5455, 1px), 800px)`,children:/*#__PURE__*/_jsx(Container,{className:\"framer-1urhyie-container\",nodeId:\"N_vR2PZxB\",scopeId:\"augiA20Il\",children:/*#__PURE__*/_jsx(FAQsSection,{height:\"100%\",id:\"N_vR2PZxB\",layoutId:\"N_vR2PZxB\",style:{width:\"100%\"},width:\"100%\"})})})})})]})}),/*#__PURE__*/_jsx(\"section\",{className:\"framer-uwrh3g\",\"data-framer-name\":\"Contact\",id:elementId6,ref:ref5,children:/*#__PURE__*/_jsxs(\"div\",{className:\"framer-81zxly\",\"data-framer-name\":\"Container\",children:[/*#__PURE__*/_jsxs(\"div\",{className:\"framer-1r98wcj\",\"data-framer-name\":\"Title\",children:[/*#__PURE__*/_jsx(ComponentViewportProvider,{height:36,children:/*#__PURE__*/_jsx(Container,{className:\"framer-1b0y1gj-container\",nodeId:\"XUZAhwIfb\",scopeId:\"augiA20Il\",children:/*#__PURE__*/_jsx(Tag,{height:\"100%\",id:\"XUZAhwIfb\",il_iZEJqM:\"StarFour\",layoutId:\"XUZAhwIfb\",qUO9ZFWz7:false,s8eF8ARLI:\"Contact\",width:\"100%\"})})}),/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(\"h2\",{className:\"framer-styles-preset-bjb6tn\",\"data-styles-preset\":\"kxN7gAslB\",children:\"Get in touch\"})}),className:\"framer-1xbx2id\",fonts:[\"Inter\"],verticalAlignment:\"top\",withExternalLayout:true}),/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(\"p\",{className:\"framer-styles-preset-f8bv20\",\"data-styles-preset\":\"IZpeieEjn\",style:{\"--framer-text-alignment\":\"center\",\"--framer-text-color\":\"var(--token-71ea3e47-bcbd-4707-9061-859b6588ce9a, rgb(105, 105, 105))\"},children:\"Have questions about our services or ready to transform your business with AI? We're here to help!\"})}),className:\"framer-98shdd\",fonts:[\"Inter\"],verticalAlignment:\"top\",withExternalLayout:true})]}),/*#__PURE__*/_jsx(\"div\",{className:\"framer-zm8aju\",\"data-framer-name\":\"Info\",children:/*#__PURE__*/_jsxs(\"div\",{className:\"framer-1dt59tu\",\"data-framer-name\":\"Content\",children:[/*#__PURE__*/_jsx(FormContainer,{action:\"https://api.framer.com/forms/v1/forms/56584ed2-6068-4cb5-8954-deafe7337f3b/submit\",className:\"framer-wy10bc\",nodeId:\"lumuXLF21\",children:formState=>/*#__PURE__*/_jsxs(_Fragment,{children:[/*#__PURE__*/_jsxs(\"div\",{className:\"framer-i8iq3f\",children:[/*#__PURE__*/_jsx(\"label\",{className:\"framer-yqh9lp\",children:/*#__PURE__*/_jsx(FormPlainTextInput,{className:\"framer-w1sei6\",inputName:\"Name\",placeholder:\"Name\",required:true,type:\"text\"})}),/*#__PURE__*/_jsx(\"label\",{className:\"framer-13yh80w\",children:/*#__PURE__*/_jsx(FormPlainTextInput,{className:\"framer-2ng5kz\",inputName:\"Email\",placeholder:\"Email\",required:true,type:\"email\"})})]}),/*#__PURE__*/_jsx(\"label\",{className:\"framer-1yo43ln\",children:/*#__PURE__*/_jsx(FormPlainTextInput,{className:\"framer-l3r5k1\",inputName:\"Message\",placeholder:\"Message\",required:true,type:\"textarea\"})}),/*#__PURE__*/_jsx(PropertyOverrides,{breakpoint:baseVariant,overrides:{cGbgDtuOd:{width:`calc(max(min(${componentViewport?.width||\"100vw\"}, 1440px) - 42px, 1px) - 24px)`},VAQyyE6Cz:{width:`max((max(min(max(${componentViewport?.width||\"100vw\"}, 1px), 1440px) - 82px, 1px) - 72px) / 2, 1px)`}},children:/*#__PURE__*/_jsx(ComponentViewportProvider,{height:44,width:`max((max(min(max(${componentViewport?.width||\"100vw\"}, 1px), 1440px) - 162px, 1px) - 72px) / 2, 1px)`,children:/*#__PURE__*/_jsx(Container,{className:\"framer-mblhgs-container\",nodeId:\"WWOSqLhnk\",scopeId:\"augiA20Il\",children:/*#__PURE__*/_jsx(ButtonsForms,{AJEDie39b:\"Send message\",height:\"100%\",id:\"WWOSqLhnk\",layoutId:\"WWOSqLhnk\",style:{height:\"100%\",width:\"100%\"},type:\"submit\",variant:formVariants(formState,{error:\"Ez5Mhwcb9\",pending:\"MvvbIajIU\",success:\"Xh9ZzZ9GL\"},\"HAqQSk4Qw\"),width:\"100%\"})})})})]})}),/*#__PURE__*/_jsxs(\"div\",{className:\"framer-1i3m6tk\",\"data-border\":true,\"data-framer-name\":\"Get in touch\",children:[/*#__PURE__*/_jsxs(\"div\",{className:\"framer-n2muzz\",\"data-framer-name\":\"Email\",children:[/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(\"p\",{className:\"framer-styles-preset-f8bv20\",\"data-styles-preset\":\"IZpeieEjn\",children:\"Email:\"})}),className:\"framer-dxtgxf\",fonts:[\"Inter\"],verticalAlignment:\"top\",withExternalLayout:true}),/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(\"h3\",{className:\"framer-styles-preset-5a4759\",\"data-styles-preset\":\"vKGxKv6WT\",children:/*#__PURE__*/_jsx(Link,{href:\"mailto:info@noctis.com\",motionChild:true,nodeId:\"ay2XyhaRq\",openInNewTab:true,scopeId:\"augiA20Il\",smoothScroll:false,children:/*#__PURE__*/_jsx(motion.a,{className:\"framer-styles-preset-1t2subd\",\"data-styles-preset\":\"pcoDLsO59\",children:\"info@bit4bitsolutions.com\"})})})}),className:\"framer-uvsq65\",fonts:[\"Inter\"],verticalAlignment:\"top\",withExternalLayout:true})]}),/*#__PURE__*/_jsx(\"div\",{className:\"framer-n6cspb\"}),/*#__PURE__*/_jsx(\"div\",{className:\"framer-5q7lcq\"}),/*#__PURE__*/_jsxs(\"div\",{className:\"framer-1vk16j4\",\"data-framer-name\":\"Address\",children:[/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(\"p\",{className:\"framer-styles-preset-f8bv20\",\"data-styles-preset\":\"IZpeieEjn\",children:\"Address:\"})}),className:\"framer-1s8mwag\",fonts:[\"Inter\"],verticalAlignment:\"top\",withExternalLayout:true}),/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(\"p\",{className:\"framer-styles-preset-f8bv20\",\"data-styles-preset\":\"IZpeieEjn\",style:{\"--framer-text-alignment\":\"left\",\"--framer-text-color\":\"var(--token-8e562c71-b86d-432e-ad04-cd3f03e73a71, rgb(255, 255, 255))\"},children:\"Lilleakerveien 31, Oslo, Norway\"})}),className:\"framer-gi6iny\",fonts:[\"Inter\"],verticalAlignment:\"top\",withExternalLayout:true})]}),/*#__PURE__*/_jsx(\"div\",{className:\"framer-19pzwua\"}),/*#__PURE__*/_jsx(\"div\",{className:\"framer-qynh05\",\"data-framer-name\":\"Socials\"})]})]})})]})}),/*#__PURE__*/_jsx(\"section\",{className:\"framer-91xm11\",\"data-framer-name\":\"Blog\",children:/*#__PURE__*/_jsxs(\"div\",{className:\"framer-1x9jx1v\",\"data-framer-name\":\"Container\",children:[/*#__PURE__*/_jsxs(\"div\",{className:\"framer-1nlzkvt\",\"data-framer-name\":\"Title\",children:[/*#__PURE__*/_jsx(ComponentViewportProvider,{height:36,children:/*#__PURE__*/_jsx(Container,{className:\"framer-1ih93yh-container\",nodeId:\"vMtm_by5U\",scopeId:\"augiA20Il\",children:/*#__PURE__*/_jsx(Tag,{height:\"100%\",id:\"vMtm_by5U\",il_iZEJqM:\"StarFour\",layoutId:\"vMtm_by5U\",qUO9ZFWz7:false,s8eF8ARLI:\"Blog\",width:\"100%\"})})}),/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(\"h2\",{className:\"framer-styles-preset-bjb6tn\",\"data-styles-preset\":\"kxN7gAslB\",children:\"Recent articles from our blog\"})}),className:\"framer-1t5n3u\",fonts:[\"Inter\"],verticalAlignment:\"top\",withExternalLayout:true}),/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(\"p\",{className:\"framer-styles-preset-f8bv20\",\"data-styles-preset\":\"IZpeieEjn\",style:{\"--framer-text-alignment\":\"center\",\"--framer-text-color\":\"var(--token-71ea3e47-bcbd-4707-9061-859b6588ce9a, rgb(105, 105, 105))\"},children:\"Stay ahead of the curve with the latest trends, tips, and innovations in AI and automation.\"})}),className:\"framer-yrsw3p\",fonts:[\"Inter\"],verticalAlignment:\"top\",withExternalLayout:true})]}),/*#__PURE__*/_jsx(\"div\",{className:\"framer-13uj68y\",children:/*#__PURE__*/_jsx(ChildrenCanSuspend,{children:/*#__PURE__*/_jsx(PropertyOverrides,{breakpoint:baseVariant,overrides:{VAQyyE6Cz:{query:{from:{alias:\"AoeO9qo8h\",data:Blog,type:\"Collection\"},limit:{type:\"LiteralValue\",value:4},select:[{collection:\"AoeO9qo8h\",name:\"VTQPeE7OZ\",type:\"Identifier\"},{collection:\"AoeO9qo8h\",name:\"AKqRwGdMk\",type:\"Identifier\"},{collection:\"AoeO9qo8h\",name:\"T7EsA58zY\",type:\"Identifier\"},{collection:\"AoeO9qo8h\",name:\"t2KOsoS3W\",type:\"Identifier\"},{collection:\"AoeO9qo8h\",name:\"id\",type:\"Identifier\"}]}}},children:/*#__PURE__*/_jsx(QueryData1,{query:{from:{alias:\"AoeO9qo8h\",data:Blog,type:\"Collection\"},limit:{type:\"LiteralValue\",value:3},select:[{collection:\"AoeO9qo8h\",name:\"VTQPeE7OZ\",type:\"Identifier\"},{collection:\"AoeO9qo8h\",name:\"AKqRwGdMk\",type:\"Identifier\"},{collection:\"AoeO9qo8h\",name:\"T7EsA58zY\",type:\"Identifier\"},{collection:\"AoeO9qo8h\",name:\"t2KOsoS3W\",type:\"Identifier\"},{collection:\"AoeO9qo8h\",name:\"id\",type:\"Identifier\"}]},children:(collection1,paginationInfo1,loadMore1)=>/*#__PURE__*/_jsx(_Fragment,{children:collection1?.map(({AKqRwGdMk:AKqRwGdMkAoeO9qo8h,id:idAoeO9qo8h,t2KOsoS3W:t2KOsoS3WAoeO9qo8h,T7EsA58zY:T7EsA58zYAoeO9qo8h,VTQPeE7OZ:VTQPeE7OZAoeO9qo8h},index1)=>{VTQPeE7OZAoeO9qo8h??=\"\";t2KOsoS3WAoeO9qo8h??=\"\";return /*#__PURE__*/_jsx(LayoutGroup,{id:`AoeO9qo8h-${idAoeO9qo8h}`,children:/*#__PURE__*/_jsx(PathVariablesContext.Provider,{value:{t2KOsoS3W:t2KOsoS3WAoeO9qo8h},children:/*#__PURE__*/_jsx(ResolveLinks,{links:[{href:{pathVariables:{t2KOsoS3W:t2KOsoS3WAoeO9qo8h},webPageId:\"d5AnbjvmC\"},implicitPathVariables:undefined},{href:{pathVariables:{t2KOsoS3W:t2KOsoS3WAoeO9qo8h},webPageId:\"d5AnbjvmC\"},implicitPathVariables:undefined},{href:{pathVariables:{t2KOsoS3W:t2KOsoS3WAoeO9qo8h},webPageId:\"d5AnbjvmC\"},implicitPathVariables:undefined}],children:resolvedLinks1=>/*#__PURE__*/_jsx(PropertyOverrides,{breakpoint:baseVariant,overrides:{cGbgDtuOd:{width:`calc(min(${componentViewport?.width||\"100vw\"}, 1440px) - 40px)`},VAQyyE6Cz:{width:`max((min(max(${componentViewport?.width||\"100vw\"}, 1px), 1440px) - 104px) / 2, 50px)`}},children:/*#__PURE__*/_jsx(ComponentViewportProvider,{height:342,width:`max((min(max(${componentViewport?.width||\"100vw\"}, 1px), 1440px) - 208px) / 3, 50px)`,children:/*#__PURE__*/_jsx(Container,{className:\"framer-p6hiob-container\",nodeId:\"R18_4guNO\",scopeId:\"augiA20Il\",children:/*#__PURE__*/_jsx(PropertyOverrides,{breakpoint:baseVariant,overrides:{cGbgDtuOd:{lHM6CLGbl:resolvedLinks1[2],style:{width:\"100%\"}},VAQyyE6Cz:{lHM6CLGbl:resolvedLinks1[1]}},children:/*#__PURE__*/_jsx(CardsArticles,{dhmQaw67Q:VTQPeE7OZAoeO9qo8h,height:\"100%\",hRrIvxKlX:toDateString(T7EsA58zYAoeO9qo8h,{dateStyle:\"medium\",locale:\"\"},activeLocaleCode),id:\"R18_4guNO\",layoutId:\"R18_4guNO\",lHM6CLGbl:resolvedLinks1[0],style:{height:\"100%\",width:\"100%\"},width:\"100%\",YhKDzD0FO:toResponsiveImage(AKqRwGdMkAoeO9qo8h)})})})})})})})},idAoeO9qo8h);})})})})})}),/*#__PURE__*/_jsx(ResolveLinks,{links:[{href:{webPageId:\"DvSW2tQe8\"},implicitPathVariables:undefined},{href:{webPageId:\"DvSW2tQe8\"},implicitPathVariables:undefined},{href:{webPageId:\"DvSW2tQe8\"},implicitPathVariables:undefined}],children:resolvedLinks2=>/*#__PURE__*/_jsx(PropertyOverrides,{breakpoint:baseVariant,overrides:{cGbgDtuOd:{width:`calc(min(${componentViewport?.width||\"100vw\"}, 1440px) - 40px)`}},children:/*#__PURE__*/_jsx(ComponentViewportProvider,{height:52,children:/*#__PURE__*/_jsx(Container,{className:\"framer-1bxm5hg-container\",nodeId:\"GqCFkhHOa\",scopeId:\"augiA20Il\",children:/*#__PURE__*/_jsx(PropertyOverrides,{breakpoint:baseVariant,overrides:{cGbgDtuOd:{sfey0iyK_:resolvedLinks2[2],style:{height:\"100%\",width:\"100%\"}},VAQyyE6Cz:{sfey0iyK_:resolvedLinks2[1]}},children:/*#__PURE__*/_jsx(ButtonsSecondary,{Bbrl2mwsl:true,EAvYWKNMt:\"Visit Our Blog\",FzBC_80m1:\"ArrowRight\",height:\"100%\",id:\"GqCFkhHOa\",layoutId:\"GqCFkhHOa\",sfey0iyK_:resolvedLinks2[0],style:{height:\"100%\"},width:\"100%\"})})})})})})]})}),/*#__PURE__*/_jsx(\"section\",{className:\"framer-bncxtn\",\"data-framer-name\":\"Newsletter\",children:/*#__PURE__*/_jsx(\"div\",{className:\"framer-soni84\",\"data-framer-name\":\"Container\",children:/*#__PURE__*/_jsx(PropertyOverrides,{breakpoint:baseVariant,overrides:{cGbgDtuOd:{width:`min(max(min(${componentViewport?.width||\"100vw\"}, 1440px) - 40px, 1px), 900px)`},VAQyyE6Cz:{width:`min(max(min(max(${componentViewport?.width||\"100vw\"}, 1px), 1440px) - 80px, 1px), 900px)`}},children:/*#__PURE__*/_jsx(ComponentViewportProvider,{height:408,width:`min(max(min(max(${componentViewport?.width||\"100vw\"}, 1px), 1440px) - 200px, 1px), 900px)`,children:/*#__PURE__*/_jsx(Container,{className:\"framer-742zi5-container\",nodeId:\"sFK9_ufmB\",scopeId:\"augiA20Il\",children:/*#__PURE__*/_jsx(PropertyOverrides,{breakpoint:baseVariant,overrides:{cGbgDtuOd:{variant:\"ac3cv2rjC\"}},children:/*#__PURE__*/_jsx(NewsleterCTA,{height:\"100%\",id:\"sFK9_ufmB\",layoutId:\"sFK9_ufmB\",style:{maxWidth:\"100%\",width:\"100%\"},variant:\"RRqlIPaiq\",width:\"100%\"})})})})})})}),/*#__PURE__*/_jsx(ComponentViewportProvider,{height:400,width:componentViewport?.width||\"100vw\",children:/*#__PURE__*/_jsx(Container,{className:\"framer-zyhg3n-container\",nodeId:\"Y15NXHEW7\",scopeId:\"augiA20Il\",children:/*#__PURE__*/_jsx(PropertyOverrides,{breakpoint:baseVariant,overrides:{cGbgDtuOd:{variant:\"sccIDfblb\"},VAQyyE6Cz:{variant:\"K2Tc9xORG\"}},children:/*#__PURE__*/_jsx(Footer,{height:\"100%\",id:\"Y15NXHEW7\",layoutId:\"Y15NXHEW7\",style:{width:\"100%\"},v5D2UkHSH:true,variant:\"vHBwk1Yx3\",width:\"100%\"})})})})]}),/*#__PURE__*/_jsx(\"div\",{id:\"overlay\"})]})});});const css=[\"@supports (aspect-ratio: 1) { body { --framer-aspect-ratio-supported: auto; } }\",\".framer-PPSqF.framer-lux5qc, .framer-PPSqF .framer-lux5qc { display: block; }\",\".framer-PPSqF.framer-72rtr7 { align-content: center; align-items: center; background-color: var(--token-7be8625f-297b-4b2a-908d-7056e5d82d0a, #050505); display: flex; flex-direction: column; flex-wrap: nowrap; gap: 0px; height: min-content; justify-content: flex-start; overflow: visible; padding: 0px; position: relative; width: 1200px; }\",\".framer-PPSqF .framer-1kdxca4-container { flex: none; height: auto; left: 0px; position: fixed; right: 0px; top: 0px; z-index: 10; }\",\".framer-PPSqF .framer-1j8bd08, .framer-PPSqF .framer-oi1wxq, .framer-PPSqF .framer-e10l5t, .framer-PPSqF .framer-24rt4a, .framer-PPSqF .framer-sr3pyv, .framer-PPSqF .framer-1lq0nk0, .framer-PPSqF .framer-uwrh3g { 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; scroll-margin-top: 40px; width: 100%; }\",\".framer-PPSqF .framer-1nvg4dq { align-content: center; align-items: center; display: flex; flex: 1 0 0px; flex-direction: column; flex-wrap: nowrap; gap: 64px; height: 1487px; justify-content: center; overflow: visible; padding: 200px 80px 120px 80px; position: relative; width: 1px; }\",\".framer-PPSqF .framer-12nyfc4 { -webkit-filter: hue-rotate(320deg); -webkit-mask: linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.5) 50%, rgba(0, 0, 0, 0) 100%) add; align-content: center; align-items: center; bottom: 700px; display: flex; filter: hue-rotate(320deg); flex: none; flex-direction: row; flex-wrap: nowrap; gap: 0px; justify-content: center; left: 0px; mask: linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.5) 50%, rgba(0, 0, 0, 0) 100%) add; overflow: hidden; padding: 0px; position: absolute; right: 0px; top: 0px; z-index: 1; }\",\".framer-PPSqF .framer-le3r8y-container, .framer-PPSqF .framer-1laiqpv-container, .framer-PPSqF .framer-mzp375-container { flex: 1 0 0px; height: 100%; position: relative; width: 1px; }\",\".framer-PPSqF .framer-tzstf5, .framer-PPSqF .framer-1c2vbcv { bottom: 0px; flex: none; left: 0px; overflow: hidden; position: absolute; right: 0px; top: 0px; z-index: 1; }\",\".framer-PPSqF .framer-15i4ic3 { align-content: center; align-items: center; display: flex; flex: none; flex-direction: column; flex-wrap: nowrap; gap: 24px; height: min-content; justify-content: center; overflow: visible; padding: 0px; position: relative; width: 100%; z-index: 2; }\",\".framer-PPSqF .framer-c73a7d, .framer-PPSqF .framer-r4om2g, .framer-PPSqF .framer-1wcamqv, .framer-PPSqF .framer-ts00rz, .framer-PPSqF .framer-1ys01me, .framer-PPSqF .framer-628hgw, .framer-PPSqF .framer-1r98wcj, .framer-PPSqF .framer-1nlzkvt { align-content: center; align-items: center; display: flex; flex: none; flex-direction: column; flex-wrap: nowrap; gap: 24px; height: min-content; justify-content: center; overflow: visible; padding: 0px; position: relative; width: 100%; }\",\".framer-PPSqF .framer-tq7w78-container, .framer-PPSqF .framer-i2xif-container, .framer-PPSqF .framer-1o19cu6-container, .framer-PPSqF .framer-ca0soe-container, .framer-PPSqF .framer-1f99pmm-container, .framer-PPSqF .framer-1l86fh3-container, .framer-PPSqF .framer-1iwyfnp-container, .framer-PPSqF .framer-4ldj3c-container, .framer-PPSqF .framer-1b0y1gj-container, .framer-PPSqF .framer-1ih93yh-container { flex: none; height: auto; position: relative; width: auto; }\",\".framer-PPSqF .framer-1npa1ux { --framer-link-text-color: #0099ff; --framer-link-text-decoration: underline; flex: none; height: auto; max-width: 1000px; position: relative; white-space: pre-wrap; width: auto; word-break: break-word; word-wrap: break-word; }\",\".framer-PPSqF .framer-ca5bh8 { --framer-link-text-color: #0099ff; --framer-link-text-decoration: underline; flex: none; height: auto; max-width: 520px; position: relative; white-space: pre-wrap; width: auto; word-break: break-word; word-wrap: break-word; }\",\".framer-PPSqF .framer-d0fwyg { align-content: center; align-items: center; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; gap: 16px; height: min-content; justify-content: center; overflow: visible; padding: 16px 0px 0px 0px; position: relative; width: 100%; }\",\".framer-PPSqF .framer-1e91ncl-container, .framer-PPSqF .framer-1sejwci-container, .framer-PPSqF .framer-1bxm5hg-container { flex: none; height: 52px; position: relative; width: auto; }\",\".framer-PPSqF .framer-1gywcml { align-content: center; align-items: center; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; gap: 8px; height: min-content; justify-content: center; overflow: hidden; padding: 0px; position: relative; width: 100%; }\",\".framer-PPSqF .framer-61e8s7-container { aspect-ratio: 1.7777777777777777 / 1; flex: 1 0 0px; height: var(--framer-aspect-ratio-supported, 478px); max-width: 850px; position: relative; width: 1px; z-index: 1; }\",\".framer-PPSqF .framer-cv1ks2, .framer-PPSqF .framer-ysezwn, .framer-PPSqF .framer-aa06mo { align-content: center; align-items: center; display: flex; flex: 1 0 0px; flex-direction: column; flex-wrap: nowrap; gap: 64px; height: min-content; justify-content: center; max-width: 1440px; overflow: hidden; padding: 120px 80px 120px 80px; position: relative; width: 1px; }\",\".framer-PPSqF .framer-1s0l6n0, .framer-PPSqF .framer-1ialacx, .framer-PPSqF .framer-1on0hpd, .framer-PPSqF .framer-16jagtp, .framer-PPSqF .framer-15udb9h, .framer-PPSqF .framer-18bwznl, .framer-PPSqF .framer-11rdecb, .framer-PPSqF .framer-1xbx2id, .framer-PPSqF .framer-1t5n3u { --framer-link-text-color: #0099ff; --framer-link-text-decoration: underline; flex: none; height: auto; max-width: 800px; position: relative; white-space: pre-wrap; width: 100%; word-break: break-word; word-wrap: break-word; }\",\".framer-PPSqF .framer-jzpvdp, .framer-PPSqF .framer-1fye7hq, .framer-PPSqF .framer-1vmj9ir, .framer-PPSqF .framer-oqa9fr, .framer-PPSqF .framer-hyezov, .framer-PPSqF .framer-98shdd, .framer-PPSqF .framer-yrsw3p { --framer-link-text-color: #0099ff; --framer-link-text-decoration: underline; --framer-text-wrap-override: balance; flex: none; height: auto; max-width: 520px; position: relative; width: 100%; }\",\".framer-PPSqF .framer-1smston { display: grid; flex: none; gap: 24px; grid-auto-rows: minmax(0, 1fr); grid-template-columns: repeat(3, minmax(50px, 1fr)); grid-template-rows: repeat(1, minmax(0, 1fr)); height: min-content; justify-content: center; overflow: hidden; padding: 0px; position: relative; width: 100%; }\",\".framer-PPSqF .framer-1cdn9pu-container, .framer-PPSqF .framer-sqsggs-container, .framer-PPSqF .framer-7vba7p-container, .framer-PPSqF .framer-p6hiob-container { align-self: start; flex: none; height: 100%; justify-self: start; position: relative; width: 100%; }\",\".framer-PPSqF .framer-2mdr1b, .framer-PPSqF .framer-os1b9 { align-content: center; align-items: center; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; gap: 24px; height: min-content; justify-content: center; overflow: visible; padding: 0px; position: relative; width: 100%; }\",\".framer-PPSqF .framer-u1ma3w-container { flex: 1.4 0 0px; height: 440px; position: relative; width: 1px; }\",\".framer-PPSqF .framer-4xsmdk-container { flex: 1 0 0px; height: 440px; position: relative; width: 1px; }\",\".framer-PPSqF .framer-paj11d { align-content: center; align-items: center; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; gap: 24px; height: min-content; justify-content: center; overflow: hidden; padding: 0px; position: relative; width: 100%; }\",\".framer-PPSqF .framer-ngolec-container { flex: 1 0 0px; height: 420px; position: relative; width: 1px; }\",\".framer-PPSqF .framer-1n69hrj-container { flex: 1.4 0 0px; height: 420px; position: relative; width: 1px; }\",\".framer-PPSqF .framer-1llmauj { align-content: center; align-items: center; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; gap: 10px; height: min-content; justify-content: center; overflow: hidden; padding: 0px; position: relative; width: 100%; }\",\".framer-PPSqF .framer-53d7f9 { display: grid; flex: none; gap: 16px; grid-auto-rows: minmax(0, 1fr); grid-template-columns: repeat(3, minmax(50px, 1fr)); grid-template-rows: repeat(2, minmax(0, 1fr)); height: min-content; justify-content: center; overflow: hidden; padding: 0px; position: relative; width: 100%; }\",\".framer-PPSqF .framer-1nqhb14-container, .framer-PPSqF .framer-1dzc0nc-container, .framer-PPSqF .framer-i6877c-container, .framer-PPSqF .framer-dvv7q3-container, .framer-PPSqF .framer-8y16as-container, .framer-PPSqF .framer-zdfxe9-container { align-self: start; flex: none; height: 100%; justify-self: start; position: relative; width: 100%; z-index: 1; }\",\".framer-PPSqF .framer-1ebbqua { -webkit-filter: hue-rotate(320deg); -webkit-mask: radial-gradient(50% 57.99999999999999% at 50% 50%, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0) 100%) add; align-content: center; align-items: center; bottom: 80px; display: flex; filter: hue-rotate(320deg); flex: none; flex-direction: row; flex-wrap: nowrap; gap: 0px; justify-content: center; left: 0px; mask: radial-gradient(50% 57.99999999999999% at 50% 50%, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0) 100%) add; overflow: hidden; padding: 0px; position: absolute; right: 0px; top: 310px; z-index: 0; }\",\".framer-PPSqF .framer-mv0i1v, .framer-PPSqF .framer-sto16n { align-content: flex-start; align-items: flex-start; display: flex; flex: 1 0 0px; flex-direction: row; flex-wrap: nowrap; gap: 64px; height: min-content; justify-content: center; max-width: 1440px; overflow: visible; padding: 120px 80px 120px 80px; position: relative; width: 1px; }\",\".framer-PPSqF .framer-1xgcamn { align-content: flex-start; align-items: flex-start; display: flex; flex: 1 0 0px; flex-direction: column; flex-wrap: nowrap; gap: 24px; height: min-content; justify-content: center; overflow: visible; padding: 0px; position: sticky; top: 160px; width: 1px; z-index: 1; }\",\".framer-PPSqF .framer-1xviz5z { align-content: center; align-items: center; display: flex; flex: 1 0 0px; flex-direction: column; flex-wrap: nowrap; gap: 32px; height: min-content; justify-content: center; overflow: visible; padding: 0px; position: relative; width: 1px; }\",\".framer-PPSqF .framer-1k77o12 { align-content: center; align-items: center; display: flex; flex: none; flex-direction: column; flex-wrap: nowrap; gap: 20px; height: min-content; justify-content: flex-start; padding: 0px; position: relative; width: 100%; }\",\".framer-PPSqF .framer-s494t-container { flex: none; height: auto; position: relative; width: 100%; z-index: 1; }\",\".framer-PPSqF .framer-u6rt57-container { flex: none; height: 52px; position: relative; width: 180px; }\",\".framer-PPSqF .framer-2hwv7f, .framer-PPSqF .framer-81zxly, .framer-PPSqF .framer-1x9jx1v { align-content: center; align-items: center; display: flex; flex: 1 0 0px; flex-direction: column; flex-wrap: nowrap; gap: 64px; height: min-content; justify-content: center; max-width: 1440px; overflow: visible; padding: 120px 80px 120px 80px; position: relative; width: 1px; }\",\".framer-PPSqF .framer-14v9mas { align-content: center; align-items: center; display: flex; flex: none; flex-direction: column; flex-wrap: nowrap; gap: 24px; height: min-content; justify-content: center; overflow: visible; padding: 0px; position: relative; width: 100%; z-index: 1; }\",'.framer-PPSqF .framer-17httsr { align-content: center; align-items: center; background: radial-gradient(50% 50% at 50% 50%, var(--token-b065af26-ed04-4754-81f1-004a104fdd7f, rgba(0, 24, 94, 0.3)) /* {\"name\":\"Dark blue 30%\"} */ 0%, var(--token-7be8625f-297b-4b2a-908d-7056e5d82d0a, rgb(5, 5, 5)) /* {\"name\":\"Black\"} */ 100%); display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; gap: 24px; height: min-content; justify-content: center; overflow: visible; padding: 0px; position: relative; width: 100%; z-index: 1; }',\".framer-PPSqF .framer-1m84bxb-container, .framer-PPSqF .framer-1whlnnw-container, .framer-PPSqF .framer-19rfvpk-container { flex: 1 0 0px; height: auto; max-width: 500px; position: relative; width: 1px; z-index: 1; }\",\".framer-PPSqF .framer-143g7t9 { -webkit-filter: hue-rotate(320deg); -webkit-mask: radial-gradient(50% 50% at 50% 50%, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0) 100%) add; align-content: center; align-items: center; bottom: -48px; display: flex; filter: hue-rotate(320deg); flex: none; flex-direction: row; flex-wrap: nowrap; gap: 0px; justify-content: center; left: -80px; mask: radial-gradient(50% 50% at 50% 50%, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0) 100%) add; overflow: hidden; padding: 0px; position: absolute; right: -80px; top: -116px; z-index: 0; }\",\".framer-PPSqF .framer-1lcmzy5, .framer-PPSqF .framer-91xm11, .framer-PPSqF .framer-bncxtn { align-content: center; align-items: center; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; gap: 10px; height: min-content; justify-content: center; overflow: visible; padding: 0px; position: relative; width: 100%; }\",\".framer-PPSqF .framer-8qw2h0 { align-content: center; align-items: center; display: flex; flex: 1 0 0px; flex-direction: column; flex-wrap: nowrap; gap: 64px; height: min-content; justify-content: center; max-width: 1440px; overflow: visible; padding: 120px 80px 100px 80px; position: relative; width: 1px; }\",\".framer-PPSqF .framer-1ll86vg-container { flex: 1 0 0px; height: 360px; position: relative; width: 1px; }\",\".framer-PPSqF .framer-5wgkey { align-content: flex-start; align-items: flex-start; display: flex; flex: 1 0 0px; flex-direction: column; flex-wrap: nowrap; gap: 24px; height: min-content; justify-content: center; overflow: visible; padding: 0px; position: relative; width: 1px; z-index: 1; }\",\".framer-PPSqF .framer-741jnq { align-content: center; align-items: center; display: flex; flex: 1.2 0 0px; flex-direction: column; flex-wrap: nowrap; gap: 16px; height: min-content; justify-content: center; max-width: 800px; overflow: visible; padding: 0px; position: relative; width: 1px; }\",\".framer-PPSqF .framer-1urhyie-container, .framer-PPSqF .framer-zyhg3n-container { flex: none; height: auto; position: relative; width: 100%; }\",'.framer-PPSqF .framer-zm8aju { align-content: center; align-items: center; background: radial-gradient(50% 50% at 50% 50%, var(--token-ab8a1628-3695-47a5-8496-32bf3ecfdf66, #153aa1) /* {\"name\":\"Blue\"} */ 0%, var(--token-17d94287-c97e-4602-9cf7-4d2036e50e01, rgb(0, 24, 94)) /* {\"name\":\"Dark blue\"} */ 100%); border-bottom-left-radius: 12px; border-bottom-right-radius: 12px; border-top-left-radius: 12px; border-top-right-radius: 12px; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; gap: 10px; height: min-content; justify-content: center; overflow: hidden; padding: 1px; position: relative; width: 100%; will-change: var(--framer-will-change-override, transform); }','.framer-PPSqF .framer-1dt59tu { align-content: flex-start; align-items: flex-start; background: linear-gradient(130deg, var(--token-f5d2506d-9c8c-423b-a07c-4bdb7316df89, rgba(5, 5, 5, 0.75)) /* {\"name\":\"Black 75%\"} */ 0%, var(--token-7be8625f-297b-4b2a-908d-7056e5d82d0a, rgb(5, 5, 5)) /* {\"name\":\"Black\"} */ 120%); border-bottom-left-radius: 11px; border-bottom-right-radius: 11px; border-top-left-radius: 11px; border-top-right-radius: 11px; display: flex; flex: 1 0 0px; flex-direction: row; flex-wrap: nowrap; gap: 24px; height: min-content; justify-content: flex-start; overflow: hidden; padding: 24px; position: relative; width: 1px; will-change: var(--framer-will-change-override, transform); z-index: 1; }',\".framer-PPSqF .framer-wy10bc { 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: hidden; padding: 0px; position: relative; width: 1px; }\",\".framer-PPSqF .framer-i8iq3f { align-content: center; align-items: center; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; gap: 12px; height: min-content; justify-content: center; overflow: visible; padding: 0px; position: relative; width: 100%; }\",\".framer-PPSqF .framer-yqh9lp, .framer-PPSqF .framer-13yh80w { align-content: flex-start; align-items: flex-start; display: flex; flex: 1 0 0px; flex-direction: column; flex-wrap: nowrap; gap: 10px; height: min-content; justify-content: flex-start; padding: 0px; position: relative; width: 1px; }\",'.framer-PPSqF .framer-w1sei6 { --framer-input-background: rgba(5, 5, 5, 0.5); --framer-input-border-bottom-width: 1px; --framer-input-border-color: var(--token-ef727c83-0227-4900-b478-e0fde1daabc5, #262626); --framer-input-border-left-width: 1px; --framer-input-border-radius-bottom-left: 10px; --framer-input-border-radius-bottom-right: 10px; --framer-input-border-radius-top-left: 10px; --framer-input-border-radius-top-right: 10px; --framer-input-border-right-width: 1px; --framer-input-border-style: solid; --framer-input-border-top-width: 1px; --framer-input-focused-border-color: var(--token-71ea3e47-bcbd-4707-9061-859b6588ce9a, #696969); --framer-input-focused-border-style: solid; --framer-input-focused-border-width: 1px; --framer-input-font-color: var(--token-8e562c71-b86d-432e-ad04-cd3f03e73a71, #ffffff); --framer-input-font-family: \"Inter\"; --framer-input-font-letter-spacing: 0em; --framer-input-font-line-height: 1.2em; --framer-input-font-size: 14px; --framer-input-font-weight: 400; --framer-input-icon-color: #999999; --framer-input-padding: 12px; --framer-input-placeholder-color: var(--token-71ea3e47-bcbd-4707-9061-859b6588ce9a, #696969); flex: none; height: 45px; position: relative; width: 100%; }','.framer-PPSqF .framer-2ng5kz { --framer-input-background: rgba(5, 5, 5, 0.5); --framer-input-border-bottom-width: 1px; --framer-input-border-color: var(--token-ef727c83-0227-4900-b478-e0fde1daabc5, #262626); --framer-input-border-left-width: 1px; --framer-input-border-radius-bottom-left: 10px; --framer-input-border-radius-bottom-right: 10px; --framer-input-border-radius-top-left: 10px; --framer-input-border-radius-top-right: 10px; --framer-input-border-right-width: 1px; --framer-input-border-style: solid; --framer-input-border-top-width: 1px; --framer-input-focused-border-color: var(--token-71ea3e47-bcbd-4707-9061-859b6588ce9a, #696969); --framer-input-focused-border-style: solid; --framer-input-focused-border-width: 1px; --framer-input-font-color: var(--token-8e562c71-b86d-432e-ad04-cd3f03e73a71, #ffffff); --framer-input-font-family: \"Inter\"; --framer-input-font-letter-spacing: 0em; --framer-input-font-line-height: 1.2em; --framer-input-font-size: 14px; --framer-input-font-weight: 400; --framer-input-icon-color: #999999; --framer-input-padding: 12px; --framer-input-placeholder-color: var(--token-71ea3e47-bcbd-4707-9061-859b6588ce9a, #696969); flex: none; height: 44px; position: relative; width: 100%; }',\".framer-PPSqF .framer-1yo43ln { align-content: flex-start; align-items: flex-start; display: flex; flex: none; flex-direction: column; flex-wrap: nowrap; gap: 10px; height: min-content; justify-content: flex-start; padding: 0px; position: relative; width: 100%; }\",'.framer-PPSqF .framer-l3r5k1 { --framer-input-background: rgba(5, 5, 5, 0.5); --framer-input-border-bottom-width: 1px; --framer-input-border-color: var(--token-ef727c83-0227-4900-b478-e0fde1daabc5, #262626); --framer-input-border-left-width: 1px; --framer-input-border-radius-bottom-left: 10px; --framer-input-border-radius-bottom-right: 10px; --framer-input-border-radius-top-left: 10px; --framer-input-border-radius-top-right: 10px; --framer-input-border-right-width: 1px; --framer-input-border-style: solid; --framer-input-border-top-width: 1px; --framer-input-focused-border-color: var(--token-71ea3e47-bcbd-4707-9061-859b6588ce9a, #696969); --framer-input-focused-border-style: solid; --framer-input-focused-border-width: 1px; --framer-input-font-color: var(--token-8e562c71-b86d-432e-ad04-cd3f03e73a71, #ffffff); --framer-input-font-family: \"Inter\"; --framer-input-font-letter-spacing: 0em; --framer-input-font-line-height: 1.2em; --framer-input-font-size: 14px; --framer-input-font-weight: 400; --framer-input-icon-color: #999999; --framer-input-padding: 12px; --framer-input-placeholder-color: var(--token-71ea3e47-bcbd-4707-9061-859b6588ce9a, #696969); --framer-input-wrapper-height: auto; --framer-textarea-resize: vertical; flex: none; height: auto; min-height: 246px; position: relative; width: 100%; }',\".framer-PPSqF .framer-mblhgs-container { flex: none; height: 44px; position: relative; width: 100%; }\",\".framer-PPSqF .framer-1i3m6tk { --border-bottom-width: 1px; --border-color: var(--token-b065af26-ed04-4754-81f1-004a104fdd7f, rgba(0, 24, 94, 0.3)); --border-left-width: 1px; --border-right-width: 1px; --border-style: solid; --border-top-width: 1px; align-content: center; align-items: center; background-color: rgba(5, 5, 5, 0.5); border-bottom-left-radius: 10px; border-bottom-right-radius: 10px; border-top-left-radius: 10px; border-top-right-radius: 10px; display: flex; flex: 1 0 0px; flex-direction: column; flex-wrap: nowrap; gap: 16px; height: min-content; justify-content: center; overflow: hidden; padding: 18px; position: relative; width: 1px; will-change: var(--framer-will-change-override, transform); z-index: 1; }\",\".framer-PPSqF .framer-n2muzz, .framer-PPSqF .framer-1vk16j4 { align-content: flex-start; align-items: flex-start; display: flex; flex: none; flex-direction: column; flex-wrap: nowrap; gap: 8px; height: min-content; justify-content: center; overflow: hidden; padding: 0px; position: relative; width: 100%; }\",\".framer-PPSqF .framer-dxtgxf, .framer-PPSqF .framer-1s8mwag { --framer-link-text-color: #0099ff; --framer-link-text-decoration: underline; flex: none; height: auto; position: relative; white-space: pre-wrap; width: 100%; word-break: break-word; word-wrap: break-word; }\",\".framer-PPSqF .framer-uvsq65, .framer-PPSqF .framer-gi6iny { flex: none; height: auto; position: relative; white-space: pre-wrap; width: 100%; word-break: break-word; word-wrap: break-word; }\",'.framer-PPSqF .framer-n6cspb, .framer-PPSqF .framer-5q7lcq, .framer-PPSqF .framer-19pzwua { background: linear-gradient(90deg, var(--token-fac97835-8102-4c2d-a364-9b29482fa5eb, #121212) /* {\"name\":\"Black 900\"} */ 0%, rgb(0, 0, 0) 100%); flex: none; height: 1px; overflow: hidden; position: relative; width: 100%; }',\".framer-PPSqF .framer-qynh05 { align-content: flex-start; align-items: flex-start; display: flex; flex: none; flex-direction: column; flex-wrap: nowrap; gap: 8px; height: min-content; justify-content: center; min-height: 24px; overflow: hidden; padding: 0px; position: relative; width: 100%; }\",\".framer-PPSqF .framer-13uj68y { display: grid; flex: none; gap: 24px; grid-auto-rows: minmax(0, 1fr); grid-template-columns: repeat(3, minmax(50px, 1fr)); height: min-content; justify-content: center; overflow: visible; padding: 0px; position: relative; width: 100%; }\",\".framer-PPSqF .framer-soni84 { align-content: center; align-items: center; display: flex; flex: 1 0 0px; flex-direction: row; flex-wrap: nowrap; gap: 64px; height: min-content; justify-content: center; max-width: 1440px; overflow: visible; padding: 120px 100px 120px 100px; position: relative; width: 1px; }\",\".framer-PPSqF .framer-742zi5-container { flex: 1 0 0px; height: auto; max-width: 900px; position: relative; width: 1px; }\",\"@supports (background: -webkit-named-image(i)) and (not (scale:1)) { .framer-PPSqF.framer-72rtr7, .framer-PPSqF .framer-1j8bd08, .framer-PPSqF .framer-1nvg4dq, .framer-PPSqF .framer-12nyfc4, .framer-PPSqF .framer-15i4ic3, .framer-PPSqF .framer-c73a7d, .framer-PPSqF .framer-d0fwyg, .framer-PPSqF .framer-1gywcml, .framer-PPSqF .framer-oi1wxq, .framer-PPSqF .framer-cv1ks2, .framer-PPSqF .framer-r4om2g, .framer-PPSqF .framer-e10l5t, .framer-PPSqF .framer-ysezwn, .framer-PPSqF .framer-1wcamqv, .framer-PPSqF .framer-ts00rz, .framer-PPSqF .framer-2mdr1b, .framer-PPSqF .framer-paj11d, .framer-PPSqF .framer-1llmauj, .framer-PPSqF .framer-aa06mo, .framer-PPSqF .framer-1ys01me, .framer-PPSqF .framer-1ebbqua, .framer-PPSqF .framer-24rt4a, .framer-PPSqF .framer-mv0i1v, .framer-PPSqF .framer-1xgcamn, .framer-PPSqF .framer-1xviz5z, .framer-PPSqF .framer-1k77o12, .framer-PPSqF .framer-sr3pyv, .framer-PPSqF .framer-2hwv7f, .framer-PPSqF .framer-14v9mas, .framer-PPSqF .framer-17httsr, .framer-PPSqF .framer-143g7t9, .framer-PPSqF .framer-1lcmzy5, .framer-PPSqF .framer-8qw2h0, .framer-PPSqF .framer-628hgw, .framer-PPSqF .framer-os1b9, .framer-PPSqF .framer-1lq0nk0, .framer-PPSqF .framer-sto16n, .framer-PPSqF .framer-5wgkey, .framer-PPSqF .framer-741jnq, .framer-PPSqF .framer-uwrh3g, .framer-PPSqF .framer-81zxly, .framer-PPSqF .framer-1r98wcj, .framer-PPSqF .framer-zm8aju, .framer-PPSqF .framer-1dt59tu, .framer-PPSqF .framer-wy10bc, .framer-PPSqF .framer-i8iq3f, .framer-PPSqF .framer-yqh9lp, .framer-PPSqF .framer-13yh80w, .framer-PPSqF .framer-1yo43ln, .framer-PPSqF .framer-1i3m6tk, .framer-PPSqF .framer-n2muzz, .framer-PPSqF .framer-1vk16j4, .framer-PPSqF .framer-qynh05, .framer-PPSqF .framer-91xm11, .framer-PPSqF .framer-1x9jx1v, .framer-PPSqF .framer-1nlzkvt, .framer-PPSqF .framer-bncxtn, .framer-PPSqF .framer-soni84 { gap: 0px; } .framer-PPSqF.framer-72rtr7 > * { margin: 0px; margin-bottom: calc(0px / 2); margin-top: calc(0px / 2); } .framer-PPSqF.framer-72rtr7 > :first-child, .framer-PPSqF .framer-1nvg4dq > :first-child, .framer-PPSqF .framer-15i4ic3 > :first-child, .framer-PPSqF .framer-c73a7d > :first-child, .framer-PPSqF .framer-cv1ks2 > :first-child, .framer-PPSqF .framer-r4om2g > :first-child, .framer-PPSqF .framer-ysezwn > :first-child, .framer-PPSqF .framer-1wcamqv > :first-child, .framer-PPSqF .framer-ts00rz > :first-child, .framer-PPSqF .framer-aa06mo > :first-child, .framer-PPSqF .framer-1ys01me > :first-child, .framer-PPSqF .framer-1xgcamn > :first-child, .framer-PPSqF .framer-1xviz5z > :first-child, .framer-PPSqF .framer-1k77o12 > :first-child, .framer-PPSqF .framer-2hwv7f > :first-child, .framer-PPSqF .framer-14v9mas > :first-child, .framer-PPSqF .framer-8qw2h0 > :first-child, .framer-PPSqF .framer-628hgw > :first-child, .framer-PPSqF .framer-5wgkey > :first-child, .framer-PPSqF .framer-741jnq > :first-child, .framer-PPSqF .framer-81zxly > :first-child, .framer-PPSqF .framer-1r98wcj > :first-child, .framer-PPSqF .framer-wy10bc > :first-child, .framer-PPSqF .framer-yqh9lp > :first-child, .framer-PPSqF .framer-13yh80w > :first-child, .framer-PPSqF .framer-1yo43ln > :first-child, .framer-PPSqF .framer-1i3m6tk > :first-child, .framer-PPSqF .framer-n2muzz > :first-child, .framer-PPSqF .framer-1vk16j4 > :first-child, .framer-PPSqF .framer-qynh05 > :first-child, .framer-PPSqF .framer-1x9jx1v > :first-child, .framer-PPSqF .framer-1nlzkvt > :first-child { margin-top: 0px; } .framer-PPSqF.framer-72rtr7 > :last-child, .framer-PPSqF .framer-1nvg4dq > :last-child, .framer-PPSqF .framer-15i4ic3 > :last-child, .framer-PPSqF .framer-c73a7d > :last-child, .framer-PPSqF .framer-cv1ks2 > :last-child, .framer-PPSqF .framer-r4om2g > :last-child, .framer-PPSqF .framer-ysezwn > :last-child, .framer-PPSqF .framer-1wcamqv > :last-child, .framer-PPSqF .framer-ts00rz > :last-child, .framer-PPSqF .framer-aa06mo > :last-child, .framer-PPSqF .framer-1ys01me > :last-child, .framer-PPSqF .framer-1xgcamn > :last-child, .framer-PPSqF .framer-1xviz5z > :last-child, .framer-PPSqF .framer-1k77o12 > :last-child, .framer-PPSqF .framer-2hwv7f > :last-child, .framer-PPSqF .framer-14v9mas > :last-child, .framer-PPSqF .framer-8qw2h0 > :last-child, .framer-PPSqF .framer-628hgw > :last-child, .framer-PPSqF .framer-5wgkey > :last-child, .framer-PPSqF .framer-741jnq > :last-child, .framer-PPSqF .framer-81zxly > :last-child, .framer-PPSqF .framer-1r98wcj > :last-child, .framer-PPSqF .framer-wy10bc > :last-child, .framer-PPSqF .framer-yqh9lp > :last-child, .framer-PPSqF .framer-13yh80w > :last-child, .framer-PPSqF .framer-1yo43ln > :last-child, .framer-PPSqF .framer-1i3m6tk > :last-child, .framer-PPSqF .framer-n2muzz > :last-child, .framer-PPSqF .framer-1vk16j4 > :last-child, .framer-PPSqF .framer-qynh05 > :last-child, .framer-PPSqF .framer-1x9jx1v > :last-child, .framer-PPSqF .framer-1nlzkvt > :last-child { margin-bottom: 0px; } .framer-PPSqF .framer-1j8bd08 > *, .framer-PPSqF .framer-oi1wxq > *, .framer-PPSqF .framer-e10l5t > *, .framer-PPSqF .framer-1llmauj > *, .framer-PPSqF .framer-24rt4a > *, .framer-PPSqF .framer-sr3pyv > *, .framer-PPSqF .framer-1lcmzy5 > *, .framer-PPSqF .framer-1lq0nk0 > *, .framer-PPSqF .framer-uwrh3g > *, .framer-PPSqF .framer-zm8aju > *, .framer-PPSqF .framer-91xm11 > *, .framer-PPSqF .framer-bncxtn > * { margin: 0px; margin-left: calc(10px / 2); margin-right: calc(10px / 2); } .framer-PPSqF .framer-1j8bd08 > :first-child, .framer-PPSqF .framer-12nyfc4 > :first-child, .framer-PPSqF .framer-d0fwyg > :first-child, .framer-PPSqF .framer-1gywcml > :first-child, .framer-PPSqF .framer-oi1wxq > :first-child, .framer-PPSqF .framer-e10l5t > :first-child, .framer-PPSqF .framer-2mdr1b > :first-child, .framer-PPSqF .framer-paj11d > :first-child, .framer-PPSqF .framer-1llmauj > :first-child, .framer-PPSqF .framer-1ebbqua > :first-child, .framer-PPSqF .framer-24rt4a > :first-child, .framer-PPSqF .framer-mv0i1v > :first-child, .framer-PPSqF .framer-sr3pyv > :first-child, .framer-PPSqF .framer-17httsr > :first-child, .framer-PPSqF .framer-143g7t9 > :first-child, .framer-PPSqF .framer-1lcmzy5 > :first-child, .framer-PPSqF .framer-os1b9 > :first-child, .framer-PPSqF .framer-1lq0nk0 > :first-child, .framer-PPSqF .framer-sto16n > :first-child, .framer-PPSqF .framer-uwrh3g > :first-child, .framer-PPSqF .framer-zm8aju > :first-child, .framer-PPSqF .framer-1dt59tu > :first-child, .framer-PPSqF .framer-i8iq3f > :first-child, .framer-PPSqF .framer-91xm11 > :first-child, .framer-PPSqF .framer-bncxtn > :first-child, .framer-PPSqF .framer-soni84 > :first-child { margin-left: 0px; } .framer-PPSqF .framer-1j8bd08 > :last-child, .framer-PPSqF .framer-12nyfc4 > :last-child, .framer-PPSqF .framer-d0fwyg > :last-child, .framer-PPSqF .framer-1gywcml > :last-child, .framer-PPSqF .framer-oi1wxq > :last-child, .framer-PPSqF .framer-e10l5t > :last-child, .framer-PPSqF .framer-2mdr1b > :last-child, .framer-PPSqF .framer-paj11d > :last-child, .framer-PPSqF .framer-1llmauj > :last-child, .framer-PPSqF .framer-1ebbqua > :last-child, .framer-PPSqF .framer-24rt4a > :last-child, .framer-PPSqF .framer-mv0i1v > :last-child, .framer-PPSqF .framer-sr3pyv > :last-child, .framer-PPSqF .framer-17httsr > :last-child, .framer-PPSqF .framer-143g7t9 > :last-child, .framer-PPSqF .framer-1lcmzy5 > :last-child, .framer-PPSqF .framer-os1b9 > :last-child, .framer-PPSqF .framer-1lq0nk0 > :last-child, .framer-PPSqF .framer-sto16n > :last-child, .framer-PPSqF .framer-uwrh3g > :last-child, .framer-PPSqF .framer-zm8aju > :last-child, .framer-PPSqF .framer-1dt59tu > :last-child, .framer-PPSqF .framer-i8iq3f > :last-child, .framer-PPSqF .framer-91xm11 > :last-child, .framer-PPSqF .framer-bncxtn > :last-child, .framer-PPSqF .framer-soni84 > :last-child { margin-right: 0px; } .framer-PPSqF .framer-1nvg4dq > *, .framer-PPSqF .framer-cv1ks2 > *, .framer-PPSqF .framer-ysezwn > *, .framer-PPSqF .framer-aa06mo > *, .framer-PPSqF .framer-2hwv7f > *, .framer-PPSqF .framer-8qw2h0 > *, .framer-PPSqF .framer-81zxly > *, .framer-PPSqF .framer-1x9jx1v > * { margin: 0px; margin-bottom: calc(64px / 2); margin-top: calc(64px / 2); } .framer-PPSqF .framer-12nyfc4 > *, .framer-PPSqF .framer-1ebbqua > *, .framer-PPSqF .framer-143g7t9 > * { margin: 0px; margin-left: calc(0px / 2); margin-right: calc(0px / 2); } .framer-PPSqF .framer-15i4ic3 > *, .framer-PPSqF .framer-c73a7d > *, .framer-PPSqF .framer-r4om2g > *, .framer-PPSqF .framer-1wcamqv > *, .framer-PPSqF .framer-ts00rz > *, .framer-PPSqF .framer-1ys01me > *, .framer-PPSqF .framer-1xgcamn > *, .framer-PPSqF .framer-14v9mas > *, .framer-PPSqF .framer-628hgw > *, .framer-PPSqF .framer-5wgkey > *, .framer-PPSqF .framer-1r98wcj > *, .framer-PPSqF .framer-1nlzkvt > * { margin: 0px; margin-bottom: calc(24px / 2); margin-top: calc(24px / 2); } .framer-PPSqF .framer-d0fwyg > * { margin: 0px; margin-left: calc(16px / 2); margin-right: calc(16px / 2); } .framer-PPSqF .framer-1gywcml > * { margin: 0px; margin-left: calc(8px / 2); margin-right: calc(8px / 2); } .framer-PPSqF .framer-2mdr1b > *, .framer-PPSqF .framer-paj11d > *, .framer-PPSqF .framer-17httsr > *, .framer-PPSqF .framer-os1b9 > *, .framer-PPSqF .framer-1dt59tu > * { margin: 0px; margin-left: calc(24px / 2); margin-right: calc(24px / 2); } .framer-PPSqF .framer-mv0i1v > *, .framer-PPSqF .framer-sto16n > *, .framer-PPSqF .framer-soni84 > * { margin: 0px; margin-left: calc(64px / 2); margin-right: calc(64px / 2); } .framer-PPSqF .framer-1xviz5z > * { margin: 0px; margin-bottom: calc(32px / 2); margin-top: calc(32px / 2); } .framer-PPSqF .framer-1k77o12 > * { margin: 0px; margin-bottom: calc(20px / 2); margin-top: calc(20px / 2); } .framer-PPSqF .framer-741jnq > *, .framer-PPSqF .framer-1i3m6tk > * { margin: 0px; margin-bottom: calc(16px / 2); margin-top: calc(16px / 2); } .framer-PPSqF .framer-wy10bc > * { margin: 0px; margin-bottom: calc(12px / 2); margin-top: calc(12px / 2); } .framer-PPSqF .framer-i8iq3f > * { margin: 0px; margin-left: calc(12px / 2); margin-right: calc(12px / 2); } .framer-PPSqF .framer-yqh9lp > *, .framer-PPSqF .framer-13yh80w > *, .framer-PPSqF .framer-1yo43ln > * { margin: 0px; margin-bottom: calc(10px / 2); margin-top: calc(10px / 2); } .framer-PPSqF .framer-n2muzz > *, .framer-PPSqF .framer-1vk16j4 > *, .framer-PPSqF .framer-qynh05 > * { margin: 0px; margin-bottom: calc(8px / 2); margin-top: calc(8px / 2); } }\",...sharedStyle.css,...sharedStyle1.css,...sharedStyle2.css,...sharedStyle3.css,...sharedStyle4.css,'.framer-PPSqF[data-border=\"true\"]::after, .framer-PPSqF [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; }',\"@media (min-width: 810px) and (max-width: 1199px) { .framer-PPSqF.framer-72rtr7 { width: 810px; } .framer-PPSqF .framer-1nvg4dq { height: 1274px; padding: 180px 40px 140px 40px; } .framer-PPSqF .framer-61e8s7-container { height: var(--framer-aspect-ratio-supported, 411px); } .framer-PPSqF .framer-cv1ks2, .framer-PPSqF .framer-ysezwn, .framer-PPSqF .framer-aa06mo, .framer-PPSqF .framer-mv0i1v, .framer-PPSqF .framer-2hwv7f, .framer-PPSqF .framer-sto16n, .framer-PPSqF .framer-81zxly, .framer-PPSqF .framer-1x9jx1v, .framer-PPSqF .framer-soni84 { padding: 100px 40px 100px 40px; } .framer-PPSqF .framer-1smston { align-content: center; align-items: center; display: flex; flex-direction: column; flex-wrap: nowrap; max-width: 500px; } .framer-PPSqF .framer-1cdn9pu-container, .framer-PPSqF .framer-sqsggs-container, .framer-PPSqF .framer-7vba7p-container { align-self: unset; height: auto; } .framer-PPSqF .framer-ts00rz, .framer-PPSqF .framer-2mdr1b, .framer-PPSqF .framer-paj11d { gap: 16px; } .framer-PPSqF .framer-u1ma3w-container { flex: 1 0 0px; height: 460px; } .framer-PPSqF .framer-4xsmdk-container { height: 460px; } .framer-PPSqF .framer-1n69hrj-container { flex: 1 0 0px; } .framer-PPSqF .framer-53d7f9, .framer-PPSqF .framer-13uj68y { grid-template-columns: repeat(2, minmax(50px, 1fr)); } .framer-PPSqF .framer-17httsr, .framer-PPSqF .framer-i8iq3f { flex-direction: column; } .framer-PPSqF .framer-1m84bxb-container, .framer-PPSqF .framer-1whlnnw-container, .framer-PPSqF .framer-19rfvpk-container, .framer-PPSqF .framer-yqh9lp, .framer-PPSqF .framer-13yh80w { flex: none; width: 100%; } .framer-PPSqF .framer-143g7t9 { bottom: 0px; left: -40px; right: -40px; top: -167px; } .framer-PPSqF .framer-8qw2h0 { padding: 100px 40px 80px 40px; } @supports (background: -webkit-named-image(i)) and (not (scale:1)) { .framer-PPSqF .framer-1smston, .framer-PPSqF .framer-ts00rz, .framer-PPSqF .framer-2mdr1b, .framer-PPSqF .framer-paj11d, .framer-PPSqF .framer-17httsr, .framer-PPSqF .framer-i8iq3f { gap: 0px; } .framer-PPSqF .framer-1smston > *, .framer-PPSqF .framer-17httsr > * { margin: 0px; margin-bottom: calc(24px / 2); margin-top: calc(24px / 2); } .framer-PPSqF .framer-1smston > :first-child, .framer-PPSqF .framer-ts00rz > :first-child, .framer-PPSqF .framer-17httsr > :first-child, .framer-PPSqF .framer-i8iq3f > :first-child { margin-top: 0px; } .framer-PPSqF .framer-1smston > :last-child, .framer-PPSqF .framer-ts00rz > :last-child, .framer-PPSqF .framer-17httsr > :last-child, .framer-PPSqF .framer-i8iq3f > :last-child { margin-bottom: 0px; } .framer-PPSqF .framer-ts00rz > * { margin: 0px; margin-bottom: calc(16px / 2); margin-top: calc(16px / 2); } .framer-PPSqF .framer-2mdr1b > *, .framer-PPSqF .framer-paj11d > * { margin: 0px; margin-left: calc(16px / 2); margin-right: calc(16px / 2); } .framer-PPSqF .framer-2mdr1b > :first-child, .framer-PPSqF .framer-paj11d > :first-child { margin-left: 0px; } .framer-PPSqF .framer-2mdr1b > :last-child, .framer-PPSqF .framer-paj11d > :last-child { margin-right: 0px; } .framer-PPSqF .framer-i8iq3f > * { margin: 0px; margin-bottom: calc(12px / 2); margin-top: calc(12px / 2); } }}\",\"@media (max-width: 809px) { .framer-PPSqF.framer-72rtr7 { width: 390px; } .framer-PPSqF .framer-1j8bd08, .framer-PPSqF .framer-oi1wxq, .framer-PPSqF .framer-e10l5t, .framer-PPSqF .framer-2mdr1b, .framer-PPSqF .framer-paj11d, .framer-PPSqF .framer-1llmauj, .framer-PPSqF .framer-24rt4a, .framer-PPSqF .framer-sr3pyv, .framer-PPSqF .framer-17httsr, .framer-PPSqF .framer-1lcmzy5, .framer-PPSqF .framer-os1b9, .framer-PPSqF .framer-1lq0nk0, .framer-PPSqF .framer-uwrh3g, .framer-PPSqF .framer-i8iq3f, .framer-PPSqF .framer-91xm11, .framer-PPSqF .framer-bncxtn { flex-direction: column; } .framer-PPSqF .framer-1nvg4dq { flex: none; height: 1173px; padding: 140px 20px 80px 20px; width: 100%; } .framer-PPSqF .framer-12nyfc4 { bottom: 400px; order: 0; } .framer-PPSqF .framer-15i4ic3 { order: 1; } .framer-PPSqF .framer-d0fwyg { flex-direction: column; max-width: 300px; } .framer-PPSqF .framer-1e91ncl-container, .framer-PPSqF .framer-1sejwci-container, .framer-PPSqF .framer-1bxm5hg-container { width: 100%; } .framer-PPSqF .framer-1gywcml { order: 2; } .framer-PPSqF .framer-61e8s7-container { aspect-ratio: 1.5909090909090908 / 1; height: var(--framer-aspect-ratio-supported, 220px); } .framer-PPSqF .framer-cv1ks2, .framer-PPSqF .framer-ysezwn, .framer-PPSqF .framer-aa06mo, .framer-PPSqF .framer-2hwv7f, .framer-PPSqF .framer-81zxly, .framer-PPSqF .framer-1x9jx1v, .framer-PPSqF .framer-soni84 { flex: none; padding: 80px 20px 80px 20px; width: 100%; } .framer-PPSqF .framer-1smston { align-content: center; align-items: center; display: flex; flex-direction: column; flex-wrap: nowrap; } .framer-PPSqF .framer-1cdn9pu-container, .framer-PPSqF .framer-sqsggs-container, .framer-PPSqF .framer-7vba7p-container, .framer-PPSqF .framer-1nqhb14-container, .framer-PPSqF .framer-1dzc0nc-container, .framer-PPSqF .framer-i6877c-container, .framer-PPSqF .framer-dvv7q3-container, .framer-PPSqF .framer-8y16as-container, .framer-PPSqF .framer-zdfxe9-container, .framer-PPSqF .framer-p6hiob-container { align-self: unset; height: auto; } .framer-PPSqF .framer-u1ma3w-container, .framer-PPSqF .framer-1ll86vg-container { flex: none; height: auto; width: 100%; } .framer-PPSqF .framer-4xsmdk-container, .framer-PPSqF .framer-ngolec-container, .framer-PPSqF .framer-1n69hrj-container { flex: none; height: 400px; width: 100%; } .framer-PPSqF .framer-53d7f9 { align-content: center; align-items: center; display: flex; flex-direction: column; flex-wrap: nowrap; max-width: 400px; } .framer-PPSqF .framer-mv0i1v, .framer-PPSqF .framer-sto16n { flex: none; flex-direction: column; padding: 80px 20px 80px 20px; width: 100%; } .framer-PPSqF .framer-1xgcamn { align-content: center; align-items: center; flex: none; position: relative; top: unset; width: 100%; } .framer-PPSqF .framer-1xviz5z, .framer-PPSqF .framer-1m84bxb-container, .framer-PPSqF .framer-1whlnnw-container, .framer-PPSqF .framer-19rfvpk-container, .framer-PPSqF .framer-741jnq, .framer-PPSqF .framer-yqh9lp, .framer-PPSqF .framer-13yh80w { flex: none; width: 100%; } .framer-PPSqF .framer-8qw2h0 { flex: none; padding: 80px 20px 60px 20px; width: 100%; } .framer-PPSqF .framer-5wgkey { align-content: center; align-items: center; flex: none; width: 100%; } .framer-PPSqF .framer-1dt59tu { flex-direction: column; padding: 12px; } .framer-PPSqF .framer-wy10bc { flex: none; order: 1; width: 100%; } .framer-PPSqF .framer-w1sei6, .framer-PPSqF .framer-2ng5kz, .framer-PPSqF .framer-l3r5k1 { --framer-input-font-size: 16px; } .framer-PPSqF .framer-1i3m6tk { flex: none; order: 0; width: 100%; } .framer-PPSqF .framer-13uj68y { align-content: flex-start; align-items: flex-start; display: flex; flex-direction: column; flex-wrap: nowrap; } @supports (background: -webkit-named-image(i)) and (not (scale:1)) { .framer-PPSqF .framer-1j8bd08, .framer-PPSqF .framer-d0fwyg, .framer-PPSqF .framer-oi1wxq, .framer-PPSqF .framer-1smston, .framer-PPSqF .framer-e10l5t, .framer-PPSqF .framer-2mdr1b, .framer-PPSqF .framer-paj11d, .framer-PPSqF .framer-1llmauj, .framer-PPSqF .framer-53d7f9, .framer-PPSqF .framer-24rt4a, .framer-PPSqF .framer-mv0i1v, .framer-PPSqF .framer-sr3pyv, .framer-PPSqF .framer-17httsr, .framer-PPSqF .framer-1lcmzy5, .framer-PPSqF .framer-os1b9, .framer-PPSqF .framer-1lq0nk0, .framer-PPSqF .framer-sto16n, .framer-PPSqF .framer-uwrh3g, .framer-PPSqF .framer-1dt59tu, .framer-PPSqF .framer-i8iq3f, .framer-PPSqF .framer-91xm11, .framer-PPSqF .framer-13uj68y, .framer-PPSqF .framer-bncxtn { gap: 0px; } .framer-PPSqF .framer-1j8bd08 > *, .framer-PPSqF .framer-oi1wxq > *, .framer-PPSqF .framer-e10l5t > *, .framer-PPSqF .framer-1llmauj > *, .framer-PPSqF .framer-24rt4a > *, .framer-PPSqF .framer-sr3pyv > *, .framer-PPSqF .framer-1lcmzy5 > *, .framer-PPSqF .framer-1lq0nk0 > *, .framer-PPSqF .framer-uwrh3g > *, .framer-PPSqF .framer-91xm11 > *, .framer-PPSqF .framer-bncxtn > * { margin: 0px; margin-bottom: calc(10px / 2); margin-top: calc(10px / 2); } .framer-PPSqF .framer-1j8bd08 > :first-child, .framer-PPSqF .framer-d0fwyg > :first-child, .framer-PPSqF .framer-oi1wxq > :first-child, .framer-PPSqF .framer-1smston > :first-child, .framer-PPSqF .framer-e10l5t > :first-child, .framer-PPSqF .framer-2mdr1b > :first-child, .framer-PPSqF .framer-paj11d > :first-child, .framer-PPSqF .framer-1llmauj > :first-child, .framer-PPSqF .framer-53d7f9 > :first-child, .framer-PPSqF .framer-24rt4a > :first-child, .framer-PPSqF .framer-mv0i1v > :first-child, .framer-PPSqF .framer-sr3pyv > :first-child, .framer-PPSqF .framer-17httsr > :first-child, .framer-PPSqF .framer-1lcmzy5 > :first-child, .framer-PPSqF .framer-os1b9 > :first-child, .framer-PPSqF .framer-1lq0nk0 > :first-child, .framer-PPSqF .framer-sto16n > :first-child, .framer-PPSqF .framer-uwrh3g > :first-child, .framer-PPSqF .framer-1dt59tu > :first-child, .framer-PPSqF .framer-i8iq3f > :first-child, .framer-PPSqF .framer-91xm11 > :first-child, .framer-PPSqF .framer-13uj68y > :first-child, .framer-PPSqF .framer-bncxtn > :first-child { margin-top: 0px; } .framer-PPSqF .framer-1j8bd08 > :last-child, .framer-PPSqF .framer-d0fwyg > :last-child, .framer-PPSqF .framer-oi1wxq > :last-child, .framer-PPSqF .framer-1smston > :last-child, .framer-PPSqF .framer-e10l5t > :last-child, .framer-PPSqF .framer-2mdr1b > :last-child, .framer-PPSqF .framer-paj11d > :last-child, .framer-PPSqF .framer-1llmauj > :last-child, .framer-PPSqF .framer-53d7f9 > :last-child, .framer-PPSqF .framer-24rt4a > :last-child, .framer-PPSqF .framer-mv0i1v > :last-child, .framer-PPSqF .framer-sr3pyv > :last-child, .framer-PPSqF .framer-17httsr > :last-child, .framer-PPSqF .framer-1lcmzy5 > :last-child, .framer-PPSqF .framer-os1b9 > :last-child, .framer-PPSqF .framer-1lq0nk0 > :last-child, .framer-PPSqF .framer-sto16n > :last-child, .framer-PPSqF .framer-uwrh3g > :last-child, .framer-PPSqF .framer-1dt59tu > :last-child, .framer-PPSqF .framer-i8iq3f > :last-child, .framer-PPSqF .framer-91xm11 > :last-child, .framer-PPSqF .framer-13uj68y > :last-child, .framer-PPSqF .framer-bncxtn > :last-child { margin-bottom: 0px; } .framer-PPSqF .framer-d0fwyg > *, .framer-PPSqF .framer-53d7f9 > * { margin: 0px; margin-bottom: calc(16px / 2); margin-top: calc(16px / 2); } .framer-PPSqF .framer-1smston > *, .framer-PPSqF .framer-2mdr1b > *, .framer-PPSqF .framer-paj11d > *, .framer-PPSqF .framer-17httsr > *, .framer-PPSqF .framer-os1b9 > *, .framer-PPSqF .framer-1dt59tu > *, .framer-PPSqF .framer-13uj68y > * { margin: 0px; margin-bottom: calc(24px / 2); margin-top: calc(24px / 2); } .framer-PPSqF .framer-mv0i1v > *, .framer-PPSqF .framer-sto16n > * { margin: 0px; margin-bottom: calc(64px / 2); margin-top: calc(64px / 2); } .framer-PPSqF .framer-i8iq3f > * { margin: 0px; margin-bottom: calc(12px / 2); margin-top: calc(12px / 2); } }}\"];/**\n * This is a generated Framer component.\n * @framerIntrinsicHeight 12036\n * @framerIntrinsicWidth 1200\n * @framerCanvasComponentVariantDetails {\"propertyName\":\"variant\",\"data\":{\"default\":{\"layout\":[\"fixed\",\"auto\"]},\"VAQyyE6Cz\":{\"layout\":[\"fixed\",\"auto\"]},\"cGbgDtuOd\":{\"layout\":[\"fixed\",\"auto\"]}}}\n * @framerImmutableVariables true\n * @framerDisplayContentsDiv false\n * @framerComponentViewportWidth true\n * @framerAcceptsLayoutTemplate true\n * @framerScrollSections {\"iujLX9vDm\":{\"pattern\":\":iujLX9vDm\",\"name\":\"hero\"},\"bCQFW2yKd\":{\"pattern\":\":bCQFW2yKd\",\"name\":\"process\"},\"cG11XA7vV\":{\"pattern\":\":cG11XA7vV\",\"name\":\"service\"},\"ZbZ0E00XJ\":{\"pattern\":\":ZbZ0E00XJ\",\"name\":\"projects\"},\"HGFJ11HNx\":{\"pattern\":\":HGFJ11HNx\",\"name\":\"pricing\"},\"jYAtFPJyf\":{\"pattern\":\":jYAtFPJyf\",\"name\":\"faqs\"},\"JEsFhjZ0g\":{\"pattern\":\":JEsFhjZ0g\",\"name\":\"contact\"}}\n * @framerResponsiveScreen\n */const FrameraugiA20Il=withCSS(Component,css,\"framer-PPSqF\");export default FrameraugiA20Il;FrameraugiA20Il.displayName=\"Home\";FrameraugiA20Il.defaultProps={height:12036,width:1200};addFonts(FrameraugiA20Il,[{explicitInter:true,fonts:[{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F\",url:\"https://framerusercontent.com/assets/5vvr9Vy74if2I6bQbJvbw7SY1pQ.woff2\",weight:\"400\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116\",url:\"https://framerusercontent.com/assets/EOr0mi4hNtlgWNn9if640EZzXCo.woff2\",weight:\"400\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+1F00-1FFF\",url:\"https://framerusercontent.com/assets/Y9k9QrlZAqio88Klkmbd8VoMQc.woff2\",weight:\"400\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0370-03FF\",url:\"https://framerusercontent.com/assets/OYrD2tBIBPvoJXiIHnLoOXnY9M.woff2\",weight:\"400\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF\",url:\"https://framerusercontent.com/assets/JeYwfuaPfZHQhEG8U5gtPDZ7WQ.woff2\",weight:\"400\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD\",url:\"https://framerusercontent.com/assets/vQyevYAyHtARFwPqUzQGpnDs.woff2\",weight:\"400\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB\",url:\"https://framerusercontent.com/assets/b6Y37FthZeALduNqHicBT6FutY.woff2\",weight:\"400\"}]},...NavigationFonts,...VideoFonts,...TagFonts,...ButtonsPrimaryFonts,...ButtonsSecondaryFonts,...HeroVideoFonts,...CardsProcessFonts,...ServiceCardsChatbotFonts,...ServiceCardsAnalysisFonts,...ServiceCardsAutomationFonts,...ServiceCardsChartFonts,...CardsBenefitsFonts,...CardsProjectsFonts,...ButtonsLoadMoreFonts,...CardsPricingFonts,...TickerTestimonialsFonts,...FAQsSectionFonts,...ButtonsFormsFonts,...CardsArticlesFonts,...NewsleterCTAFonts,...FooterFonts,...getFontsFromSharedStyle(sharedStyle.fonts),...getFontsFromSharedStyle(sharedStyle1.fonts),...getFontsFromSharedStyle(sharedStyle2.fonts),...getFontsFromSharedStyle(sharedStyle3.fonts),...getFontsFromSharedStyle(sharedStyle4.fonts)],{supportsExplicitInterCodegen:true});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"FrameraugiA20Il\",\"slots\":[],\"annotations\":{\"framerAcceptsLayoutTemplate\":\"true\",\"framerScrollSections\":\"{\\\"iujLX9vDm\\\":{\\\"pattern\\\":\\\":iujLX9vDm\\\",\\\"name\\\":\\\"hero\\\"},\\\"bCQFW2yKd\\\":{\\\"pattern\\\":\\\":bCQFW2yKd\\\",\\\"name\\\":\\\"process\\\"},\\\"cG11XA7vV\\\":{\\\"pattern\\\":\\\":cG11XA7vV\\\",\\\"name\\\":\\\"service\\\"},\\\"ZbZ0E00XJ\\\":{\\\"pattern\\\":\\\":ZbZ0E00XJ\\\",\\\"name\\\":\\\"projects\\\"},\\\"HGFJ11HNx\\\":{\\\"pattern\\\":\\\":HGFJ11HNx\\\",\\\"name\\\":\\\"pricing\\\"},\\\"jYAtFPJyf\\\":{\\\"pattern\\\":\\\":jYAtFPJyf\\\",\\\"name\\\":\\\"faqs\\\"},\\\"JEsFhjZ0g\\\":{\\\"pattern\\\":\\\":JEsFhjZ0g\\\",\\\"name\\\":\\\"contact\\\"}}\",\"framerCanvasComponentVariantDetails\":\"{\\\"propertyName\\\":\\\"variant\\\",\\\"data\\\":{\\\"default\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"auto\\\"]},\\\"VAQyyE6Cz\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"auto\\\"]},\\\"cGbgDtuOd\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"auto\\\"]}}}\",\"framerDisplayContentsDiv\":\"false\",\"framerComponentViewportWidth\":\"true\",\"framerImmutableVariables\":\"true\",\"framerIntrinsicWidth\":\"1200\",\"framerIntrinsicHeight\":\"12036\",\"framerResponsiveScreen\":\"\",\"framerContractVersion\":\"1\"}},\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}"],
  "mappings": "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",
  "names": ["fontStore", "fonts", "css", "className", "fontStore", "fonts", "css", "className", "fontStore", "fonts", "css", "className", "fontStore", "fonts", "css", "className", "serializationHash", "variantClassNames", "transition1", "toResponsiveImage", "value", "Transition", "children", "config", "re", "MotionConfigContext", "transition", "contextValue", "se", "p", "Variants", "motion", "x", "getProps", "description", "height", "id", "image", "industry", "projectName", "width", "props", "_ref", "_ref1", "_ref2", "createLayoutDependency", "variants", "Component", "Y", "ref", "activeLocale", "setLocale", "useLocaleInfo", "style", "className", "layoutId", "variant", "RLYruWW0a", "aWgDXYqV_", "wxYaM1O2N", "vKmuugASL", "restProps", "baseVariant", "classNames", "clearLoadingGesture", "gestureHandlers", "gestureVariant", "isLoading", "setGestureState", "setVariant", "useVariantState", "variantClassNames", "layoutDependency", "ref1", "pe", "defaultLayoutId", "ae", "sharedStyleClassNames", "componentViewport", "useComponentViewport", "LayoutGroup", "cx", "serializationHash", "u", "Image2", "getLoadingLazyAtYPosition", "RichText2", "css", "FramerAJk7X8LQA", "withCSS", "AJk7X8LQA_default", "addPropertyControls", "ControlType", "addFonts", "getFontsFromSharedStyle", "fonts", "addUniqueItem", "e", "clamp", "e", "n", "t", "isNumber", "isEasingList", "wrap", "o", "getEasingForSegment", "mix", "noop", "noopReturn", "progress", "fillOffset", "s", "defaultOffset", "interpolate", "f", "r", "isCubicBezier", "isEasingGenerator", "isFunction", "isString", "velocityPerSecond", "calcBezier", "n", "e", "i", "binarySubdivide", "o", "r", "c", "u", "a", "s", "cubicBezier", "noopReturn", "getTForX", "t", "steps", "clamp", "l", "cubicBezier", "u", "getEasingFunction", "s", "isFunction", "isCubicBezier", "a", "t", "steps", "noopReturn", "Animation", "i", "o", "h", "m", "c", "p", "d", "isEasingGenerator", "isEasingList", "f", "interpolate", "e", "n", "r", "n", "e", "t", "r", "MotionValue", "i", "__rest", "e", "t", "r", "n", "o", "n", "calcGeneratorVelocity", "s", "r", "a", "velocityPerSecond", "calcDampingRatio", "e", "t", "hasReachedTarget", "spring", "o", "c", "i", "h", "u", "d", "f", "l", "g", "m", "glide", "isOutOfBounds", "nearestBoundary", "calcDelta", "calcLatest", "applyFriction", "M", "checkCatchBoundary", "pregenerateKeyframes", "noopReturn", "W", "getAnimationData", "e", "getMotionValue", "t", "MotionValue", "L", "T", "M", "D", "B", "noopReturn", "k", "asTransformCssVar", "N", "compareTransformOrder", "$", "isTransform", "addTransformToElement", "n", "addUniqueItem", "buildTransformTemplate", "transformListToString", "isCssVar", "C", "registerCssVariable", "testAnimation", "j", "P", "R", "H", "generateLinearEasingPoints", "o", "progress", "convertEasing", "isFunction", "isCubicBezier", "cubicBezierAsString", "hydrateKeyframes", "keyframesList", "getStyleName", "I", "stopAnimation", "getUnitConverter", "s", "isString", "getDevToolsRecord", "window", "animateStyle", "i", "r", "l", "f", "p", "v", "y", "w", "E", "b", "A", "S", "O", "x", "z", "V", "isEasingGenerator", "readInitialValue", "c", "isEasingList", "isNumber", "noop", "getOptions", "resolveElements", "createAnimation", "withControls", "U", "getActiveAnimation", "selectFinished", "resolveOption", "e", "t", "n", "isFunction", "createAnimate", "o", "i", "resolveElements", "r", "a", "c", "getOptions", "l", "animateStyle", "withControls", "F", "Animation", "canGenerate", "e", "isNumber", "getAsNumber", "isString", "createGeneratorEasing", "t", "n", "o", "getGenerator", "i", "s", "r", "a", "getKeyframes", "pregenerateKeyframes", "c", "l", "f", "noopReturn", "u", "getUnitConverter", "k", "getStyleName", "calcGeneratorVelocity", "G", "spring", "q", "glide", "K", "inView$1", "resolveElements", "onIntersectionChange", "isFunction", "_", "Z", "getElementSize", "notifyTarget", "notifyAll", "createResizeObserver", "resizeElement", "X", "Y", "createWindowResizeHandler", "window", "resizeWindow", "resize", "dispatchPointerEvent", "e", "t", "n", "dispatchViewEvent", "ce", "o", "i", "__rest", "inView$1", "mouseEvent", "le", "fe", "onPointerUp", "window", "onPointerDown", "ue", "de", "MAX_DUPLICATED_ITEMS", "directionTransformers", "offset", "Ticker", "props", "slots", "gap", "padding", "paddingPerSide", "paddingTop", "paddingRight", "paddingBottom", "paddingLeft", "speed", "hoverFactor", "direction", "alignment", "sizingOptions", "fadeOptions", "style", "fadeContent", "overflow", "fadeWidth", "fadeInset", "fadeAlpha", "widthType", "heightType", "paddingValue", "currentTarget", "RenderTarget", "isCanvas", "filteredSlots", "numChildren", "j", "hasChildren", "isHorizontal", "useMotionValue", "transformer", "transform", "useTransform", "parentRef", "pe", "childrenRef", "se", "size", "setSize", "ye", "clonedChildren", "dupedChildren", "duplicateBy", "opacity", "measure", "te", "parentLength", "start", "childrenLength", "childrenStyles", "initialResize", "fe", "frame", "resize", "contentSize", "child", "index", "ref", "p", "LayoutGroup", "q", "isInView", "useInView", "i", "childIndex", "animateToValue", "initialTime", "prevTime", "xOrY", "isHover", "isReducedMotion", "useReducedMotion", "listRef", "animationRef", "ue", "playOrPause", "hidden", "fadeDirection", "fadeWidthStart", "fadeWidthEnd", "fadeInsetStart", "clamp", "fadeInsetEnd", "fadeMask", "containerStyle", "u", "motion", "isValidNumber", "placeholderStyles", "emojiStyles", "titleStyles", "subtitleStyles", "addPropertyControls", "ControlType", "num", "min", "max", "value", "serializationHash", "variantClassNames", "transition1", "toResponsiveImage", "value", "Transition", "children", "config", "re", "MotionConfigContext", "transition", "contextValue", "se", "p", "Variants", "motion", "x", "getProps", "height", "id", "image", "width", "props", "_ref", "createLayoutDependency", "variants", "Component", "Y", "ref", "activeLocale", "setLocale", "useLocaleInfo", "style", "className", "layoutId", "variant", "uhb7iFYF3", "restProps", "baseVariant", "classNames", "clearLoadingGesture", "gestureHandlers", "gestureVariant", "isLoading", "setGestureState", "setVariant", "useVariantState", "variantClassNames", "layoutDependency", "ref1", "pe", "defaultLayoutId", "ae", "sharedStyleClassNames", "componentViewport", "useComponentViewport", "LayoutGroup", "cx", "serializationHash", "Image2", "getLoadingLazyAtYPosition", "css", "FramerzTLW18KXI", "withCSS", "zTLW18KXI_default", "addPropertyControls", "ControlType", "addFonts", "CardsIconsFonts", "getFonts", "zTLW18KXI_default", "TickerFonts", "Ticker", "TickerControls", "getPropertyControls", "serializationHash", "variantClassNames", "transition1", "toResponsiveImage", "value", "Transition", "children", "config", "re", "MotionConfigContext", "transition", "contextValue", "se", "p", "Variants", "motion", "x", "humanReadableEnumMap", "getProps", "direction", "gap", "height", "icon1", "icon2", "icon3", "icon4", "id", "speed", "width", "props", "createLayoutDependency", "variants", "Component", "Y", "ref", "fallbackRef", "pe", "refBinding", "defaultLayoutId", "ae", "activeLocale", "setLocale", "useLocaleInfo", "componentViewport", "useComponentViewport", "style", "className", "layoutId", "variant", "tIS2Z9GXY", "hqb8et3Qp", "VGqYPkCYU", "HMhf4zsBQ", "EjsVVRGWK", "jY69pN90C", "P1OSnlSDO", "restProps", "baseVariant", "classNames", "clearLoadingGesture", "gestureHandlers", "gestureVariant", "isLoading", "setGestureState", "setVariant", "useVariantState", "variantClassNames", "layoutDependency", "scopingClassNames", "cx", "serializationHash", "LayoutGroup", "ComponentViewportProvider", "SmartComponentScopedContainer", "Ticker", "zTLW18KXI_default", "u", "css", "FramergmrJkOvDu", "withCSS", "gmrJkOvDu_default", "addPropertyControls", "ControlType", "TickerControls", "addFonts", "CardsIconsFonts", "TickerFonts", "TickerIconsFonts", "getFonts", "gmrJkOvDu_default", "MotionDivWithFX", "withFX", "motion", "cycleOrder", "serializationHash", "variantClassNames", "addPropertyOverrides", "overrides", "variants", "nextOverrides", "variant", "transition1", "addImageAlt", "image", "alt", "Transition", "value", "children", "config", "re", "MotionConfigContext", "transition", "contextValue", "se", "p", "Variants", "x", "humanReadableVariantMap", "getProps", "description", "height", "id", "title", "width", "props", "createLayoutDependency", "Component", "Y", "ref", "activeLocale", "setLocale", "useLocaleInfo", "style", "className", "layoutId", "tLs69h6vu", "DXWWgGjsz", "restProps", "baseVariant", "classNames", "clearLoadingGesture", "gestureHandlers", "gestureVariant", "isLoading", "setGestureState", "setVariant", "useVariantState", "layoutDependency", "ref1", "pe", "defaultLayoutId", "ae", "sharedStyleClassNames", "componentViewport", "useComponentViewport", "LayoutGroup", "cx", "u", "ComponentViewportProvider", "RichText2", "css", "Framercj3FVOB4Y", "withCSS", "cj3FVOB4Y_default", "addPropertyControls", "ControlType", "addFonts", "getFontsFromSharedStyle", "fonts", "enabledGestures", "cycleOrder", "serializationHash", "variantClassNames", "addPropertyOverrides", "overrides", "variants", "nextOverrides", "variant", "transition1", "Transition", "value", "children", "config", "re", "MotionConfigContext", "transition", "contextValue", "se", "p", "Variants", "motion", "x", "humanReadableVariantMap", "getProps", "height", "id", "link", "text", "width", "props", "_ref", "_humanReadableVariantMap_props_variant", "_ref1", "createLayoutDependency", "Component", "Y", "ref", "activeLocale", "setLocale", "useLocaleInfo", "style", "className", "layoutId", "LcMln3Vkv", "uTdAD3NkH", "restProps", "baseVariant", "classNames", "clearLoadingGesture", "gestureHandlers", "gestureVariant", "isLoading", "setGestureState", "setVariant", "useVariantState", "layoutDependency", "ref1", "pe", "defaultLayoutId", "ae", "sharedStyleClassNames", "componentViewport", "useComponentViewport", "LayoutGroup", "Link", "u", "cx", "RichText2", "css", "Framerht0qGf7EI", "withCSS", "ht0qGf7EI_default", "addPropertyControls", "ControlType", "addFonts", "ButtonsPrimaryFonts", "getFonts", "ht0qGf7EI_default", "PhosphorFonts", "Icon", "cycleOrder", "serializationHash", "variantClassNames", "addPropertyOverrides", "overrides", "variants", "nextOverrides", "variant", "transition1", "isSet", "value", "Transition", "children", "config", "re", "MotionConfigContext", "transition", "contextValue", "se", "p", "Variants", "motion", "x", "humanReadableVariantMap", "getProps", "buttonLink", "buttonText", "description", "feature1", "feature2", "feature3", "feature4", "feature5", "feature6", "feature7", "height", "id", "paymentDetails", "planName", "price", "tagline", "width", "props", "_ref", "_ref1", "_ref2", "_ref3", "_ref4", "_ref5", "_ref6", "_ref7", "_ref8", "_ref9", "_ref10", "_ref11", "_humanReadableVariantMap_props_variant", "_ref12", "_ref13", "createLayoutDependency", "Component", "Y", "ref", "activeLocale", "setLocale", "useLocaleInfo", "style", "className", "layoutId", "NPcpuOJ_c", "sNn6CWkIN", "V4tD38RXL", "qytFyYd41", "kDFNVuvri", "AINojTrO1", "qZmhJ2LDU", "AICV_JBwn", "uNcMhG2ib", "Zx7vhVzb9", "awfKgLoP0", "RBB9xjZlB", "GM6xbsAjG", "wCt4tT5jS", "restProps", "baseVariant", "classNames", "clearLoadingGesture", "gestureHandlers", "gestureVariant", "isLoading", "setGestureState", "setVariant", "useVariantState", "layoutDependency", "ref1", "pe", "visible", "visible1", "visible2", "visible3", "visible4", "visible5", "visible6", "visible7", "visible8", "defaultLayoutId", "ae", "sharedStyleClassNames", "componentViewport", "useComponentViewport", "LayoutGroup", "cx", "u", "RichText2", "ComponentViewportProvider", "css", "FramereafUe285s", "withCSS", "eafUe285s_default", "addPropertyControls", "ControlType", "addFonts", "getFontsFromSharedStyle", "fonts", "PhosphorFonts", "getFonts", "Icon", "enabledGestures", "cycleOrder", "serializationHash", "variantClassNames", "addPropertyOverrides", "overrides", "variants", "nextOverrides", "variant", "transition1", "Transition", "value", "children", "config", "re", "MotionConfigContext", "transition", "contextValue", "se", "p", "Variants", "motion", "x", "humanReadableVariantMap", "getProps", "answer", "height", "id", "question", "width", "props", "_ref", "_ref1", "_humanReadableVariantMap_props_variant", "_ref2", "createLayoutDependency", "Component", "Y", "ref", "activeLocale", "setLocale", "useLocaleInfo", "style", "className", "layoutId", "n_nqF67s7", "jLJZKfNK7", "restProps", "baseVariant", "classNames", "clearLoadingGesture", "gestureHandlers", "gestureVariant", "isLoading", "setGestureState", "setVariant", "useVariantState", "layoutDependency", "activeVariantCallback", "delay", "useActiveVariantCallback", "onTapwqbh36", "args", "onTapzxbxno", "ref1", "pe", "isDisplayed", "defaultLayoutId", "ae", "sharedStyleClassNames", "componentViewport", "useComponentViewport", "LayoutGroup", "u", "cx", "RichText2", "ComponentViewportProvider", "css", "FramerCY_18tmTg", "withCSS", "CY_18tmTg_default", "addPropertyControls", "ControlType", "addFonts", "getFontsFromSharedStyle", "fonts", "FAQsFAQsFonts", "getFonts", "CY_18tmTg_default", "serializationHash", "variantClassNames", "transition1", "Transition", "value", "children", "config", "re", "MotionConfigContext", "transition", "contextValue", "se", "p", "Variants", "motion", "x", "getProps", "height", "id", "width", "props", "createLayoutDependency", "variants", "Component", "Y", "ref", "fallbackRef", "pe", "refBinding", "defaultLayoutId", "ae", "activeLocale", "setLocale", "useLocaleInfo", "componentViewport", "useComponentViewport", "style", "className", "layoutId", "variant", "restProps", "baseVariant", "classNames", "clearLoadingGesture", "gestureHandlers", "gestureVariant", "isLoading", "setGestureState", "setVariant", "useVariantState", "variantClassNames", "layoutDependency", "scopingClassNames", "cx", "serializationHash", "LayoutGroup", "u", "ComponentViewportProvider", "SmartComponentScopedContainer", "CY_18tmTg_default", "css", "FramergPZgk2LeF", "withCSS", "gPZgk2LeF_default", "addFonts", "FAQsFAQsFonts", "MotionDivWithFX", "withFX", "motion", "cycleOrder", "serializationHash", "variantClassNames", "addPropertyOverrides", "overrides", "variants", "nextOverrides", "variant", "transition1", "transition2", "animation", "transition3", "transition4", "animation1", "animation2", "animation3", "Transition", "value", "children", "config", "re", "MotionConfigContext", "transition", "contextValue", "se", "p", "Variants", "x", "humanReadableVariantMap", "getProps", "description", "height", "id", "title", "width", "props", "_ref", "_ref1", "_humanReadableVariantMap_props_variant", "_ref2", "createLayoutDependency", "Component", "Y", "ref", "activeLocale", "setLocale", "useLocaleInfo", "style", "className", "layoutId", "tLs69h6vu", "DXWWgGjsz", "restProps", "baseVariant", "classNames", "clearLoadingGesture", "gestureHandlers", "gestureVariant", "isLoading", "setGestureState", "setVariant", "useVariantState", "layoutDependency", "ref1", "pe", "defaultLayoutId", "ae", "sharedStyleClassNames", "componentViewport", "useComponentViewport", "LayoutGroup", "cx", "u", "RichText2", "css", "FramerHfXvyjRaq", "withCSS", "HfXvyjRaq_default", "addPropertyControls", "ControlType", "addFonts", "getFontsFromSharedStyle", "fonts", "PlayOptions", "ThumbnailOptions", "Youtube", "url", "play", "shouldMute", "thumbnail", "isRed", "onClick", "onMouseEnter", "onMouseLeave", "onMouseDown", "onMouseUp", "title", "props", "onCanvas", "useIsOnCanvas", "isAutoplay", "showThumbnail", "isPreloading", "preloadVideo", "le", "showVideo", "startVideo", "isHovered", "setHovered", "ye", "borderRadius", "useRadius", "hasBorderRadius", "p", "Instructions", "parsedURL", "parseVideoURL", "ErrorMessage", "videoId", "embedURL", "searchParams", "iframeProps", "u", "wrapperStyle", "videoStyle", "getThumbnailURL", "PlayButton", "addPropertyControls", "ControlType", "borderRadiusControl", "defaultEvents", "defaultProps", "urlString", "getEmbedURL", "pathSegments", "res", "pre", "ext", "emptyStateStyle", "centerTextStyle", "message", "containerStyles", "buttonStyle", "PhosphorFonts", "getFonts", "Icon", "YouTubeFonts", "Youtube", "VideoFonts", "Video", "VideoControls", "getPropertyControls", "enabledGestures", "cycleOrder", "serializationHash", "variantClassNames", "addPropertyOverrides", "overrides", "variants", "nextOverrides", "variant", "transition1", "convertFromEnum", "value", "activeLocale", "toBoolean", "transformTemplate1", "_", "t", "animation", "transition2", "textEffect", "convertFromEnum1", "toImageSrc", "Transition", "children", "config", "re", "MotionConfigContext", "transition", "contextValue", "se", "p", "Variants", "motion", "x", "humanReadableEnumMap", "humanReadableVariantMap", "getProps", "height", "id", "text", "videoFile", "videoPlayerYoutube", "videoPoster", "videoPoster1", "width", "youtubeLink", "props", "createLayoutDependency", "Component", "Y", "ref", "fallbackRef", "pe", "refBinding", "defaultLayoutId", "ae", "setLocale", "useLocaleInfo", "componentViewport", "useComponentViewport", "style", "className", "layoutId", "Mg2lPdiRN", "F4L34O8Rv", "hlzoOERZk", "JL8Y7mSiZ", "NIdlvIwGn", "q7pw1mcVM", "restProps", "baseVariant", "classNames", "clearLoadingGesture", "gestureHandlers", "gestureVariant", "isLoading", "setGestureState", "setVariant", "useVariantState", "layoutDependency", "activeVariantCallback", "delay", "useActiveVariantCallback", "onTap1fb2sjq", "args", "scopingClassNames", "cx", "visible", "isDisplayed", "isDisplayed1", "visible1", "LayoutGroup", "u", "ComponentViewportProvider", "SmartComponentScopedContainer", "RichText2", "css", "FramerOwraS6EHV", "withCSS", "OwraS6EHV_default", "addPropertyControls", "ControlType", "addFonts", "getFontsFromSharedStyle", "fonts", "isMotionValue", "v", "MotionValue", "useAutoMotionValue", "inputValue", "options", "optionsRef", "pe", "animation", "didInitialMount", "isOnCanvas", "RenderTarget", "onChangeDeps", "onChange", "te", "transformer", "value", "ref", "value1", "useConstant", "isMotionValue", "motionValue", "ue", "ref1", "newValue", "ref2", "animate2", "_global", "global", "exports", "navigator", "root", "factory", "window", "propertyNames", "i", "len", "val", "tOfVal", "absArr", "flag", "element", "type", "currentTime", "totalTime", "frameMultiplier", "totalLoops", "currentLoop", "firstFrame", "totalFrames", "target", "nativeError", "_count", "h", "s", "v", "r", "g", "b", "p", "q", "t", "max", "min", "d", "color", "offset", "hsv", "colorMap", "hex", "eventName", "args", "callback", "createRegularArray", "arr", "value", "createTypedArrayFactory", "prop", "container", "blendModeEnums", "mode", "_cos", "_sin", "_tan", "_rnd", "reset", "rotate", "angle", "mCos", "mSin", "rotateX", "rotateY", "rotateZ", "shear", "sx", "sy", "skew", "ax", "ay", "skewFromAxis", "scale", "sz", "setTransform", "a", "c", "e", "f", "j", "k", "l", "m", "n", "o", "translate", "tx", "ty", "tz", "transform", "a2", "b2", "c2", "d2", "e2", "f2", "g2", "h2", "i2", "j2", "k2", "l2", "m2", "n2", "o2", "p2", "_p", "a1", "b1", "c1", "d1", "e1", "f1", "g1", "h1", "i1", "j1", "k1", "l1", "m1", "n1", "o1", "p1", "isIdentity", "equals", "matr", "clone", "cloneFromProps", "props", "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", "pool", "math", "width", "chunks", "digits", "rngname", "startdenom", "significance", "overflow", "mask", "nodecrypto", "seedrandom", "seed", "options", "key", "shortseed", "mixkey", "flatten", "tostring", "autoseed", "arc4", "ARC4", "prng", "is_math_call", "state", "copy", "keylen", "me", "count", "obj", "depth", "result", "typ", "stringseed", "smear", "out", "browser", "plugins", "ob", "getBezierEasing", "beziers", "nm", "str", "bezEasing", "BezierEasing", "NEWTON_ITERATIONS", "NEWTON_MIN_SLOPE", "SUBDIVISION_PRECISION", "SUBDIVISION_MAX_ITERATIONS", "kSplineTableSize", "kSampleStepSize", "float32ArraySupported", "A", "aA1", "aA2", "B", "C", "calcBezier", "aT", "getSlope", "binarySubdivide", "aX", "aA", "aB", "mX1", "mX2", "currentX", "currentT", "newtonRaphsonIterate", "aGuessT", "currentSlope", "points", "mY1", "mY2", "mSampleValues", "intervalStart", "currentSample", "lastSample", "dist", "guessForT", "initialSlope", "lastTime", "vendors", "currTime", "timeToCall", "id", "sources", "destination", "sourcePrototype", "attr", "object", "prototype", "ProxyFunction", "pointOnLine2D", "x1", "y1", "x2", "y2", "x3", "y3", "det1", "pointOnLine3D", "z1", "z2", "z3", "dist1", "dist2", "dist3", "diffDist", "getBezierLength", "pt4", "curveSegments", "ptCoord", "perc", "addedLength", "ptDistance", "point", "lastPoint", "lengthData", "getSegmentsLength", "shapeData", "segmentsLength", "closed", "pathV", "pathO", "pathI", "lengths", "totalLength", "BezierData", "length", "PointData", "partial", "buildBezierData", "storedData", "bezierName", "bezierData", "getDistancePerc", "percents", "initPos", "lengthPos", "lPerc", "dir", "getPointInSegment", "percent", "t1", "u1", "ptX", "ptY", "bezierSegmentPoints", "getNewSegment", "startPerc", "endPerc", "t0", "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", "layers", "comps", "fontManager", "layerData", "jLen", "kLen", "maskProps", "convertPathsToAbsoluteValues", "findCompLayers", "completeShapes", "completeText", "path", "checkVersion", "minimum", "animVersionString", "animVersion", "checkText", "minimumVersion", "updateTextLayer", "textLayer", "documentData", "iterateLayers", "animationData", "checkChars", "pathData", "paths", "checkColors", "iterateShapes", "shapes", "checkShapes", "completeClosingShapes", "completeData", "data", "moduleOb", "fontData", "styles", "fWeight", "fStyle", "styleName", "maxWaitingTime", "emptyChar", "combinedCharacters", "trimFontOptions", "font", "familyArray", "enabledFamilies", "setUpNode", "family", "parentNode", "node", "checkLoadedFonts", "w", "loadedCount", "createHelper", "def", "tHelper", "fontProps", "tCanvasHelper", "addFonts", "defs", "fontArr", "_pendingFonts", "shouldLoadFont", "loadedSelector", "sc", "addChars", "chars", "found", "getCharData", "char", "style", "measureText", "fontName", "size", "index", "doubleSize", "singleSize", "getFontByName", "name", "getCombinedCharacterCodes", "setIsLoaded", "Font", "fontPrototype", "initFrame", "mathAbs", "interpolateValue", "frameNum", "caching", "offsetTime", "newValue", "iterationIndex", "keyData", "nextKeyData", "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", "quat", "qx", "qy", "qz", "qw", "heading", "attitude", "bank", "values", "c3", "s1", "s2", "s3", "getValueAtCurrentTime", "initTime", "endTime", "renderResult", "setVValue", "multipliedValue", "processEffectsSequence", "finalValue", "addEffect", "effectFunction", "ValueProperty", "elem", "mult", "MultiDimensionalProperty", "KeyframedValueProperty", "KeyframedMultidimensionalProperty", "to", "ti", "arrLen", "getProp", "defaultVector", "applyToMatrix", "mat", "_mdf", "processKeys", "forceRender", "frameRate", "v1", "v2", "px", "py", "precalculateMatrix", "autoOrient", "addDynamicProperty", "TransformProperty", "getTransformProperty", "pos", "replace", "vX", "vY", "oX", "oY", "iX", "iY", "newPath", "vertices", "outPoints", "inPoints", "init", "cnt", "interpolateShape", "previousValue", "keyPropS", "keyPropE", "isHold", "vertexValue", "kf", "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", "dataProp", "keys", "getConstructorFunction", "getKeyframedConstructorFunction", "modifiers", "registerModifier", "getModifier", "shapeLength", "totalModifierLength", "segments", "shapeSegments", "segmentOb", "shapeS", "shapeE", "pathsData", "_isFirstFrame", "_s", "shapePaths", "totalShapeLength", "localShapeCollection", "edges", "newShapesData", "lastShapeInCollection", "lastShape", "newPaths", "shapePath", "newShape", "shapeSegment", "currentLengthData", "segmentCount", "segment", "segmentLength", "clonedPath", "currentV", "currentI", "currentO", "closerV", "distance", "newPosPerc", "rd", "amount", "centerPoint", "pathLength", "pMatrix", "rMatrix", "sMatrix", "inv", "scaleX", "scaleY", "elemsData", "elements", "newElements", "renderFlag", "items", "itemsTransform", "cont", "hasReloaded", "copies", "group", "elems", "transformData", "offsetModulo", "roundOffset", "pProps", "rProps", "sProps", "iteration", "renderer", "cLength", "diff", "pathNodes", "_o", "_i", "shapeString", "AudioController", "audioFactory", "audio", "rateValue", "assetPath", "proxyImage", "canvas", "ctx", "imageLoaded", "footageLoaded", "getAssetsPath", "assetData", "assetsPath", "originalPath", "imagePath", "testImageLoaded", "img", "intervalId", "box", "createImageData", "createImgData", "createFootageData", "footageData", "loadAssets", "assets", "cb", "setPath", "setAssetsPath", "getAsset", "destroy", "loadedImages", "loadedFootages", "setCacheType", "elementHelper", "ImagePreloaderFactory", "createFilter", "createAlphaToLuminanceFilter", "filId", "skipCoordinates", "fil", "feColorMatrix", "formatResponse", "xhr", "loadAsset", "errorCallback", "response", "err", "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", "text", "charactersArray", "charCode", "newLineFlag", "anchorGrouping", "currentSize", "currentPos", "lineWidths", "lineWidth", "maxLineWidth", "charData", "trackingOffset", "boxWidth", "boxHeight", "currentHeight", "finalText", "lastSpaceIndex", "uncollapsedSpaces", "currentChar", "animatorData", "letterData", "based", "indexes", "currentInd", "newInd", "newData", "dData", "_canResize", "_fontValue", "floor", "TextSelectorPropFactory", "easer", "tot", "newCharsFlag", "divisor", "getTextSelectorProp", "initialLength", "_create", "_release", "_length", "_maxLength", "newElement", "release", "double", "create", "shape", "cloned", "newShapeCollection", "shapeCollection", "parsePayloadLines", "payload", "lines", "line", "keysCount", "_markers", "markers", "_marker", "markerData", "num", "layer", "newLayers", "pInterface", "parentName", "hierarchy", "comp", "animData", "fontsContainer", "animationItem", "config", "ariaLabel", "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", "currentMasks", "layerId", "expansor", "feMorph", "maskType", "maskRef", "filterID", "isFirstFrame", "finalMat", "viewData", "pathString", "pathShapeValue", "isVisible", "transforms", "ptNew", "component", "_prototype", "position", "level", "transformers", "mProps", "styleOb", "pathElement", "gradientId", "gfill", "stops", "stop", "opacityId", "opFill", "_identityMatrix", "_matrixHelper", "createRenderFunction", "renderFill", "renderGradient", "renderGradientStroke", "renderStroke", "renderPath", "renderContentTransform", "styleData", "itemData", "pathStringTransformed", "redraw", "lLen", "lvl", "iterations", "styleElem", "hasOpacity", "attr1", "attr2", "cValues", "oValues", "ang", "sequence", "transformsManager", "styledShape", "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", "GradientConstructor", "transformProperty", "ownTransformers", "shapeProperty", "itemsData", "prevViewData", "render", "ownStyles", "ownModifiers", "currentTransform", "modifier", "processedPos", "animatedContent", "filter", "filterManager", "feMerge", "feMergeNode", "colorBlack", "colorWhite", "opacity", "feGaussianBlur", "kBlurrinessToSigma", "sigma", "dimensions", "sigmaX", "sigmaY", "edgeMode", "elemChildren", "groupPath", "dasharrayValue", "lineLength", "units", "feComponentTransfer", "feFuncR", "feFuncG", "feFuncB", "color1", "color2", "color3", "tableR", "tableG", "tableB", "effectElements", "inputBlack", "inputWhite", "gamma", "outputBlack", "outputWhite", "table", "colorValue", "outputDelta", "inputDelta", "filterSize", "feOffset", "feFlood", "feComposite", "col", "filterElem", "symbolId", "children", "nextChild", "useElem", "symbol", "newLength", "currentSavedOp", "forceRealStack", "imgW", "imgH", "imgRel", "canvasRel", "widthCrop", "heightCrop", "hasMasks", "shouldRender", "ownTransforms", "parentTransform", "groupTransform", "nodes", "currentStyle", "isMain", "shapeNodes", "groupTransformMat", "grd", "hasFill", "hasStroke", "commands", "pathArr", "lastFill", "lastStroke", "lastStrokeW", "transformedElementStyle", "matrixValue", "item", "boundingBox", "vPoint", "oPoint", "nextIPoint", "nextVPoint", "bounds", "p3", "b2ac", "t2", "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", "ev", "animItem", "subtractPlayingCount", "registerAnimation", "setupAnimation", "getRegisteredAnimations", "lenAnims", "animations", "addPlayingCount", "activate", "loadAnimation", "params", "setSpeed", "animation", "setDirection", "play", "resume", "nowTime", "elapsedTime", "first", "pause", "goToAndStop", "isFrame", "togglePause", "searchAnimations", "standalone", "animElements", "body", "div", "resize", "freeze", "unfreeze", "setVolume", "mute", "unmute", "animType", "wrapperAttributes", "loop", "autoplay", "prerender", "segmentPath", "error", "markerName", "marker", "numValue", "nextValue", "_isComplete", "end", "pendingFrame", "forceFlag", "initExpressions", "stackCount", "registers", "pushExpression", "popExpression", "releaseInstances", "registerExpressionProperty", "expression", "tOfV", "tOfA", "lenA", "retArr", "tOfB", "lenB", "mm", "arr1", "arr2", "vec", "tMin", "tMax", "value1", "value2", "_tMin", "rnd", "rndm", "inTangents", "outTangents", "arrPlaceholder", "inVertexPoint", "outVertexPoint", "wiggle", "freq", "amp", "iWiggle", "lenWiggle", "addedAmps", "periods", "duration", "elem1", "elem2", "fVec", "pitch", "yaw", "val1", "val2", "fn", "iKey", "lenKey", "obKey", "frames", "fps", "framesPerSecond", "_value", "searchExpressions", "getValueAtTime", "getSpeedAtTime", "delta", "speed", "getVelocityAtTime", "velocity", "getStaticValueAtTime", "setGroupProperty", "propertyGroup", "addPropertyDecorator", "loopOut", "durationFlag", "currentFrame", "keyframes", "lastKeyFrame", "cycleDuration", "firstKeyFrame", "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", "vectorType", "xLength", "yLength", "magnitude", "unitVector", "propertyGetShapeProp", "trims", "addDecorator", "isKeyframed", "hasExpressions", "view", "interfaceFunction", "_propertyGroup", "parentPropertyGroup", "propertyName", "iterateElements", "groupInterfaceFactory", "fillInterfaceFactory", "strokeInterfaceFactory", "trimInterfaceFactory", "ellipseInterfaceFactory", "starInterfaceFactory", "rectInterfaceFactory", "roundedInterfaceFactory", "repeaterInterfaceFactory", "contentsInterfaceFactory", "interfaces", "transformInterface", "transformInterfaceFactory", "content", "_dashPropertyGroup", "dashOb", "addPropertyToDashOb", "_interfaceFunction", "parentGroupWrapper", "_prevValue", "_sourceText", "_thisLayerFunction", "stringValue", "getMatrix", "toWorldMat", "propMatrix", "transformMat", "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", "MaskManager", "_masksInterfaces", "maskFunction", "defaultUnidimensionalValue", "defaultMultidimensionalValue", "completeProperty", "expressionValue", "property", "valueProp", "UnidimensionalPropertyInterface", "MultidimensionalPropertyInterface", "arrValue", "defaultGetter", "TextExpressionSelectorProp", "getValueProxy", "total", "propertyGetTextProp", "effectItem", "eff", "href", "plugin", "variable", "vars", "pair", "exports$1", "npm_lottie_web_5_7_default", "SrcType", "Poster", "placeholderUrl", "Lottie", "props", "style", "srcUrl", "srcFile", "srcType", "poster", "progressRaw", "playing", "loop", "posterProgress", "pauseOnCanvas", "isForwardsDirection", "speed", "onClick", "onMouseEnter", "onMouseLeave", "onMouseDown", "onMouseUp", "onComplete", "isOnCanvas", "RenderTarget", "shouldPlay", "direction", "isCustomPoster", "el", "pe", "didInitialMount", "animationInfo", "progress", "useAutoMotionValue", "v", "play", "_animationInfo_current_animation", "_animationInfo_current", "pause", "destroy", "scrubTo", "te", "normalizedProgress", "shouldPlayAfter", "frameNumberTarget", "fetchLottieData", "url", "d", "init", "dataUrl", "data", "setup", "options", "anim", "npm_lottie_web_5_7_default", "ue", "cleanup", "c", "val", "normalizedPosterProgress", "p", "motion", "addPropertyControls", "ControlType", "defaultEvents", "LottieFonts", "getFonts", "Lottie", "LottieControls", "getPropertyControls", "cycleOrder", "serializationHash", "variantClassNames", "addPropertyOverrides", "overrides", "variants", "nextOverrides", "variant", "transition1", "Transition", "value", "children", "config", "re", "MotionConfigContext", "transition", "contextValue", "se", "p", "Variants", "motion", "x", "humanReadableVariantMap", "getProps", "animatedIconJson", "animationSpeed", "description", "height", "id", "title", "width", "props", "_ref", "_ref1", "_ref2", "_humanReadableVariantMap_props_variant", "_ref3", "_ref4", "createLayoutDependency", "Component", "Y", "ref", "activeLocale", "setLocale", "useLocaleInfo", "style", "className", "layoutId", "GCvgLUZrq", "D2NiZ5OHn", "d3DGlGQ78", "YssrYlgQi", "restProps", "baseVariant", "classNames", "clearLoadingGesture", "gestureHandlers", "gestureVariant", "isLoading", "setGestureState", "setVariant", "useVariantState", "layoutDependency", "ref1", "pe", "defaultLayoutId", "ae", "sharedStyleClassNames", "componentViewport", "useComponentViewport", "LayoutGroup", "u", "cx", "ComponentViewportProvider", "RichText2", "css", "FramerPbf2GHKDL", "withCSS", "Pbf2GHKDL_default", "addPropertyControls", "ControlType", "addFonts", "getFontsFromSharedStyle", "fonts", "MotionDivWithFX", "withFX", "motion", "cycleOrder", "serializationHash", "variantClassNames", "addPropertyOverrides", "overrides", "variants", "nextOverrides", "variant", "transition1", "animation", "transition2", "textEffect", "Transition", "value", "children", "config", "re", "MotionConfigContext", "transition", "contextValue", "se", "p", "Variants", "x", "humanReadableVariantMap", "getProps", "description", "height", "id", "title", "width", "props", "_ref", "_ref1", "_humanReadableVariantMap_props_variant", "_ref2", "createLayoutDependency", "Component", "Y", "ref", "activeLocale", "setLocale", "useLocaleInfo", "style", "className", "layoutId", "tLs69h6vu", "DXWWgGjsz", "restProps", "baseVariant", "classNames", "clearLoadingGesture", "gestureHandlers", "gestureVariant", "isLoading", "setGestureState", "setVariant", "useVariantState", "layoutDependency", "ref1", "pe", "defaultLayoutId", "ae", "sharedStyleClassNames", "componentViewport", "useComponentViewport", "LayoutGroup", "cx", "u", "RichText2", "css", "Framert8Oa9Zgb5", "withCSS", "t8Oa9Zgb5_default", "addPropertyControls", "ControlType", "addFonts", "getFontsFromSharedStyle", "fonts", "LottieFonts", "getFonts", "Lottie", "LottieControls", "getPropertyControls", "cycleOrder", "serializationHash", "variantClassNames", "addPropertyOverrides", "overrides", "variants", "nextOverrides", "variant", "transition1", "Transition", "value", "children", "config", "re", "MotionConfigContext", "transition", "contextValue", "se", "p", "Variants", "motion", "x", "humanReadableVariantMap", "getProps", "animatedIconJson", "animationSpeed", "description", "height", "id", "title", "width", "props", "_ref", "_ref1", "_ref2", "_humanReadableVariantMap_props_variant", "_ref3", "_ref4", "createLayoutDependency", "Component", "Y", "ref", "activeLocale", "setLocale", "useLocaleInfo", "style", "className", "layoutId", "GCvgLUZrq", "D2NiZ5OHn", "d3DGlGQ78", "YssrYlgQi", "restProps", "baseVariant", "classNames", "clearLoadingGesture", "gestureHandlers", "gestureVariant", "isLoading", "setGestureState", "setVariant", "useVariantState", "layoutDependency", "ref1", "pe", "defaultLayoutId", "ae", "sharedStyleClassNames", "componentViewport", "useComponentViewport", "LayoutGroup", "u", "cx", "ComponentViewportProvider", "RichText2", "css", "FrameruUCvdlGwy", "withCSS", "uUCvdlGwy_default", "addPropertyControls", "ControlType", "addFonts", "getFontsFromSharedStyle", "fonts", "PhosphorFonts", "getFonts", "Icon", "cycleOrder", "serializationHash", "variantClassNames", "addPropertyOverrides", "overrides", "variants", "nextOverrides", "variant", "transition1", "animation", "transition2", "textEffect", "Transition", "value", "children", "config", "re", "MotionConfigContext", "transition", "contextValue", "se", "p", "Variants", "motion", "x", "humanReadableVariantMap", "getProps", "description", "height", "id", "title", "width", "props", "createLayoutDependency", "Component", "Y", "ref", "fallbackRef", "pe", "refBinding", "defaultLayoutId", "ae", "activeLocale", "setLocale", "useLocaleInfo", "componentViewport", "useComponentViewport", "style", "className", "layoutId", "tLs69h6vu", "DXWWgGjsz", "restProps", "baseVariant", "classNames", "clearLoadingGesture", "gestureHandlers", "gestureVariant", "isLoading", "setGestureState", "setVariant", "useVariantState", "layoutDependency", "scopingClassNames", "cx", "LayoutGroup", "u", "RichText2", "ComponentViewportProvider", "SmartComponentScopedContainer", "SVG", "css", "FramerwWjfgdtli", "withCSS", "wWjfgdtli_default", "addPropertyControls", "ControlType", "addFonts", "getFontsFromSharedStyle", "fonts", "isBrowser", "usePageVisibility", "isVisible", "setIsVisible", "ye", "ue", "onVisibilityChange", "awaitRefCallback", "element", "controller", "refCallbackResolve", "current", "node", "resolve", "reject", "OPACITY_0", "Slideshow", "props", "slots", "startFrom", "direction", "effectsOptions", "autoPlayControl", "dragControl", "alignment", "gap", "padding", "paddingPerSide", "paddingTop", "paddingRight", "paddingBottom", "paddingLeft", "itemAmount", "fadeOptions", "intervalControl", "transitionControl", "arrowOptions", "borderRadius", "progressOptions", "style", "effectsOpacity", "effectsScale", "effectsRotate", "effectsPerspective", "effectsHover", "playOffscreen", "fadeContent", "overflow", "fadeWidth", "fadeInset", "fadeAlpha", "showMouseControls", "arrowSize", "arrowRadius", "arrowFill", "leftArrow", "rightArrow", "arrowShouldSpace", "arrowShouldFadeIn", "arrowPosition", "arrowPadding", "arrowGap", "arrowPaddingTop", "arrowPaddingRight", "arrowPaddingBottom", "arrowPaddingLeft", "showProgressDots", "dotSize", "dotsInset", "dotsRadius", "dotsPadding", "dotsGap", "dotsFill", "dotsBackground", "dotsActiveOpacity", "dotsOpacity", "dotsBlur", "paddingValue", "isCanvas", "RenderTarget", "filteredSlots", "hasChildren", "j", "isHorizontal", "isInverted", "u", "placeholderStyles", "p", "emojiStyles", "titleStyles", "subtitleStyles", "parentRef", "pe", "childrenRef", "se", "timeoutRef", "size", "setSize", "ye", "isHovering", "setIsHovering", "shouldPlayOnHover", "setShouldPlayOnHover", "isMouseDown", "setIsMouseDown", "isResizing", "setIsResizing", "dupedChildren", "duplicateBy", "measure", "te", "firstChild", "lastChild", "parentLength", "start", "childrenLength", "itemSize", "itemWidth", "itemHeight", "viewportLength", "window", "scheduleMeasure", "frame", "fe", "initialResize", "ue", "resize", "contentSize", "Z", "timer", "totalItems", "childrenSize", "itemWithGap", "itemOffset", "currentItem", "setCurrentItem", "isDragging", "setIsDragging", "visibilityRef", "isInView", "useInView", "isVisible", "usePageVisibility", "factor", "xOrY", "useMotionValue", "canvasPosition", "newPosition", "wrappedValue", "useTransform", "value", "wrapped", "wrap", "wrappedIndex", "wrappedIndexInverted", "switchPages", "animate", "item", "setDelta", "delta", "transition", "setPage", "index", "currentItemWrapped", "currentItemWrappedInvert", "goto", "gotoInverted", "handleDragStart", "handleDragEnd", "event", "offset", "velocity", "offsetXorY", "velocityThreshold", "velocityXorY", "isHalfOfNext", "isHalfOfPrev", "normalizedOffset", "itemDelta", "itemDeltaFromOne", "childCounter", "columnOrRowValue", "child", "childIndex", "ref", "Slide", "fadeDirection", "fadeWidthStart", "fadeWidthEnd", "fadeInsetStart", "clamp", "fadeInsetEnd", "fadeMask", "dots", "dotsBlurStyle", "i", "Dot", "dotStyle", "baseButtonStyles", "dragProps", "arrowHasTop", "arrowHasBottom", "arrowHasLeft", "arrowHasRight", "arrowHasMid", "containerStyle", "motion", "controlsStyles", "dotsContainerStyle", "addPropertyControls", "ControlType", "num", "min", "max", "X", "Y", "slideKey", "width", "height", "numChildren", "effects", "isLast", "fallbackRef", "childOffset", "scrollRange", "val", "rotateY", "rotateX", "opacity", "scale", "originXorY", "latest", "newValue", "visibility", "mix", "key", "LayoutGroup", "q", "selectedOpacity", "total", "buttonStyle", "isSelected", "inlinePadding", "top", "bottom", "right", "left", "PhosphorFonts", "getFonts", "Icon", "serializationHash", "variantClassNames", "transition1", "toResponsiveImage", "value", "Transition", "children", "config", "re", "MotionConfigContext", "transition", "contextValue", "se", "p", "Variants", "motion", "x", "getProps", "height", "id", "name1", "photo", "profession", "review", "reviewTitle", "width", "props", "_ref", "_ref1", "_ref2", "_ref3", "createLayoutDependency", "variants", "Component", "Y", "ref", "activeLocale", "setLocale", "useLocaleInfo", "style", "className", "layoutId", "variant", "dhmQaw67Q", "hQUvFvwqs", "YhKDzD0FO", "L04dSzjGv", "hRrIvxKlX", "restProps", "baseVariant", "classNames", "clearLoadingGesture", "gestureHandlers", "gestureVariant", "isLoading", "setGestureState", "setVariant", "useVariantState", "variantClassNames", "layoutDependency", "ref1", "pe", "defaultLayoutId", "ae", "sharedStyleClassNames", "componentViewport", "useComponentViewport", "LayoutGroup", "cx", "serializationHash", "u", "ComponentViewportProvider", "Icon", "RichText2", "Image2", "getLoadingLazyAtYPosition", "css", "Framerrr47LD73u", "withCSS", "rr47LD73u_default", "addPropertyControls", "ControlType", "addFonts", "PhosphorFonts", "getFontsFromSharedStyle", "fonts", "CardsTestimonialsFonts", "getFonts", "rr47LD73u_default", "SlideshowFonts", "Slideshow", "TickerFonts", "Ticker", "cycleOrder", "serializationHash", "variantClassNames", "addPropertyOverrides", "overrides", "variants", "nextOverrides", "variant", "transition1", "addImageAlt", "image", "alt", "Transition", "value", "children", "config", "re", "MotionConfigContext", "transition", "contextValue", "se", "p", "Variants", "motion", "x", "humanReadableVariantMap", "getProps", "height", "id", "speed", "width", "props", "createLayoutDependency", "Component", "Y", "ref", "fallbackRef", "pe", "refBinding", "defaultLayoutId", "ae", "activeLocale", "setLocale", "useLocaleInfo", "componentViewport", "useComponentViewport", "style", "className", "layoutId", "amp5j9r0L", "restProps", "baseVariant", "classNames", "clearLoadingGesture", "gestureHandlers", "gestureVariant", "isLoading", "setGestureState", "setVariant", "useVariantState", "layoutDependency", "scopingClassNames", "cx", "isDisplayed", "isDisplayed1", "LayoutGroup", "u", "ComponentViewportProvider", "SmartComponentScopedContainer", "css", "FramerXa9II8U1H", "withCSS", "Xa9II8U1H_default", "addPropertyControls", "ControlType", "addFonts", "t", "e", "r", "n", "i", "s", "a", "o", "u", "l", "h", "f", "c", "g", "d", "p", "y", "v", "m", "w", "b", "I", "k", "S", "E", "M", "T", "L", "_", "B", "x", "C", "A", "F", "P", "j", "D", "N", "$", "R", "O", "q", "z", "H", "J", "W", "G", "K", "V", "X", "Q", "Z", "Y", "U", "tt", "te", "tr", "tn", "ti", "ts", "ta", "to", "tl", "tu", "th", "tf", "tc", "tg", "td", "tp", "ty", "tv", "tm", "tw", "tb", "tI", "tU", "tk", "tS", "tE", "tM", "tT", "tL", "tB", "ControlType", "tx", "tC", "tA", "tF", "tP", "tj", "tD", "tN", "t$", "tR", "tO", "tq", "tz", "tH", "tJ", "tW", "tG", "tK", "tV", "tX", "tQ", "tZ", "tY", "t1", "t0", "t2", "t6", "t3", "t5", "t4", "t8", "t7", "t9", "et", "ee", "er", "ei", "es", "ea", "eo", "e", "r", "n", "t", "eu", "el", "i", "eh", "f", "v", "ef", "ec", "eg", "eS", "a", "em", "ey", "ev", "ed", "ep", "eb", "tM", "eI", "o", "u", "ew", "s", "k", "ek", "eU", "eE", "eL", "l", "h", "eM", "c", "eT", "eB", "e", "n", "r", "i", "tg", "b", "tS", "tc", "ex", "eo", "a", "t", "tL", "o", "u", "m", "eE", "s", "k", "eC", "t", "e", "r", "resolveRichText", "n", "ControlType", "o", "QueryEngine", "u", "QueryCache", "p", "eC", "resolveRichText", "JJB7u8Dfa_default", "addPropertyControls", "NavigationFonts", "getFonts", "KCr_QRiN_default", "VideoFonts", "Video", "TagFonts", "cgnRul16Q_default", "ContainerWithFX", "withFX", "Container", "ButtonsPrimaryFonts", "ht0qGf7EI_default", "ButtonsSecondaryFonts", "BlpxRgQl6_default", "MotionDivWithFX", "motion", "HeroVideoFonts", "OwraS6EHV_default", "CardsProcessFonts", "Pbf2GHKDL_default", "ServiceCardsChatbotFonts", "wWjfgdtli_default", "ServiceCardsAnalysisFonts", "HfXvyjRaq_default", "ServiceCardsAutomationFonts", "cj3FVOB4Y_default", "ServiceCardsChartFonts", "t8Oa9Zgb5_default", "CardsBenefitsFonts", "uUCvdlGwy_default", "CardsProjectsFonts", "AJk7X8LQA_default", "ButtonsLoadMoreFonts", "Z2795Ycsf_default", "CardsPricingFonts", "eafUe285s_default", "TickerTestimonialsFonts", "Xa9II8U1H_default", "FAQsSectionFonts", "gPZgk2LeF_default", "ButtonsFormsFonts", "ZNb2B61HM_default", "CardsArticlesFonts", "nqTjKFDfM_default", "NewsleterCTAFonts", "DOn8Na42T_default", "FooterFonts", "Qt65ANnPu_default", "breakpoints", "isBrowser", "serializationHash", "variantClassNames", "animation", "transition1", "animation1", "animation2", "transition2", "textEffect", "transition3", "animation3", "transition4", "animation4", "toResponsiveImage", "value", "loaderVariants", "repeaterState", "variants", "currentVariant", "QueryData", "query", "pageSize", "children", "paginatedQuery", "paginationInfo", "loadMore", "useLoadMorePaginatedQuery", "data", "useQueryData", "formVariants", "form", "toDateString", "options", "activeLocale", "date", "display", "dateOptions", "fallbackLocale", "locale", "QueryData1", "HTMLStyle", "useIsOnFramerCanvas", "p", "humanReadableVariantMap", "getProps", "height", "id", "width", "props", "Component", "Y", "ref", "fallbackRef", "pe", "refBinding", "defaultLayoutId", "ae", "setLocale", "useLocaleInfo", "componentViewport", "useComponentViewport", "style", "className", "layoutId", "variant", "NDD3uA1qEb74Dgi6Cp", "k4UM0Ca6fb74Dgi6Cp", "vanAYq_ofb74Dgi6Cp", "cSUQHOsZ8b74Dgi6Cp", "XvBkjwmJob74Dgi6Cp", "idb74Dgi6Cp", "VTQPeE7OZAoeO9qo8h", "AKqRwGdMkAoeO9qo8h", "T7EsA58zYAoeO9qo8h", "t2KOsoS3WAoeO9qo8h", "idAoeO9qo8h", "restProps", "ue", "metadata", "robotsTag", "ie", "baseVariant", "hydratedBaseVariant", "useHydratedBreakpointVariants", "gestureVariant", "activeVariantCallback", "delay", "useActiveVariantCallback", "Wld3NDzSj1b86s49", "overlay", "args", "scopingClassNames", "cx", "ref1", "ref2", "ref3", "ref4", "ref5", "elementId", "useRouteElementId", "ref6", "isDisplayed", "isDisplayed1", "router", "useRouter", "elementId1", "ref7", "elementId2", "elementId3", "elementId4", "elementId5", "elementId6", "activeLocaleCode", "useLocaleCode", "useCustomCursors", "GeneratedComponentContext", "u", "LayoutGroup", "ComponentViewportProvider", "PropertyOverrides2", "Image2", "RichText2", "x", "ResolveLinks", "resolvedLinks", "ChildrenCanSuspend", "JJB7u8Dfa_default", "collection", "l", "index", "PathVariablesContext", "FormContainer", "formState", "FormPlainTextInput2", "Link", "lDSAEoVb7_default", "collection1", "paginationInfo1", "loadMore1", "index1", "resolvedLinks1", "resolvedLinks2", "css", "FrameraugiA20Il", "withCSS", "augiA20Il_default", "addFonts", "getFontsFromSharedStyle", "fonts", "__FramerMetadata__"]
}
