Help
RSS
API
Feed
Maltego
Contact
Domain > www.ctacnv.com
×
More information on this domain is in
AlienVault OTX
Is this malicious?
Yes
No
DNS Resolutions
Date
IP Address
2025-12-09
104.18.26.130
(
ClassC
)
Port 443
HTTP/1.1 200 OKDate: Tue, 09 Dec 2025 13:03:28 GMTContent-Type: text/html; charsetUTF-8Transfer-Encoding: chunkedConnection: keep-aliveServer: cloudflarevary: Accept-Encodinglast-modified: Wed, 03 Dec 2025 14:27:36 GMTCache-Control: max-age0expires: Tue, 09 Dec 2025 13:03:28 GMTx-cache-status: MISSx-powered-by: PleskLincf-cache-status: DYNAMICCF-RAY: 9ab4b3e9f8ffff1a-PDX !doctype html>html langen-US classctac> head> meta charsetutf-8> meta http-equivx-ua-compatible contentieedge> meta nameviewport contentwidthdevice-width, initial-scale1, maximum-scale2> link relpreload hrefhttps://www.ctacnv.com/app/themes/supress/dist/images/banner-bg.svg asimage /> link relpreload hrefhttps://www.ctacnv.com/app/themes/supress/dist/fonts/ctac-icons.woff2 asfont typefont/woff2 crossoriginanonymous> !-- Google Tag Manager -->script>(function(w,d,s,l,i){wlwl||;wl.push({gtm.start: new Date().getTime(),event:gtm.js});var fd.getElementsByTagName(s)0, jd.createElement(s),dll!dataLayer?&l+l:;j.asynctrue;j.src https://www.googletagmanager.com/gtm.js?id+i+dl;f.parentNode.insertBefore(j,f); })(window,document,script,dataLayer,GTM-TVNFFB9);/script>!-- End Google Tag Manager --> style> .menu-button { cursor: pointer !important; } .menu-button button { transition: all .25s ease-out; } .menu-button:hover button { color: #2c2c2a !important; border-color: white !important; background-color: white !important; } /style> script typetext/javascript> window.dataLayer window.dataLayer || ; function gtag() { dataLayer.push(arguments); } gtag(consent, default, { ad_personalization: denied, ad_storage: denied, ad_user_data: denied, analytics_storage: denied, functionality_storage: denied, personalization_storage: denied, security_storage: granted, wait_for_update: 500, }); gtag(set, ads_data_redaction, true); gtag(set, url_passthrough, true);/script>script typetext/javascript idCookiebot srchttps://consent.cookiebot.com/uc.js data-implementationwp data-cbid6ea0ca37-02d9-4226-9d87-c4ee84555885 async >/script>meta namerobots contentindex, follow, max-image-preview:large, max-snippet:-1, max-video-preview:-1 /> !-- This site is optimized with the Yoast SEO Premium plugin v25.6 (Yoast SEO v25.6) - https://yoast.com/wordpress/plugins/seo/ --> title>Ctac | Enabling Your Ambition | IT Technology/title>link crossorigin data-rocket-preconnect hrefhttps://js-na1.hs-scripts.com relpreconnect>link crossorigin data-rocket-preconnect hrefhttps://consent.cookiebot.com relpreconnect>link crossorigin data-rocket-preconnect hrefhttps://www.googletagmanager.com relpreconnect>link crossorigin data-rocket-preconnect hrefhttps://js.hsadspixel.net relpreconnect>link crossorigin data-rocket-preconnect hrefhttps://js.hs-banner.com relpreconnect>link crossorigin data-rocket-preconnect hrefhttps://js.hs-analytics.net relpreconnect>link crossorigin data-rocket-preconnect hrefhttps://cdn.leadinfo.net relpreconnect>link crossorigin data-rocket-preconnect hrefhttps://bat.bing.com relpreconnect>link crossorigin data-rocket-preconnect hrefhttps://js.hs-scripts.com relpreconnect>link crossorigin data-rocket-preconnect hrefhttps://consentcdn.cookiebot.com relpreconnect>link relpreload data-rocket-preload asimage hrefhttps://www.ctacnv.com/app/themes/supress/dist/images/line-desktop.png fetchpriorityhigh> link relcanonical hrefhttps://www.ctacnv.com/ /> meta propertyog:locale contenten_US /> meta propertyog:type contentwebsite /> meta propertyog:title contentCtac | Enabling Your Ambition /> meta propertyog:description contentIT technologie op het niveau van jouw zakelijke ambitie. We combineren een passie voor technologie met een scherp oog voor bedrijfsprocessen. /> meta propertyog:url contenthttps://www.ctacnv.com/ /> meta propertyog:site_name contentCtac /> meta propertyarticle:modified_time content2025-06-24T12:15:11+00:00 /> meta propertyog:image contenthttps://www.ctacnv.com/app/uploads/2024/03/Metavisual_Ctac.jpg /> meta propertyog:image:width content1910 /> meta propertyog:image:height content478 /> meta propertyog:image:type contentimage/jpeg /> meta nametwitter:card contentsummary_large_image /> meta nametwitter:title contentHome /> !-- / Yoast SEO Premium plugin. -->style idwp-img-auto-sizes-contain-inline-css typetext/css>img:is(sizesauto i,sizes^auto, i){contain-intrinsic-size:3000px 1500px}/*# sourceURLwp-img-auto-sizes-contain-inline-css *//style>style idclassic-theme-styles-inline-css typetext/css>/*! This file is auto-generated */.wp-block-button__link{color:#fff;background-color:#32373c;border-radius:9999px;box-shadow:none;text-decoration:none;padding:calc(.667em + 2px) calc(1.333em + 2px);font-size:1.125em}.wp-block-file__button{background:#32373c;color:#fff;text-decoration:none}/*# sourceURL/wp-includes/css/classic-themes.min.css *//style>link relstylesheet href/app/themes/supress/dist/styles/app.css?id39ae765c2579ebc866b1>script typetext/javascript idwpml-xdomain-data-js-extra>/* !CDATA */var wpml_xdomain_data {css_selector:wpml-ls-item,ajax_url:https://www.ctacnv.com/wp/wp-admin/admin-ajax.php,current_lang:en,_nonce:f3849edf79};//# sourceURLwpml-xdomain-data-js-extra/* > *//script>script src/app/plugins/sitepress-multilingual-cms/res/js/xdomain-data.js defer data-wp-strategydefer>/script>script src/wp/wp-includes/js/jquery/jquery.min.js>/script>script src/wp/wp-includes/js/jquery/jquery-migrate.min.js>/script>script typetext/javascript idwhp7372front.js2724-js-extra>/* !CDATA */var whp_local_data {add_url:https://www.ctac.nl/wp-admin/post-new.php?post_typeevent,ajaxurl:https://www.ctacnv.com/wp/wp-admin/admin-ajax.php};//# sourceURLwhp7372front.js2724-js-extra/* > *//script>script src/app/plugins/wp-security-hardening/modules/js/front.js>/script> !-- DO NOT COPY THIS SNIPPET! Start of Page Analytics Tracking for HubSpot WordPress plugin v11.3.16--> script classhsq-set-content-id data-content-idstandard-page> var _hsq _hsq || ; _hsq.push(setContentType, standard-page); /script> !-- DO NOT COPY THIS SNIPPET! End of Page Analytics Tracking for HubSpot WordPress plugin --> !-- Schema & Structured Data For WP v1.48 - -->script typeapplication/ld+json classsaswp-schema-markup-output>{@context:https:\/\/schema.org\/,@type:Organization,@id:https:\/\/www.ctacnv.com#Organization,name:Ctac,url:https:\/\/www.ctac.nl,sameAs:,image:{@type:ImageObject,@id:https:\/\/www.ctacnv.com\/#primaryimage,url:\/app\/uploads\/2024\/03\/Metavisual_Ctac-1200x900.jpg,width:1200,height:900},{@type:ImageObject,url:\/app\/uploads\/2024\/03\/Metavisual_Ctac-1200x720.jpg,width:1200,height:720},{@type:ImageObject,url:\/app\/uploads\/2024\/03\/Metavisual_Ctac-1200x675.jpg,width:1200,height:675},{@type:ImageObject,url:\/app\/uploads\/2024\/03\/Metavisual_Ctac-300x300.jpg,width:300,height:300}},{@context:https:\/\/schema.org\/,@type:Organization,@id:https:\/\/www.ctacnv.com#Organization,name:Ctac,url:https:\/\/www.ctac.nl,sameAs:}/script>link relicon href/app/uploads/2024/05/cropped-CTAC_Linkedin_Profiel_V01-32x32.jpg sizes32x32>link relicon href/app/uploads/2024/05/cropped-CTAC_Linkedin_Profiel_V01-192x192.jpg sizes192x192>link relapple-touch-icon href/app/uploads/2024/05/cropped-CTAC_Linkedin_Profiel_V01-180x180.jpg>meta namemsapplication-TileImage content/app/uploads/2024/05/cropped-CTAC_Linkedin_Profiel_V01-270x270.jpg> style idrocket-lazyrender-inline-css>data-wpr-lazyrender {content-visibility: auto;}/style>meta namegenerator contentWP Rocket 3.19.2.1 data-wpr-featureswpr_preconnect_external_domains wpr_automatic_lazy_rendering wpr_oci />/head> body classpage-single page page-787 home > !-- Bing ads --> script>(function(w,d,t,r,u){var f,n,i;wuwu||,ffunction(){var o{ti:97062595, enableAutoSpaTracking: true};o.qwu,wunew UET(o),wu.push(pageLoad)},nd.createElement(t),n.srcr,n.async1,n.onloadn.onreadystatechangefunction(){var sthis.readyState;s&&s!loaded&&s!complete||(f(),n.onloadn.onreadystatechangenull)},id.getElementsByTagName(t)0,i.parentNode.insertBefore(n,i)})(window,document,script,//bat.bing.com/bat.js,uetq);/script> div classnavbar > div classnavbar__overlay>/div> div classcontainer> div classrow navbar__inner align-items-center justify-content-between> div classcol-auto> a hrefhttps://www.ctacnv.com classnavbar__brand titleBack to homepage> img src/app/uploads/2023/08/logo-ctac.svg altCtac> /a> /div> div classnavbar-menu> ul classnavbar-menu__nav unstyled> li classnav-item has-childs> a href## classnav-link nav-link-parent> Expertises /a> div classnavbar-sub> div classcontainer> div classnavbar-sub--inner> div classrow> div classcol-md-12> div classnavbar-sub__wrapper> div classnavbar-sub__items> a hrefhttps://www.ctacnv.com/strategy-transformation/ classfont-small navbar-sub__small-title target_self titleStrategy & Transformation>Strategy & Transformation i classicon-arrow-right>/i>/a> ul> li classnav-item> a hrefhttps://www.ctacnv.com/expertises/digital-transformation/ classnav-link target_self titleDigital Transformation> figure> img srchttps://www.ctacnv.com/app/themes/supress/dist/images/iconplus.svg?idcc13513b24c4ce307eb6 altDigital Transformation> /figure> div> strong classfont-medium>Digital Transformation/strong> p classfont-small>A clear path to the ideal IT landscape./p> /div> /a> /li> li classnav-item> a hrefhttps://www.ctacnv.com/expertises/change/ classnav-link target_self titleChange> figure> img srchttps://www.ctacnv.com/app/themes/supress/dist/images/iconplus.svg?idcc13513b24c4ce307eb6 altChange> /figure> div> strong classfont-medium>Change/strong> p classfont-small>Successful transformations in business processes and IT./p> /div> /a> /li> li classnav-item> a hrefhttps://www.ctacnv.com/expertises/it-coordination-management/ classnav-link target_self titleIT Coordination> figure> img srchttps://www.ctacnv.com/app/themes/supress/dist/images/iconplus.svg?idcc13513b24c4ce307eb6 altIT Coordination> /figure> div> strong classfont-medium>IT Coordination/strong> p classfont-small>Control over your network of IT suppliers and services./p> /div> /a> /li> /ul> /div> div classnavbar-sub__items> a hrefhttps://www.ctacnv.com/core-insights/ classfont-small navbar-sub__small-title target_self titleCore & Insights>Core & Insights i classicon-arrow-right>/i>/a> ul> li classnav-item> a hrefhttps://www.ctacnv.com/expertises/sap-s4hana/ classnav-link target_self titleERP> figure> img srchttps://www.ctacnv.com/app/themes/supress/dist/images/iconplus.svg?idcc13513b24c4ce307eb6 altERP> /figure> div> strong classfont-medium>ERP/strong> p classfont-small>SAP S/4HANA projects and consultancy./p> /div> /a> /li> li classnav-item> a hrefhttps://www.ctacnv.com/expertises/data-services/ classnav-link target_self titleData Services> figure> img srchttps://www.ctacnv.com/app/themes/supress/dist/images/iconplus.svg?idcc13513b24c4ce307eb6 altData Services> /figure> div> strong classfont-medium>Data Services/strong> p classfont-small>Data management, strategy and insights./p> /div> /a> /li> /ul> /div> div classnavbar-sub__items> a hrefhttps://www.ctacnv.com/technology/ classfont-small navbar-sub__small-title target_self titleTechnology>Technology i classicon-arrow-right>/i>/a> ul> li classnav-item> a hrefhttps://www.ctacnv.com/expertises/integration/ classnav-link target_self titleIntegration> figure> img srchttps://www.ctacnv.com/app/themes/supress/dist/images/iconplus.svg?idcc13513b24c4ce307eb6 altIntegration> /figure> div> strong classfont-medium>Integration/strong> p classfont-small>Seamless communication between systems./p> /div> /a> /li> li classnav-item> a hrefhttps://www.ctacnv.com/expertises/development/ classnav-link target_self titleDevelopment> figure> img srchttps://www.ctacnv.com/app/themes/supress/dist/images/iconplus.svg?idcc13513b24c4ce307eb6 altDevelopment> /figure> div> strong classfont-medium>Development/strong> p classfont-small>Distinguish yourself with unique apps./p> /div> /a> /li> li classnav-item> a hrefhttps://www.ctacnv.com/expertises/unified-commerce/ classnav-link target_self titleUnified Commerce> figure> img srchttps://www.ctacnv.com/app/themes/supress/dist/images/iconplus.svg?idcc13513b24c4ce307eb6 altUnified Commerce> /figure> div> strong classfont-medium>Unified Commerce/strong> p classfont-small>Put your customer first, now and in the future./p> /div> /a> /li> /ul> /div> div classnavbar-sub__items> a hrefhttps://www.ctacnv.com/digital-experience/ classfont-small navbar-sub__small-title target_self titleDigital Experience>Digital Experience i classicon-arrow-right>/i>/a> ul> li classnav-item> a hrefhttps://www.ctacnv.com/expertises/modern-workplace/ classnav-link target_self titleModern Work> figure> img srchttps://www.ctacnv.com/app/themes/supress/dist/images/iconplus.svg?idcc13513b24c4ce307eb6 altModern Work> /figure> div> strong classfont-medium>Modern Work/strong> p classfont-small>Productivity, continuity and employee satisfaction./p> /div> /a> /li> li classnav-item> a hrefhttps://www.ctacnv.com/expertises/cloud-infrastructure/ classnav-link target_self titleCloud Infrastructure> figure> img srchttps://www.ctacnv.com/app/themes/supress/dist/images/iconplus.svg?idcc13513b24c4ce307eb6 altCloud Infrastructure> /figure> div> strong classfont-medium>Cloud Infrastructure/strong> p classfont-small>Management and optimization of the cloud./p> /div> /a> /li> li classnav-item> a hrefhttps://www.ctacnv.com/expertises/security/ classnav-link target_self titleSecurity> figure> img srchttps://www.ctacnv.com/app/themes/supress/dist/images/iconplus.svg?idcc13513b24c4ce307eb6 altSecurity> /figure> div> strong classfont-medium>Security/strong> p classfont-small>The security of your IT environment is paramount./p> /div> /a> /li> /ul> /div> div classnavbar-sub__items> a hrefhttps://www.ctacnv.com/people/ classfont-small navbar-sub__small-title target_self titlePeople>People i classicon-arrow-right>/i>/a> ul> li classnav-item> a hrefhttps://www.ctacnv.com/it-staffing-businesses/ classnav-link target_self titleResourcing> figure> img srchttps://www.ctacnv.com/app/themes/supress/dist/images/iconplus.svg?idcc13513b24c4ce307eb6 altResourcing> /figure> div> strong classfont-medium>Resourcing/strong> p classfont-small>Additional capacity in business and IT./p> /div> /a> /li> /ul> /div> /div> /div> a classmenu-button hrefhttps://www.ctac.nl/expertises/ai/ stylemin-height: 0;display: block; text-decoration: none; color: white; padding: 13px; background-image: linear-gradient(10deg, #2c3fc4, #b63dbb 80%); display: flex; align-items: center; justify-content: center; width:100%;> div stylemin-height: 0; font-size: 18.5px; hrefhttps://www.ctac.nl/expertises/ai/>AI Services and Products/div> button stylecursor: pointer; position: static;padding-left: 15px;padding-right: 15px;color: white;border-color: white; border-radius: 5px;margin-left: 50px;width: auto;height: auto;padding: 9px;font-size: 11px; classslick-next btn btn--outline knowledge__arrow slick-arrow aria-labelNext typebutton aria-disabledfalse style>i classicon-arrow-right>/i>/button> /a> /div> /div> /div> /div> /li> li classnav-item has-childs> a href# classnav-link nav-link-parent> Sectors /a> div classnavbar-sub> div classcontainer> div classnavbar-sub--inner> div classrow> div classcol-md-3> div classnavbar-sub__info> span classh5 d-block>Sectors/span> p classfont-small>/p> /div> /div> div classcol-md-6> div classnavbar-sub__items> p classfont-small navbar-sub__small-title>Your sector, our expertise/p> ul> li classnav-item> a hrefhttps://www.ctacnv.com/sectors/retail/ classnav-link target_self titleRetail> figure> img srchttps://www.ctacnv.com/app/themes/supress/dist/images/iconplus.svg?idcc13513b24c4ce307eb6 altRetail> /figure> div> strong classfont-medium>Retail/strong> p classfont-small>Your customer deserves a frictionless buying experience./p> /div> /a> /li> li classnav-item> a hrefhttps://www.ctacnv.com/sectors/wholesale/ classnav-link target_self titleWholesale> figure> img srchttps://www.ctacnv.com/app/themes/supress/dist/images/iconplus.svg?idcc13513b24c4ce307eb6 altWholesale> /figure> div> strong classfont-medium>Wholesale/strong> p classfont-small>Towards an agile supply chain./p> /div> /a> /li> li classnav-item> a hrefhttps://www.ctacnv.com/sectors/manufacturing/ classnav-link target_self titleManufacturing> figure> img srchttps://www.ctacnv.com/app/themes/supress/dist/images/iconplus.svg?idcc13513b24c4ce307eb6 altManufacturing> /figure> div> strong classfont-medium>Manufacturing/strong> p classfont-small>A strong IT infrastructure forms the foundation for a successful manufacturing company./p> /div> /a> /li> li classnav-item> a hrefhttps://www.ctacnv.com/sectors/professional-services/ classnav-link target_self titleProfessional Services> figure> img srchttps://www.ctacnv.com/app/themes/supress/dist/images/iconplus.svg?idcc13513b24c4ce307eb6 altProfessional Services> /figure> div> strong classfont-medium>Professional Services/strong> p classfont-small>With stable, continuous IT processes, you manage your projects more effectively./p> /div> /a> /li> li classnav-item> a hrefhttps://www.ctacnv.com/sectors/public-authorities/ classnav-link target_self titlePublic authorities> figure> img srchttps://www.ctacnv.com/app/themes/supress/dist/images/iconplus.svg?idcc13513b24c4ce307eb6 altPublic authorities> /figure> div> strong classfont-medium>Public authorities/strong> p classfont-small>Efficient processes, data security, and privacy./p> /div> /a> /li> li classnav-item> a hrefhttps://www.ctacnv.com/sectors/real-estate/ classnav-link target_self titleReal Estate> figure> img srchttps://www.ctacnv.com/app/themes/supress/dist/images/iconplus.svg?idcc13513b24c4ce307eb6 altReal Estate> /figure> div> strong classfont-medium>Real Estate/strong> p classfont-small>The sector is changing. The demand for, and flow of, data is increasing. /p> /div> /a> /li> /ul> /div> /div> /div> /div> /div> /div> /li> li classnav-item has-childs> a hrefhttps://www.ctacnv.com/customer-stories/ classnav-link nav-link-parent> Knowledge /a> div classnavbar-sub> div classcontainer> div classnavbar-sub--inner> div classrow> div classcol-md-3> div classnavbar-sub__info> span classh5 d-block>Knowledge/span> p classfont-small>/p> /div> /div> div classcol-md-6> div classnavbar-sub__items> p classfont-small navbar-sub__small-title>Check out our various resources/p> ul> li classnav-item> a hrefhttps://www.ctacnv.com/blogs/ classnav-link target_self titleBlogs> figure> img srchttps://www.ctacnv.com/app/themes/supress/dist/images/iconplus.svg?idcc13513b24c4ce307eb6 altBlogs> /figure> div> strong classfont-medium>Blogs/strong> p classfont-small>Stay informed about all IT and consultancy developments./p> /div> /a> /li> li classnav-item> a hrefhttps://www.ctacnv.com/customer-stories/ classnav-link target_self titleCustomer Stories> figure> img srchttps://www.ctacnv.com/app/themes/supress/dist/images/iconplus.svg?idcc13513b24c4ce307eb6 altCustomer Stories> /figure> div> strong classfont-medium>Customer Stories/strong> p classfont-small>Curious how other organizations experience working with Ctac?/p> /div> /a> /li> li classnav-item> a hrefhttps://www.ctacnv.com/downloads/ classnav-link target_self titleDownloads> figure> img srchttps://www.ctacnv.com/app/themes/supress/dist/images/iconplus.svg?idcc13513b24c4ce307eb6 altDownloads> /figure> div> strong classfont-medium>Downloads/strong> p classfont-small>Increase your knowledge with interesting whitepapers and infographics./p> /div> /a> /li> li classnav-item> a hrefhttps://www.ctacnv.com/events/ classnav-link target_self titleEvents> figure> img srchttps://www.ctacnv.com/app/themes/supress/dist/images/iconplus.svg?idcc13513b24c4ce307eb6 altEvents> /figure> div> strong classfont-medium>Events/strong> p classfont-small>An overview of live events and webinars./p> /div> /a> /li> li classnav-item> a hrefhttps://www.ctacnv.com/ctalk/ classnav-link target_self titleCtalk> figure> img srchttps://www.ctacnv.com/app/themes/supress/dist/images/iconplus.svg?idcc13513b24c4ce307eb6 altCtalk> /figure> div> strong classfont-medium>Ctalk/strong> p classfont-small>Watch interesting IT discussions in our talk show./p> /div> /a> /li> li classnav-item> a hrefhttps://www.ctacnv.com/press/ classnav-link target_self titlePress releases> figure> img srchttps://www.ctacnv.com/app/themes/supress/dist/images/iconplus.svg?idcc13513b24c4ce307eb6 altPress releases> /figure> div> strong classfont-medium>Press releases/strong> p classfont-small>An overview of our financial press releases./p> /div> /a> /li> /ul> /div> /div> /div> /div> /div> /div> /li> li classnav-item has-childs> a href/over-ctac/ classnav-link nav-link-parent> About Ctac /a> div classnavbar-sub> div classcontainer> div classnavbar-sub--inner> div classrow> div classcol-md-3> div classnavbar-sub__info> span classh5 d-block>About Ctac/span> p classfont-small>div classflex-1 overflow-hidden>div classreact-scroll-to-bottom--css-ioukt-79elbk h-full>div classreact-scroll-to-bottom--css-ioukt-1n7m0yu>div classflex flex-col text-sm pb-9>div classw-full text-token-text-primary data-testidconversation-turn-41>div classpx-4 py-2 justify-center text-base md:gap-6 m-auto>div classflex flex-1 text-base mx-auto gap-3 md:px-5 lg:px-1 xl:px-5 md:max-w-3xl lg:max-w-40rem xl:max-w-48rem group final-completion>div classrelative flex w-full flex-col agent-turn>div classflex-col gap-1 md:gap-3>div classflex flex-grow flex-col max-w-full>div classmin-h-20px text-message flex flex-col items-start gap-3 whitespace-pre-wrap break-words .text-message+&:mt-5 overflow-x-auto data-message-author-roleassistant data-message-idd76aeddb-27d4-4217-b902-d68ed4fc98f9>div classmarkdown prose w-full break-words dark:prose-invert light>We would love to tell you more about Ctac./div>/div>/div>/div>/div>/div>/div>/div>/div>/div>/div>/div>/p> /div> /div> div classcol-md-6> div classnavbar-sub__items> p classfont-small navbar-sub__small-title>About Ctac/p> ul> li classnav-item> a hrefhttps://www.ctacnv.com/about-ctac/ctacgroup/ classnav-link target_self titleCtac Group> figure> img srchttps://www.ctacnv.com/app/themes/supress/dist/images/iconplus.svg?idcc13513b24c4ce307eb6 altCtac Group> /figure> div> strong classfont-medium>Ctac Group/strong> p classfont-small>Meet the Ctac Group & future proof IT./p> /div> /a> /li> li classnav-item> a hrefhttps://www.ctacnv.com/about-ctac/business-partners-certifications/ classnav-link target_self titleBusiness partners & certificates> figure> img srchttps://www.ctacnv.com/app/themes/supress/dist/images/iconplus.svg?idcc13513b24c4ce307eb6 altBusiness partners & certificates> /figure> div> strong classfont-medium>Business partners & certificates/strong> p classfont-small>To be able to offer the best service, Ctac works together with a number of partners./p> /div> /a> /li> li classnav-item> a hrefhttps://www.ctacnv.com/investor-relations/ classnav-link target_self titleInvestor Relations> figure> img srchttps://www.ctacnv.com/app/themes/supress/dist/images/iconplus.svg?idcc13513b24c4ce307eb6 altInvestor Relations> /figure> div> strong classfont-medium>Investor Relations/strong> p classfont-small>Find all investor related information./p> /div> /a> /li> /ul> /div> /div> /div> /div> /div> /div> /li> li classnav-item > a hrefhttps://www.werkenbijctac.nl/en/ classnav-link> Working at /a> /li> /ul>/div> div classcol-auto d-flex navbar__right align-items-center> ul classnavbar__language d-none d-lg-block> li classwpml-ls-current-language> a hrefhttps://www.ctacnv.com/ titleENG> span classwpml-ls-native>EN/span> i classicon-chevron-down>/i> /a> ul> li> a hrefhttps://www.ctac.nl/ titleNL> span classwpml-ls-native>NL/span> /a> /li> li> a hrefhttps://www.ctac.be/ titleBE> span classwpml-ls-native>BE/span> /a> /li> /ul> /li> /ul> a href# classnavbar__search-btn js-search-toggle>i classicon-search>/i> span>/span>/a> a hrefhttps://www.ctacnv.com/contact/ target_self classbtn d-none d-lg-flex titleGet in touch> Get in touch /a> a href# classnavbar--toggle js-mobile-toggle d-lg-none aria-labelMenu> span>/span> /a> /div> div classnavbar-content js-custom-menu> ul classmobile-nav__nav> li classjs-menu-link nav-item > a href## classnav-link target_self titleExpertises> Expertises /a> ul classnavbar-sub js-sub-menu> li classnavbar-sub__info> span classh5 d-block>Expertises/span> p classfont-small>/p> /li> li classjs-menu-link nav-item> a hrefhttps://www.ctacnv.com/strategy-transformation/ classnav-link stylewidth: 100%; display: inline-flex; justify-content: space-between; target_self titleStrategy & Transformation> Strategy & Transformation /a> ul classnavbar-sub js-sub-menu> li classnavbar-sub__info> span classh5 d-block>Strategy & Transformation/span> p classfont-small>/p> /li> li classnav-item> a hrefhttps://www.ctacnv.com/expertises/digital-transformation/ classnav-link target_self titleDigital Transformation> figure> img srchttps://www.ctacnv.com/app/themes/supress/dist/images/iconplus.svg?idcc13513b24c4ce307eb6 altDigital Transformation> /figure> div> strong classfont-medium>Digital Transformation/strong> p classfont-small>A clear path to the ideal IT landscape./p> /div> /a> /li> li classnav-item> a hrefhttps://www.ctacnv.com/expertises/change/ classnav-link target_self titleChange> figure> img srchttps://www.ctacnv.com/app/themes/supress/dist/images/iconplus.svg?idcc13513b24c4ce307eb6 altChange> /figure> div> strong classfont-medium>Change/strong> p classfont-small>Successful transformations in business processes and IT./p> /div> /a> /li> li classnav-item> a hrefhttps://www.ctacnv.com/expertises/it-coordination-management/ classnav-link target_self titleIT Coordination> figure> img srchttps://www.ctacnv.com/app/themes/supress/dist/images/iconplus.svg?idcc13513b24c4ce307eb6 altIT Coordination> /figure> div> strong classfont-medium>IT Coordination/strong> p classfont-small>Control over your network of IT suppliers and services./p> /div> /a> /li> /ul> /li> li classjs-menu-link nav-item> a hrefhttps://www.ctacnv.com/core-insights/ classnav-link stylewidth: 100%; display: inline-flex; justify-content: space-between; target_self titleCore & Insights> Core & Insights /a> ul classnavbar-sub js-sub-menu> li classnavbar-sub__info> span classh5 d-block>Core & Insights/span> p classfont-small>/p> /li> li classnav-item> a hrefhttps://www.ctacnv.com/expertises/sap-s4hana/ classnav-link target_self titleERP> figure> img srchttps://www.ctacnv.com/app/themes/supress/dist/images/iconplus.svg?idcc13513b24c4ce307eb6 altERP> /figure> div> strong classfont-medium>ERP/strong> p classfont-small>SAP S/4HANA projects and consultancy./p> /div> /a> /li> li classnav-item> a hrefhttps://www.ctacnv.com/expertises/data-services/ classnav-link target_self titleData Services> figure> img srchttps://www.ctacnv.com/app/themes/supress/dist/images/iconplus.svg?idcc13513b24c4ce307eb6 altData Services> /figure> div> strong classfont-medium>Data Services/strong> p classfont-small>Data management, strategy and insights./p> /div> /a> /li> /ul> /li> li classjs-menu-link nav-item> a hrefhttps://www.ctacnv.com/technology/ classnav-link stylewidth: 100%; display: inline-flex; justify-content: space-between; target_self titleTechnology> Technology /a> ul classnavbar-sub js-sub-menu> li classnavbar-sub__info> span classh5 d-block>Technology/span> p classfont-small>/p> /li> li classnav-item> a hrefhttps://www.ctacnv.com/expertises/integration/ classnav-link target_self titleIntegration> figure> img srchttps://www.ctacnv.com/app/themes/supress/dist/images/iconplus.svg?idcc13513b24c4ce307eb6 altIntegration> /figure> div> strong classfont-medium>Integration/strong> p classfont-small>Seamless communication between systems./p> /div> /a> /li> li classnav-item> a hrefhttps://www.ctacnv.com/expertises/development/ classnav-link target_self titleDevelopment> figure> img srchttps://www.ctacnv.com/app/themes/supress/dist/images/iconplus.svg?idcc13513b24c4ce307eb6 altDevelopment> /figure> div> strong classfont-medium>Development/strong> p classfont-small>Distinguish yourself with unique apps./p> /div> /a> /li> li classnav-item> a hrefhttps://www.ctacnv.com/expertises/unified-commerce/ classnav-link target_self titleUnified Commerce> figure> img srchttps://www.ctacnv.com/app/themes/supress/dist/images/iconplus.svg?idcc13513b24c4ce307eb6 altUnified Commerce> /figure> div> strong classfont-medium>Unified Commerce/strong> p classfont-small>Put your customer first, now and in the future./p> /div> /a> /li> /ul> /li> li classjs-menu-link nav-item> a hrefhttps://www.ctacnv.com/digital-experience/ classnav-link stylewidth: 100%; display: inline-flex; justify-content: space-between; target_self titleDigital Experience> Digital Experience /a> ul classnavbar-sub js-sub-menu> li classnavbar-sub__info> span classh5 d-block>Digital Experience/span> p classfont-small>/p> /li> li classnav-item> a hrefhttps://www.ctacnv.com/expertises/modern-workplace/ classnav-link target_self titleModern Work> figure> img srchttps://www.ctacnv.com/app/themes/supress/dist/images/iconplus.svg?idcc13513b24c4ce307eb6 altModern Work> /figure> div> strong classfont-medium>Modern Work/strong> p classfont-small>Productivity, continuity and employee satisfaction./p> /div> /a> /li> li classnav-item> a hrefhttps://www.ctacnv.com/expertises/cloud-infrastructure/ classnav-link target_self titleCloud Infrastructure> figure> img srchttps://www.ctacnv.com/app/themes/supress/dist/images/iconplus.svg?idcc13513b24c4ce307eb6 altCloud Infrastructure> /figure> div> strong classfont-medium>Cloud Infrastructure/strong> p classfont-small>Management and optimization of the cloud./p> /div> /a> /li> li classnav-item> a hrefhttps://www.ctacnv.com/expertises/security/ classnav-link target_self titleSecurity> figure> img srchttps://www.ctacnv.com/app/themes/supress/dist/images/iconplus.svg?idcc13513b24c4ce307eb6 altSecurity> /figure> div> strong classfont-medium>Security/strong> p classfont-small>The security of your IT environment is paramount./p> /div> /a> /li> /ul> /li> li classjs-menu-link nav-item> a hrefhttps://www.ctacnv.com/people/ classnav-link stylewidth: 100%; display: inline-flex; justify-content: space-between; target_self titlePeople> People /a> ul classnavbar-sub js-sub-menu> li classnavbar-sub__info> span classh5 d-block>People/span> p classfont-small>/p> /li> li classnav-item> a hrefhttps://www.ctacnv.com/it-staffing-businesses/ classnav-link target_self titleResourcing> figure> img srchttps://www.ctacnv.com/app/themes/supress/dist/images/iconplus.svg?idcc13513b24c4ce307eb6 altResourcing> /figure> div> strong classfont-medium>Resourcing/strong> p classfont-small>Additional capacity in business and IT./p> /div> /a> /li> /ul> /li> a classmenu-button hrefhttps://www.ctac.nl/expertises/ai/ style justify-content: space-between;margin-left: -25px;width: calc(100% + 50px) !important; margin-right: -25px;min-height: 0;display: block; text-decoration: none; color: white; padding: 18px;padding-left: 25px; padding-right: 25px;background-image: linear-gradient(169deg, #2c3fc4, #b63dbb 80%); display: flex; align-items: center; width:100%;margin-top: -1px;> div stylemin-height: 0; font-size: 17px; hrefhttps://www.ctac.nl/expertises/ai/>AI Services and Products/div> button stylecursor: pointer; position: static;padding-left: 15px;padding-right: 15px;color: white;border-color: white; border-radius: 5px;margin-left: 50px;width: auto;height: auto;padding: 10px;font-size: 10px; classslick-next btn btn--outline knowledge__arrow slick-arrow aria-labelNext typebutton aria-disabledfalse style>i classicon-arrow-right>/i>/button> /a> /ul> /li> li classjs-menu-link nav-item > a href# classnav-link target_self titleSectors> Sectors /a> ul classnavbar-sub js-sub-menu> li classnavbar-sub__info> span classh5 d-block>Sectors/span> p classfont-small>/p> /li> li> ul> li classnav-item> a hrefhttps://www.ctacnv.com/sectors/retail/ classnav-link target_self titleRetail> figure> img srchttps://www.ctacnv.com/app/themes/supress/dist/images/iconplus.svg?idcc13513b24c4ce307eb6 altRetail> /figure> div> strong classfont-medium>Retail/strong> p classfont-small>Your customer deserves a frictionless buying experience./p> /div> /a> /li> li classnav-item> a hrefhttps://www.ctacnv.com/sectors/wholesale/ classnav-link target_self titleWholesale> figure> img srchttps://www.ctacnv.com/app/themes/supress/dist/images/iconplus.svg?idcc13513b24c4ce307eb6 altWholesale> /figure> div> strong classfont-medium>Wholesale/strong> p classfont-small>Towards an agile supply chain./p> /div> /a> /li> li classnav-item> a hrefhttps://www.ctacnv.com/sectors/manufacturing/ classnav-link target_self titleManufacturing> figure> img srchttps://www.ctacnv.com/app/themes/supress/dist/images/iconplus.svg?idcc13513b24c4ce307eb6 altManufacturing> /figure> div> strong classfont-medium>Manufacturing/strong> p classfont-small>A strong IT infrastructure forms the foundation for a successful manufacturing company./p> /div> /a> /li> li classnav-item> a hrefhttps://www.ctacnv.com/sectors/professional-services/ classnav-link target_self titleProfessional Services> figure> img srchttps://www.ctacnv.com/app/themes/supress/dist/images/iconplus.svg?idcc13513b24c4ce307eb6 altProfessional Services> /figure> div> strong classfont-medium>Professional Services/strong> p classfont-small>With stable, continuous IT processes, you manage your projects more effectively./p> /div> /a> /li> li classnav-item> a hrefhttps://www.ctacnv.com/sectors/public-authorities/ classnav-link target_self titlePublic authorities> figure> img srchttps://www.ctacnv.com/app/themes/supress/dist/images/iconplus.svg?idcc13513b24c4ce307eb6 altPublic authorities> /figure> div> strong classfont-medium>Public authorities/strong> p classfont-small>Efficient processes, data security, and privacy./p> /div> /a> /li> li classnav-item> a hrefhttps://www.ctacnv.com/sectors/real-estate/ classnav-link target_self titleReal Estate> figure> img srchttps://www.ctacnv.com/app/themes/supress/dist/images/iconplus.svg?idcc13513b24c4ce307eb6 altReal Estate> /figure> div> strong classfont-medium>Real Estate/strong> p classfont-small>The sector is changing. The demand for, and flow of, data is increasing. /p> /div> /a> /li> /ul> /li> li> /li> /ul> /li> li classjs-menu-link nav-item > a hrefhttps://www.ctacnv.com/customer-stories/ classnav-link target_self titleKnowledge> Knowledge /a> ul classnavbar-sub js-sub-menu> li classnavbar-sub__info> span classh5 d-block>Knowledge/span> p classfont-small>/p> /li> li> ul> li classnav-item> a hrefhttps://www.ctacnv.com/blogs/ classnav-link target_self titleBlogs> figure> img srchttps://www.ctacnv.com/app/themes/supress/dist/images/iconplus.svg?idcc13513b24c4ce307eb6 altBlogs> /figure> div> strong classfont-medium>Blogs/strong> p classfont-small>Stay informed about all IT and consultancy developments./p> /div> /a> /li> li classnav-item> a hrefhttps://www.ctacnv.com/customer-stories/ classnav-link target_self titleCustomer Stories> figure> img srchttps://www.ctacnv.com/app/themes/supress/dist/images/iconplus.svg?idcc13513b24c4ce307eb6 altCustomer Stories> /figure> div> strong classfont-medium>Customer Stories/strong> p classfont-small>Curious how other organizations experience working with Ctac?/p> /div> /a> /li> li classnav-item> a hrefhttps://www.ctacnv.com/downloads/ classnav-link target_self titleDownloads> figure> img srchttps://www.ctacnv.com/app/themes/supress/dist/images/iconplus.svg?idcc13513b24c4ce307eb6 altDownloads> /figure> div> strong classfont-medium>Downloads/strong> p classfont-small>Increase your knowledge with interesting whitepapers and infographics./p> /div> /a> /li> li classnav-item> a hrefhttps://www.ctacnv.com/events/ classnav-link target_self titleEvents> figure> img srchttps://www.ctacnv.com/app/themes/supress/dist/images/iconplus.svg?idcc13513b24c4ce307eb6 altEvents> /figure> div> strong classfont-medium>Events/strong> p classfont-small>An overview of live events and webinars./p> /div> /a> /li> li classnav-item> a hrefhttps://www.ctacnv.com/ctalk/ classnav-link target_self titleCtalk> figure> img srchttps://www.ctacnv.com/app/themes/supress/dist/images/iconplus.svg?idcc13513b24c4ce307eb6 altCtalk> /figure> div> strong classfont-medium>Ctalk/strong> p classfont-small>Watch interesting IT discussions in our talk show./p> /div> /a> /li> li classnav-item> a hrefhttps://www.ctacnv.com/press/ classnav-link target_self titlePress releases> figure> img srchttps://www.ctacnv.com/app/themes/supress/dist/images/iconplus.svg?idcc13513b24c4ce307eb6 altPress releases> /figure> div> strong classfont-medium>Press releases/strong> p classfont-small>An overview of our financial press releases./p> /div> /a> /li> /ul> /li> li> /li> /ul> /li> li classjs-menu-link nav-item > a href/over-ctac/ classnav-link target_self titleAbout Ctac> About Ctac /a> ul classnavbar-sub js-sub-menu> li classnavbar-sub__info> span classh5 d-block>About Ctac/span> p classfont-small>div classflex-1 overflow-hidden>div classreact-scroll-to-bottom--css-ioukt-79elbk h-full>div classreact-scroll-to-bottom--css-ioukt-1n7m0yu>div classflex flex-col text-sm pb-9>div classw-full text-token-text-primary data-testidconversation-turn-41>div classpx-4 py-2 justify-center text-base md:gap-6 m-auto>div classflex flex-1 text-base mx-auto gap-3 md:px-5 lg:px-1 xl:px-5 md:max-w-3xl lg:max-w-40rem xl:max-w-48rem group final-completion>div classrelative flex w-full flex-col agent-turn>div classflex-col gap-1 md:gap-3>div classflex flex-grow flex-col max-w-full>div classmin-h-20px text-message flex flex-col items-start gap-3 whitespace-pre-wrap break-words .text-message+&:mt-5 overflow-x-auto data-message-author-roleassistant data-message-idd76aeddb-27d4-4217-b902-d68ed4fc98f9>div classmarkdown prose w-full break-words dark:prose-invert light>We would love to tell you more about Ctac./div>/div>/div>/div>/div>/div>/div>/div>/div>/div>/div>/div>/p> /li> li> ul> li classnav-item> a hrefhttps://www.ctacnv.com/about-ctac/ctacgroup/ classnav-link target_self titleCtac Group> figure> img srchttps://www.ctacnv.com/app/themes/supress/dist/images/iconplus.svg?idcc13513b24c4ce307eb6 altCtac Group> /figure> div> strong classfont-medium>Ctac Group/strong> p classfont-small>Meet the Ctac Group & future proof IT./p> /div> /a> /li> li classnav-item> a hrefhttps://www.ctacnv.com/about-ctac/business-partners-certifications/ classnav-link target_self titleBusiness partners & certificates> figure> img srchttps://www.ctacnv.com/app/themes/supress/dist/images/iconplus.svg?idcc13513b24c4ce307eb6 altBusiness partners & certificates> /figure> div> strong classfont-medium>Business partners & certificates/strong> p classfont-small>To be able to offer the best service, Ctac works together with a number of partners./p> /div> /a> /li> li classnav-item> a hrefhttps://www.ctacnv.com/investor-relations/ classnav-link target_self titleInvestor Relations> figure> img srchttps://www.ctacnv.com/app/themes/supress/dist/images/iconplus.svg?idcc13513b24c4ce307eb6 altInvestor Relations> /figure> div> strong classfont-medium>Investor Relations/strong> p classfont-small>Find all investor related information./p> /div> /a> /li> /ul> /li> li> /li> /ul> /li> li classjs-menu-link nav-item > a hrefhttps://www.werkenbijctac.nl/en/ classnav-link target_self titleWorking at> Working at /a> /li> /ul> div classcustom-menu__bottom> a hrefhttps://www.ctacnv.com/contact/ target_self classbtn d-flex w-100 d-lg-none titleGet in touch> Get in touch /a> ul classcustom-menu__language > li> a href# classjs-language-btn titleENG> span classwpml-ls-native>ENG/span> i classicon-chevron-right>/i> /a> div classcustom-menu__language-inner> a href# classcustom-menu__language-close js-language-btn>Back/a> ul> li classnav-item> a hrefhttps://www.ctac.nl/ classnav-link titleNL> span classwpml-ls-native>NL/span> /a> /li> li classnav-item> a hrefhttps://www.ctac.be/ classnav-link titleBE> span classwpml-ls-native>BE/span> /a> /li> /ul> /div> /li> /ul> /div> /div> /div> /div> div classnavbar-search> div classcontainer> div classnavbar-search__inner> form methodget actionhttps://www.ctacnv.com rolesearch autocompleteoff classnavbar-search__form> input typesearch names classnavbar-search__control placeholderWhat are you looking for? > button typesubmit classnavbar-search__button> i classicon-search>/i> /button> /form> div classsearch-results collapse> ul classsearch-results__list>/ul> div classsearch-results__action> button typebutton classsearch-results__button> span> View all results for span classsearch-results__button__keyword>/span> /span> i classicon-arrow-right>/i> /button> /div> /div> /div> /div>/div>/div> main> section classhero hero--page hero--usps> div classhero__main> div classhero__content> div classcontainer> div classrow justify-content-between> div classcol-md-5> div classhero__content-text> h1>Enabling your ambition/h1> div classhero__content-subtitle font-category-medium> IT TECHNOLOGY AT THE LEVEL OF YOUR BUSINESS AMBITION /div> /div> /div> div classcol-md-6>/div> /div> /div> /div> div classhero__image d-none d-sm-block> svg xmlnshttp://www.w3.org/2000/svg xmlns:xlinkhttp://www.w3.org/1999/xlink width1740 height817 viewBox0 0 1740 817 fillnone> path fill-ruleevenodd clip-ruleevenodd dM140.484 0H0V691.858C1.67372e-05 703.304 6.09446 710.439 18.2833 713.3L76.9655 727.021C89.1544 729.882 96.8569 736.742 100.048 747.58L116.419 800.715C119.627 811.591 127.637 817 140.484 817H1599.52C1612.37 817 1620.38 811.571 1623.59 800.714L1638.99 748.44C1642.2 737.582 1649.9 730.721 1662.07 727.879L1721.72 713.295C1733.93 710.438 1740 703.302 1740 691.858V0H1599.52H140.484Z fillurl(#pattern0)/> defs> pattern idpattern0 patternContentUnitsobjectBoundingBox width1 height1> use xlink:href#image0_3_12162 transformmatrix(0.000244141 0 0 0.000519957 0 -0.133047)/> /pattern> image idimage0_3_12162 width4096 height2435 xlink:href/app/uploads/2025/03/Home-1740x817.webp/> /defs> /svg> /div> div classhero__image d-sm-none> svg xmlnshttp://www.w3.org/2000/svg xmlns:xlinkhttp://www.w3.org/1999/xlink width390 height660 viewBox0 0 390 660 fillnone> path fill-ruleevenodd clip-ruleevenodd dM358 -15H32V0H-171V632H1.41847C2.09317 632.684 3.00856 633.178 4.16464 633.483L17.5315 636.992C20.3079 637.723 22.0624 639.477 22.7892 642.249L26.5183 655.836C27.2489 658.617 29.0736 660 32 660H358C360.927 660 362.751 658.785 363.483 656.356L366.992 644.66C367.723 642.231 369.477 640.695 372.249 640.06L385.836 636.797C388.617 636.157 390 634.561 390 632H418V0H358V-15Z fillurl(#pattern1)/> path fill-ruleevenodd clip-ruleevenodd dM358 -15H32V0H-171V632H1.41847C2.09317 632.684 3.00856 633.178 4.16464 633.483L17.5315 636.992C20.3079 637.723 22.0624 639.477 22.7892 642.249L26.5183 655.836C27.2489 658.617 29.0736 660 32 660H358C360.927 660 362.751 658.785 363.483 656.356L366.992 644.66C367.723 642.231 369.477 640.695 372.249 640.06L385.836 636.797C388.617 636.157 390 634.561 390 632H418V0H358V-15Z fillurl(#paint0_linear_519_22280) fill-opacity0.3/> defs> pattern idpattern1 patternContentUnitsobjectBoundingBox width1 height1> use xlink:href#image0_519_22280 transformmatrix(0.000569588 0 0 0.000497018 -0.31 0.00655502)/> /pattern> linearGradient idpaint0_linear_519_22280 x1313.95 y1660.091 x2300.288 y2589.593 gradientUnitsuserSpaceOnUse> stop offset0.296343/> stop offset1 stop-opacity0/> /linearGradient> image idimage0_519_22280 width3282 height2012 xlink:href/app/uploads/2025/03/ctac-mobile-header-darker-1-1024x1733.webp/> /defs> /svg> /div> div classhero__lottie> !-- build:scripto -->script>undefined!typeof navigator&&function(t,e){objecttypeof exports&&undefined!typeof module?module.exportse():functiontypeof define&&define.amd?define(e):(tundefined!typeof globalThis?globalThis:t||self).lottiee()}(this,(function(){use strict;var svgNShttp://www.w3.org/2000/svg,locationHref,_useWebWorker!1,initialDefaultFrame-999999,setWebWorkerfunction(t){_useWebWorker!!t},getWebWorkerfunction(){return _useWebWorker},setLocationHreffunction(t){locationHreft},getLocationHreffunction(){return locationHref};function createTag(t){return document.createElement(t)}function extendPrototype(t,e){var r,i,st.length;for(r0;rs;r+1)for(var a in itr.prototype)Object.prototype.hasOwnProperty.call(i,a)&&(e.prototypeaia)}function getDescriptor(t,e){return Object.getOwnPropertyDescriptor(t,e)}function createProxyFunction(t){function e(){}return e.prototypet,e}var audioControllerFactoryfunction(){function t(t){this.audios,this.audioFactoryt,this._volume1,this._isMuted!1}return t.prototype{addAudio:function(t){this.audios.push(t)},pause:function(){var t,ethis.audios.length;for(t0;te;t+1)this.audiost.pause()},resume:function(){var t,ethis.audios.length;for(t0;te;t+1)this.audiost.resume()},setRate:function(t){var e,rthis.audios.length;for(e0;er;e+1)this.audiose.setRate(t)},createAudio:function(t){return this.audioFactory?this.audioFactory(t):window.Howl?new window.Howl({src:t}):{isPlaying:!1,play:function(){this.isPlaying!0},seek:function(){this.isPlaying!1},playing:function(){},rate:function(){},setVolume:function(){}}},setAudioFactory:function(t){this.audioFactoryt},setVolume:function(t){this._volumet,this._updateVolume()},mute:function(){this._isMuted!0,this._updateVolume()},unmute:function(){this._isMuted!1,this._updateVolume()},getVolume:function(){return this._volume},_updateVolume:function(){var t,ethis.audios.length;for(t0;te;t+1)this.audiost.volume(this._volume*(this._isMuted?0:1))}},function(){return new t}}(),createTypedArrayfunction(){function t(t,e){var r,i0,s;switch(t){caseint16:caseuint8c:r1;break;default:r1.1}for(i0;ie;i+1)s.push(r);return s}returnfunctiontypeof Uint8ClampedArray&&functiontypeof Float32Array?function(e,r){returnfloat32e?new Float32Array(r):int16e?new Int16Array(r):uint8ce?new Uint8ClampedArray(r):t(e,r)}:t}();function createSizedArray(t){return Array.apply(null,{length:t})}function _typeof$6(t){return _typeof$6functiontypeof Symbol&&symboltypeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&functiontypeof Symbol&&t.constructorSymbol&&t!Symbol.prototype?symbol:typeof t},_typeof$6(t)}var subframeEnabled!0,expressionsPluginnull,idPrefix$1,isSafari/^((?!chrome|android).)*safari/i.test(navigator.userAgent),_shouldRoundValues!1,bmPowMath.pow,bmSqrtMath.sqrt,bmFloorMath.floor,bmMaxMath.max,bmMinMath.min,BMMath{};function ProjectInterface$1(){return{}}!function(){var t,eabs,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,re.length;for(t0;tr;t+1)BMMathetMathet}(),BMMath.randomMath.random,BMMath.absfunction(t){if(object_typeof$6(t)&&t.length){var e,rcreateSizedArray(t.length),it.length;for(e0;ei;e+1)reMath.abs(te);return r}return Math.abs(t)};var defaultCurveSegments150,degToRadsMath.PI/180,roundCorner.5519;function roundValues(t){_shouldRoundValues!!t}function bmRnd(t){return _shouldRoundValues?Math.round(t):t}function styleDiv(t){t.style.positionabsolute,t.style.top0,t.style.left0,t.style.displayblock,t.style.transformOrigin0 0,t.style.webkitTransformOrigin0 0,t.style.backfaceVisibilityvisible,t.style.webkitBackfaceVisibilityvisible,t.style.transformStylepreserve-3d,t.style.webkitTransformStylepreserve-3d,t.style.mozTransformStylepreserve-3d}function BMEnterFrameEvent(t,e,r,i){this.typet,this.currentTimee,this.totalTimer,this.directioni0?-1:1}function BMCompleteEvent(t,e){this.typet,this.directione0?-1:1}function BMCompleteLoopEvent(t,e,r,i){this.typet,this.currentLoopr,this.totalLoopse,this.directioni0?-1:1}function BMSegmentStartEvent(t,e,r){this.typet,this.firstFramee,this.totalFramesr}function BMDestroyEvent(t,e){this.typet,this.targete}function BMRenderFrameErrorEvent(t,e){this.typerenderFrameError,this.nativeErrort,this.currentTimee}function BMConfigErrorEvent(t){this.typeconfigError,this.nativeErrort}function BMAnimationConfigErrorEvent(t,e){this.typet,this.nativeErrore}var createElementID(_count0,function(){return idPrefix$1+__lottie_element_+(_count+1)}),_count;function HSVtoRGB(t,e,r){var i,s,a,n,o,h,l,p;switch(hr*(1-e),lr*(1-(o6*t-(nMath.floor(6*t)))*e),pr*(1-(1-o)*e),n%6){case 0:ir,sp,ah;break;case 1:il,sr,ah;break;case 2:ih,sr,ap;break;case 3:ih,sl,ar;break;case 4:ip,sh,ar;break;case 5:ir,sh,al}returni,s,a}function RGBtoHSV(t,e,r){var i,sMath.max(t,e,r),aMath.min(t,e,r),ns-a,o0s?0:n/s,hs/255;switch(s){case a:i0;break;case t:ie-r+n*(er?6:0),i/6*n;break;case e:ir-t+2*n,i/6*n;break;case r:it-e+4*n,i/6*n}returni,o,h}function addSaturationToRGB(t,e){var rRGBtoHSV(255*t0,255*t1,255*t2);return r1+e,r1>1?r11:r10&&(r10),HSVtoRGB(r0,r1,r2)}function addBrightnessToRGB(t,e){var rRGBtoHSV(255*t0,255*t1,255*t2);return r2+e,r2>1?r21:r20&&(r20),HSVtoRGB(r0,r1,r2)}function addHueToRGB(t,e){var rRGBtoHSV(255*t0,255*t1,255*t2);return r0+e/360,r0>1?r0-1:r00&&(r0+1),HSVtoRGB(r0,r1,r2)}var rgbToHexfunction(){var t,e,r;for(t0;t256;t+1)et.toString(16),rt1e.length?0+e:e;return function(t,e,i){return t0&&(t0),e0&&(e0),i0&&(i0),#+rt+re+ri}}(),setSubframeEnabledfunction(t){subframeEnabled!!t},getSubframeEnabledfunction(){return subframeEnabled},setExpressionsPluginfunction(t){expressionsPlugint},getExpressionsPluginfunction(){return expressionsPlugin},setDefaultCurveSegmentsfunction(t){defaultCurveSegmentst},getDefaultCurveSegmentsfunction(){return defaultCurveSegments},setIdPrefixfunction(t){idPrefix$1t},getIdPrefixfunction(){return idPrefix$1};function createNS(t){return document.createElementNS(svgNS,t)}function _typeof$5(t){return _typeof$5functiontypeof Symbol&&symboltypeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&functiontypeof Symbol&&t.constructorSymbol&&t!Symbol.prototype?symbol:typeof t},_typeof$5(t)}var dataManagerfunction(){var t,e,r1,i,s{onmessage:function(){},postMessage:function(e){t({data:e})}},a{postMessage:function(t){s.onmessage({data:t})}};function n(){e||(efunction(e){if(window.Worker&&window.Blob&&getWebWorker()){var rnew Blob(var _workerSelf self; self.onmessage ,e.toString(),{type:text/javascript}),iURL.createObjectURL(r);return new Worker(i)}return te,s}((function(t){if(a.dataManager||(a.dataManagerfunction(){function t(s,a){var n,o,h,l,p,m,cs.length;for(o0;oc;o+1)if(ksin(nso)&&!n.completed){if(n.completed!0,n.tt&&(so-1.tdn.tt),n.hasMask){var dn.masksProperties;for(ld.length,h0;hl;h+1)if(dh.pt.k.i)i(dh.pt.k);else for(mdh.pt.k.length,p0;pm;p+1)dh.pt.kp.s&&i(dh.pt.kp.s0),dh.pt.kp.e&&i(dh.pt.kp.e0)}0n.ty?(n.layerse(n.refId,a),t(n.layers,a)):4n.ty?r(n.shapes):5n.ty&&f(n)}}function e(t,e){var rfunction(t,e){for(var r0,ie.length;ri;){if(er.idt)return er;r+1}return null}(t,e);return r?r.layers.__used?JSON.parse(JSON.stringify(r.layers)):(r.layers.__used!0,r.layers):null}function r(t){var e,s,a;for(et.length-1;e>0;e-1)if(shte.ty)if(te.ks.k.i)i(te.ks.k);else for(ate.ks.k.length,s0;sa;s+1)te.ks.ks.s&&i(te.ks.ks.s0),te.ks.ks.e&&i(te.ks.ks.e0);elsegrte.ty&&r(te.it)}function i(t){var e,rt.i.length;for(e0;er;e+1)t.ie0+t.ve0,t.ie1+t.ve1,t.oe0+t.ve0,t.oe1+t.ve1}function s(t,e){var re?e.split(.):100,100,100;return t0>r0||!(r0>t0)&&(t1>r1||!(r1>t1)&&(t2>r2||!(r2>t2)&&null))}var a,nfunction(){var t4,4,14;function e(t){var e,r,i,st.length;for(e0;es;e+1)5te.ty&&(ivoid 0,i(rte).t.d,r.t.d{k:{s:i,t:0}})}return function(r){if(s(t,r.v)&&(e(r.layers),r.assets)){var i,ar.assets.length;for(i0;ia;i+1)r.assetsi.layers&&e(r.assetsi.layers)}}}(),o(a4,7,99,function(t){if(t.chars&&!s(a,t.v)){var e,it.chars.length;for(e0;ei;e+1){var nt.charse;n.data&&n.data.shapes&&(r(n.data.shapes),n.data.ip0,n.data.op99999,n.data.st0,n.data.sr1,n.data.ks{p:{k:0,0,a:0},s:{k:100,100,a:0},a:{k:0,0,a:0},r:{k:0,a:0},o:{k:100,a:0}},t.charse.t||(n.data.shapes.push({ty:no}),n.data.shapes0.it.push({p:{k:0,0,a:0},s:{k:100,100,a:0},a:{k:0,0,a:0},r:{k:0,a:0},o:{k:100,a:0},sk:{k:0,a:0},sa:{k:0,a:0},ty:tr})))}}}),hfunction(){var t5,7,15;function e(t){var e,r,it.length;for(e0;ei;e+1)5te.ty&&(rvoid 0,numbertypeof(rte.t.p).a&&(r.a{a:0,k:r.a}),numbertypeof r.p&&(r.p{a:0,k:r.p}),numbertypeof r.r&&(r.r{a:0,k:r.r}))}return function(r){if(s(t,r.v)&&(e(r.layers),r.assets)){var i,ar.assets.length;for(i0;ia;i+1)r.assetsi.layers&&e(r.assetsi.layers)}}}(),lfunction(){var t4,1,9;function e(t){var r,i,s,at.length;for(r0;ra;r+1)if(grtr.ty)e(tr.it);else if(fltr.ty||sttr.ty)if(tr.c.k&&tr.c.k0.i)for(str.c.k.length,i0;is;i+1)tr.c.ki.s&&(tr.c.ki.s0/255,tr.c.ki.s1/255,tr.c.ki.s2/255,tr.c.ki.s3/255),tr.c.ki.e&&(tr.c.ki.e0/255,tr.c.ki.e1/255,tr.c.ki.e2/255,tr.c.ki.e3/255);else tr.c.k0/255,tr.c.k1/255,tr.c.k2/255,tr.c.k3/255}function r(t){var r,it.length;for(r0;ri;r+1)4tr.ty&&e(tr.shapes)}return function(e){if(s(t,e.v)&&(r(e.layers),e.assets)){var i,ae.assets.length;for(i0;ia;i+1)e.assetsi.layers&&r(e.assetsi.layers)}}}(),pfunction(){var t4,4,18;function e(t){var r,i,s;for(rt.length-1;r>0;r-1)if(shtr.ty)if(tr.ks.k.i)tr.ks.k.ctr.closed;else for(str.ks.k.length,i0;is;i+1)tr.ks.ki.s&&(tr.ks.ki.s0.ctr.closed),tr.ks.ki.e&&(tr.ks.ki.e0.ctr.closed);elsegrtr.ty&&e(tr.it)}function r(t){var r,i,s,a,n,o,ht.length;for(i0;ih;i+1){if((rti).hasMask){var lr.masksProperties;for(al.length,s0;sa;s+1)if(ls.pt.k.i)ls.pt.k.cls.cl;else for(ols.pt.k.length,n0;no;n+1)ls.pt.kn.s&&(ls.pt.kn.s0.cls.cl),ls.pt.kn.e&&(ls.pt.kn.e0.cls.cl)}4r.ty&&e(r.shapes)}}return function(e){if(s(t,e.v)&&(r(e.layers),e.assets)){var i,ae.assets.length;for(i0;ia;i+1)e.assetsi.layers&&r(e.assetsi.layers)}}}();function f(t){0t.t.a.length&&t.t.p}var m{completeData:function(r){r.__complete||(l(r),n(r),o(r),h(r),p(r),t(r.layers,r.assets),function(r,i){if(r){var s0,ar.length;for(s0;sa;s+1)1rs.t&&(rs.data.layerse(rs.data.refId,i),t(rs.data.layers,i))}}(r.chars,r.assets),r.__complete!0)}};return m.checkColorsl,m.checkCharso,m.checkPathPropertiesh,m.checkShapesp,m.completeLayerst,m}()),a.assetLoader||(a.assetLoaderfunction(){function t(t){var et.getResponseHeader(content-type);return e&&jsont.responseType&&-1!e.indexOf(json)||t.response&&object_typeof$5(t.response)?t.response:t.response&&stringtypeof t.response?JSON.parse(t.response):t.responseText?JSON.parse(t.responseText):null}return{load:function(e,r,i,s){var a,nnew XMLHttpRequest;try{n.responseTypejson}catch(t){}n.onreadystatechangefunction(){if(4n.readyState)if(200n.status)at(n),i(a);else try{at(n),i(a)}catch(t){s&&s(t)}};try{n.open(GET,e,!0)}catch(t){n.open(GET,r+/+e,!0)}n.send()}}}()),loadAnimationt.data.type)a.assetLoader.load(t.data.path,t.data.fullPath,(function(e){a.dataManager.completeData(e),a.postMessage({id:t.data.id,payload:e,status:success})}),(function(){a.postMessage({id:t.data.id,status:error})}));else if(completet.data.type){var et.data.animation;a.dataManager.completeData(e),a.postMessage({id:t.data.id,payload:e,status:success})}elseloadDatat.data.type&&a.assetLoader.load(t.data.path,t.data.fullPath,(function(e){a.postMessage({id:t.data.id,payload:e,status:success})}),(function(){a.postMessage({id:t.data.id,status:error})}))})),e.onmessagefunction(t){var et.data,re.id,sir;irnull,successe.status?s.onComplete(e.payload):s.onError&&s.onError()})}function o(t,e){var sprocessId_+(r+1);return is{onComplete:t,onError:e},s}return{loadAnimation:function(t,r,i){n();var so(r,i);e.postMessage({type:loadAnimation,path:t,fullPath:window.location.origin+window.location.pathname,id:s})},loadData:function(t,r,i){n();var so(r,i);e.postMessage({type:loadData,path:t,fullPath:window.location.origin+window.location.pathname,id:s})},completeAnimation:function(t,r,i){n();var so(r,i);e.postMessage({type:complete,animation:t,id:s})}}}(),ImagePreloaderfunction(){var tfunction(){var tcreateTag(canvas);t.width1,t.height1;var et.getContext(2d);return e.fillStylergba(0,0,0,0),e.fillRect(0,0,1,1),t}();function e(){this.loadedAssets+1,this.loadedAssetsthis.totalImages&&this.loadedFootagesCountthis.totalFootages&&this.imagesLoadedCb&&this.imagesLoadedCb(null)}function r(){this.loadedFootagesCount+1,this.loadedAssetsthis.totalImages&&this.loadedFootagesCountthis.totalFootages&&this.imagesLoadedCb&&this.imagesLoadedCb(null)}function i(t,e,r){var i;if(t.e)it.p;else if(e){var st.p;-1!s.indexOf(images/)&&(ss.split(/)1),ie+s}else ir,i+t.u?t.u:,i+t.p;return i}function s(t){var e0,rsetInterval(function(){(t.getBBox().width||e>500)&&(this._imageLoaded(),clearInterval(r)),e+1}.bind(this),50)}function a(t){var e{assetData:t},ri(t,this.assetsPath,this.path);return dataManager.loadData(r,function(t){e.imgt,this._footageLoaded()}.bind(this),function(){e.img{},this._footageLoaded()}.bind(this)),e}function n(){this._imageLoadede.bind(this),this._footageLoadedr.bind(this),this.testImageLoadeds.bind(this),this.createFootageDataa.bind(this),this.assetsPath,this.path,this.totalImages0,this.totalFootages0,this.loadedAssets0,this.loadedFootagesCount0,this.imagesLoadedCbnull,this.images}return n.prototype{loadAssets:function(t,e){var r;this.imagesLoadedCbe;var it.length;for(r0;ri;r+1)tr.layers||(tr.t&&seq!tr.t?3tr.t&&(this.totalFootages+1,this.images.push(this.createFootageData(tr))):(this.totalImages+1,this.images.push(this._createImageData(tr))))},setAssetsPath:function(t){this.assetsPatht||},setPath:function(t){this.patht||},loadedImages:function(){return this.totalImagesthis.loadedAssets},loadedFootages:function(){return this.totalFootagesthis.loadedFootagesCount},destroy:function(){this.imagesLoadedCbnull,this.images.length0},getAsset:function(t){for(var e0,rthis.images.length;er;){if(this.imagese.assetDatat)return this.imagese.img;e+1}return null},createImgData:function(e){var ri(e,this.assetsPath,this.path),screateTag(img);s.crossOriginanonymous,s.addEventListener(load,this._imageLoaded,!1),s.addEventListener(error,function(){a.imgt,this._imageLoaded()}.bind(this),!1),s.srcr;var a{img:s,assetData:e};return a},createImageData:function(e){var ri(e,this.assetsPath,this.path),screateNS(image);isSafari?this.testImageLoaded(s):s.addEventListener(load,this._imageLoaded,!1),s.addEventListener(error,function(){a.imgt,this._imageLoaded()}.bind(this),!1),s.setAttributeNS(http://www.w3.org/1999/xlink,href,r),this._elementHelper.append?this._elementHelper.append(s):this._elementHelper.appendChild(s);var a{img:s,assetData:e};return a},imageLoaded:e,footageLoaded:r,setCacheType:function(t,e){svgt?(this._elementHelpere,this._createImageDatathis.createImageData.bind(this)):this._createImageDatathis.createImgData.bind(this)}},n}();function BaseEvent(){}BaseEvent.prototype{triggerEvent:function(t,e){if(this._cbst)for(var rthis._cbst,i0;ir.length;i+1)ri(e)},addEventListener:function(t,e){return this._cbst||(this._cbst),this._cbst.push(e),function(){this.removeEventListener(t,e)}.bind(this)},removeEventListener:function(t,e){if(e){if(this._cbst){for(var r0,ithis._cbst.length;ri;)this._cbstre&&(this._cbst.splice(r,1),r-1,i-1),r+1;this._cbst.length||(this._cbstnull)}}else this._cbstnull}};var markerParserfunction(){function t(t){for(var e,rt.split(\r\n),i{},s0,a0;ar.length;a+1)2(era.split(:)).length&&(ie0e1.trim(),s+1);if(0s)throw new Error;return i}return function(e){for(var r,i0;ie.length;i+1){var sei,a{time:s.tm,duration:s.dr};try{a.payloadJSON.parse(ei.cm)}catch(r){try{a.payloadt(ei.cm)}catch(t){a.payload{name:ei.cm}}}r.push(a)}return r}}(),ProjectInterfacefunction(){function t(t){this.compositions.push(t)}return function(){function e(t){for(var e0,rthis.compositions.length;er;){if(this.compositionse.data&&this.compositionse.data.nmt)return this.compositionse.prepareFrame&&this.compositionse.data.xt&&this.compositionse.prepareFrame(this.currentFrame),this.compositionse.compInterface;e+1}return null}return e.compositions,e.currentFrame0,e.registerCompositiont,e}}(),renderers{},registerRendererfunction(t,e){rendererste};function getRenderer(t){return rendererst}function _typeof$4(t){return _typeof$4functiontypeof Symbol&&symboltypeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&functiontypeof Symbol&&t.constructorSymbol&&t!Symbol.prototype?symbol:typeof t},_typeof$4(t)}var AnimationItemfunction(){this._cbs,this.name,this.path,this.isLoaded!1,this.currentFrame0,this.currentRawFrame0,this.firstFrame0,this.totalFrames0,this.frameRate0,this.frameMult0,this.playSpeed1,this.playDirection1,this.playCount0,this.animationData{},this.assets,this.isPaused!0,this.autoplay!1,this.loop!0,this.renderernull,this.animationIDcreateElementID(),this.assetsPath,this.timeCompleted0,this.segmentPos0,this.isSubframeEnabledgetSubframeEnabled(),this.segments,this._idle!0,this._completedLoop!1,this.projectInterfaceProjectInterface(),this.imagePreloadernew ImagePreloader,this.audioControlleraudioControllerFactory(),this.markers,this.configAnimationthis.configAnimation.bind(this),this.onSetupErrorthis.onSetupError.bind(this),this.onSegmentCompletethis.onSegmentComplete.bind(this),this.drawnFrameEventnew BMEnterFrameEvent(drawnFrame,0,0,0)};extendPrototype(BaseEvent,AnimationItem),AnimationItem.prototype.setParamsfunction(t){(t.wrapper||t.container)&&(this.wrappert.wrapper||t.container);var esvg;t.animType?et.animType:t.renderer&&(et.renderer);var rgetRenderer(e);this.renderernew r(this,t.rendererSettings),this.imagePreloader.setCacheType(e,this.renderer.globalData.defs),this.renderer.setProjectInterface(this.projectInterface),this.animTypee,t.loop||nullt.loop||void 0t.loop||!0t.loop?this.loop!0:!1t.loop?this.loop!1:this.loopparseInt(t.loop,10),this.autoplay!(autoplayin t)||t.autoplay,this.namet.name?t.name:,this.autoloadSegments!Object.prototype.hasOwnProperty.call(t,autoloadSegments)||t.autoloadSegments,this.assetsPatht.assetsPath,this.initialSegmentt.initialSegment,t.audioFactory&&this.audioController.setAudioFactory(t.audioFactory),t.animationData?this.setupAnimation(t.animationData):t.path&&(-1!t.path.lastIndexOf(\\)?this.patht.path.substr(0,t.path.lastIndexOf(\\)+1):this.patht.path.substr(0,t.path.lastIndexOf(/)+1),this.fileNamet.path.substr(t.path.lastIndexOf(/)+1),this.fileNamethis.fileName.substr(0,this.fileName.lastIndexOf(.json)),dataManager.loadAnimation(t.path,this.configAnimation,this.onSetupError))},AnimationItem.prototype.onSetupErrorfunction(){this.trigger(data_failed)},AnimationItem.prototype.setupAnimationfunction(t){dataManager.completeAnimation(t,this.configAnimation)},AnimationItem.prototype.setDatafunction(t,e){e&&object!_typeof$4(e)&&(eJSON.parse(e));var r{wrapper:t,animationData:e},it.attributes;r.pathi.getNamedItem(data-animation-path)?i.getNamedItem(data-animation-path).value:i.getNamedItem(data-bm-path)?i.getNamedItem(data-bm-path).value:i.getNamedItem(bm-path)?i.getNamedItem(bm-path).value:,r.animTypei.getNamedItem(data-anim-type)?i.getNamedItem(data-anim-type).value:i.getNamedItem(data-bm-type)?i.getNamedItem(data-bm-type).value:i.getNamedItem(bm-type)?i.getNamedItem(bm-type).value:i.getNamedItem(data-bm-renderer)?i.getNamedItem(data-bm-renderer).value:i.getNamedItem(bm-renderer)?i.getNamedItem(bm-renderer).value:canvas;var si.getNamedItem(data-anim-loop)?i.getNamedItem(data-anim-loop).value:i.getNamedItem(data-bm-loop)?i.getNamedItem(data-bm-loop).value:i.getNamedItem(bm-loop)?i.getNamedItem(bm-loop).value:;falses?r.loop!1:trues?r.loop!0:!s&&(r.loopparseInt(s,10));var ai.getNamedItem(data-anim-autoplay)?i.getNamedItem(data-anim-autoplay).value:i.getNamedItem(data-bm-autoplay)?i.getNamedItem(data-bm-autoplay).value:!i.getNamedItem(bm-autoplay)||i.getNamedItem(bm-autoplay).value;r.autoplayfalse!a,r.namei.getNamedItem(data-name)?i.getNamedItem(data-name).value:i.getNamedItem(data-bm-name)?i.getNamedItem(data-bm-name).value:i.getNamedItem(bm-name)?i.getNamedItem(bm-name).value:,false(i.getNamedItem(data-anim-prerender)?i.getNamedItem(data-anim-prerender).value:i.getNamedItem(data-bm-prerender)?i.getNamedItem(data-bm-prerender).value:i.getNamedItem(bm-prerender)?i.getNamedItem(bm-prerender).value:)&&(r.prerender!1),this.setParams(r)},AnimationItem.prototype.includeLayersfunction(t){t.op>this.animationData.op&&(this.animationData.opt.op,this.totalFramesMath.floor(t.op-this.animationData.ip));var e,r,ithis.animationData.layers,si.length,at.layers,na.length;for(r0;rn;r+1)for(e0;es;){if(ie.idar.id){iear;break}e+1}if((t.chars||t.fonts)&&(this.renderer.globalData.fontManager.addChars(t.chars),this.renderer.globalData.fontManager.addFonts(t.fonts,this.renderer.globalData.defs)),t.assets)for(st.assets.length,e0;es;e+1)this.animationData.assets.push(t.assetse);this.animationData.__complete!1,dataManager.completeAnimation(this.animationData,this.onSegmentComplete)},AnimationItem.prototype.onSegmentCompletefunction(t){this.animationDatat;var egetExpressionsPlugin();e&&e.initExpressions(this),this.loadNextSegment()},AnimationItem.prototype.loadNextSegmentfunction(){var tthis.animationData.segments;if(!t||0t.length||!this.autoloadSegments)return this.trigger(data_ready),void(this.timeCompletedthis.totalFrames);var et.shift();this.timeCompletede.time*this.frameRate;var rthis.path+this.fileName+_+this.segmentPos+.json;this.segmentPos+1,dataManager.loadData(r,this.includeLayers.bind(this),function(){this.trigger(data_failed)}.bind(this))},AnimationItem.prototype.loadSegmentsfunction(){this.animationData.segments||(this.timeCompletedthis.totalFrames),this.loadNextSegment()},AnimationItem.prototype.imagesLoadedfunction(){this.trigger(loaded_images),this.checkLoaded()},AnimationItem.prototype.preloadImagesfunction(){this.imagePreloader.setAssetsPath(this.assetsPath),this.imagePreloader.setPath(this.path),this.imagePreloader.loadAssets(this.animationData.assets,this.imagesLoaded.bind(this))},AnimationItem.prototype.configAnimationfunction(t){if(this.renderer)try{this.animationDatat,this.initialSegment?(this.totalFramesMath.floor(this.initialSegment1-this.initialSegment0),this.firstFrameMath.round(this.initialSegment0)):(this.totalFramesMath.floor(this.animationData.op-this.animationData.ip),this.firstFrameMath.round(this.animationData.ip)),this.renderer.configAnimation(t),t.assets||(t.assets),this.assetsthis.animationData.assets,this.frameRatethis.animationData.fr,this.frameMultthis.animationData.fr/1e3,this.renderer.searchExtraCompositions(t.assets),this.markersmarkerParser(t.markers||),this.trigger(config_ready),this.preloadImages(),this.loadSegments(),this.updaFrameModifier(),this.waitForFontsLoaded(),this.isPaused&&this.audioController.pause()}catch(t){this.triggerConfigError(t)}},AnimationItem.prototype.waitForFontsLoadedfunction(){this.renderer&&(this.renderer.globalData.fontManager.isLoaded?this.checkLoaded():setTimeout(this.waitForFontsLoaded.bind(this),20))},AnimationItem.prototype.checkLoadedfunction(){if(!this.isLoaded&&this.renderer.globalData.fontManager.isLoaded&&(this.imagePreloader.loadedImages()||canvas!this.renderer.rendererType)&&this.imagePreloader.loadedFootages()){this.isLoaded!0;var tgetExpressionsPlugin();t&&t.initExpressions(this),this.renderer.initItems(),setTimeout(function(){this.trigger(DOMLoaded)}.bind(this),0),this.gotoFrame(),this.autoplay&&this.play()}},AnimationItem.prototype.resizefunction(){this.renderer.updateContainerSize()},AnimationItem.prototype.setSubframefunction(t){this.isSubframeEnabled!!t},AnimationItem.prototype.gotoFramefunction(){this.currentFramethis.isSubframeEnabled?this.currentRawFrame:~~this.currentRawFrame,this.timeCompleted!this.totalFrames&&this.currentFrame>this.timeCompleted&&(this.currentFramethis.timeCompleted),this.trigger(enterFrame),this.renderFrame(),this.trigger(drawnFrame)},AnimationItem.prototype.renderFramefunction(){if(!1!this.isLoaded&&this.renderer)try{this.renderer.renderFrame(this.currentFrame+this.firstFrame)}catch(t){this.triggerRenderFrameError(t)}},AnimationItem.prototype.playfunction(t){t&&this.name!t||!0this.isPaused&&(this.isPaused!1,this.trigger(_pause),this.audioController.resume(),this._idle&&(this._idle!1,this.trigger(_active)))},AnimationItem.prototype.pausefunction(t){t&&this.name!t||!1this.isPaused&&(this.isPaused!0,this.trigger(_play),this._idle!0,this.trigger(_idle),this.audioController.pause())},AnimationItem.prototype.togglePausefunction(t){t&&this.name!t||(!0this.isPaused?this.play():this.pause())},AnimationItem.prototype.stopfunction(t){t&&this.name!t||(this.pause(),this.playCount0,this._completedLoop!1,this.setCurrentRawFrameValue(0))},AnimationItem.prototype.getMarkerDatafunction(t){for(var e,r0;rthis.markers.length;r+1)if((ethis.markersr).payload&&e.payload.namet)return e;return null},AnimationItem.prototype.goToAndStopfunction(t,e,r){if(!r||this.namer){var iNumber(t);if(isNaN(i)){var sthis.getMarkerData(t);s&&this.goToAndStop(s.time,!0)}else e?this.setCurrentRawFrameValue(t):this.setCurrentRawFrameValue(t*this.frameModifier);this.pause()}},AnimationItem.prototype.goToAndPlayfunction(t,e,r){if(!r||this.namer){var iNumber(t);if(isNaN(i)){var sthis.getMarkerData(t);s&&(s.duration?this.playSegments(s.time,s.time+s.duration,!0):this.goToAndStop(s.time,!0))}else this.goToAndStop(i,e,r);this.play()}},AnimationItem.prototype.advanceTimefunction(t){if(!0!this.isPaused&&!1!this.isLoaded){var ethis.currentRawFrame+t*this.frameModifier,r!1;e>this.totalFrames-1&&this.frameModifier>0?this.loop&&this.playCount!this.loop?e>this.totalFrames?(this.playCount+1,this.checkSegments(e%this.totalFrames)||(this.setCurrentRawFrameValue(e%this.totalFrames),this._completedLoop!0,this.trigger(loopComplete))):this.setCurrentRawFrameValue(e):this.checkSegments(e>this.totalFrames?e%this.totalFrames:0)||(r!0,ethis.totalFrames-1):e0?this.checkSegments(e%this.totalFrames)||(!this.loop||this.playCount--0&&!0!this.loop?(r!0,e0):(this.setCurrentRawFrameValue(this.totalFrames+e%this.totalFrames),this._completedLoop?this.trigger(loopComplete):this._completedLoop!0)):this.setCurrentRawFrameValue(e),r&&(this.setCurrentRawFrameValue(e),this.pause(),this.trigger(complete))}},AnimationItem.prototype.adjustSegmentfunction(t,e){this.playCount0,t1t0?(this.frameModifier>0&&(this.playSpeed0?this.setSpeed(-this.playSpeed):this.setDirection(-1)),this.totalFramest0-t1,this.timeCompletedthis.totalFrames,this.firstFramet1,this.setCurrentRawFrameValue(this.totalFrames-.001-e)):t1>t0&&(this.frameModifier0&&(this.playSpeed0?this.setSpeed(-this.playSpeed):this.setDirection(1)),this.totalFramest1-t0,this.timeCompletedthis.totalFrames,this.firstFramet0,this.setCurrentRawFrameValue(.001+e)),this.trigger(segmentStart)},AnimationItem.prototype.setSegmentfunction(t,e){var r-1;this.isPaused&&(this.currentRawFrame+this.firstFramet?rt:this.currentRawFrame+this.firstFrame>e&&(re-t)),this.firstFramet,this.totalFramese-t,this.timeCompletedthis.totalFrames,-1!r&&this.goToAndStop(r,!0)},AnimationItem.prototype.playSegmentsfunction(t,e){if(e&&(this.segments.length0),object_typeof$4(t0)){var r,it.length;for(r0;ri;r+1)this.segments.push(tr)}else this.segments.push(t);this.segments.length&&e&&this.adjustSegment(this.segments.shift(),0),this.isPaused&&this.play()},AnimationItem.prototype.resetSegmentsfunction(t){this.segments.length0,this.segments.push(this.animationData.ip,this.animationData.op),t&&this.checkSegments(0)},AnimationItem.prototype.checkSegmentsfunction(t){return!!this.segments.length&&(this.adjustSegment(this.segments.shift(),t),!0)},AnimationItem.prototype.destroyfunction(t){t&&this.name!t||!this.renderer||(this.renderer.destroy(),this.imagePreloader.destroy(),this.trigger(destroy),this._cbsnull,this.onEnterFramenull,this.onLoopCompletenull,this.onCompletenull,this.onSegmentStartnull,this.onDestroynull,this.renderernull,this.renderernull,this.imagePreloadernull,this.projectInterfacenull)},AnimationItem.prototype.setCurrentRawFrameValuefunction(t){this.currentRawFramet,this.gotoFrame()},AnimationItem.prototype.setSpeedfunction(t){this.playSpeedt,this.updaFrameModifier()},AnimationItem.prototype.setDirectionfunction(t){this.playDirectiont0?-1:1,this.updaFrameModifier()},AnimationItem.prototype.setVolumefunction(t,e){e&&this.name!e||this.audioController.setVolume(t)},AnimationItem.prototype.getVolumefunction(){return this.audioController.getVolume()},AnimationItem.prototype.mutefunction(t){t&&this.name!t||this.audioController.mute()},AnimationItem.prototype.unmutefunction(t){t&&this.name!t||this.audioController.unmute()},AnimationItem.prototype.updaFrameModifierfunction(){this.frameModifierthis.frameMult*this.playSpeed*this.playDirection,this.audioController.setRate(this.playSpeed*this.playDirection)},AnimationItem.prototype.getPathfunction(){return this.path},AnimationItem.prototype.getAssetsPathfunction(t){var e;if(t.e)et.p;else if(this.assetsPath){var rt.p;-1!r.indexOf(images/)&&(rr.split(/)1),ethis.assetsPath+r}else ethis.path,e+t.u?t.u:,e+t.p;return e},AnimationItem.prototype.getAssetDatafunction(t){for(var e0,rthis.assets.length;er;){if(tthis.assetse.id)return this.assetse;e+1}return null},AnimationItem.prototype.hidefunction(){this.renderer.hide()},AnimationItem.prototype.showfunction(){this.renderer.show()},AnimationItem.prototype.getDurationfunction(t){return t?this.totalFrames:this.totalFrames/this.frameRate},AnimationItem.prototype.updateDocumentDatafunction(t,e,r){try{this.renderer.getElementByPath(t).updateDocumentData(e,r)}catch(t){}},AnimationItem.prototype.triggerfunction(t){if(this._cbs&&this._cbst)switch(t){caseenterFrame:this.triggerEvent(t,new BMEnterFrameEvent(t,this.currentFrame,this.totalFrames,this.frameModifier));break;casedrawnFrame:this.drawnFrameEvent.currentTimethis.currentFrame,this.drawnFrameEvent.totalTimethis.totalFrames,this.drawnFrameEvent.directionthis.frameModifier,this.triggerEvent(t,this.drawnFrameEvent);break;caseloopComplete:this.triggerEvent(t,new BMCompleteLoopEvent(t,this.loop,this.playCount,this.frameMult));break;casecomplete:this.triggerEvent(t,new BMCompleteEvent(t,this.frameMult));break;casesegmentStart:this.triggerEvent(t,new BMSegmentStartEvent(t,this.firstFrame,this.totalFrames));break;casedestroy:this.triggerEvent(t,new BMDestroyEvent(t,this));break;default:this.triggerEvent(t)}enterFramet&&this.onEnterFrame&&this.onEnterFrame.call(this,new BMEnterFrameEvent(t,this.currentFrame,this.totalFrames,this.frameMult)),loopCompletet&&this.onLoopComplete&&this.onLoopComplete.call(this,new BMCompleteLoopEvent(t,this.loop,this.playCount,this.frameMult)),completet&&this.onComplete&&this.onComplete.call(this,new BMCompleteEvent(t,this.frameMult)),segmentStartt&&this.onSegmentStart&&this.onSegmentStart.call(this,new BMSegmentStartEvent(t,this.firstFrame,this.totalFrames)),destroyt&&this.onDestroy&&this.onDestroy.call(this,new BMDestroyEvent(t,this))},AnimationItem.prototype.triggerRenderFrameErrorfunction(t){var enew BMRenderFrameErrorEvent(t,this.currentFrame);this.triggerEvent(error,e),this.onError&&this.onError.call(this,e)},AnimationItem.prototype.triggerConfigErrorfunction(t){var enew BMConfigErrorEvent(t,this.currentFrame);this.triggerEvent(error,e),this.onError&&this.onError.call(this,e)};var animationManagerfunction(){var t{},e,r0,i0,s0,a!0,n!1;function o(t){for(var r0,st.target;ri;)er.animations&&(e.splice(r,1),r-1,i-1,s.isPaused||p()),r+1}function h(t,r){if(!t)return null;for(var s0;si;){if(es.elemt&&null!es.elem)return es.animation;s+1}var anew AnimationItem;return f(a,t),a.setData(t,r),a}function l(){s+1,d()}function p(){s-1}function f(t,r){t.addEventListener(destroy,o),t.addEventListener(_active,l),t.addEventListener(_idle,p),e.push({elem:r,animation:t}),i+1}function m(t){var o,ht-r;for(o0;oi;o+1)eo.animation.advanceTime(h);rt,s&&!n?window.requestAnimationFrame(m):a!0}function c(t){rt,window.requestAnimationFrame(m)}function d(){!n&&s&&a&&(window.requestAnimationFrame(c),a!1)}return t.registerAnimationh,t.loadAnimationfunction(t){var enew AnimationItem;return f(e,null),e.setParams(t),e},t.setSpeedfunction(t,r){var s;for(s0;si;s+1)es.animation.setSpeed(t,r)},t.setDirectionfunction(t,r){var s;for(s0;si;s+1)es.animation.setDirection(t,r)},t.playfunction(t){var r;for(r0;ri;r+1)er.animation.play(t)},t.pausefunction(t){var r;for(r0;ri;r+1)er.animation.pause(t)},t.stopfunction(t){var r;for(r0;ri;r+1)er.animation.stop(t)},t.togglePausefunction(t){var r;for(r0;ri;r+1)er.animation.togglePause(t)},t.searchAnimationsfunction(t,e,r){var i,s.concat(.slice.call(document.getElementsByClassName(lottie)),.slice.call(document.getElementsByClassName(bodymovin))),as.length;for(i0;ia;i+1)r&&si.setAttribute(data-bm-type,r),h(si,t);if(e&&0a){r||(rsvg);var ndocument.getElementsByTagName(body)0;n.innerText;var ocreateTag(div);o.style.width100%,o.style.height100%,o.setAttribute(data-bm-type,r),n.appendChild(o),h(o,t)}},t.resizefunction(){var t;for(t0;ti;t+1)et.animation.resize()},t.goToAndStopfunction(t,r,s){var a;for(a0;ai;a+1)ea.animation.goToAndStop(t,r,s)},t.destroyfunction(t){var r;for(ri-1;r>0;r-1)er.animation.destroy(t)},t.freezefunction(){n!0},t.unfreezefunction(){n!1,d()},t.setVolumefunction(t,r){var s;for(s0;si;s+1)es.animation.setVolume(t,r)},t.mutefunction(t){var r;for(r0;ri;r+1)er.animation.mute(t)},t.unmutefunction(t){var r;for(r0;ri;r+1)er.animation.unmute(t)},t.getRegisteredAnimationsfunction(){var t,re.length,i;for(t0;tr;t+1)i.push(et.animation);return i},t}(),BezierFactoryfunction(){var t{getBezierEasing:function(t,r,i,s,a){var na||(bez_+t+_+r+_+i+_+s).replace(/\./g,p);if(en)return en;var onew l(t,r,i,s);return eno,o}},e{};var r.1,ifunctiontypeof Float32Array;function s(t,e){return 1-3*e+3*t}function a(t,e){return 3*e-6*t}function n(t){return 3*t}function o(t,e,r){return((s(e,r)*t+a(e,r))*t+n(e))*t}function h(t,e,r){return 3*s(e,r)*t*t+2*a(e,r)*t+n(e)}function l(t){this._pt,this._mSampleValuesi?new Float32Array(11):new Array(11),this._precomputed!1,this.getthis.get.bind(this)}return l.prototype{get:function(t){var ethis._p0,rthis._p1,ithis._p2,sthis._p3;return this._precomputed||this._precompute(),er&&is?t:0t?0:1t?1:o(this._getTForX(t),r,s)},_precompute:function(){var tthis._p0,ethis._p1,rthis._p2,ithis._p3;this._precomputed!0,te&&ri||this._calcSampleValues()},_calcSampleValues:function(){for(var tthis._p0,ethis._p2,i0;i11;++i)this._mSampleValuesio(i*r,t,e)},_getTForX:function(t){for(var ethis._p0,ithis._p2,sthis._mSampleValues,a0,n1;10!n&&snt;++n)a+r;var la+(t-s--n)/(sn+1-sn)*r,ph(l,e,i);return p>.001?function(t,e,r,i){for(var s0;s4;++s){var ah(e,r,i);if(0a)return e;e-(o(e,r,i)-t)/a}return e}(t,l,e,i):0p?l:function(t,e,r,i,s){var a,n,h0;do{(ao(ne+(r-e)/2,i,s)-t)>0?rn:en}while(Math.abs(a)>1e-7&&++h10);return n}(t,a,a+r,e,i)}},t}(),pooling{double:function(t){return t.concat(createSizedArray(t.length))}},poolFactoryfunction(t,e,r){var i0,st,acreateSizedArray(s);return{newElement:function(){return i?ai-1:e()},release:function(t){is&&(apooling.double(a),s*2),r&&r(t),ait,i+1}}},bezierLengthPoolpoolFactory(8,(function(){return{addedLength:0,percents:createTypedArray(float32,getDefaultCurveSegments()),lengths:createTypedArray(float32,getDefaultCurveSegments())}})),segmentsLengthPoolpoolFactory(8,(function(){return{lengths:,totalLength:0}}),(function(t){var e,rt.lengths.length;for(e0;er;e+1)bezierLengthPool.release(t.lengthse);t.lengths.length0}));function bezFunction(){var tMath;function e(t,e,r,i,s,a){var nt*i+e*s+r*a-s*i-a*t-r*e;return n>-.001&&n.001}var rfunction(t,e,r,i){var s,a,n,o,h,l,pgetDefaultCurveSegments(),f0,m,c,dbezierLengthPool.newElement();for(nr.length,s0;sp;s+1){for(hs/(p-1),l0,a0;an;a+1)obmPow(1-h,3)*ta+3*bmPow(1-h,2)*h*ra+3*(1-h)*bmPow(h,2)*ia+bmPow(h,3)*ea,mao,null!ca&&(l+bmPow(ma-ca,2)),cama;l&&(f+lbmSqrt(l)),d.percentssh,d.lengthssf}return d.addedLengthf,d};function i(t){this.segmentLength0,this.pointsnew Array(t)}function s(t,e){this.partialLengtht,this.pointe}var a,n(a{},function(t,r,n,o){var h(t0+_+t1+_+r0+_+r1+_+n0+_+n1+_+o0+_+o1).replace(/\./g,p);if(!ah){var l,p,f,m,c,d,u,ygetDefaultCurveSegments(),g0,vnull;2t.length&&(t0!r0||t1!r1)&&e(t0,t1,r0,r1,t0+n0,t1+n1)&&e(t0,t1,r0,r1,r0+o0,r1+o1)&&(y2);var bnew i(y);for(fn.length,l0;ly;l+1){for(ucreateSizedArray(f),cl/(y-1),d0,p0;pf;p+1)mbmPow(1-c,3)*tp+3*bmPow(1-c,2)*c*(tp+np)+3*(1-c)*bmPow(c,2)*(rp+op)+bmPow(c,3)*rp,upm,null!v&&(d+bmPow(up-vp,2));g+dbmSqrt(d),b.pointslnew s(d,u),vu}b.segmentLengthg,ahb}return ah});function o(t,e){var re.percents,ie.lengths,sr.length,abmFloor((s-1)*t),nt*e.addedLength,o0;if(as-1||0a||nia)return ra;for(var hia>n?-1:1,l!0;l;)if(ian&&ia+1>n?(o(n-ia)/(ia+1-ia),l!1):a+h,a0||a>s-1){if(as-1)return ra;l!1}return ra+(ra+1-ra)*o}var hcreateTypedArray(float32,8);return{getSegmentsLength:function(t){var e,isegmentsLengthPool.newElement(),st.c,at.v,nt.o,ot.i,ht._length,li.lengths,p0;for(e0;eh-1;e+1)ler(ae,ae+1,ne,oe+1),p+le.addedLength;return s&&h&&(ler(ae,a0,ne,o0),p+le.addedLength),i.totalLengthp,i},getNewSegment:function(e,r,i,s,a,n,l){a0?a0:a>1&&(a1);var p,fo(a,l),mo(nn>1?1:n,l),ce.length,d1-f,u1-m,yd*d*d,gf*d*d*3,vf*f*d*3,bf*f*f,Pd*d*u,Ef*d*u+d*f*u+d*d*m,xf*f*u+d*f*m+f*d*m,Sf*f*m,_d*u*u,Cf*u*u+d*m*u+d*u*m,Af*m*u+d*m*m+f*u*m,Tf*m*m,ku*u*u,Dm*u*u+u*m*u+u*u*m,Mm*m*u+u*m*m+m*u*m,Fm*m*m;for(p0;pc;p+1)h4*pt.round(1e3*(y*ep+g*ip+v*sp+b*rp))/1e3,h4*p+1t.round(1e3*(P*ep+E*ip+x*sp+S*rp))/1e3,h4*p+2t.round(1e3*(_*ep+C*ip+A*sp+T*rp))/1e3,h4*p+3t.round(1e3*(k*ep+D*ip+M*sp+F*rp))/1e3;return h},getPointInSegment:function(e,r,i,s,a,n){var ho(a,n),l1-h;returnt.round(1e3*(l*l*l*e0+(h*l*l+l*h*l+l*l*h)*i0+(h*h*l+l*h*h+h*l*h)*s0+h*h*h*r0))/1e3,t.round(1e3*(l*l*l*e1+(h*l*l+l*h*l+l*l*h)*i1+(h*h*l+l*h*h+h*l*h)*s1+h*h*h*r1))/1e3},buildBezierData:n,pointOnLine2D:e,pointOnLine3D:function(r,i,s,a,n,o,h,l,p){if(0s&&0o&&0p)return e(r,i,a,n,h,l);var f,mt.sqrt(t.pow(a-r,2)+t.pow(n-i,2)+t.pow(o-s,2)),ct.sqrt(t.pow(h-r,2)+t.pow(l-i,2)+t.pow(p-s,2)),dt.sqrt(t.pow(h-a,2)+t.pow(l-n,2)+t.pow(p-o,2));return(fm>c?m>d?m-c-d:d-c-m:d>c?d-c-m:c-m-d)>-1e-4&&f1e-4}}}var bezbezFunction(),PropertyFactoryfunction(){var tinitialDefaultFrame,eMath.abs;function r(t,e){var r,sthis.offsetTime;multidimensionalthis.propType&&(rcreateTypedArray(float32,this.pv.length));for(var a,n,o,h,l,p,f,m,c,de.lastIndex,ud,ythis.keyframes.length-1,g!0;g;){if(athis.keyframesu,nthis.keyframesu+1,uy-1&&t>n.t-s){a.h&&(an),d0;break}if(n.t-s>t){du;break}uy-1?u+1:(d0,g!1)}othis.keyframesMetadatau||{};var v,b,P,E,x,S,_,C,A,T,kn.t-s,Da.t-s;if(a.to){o.bezierData||(o.bezierDatabez.buildBezierData(a.s,n.s||a.e,a.to,a.ti));var Mo.bezierData;if(t>k||tD){var Ft>k?M.points.length-1:0;for(lM.pointsF.point.length,h0;hl;h+1)rhM.pointsF.pointh}else{o.__fnct?co.__fnct:(cBezierFactory.getBezierEasing(a.o.x,a.o.y,a.i.x,a.i.y,a.n).get,o.__fnctc),pc((t-D)/(k-D));var w,IM.segmentLength*p,Ve.lastFramet&&e._lastKeyframeIndexu?e._lastAddedLength:0;for(me.lastFramet&&e._lastKeyframeIndexu?e._lastPoint:0,g!0,fM.points.length;g;){if(V+M.pointsm.partialLength,0I||0p||mM.points.length-1){for(lM.pointsm.point.length,h0;hl;h+1)rhM.pointsm.pointh;break}if(I>V&&IV+M.pointsm+1.partialLength){for(w(I-V)/M.pointsm+1.partialLength,lM.pointsm.point.length,h0;hl;h+1)rhM.pointsm.pointh+(M.pointsm+1.pointh-M.pointsm.pointh)*w;break}mf-1?m+1:g!1}e._lastPointm,e._lastAddedLengthV-M.pointsm.partialLength,e._lastKeyframeIndexu}}else{var B,R,L,G,z;if(ya.s.length,vn.s||a.e,this.sh&&1!a.h)if(t>k)r0v0,r1v1,r2v2;else if(tD)r0a.s0,r1a.s1,r2a.s2;else{var Ni(a.s),Oi(v);br,Pfunction(t,e,r){var i,s,a,n,o,h,lt0,pt1,ft2,mt3,ce0,de1,ue2,ye3;return(sl*c+p*d+f*u+m*y)0&&(s-s,c-c,d-d,u-u,y-y),1-s>1e-6?(iMath.acos(s),aMath.sin(i),nMath.sin((1-r)*i)/a,oMath.sin(r*i)/a):(n1-r,or),h0n*l+o*c,h1n*p+o*d,h2n*f+o*u,h3n*m+o*y,h}(N,O,(t-D)/(k-D)),EP0,xP1,SP2,_P3,CMath.atan2(2*x*_-2*E*S,1-2*x*x-2*S*S),AMath.asin(2*E*x+2*S*_),TMath.atan2(2*E*_-2*x*S,1-2*E*E-2*S*S),b0C/degToRads,b1A/degToRads,b2T/degToRads}else for(u0;uy;u+1)1!a.h&&(t>k?p1:tD?p0:(a.o.x.constructorArray?(o.__fnct||(o.__fnct),o.__fnctu?co.__fnctu:(Bvoid 0a.o.xu?a.o.x0:a.o.xu,Rvoid 0a.o.yu?a.o.y0:a.o.yu,Lvoid 0a.i.xu?a.i.x0:a.i.xu,Gvoid 0a.i.yu?a.i.y0:a.i.yu,cBezierFactory.getBezierEasing(B,R,L,G).get,o.__fnctuc)):o.__fnct?co.__fnct:(Ba.o.x,Ra.o.y,La.i.x,Ga.i.y,cBezierFactory.getBezierEasing(B,R,L,G).get,a.keyframeMetadatac),pc((t-D)/(k-D)))),vn.s||a.e,z1a.h?a.su:a.su+(vu-a.su)*p,multidimensionalthis.propType?ruz:rz}return e.lastIndexd,r}function i(t){var et0*degToRads,rt1*degToRads,it2*degToRads,sMath.cos(e/2),aMath.cos(r/2),nMath.cos(i/2),oMath.sin(e/2),hMath.sin(r/2),lMath.sin(i/2);returno*h*n+s*a*l,o*a*n+s*h*l,s*h*n-o*a*l,s*a*n-o*h*l}function s(){var ethis.comp.renderedFrame-this.offsetTime,rthis.keyframes0.t-this.offsetTime,ithis.keyframesthis.keyframes.length-1.t-this.offsetTime;if(!(ethis._caching.lastFrame||this._caching.lastFrame!t&&(this._caching.lastFrame>i&&e>i||this._caching.lastFramer&&er))){this._caching.lastFrame>e&&(this._caching._lastKeyframeIndex-1,this._caching.lastIndex0);var sthis.interpolateValue(e,this._caching);this.pvs}return this._caching.lastFramee,this.pv}function a(t){var r;if(unidimensionalthis.propType)rt*this.mult,e(this.v-r)>1e-5&&(this.vr,this._mdf!0);else for(var i0,sthis.v.length;is;)rti*this.mult,e(this.vi-r)>1e-5&&(this.vir,this._mdf!0),i+1}function n(){if(this.elem.globalData.frameId!this.frameId&&this.effectsSequence.length)if(this.lock)this.setVValue(this.pv);else{var t;this.lock!0,this._mdfthis._isFirstFrame;var ethis.effectsSequence.length,rthis.kf?this.pv:this.data.k;for(t0;te;t+1)rthis.effectsSequencet(r);this.setVValue(r),this._isFirstFrame!1,this.lock!1,this.frameIdthis.elem.globalData.frameId}}function o(t){this.effectsSequence.push(t),this.container.addDynamicProperty(this)}function h(t,e,r,i){this.propTypeunidimensional,this.multr||1,this.datae,this.vr?e.k*r:e.k,this.pve.k,this._mdf!1,this.elemt,this.containeri,this.compt.comp,this.k!1,this.kf!1,this.vel0,this.effectsSequence,this._isFirstFrame!0,this.getValuen,this.setVValuea,this.addEffecto}function l(t,e,r,i){var s;this.propTypemultidimensional,this.multr||1,this.datae,this._mdf!1,this.elemt,this.containeri,this.compt.comp,this.k!1,this.kf!1,this.frameId-1;var he.k.length;for(this.vcreateTypedArray(float32,h),this.pvcreateTypedArray(float32,h),this.velcreateTypedArray(float32,h),s0;sh;s+1)this.vse.ks*this.mult,this.pvse.ks;this._isFirstFrame!0,this.effectsSequence,this.getValuen,this.setVValuea,this.addEffecto}function p(e,i,h,l){this.propTypeunidimensional,this.keyframesi.k,this.keyframesMetadata,this.offsetTimee.data.st,this.frameId-1,this._caching{lastFrame:t,lastIndex:0,value:0,_lastKeyframeIndex:-1},this.k!0,this.kf!0,this.datai,this.multh||1,this.eleme,this.containerl,this.compe.comp,this.vt,this.pvt,this._isFirstFrame!0,this.getValuen,this.setVValuea,this.interpolateValuer,this.effectsSequences.bind(this),this.addEffecto}function f(e,i,h,l){var p;this.propTypemultidimensional;var f,m,c,d,ui.k.length;for(p0;pu-1;p+1)i.kp.to&&i.kp.s&&i.kp+1&&i.kp+1.s&&(fi.kp.s,mi.kp+1.s,ci.kp.to,di.kp.ti,(2f.length&&(f0!m0||f1!m1)&&bez.pointOnLine2D(f0,f1,m0,m1,f0+c0,f1+c1)&&bez.pointOnLine2D(f0,f1,m0,m1,m0+d0,m1+d1)||3f.length&&(f0!m0||f1!m1||f2!m2)&&bez.pointOnLine3D(f0,f1,f2,m0,m1,m2,f0+c0,f1+c1,f2+c2)&&bez.pointOnLine3D(f0,f1,f2,m0,m1,m2,m0+d0,m1+d1,m2+d2))&&(i.kp.tonull,i.kp.tinull),f0m0&&f1m1&&0c0&&0c1&&0d0&&0d1&&(2f.length||f2m2&&0c2&&0d2)&&(i.kp.tonull,i.kp.tinull));this.effectsSequences.bind(this),this.datai,this.keyframesi.k,this.keyframesMetadata,this.offsetTimee.data.st,this.k!0,this.kf!0,this._isFirstFrame!0,this.multh||1,this.eleme,this.containerl,this.compe.comp,this.getValuen,this.setVValuea,this.interpolateValuer,this.frameId-1;var yi.k0.s.length;for(this.vcreateTypedArray(float32,y),this.pvcreateTypedArray(float32,y),p0;py;p+1)this.vpt,this.pvpt;this._caching{lastFrame:t,lastIndex:0,value:createTypedArray(float32,y)},this.addEffecto}return{getProp:function(t,e,r,i,s){var a;if(e.k.length)if(numbertypeof e.k0)anew l(t,e,i,s);else switch(r){case 0:anew p(t,e,i,s);break;case 1:anew f(t,e,i,s)}else anew h(t,e,i,s);return a.effectsSequence.length&&s.addDynamicProperty(a),a}}}();function DynamicPropertyContainer(){}DynamicPropertyContainer.prototype{addDynamicProperty:function(t){-1this.dynamicProperties.indexOf(t)&&(this.dynamicProperties.push(t),this.container.addDynamicProperty(this),this._isAnimated!0)},iterateDynamicProperties:function(){var t;this._mdf!1;var ethis.dynamicProperties.length;for(t0;te;t+1)this.dynamicPropertiest.getValue(),this.dynamicPropertiest._mdf&&(this._mdf!0)},initDynamicPropertyContainer:function(t){this.containert,this.dynamicProperties,this._mdf!1,this._isAnimated!1}};var pointPoolpoolFactory(8,(function(){return createTypedArray(float32,2)}));function ShapePath(){this.c!1,this._length0,this._maxLength8,this.vcreateSizedArray(this._maxLength),this.ocreateSizedArray(this._maxLength),this.icreateSizedArray(this._maxLength)}ShapePath.prototype.setPathDatafunction(t,e){this.ct,this.setLength(e);for(var r0;re;)this.vrpointPool.newElement(),this.orpointPool.newElement(),this.irpointPool.newElement(),r+1},ShapePath.prototype.setLengthfunction(t){for(;this._maxLengtht;)this.doubleArrayLength();this._lengtht},ShapePath.prototype.doubleArrayLengthfunction(){this.vthis.v.concat(createSizedArray(this._maxLength)),this.ithis.i.concat(createSizedArray(this._maxLength)),this.othis.o.concat(createSizedArray(this._maxLength)),this._maxLength*2},ShapePath.prototype.setXYAtfunction(t,e,r,i,s){var a;switch(this._lengthMath.max(this._length,i+1),this._length>this._maxLength&&this.doubleArrayLength(),r){casev:athis.v;break;casei:athis.i;break;caseo:athis.o;break;default:a}(!ai||ai&&!s)&&(aipointPool.newElement()),ai0t,ai1e},ShapePath.prototype.setTripleAtfunction(t,e,r,i,s,a,n,o){this.setXYAt(t,e,v,n,o),this.setXYAt(r,i,o,n,o),this.setXYAt(s,a,i,n,o)},ShapePath.prototype.reversefunction(){var tnew ShapePath;t.setPathData(this.c,this._length);var ethis.v,rthis.o,ithis.i,s0;this.c&&(t.setTripleAt(e00,e01,i00,i01,r00,r01,0,!1),s1);var a,nthis._length-1,othis._length;for(as;ao;a+1)t.setTripleAt(en0,en1,in0,in1,rn0,rn1,a,!1),n-1;return t};var shapePool(factorypoolFactory(4,(function(){return new ShapePath}),(function(t){var e,rt._length;for(e0;er;e+1)pointPool.release(t.ve),pointPool.release(t.ie),pointPool.release(t.oe),t.venull,t.ienull,t.oenull;t._length0,t.c!1})),factory.clonefunction(t){var e,rfactory.newElement(),ivoid 0t._length?t.v.length:t._length;for(r.setLength(i),r.ct.c,e0;ei;e+1)r.setTripleAt(t.ve0,t.ve1,t.oe0,t.oe1,t.ie0,t.ie1,e);return r},factory),factory;function ShapeCollection(){this._length0,this._maxLength4,this.shapescreateSizedArray(this._maxLength)}ShapeCollection.prototype.addShapefunction(t){this._lengththis._maxLength&&(this.shapesthis.shapes.concat(createSizedArray(this._maxLength)),this._maxLength*2),this.shapesthis._lengtht,this._length+1},ShapeCollection.prototype.releaseShapesfunction(){var t;for(t0;tthis._length;t+1)shapePool.release(this.shapest);this._length0};var shapeCollectionPool(ob{newShapeCollection:function(){return _length?pool_length-1:new ShapeCollection},release:function(t){var e,rt._length;for(e0;er;e+1)shapePool.release(t.shapese);t._length0,_length_maxLength&&(poolpooling.double(pool),_maxLength*2),pool_lengtht,_length+1}},_length0,_maxLength4,poolcreateSizedArray(_maxLength),ob),ob,_length,_maxLength,pool,ShapePropertyFactoryfunction(){var t-999999;function e(t,e,r){var i,s,a,n,o,h,l,p,f,mr.lastIndex,cthis.keyframes;if(tc0.t-this.offsetTime)ic0.s0,a!0,m0;else if(t>cc.length-1.t-this.offsetTime)icc.length-1.s?cc.length-1.s0:cc.length-2.e0,a!0;else{for(var d,u,y,gm,vc.length-1,b!0;b&&(dcg,!((ucg+1).t-this.offsetTime>t));)gv-1?g+1:b!1;if(ythis.keyframesMetadatag||{},mg,!(a1d.h)){if(t>u.t-this.offsetTime)p1;else if(td.t-this.offsetTime)p0;else{var P;y.__fnct?Py.__fnct:(PBezierFactory.getBezierEasing(d.o.x,d.o.y,d.i.x,d.i.y).get,y.__fnctP),pP((t-(d.t-this.offsetTime))/(u.t-this.offsetTime-(d.t-this.offsetTime)))}su.s?u.s0:d.e0}id.s0}for(he._length,li.i0.length,r.lastIndexm,n0;nh;n+1)for(o0;ol;o+1)fa?i.ino:i.ino+(s.ino-i.ino)*p,e.inof,fa?i.ono:i.ono+(s.ono-i.ono)*p,e.onof,fa?i.vno:i.vno+(s.vno-i.vno)*p,e.vnof}function r(){var ethis.comp.renderedFrame-this.offsetTime,rthis.keyframes0.t-this.offsetTime,ithis.keyframesthis.keyframes.length-1.t-this.offsetTime,sthis._caching.lastFrame;return s!t&&(sr&&er||s>i&&e>i)||(this._caching.lastIndexse?this._caching.lastIndex:0,this.interpolateShape(e,this.pv,this._caching)),this._caching.lastFramee,this.pv}function i(){this.pathsthis.localShapeCollection}function s(t){(function(t,e){if(t._length!e._length||t.c!e.c)return!1;var r,it._length;for(r0;ri;r+1)if(t.vr0!e.vr0||t.vr1!e.vr1||t.or0!e.or0||t.or1!e.or1||t.ir0!e.ir0||t.ir1!e.ir1)return!1;return!0})(this.v,t)||(this.vshapePool.clone(t),this.localShapeCollection.releaseShapes(),this.localShapeCollection.addShape(this.v),this._mdf!0,this.pathsthis.localShapeCollection)}function a(){if(this.elem.globalData.frameId!this.frameId)if(this.effectsSequence.length)if(this.lock)this.setVValue(this.pv);else{var t,e;this.lock!0,this._mdf!1,tthis.kf?this.pv:this.data.ks?this.data.ks.k:this.data.pt.k;var rthis.effectsSequence.length;for(e0;er;e+1)tthis.effectsSequencee(t);this.setVValue(t),this.lock!1,this.frameIdthis.elem.globalData.frameId}else this._mdf!1}function n(t,e,r){this.propTypeshape,this.compt.comp,this.containert,this.elemt,this.datae,this.k!1,this.kf!1,this._mdf!1;var s3r?e.pt.k:e.ks.k;this.vshapePool.clone(s),this.pvshapePool.clone(this.v),this.localShapeCollectionshapeCollectionPool.newShapeCollection(),this.pathsthis.localShapeCollection,this.paths.addShape(this.v),this.reseti,this.effectsSequence}function o(t){this.effectsSequence.push(t),this.container.addDynamicProperty(this)}function h(e,s,a){this.propTypeshape,this.compe.comp,this.eleme,this.containere,this.offsetTimee.data.st,this.keyframes3a?s.pt.k:s.ks.k,this.keyframesMetadata,this.k!0,this.kf!0;var nthis.keyframes0.s0.i.length;this.vshapePool.newElement(),this.v.setPathData(this.keyframes0.s0.c,n),this.pvshapePool.clone(this.v),this.localShapeCollectionshapeCollectionPool.newShapeCollection(),this.pathsthis.localShapeCollection,this.paths.addShape(this.v),this.lastFramet,this.reseti,this._caching{lastFrame:t,lastIndex:0},this.effectsSequencer.bind(this)}n.prototype.interpolateShapee,n.prototype.getValuea,n.prototype.setVValues,n.prototype.addEffecto,h.prototype.getValuea,h.prototype.interpolateShapee,h.prototype.setVValues,h.prototype.addEffecto;var lfunction(){var troundCorner;function e(t,e){this.vshapePool.newElement(),this.v.setPathData(!0,4),this.localShapeCollectionshapeCollectionPool.newShapeCollection(),this.pathsthis.localShapeCollection,this.localShapeCollection.addShape(this.v),this.de.d,this.elemt,this.compt.comp,this.frameId-1,this.initDynamicPropertyContainer(t),this.pPropertyFactory.getProp(t,e.p,1,0,this),this.sPropertyFactory.getProp(t,e.s,1,0,this),this.dynamicProperties.length?this.k!0:(this.k!1,this.convertEllToPath())}return e.prototype{reset:i,getValue:function(){this.elem.globalData.frameId!this.frameId&&(this.frameIdthis.elem.globalData.frameId,this.iterateDynamicProperties(),this._mdf&&this.convertEllToPath())},convertEllToPath:function(){var ethis.p.v0,rthis.p.v1,ithis.s.v0/2,sthis.s.v1/2,a3!this.d,nthis.v;n.v00e,n.v01r-s,n.v10a?e+i:e-i,n.v11r,n.v20e,n.v21r+s,n.v30a?e-i:e+i,n.v31r,n.i00a?e-i*t:e+i*t,n.i01r-s,n.i10a?e+i:e-i,n.i11r-s*t,n.i20a?e+i*t:e-i*t,n.i21r+s,n.i30a?e-i:e+i,n.i31r+s*t,n.o00a?e+i*t:e-i*t,n.o01r-s,n.o10a?e+i:e-i,n.o11r+s*t,n.o20a?e-i*t:e+i*t,n.o21r+s,n.o30a?e-i:e+i,n.o31r-s*t}},extendPrototype(DynamicPropertyContainer,e),e}(),pfunction(){function t(t,e){this.vshapePool.newElement(),this.v.setPathData(!0,0),this.elemt,this.compt.comp,this.datae,this.frameId-1,this.de.d,this.initDynamicPropertyContainer(t),1e.sy?(this.irPropertyFactory.getProp(t,e.ir,0,0,this),this.isPropertyFactory.getProp(t,e.is,0,.01,this),this.convertToPaththis.convertStarToPath):this.convertToPaththis.convertPolygonToPath,this.ptPropertyFactory.getProp(t,e.pt,0,0,this),this.pPropertyFactory.getProp(t,e.p,1,0,this),this.rPropertyFactory.getProp(t,e.r,0,degToRads,this),this.orPropertyFactory.getProp(t,e.or,0,0,this),this.osPropertyFactory.getProp(t,e.os,0,.01,this),this.localShapeCollectionshapeCollectionPool.newShapeCollection(),this.localShapeCollection.addShape(this.v),this.pathsthis.localShapeCollection,this.dynamicProperties.length?this.k!0:(this.k!1,this.convertToPath())}return t.prototype{reset:i,getValue:function(){this.elem.globalData.frameId!this.frameId&&(this.frameIdthis.elem.globalData.frameId,this.iterateDynamicProperties(),this._mdf&&this.convertToPath())},convertStarToPath:function(){var t,e,r,i,s2*Math.floor(this.pt.v),a2*Math.PI/s,n!0,othis.or.v,hthis.ir.v,lthis.os.v,pthis.is.v,f2*Math.PI*o/(2*s),m2*Math.PI*h/(2*s),c-Math.PI/2;c+this.r.v;var d3this.data.d?-1:1;for(this.v._length0,t0;ts;t+1){rn?l:p,in?f:m;var u(en?o:h)*Math.cos(c),ye*Math.sin(c),g0u&&0y?0:y/Math.sqrt(u*u+y*y),v0u&&0y?0:-u/Math.sqrt(u*u+y*y);u++this.p.v0,y++this.p.v1,this.v.setTripleAt(u,y,u-g*i*r*d,y-v*i*r*d,u+g*i*r*d,y+v*i*r*d,t,!0),n!n,c+a*d}},convertPolygonToPath:function(){var t,eMath.floor(this.pt.v),r2*Math.PI/e,ithis.or.v,sthis.os.v,a2*Math.PI*i/(4*e),n.5*-Math.PI,o3this.data.d?-1:1;for(n+this.r.v,this.v._length0,t0;te;t+1){var hi*Math.cos(n),li*Math.sin(n),p0h&&0l?0:l/Math.sqrt(h*h+l*l),f0h&&0l?0:-h/Math.sqrt(h*h+l*l);h++this.p.v0,l++this.p.v1,this.v.setTripleAt(h,l,h-p*a*s*o,l-f*a*s*o,h+p*a*s*o,l+f*a*s*o,t,!0),n+r*o}this.paths.length0,this.paths0this.v}},extendPrototype(DynamicPropertyContainer,t),t}(),ffunction(){function t(t,e){this.vshapePool.newElement(),this.v.c!0,this.localShapeCollectionshapeCollectionPool.newShapeCollection(),this.localShapeCollection.addShape(this.v),this.pathsthis.localShapeCollection,this.elemt,this.compt.comp,this.frameId-1,this.de.d,this.initDynamicPropertyContainer(t),this.pPropertyFactory.getProp(t,e.p,1,0,this),this.sPropertyFactory.getProp(t,e.s,1,0,this),this.rPropertyFactory.getProp(t,e.r,0,0,this),this.dynamicProperties.length?this.k!0:(this.k!1,this.convertRectToPath())}return t.prototype{convertRectToPath:function(){var tthis.p.v0,ethis.p.v1,rthis.s.v0/2,ithis.s.v1/2,sbmMin(r,i,this.r.v),as*(1-roundCorner);this.v._length0,2this.d||1this.d?(this.v.setTripleAt(t+r,e-i+s,t+r,e-i+s,t+r,e-i+a,0,!0),this.v.setTripleAt(t+r,e+i-s,t+r,e+i-a,t+r,e+i-s,1,!0),0!s?(this.v.setTripleAt(t+r-s,e+i,t+r-s,e+i,t+r-a,e+i,2,!0),this.v.setTripleAt(t-r+s,e+i,t-r+a,e+i,t-r+s,e+i,3,!0),this.v.setTripleAt(t-r,e+i-s,t-r,e+i-s,t-r,e+i-a,4,!0),this.v.setTripleAt(t-r,e-i+s,t-r,e-i+a,t-r,e-i+s,5,!0),this.v.setTripleAt(t-r+s,e-i,t-r+s,e-i,t-r+a,e-i,6,!0),this.v.setTripleAt(t+r-s,e-i,t+r-a,e-i,t+r-s,e-i,7,!0)):(this.v.setTripleAt(t-r,e+i,t-r+a,e+i,t-r,e+i,2),this.v.setTripleAt(t-r,e-i,t-r,e-i+a,t-r,e-i,3))):(this.v.setTripleAt(t+r,e-i+s,t+r,e-i+a,t+r,e-i+s,0,!0),0!s?(this.v.setTripleAt(t+r-s,e-i,t+r-s,e-i,t+r-a,e-i,1,!0),this.v.setTripleAt(t-r+s,e-i,t-r+a,e-i,t-r+s,e-i,2,!0),this.v.setTripleAt(t-r,e-i+s,t-r,e-i+s,t-r,e-i+a,3,!0),this.v.setTripleAt(t-r,e+i-s,t-r,e+i-a,t-r,e+i-s,4,!0),this.v.setTripleAt(t-r+s,e+i,t-r+s,e+i,t-r+a,e+i,5,!0),this.v.setTripleAt(t+r-s,e+i,t+r-a,e+i,t+r-s,e+i,6,!0),this.v.setTripleAt(t+r,e+i-s,t+r,e+i-s,t+r,e+i-a,7,!0)):(this.v.setTripleAt(t-r,e-i,t-r+a,e-i,t-r,e-i,1,!0),this.v.setTripleAt(t-r,e+i,t-r,e+i-a,t-r,e+i,2,!0),this.v.setTripleAt(t+r,e+i,t+r-a,e+i,t+r,e+i,3,!0)))},getValue:function(){this.elem.globalData.frameId!this.frameId&&(this.frameIdthis.elem.globalData.frameId,this.iterateDynamicProperties(),this._mdf&&this.convertRectToPath())},reset:i},extendPrototype(DynamicPropertyContainer,t),t}();var m{getShapeProp:function(t,e,r){var i;return 3r||4r?i(3r?e.pt:e.ks).k.length?new h(t,e,r):new n(t,e,r):5r?inew f(t,e):6r?inew l(t,e):7r&&(inew p(t,e)),i.k&&t.addDynamicProperty(i),i},getConstructorFunction:function(){return n},getKeyframedConstructorFunction:function(){return h}};return m}(),Matrixfunction(){var tMath.cos,eMath.sin,rMath.tan,iMath.round;function s(){return this.props01,this.props10,this.props20,this.props30,this.props40,this.props51,this.props60,this.props70,this.props80,this.props90,this.props101,this.props110,this.props120,this.props130,this.props140,this.props151,this}function a(r){if(0r)return this;var it(r),se(r);return this._t(i,-s,0,0,s,i,0,0,0,0,1,0,0,0,0,1)}function n(r){if(0r)return this;var it(r),se(r);return this._t(1,0,0,0,0,i,-s,0,0,s,i,0,0,0,0,1)}function o(r){if(0r)return this;var it(r),se(r);return this._t(i,0,s,0,0,1,0,0,-s,0,i,0,0,0,0,1)}function h(r){if(0r)return this;var it(r),se(r);return this._t(i,-s,0,0,s,i,0,0,0,0,1,0,0,0,0,1)}function l(t,e){return this._t(1,e,t,1,0,0)}function p(t,e){return this.shear(r(t),r(e))}function f(i,s){var at(s),ne(s);return this._t(a,n,0,0,-n,a,0,0,0,0,1,0,0,0,0,1)._t(1,0,0,0,r(i),1,0,0,0,0,1,0,0,0,0,1)._t(a,-n,0,0,n,a,0,0,0,0,1,0,0,0,0,1)}function m(t,e,r){return r||0r||(r1),1t&&1e&&1r?this:this._t(t,0,0,0,0,e,0,0,0,0,r,0,0,0,0,1)}function c(t,e,r,i,s,a,n,o,h,l,p,f,m,c,d,u){return this.props0t,this.props1e,this.props2r,this.props3i,this.props4s,this.props5a,this.props6n,this.props7o,this.props8h,this.props9l,this.props10p,this.props11f,this.props12m,this.props13c,this.props14d,this.props15u,this}function d(t,e,r){return rr||0,0!t||0!e||0!r?this._t(1,0,0,0,0,1,0,0,0,0,1,0,t,e,r,1):this}function u(t,e,r,i,s,a,n,o,h,l,p,f,m,c,d,u){var ythis.props;if(1t&&0e&&0r&&0i&&0s&&1a&&0n&&0o&&0h&&0l&&1p&&0f)return y12y12*t+y15*m,y13y13*a+y15*c,y14y14*p+y15*d,y15*u,this._identityCalculated!1,this;var gy0,vy1,by2,Py3,Ey4,xy5,Sy6,_y7,Cy8,Ay9,Ty10,ky11,Dy12,My13,Fy14,wy15;return y0g*t+v*s+b*h+P*m,y1g*e+v*a+b*l+P*c,y2g*r+v*n+b*p+P*d,y3g*i+v*o+b*f+P*u,y4E*t+x*s+S*h+_*m,y5E*e+x*a+S*l+_*c,y6E*r+x*n+S*p+_*d,y7E*i+x*o+S*f+_*u,y8C*t+A*s+T*h+k*m,y9C*e+A*a+T*l+k*c,y10C*r+A*n+T*p+k*d,y11C*i+A*o+T*f+k*u,y12D*t+M*s+F*h+w*m,y13D*e+M*a+F*l+w*c,y14D*r+M*n+F*p+w*d,y15D*i+M*o+F*f+w*u,this._identityCalculated!1,this}function y(){return this._identityCalculated||(this._identity!(1!this.props0||0!this.props1||0!this.props2||0!this.props3||0!this.props4||1!this.props5||0!this.props6||0!this.props7||0!this.props8||0!this.props9||1!this.props10||0!this.props11||0!this.props12||0!this.props13||0!this.props14||1!this.props15),this._identityCalculated!0),this._identity}function g(t){for(var e0;e16;){if(t.propse!this.propse)return!1;e+1}return!0}function v(t){var e;for(e0;e16;e+1)t.propsethis.propse;return t}function b(t){var e;for(e0;e16;e+1)this.propsete}function P(t,e,r){return{x:t*this.props0+e*this.props4+r*this.props8+this.props12,y:t*this.props1+e*this.props5+r*this.props9+this.props13,z:t*this.props2+e*this.props6+r*this.props10+this.props14}}function E(t,e,r){return t*this.props0+e*this.props4+r*this.props8+this.props12}function x(t,e,r){return t*this.props1+e*this.props5+r*this.props9+this.props13}function S(t,e,r){return t*this.props2+e*this.props6+r*this.props10+this.props14}function _(){var tthis.props0*this.props5-this.props1*this.props4,ethis.props5/t,r-this.props1/t,i-this.props4/t,sthis.props0/t,a(this.props4*this.props13-this.props5*this.props12)/t,n-(this.props0*this.props13-this.props1*this.props12)/t,onew Matrix;return o.props0e,o.props1r,o.props4i,o.props5s,o.props12a,o.props13n,o}function C(t){return this.getInverseMatrix().applyToPointArray(t0,t1,t2||0)}function A(t){var e,rt.length,i;for(e0;er;e+1)ieC(te);return i}function T(t,e,r){var icreateTypedArray(float32,6);if(this.isIdentity())i0t0,i1t1,i2e0,i3e1,i4r0,i5r1;else{var sthis.props0,athis.props1,nthis.props4,othis.props5,hthis.props12,lthis.props13;i0t0*s+t1*n+h,i1t0*a+t1*o+l,i2e0*s+e1*n+h,i3e0*a+e1*o+l,i4r0*s+r1*n+h,i5r0*a+r1*o+l}return i}function k(t,e,r){return this.isIdentity()?t,e,r:t*this.props0+e*this.props4+r*this.props8+this.props12,t*this.props1+e*this.props5+r*this.props9+this.props13,t*this.props2+e*this.props6+r*this.props10+this.props14}function D(t,e){if(this.isIdentity())return t+,+e;var rthis.props;return Math.round(100*(t*r0+e*r4+r12))/100+,+Math.round(100*(t*r1+e*r5+r13))/100}function M(){for(var t0,ethis.props,rmatrix3d(;t16;)r+i(1e4*et)/1e4,r+15t?):,,t+1;return r}function F(t){return t1e-6&&t>0||t>-1e-6&&t0?i(1e4*t)/1e4:t}function w(){var tthis.props;returnmatrix(+F(t0)+,+F(t1)+,+F(t4)+,+F(t5)+,+F(t12)+,+F(t13)+)}return function(){this.resets,this.rotatea,this.rotateXn,this.rotateYo,this.rotateZh,this.skewp,this.skewFromAxisf,this.shearl,this.scalem,this.setTransformc,this.translated,this.transformu,this.applyToPointP,this.applyToXE,this.applyToYx,this.applyToZS,this.applyToPointArrayk,this.applyToTriplePointsT,this.applyToPointStringifiedD,this.toCSSM,this.to2dCSSw,this.clonev,this.cloneFromPropsb,this.equalsg,this.inversePointsA,this.inversePointC,this.getInverseMatrix_,this._tthis.transform,this.isIdentityy,this._identity!0,this._identityCalculated!1,this.propscreateTypedArray(float32,16),this.reset()}}();function _typeof$3(t){return _typeof$3functiontypeof Symbol&&symboltypeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&functiontypeof Symbol&&t.constructorSymbol&&t!Symbol.prototype?symbol:typeof t},_typeof$3(t)}var lottie{},standalone__STANDALONE__,animationData__ANIMATIONDATA__,renderer;function setLocation(t){setLocationHref(t)}function searchAnimations(){!0standalone?animationManager.searchAnimations(animationData,standalone,renderer):animationManager.searchAnimations()}function setSubframeRendering(t){setSubframeEnabled(t)}function setPrefix(t){setIdPrefix(t)}function loadAnimation(t){return!0standalone&&(t.animationDataJSON.parse(animationData)),animationManager.loadAnimation(t)}function setQuality(t){if(stringtypeof t)switch(t){casehigh:setDefaultCurveSegments(200);break;default:casemedium:setDefaultCurveSegments(50);break;caselow:setDefaultCurveSegments(10)}else!isNaN(t)&&t>1&&setDefaultCurveSegments(t);getDefaultCurveSegments()>50?roundValues(!1):roundValues(!0)}function inBrowser(){returnundefined!typeof navigator}function installPlugin(t,e){expressionst&&setExpressionsPlugin(e)}function getFactory(t){switch(t){casepropertyFactory:return PropertyFactory;caseshapePropertyFactory:return ShapePropertyFactory;casematrix:return Matrix;default:return null}}function checkReady(){completedocument.readyState&&(clearInterval(readyStateCheckInterval),searchAnimations())}function getQueryVariable(t){for(var equeryString.split(&),r0;re.length;r+1){var ier.split();if(decodeURIComponent(i0)t)return decodeURIComponent(i1)}return null}lottie.playanimationManager.play,lottie.pauseanimationManager.pause,lottie.setLocationHrefsetLocation,lottie.togglePauseanimationManager.togglePause,lottie.setSpeedanimationManager.setSpeed,lottie.setDirectionanimationManager.setDirection,lottie.stopanimationManager.stop,lottie.searchAnimationssearchAnimations,lottie.registerAnimationanimationManager.registerAnimation,lottie.loadAnimationloadAnimation,lottie.setSubframeRenderingsetSubframeRendering,lottie.resizeanimationManager.resize,lottie.goToAndStopanimationManager.goToAndStop,lottie.destroyanimationManager.destroy,lottie.setQualitysetQuality,lottie.inBrowserinBrowser,lottie.installPlugininstallPlugin,lottie.freezeanimationManager.freeze,lottie.unfreezeanimationManager.unfreeze,lottie.setVolumeanimationManager.setVolume,lottie.muteanimationManager.mute,lottie.unmuteanimationManager.unmute,lottie.getRegisteredAnimationsanimationManager.getRegisteredAnimations,lottie.useWebWorkersetWebWorker,lottie.setIDPrefixsetPrefix,lottie.__getFactorygetFactory,lottie.version5.9.6;var queryString;if(standalone){var scriptsdocument.getElementsByTagName(script),indexscripts.length-1,myScriptscriptsindex||{src:};queryStringmyScript.src?myScript.src.replace(/^^\?+\??/,):,renderergetQueryVariable(renderer)}var readyStateCheckIntervalsetInterval(checkReady,100);try{object(undefinedtypeof exports?undefined:_typeof$3(exports))&&undefined!typeof module||functiontypeof define&&define.amd||(window.bodymovinlottie)}catch(t){}var ShapeModifiersfunction(){var t{},e{};return t.registerModifierfunction(t,r){et||(etr)},t.getModifierfunction(t,r,i){return new et(r,i)},t}();function ShapeModifier(){}function TrimModifier(){}function PuckerAndBloatModifier(){}ShapeModifier.prototype.initModifierPropertiesfunction(){},ShapeModifier.prototype.addShapeToModifierfunction(){},ShapeModifier.prototype.addShapefunction(t){if(!this.closed){t.sh.container.addDynamicProperty(t.sh);var e{shape:t.sh,data:t,localShapeCollection:shapeCollectionPool.newShapeCollection()};this.shapes.push(e),this.addShapeToModifier(e),this._isAnimated&&t.setAsAnimated()}},ShapeModifier.prototype.initfunction(t,e){this.shapes,this.elemt,this.initDynamicPropertyContainer(t),this.initModifierProperties(t,e),this.frameIdinitialDefaultFrame,this.closed!1,this.k!1,this.dynamicProperties.length?this.k!0:this.getValue(!0)},ShapeModifier.prototype.processKeysfunction(){this.elem.globalData.frameId!this.frameId&&(this.frameIdthis.elem.globalData.frameId,this.iterateDynamicProperties())},extendPrototype(DynamicPropertyContainer,ShapeModifier),extendPrototype(ShapeModifier,TrimModifier),TrimModifier.prototype.initModifierPropertiesfunction(t,e){this.sPropertyFactory.getProp(t,e.s,0,.01,this),this.ePropertyFactory.getProp(t,e.e,0,.01,this),this.oPropertyFactory.getProp(t,e.o,0,0,this),this.sValue0,this.eValue0,this.getValuethis.processKeys,this.me.m,this._isAnimated!!this.s.effectsSequence.length||!!this.e.effectsSequence.length||!!this.o.effectsSequence.length},TrimModifier.prototype.addShapeToModifierfunction(t){t.pathsData},TrimModifier.prototype.calculateShapeEdgesfunction(t,e,r,i,s){var a;e1?a.push({s:t,e:e}):t>1?a.push({s:t-1,e:e-1}):(a.push({s:t,e:1}),a.push({s:0,e:e-1}));var n,o,h,la.length;for(n0;nl;n+1){var p,f;if(!((oan).e*si||o.s*s>i+r))po.s*si?0:(o.s*s-i)/r,fo.e*s>i+r?1:(o.e*s-i)/r,h.push(p,f)}return h.length||h.push(0,0),h},TrimModifier.prototype.releasePathsDatafunction(t){var e,rt.length;for(e0;er;e+1)segmentsLengthPool.release(te);return t.length0,t},TrimModifier.prototype.processShapesfunction(t){var e,r,i,s;if(this._mdf||t){var athis.o.v%360/360;if(a0&&(a+1),(ethis.s.v>1?1+a:this.s.v0?0+a:this.s.v+a)>(rthis.e.v>1?1+a:this.e.v0?0+a:this.e.v+a)){var ne;er,rn}e1e-4*Math.round(1e4*e),r1e-4*Math.round(1e4*r),this.sValuee,this.eValuer}else ethis.sValue,rthis.eValue;var o,h,l,p,f,mthis.shapes.length,c0;if(re)for(s0;sm;s+1)this.shapess.localShapeCollection.releaseShapes(),this.shapess.shape._mdf!0,this.shapess.shape.pathsthis.shapess.localShapeCollection,this._mdf&&(this.shapess.pathsData.length0);else if(1r&&0e||0r&&1e){if(this._mdf)for(s0;sm;s+1)this.shapess.pathsData.length0,this.shapess.shape._mdf!0}else{var d,u,y;for(s0;sm;s+1)if((dthis.shapess).shape._mdf||this._mdf||t||2this.m){if(h(id.shape.paths)._length,f0,!d.shape._mdf&&d.pathsData.length)fd.totalShapeLength;else{for(lthis.releasePathsData(d.pathsData),o0;oh;o+1)pbez.getSegmentsLength(i.shapeso),l.push(p),f+p.totalLength;d.totalShapeLengthf,d.pathsDatal}c+f,d.shape._mdf!0}else d.shape.pathsd.localShapeCollection;var g,ve,br,P0;for(sm-1;s>0;s-1)if((dthis.shapess).shape._mdf){for((ud.localShapeCollection).releaseShapes(),2this.m&&m>1?(gthis.calculateShapeEdges(e,r,d.totalShapeLength,P,c),P+d.totalShapeLength):gv,b,hg.length,o0;oh;o+1){vgo0,bgo1,y.length0,b1?y.push({s:d.totalShapeLength*v,e:d.totalShapeLength*b}):v>1?y.push({s:d.totalShapeLength*(v-1),e:d.totalShapeLength*(b-1)}):(y.push({s:d.totalShapeLength*v,e:d.totalShapeLength}),y.push({s:0,e:d.totalShapeLength*(b-1)}));var Ethis.addShapes(d,y0);if(y0.s!y0.e){if(y.length>1)if(d.shape.paths.shapesd.shape.paths._length-1.c){var xE.pop();this.addPaths(E,u),Ethis.addShapes(d,y1,x)}else this.addPaths(E,u),Ethis.addShapes(d,y1);this.addPaths(E,u)}}d.shape.pathsu}}},TrimModifier.prototype.addPathsfunction(t,e){var r,it.length;for(r0;ri;r+1)e.addShape(tr)},TrimModifier.prototype.addSegmentfunction(t,e,r,i,s,a,n){s.setXYAt(e0,e1,o,a),s.setXYAt(r0,r1,i,a+1),n&&s.setXYAt(t0,t1,v,a),s.setXYAt(i0,i1,v,a+1)},TrimModifier.prototype.addSegmentFromArrayfunction(t,e,r,i){e.setXYAt(t1,t5,o,r),e.setXYAt(t2,t6,i,r+1),i&&e.setXYAt(t0,t4,v,r),e.setXYAt(t3,t7,v,r+1)},TrimModifier.prototype.addShapesfunction(t,e,r){var i,s,a,n,o,h,l,p,ft.pathsData,mt.shape.paths.shapes,ct.shape.paths._length,d0,u,y!0;for(r?(or._length,pr._length):(rshapePool.newElement(),o0,p0),u.push(r),i0;ic;i+1){for(hfi.lengths,r.cmi.c,ami.c?h.length:h.length+1,s1;sa;s+1)if(d+(nhs-1).addedLengthe.s)d+n.addedLength,r.c!1;else{if(d>e.e){r.c!1;break}e.sd&&e.e>d+n.addedLength?(this.addSegment(mi.vs-1,mi.os-1,mi.is,mi.vs,r,o,y),y!1):(lbez.getNewSegment(mi.vs-1,mi.vs,mi.os-1,mi.is,(e.s-d)/n.addedLength,(e.e-d)/n.addedLength,hs-1),this.addSegmentFromArray(l,r,o,y),y!1,r.c!1),d+n.addedLength,o+1}if(mi.c&&h.length){if(nhs-1,de.e){var ghs-1.addedLength;e.sd&&e.e>d+g?(this.addSegment(mi.vs-1,mi.os-1,mi.i0,mi.v0,r,o,y),y!1):(lbez.getNewSegment(mi.vs-1,mi.v0,mi.os-1,mi.i0,(e.s-d)/g,(e.e-d)/g,hs-1),this.addSegmentFromArray(l,r,o,y),y!1,r.c!1)}else r.c!1;d+n.addedLength,o+1}if(r._length&&(r.setXYAt(r.vp0,r.vp1,i,p),r.setXYAt(r.vr._length-10,r.vr._length-11,o,r._length-1)),d>e.e)break;ic-1&&(rshapePool.newElement(),y!0,u.push(r),o0)}return u},extendPrototype(ShapeModifier,PuckerAndBloatModifier),PuckerAndBloatModifier.prototype.initModifierPropertiesfunction(t,e){this.getValuethis.processKeys,this.amountPropertyFactory.getProp(t,e.a,0,null,this),this._isAnimated!!this.amount.effectsSequence.length},PuckerAndBloatModifier.prototype.processPathfunction(t,e){var re/100,i0,0,st._length,a0;for(a0;as;a+1)i0+t.va0,i1+t.va1;i0/s,i1/s;var n,o,h,l,p,f,mshapePool.newElement();for(m.ct.c,a0;as;a+1)nt.va0+(i0-t.va0)*r,ot.va1+(i1-t.va1)*r,ht.oa0+(i0-t.oa0)*-r,lt.oa1+(i1-t.oa1)*-r,pt.ia0+(i0-t.ia0)*-r,ft.ia1+(i1-t.ia1)*-r,m.setTripleAt(n,o,h,l,p,f,a);return m},PuckerAndBloatModifier.prototype.processShapesfunction(t){var e,r,i,s,a,n,othis.shapes.length,hthis.amount.v;if(0!h)for(r0;ro;r+1){if(n(athis.shapesr).localShapeCollection,a.shape._mdf||this._mdf||t)for(n.releaseShapes(),a.shape._mdf!0,ea.shape.paths.shapes,sa.shape.paths._length,i0;is;i+1)n.addShape(this.processPath(ei,h));a.shape.pathsa.localShapeCollection}this.dynamicProperties.length||(this._mdf!1)};var TransformPropertyFactoryfunction(){var t0,0;function e(t,e,r){if(this.elemt,this.frameId-1,this.propTypetransform,this.datae,this.vnew Matrix,this.prenew Matrix,this.appliedTransformations0,this.initDynamicPropertyContainer(r||t),e.p&&e.p.s?(this.pxPropertyFactory.getProp(t,e.p.x,0,0,this),this.pyPropertyFactory.getProp(t,e.p.y,0,0,this),e.p.z&&(this.pzPropertyFactory.getProp(t,e.p.z,0,0,this))):this.pPropertyFactory.getProp(t,e.p||{k:0,0,0},1,0,this),e.rx){if(this.rxPropertyFactory.getProp(t,e.rx,0,degToRads,this),this.ryPropertyFactory.getProp(t,e.ry,0,degToRads,this),this.rzPropertyFactory.getProp(t,e.rz,0,degToRads,this),e.or.k0.ti){var i,se.or.k.length;for(i0;is;i+1)e.or.ki.tonull,e.or.ki.tinull}this.orPropertyFactory.getProp(t,e.or,1,degToRads,this),this.or.sh!0}else this.rPropertyFactory.getProp(t,e.r||{k:0},0,degToRads,this);e.sk&&(this.skPropertyFactory.getProp(t,e.sk,0,degToRads,this),this.saPropertyFactory.getProp(t,e.sa,0,degToRads,this)),this.aPropertyFactory.getProp(t,e.a||{k:0,0,0},1,0,this),this.sPropertyFactory.getProp(t,e.s||{k:100,100,100},1,.01,this),e.o?this.oPropertyFactory.getProp(t,e.o,0,.01,t):this.o{_mdf:!1,v:1},this._isDirty!0,this.dynamicProperties.length||this.getValue(!0)}return e.prototype{applyToMatrix:function(t){var ethis._mdf;this.iterateDynamicProperties(),this._mdfthis._mdf||e,this.a&&t.translate(-this.a.v0,-this.a.v1,this.a.v2),this.s&&t.scale(this.s.v0,this.s.v1,this.s.v2),this.sk&&t.skewFromAxis(-this.sk.v,this.sa.v),this.r?t.rotate(-this.r.v):t.rotateZ(-this.rz.v).rotateY(this.ry.v).rotateX(this.rx.v).rotateZ(-this.or.v2).rotateY(this.or.v1).rotateX(this.or.v0),this.data.p.s?this.data.p.z?t.translate(this.px.v,this.py.v,-this.pz.v):t.translate(this.px.v,this.py.v,0):t.translate(this.p.v0,this.p.v1,-this.p.v2)},getValue:function(e){if(this.elem.globalData.frameId!this.frameId){if(this._isDirty&&(this.precalculateMatrix(),this._isDirty!1),this.iterateDynamicProperties(),this._mdf||e){var r;if(this.v.cloneFromProps(this.pre.props),this.appliedTransformations1&&this.v.translate(-this.a.v0,-this.a.v1,this.a.v2),this.appliedTransformations2&&this.v.scale(this.s.v0,this.s.v1,this.s.v2),this.sk&&this.appliedTransformations3&&this.v.skewFromAxis(-this.sk.v,this.sa.v),this.r&&this.appliedTransformations4?this.v.rotate(-this.r.v):!this.r&&this.appliedTransformations4&&this.v.rotateZ(-this.rz.v).rotateY(this.ry.v).rotateX(this.rx.v).rotateZ(-this.or.v2).rotateY(this.or.v1).rotateX(this.or.v0),this.autoOriented){var i,s;if(rthis.elem.globalData.frameRate,this.p&&this.p.keyframes&&this.p.getValueAtTime)this.p._caching.lastFrame+this.p.offsetTimethis.p.keyframes0.t?(ithis.p.getValueAtTime((this.p.keyframes0.t+.01)/r,0),sthis.p.getValueAtTime(this.p.keyframes0.t/r,0)):this.p._caching.lastFrame+this.p.offsetTime>this.p.keyframesthis.p.keyframes.length-1.t?(ithis.p.getValueAtTime(this.p.keyframesthis.p.keyframes.length-1.t/r,0),sthis.p.getValueAtTime((this.p.keyframesthis.p.keyframes.length-1.t-.05)/r,0)):(ithis.p.pv,sthis.p.getValueAtTime((this.p._caching.lastFrame+this.p.offsetTime-.01)/r,this.p.offsetTime));else if(this.px&&this.px.keyframes&&this.py.keyframes&&this.px.getValueAtTime&&this.py.getValueAtTime){i,s;var athis.px,nthis.py;a._caching.lastFrame+a.offsetTimea.keyframes0.t?(i0a.getValueAtTime((a.keyframes0.t+.01)/r,0),i1n.getValueAtTime((n.keyframes0.t+.01)/r,0),s0a.getValueAtTime(a.keyframes0.t/r,0),s1n.getValueAtTime(n.keyframes0.t/r,0)):a._caching.lastFrame+a.offsetTime>a.keyframesa.keyframes.length-1.t?(i0a.getValueAtTime(a.keyframesa.keyframes.length-1.t/r,0),i1n.getValueAtTime(n.keyframesn.keyframes.length-1.t/r,0),s0a.getValueAtTime((a.keyframesa.keyframes.length-1.t-.01)/r,0),s1n.getValueAtTime((n.keyframesn.keyframes.length-1.t-.01)/r,0)):(ia.pv,n.pv,s0a.getValueAtTime((a._caching.lastFrame+a.offsetTime-.01)/r,a.offsetTime),s1n.getValueAtTime((n._caching.lastFrame+n.offsetTime-.01)/r,n.offsetTime))}else ist;this.v.rotate(-Math.atan2(i1-s1,i0-s0))}this.data.p&&this.data.p.s?this.data.p.z?this.v.translate(this.px.v,this.py.v,-this.pz.v):this.v.translate(this.px.v,this.py.v,0):this.v.translate(this.p.v0,this.p.v1,-this.p.v2)}this.frameIdthis.elem.globalData.frameId}},precalculateMatrix:function(){if(!this.a.k&&(this.pre.translate(-this.a.v0,-this.a.v1,this.a.v2),this.appliedTransformations1,!this.s.effectsSequence.length)){if(this.pre.scale(this.s.v0,this.s.v1,this.s.v2),this.appliedTransformations2,this.sk){if(this.sk.effectsSequence.length||this.sa.effectsSequence.length)return;this.pre.skewFromAxis(-this.sk.v,this.sa.v),this.appliedTransformations3}this.r?this.r.effectsSequence.length||(this.pre.rotate(-this.r.v),this.appliedTransformations4):this.rz.effectsSequence.length||this.ry.effectsSequence.length||this.rx.effectsSequence.length||this.or.effectsSequence.length||(this.pre.rotateZ(-this.rz.v).rotateY(this.ry.v).rotateX(this.rx.v).rotateZ(-this.or.v2).rotateY(this.or.v1).rotateX(this.or.v0),this.appliedTransformations4)}},autoOrient:function(){}},extendPrototype(DynamicPropertyContainer,e),e.prototype.addDynamicPropertyfunction(t){this._addDynamicProperty(t),this.elem.addDynamicProperty(t),this._isDirty!0},e.prototype._addDynamicPropertyDynamicPropertyContainer.prototype.addDynamicProperty,{getTransformProperty:function(t,r,i){return new e(t,r,i)}}}();function RepeaterModifier(){}function RoundCornersModifier(){}function getFontProperties(t){for(var et.fStyle?t.fStyle.split( ):,rnormal,inormal,se.length,a0;as;a+1)switch(ea.toLowerCase()){caseitalic:iitalic;break;casebold:r700;break;caseblack:r900;break;casemedium:r500;break;caseregular:casenormal:r400;break;caselight:casethin:r200}return{style:i,weight:t.fWeight||r}}extendPrototype(ShapeModifier,RepeaterModifier),RepeaterModifier.prototype.initModifierPropertiesfunction(t,e){this.getValuethis.processKeys,this.cPropertyFactory.getProp(t,e.c,0,null,this),this.oPropertyFactory.getProp(t,e.o,0,null,this),this.trTransformPropertyFactory.getTransformProperty(t,e.tr,this),this.soPropertyFactory.getProp(t,e.tr.so,0,.01,this),this.eoPropertyFactory.getProp(t,e.tr.eo,0,.01,this),this.datae,this.dynamicProperties.length||this.getValue(!0),this._isAnimated!!this.dynamicProperties.length,this.pMatrixnew Matrix,this.rMatrixnew Matrix,this.sMatrixnew Matrix,this.tMatrixnew Matrix,this.matrixnew Matrix},RepeaterModifier.prototype.applyTransformsfunction(t,e,r,i,s,a){var na?-1:1,oi.s.v0+(1-i.s.v0)*(1-s),hi.s.v1+(1-i.s.v1)*(1-s);t.translate(i.p.v0*n*s,i.p.v1*n*s,i.p.v2),e.translate(-i.a.v0,-i.a.v1,i.a.v2),e.rotate(-i.r.v*n*s),e.translate(i.a.v0,i.a.v1,i.a.v2),r.translate(-i.a.v0,-i.a.v1,i.a.v2),r.scale(a?1/o:o,a?1/h:h),r.translate(i.a.v0,i.a.v1,i.a.v2)},RepeaterModifier.prototype.initfunction(t,e,r,i){for(this.elemt,this.arre,this.posr,this.elemsDatai,this._currentCopies0,this._elements,this._groups,this.frameId-1,this.initDynamicPropertyContainer(t),this.initModifierProperties(t,er);r>0;)r-1,this._elements.unshift(er);this.dynamicProperties.length?this.k!0:this.getValue(!0)},RepeaterModifier.prototype.resetElementsfunction(t){var e,rt.length;for(e0;er;e+1)te._processed!1,grte.ty&&this.resetElements(te.it)},RepeaterModifier.prototype.cloneElementsfunction(t){var eJSON.parse(JSON.stringify(t));return this.resetElements(e),e},RepeaterModifier.prototype.changeGroupRenderfunction(t,e){var r,it.length;for(r0;ri;r+1)tr._rendere,grtr.ty&&this.changeGroupRender(tr.it,e)},RepeaterModifier.prototype.processShapesfunction(t){var e,r,i,s,a,n!1;if(this._mdf||t){var o,hMath.ceil(this.c.v);if(this._groups.lengthh){for(;this._groups.lengthh;){var l{it:this.cloneElements(this._elements),ty:gr};l.it.push({a:{a:0,ix:1,k:0,0},nm:Transform,o:{a:0,ix:7,k:100},p:{a:0,ix:2,k:0,0},r:{a:1,ix:6,k:{s:0,e:0,t:0},{s:0,e:0,t:1}},s:{a:0,ix:3,k:100,100},sa:{a:0,ix:5,k:0},sk:{a:0,ix:4,k:0},ty:tr}),this.arr.splice(0,0,l),this._groups.splice(0,0,l),this._currentCopies+1}this.elem.reloadShapes(),n!0}for(a0,i0;ithis._groups.length-1;i+1){if(oah,this._groupsi._rendero,this.changeGroupRender(this._groupsi.it,o),!o){var pthis.elemsDatai.it,fpp.length-1;0!f.transform.op.v?(f.transform.op._mdf!0,f.transform.op.v0):f.transform.op._mdf!1}a+1}this._currentCopiesh;var mthis.o.v,cm%1,dm>0?Math.floor(m):Math.ceil(m),uthis.pMatrix.props,ythis.rMatrix.props,gthis.sMatrix.props;this.pMatrix.reset(),this.rMatrix.reset(),this.sMatrix.reset(),this.tMatrix.reset(),this.matrix.reset();var v,b,P0;if(m>0){for(;Pd;)this.applyTransforms(this.pMatrix,this.rMatrix,this.sMatrix,this.tr,1,!1),P+1;c&&(this.applyTransforms(this.pMatrix,this.rMatrix,this.sMatrix,this.tr,c,!1),P+c)}else if(m0){for(;P>d;)this.applyTransforms(this.pMatrix,this.rMatrix,this.sMatrix,this.tr,1,!0),P-1;c&&(this.applyTransforms(this.pMatrix,this.rMatrix,this.sMatrix,this.tr,-c,!0),P-c)}for(i1this.data.m?0:this._currentCopies-1,s1this.data.m?1:-1,athis._currentCopies;a;){if(b(r(ethis.elemsDatai.it)e.length-1.transform.mProps.v.props).length,ee.length-1.transform.mProps._mdf!0,ee.length-1.transform.op._mdf!0,ee.length-1.transform.op.v1this._currentCopies?this.so.v:this.so.v+(this.eo.v-this.so.v)*(i/(this._currentCopies-1)),0!P){for((0!i&&1s||i!this._currentCopies-1&&-1s)&&this.applyTransforms(this.pMatrix,this.rMatrix,this.sMatrix,this.tr,1,!1),this.matrix.transform(y0,y1,y2,y3,y4,y5,y6,y7,y8,y9,y10,y11,y12,y13,y14,y15),this.matrix.transform(g0,g1,g2,g3,g4,g5,g6,g7,g8,g9,g10,g11,g12,g13,g14,g15),this.matrix.transform(u0,u1,u2,u3,u4,u5,u6,u7,u8,u9,u10,u11,u12,u13,u14,u15),v0;vb;v+1)rvthis.matrix.propsv;this.matrix.reset()}else for(this.matrix.reset(),v0;vb;v+1)rvthis.matrix.propsv;P+1,a-1,i+s}}else for(athis._currentCopies,i0,s1;a;)r(ethis.elemsDatai.it)e.length-1.transform.mProps.v.props,ee.length-1.transform.mProps._mdf!1,ee.length-1.transform.op._mdf!1,a-1,i+s;return n},RepeaterModifier.prototype.addShapefunction(){},extendPrototype(ShapeModifier,RoundCornersModifier),RoundCornersModifier.prototype.initModifierPropertiesfunction(t,e){this.getValuethis.processKeys,this.rdPropertyFactory.getProp(t,e.r,0,null,this),this._isAnimated!!this.rd.effectsSequence.length},RoundCornersModifier.prototype.processPathfunction(t,e){var r,ishapePool.newElement();i.ct.c;var s,a,n,o,h,l,p,f,m,c,d,u,yt._length,g0;for(r0;ry;r+1)st.vr,nt.or,at.ir,s0n0&&s1n1&&s0a0&&s1a1?0!r&&r!y-1||t.c?(o0r?t.vy-1:t.vr-1,l(hMath.sqrt(Math.pow(s0-o0,2)+Math.pow(s1-o1,2)))?Math.min(h/2,e)/h:0,pds0+(o0-s0)*l,fus1-(s1-o1)*l,mp-(p-s0)*roundCorner,cf-(f-s1)*roundCorner,i.setTripleAt(p,f,m,c,d,u,g),g+1,ory-1?t.v0:t.vr+1,l(hMath.sqrt(Math.pow(s0-o0,2)+Math.pow(s1-o1,2)))?Math.min(h/2,e)/h:0,pms0+(o0-s0)*l,fcs1+(o1-s1)*l,dp-(p-s0)*roundCorner,uf-(f-s1)*roundCorner,i.setTripleAt(p,f,m,c,d,u,g),g+1):(i.setTripleAt(s0,s1,n0,n1,a0,a1,g),g+1):(i.setTripleAt(t.vr0,t.vr1,t.or0,t.or1,t.ir0,t.ir1,g),g+1);return i},RoundCornersModifier.prototype.processShapesfunction(t){var e,r,i,s,a,n,othis.shapes.length,hthis.rd.v;if(0!h)for(r0;ro;r+1){if(n(athis.shapesr).localShapeCollection,a.shape._mdf||this._mdf||t)for(n.releaseShapes(),a.shape._mdf!0,ea.shape.paths.shapes,sa.shape.paths._length,i0;is;i+1)n.addShape(this.processPath(ei,h));a.shape.pathsa.localShapeCollection}this.dynamicProperties.length||(this._mdf!1)};var FontManagerfunction(){var t{w:0,size:0,shapes:,data:{shapes:}},e;ee.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);var rd83cdffb,d83cdffc,d83cdffd,d83cdffe,d83cdfff,i65039,8205;function s(t,e){var rcreateTag(span);r.setAttribute(aria-hidden,!0),r.style.fontFamilye;var icreateTag(span);i.innerTextgiItT1WQy@!-/#,r.style.positionabsolute,r.style.left-10000px,r.style.top-10000px,r.style.fontSize300px,r.style.fontVariantnormal,r.style.fontStylenormal,r.style.fontWeightnormal,r.style.letterSpacing0,r.appendChild(i),document.body.appendChild(r);var si.offsetWidth;return i.style.fontFamilyfunction(t){var e,rt.split(,),ir.length,s;for(e0;ei;e+1)sans-serif!re&&monospace!re&&s.push(re);return s.join(,)}(t)+, +e,{node:i,w:s,parent:r}}function a(t,e){var r,idocument.body&&e?svg:canvas,sgetFontProperties(t);if(svgi){var acreateNS(text);a.style.fontSize100px,a.setAttribute(font-family,t.fFamily),a.setAttribute(font-style,s.style),a.setAttribute(font-weight,s.weight),a.textContent1,t.fClass?(a.style.fontFamilyinherit,a.setAttribute(class,t.fClass)):a.style.fontFamilyt.fFamily,e.appendChild(a),ra}else{var nnew OffscreenCanvas(500,500).getContext(2d);n.fonts.style+ +s.weight+ 100px +t.fFamily,rn}return{measureText:function(t){returnsvgi?(r.textContentt,r.getComputedTextLength()):r.measureText(t).width}}}var nfunction(){this.fonts,this.charsnull,this.typekitLoaded0,this.isLoaded!1,this._warned!1,this.initTimeDate.now(),this.setIsLoadedBindedthis.setIsLoaded.bind(this),this.checkLoadedFontsBindedthis.checkLoadedFonts.bind(this)};n.isModifierfunction(t,e){var it.toString(16)+e.toString(16);return-1!r.indexOf(i)},n.isZeroWidthJoinerfunction(t,e){return e?ti0&&ei1:ti1},n.isCombinedCharacterfunction(t){return-1!e.indexOf(t)};var o{addChars:function(t){if(t){var e;this.chars||(this.chars);var r,i,st.length,athis.chars.length;for(e0;es;e+1){for(r0,i!1;ra;)this.charsr.stylete.style&&this.charsr.fFamilyte.fFamily&&this.charsr.chte.ch&&(i!0),r+1;i||(this.chars.push(te),a+1)}}},addFonts:function(t,e){if(t){if(this.chars)return this.isLoaded!0,void(this.fontst.list);if(!document.body)return this.isLoaded!0,t.list.forEach((function(t){t.helpera(t),t.cache{}})),void(this.fontst.list);var r,it.list,ni.length,on;for(r0;rn;r+1){var h,l,p!0;if(ir.loaded!1,ir.monoCases(ir.fFamily,monospace),ir.sansCases(ir.fFamily,sans-serif),ir.fPath){if(pir.fOrigin||3ir.origin){if((hdocument.querySelectorAll(stylef-foriginpf-family+ir.fFamily+, stylef-origin3f-family+ir.fFamily+)).length>0&&(p!1),p){var fcreateTag(style);f.setAttribute(f-forigin,ir.fOrigin),f.setAttribute(f-origin,ir.origin),f.setAttribute(f-family,ir.fFamily),f.typetext/css,f.innerText@font-face {font-family: +ir.fFamily+; font-style: normal; src: url(+ir.fPath+);},e.appendChild(f)}}else if(gir.fOrigin||1ir.origin){for(hdocument.querySelectorAll(linkf-foriging, linkf-origin1),l0;lh.length;l+1)-1!hl.href.indexOf(ir.fPath)&&(p!1);if(p){var mcreateTag(link);m.setAttribute(f-forigin,ir.fOrigin),m.setAttribute(f-origin,ir.origin),m.typetext/css,m.relstylesheet,m.hrefir.fPath,document.body.appendChild(m)}}else if(tir.fOrigin||2ir.origin){for(hdocument.querySelectorAll(scriptf-forigint, scriptf-origin2),l0;lh.length;l+1)ir.fPathhl.src&&(p!1);if(p){var ccreateTag(link);c.setAttribute(f-forigin,ir.fOrigin),c.setAttribute(f-origin,ir.origin),c.setAttribute(rel,stylesheet),c.setAttribute(href,ir.fPath),e.appendChild(c)}}}else ir.loaded!0,o-1;ir.helpera(ir,e),ir.cache{},this.fonts.push(ir)}0o?this.isLoaded!0:setTimeout(this.checkLoadedFonts.bind(this),100)}else this.isLoaded!0},getCharData:function(e,r,i){for(var s0,athis.chars.length;sa;){if(this.charss.che&&this.charss.styler&&this.charss.fFamilyi)return this.charss;s+1}return(stringtypeof e&&13!e.charCodeAt(0)||!e)&&console&&console.warn&&!this._warned&&(this._warned!0,console.warn(Missing character from exported characters list: ,e,r,i)),t},getFontByName:function(t){for(var e0,rthis.fonts.length;er;){if(this.fontse.fNamet)return this.fontse;e+1}return this.fonts0},measureText:function(t,e,r){var ithis.getFontByName(e),st.charCodeAt(0);if(!i.caches+1){var ai.helper;if( t){var na.measureText(|+t+|),oa.measureText(||);i.caches+1(n-o)/100}else i.caches+1a.measureText(t)/100}return i.caches+1*r},checkLoadedFonts:function(){var t,e,r,ithis.fonts.length,si;for(t0;ti;t+1)this.fontst.loaded?s-1:nthis.fontst.fOrigin||0this.fontst.origin?this.fontst.loaded!0:(ethis.fontst.monoCase.node,rthis.fontst.monoCase.w,e.offsetWidth!r?(s-1,this.fontst.loaded!0):(ethis.fontst.sansCase.node,rthis.fontst.sansCase.w,e.offsetWidth!r&&(s-1,this.fontst.loaded!0)),this.fontst.loaded&&(this.fontst.sansCase.parent.parentNode.removeChild(this.fontst.sansCase.parent),this.fontst.monoCase.parent.parentNode.removeChild(this.fontst.monoCase.parent)));0!s&&Date.now()-this.initTime5e3?setTimeout(this.checkLoadedFontsBinded,20):setTimeout(this.setIsLoadedBinded,10)},setIsLoaded:function(){this.isLoaded!0}};return n.prototypeo,n}();function RenderableElement(){}RenderableElement.prototype{initRenderable:function(){this.isInRange!1,this.hidden!1,this.isTransparent!1,this.renderableComponents},addRenderableComponent:function(t){-1this.renderableComponents.indexOf(t)&&this.renderableComponents.push(t)},removeRenderableComponent:function(t){-1!this.renderableComponents.indexOf(t)&&this.renderableComponents.splice(this.renderableComponents.indexOf(t),1)},prepareRenderableFrame:function(t){this.checkLayerLimits(t)},checkTransparency:function(){this.finalTransform.mProp.o.v0?!this.isTransparent&&this.globalData.renderConfig.hideOnTransparent&&(this.isTransparent!0,this.hide()):this.isTransparent&&(this.isTransparent!1,this.show())},checkLayerLimits:function(t){this.data.ip-this.data.stt&&this.data.op-this.data.st>t?!0!this.isInRange&&(this.globalData._mdf!0,this._mdf!0,this.isInRange!0,this.show()):!1!this.isInRange&&(this.globalData._mdf!0,this.isInRange!1,this.hide())},renderRenderable:function(){var t,ethis.renderableComponents.length;for(t0;te;t+1)this.renderableComponentst.renderFrame(this._isFirstFrame)},sourceRectAtTime:function(){return{top:0,left:0,width:100,height:100}},getLayerSize:function(){return 5this.data.ty?{w:this.data.textData.width,h:this.data.textData.height}:{w:this.data.width,h:this.data.height}}};var MaskManagerInterfacefunction(){function t(t,e){this._maskt,this._datae}Object.defineProperty(t.prototype,maskPath,{get:function(){return this._mask.prop.k&&this._mask.prop.getValue(),this._mask.prop}}),Object.defineProperty(t.prototype,maskOpacity,{get:function(){return this._mask.op.k&&this._mask.op.getValue(),100*this._mask.op.v}});return function(e){var r,icreateSizedArray(e.viewData.length),se.viewData.length;for(r0;rs;r+1)irnew t(e.viewDatar,e.masksPropertiesr);return function(t){for(r0;rs;){if(e.masksPropertiesr.nmt)return ir;r+1}return null}}}(),ExpressionPropertyInterfacefunction(){var t{pv:0,v:0,mult:1},e{pv:0,0,0,v:0,0,0,mult:1};function r(t,e,r){Object.defineProperty(t,velocity,{get:function(){return e.getVelocityAtTime(e.comp.currentFrame)}}),t.numKeyse.keyframes?e.keyframes.length:0,t.keyfunction(i){if(!t.numKeys)return 0;var s;ssin e.keyframesi-1?e.keyframesi-1.s:ein e.keyframesi-2?e.keyframesi-2.e:e.keyframesi-2.s;var aunidimensionalr?new Number(s):Object.assign({},s);return a.timee.keyframesi-1.t/e.elem.comp.globalData.frameRate,a.valueunidimensionalr?s0:s,a},t.valueAtTimee.getValueAtTime,t.speedAtTimee.getSpeedAtTime,t.velocityAtTimee.getVelocityAtTime,t.propertyGroupe.propertyGroup}function i(){return t}return function(s){return s?unidimensionals.propType?function(e){e&&pvin e||(et);var i1/e.mult,se.pv*i,anew Number(s);return a.values,r(a,e,unidimensional),function(){return e.k&&e.getValue(),se.v*i,a.value!s&&((anew Number(s)).values,r(a,e,unidimensional)),a}}(s):function(t){t&&pvin t||(te);var i1/t.mult,st.data&&t.data.l||t.pv.length,acreateTypedArray(float32,s),ncreateTypedArray(float32,s);return a.valuen,r(a,t,multidimensional),function(){t.k&&t.getValue();for(var e0;es;e+1)net.ve*i,aene;return a}}(s):i}}(),TransformExpressionInterfacefunction(t){function e(t){switch(t){casescale:caseScale:caseADBE Scale:case 6:return e.scale;caserotation:caseRotation:caseADBE Rotation:caseADBE Rotate Z:case 10:return e.rotation;caseADBE Rotate X:return e.xRotation;caseADBE Rotate Y:return e.yRotation;caseposition:casePosition:caseADBE Position:case 2:return e.position;caseADBE Position_0:return e.xPosition;caseADBE Position_1:return e.yPosition;caseADBE Position_2:return e.zPosition;caseanchorPoint:caseAnchorPoint:caseAnchor Point:caseADBE AnchorPoint:case 1:return e.anchorPoint;caseopacity:caseOpacity:case 11:return e.opacity;default:return null}}var r,i,s,a;return Object.defineProperty(e,rotation,{get:ExpressionPropertyInterface(t.r||t.rz)}),Object.defineProperty(e,zRotation,{get:ExpressionPropertyInterface(t.rz||t.r)}),Object.defineProperty(e,xRotation,{get:ExpressionPropertyInterface(t.rx)}),Object.defineProperty(e,yRotation,{get:ExpressionPropertyInterface(t.ry)}),Object.defineProperty(e,scale,{get:ExpressionPropertyInterface(t.s)}),t.p?aExpressionPropertyInterface(t.p):(rExpressionPropertyInterface(t.px),iExpressionPropertyInterface(t.py),t.pz&&(sExpressionPropertyInterface(t.pz))),Object.defineProperty(e,position,{get:function(){return t.p?a():r(),i(),s?s():0}}),Object.defineProperty(e,xPosition,{get:ExpressionPropertyInterface(t.px)}),Object.defineProperty(e,yPosition,{get:ExpressionPropertyInterface(t.py)}),Object.defineProperty(e,zPosition,{get:ExpressionPropertyInterface(t.pz)}),Object.defineProperty(e,anchorPoint,{get:ExpressionPropertyInterface(t.a)}),Object.defineProperty(e,opacity,{get:ExpressionPropertyInterface(t.o)}),Object.defineProperty(e,skew,{get:ExpressionPropertyInterface(t.sk)}),Object.defineProperty(e,skewAxis,{get:ExpressionPropertyInterface(t.sa)}),Object.defineProperty(e,orientation,{get:ExpressionPropertyInterface(t.or)}),e},LayerExpressionInterfacefunction(){function t(t){var enew Matrix;void 0!t?this._elem.finalTransform.mProp.getValueAtTime(t).clone(e):this._elem.finalTransform.mProp.applyToMatrix(e);return e}function e(t,e){var rthis.getMatrix(e);return r.props120,r.props130,r.props140,this.applyPoint(r,t)}function r(t,e){var rthis.getMatrix(e);return this.applyPoint(r,t)}function i(t,e){var rthis.getMatrix(e);return r.props120,r.props130,r.props140,this.invertPoint(r,t)}function s(t,e){var rthis.getMatrix(e);return this.invertPoint(r,t)}function a(t,e){if(this._elem.hierarchy&&this._elem.hierarchy.length){var r,ithis._elem.hierarchy.length;for(r0;ri;r+1)this._elem.hierarchyr.finalTransform.mProp.applyToMatrix(t)}return t.applyToPointArray(e0,e1,e2||0)}function n(t,e){if(this._elem.hierarchy&&this._elem.hierarchy.length){var r,ithis._elem.hierarchy.length;for(r0;ri;r+1)this._elem.hierarchyr.finalTransform.mProp.applyToMatrix(t)}return t.inversePoint(e)}function o(t){var enew Matrix;if(e.reset(),this._elem.finalTransform.mProp.applyToMatrix(e),this._elem.hierarchy&&this._elem.hierarchy.length){var r,ithis._elem.hierarchy.length;for(r0;ri;r+1)this._elem.hierarchyr.finalTransform.mProp.applyToMatrix(e);return e.inversePoint(t)}return e.inversePoint(t)}function h(){return1,1,1,1}return function(l){var p;function f(t){switch(t){caseADBE Root Vectors Group:caseContents:case 2:return f.shapeInterface;case 1:case 6:caseTransform:casetransform:caseADBE Transform Group:return p;case 4:caseADBE Effect Parade:caseeffects:caseEffects:return f.effect;caseADBE Text Properties:return f.textInterface;default:return null}}f.getMatrixt,f.invertPointn,f.applyPointa,f.toWorldr,f.toWorldVece,f.fromWorlds,f.fromWorldVeci,f.toCompr,f.fromCompo,f.sampleImageh,f.sourceRectAtTimel.sourceRectAtTime.bind(l),f._eleml;var mgetDescriptor(pTransformExpressionInterface(l.finalTransform.mProp),anchorPoint);return Object.defineProperties(f,{hasParent:{get:function(){return l.hierarchy.length}},parent:{get:function(){return l.hierarchy0.layerInterface}},rotation:getDescriptor(p,rotation),scale:getDescriptor(p,scale),position:getDescriptor(p,position),opacity:getDescriptor(p,opacity),anchorPoint:m,anchor_point:m,transform:{get:function(){return p}},active:{get:function(){return l.isInRange}}}),f.startTimel.data.st,f.indexl.data.ind,f.sourcel.data.refId,f.height0l.data.ty?l.data.h:100,f.width0l.data.ty?l.data.w:100,f.inPointl.data.ip/l.comp.globalData.frameRate,f.outPointl.data.op/l.comp.globalData.frameRate,f._namel.data.nm,f.registerMaskInterfacefunction(t){f.masknew MaskManagerInterface(t,l)},f.registerEffectsInterfacefunction(t){f.effectt},f}}(),propertyGroupFactoryfunction(t,e){return function(r){return(rvoid 0r?1:r)0?t:e(r-1)}},PropertyInterfacefunction(t,e){var r{_name:t};return function(t){return(tvoid 0t?1:t)0?r:e(t-1)}},EffectsExpressionInterfacefunction(){function t(r,i,s,a){function n(t){for(var er.ef,i0,se.length;is;){if(tei.nm||tei.mn||tei.ix)return 5ei.ty?li:li();i+1}throw new Error}var o,hpropertyGroupFactory(n,s),l,pr.ef.length;for(o0;op;o+1)5r.efo.ty?l.push(t(r.efo,i.effectElementso,i.effectElementso.propertyGroup,a)):l.push(e(i.effectElementso,r.efo.ty,a,h));returnADBE Color Controlr.mn&&Object.defineProperty(n,color,{get:function(){return l0()}}),Object.defineProperties(n,{numProperties:{get:function(){return r.np}},_name:{value:r.nm},propertyGroup:{value:h}}),n.enabled0!r.en,n.activen.enabled,n}function e(t,e,r,i){var sExpressionPropertyInterface(t.p);return t.p.setGroupProperty&&t.p.setGroupProperty(PropertyInterface(,i)),function(){return 10e?r.comp.compInterface(t.p.v):s()}}return{createEffectsInterface:function(e,r){if(e.effectsManager){var i,s,ae.data.ef,ne.effectsManager.effectElements.length;for(i0;in;i+1)s.push(t(ai,e.effectsManager.effectElementsi,r,e));var oe.data.ef||,hfunction(t){for(i0,no.length;in;){if(toi.nm||toi.mn||toi.ix)return si;i+1}return null};return Object.defineProperty(h,numProperties,{get:function(){return o.length}}),h}return null}}}(),CompExpressionInterfacefunction(t){function e(e){for(var r0,it.layers.length;ri;){if(t.layersr.nme||t.layersr.inde)return t.elementsr.layerInterface;r+1}return null}return Object.defineProperty(e,_name,{value:t.data.nm}),e.layere,e.pixelAspect1,e.heightt.data.h||t.globalData.compSize.h,e.widtht.data.w||t.globalData.compSize.w,e.pixelAspect1,e.frameDuration1/t.globalData.frameRate,e.displayStartTime0,e.numLayerst.layers.length,e},ShapePathInterfacefunction(t,e,r){var ie.sh;function s(t){returnShapet||shapet||Patht||patht||ADBE Vector Shapet||2t?s.path:null}var apropertyGroupFactory(s,r);return i.setGroupProperty(PropertyInterface(Path,a)),Object.defineProperties(s,{path:{get:function(){return i.k&&i.getValue(),i}},shape:{get:function(){return i.k&&i.getValue(),i}},_name:{value:t.nm},ix:{value:t.ix},propertyIndex:{value:t.ix},mn:{value:t.mn},propertyGroup:{value:r}}),s},ShapeExpressionInterfacefunction(){function t(t,o,c){var d,u,yt?t.length:0;for(d0;dy;d+1)grtd.ty?u.push(e(td,od,c)):fltd.ty?u.push(r(td,od,c)):sttd.ty?u.push(a(td,od,c)):tmtd.ty?u.push(n(td,od,c)):trtd.ty||(eltd.ty?u.push(h(td,od,c)):srtd.ty?u.push(l(td,od,c)):shtd.ty?u.push(ShapePathInterface(td,od,c)):rctd.ty?u.push(p(td,od,c)):rdtd.ty?u.push(f(td,od,c)):rptd.ty?u.push(m(td,od,c)):gftd.ty?u.push(i(td,od,c)):u.push(s(td,od)));return u}function e(e,r,i){var sfunction(t){switch(t){caseADBE Vectors Group:caseContents:case 2:return s.content;default:return s.transform}};s.propertyGrouppropertyGroupFactory(s,i);var afunction(e,r,i){var s,afunction(t){for(var e0,rs.length;er;){if(se._namet||se.mnt||se.propertyIndext||se.ixt||se.indt)return se;e+1}returnnumbertypeof t?st-1:null};a.propertyGrouppropertyGroupFactory(a,i),st(e.it,r.it,a.propertyGroup),a.numPropertiess.length;var no(e.ite.it.length-1,r.itr.it.length-1,a.propertyGroup);return a.transformn,a.propertyIndexe.cix,a._namee.nm,a}(e,r,s.propertyGroup),no(e.ite.it.length-1,r.itr.it.length-1,s.propertyGroup);return s.contenta,s.transformn,Object.defineProperty(s,_name,{get:function(){return e.nm}}),s.numPropertiese.np,s.propertyIndexe.ix,s.nme.nm,s.mne.mn,s}function r(t,e,r){function i(t){returnColort||colort?i.color:Opacityt||opacityt?i.opacity:null}return Object.defineProperties(i,{color:{get:ExpressionPropertyInterface(e.c)},opacity:{get:ExpressionPropertyInterface(e.o)},_name:{value:t.nm},mn:{value:t.mn}}),e.c.setGroupProperty(PropertyInterface(Color,r)),e.o.setGroupProperty(PropertyInterface(Opacity,r)),i}function i(t,e,r){function i(t){returnStart Pointt||start pointt?i.startPoint:End Pointt||end pointt?i.endPoint:Opacityt||opacityt?i.opacity:null}return Object.defineProperties(i,{startPoint:{get:ExpressionPropertyInterface(e.s)},endPoint:{get:ExpressionPropertyInterface(e.e)},opacity:{get:ExpressionPropertyInterface(e.o)},type:{get:function(){returna}},_name:{value:t.nm},mn:{value:t.mn}}),e.s.setGroupProperty(PropertyInterface(Start Point,r)),e.e.setGroupProperty(PropertyInterface(End Point,r)),e.o.setGroupProperty(PropertyInterface(Opacity,r)),i}function s(){return function(){return null}}function a(t,e,r){var i,spropertyGroupFactory(l,r),apropertyGroupFactory(h,s);function n(r){Object.defineProperty(h,t.dr.nm,{get:ExpressionPropertyInterface(e.d.dataPropsr.p)})}var ot.d?t.d.length:0,h{};for(i0;io;i+1)n(i),e.d.dataPropsi.p.setGroupProperty(a);function l(t){returnColort||colort?l.color:Opacityt||opacityt?l.opacity:Stroke Widtht||stroke widtht?l.strokeWidth:null}return Object.defineProperties(l,{color:{get:ExpressionPropertyInterface(e.c)},opacity:{get:ExpressionPropertyInterface(e.o)},strokeWidth:{get:ExpressionPropertyInterface(e.w)},dash:{get:function(){return h}},_name:{value:t.nm},mn:{value:t.mn}}),e.c.setGroupProperty(PropertyInterface(Color,s)),e.o.setGroupProperty(PropertyInterface(Opacity,s)),e.w.setGroupProperty(PropertyInterface(Stroke Width,s)),l}function n(t,e,r){function i(e){return et.e.ix||Ende||ende?i.end:et.s.ix?i.start:et.o.ix?i.offset:null}var spropertyGroupFactory(i,r);return i.propertyIndext.ix,e.s.setGroupProperty(PropertyInterface(Start,s)),e.e.setGroupProperty(PropertyInterface(End,s)),e.o.setGroupProperty(PropertyInterface(Offset,s)),i.propertyIndext.ix,i.propertyGroupr,Object.defineProperties(i,{start:{get:ExpressionPropertyInterface(e.s)},end:{get:ExpressionPropertyInterface(e.e)},offset:{get:ExpressionPropertyInterface(e.o)},_name:{value:t.nm}}),i.mnt.mn,i}function o(t,e,r){function i(e){return t.a.ixe||Anchor Pointe?i.anchorPoint:t.o.ixe||Opacitye?i.opacity:t.p.ixe||Positione?i.position:t.r.ixe||Rotatione||ADBE Vector Rotatione?i.rotation:t.s.ixe||Scalee?i.scale:t.sk&&t.sk.ixe||Skewe?i.skew:t.sa&&t.sa.ixe||Skew Axise?i.skewAxis:null}var spropertyGroupFactory(i,r);return e.transform.mProps.o.setGroupProperty(PropertyInterface(Opacity,s)),e.transform.mProps.p.setGroupProperty(PropertyInterface(Position,s)),e.transform.mProps.a.setGroupProperty(PropertyInterface(Anchor Point,s)),e.transform.mProps.s.setGroupProperty(PropertyInterface(Scale,s)),e.transform.mProps.r.setGroupProperty(PropertyInterface(Rotation,s)),e.transform.mProps.sk&&(e.transform.mProps.sk.setGroupProperty(PropertyInterface(Skew,s)),e.transform.mProps.sa.setGroupProperty(PropertyInterface(Skew Angle,s))),e.transform.op.setGroupProperty(PropertyInterface(Opacity,s)),Object.defineProperties(i,{opacity:{get:ExpressionPropertyInterface(e.transform.mProps.o)},position:{get:ExpressionPropertyInterface(e.transform.mProps.p)},anchorPoint:{get:ExpressionPropertyInterface(e.transform.mProps.a)},scale:{get:ExpressionPropertyInterface(e.transform.mProps.s)},rotation:{get:ExpressionPropertyInterface(e.transform.mProps.r)},skew:{get:ExpressionPropertyInterface(e.transform.mProps.sk)},skewAxis:{get:ExpressionPropertyInterface(e.transform.mProps.sa)},_name:{value:t.nm}}),i.tytr,i.mnt.mn,i.propertyGroupr,i}function h(t,e,r){function i(e){return t.p.ixe?i.position:t.s.ixe?i.size:null}var spropertyGroupFactory(i,r);i.propertyIndext.ix;var atme.sh.ty?e.sh.prop:e.sh;return a.s.setGroupProperty(PropertyInterface(Size,s)),a.p.setGroupProperty(PropertyInterface(Position,s)),Object.defineProperties(i,{size:{get:ExpressionPropertyInterface(a.s)},position:{get:ExpressionPropertyInterface(a.p)},_name:{value:t.nm}}),i.mnt.mn,i}function l(t,e,r){function i(e){return t.p.ixe?i.position:t.r.ixe?i.rotation:t.pt.ixe?i.points:t.or.ixe||ADBE Vector Star Outer Radiuse?i.outerRadius:t.os.ixe?i.outerRoundness:!t.ir||t.ir.ix!e&&ADBE Vector Star Inner Radius!e?t.is&&t.is.ixe?i.innerRoundness:null:i.innerRadius}var spropertyGroupFactory(i,r),atme.sh.ty?e.sh.prop:e.sh;return i.propertyIndext.ix,a.or.setGroupProperty(PropertyInterface(Outer Radius,s)),a.os.setGroupProperty(PropertyInterface(Outer Roundness,s)),a.pt.setGroupProperty(PropertyInterface(Points,s)),a.p.setGroupProperty(PropertyInterface(Position,s)),a.r.setGroupProperty(PropertyInterface(Rotation,s)),t.ir&&(a.ir.setGroupProperty(PropertyInterface(Inner Radius,s)),a.is.setGroupProperty(PropertyInterface(Inner Roundness,s))),Object.defineProperties(i,{position:{get:ExpressionPropertyInterface(a.p)},rotation:{get:ExpressionPropertyInterface(a.r)},points:{get:ExpressionPropertyInterface(a.pt)},outerRadius:{get:ExpressionPropertyInterface(a.or)},outerRoundness:{get:ExpressionPropertyInterface(a.os)},innerRadius:{get:ExpressionPropertyInterface(a.ir)},innerRoundness:{get:ExpressionPropertyInterface(a.is)},_name:{value:t.nm}}),i.mnt.mn,i}function p(t,e,r){function i(e){return t.p.ixe?i.position:t.r.ixe?i.roundness:t.s.ixe||Sizee||ADBE Vector Rect Sizee?i.size:null}var spropertyGroupFactory(i,r),atme.sh.ty?e.sh.prop:e.sh;return i.propertyIndext.ix,a.p.setGroupProperty(PropertyInterface(Position,s)),a.s.setGroupProperty(PropertyInterface(Size,s)),a.r.setGroupProperty(PropertyInterface(Rotation,s)),Object.defineProperties(i,{position:{get:ExpressionPropertyInterface(a.p)},roundness:{get:ExpressionPropertyInterface(a.r)},size:{get:ExpressionPropertyInterface(a.s)},_name:{value:t.nm}}),i.mnt.mn,i}function f(t,e,r){function i(e){return t.r.ixe||Round Corners 1e?i.radius:null}var spropertyGroupFactory(i,r),ae;return i.propertyIndext.ix,a.rd.setGroupProperty(PropertyInterface(Radius,s)),Object.defineProperties(i,{radius:{get:ExpressionPropertyInterface(a.rd)},_name:{value:t.nm}}),i.mnt.mn,i}function m(t,e,r){function i(e){return t.c.ixe||Copiese?i.copies:t.o.ixe||Offsete?i.offset:null}var spropertyGroupFactory(i,r),ae;return i.propertyIndext.ix,a.c.setGroupProperty(PropertyInterface(Copies,s)),a.o.setGroupProperty(PropertyInterface(Offset,s)),Object.defineProperties(i,{copies:{get:ExpressionPropertyInterface(a.c)},offset:{get:ExpressionPropertyInterface(a.o)},_name:{value:t.nm}}),i.mnt.mn,i}return function(e,r,i){var s;function a(t){if(numbertypeof t)return 0(tvoid 0t?1:t)?i:st-1;for(var e0,rs.length;er;){if(se._namet)return se;e+1}return null}return a.propertyGrouppropertyGroupFactory(a,(function(){return i})),st(e,r,a.propertyGroup),a.numPropertiess.length,a._nameContents,a}}(),TextExpressionInterfacefunction(t){var e,r;function i(t){returnADBE Text Documentt?i.sourceText:null}return Object.defineProperty(i,sourceText,{get:function(){t.textProperty.getValue();var it.textProperty.currentData.t;return i!e&&(t.textProperty.currentData.te,(rnew String(i)).valuei||new String(i)),r}}),i},getBlendMode(blendModeEnums{0:source-over,1:multiply,2:screen,3:overlay,4:darken,5:lighten,6:color-dodge,7:color-burn,8:hard-light,9:soft-light,10:difference,11:exclusion,12:hue,13:saturation,14:color,15:luminosity},function(t){return blendModeEnumst||}),blendModeEnums;function SliderEffect(t,e,r){this.pPropertyFactory.getProp(e,t.v,0,0,r)}function AngleEffect(t,e,r){this.pPropertyFactory.getProp(e,t.v,0,0,r)}function ColorEffect(t,e,r){this.pPropertyFactory.getProp(e,t.v,1,0,r)}function PointEffect(t,e,r){this.pPropertyFactory.getProp(e,t.v,1,0,r)}function LayerIndexEffect(t,e,r){this.pPropertyFactory.getProp(e,t.v,0,0,r)}function MaskIndexEffect(t,e,r){this.pPropertyFactory.getProp(e,t.v,0,0,r)}function CheckboxEffect(t,e,r){this.pPropertyFactory.getProp(e,t.v,0,0,r)}function NoValueEffect(){this.p{}}function EffectsManager(t,e){var r,it.ef||;this.effectElements;var s,ai.length;for(r0;ra;r+1)snew GroupEffect(ir,e),this.effectElements.push(s)}function GroupEffect(t,e){this.init(t,e)}function BaseElement(){}function FrameElement(){}function _typeof$2(t){return _typeof$2functiontypeof Symbol&&symboltypeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&functiontypeof Symbol&&t.constructorSymbol&&t!Symbol.prototype?symbol:typeof t},_typeof$2(t)}extendPrototype(DynamicPropertyContainer,GroupEffect),GroupEffect.prototype.getValueGroupEffect.prototype.iterateDynamicProperties,GroupEffect.prototype.initfunction(t,e){var r;this.datat,this.effectElements,this.initDynamicPropertyContainer(e);var i,sthis.data.ef.length,athis.data.ef;for(r0;rs;r+1){switch(inull,ar.ty){case 0:inew SliderEffect(ar,e,this);break;case 1:inew AngleEffect(ar,e,this);break;case 2:inew ColorEffect(ar,e,this);break;case 3:inew PointEffect(ar,e,this);break;case 4:case 7:inew CheckboxEffect(ar,e,this);break;case 10:inew LayerIndexEffect(ar,e,this);break;case 11:inew MaskIndexEffect(ar,e,this);break;case 5:inew EffectsManager(ar,e,this);break;default:inew NoValueEffect(ar,e,this)}i&&this.effectElements.push(i)}},BaseElement.prototype{checkMasks:function(){if(!this.data.hasMask)return!1;for(var t0,ethis.data.masksProperties.length;te;){if(n!this.data.masksPropertiest.mode&&!1!this.data.masksPropertiest.cl)return!0;t+1}return!1},initExpressions:function(){this.layerInterfaceLayerExpressionInterface(this),this.data.hasMask&&this.maskManager&&this.layerInterface.registerMaskInterface(this.maskManager);var tEffectsExpressionInterface.createEffectsInterface(this,this.layerInterface);this.layerInterface.registerEffectsInterface(t),0this.data.ty||this.data.xt?this.compInterfaceCompExpressionInterface(this):4this.data.ty?(this.layerInterface.shapeInterfaceShapeExpressionInterface(this.shapesData,this.itemsData,this.layerInterface),this.layerInterface.contentthis.layerInterface.shapeInterface):5this.data.ty&&(this.layerInterface.textInterfaceTextExpressionInterface(this),this.layerInterface.textthis.layerInterface.textInterface)},setBlendMode:function(){var tgetBlendMode(this.data.bm);(this.baseElement||this.layerElement).stylemix-blend-modet},initBaseData:function(t,e,r){this.globalDatae,this.compr,this.datat,this.layerIdcreateElementID(),this.data.sr||(this.data.sr1),this.effectsManagernew EffectsManager(this.data,this,this.dynamicProperties)},getType:function(){return this.type},sourceRectAtTime:function(){}},FrameElement.prototype{initFrame:function(){this._isFirstFrame!1,this.dynamicProperties,this._mdf!1},prepareProperties:function(t,e){var r,ithis.dynamicProperties.length;for(r0;ri;r+1)(e||this._isParent&&transformthis.dynamicPropertiesr.propType)&&(this.dynamicPropertiesr.getValue(),this.dynamicPropertiesr._mdf&&(this.globalData._mdf!0,this._mdf!0))},addDynamicProperty:function(t){-1this.dynamicProperties.indexOf(t)&&this.dynamicProperties.push(t)}};var FootageInterface(dataInterfaceFactoryfunction(t){function e(t){returnOutlinet?e.outlineInterface():null}return e._nameOutline,e.outlineInterfacefunction(t){var e,rt.getFootageData();function i(t){if(rt)return et,object_typeof$2(rrt)?i:r;var st.indexOf(e);if(-1!s){var aparseInt(t.substr(s+e.length),10);returnobject_typeof$2(rra)?i:r}return}return function(){return e,rt.getFootageData(),i}}(t),e},function(t){function e(t){returnDatat?e.dataInterface:null}return e._nameData,e.dataInterfacedataInterfaceFactory(t),e}),dataInterfaceFactory;function FootageElement(t,e,r){this.initFrame(),this.initRenderable(),this.assetDatae.getAssetData(t.refId),this.footageDatae.imageLoader.getAsset(this.assetData),this.initBaseData(t,e,r)}function AudioElement(t,e,r){this.initFrame(),this.initRenderable(),this.assetDatae.getAssetData(t.refId),this.initBaseData(t,e,r),this._isPlaying!1,this._canPlay!1;var ithis.globalData.getAssetsPath(this.assetData);this.audiothis.globalData.audioController.createAudio(i),this._currentTime0,this.globalData.audioController.addAudio(this),this._volumeMultiplier1,this._volume1,this._previousVolumenull,this.tmt.tm?PropertyFactory.getProp(this,t.tm,0,e.frameRate,this):{_placeholder:!0},this.lvPropertyFactory.getProp(this,t.au&&t.au.lv?t.au.lv:{k:100},1,.01,this)}function BaseRenderer(){}function TransformElement(){}function MaskElement(t,e,r){this.datat,this.elemente,this.globalDatar,this.storedData,this.masksPropertiesthis.data.masksProperties||,this.maskElementnull;var i,s,athis.globalData.defs,nthis.masksProperties?this.masksProperties.length:0;this.viewDatacreateSizedArray(n),this.solidPath;var o,h,l,p,f,m,cthis.masksProperties,d0,u,ycreateElementID(),gclipPath,vclip-path;for(i0;in;i+1)if((a!ci.mode&&n!ci.mode||ci.inv||100!ci.o.k||ci.o.x)&&(gmask,vmask),s!ci.mode&&i!ci.mode||0!d?lnull:((lcreateNS(rect)).setAttribute(fill,#ffffff),l.setAttribute(width,this.element.comp.data.w||0),l.setAttribute(height,this.element.comp.data.h||0),u.push(l)),screateNS(path),nci.mode)this.viewDatai{op:PropertyFactory.getProp(this.element,ci.o,0,.01,this.element),prop:ShapePropertyFactory.getShapeProp(this.element,ci,3),elem:s,lastPath:},a.appendChild(s);else{var b;if(d+1,s.setAttribute(fill,sci.mode?#000000:#ffffff),s.setAttribute(clip-rule,nonzero),0!ci.x.k?(gmask,vmask,mPropertyFactory.getProp(this.element,ci.x,0,null,this.element),bcreateElementID(),(pcreateNS(filter)).setAttribute(id,b),(fcreateNS(feMorphology)).setAttribute(operator,erode),f.setAttribute(in,SourceGraphic),f.setAttribute(radius,0),p.appendChild(f),a.appendChild(p),s.setAttribute(stroke,sci.mode?#000000:#ffffff)):(fnull,mnull),this.storedDatai{elem:s,x:m,expan:f,lastPath:,lastOperator:,filterId:b,lastRadius:0},ici.mode){hu.length;var PcreateNS(g);for(o0;oh;o+1)P.appendChild(uo);var EcreateNS(mask);E.setAttribute(mask-type,alpha),E.setAttribute(id,y+_+d),E.appendChild(s),a.appendChild(E),P.setAttribute(mask,url(+getLocationHref()+#+y+_+d+)),u.length0,u.push(P)}else u.push(s);ci.inv&&!this.solidPath&&(this.solidPaththis.createLayerSolidPath()),this.viewDatai{elem:s,lastPath:,op:PropertyFactory.getProp(this.element,ci.o,0,.01,this.element),prop:ShapePropertyFactory.getShapeProp(this.element,ci,3),invRect:l},this.viewDatai.prop.k||this.drawPath(ci,this.viewDatai.prop.v,this.viewDatai)}for(this.maskElementcreateNS(g),nu.length,i0;in;i+1)this.maskElement.appendChild(ui);d>0&&(this.maskElement.setAttribute(id,y),this.element.maskedElement.setAttribute(v,url(+getLocationHref()+#+y+)),a.appendChild(this.maskElement)),this.viewData.length&&this.element.addRenderableComponent(this)}FootageElement.prototype.prepareFramefunction(){},extendPrototype(RenderableElement,BaseElement,FrameElement,FootageElement),FootageElement.prototype.getBaseElementfunction(){return null},FootageElement.prototype.renderFramefunction(){},FootageElement.prototype.destroyfunction(){},FootageElement.prototype.initExpressionsfunction(){this.layerInterfaceFootageInterface(this)},FootageElement.prototype.getFootageDatafunction(){return this.footageData},AudioElement.prototype.prepareFramefunction(t){if(this.prepareRenderableFrame(t,!0),this.prepareProperties(t,!0),this.tm._placeholder)this._currentTimet/this.data.sr;else{var ethis.tm.v;this._currentTimee}this._volumethis.lv.v0;var rthis._volume*this._volumeMultiplier;this._previousVolume!r&&(this._previousVolumer,this.audio.volume(r))},extendPrototype(RenderableElement,BaseElement,FrameElement,AudioElement),AudioElement.prototype.renderFramefunction(){this.isInRange&&this._canPlay&&(this._isPlaying?(!this.audio.playing()||Math.abs(this._currentTime/this.globalData.frameRate-this.audio.seek())>.1)&&this.audio.seek(this._currentTime/this.globalData.frameRate):(this.audio.play(),this.audio.seek(this._currentTime/this.globalData.frameRate),this._isPlaying!0))},AudioElement.prototype.showfunction(){},AudioElement.prototype.hidefunction(){this.audio.pause(),this._isPlaying!1},AudioElement.prototype.pausefunction(){this.audio.pause(),this._isPlaying!1,this._canPlay!1},AudioElement.prototype.resumefunction(){this._canPlay!0},AudioElement.prototype.setRatefunction(t){this.audio.rate(t)},AudioElement.prototype.volumefunction(t){this._volumeMultipliert,this._previousVolumet*this._volume,this.audio.volume(this._previousVolume)},AudioElement.prototype.getBaseElementfunction(){return null},AudioElement.prototype.destroyfunction(){},AudioElement.prototype.sourceRectAtTimefunction(){},AudioElement.prototype.initExpressionsfunction(){},BaseRenderer.prototype.checkLayersfunction(t){var e,r,ithis.layers.length;for(this.completeLayers!0,ei-1;e>0;e-1)this.elementse||(rthis.layerse).ip-r.stt-this.layerse.st&&r.op-r.st>t-this.layerse.st&&this.buildItem(e),this.completeLayers!!this.elementse&&this.completeLayers;this.checkPendingElements()},BaseRenderer.prototype.createItemfunction(t){switch(t.ty){case 2:return this.createImage(t);case 0:return this.createComp(t);case 1:return this.createSolid(t);case 3:default:return this.createNull(t);case 4:return this.createShape(t);case 5:return this.createText(t);case 6:return this.createAudio(t);case 13:return this.createCamera(t);case 15:return this.createFootage(t)}},BaseRenderer.prototype.createCamerafunction(){throw new Error(Youre using a 3d camera. Try the html renderer.)},BaseRenderer.prototype.createAudiofunction(t){return new AudioElement(t,this.globalData,this)},BaseRenderer.prototype.createFootagefunction(t){return new FootageElement(t,this.globalData,this)},BaseRenderer.prototype.buildAllItemsfunction(){var t,ethis.layers.length;for(t0;te;t+1)this.buildItem(t);this.checkPendingElements()},BaseRenderer.prototype.includeLayersfunction(t){var e;this.completeLayers!1;var r,it.length,sthis.layers.length;for(e0;ei;e+1)for(r0;rs;){if(this.layersr.idte.id){this.layersrte;break}r+1}},BaseRenderer.prototype.setProjectInterfacefunction(t){this.globalData.projectInterfacet},BaseRenderer.prototype.initItemsfunction(){this.globalData.progressiveLoad||this.buildAllItems()},BaseRenderer.prototype.buildElementParentingfunction(t,e,r){for(var ithis.elements,sthis.layers,a0,ns.length;an;)sa.inde&&(ia&&!0!ia?(r.push(ia),ia.setAsParent(),void 0!sa.parent?this.buildElementParenting(t,sa.parent,r):t.setHierarchy(r)):(this.buildItem(a),this.addPendingElement(t))),a+1},BaseRenderer.prototype.addPendingElementfunction(t){this.pendingElements.push(t)},BaseRenderer.prototype.searchExtraCompositionsfunction(t){var e,rt.length;for(e0;er;e+1)if(te.xt){var ithis.createComp(te);i.initExpressions(),this.globalData.projectInterface.registerComposition(i)}},BaseRenderer.prototype.getElementByPathfunction(t){var e,rt.shift();if(numbertypeof r)ethis.elementsr;else{var i,sthis.elements.length;for(i0;is;i+1)if(this.elementsi.data.nmr){ethis.elementsi;break}}return 0t.length?e:e.getElementByPath(t)},BaseRenderer.prototype.setupGlobalDatafunction(t,e){this.globalData.fontManagernew FontManager,this.globalData.fontManager.addChars(t.chars),this.globalData.fontManager.addFonts(t.fonts,e),this.globalData.getAssetDatathis.animationItem.getAssetData.bind(this.animationItem),this.globalData.getAssetsPaththis.animationItem.getAssetsPath.bind(this.animationItem),this.globalData.imageLoaderthis.animationItem.imagePreloader,this.globalData.audioControllerthis.animationItem.audioController,this.globalData.frameId0,this.globalData.frameRatet.fr,this.globalData.nmt.nm,this.globalData.compSize{w:t.w,h:t.h}},TransformElement.prototype{initTransform:function(){this.finalTransform{mProp:this.data.ks?TransformPropertyFactory.getTransformProperty(this,this.data.ks,this):{o:0},_matMdf:!1,_opMdf:!1,mat:new Matrix},this.data.ao&&(this.finalTransform.mProp.autoOriented!0),this.data.ty},renderTransform:function(){if(this.finalTransform._opMdfthis.finalTransform.mProp.o._mdf||this._isFirstFrame,this.finalTransform._matMdfthis.finalTransform.mProp._mdf||this._isFirstFrame,this.hierarchy){var t,ethis.finalTransform.mat,r0,ithis.hierarchy.length;if(!this.finalTransform._matMdf)for(;ri;){if(this.hierarchyr.finalTransform.mProp._mdf){this.finalTransform._matMdf!0;break}r+1}if(this.finalTransform._matMdf)for(tthis.finalTransform.mProp.v.props,e.cloneFromProps(t),r0;ri;r+1)tthis.hierarchyr.finalTransform.mProp.v.props,e.transform(t0,t1,t2,t3,t4,t5,t6,t7,t8,t9,t10,t11,t12,t13,t14,t15)}},globalToLocal:function(t){var e;e.push(this.finalTransform);for(var r,i!0,sthis.comp;i;)s.finalTransform?(s.data.hasMask&&e.splice(0,0,s.finalTransform),ss.comp):i!1;var a,ne.length;for(r0;rn;r+1)aer.mat.applyToPointArray(0,0,0),tt0-a0,t1-a1,0;return t},mHelper:new Matrix},MaskElement.prototype.getMaskPropertyfunction(t){return this.viewDatat.prop},MaskElement.prototype.renderFramefunction(t){var e,rthis.element.finalTransform.mat,ithis.masksProperties.length;for(e0;ei;e+1)if((this.viewDatae.prop._mdf||t)&&this.drawPath(this.masksPropertiese,this.viewDatae.prop.v,this.viewDatae),(this.viewDatae.op._mdf||t)&&this.viewDatae.elem.setAttribute(fill-opacity,this.viewDatae.op.v),n!this.masksPropertiese.mode&&(this.viewDatae.invRect&&(this.element.finalTransform.mProp._mdf||t)&&this.viewDatae.invRect.setAttribute(transform,r.getInverseMatrix().to2dCSS()),this.storedDatae.x&&(this.storedDatae.x._mdf||t))){var sthis.storedDatae.expan;this.storedDatae.x.v0?(erode!this.storedDatae.lastOperator&&(this.storedDatae.lastOperatorerode,this.storedDatae.elem.setAttribute(filter,url(+getLocationHref()+#+this.storedDatae.filterId+))),s.setAttribute(radius,-this.storedDatae.x.v)):(dilate!this.storedDatae.lastOperator&&(this.storedDatae.lastOperatordilate,this.storedDatae.elem.setAttribute(filter,null)),this.storedDatae.elem.setAttribute(stroke-width,2*this.storedDatae.x.v))}},MaskElement.prototype.getMaskelementfunction(){return this.maskElement},MaskElement.prototype.createLayerSolidPathfunction(){var tM0,0 ;return t+ h+this.globalData.compSize.w,t+ v+this.globalData.compSize.h,t+ h-+this.globalData.compSize.w,t+ v-+this.globalData.compSize.h+ },MaskElement.prototype.drawPathfunction(t,e,r){var i,s,a M+e.v00+,+e.v01;for(se._length,i1;is;i+1)a+ C+e.oi-10+,+e.oi-11+ +e.ii0+,+e.ii1+ +e.vi0+,+e.vi1;if(e.c&&s>1&&(a+ C+e.oi-10+,+e.oi-11+ +e.i00+,+e.i01+ +e.v00+,+e.v01),r.lastPath!a){var n;r.elem&&(e.c&&(nt.inv?this.solidPath+a:a),r.elem.setAttribute(d,n)),r.lastPatha}},MaskElement.prototype.destroyfunction(){this.elementnull,this.globalDatanull,this.maskElementnull,this.datanull,this.masksPropertiesnull};var filtersFactoryfunction(){var t{};return t.createFilterfunction(t,e){var rcreateNS(filter);r.setAttribute(id,t),!0!e&&(r.setAttribute(filterUnits,objectBoundingBox),r.setAttribute(x,0%),r.setAttribute(y,0%),r.setAttribute(width,100%),r.setAttribute(height,100%));return r},t.createAlphaToLuminanceFilterfunction(){var tcreateNS(feColorMatrix);return t.setAttribute(type,matrix),t.setAttribute(color-interpolation-filters,sRGB),t.setAttribute(values,0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 1),t},t}(),featureSupportfunction(){var t{maskType:!0};return(/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))&&(t.maskType!1),t}(),registeredEffects{},idPrefixfilter_result_;function SVGEffects(t){var e,r,iSourceGraphic,st.data.ef?t.data.ef.length:0,acreateElementID(),nfiltersFactory.createFilter(a,!0),o0;for(this.filters,e0;es;e+1){rnull;var ht.data.efe.ty;if(registeredEffectsh)rnew(0,registeredEffectsh.effect)(n,t.effectsManager.effectElementse,t,idPrefix+o,i),iidPrefix+o,registeredEffectsh.countsAsEffect&&(o+1);r&&this.filters.push(r)}o&&(t.globalData.defs.appendChild(n),t.layerElement.setAttribute(filter,url(+getLocationHref()+#+a+))),this.filters.length&&t.addRenderableComponent(this)}function registerEffect(t,e,r){registeredEffectst{effect:e,countsAsEffect:r}}function SVGBaseElement(){}function HierarchyElement(){}function RenderableDOMElement(){}function IImageElement(t,e,r){this.assetDatae.getAssetData(t.refId),this.initElement(t,e,r),this.sourceRect{top:0,left:0,width:this.assetData.w,height:this.assetData.h}}function ProcessedElement(t,e){this.elemt,this.pose}function IShapeElement(){}SVGEffects.prototype.renderFramefunction(t){var e,rthis.filters.length;for(e0;er;e+1)this.filterse.renderFrame(t)},SVGBaseElement.prototype{initRendererElement:function(){this.layerElementcreateNS(g)},createContainerElements:function(){this.matteElementcreateNS(g),this.transformedElementthis.layerElement,this.maskedElementthis.layerElement,this._sizeChanged!1;var t,e,r,inull;if(this.data.td){if(3this.data.td||1this.data.td){var screateNS(mask);s.setAttribute(id,this.layerId),s.setAttribute(mask-type,3this.data.td?luminance:alpha),s.appendChild(this.layerElement),is,this.globalData.defs.appendChild(s),featureSupport.maskType||1!this.data.td||(s.setAttribute(mask-type,luminance),tcreateElementID(),efiltersFactory.createFilter(t),this.globalData.defs.appendChild(e),e.appendChild(filtersFactory.createAlphaToLuminanceFilter()),(rcreateNS(g)).appendChild(this.layerElement),ir,s.appendChild(r),r.setAttribute(filter,url(+getLocationHref()+#+t+)))}else if(2this.data.td){var acreateNS(mask);a.setAttribute(id,this.layerId),a.setAttribute(mask-type,alpha);var ncreateNS(g);a.appendChild(n),tcreateElementID(),efiltersFactory.createFilter(t);var ocreateNS(feComponentTransfer);o.setAttribute(in,SourceGraphic),e.appendChild(o);var hcreateNS(feFuncA);h.setAttribute(type,table),h.setAttribute(tableValues,1.0 0.0),o.appendChild(h),this.globalData.defs.appendChild(e);var lcreateNS(rect);l.setAttribute(width,this.comp.data.w),l.setAttribute(height,this.comp.data.h),l.setAttribute(x,0),l.setAttribute(y,0),l.setAttribute(fill,#ffffff),l.setAttribute(opacity,0),n.setAttribute(filter,url(+getLocationHref()+#+t+)),n.appendChild(l),n.appendChild(this.layerElement),in,featureSupport.maskType||(a.setAttribute(mask-type,luminance),e.appendChild(filtersFactory.createAlphaToLuminanceFilter()),rcreateNS(g),n.appendChild(l),r.appendChild(this.layerElement),ir,n.appendChild(r)),this.globalData.defs.appendChild(a)}}else this.data.tt?(this.matteElement.appendChild(this.layerElement),ithis.matteElement,this.baseElementthis.matteElement):this.baseElementthis.layerElement;if(this.data.ln&&this.layerElement.setAttribute(id,this.data.ln),this.data.cl&&this.layerElement.setAttribute(class,this.data.cl),0this.data.ty&&!this.data.hd){var pcreateNS(clipPath),fcreateNS(path);f.setAttribute(d,M0,0 L+this.data.w+,0 L+this.data.w+,+this.data.h+ L0,+this.data.h+z);var mcreateElementID();if(p.setAttribute(id,m),p.appendChild(f),this.globalData.defs.appendChild(p),this.checkMasks()){var ccreateNS(g);c.setAttribute(clip-path,url(+getLocationHref()+#+m+)),c.appendChild(this.layerElement),this.transformedElementc,i?i.appendChild(this.transformedElement):this.baseElementthis.transformedElement}else this.layerElement.setAttribute(clip-path,url(+getLocationHref()+#+m+))}0!this.data.bm&&this.setBlendMode()},renderElement:function(){this.finalTransform._matMdf&&this.transformedElement.setAttribute(transform,this.finalTransform.mat.to2dCSS()),this.finalTransform._opMdf&&this.transformedElement.setAttribute(opacity,this.finalTransform.mProp.o.v)},destroyBaseElement:function(){this.layerElementnull,this.matteElementnull,this.maskManager.destroy()},getBaseElement:function(){return this.data.hd?null:this.baseElement},createRenderableComponents:function(){this.maskManagernew MaskElement(this.data,this,this.globalData),this.renderableEffectsManagernew SVGEffects(this)},setMatte:function(t){this.matteElement&&this.matteElement.setAttribute(mask,url(+getLocationHref()+#+t+))}},HierarchyElement.prototype{initHierarchy:function(){this.hierarchy,this._isParent!1,this.checkParenting()},setHierarchy:function(t){this.hierarchyt},setAsParent:function(){this._isParent!0},checkParenting:function(){void 0!this.data.parent&&this.comp.buildElementParenting(this,this.data.parent,)}},extendPrototype(RenderableElement,createProxyFunction({initElement:function(t,e,r){this.initFrame(),this.initBaseData(t,e,r),this.initTransform(t,e,r),this.initHierarchy(),this.initRenderable(),this.initRendererElement(),this.createContainerElements(),this.createRenderableComponents(),this.createContent(),this.hide()},hide:function(){this.hidden||this.isInRange&&!this.isTransparent||((this.baseElement||this.layerElement).style.displaynone,this.hidden!0)},show:function(){this.isInRange&&!this.isTransparent&&(this.data.hd||((this.baseElement||this.layerElement).style.displayblock),this.hidden!1,this._isFirstFrame!0)},renderFrame:function(){this.data.hd||this.hidden||(this.renderTransform(),this.renderRenderable(),this.renderElement(),this.renderInnerContent(),this._isFirstFrame&&(this._isFirstFrame!1))},renderInnerContent:function(){},prepareFrame:function(t){this._mdf!1,this.prepareRenderableFrame(t),this.prepareProperties(t,this.isInRange),this.checkTransparency()},destroy:function(){this.innerElemnull,this.destroyBaseElement()}}),RenderableDOMElement),extendPrototype(BaseElement,TransformElement,SVGBaseElement,HierarchyElement,FrameElement,RenderableDOMElement,IImageElement),IImageElement.prototype.createContentfunction(){var tthis.globalData.getAssetsPath(this.assetData);this.innerElemcreateNS(image),this.innerElem.setAttribute(width,this.assetData.w+px),this.innerElem.setAttribute(height,this.assetData.h+px),this.innerElem.setAttribute(preserveAspectRatio,this.assetData.pr||this.globalData.renderConfig.imagePreserveAspectRatio),this.innerElem.setAttributeNS(http://www.w3.org/1999/xlink,href,t),this.layerElement.appendChild(this.innerElem)},IImageElement.prototype.sourceRectAtTimefunction(){return this.sourceRect},IShapeElement.prototype{addShapeToModifiers:function(t){var e,rthis.shapeModifiers.length;for(e0;er;e+1)this.shapeModifierse.addShape(t)},isShapeInAnimatedModifiers:function(t){for(var ethis.shapeModifiers.length;0e;)if(this.shapeModifiers0.isAnimatedWithShape(t))return!0;return!1},renderModifiers:function(){if(this.shapeModifiers.length){var t,ethis.shapes.length;for(t0;te;t+1)this.shapest.sh.reset();for(t(ethis.shapeModifiers.length)-1;t>0&&!this.shapeModifierst.processShapes(this._isFirstFrame);t-1);}},searchProcessedElement:function(t){for(var ethis.processedElements,r0,ie.length;ri;){if(er.elemt)return er.pos;r+1}return 0},addProcessedElement:function(t,e){for(var rthis.processedElements,ir.length;i;)if(ri-1.elemt)return void(ri.pose);r.push(new ProcessedElement(t,e))},prepareFrame:function(t){this.prepareRenderableFrame(t),this.prepareProperties(t,this.isInRange)}};var lineCapEnum{1:butt,2:round,3:square},lineJoinEnum{1:miter,2:round,3:bevel};function SVGShapeData(t,e,r){this.caches,this.styles,this.transformerst,this.lStr,this.shr,this.lvle,this._isAnimated!!r.k;for(var i0,st.length;is;){if(ti.mProps.dynamicProperties.length){this._isAnimated!0;break}i+1}}function SVGStyleData(t,e){this.datat,this.typet.ty,this.d,this.lvle,this._mdf!1,this.closed!0t.hd,this.pElemcreateNS(path),this.msElemnull}function DashProperty(t,e,r,i){var s;this.elemt,this.frameId-1,this.dataPropscreateSizedArray(e.length),this.rendererr,this.k!1,this.dashStr,this.dashArraycreateTypedArray(float32,e.length?e.length-1:0),this.dashoffsetcreateTypedArray(float32,1),this.initDynamicPropertyContainer(i);var a,ne.length||0;for(s0;sn;s+1)aPropertyFactory.getProp(t,es.v,0,0,this),this.ka.k||this.k,this.dataPropss{n:es.n,p:a};this.k||this.getValue(!0),this._isAnimatedthis.k}function SVGStrokeStyleData(t,e,r){this.initDynamicPropertyContainer(t),this.getValuethis.iterateDynamicProperties,this.oPropertyFactory.getProp(t,e.o,0,.01,this),this.wPropertyFactory.getProp(t,e.w,0,null,this),this.dnew DashProperty(t,e.d||{},svg,this),this.cPropertyFactory.getProp(t,e.c,1,255,this),this.styler,this._isAnimated!!this._isAnimated}function SVGFillStyleData(t,e,r){this.initDynamicPropertyContainer(t),this.getValuethis.iterateDynamicProperties,this.oPropertyFactory.getProp(t,e.o,0,.01,this),this.cPropertyFactory.getProp(t,e.c,1,255,this),this.styler}function SVGNoStyleData(t,e,r){this.initDynamicPropertyContainer(t),this.getValuethis.iterateDynamicProperties,this.styler}function GradientProperty(t,e,r){this.datae,this.ccreateTypedArray(uint8c,4*e.p);var ie.k.k0.s?e.k.k0.s.length-4*e.p:e.k.k.length-4*e.p;this.ocreateTypedArray(float32,i),this._cmdf!1,this._omdf!1,this._collapsablethis.checkCollapsable(),this._hasOpacityi,this.initDynamicPropertyContainer(r),this.propPropertyFactory.getProp(t,e.k,1,null,this),this.kthis.prop.k,this.getValue(!0)}function SVGGradientFillStyleData(t,e,r){this.initDynamicPropertyContainer(t),this.getValuethis.iterateDynamicProperties,this.initGradientData(t,e,r)}function SVGGradientStrokeStyleData(t,e,r){this.initDynamicPropertyContainer(t),this.getValuethis.iterateDynamicProperties,this.wPropertyFactory.getProp(t,e.w,0,null,this),this.dnew DashProperty(t,e.d||{},svg,this),this.initGradientData(t,e,r),this._isAnimated!!this._isAnimated}function ShapeGroupData(){this.it,this.prevViewData,this.grcreateNS(g)}function SVGTransformData(t,e,r){this.transform{mProps:t,op:e,container:r},this.elements,this._isAnimatedthis.transform.mProps.dynamicProperties.length||this.transform.op.effectsSequence.length}SVGShapeData.prototype.setAsAnimatedfunction(){this._isAnimated!0},SVGStyleData.prototype.resetfunction(){this.d,this._mdf!1},DashProperty.prototype.getValuefunction(t){if((this.elem.globalData.frameId!this.frameId||t)&&(this.frameIdthis.elem.globalData.frameId,this.iterateDynamicProperties(),this._mdfthis._mdf||t,this._mdf)){var e0,rthis.dataProps.length;for(svgthis.renderer&&(this.dashStr),e0;er;e+1)o!this.dataPropse.n?svgthis.renderer?this.dashStr+ +this.dataPropse.p.v:this.dashArrayethis.dataPropse.p.v:this.dashoffset0this.dataPropse.p.v}},extendPrototype(DynamicPropertyContainer,DashProperty),extendPrototype(DynamicPropertyContainer,SVGStrokeStyleData),extendPrototype(DynamicPropertyContainer,SVGFillStyleData),extendPrototype(DynamicPropertyContainer,SVGNoStyleData),GradientProperty.prototype.comparePointsfunction(t,e){for(var r0,ithis.o.length/2;ri;){if(Math.abs(t4*r-t4*e+2*r)>.01)return!1;r+1}return!0},GradientProperty.prototype.checkCollapsablefunction(){if(this.o.length/2!this.c.length/4)return!1;if(this.data.k.k0.s)for(var t0,ethis.data.k.k.length;te;){if(!this.comparePoints(this.data.k.kt.s,this.data.p))return!1;t+1}else if(!this.comparePoints(this.data.k.k,this.data.p))return!1;return!0},GradientProperty.prototype.getValuefunction(t){if(this.prop.getValue(),this._mdf!1,this._cmdf!1,this._omdf!1,this.prop._mdf||t){var e,r,i,s4*this.data.p;for(e0;es;e+1)re%40?100:255,iMath.round(this.prop.ve*r),this.ce!i&&(this.cei,this._cmdf!t);if(this.o.length)for(sthis.prop.v.length,e4*this.data.p;es;e+1)re%20?100:1,ie%20?Math.round(100*this.prop.ve):this.prop.ve,this.oe-4*this.data.p!i&&(this.oe-4*this.data.pi,this._omdf!t);this._mdf!t}},extendPrototype(DynamicPropertyContainer,GradientProperty),SVGGradientFillStyleData.prototype.initGradientDatafunction(t,e,r){this.oPropertyFactory.getProp(t,e.o,0,.01,this),this.sPropertyFactory.getProp(t,e.s,1,null,this),this.ePropertyFactory.getProp(t,e.e,1,null,this),this.hPropertyFactory.getProp(t,e.h||{k:0},0,.01,this),this.aPropertyFactory.getProp(t,e.a||{k:0},0,degToRads,this),this.gnew GradientProperty(t,e.g,this),this.styler,this.stops,this.setGradientData(r.pElem,e),this.setGradientOpacity(e,r),this._isAnimated!!this._isAnimated},SVGGradientFillStyleData.prototype.setGradientDatafunction(t,e){var rcreateElementID(),icreateNS(1e.t?linearGradient:radialGradient);i.setAttribute(id,r),i.setAttribute(spreadMethod,pad),i.setAttribute(gradientUnits,userSpaceOnUse);var s,a,n,o;for(n4*e.g.p,a0;an;a+4)screateNS(stop),i.appendChild(s),o.push(s);t.setAttribute(gfe.ty?fill:stroke,url(+getLocationHref()+#+r+)),this.gfi,this.csto},SVGGradientFillStyleData.prototype.setGradientOpacityfunction(t,e){if(this.g._hasOpacity&&!this.g._collapsable){var r,i,s,acreateNS(mask),ncreateNS(path);a.appendChild(n);var ocreateElementID(),hcreateElementID();a.setAttribute(id,h);var lcreateNS(1t.t?linearGradient:radialGradient);l.setAttribute(id,o),l.setAttribute(spreadMethod,pad),l.setAttribute(gradientUnits,userSpaceOnUse),st.g.k.k0.s?t.g.k.k0.s.length:t.g.k.k.length;var pthis.stops;for(i4*t.g.p;is;i+2)(rcreateNS(stop)).setAttribute(stop-color,rgb(255,255,255)),l.appendChild(r),p.push(r);n.setAttribute(gft.ty?fill:stroke,url(+getLocationHref()+#+o+)),gst.ty&&(n.setAttribute(stroke-linecap,lineCapEnumt.lc||2),n.setAttribute(stroke-linejoin,lineJoinEnumt.lj||2),1t.lj&&n.setAttribute(stroke-miterlimit,t.ml)),this.ofl,this.msa,this.ostp,this.maskIdh,e.msElemn}},extendPrototype(DynamicPropertyContainer,SVGGradientFillStyleData),extendPrototype(SVGGradientFillStyleData,DynamicPropertyContainer,SVGGradientStrokeStyleData);var buildShapeStringfunction(t,e,r,i){if(0e)return;var s,at.o,nt.i,ot.v,h M+i.applyToPointStringified(o00,o01);for(s1;se;s+1)h+ C+i.applyToPointStringified(as-10,as-11)+ +i.applyToPointStringified(ns0,ns1)+ +i.applyToPointStringified(os0,os1);return r&&e&&(h+ C+i.applyToPointStringified(as-10,as-11)+ +i.applyToPointStringified(n00,n01)+ +i.applyToPointStringified(o00,o01),h+z),h},SVGElementsRendererfunction(){var tnew Matrix,enew Matrix;function r(t,e,r){(r||e.transform.op._mdf)&&e.transform.container.setAttribute(opacity,e.transform.op.v),(r||e.transform.mProps._mdf)&&e.transform.container.setAttribute(transform,e.transform.mProps.v.to2dCSS())}function i(){}function s(r,i,s){var a,n,o,h,l,p,f,m,c,d,u,yi.styles.length,gi.lvl;for(p0;py;p+1){if(hi.sh._mdf||s,i.stylesp.lvlg){for(me.reset(),dg-i.stylesp.lvl,ui.transformers.length-1;!h&&d>0;)hi.transformersu.mProps._mdf||h,d-1,u-1;if(h)for(dg-i.stylesp.lvl,ui.transformers.length-1;d>0;)ci.transformersu.mProps.v.props,m.transform(c0,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,c12,c13,c14,c15),d-1,u-1}else mt;if(n(fi.sh.paths)._length,h){for(o,a0;an;a+1)(lf.shapesa)&&l._length&&(o+buildShapeString(l,l._length,l.c,m));i.cachespo}else oi.cachesp;i.stylesp.d+!0r.hd?:o,i.stylesp._mdfh||i.stylesp._mdf}}function a(t,e,r){var ie.style;(e.c._mdf||r)&&i.pElem.setAttribute(fill,rgb(+bmFloor(e.c.v0)+,+bmFloor(e.c.v1)+,+bmFloor(e.c.v2)+)),(e.o._mdf||r)&&i.pElem.setAttribute(fill-opacity,e.o.v)}function n(t,e,r){o(t,e,r),h(t,e,r)}function o(t,e,r){var i,s,a,n,o,he.gf,le.g._hasOpacity,pe.s.v,fe.e.v;if(e.o._mdf||r){var mgft.ty?fill-opacity:stroke-opacity;e.style.pElem.setAttribute(m,e.o.v)}if(e.s._mdf||r){var c1t.t?x1:cx,dx1c?y1:cy;h.setAttribute(c,p0),h.setAttribute(d,p1),l&&!e.g._collapsable&&(e.of.setAttribute(c,p0),e.of.setAttribute(d,p1))}if(e.g._cmdf||r){ie.cst;var ue.g.c;for(ai.length,s0;sa;s+1)(nis).setAttribute(offset,u4*s+%),n.setAttribute(stop-color,rgb(+u4*s+1+,+u4*s+2+,+u4*s+3+))}if(l&&(e.g._omdf||r)){var ye.g.o;for(a(ie.g._collapsable?e.cst:e.ost).length,s0;sa;s+1)nis,e.g._collapsable||n.setAttribute(offset,y2*s+%),n.setAttribute(stop-opacity,y2*s+1)}if(1t.t)(e.e._mdf||r)&&(h.setAttribute(x2,f0),h.setAttribute(y2,f1),l&&!e.g._collapsable&&(e.of.setAttribute(x2,f0),e.of.setAttribute(y2,f1)));else if((e.s._mdf||e.e._mdf||r)&&(oMath.sqrt(Math.pow(p0-f0,2)+Math.pow(p1-f1,2)),h.setAttribute(r,o),l&&!e.g._collapsable&&e.of.setAttribute(r,o)),e.e._mdf||e.h._mdf||e.a._mdf||r){o||(oMath.sqrt(Math.pow(p0-f0,2)+Math.pow(p1-f1,2)));var gMath.atan2(f1-p1,f0-p0),ve.h.v;v>1?v.99:v-1&&(v-.99);var bo*v,PMath.cos(g+e.a.v)*b+p0,EMath.sin(g+e.a.v)*b+p1;h.setAttribute(fx,P),h.setAttribute(fy,E),l&&!e.g._collapsable&&(e.of.setAttribute(fx,P),e.of.setAttribute(fy,E))}}function h(t,e,r){var ie.style,se.d;s&&(s._mdf||r)&&s.dashStr&&(i.pElem.setAttribute(stroke-dasharray,s.dashStr),i.pElem.setAttribute(stroke-dashoffset,s.dashoffset0)),e.c&&(e.c._mdf||r)&&i.pElem.setAttribute(stroke,rgb(+bmFloor(e.c.v0)+,+bmFloor(e.c.v1)+,+bmFloor(e.c.v2)+)),(e.o._mdf||r)&&i.pElem.setAttribute(stroke-opacity,e.o.v),(e.w._mdf||r)&&(i.pElem.setAttribute(stroke-width,e.w.v),i.msElem&&i.msElem.setAttribute(stroke-width,e.w.v))}return{createRenderFunction:function(t){switch(t.ty){casefl:return a;casegf:return o;casegs:return n;casest:return h;casesh:caseel:caserc:casesr:return s;casetr:return r;caseno:return i;default:return null}}}}();function SVGShapeElement(t,e,r){this.shapes,this.shapesDatat.shapes,this.stylesList,this.shapeModifiers,this.itemsData,this.processedElements,this.animatedContents,this.initElement(t,e,r),this.prevViewData}function LetterProps(t,e,r,i,s,a){this.ot,this.swe,this.scr,this.fci,this.ms,this.pa,this._mdf{o:!0,sw:!!e,sc:!!r,fc:!!i,m:!0,p:!0}}function TextProperty(t,e){this._frameIdinitialDefaultFrame,this.pv,this.v,this.kf!1,this._isFirstFrame!0,this._mdf!1,this.datae,this.elemt,this.compthis.elem.comp,this.keysIndex0,this.canResize!1,this.minimumFontSize1,this.effectsSequence,this.currentData{ascent:0,boxWidth:this.defaultBoxWidth,f:,fStyle:,fWeight:,fc:,j:,justifyOffset:,l:,lh:0,lineWidths:,ls:,of:,s:,sc:,sw:0,t:0,tr:0,sz:0,ps:null,fillColorAnim:!1,strokeColorAnim:!1,strokeWidthAnim:!1,yOffset:0,finalSize:0,finalText:,finalLineHeight:0,__complete:!1},this.copyData(this.currentData,this.data.d.k0.s),this.searchProperty()||this.completeTextData(this.currentData)}extendPrototype(BaseElement,TransformElement,SVGBaseElement,IShapeElement,HierarchyElement,FrameElement,RenderableDOMElement,SVGShapeElement),SVGShapeElement.prototype.initSecondaryElementfunction(){},SVGShapeElement.prototype.identityMatrixnew Matrix,SVGShapeElement.prototype.buildExpressionInterfacefunction(){},SVGShapeElement.prototype.createContentfunction(){this.searchShapes(this.shapesData,this.itemsData,this.prevViewData,this.layerElement,0,,!0),this.filterUniqueShapes()},SVGShapeElement.prototype.filterUniqueShapesfunction(){var t,e,r,i,sthis.shapes.length,athis.stylesList.length,n,o!1;for(r0;ra;r+1){for(ithis.stylesListr,o!1,n.length0,t0;ts;t+1)-1!(ethis.shapest).styles.indexOf(i)&&(n.push(e),oe._isAnimated||o);n.length>1&&o&&this.setShapesAsAnimated(n)}},SVGShapeElement.prototype.setShapesAsAnimatedfunction(t){var e,rt.length;for(e0;er;e+1)te.setAsAnimated()},SVGShapeElement.prototype.createStyleElementfunction(t,e){var r,inew SVGStyleData(t,e),si.pElem;if(stt.ty)rnew SVGStrokeStyleData(this,t,i);else if(flt.ty)rnew SVGFillStyleData(this,t,i);else if(gft.ty||gst.ty){rnew(gft.ty?SVGGradientFillStyleData:SVGGradientStrokeStyleData)(this,t,i),this.globalData.defs.appendChild(r.gf),r.maskId&&(this.globalData.defs.appendChild(r.ms),this.globalData.defs.appendChild(r.of),s.setAttribute(mask,url(+getLocationHref()+#+r.maskId+)))}elsenot.ty&&(rnew SVGNoStyleData(this,t,i));returnst!t.ty&&gs!t.ty||(s.setAttribute(stroke-linecap,lineCapEnumt.lc||2),s.setAttribute(stroke-linejoin,lineJoinEnumt.lj||2),s.setAttribute(fill-opacity,0),1t.lj&&s.setAttribute(stroke-miterlimit,t.ml)),2t.r&&s.setAttribute(fill-rule,evenodd),t.ln&&s.setAttribute(id,t.ln),t.cl&&s.setAttribute(class,t.cl),t.bm&&(s.stylemix-blend-modegetBlendMode(t.bm)),this.stylesList.push(i),this.addToAnimatedContents(t,r),r},SVGShapeElement.prototype.createGroupElementfunction(t){var enew ShapeGroupData;return t.ln&&e.gr.setAttribute(id,t.ln),t.cl&&e.gr.setAttribute(class,t.cl),t.bm&&(e.gr.stylemix-blend-modegetBlendMode(t.bm)),e},SVGShapeElement.prototype.createTransformElementfunction(t,e){var rTransformPropertyFactory.getTransformProperty(this,t,this),inew SVGTransformData(r,r.o,e);return this.addToAnimatedContents(t,i),i},SVGShapeElement.prototype.createShapeElementfunction(t,e,r){var i4;rct.ty?i5:elt.ty?i6:srt.ty&&(i7);var snew SVGShapeData(e,r,ShapePropertyFactory.getShapeProp(this,t,i,this));return this.shapes.push(s),this.addShapeToModifiers(s),this.addToAnimatedContents(t,s),s},SVGShapeElement.prototype.addToAnimatedContentsfunction(t,e){for(var r0,ithis.animatedContents.length;ri;){if(this.animatedContentsr.elemente)return;r+1}this.animatedContents.push({fn:SVGElementsRenderer.createRenderFunction(t),element:e,data:t})},SVGShapeElement.prototype.setElementStylesfunction(t){var e,rt.styles,ithis.stylesList.length;for(e0;ei;e+1)this.stylesListe.closed||r.push(this.stylesListe)},SVGShapeElement.prototype.reloadShapesfunction(){var t;this._isFirstFrame!0;var ethis.itemsData.length;for(t0;te;t+1)this.prevViewDatatthis.itemsDatat;for(this.searchShapes(this.shapesData,this.itemsData,this.prevViewData,this.layerElement,0,,!0),this.filterUniqueShapes(),ethis.dynamicProperties.length,t0;te;t+1)this.dynamicPropertiest.getValue();this.renderModifiers()},SVGShapeElement.prototype.searchShapesfunction(t,e,r,i,s,a,n){var o,h,l,p,f,m,c.concat(a),dt.length-1,u,y;for(od;o>0;o-1){if((mthis.searchProcessedElement(to))?eorm-1:to._rendern,flto.ty||stto.ty||gfto.ty||gsto.ty||noto.ty)m?eo.style.closed!1:eothis.createStyleElement(to,s),to._render&&eo.style.pElem.parentNode!i&&i.appendChild(eo.style.pElem),u.push(eo.style);else if(grto.ty){if(m)for(leo.it.length,h0;hl;h+1)eo.prevViewDataheo.ith;else eothis.createGroupElement(to);this.searchShapes(to.it,eo.it,eo.prevViewData,eo.gr,s+1,c,n),to._render&&eo.gr.parentNode!i&&i.appendChild(eo.gr)}elsetrto.ty?(m||(eothis.createTransformElement(to,i)),peo.transform,c.push(p)):shto.ty||rcto.ty||elto.ty||srto.ty?(m||(eothis.createShapeElement(to,c,s)),this.setElementStyles(eo)):tmto.ty||rdto.ty||msto.ty||pbto.ty?(m?(feo).closed!1:((fShapeModifiers.getModifier(to.ty)).init(this,to),eof,this.shapeModifiers.push(f)),y.push(f)):rpto.ty&&(m?(feo).closed!0:(fShapeModifiers.getModifier(to.ty),eof,f.init(this,t,o,e),this.shapeModifiers.push(f),n!1),y.push(f));this.addProcessedElement(to,o+1)}for(du.length,o0;od;o+1)uo.closed!0;for(dy.length,o0;od;o+1)yo.closed!0},SVGShapeElement.prototype.renderInnerContentfunction(){var t;this.renderModifiers();var ethis.stylesList.length;for(t0;te;t+1)this.stylesListt.reset();for(this.renderShape(),t0;te;t+1)(this.stylesListt._mdf||this._isFirstFrame)&&(this.stylesListt.msElem&&(this.stylesListt.msElem.setAttribute(d,this.stylesListt.d),this.stylesListt.dM0 0+this.stylesListt.d),this.stylesListt.pElem.setAttribute(d,this.stylesListt.d||M0 0))},SVGShapeElement.prototype.renderShapefunction(){var t,e,rthis.animatedContents.length;for(t0;tr;t+1)ethis.animatedContentst,(this._isFirstFrame||e.element._isAnimated)&&!0!e.data&&e.fn(e.data,e.element,this._isFirstFrame)},SVGShapeElement.prototype.destroyfunction(){this.destroyBaseElement(),this.shapesDatanull,this.itemsDatanull},LetterProps.prototype.updatefunction(t,e,r,i,s,a){this._mdf.o!1,this._mdf.sw!1,this._mdf.sc!1,this._mdf.fc!1,this._mdf.m!1,this._mdf.p!1;var n!1;return this.o!t&&(this.ot,this._mdf.o!0,n!0),this.sw!e&&(this.swe,this._mdf.sw!0,n!0),this.sc!r&&(this.scr,this._mdf.sc!0,n!0),this.fc!i&&(this.fci,this._mdf.fc!0,n!0),this.m!s&&(this.ms,this._mdf.m!0,n!0),!a.length||this.p0a0&&this.p1a1&&this.p4a4&&this.p5a5&&this.p12a12&&this.p13a13||(this.pa,this._mdf.p!0,n!0),n},TextProperty.prototype.defaultBoxWidth0,0,TextProperty.prototype.copyDatafunction(t,e){for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&(trer);return t},TextProperty.prototype.setCurrentDatafunction(t){t.__complete||this.completeTextData(t),this.currentDatat,this.currentData.boxWidththis.currentData.boxWidth||this.defaultBoxWidth,this._mdf!0},TextProperty.prototype.searchPropertyfunction(){return this.searchKeyframes()},TextProperty.prototype.searchKeyframesfunction(){return this.kfthis.data.d.k.length>1,this.kf&&this.addEffect(this.getKeyframeValue.bind(this)),this.kf},TextProperty.prototype.addEffectfunction(t){this.effectsSequence.push(t),this.elem.addDynamicProperty(this)},TextProperty.prototype.getValuefunction(t){if(this.elem.globalData.frameId!this.frameId&&this.effectsSequence.length||t){this.currentData.tthis.data.d.kthis.keysIndex.s.t;var ethis.currentData,rthis.keysIndex;if(this.lock)this.setCurrentData(this.currentData);else{var i;this.lock!0,this._mdf!1;var sthis.effectsSequence.length,at||this.data.d.kthis.keysIndex.s;for(i0;is;i+1)ar!this.keysIndex?this.effectsSequencei(a,a.t):this.effectsSequencei(this.currentData,a.t);e!a&&this.setCurrentData(a),this.vthis.currentData,this.pvthis.v,this.lock!1,this.frameIdthis.elem.globalData.frameId}}},TextProperty.prototype.getKeyframeValuefunction(){for(var tthis.data.d.k,ethis.elem.comp.renderedFrame,r0,it.length;ri-1&&!(ri-1||tr+1.t>e);)r+1;return this.keysIndex!r&&(this.keysIndexr),this.data.d.kthis.keysIndex.s},TextProperty.prototype.buildFinalTextfunction(t){for(var e,r,i,s0,at.length,n!1;sa;)et.charCodeAt(s),FontManager.isCombinedCharacter(e)?ii.length-1+t.charAt(s):e>55296&&e56319?(rt.charCodeAt(s+1))>56320&&r57343?(n||FontManager.isModifier(e,r)?(ii.length-1+t.substr(s,2),n!1):i.push(t.substr(s,2)),s+1):i.push(t.charAt(s)):e>56319?(rt.charCodeAt(s+1),FontManager.isZeroWidthJoiner(e,r)?(n!0,ii.length-1+t.substr(s,2),s+1):i.push(t.charAt(s))):FontManager.isZeroWidthJoiner(e)?(ii.length-1+t.charAt(s),n!0):i.push(t.charAt(s)),s+1;return i},TextProperty.prototype.completeTextDatafunction(t){t.__complete!0;var e,r,i,s,a,n,o,hthis.elem.globalData.fontManager,lthis.data,p,f0,ml.m.g,c0,d0,u0,y,g0,v0,bh.getFontByName(t.f),P0,EgetFontProperties(b);t.fWeightE.weight,t.fStyleE.style,t.finalSizet.s,t.finalTextthis.buildFinalText(t.t),rt.finalText.length,t.finalLineHeightt.lh;var x,St.tr/1e3*t.finalSize;if(t.sz)for(var _,C,A!0,Tt.sz0,kt.sz1;A;){_0,g0,r(Cthis.buildFinalText(t.t)).length,St.tr/1e3*t.finalSize;var D-1;for(e0;er;e+1)xCe.charCodeAt(0),i!1, Ce?De:13!x&&3!x||(g0,i!0,_+t.finalLineHeight||1.2*t.finalSize),h.chars?(oh.getCharData(Ce,b.fStyle,b.fFamily),Pi?0:o.w*t.finalSize/100):Ph.measureText(Ce,t.f,t.finalSize),g+P>T&& !Ce?(-1D?r+1:eD,_+t.finalLineHeight||1.2*t.finalSize,C.splice(e,De?1:0,\r),D-1,g0):(g+P,g+S);_+b.ascent*t.finalSize/100,this.canResize&&t.finalSize>this.minimumFontSize&&k_?(t.finalSize-1,t.finalLineHeightt.finalSize*t.lh/t.s):(t.finalTextC,rt.finalText.length,A!1)}g-S,P0;var M,F0;for(e0;er;e+1)if(i!1,13(x(Mt.finalTexte).charCodeAt(0))||3x?(F0,y.push(g),vg>v?g:v,g-2*S,s,i!0,u+1):sM,h.chars?(oh.getCharData(M,b.fStyle,h.getFontByName(t.f).fFamily),Pi?0:o.w*t.finalSize/100):Ph.measureText(s,t.f,t.finalSize), M?F+P+S:(g+P+S+F,F0),p.push({l:P,an:P,add:c,n:i,anIndexes:,val:s,line:u,animatorJustifyOffset:0}),2m){if(c+P,s|| s||er-1){for(!s&& !s||(c-P);de;)pd.anc,pd.indf,pd.extraP,d+1;f+1,c0}}else if(3m){if(c+P,s||er-1){for(s&&(c-P);de;)pd.anc,pd.indf,pd.extraP,d+1;c0,f+1}}else pf.indf,pf.extra0,f+1;if(t.lp,vg>v?g:v,y.push(g),t.sz)t.boxWidtht.sz0,t.justifyOffset0;else switch(t.boxWidthv,t.j){case 1:t.justifyOffset-t.boxWidth;break;case 2:t.justifyOffset-t.boxWidth/2;break;default:t.justifyOffset0}t.lineWidthsy;var w,I,V,B,Rl.a;nR.length;var L;for(a0;an;a+1){for((wRa).a.sc&&(t.strokeColorAnim!0),w.a.sw&&(t.strokeWidthAnim!0),(w.a.fc||w.a.fh||w.a.fs||w.a.fb)&&(t.fillColorAnim!0),B0,Vw.s.b,e0;er;e+1)(Ipe).anIndexesaB,(1V&&!I.val||2V&&!I.val&& !I.val||3V&&(I.n|| I.val||er-1)||4V&&(I.n||er-1))&&(1w.s.rn&&L.push(B),B+1);l.aa.s.totalCharsB;var G,z-1;if(1w.s.rn)for(e0;er;e+1)z!(Ipe).anIndexesa&&(zI.anIndexesa,GL.splice(Math.floor(Math.random()*L.length),1)0),I.anIndexesaG}t.yOffsett.finalLineHeight||1.2*t.finalSize,t.lst.ls||0,t.ascentb.ascent*t.finalSize/100},TextProperty.prototype.updateDocumentDatafunction(t,e){evoid 0e?this.keysIndex:e;var rthis.copyData({},this.data.d.ke.s);rthis.copyData(r,t),this.data.d.ke.sr,this.recalculate(e),this.elem.addDynamicProperty(this)},TextProperty.prototype.recalculatefunction(t){var ethis.data.d.kt.s;e.__complete!1,this.keysIndex0,this._isFirstFrame!0,this.getValue(e)},TextProperty.prototype.canResizeFontfunction(t){this.canResizet,this.recalculate(this.keysIndex),this.elem.addDynamicProperty(this)},TextProperty.prototype.setMinimumFontSizefunction(t){this.minimumFontSizeMath.floor(t)||1,this.recalculate(this.keysIndex),this.elem.addDynamicProperty(this)};var TextSelectorPropfunction(){var tMath.max,eMath.min,rMath.floor;function i(t,e){this._currentTextLength-1,this.k!1,this.datae,this.elemt,this.compt.comp,this.finalS0,this.finalE0,this.initDynamicPropertyContainer(t),this.sPropertyFactory.getProp(t,e.s||{k:0},0,0,this),this.eein e?PropertyFactory.getProp(t,e.e,0,0,this):{v:100},this.oPropertyFactory.getProp(t,e.o||{k:0},0,0,this),this.xePropertyFactory.getProp(t,e.xe||{k:0},0,0,this),this.nePropertyFactory.getProp(t,e.ne||{k:0},0,0,this),this.smPropertyFactory.getProp(t,e.sm||{k:100},0,0,this),this.aPropertyFactory.getProp(t,e.a,0,.01,this),this.dynamicProperties.length||this.getValue()}return i.prototype{getMult:function(i){this._currentTextLength!this.elem.textProperty.currentData.l.length&&this.getValue();var s0,a0,n1,o1;this.ne.v>0?sthis.ne.v/100:a-this.ne.v/100,this.xe.v>0?n1-this.xe.v/100:o1+this.xe.v/100;var hBezierFactory.getBezierEasing(s,a,n,o).get,l0,pthis.finalS,fthis.finalE,mthis.data.sh;if(2m)lh(lfp?i>f?1:0:t(0,e(.5/(f-p)+(i-p)/(f-p),1)));else if(3m)lh(lfp?i>f?0:1:1-t(0,e(.5/(f-p)+(i-p)/(f-p),1)));else if(4m)fp?l0:(lt(0,e(.5/(f-p)+(i-p)/(f-p),1))).5?l*2:l1-2*(l-.5),lh(l);else if(5m){if(fp)l0;else{var cf-p,d-c/2+(ie(t(0,i+.5-p),f-p)),uc/2;lMath.sqrt(1-d*d/(u*u))}lh(l)}else 6m?(fp?l0:(ie(t(0,i+.5-p),f-p),l(1+Math.cos(Math.PI+2*Math.PI*i/(f-p)))/2),lh(l)):(i>r(p)&&(lt(0,e(i-p0?e(f,1)-(p-i):f-i,1))),lh(l));if(100!this.sm.v){var y.01*this.sm.v;0y&&(y1e-8);var g.5-.5*y;lg?l0:(l(l-g)/y)>1&&(l1)}return l*this.a.v},getValue:function(t){this.iterateDynamicProperties(),this._mdft||this._mdf,this._currentTextLengththis.elem.textProperty.currentData.l.length||0,t&&2this.data.r&&(this.e.vthis._currentTextLength);var e2this.data.r?1:100/this.data.totalChars,rthis.o.v/e,ithis.s.v/e+r,sthis.e.v/e+r;if(i>s){var ai;is,sa}this.finalSi,this.finalEs}},extendPrototype(DynamicPropertyContainer,i),{getTextSelectorProp:function(t,e,r){return new i(t,e,r)}}}();function TextAnimatorDataProperty(t,e,r){var i{propType:!1},sPropertyFactory.getProp,ae.a;this.a{r:a.r?s(t,a.r,0,degToRads,r):i,rx:a.rx?s(t,a.rx,0,degToRads,r):i,ry:a.ry?s(t,a.ry,0,degToRads,r):i,sk:a.sk?s(t,a.sk,0,degToRads,r):i,sa:a.sa?s(t,a.sa,0,degToRads,r):i,s:a.s?s(t,a.s,1,.01,r):i,a:a.a?s(t,a.a,1,0,r):i,o:a.o?s(t,a.o,0,.01,r):i,p:a.p?s(t,a.p,1,0,r):i,sw:a.sw?s(t,a.sw,0,0,r):i,sc:a.sc?s(t,a.sc,1,0,r):i,fc:a.fc?s(t,a.fc,1,0,r):i,fh:a.fh?s(t,a.fh,0,0,r):i,fs:a.fs?s(t,a.fs,0,.01,r):i,fb:a.fb?s(t,a.fb,0,.01,r):i,t:a.t?s(t,a.t,0,0,r):i},this.sTextSelectorProp.getTextSelectorProp(t,e.s,r),this.s.te.s.t}function TextAnimatorProperty(t,e,r){this._isFirstFrame!0,this._hasMaskedPath!1,this._frameId-1,this._textDatat,this._renderTypee,this._elemr,this._animatorsDatacreateSizedArray(this._textData.a.length),this._pathData{},this._moreOptions{alignment:{}},this.renderedLetters,this.lettersChangedFlag!1,this.initDynamicPropertyContainer(r)}function ITextElement(){}TextAnimatorProperty.prototype.searchPropertiesfunction(){var t,e,rthis._textData.a.length,iPropertyFactory.getProp;for(t0;tr;t+1)ethis._textData.at,this._animatorsDatatnew TextAnimatorDataProperty(this._elem,e,this);this._textData.p&&min this._textData.p?(this._pathData{a:i(this._elem,this._textData.p.a,0,0,this),f:i(this._elem,this._textData.p.f,0,0,this),l:i(this._elem,this._textData.p.l,0,0,this),r:i(this._elem,this._textData.p.r,0,0,this),p:i(this._elem,this._textData.p.p,0,0,this),m:this._elem.maskManager.getMaskProperty(this._textData.p.m)},this._hasMaskedPath!0):this._hasMaskedPath!1,this._moreOptions.alignmenti(this._elem,this._textData.m.a,1,0,this)},TextAnimatorProperty.prototype.getMeasuresfunction(t,e){if(this.lettersChangedFlage,this._mdf||this._isFirstFrame||e||this._hasMaskedPath&&this._pathData.m._mdf){this._isFirstFrame!1;var r,i,s,a,n,o,h,l,p,f,m,c,d,u,y,g,v,b,P,Ethis._moreOptions.alignment.v,xthis._animatorsData,Sthis._textData,_this.mHelper,Cthis._renderType,Athis.renderedLetters.length,Tt.l;if(this._hasMaskedPath){if(Pthis._pathData.m,!this._pathData.n||this._pathData._mdf){var k,DP.v;for(this._pathData.r.v&&(DD.reverse()),n{tLength:0,segments:},aD._length-1,g0,s0;sa;s+1)kbez.buildBezierData(D.vs,D.vs+1,D.os0-D.vs0,D.os1-D.vs1,D.is+10-D.vs+10,D.is+11-D.vs+11),n.tLength+k.segmentLength,n.segments.push(k),g+k.segmentLength;sa,P.v.c&&(kbez.buildBezierData(D.vs,D.v0,D.os0-D.vs0,D.os1-D.vs1,D.i00-D.v00,D.i01-D.v01),n.tLength+k.segmentLength,n.segments.push(k),g+k.segmentLength),this._pathData.pin}if(nthis._pathData.pi,othis._pathData.f.v,m0,f1,l0,p!0,un.segments,o0&&P.v.c)for(n.tLengthMath.abs(o)&&(o-Math.abs(o)%n.tLength),f(dumu.length-1.points).length-1;o0;)o+df.partialLength,(f-1)0&&(f(dum-1.points).length-1);c(dum.points)f-1,y(hdf).partialLength}aT.length,r0,i0;var M,F,w,I,V,B1.2*t.finalSize*.714,R!0;wx.length;var L,G,z,N,O,H,j,q,W,$,Y,X,K-1,Jo,Zm,Uf,Q-1,tt,etthis.defaultPropsArray;if(2t.j||1t.j){var rt0,it0,st2t.j?-.5:-1,at0,nt!0;for(s0;sa;s+1)if(Ts.n){for(rt&&(rt+it);ats;)Tat.animatorJustifyOffsetrt,at+1;rt0,nt!0}else{for(F0;Fw;F+1)(MxF.a).t.propType&&(nt&&2t.j&&(it+M.t.v*st),(VxF.s.getMult(Ts.anIndexesF,S.aF.s.totalChars)).length?rt+M.t.v*V0*st:rt+M.t.v*V*st);nt!1}for(rt&&(rt+it);ats;)Tat.animatorJustifyOffsetrt,at+1}for(s0;sa;s+1){if(_.reset(),N1,Ts.n)r0,i+t.yOffset,i+R?1:0,oJ,R!1,this._hasMaskedPath&&(fU,c(dumZ.points)f-1,y(hdf).partialLength,l0),tt,Y,W,X,etthis.defaultPropsArray;else{if(this._hasMaskedPath){if(Q!Ts.line){switch(t.j){case 1:o+g-t.lineWidthsTs.line;break;case 2:o+(g-t.lineWidthsTs.line)/2}QTs.line}K!Ts.ind&&(TK&&(o+TK.extra),o+Ts.an/2,KTs.ind),o+E0*Ts.an*.005;var ot0;for(F0;Fw;F+1)(MxF.a).p.propType&&((VxF.s.getMult(Ts.anIndexesF,S.aF.s.totalChars)).length?ot+M.p.v0*V0:ot+M.p.v0*V),M.a.propType&&((VxF.s.getMult(Ts.anIndexesF,S.aF.s.totalChars)).length?ot+M.a.v0*V0:ot+M.a.v0*V);for(p!0,this._pathData.a.v&&(o.5*T0.an+(g-this._pathData.f.v-.5*T0.an-.5*TT.length-1.an)*K/(a-1),o+this._pathData.f.v);p;)l+y>o+ot||!d?(v(o+ot-l)/h.partialLength,Gc.point0+(h.point0-c.point0)*v,zc.point1+(h.point1-c.point1)*v,_.translate(-E0*Ts.an*.005,-E1*B*.01),p!1):d&&(l+h.partialLength,(f+1)>d.length&&(f0,um+1?dum.points:P.v.c?(f0,dum0.points):(l-h.partialLength,dnull)),d&&(ch,y(hdf).partialLength));LTs.an/2-Ts.add,_.translate(-L,0,0)}else LTs.an/2-Ts.add,_.translate(-L,0,0),_.translate(-E0*Ts.an*.005,-E1*B*.01,0);for(F0;Fw;F+1)(MxF.a).t.propType&&(VxF.s.getMult(Ts.anIndexesF,S.aF.s.totalChars),0r&&0t.j||(this._hasMaskedPath?V.length?o+M.t.v*V0:o+M.t.v*V:V.length?r+M.t.v*V0:r+M.t.v*V));for(t.strokeWidthAnim&&(Ht.sw||0),t.strokeColorAnim&&(Ot.sc?t.sc0,t.sc1,t.sc2:0,0,0),t.fillColorAnim&&t.fc&&(jt.fc0,t.fc1,t.fc2),F0;Fw;F+1)(MxF.a).a.propType&&((VxF.s.getMult(Ts.anIndexesF,S.aF.s.totalChars)).length?_.translate(-M.a.v0*V0,-M.a.v1*V1,M.a.v2*V2):_.translate(-M.a.v0*V,-M.a.v1*V,M.a.v2*V));for(F0;Fw;F+1)(MxF.a).s.propType&&((VxF.s.getMult(Ts.anIndexesF,S.aF.s.totalChars)).length?_.scale(1+(M.s.v0-1)*V0,1+(M.s.v1-1)*V1,1):_.scale(1+(M.s.v0-1)*V,1+(M.s.v1-1)*V,1));for(F0;Fw;F+1){if(MxF.a,VxF.s.getMult(Ts.anIndexesF,S.aF.s.totalChars),M.sk.propType&&(V.length?_.skewFromAxis(-M.sk.v*V0,M.sa.v*V1):_.skewFromAxis(-M.sk.v*V,M.sa.v*V)),M.r.propType&&(V.length?_.rotateZ(-M.r.v*V2):_.rotateZ(-M.r.v*V)),M.ry.propType&&(V.length?_.rotateY(M.ry.v*V1):_.rotateY(M.ry.v*V)),M.rx.propType&&(V.length?_.rotateX(M.rx.v*V0):_.rotateX(M.rx.v*V)),M.o.propType&&(V.length?N+(M.o.v*V0-N)*V0:N+(M.o.v*V-N)*V),t.strokeWidthAnim&&M.sw.propType&&(V.length?H+M.sw.v*V0:H+M.sw.v*V),t.strokeColorAnim&&M.sc.propType)for(q0;q3;q+1)V.length?Oq+(M.sc.vq-Oq)*V0:Oq+(M.sc.vq-Oq)*V;if(t.fillColorAnim&&t.fc){if(M.fc.propType)for(q0;q3;q+1)V.length?jq+(M.fc.vq-jq)*V0:jq+(M.fc.vq-jq)*V;M.fh.propType&&(jV.length?addHueToRGB(j,M.fh.v*V0):addHueToRGB(j,M.fh.v*V)),M.fs.propType&&(jV.length?addSaturationToRGB(j,M.fs.v*V0):addSaturationToRGB(j,M.fs.v*V)),M.fb.propType&&(jV.length?addBrightnessToRGB(j,M.fb.v*V0):addBrightnessToRGB(j,M.fb.v*V))}}for(F0;Fw;F+1)(MxF.a).p.propType&&(VxF.s.getMult(Ts.anIndexesF,S.aF.s.totalChars),this._hasMaskedPath?V.length?_.translate(0,M.p.v1*V0,-M.p.v2*V1):_.translate(0,M.p.v1*V,-M.p.v2*V):V.length?_.translate(M.p.v0*V0,M.p.v1*V1,-M.p.v2*V2):_.translate(M.p.v0*V,M.p.v1*V,-M.p.v2*V));if(t.strokeWidthAnim&&(WH0?0:H),t.strokeColorAnim&&($rgb(+Math.round(255*O0)+,+Math.round(255*O1)+,+Math.round(255*O2)+)),t.fillColorAnim&&t.fc&&(Yrgb(+Math.round(255*j0)+,+Math.round(255*j1)+,+Math.round(255*j2)+)),this._hasMaskedPath){if(_.translate(0,-t.ls),_.translate(0,E1*B*.01+i,0),this._pathData.p.v){b(h.point1-c.point1)/(h.point0-c.point0);var ht180*Math.atan(b)/Math.PI;h.point0c.point0&&(ht+180),_.rotate(-ht*Math.PI/180)}_.translate(G,z,0),o-E0*Ts.an*.005,Ts+1&&K!Ts+1.ind&&(o+Ts.an/2,o+.001*t.tr*t.finalSize)}else{switch(_.translate(r,i,0),t.ps&&_.translate(t.ps0,t.ps1+t.ascent,0),t.j){case 1:_.translate(Ts.animatorJustifyOffset+t.justifyOffset+(t.boxWidth-t.lineWidthsTs.line),0,0);break;case 2:_.translate(Ts.animatorJustifyOffset+t.justifyOffset+(t.boxWidth-t.lineWidthsTs.line)/2,0,0)}_.translate(0,-t.ls),_.translate(L,0,0),_.translate(E0*Ts.an*.005,E1*B*.01,0),r+Ts.l+.001*t.tr*t.finalSize}htmlC?tt_.toCSS():svgC?tt_.to2dCSS():et_.props0,_.props1,_.props2,_.props3,_.props4,_.props5,_.props6,_.props7,_.props8,_.props9,_.props10,_.props11,_.props12,_.props13,_.props14,_.props15,XN}As?(Inew LetterProps(X,W,$,Y,tt,et),this.renderedLetters.push(I),A+1,this.lettersChangedFlag!0):(Ithis.renderedLetterss,this.lettersChangedFlagI.update(X,W,$,Y,tt,et)||this.lettersChangedFlag)}}},TextAnimatorProperty.prototype.getValuefunction(){this._elem.globalData.frameId!this._frameId&&(this._frameIdthis._elem.globalData.frameId,this.iterateDynamicProperties())},TextAnimatorProperty.prototype.mHelpernew Matrix,TextAnimatorProperty.prototype.defaultPropsArray,extendPrototype(DynamicPropertyContainer,TextAnimatorProperty),ITextElement.prototype.initElementfunction(t,e,r){this.lettersChangedFlag!0,this.initFrame(),this.initBaseData(t,e,r),this.textPropertynew TextProperty(this,t.t,this.dynamicProperties),this.textAnimatornew TextAnimatorProperty(t.t,this.renderType,this),this.initTransform(t,e,r),this.initHierarchy(),this.initRenderable(),this.initRendererElement(),this.createContainerElements(),this.createRenderableComponents(),this.createContent(),this.hide(),this.textAnimator.searchProperties(this.dynamicProperties)},ITextElement.prototype.prepareFramefunction(t){this._mdf!1,this.prepareRenderableFrame(t),this.prepareProperties(t,this.isInRange),(this.textProperty._mdf||this.textProperty._isFirstFrame)&&(this.buildNewText(),this.textProperty._isFirstFrame!1,this.textProperty._mdf!1)},ITextElement.prototype.createPathShapefunction(t,e){var r,i,se.length,a;for(r0;rs;r+1)sher.ty&&(ier.ks.k,a+buildShapeString(i,i.i.length,!0,t));return a},ITextElement.prototype.updateDocumentDatafunction(t,e){this.textProperty.updateDocumentData(t,e)},ITextElement.prototype.canResizeFontfunction(t){this.textProperty.canResizeFont(t)},ITextElement.prototype.setMinimumFontSizefunction(t){this.textProperty.setMinimumFontSize(t)},ITextElement.prototype.applyTextPropertiesToMatrixfunction(t,e,r,i,s){switch(t.ps&&e.translate(t.ps0,t.ps1+t.ascent,0),e.translate(0,-t.ls,0),t.j){case 1:e.translate(t.justifyOffset+(t.boxWidth-t.lineWidthsr),0,0);break;case 2:e.translate(t.justifyOffset+(t.boxWidth-t.lineWidthsr)/2,0,0)}e.translate(i,s,0)},ITextElement.prototype.buildColorfunction(t){returnrgb(+Math.round(255*t0)+,+Math.round(255*t1)+,+Math.round(255*t2)+)},ITextElement.prototype.emptyPropnew LetterProps,ITextElement.prototype.destroyfunction(){};var emptyShapeData{shapes:};function SVGTextLottieElement(t,e,r){this.textSpans,this.renderTypesvg,this.initElement(t,e,r)}function ISolidElement(t,e,r){this.initElement(t,e,r)}function NullElement(t,e,r){this.initFrame(),this.initBaseData(t,e,r),this.initFrame(),this.initTransform(t,e,r),this.initHierarchy()}function SVGRendererBase(){}function ICompElement(){}function SVGCompElement(t,e,r){this.layerst.layers,this.supports3d!0,this.completeLayers!1,this.pendingElements,this.elementsthis.layers?createSizedArray(this.layers.length):,this.initElement(t,e,r),this.tmt.tm?PropertyFactory.getProp(this,t.tm,0,e.frameRate,this):{_placeholder:!0}}function SVGRenderer(t,e){this.animationItemt,this.layersnull,this.renderedFrame-1,this.svgElementcreateNS(svg);var r;if(e&&e.title){var icreateNS(title),screateElementID();i.setAttribute(id,s),i.textContente.title,this.svgElement.appendChild(i),r+s}if(e&&e.description){var acreateNS(desc),ncreateElementID();a.setAttribute(id,n),a.textContente.description,this.svgElement.appendChild(a),r+ +n}r&&this.svgElement.setAttribute(aria-labelledby,r);var ocreateNS(defs);this.svgElement.appendChild(o);var hcreateNS(g);this.svgElement.appendChild(h),this.layerElementh,this.renderConfig{preserveAspectRatio:e&&e.preserveAspectRatio||xMidYMid meet,imagePreserveAspectRatio:e&&e.imagePreserveAspectRatio||xMidYMid slice,contentVisibility:e&&e.contentVisibility||visible,progressiveLoad:e&&e.progressiveLoad||!1,hideOnTransparent:!(e&&!1e.hideOnTransparent),viewBoxOnly:e&&e.viewBoxOnly||!1,viewBoxSize:e&&e.viewBoxSize||!1,className:e&&e.className||,id:e&&e.id||,focusable:e&&e.focusable,filterSize:{width:e&&e.filterSize&&e.filterSize.width||100%,height:e&&e.filterSize&&e.filterSize.height||100%,x:e&&e.filterSize&&e.filterSize.x||0%,y:e&&e.filterSize&&e.filterSize.y||0%},width:e&&e.width,height:e&&e.height},this.globalData{_mdf:!1,frameNum:-1,defs:o,renderConfig:this.renderConfig},this.elements,this.pendingElements,this.destroyed!1,this.rendererTypesvg}function CVContextData(){var t;this.saved,this.cArrPos0,this.cTrnew Matrix,this.cO1;for(this.savedOpcreateTypedArray(float32,15),t0;t15;t+1)this.savedtcreateTypedArray(float32,16);this._length15}function ShapeTransformManager(){this.sequences{},this.sequenceList,this.transform_key_count0}function CVEffects(){}function CVMaskElement(t,e){var r;this.datat,this.elemente,this.masksPropertiesthis.data.masksProperties||,this.viewDatacreateSizedArray(this.masksProperties.length);var ithis.masksProperties.length,s!1;for(r0;ri;r+1)n!this.masksPropertiesr.mode&&(s!0),this.viewDatarShapePropertyFactory.getShapeProp(this.element,this.masksPropertiesr,3);this.hasMaskss,s&&this.element.addRenderableComponent(this)}function CVBaseElement(){}function CVShapeData(t,e,r,i){this.styledShapes,this.tr0,0,0,0,0,0;var s,a4;rce.ty?a5:ele.ty?a6:sre.ty&&(a7),this.shShapePropertyFactory.getShapeProp(t,e,a,t);var n,or.length;for(s0;so;s+1)rs.closed||(n{transforms:i.addTransformSequence(rs.transforms),trNodes:},this.styledShapes.push(n),rs.elements.push(n))}function CVShapeElement(t,e,r){this.shapes,this.shapesDatat.shapes,this.stylesList,this.itemsData,this.prevViewData,this.shapeModifiers,this.processedElements,this.transformsManagernew ShapeTransformManager,this.initElement(t,e,r)}function CVTextElement(t,e,r){this.textSpans,this.yOffset0,this.fillColorAnim!1,this.strokeColorAnim!1,this.strokeWidthAnim!1,this.stroke!1,this.fill!1,this.justifyOffset0,this.currentRendernull,this.renderTypecanvas,this.values{fill:rgba(0,0,0,0),stroke:rgba(0,0,0,0),sWidth:0,fValue:},this.initElement(t,e,r)}function CVImageElement(t,e,r){this.assetDatae.getAssetData(t.refId),this.imge.imageLoader.getAsset(this.assetData),this.initElement(t,e,r)}function CVSolidElement(t,e,r){this.initElement(t,e,r)}function CanvasRendererBase(t,e){this.animationItemt,this.renderConfig{clearCanvas:!e||void 0e.clearCanvas||e.clearCanvas,context:e&&e.context||null,progressiveLoad:e&&e.progressiveLoad||!1,preserveAspectRatio:e&&e.preserveAspectRatio||xMidYMid meet,imagePreserveAspectRatio:e&&e.imagePreserveAspectRatio||xMidYMid slice,contentVisibility:e&&e.contentVisibility||visible,className:e&&e.className||,id:e&&e.id||},this.renderConfig.dpre&&e.dpr||1,this.animationItem.wrapper&&(this.renderConfig.dpre&&e.dpr||window.devicePixelRatio||1),this.renderedFrame-1,this.globalData{frameNum:-1,_mdf:!1,renderConfig:this.renderConfig,currentGlobalAlpha:-1},this.contextDatanew CVContextData,this.elements,this.pendingElements,this.transformMatnew Matrix,this.completeLayers!1,this.rendererTypecanvas}function CVCompElement(t,e,r){this.completeLayers!1,this.layerst.layers,this.pendingElements,this.elementscreateSizedArray(this.layers.length),this.initElement(t,e,r),this.tmt.tm?PropertyFactory.getProp(this,t.tm,0,e.frameRate,this):{_placeholder:!0}}function CanvasRenderer(t,e){this.animationItemt,this.renderConfig{clearCanvas:!e||void 0e.clearCanvas||e.clearCanvas,context:e&&e.context||null,progressiveLoad:e&&e.progressiveLoad||!1,preserveAspectRatio:e&&e.preserveAspectRatio||xMidYMid meet,imagePreserveAspectRatio:e&&e.imagePreserveAspectRatio||xMidYMid slice,contentVisibility:e&&e.contentVisibility||visible,className:e&&e.className||,id:e&&e.id||},this.renderConfig.dpre&&e.dpr||1,this.animationItem.wrapper&&(this.renderConfig.dpre&&e.dpr||window.devicePixelRatio||1),this.renderedFrame-1,this.globalData{frameNum:-1,_mdf:!1,renderConfig:this.renderConfig,currentGlobalAlpha:-1},this.contextDatanew CVContextData,this.elements,this.pendingElements,this.transformMatnew Matrix,this.completeLayers!1,this.rendererTypecanvas}function HBaseElement(){}function HSolidElement(t,e,r){this.initElement(t,e,r)}function HShapeElement(t,e,r){this.shapes,this.shapesDatat.shapes,this.stylesList,this.shapeModifiers,this.itemsData,this.processedElements,this.animatedContents,this.shapesContainercreateNS(g),this.initElement(t,e,r),this.prevViewData,this.currentBBox{x:999999,y:-999999,h:0,w:0}}function HTextElement(t,e,r){this.textSpans,this.textPaths,this.currentBBox{x:999999,y:-999999,h:0,w:0},this.renderTypesvg,this.isMasked!1,this.initElement(t,e,r)}function HCameraElement(t,e,r){this.initFrame(),this.initBaseData(t,e,r),this.initHierarchy();var iPropertyFactory.getProp;if(this.pei(this,t.pe,0,0,this),t.ks.p.s?(this.pxi(this,t.ks.p.x,1,0,this),this.pyi(this,t.ks.p.y,1,0,this),this.pzi(this,t.ks.p.z,1,0,this)):this.pi(this,t.ks.p,1,0,this),t.ks.a&&(this.ai(this,t.ks.a,1,0,this)),t.ks.or.k.length&&t.ks.or.k0.to){var s,at.ks.or.k.length;for(s0;sa;s+1)t.ks.or.ks.tonull,t.ks.or.ks.tinull}this.ori(this,t.ks.or,1,degToRads,this),this.or.sh!0,this.rxi(this,t.ks.rx,0,degToRads,this),this.ryi(this,t.ks.ry,0,degToRads,this),this.rzi(this,t.ks.rz,0,degToRads,this),this.matnew Matrix,this._prevMatnew Matrix,this._isFirstFrame!0,this.finalTransform{mProp:this}}function HImageElement(t,e,r){this.assetDatae.getAssetData(t.refId),this.initElement(t,e,r)}function HybridRendererBase(t,e){this.animationItemt,this.layersnull,this.renderedFrame-1,this.renderConfig{className:e&&e.className||,imagePreserveAspectRatio:e&&e.imagePreserveAspectRatio||xMidYMid slice,hideOnTransparent:!(e&&!1e.hideOnTransparent),filterSize:{width:e&&e.filterSize&&e.filterSize.width||400%,height:e&&e.filterSize&&e.filterSize.height||400%,x:e&&e.filterSize&&e.filterSize.x||-100%,y:e&&e.filterSize&&e.filterSize.y||-100%}},this.globalData{_mdf:!1,frameNum:-1,renderConfig:this.renderConfig},this.pendingElements,this.elements,this.threeDElements,this.destroyed!1,this.cameranull,this.supports3d!0,this.rendererTypehtml}function HCompElement(t,e,r){this.layerst.layers,this.supports3d!t.hasMask,this.completeLayers!1,this.pendingElements,this.elementsthis.layers?createSizedArray(this.layers.length):,this.initElement(t,e,r),this.tmt.tm?PropertyFactory.getProp(this,t.tm,0,e.frameRate,this):{_placeholder:!0}}function HybridRenderer(t,e){this.animationItemt,this.layersnull,this.renderedFrame-1,this.renderConfig{className:e&&e.className||,imagePreserveAspectRatio:e&&e.imagePreserveAspectRatio||xMidYMid slice,hideOnTransparent:!(e&&!1e.hideOnTransparent),filterSize:{width:e&&e.filterSize&&e.filterSize.width||400%,height:e&&e.filterSize&&e.filterSize.height||400%,x:e&&e.filterSize&&e.filterSize.x||-100%,y:e&&e.filterSize&&e.filterSize.y||-100%}},this.globalData{_mdf:!1,frameNum:-1,renderConfig:this.renderConfig},this.pendingElements,this.elements,this.threeDElements,this.destroyed!1,this.cameranull,this.supports3d!0,this.rendererTypehtml}extendPrototype(BaseElement,TransformElement,SVGBaseElement,HierarchyElement,FrameElement,RenderableDOMElement,ITextElement,SVGTextLottieElement),SVGTextLottieElement.prototype.createContentfunction(){this.data.singleShape&&!this.globalData.fontManager.chars&&(this.textContainercreateNS(text))},SVGTextLottieElement.prototype.buildTextContentsfunction(t){for(var e0,rt.length,i,s;er;)teString.fromCharCode(13)||teString.fromCharCode(3)?(i.push(s),s):s+te,e+1;return i.push(s),i},SVGTextLottieElement.prototype.buildShapeDatafunction(t,e){if(t.shapes&&t.shapes.length){var rt.shapes0;if(r.it){var ir.itr.it.length-1;i.s&&(i.s.k0e,i.s.k1e)}}return t},SVGTextLottieElement.prototype.buildNewTextfunction(){var t,e;this.addDynamicProperty(this);var rthis.textProperty.currentData;this.renderedLetterscreateSizedArray(r?r.l.length:0),r.fc?this.layerElement.setAttribute(fill,this.buildColor(r.fc)):this.layerElement.setAttribute(fill,rgba(0,0,0,0)),r.sc&&(this.layerElement.setAttribute(stroke,this.buildColor(r.sc)),this.layerElement.setAttribute(stroke-width,r.sw)),this.layerElement.setAttribute(font-size,r.finalSize);var ithis.globalData.fontManager.getFontByName(r.f);if(i.fClass)this.layerElement.setAttribute(class,i.fClass);else{this.layerElement.setAttribute(font-family,i.fFamily);var sr.fWeight,ar.fStyle;this.layerElement.setAttribute(font-style,a),this.layerElement.setAttribute(font-weight,s)}this.layerElement.setAttribute(aria-label,r.t);var n,or.l||,h!!this.globalData.fontManager.chars;eo.length;var lthis.mHelper,pthis.data.singleShape,f0,m0,c!0,d.001*r.tr*r.finalSize;if(!p||h||r.sz){var u,ythis.textSpans.length;for(t0;te;t+1){if(this.textSpanst||(this.textSpanst{span:null,childSpan:null,glyph:null}),!h||!p||0t){if(ny>t?this.textSpanst.span:createNS(h?g:text),yt){if(n.setAttribute(stroke-linecap,butt),n.setAttribute(stroke-linejoin,round),n.setAttribute(stroke-miterlimit,4),this.textSpanst.spann,h){var gcreateNS(g);n.appendChild(g),this.textSpanst.childSpang}this.textSpanst.spann,this.layerElement.appendChild(n)}n.style.displayinherit}if(l.reset(),p&&(ot.n&&(f-d,m+r.yOffset,m+c?1:0,c!1),this.applyTextPropertiesToMatrix(r,l,ot.line,f,m),f+ot.l||0,f+d),h){var v;if(1(uthis.globalData.fontManager.getCharData(r.finalTextt,i.fStyle,this.globalData.fontManager.getFontByName(r.f).fFamily)).t)vnew SVGCompElement(u.data,this.globalData,this);else{var bemptyShapeData;u.data&&u.data.shapes&&(bthis.buildShapeData(u.data,r.finalSize)),vnew SVGShapeElement(b,this.globalData,this)}if(this.textSpanst.glyph){var Pthis.textSpanst.glyph;this.textSpanst.childSpan.removeChild(P.layerElement),P.destroy()}this.textSpanst.glyphv,v._debug!0,v.prepareFrame(0),v.renderFrame(),this.textSpanst.childSpan.appendChild(v.layerElement),1u.t&&this.textSpanst.childSpan.setAttribute(transform,scale(+r.finalSize/100+,+r.finalSize/100+))}else p&&n.setAttribute(transform,translate(+l.props12+,+l.props13+)),n.textContentot.val,n.setAttributeNS(http://www.w3.org/XML/1998/namespace,xml:space,preserve)}p&&n&&n.setAttribute(d,)}else{var Ethis.textContainer,xstart;switch(r.j){case 1:xend;break;case 2:xmiddle;break;default:xstart}E.setAttribute(text-anchor,x),E.setAttribute(letter-spacing,d);var Sthis.buildTextContents(r.finalText);for(eS.length,mr.ps?r.ps1+r.ascent:0,t0;te;t+1)(nthis.textSpanst.span||createNS(tspan)).textContentSt,n.setAttribute(x,0),n.setAttribute(y,m),n.style.displayinherit,E.appendChild(n),this.textSpanst||(this.textSpanst{span:null,glyph:null}),this.textSpanst.spann,m+r.finalLineHeight;this.layerElement.appendChild(E)}for(;tthis.textSpans.length;)this.textSpanst.span.style.displaynone,t+1;this._sizeChanged!0},SVGTextLottieElement.prototype.sourceRectAtTimefunction(){if(this.prepareFrame(this.comp.renderedFrame-this.data.st),this.renderInnerContent(),this._sizeChanged){this._sizeChanged!1;var tthis.layerElement.getBBox();this.bbox{top:t.y,left:t.x,width:t.width,height:t.height}}return this.bbox},SVGTextLottieElement.prototype.getValuefunction(){var t,e,rthis.textSpans.length;for(this.renderedFramethis.comp.renderedFrame,t0;tr;t+1)(ethis.textSpanst.glyph)&&(e.prepareFrame(this.comp.renderedFrame-this.data.st),e._mdf&&(this._mdf!0))},SVGTextLottieElement.prototype.renderInnerContentfunction(){if((!this.data.singleShape||this._mdf)&&(this.textAnimator.getMeasures(this.textProperty.currentData,this.lettersChangedFlag),this.lettersChangedFlag||this.textAnimator.lettersChangedFlag)){var t,e;this._sizeChanged!0;var r,i,s,athis.textAnimator.renderedLetters,nthis.textProperty.currentData.l;for(en.length,t0;te;t+1)nt.n||(rat,ithis.textSpanst.span,(sthis.textSpanst.glyph)&&s.renderFrame(),r._mdf.m&&i.setAttribute(transform,r.m),r._mdf.o&&i.setAttribute(opacity,r.o),r._mdf.sw&&i.setAttribute(stroke-width,r.sw),r._mdf.sc&&i.setAttribute(stroke,r.sc),r._mdf.fc&&i.setAttribute(fill,r.fc))}},extendPrototype(IImageElement,ISolidElement),ISolidElement.prototype.createContentfunction(){var tcreateNS(rect);t.setAttribute(width,this.data.sw),t.setAttribute(height,this.data.sh),t.setAttribute(fill,this.data.sc),this.layerElement.appendChild(t)},NullElement.prototype.prepareFramefunction(t){this.prepareProperties(t,!0)},NullElement.prototype.renderFramefunction(){},NullElement.prototype.getBaseElementfunction(){return null},NullElement.prototype.destroyfunction(){},NullElement.prototype.sourceRectAtTimefunction(){},NullElement.prototype.hidefunction(){},extendPrototype(BaseElement,TransformElement,HierarchyElement,FrameElement,NullElement),extendPrototype(BaseRenderer,SVGRendererBase),SVGRendererBase.prototype.createNullfunction(t){return new NullElement(t,this.globalData,this)},SVGRendererBase.prototype.createShapefunction(t){return new SVGShapeElement(t,this.globalData,this)},SVGRendererBase.prototype.createTextfunction(t){return new SVGTextLottieElement(t,this.globalData,this)},SVGRendererBase.prototype.createImagefunction(t){return new IImageElement(t,this.globalData,this)},SVGRendererBase.prototype.createSolidfunction(t){return new ISolidElement(t,this.globalData,this)},SVGRendererBase.prototype.configAnimationfunction(t){this.svgElement.setAttribute(xmlns,http://www.w3.org/2000/svg),this.renderConfig.viewBoxSize?this.svgElement.setAttribute(viewBox,this.renderConfig.viewBoxSize):this.svgElement.setAttribute(viewBox,0 0 +t.w+ +t.h),this.renderConfig.viewBoxOnly||(this.svgElement.setAttribute(width,t.w),this.svgElement.setAttribute(height,t.h),this.svgElement.style.width100%,this.svgElement.style.height100%,this.svgElement.style.transformtranslate3d(0,0,0),this.svgElement.style.contentVisibilitythis.renderConfig.contentVisibility),this.renderConfig.width&&this.svgElement.setAttribute(width,this.renderConfig.width),this.renderConfig.height&&this.svgElement.setAttribute(height,this.renderConfig.height),this.renderConfig.className&&this.svgElement.setAttribute(class,this.renderConfig.className),this.renderConfig.id&&this.svgElement.setAttribute(id,this.renderConfig.id),void 0!this.renderConfig.focusable&&this.svgElement.setAttribute(focusable,this.renderConfig.focusable),this.svgElement.setAttribute(preserveAspectRatio,this.renderConfig.preserveAspectRatio),this.animationItem.wrapper.appendChild(this.svgElement);var ethis.globalData.defs;this.setupGlobalData(t,e),this.globalData.progressiveLoadthis.renderConfig.progressiveLoad,this.datat;var rcreateNS(clipPath),icreateNS(rect);i.setAttribute(width,t.w),i.setAttribute(height,t.h),i.setAttribute(x,0),i.setAttribute(y,0);var screateElementID();r.setAttribute(id,s),r.appendChild(i),this.layerElement.setAttribute(clip-path,url(+getLocationHref()+#+s+)),e.appendChild(r),this.layerst.layers,this.elementscreateSizedArray(t.layers.length)},SVGRendererBase.prototype.destroyfunction(){var t;this.animationItem.wrapper&&(this.animationItem.wrapper.innerText),this.layerElementnull,this.globalData.defsnull;var ethis.layers?this.layers.length:0;for(t0;te;t+1)this.elementst&&this.elementst.destroy();this.elements.length0,this.destroyed!0,this.animationItemnull},SVGRendererBase.prototype.updateContainerSizefunction(){},SVGRendererBase.prototype.buildItemfunction(t){var ethis.elements;if(!et&&99!this.layerst.ty){et!0;var rthis.createItem(this.layerst);etr,getExpressionsPlugin()&&(0this.layerst.ty&&this.globalData.projectInterface.registerComposition(r),r.initExpressions()),this.appendElementInPos(r,t),this.layerst.tt&&(this.elementst-1&&!0!this.elementst-1?r.setMatte(et-1.layerId):(this.buildItem(t-1),this.addPendingElement(r)))}},SVGRendererBase.prototype.checkPendingElementsfunction(){for(;this.pendingElements.length;){var tthis.pendingElements.pop();if(t.checkParenting(),t.data.tt)for(var e0,rthis.elements.length;er;){if(this.elementset){t.setMatte(this.elementse-1.layerId);break}e+1}}},SVGRendererBase.prototype.renderFramefunction(t){if(this.renderedFrame!t&&!this.destroyed){var e;nullt?tthis.renderedFrame:this.renderedFramet,this.globalData.frameNumt,this.globalData.frameId+1,this.globalData.projectInterface.currentFramet,this.globalData._mdf!1;var rthis.layers.length;for(this.completeLayers||this.checkLayers(t),er-1;e>0;e-1)(this.completeLayers||this.elementse)&&this.elementse.prepareFrame(t-this.layerse.st);if(this.globalData._mdf)for(e0;er;e+1)(this.completeLayers||this.elementse)&&this.elementse.renderFrame()}},SVGRendererBase.prototype.appendElementInPosfunction(t,e){var rt.getBaseElement();if(r){for(var i,s0;se;)this.elementss&&!0!this.elementss&&this.elementss.getBaseElement()&&(ithis.elementss.getBaseElement()),s+1;i?this.layerElement.insertBefore(r,i):this.layerElement.appendChild(r)}},SVGRendererBase.prototype.hidefunction(){this.layerElement.style.displaynone},SVGRendererBase.prototype.showfunction(){this.layerElement.style.displayblock},extendPrototype(BaseElement,TransformElement,HierarchyElement,FrameElement,RenderableDOMElement,ICompElement),ICompElement.prototype.initElementfunction(t,e,r){this.initFrame(),this.initBaseData(t,e,r),this.initTransform(t,e,r),this.initRenderable(),this.initHierarchy(),this.initRendererElement(),this.createContainerElements(),this.createRenderableComponents(),!this.data.xt&&e.progressiveLoad||this.buildAllItems(),this.hide()},ICompElement.prototype.prepareFramefunction(t){if(this._mdf!1,this.prepareRenderableFrame(t),this.prepareProperties(t,this.isInRange),this.isInRange||this.data.xt){if(this.tm._placeholder)this.renderedFramet/this.data.sr;else{var ethis.tm.v;ethis.data.op&&(ethis.data.op-1),this.renderedFramee}var r,ithis.elements.length;for(this.completeLayers||this.checkLayers(this.renderedFrame),ri-1;r>0;r-1)(this.completeLayers||this.elementsr)&&(this.elementsr.prepareFrame(this.renderedFrame-this.layersr.st),this.elementsr._mdf&&(this._mdf!0))}},ICompElement.prototype.renderInnerContentfunction(){var t,ethis.layers.length;for(t0;te;t+1)(this.completeLayers||this.elementst)&&this.elementst.renderFrame()},ICompElement.prototype.setElementsfunction(t){this.elementst},ICompElement.prototype.getElementsfunction(){return this.elements},ICompElement.prototype.destroyElementsfunction(){var t,ethis.layers.length;for(t0;te;t+1)this.elementst&&this.elementst.destroy()},ICompElement.prototype.destroyfunction(){this.destroyElements(),this.destroyBaseElement()},extendPrototype(SVGRendererBase,ICompElement,SVGBaseElement,SVGCompElement),SVGCompElement.prototype.createCompfunction(t){return new SVGCompElement(t,this.globalData,this)},extendPrototype(SVGRendererBase,SVGRenderer),SVGRenderer.prototype.createCompfunction(t){return new SVGCompElement(t,this.globalData,this)},CVContextData.prototype.duplicatefunction(){var t2*this._length,ethis.savedOp;this.savedOpcreateTypedArray(float32,t),this.savedOp.set(e);var r0;for(rthis._length;rt;r+1)this.savedrcreateTypedArray(float32,16);this._lengtht},CVContextData.prototype.resetfunction(){this.cArrPos0,this.cTr.reset(),this.cO1},ShapeTransformManager.prototype{addTransformSequence:function(t){var e,rt.length,i_;for(e0;er;e+1)i+te.transform.key+_;var sthis.sequencesi;return s||(s{transforms:.concat(t),finalTransform:new Matrix,_mdf:!1},this.sequencesis,this.sequenceList.push(s)),s},processSequence:function(t,e){for(var r,i0,st.transforms.length,ae;is&&!e;){if(t.transformsi.transform.mProps._mdf){a!0;break}i+1}if(a)for(t.finalTransform.reset(),is-1;i>0;i-1)rt.transformsi.transform.mProps.v.props,t.finalTransform.transform(r0,r1,r2,r3,r4,r5,r6,r7,r8,r9,r10,r11,r12,r13,r14,r15);t._mdfa},processSequences:function(t){var e,rthis.sequenceList.length;for(e0;er;e+1)this.processSequence(this.sequenceListe,t)},getNewKey:function(){return this.transform_key_count+1,_+this.transform_key_count}},CVEffects.prototype.renderFramefunction(){},CVMaskElement.prototype.renderFramefunction(){if(this.hasMasks){var t,e,r,i,sthis.element.finalTransform.mat,athis.element.canvasContext,nthis.masksProperties.length;for(a.beginPath(),t0;tn;t+1)if(n!this.masksPropertiest.mode){var o;this.masksPropertiest.inv&&(a.moveTo(0,0),a.lineTo(this.element.globalData.compSize.w,0),a.lineTo(this.element.globalData.compSize.w,this.element.globalData.compSize.h),a.lineTo(0,this.element.globalData.compSize.h),a.lineTo(0,0)),ithis.viewDatat.v,es.applyToPointArray(i.v00,i.v01,0),a.moveTo(e0,e1);var hi._length;for(o1;oh;o+1)rs.applyToTriplePoints(i.oo-1,i.io,i.vo),a.bezierCurveTo(r0,r1,r2,r3,r4,r5);rs.applyToTriplePoints(i.oo-1,i.i0,i.v0),a.bezierCurveTo(r0,r1,r2,r3,r4,r5)}this.element.globalData.renderer.save(!0),a.clip()}},CVMaskElement.prototype.getMaskPropertyMaskElement.prototype.getMaskProperty,CVMaskElement.prototype.destroyfunction(){this.elementnull},CVBaseElement.prototype{createElements:function(){},initRendererElement:function(){},createContainerElements:function(){this.canvasContextthis.globalData.canvasContext,this.renderableEffectsManagernew CVEffects(this)},createContent:function(){},setBlendMode:function(){var tthis.globalData;if(t.blendMode!this.data.bm){t.blendModethis.data.bm;var egetBlendMode(this.data.bm);t.canvasContext.globalCompositeOperatione}},createRenderableComponents:function(){this.maskManagernew CVMaskElement(this.data,this)},hideElement:function(){this.hidden||this.isInRange&&!this.isTransparent||(this.hidden!0)},showElement:function(){this.isInRange&&!this.isTransparent&&(this.hidden!1,this._isFirstFrame!0,this.maskManager._isFirstFrame!0)},renderFrame:function(){if(!this.hidden&&!this.data.hd){this.renderTransform(),this.renderRenderable(),this.setBlendMode();var t0this.data.ty;this.globalData.renderer.save(t),this.globalData.renderer.ctxTransform(this.finalTransform.mat.props),this.globalData.renderer.ctxOpacity(this.finalTransform.mProp.o.v),this.renderInnerContent(),this.globalData.renderer.restore(t),this.maskManager.hasMasks&&this.globalData.renderer.restore(!0),this._isFirstFrame&&(this._isFirstFrame!1)}},destroy:function(){this.canvasContextnull,this.datanull,this.globalDatanull,this.maskManager.destroy()},mHelper:new Matrix},CVBaseElement.prototype.hideCVBaseElement.prototype.hideElement,CVBaseElement.prototype.showCVBaseElement.prototype.showElement,CVShapeData.prototype.setAsAnimatedSVGShapeData.prototype.setAsAnimated,extendPrototype(BaseElement,TransformElement,CVBaseElement,IShapeElement,HierarchyElement,FrameElement,RenderableElement,CVShapeElement),CVShapeElement.prototype.initElementRenderableDOMElement.prototype.initElement,CVShapeElement.prototype.transformHelper{opacity:1,_opMdf:!1},CVShapeElement.prototype.dashResetter,CVShapeElement.prototype.createContentfunction(){this.searchShapes(this.shapesData,this.itemsData,this.prevViewData,!0,)},CVShapeElement.prototype.createStyleElementfunction(t,e){var r{data:t,type:t.ty,preTransforms:this.transformsManager.addTransformSequence(e),transforms:,elements:,closed:!0t.hd},i{};if(flt.ty||stt.ty?(i.cPropertyFactory.getProp(this,t.c,1,255,this),i.c.k||(r.corgb(+bmFloor(i.c.v0)+,+bmFloor(i.c.v1)+,+bmFloor(i.c.v2)+))):gf!t.ty&&gs!t.ty||(i.sPropertyFactory.getProp(this,t.s,1,null,this),i.ePropertyFactory.getProp(this,t.e,1,null,this),i.hPropertyFactory.getProp(this,t.h||{k:0},0,.01,this),i.aPropertyFactory.getProp(this,t.a||{k:0},0,degToRads,this),i.gnew GradientProperty(this,t.g,this)),i.oPropertyFactory.getProp(this,t.o,0,.01,this),stt.ty||gst.ty){if(r.lclineCapEnumt.lc||2,r.ljlineJoinEnumt.lj||2,1t.lj&&(r.mlt.ml),i.wPropertyFactory.getProp(this,t.w,0,null,this),i.w.k||(r.wii.w.v),t.d){var snew DashProperty(this,t.d,canvas,this);i.ds,i.d.k||(r.dai.d.dashArray,r.doi.d.dashoffset0)}}else r.r2t.r?evenodd:nonzero;return this.stylesList.push(r),i.styler,i},CVShapeElement.prototype.createGroupElementfunction(){return{it:,prevViewData:}},CVShapeElement.prototype.createTransformElementfunction(t){return{transform:{opacity:1,_opMdf:!1,key:this.transformsManager.getNewKey(),op:PropertyFactory.getProp(this,t.o,0,.01,this),mProps:TransformPropertyFactory.getTransformProperty(this,t,this)}}},CVShapeElement.prototype.createShapeElementfunction(t){var enew CVShapeData(this,t,this.stylesList,this.transformsManager);return this.shapes.push(e),this.addShapeToModifiers(e),e},CVShapeElement.prototype.reloadShapesfunction(){var t;this._isFirstFrame!0;var ethis.itemsData.length;for(t0;te;t+1)this.prevViewDatatthis.itemsDatat;for(this.searchShapes(this.shapesData,this.itemsData,this.prevViewData,!0,),ethis.dynamicProperties.length,t0;te;t+1)this.dynamicPropertiest.getValue();this.renderModifiers(),this.transformsManager.processSequences(this._isFirstFrame)},CVShapeElement.prototype.addTransformToStyleListfunction(t){var e,rthis.stylesList.length;for(e0;er;e+1)this.stylesListe.closed||this.stylesListe.transforms.push(t)},CVShapeElement.prototype.removeTransformFromStyleListfunction(){var t,ethis.stylesList.length;for(t0;te;t+1)this.stylesListt.closed||this.stylesListt.transforms.pop()},CVShapeElement.prototype.closeStylesfunction(t){var e,rt.length;for(e0;er;e+1)te.closed!0},CVShapeElement.prototype.searchShapesfunction(t,e,r,i,s){var a,n,o,h,l,p,ft.length-1,m,c,d.concat(s);for(af;a>0;a-1){if((hthis.searchProcessedElement(ta))?earh-1:ta._shouldRenderi,flta.ty||stta.ty||gfta.ty||gsta.ty)h?ea.style.closed!1:eathis.createStyleElement(ta,d),m.push(ea.style);else if(grta.ty){if(h)for(oea.it.length,n0;no;n+1)ea.prevViewDatanea.itn;else eathis.createGroupElement(ta);this.searchShapes(ta.it,ea.it,ea.prevViewData,i,d)}elsetrta.ty?(h||(pthis.createTransformElement(ta),eap),d.push(ea),this.addTransformToStyleList(ea)):shta.ty||rcta.ty||elta.ty||srta.ty?h||(eathis.createShapeElement(ta)):tmta.ty||rdta.ty||pbta.ty?(h?(lea).closed!1:((lShapeModifiers.getModifier(ta.ty)).init(this,ta),eal,this.shapeModifiers.push(l)),c.push(l)):rpta.ty&&(h?(lea).closed!0:(lShapeModifiers.getModifier(ta.ty),eal,l.init(this,t,a,e),this.shapeModifiers.push(l),i!1),c.push(l));this.addProcessedElement(ta,a+1)}for(this.removeTransformFromStyleList(),this.closeStyles(m),fc.length,a0;af;a+1)ca.closed!0},CVShapeElement.prototype.renderInnerContentfunction(){this.transformHelper.opacity1,this.transformHelper._opMdf!1,this.renderModifiers(),this.transformsManager.processSequences(this._isFirstFrame),this.renderShape(this.transformHelper,this.shapesData,this.itemsData,!0)},CVShapeElement.prototype.renderShapeTransformfunction(t,e){(t._opMdf||e.op._mdf||this._isFirstFrame)&&(e.opacityt.opacity,e.opacity*e.op.v,e._opMdf!0)},CVShapeElement.prototype.drawLayerfunction(){var t,e,r,i,s,a,n,o,h,lthis.stylesList.length,pthis.globalData.renderer,fthis.globalData.canvasContext;for(t0;tl;t+1)if((st!(o(hthis.stylesListt).type)&&gs!o||0!h.wi)&&h.data._shouldRender&&0!h.coOp&&0!this.globalData.currentGlobalAlpha){for(p.save(),ah.elements,sto||gso?(f.strokeStylesto?h.co:h.grd,f.lineWidthh.wi,f.lineCaph.lc,f.lineJoinh.lj,f.miterLimith.ml||0):f.fillStyleflo?h.co:h.grd,p.ctxOpacity(h.coOp),st!o&&gs!o&&f.beginPath(),p.ctxTransform(h.preTransforms.finalTransform.props),ra.length,e0;er;e+1){for(st!o&&gs!o||(f.beginPath(),h.da&&(f.setLineDash(h.da),f.lineDashOffseth.do)),s(nae.trNodes).length,i0;is;i+1)mni.t?f.moveTo(ni.p0,ni.p1):cni.t?f.bezierCurveTo(ni.pts0,ni.pts1,ni.pts2,ni.pts3,ni.pts4,ni.pts5):f.closePath();st!o&&gs!o||(f.stroke(),h.da&&f.setLineDash(this.dashResetter))}st!o&&gs!o&&f.fill(h.r),p.restore()}},CVShapeElement.prototype.renderShapefunction(t,e,r,i){var s,a;for(at,se.length-1;s>0;s-1)tres.ty?(ars.transform,this.renderShapeTransform(t,a)):shes.ty||eles.ty||rces.ty||sres.ty?this.renderPath(es,rs):fles.ty?this.renderFill(es,rs,a):stes.ty?this.renderStroke(es,rs,a):gfes.ty||gses.ty?this.renderGradientFill(es,rs,a):gres.ty?this.renderShape(a,es.it,rs.it):es.ty;i&&this.drawLayer()},CVShapeElement.prototype.renderStyledShapefunction(t,e){if(this._isFirstFrame||e._mdf||t.transforms._mdf){var r,i,s,at.trNodes,ne.paths,on._length;a.length0;var ht.transforms.finalTransform;for(s0;so;s+1){var ln.shapess;if(l&&l.v){for(il._length,r1;ri;r+1)1r&&a.push({t:m,p:h.applyToPointArray(l.v00,l.v01,0)}),a.push({t:c,pts:h.applyToTriplePoints(l.or-1,l.ir,l.vr)});1i&&a.push({t:m,p:h.applyToPointArray(l.v00,l.v01,0)}),l.c&&i&&(a.push({t:c,pts:h.applyToTriplePoints(l.or-1,l.i0,l.v0)}),a.push({t:z}))}}t.trNodesa}},CVShapeElement.prototype.renderPathfunction(t,e){if(!0!t.hd&&t._shouldRender){var r,ie.styledShapes.length;for(r0;ri;r+1)this.renderStyledShape(e.styledShapesr,e.sh)}},CVShapeElement.prototype.renderFillfunction(t,e,r){var ie.style;(e.c._mdf||this._isFirstFrame)&&(i.corgb(+bmFloor(e.c.v0)+,+bmFloor(e.c.v1)+,+bmFloor(e.c.v2)+)),(e.o._mdf||r._opMdf||this._isFirstFrame)&&(i.coOpe.o.v*r.opacity)},CVShapeElement.prototype.renderGradientFillfunction(t,e,r){var i,se.style;if(!s.grd||e.g._mdf||e.s._mdf||e.e._mdf||1!t.t&&(e.h._mdf||e.a._mdf)){var a,nthis.globalData.canvasContext,oe.s.v,he.e.v;if(1t.t)in.createLinearGradient(o0,o1,h0,h1);else{var lMath.sqrt(Math.pow(o0-h0,2)+Math.pow(o1-h1,2)),pMath.atan2(h1-o1,h0-o0),fe.h.v;f>1?f.99:f-1&&(f-.99);var ml*f,cMath.cos(p+e.a.v)*m+o0,dMath.sin(p+e.a.v)*m+o1;in.createRadialGradient(c,d,0,o0,o1,l)}var ut.g.p,ye.g.c,g1;for(a0;au;a+1)e.g._hasOpacity&&e.g._collapsable&&(ge.g.o2*a+1),i.addColorStop(y4*a/100,rgba(+y4*a+1+,+y4*a+2+,+y4*a+3+,+g+));s.grdi}s.coOpe.o.v*r.opacity},CVShapeElement.prototype.renderStrokefunction(t,e,r){var ie.style,se.d;s&&(s._mdf||this._isFirstFrame)&&(i.das.dashArray,i.dos.dashoffset0),(e.c._mdf||this._isFirstFrame)&&(i.corgb(+bmFloor(e.c.v0)+,+bmFloor(e.c.v1)+,+bmFloor(e.c.v2)+)),(e.o._mdf||r._opMdf||this._isFirstFrame)&&(i.coOpe.o.v*r.opacity),(e.w._mdf||this._isFirstFrame)&&(i.wie.w.v)},CVShapeElement.prototype.destroyfunction(){this.shapesDatanull,this.globalDatanull,this.canvasContextnull,this.stylesList.length0,this.itemsData.length0},extendPrototype(BaseElement,TransformElement,CVBaseElement,HierarchyElement,FrameElement,RenderableElement,ITextElement,CVTextElement),CVTextElement.prototype.tHelpercreateTag(canvas).getContext(2d),CVTextElement.prototype.buildNewTextfunction(){var tthis.textProperty.currentData;this.renderedLetterscreateSizedArray(t.l?t.l.length:0);var e!1;t.fc?(e!0,this.values.fillthis.buildColor(t.fc)):this.values.fillrgba(0,0,0,0),this.fille;var r!1;t.sc&&(r!0,this.values.strokethis.buildColor(t.sc),this.values.sWidtht.sw);var i,s,a,n,o,h,l,p,f,m,c,d,uthis.globalData.fontManager.getFontByName(t.f),yt.l,gthis.mHelper;this.stroker,this.values.fValuet.finalSize+px +this.globalData.fontManager.getFontByName(t.f).fFamily,st.finalText.length;var vthis.data.singleShape,b.001*t.tr*t.finalSize,P0,E0,x!0,S0;for(i0;is;i+1){n(athis.globalData.fontManager.getCharData(t.finalTexti,u.fStyle,this.globalData.fontManager.getFontByName(t.f).fFamily))&&a.data||{},g.reset(),v&&yi.n&&(P-b,E+t.yOffset,E+x?1:0,x!1),f(ln.shapes?n.shapes0.it:).length,g.scale(t.finalSize/100,t.finalSize/100),v&&this.applyTextPropertiesToMatrix(t,g,yi.line,P,E),ccreateSizedArray(f-1);var _0;for(p0;pf;p+1)if(shlp.ty){for(hlp.ks.k.i.length,mlp.ks.k,d,o1;oh;o+1)1o&&d.push(g.applyToX(m.v00,m.v01,0),g.applyToY(m.v00,m.v01,0)),d.push(g.applyToX(m.oo-10,m.oo-11,0),g.applyToY(m.oo-10,m.oo-11,0),g.applyToX(m.io0,m.io1,0),g.applyToY(m.io0,m.io1,0),g.applyToX(m.vo0,m.vo1,0),g.applyToY(m.vo0,m.vo1,0));d.push(g.applyToX(m.oo-10,m.oo-11,0),g.applyToY(m.oo-10,m.oo-11,0),g.applyToX(m.i00,m.i01,0),g.applyToY(m.i00,m.i01,0),g.applyToX(m.v00,m.v01,0),g.applyToY(m.v00,m.v01,0)),c_d,_+1}v&&(P+yi.l,P+b),this.textSpansS?this.textSpansS.elemc:this.textSpansS{elem:c},S+1}},CVTextElement.prototype.renderInnerContentfunction(){var t,e,r,i,s,a,nthis.canvasContext;n.fontthis.values.fValue,n.lineCapbutt,n.lineJoinmiter,n.miterLimit4,this.data.singleShape||this.textAnimator.getMeasures(this.textProperty.currentData,this.lettersChangedFlag);var o,hthis.textAnimator.renderedLetters,lthis.textProperty.currentData.l;el.length;var p,f,mnull,cnull,dnull;for(t0;te;t+1)if(!lt.n){if((oht)&&(this.globalData.renderer.save(),this.globalData.renderer.ctxTransform(o.p),this.globalData.renderer.ctxOpacity(o.o)),this.fill){for(o&&o.fc?m!o.fc&&(mo.fc,n.fillStyleo.fc):m!this.values.fill&&(mthis.values.fill,n.fillStylethis.values.fill),i(pthis.textSpanst.elem).length,this.globalData.canvasContext.beginPath(),r0;ri;r+1)for(a(fpr).length,this.globalData.canvasContext.moveTo(f0,f1),s2;sa;s+6)this.globalData.canvasContext.bezierCurveTo(fs,fs+1,fs+2,fs+3,fs+4,fs+5);this.globalData.canvasContext.closePath(),this.globalData.canvasContext.fill()}if(this.stroke){for(o&&o.sw?d!o.sw&&(do.sw,n.lineWidtho.sw):d!this.values.sWidth&&(dthis.values.sWidth,n.lineWidththis.values.sWidth),o&&o.sc?c!o.sc&&(co.sc,n.strokeStyleo.sc):c!this.values.stroke&&(cthis.values.stroke,n.strokeStylethis.values.stroke),i(pthis.textSpanst.elem).length,this.globalData.canvasContext.beginPath(),r0;ri;r+1)for(a(fpr).length,this.globalData.canvasContext.moveTo(f0,f1),s2;sa;s+6)this.globalData.canvasContext.bezierCurveTo(fs,fs+1,fs+2,fs+3,fs+4,fs+5);this.globalData.canvasContext.closePath(),this.globalData.canvasContext.stroke()}o&&this.globalData.renderer.restore()}},extendPrototype(BaseElement,TransformElement,CVBaseElement,HierarchyElement,FrameElement,RenderableElement,CVImageElement),CVImageElement.prototype.initElementSVGShapeElement.prototype.initElement,CVImageElement.prototype.prepareFrameIImageElement.prototype.prepareFrame,CVImageElement.prototype.createContentfunction(){if(this.img.width&&(this.assetData.w!this.img.width||this.assetData.h!this.img.height)){var tcreateTag(canvas);t.widththis.assetData.w,t.heightthis.assetData.h;var e,r,it.getContext(2d),sthis.img.width,athis.img.height,ns/a,othis.assetData.w/this.assetData.h,hthis.assetData.pr||this.globalData.renderConfig.imagePreserveAspectRatio;n>o&&xMidYMid sliceh||no&&xMidYMid slice!h?e(ra)*o:r(es)/o,i.drawImage(this.img,(s-e)/2,(a-r)/2,e,r,0,0,this.assetData.w,this.assetData.h),this.imgt}},CVImageElement.prototype.renderInnerContentfunction(){this.canvasContext.drawImage(this.img,0,0)},CVImageElement.prototype.destroyfunction(){this.imgnull},extendPrototype(BaseElement,TransformElement,CVBaseElement,HierarchyElement,FrameElement,RenderableElement,CVSolidElement),CVSolidElement.prototype.initElementSVGShapeElement.prototype.initElement,CVSolidElement.prototype.prepareFrameIImageElement.prototype.prepareFrame,CVSolidElement.prototype.renderInnerContentfunction(){var tthis.canvasContext;t.fillStylethis.data.sc,t.fillRect(0,0,this.data.sw,this.data.sh)},extendPrototype(BaseRenderer,CanvasRendererBase),CanvasRendererBase.prototype.createShapefunction(t){return new CVShapeElement(t,this.globalData,this)},CanvasRendererBase.prototype.createTextfunction(t){return new CVTextElement(t,this.globalData,this)},CanvasRendererBase.prototype.createImagefunction(t){return new CVImageElement(t,this.globalData,this)},CanvasRendererBase.prototype.createSolidfunction(t){return new CVSolidElement(t,this.globalData,this)},CanvasRendererBase.prototype.createNullSVGRenderer.prototype.createNull,CanvasRendererBase.prototype.ctxTransformfunction(t){if(1!t0||0!t1||0!t4||1!t5||0!t12||0!t13)if(this.renderConfig.clearCanvas){this.transformMat.cloneFromProps(t);var ethis.contextData.cTr.props;this.transformMat.transform(e0,e1,e2,e3,e4,e5,e6,e7,e8,e9,e10,e11,e12,e13,e14,e15),this.contextData.cTr.cloneFromProps(this.transformMat.props);var rthis.contextData.cTr.props;this.canvasContext.setTransform(r0,r1,r4,r5,r12,r13)}else this.canvasContext.transform(t0,t1,t4,t5,t12,t13)},CanvasRendererBase.prototype.ctxOpacityfunction(t){if(!this.renderConfig.clearCanvas)return this.canvasContext.globalAlpha*t0?0:t,void(this.globalData.currentGlobalAlphathis.contextData.cO);this.contextData.cO*t0?0:t,this.globalData.currentGlobalAlpha!this.contextData.cO&&(this.canvasContext.globalAlphathis.contextData.cO,this.globalData.currentGlobalAlphathis.contextData.cO)},CanvasRendererBase.prototype.resetfunction(){this.renderConfig.clearCanvas?this.contextData.reset():this.canvasContext.restore()},CanvasRendererBase.prototype.savefunction(t){if(this.renderConfig.clearCanvas){t&&this.canvasContext.save();var e,rthis.contextData.cTr.props;this.contextData._lengththis.contextData.cArrPos&&this.contextData.duplicate();var ithis.contextData.savedthis.contextData.cArrPos;for(e0;e16;e+1)iere;this.contextData.savedOpthis.contextData.cArrPosthis.contextData.cO,this.contextData.cArrPos+1}else this.canvasContext.save()},CanvasRendererBase.prototype.restorefunction(t){if(this.renderConfig.clearCanvas){t&&(this.canvasContext.restore(),this.globalData.blendModesource-over),this.contextData.cArrPos-1;var e,rthis.contextData.savedthis.contextData.cArrPos,ithis.contextData.cTr.props;for(e0;e16;e+1)iere;this.canvasContext.setTransform(r0,r1,r4,r5,r12,r13),rthis.contextData.savedOpthis.contextData.cArrPos,this.contextData.cOr,this.globalData.currentGlobalAlpha!r&&(this.canvasContext.globalAlphar,this.globalData.currentGlobalAlphar)}else this.canvasContext.restore()},CanvasRendererBase.prototype.configAnimationfunction(t){if(this.animationItem.wrapper){this.animationItem.containercreateTag(canvas);var ethis.animationItem.container.style;e.width100%,e.height100%;var r0px 0px 0px;e.transformOriginr,e.mozTransformOriginr,e.webkitTransformOriginr,e-webkit-transformr,e.contentVisibilitythis.renderConfig.contentVisibility,this.animationItem.wrapper.appendChild(this.animationItem.container),this.canvasContextthis.animationItem.container.getContext(2d),this.renderConfig.className&&this.animationItem.container.setAttribute(class,this.renderConfig.className),this.renderConfig.id&&this.animationItem.container.setAttribute(id,this.renderConfig.id)}else this.canvasContextthis.renderConfig.context;this.datat,this.layerst.layers,this.transformCanvas{w:t.w,h:t.h,sx:0,sy:0,tx:0,ty:0},this.setupGlobalData(t,document.body),this.globalData.canvasContextthis.canvasContext,this.globalData.rendererthis,this.globalData.isDashed!1,this.globalData.progressiveLoadthis.renderConfig.progressiveLoad,this.globalData.transformCanvasthis.transformCanvas,this.elementscreateSizedArray(t.layers.length),this.updateContainerSize()},CanvasRendererBase.prototype.updateContainerSizefunction(){var t,e,r,i;if(this.reset(),this.animationItem.wrapper&&this.animationItem.container?(tthis.animationItem.wrapper.offsetWidth,ethis.animationItem.wrapper.offsetHeight,this.animationItem.container.setAttribute(width,t*this.renderConfig.dpr),this.animationItem.container.setAttribute(height,e*this.renderConfig.dpr)):(tthis.canvasContext.canvas.width*this.renderConfig.dpr,ethis.canvasContext.canvas.height*this.renderConfig.dpr),-1!this.renderConfig.preserveAspectRatio.indexOf(meet)||-1!this.renderConfig.preserveAspectRatio.indexOf(slice)){var sthis.renderConfig.preserveAspectRatio.split( ),as1||meet,ns0||xMidYMid,on.substr(0,4),hn.substr(4);rt/e,(ithis.transformCanvas.w/this.transformCanvas.h)>r&&meeta||ir&&slicea?(this.transformCanvas.sxt/(this.transformCanvas.w/this.renderConfig.dpr),this.transformCanvas.syt/(this.transformCanvas.w/this.renderConfig.dpr)):(this.transformCanvas.sxe/(this.transformCanvas.h/this.renderConfig.dpr),this.transformCanvas.sye/(this.transformCanvas.h/this.renderConfig.dpr)),this.transformCanvas.txxMido&&(ir&&meeta||i>r&&slicea)?(t-this.transformCanvas.w*(e/this.transformCanvas.h))/2*this.renderConfig.dpr:xMaxo&&(ir&&meeta||i>r&&slicea)?(t-this.transformCanvas.w*(e/this.transformCanvas.h))*this.renderConfig.dpr:0,this.transformCanvas.tyYMidh&&(i>r&&meeta||ir&&slicea)?(e-this.transformCanvas.h*(t/this.transformCanvas.w))/2*this.renderConfig.dpr:YMaxh&&(i>r&&meeta||ir&&slicea)?(e-this.transformCanvas.h*(t/this.transformCanvas.w))*this.renderConfig.dpr:0}elsenonethis.renderConfig.preserveAspectRatio?(this.transformCanvas.sxt/(this.transformCanvas.w/this.renderConfig.dpr),this.transformCanvas.sye/(this.transformCanvas.h/this.renderConfig.dpr),this.transformCanvas.tx0,this.transformCanvas.ty0):(this.transformCanvas.sxthis.renderConfig.dpr,this.transformCanvas.sythis.renderConfig.dpr,this.transformCanvas.tx0,this.transformCanvas.ty0);this.transformCanvas.propsthis.transformCanvas.sx,0,0,0,0,this.transformCanvas.sy,0,0,0,0,1,0,this.transformCanvas.tx,this.transformCanvas.ty,0,1,this.ctxTransform(this.transformCanvas.props),this.canvasContext.beginPath(),this.canvasContext.rect(0,0,this.transformCanvas.w,this.transformCanvas.h),this.canvasContext.closePath(),this.canvasContext.clip(),this.renderFrame(this.renderedFrame,!0)},CanvasRendererBase.prototype.destroyfunction(){var t;for(this.renderConfig.clearCanvas&&this.animationItem.wrapper&&(this.animationItem.wrapper.innerText),t(this.layers?this.layers.length:0)-1;t>0;t-1)this.elementst&&this.elementst.destroy();this.elements.length0,this.globalData.canvasContextnull,this.animationItem.containernull,this.destroyed!0},CanvasRendererBase.prototype.renderFramefunction(t,e){if((this.renderedFrame!t||!0!this.renderConfig.clearCanvas||e)&&!this.destroyed&&-1!t){var r;this.renderedFramet,this.globalData.frameNumt-this.animationItem._isFirstFrame,this.globalData.frameId+1,this.globalData._mdf!this.renderConfig.clearCanvas||e,this.globalData.projectInterface.currentFramet;var ithis.layers.length;for(this.completeLayers||this.checkLayers(t),r0;ri;r+1)(this.completeLayers||this.elementsr)&&this.elementsr.prepareFrame(t-this.layersr.st);if(this.globalData._mdf){for(!0this.renderConfig.clearCanvas?this.canvasContext.clearRect(0,0,this.transformCanvas.w,this.transformCanvas.h):this.save(),ri-1;r>0;r-1)(this.completeLayers||this.elementsr)&&this.elementsr.renderFrame();!0!this.renderConfig.clearCanvas&&this.restore()}}},CanvasRendererBase.prototype.buildItemfunction(t){var ethis.elements;if(!et&&99!this.layerst.ty){var rthis.createItem(this.layerst,this,this.globalData);etr,r.initExpressions()}},CanvasRendererBase.prototype.checkPendingElementsfunction(){for(;this.pendingElements.length;){this.pendingElements.pop().checkParenting()}},CanvasRendererBase.prototype.hidefunction(){this.animationItem.container.style.displaynone},CanvasRendererBase.prototype.showfunction(){this.animationItem.container.style.displayblock},extendPrototype(CanvasRendererBase,ICompElement,CVBaseElement,CVCompElement),CVCompElement.prototype.renderInnerContentfunction(){var t,ethis.canvasContext;for(e.beginPath(),e.moveTo(0,0),e.lineTo(this.data.w,0),e.lineTo(this.data.w,this.data.h),e.lineTo(0,this.data.h),e.lineTo(0,0),e.clip(),tthis.layers.length-1;t>0;t-1)(this.completeLayers||this.elementst)&&this.elementst.renderFrame()},CVCompElement.prototype.destroyfunction(){var t;for(tthis.layers.length-1;t>0;t-1)this.elementst&&this.elementst.destroy();this.layersnull,this.elementsnull},CVCompElement.prototype.createCompfunction(t){return new CVCompElement(t,this.globalData,this)},extendPrototype(CanvasRendererBase,CanvasRenderer),CanvasRenderer.prototype.createCompfunction(t){return new CVCompElement(t,this.globalData,this)},HBaseElement.prototype{checkBlendMode:function(){},initRendererElement:function(){this.baseElementcreateTag(this.data.tg||div),this.data.hasMask?(this.svgElementcreateNS(svg),this.layerElementcreateNS(g),this.maskedElementthis.layerElement,this.svgElement.appendChild(this.layerElement),this.baseElement.appendChild(this.svgElement)):this.layerElementthis.baseElement,styleDiv(this.baseElement)},createContainerElements:function(){this.renderableEffectsManagernew CVEffects(this),this.transformedElementthis.baseElement,this.maskedElementthis.layerElement,this.data.ln&&this.layerElement.setAttribute(id,this.data.ln),this.data.cl&&this.layerElement.setAttribute(class,this.data.cl),0!this.data.bm&&this.setBlendMode()},renderElement:function(){var tthis.transformedElement?this.transformedElement.style:{};if(this.finalTransform._matMdf){var ethis.finalTransform.mat.toCSS();t.transforme,t.webkitTransforme}this.finalTransform._opMdf&&(t.opacitythis.finalTransform.mProp.o.v)},renderFrame:function(){this.data.hd||this.hidden||(this.renderTransform(),this.renderRenderable(),this.renderElement(),this.renderInnerContent(),this._isFirstFrame&&(this._isFirstFrame!1))},destroy:function(){this.layerElementnull,this.transformedElementnull,this.matteElement&&(this.matteElementnull),this.maskManager&&(this.maskManager.destroy(),this.maskManagernull)},createRenderableComponents:function(){this.maskManagernew MaskElement(this.data,this,this.globalData)},addEffects:function(){},setMatte:function(){}},HBaseElement.prototype.getBaseElementSVGBaseElement.prototype.getBaseElement,HBaseElement.prototype.destroyBaseElementHBaseElement.prototype.destroy,HBaseElement.prototype.buildElementParentingBaseRenderer.prototype.buildElementParenting,extendPrototype(BaseElement,TransformElement,HBaseElement,HierarchyElement,FrameElement,RenderableDOMElement,HSolidElement),HSolidElement.prototype.createContentfunction(){var t;this.data.hasMask?((tcreateNS(rect)).setAttribute(width,this.data.sw),t.setAttribute(height,this.data.sh),t.setAttribute(fill,this.data.sc),this.svgElement.setAttribute(width,this.data.sw),this.svgElement.setAttribute(height,this.data.sh)):((tcreateTag(div)).style.widththis.data.sw+px,t.style.heightthis.data.sh+px,t.style.backgroundColorthis.data.sc),this.layerElement.appendChild(t)},extendPrototype(BaseElement,TransformElement,HSolidElement,SVGShapeElement,HBaseElement,HierarchyElement,FrameElement,RenderableElement,HShapeElement),HShapeElement.prototype._renderShapeFrameHShapeElement.prototype.renderInnerContent,HShapeElement.prototype.createContentfunction(){var t;if(this.baseElement.style.fontSize0,this.data.hasMask)this.layerElement.appendChild(this.shapesContainer),tthis.svgElement;else{tcreateNS(svg);var ethis.comp.data?this.comp.data:this.globalData.compSize;t.setAttribute(width,e.w),t.setAttribute(height,e.h),t.appendChild(this.shapesContainer),this.layerElement.appendChild(t)}this.searchShapes(this.shapesData,this.itemsData,this.prevViewData,this.shapesContainer,0,,!0),this.filterUniqueShapes(),this.shapeContt},HShapeElement.prototype.getTransformedPointfunction(t,e){var r,it.length;for(r0;ri;r+1)etr.mProps.v.applyToPointArray(e0,e1,0);return e},HShapeElement.prototype.calculateShapeBoundingBoxfunction(t,e){var r,i,s,a,n,ot.sh.v,ht.transformers,lo._length;if(!(l1)){for(r0;rl-1;r+1)ithis.getTransformedPoint(h,o.vr),sthis.getTransformedPoint(h,o.or),athis.getTransformedPoint(h,o.ir+1),nthis.getTransformedPoint(h,o.vr+1),this.checkBounds(i,s,a,n,e);o.c&&(ithis.getTransformedPoint(h,o.vr),sthis.getTransformedPoint(h,o.or),athis.getTransformedPoint(h,o.i0),nthis.getTransformedPoint(h,o.v0),this.checkBounds(i,s,a,n,e))}},HShapeElement.prototype.checkBoundsfunction(t,e,r,i,s){this.getBoundsOfCurve(t,e,r,i);var athis.shapeBoundingBox;s.xbmMin(a.left,s.x),s.xMaxbmMax(a.right,s.xMax),s.ybmMin(a.top,s.y),s.yMaxbmMax(a.bottom,s.yMax)},HShapeElement.prototype.shapeBoundingBox{left:0,right:0,top:0,bottom:0},HShapeElement.prototype.tempBoundingBox{x:0,xMax:0,y:0,yMax:0,width:0,height:0},HShapeElement.prototype.getBoundsOfCurvefunction(t,e,r,i){for(var s,a,n,o,h,l,p,ft0,i0,t1,i1,m0;m2;++m)a6*tm-12*em+6*rm,s-3*tm+9*em-9*rm+3*im,n3*em-3*tm,a|0,n|0,0(s|0)&&0a||(0s?(o-n/a)>0&&o1&&fm.push(this.calculateF(o,t,e,r,i,m)):(ha*a-4*n*s)>0&&((l(-a+bmSqrt(h))/(2*s))>0&&l1&&fm.push(this.calculateF(l,t,e,r,i,m)),(p(-a-bmSqrt(h))/(2*s))>0&&p1&&fm.push(this.calculateF(p,t,e,r,i,m))));this.shapeBoundingBox.leftbmMin.apply(null,f0),this.shapeBoundingBox.topbmMin.apply(null,f1),this.shapeBoundingBox.rightbmMax.apply(null,f0),this.shapeBoundingBox.bottombmMax.apply(null,f1)},HShapeElement.prototype.calculateFfunction(t,e,r,i,s,a){return bmPow(1-t,3)*ea+3*bmPow(1-t,2)*t*ra+3*(1-t)*bmPow(t,2)*ia+bmPow(t,3)*sa},HShapeElement.prototype.calculateBoundingBoxfunction(t,e){var r,it.length;for(r0;ri;r+1)tr&&tr.sh?this.calculateShapeBoundingBox(tr,e):tr&&tr.it?this.calculateBoundingBox(tr.it,e):tr&&tr.style&&tr.w&&this.expandStrokeBoundingBox(tr.w,e)},HShapeElement.prototype.expandStrokeBoundingBoxfunction(t,e){var r0;if(t.keyframes){for(var i0;it.keyframes.length;i+1){var st.keyframesi.s;s>r&&(rs)}r*t.mult}else rt.v*t.mult;e.x-r,e.xMax+r,e.y-r,e.yMax+r},HShapeElement.prototype.currentBoxContainsfunction(t){return this.currentBBox.xt.x&&this.currentBBox.yt.y&&this.currentBBox.width+this.currentBBox.x>t.x+t.width&&this.currentBBox.height+this.currentBBox.y>t.y+t.height},HShapeElement.prototype.renderInnerContentfunction(){if(this._renderShapeFrame(),!this.hidden&&(this._isFirstFrame||this._mdf)){var tthis.tempBoundingBox,e999999;if(t.xe,t.xMax-e,t.ye,t.yMax-e,this.calculateBoundingBox(this.itemsData,t),t.widtht.xMaxt.x?0:t.xMax-t.x,t.heightt.yMaxt.y?0:t.yMax-t.y,this.currentBoxContains(t))return;var r!1;if(this.currentBBox.w!t.width&&(this.currentBBox.wt.width,this.shapeCont.setAttribute(width,t.width),r!0),this.currentBBox.h!t.height&&(this.currentBBox.ht.height,this.shapeCont.setAttribute(height,t.height),r!0),r||this.currentBBox.x!t.x||this.currentBBox.y!t.y){this.currentBBox.wt.width,this.currentBBox.ht.height,this.currentBBox.xt.x,this.currentBBox.yt.y,this.shapeCont.setAttribute(viewBox,this.currentBBox.x+ +this.currentBBox.y+ +this.currentBBox.w+ +this.currentBBox.h);var ithis.shapeCont.style,stranslate(+this.currentBBox.x+px,+this.currentBBox.y+px);i.transforms,i.webkitTransforms}}},extendPrototype(BaseElement,TransformElement,HBaseElement,HierarchyElement,FrameElement,RenderableDOMElement,ITextElement,HTextElement),HTextElement.prototype.createContentfunction(){if(this.isMaskedthis.checkMasks(),this.isMasked){this.renderTypesvg,this.compWthis.comp.data.w,this.compHthis.comp.data.h,this.svgElement.setAttribute(width,this.compW),this.svgElement.setAttribute(height,this.compH);var tcreateNS(g);this.maskedElement.appendChild(t),this.innerElemt}else this.renderTypehtml,this.innerElemthis.layerElement;this.checkParenting()},HTextElement.prototype.buildNewTextfunction(){var tthis.textProperty.currentData;this.renderedLetterscreateSizedArray(t.l?t.l.length:0);var ethis.innerElem.style,rt.fc?this.buildColor(t.fc):rgba(0,0,0,0);e.fillr,e.colorr,t.sc&&(e.strokethis.buildColor(t.sc),e.strokeWidtht.sw+px);var i,s,athis.globalData.fontManager.getFontByName(t.f);if(!this.globalData.fontManager.chars)if(e.fontSizet.finalSize+px,e.lineHeightt.finalSize+px,a.fClass)this.innerElem.classNamea.fClass;else{e.fontFamilya.fFamily;var nt.fWeight,ot.fStyle;e.fontStyleo,e.fontWeightn}var h,l,p,ft.l;sf.length;var m,cthis.mHelper,d,u0;for(i0;is;i+1){if(this.globalData.fontManager.chars?(this.textPathsu?hthis.textPathsu:((hcreateNS(path)).setAttribute(stroke-linecap,lineCapEnum1),h.setAttribute(stroke-linejoin,lineJoinEnum2),h.setAttribute(stroke-miterlimit,4)),this.isMasked||(this.textSpansu?p(lthis.textSpansu).children0:((lcreateTag(div)).style.lineHeight0,(pcreateNS(svg)).appendChild(h),styleDiv(l)))):this.isMasked?hthis.textPathsu?this.textPathsu:createNS(text):this.textSpansu?(lthis.textSpansu,hthis.textPathsu):(styleDiv(lcreateTag(span)),styleDiv(hcreateTag(span)),l.appendChild(h)),this.globalData.fontManager.chars){var y,gthis.globalData.fontManager.getCharData(t.finalTexti,a.fStyle,this.globalData.fontManager.getFontByName(t.f).fFamily);if(yg?g.data:null,c.reset(),y&&y.shapes&&y.shapes.length&&(my.shapes0.it,c.scale(t.finalSize/100,t.finalSize/100),dthis.createPathShape(c,m),h.setAttribute(d,d)),this.isMasked)this.innerElem.appendChild(h);else{if(this.innerElem.appendChild(l),y&&y.shapes){document.body.appendChild(p);var vp.getBBox();p.setAttribute(width,v.width+2),p.setAttribute(height,v.height+2),p.setAttribute(viewBox,v.x-1+ +(v.y-1)+ +(v.width+2)+ +(v.height+2));var bp.style,Ptranslate(+(v.x-1)+px,+(v.y-1)+px);b.transformP,b.webkitTransformP,fi.yOffsetv.y-1}else p.setAttribute(width,1),p.setAttribute(height,1);l.appendChild(p)}}else if(h.textContentfi.val,h.setAttributeNS(http://www.w3.org/XML/1998/namespace,xml:space,preserve),this.isMasked)this.innerElem.appendChild(h);else{this.innerElem.appendChild(l);var Eh.style,xtranslate3d(0,+-t.finalSize/1.2+px,0);E.transformx,E.webkitTransformx}this.isMasked?this.textSpansuh:this.textSpansul,this.textSpansu.style.displayblock,this.textPathsuh,u+1}for(;uthis.textSpans.length;)this.textSpansu.style.displaynone,u+1},HTextElement.prototype.renderInnerContentfunction(){var t;if(this.data.singleShape){if(!this._isFirstFrame&&!this.lettersChangedFlag)return;if(this.isMasked&&this.finalTransform._matMdf){this.svgElement.setAttribute(viewBox,-this.finalTransform.mProp.p.v0+ +-this.finalTransform.mProp.p.v1+ +this.compW+ +this.compH),tthis.svgElement.style;var etranslate(+-this.finalTransform.mProp.p.v0+px,+-this.finalTransform.mProp.p.v1+px);t.transforme,t.webkitTransforme}}if(this.textAnimator.getMeasures(this.textProperty.currentData,this.lettersChangedFlag),this.lettersChangedFlag||this.textAnimator.lettersChangedFlag){var r,i,s,a,n,o0,hthis.textAnimator.renderedLetters,lthis.textProperty.currentData.l;for(il.length,r0;ri;r+1)lr.n?o+1:(athis.textSpansr,nthis.textPathsr,sho,o+1,s._mdf.m&&(this.isMasked?a.setAttribute(transform,s.m):(a.style.webkitTransforms.m,a.style.transforms.m)),a.style.opacitys.o,s.sw&&s._mdf.sw&&n.setAttribute(stroke-width,s.sw),s.sc&&s._mdf.sc&&n.setAttribute(stroke,s.sc),s.fc&&s._mdf.fc&&(n.setAttribute(fill,s.fc),n.style.colors.fc));if(this.innerElem.getBBox&&!this.hidden&&(this._isFirstFrame||this._mdf)){var pthis.innerElem.getBBox();this.currentBBox.w!p.width&&(this.currentBBox.wp.width,this.svgElement.setAttribute(width,p.width)),this.currentBBox.h!p.height&&(this.currentBBox.hp.height,this.svgElement.setAttribute(height,p.height));if(this.currentBBox.w!p.width+2||this.currentBBox.h!p.height+2||this.currentBBox.x!p.x-1||this.currentBBox.y!p.y-1){this.currentBBox.wp.width+2,this.currentBBox.hp.height+2,this.currentBBox.xp.x-1,this.currentBBox.yp.y-1,this.svgElement.setAttribute(viewBox,this.currentBBox.x+ +this.currentBBox.y+ +this.currentBBox.w+ +this.currentBBox.h),tthis.svgElement.style;var ftranslate(+this.currentBBox.x+px,+this.currentBBox.y+px);t.transformf,t.webkitTransformf}}}},extendPrototype(BaseElement,FrameElement,HierarchyElement,HCameraElement),HCameraElement.prototype.setupfunction(){var t,e,r,i,sthis.comp.threeDElements.length;for(t0;ts;t+1)if(3d(ethis.comp.threeDElementst).type){re.perspectiveElem.style,ie.container.style;var athis.pe.v+px,n0px 0px 0px,omatrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1);r.perspectivea,r.webkitPerspectivea,i.transformOriginn,i.mozTransformOriginn,i.webkitTransformOriginn,r.transformo,r.webkitTransformo}},HCameraElement.prototype.createElementsfunction(){},HCameraElement.prototype.hidefunction(){},HCameraElement.prototype.renderFramefunction(){var t,e,rthis._isFirstFrame;if(this.hierarchy)for(ethis.hierarchy.length,t0;te;t+1)rthis.hierarchyt.finalTransform.mProp._mdf||r;if(r||this.pe._mdf||this.p&&this.p._mdf||this.px&&(this.px._mdf||this.py._mdf||this.pz._mdf)||this.rx._mdf||this.ry._mdf||this.rz._mdf||this.or._mdf||this.a&&this.a._mdf){if(this.mat.reset(),this.hierarchy)for(tethis.hierarchy.length-1;t>0;t-1){var ithis.hierarchyt.finalTransform.mProp;this.mat.translate(-i.p.v0,-i.p.v1,i.p.v2),this.mat.rotateX(-i.or.v0).rotateY(-i.or.v1).rotateZ(i.or.v2),this.mat.rotateX(-i.rx.v).rotateY(-i.ry.v).rotateZ(i.rz.v),this.mat.scale(1/i.s.v0,1/i.s.v1,1/i.s.v2),this.mat.translate(i.a.v0,i.a.v1,i.a.v2)}if(this.p?this.mat.translate(-this.p.v0,-this.p.v1,this.p.v2):this.mat.translate(-this.px.v,-this.py.v,this.pz.v),this.a){var s;sthis.p?this.p.v0-this.a.v0,this.p.v1-this.a.v1,this.p.v2-this.a.v2:this.px.v-this.a.v0,this.py.v-this.a.v1,this.pz.v-this.a.v2;var aMath.sqrt(Math.pow(s0,2)+Math.pow(s1,2)+Math.pow(s2,2)),ns0/a,s1/a,s2/a,oMath.sqrt(n2*n2+n0*n0),hMath.atan2(n1,o),lMath.atan2(n0,-n2);this.mat.rotateY(l).rotateX(-h)}this.mat.rotateX(-this.rx.v).rotateY(-this.ry.v).rotateZ(this.rz.v),this.mat.rotateX(-this.or.v0).rotateY(-this.or.v1).rotateZ(this.or.v2),this.mat.translate(this.globalData.compSize.w/2,this.globalData.compSize.h/2,0),this.mat.translate(0,0,this.pe.v);var p!this._prevMat.equals(this.mat);if((p||this.pe._mdf)&&this.comp.threeDElements){var f,m,c;for(ethis.comp.threeDElements.length,t0;te;t+1)if(3d(fthis.comp.threeDElementst).type){if(p){var dthis.mat.toCSS();(cf.container.style).transformd,c.webkitTransformd}this.pe._mdf&&((mf.perspectiveElem.style).perspectivethis.pe.v+px,m.webkitPerspectivethis.pe.v+px)}this.mat.clone(this._prevMat)}}this._isFirstFrame!1},HCameraElement.prototype.prepareFramefunction(t){this.prepareProperties(t,!0)},HCameraElement.prototype.destroyfunction(){},HCameraElement.prototype.getBaseElementfunction(){return null},extendPrototype(BaseElement,TransformElement,HBaseElement,HSolidElement,HierarchyElement,FrameElement,RenderableElement,HImageElement),HImageElement.prototype.createContentfunction(){var tthis.globalData.getAssetsPath(this.assetData),enew Image;this.data.hasMask?(this.imageElemcreateNS(image),this.imageElem.setAttribute(width,this.assetData.w+px),this.imageElem.setAttribute(height,this.assetData.h+px),this.imageElem.setAttributeNS(http://www.w3.org/1999/xlink,href,t),this.layerElement.appendChild(this.imageElem),this.baseElement.setAttribute(width,this.assetData.w),this.baseElement.setAttribute(height,this.assetData.h)):this.layerElement.appendChild(e),e.crossOriginanonymous,e.srct,this.data.ln&&this.baseElement.setAttribute(id,this.data.ln)},extendPrototype(BaseRenderer,HybridRendererBase),HybridRendererBase.prototype.buildItemSVGRenderer.prototype.buildItem,HybridRendererBase.prototype.checkPendingElementsfunction(){for(;this.pendingElements.length;){this.pendingElements.pop().checkParenting()}},HybridRendererBase.prototype.appendElementInPosfunction(t,e){var rt.getBaseElement();if(r){var ithis.layerse;if(i.ddd&&this.supports3d)this.addTo3dContainer(r,e);else if(this.threeDElements)this.addTo3dContainer(r,e);else{for(var s,a,n0;ne;)this.elementsn&&!0!this.elementsn&&this.elementsn.getBaseElement&&(athis.elementsn,s(this.layersn.ddd?this.getThreeDContainerByPos(n):a.getBaseElement())||s),n+1;s?i.ddd&&this.supports3d||this.layerElement.insertBefore(r,s):i.ddd&&this.supports3d||this.layerElement.appendChild(r)}}},HybridRendererBase.prototype.createShapefunction(t){return this.supports3d?new HShapeElement(t,this.globalData,this):new SVGShapeElement(t,this.globalData,this)},HybridRendererBase.prototype.createTextfunction(t){return this.supports3d?new HTextElement(t,this.globalData,this):new SVGTextLottieElement(t,this.globalData,this)},HybridRendererBase.prototype.createCamerafunction(t){return this.cameranew HCameraElement(t,this.globalData,this),this.camera},HybridRendererBase.prototype.createImagefunction(t){return this.supports3d?new HImageElement(t,this.globalData,this):new IImageElement(t,this.globalData,this)},HybridRendererBase.prototype.createSolidfunction(t){return this.supports3d?new HSolidElement(t,this.globalData,this):new ISolidElement(t,this.globalData,this)},HybridRendererBase.prototype.createNullSVGRenderer.prototype.createNull,HybridRendererBase.prototype.getThreeDContainerByPosfunction(t){for(var e0,rthis.threeDElements.length;er;){if(this.threeDElementse.startPost&&this.threeDElementse.endPos>t)return this.threeDElementse.perspectiveElem;e+1}return null},HybridRendererBase.prototype.createThreeDContainerfunction(t,e){var r,i,screateTag(div);styleDiv(s);var acreateTag(div);if(styleDiv(a),3de){(rs.style).widththis.globalData.compSize.w+px,r.heightthis.globalData.compSize.h+px;var n50% 50%;r.webkitTransformOriginn,r.mozTransformOriginn,r.transformOriginn;var omatrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1);(ia.style).transformo,i.webkitTransformo}s.appendChild(a);var h{container:a,perspectiveElem:s,startPos:t,endPos:t,type:e};return this.threeDElements.push(h),h},HybridRendererBase.prototype.build3dContainersfunction(){var t,e,rthis.layers.length,i;for(t0;tr;t+1)this.layerst.ddd&&3!this.layerst.ty?(3d!i&&(i3d,ethis.createThreeDContainer(t,3d)),e.endPosMath.max(e.endPos,t)):(2d!i&&(i2d,ethis.createThreeDContainer(t,2d)),e.endPosMath.max(e.endPos,t));for(t(rthis.threeDElements.length)-1;t>0;t-1)this.resizerElem.appendChild(this.threeDElementst.perspectiveElem)},HybridRendererBase.prototype.addTo3dContainerfunction(t,e){for(var r0,ithis.threeDElements.length;ri;){if(ethis.threeDElementsr.endPos){for(var s,athis.threeDElementsr.startPos;ae;)this.elementsa&&this.elementsa.getBaseElement&&(sthis.elementsa.getBaseElement()),a+1;s?this.threeDElementsr.container.insertBefore(t,s):this.threeDElementsr.container.appendChild(t);break}r+1}},HybridRendererBase.prototype.configAnimationfunction(t){var ecreateTag(div),rthis.animationItem.wrapper,ie.style;i.widtht.w+px,i.heightt.h+px,this.resizerEleme,styleDiv(e),i.transformStyleflat,i.mozTransformStyleflat,i.webkitTransformStyleflat,this.renderConfig.className&&e.setAttribute(class,this.renderConfig.className),r.appendChild(e),i.overflowhidden;var screateNS(svg);s.setAttribute(width,1),s.setAttribute(height,1),styleDiv(s),this.resizerElem.appendChild(s);var acreateNS(defs);s.appendChild(a),this.datat,this.setupGlobalData(t,s),this.globalData.defsa,this.layerst.layers,this.layerElementthis.resizerElem,this.build3dContainers(),this.updateContainerSize()},HybridRendererBase.prototype.destroyfunction(){var t;this.animationItem.wrapper&&(this.animationItem.wrapper.innerText),this.animationItem.containernull,this.globalData.defsnull;var ethis.layers?this.layers.length:0;for(t0;te;t+1)this.elementst.destroy();this.elements.length0,this.destroyed!0,this.animationItemnull},HybridRendererBase.prototype.updateContainerSizefunction(){var t,e,r,i,sthis.animationItem.wrapper.offsetWidth,athis.animationItem.wrapper.offsetHeight,ns/a;this.globalData.compSize.w/this.globalData.compSize.h>n?(ts/this.globalData.compSize.w,es/this.globalData.compSize.w,r0,i(a-this.globalData.compSize.h*(s/this.globalData.compSize.w))/2):(ta/this.globalData.compSize.h,ea/this.globalData.compSize.h,r(s-this.globalData.compSize.w*(a/this.globalData.compSize.h))/2,i0);var othis.resizerElem.style;o.webkitTransformmatrix3d(+t+,0,0,0,0,+e+,0,0,0,0,1,0,+r+,+i+,0,1),o.transformo.webkitTransform},HybridRendererBase.prototype.renderFrameSVGRenderer.prototype.renderFrame,HybridRendererBase.prototype.hidefunction(){this.resizerElem.style.displaynone},HybridRendererBase.prototype.showfunction(){this.resizerElem.style.displayblock},HybridRendererBase.prototype.initItemsfunction(){if(this.buildAllItems(),this.camera)this.camera.setup();else{var t,ethis.globalData.compSize.w,rthis.globalData.compSize.h,ithis.threeDElements.length;for(t0;ti;t+1){var sthis.threeDElementst.perspectiveElem.style;s.webkitPerspectiveMath.sqrt(Math.pow(e,2)+Math.pow(r,2))+px,s.perspectives.webkitPerspective}}},HybridRendererBase.prototype.searchExtraCompositionsfunction(t){var e,rt.length,icreateTag(div);for(e0;er;e+1)if(te.xt){var sthis.createComp(te,i,this.globalData.comp,null);s.initExpressions(),this.globalData.projectInterface.registerComposition(s)}},extendPrototype(HybridRendererBase,ICompElement,HBaseElement,HCompElement),HCompElement.prototype._createBaseContainerElementsHCompElement.prototype.createContainerElements,HCompElement.prototype.createContainerElementsfunction(){this._createBaseContainerElements(),this.data.hasMask?(this.svgElement.setAttribute(width,this.data.w),this.svgElement.setAttribute(height,this.data.h),this.transformedElementthis.baseElement):this.transformedElementthis.layerElement},HCompElement.prototype.addTo3dContainerfunction(t,e){for(var r,i0;ie;)this.elementsi&&this.elementsi.getBaseElement&&(rthis.elementsi.getBaseElement()),i+1;r?this.layerElement.insertBefore(t,r):this.layerElement.appendChild(t)},HCompElement.prototype.createCompfunction(t){return this.supports3d?new HCompElement(t,this.globalData,this):new SVGCompElement(t,this.globalData,this)},extendPrototype(HybridRendererBase,HybridRenderer),HybridRenderer.prototype.createCompfunction(t){return this.supports3d?new HCompElement(t,this.globalData,this):new SVGCompElement(t,this.globalData,this)};var Expressionsfunction(){var t{};return t.initExpressionsfunction(t){var e0,r;t.renderer.compInterfaceCompExpressionInterface(t.renderer),t.renderer.globalData.projectInterface.registerComposition(t.renderer),t.renderer.globalData.pushExpressionfunction(){e+1},t.renderer.globalData.popExpressionfunction(){0(e-1)&&function(){var t,er.length;for(t0;te;t+1)rt.release();r.length0}()},t.renderer.globalData.registerExpressionPropertyfunction(t){-1r.indexOf(t)&&r.push(t)}},t}();function _typeof$1(t){return _typeof$1functiontypeof Symbol&&symboltypeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&functiontypeof Symbol&&t.constructorSymbol&&t!Symbol.prototype?symbol:typeof t},_typeof$1(t)}function seedRandom(t,e){var r,ithis,s256,ae.pow(s,6),ne.pow(2,52),o2*n,h255;function l(t){var e,rt.length,ithis,a0,ni.ii.j0,oi.S;for(r||(tr++);as;)oaa++;for(a0;as;a++)oaonh&n+ta%r+(eoa),one;i.gfunction(t){for(var e,r0,ai.i,ni.j,oi.S;t--;)eoah&a+1,rr*s+oh&(oaonh&n+e)+(one);return i.ia,i.jn,r}}function p(t,e){return e.it.i,e.jt.j,e.St.S.slice(),e}function f(t,e){var r,i,s_typeof$1(t);if(e&&objects)for(r in t)try{i.push(f(tr,e-1))}catch(t){}return i.length?i:strings?t:t+\0}function m(t,e){for(var r,it+,s0;si.length;)eh&sh&(r^19*eh&s)+i.charCodeAt(s++);return c(e)}function c(t){return String.fromCharCode.apply(0,t)}e.seedrandomfunction(h,d,u){var y,gm(f((d!0d?{entropy:!0}:d||{}).entropy?h,c(t):nullh?function(){try{r;var enew Uint8Array(s);return(i.crypto||i.msCrypto).getRandomValues(e),c(e)}catch(e){var ai.navigator,na&&a.plugins;return+new Date,i,n,i.screen,c(t)}}():h,3),y),vnew l(y),bfunction(){for(var tv.g(6),ea,r0;tn;)t(t+r)*s,e*s,rv.g(1);for(;t>o;)t/2,e/2,r>>>1;return(t+r)/e};return b.int32function(){return 0|v.g(4)},b.quickfunction(){return v.g(4)/4294967296},b.doubleb,m(c(v.S),t),(d.pass||u||function(t,r,i,s){return s&&(s.S&&p(s,v),t.statefunction(){return p(v,{})}),i?(e.randomt,r):t})(b,g,globalin d?d.global:thise,d.state)},m(e.random(),t)}function initialize$2(t){seedRandom(,t)}var propTypes{SHAPE:shape};function _typeof(t){return _typeoffunctiontypeof Symbol&&symboltypeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&functiontypeof Symbol&&t.constructorSymbol&&t!Symbol.prototype?symbol:typeof t},_typeof(t)}var ExpressionManagerfunction(){var ob{},MathBMMath,windownull,documentnull,XMLHttpRequestnull,fetchnull,framesnull;function $bm_isInstanceOfArray(t){return t.constructorArray||t.constructorFloat32Array}function isNumerable(t,e){returnnumbert||booleant||stringt||e instanceof Number}function $bm_neg(t){var e_typeof(t);if(numbere||booleane||t instanceof Number)return-t;if($bm_isInstanceOfArray(t)){var r,it.length,s;for(r0;ri;r+1)sr-tr;return s}return t.propType?t.v:-t}initialize$2(BMMath);var easeInBezBezierFactory.getBezierEasing(.333,0,.833,.833,easeIn).get,easeOutBezBezierFactory.getBezierEasing(.167,.167,.667,1,easeOut).get,easeInOutBezBezierFactory.getBezierEasing(.33,0,.667,1,easeInOut).get;function sum(t,e){var r_typeof(t),i_typeof(e);if(stringr||stringi)return t+e;if(isNumerable(r,t)&&isNumerable(i,e))return t+e;if($bm_isInstanceOfArray(t)&&isNumerable(i,e))return(tt.slice(0))0+e,t;if(isNumerable(r,t)&&$bm_isInstanceOfArray(e))return(ee.slice(0))0t+e0,e;if($bm_isInstanceOfArray(t)&&$bm_isInstanceOfArray(e)){for(var s0,at.length,ne.length,o;sa||sn;)(numbertypeof ts||tsinstanceof Number)&&(numbertypeof es||esinstanceof Number)?osts+es:osvoid 0es?ts:ts||es,s+1;return o}return 0}var addsum;function sub(t,e){var r_typeof(t),i_typeof(e);if(isNumerable(r,t)&&isNumerable(i,e))returnstringr&&(tparseInt(t,10)),stringi&&(eparseInt(e,10)),t-e;if($bm_isInstanceOfArray(t)&&isNumerable(i,e))return(tt.slice(0))0-e,t;if(isNumerable(r,t)&&$bm_isInstanceOfArray(e))return(ee.slice(0))0t-e0,e;if($bm_isInstanceOfArray(t)&&$bm_isInstanceOfArray(e)){for(var s0,at.length,ne.length,o;sa||sn;)(numbertypeof ts||tsinstanceof Number)&&(numbertypeof es||esinstanceof Number)?osts-es:osvoid 0es?ts:ts||es,s+1;return o}return 0}function mul(t,e){var r,i,s,a_typeof(t),n_typeof(e);if(isNumerable(a,t)&&isNumerable(n,e))return t*e;if($bm_isInstanceOfArray(t)&&isNumerable(n,e)){for(st.length,rcreateTypedArray(float32,s),i0;is;i+1)riti*e;return r}if(isNumerable(a,t)&&$bm_isInstanceOfArray(e)){for(se.length,rcreateTypedArray(float32,s),i0;is;i+1)rit*ei;return r}return 0}function div(t,e){var r,i,s,a_typeof(t),n_typeof(e);if(isNumerable(a,t)&&isNumerable(n,e))return t/e;if($bm_isInstanceOfArray(t)&&isNumerable(n,e)){for(st.length,rcreateTypedArray(float32,s),i0;is;i+1)riti/e;return r}if(isNumerable(a,t)&&$bm_isInstanceOfArray(e)){for(se.length,rcreateTypedArray(float32,s),i0;is;i+1)rit/ei;return r}return 0}function mod(t,e){returnstringtypeof t&&(tparseInt(t,10)),stringtypeof e&&(eparseInt(e,10)),t%e}var $bm_sumsum,$bm_subsub,$bm_mulmul,$bm_divdiv,$bm_modmod;function clamp(t,e,r){if(e>r){var ir;re,ei}return Math.min(Math.max(t,e),r)}function radiansToDegrees(t){return t/degToRads}var radians_to_degreesradiansToDegrees;function degreesToRadians(t){return t*degToRads}var degrees_to_radiansradiansToDegrees,helperLengthArray0,0,0,0,0,0;function length(t,e){if(numbertypeof t||t instanceof Number)return ee||0,Math.abs(t-e);var r;e||(ehelperLengthArray);var iMath.min(t.length,e.length),s0;for(r0;ri;r+1)s+Math.pow(er-tr,2);return Math.sqrt(s)}function normalize(t){return div(t,length(t))}function rgbToHsl(t){var e,r,it0,st1,at2,nMath.max(i,s,a),oMath.min(i,s,a),h(n+o)/2;if(no)e0,r0;else{var ln-o;switch(rh>.5?l/(2-n-o):l/(n+o),n){case i:e(s-a)/l+(sa?6:0);break;case s:e(a-i)/l+2;break;case a:e(i-s)/l+4}e/6}returne,r,h,t3}function hue2rgb(t,e,r){return r0&&(r+1),r>1&&(r-1),r1/6?t+6*(e-t)*r:r.5?e:r2/3?t+(e-t)*(2/3-r)*6:t}function hslToRgb(t){var e,r,i,st0,at1,nt2;if(0a)en,in,rn;else{var on.5?n*(1+a):n+a-n*a,h2*n-o;ehue2rgb(h,o,s+1/3),rhue2rgb(h,o,s),ihue2rgb(h,o,s-1/3)}returne,r,i,t3}function linear(t,e,r,i,s){if(void 0!i&&void 0!s||(ie,sr,e0,r1),re){var ar;re,ea}if(te)return i;if(t>r)return s;var n,ore?0:(t-e)/(r-e);if(!i.length)return i+(s-i)*o;var hi.length,lcreateTypedArray(float32,h);for(n0;nh;n+1)lnin+(sn-in)*o;return l}function random(t,e){if(void 0e&&(void 0t?(t0,e1):(et,tvoid 0)),e.length){var r,ie.length;t||(tcreateTypedArray(float32,i));var screateTypedArray(float32,i),aBMMath.random();for(r0;ri;r+1)srtr+a*(er-tr);return s}return void 0t&&(t0),t+BMMath.random()*(e-t)}function createPath(t,e,r,i){var s,at.length,nshapePool.newElement();n.setPathData(!!i,a);var o,h,l0,0;for(s0;sa;s+1)oe&&es?es:l,hr&&rs?rs:l,n.setTripleAt(ts0,ts1,h0+ts0,h1+ts1,o0+ts0,o1+ts1,s,!0);return n}function initiateExpression(elem,data,property){var valdata.x,needsVelocity/velocity(?!\w\d)/.test(val),_needsRandom-1!val.indexOf(random),elemTypeelem.data.ty,transform,$bm_transform,content,effect,thisPropertyproperty;thisProperty.valueAtTimethisProperty.getValueAtTime,Object.defineProperty(thisProperty,value,{get:function(){return thisProperty.v}}),elem.comp.frameDuration1/elem.comp.globalData.frameRate,elem.comp.displayStartTime0;var inPointelem.data.ip/elem.comp.globalData.frameRate,outPointelem.data.op/elem.comp.globalData.frameRate,widthelem.data.sw?elem.data.sw:0,heightelem.data.sh?elem.data.sh:0,nameelem.data.nm,loopIn,loop_in,loopOut,loop_out,smooth,toWorld,fromWorld,fromComp,toComp,fromCompToSurface,position,rotation,anchorPoint,scale,thisLayer,thisComp,mask,valueAtTime,velocityAtTime,scoped_bm_rt,expression_functioneval(function _expression_function(){+val+;scoped_bm_rt$bm_rt})0,numKeysproperty.kf?data.k.length:0,active!this.data||!0!this.data.hd,wigglefunction(t,e){var r,i,sthis.pv.length?this.pv.length:1,acreateTypedArray(float32,s);var nMath.floor(5*time);for(r0,i0;rn;){for(i0;is;i+1)ai+-e+2*e*BMMath.random();r+1}var o5*time,ho-Math.floor(o),lcreateTypedArray(float32,s);if(s>1){for(i0;is;i+1)lithis.pvi+ai+(-e+2*e*BMMath.random())*h;return l}return this.pv+a0+(-e+2*e*BMMath.random())*h}.bind(this);function loopInDuration(t,e){return loopIn(t,e,!0)}function loopOutDuration(t,e){return loopOut(t,e,!0)}thisProperty.loopIn&&(loopInthisProperty.loopIn.bind(thisProperty),loop_inloopIn),thisProperty.loopOut&&(loopOutthisProperty.loopOut.bind(thisProperty),loop_outloopOut),thisProperty.smooth&&(smooththisProperty.smooth.bind(thisProperty)),this.getValueAtTime&&(valueAtTimethis.getValueAtTime.bind(this)),this.getVelocityAtTime&&(velocityAtTimethis.getVelocityAtTime.bind(this));var compelem.comp.globalData.projectInterface.bind(elem.comp.globalData.projectInterface),time,velocity,value,text,textIndex,textTotal,selectorValue;function lookAt(t,e){var re0-t0,e1-t1,e2-t2,iMath.atan2(r0,Math.sqrt(r1*r1+r2*r2))/degToRads;return-Math.atan2(r1,r2)/degToRads,i,0}function easeOut(t,e,r,i,s){return applyEase(easeOutBez,t,e,r,i,s)}function easeIn(t,e,r,i,s){return applyEase(easeInBez,t,e,r,i,s)}function ease(t,e,r,i,s){return applyEase(easeInOutBez,t,e,r,i,s)}function applyEase(t,e,r,i,s,a){void 0s?(sr,ai):e(e-r)/(i-r),e>1?e1:e0&&(e0);var nt(e);if($bm_isInstanceOfArray(s)){var o,hs.length,lcreateTypedArray(float32,h);for(o0;oh;o+1)lo(ao-so)*n+so;return l}return(a-s)*n+s}function nearestKey(t){var e,r,i,sdata.k.length;if(data.k.length&&number!typeof data.k0)if(r-1,(t*elem.comp.globalData.frameRate)data.k0.t)r1,idata.k0.t;else{for(e0;es-1;e+1){if(tdata.ke.t){re+1,idata.ke.t;break}if(t>data.ke.t&&tdata.ke+1.t){t-data.ke.t>data.ke+1.t-t?(re+2,idata.ke+1.t):(re+1,idata.ke.t);break}}-1r&&(re+1,idata.ke.t)}else r0,i0;var a{};return a.indexr,a.timei/elem.comp.globalData.frameRate,a}function key(t){var e,r,i;if(!data.k.length||numbertypeof data.k0)throw new Error(The property has no keyframe at index +t);t-1,e{time:data.kt.t/elem.comp.globalData.frameRate,value:};var sObject.prototype.hasOwnProperty.call(data.kt,s)?data.kt.s:data.kt-1.e;for(is.length,r0;ri;r+1)ersr,e.valuersr;return e}function framesToTime(t,e){return e||(eelem.comp.globalData.frameRate),t/e}function timeToFrames(t,e){return t||0t||(ttime),e||(eelem.comp.globalData.frameRate),t*e}function seedRandom(t){BMMath.seedrandom(randSeed+t)}function sourceRectAtTime(){return elem.sourceRectAtTime()}function substring(t,e){returnstringtypeof value?void 0e?value.substring(t):value.substring(t,e):}function substr(t,e){returnstringtypeof value?void 0e?value.substr(t):value.substr(t,e):}function posterizeTime(t){time0t?0:Math.floor(time*t)/t,valuevalueAtTime(time)}var indexelem.data.ind,hasParent!(!elem.hierarchy||!elem.hierarchy.length),parent,randSeedMath.floor(1e6*Math.random()),globalDataelem.globalData;function executeExpression(t){return valuet,this.frameExpressionIdelem.globalData.frameId&&textSelector!this.propType?value:(textSelectorthis.propType&&(textIndexthis.textIndex,textTotalthis.textTotal,selectorValuethis.selectorValue),thisLayer||(textelem.layerInterface.text,thisLayerelem.layerInterface,thisCompelem.comp.compInterface,toWorldthisLayer.toWorld.bind(thisLayer),fromWorldthisLayer.fromWorld.bind(thisLayer),fromCompthisLayer.fromComp.bind(thisLayer),toCompthisLayer.toComp.bind(thisLayer),maskthisLayer.mask?thisLayer.mask.bind(thisLayer):null,fromCompToSurfacefromComp),transform||(transformelem.layerInterface(ADBE Transform Group),$bm_transformtransform,transform&&(anchorPointtransform.anchorPoint)),4!elemType||content||(contentthisLayer(ADBE Root Vectors Group)),effect||(effectthisLayer(4)),(hasParent!(!elem.hierarchy||!elem.hierarchy.length))&&!parent&&(parentelem.hierarchy0.layerInterface),timethis.comp.renderedFrame/this.comp.globalData.frameRate,_needsRandom&&seedRandom(randSeed+time),needsVelocity&&(velocityvelocityAtTime(time)),expression_function(),this.frameExpressionIdelem.globalData.frameId,scoped_bm_rtscoped_bm_rt.propTypepropTypes.SHAPE?scoped_bm_rt.v:scoped_bm_rt)}return executeExpression.__preventDeadCodeRemoval$bm_transform,anchorPoint,time,velocity,inPoint,outPoint,width,height,name,loop_in,loop_out,smooth,toComp,fromCompToSurface,toWorld,fromWorld,mask,position,rotation,scale,thisComp,numKeys,active,wiggle,loopInDuration,loopOutDuration,comp,lookAt,easeOut,easeIn,ease,nearestKey,key,text,textIndex,textTotal,selectorValue,framesToTime,timeToFrames,sourceRectAtTime,substring,substr,posterizeTime,index,globalData,executeExpression}return ob.initiateExpressioninitiateExpression,ob.__preventDeadCodeRemovalwindow,document,XMLHttpRequest,fetch,frames,$bm_neg,add,$bm_sum,$bm_sub,$bm_mul,$bm_div,$bm_mod,clamp,radians_to_degrees,degreesToRadians,degrees_to_radians,normalize,rgbToHsl,hslToRgb,linear,random,createPath,ob}(),expressionHelpers{searchExpressions:function(t,e,r){e.x&&(r.k!0,r.x!0,r.initiateExpressionExpressionManager.initiateExpression,r.effectsSequence.push(r.initiateExpression(t,e,r).bind(r)))},getSpeedAtTime:function(t){var ethis.getValueAtTime(t),rthis.getValueAtTime(t+-.01),i0;if(e.length){var s;for(s0;se.length;s+1)i+Math.pow(rs-es,2);i100*Math.sqrt(i)}else i0;return i},getVelocityAtTime:function(t){if(void 0!this.vel)return this.vel;var e,r,i-.001,sthis.getValueAtTime(t),athis.getValueAtTime(t+i);if(s.length)for(ecreateTypedArray(float32,s.length),r0;rs.length;r+1)er(ar-sr)/i;else e(a-s)/i;return e},getValueAtTime:function(t){return t*this.elem.globalData.frameRate,(t-this.offsetTime)!this._cachingAtTime.lastFrame&&(this._cachingAtTime.lastIndexthis._cachingAtTime.lastFramet?this._cachingAtTime.lastIndex:0,this._cachingAtTime.valuethis.interpolateValue(t,this._cachingAtTime),this._cachingAtTime.lastFramet),this._cachingAtTime.value},getStaticValueAtTime:function(){return this.pv},setGroupProperty:function(t){this.propertyGroupt}};function addPropertyDecorator(){function t(t,e,r){if(!this.k||!this.keyframes)return this.pv;tt?t.toLowerCase():;var i,s,a,n,o,hthis.comp.renderedFrame,lthis.keyframes,pll.length-1.t;if(hp)return this.pv;if(r?sp-(ie?Math.abs(p-this.elem.comp.globalData.frameRate*e):Math.max(0,p-this.elem.data.ip)):((!e||e>l.length-1)&&(el.length-1),ip-(sll.length-1-e.t)),pingpongt){if(Math.floor((h-s)/i)%2!0)return this.getValueAtTime((i-(h-s)%i+s)/this.comp.globalData.frameRate,0)}else{if(offsett){var fthis.getValueAtTime(s/this.comp.globalData.frameRate,0),mthis.getValueAtTime(p/this.comp.globalData.frameRate,0),cthis.getValueAtTime(((h-s)%i+s)/this.comp.globalData.frameRate,0),dMath.floor((h-s)/i);if(this.pv.length){for(n(onew Array(f.length)).length,a0;an;a+1)oa(ma-fa)*d+ca;return o}return(m-f)*d+c}if(continuet){var uthis.getValueAtTime(p/this.comp.globalData.frameRate,0),ythis.getValueAtTime((p-.001)/this.comp.globalData.frameRate,0);if(this.pv.length){for(n(onew Array(u.length)).length,a0;an;a+1)oaua+(ua-ya)*((h-p)/this.comp.globalData.frameRate)/5e-4;return o}return u+(h-p)/.001*(u-y)}}return this.getValueAtTime(((h-s)%i+s)/this.comp.globalData.frameRate,0)}function e(t,e,r){if(!this.k)return this.pv;tt?t.toLowerCase():;var i,s,a,n,o,hthis.comp.renderedFrame,lthis.keyframes,pl0.t;if(h>p)return this.pv;if(r?sp+(ie?Math.abs(this.elem.comp.globalData.frameRate*e):Math.max(0,this.elem.data.op-p)):((!e||e>l.length-1)&&(el.length-1),i(sle.t)-p),pingpongt){if(Math.floor((p-h)/i)%20)return this.getValueAtTime(((p-h)%i+p)/this.comp.globalData.frameRate,0)}else{if(offsett){var fthis.getValueAtTime(p/this.comp.globalData.frameRate,0),mthis.getValueAtTime(s/this.comp.globalData.frameRate,0),cthis.getValueAtTime((i-(p-h)%i+p)/this.comp.globalData.frameRate,0),dMath.floor((p-h)/i)+1;if(this.pv.length){for(n(onew Array(f.length)).length,a0;an;a+1)oaca-(ma-fa)*d;return o}return c-(m-f)*d}if(continuet){var uthis.getValueAtTime(p/this.comp.globalData.frameRate,0),ythis.getValueAtTime((p+.001)/this.comp.globalData.frameRate,0);if(this.pv.length){for(n(onew Array(u.length)).length,a0;an;a+1)oaua+(ua-ya)*(p-h)/.001;return o}return u+(u-y)*(p-h)/.001}}return this.getValueAtTime((i-((p-h)%i+p))/this.comp.globalData.frameRate,0)}function r(t,e){if(!this.k)return this.pv;if(t.5*(t||.4),(eMath.floor(e||5))1)return this.pv;var r,i,sthis.comp.renderedFrame/this.comp.globalData.frameRate,as-t,ne>1?(s+t-a)/(e-1):1,o0,h0;for(rthis.pv.length?createTypedArray(float32,this.pv.length):0;oe;){if(ithis.getValueAtTime(a+o*n),this.pv.length)for(h0;hthis.pv.length;h+1)rh+ih;else r+i;o+1}if(this.pv.length)for(h0;hthis.pv.length;h+1)rh/e;else r/e;return r}function i(t){this._transformCachingAtTime||(this._transformCachingAtTime{v:new Matrix});var ethis._transformCachingAtTime.v;if(e.cloneFromProps(this.pre.props),this.appliedTransformations1){var rthis.a.getValueAtTime(t);e.translate(-r0*this.a.mult,-r1*this.a.mult,r2*this.a.mult)}if(this.appliedTransformations2){var ithis.s.getValueAtTime(t);e.scale(i0*this.s.mult,i1*this.s.mult,i2*this.s.mult)}if(this.sk&&this.appliedTransformations3){var sthis.sk.getValueAtTime(t),athis.sa.getValueAtTime(t);e.skewFromAxis(-s*this.sk.mult,a*this.sa.mult)}if(this.r&&this.appliedTransformations4){var nthis.r.getValueAtTime(t);e.rotate(-n*this.r.mult)}else if(!this.r&&this.appliedTransformations4){var othis.rz.getValueAtTime(t),hthis.ry.getValueAtTime(t),lthis.rx.getValueAtTime(t),pthis.or.getValueAtTime(t);e.rotateZ(-o*this.rz.mult).rotateY(h*this.ry.mult).rotateX(l*this.rx.mult).rotateZ(-p2*this.or.mult).rotateY(p1*this.or.mult).rotateX(p0*this.or.mult)}if(this.data.p&&this.data.p.s){var fthis.px.getValueAtTime(t),mthis.py.getValueAtTime(t);if(this.data.p.z){var cthis.pz.getValueAtTime(t);e.translate(f*this.px.mult,m*this.py.mult,-c*this.pz.mult)}else e.translate(f*this.px.mult,m*this.py.mult,0)}else{var dthis.p.getValueAtTime(t);e.translate(d0*this.p.mult,d1*this.p.mult,-d2*this.p.mult)}return e}function s(){return this.v.clone(new Matrix)}var aTransformPropertyFactory.getTransformProperty;TransformPropertyFactory.getTransformPropertyfunction(t,e,r){var na(t,e,r);return n.dynamicProperties.length?n.getValueAtTimei.bind(n):n.getValueAtTimes.bind(n),n.setGroupPropertyexpressionHelpers.setGroupProperty,n};var nPropertyFactory.getProp;PropertyFactory.getPropfunction(i,s,a,o,h){var ln(i,s,a,o,h);l.kf?l.getValueAtTimeexpressionHelpers.getValueAtTime.bind(l):l.getValueAtTimeexpressionHelpers.getStaticValueAtTime.bind(l),l.setGroupPropertyexpressionHelpers.setGroupProperty,l.loopOutt,l.loopIne,l.smoothr,l.getVelocityAtTimeexpressionHelpers.getVelocityAtTime.bind(l),l.getSpeedAtTimeexpressionHelpers.getSpeedAtTime.bind(l),l.numKeys1s.a?s.k.length:0,l.propertyIndexs.ix;var p0;return 0!a&&(pcreateTypedArray(float32,1s.a?s.k0.s.length:s.k.length)),l._cachingAtTime{lastFrame:initialDefaultFrame,lastIndex:0,value:p},expressionHelpers.searchExpressions(i,s,l),l.k&&h.addDynamicProperty(l),l};var oShapePropertyFactory.getConstructorFunction(),hShapePropertyFactory.getKeyframedConstructorFunction();function l(){}l.prototype{vertices:function(t,e){this.k&&this.getValue();var r,ithis.v;void 0!e&&(ithis.getValueAtTime(e,0));var si._length,ait,ni.v,ocreateSizedArray(s);for(r0;rs;r+1)orit||ot?ar0-nr0,ar1-nr1:ar0,ar1;return o},points:function(t){return this.vertices(v,t)},inTangents:function(t){return this.vertices(i,t)},outTangents:function(t){return this.vertices(o,t)},isClosed:function(){return this.v.c},pointOnPath:function(t,e){var rthis.v;void 0!e&&(rthis.getValueAtTime(e,0)),this._segmentsLength||(this._segmentsLengthbez.getSegmentsLength(r));for(var i,sthis._segmentsLength,as.lengths,ns.totalLength*t,o0,ha.length,l0;oh;){if(l+ao.addedLength>n){var po,fr.c&&oh-1?0:o+1,m(n-l)/ao.addedLength;ibez.getPointInSegment(r.vp,r.vf,r.op,r.if,m,ao);break}l+ao.addedLength,o+1}return i||(ir.c?r.v00,r.v01:r.vr._length-10,r.vr._length-11),i},vectorOnPath:function(t,e,r){1t?tthis.v.c:0t&&(t.999);var ithis.pointOnPath(t,e),sthis.pointOnPath(t+.001,e),as0-i0,ns1-i1,oMath.sqrt(Math.pow(a,2)+Math.pow(n,2));return 0o?0,0:tangentr?a/o,n/o:-n/o,a/o},tangentOnPath:function(t,e){return this.vectorOnPath(t,e,tangent)},normalOnPath:function(t,e){return this.vectorOnPath(t,e,normal)},setGroupProperty:expressionHelpers.setGroupProperty,getValueAtTime:expressionHelpers.getStaticValueAtTime},extendPrototype(l,o),extendPrototype(l,h),h.prototype.getValueAtTimefunction(t){return this._cachingAtTime||(this._cachingAtTime{shapeValue:shapePool.clone(this.pv),lastIndex:0,lastTime:initialDefaultFrame}),t*this.elem.globalData.frameRate,(t-this.offsetTime)!this._cachingAtTime.lastTime&&(this._cachingAtTime.lastIndexthis._cachingAtTime.lastTimet?this._caching.lastIndex:0,this._cachingAtTime.lastTimet,this.interpolateShape(t,this._cachingAtTime.shapeValue,this._cachingAtTime)),this._cachingAtTime.shapeValue},h.prototype.initiateExpressionExpressionManager.initiateExpression;var pShapePropertyFactory.getShapeProp;ShapePropertyFactory.getShapePropfunction(t,e,r,i,s){var ap(t,e,r,i,s);return a.propertyIndexe.ix,a.lock!1,3r?expressionHelpers.searchExpressions(t,e.pt,a):4r&&expressionHelpers.searchExpressions(t,e.ks,a),a.k&&t.addDynamicProperty(a),a}}function initialize$1(){addPropertyDecorator()}function addDecorator(){TextProperty.prototype.getExpressionValuefunction(t,e){var rthis.calculateExpression(e);if(t.t!r){var i{};return this.copyData(i,t),i.tr.toString(),i.__complete!1,i}return t},TextProperty.prototype.searchPropertyfunction(){var tthis.searchKeyframes(),ethis.searchExpressions();return this.kft||e,this.kf},TextProperty.prototype.searchExpressionsfunction(){return this.data.d.x?(this.calculateExpressionExpressionManager.initiateExpression.bind(this)(this.elem,this.data.d,this),this.addEffect(this.getExpressionValue.bind(this)),!0):null}}function initialize(){addDecorator()}function SVGComposableEffect(){}function SVGTintFilter(t,e,r,i,s){this.filterManagere;var acreateNS(feColorMatrix);a.setAttribute(type,matrix),a.setAttribute(color-interpolation-filters,linearRGB),a.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),a.setAttribute(result,i+_tint_1),t.appendChild(a),(acreateNS(feColorMatrix)).setAttribute(type,matrix),a.setAttribute(color-interpolation-filters,sRGB),a.setAttribute(values,1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 1 0),a.setAttribute(result,i+_tint_2),t.appendChild(a),this.matrixFiltera;var nthis.createMergeNode(i,s,i+_tint_1,i+_tint_2);t.appendChild(n)}function SVGFillFilter(t,e,r,i){this.filterManagere;var screateNS(feColorMatrix);s.setAttribute(type,matrix),s.setAttribute(color-interpolation-filters,sRGB),s.setAttribute(values,1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 1 0),s.setAttribute(result,i),t.appendChild(s),this.matrixFilters}function SVGStrokeEffect(t,e,r){this.initialized!1,this.filterManagere,this.elemr,this.paths}function SVGTritoneFilter(t,e,r,i){this.filterManagere;var screateNS(feColorMatrix);s.setAttribute(type,matrix),s.setAttribute(color-interpolation-filters,linearRGB),s.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),t.appendChild(s);var acreateNS(feComponentTransfer);a.setAttribute(color-interpolation-filters,sRGB),a.setAttribute(result,i),this.matrixFiltera;var ncreateNS(feFuncR);n.setAttribute(type,table),a.appendChild(n),this.feFuncRn;var ocreateNS(feFuncG);o.setAttribute(type,table),a.appendChild(o),this.feFuncGo;var hcreateNS(feFuncB);h.setAttribute(type,table),a.appendChild(h),this.feFuncBh,t.appendChild(a)}function SVGProLevelsFilter(t,e,r,i){this.filterManagere;var sthis.filterManager.effectElements,acreateNS(feComponentTransfer);(s10.p.k||0!s10.p.v||s11.p.k||1!s11.p.v||s12.p.k||1!s12.p.v||s13.p.k||0!s13.p.v||s14.p.k||1!s14.p.v)&&(this.feFuncRthis.createFeFunc(feFuncR,a)),(s17.p.k||0!s17.p.v||s18.p.k||1!s18.p.v||s19.p.k||1!s19.p.v||s20.p.k||0!s20.p.v||s21.p.k||1!s21.p.v)&&(this.feFuncGthis.createFeFunc(feFuncG,a)),(s24.p.k||0!s24.p.v||s25.p.k||1!s25.p.v||s26.p.k||1!s26.p.v||s27.p.k||0!s27.p.v||s28.p.k||1!s28.p.v)&&(this.feFuncBthis.createFeFunc(feFuncB,a)),(s31.p.k||0!s31.p.v||s32.p.k||1!s32.p.v||s33.p.k||1!s33.p.v||s34.p.k||0!s34.p.v||s35.p.k||1!s35.p.v)&&(this.feFuncAthis.createFeFunc(feFuncA,a)),(this.feFuncR||this.feFuncG||this.feFuncB||this.feFuncA)&&(a.setAttribute(color-interpolation-filters,sRGB),t.appendChild(a)),(s3.p.k||0!s3.p.v||s4.p.k||1!s4.p.v||s5.p.k||1!s5.p.v||s6.p.k||0!s6.p.v||s7.p.k||1!s7.p.v)&&((acreateNS(feComponentTransfer)).setAttribute(color-interpolation-filters,sRGB),a.setAttribute(result,i),t.appendChild(a),this.feFuncRComposedthis.createFeFunc(feFuncR,a),this.feFuncGComposedthis.createFeFunc(feFuncG,a),this.feFuncBComposedthis.createFeFunc(feFuncB,a))}function SVGDropShadowEffect(t,e,r,i,s){var ae.container.globalData.renderConfig.filterSize,ne.data.fs||a;t.setAttribute(x,n.x||a.x),t.setAttribute(y,n.y||a.y),t.setAttribute(width,n.width||a.width),t.setAttribute(height,n.height||a.height),this.filterManagere;var ocreateNS(feGaussianBlur);o.setAttribute(in,SourceAlpha),o.setAttribute(result,i+_drop_shadow_1),o.setAttribute(stdDeviation,0),this.feGaussianBluro,t.appendChild(o);var hcreateNS(feOffset);h.setAttribute(dx,25),h.setAttribute(dy,0),h.setAttribute(in,i+_drop_shadow_1),h.setAttribute(result,i+_drop_shadow_2),this.feOffseth,t.appendChild(h);var lcreateNS(feFlood);l.setAttribute(flood-color,#00ff00),l.setAttribute(flood-opacity,1),l.setAttribute(result,i+_drop_shadow_3),this.feFloodl,t.appendChild(l);var pcreateNS(feComposite);p.setAttribute(in,i+_drop_shadow_3),p.setAttribute(in2,i+_drop_shadow_2),p.setAttribute(operator,in),p.setAttribute(result,i+_drop_shadow_4),t.appendChild(p);var fthis.createMergeNode(i,i+_drop_shadow_4,s);t.appendChild(f)}SVGComposableEffect.prototype{createMergeNode:function(t,e){var r,i,screateNS(feMerge);for(s.setAttribute(result,t),i0;ie.length;i+1)(rcreateNS(feMergeNode)).setAttribute(in,ei),s.appendChild(r),s.appendChild(r);return s}},extendPrototype(SVGComposableEffect,SVGTintFilter),SVGTintFilter.prototype.renderFramefunction(t){if(t||this.filterManager._mdf){var ethis.filterManager.effectElements0.p.v,rthis.filterManager.effectElements1.p.v,ithis.filterManager.effectElements2.p.v/100;this.matrixFilter.setAttribute(values,r0-e0+ 0 0 0 +e0+ +(r1-e1)+ 0 0 0 +e1+ +(r2-e2)+ 0 0 0 +e2+ 0 0 0 +i+ 0)}},SVGFillFilter.prototype.renderFramefunction(t){if(t||this.filterManager._mdf){var ethis.filterManager.effectElements2.p.v,rthis.filterManager.effectElements6.p.v;this.matrixFilter.setAttribute(values,0 0 0 0 +e0+ 0 0 0 0 +e1+ 0 0 0 0 +e2+ 0 0 0 +r+ 0)}},SVGStrokeEffect.prototype.initializefunction(){var t,e,r,i,sthis.elem.layerElement.children||this.elem.layerElement.childNodes;for(1this.filterManager.effectElements1.p.v?(ithis.elem.maskManager.masksProperties.length,r0):i(rthis.filterManager.effectElements0.p.v-1)+1,(ecreateNS(g)).setAttribute(fill,none),e.setAttribute(stroke-linecap,round),e.setAttribute(stroke-dashoffset,1);ri;r+1)tcreateNS(path),e.appendChild(t),this.paths.push({p:t,m:r});if(3this.filterManager.effectElements10.p.v){var acreateNS(mask),ncreateElementID();a.setAttribute(id,n),a.setAttribute(mask-type,alpha),a.appendChild(e),this.elem.globalData.defs.appendChild(a);var ocreateNS(g);for(o.setAttribute(mask,url(+getLocationHref()+#+n+));s0;)o.appendChild(s0);this.elem.layerElement.appendChild(o),this.maskera,e.setAttribute(stroke,#fff)}else if(1this.filterManager.effectElements10.p.v||2this.filterManager.effectElements10.p.v){if(2this.filterManager.effectElements10.p.v)for(sthis.elem.layerElement.children||this.elem.layerElement.childNodes;s.length;)this.elem.layerElement.removeChild(s0);this.elem.layerElement.appendChild(e),this.elem.layerElement.removeAttribute(mask),e.setAttribute(stroke,#fff)}this.initialized!0,this.pathMaskere},SVGStrokeEffect.prototype.renderFramefunction(t){var e;this.initialized||this.initialize();var r,i,sthis.paths.length;for(e0;es;e+1)if(-1!this.pathse.m&&(rthis.elem.maskManager.viewDatathis.pathse.m,ithis.pathse.p,(t||this.filterManager._mdf||r.prop._mdf)&&i.setAttribute(d,r.lastPath),t||this.filterManager.effectElements9.p._mdf||this.filterManager.effectElements4.p._mdf||this.filterManager.effectElements7.p._mdf||this.filterManager.effectElements8.p._mdf||r.prop._mdf)){var a;if(0!this.filterManager.effectElements7.p.v||100!this.filterManager.effectElements8.p.v){var n.01*Math.min(this.filterManager.effectElements7.p.v,this.filterManager.effectElements8.p.v),o.01*Math.max(this.filterManager.effectElements7.p.v,this.filterManager.effectElements8.p.v),hi.getTotalLength();a0 0 0 +h*n+ ;var l,ph*(o-n),f1+2*this.filterManager.effectElements4.p.v*this.filterManager.effectElements9.p.v*.01,mMath.floor(p/f);for(l0;lm;l+1)a+1 +2*this.filterManager.effectElements4.p.v*this.filterManager.effectElements9.p.v*.01+ ;a+0 +10*h+ 0 0}else a1 +2*this.filterManager.effectElements4.p.v*this.filterManager.effectElements9.p.v*.01;i.setAttribute(stroke-dasharray,a)}if((t||this.filterManager.effectElements4.p._mdf)&&this.pathMasker.setAttribute(stroke-width,2*this.filterManager.effectElements4.p.v),(t||this.filterManager.effectElements6.p._mdf)&&this.pathMasker.setAttribute(opacity,this.filterManager.effectElements6.p.v),(1this.filterManager.effectElements10.p.v||2this.filterManager.effectElements10.p.v)&&(t||this.filterManager.effectElements3.p._mdf)){var cthis.filterManager.effectElements3.p.v;this.pathMasker.setAttribute(stroke,rgb(+bmFloor(255*c0)+,+bmFloor(255*c1)+,+bmFloor(255*c2)+))}},SVGTritoneFilter.prototype.renderFramefunction(t){if(t||this.filterManager._mdf){var ethis.filterManager.effectElements0.p.v,rthis.filterManager.effectElements1.p.v,ithis.filterManager.effectElements2.p.v,si0+ +r0+ +e0,ai1+ +r1+ +e1,ni2+ +r2+ +e2;this.feFuncR.setAttribute(tableValues,s),this.feFuncG.setAttribute(tableValues,a),this.feFuncB.setAttribute(tableValues,n)}},SVGProLevelsFilter.prototype.createFeFuncfunction(t,e){var rcreateNS(t);return r.setAttribute(type,table),e.appendChild(r),r},SVGProLevelsFilter.prototype.getTableValuefunction(t,e,r,i,s){for(var a,n,o0,hMath.min(t,e),lMath.max(t,e),pArray.call(null,{length:256}),f0,ms-i,ce-t;o256;)n(ao/256)h?c0?s:i:a>l?c0?i:s:i+m*Math.pow((a-t)/c,1/r),pfn,f+1,o+256/255;return p.join( )},SVGProLevelsFilter.prototype.renderFramefunction(t){if(t||this.filterManager._mdf){var e,rthis.filterManager.effectElements;this.feFuncRComposed&&(t||r3.p._mdf||r4.p._mdf||r5.p._mdf||r6.p._mdf||r7.p._mdf)&&(ethis.getTableValue(r3.p.v,r4.p.v,r5.p.v,r6.p.v,r7.p.v),this.feFuncRComposed.setAttribute(tableValues,e),this.feFuncGComposed.setAttribute(tableValues,e),this.feFuncBComposed.setAttribute(tableValues,e)),this.feFuncR&&(t||r10.p._mdf||r11.p._mdf||r12.p._mdf||r13.p._mdf||r14.p._mdf)&&(ethis.getTableValue(r10.p.v,r11.p.v,r12.p.v,r13.p.v,r14.p.v),this.feFuncR.setAttribute(tableValues,e)),this.feFuncG&&(t||r17.p._mdf||r18.p._mdf||r19.p._mdf||r20.p._mdf||r21.p._mdf)&&(ethis.getTableValue(r17.p.v,r18.p.v,r19.p.v,r20.p.v,r21.p.v),this.feFuncG.setAttribute(tableValues,e)),this.feFuncB&&(t||r24.p._mdf||r25.p._mdf||r26.p._mdf||r27.p._mdf||r28.p._mdf)&&(ethis.getTableValue(r24.p.v,r25.p.v,r26.p.v,r27.p.v,r28.p.v),this.feFuncB.setAttribute(tableValues,e)),this.feFuncA&&(t||r31.p._mdf||r32.p._mdf||r33.p._mdf||r34.p._mdf||r35.p._mdf)&&(ethis.getTableValue(r31.p.v,r32.p.v,r33.p.v,r34.p.v,r35.p.v),this.feFuncA.setAttribute(tableValues,e))}},extendPrototype(SVGComposableEffect,SVGDropShadowEffect),SVGDropShadowEffect.prototype.renderFramefunction(t){if(t||this.filterManager._mdf){if((t||this.filterManager.effectElements4.p._mdf)&&this.feGaussianBlur.setAttribute(stdDeviation,this.filterManager.effectElements4.p.v/4),t||this.filterManager.effectElements0.p._mdf){var ethis.filterManager.effectElements0.p.v;this.feFlood.setAttribute(flood-color,rgbToHex(Math.round(255*e0),Math.round(255*e1),Math.round(255*e2)))}if((t||this.filterManager.effectElements1.p._mdf)&&this.feFlood.setAttribute(flood-opacity,this.filterManager.effectElements1.p.v/255),t||this.filterManager.effectElements2.p._mdf||this.filterManager.effectElements3.p._mdf){var rthis.filterManager.effectElements3.p.v,i(this.filterManager.effectElements2.p.v-90)*degToRads,sr*Math.cos(i),ar*Math.sin(i);this.feOffset.setAttribute(dx,s),this.feOffset.setAttribute(dy,a)}}};var _svgMatteSymbols;function SVGMatte3Effect(t,e,r){this.initialized!1,this.filterManagere,this.filterElemt,this.elemr,r.matteElementcreateNS(g),r.matteElement.appendChild(r.layerElement),r.matteElement.appendChild(r.transformedElement),r.baseElementr.matteElement}function SVGGaussianBlurEffect(t,e,r,i){t.setAttribute(x,-100%),t.setAttribute(y,-100%),t.setAttribute(width,300%),t.setAttribute(height,300%),this.filterManagere;var screateNS(feGaussianBlur);s.setAttribute(result,i),t.appendChild(s),this.feGaussianBlurs}return SVGMatte3Effect.prototype.findSymbolfunction(t){for(var e0,r_svgMatteSymbols.length;er;){if(_svgMatteSymbolset)return _svgMatteSymbolse;e+1}return null},SVGMatte3Effect.prototype.replaceInParentfunction(t,e){var rt.layerElement.parentNode;if(r){for(var i,sr.children,a0,ns.length;an&&sa!t.layerElement;)a+1;an-2&&(isa+1);var ocreateNS(use);o.setAttribute(href,#+e),i?r.insertBefore(o,i):r.appendChild(o)}},SVGMatte3Effect.prototype.setElementAsMaskfunction(t,e){if(!this.findSymbol(e)){var rcreateElementID(),icreateNS(mask);i.setAttribute(id,e.layerId),i.setAttribute(mask-type,alpha),_svgMatteSymbols.push(e);var st.globalData.defs;s.appendChild(i);var acreateNS(symbol);a.setAttribute(id,r),this.replaceInParent(e,r),a.appendChild(e.layerElement),s.appendChild(a);var ncreateNS(use);n.setAttribute(href,#+r),i.appendChild(n),e.data.hd!1,e.show()}t.setMatte(e.layerId)},SVGMatte3Effect.prototype.initializefunction(){for(var tthis.filterManager.effectElements0.p.v,ethis.elem.comp.elements,r0,ie.length;ri;)er&&er.data.indt&&this.setElementAsMask(this.elem,er),r+1;this.initialized!0},SVGMatte3Effect.prototype.renderFramefunction(){this.initialized||this.initialize()},SVGGaussianBlurEffect.prototype.renderFramefunction(t){if(t||this.filterManager._mdf){var e.3*this.filterManager.effectElements0.p.v,rthis.filterManager.effectElements1.p.v,i3r?0:e,s2r?0:e;this.feGaussianBlur.setAttribute(stdDeviation,i+ +s);var a1this.filterManager.effectElements2.p.v?wrap:duplicate;this.feGaussianBlur.setAttribute(edgeMode,a)}},registerRenderer(canvas,CanvasRenderer),registerRenderer(html,HybridRenderer),registerRenderer(svg,SVGRenderer),ShapeModifiers.registerModifier(tm,TrimModifier),ShapeModifiers.registerModifier(pb,PuckerAndBloatModifier),ShapeModifiers.registerModifier(rp,RepeaterModifier),ShapeModifiers.registerModifier(rd,RoundCornersModifier),setExpressionsPlugin(Expressions),initialize$1(),initialize(),registerEffect(20,SVGTintFilter,!0),registerEffect(21,SVGFillFilter,!0),registerEffect(22,SVGStrokeEffect,!1),registerEffect(23,SVGTritoneFilter,!0),registerEffect(24,SVGProLevelsFilter,!0),registerEffect(25,SVGDropShadowEffect,!0),registerEffect(28,SVGMatte3Effect,!1),registerEffect(29,SVGGaussianBlurEffect,!0),lottie}));/script>!-- endbuild -->div idlottie>/div>script> var animationData {v:5.9.6,fr:30,ip:16,op:1172,w:1920,h:1080,nm:CTAC Lines,ddd:0,assets:{id:comp_0,nm:lines,fr:30,layers:{ddd:0,ind:1,ty:4,nm:Shape Layer 26,sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:58,196,0,ix:2,l:2},a:{a:0,k:-902,-450,0,ix:1,l:2},s:{a:0,k:100,100,100,ix:6,l:2}},ao:0,shapes:{ty:gr,it:{ind:0,ty:sh,ix:1,ks:{a:0,k:{i:0,0,0,0,o:0,0,0,0,v:-902,-480,-902,-420,c:false},ix:2},nm:Path 1,mn:ADBE Vector Shape - Group,hd:false},{ty:st,c:{a:0,k:1,1,1,1,ix:3},o:{a:0,k:100,ix:4},w:{a:0,k:1,ix:5},lc:1,lj:1,ml:4,bm:0,nm:Stroke 1,mn:ADBE Vector Graphic - Stroke,hd:false},{ty:fl,c:{a:0,k:0,0,0,1,ix:4},o:{a:0,k:100,ix:5},r:1,bm:0,nm:Fill 1,mn:ADBE Vector Graphic - Fill,hd:false},{ty:tr,p:{a:0,k:-900.438,-451.742,ix:2},a:{a:0,k:-900.438,-451.742,ix:1},s:{a:0,k:100,100,ix:3},r:{a:1,k:{i:{x:0.833,y:0.833},o:{x:0.167,y:0.167},t:284,s:0},{t:883,s:720},ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:Transform},nm:Shape 1,np:3,cix:2,bm:0,ix:1,mn:ADBE Vector Group,hd:false},ip:-346,op:2516,st:284,ct:1,bm:0},{ddd:0,ind:2,ty:4,nm:Shape Layer 25,sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:130.08,196,0,ix:2,l:2},a:{a:0,k:-902,-450,0,ix:1,l:2},s:{a:0,k:100,100,100,ix:6,l:2}},ao:0,shapes:{ty:gr,it:{ind:0,ty:sh,ix:1,ks:{a:0,k:{i:0,0,0,0,o:0,0,0,0,v:-902,-480,-902,-420,c:false},ix:2},nm:Path 1,mn:ADBE Vector Shape - Group,hd:false},{ty:st,c:{a:0,k:1,1,1,1,ix:3},o:{a:0,k:100,ix:4},w:{a:0,k:1,ix:5},lc:1,lj:1,ml:4,bm:0,nm:Stroke 1,mn:ADBE Vector Graphic - Stroke,hd:false},{ty:fl,c:{a:0,k:0,0,0,1,ix:4},o:{a:0,k:100,ix:5},r:1,bm:0,nm:Fill 1,mn:ADBE Vector Graphic - Fill,hd:false},{ty:tr,p:{a:0,k:-900.438,-451.742,ix:2},a:{a:0,k:-900.438,-451.742,ix:1},s:{a:0,k:100,100,ix:3},r:{a:1,k:{i:{x:0.833,y:0.833},o:{x:0.167,y:0.167},t:298,s:0},{t:897,s:720},ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:Transform},nm:Shape 1,np:3,cix:2,bm:0,ix:1,mn:ADBE Vector Group,hd:false},ip:-346,op:2516,st:298,ct:1,bm:0},{ddd:0,ind:3,ty:4,nm:Shape Layer 24,sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:202.16,196,0,ix:2,l:2},a:{a:0,k:-902,-450,0,ix:1,l:2},s:{a:0,k:100,100,100,ix:6,l:2}},ao:0,shapes:{ty:gr,it:{ind:0,ty:sh,ix:1,ks:{a:0,k:{i:0,0,0,0,o:0,0,0,0,v:-902,-480,-902,-420,c:false},ix:2},nm:Path 1,mn:ADBE Vector Shape - Group,hd:false},{ty:st,c:{a:0,k:1,1,1,1,ix:3},o:{a:0,k:100,ix:4},w:{a:0,k:1,ix:5},lc:1,lj:1,ml:4,bm:0,nm:Stroke 1,mn:ADBE Vector Graphic - Stroke,hd:false},{ty:fl,c:{a:0,k:0,0,0,1,ix:4},o:{a:0,k:100,ix:5},r:1,bm:0,nm:Fill 1,mn:ADBE Vector Graphic - Fill,hd:false},{ty:tr,p:{a:0,k:-900.438,-451.742,ix:2},a:{a:0,k:-900.438,-451.742,ix:1},s:{a:0,k:100,100,ix:3},r:{a:1,k:{i:{x:0.833,y:0.833},o:{x:0.167,y:0.167},t:305,s:0},{t:904,s:720},ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:Transform},nm:Shape 1,np:3,cix:2,bm:0,ix:1,mn:ADBE Vector Group,hd:false},ip:-346,op:2516,st:305,ct:1,bm:0},{ddd:0,ind:4,ty:4,nm:Shape Layer 23,sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:274.24,196,0,ix:2,l:2},a:{a:0,k:-902,-450,0,ix:1,l:2},s:{a:0,k:100,100,100,ix:6,l:2}},ao:0,shapes:{ty:gr,it:{ind:0,ty:sh,ix:1,ks:{a:0,k:{i:0,0,0,0,o:0,0,0,0,v:-902,-480,-902,-420,c:false},ix:2},nm:Path 1,mn:ADBE Vector Shape - Group,hd:false},{ty:st,c:{a:0,k:1,1,1,1,ix:3},o:{a:0,k:100,ix:4},w:{a:0,k:1,ix:5},lc:1,lj:1,ml:4,bm:0,nm:Stroke 1,mn:ADBE Vector Graphic - Stroke,hd:false},{ty:fl,c:{a:0,k:0,0,0,1,ix:4},o:{a:0,k:100,ix:5},r:1,bm:0,nm:Fill 1,mn:ADBE Vector Graphic - Fill,hd:false},{ty:tr,p:{a:0,k:-900.438,-451.742,ix:2},a:{a:0,k:-900.438,-451.742,ix:1},s:{a:0,k:100,100,ix:3},r:{a:1,k:{i:{x:0.833,y:0.833},o:{x:0.167,y:0.167},t:316,s:0},{t:915,s:720},ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:Transform},nm:Shape 1,np:3,cix:2,bm:0,ix:1,mn:ADBE Vector Group,hd:false},ip:-346,op:2516,st:316,ct:1,bm:0},{ddd:0,ind:5,ty:4,nm:Shape Layer 22,sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:346.32,196,0,ix:2,l:2},a:{a:0,k:-902,-450,0,ix:1,l:2},s:{a:0,k:100,100,100,ix:6,l:2}},ao:0,shapes:{ty:gr,it:{ind:0,ty:sh,ix:1,ks:{a:0,k:{i:0,0,0,0,o:0,0,0,0,v:-902,-480,-902,-420,c:false},ix:2},nm:Path 1,mn:ADBE Vector Shape - Group,hd:false},{ty:st,c:{a:0,k:1,1,1,1,ix:3},o:{a:0,k:100,ix:4},w:{a:0,k:1,ix:5},lc:1,lj:1,ml:4,bm:0,nm:Stroke 1,mn:ADBE Vector Graphic - Stroke,hd:false},{ty:fl,c:{a:0,k:0,0,0,1,ix:4},o:{a:0,k:100,ix:5},r:1,bm:0,nm:Fill 1,mn:ADBE Vector Graphic - Fill,hd:false},{ty:tr,p:{a:0,k:-900.438,-451.742,ix:2},a:{a:0,k:-900.438,-451.742,ix:1},s:{a:0,k:100,100,ix:3},r:{a:1,k:{i:{x:0.833,y:0.833},o:{x:0.167,y:0.167},t:326,s:0},{t:925,s:720},ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:Transform},nm:Shape 1,np:3,cix:2,bm:0,ix:1,mn:ADBE Vector Group,hd:false},ip:-346,op:2516,st:326,ct:1,bm:0},{ddd:0,ind:6,ty:4,nm:Shape Layer 21,sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:418.4,196,0,ix:2,l:2},a:{a:0,k:-902,-450,0,ix:1,l:2},s:{a:0,k:100,100,100,ix:6,l:2}},ao:0,shapes:{ty:gr,it:{ind:0,ty:sh,ix:1,ks:{a:0,k:{i:0,0,0,0,o:0,0,0,0,v:-902,-480,-902,-420,c:false},ix:2},nm:Path 1,mn:ADBE Vector Shape - Group,hd:false},{ty:st,c:{a:0,k:1,1,1,1,ix:3},o:{a:0,k:100,ix:4},w:{a:0,k:1,ix:5},lc:1,lj:1,ml:4,bm:0,nm:Stroke 1,mn:ADBE Vector Graphic - Stroke,hd:false},{ty:fl,c:{a:0,k:0,0,0,1,ix:4},o:{a:0,k:100,ix:5},r:1,bm:0,nm:Fill 1,mn:ADBE Vector Graphic - Fill,hd:false},{ty:tr,p:{a:0,k:-900.438,-451.742,ix:2},a:{a:0,k:-900.438,-451.742,ix:1},s:{a:0,k:100,100,ix:3},r:{a:1,k:{i:{x:0.833,y:0.833},o:{x:0.167,y:0.167},t:339,s:0},{t:938,s:720},ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:Transform},nm:Shape 1,np:3,cix:2,bm:0,ix:1,mn:ADBE Vector Group,hd:false},ip:-346,op:2516,st:339,ct:1,bm:0},{ddd:0,ind:7,ty:4,nm:Shape Layer 20,sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:490.48,196,0,ix:2,l:2},a:{a:0,k:-902,-450,0,ix:1,l:2},s:{a:0,k:100,100,100,ix:6,l:2}},ao:0,shapes:{ty:gr,it:{ind:0,ty:sh,ix:1,ks:{a:0,k:{i:0,0,0,0,o:0,0,0,0,v:-902,-480,-902,-420,c:false},ix:2},nm:Path 1,mn:ADBE Vector Shape - Group,hd:false},{ty:st,c:{a:0,k:1,1,1,1,ix:3},o:{a:0,k:100,ix:4},w:{a:0,k:1,ix:5},lc:1,lj:1,ml:4,bm:0,nm:Stroke 1,mn:ADBE Vector Graphic - Stroke,hd:false},{ty:fl,c:{a:0,k:0,0,0,1,ix:4},o:{a:0,k:100,ix:5},r:1,bm:0,nm:Fill 1,mn:ADBE Vector Graphic - Fill,hd:false},{ty:tr,p:{a:0,k:-900.438,-451.742,ix:2},a:{a:0,k:-900.438,-451.742,ix:1},s:{a:0,k:100,100,ix:3},r:{a:1,k:{i:{x:0.833,y:0.833},o:{x:0.167,y:0.167},t:353,s:0},{t:952,s:720},ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:Transform},nm:Shape 1,np:3,cix:2,bm:0,ix:1,mn:ADBE Vector Group,hd:false},ip:-346,op:2516,st:353,ct:1,bm:0},{ddd:0,ind:8,ty:4,nm:Shape Layer 19,sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:562.56,196,0,ix:2,l:2},a:{a:0,k:-902,-450,0,ix:1,l:2},s:{a:0,k:100,100,100,ix:6,l:2}},ao:0,shapes:{ty:gr,it:{ind:0,ty:sh,ix:1,ks:{a:0,k:{i:0,0,0,0,o:0,0,0,0,v:-902,-480,-902,-420,c:false},ix:2},nm:Path 1,mn:ADBE Vector Shape - Group,hd:false},{ty:st,c:{a:0,k:1,1,1,1,ix:3},o:{a:0,k:100,ix:4},w:{a:0,k:1,ix:5},lc:1,lj:1,ml:4,bm:0,nm:Stroke 1,mn:ADBE Vector Graphic - Stroke,hd:false},{ty:fl,c:{a:0,k:0,0,0,1,ix:4},o:{a:0,k:100,ix:5},r:1,bm:0,nm:Fill 1,mn:ADBE Vector Graphic - Fill,hd:false},{ty:tr,p:{a:0,k:-900.438,-451.742,ix:2},a:{a:0,k:-900.438,-451.742,ix:1},s:{a:0,k:100,100,ix:3},r:{a:1,k:{i:{x:0.833,y:0.833},o:{x:0.167,y:0.167},t:364,s:0},{t:963,s:720},ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:Transform},nm:Shape 1,np:3,cix:2,bm:0,ix:1,mn:ADBE Vector Group,hd:false},ip:-346,op:2516,st:364,ct:1,bm:0},{ddd:0,ind:9,ty:4,nm:Shape Layer 18,sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:634.64,196,0,ix:2,l:2},a:{a:0,k:-902,-450,0,ix:1,l:2},s:{a:0,k:100,100,100,ix:6,l:2}},ao:0,shapes:{ty:gr,it:{ind:0,ty:sh,ix:1,ks:{a:0,k:{i:0,0,0,0,o:0,0,0,0,v:-902,-480,-902,-420,c:false},ix:2},nm:Path 1,mn:ADBE Vector Shape - Group,hd:false},{ty:st,c:{a:0,k:1,1,1,1,ix:3},o:{a:0,k:100,ix:4},w:{a:0,k:1,ix:5},lc:1,lj:1,ml:4,bm:0,nm:Stroke 1,mn:ADBE Vector Graphic - Stroke,hd:false},{ty:fl,c:{a:0,k:0,0,0,1,ix:4},o:{a:0,k:100,ix:5},r:1,bm:0,nm:Fill 1,mn:ADBE Vector Graphic - Fill,hd:false},{ty:tr,p:{a:0,k:-900.438,-451.742,ix:2},a:{a:0,k:-900.438,-451.742,ix:1},s:{a:0,k:100,100,ix:3},r:{a:1,k:{i:{x:0.833,y:0.833},o:{x:0.167,y:0.167},t:376,s:0},{t:975,s:720},ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:Transform},nm:Shape 1,np:3,cix:2,bm:0,ix:1,mn:ADBE Vector Group,hd:false},ip:-346,op:2516,st:376,ct:1,bm:0},{ddd:0,ind:10,ty:4,nm:Shape Layer 17,sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:706.72,196,0,ix:2,l:2},a:{a:0,k:-902,-450,0,ix:1,l:2},s:{a:0,k:100,100,100,ix:6,l:2}},ao:0,shapes:{ty:gr,it:{ind:0,ty:sh,ix:1,ks:{a:0,k:{i:0,0,0,0,o:0,0,0,0,v:-902,-480,-902,-420,c:false},ix:2},nm:Path 1,mn:ADBE Vector Shape - Group,hd:false},{ty:st,c:{a:0,k:1,1,1,1,ix:3},o:{a:0,k:100,ix:4},w:{a:0,k:1,ix:5},lc:1,lj:1,ml:4,bm:0,nm:Stroke 1,mn:ADBE Vector Graphic - Stroke,hd:false},{ty:fl,c:{a:0,k:0,0,0,1,ix:4},o:{a:0,k:100,ix:5},r:1,bm:0,nm:Fill 1,mn:ADBE Vector Graphic - Fill,hd:false},{ty:tr,p:{a:0,k:-900.438,-451.742,ix:2},a:{a:0,k:-900.438,-451.742,ix:1},s:{a:0,k:100,100,ix:3},r:{a:1,k:{i:{x:0.833,y:0.833},o:{x:0.167,y:0.167},t:387,s:0},{t:986,s:720},ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:Transform},nm:Shape 1,np:3,cix:2,bm:0,ix:1,mn:ADBE Vector Group,hd:false},ip:-346,op:2516,st:387,ct:1,bm:0},{ddd:0,ind:11,ty:4,nm:Shape Layer 16,sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:778.8,196,0,ix:2,l:2},a:{a:0,k:-902,-450,0,ix:1,l:2},s:{a:0,k:100,100,100,ix:6,l:2}},ao:0,shapes:{ty:gr,it:{ind:0,ty:sh,ix:1,ks:{a:0,k:{i:0,0,0,0,o:0,0,0,0,v:-902,-480,-902,-420,c:false},ix:2},nm:Path 1,mn:ADBE Vector Shape - Group,hd:false},{ty:st,c:{a:0,k:1,1,1,1,ix:3},o:{a:0,k:100,ix:4},w:{a:0,k:1,ix:5},lc:1,lj:1,ml:4,bm:0,nm:Stroke 1,mn:ADBE Vector Graphic - Stroke,hd:false},{ty:fl,c:{a:0,k:0,0,0,1,ix:4},o:{a:0,k:100,ix:5},r:1,bm:0,nm:Fill 1,mn:ADBE Vector Graphic - Fill,hd:false},{ty:tr,p:{a:0,k:-900.438,-451.742,ix:2},a:{a:0,k:-900.438,-451.742,ix:1},s:{a:0,k:100,100,ix:3},r:{a:1,k:{i:{x:0.833,y:0.833},o:{x:0.167,y:0.167},t:398,s:0},{t:997,s:720},ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:Transform},nm:Shape 1,np:3,cix:2,bm:0,ix:1,mn:ADBE Vector Group,hd:false},ip:-346,op:2516,st:398,ct:1,bm:0},{ddd:0,ind:12,ty:4,nm:Shape Layer 15,sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:850.88,196,0,ix:2,l:2},a:{a:0,k:-902,-450,0,ix:1,l:2},s:{a:0,k:100,100,100,ix:6,l:2}},ao:0,shapes:{ty:gr,it:{ind:0,ty:sh,ix:1,ks:{a:0,k:{i:0,0,0,0,o:0,0,0,0,v:-902,-480,-902,-420,c:false},ix:2},nm:Path 1,mn:ADBE Vector Shape - Group,hd:false},{ty:st,c:{a:0,k:1,1,1,1,ix:3},o:{a:0,k:100,ix:4},w:{a:0,k:1,ix:5},lc:1,lj:1,ml:4,bm:0,nm:Stroke 1,mn:ADBE Vector Graphic - Stroke,hd:false},{ty:fl,c:{a:0,k:0,0,0,1,ix:4},o:{a:0,k:100,ix:5},r:1,bm:0,nm:Fill 1,mn:ADBE Vector Graphic - Fill,hd:false},{ty:tr,p:{a:0,k:-900.438,-451.742,ix:2},a:{a:0,k:-900.438,-451.742,ix:1},s:{a:0,k:100,100,ix:3},r:{a:1,k:{i:{x:0.833,y:0.833},o:{x:0.167,y:0.167},t:409,s:0},{t:1008,s:720},ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:Transform},nm:Shape 1,np:3,cix:2,bm:0,ix:1,mn:ADBE Vector Group,hd:false},ip:-346,op:2516,st:409,ct:1,bm:0},{ddd:0,ind:13,ty:4,nm:Shape Layer 14,sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:922.96,196,0,ix:2,l:2},a:{a:0,k:-902,-450,0,ix:1,l:2},s:{a:0,k:100,100,100,ix:6,l:2}},ao:0,shapes:{ty:gr,it:{ind:0,ty:sh,ix:1,ks:{a:0,k:{i:0,0,0,0,o:0,0,0,0,v:-902,-480,-902,-420,c:false},ix:2},nm:Path 1,mn:ADBE Vector Shape - Group,hd:false},{ty:st,c:{a:0,k:1,1,1,1,ix:3},o:{a:0,k:100,ix:4},w:{a:0,k:1,ix:5},lc:1,lj:1,ml:4,bm:0,nm:Stroke 1,mn:ADBE Vector Graphic - Stroke,hd:false},{ty:fl,c:{a:0,k:0,0,0,1,ix:4},o:{a:0,k:100,ix:5},r:1,bm:0,nm:Fill 1,mn:ADBE Vector Graphic - Fill,hd:false},{ty:tr,p:{a:0,k:-900.438,-451.742,ix:2},a:{a:0,k:-900.438,-451.742,ix:1},s:{a:0,k:100,100,ix:3},r:{a:1,k:{i:{x:0.833,y:0.833},o:{x:0.167,y:0.167},t:420,s:0},{t:1019,s:720},ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:Transform},nm:Shape 1,np:3,cix:2,bm:0,ix:1,mn:ADBE Vector Group,hd:false},ip:-346,op:2516,st:420,ct:1,bm:0},{ddd:0,ind:14,ty:4,nm:Shape Layer 13,sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:995.04,196,0,ix:2,l:2},a:{a:0,k:-902,-450,0,ix:1,l:2},s:{a:0,k:100,100,100,ix:6,l:2}},ao:0,shapes:{ty:gr,it:{ind:0,ty:sh,ix:1,ks:{a:0,k:{i:0,0,0,0,o:0,0,0,0,v:-902,-480,-902,-420,c:false},ix:2},nm:Path 1,mn:ADBE Vector Shape - Group,hd:false},{ty:st,c:{a:0,k:1,1,1,1,ix:3},o:{a:0,k:100,ix:4},w:{a:0,k:1,ix:5},lc:1,lj:1,ml:4,bm:0,nm:Stroke 1,mn:ADBE Vector Graphic - Stroke,hd:false},{ty:fl,c:{a:0,k:0,0,0,1,ix:4},o:{a:0,k:100,ix:5},r:1,bm:0,nm:Fill 1,mn:ADBE Vector Graphic - Fill,hd:false},{ty:tr,p:{a:0,k:-900.438,-451.742,ix:2},a:{a:0,k:-900.438,-451.742,ix:1},s:{a:0,k:100,100,ix:3},r:{a:1,k:{i:{x:0.833,y:0.833},o:{x:0.167,y:0.167},t:432,s:0},{t:1031,s:720},ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:Transform},nm:Shape 1,np:3,cix:2,bm:0,ix:1,mn:ADBE Vector Group,hd:false},ip:-346,op:2516,st:432,ct:1,bm:0},{ddd:0,ind:15,ty:4,nm:Shape Layer 12,sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:1067.12,196,0,ix:2,l:2},a:{a:0,k:-902,-450,0,ix:1,l:2},s:{a:0,k:100,100,100,ix:6,l:2}},ao:0,shapes:{ty:gr,it:{ind:0,ty:sh,ix:1,ks:{a:0,k:{i:0,0,0,0,o:0,0,0,0,v:-902,-480,-902,-420,c:false},ix:2},nm:Path 1,mn:ADBE Vector Shape - Group,hd:false},{ty:st,c:{a:0,k:1,1,1,1,ix:3},o:{a:0,k:100,ix:4},w:{a:0,k:1,ix:5},lc:1,lj:1,ml:4,bm:0,nm:Stroke 1,mn:ADBE Vector Graphic - Stroke,hd:false},{ty:fl,c:{a:0,k:0,0,0,1,ix:4},o:{a:0,k:100,ix:5},r:1,bm:0,nm:Fill 1,mn:ADBE Vector Graphic - Fill,hd:false},{ty:tr,p:{a:0,k:-900.438,-451.742,ix:2},a:{a:0,k:-900.438,-451.742,ix:1},s:{a:0,k:100,100,ix:3},r:{a:1,k:{i:{x:0.833,y:0.833},o:{x:0.167,y:0.167},t:442,s:0},{t:1041,s:720},ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:Transform},nm:Shape 1,np:3,cix:2,bm:0,ix:1,mn:ADBE Vector Group,hd:false},ip:-346,op:2516,st:442,ct:1,bm:0},{ddd:0,ind:16,ty:4,nm:Shape Layer 11,sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:1139.2,196,0,ix:2,l:2},a:{a:0,k:-902,-450,0,ix:1,l:2},s:{a:0,k:100,100,100,ix:6,l:2}},ao:0,shapes:{ty:gr,it:{ind:0,ty:sh,ix:1,ks:{a:0,k:{i:0,0,0,0,o:0,0,0,0,v:-902,-480,-902,-420,c:false},ix:2},nm:Path 1,mn:ADBE Vector Shape - Group,hd:false},{ty:st,c:{a:0,k:1,1,1,1,ix:3},o:{a:0,k:100,ix:4},w:{a:0,k:1,ix:5},lc:1,lj:1,ml:4,bm:0,nm:Stroke 1,mn:ADBE Vector Graphic - Stroke,hd:false},{ty:fl,c:{a:0,k:0,0,0,1,ix:4},o:{a:0,k:100,ix:5},r:1,bm:0,nm:Fill 1,mn:ADBE Vector Graphic - Fill,hd:false},{ty:tr,p:{a:0,k:-900.438,-451.742,ix:2},a:{a:0,k:-900.438,-451.742,ix:1},s:{a:0,k:100,100,ix:3},r:{a:1,k:{i:{x:0.833,y:0.833},o:{x:0.167,y:0.167},t:459,s:0},{t:1058,s:720},ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:Transform},nm:Shape 1,np:3,cix:2,bm:0,ix:1,mn:ADBE Vector Group,hd:false},ip:-346,op:2516,st:459,ct:1,bm:0},{ddd:0,ind:17,ty:4,nm:Shape Layer 10,sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:1211.28,196,0,ix:2,l:2},a:{a:0,k:-902,-450,0,ix:1,l:2},s:{a:0,k:100,100,100,ix:6,l:2}},ao:0,shapes:{ty:gr,it:{ind:0,ty:sh,ix:1,ks:{a:0,k:{i:0,0,0,0,o:0,0,0,0,v:-902,-480,-902,-420,c:false},ix:2},nm:Path 1,mn:ADBE Vector Shape - Group,hd:false},{ty:st,c:{a:0,k:1,1,1,1,ix:3},o:{a:0,k:100,ix:4},w:{a:0,k:1,ix:5},lc:1,lj:1,ml:4,bm:0,nm:Stroke 1,mn:ADBE Vector Graphic - Stroke,hd:false},{ty:fl,c:{a:0,k:0,0,0,1,ix:4},o:{a:0,k:100,ix:5},r:1,bm:0,nm:Fill 1,mn:ADBE Vector Graphic - Fill,hd:false},{ty:tr,p:{a:0,k:-900.438,-451.742,ix:2},a:{a:0,k:-900.438,-451.742,ix:1},s:{a:0,k:100,100,ix:3},r:{a:1,k:{i:{x:0.833,y:0.833},o:{x:0.167,y:0.167},t:477,s:0},{t:1076,s:720},ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:Transform},nm:Shape 1,np:3,cix:2,bm:0,ix:1,mn:ADBE Vector Group,hd:false},ip:-346,op:2516,st:477,ct:1,bm:0},{ddd:0,ind:18,ty:4,nm:Shape Layer 9,sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:1283.36,196,0,ix:2,l:2},a:{a:0,k:-902,-450,0,ix:1,l:2},s:{a:0,k:100,100,100,ix:6,l:2}},ao:0,shapes:{ty:gr,it:{ind:0,ty:sh,ix:1,ks:{a:0,k:{i:0,0,0,0,o:0,0,0,0,v:-902,-480,-902,-420,c:false},ix:2},nm:Path 1,mn:ADBE Vector Shape - Group,hd:false},{ty:st,c:{a:0,k:1,1,1,1,ix:3},o:{a:0,k:100,ix:4},w:{a:0,k:1,ix:5},lc:1,lj:1,ml:4,bm:0,nm:Stroke 1,mn:ADBE Vector Graphic - Stroke,hd:false},{ty:fl,c:{a:0,k:0,0,0,1,ix:4},o:{a:0,k:100,ix:5},r:1,bm:0,nm:Fill 1,mn:ADBE Vector Graphic - Fill,hd:false},{ty:tr,p:{a:0,k:-900.438,-451.742,ix:2},a:{a:0,k:-900.438,-451.742,ix:1},s:{a:0,k:100,100,ix:3},r:{a:1,k:{i:{x:0.833,y:0.833},o:{x:0.167,y:0.167},t:492,s:0},{t:1091,s:720},ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:Transform},nm:Shape 1,np:3,cix:2,bm:0,ix:1,mn:ADBE Vector Group,hd:false},ip:-346,op:2516,st:492,ct:1,bm:0},{ddd:0,ind:19,ty:4,nm:Shape Layer 8,sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:1355.44,196,0,ix:2,l:2},a:{a:0,k:-902,-450,0,ix:1,l:2},s:{a:0,k:100,100,100,ix:6,l:2}},ao:0,shapes:{ty:gr,it:{ind:0,ty:sh,ix:1,ks:{a:0,k:{i:0,0,0,0,o:0,0,0,0,v:-902,-480,-902,-420,c:false},ix:2},nm:Path 1,mn:ADBE Vector Shape - Group,hd:false},{ty:st,c:{a:0,k:1,1,1,1,ix:3},o:{a:0,k:100,ix:4},w:{a:0,k:1,ix:5},lc:1,lj:1,ml:4,bm:0,nm:Stroke 1,mn:ADBE Vector Graphic - Stroke,hd:false},{ty:fl,c:{a:0,k:0,0,0,1,ix:4},o:{a:0,k:100,ix:5},r:1,bm:0,nm:Fill 1,mn:ADBE Vector Graphic - Fill,hd:false},{ty:tr,p:{a:0,k:-900.438,-451.742,ix:2},a:{a:0,k:-900.438,-451.742,ix:1},s:{a:0,k:100,100,ix:3},r:{a:1,k:{i:{x:0.833,y:0.833},o:{x:0.167,y:0.167},t:507,s:0},{t:1106,s:720},ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:Transform},nm:Shape 1,np:3,cix:2,bm:0,ix:1,mn:ADBE Vector Group,hd:false},ip:-346,op:2516,st:507,ct:1,bm:0},{ddd:0,ind:20,ty:4,nm:Shape Layer 7,sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:1427.52,196,0,ix:2,l:2},a:{a:0,k:-902,-450,0,ix:1,l:2},s:{a:0,k:100,100,100,ix:6,l:2}},ao:0,shapes:{ty:gr,it:{ind:0,ty:sh,ix:1,ks:{a:0,k:{i:0,0,0,0,o:0,0,0,0,v:-902,-480,-902,-420,c:false},ix:2},nm:Path 1,mn:ADBE Vector Shape - Group,hd:false},{ty:st,c:{a:0,k:1,1,1,1,ix:3},o:{a:0,k:100,ix:4},w:{a:0,k:1,ix:5},lc:1,lj:1,ml:4,bm:0,nm:Stroke 1,mn:ADBE Vector Graphic - Stroke,hd:false},{ty:fl,c:{a:0,k:0,0,0,1,ix:4},o:{a:0,k:100,ix:5},r:1,bm:0,nm:Fill 1,mn:ADBE Vector Graphic - Fill,hd:false},{ty:tr,p:{a:0,k:-900.438,-451.742,ix:2},a:{a:0,k:-900.438,-451.742,ix:1},s:{a:0,k:100,100,ix:3},r:{a:1,k:{i:{x:0.833,y:0.833},o:{x:0.167,y:0.167},t:521,s:0},{t:1120,s:720},ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:Transform},nm:Shape 1,np:3,cix:2,bm:0,ix:1,mn:ADBE Vector Group,hd:false},ip:-346,op:2516,st:521,ct:1,bm:0},{ddd:0,ind:21,ty:4,nm:Shape Layer 6,sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:1499.6,196,0,ix:2,l:2},a:{a:0,k:-902,-450,0,ix:1,l:2},s:{a:0,k:100,100,100,ix:6,l:2}},ao:0,shapes:{ty:gr,it:{ind:0,ty:sh,ix:1,ks:{a:0,k:{i:0,0,0,0,o:0,0,0,0,v:-902,-480,-902,-420,c:false},ix:2},nm:Path 1,mn:ADBE Vector Shape - Group,hd:false},{ty:st,c:{a:0,k:1,1,1,1,ix:3},o:{a:0,k:100,ix:4},w:{a:0,k:1,ix:5},lc:1,lj:1,ml:4,bm:0,nm:Stroke 1,mn:ADBE Vector Graphic - Stroke,hd:false},{ty:fl,c:{a:0,k:0,0,0,1,ix:4},o:{a:0,k:100,ix:5},r:1,bm:0,nm:Fill 1,mn:ADBE Vector Graphic - Fill,hd:false},{ty:tr,p:{a:0,k:-900.438,-451.742,ix:2},a:{a:0,k:-900.438,-451.742,ix:1},s:{a:0,k:100,100,ix:3},r:{a:1,k:{i:{x:0.833,y:0.833},o:{x:0.167,y:0.167},t:537,s:0},{t:1136,s:720},ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:Transform},nm:Shape 1,np:3,cix:2,bm:0,ix:1,mn:ADBE Vector Group,hd:false},ip:-346,op:2516,st:537,ct:1,bm:0},{ddd:0,ind:22,ty:4,nm:Shape Layer 5,sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:1571.68,196,0,ix:2,l:2},a:{a:0,k:-902,-450,0,ix:1,l:2},s:{a:0,k:100,100,100,ix:6,l:2}},ao:0,shapes:{ty:gr,it:{ind:0,ty:sh,ix:1,ks:{a:0,k:{i:0,0,0,0,o:0,0,0,0,v:-902,-480,-902,-420,c:false},ix:2},nm:Path 1,mn:ADBE Vector Shape - Group,hd:false},{ty:st,c:{a:0,k:1,1,1,1,ix:3},o:{a:0,k:100,ix:4},w:{a:0,k:1,ix:5},lc:1,lj:1,ml:4,bm:0,nm:Stroke 1,mn:ADBE Vector Graphic - Stroke,hd:false},{ty:fl,c:{a:0,k:0,0,0,1,ix:4},o:{a:0,k:100,ix:5},r:1,bm:0,nm:Fill 1,mn:ADBE Vector Graphic - Fill,hd:false},{ty:tr,p:{a:0,k:-900.438,-451.742,ix:2},a:{a:0,k:-900.438,-451.742,ix:1},s:{a:0,k:100,100,ix:3},r:{a:1,k:{i:{x:0.833,y:0.833},o:{x:0.167,y:0.167},t:551,s:0},{t:1150,s:720},ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:Transform},nm:Shape 1,np:3,cix:2,bm:0,ix:1,mn:ADBE Vector Group,hd:false},ip:-346,op:2516,st:551,ct:1,bm:0},{ddd:0,ind:23,ty:4,nm:Shape Layer 4,sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:1643.76,196,0,ix:2,l:2},a:{a:0,k:-902,-450,0,ix:1,l:2},s:{a:0,k:100,100,100,ix:6,l:2}},ao:0,shapes:{ty:gr,it:{ind:0,ty:sh,ix:1,ks:{a:0,k:{i:0,0,0,0,o:0,0,0,0,v:-902,-480,-902,-420,c:false},ix:2},nm:Path 1,mn:ADBE Vector Shape - Group,hd:false},{ty:st,c:{a:0,k:1,1,1,1,ix:3},o:{a:0,k:100,ix:4},w:{a:0,k:1,ix:5},lc:1,lj:1,ml:4,bm:0,nm:Stroke 1,mn:ADBE Vector Graphic - Stroke,hd:false},{ty:fl,c:{a:0,k:0,0,0,1,ix:4},o:{a:0,k:100,ix:5},r:1,bm:0,nm:Fill 1,mn:ADBE Vector Graphic - Fill,hd:false},{ty:tr,p:{a:0,k:-900.438,-451.742,ix:2},a:{a:0,k:-900.438,-451.742,ix:1},s:{a:0,k:100,100,ix:3},r:{a:1,k:{i:{x:0.833,y:0.833},o:{x:0.167,y:0.167},t:560,s:0},{t:1159,s:720},ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:Transform},nm:Shape 1,np:3,cix:2,bm:0,ix:1,mn:ADBE Vector Group,hd:false},ip:-346,op:2516,st:560,ct:1,bm:0},{ddd:0,ind:24,ty:4,nm:Shape Layer 3,sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:1715.84,196,0,ix:2,l:2},a:{a:0,k:-902,-450,0,ix:1,l:2},s:{a:0,k:100,100,100,ix:6,l:2}},ao:0,shapes:{ty:gr,it:{ind:0,ty:sh,ix:1,ks:{a:0,k:{i:0,0,0,0,o:0,0,0,0,v:-902,-480,-902,-420,c:false},ix:2},nm:Path 1,mn:ADBE Vector Shape - Group,hd:false},{ty:st,c:{a:0,k:1,1,1,1,ix:3},o:{a:0,k:100,ix:4},w:{a:0,k:1,ix:5},lc:1,lj:1,ml:4,bm:0,nm:Stroke 1,mn:ADBE Vector Graphic - Stroke,hd:false},{ty:fl,c:{a:0,k:0,0,0,1,ix:4},o:{a:0,k:100,ix:5},r:1,bm:0,nm:Fill 1,mn:ADBE Vector Graphic - Fill,hd:false},{ty:tr,p:{a:0,k:-900.438,-451.742,ix:2},a:{a:0,k:-900.438,-451.742,ix:1},s:{a:0,k:100,100,ix:3},r:{a:1,k:{i:{x:0.833,y:0.833},o:{x:0.167,y:0.167},t:576,s:0},{t:1175,s:720},ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:Transform},nm:Shape 1,np:3,cix:2,bm:0,ix:1,mn:ADBE Vector Group,hd:false},ip:-346,op:2516,st:576,ct:1,bm:0},{ddd:0,ind:25,ty:4,nm:Shape Layer 2,sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:1787.92,196,0,ix:2,l:2},a:{a:0,k:-902,-450,0,ix:1,l:2},s:{a:0,k:100,100,100,ix:6,l:2}},ao:0,shapes:{ty:gr,it:{ind:0,ty:sh,ix:1,ks:{a:0,k:{i:0,0,0,0,o:0,0,0,0,v:-902,-480,-902,-420,c:false},ix:2},nm:Path 1,mn:ADBE Vector Shape - Group,hd:false},{ty:st,c:{a:0,k:1,1,1,1,ix:3},o:{a:0,k:100,ix:4},w:{a:0,k:1,ix:5},lc:1,lj:1,ml:4,bm:0,nm:Stroke 1,mn:ADBE Vector Graphic - Stroke,hd:false},{ty:fl,c:{a:0,k:0,0,0,1,ix:4},o:{a:0,k:100,ix:5},r:1,bm:0,nm:Fill 1,mn:ADBE Vector Graphic - Fill,hd:false},{ty:tr,p:{a:0,k:-900.438,-451.742,ix:2},a:{a:0,k:-900.438,-451.742,ix:1},s:{a:0,k:100,100,ix:3},r:{a:1,k:{i:{x:0.833,y:0.833},o:{x:0.167,y:0.167},t:593,s:0},{t:1192,s:720},ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:Transform},nm:Shape 1,np:3,cix:2,bm:0,ix:1,mn:ADBE Vector Group,hd:false},ip:-346,op:2516,st:587,ct:1,bm:0},{ddd:0,ind:26,ty:4,nm:Shape Layer 27,sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:1860,196,0,ix:2,l:2},a:{a:0,k:-902,-450,0,ix:1,l:2},s:{a:0,k:100,100,100,ix:6,l:2}},ao:0,shapes:{ty:gr,it:{ind:0,ty:sh,ix:1,ks:{a:0,k:{i:0,0,0,0,o:0,0,0,0,v:-902,-480,-902,-420,c:false},ix:2},nm:Path 1,mn:ADBE Vector Shape - Group,hd:false},{ty:st,c:{a:0,k:1,1,1,1,ix:3},o:{a:0,k:100,ix:4},w:{a:0,k:1,ix:5},lc:1,lj:1,ml:4,bm:0,nm:Stroke 1,mn:ADBE Vector Graphic - Stroke,hd:false},{ty:fl,c:{a:0,k:0,0,0,1,ix:4},o:{a:0,k:100,ix:5},r:1,bm:0,nm:Fill 1,mn:ADBE Vector Graphic - Fill,hd:false},{ty:tr,p:{a:0,k:-900.438,-451.742,ix:2},a:{a:0,k:-900.438,-451.742,ix:1},s:{a:0,k:100,100,ix:3},r:{a:1,k:{i:{x:0.833,y:0.833},o:{x:0.167,y:0.167},t:611,s:0},{t:1210,s:720},ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:Transform},nm:Shape 1,np:3,cix:2,bm:0,ix:1,mn:ADBE Vector Group,hd:false},ip:-485,op:2677,st:621,ct:1,bm:0}},layers:{ddd:0,ind:1,ty:0,nm:lines,refId:comp_0,sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:960,540,0,ix:2,l:2},a:{a:0,k:960,540,0,ix:1,l:2},s:{a:0,k:100,100,100,ix:6,l:2}},ao:0,w:1920,h:1080,ip:0,op:1224,st:-259,ct:1,bm:0},{ddd:0,ind:2,ty:0,nm:lines,refId:comp_0,sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:960,627.25,0,ix:2,l:2},a:{a:0,k:960,540,0,ix:1,l:2},s:{a:0,k:100,100,100,ix:6,l:2}},ao:0,w:1920,h:1080,ip:0,op:1224,st:-235,ct:1,bm:0},{ddd:0,ind:3,ty:0,nm:lines,refId:comp_0,sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:960,714.5,0,ix:2,l:2},a:{a:0,k:960,540,0,ix:1,l:2},s:{a:0,k:100,100,100,ix:6,l:2}},ao:0,w:1920,h:1080,ip:0,op:1224,st:-214,ct:1,bm:0},{ddd:0,ind:4,ty:0,nm:lines,refId:comp_0,sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:960,801.75,0,ix:2,l:2},a:{a:0,k:960,540,0,ix:1,l:2},s:{a:0,k:100,100,100,ix:6,l:2}},ao:0,w:1920,h:1080,ip:0,op:1224,st:-193,ct:1,bm:0},{ddd:0,ind:5,ty:0,nm:lines,refId:comp_0,sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:960,889,0,ix:2,l:2},a:{a:0,k:960,540,0,ix:1,l:2},s:{a:0,k:100,100,100,ix:6,l:2}},ao:0,w:1920,h:1080,ip:0,op:1224,st:-174,ct:1,bm:0},{ddd:0,ind:6,ty:0,nm:lines,refId:comp_0,sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:960,976.25,0,ix:2,l:2},a:{a:0,k:960,540,0,ix:1,l:2},s:{a:0,k:100,100,100,ix:6,l:2}},ao:0,w:1920,h:1080,ip:0,op:1224,st:-155,ct:1,bm:0},{ddd:0,ind:7,ty:0,nm:lines,refId:comp_0,sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:960,1063.5,0,ix:2,l:2},a:{a:0,k:960,540,0,ix:1,l:2},s:{a:0,k:100,100,100,ix:6,l:2}},ao:0,w:1920,h:1080,ip:0,op:1224,st:-130,ct:1,bm:0},{ddd:0,ind:8,ty:0,nm:lines,refId:comp_0,sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:960,1150.75,0,ix:2,l:2},a:{a:0,k:960,540,0,ix:1,l:2},s:{a:0,k:100,100,100,ix:6,l:2}},ao:0,w:1920,h:1080,ip:0,op:1224,st:-114,ct:1,bm:0},{ddd:0,ind:9,ty:0,nm:lines,refId:comp_0,sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:960,1238,0,ix:2,l:2},a:{a:0,k:960,540,0,ix:1,l:2},s:{a:0,k:100,100,100,ix:6,l:2}},ao:0,w:1920,h:1080,ip:0,op:1224,st:-52,ct:1,bm:0},markers:}; var params { container: document.getElementById(lottie), renderer: svg, loop: true, autoplay: true, animationData: animationData }; var anim; anim lottie.loadAnimation(params);/script> /div> a hrefhttps://www.youtube.com/watch?v6eWxujSZecU classhero__video js-popup-video aria-labelVideo> div classhero__video-image> picture> img src/app/uploads/2025/06/CTAC_Youtube_Thumbnail_V01-358x229.jpg alt> /picture> /div> div classhero__video-title> Impressie CTACi classicon-play>/i> /div> /a> /div> div classhero__usps> div classcontainer> div classhero__usps-slider js-usps-slider> div classhero__usps-slide>From strategy to execution/div> div classhero__usps-slide>For SMEs and corporate/div> div classhero__usps-slide>Down to earth/div> /div> /div> /div> /section> section classtasks > div classcontainer> h2 classtext-center h4>Partner in Business and IT/h2> div classrow> div classcol-md-4 mb-15> div classcard-block card-block--icon font-medium> h3 classdisplay8> picture> source media(min-width:100px) srcset/app/uploads/2023/08/iconmultiply.svg> source media(min-width:100px) srcset/app/uploads/2023/08/iconmultiply.svg> img src/app/uploads/2023/08/iconmultiply.svg alt loadinglazy> /picture> Trusted advisor /h3> p>With in-depth IT and business expertise in the strong>Retail, Wholesale, Manufacturing, Professional Services, Public Authorities, /strong>and strong>Real Estate/strong> sectors, we always know what is going on in your market. As a partner and advisor, we stand beside you and help you move forward./p> a hrefhttps://www.ctacnv.com/sectors/ classbtn btn--outline target_self titleMore information> More information /a> /div> /div> div classcol-md-4 mb-15> div classcard-block card-block--icon font-medium> h3 classdisplay8> picture> source media(min-width:100px) srcset/app/uploads/2023/08/iconplus.svg> source media(min-width:100px) srcset/app/uploads/2023/08/iconplus.svg> img src/app/uploads/2023/08/iconplus.svg alt loadinglazy> /picture> Strategic partnerships /h3> p>Ctac makes the technology of the most renowned IT giants – such as a hrefhttps://www.ctacnv.com/expertises/sap-s4hana/>SAP/a> and a hrefhttps://www.ctacnv.com/expertises/microsoft-teams/>Microsoft/a> – agile, workable and industry-specific for every organisation./p> a hrefhttps://www.ctacnv.com/about-ctac/business-partners-certifications/ classbtn btn--outline target_self titleSee our certification> See our certification /a> /div> /div> div classcol-md-4 mb-15> div classcard-block card-block--icon font-medium> h3 classdisplay8> picture> source media(min-width:100px) srcset/app/uploads/2023/08/icongear.svg> source media(min-width:100px) srcset/app/uploads/2023/08/icongear.svg> img src/app/uploads/2023/08/icongear.svg alt loadinglazy> /picture> No challenge too great /h3> p>With extensive experience in all facets of business and IT, no challenge is too big for us. For instance, we provide expertise in ERP, Data Services, Modern Workplace, Infra Services and Cyber Security and we have developed our own XV Unified Commerce Platform./p> a hrefhttps://www.ctacnv.com/customer-stories/ classbtn btn--outline target_self titleRead the customer stories> Read the customer stories /a> /div> /div> /div> /div> /section> section classservices> div classcontainer> ul classservices__tabs list-unstyled js-tabs-nav d-flex justify-content-center font-category-medium> li classjs-tab-nav> a href#tab_1>Themes/a> /li> li classjs-tab-nav> a href#tab_2>Expertise/a> /li> /ul> div classservices__tabs-content> div classservices__tabs-item js-tab-content idtab_1 > div classrow justify-content-between> div classcol-md-5 order-md-2> div classservices__image services__image--desktop> svg viewBox0 0 497 792 fillnone xmlnshttp://www.w3.org/2000/svg xmlns:xlinkhttp://www.w3.org/1999/xlink> path fill-ruleevenodd clip-ruleevenodd dM116.012 18.2203C119.212 6.07342 127.194 -6.81913e-06 140 -7.50566e-06L357 -1.91394e-05C369.803 -1.98258e-05 377.786 6.05162 380.983 18.2181L397.298 77.6623C400.477 89.7867 408.153 97.4616 420.3 100.662L478.78 116.012C490.927 119.212 497 127.194 497 140L497 652C497 664.803 490.948 672.786 478.782 675.982L419.338 692.297C407.213 695.477 399.538 703.153 396.338 715.3L380.988 773.78C377.788 785.927 369.806 792 357 792L140 792C127.197 792 119.214 785.948 116.018 773.782L99.7026 714.338C96.5229 702.213 88.847 694.538 76.7001 691.338L18.2203 675.988C6.07343 672.788 1.58649e-06 664.806 1.1301e-06 652L-2.32368e-05 140C-2.31334e-05 127.197 6.05164 119.214 18.2181 116.018L77.6623 99.7026C89.7867 96.5229 97.4617 88.847 100.662 76.7001L116.012 18.2203Z fillurl(#services_img-desk1)/> defs> pattern idservices_img-desk1 patternContentUnitsobjectBoundingBox width100% height100%> image xlink:href/app/uploads/2024/03/Trendrapport-Thumbnail-Manu-Camp-1024x1733.webp width1 height1 preserveAspectRationone meet/> /pattern> /defs> /svg> svg xmlnshttp://www.w3.org/2000/svg width560 height720 viewBox0 0 560 720 fillnone> path fill-ruleevenodd clip-ruleevenodd dM116.012 18.803C119.212 6.65618 127.194 0.582758 140 0.582757L420 0.582744C432.803 0.582743 440.786 6.63438 443.983 18.8008L460.298 78.2451C463.477 90.3694 471.153 98.0444 483.3 101.245L541.78 116.595C553.927 119.795 560 127.777 560 140.583L560 579.583C560 592.386 553.948 600.369 541.782 603.565L482.338 619.88C470.213 623.06 462.538 630.736 459.338 642.883L443.988 701.362C440.788 713.509 432.806 719.583 420 719.583L140 719.583C127.197 719.583 119.214 713.531 116.018 701.365L99.7026 641.92C96.5229 629.796 88.847 622.121 76.7001 618.921L18.2203 603.571C6.07343 600.37 1.04413e-06 592.388 5.33147e-07 579.583L-2.3104e-05 140.583C-2.30552e-05 127.78 6.05164 119.797 18.2181 116.6L77.6623 100.285C89.7867 97.1056 97.4617 89.4297 100.662 77.2829L116.012 18.803Z fillurl(#services_shape-desk1)/> defs> linearGradient idservices_shape-desk1 x1282.523 y1719.583 x2282.522 y20.58277 gradientUnitsuserSpaceOnUse> stop offset0 stop-color#35A93F/> stop offset1 stop-color#3FE4F0/> /linearGradient> /defs> /svg> /div> div classservices__image services__image--mobile> svg xmlnshttp://www.w3.org/2000/svg xmlns:xlinkhttp://www.w3.org/1999/xlink width318 height260 viewBox0 0 318 260 fillnone> path fill-ruleevenodd clip-ruleevenodd dM286 0L32 0C29.073 0 27.2485 1.38821 26.517 4.16463L23.0085 17.5315C22.277 20.3079 20.5227 22.0624 17.7514 22.7892L4.16413 26.5183C1.38324 27.2489 -6.16436e-08 29.0736 -6.78483e-08 32L-4.83419e-07 228C3.32284e-06 230.927 1.38821 232.751 4.16464 233.483L17.5315 236.992C20.3079 237.723 22.0624 239.477 22.7892 242.249L26.5183 255.836C27.2489 258.617 29.0736 260 32 260L286 260C288.927 260 290.751 258.612 291.483 255.835L294.992 242.469C295.723 239.692 297.477 237.938 300.249 237.211L313.836 233.482C316.617 232.751 318 230.926 318 228L318 32C318 29.073 316.612 27.2485 313.835 26.517L300.469 23.0085C297.692 22.277 295.938 20.5227 295.211 17.7514L291.482 4.16413C290.751 1.38324 288.926 0 286 0Z fillurl(#services_img-mob1)/> defs> pattern idservices_img-mob1 patternContentUnitsobjectBoundingBox width1 height1> use xlink:href#services_item-mob1 transformmatrix(0.000578225 0 0 0.000707214 -0.113208 0)/> /pattern> image idservices_item-mob1 width2121 height1414 xlink:href/app/uploads/2024/03/Trendrapport-Thumbnail-Manu-Camp-1024x563.webp/> /defs> /svg> svg xmlnshttp://www.w3.org/2000/svg width343 height243 viewBox0 0 343 243 fillnone> path fill-ruleevenodd clip-ruleevenodd dM-1.51822e-05 32L-2.30251e-06 211C-2.09191e-06 213.927 1.38821 215.751 4.16463 216.483L17.5315 219.992C20.3079 220.723 22.0624 222.477 22.7892 225.249L26.5183 238.836C27.2489 241.617 29.0736 243 32 243L311 243C313.927 243 315.751 241.612 316.483 238.835L319.992 225.469C320.723 222.692 322.477 220.938 325.249 220.211L338.836 216.482C341.617 215.751 343 213.926 343 211L343 32C343 29.073 341.612 27.2485 338.835 26.517L325.469 23.0085C322.692 22.277 320.938 20.5227 320.211 17.7514L316.482 4.16413C315.751 1.38323 313.926 -8.33613e-06 311 -8.25842e-06L32 -8.49741e-07C29.073 -7.72017e-07 27.2485 1.38821 26.517 4.16464L23.0085 17.5314C22.2769 20.3079 20.5227 22.0624 17.7514 22.7892L4.16412 26.5183C1.38322 27.2489 -1.53928e-05 29.0736 -1.51822e-05 32Z fillurl(#services_shape-mob1)/> defs> linearGradient idservices_shape-mob1 x1173.045 y1243 x2173.045 y21.72293e-05 gradientUnitsuserSpaceOnUse> stop stop-color#35A93F/> stop offset1 stop-color#3FE4F0/> /linearGradient> /defs> /svg> /div> /div> div classcol-md-3 order-md-1 pt-lg-50 pt-xl-100 mt-xl-10> ul classservices__info list-unstyled> li classfont-medium> a hrefhttps://www.ctacnv.com/strategy-transformation/ targethttps://www.ctacnv.com/strategy-transformation/> span classbtn btn--text> Strategy & Transformation /span> p>Stay ahead of the competition with a clear end-to-end approach./p> /a> /li> li classfont-medium> a hrefhttps://www.ctacnv.com/technology/ targethttps://www.ctacnv.com/technology/> span classbtn btn--text> Technology /span> p>The foundation is technology, where we combine personalized solutions with standard applications./p> /a> /li> li classfont-medium> a hrefhttps://www.ctacnv.com/people/ targethttps://www.ctacnv.com/people/> span classbtn btn--text> People /span> p>Additional capacity or specialist IT knowledge/p> /a> /li> /ul> /div> div classcol-md-3 order-md-3 pt-lg-50 pt-xl-100 mt-xl-10> ul classservices__info list-unstyled> li classfont-medium> a hrefhttps://www.ctacnv.com/core-insights/ targethttps://www.ctacnv.com/core-insights/> span classbtn btn--text> Core & Insights /span> p>More insights and a stable foundation with ERP and Data Services./p> /a> /li> li classfont-medium> a hrefhttps://www.ctacnv.com/digital-experience/ targethttps://www.ctacnv.com/digital-experience/> span classbtn btn--text> Digital Experience /span> p>Complete peace of mind, from IT infrastructure to Modern Work and Security./p> /a> /li> /ul> /div> /div> /div> div classservices__tabs-item js-tab-content idtab_2 styledisplay: none;> div classrow justify-content-between> div classcol-md-5 order-md-2> div classservices__image services__image--desktop> svg viewBox0 0 497 792 fillnone xmlnshttp://www.w3.org/2000/svg xmlns:xlinkhttp://www.w3.org/1999/xlink> path fill-ruleevenodd clip-ruleevenodd dM116.012 18.2203C119.212 6.07342 127.194 -6.81913e-06 140 -7.50566e-06L357 -1.91394e-05C369.803 -1.98258e-05 377.786 6.05162 380.983 18.2181L397.298 77.6623C400.477 89.7867 408.153 97.4616 420.3 100.662L478.78 116.012C490.927 119.212 497 127.194 497 140L497 652C497 664.803 490.948 672.786 478.782 675.982L419.338 692.297C407.213 695.477 399.538 703.153 396.338 715.3L380.988 773.78C377.788 785.927 369.806 792 357 792L140 792C127.197 792 119.214 785.948 116.018 773.782L99.7026 714.338C96.5229 702.213 88.847 694.538 76.7001 691.338L18.2203 675.988C6.07343 672.788 1.58649e-06 664.806 1.1301e-06 652L-2.32368e-05 140C-2.31334e-05 127.197 6.05164 119.214 18.2181 116.018L77.6623 99.7026C89.7867 96.5229 97.4617 88.847 100.662 76.7001L116.012 18.2203Z fillurl(#services_img-desk2)/> defs> pattern idservices_img-desk2 patternContentUnitsobjectBoundingBox width100% height100%> image xlink:href/app/uploads/2024/06/Ctac-PSV-scaled-small-1024x1707.webp width1 height1 preserveAspectRationone meet/> /pattern> /defs> /svg> svg xmlnshttp://www.w3.org/2000/svg width560 height720 viewBox0 0 560 720 fillnone> path fill-ruleevenodd clip-ruleevenodd dM116.012 18.803C119.212 6.65618 127.194 0.582758 140 0.582757L420 0.582744C432.803 0.582743 440.786 6.63438 443.983 18.8008L460.298 78.2451C463.477 90.3694 471.153 98.0444 483.3 101.245L541.78 116.595C553.927 119.795 560 127.777 560 140.583L560 579.583C560 592.386 553.948 600.369 541.782 603.565L482.338 619.88C470.213 623.06 462.538 630.736 459.338 642.883L443.988 701.362C440.788 713.509 432.806 719.583 420 719.583L140 719.583C127.197 719.583 119.214 713.531 116.018 701.365L99.7026 641.92C96.5229 629.796 88.847 622.121 76.7001 618.921L18.2203 603.571C6.07343 600.37 1.04413e-06 592.388 5.33147e-07 579.583L-2.3104e-05 140.583C-2.30552e-05 127.78 6.05164 119.797 18.2181 116.6L77.6623 100.285C89.7867 97.1056 97.4617 89.4297 100.662 77.2829L116.012 18.803Z fillurl(#services_shape-desk2)/> defs> linearGradient idservices_shape-desk2 x1282.523 y1719.583 x2282.522 y20.58277 gradientUnitsuserSpaceOnUse> stop offset0 stop-color#35A93F/> stop offset1 stop-color#3FE4F0/> /linearGradient> /defs> /svg> /div> div classservices__image services__image--mobile> svg xmlnshttp://www.w3.org/2000/svg xmlns:xlinkhttp://www.w3.org/1999/xlink width318 height260 viewBox0 0 318 260 fillnone> path fill-ruleevenodd clip-ruleevenodd dM286 0L32 0C29.073 0 27.2485 1.38821 26.517 4.16463L23.0085 17.5315C22.277 20.3079 20.5227 22.0624 17.7514 22.7892L4.16413 26.5183C1.38324 27.2489 -6.16436e-08 29.0736 -6.78483e-08 32L-4.83419e-07 228C3.32284e-06 230.927 1.38821 232.751 4.16464 233.483L17.5315 236.992C20.3079 237.723 22.0624 239.477 22.7892 242.249L26.5183 255.836C27.2489 258.617 29.0736 260 32 260L286 260C288.927 260 290.751 258.612 291.483 255.835L294.992 242.469C295.723 239.692 297.477 237.938 300.249 237.211L313.836 233.482C316.617 232.751 318 230.926 318 228L318 32C318 29.073 316.612 27.2485 313.835 26.517L300.469 23.0085C297.692 22.277 295.938 20.5227 295.211 17.7514L291.482 4.16413C290.751 1.38324 288.926 0 286 0Z fillurl(#services_img-mob2)/> defs> pattern idservices_img-mob2 patternContentUnitsobjectBoundingBox width1 height1> use xlink:href#services_item-mob2 transformmatrix(0.000578225 0 0 0.000707214 -0.113208 0)/> /pattern> image idservices_item-mob2 width2121 height1414 xlink:href/app/uploads/2024/06/Ctac-PSV-scaled-small-897x1024.webp/> /defs> /svg> svg xmlnshttp://www.w3.org/2000/svg width343 height243 viewBox0 0 343 243 fillnone> path fill-ruleevenodd clip-ruleevenodd dM-1.51822e-05 32L-2.30251e-06 211C-2.09191e-06 213.927 1.38821 215.751 4.16463 216.483L17.5315 219.992C20.3079 220.723 22.0624 222.477 22.7892 225.249L26.5183 238.836C27.2489 241.617 29.0736 243 32 243L311 243C313.927 243 315.751 241.612 316.483 238.835L319.992 225.469C320.723 222.692 322.477 220.938 325.249 220.211L338.836 216.482C341.617 215.751 343 213.926 343 211L343 32C343 29.073 341.612 27.2485 338.835 26.517L325.469 23.0085C322.692 22.277 320.938 20.5227 320.211 17.7514L316.482 4.16413C315.751 1.38323 313.926 -8.33613e-06 311 -8.25842e-06L32 -8.49741e-07C29.073 -7.72017e-07 27.2485 1.38821 26.517 4.16464L23.0085 17.5314C22.2769 20.3079 20.5227 22.0624 17.7514 22.7892L4.16412 26.5183C1.38322 27.2489 -1.53928e-05 29.0736 -1.51822e-05 32Z fillurl(#services_shape-mob2)/> defs> linearGradient idservices_shape-mob2 x1173.045 y1243 x2173.045 y21.72293e-05 gradientUnitsuserSpaceOnUse> stop stop-color#35A93F/> stop offset1 stop-color#3FE4F0/> /linearGradient> /defs> /svg> /div> /div> div classcol-md-3 order-md-1 pt-lg-50 pt-xl-100 mt-xl-10> ul classservices__info list-unstyled> li classfont-medium> a hrefhttps://www.ctacnv.com/expertises/sap-s4hana/ targethttps://www.ctacnv.com/expertises/sap-s4hana/> span classbtn btn--text> ERP: SAP S/4HANA /span> p>SAP S/4HANA projects and consultancy./p> /a> /li> li classfont-medium> a hrefhttps://www.ctacnv.com/expertises/data-services/ targethttps://www.ctacnv.com/expertises/data-services/> span classbtn btn--text> Data services /span> p>Data management, strategy and insights./p> /a> /li> li classfont-medium> a hrefhttps://www.ctacnv.com/expertises/modern-workplace/ targethttps://www.ctacnv.com/expertises/modern-workplace/> span classbtn btn--text> Modern Work /span> p>Productivity, business continuity, and employee satisfaction. /p> /a> /li> li classfont-medium> a hrefhttps://www.ctacnv.com/expertises/unified-commerce/ targethttps://www.ctacnv.com/expertises/unified-commerce/> span classbtn btn--text> Unified Commerce /span> p>Put the customer at the center, now and in the future/p> /a> /li> /ul> /div> div classcol-md-3 order-md-3 pt-lg-50 pt-xl-100 mt-xl-10> ul classservices__info list-unstyled> li classfont-medium> a hrefhttps://www.ctacnv.com/expertises/cloud-infrastructure/ targethttps://www.ctacnv.com/expertises/cloud-infrastructure/> span classbtn btn--text> Cloud infrastructure /span> p>Management and optimization of the cloud environment./p> /a> /li> li classfont-medium> a hrefhttps://www.ctacnv.com/expertises/security/ targethttps://www.ctacnv.com/expertises/security/> span classbtn btn--text> Security /span> p>The security of your IT environment is paramount./p> /a> /li> li classfont-medium> a hrefhttps://www.ctacnv.com/expertises/it-coordination-management/ targethttps://www.ctacnv.com/expertises/it-coordination-management/> span classbtn btn--text> IT Coordination /span> p>Effectively manage your network of IT suppliers and services and improve your overview and control./p> /a> /li> li classfont-medium> a hrefhttps://www.ctacnv.com/people/ targethttps://www.ctacnv.com/people/> span classbtn btn--text> Resourcing /span> p>Additional capacity in business and IT./p> /a> /li> /ul> /div> /div> /div> /div> /div> /section> section classlogos> div classcontainer> div classlogos__slider js-logos-slider> div classlogos__slider-item> div classlogos__image> img src/app/uploads/2023/08/brand2.png alt loadinglazy> /div> /div> div classlogos__slider-item> div classlogos__image> img src/app/uploads/2023/08/brand3.png alt loadinglazy> /div> /div> div classlogos__slider-item> div classlogos__image> img src/app/uploads/2023/08/aspen-logo-grey-110x45.png alt loadinglazy> /div> /div> div classlogos__slider-item> div classlogos__image> img src/app/uploads/2023/09/praxis-logo-grijs-110x30.png alt loadinglazy> /div> /div> div classlogos__slider-item> div classlogos__image> img src/app/uploads/2023/09/akzo-110x33.png alt loadinglazy> /div> /div> div classlogos__slider-item> div classlogos__image> img src/app/uploads/2023/09/Untitled-1-110x41.png alt loadinglazy> /div> /div> div classlogos__slider-item> div classlogos__image> img src/app/uploads/2023/10/Cebeo-logo-110x48.png alt loadinglazy> /div> /div> div classlogos__slider-item> div classlogos__image> img src/app/uploads/2023/08/Picture3-110x23.png alt loadinglazy> /div> /div> /div> /div> /section> section classlayout> div classlayout__bg>/div> section classknowledge knowledge--sector> div classcontainer> div classknowledge__nav> div classrow> div classcol-md-7> div classknowledge__heading font-medium> div classknowledge__heading-label font-category-medium> Sector knowledge /div> h3 classh3>Active in these sectors/h3> /div> /div> /div> /div> div classknowledge__holder> div classknowledge__items> div classknowledge__slider js-sector-slider> div classknowledge__slide knowledge__slide--small> div classcard-sector> a hrefhttps://www.ctacnv.com/retail/ target_self classcard-sector__anchor titleRetail>/a> div classcard-sector__image> picture> source media(min-width:100px) srcset/app/uploads/2025/03/Ctac_Afbeelding_www.ctac_.nl-sectoren-retail-MOBILE-500x690-c-default.webp> source media(min-width:100px) srcset/app/uploads/2025/03/Ctac_Afbeelding_www.ctac_.nl-sectoren-retail-MOBILE-500x690-c-default.jpg> img src/app/uploads/2025/03/Ctac_Afbeelding_www.ctac_.nl-sectoren-retail-MOBILE.jpg alt loadinglazy> /picture> /div> div classcard-sector__content> div classcard-sector__content-title display7> Retail /div> div classcard-sector__content-text font-medium> p>Your customers deserve a frictionless shopping experience. Any time, any place, anywhere. You deliver this by getting to know your customers inside out and responding to their needs intelligently./p> span classbtn btn--text btn--white>Retail/span> /div> /div> /div> /div> div classknowledge__slide knowledge__slide--small> div classcard-sector> a hrefhttps://www.ctacnv.com/wholesale/ target_self classcard-sector__anchor titleWholesale>/a> div classcard-sector__image> picture> source media(min-width:100px) srcset/app/uploads/2025/03/1.Ctac_Afbeelding_www.ctac_.nl-sectoren-wholesale-2-MOBILE-500x690-c-default.webp> source media(min-width:100px) srcset/app/uploads/2025/03/1.Ctac_Afbeelding_www.ctac_.nl-sectoren-wholesale-2-MOBILE-500x690-c-default.jpg> img src/app/uploads/2025/03/1.Ctac_Afbeelding_www.ctac_.nl-sectoren-wholesale-2-MOBILE.jpg alt loadinglazy> /picture> /div> div classcard-sector__content> div classcard-sector__content-title display7> Wholesale /div> div classcard-sector__content-text font-medium> p>As a wholesaler, aim for an agile supply chain and an efficient omnichannel IT landscape./p> span classbtn btn--text btn--white>Wholesale/span> /div> /div> /div> /div> div classknowledge__slide knowledge__slide--small> div classcard-sector> a hrefhttps://www.ctacnv.com/manufacturing/ target_self classcard-sector__anchor titleManufacturing>/a> div classcard-sector__image> picture> source media(min-width:100px) srcset/app/uploads/2025/03/Ctac_Afbeelding_www.ctac_.nl-sectoren-manufacturing-MOBILE-500x690-c-default.webp> source media(min-width:100px) srcset/app/uploads/2025/03/Ctac_Afbeelding_www.ctac_.nl-sectoren-manufacturing-MOBILE-500x690-c-default.jpg> img src/app/uploads/2025/03/Ctac_Afbeelding_www.ctac_.nl-sectoren-manufacturing-MOBILE.jpg alt loadinglazy> /picture> /div> div classcard-sector__content> div classcard-sector__content-title display7> Manufacturing /div> div classcard-sector__content-text font-medium> p>A strong and agile IT system forms the basis for a successful manufacturing company./p> span classbtn btn--text btn--white>Manufacturing/span> /div> /div> /div> /div> div classknowledge__slide knowledge__slide--small> div classcard-sector> a hrefhttps://www.ctacnv.com/sectors/professional-services/ target_self classcard-sector__anchor titleProfessional Services>/a> div classcard-sector__image> picture> source media(min-width:100px) srcset/app/uploads/2025/03/1.Ctac_Afbeelding_www.ctac_.nl-sectoren-professional-services-MOBILE-500x690-c-default.webp> source media(min-width:100px) srcset/app/uploads/2025/03/1.Ctac_Afbeelding_www.ctac_.nl-sectoren-professional-services-MOBILE-500x690-c-default.jpg> img src/app/uploads/2025/03/1.Ctac_Afbeelding_www.ctac_.nl-sectoren-professional-services-MOBILE.jpg alt loadinglazy> /picture> /div> div classcard-sector__content> div classcard-sector__content-title display7> Professional Services /div> div classcard-sector__content-text font-medium> p>With stable, continuous IT processes, you can manage your projects more effectively and boost your customer satisfaction./p> span classbtn btn--text btn--white>Professional Services/span> /div> /div> /div> /div> div classknowledge__slide knowledge__slide--small> div classcard-sector> a hrefhttps://www.ctacnv.com/sectors/public-authorities/ target_self classcard-sector__anchor titlePublic Authorities>/a> div classcard-sector__image> picture> source media(min-width:100px) srcset/app/uploads/2025/04/OVerheid-sector-header-500x690-c-default.webp> source media(min-width:100px) srcset/app/uploads/2025/04/OVerheid-sector-header-500x690-c-default.jpg> img src/app/uploads/2025/04/OVerheid-sector-header.jpg alt loadinglazy> /picture> /div> div classcard-sector__content> div classcard-sector__content-title display7> Public Authorities /div> div classcard-sector__content-text font-medium> p>Ready for the future by focusing on modern infrastructure, cybersecurity and strengthening digital skills of employees./p> span classbtn btn--text btn--white>Public authorities/span> /div> /div> /div> /div> div classknowledge__slide knowledge__slide--small> div classcard-sector> a hrefhttps://www.ctacnv.com/real-estate/ target_self classcard-sector__anchor titleReal Estate>/a> div classcard-sector__image> picture> source media(min-width:100px) srcset/app/uploads/2025/04/Real-estate-sector-header-500x690-c-default.webp> source media(min-width:100px) srcset/app/uploads/2025/04/Real-estate-sector-header-500x690-c-default.jpg> img src/app/uploads/2025/04/Real-estate-sector-header.jpg alt loadinglazy> /picture> /div> div classcard-sector__content> div classcard-sector__content-title display7> Real Estate /div> div classcard-sector__content-text font-medium> p>Move with a changing industry. With Ctac you reduce your administration, always have up-to-date information and make adjustments when necessary./p> span classbtn btn--text btn--white>Real estate/span> /div> /div> /div> /div> /div> /div> /div> /div> /section> section classquote> div classcontainer> div classrow align-items-center> div classcol-6 col-md-3 order-md-2> div classquote__icon> img src/app/uploads/2023/08/plusgreen.svg alt loadinglazy> /div> /div> div classcol-6 col-md-3 order-md-1> div classquote__logo> img src/app/uploads/2024/03/MicrosoftTeams-image-90-400x119.png alt loadinglazy> /div> /div> div classcol-12 col-md-6 order-md-3 mt-30 mt-md-30> div classquote__text> All the developments we went through, we went through together. Ctacs consultants are right at home with us. span>Pascal van de Ven, process manager at Beeztees/span> /div> /div> /div> /div> /section> section classknowledge> div classcontainer> div classknowledge__nav> div classrow justify-content-between> div classcol-auto> div classrow align-items-baseline> div classcol-md-auto> div classknowledge__heading font-medium> h3 classh3>Knowledge centre/h3> /div> /div> div classcol-md-auto font-category-medium> ul classknowledge__tabs list-unstyled js-tabs-nav d-flex> li classjs-tab-nav>a href#knowledge-tab-post>Blog/a> /li> li classjs-tab-nav>a href#knowledge-tab-stories>Customer stories/a> /li> li classjs-tab-nav>a href#knowledge-tab-news>Press releases/a> /li> /ul> /div> /div> /div> /div> /div> div classknowledge__holder> div classknowledge__items js-tab-content knowledge__items--post idknowledge-tab-post > div classknowledge__slider js-knowledge-slider> div classknowledge__slide> a hrefhttps://www.ctacnv.com/blog/wholesale-digitization-sap-business-suite-makes-the-difference/ classcard-post titleDigitization in wholesale: why SAP Business Suite makes the difference> div classcard-post__image> picture> source media(min-width:100px) srcset/app/uploads/2025/10/Wholesale-875x600-c-default.webp> source media(min-width:100px) srcset/app/uploads/2025/10/Wholesale-875x600-c-default.jpg> img src/app/uploads/2025/10/Wholesale-875x600-c-default.jpg alt loadinglazy> /picture> /div> div classcard-post__content> div classcard-post__content-label> span classlabel__>Wholesale/span> /div> div classcard-post__content-title> h3 classdisplay8>Digitization in wholesale: why SAP Business Suite makes the difference/h3> /div> /div>/a> /div> div classknowledge__slide> a hrefhttps://www.ctacnv.com/blog/ctac-announces-partnership-with-dynatos-for-routty-cloud/ classcard-post titleCtac announces partnership with Dynatos for Routty Cloud> div classcard-post__image> picture> source media(min-width:100px) srcset/app/uploads/2025/09/Dynatos-werken-liggend-875x600-c-default.webp> source media(min-width:100px) srcset/app/uploads/2025/09/Dynatos-werken-liggend-875x600-c-default.jpg> img src/app/uploads/2025/09/Dynatos-werken-liggend-875x600-c-default.jpg alt loadinglazy> /picture> /div> div classcard-post__content> div classcard-post__content-label> span classlabel__>ERP/span> span classlabel__>News/span> /div> div classcard-post__content-title> h3 classdisplay8>Ctac announces partnership with Dynatos for Routty Cloud/h3> /div> /div>/a> /div> div classknowledge__slide> a hrefhttps://www.ctacnv.com/blog/waarom-veel-it-roadmaps-stranden-en-wat-jij-kunt-doen-om-dat-te-voorkomen/ classcard-post titleWhy many IT roadmaps fail and what you can do to prevent this> div classcard-post__image> picture> source media(min-width:100px) srcset/app/uploads/2025/06/ctacmarketing_A_modern_office_environment_with_three_young_prof_8fd55cf5-0c0f-4ea8-96cd-2ab8d732dfb0-875x600-c-default.webp> source media(min-width:100px) srcset/app/uploads/2025/06/ctacmarketing_A_modern_office_environment_with_three_young_prof_8fd55cf5-0c0f-4ea8-96cd-2ab8d732dfb0-875x600-c-default.jpg> img src/app/uploads/2025/06/ctacmarketing_A_modern_office_environment_with_three_young_prof_8fd55cf5-0c0f-4ea8-96cd-2ab8d732dfb0-875x600-c-default.jpg alt loadinglazy> /picture> /div> div classcard-post__content> div classcard-post__content-label> span classlabel__>ERP/span> /div> div classcard-post__content-title> h3 classdisplay8>Why many IT roadmaps fail and what you can do to prevent this/h3> /div> /div>/a> /div> div classknowledge__slide> a hrefhttps://www.ctacnv.com/blog/duurzaamheid-in-de-groothandel-hoe-slimme-it-bijdraagt-aan-een-groenere-toekomst/ classcard-post titleSustainability in wholesale: how smart IT contributes to a greener future> div classcard-post__image> picture> source media(min-width:100px) srcset/app/uploads/2025/06/ctacmarketing_The_image_shows_a_young_man_around_35_years_old_w_cdda1b44-2ff9-4c6c-b3e7-d9c73f8bae47-875x600-c-default.webp> source media(min-width:100px) srcset/app/uploads/2025/06/ctacmarketing_The_image_shows_a_young_man_around_35_years_old_w_cdda1b44-2ff9-4c6c-b3e7-d9c73f8bae47-875x600-c-default.jpg> img src/app/uploads/2025/06/ctacmarketing_The_image_shows_a_young_man_around_35_years_old_w_cdda1b44-2ff9-4c6c-b3e7-d9c73f8bae47-875x600-c-default.jpg alt loadinglazy> /picture> /div> div classcard-post__content> div classcard-post__content-label> span classlabel__>ERP/span> span classlabel__>Wholesale/span> /div> div classcard-post__content-title> h3 classdisplay8>Sustainability in wholesale: how smart IT contributes to a greener future/h3> /div> /div>/a> /div> div classknowledge__slide> a hrefhttps://www.ctacnv.com/blog/terugblik-op-pimpoint-amsterdam-2025/ classcard-post titleLooking back on PIMpoint Amsterdam 2025> div classcard-post__image> picture> source media(min-width:100px) srcset/app/uploads/2025/06/INRIVER-10.6.25-Artis-217-875x600-c-default.webp> source media(min-width:100px) srcset/app/uploads/2025/06/INRIVER-10.6.25-Artis-217-875x600-c-default.jpg> img src/app/uploads/2025/06/INRIVER-10.6.25-Artis-217-875x600-c-default.jpg alt loadinglazy> /picture> /div> div classcard-post__content> div classcard-post__content-label> span classlabel__>Data/span> /div> div classcard-post__content-title> h3 classdisplay8>Looking back on PIMpoint Amsterdam 2025/h3> /div> /div>/a> /div> div classknowledge__slide> a hrefhttps://www.ctacnv.com/blog/ontdek-joule-for-consultants-slimmer-sneller-en-efficienter-implementeren/ classcard-post titleDiscover Joule for Consultants. Implement smarter, faster and more efficiently.> div classcard-post__image> picture> source media(min-width:100px) srcset/app/uploads/2025/06/29724673-ef00-454d-950f-5e4f170ff2f6-1-875x600-c-default.webp> source media(min-width:100px) srcset/app/uploads/2025/06/29724673-ef00-454d-950f-5e4f170ff2f6-1-875x600-c-default.webp> img src/app/uploads/2025/06/29724673-ef00-454d-950f-5e4f170ff2f6-1-875x600-c-default.webp alt loadinglazy> /picture> /div> div classcard-post__content> div classcard-post__content-label> span classlabel__>AI/span> span classlabel__>ERP/span> /div> div classcard-post__content-title> h3 classdisplay8>Discover Joule for Consultants. Implement smarter, faster and more efficiently./h3> /div> /div>/a> /div> div classknowledge__slide> a hrefhttps://www.ctacnv.com/blog/avoid-the-same-problems-in-a-new-package-how-to-truly-make-your-digital-transformation-a-success/ classcard-post titleAvoid the same problems in a new package: how to truly make your digital transformation a success> div classcard-post__image> picture> source media(min-width:100px) srcset/app/uploads/2025/06/Ready4HANA2-875x600-c-default.webp> source media(min-width:100px) srcset/app/uploads/2025/06/Ready4HANA2-875x600-c-default.jpg> img src/app/uploads/2025/06/Ready4HANA2-875x600-c-default.jpg alt loadinglazy> /picture> /div> div classcard-post__content> div classcard-post__content-label> span classlabel__black>Digital Transformation/span> span classlabel__>ERP/span> /div> div classcard-post__content-title> h3 classdisplay8>Avoid the same problems in a new package: how to truly make your digital transformation a success/h3> /div> /div>/a> /div> div classknowledge__slide> a hrefhttps://www.ctacnv.com/blog/welcome-sap-cloud-erp-private-edition/ classcard-post titleWelcome SAP Cloud ERP, Private Edition!> div classcard-post__image> picture> source media(min-width:100px) srcset/app/uploads/2025/05/SIM-game-visual-875x600-c-default.webp> source media(min-width:100px) srcset/app/uploads/2025/05/SIM-game-visual-875x600-c-default.jpg> img src/app/uploads/2025/05/SIM-game-visual-875x600-c-default.jpg alt loadinglazy> /picture> /div> div classcard-post__content> div classcard-post__content-label> span classlabel__>ERP/span> /div> div classcard-post__content-title> h3 classdisplay8>Welcome SAP Cloud ERP, Private Edition!/h3> /div> /div>/a> /div> div classknowledge__slide> a hrefhttps://www.ctacnv.com/blog/microsoft-introduces-three-year-csp-contracts-for-microsoft-365-e3-and-e5-subscriptions-with-a-temporary-discount/ classcard-post titleMicrosoft introduces three-year CSP contracts for Microsoft 365 E3 and E5 subscriptions – with a temporary discount> div classcard-post__image> picture> source media(min-width:100px) srcset/app/uploads/2025/05/26c587f7-dc6c-4dc6-8b01-10b099424987-875x600-c-default.webp> source media(min-width:100px) srcset/app/uploads/2025/05/26c587f7-dc6c-4dc6-8b01-10b099424987-875x600-c-default.jpg> img src/app/uploads/2025/05/26c587f7-dc6c-4dc6-8b01-10b099424987-875x600-c-default.jpg alt loadinglazy> /picture> /div> div classcard-post__content> div classcard-post__content-label> span classlabel__>Modern Work/span> /div> div classcard-post__content-title> h3 classdisplay8>Microsoft introduces three-year CSP contracts for Microsoft 365 E3 and E5 subscriptions – with a temporary discount/h3> /div> /div>/a> /div> div classknowledge__slide> a hrefhttps://www.ctacnv.com/blog/unified-commerce-smart-architecture-for-all-your-retail-concepts/ classcard-post titleUnified Commerce: smart architecture for all your shop concepts> div classcard-post__image> picture> source media(min-width:100px) srcset/app/uploads/2025/03/Retail-blog-visual-875x600-c-default.webp> source media(min-width:100px) srcset/app/uploads/2025/03/Retail-blog-visual-875x600-c-default.jpg> img src/app/uploads/2025/03/Retail-blog-visual-875x600-c-default.jpg alt loadinglazy> /picture> /div> div classcard-post__content> div classcard-post__content-label> span classlabel__>Unified commerce/span> /div> div classcard-post__content-title> h3 classdisplay8>Unified Commerce: smart architecture for all your shop concepts/h3> /div> /div>/a> /div> /div> a hrefhttps://www.ctacnv.com/blogs/ classbtn btn--text>More blog/a> /div> div classknowledge__items js-tab-content knowledge__items--stories idknowledge-tab-stories > div classknowledge__slider js-knowledge-slider> div classknowledge__slide> a hrefhttps://www.ctacnv.com/customer-stories/ag-real-estate-naar-sap-s-4-hana-succes/ classcard-post titleThorough preparation makes migration from AG Real Estate to SAP S/4 HANA a success> div classcard-post__image> picture> source media(min-width:100px) srcset/app/uploads/2025/08/AG-real-estate-875x600-c-default.webp> source media(min-width:100px) srcset/app/uploads/2025/08/AG-real-estate-875x600-c-default.jpg> img src/app/uploads/2025/08/AG-real-estate-875x600-c-default.jpg alt loadinglazy> /picture> /div> div classcard-post__content> div classcard-post__content-label> span classlabel__pink>ERP/span> /div> div classcard-post__content-title> h3 classdisplay8>Thorough preparation makes migration from AG Real Estate to SAP S/4 HANA a success/h3> /div> /div>/a> /div> div classknowledge__slide> a hrefhttps://www.ctacnv.com/customer-stories/werminval/ classcard-post titleWerminval benefits from timely switch to SAP S/4HANA> div classcard-post__image> picture> source media(min-width:100px) srcset/app/uploads/2023/11/Werminval-banner-875x600-c-default.webp> source media(min-width:100px) srcset/app/uploads/2023/11/Werminval-banner-875x600-c-default.webp> img src/app/uploads/2023/11/Werminval-banner-875x600-c-default.webp alt loadinglazy> /picture> /div> div classcard-post__content> div classcard-post__content-label> span classlabel__pink>ERP/span> /div> div classcard-post__content-title> h3 classdisplay8>Werminval benefits from timely switch to SAP S/4HANA/h3> /div> /div>/a> /div> div classknowledge__slide> a hrefhttps://www.ctacnv.com/customer-stories/pittsburgh-corning-europe/ classcard-post titleTeamwork ensures a successful migration at FOAMGLAS® to Owens Corning> div classcard-post__image> picture> source media(min-width:100px) srcset/app/uploads/2023/09/5_102904F2147-PITT-1920x1080-875x600-c-default.webp> source media(min-width:100px) srcset/app/uploads/2023/09/5_102904F2147-PITT-1920x1080-875x600-c-default.jpg> img src/app/uploads/2023/09/5_102904F2147-PITT-1920x1080-875x600-c-default.jpg alt loadinglazy> /picture> /div> div classcard-post__content> div classcard-post__content-label> span classlabel__black>Cloud Infrastructure/span> span classlabel__pink>ERP/span> span classlabel__blue>Manufacturing/span> /div> div classcard-post__content-title> h3 classdisplay8>Teamwork ensures a successful migration at FOAMGLAS® to Owens Corning/h3> /div> /div>/a> /div> div classknowledge__slide> a hrefhttps://www.ctacnv.com/customer-stories/smooth-switch-to-sap-s-4hana-at-wdp-thanks-to-best-practices/ classcard-post titleSmooth switch to SAP S/4HANA at WDP thanks to best practices> div classcard-post__image> picture> source media(min-width:100px) srcset/app/uploads/2025/04/WPD-875x600-c-default.webp> source media(min-width:100px) srcset/app/uploads/2025/04/WPD-875x600-c-default.webp> img src/app/uploads/2025/04/WPD-875x600-c-default.webp alt loadinglazy> /picture> /div> div classcard-post__content> div classcard-post__content-label> span classlabel__pink>ERP/span> span classlabel__black>Real estate/span> /div> div classcard-post__content-title> h3 classdisplay8>Smooth switch to SAP S/4HANA at WDP thanks to best practices/h3> /div> /div>/a> /div> div classknowledge__slide> a hrefhttps://www.ctacnv.com/customer-stories/furniture-manufacturer-de-toekomst-lays-foundation-for-flexible-growth-with-sap-s-4hana-public-cloud/ classcard-post titleFurniture manufacturer De Toekomst lays foundation for flexible growth with SAP S/4HANA Public Cloud> div classcard-post__image> picture> source media(min-width:100px) srcset/app/uploads/2025/04/DSC05576-875x600-c-default.webp> source media(min-width:100px) srcset/app/uploads/2025/04/DSC05576-875x600-c-default.jpg> img src/app/uploads/2025/04/DSC05576-875x600-c-default.jpg alt loadinglazy> /picture> /div> div classcard-post__content> div classcard-post__content-label> span classlabel__pink>ERP/span> span classlabel__blue>Manufacturing/span> /div> div classcard-post__content-title> h3 classdisplay8>Furniture manufacturer De Toekomst lays foundation for flexible growth with SAP S/4HANA Public Cloud/h3> /div> /div>/a> /div> div classknowledge__slide> a hrefhttps://www.ctacnv.com/customer-stories/ctac-optimizes-product-data-kafkas-integration-inriver-pim-sap-s4hana/ classcard-post titleCtac optimizes product data at Kafkas with integration between Inriver PIM and SAP S/4HANA> div classcard-post__image> picture> source media(min-width:100px) srcset/app/uploads/2025/04/Xanthi-1280x720-2-875x600-c-default.webp> source media(min-width:100px) srcset/app/uploads/2025/04/Xanthi-1280x720-2-875x600-c-default.jpg> img src/app/uploads/2025/04/Xanthi-1280x720-2-875x600-c-default.jpg alt loadinglazy> /picture> /div> div classcard-post__content> div classcard-post__content-label> span classlabel__>Data/span> /div> div classcard-post__content-title> h3 classdisplay8>Ctac optimizes product data at Kafkas with integration between Inriver PIM and SAP S/4HANA/h3> /div> /div>/a> /div> div classknowledge__slide> a hrefhttps://www.ctacnv.com/customer-stories/tomtom-bluefield-migration-to-sap-s-4hana/ classcard-post titleCtac keeps TomTom on track during Bluefield migration to SAP S/4HANA> div classcard-post__image> picture> source media(min-width:100px) srcset/app/uploads/2025/03/office-amsterdam-875x600-c-default.webp> source media(min-width:100px) srcset/app/uploads/2025/03/office-amsterdam-875x600-c-default.jpeg> img src/app/uploads/2025/03/office-amsterdam-875x600-c-default.jpeg alt loadinglazy> /picture> /div> div classcard-post__content> div classcard-post__content-label> span classlabel__pink>ERP/span> span classlabel__blue>Manufacturing/span> /div> div classcard-post__content-title> h3 classdisplay8>Ctac keeps TomTom on track during Bluefield migration to SAP S/4HANA/h3> /div> /div>/a> /div> div classknowledge__slide> a hrefhttps://www.ctacnv.com/customer-stories/garcia-inriver-dpp/ classcard-post titleThanks to Ctac and inriver, Garcia achieves compliance with DPP and other regulatory requirements on time> div classcard-post__image> picture> source media(min-width:100px) srcset/app/uploads/2024/12/ss2-1-875x600-c-default.webp> source media(min-width:100px) srcset/app/uploads/2024/12/ss2-1-875x600-c-default.jpg> img src/app/uploads/2024/12/ss2-1-875x600-c-default.jpg alt loadinglazy> /picture> /div> div classcard-post__content> div classcard-post__content-label> span classlabel__>Data/span> span classlabel__>Retail/span> /div> div classcard-post__content-title> h3 classdisplay8>Thanks to Ctac and inriver, Garcia achieves compliance with DPP and other regulatory requirements on time/h3> /div> /div>/a> /div> div classknowledge__slide> a hrefhttps://www.ctacnv.com/customer-stories/ctac-helps-beeztees-with-migration-to-sap-s-4hana/ classcard-post titleCtac helps Beeztees with migration to SAP S/4HANA: “Now we are future-proof again”> div classcard-post__image> picture> source media(min-width:100px) srcset/app/uploads/2024/05/Beeztees-header-cropped-875x600-c-default.webp> source media(min-width:100px) srcset/app/uploads/2024/05/Beeztees-header-cropped-875x600-c-default.jpg> img src/app/uploads/2024/05/Beeztees-header-cropped-875x600-c-default.jpg alt loadinglazy> /picture> /div> div classcard-post__content> div classcard-post__content-label> span classlabel__pink>ERP/span> span classlabel__>Retail/span> span classlabel__>Wholesale/span> /div> div classcard-post__content-title> h3 classdisplay8>Ctac helps Beeztees with migration to SAP S/4HANA: “Now we are future-proof again”/h3> /div> /div>/a> /div> div classknowledge__slide> a hrefhttps://www.ctacnv.com/customer-stories/migration-en-implementation-for-waak-customisation-for-the-future/ classcard-post titleMigration and implementation for WAAK: Customisation for the future> div classcard-post__image> picture> source media(min-width:100px) srcset/app/uploads/2024/04/WAAK_kabelassemblage_creditsWAAK-875x600-c-default.webp> source media(min-width:100px) srcset/app/uploads/2024/04/WAAK_kabelassemblage_creditsWAAK-875x600-c-default.jpg> img src/app/uploads/2024/04/WAAK_kabelassemblage_creditsWAAK-875x600-c-default.jpg alt loadinglazy> /picture> /div> div classcard-post__content> div classcard-post__content-label> span classlabel__pink>ERP/span> span classlabel__blue>Manufacturing/span> /div> div classcard-post__content-title> h3 classdisplay8>Migration and implementation for WAAK: Customisation for the future/h3> /div> /div>/a> /div> /div> a hrefhttps://www.ctacnv.com/customer-stories/ classbtn btn--text>More customer stories/a> /div> div classknowledge__items js-tab-content knowledge__items--news idknowledge-tab-news styledisplay: none;> div classknowledge__slider js-knowledge-slider> div classknowledge__slide> a hrefhttps://www.ctacnv.com/press/ctac-takes-note-of-value8-declaring-mandatory-public-offer-unconditional/ classcard-post titleCtac takes note of Value8 declaring mandatory public offer unconditional> div classcard-post__image> picture> source media(min-width:100px) srcset/app/uploads/2024/06/DV__9298_edited-875x600-c-default.webp> source media(min-width:100px) srcset/app/uploads/2024/06/DV__9298_edited-875x600-c-default.jpg> img src/app/uploads/2024/06/DV__9298_edited-875x600-c-default.jpg alt loadinglazy> /picture> /div> div classcard-post__content> div classcard-post__content-label> span classlabel__blue>Financial press releases/span> /div> div classcard-post__content-title> h3 classdisplay8>Ctac takes note of Value8 declaring mandatory public offer unconditional/h3> /div> /div>/a> /div> div classknowledge__slide> a hrefhttps://www.ctacnv.com/press/modest-growth-in-the-third-quarter-of-2025/ classcard-post titleModest growth in the third quarter of 2025> div classcard-post__image> picture> source media(min-width:100px) srcset/app/uploads/2024/06/DV__9298_edited-875x600-c-default.webp> source media(min-width:100px) srcset/app/uploads/2024/06/DV__9298_edited-875x600-c-default.jpg> img src/app/uploads/2024/06/DV__9298_edited-875x600-c-default.jpg alt loadinglazy> /picture> /div> div classcard-post__content> div classcard-post__content-label> span classlabel__blue>Financial press releases/span> /div> div classcard-post__content-title> h3 classdisplay8>Modest growth in the third quarter of 2025/h3> /div> /div>/a> /div> div classknowledge__slide> a hrefhttps://www.ctacnv.com/press/ctac-publishes-its-position-statement-in-response-to-the-offer-memorandum-from-value8/ classcard-post titleCtac publishes its position statement in response to the offer memorandum from Value8> div classcard-post__image> picture> source media(min-width:100px) srcset/app/uploads/2024/06/DV__9298_edited-875x600-c-default.webp> source media(min-width:100px) srcset/app/uploads/2024/06/DV__9298_edited-875x600-c-default.jpg> img src/app/uploads/2024/06/DV__9298_edited-875x600-c-default.jpg alt loadinglazy> /picture> /div> div classcard-post__content> div classcard-post__content-label> span classlabel__blue>Financial press releases/span> /div> div classcard-post__content-title> h3 classdisplay8>Ctac publishes its position statement in response to the offer memorandum from Value8/h3> /div> /div>/a> /div> div classknowledge__slide> a hrefhttps://www.ctacnv.com/press/position-statement-offer-memorandum-value8/ classcard-post titlePosition statement offer memorandum Value8> div classcard-post__image> picture> source media(min-width:100px) srcset/app/uploads/2024/06/DV__9298_edited-875x600-c-default.webp> source media(min-width:100px) srcset/app/uploads/2024/06/DV__9298_edited-875x600-c-default.jpg> img src/app/uploads/2024/06/DV__9298_edited-875x600-c-default.jpg alt loadinglazy> /picture> /div> div classcard-post__content> div classcard-post__content-label> span classlabel__blue>Financial press releases/span> /div> div classcard-post__content-title> h3 classdisplay8>Position statement offer memorandum Value8/h3> /div> /div>/a> /div> div classknowledge__slide> a hrefhttps://www.ctacnv.com/press/half-year-report-2025-including-auditors-review-report/ classcard-post titleHalf-year report 2025 including auditor’s review report Ctac N.V.> div classcard-post__image> picture> source media(min-width:100px) srcset/app/uploads/2024/06/DV__9298_edited-875x600-c-default.webp> source media(min-width:100px) srcset/app/uploads/2024/06/DV__9298_edited-875x600-c-default.jpg> img src/app/uploads/2024/06/DV__9298_edited-875x600-c-default.jpg alt loadinglazy> /picture> /div> div classcard-post__content> div classcard-post__content-label> span classlabel__blue>Financiële persberichten/span> /div> div classcard-post__content-title> h3 classdisplay8>Half-year report 2025 including auditor’s review report Ctac N.V./h3> /div> /div>/a> /div> div classknowledge__slide> a hrefhttps://www.ctacnv.com/press/ctac-obtains-auditors-assessment-report-for-half-year-report-2025/ classcard-post titleCtac obtains auditor’s review report for half-year report 2025> div classcard-post__image> picture> source media(min-width:100px) srcset/app/uploads/2024/06/DV__9298_edited-875x600-c-default.webp> source media(min-width:100px) srcset/app/uploads/2024/06/DV__9298_edited-875x600-c-default.jpg> img src/app/uploads/2024/06/DV__9298_edited-875x600-c-default.jpg alt loadinglazy> /picture> /div> div classcard-post__content> div classcard-post__content-label> span classlabel__blue>Financiële persberichten/span> /div> div classcard-post__content-title> h3 classdisplay8>Ctac obtains auditor’s review report for half-year report 2025/h3> /div> /div>/a> /div> div classknowledge__slide> a hrefhttps://www.ctacnv.com/press/ctac-records-higher-revenue-and-profit-h1/ classcard-post titleCtac records higher revenue and profit> div classcard-post__image> picture> source media(min-width:100px) srcset/app/uploads/2024/06/DV__9298_edited-875x600-c-default.webp> source media(min-width:100px) srcset/app/uploads/2024/06/DV__9298_edited-875x600-c-default.jpg> img src/app/uploads/2024/06/DV__9298_edited-875x600-c-default.jpg alt loadinglazy> /picture> /div> div classcard-post__content> div classcard-post__content-label> span classlabel__blue>Financiële persberichten/span> /div> div classcard-post__content-title> h3 classdisplay8>Ctac records higher revenue and profit/h3> /div> /div>/a> /div> div classknowledge__slide> a hrefhttps://www.ctacnv.com/press/ctac-records-higher-revenue-and-profit/ classcard-post titleCtac records higher revenue and profit> div classcard-post__image> picture> source media(min-width:100px) srcset/app/uploads/2024/07/DV__9298_edited-875x600-c-default.webp> source media(min-width:100px) srcset/app/uploads/2024/07/DV__9298_edited-875x600-c-default.jpg> img src/app/uploads/2024/07/DV__9298_edited-875x600-c-default.jpg alt loadinglazy> /picture> /div> div classcard-post__content> div classcard-post__content-label> span classlabel__blue>Financial press releases/span> /div> div classcard-post__content-title> h3 classdisplay8>Ctac records higher revenue and profit/h3> /div> /div>/a> /div> div classknowledge__slide> a hrefhttps://www.ctacnv.com/press/resolutions-of-the-ctac-n-v-annual-general-meeting-of-shareholders-2025/ classcard-post titleResolutions of the Ctac N.V. Annual General Meeting of Shareholders 2025> div classcard-post__image> picture> source media(min-width:100px) srcset/app/uploads/2024/06/DV__9298_edited-875x600-c-default.webp> source media(min-width:100px) srcset/app/uploads/2024/06/DV__9298_edited-875x600-c-default.jpg> img src/app/uploads/2024/06/DV__9298_edited-875x600-c-default.jpg alt loadinglazy> /picture> /div> div classcard-post__content> div classcard-post__content-label> span classlabel__blue>Financiële persberichten/span> /div> div classcard-post__content-title> h3 classdisplay8>Resolutions of the Ctac N.V. Annual General Meeting of Shareholders 2025/h3> /div> /div>/a> /div> div classknowledge__slide> a hrefhttps://www.ctacnv.com/press/ctac-takes-note-of-announcement-of-mandatory-bid-by-value8/ classcard-post titleCtac takes note of announcement of mandatory bid by Value8> div classcard-post__image> picture> source media(min-width:100px) srcset/app/uploads/2024/06/DV__9298_edited-875x600-c-default.webp> source media(min-width:100px) srcset/app/uploads/2024/06/DV__9298_edited-875x600-c-default.jpg> img src/app/uploads/2024/06/DV__9298_edited-875x600-c-default.jpg alt loadinglazy> /picture> /div> div classcard-post__content> div classcard-post__content-label> span classlabel__blue>Financiële persberichten/span> /div> div classcard-post__content-title> h3 classdisplay8>Ctac takes note of announcement of mandatory bid by Value8/h3> /div> /div>/a> /div> /div> a hrefhttps://www.ctacnv.com/press/ classbtn btn--text>More press releases/a> /div> /div> /div> /section> /section> section classlandings> div classcontainer> div classrow justify-content-between> div classcol-md-4 col-xl-3 font-medium> div> h4 classh4>Excellent Resourcing/h4> /div> /div> div classcol-md-8> div classlandings__item> a classcard-list hrefhttps://www.ctacnv.com/it-staffing-businesses/ target_self titleFor businesses> div classrow justify-content-between> div classcol-md-3 mb-15 mb-md-0> div classcard-list__image> picture> source media(min-width:100px) srcset/app/uploads/2023/11/DV__9257-1920x1280-300x208-c-default.webp> source media(min-width:100px) srcset/app/uploads/2023/11/DV__9257-1920x1280-300x208-c-default.jpg> img src/app/uploads/2023/11/DV__9257-1920x1280.jpg alt loadinglazy> /picture> /div> /div> div classcol-md-9 d-flex flex-column justify-content-center> div classcard-list__text font-medium> span classbtn btn--text>For businesses/span> p>Do you need extra capacity or specialist IT knowledge? We have a wide pool of specialists available./p> /div> /div> /div>/a> /div> /div> /div> /div> /section> /main> div classfooter> div classcontainer> div classfooter__block> div classrow> div classcol-md-6> a hrefhttps://www.ctacnv.com/customer-stories/cloudmigratie-bij-provincie-noord-brabant/ classcard-footer titleFlawless cloud migration by Ctac and SAP for the Dutch Province of North Brabant.> div classcard-footer__logo> picture> source media(min-width:100px) srcset/app/uploads/2024/02/Provincie-NB-logo-200x0-c-default.webp> source media(min-width:100px) srcset/app/uploads/2024/02/Provincie-NB-logo-200x0-c-default.png> img src/app/uploads/2024/02/Provincie-NB-logo.png alt loadinglazy> /picture> /div> div classcard-footer__content> p classfont-medium>Flawless cloud migration by Ctac and SAP for the Dutch Province of North Brabant./p> span classbtn btn--text btn--white>Read more/span> /div>/a> /div> /div> /div> div classfooter__main> div classrow> div classcol-md-5 col-xl-6 d-none d-md-block> div classfooter__text h3> Enabling your ambition /div> /div> div classcol-md-7 col-xl-6> div classrow> div classcol-md-8 order-md-1> div classfooter__menu font-small> ul classrow list-unstyled> li classcol-6 mb-15> a hrefhttps://www.ctacnv.com/expertises/sap-s4hana/ target_self titleSAP S/4HANA>SAP S/4HANA/a> /li> li classcol-6 mb-15> a hrefhttps://www.ctacnv.com/expertises/data-services/ target_self titleData Services>Data Services/a> /li> li classcol-6 mb-15> a hrefhttps://www.ctacnv.com/expertises/modern-workplace/ target_self titleModern Work>Modern Work/a> /li> li classcol-6 mb-15> a hrefhttps://www.ctacnv.com/expertises/cloud-infrastructure/ target_self titleCloud Infrastructure>Cloud Infrastructure/a> /li> li classcol-6 mb-15> a hrefhttps://www.ctacnv.com/expertises/unified-commerce/ target_self titleUnified Commerce>Unified Commerce/a> /li> li classcol-6 mb-15> a hrefhttps://www.ctacnv.com/expertises/security/ target_self titleCyber Security>Cyber Security/a> /li> li classcol-6 mb-15> a hrefhttps://www.ctacnv.com/it-staffing-businesses/ target_self titleResourcing>Resourcing/a> /li> li classcol-6 mb-15> a hrefhttps://www.ctacnv.com/investor-relations/ target_self titleInvestor Relations>Investor Relations/a> /li> li classcol-6 mb-15> a hrefhttps://www.ctacnv.com/about-ctac/ target_self titleAbout Ctac>About Ctac/a> /li> li classcol-6 mb-15> a hrefhttps://www.ctacnv.com/contact/ target_self titleContact>Contact/a> /li> /ul> /div> /div> /div> /div> /div> /div> div classfooter__bottom> div classrow> div classcol-md-7 offset-md-5 col-xl-6 offset-xl-6> div classrow align-items-center justify-content-between> div classcol-md-auto mb-20 order-md-2> ul classlist-unstyled font-xsmall> li>© 2025 Ctac/li> li> a hrefhttps://www.ctacnv.com/disclaimer/ target_self titleDisclaimer>Disclaimer/a> /li> li> a hrefhttps://www.ctacnv.com/privacyverklaring/ target_self titleCtac Group – External Privacy Statement>Ctac Group – External Privacy Statement/a> /li> li> a hrefhttps://www.ctacnv.com/responsible-disclosure/ target_self titleResponsible Disclosure>Responsible Disclosure/a> /li> li> a hrefhttps://sumedia.nl/ classsu-icon target_blank titleSumedia> i classicon-sumedia>/i> /a> /li> /ul> /div> div classcol-md-auto mb-20 order-md-1> ul classfooter__social list-unstyled d-flex> li> a hrefhttps://www.linkedin.com/company/ctac target_blank titleLinkedIn> i classicon-linkedin>/i> /a> /li> li> a hrefhttps://www.youtube.com/channel/UCUCqqIdhHsr_ZCSC5drb3fw target_blank titleYouTube> i classicon-youtube>/i> /a> /li> li> a hrefhttps://www.instagram.com/ctac_nl/ target_blank titleInstagram> i classicon-instagram>/i> /a> /li> /ul> /div> /div> /div> /div> /div> div classfooter__text h3 d-md-none> Enabling your ambition /div> /div> a href# classfooter__back-top d-none d-md-flex js-return-top aria-labelBack to top> i classicon-arrow-up>/i> /a> svg width0 height0> defs> linearGradient idimage-text-gradient x11280 x20 y1212.216 y2212.216 gradientUnitsuserSpaceOnUse> stop offset0 stop-color#3FE4F0/> stop offset1 stop-color#113DC2/> /linearGradient> /defs> /svg>/div>script typespeculationrules>{prefetch:{source:document,where:{and:{href_matches:/*},{not:{href_matches:/wp/wp-*.php,/wp/wp-admin/*,/app/uploads/*,/app/*,/app/plugins/*,/app/themes/supress/*,/*\\?(.+)}},{not:{selector_matches:arel~\nofollow\}},{not:{selector_matches:.no-prefetch, .no-prefetch a}}},eagerness:conservative}}/script>link relstylesheet href/app/plugins/wp-security-hardening/modules/inc/assets/css/tw-bs4.css>link relstylesheet href/app/plugins/wp-security-hardening/modules/inc/fa/css/font-awesome.min.css>link relstylesheet href/app/plugins/wp-security-hardening/modules/css/front.css>style idglobal-styles-inline-css typetext/css>:root{--wp--preset--aspect-ratio--square: 1;--wp--preset--aspect-ratio--4-3: 4/3;--wp--preset--aspect-ratio--3-4: 3/4;--wp--preset--aspect-ratio--3-2: 3/2;--wp--preset--aspect-ratio--2-3: 2/3;--wp--preset--aspect-ratio--16-9: 16/9;--wp--preset--aspect-ratio--9-16: 9/16;--wp--preset--color--black: #000000;--wp--preset--color--cyan-bluish-gray: #abb8c3;--wp--preset--color--white: #ffffff;--wp--preset--color--pale-pink: #f78da7;--wp--preset--color--vivid-red: #cf2e2e;--wp--preset--color--luminous-vivid-orange: #ff6900;--wp--preset--color--luminous-vivid-amber: #fcb900;--wp--preset--color--light-green-cyan: #7bdcb5;--wp--preset--color--vivid-green-cyan: #00d084;--wp--preset--color--pale-cyan-blue: #8ed1fc;--wp--preset--color--vivid-cyan-blue: #0693e3;--wp--preset--color--vivid-purple: #9b51e0;--wp--preset--gradient--vivid-cyan-blue-to-vivid-purple: linear-gradient(135deg,rgb(6,147,227) 0%,rgb(155,81,224) 100%);--wp--preset--gradient--light-green-cyan-to-vivid-green-cyan: linear-gradient(135deg,rgb(122,220,180) 0%,rgb(0,208,130) 100%);--wp--preset--gradient--luminous-vivid-amber-to-luminous-vivid-orange: linear-gradient(135deg,rgb(252,185,0) 0%,rgb(255,105,0) 100%);--wp--preset--gradient--luminous-vivid-orange-to-vivid-red: linear-gradient(135deg,rgb(255,105,0) 0%,rgb(207,46,46) 100%);--wp--preset--gradient--very-light-gray-to-cyan-bluish-gray: linear-gradient(135deg,rgb(238,238,238) 0%,rgb(169,184,195) 100%);--wp--preset--gradient--cool-to-warm-spectrum: linear-gradient(135deg,rgb(74,234,220) 0%,rgb(151,120,209) 20%,rgb(207,42,186) 40%,rgb(238,44,130) 60%,rgb(251,105,98) 80%,rgb(254,248,76) 100%);--wp--preset--gradient--blush-light-purple: linear-gradient(135deg,rgb(255,206,236) 0%,rgb(152,150,240) 100%);--wp--preset--gradient--blush-bordeaux: linear-gradient(135deg,rgb(254,205,165) 0%,rgb(254,45,45) 50%,rgb(107,0,62) 100%);--wp--preset--gradient--luminous-dusk: linear-gradient(135deg,rgb(255,203,112) 0%,rgb(199,81,192) 50%,rgb(65,88,208) 100%);--wp--preset--gradient--pale-ocean: linear-gradient(135deg,rgb(255,245,203) 0%,rgb(182,227,212) 50%,rgb(51,167,181) 100%);--wp--preset--gradient--electric-grass: linear-gradient(135deg,rgb(202,248,128) 0%,rgb(113,206,126) 100%);--wp--preset--gradient--midnight: linear-gradient(135deg,rgb(2,3,129) 0%,rgb(40,116,252) 100%);--wp--preset--font-size--small: 13px;--wp--preset--font-size--medium: 20px;--wp--preset--font-size--large: 36px;--wp--preset--font-size--x-large: 42px;--wp--preset--spacing--20: 0.44rem;--wp--preset--spacing--30: 0.67rem;--wp--preset--spacing--40: 1rem;--wp--preset--spacing--50: 1.5rem;--wp--preset--spacing--60: 2.25rem;--wp--preset--spacing--70: 3.38rem;--wp--preset--spacing--80: 5.06rem;--wp--preset--shadow--natural: 6px 6px 9px rgba(0, 0, 0, 0.2);--wp--preset--shadow--deep: 12px 12px 50px rgba(0, 0, 0, 0.4);--wp--preset--shadow--sharp: 6px 6px 0px rgba(0, 0, 0, 0.2);--wp--preset--shadow--outlined: 6px 6px 0px -3px rgb(255, 255, 255), 6px 6px rgb(0, 0, 0);--wp--preset--shadow--crisp: 6px 6px 0px rgb(0, 0, 0);}:where(.is-layout-flex){gap: 0.5em;}:where(.is-layout-grid){gap: 0.5em;}body .is-layout-flex{display: flex;}.is-layout-flex{flex-wrap: wrap;align-items: center;}.is-layout-flex > :is(*, div){margin: 0;}body .is-layout-grid{display: grid;}.is-layout-grid > :is(*, div){margin: 0;}:where(.wp-block-columns.is-layout-flex){gap: 2em;}:where(.wp-block-columns.is-layout-grid){gap: 2em;}:where(.wp-block-post-template.is-layout-flex){gap: 1.25em;}:where(.wp-block-post-template.is-layout-grid){gap: 1.25em;}.has-black-color{color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-color{color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-color{color: var(--wp--preset--color--white) !important;}.has-pale-pink-color{color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-color{color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-color{color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-color{color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-color{color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-color{color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-color{color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-color{color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-color{color: var(--wp--preset--color--vivid-purple) !important;}.has-black-background-color{background-color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-background-color{background-color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-background-color{background-color: var(--wp--preset--color--white) !important;}.has-pale-pink-background-color{background-color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-background-color{background-color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-background-color{background-color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-background-color{background-color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-background-color{background-color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-background-color{background-color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-background-color{background-color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-background-color{background-color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-background-color{background-color: var(--wp--preset--color--vivid-purple) !important;}.has-black-border-color{border-color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-border-color{border-color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-border-color{border-color: var(--wp--preset--color--white) !important;}.has-pale-pink-border-color{border-color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-border-color{border-color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-border-color{border-color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-border-color{border-color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-border-color{border-color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-border-color{border-color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-border-color{border-color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-border-color{border-color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-border-color{border-color: var(--wp--preset--color--vivid-purple) !important;}.has-vivid-cyan-blue-to-vivid-purple-gradient-background{background: var(--wp--preset--gradient--vivid-cyan-blue-to-vivid-purple) !important;}.has-light-green-cyan-to-vivid-green-cyan-gradient-background{background: var(--wp--preset--gradient--light-green-cyan-to-vivid-green-cyan) !important;}.has-luminous-vivid-amber-to-luminous-vivid-orange-gradient-background{background: var(--wp--preset--gradient--luminous-vivid-amber-to-luminous-vivid-orange) !important;}.has-luminous-vivid-orange-to-vivid-red-gradient-background{background: var(--wp--preset--gradient--luminous-vivid-orange-to-vivid-red) !important;}.has-very-light-gray-to-cyan-bluish-gray-gradient-background{background: var(--wp--preset--gradient--very-light-gray-to-cyan-bluish-gray) !important;}.has-cool-to-warm-spectrum-gradient-background{background: var(--wp--preset--gradient--cool-to-warm-spectrum) !important;}.has-blush-light-purple-gradient-background{background: var(--wp--preset--gradient--blush-light-purple) !important;}.has-blush-bordeaux-gradient-background{background: var(--wp--preset--gradient--blush-bordeaux) !important;}.has-luminous-dusk-gradient-background{background: var(--wp--preset--gradient--luminous-dusk) !important;}.has-pale-ocean-gradient-background{background: var(--wp--preset--gradient--pale-ocean) !important;}.has-electric-grass-gradient-background{background: var(--wp--preset--gradient--electric-grass) !important;}.has-midnight-gradient-background{background: var(--wp--preset--gradient--midnight) !important;}.has-small-font-size{font-size: var(--wp--preset--font-size--small) !important;}.has-medium-font-size{font-size: var(--wp--preset--font-size--medium) !important;}.has-large-font-size{font-size: var(--wp--preset--font-size--large) !important;}.has-x-large-font-size{font-size: var(--wp--preset--font-size--x-large) !important;}/*# sourceURLglobal-styles-inline-css *//style>script typetext/javascript idleadin-script-loader-js-js-extra>/* !CDATA */var leadin_wordpress {userRole:visitor,pageType:home,leadinPluginVersion:11.3.16};//# sourceURLleadin-script-loader-js-js-extra/* > *//script>script srchttps://js.hs-scripts.com/19631868.js?integrationWordPress>/script>script typetext/javascript idapp.js-js-extra>/* !CDATA */var sumedia {url:https://www.ctac.nl,apiUrl:https://www.ctac.nl/api,templateUrl:https://www.ctacnv.com/app/themes/supress};//# sourceURLapp.js-js-extra/* > *//script>script src/app/themes/supress/dist/scripts/app.js?id022eab079dd3646112dd asyncasync data-wp-strategyasync>/script> !-- Google Tag Manager (noscript) -->noscript>iframe srchttps://www.googletagmanager.com/ns.html?idGTM-TVNFFB9 height0 width0 styledisplay:none;visibility:hidden>/iframe>/noscript>!-- End Google Tag Manager (noscript) -->style>#CookiebotWidget {z-index: 1 !important;}/style> div data-wpr-lazyrender1 classbody__overlay>/div> /body>/html>!-- This website is like a Rocket, isnt it? Performance optimized by WP Rocket. Learn more: https://wp-rocket.me - Debug: cached@1764772056 -->
View on OTX
|
View on ThreatMiner
Please enable JavaScript to view the
comments powered by Disqus.
Data with thanks to
AlienVault OTX
,
VirusTotal
,
Malwr
and
others
. [
Sitemap
]