PageSourceSearch

https://culvers.com/assets/promos/fromdairytodish/js/script.es5.js

js culvers.com collected 2026-09-24 09:26:28 UTC 112,503 bytes, 488 lines download raw bytes

1'use strict';
2/*! Fresh Frozen Custard - From Dairy to Dish */
3function init() {
4    var arrows=document.querySelectorAll('.arrow');
5    var i=arrows.length;
6    while(i--) {
7        arrows[i].onclick = function() {
8            this.blur();
9            var height=Math.max(document.documentElement.clientHeight,window.innerHeight || 0);
10            scrollTo(height,1000);
11        };
12        arrows[i].style.cursor = 'pointer';
13    }
14    lazyLoad({
15        pageUpdatedEventName:false, // how your app tells the rest of the app an update happened
16        elements:'img[data-src]', // maybe you just want images?
17        rootMargin:'0px', // IntersectionObserver option
18        threshold:0, // IntersectionObserver option
19        maxFrameCount:10
20    });
21    /*
22     * Setup video loading
23     */ 
24    // 60fps / 10 = 6 times a second
25    (function(){
26        var ticking=false;
27        var videos=Array.prototype.slice.call(document.getElementsByClassName('video__content'),0);
28        var quotes=Array.prototype.slice.call(document.getElementsByClassName('quote'),0);
29        var infographics=Array.prototype.slice.call(document.getElementsByClassName('section--infographic'),0);
30        var triggers=Array.prototype.slice.call(document.getElementsByClassName('infographic__trigger'),0);
31        var update=function update() {
32        /* LOAD INFOGRAPHICS */
33        for(var i=0;i < infographics.length;i++) {
34        if(isElementInViewport(infographics[i]) == true){
35            infographics[i].getElementsByClassName('infographic__background')[0].style.opacity = '1';
36            infographics[i].getElementsByClassName('infographic__background')[0].style.pointerEvents = 'auto';
37            _loadInfographics();
38        }else {
39            infographics[i].getElementsByClassName('infographic__background')[0].style.opacity = '0';
40            infographics[i].getElementsByClassName('infographic__background')[0].style.pointerEvents = 'none';
41        }}
42        /* LOAD VIDEOS */
43        for(var x=0;x < videos.length;x++) {
44            if(isNearScrolledIntoView(videos[x]) == true) {
45                (function(tag, index){
46                    if (tag.parentNode.querySelector('video')) {
47                        var button = tag.parentNode.parentNode.querySelector('button');
48                        if (button) {
49                            if (tag.parentNode.querySelector('video').paused === true){
50                                button.classList.add('video-controls--paused');
51                                button.querySelector('span').innerHTML = 'Play Decorative Motion';
52                            } else {
53                                button.classList.remove('video-controls--paused');
54                                button.querySelector('span').innerHTML = 'Pause Decorative Motion';
55                            }
56                        }
57                        return;
58                    }
59                    var videoAttributes='autoplay loop';
60                    var controls=document.createElement('button');
61                    controls.classList.add('video-controls');
62                    controls.id = 'video-controls-' + index;
63                    var buttonText=document.createElement('span');
64                    buttonText.innerHTML = 'Pause Decorative Motion';
65                    buttonText.classList.add('sr-only');
66                    buttonText.style.pointerEvents = 'none';
67                    controls.appendChild(buttonText);
68                    tag.innerHTML = '<video class="video__content" ' + videoAttributes + ' muted playsinline><source src="' + tag.getAttribute('data-webm-src') + '" type=\'video/webm;codecs="vp9"\' /><source src="' + tag.getAttribute('data-webmvp8-src') + '" type="video/webm" /><source src="' + tag.getAttribute('data-quicktime-src') + '" type="video/quicktime"><source src="' + tag.getAttribute('data-mp4-src') + '" type="video/mp4" /><img src="' + tag.getAttribute('data-img-src') + '" alt="New Culver’s Flavor of the Day" /></video>';
69
70                    tag.querySelector('video').addEventListener("play", function (event) {
71                        console.log(event);
72                        var tag = event.target.closest('.video-wrapper,.cinemagraph-wrapper');
73                        var button = tag.parentNode.parentNode.querySelector('button');
74                        button.classList.remove('video-controls--paused');
75                        button.querySelector('span').innerHTML = 'Pause Decorative Motion';
76                    });
77                    if(tag.parentNode && tag.parentNode.tagName === 'A' && !window.matchMedia('(prefers-reduced-motion)').matches) {
78                        tag.parentNode.parentNode.setAttribute('style',"position: relative");
79                        tag.parentNode.parentNode.appendChild(controls);
80                    } else {
81                        tag.setAttribute('style',"position: relative");
82                        tag.appendChild(controls);
83                    }
84                    if(window.matchMedia('(prefers-reduced-motion)').matches){
85                        videoAttributes = '';
86                        controls.classList.add('video-controls--paused');
87                        buttonText.innerHTML = 'Play Decorative Motion';
88                    } else {
89                        if (tag.querySelector('video').paused){
90                            controls.classList.add('video-controls--paused');
91                            buttonText.innerHTML = 'Play Decorative Motion';
92                        } else {
93                            controls.classList.remove('video-controls--paused');
94                            buttonText.innerHTML = 'Pause Decorative Motion';
95                        }
96                    }
97                    if (typeof window.videoControlsPlayPause !== 'function') {
98                        window.videoControlsPlayPause = function (event){
99                            var tag = event.target.closest('div').querySelector('.video');
100                            var video = event.target.parentNode.querySelector('video');
101                            var text = event.target.parentNode.querySelector('span');
102                            if (video.paused){
103                                event.target.classList.add('video-controls--paused');
104                                text.innerHTML = 'Play Decorative Motion';
105                                var videoPlayPromise = video.play();
106                                if (videoPlayPromise !== undefined) {
107                                    videoPlayPromise.catch(error => {
108                                        // Auto-play was prevented
109                                        // Show a UI element to let the user manually start playback
110                                        event.target.classList.add('video-controls--paused');
111                                        text.innerHTML = 'Play Decorative Motion';
112                                    }).then(() => {
113                                        // Auto-play started
114                                        event.target.classList.remove('video-controls--paused');
115                                        text.innerHTML = 'Pause Decorative Motion';
116                                    });
117                                }
118                            } else {
119                                event.target.classList.add('video-controls--paused');
120                                text.innerHTML = 'Play Decorative Motion';
121                                video.pause();
122                                if(tag && tag.tagName === 'A'){
123                                    video.removeAttribute('autoplay');
124                                    video.removeAttribute('loop');
125                                    event.target.remove();
126                                }
127                            }
128                        }
129                    }
130                    controls.removeEventListener('click', window.videoControlsPlayPause);
131                    controls.addEventListener('click', window.videoControlsPlayPause);
132                })(videos[x], x);
133                // videos.splice(x,1);
134                break;
135            }
136        }
137        var videoButtons = document.querySelectorAll('.video[role="button"]');
138        if (typeof window.videoButtonsOnClick !== 'function') {
139            window.videoButtonsOnClick = function() {
140                var video = this.parentNode.querySelector('video');
141                var button = this.parentNode.querySelector('button');
142                if (video && !video.paused) {
143                    video.removeAttribute('autoplay');
144                    video.removeAttribute('loop');
145                    video.pause();
146                    video.currentTime = 0;
147                }
148                if(button) {
149                    button.remove();
150                }
151            }
152        }
153        [].forEach.call(videoButtons, function(btn) {
154            btn.removeEventListener('click', window.videoButtonsOnClick);
155            btn.addEventListener('click', window.videoButtonsOnClick);
156        });
157        /* SHOW INFOGRAPHIC ITEMS */
158        for(var i=0;i < triggers.length;i++) {
159            var triggered = document.getElementsByClassName(triggers[i].getAttribute('data-trigger'))[0];
160            if (triggered) {
161                if(isScrolledIntoView(triggers[i]) == true) {
162                    document.getElementsByClassName(triggers[i].getAttribute('data-trigger'))[0].classList.add('infographic__item--animate');
163                } else {
164                    document.getElementsByClassName(triggers[i].getAttribute('data-trigger'))[0].classList.remove('infographic__item--animate');
165                }
166            }
167        }
168        /* SHOW QUOTE ITEMS */
169        for(var i=0;i < quotes.length;i++) {
170            if(isScrolledIntoView(quotes[i]) == true){
171                quotes[i].classList.add('quote--animate');
172            } else {
173                quotes[i].classList.remove('quote--animate');
174            }
175        }
176        ticking = false;
177    };
178    var requestTick=function requestTick(){
179        if(!ticking){window.requestAnimationFrame(update);
180        ticking = true;
181    }};
182    var onScrollVideo=function onScrollVideo(){requestTick();
183    };
184    window.addEventListener('scroll',onScrollVideo);
185    var _loadInfographics=function loadInfographics(){var images=Array.prototype.slice.call(document.getElementsByClassName('infographic__img'),0);
186    for(var i=0;i < images.length;i++) {images[i].setAttribute('src',images[i].getAttribute('data-infographic-src'));}_loadInfographics = function(){};};
187    function isScrolledIntoView(el){var elemTop=el.getBoundingClientRect().top;var elemBottom=el.getBoundingClientRect().bottom;var isVisible=elemTop >= 0 && elemBottom <= window.innerHeight / 1.05;return isVisible;}
188    function isNearScrolledIntoView(el){var elemTop=el.getBoundingClientRect().top;var elemBottom=el.getBoundingClientRect().bottom;var isVisible=elemTop >= 0 && elemBottom * .6 <= window.innerHeight;return isVisible;}
189    function isElementInViewport(element){var bounds=element.getBoundingClientRect();return bounds.top < window.innerHeight && bounds.bottom > 0;}
190    /*function isInViewport(element){if(element.offsetTop < window.innerHeight && element.offsetTop > -element.offsetHeight && element.offsetLeft > -element.offsetWidth && element.offsetLeft < window.innerWidth){return true;}else {return false;}}*/
191    update();
192
193})(); 
194
195if (typeof window.heroVideoOnload !== 'function') {
196    window.heroVideoOnload = function () {
197        var autoplayControls=document.getElementById('video-controls-hero-video');
198        var heroVideo=document.getElementById('hero-video');
199        if(autoplayControls){
200            if (typeof window.autoplayControlsOnClick !== 'function') {
201                window.autoplayControlsOnClick = function (event) {
202                    if(heroVideo.paused){
203                        event.target.classList.remove('video-controls--paused');
204                        var videoPlayPromise = heroVideo.play();
205                        if (videoPlayPromise !== undefined) {
206                            videoPlayPromise.catch(error => {
207                                // Auto-play was prevented
208                                // Show a UI element to let the user manually start playback
209                                autoplayControls.classList.add('video-controls--paused');
210                                autoplayControls.querySelector('span').innerHTML = 'Play Decorative Motion';
211                            }).then(() => {
212                                // Auto-play started
213                                autoplayControls.classList.remove('video-controls--paused');
214                                autoplayControls.querySelector('span').innerHTML = 'Pause Decorative Motion';
215                            });
216                        }
217                    } else {
218                        event.target.classList.add('video-controls--paused');
219                        heroVideo.pause();
220                    }
221                }
222            }
223            autoplayControls.removeEventListener('click', window.autoplayControlsOnClick);
224            autoplayControls.addEventListener('click', window.autoplayControlsOnClick);
225        }
226        if (heroVideo) {
227            var videoPlayPromise = heroVideo.play();
228            if (videoPlayPromise !== undefined) {
229                videoPlayPromise.catch(error => {
230                    autoplayControls.classList.add('video-controls--paused');
231                    heroVideo.pause();
232                }).then(() => {
233                    if (!document.getElementById('hero-video').paused) {
234                        autoplayControls.classList.remove('video-controls--paused');
235                    }
236                });
237            }
238        }
239    }
240}
241if (document.readyState !== 'loading') {
242    window.heroVideoOnload();
243} else {
244    document.addEventListener('DOMContentLoaded', window.heroVideoOnload);
245}
246
247
248    /* Setup Analytics */
249    document.getElementById('banner-logo').addEventListener('click',function(){trackEvent('Links','Click','Header Logo');});
250    document.getElementById('link-find-your-next-treat').addEventListener('click',function(){trackEvent('Links','Click','Find Your Next Treat');});
251    document.getElementById('footer-logo').addEventListener('click',function(){trackEvent('Links','Click','Footer Logo');});
252    document.getElementById('share-button-facebook').onclick = ShareViaFacebook;
253    document.getElementById('share-button-twitter').onclick = ShareViaTwitter;
254    document.getElementById('share-button-email').onclick = ShareViaEmail;
255}
256    function scrollTo(to,duration){var scrollTop=document.body.scrollTop || document.documentElement.scrollTop;var start=scrollTop,change=to,currentTime=0,increment=20;var animateTheScroll=function animateTheScroll(){currentTime += increment;var val=Math.easeInOutQuad(currentTime,start,change,duration);document.body.scrollTop = document.documentElement.scrollTop = val;if(currentTime < duration){setTimeout(animateTheScroll,increment);}};animateTheScroll();} //t = current time
257    //b = start value
258    //c = change in value
259    //d = duration
260    Math.easeInOutQuad = function(t,b,c,d){t /= d / 2;if(t < 1)return c / 2 * t * t + b;t--;return -c / 2 * (t * (t - 2) - 1) + b;};function ShareViaFacebook(event){trackEvent('Share','Facebook','Footer');var width=640,height=600,leftPosition,topPosition;var u=location.href;if(location.href && location.href.indexOf('?') > 0){u = window.location.href.split('?')[0];}leftPosition = window.screen.width / 2 - (width / 2 + 10);topPosition = window.screen.height / 2 - (height / 2 + 50);
260var windowFeatures="status=no,height=" + height + ",width=" + width + ",resizable=yes,left=" + leftPosition + ",top=" + topPosition + ",screenX=" + leftPosition + ",screenY=" + topPosition + ",toolbar=no,menubar=no,scrollbars=no,location=no,directories=no";window.open('http://www.facebook.com/sharer.php?u=' + encodeURIComponent(u + '?utm_source=facebook&utm_campaign=share&utm_medium=share'),'sharer',windowFeatures);return false;}function ShareViaTwitter(event){trackEvent('Share','Twitter','Footer');var width=640,height=600,leftPosition,topPosition;var u=location.href;if(location.href && location.href.indexOf('?') > 0){u = window.location.href.split('?')[0];}var windowFeatures="status=no,height=" + height + ",width=" + width + ",resizable=yes,left=" + leftPosition + ",top=" + topPosition + ",screenX=" + leftPosition + ",screenY=" + topPosition + ",toolbar=no,menubar=no,scrollbars=no,location=no,directories=no";window.open('https://twitter.com/intent/tweet?text=' + encodeURIComponent('From Dairy to Dish: The Craft Behind Our Frozen Custard') + '&via=culvers&url=' + encodeURIComponent(u) + '&original_referer=' + encodeURIComponent(location.href),'twet',windowFeatures);}function ShareViaEmail(event){trackEvent('Share','Email','Footer');var desc="";try{desc = document.querySelector('meta[name="description"]').getAttribute('content');}catch(err) {}window.open('mailto:?subject=' + encodeURIComponent('From Dairy to Dish: The Craft Behind Our Frozen Custard') + '&body=' + encodeURIComponent('Frome Dairy to Dish: The Craft Behind Our Frozen Custard' + "\n\n" + desc) + "\n\n" + encodeURIComponent(location.href));}function openTubeContent(label,id){ //$('#cfsi-modal-content').html('<div class="media media-scroll youtube scaled"><div id="youtube-player-for-api"></div></div>');
261    player = {started:false,timeIntervals:[75,50,25],playVideo:function playVideo(container,videoId){if(typeof YT == 'undefined' || typeof YT.Player == 'undefined'){window.onYouTubeIframeAPIReady = function(){player.loadPlayer(container,videoId);}; //$.getScript('//www.youtube.com/iframe_api');
262    var scriptTag=document.createElement('script'), // create a script tag
263    firstScriptTag=document.getElementsByTagName('script')[0]; // find the first script tag in the document
264    scriptTag.src = '//www.youtube.com/iframe_api'; // set the source of the script to your script
265    firstScriptTag.parentNode.insertBefore(scriptTag,firstScriptTag); // append the script to the DOM
266    }else {player.loadPlayer(container,videoId);}},loadPlayer:function loadPlayer(container,videoId){culversYouTubePlayer = new YT.Player(container,{videoId:videoId,width:"100%",height:"100%",playerVars:{autoplay:1,rel:0,enablejsapi:1 // Changed for GTM
267    },events:{'onStateChange':player.onPlayerStateChange,'onError':player.onPlayerError}});},onPlayerError:function onPlayerError(event){switch(event.data){case 2:trackEvent('Video','Error','invalid id: ' + id);break;case 100:console.log('Video Error not found: ' + id);break;case 101 || 150:console.log('Video Error not allowed: ' + id);break;};},onPlayerStateChange:function onPlayerStateChange(event){switch(event.data){case YT.PlayerState.PLAYING:if(!player.started){trackEvent('Video','Play Start',label);player.started = true;culversYouTubeInterval = setInterval(player.percentageTracking,200);}break;case YT.PlayerState.ENDED:trackEvent('Video','Play Complete',label);break;};},getTime:function getTime(){return Math.round(culversYouTubePlayer.getCurrentTime());},percentageTracking:function percentageTracking(){var percentage=Math.round(player.getTime() / culversYouTubePlayer.getDuration() * 100);var i=player.timeIntervals.length;while(i--) {if(percentage >= player.timeIntervals[i]){trackEvent('Video','Play Percentage',player.timeIntervals[i] + "%" + " " + label);player.timeIntervals.splice(i,1);}else {return;}}}};player.playVideo(document.getElementById('youtube-player-for-api'),id);}
268    function trackEvent(category,action,label){/*gtag('event',action,{'event_label':label,'event_category':category,'non_interaction':false});*/}
269    function trackNonInteractionEvent(category,action,label){/*gtag('event',action,{'event_label':label,'event_category':category,'non_interaction':true});*/}
270    // Cross-browser compliant event listener
271    function addEvent(el,evt,fn){if(el.addEventListener){el.addEventListener(evt,fn);}else if(el.attachEvent){el.attachEvent('on' + evt,function(evt){ // Call the event to ensure uniform 'this' handling, pass it event
272    fn.call(el,evt);});}else if(typeof el['on' + evt] === 'undefined' || el['on' + evt] === null){el['on' + evt] = function(evt){ // Call the event to ensure uniform 'this' handling, pass it event
273    fn.call(el,evt);};}} /*! lazyload - v2.1.1 - 2018-04-01
274     * https://github.com/13twelve/lazyload
275     * Copyright (c) 2018
276     * License: MIT
277     * Author: Mike Byrne @13twelve https://github.com/13twelve
278     */(function(root,factory){if(typeof define === 'function' && define.amd){ // AMD. Register as an anonymous module.
279    define([],factory);}else if(typeof exports === 'object'){ // Node. Does not work with strict CommonJS, but
280    // only CommonJS-like environments that support module.exports,
281    // like Node.
282    module.exports = factory();}else { // Browser globals (root is window)
283    root.lazyLoad = factory();}})(window,function(){var options={pageUpdatedEventName:'page:updated', // how your app tells the rest of the app an update happened
284    elements:'img[data-src], img[data-srcset], source[data-srcset], iframe[data-src], video[data-src], [data-lazyload]', // maybe you just want images?
285    rootMargin:'0px', // IntersectionObserver option
286    threshold:0, // IntersectionObserver option
287    maxFrameCount:10}; // set up
288    // 60fps / 10 = 6 times a second
289    var frameLoop;var frameCount;var els=[];var elsLength;var observer;var checkType; /**
290       * Converts HTML collections to an array
291       * @private
292       * @param {Array} array to convert
293       * a loop will work in more browsers than the slice method
294       */function _htmlCollectionToArray(collection){var a=[];var i=0;for(a = [],i = collection.length;i;) {a[--i] = collection[i];}return a;} /**
295       * Checks if an element is in the viewport
296       * @private
297       * @param {Node} element to check.
298       * @returns {Boolean} true/false.
299       */function _elInViewport(el){el = el.tagName === 'SOURCE'?el.parentNode:el;var rect=el.getBoundingClientRect();return rect.bottom > 0 && rect.right > 0 && rect.left < (window.innerWidth || document.documentElement.clientWidth) && rect.top < (window.innerHeight || document.documentElement.clientHeight);} /**
300       * Removes data- attributes
301       * @private
302       * @param {Node} element to update
303       */function _removeDataAttrs(el){el.removeAttribute('data-src');el.removeAttribute('data-srcset');el.removeAttribute('data-lazyload');}
303 /**
304       * On loaded, removes event listener, removes data- attributes
305       * @private
306       */function _loaded(){this.removeEventListener('load',_loaded);_removeDataAttrs(this);} /**
307       * Update an element
308       * @private
309       * @param {Node} element to update
310       */function _updateEl(el){var srcset=el.getAttribute('data-srcset');var src=el.getAttribute('data-src');var dlazyload=el.getAttribute('data-lazyload') !== null; //
311    if(srcset){ // if source set, update and try picturefill
312    el.setAttribute('srcset',srcset);if(window.picturefill){window.picturefill({elements:[el]});}}if(src){ // if source set, update
313    el.src = src;}if(dlazyload){el.setAttribute('data-lazyloaded','');el.removeEventListener('load',_loaded);_removeDataAttrs(el);}} /**
314       * The callback from the IntersectionObserver
315       * @private
316       * @entries {Nodes} elements being observed by the IntersectionObserver
317       */function _intersection(entries){ // Disconnect if we've already loaded all of the images
318    if(elsLength === 0){observer.disconnect();} // Loop through the entries
319    for(var i=0;i < entries.length;i++) {var entry=entries[i]; // Are we in viewport?
320    if(entry.intersectionRatio > 0){elsLength--; // Stop watching this and load the image
321    observer.unobserve(entry.target);entry.target.addEventListener('load',_loaded,false);_updateEl(entry.target);}}} /**
322       * Loops images, checks if in viewport, updates src/src-set
323       * @private
324       */function _setSrcs(){var i; // browser capability check
325    if(checkType === 'really-old'){elsLength = els.length;for(i = 0;i < elsLength;i++) {if(els[i]){_updateEl(els[i]);_removeDataAttrs(els[i]);}}els = [];}else if(checkType === 'old'){ // debounce checking
326    if(frameCount === options.maxFrameCount){ // update cache of this for the loop
327    elsLength = els.length;for(i = 0;i < elsLength;i++) { // check if this array item exists, hasn't been loaded already and is in the viewport
328    if(els[i] && els[i].lazyloaded === undefined && _elInViewport(els[i])){ // cache this array item
329    var thisEl=els[i]; // set this array item to be undefined to be cleaned up later
330    els[i] = undefined; // give this element a property to stop us running twice on one thing
331    thisEl.lazyloaded = true; // add an event listener to remove data- attributes on load
332    thisEl.addEventListener('load',_loaded,false); // update
333    _updateEl(thisEl);}} // clean up array
334    for(i = 0;i < elsLength;i++) {if(els[i] === undefined){els.splice(i,1);}} // reset var to decide if to continue running
335    elsLength = els.length; // will shortly be set to 0 to start counting
336    frameCount = -1;} // run again? kill if not
337    if(elsLength > 0){frameCount++;frameLoop = window.requestAnimationFrame(_setSrcs);}}else if(checkType === 'new'){observer = new IntersectionObserver(_intersection,{rootMargin:options.rootMargin,threshold:options.threshold});elsLength = els.length;for(i = 0;i < elsLength;i++) {if(els[i] && els[i].lazyloaded === undefined){observer.observe(els[i]);}}}} /**
338       * Gets the show on the road
339       * @private
340       */function _init(){ // kill any old loops if there are any
341    if(checkType === 'old'){try{cancelAnimationFrame(frameLoop);}catch(err) {}}else if(checkType === 'new'){try{observer.disconnect();}catch(err) {}} // grab elements to lazy load
342    els = _htmlCollectionToArray(document.querySelectorAll(options.elements));elsLength = els.length;frameCount = options.maxFrameCount; // go go go
343    _setSrcs();} /**
344       * GO GO GO
345       * @public
346       * @param {object} options (see readme)
347       */
348      var lazyLoad=function lazyLoad(opts){for(var item in opts) {if(opts.hasOwnProperty(item)){options[item] = opts[item];}}if(!('addEventListener' in window) || !window.requestAnimationFrame || typeof document.body.getBoundingClientRect === undefined){checkType = 'really-old';}else if('IntersectionObserver' in window){checkType = 'new';}else {checkType = 'old';}_init();if(options.pageUpdatedEventName){document.addEventListener(options.pageUpdatedEventName,_init,true);}};return lazyLoad;}); 
349
350// scrollBehavior polyfill
351    (function(w,d,undefined){'use strict'; 
352    /*
353         * aliases
354         * w: window global object
355         * d: document
356         * undefined: undefined
357         */ // polyfill
358    function polyfill(){ // return when scrollBehavior interface is supported
359    if('scrollBehavior' in d.documentElement.style){return;} /*
360             * globals
361             */var Element=w.HTMLElement || w.Element;var SCROLL_TIME=468; /*
362             * object gathering original scroll methods
363             */var original={scroll:w.scroll || w.scrollTo,scrollBy:w.scrollBy,elScroll:Element.prototype.scroll || scrollElement,scrollIntoView:Element.prototype.scrollIntoView}; /*
364             * define timing method
365             */var now=w.performance && w.performance.now?w.performance.now.bind(w.performance):Date.now; /**
366             * changes scroll position inside an element
367             * @method scrollElement
368             * @param {Number} x
369             * @param {Number} y
370             */function scrollElement(x,y){this.scrollLeft = x;this.scrollTop = y;} /**
371             * returns result of applying ease math function to a number
372             * @method ease
373             * @param {Number} k
374             * @returns {Number}
375             */function ease(k){return 0.5 * (1 - Math.cos(Math.PI * k));} /**
376             * indicates if a smooth behavior should be applied
377             * @method shouldBailOut
378             * @param {Number|Object} x
379             * @returns {Boolean}
380             */function shouldBailOut(x){if(typeof x !== 'object' || x === null || x.behavior === undefined || x.behavior === 'auto' || x.behavior === 'instant'){ // first arg not an object/null
381    // or behavior is auto, instant or undefined
382    return true;}
382if(typeof x === 'object' && x.behavior === 'smooth'){ // first argument is an object and behavior is smooth
383    return false;} // throw error when behavior is not supported
384    throw new TypeError('behavior not valid');} /**
385             * finds scrollable parent of an element
386             * @method findScrollableParent
387             * @param {Node} el
388             * @returns {Node} el
389             */function findScrollableParent(el){var isBody;var hasScrollableSpace;var hasVisibleOverflow;do {el = el.parentNode; // set condition variables
390    isBody = el === d.body;hasScrollableSpace = el.clientHeight < el.scrollHeight || el.clientWidth < el.scrollWidth;hasVisibleOverflow = w.getComputedStyle(el,null).overflow === 'visible';}while(!isBody && !(hasScrollableSpace && !hasVisibleOverflow));isBody = hasScrollableSpace = hasVisibleOverflow = null;return el;} /**
391             * self invoked function that, given a context, steps through scrolling
392             * @method step
393             * @param {Object} context
394             */function step(context){var time=now();var value;var currentX;var currentY;var elapsed=(time - context.startTime) / SCROLL_TIME; // avoid elapsed times higher than one
395    elapsed = elapsed > 1?1:elapsed; // apply easing to elapsed time
396    value = ease(elapsed);currentX = context.startX + (context.x - context.startX) * value;currentY = context.startY + (context.y - context.startY) * value;context.method.call(context.scrollable,currentX,currentY); // scroll more if we have not reached our destination
397    if(currentX !== context.x || currentY !== context.y){w.requestAnimationFrame(step.bind(w,context));}} /**
398             * scrolls window with a smooth behavior
399             * @method smoothScroll
400             * @param {Object|Node} el
401             * @param {Number} x
402             * @param {Number} y
403             */function smoothScroll(el,x,y){var scrollable;var startX;var startY;var method;var startTime=now(); // define scroll context
404    if(el === d.body){scrollable = w;startX = w.scrollX || w.pageXOffset;startY = w.scrollY || w.pageYOffset;method = original.scroll;}else {scrollable = el;startX = el.scrollLeft;startY = el.scrollTop;method = scrollElement;} // scroll looping over a frame
405    step({scrollable:scrollable,method:method,startTime:startTime,startX:startX,startY:startY,x:x,y:y});} /*
406             * ORIGINAL METHODS OVERRIDES
407             */ // w.scroll and w.scrollTo
408    w.scroll = w.scrollTo = function(){ // avoid smooth behavior if not required
409    if(shouldBailOut(arguments[0])){original.scroll.call(w,arguments[0].left || arguments[0],arguments[0].top || arguments[1]);return;} // LET THE SMOOTHNESS BEGIN!
410    smoothScroll.call(w,d.body,~ ~arguments[0].left,~ ~arguments[0].top);}; // w.scrollBy
411    w.scrollBy = function(){ // avoid smooth behavior if not required
412    if(shouldBailOut(arguments[0])){original.scrollBy.call(w,arguments[0].left || arguments[0],arguments[0].top || arguments[1]);return;} // LET THE SMOOTHNESS BEGIN!
413    smoothScroll.call(w,d.body,~ ~arguments[0].left + (w.scrollX || w.pageXOffset),~ ~arguments[0].top + (w.scrollY || w.pageYOffset));}; // Element.prototype.scroll and Element.prototype.scrollTo
414    Element.prototype.scroll = Element.prototype.scrollTo = function(){ // avoid smooth behavior if not required
415    if(shouldBailOut(arguments[0])){original.elScroll.call(this,arguments[0].left || arguments[0],arguments[0].top || arguments[1]);return;} // LET THE SMOOTHNESS BEGIN!
416    smoothScroll.call(this,this,arguments[0].left,arguments[0].top);}; // Element.prototype.scrollBy
417    Element.prototype.scrollBy = function(){var arg0=arguments[0];if(typeof arg0 === 'object'){this.scroll({left:arg0.left + this.scrollLeft,top:arg0.top + this.scrollTop,behavior:arg0.behavior});}else {this.scroll(this.scrollLeft + arg0,this.scrollTop + arguments[1]);}}; // Element.prototype.scrollIntoView
418    Element.prototype.scrollIntoView = function(){ // avoid smooth behavior if not required
419    if(shouldBailOut(arguments[0])){original.scrollIntoView.call(this,arguments[0] || true);return;} // LET THE SMOOTHNESS BEGIN!
420    var scrollableParent=findScrollableParent(this);var parentRects=scrollableParent.getBoundingClientRect();var clientRects=this.getBoundingClientRect();if(scrollableParent !== d.body){ // reveal element inside parent
421    smoothScroll.call(this,scrollableParent,scrollableParent.scrollLeft + clientRects.left - parentRects.left,scrollableParent.scrollTop + clientRects.top - parentRects.top); // reveal parent in viewport
422    w.scrollBy({left:parentRects.left,top:parentRects.top,behavior:'smooth'});}else { // reveal element in viewport
423    w.scrollBy({left:clientRects.left,top:clientRects.top,behavior:'smooth'});}};}if(typeof exports === 'object'){ // commonjs
424    module.exports = {polyfill:polyfill};}else { // global
425    polyfill();}})(window,document);;(function(document,window,config){'use strict'; // Global cache we'll use to ensure no double-tracking occurs
426    var MarksAlreadyTracked={}; // Backwards compatible with old every setting, which was single value
427    if(config.distances.percentages && config.distances.percentages.every){if(!isArray_(config.distances.percentages.every)){config.distances.percentages.every = [config.distances.percentages.every];}} // Backwards compatible with old every setting, which was single value
428    if(config.distances.pixels && config.distances.pixels.every){if(!isArray_(config.distances.pixels.every)){config.distances.pixels.every = [config.distances.pixels.every];}} // Get a hold of any relevant elements, if specified in config
429    var elementDistances=(function(selectors){ // If no selectors specified, short circuit here
430    if(!selectors)return; // Create a cache to store positions of elements temporarily
431    var cache={};var counter=0; // Fetch latest positions
432    _update(); // Return a function that can be called to get a map of element positions
433    return function(){ // Clone here to prevent inheritance from getMarks step
434    var shallowClone={};var key;counter++; // If temp cache counter is greater than 10, re-poll elements
435    if(counter > 10){_update();counter = 0;}for(key in cache) {shallowClone[key] = cache[key];}return shallowClone;};function _update(){var selector,markName,els,el,y,i; // Clear current cache
436    cache = {};if(selectors.each){for(i = 0;i < selectors.each.length;i++) {selector = selectors.each[i];if(!MarksAlreadyTracked[selector]){el = document.querySelector(selector);if(el)cache[selector] = getNodeDistanceFromTop(el);}}}if(selectors.every){for(i = 0;i < selectors.every.length;i++) {selector = selectors.every[i];els = document.querySelectorAll(selector); // If the last item in the selected group has been tracked, we skip it
437    if(els.length && !MarksAlreadyTracked[selector + ':' + (els.length - 1)]){for(y = 0;y < els.length;y++) {markName = selector + ':' + y; // We also check at the individual element level
438    if(!MarksAlreadyTracked[markName]){el = els[y];cache[markName] = getNodeDistanceFromTop(el);}}}}}}})(config.distances.elements);console.log(document.readyState); // If our document is ready to go, fire straight away
439    if(document.readyState !== 'loading'){initScrollDepth();}else { // On IE8 this fires on window.load, all other browsers will fire when DOM ready
440    document.addEventListener?addEvent(document,'DOMContentLoaded',initScrollDepth):addEvent(window,'load',initScrollDepth);}function initScrollDepth(){ // Browser dependencies, script fails silently
441    if(!document.querySelector || !document.body.getBoundingClientRect){return false;} // Set our dataLayer name for later
442    config.dataLayerName = config.dataLayerName || 'dataLayer'; // Initialize our distances, for later
443    config.distances = config.distances || {};trackNonInteractionEvent(config.category,'Percentage','0%');checkDepth();addEvent(window,'scroll',throttle(checkDepth,500));}function getMarks(_docHeight,_offset){var marks=elementDistances() || {};var percents=[];var pixels=[];var everyPercent,everyPixel,i;if(config.distances.percentages){if(config.distances.percentages.each){percents = percents.concat(config.distances.percentages.each);}if(config.distances.percentages.every){for(i = 0;i < config.distances.percentages.every.length;i++) {everyPercent = every_(config.distances.percentages.every[i],100);percents = pixels.concat(everyPercent);}}}
443if(config.distances.pixels){if(config.distances.pixels.each){pixels = pixels.concat(config.distances.pixels.each);}if(config.distances.pixels.every){for(i = 0;i < config.distances.pixels.every.length;i++) {everyPixel = every_(config.distances.pixels.every[i],_docHeight);pixels = pixels.concat(everyPixel);}}}marks = addMarks_(marks,percents,'%',_docHeight,_offset);marks = addMarks_(marks,pixels,'px',_docHeight,_offset);return marks;}function addMarks_(marks,points,symbol,_docHeight,_offset){var i;for(i = 0;i < points.length;i++) {var _point=parseInt(points[i],10);var height=symbol !== '%'?_point + _offset:_docHeight * (_point / 100) + _offset;var mark=_point + symbol;if(height <= _docHeight + _offset){marks[mark] = height;}}return marks;}function every_(n,total){var _n=parseInt(n,10);var _num=total / _n;var arr=[];var i;for(i = 1;i < _num + 1;i++) {arr.push(i * _n);}return arr;}function checkDepth(){var _bottom=parseScrollBorder(config.bottom);var _top=parseScrollBorder(config.top);var height=docHeight(_bottom,_top);var marks=getMarks(height,_top || 0);var _curr=currentPosition();var target,key;for(key in marks) {target = marks[key]; // If we've scrolled past the mark, we haven't tracked it yet, and it's in range, track the mark
444    if(_curr > target && !MarksAlreadyTracked[key] && target < (_bottom || Infinity) && target > (_top || 0)){MarksAlreadyTracked[key] = true;fireAnalyticsEvent(key);}}}function fireAnalyticsEvent(distance){trackEvent(config.category,'Percentage',distance); /*
445            if (typeof window.ga === 'function') {
446                window.ga('send', 'event', config.category, 'Percentage', distance, { 'nonInteraction': 1 });
447            } else {
448                try { console.log(config.category + " " + 'Percentage' + ' ' + distance); } catch (err) { }
449            }
450            */}function parseScrollBorder(border){if(typeof border === 'number' || parseInt(border,10)){return parseInt(border,10);}try{ // If we have an element or a query selector, poll getBoundingClientRect
451    var el=border.nodeType === 1?border:document.querySelector(border);return getNodeDistanceFromTop(el);}catch(e) {return void 0;}} // Adapted from https://developer.mozilla.org/en-US/docs/Web/API/Window/scrollY
452    function currentPosition(){var supportPageOffset=window.pageXOffset !== undefined;var isCSS1Compat=(document.compatMode || "") === "CSS1Compat";var currScrollTop=supportPageOffset?window.pageYOffset:isCSS1Compat?document.documentElement.scrollTop:document.body.scrollTop;return parseInt(currScrollTop,10) + parseInt(viewportHeight(),10);}function viewportHeight(){var elem=document.compatMode === "CSS1Compat"?document.documentElement:document.body;return elem.clientHeight;}function docHeight(_bottom,_top){var body=document.body;var html=document.documentElement;var height=Math.max(body.scrollHeight,body.offsetHeight,html.clientHeight,html.scrollHeight,html.offsetHeight);if(_top){height = height - _top;}if(_bottom){height = _bottom - (_top || 0);}return height - 5;} /*
453        * Throttle function borrowed from:
454        * Underscore.js 1.5.2
455        * http://underscorejs.org
456        * (c) 2009-2013 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
457        * Underscore may be freely distributed under the MIT license.
458        */function throttle(func,wait){var context,args,result;var timeout=null;var previous=0;var later=function later(){previous = new Date();timeout = null;result = func.apply(context,args);};return function(){var now=new Date();if(!previous)previous = now;var remaining=wait - (now - previous);context = this;args = arguments;if(remaining <= 0){clearTimeout(timeout);timeout = null;previous = now;result = func.apply(context,args);}else if(!timeout){timeout = setTimeout(later,remaining);}return result;};} // Cross-browser compliant event listener
459    function addEvent(el,evt,fn){if(el.addEventListener){el.addEventListener(evt,fn);}else if(el.attachEvent){el.attachEvent('on' + evt,function(evt){ // Call the event to ensure uniform 'this' handling, pass it event
460    fn.call(el,evt);});}else if(typeof el['on' + evt] === 'undefined' || el['on' + evt] === null){el['on' + evt] = function(evt){ // Call the event to ensure uniform 'this' handling, pass it event
461    fn.call(el,evt);};}} // Helper for fetching top of element
462    function getNodeDistanceFromTop(node){var nodeTop=node.getBoundingClientRect().top; // https://developer.mozilla.org/en-US/docs/Web/API/Window/scrollX
463    var docTop=window.pageYOffset !== undefined?window.pageYOffset:(document.documentElement || document.body.parentNode || document.body).scrollTop;return nodeTop + docTop;} // Helper to check if something is an Array
464    function isArray_(thing){return thing instanceof Array;}})(document,window,{ // Use 2 to force Classic Analytics hits and 1 for Universal hits
465    'forceSyntax':false, // False if you just use the default dataLayer variable, otherwise enter it here
466    'dataLayerName':false,'distances':{ // Configure percentages of page you'd like to see if users scroll past
467    'percentages':{'each':[10,90],'every':[10]}, // Configure for pixel measurements of page you'd like to see if users scroll past
468    'pixels':{'each':[],'every':[]}, // Configure elements you'd like to see users scroll past (using CSS Selectors)
469    'elements':{'each':[],'every':[]}}, // Accepts a number, DOM element, or query selector to determine the top of the scrolling area
470    'top':null, // Accepts a number, DOM element, or query selector to determine the bottom of the scrolling area
471    'bottom':null, // Text for Event Category
472    'category':'Scroll Tracking', // Text for Event Label
473    'label':document.location.pathname});init();if(!Element.prototype.playIconAnimation){Element.prototype.playIconAnimation = {now:function now(){}};}(function(){var lastScrollY=0;var ticking=false;var icons=Array.prototype.slice.call(document.getElementsByClassName('icon__svg--animated'),0);var update=function update(){for(var i=0;i < icons.length;i++) {if(isScrolledIntoView(icons[i]) == true){ //console.log(icons[i]);
474    //console.log(icons[i].id);
475    icons[i].playIconAnimation.now.call(icons[i],icons[i].id);icons.splice(i,1); //console.log(icons[i] + ' in view');
476    //console.log(icons.length + ' left');
477    break;}}ticking = false;};var requestTick=function requestTick(){if(!ticking){window.requestAnimationFrame(update);ticking = true;}};var onScroll=function onScroll(){lastScrollY = window.scrollY;requestTick();};window.onscroll = onScroll; //console.log('init 15 sec interval');
478    setInterval(function(){ //console.log('resent 15 sec interval')
479    icons = Array.prototype.slice.call(document.getElementsByClassName('icon__svg--animated'),0);},7500);function isScrolledIntoView(el){var elemTop=el.getBoundingClientRect().top;var elemBottom=el.getBoundingClientRect().bottom;var isVisible=elemTop >= 0 && elemBottom <= window.innerHeight / 1.05;return isVisible;}
480    
481    window.icongraphs = function() {
482        if (!document.querySelector('.icon') && !document.querySelector('.promo')) { return; }
483        var can_svg_anime_milk=true;
484        var can_svg_anime_cone=true;
485        var can_svg_anime_scoop=true;
486        var can_svg_anime_svg_spoon=true;
487        document.body.playIconAnimation.now = function(id){ //console.log(id);
488    switch(id){case "_svg_milk":if(!can_svg_anime_milk){return;}can_svg_anime_milk = false;document.getElementById(id).style.opacity = 1;window.ks = (function(){function z(a){return "undefined" !== typeof a;}function v(a,b){return a && 0 == a.indexOf(b);}function N(a){if(!isFinite(a))throw "non-finite value";}function O(a){if(14 >= a)return 16;(a = X[a]) || (a = 0);return a;}function D(a){return 0 <= a?Math.pow(a,1 / 3):-Math.pow(-a,1 / 3);}function Y(a,b,c,d){if(0 == a)return 0 == b?b = -d / c:(a = Math.sqrt(c * c - 4 * b * d),d = (-c + a) / (2 * b),0 <= d && 1 >= d?b = d:(d = (-c - a) / (2 * b),b = 0 <= d && 1 >= d?d:0)),b;var e=c / a - b * b / (a * a) / 3;c = b * b * b / (a * a * a) / 13.5 - b * c / (a * a) / 3 + d / a;var k=c * c / 4 + e * e * e / 27;b = -b / (3 * a);if(0 >= k){if(0 == e && 0 == c)return -D(d / a);a = Math.sqrt(c * c / 4 - k);d = Math.acos(-c / 2 / a);c = Math.cos(d / 3);d = Math.sqrt(3) * Math.sin(d / 3);a = D(a);e = 2 * a * c + b;if(0 <= e && 1 >= e)return e;e = -a * (c + d) + b;if(0 <= e && 1 >= e)return e;e = a * (d - c) + b;if(0 <= e && 1 >= e)return e;}else {a = D(-c / 2 + Math.sqrt(k));c = D(-c / 2 - Math.sqrt(k));d = a + c + b;if(0 <= d && 1 >= d)return d;d = -(a + c) / 2 + b;if(0 <= d && 1 >= d)return d;}return 0;}function Z(a,b){if(48 == a && "number" === typeof b)return "#" + ("000000" + b.toString(16)).substr(-6);if(64 == a)return b = b.map(function(a){return a + "px";}),b.join(",");if(96 == a){a = "";for(var c=b.length,d=0;d < c;d += 2) a += b[d],a += b[d + 1].join(",");return a;}if(80 == a){if(0 == b[0])return "none";a = "";c = b.length;for(d = 0;d < c;) a += R[b[d]],1 == b[d]?a += "(" + b[d + 1] + ") ":5 == b[d]?(a += "(" + b[d + 1] + "px " + b[d + 2] + "px " + b[d + 3] + "px rgba(" + (b[d + 4] >>> 24) + "," + (b[d + 4] >> 16 & 255) + "," + (b[d + 4] >> 8 & 255) + "," + (b[d + 4] & 255) / 255 + ")) ",d += 3):a = 2 == b[d]?a + ("(" + b[d + 1] + "px) "):7 == b[d]?a + ("(" + b[d + 1] + "deg) "):a + ("(" + (0 > b[d + 1]?0:b[d + 1]) + ") "),d += 2;return a;}return 32 == a?b + "px":b;}function w(a){return 0 >= a?0:255 <= a?255:a;}function aa(a,b,c,d){if(16 == a || 32 == a)return (c - b) * d + b;if(0 == a)return .5 > d?b:c;if(48 == a){if("number" === typeof b && "number" === typeof c){var e=1 - d;return w(e * (b >> 16) + d * (c >> 16)) << 16 | w(e * (b >> 8 & 255) + d * (c >> 8 & 255)) << 8 | w(e * (b & 255) + d * (c & 255));}return .5 > d?b:c;}if(64 == a){0 == b.length && (b = [0]);0 == c.length && (c = [0]);var k=b.length;b.length != c.length && (k = b.length * c.length);var h=[];for(a = 0;a < k;++a) {var f=b[a % b.length];var g=(c[a % c.length] - f) * d + f;0 > g && (g = 0);h.push(g);}return h;}if(96 == a){if(b.length != c.length)return .5 > d?b:c;k = b.length;h = [];for(a = 0;a < k;a += 2) {if(b[a] !== c[a])return .5 > d?b:c;h[a] = b[a];h[a + 1] = [];for(f = 0;f < b[a + 1].length;++f) h[a + 1].push((c[a + 1][f] - b[a + 1][f]) * d + b[a + 1][f]);}return h;}if(80 == a){k = b.length;if(k != c.length)return .5 > d?b:c;h = [];for(a = 0;a < k;) {if(b[a] != c[a] || 1 == b[a])return .5 > d?b:c;h[a] = b[a];h[a + 1] = (c[a + 1] - b[a + 1]) * d + b[a + 1];if(5 == b[a]){h[a + 2] = (c[a + 2] - b[a + 2]) * d + b[a + 2];h[a + 3] = (c[a + 3] - b[a + 3]) * d + b[a + 3];e = 1 - d;var l=b[a + 4],q=c[a + 4];g = e * (l >>> 24) + d * (q >>> 24);var n=e * (l >> 16 & 255) + d * (q >> 16 & 255);f = e * (l >> 8 & 255) + d * (q >> 8 & 255);h[a + 4] = (w(n) << 16 | w(f) << 8 | w(e * (l & 255) + d * (q & 255))) + 16777216 * (w(g) | 0);a += 3;}a += 2;}return h;}return 0;}function S(a,b){a: {var c=a + b[2];var d=b[4].length;for(var e=0;e < d;++e) if(c < b[4][e]){c = e;break a;}c = d - 1;}d = b[2];e = b[4][c - 1] - d;a = (a - e) / (b[4][c] - d - e);if(b[6] && b[6].length > c - 1)if((d = b[6][c - 1],1 == d[0]))if(0 >= a)a = 0;else if(1 <= a)a = 1;else {e = d[1];var k=d[3];a = Y(3 * e - 3 * k + 1,-6 * e + 3 * k,3 * e,-a);a = 3 * a * (1 - a) * (1 - a) * d[2] + 3 * a * a * (1 - a) * d[4] + a * a * a;}else 2 == d[0]?(d = d[1],a = Math.ceil(a * d) / d):3 == d[0] && (d = d[1],a = Math.floor(a * d) / d);return aa(b[1] & 240,b[5][c - 1],b[5][c],a);}function P(){A = new Date().getTime();}function J(a){for(var b=!1,c=0;c < x.length;++c) x[c].F(a) && (b = !0);a && x.forEach(function(a){a.l && (a.l = !1,a.onfinish && (a.onfinish(),b = !0));});return b;}function T(){P();J(!0)?(K = !0,L(T)):K = !1;}function Q(){K || (K = !0,L(T));}function U(a,b){var c=[];a.split(b).forEach(function(a){c.push(parseFloat(a));});return c;}function t(a){-1 == a.indexOf(",") && (a = a.replace(" ",","));return U(a,",");}function V(a){a._ks || (a._ks = {H:M},++M);if(!a._ks.transform){for(var b=a._ks.transform = [],c=0;14 >= c;++c) b[c] = 0;b[10] = 1;b[11] = 1;if(c = a.getAttribute("transform")){for(c = c.trim().split(") ");0 < a._ks.w;) c.shift(),--a._ks.w;a = c.shift();v(a,"translate(") && (a = t(a.substring(10)),b[1] = a[0],b[2] = z(a[1])?a[1]:0,a = c.shift());v(a,"rotate(") && (a = t(a.substring(7)),b[6] = a[0],a = c.shift());v(a,"skewX(") && (a = t(a.substring(6)),b[7] = a[0],a = c.shift());v(a,"skewY(") && (a = t(a.substring(6)),b[8] = a[0],a = c.shift());v(a,"scale(") && (a = t(a.substring(6)),b[10] = a[0],b[11] = z(a[1])?a[1]:0,a = c.shift());v(a,"translate(") && (a = t(a.substring(10)),b[13] = a[0],b[14] = z(a[1])?a[1]:0);}}}function W(a){this.C = a;this.v = [];this.o = [];this.g = 0;this.i = this.a = this.b = null;this.f = this.A = this.l = this.h = !1;}function G(a,b,c){b = a[b];void 0 === b && (b = a[c]);return b;}function ba(a){return Array.isArray(a)?a:v(a,"cubic-bezier(")?(a = a.substring(13,a.length - 1).split(","),[1,parseFloat(a[0]),parseFloat(a[1]),parseFloat(a[2]),parseFloat(a[3])]):v(a,"steps(")?(a = a.substring(6,a.length - 1).split(","),[a[1] && "start" == a[1].trim()?2:3,parseFloat(a[0])]):[0];}function ca(a){a = a.trim();return v(a,"#")?(parseInt(a.substring(1),16) << 8) + 255:v(a,"rgba(")?(a = a.substring(5,a.length - 1),a = a.split(","),(parseInt(a[0],10) << 24) + (parseInt(a[1],10) << 16) + (parseInt(a[2],10) << 8) + 255 * parseFloat(a[3]) << 0):a;}var da=" translate translate    rotate skewX skewY  scale scale  translate translate".split(" "),R="none url blur brightness contrast drop-shadow grayscale hue-rotate invert opacity saturate sepia".split(" "),L=window.requestAnimationFrame || window.webkitRequestAnimationFrame || window.mozRequestAnimationFrame || window.oRequestAnimationFrame || window.msRequestAnimationFrame || null;L || (L = function(a){window.setTimeout(a,16);});var M=0,X={d:97,fill:48,fillOpacity:16,filter:80,height:33,opacity:16,stroke:48,strokeDasharray:64,strokeDashoffset:32,strokeOpacity:16,strokeWidth:32,transform:1,width:33},K=!1,A=new Date().getTime(),x=[];W.prototype = {j:function j(a){var b=!1;if(null !== this.b){var c=this.c();null !== c && c >= this.g?(b = !0,a?this.a = c:this.a = this.i?Math.max(this.i,this.g):this.g):null !== c && (a && null !== this.a && (this.b = A - this.a / 1),this.a = null);}this.i = this.c();return b;},F:function F(a){a && (this.h && (this.h = !1,null === this.b && (null !== this.a?(this.b = A - this.a / 1,this.a = null):this.b = A)),null === this.a && null !== this.b && this.j(!1) && (this.l = !0));a = this.c();if(null === a)return !1;for(var b=this.v,c=this.o,d=0;d < b.length;++d) {for(var e=b[d],k=!1,h=0;h < c[d].length;++h) {var f=c[d][h],g=f[0];if(null !== g){var l=f[2];var q=f[4].length,n=f[4][q - 1] - l;l = 0 == n?f[5][q - 1]:a <= l?f[5][0]:a >= l + f[3]?0 == f[3] % n?f[5][q - 1]:S(f[3] % n,f):S((a - l) % n,f);0 == g?(e._ks.mpath = f[8],e._ks.transform[g] = l,k = !0):14 >
488= g?(e._ks.transform[g] = l,k = !0):(l = Z(f[1] & 240,l),f[1] & 1?e.setAttribute(g,l):e.style[g] = l);}}if(k){V(e);k = e._ks.transform;h = "";if(f = e._ks.mpath)l = k[0] * f[2] / 100,g = f[1].getPointAtLength(l),h = "translate(" + g.x + "," + g.y + ") ",f[0] && (.5 > l?(l = g,g = f[1].getPointAtLength(.5)):l = f[1].getPointAtLength(l - .5),h += "rotate(" + 180 * Math.atan2(g.y - l.y,g.x - l.x) / Math.PI + ") ");for(f = 1;f < k.length;++f) g = k[f],g != (10 == f || 11 == f?1:0) && (h += " " + da[f] + "(",h = 2 >= f?h + (1 == f?g + ",0":"0," + g):13 <= f?h + (13 == f?g + ",0":"0," + g):10 <= f?h + (10 == f?g + ",1":"1," + g):h + g,h += ")");e.setAttribute("transform",h);}}return "running" == this.B();},s:function s(){if(!this.A){this.A = !0;for(var a=this.v,b=this.o,c=0;c < a.length;++c) for(var d=a[c],e=!1,k=0;k < b[c].length;++k) {var h=b[c][k][0];14 >= h?d._ks.G || (V(d),d._ks.G = d._ks.transform.slice()):(d._ks.m || (d._ks.m = {}),z(d._ks.m[h]) || (e || (e = getComputedStyle(d)),d._ks.m[h] = O(h) & 1?d.getAttribute(h):e[h]));}}},play:function play(a){z(a) && this.u(a,!0);if(!this.f)return this;a = this.c();if(null === a || 0 > a || a >= this.g)this.a = 0;if(null === this.a)return this;this.b = null;this.h = !0;this.s();Q();return this;},pause:function pause(a){z(a) && this.u(a,!0);if(!this.f || "paused" == this.B())return this;z(a) || P();a = this.c();null === a && (this.a = 0);null !== this.b && null === this.a && (this.a = a);this.b = null;this.h = !1;this.j(!1);this.s();J(!1);return this;},c:function c(){return null !== this.a?this.a:null === this.b?null:1 * (A - this.b);},u:function u(a,b){N(a);b && P();null !== a && (this.s(),null !== this.a || null === this.b?(this.a = a,J(!1)):this.b = A - a / 1,this.f || (this.b = null),this.i = null,this.j(!0),Q());},I:function I(){return this.c();},time:function time(a){return z(a)?(this.f && this.u(a,!0),this):this.I();},startTime:function startTime(a){if(z(a)){N(a);if(!this.f)return this;this.i = this.c();this.b = a;null !== a?this.a = null:this.a = this.i;this.h = !1;this.j(!0);J(!1);Q();return this;}return this.D?this.D[0].startTime:this.b;},B:function B(){var a=this.c();return this.h?"running":null === a?"idle":null === this.b?"paused":a >= this.g?"finished":"running";}};return {setmptr:function setmptr(a){for(var b in a) {var c=document.getElementById(b);c._ks || (c._ks = {});c._ks.w = a[b];}},animate:function animate(){if(0 < x.length)throw "data already set";var a={};if(1 == arguments.length % 2){a = arguments[arguments.length - 1];var b={};for(c in a) b[c] = a[c];a = b;}var c=new W(a);a = arguments;for(var d=b = 0;d < a.length - 1;d += 2) {var e=a[d];var k=e instanceof Element?e:document.getElementById(e.substring(1));if(!k)throw "invalid target: " + e;e = k;k = a[d + 1];e._ks || (e._ks = {H:M},++M);for(var h=[],f=0;f < k.length;++f) {var g=k[f],l=G(g,"p","property");14 >= l || -1 == l.indexOf("-") || (l = null);var q=O(l);q || (q = 0);var n=G(g,"t","times");if(!n || 2 > n.length)throw "not enough times";n = n.slice();if(!isFinite(n[0]) || 0 > n[0])throw "bad time: " + n[0];for(var y=1;y < n.length;++y) if(!isFinite(n[y]) || 0 > n[y] || n[y] < n[y - 1])throw "bad time: " + n[y];y = n[0];var w=n[n.length - 1] - y,A=g.iterations || 0;1 > A && (A = 1);w *= A;b < w + y && (b = w + y);var t=G(g,"v","values");if(!t || t.length != n.length)throw "values don't match times";t = t.slice();for(var B=l,m=t,H=O(B) & 240,p=0;p < m.length;++p) if(96 == H){for(var F=m[p].substring(6,m[p].length - 2).match(/[A-DF-Za-df-z][-+0-9eE., ]*/ig),I=[],r=0;r < F.length;++r) {I.push(F[r][0]);for(var u=1 < F[r].trim().length?F[r].substring(1).split(","):[],E=0;E < u.length;++E) u[E] = parseFloat(u[E]);I.push(u);}m[p] = I;}else if(48 == H)v(m[p],"#")?m[p] = parseInt(m[p].substring(1),16):v(m[p],"url(") || "none" == m[p] || (console.warn("unsupported color: " + m[p]),m[p] = 0);else if(80 == H){F = m;I = p;r = m[p];if("none" == r)r = [0];else {u = [];for(var C=r.indexOf("(");0 < C;) if((E = R.indexOf(r.substring(0,C)),0 <= E)){u.push(E);var D=r.indexOf(") ");0 > D && (D = r.length - 1);C = r.substring(C + 1,D).split(" ");5 == E?(u.push(parseFloat(C[0])),u.push(parseFloat(C[1])),u.push(parseFloat(C[2])),u.push(ca(C[3]))):1 == E?u.push(C[0]):u.push(parseFloat(C[0]));r = r.substring(D + 1).trim();C = r.indexOf("(");}else break;r = u;}F[I] = r;}else 64 == H?"none" != m[p]?/^[0-9 .]*$/.test(m[p])?m[p] = U(m[p]," "):(console.warn("unsupported value: " + m[p]),m[p] = [0]):m[p] = [0]:32 == H?(N(m[p]),m[p] = parseFloat(m[p])):0 === B && (m[p] = parseFloat(m[p]));
488B = G(g,"e","easing");m = n.length;for(B || (B = []);B.length < m;) B.push([1,0,0,.58,1]);for(m = 0;m < B.length;++m) B[m] = ba(B[m]);q = [l,q,y,w,n,t,B,A];n = G(g,"m","motionPath");z(n) && 0 === l && (q[8] = [],q[8][0] = g.motionRotate,g = document.createElementNS("http://www.w3.org/2000/svg","path"),n || (n = "M0,0"),g.setAttribute("d",n),q[8][1] = g,q[8][2] = g.getTotalLength());h.push(q);}0 < h.length && (c.v.push(e),c.o.push(h));}c.g = b;!1 === c.f && (x.push(c),c.f = !0,!1 !== c.C.autoplay && c.play());return c;},_priv_list:function _priv_list(){return x.slice();},play:function play(){return x[0]?x[0].play():this;},pause:function pause(){return x[0]?x[0].pause():this;},time:function time(a){return x[0]?x[0].time(a):z(a)?this:null;}};})();document.ks = ks;(function(ks){ks.animate("#_svg_milk_a0",[{p:'strokeDashoffset',t:[0,1000,2000],v:[320,0,0],e:[[1,0,0,0.343424,1],[0],[0]]}],"#_svg_milk_a1",[{p:'strokeDashoffset',t:[0,1000,2000],v:[418,0,0],e:[[1,0,0,0.58,1],[0],[0]]}],"#_svg_milk_a2",[{p:'strokeDashoffset',t:[0,2000],v:[933,0],e:[[1,0,0,0.257552,1],[0]]}],{autoplay:document.location.search.substr(1).split('&').indexOf('autoplay=false') < 0});})(ks);setTimeout(function(){can_svg_anime_milk = true;},10000);break;case "_svg_cone":if(!can_svg_anime_cone){return;}can_svg_anime_cone = false;document.getElementById(id).style.opacity = 1;window.ks = (function(){function z(a){return "undefined" !== typeof a;}function v(a,b){return a && 0 == a.indexOf(b);}function N(a){if(!isFinite(a))throw "non-finite value";}function O(a){if(14 >= a)return 16;(a = X[a]) || (a = 0);return a;}function D(a){return 0 <= a?Math.pow(a,1 / 3):-Math.pow(-a,1 / 3);}function Y(a,b,c,d){if(0 == a)return 0 == b?b = -d / c:(a = Math.sqrt(c * c - 4 * b * d),d = (-c + a) / (2 * b),0 <= d && 1 >= d?b = d:(d = (-c - a) / (2 * b),b = 0 <= d && 1 >= d?d:0)),b;var e=c / a - b * b / (a * a) / 3;c = b * b * b / (a * a * a) / 13.5 - b * c / (a * a) / 3 + d / a;var k=c * c / 4 + e * e * e / 27;b = -b / (3 * a);if(0 >= k){if(0 == e && 0 == c)return -D(d / a);a = Math.sqrt(c * c / 4 - k);d = Math.acos(-c / 2 / a);c = Math.cos(d / 3);d = Math.sqrt(3) * Math.sin(d / 3);a = D(a);e = 2 * a * c + b;if(0 <= e && 1 >= e)return e;e = -a * (c + d) + b;if(0 <= e && 1 >= e)return e;e = a * (d - c) + b;if(0 <= e && 1 >= e)return e;}else {a = D(-c / 2 + Math.sqrt(k));c = D(-c / 2 - Math.sqrt(k));d = a + c + b;if(0 <= d && 1 >= d)return d;d = -(a + c) / 2 + b;if(0 <= d && 1 >= d)return d;}return 0;}function Z(a,b){if(48 == a && "number" === typeof b)return "#" + ("000000" + b.toString(16)).substr(-6);if(64 == a)return b = b.map(function(a){return a + "px";}),b.join(",");if(96 == a){a = "";for(var c=b.length,d=0;d < c;d += 2) a += b[d],a += b[d + 1].join(",");return a;}if(80 == a){if(0 == b[0])return "none";a = "";c = b.length;for(d = 0;d < c;) a += R[b[d]],1 == b[d]?a += "(" + b[d + 1] + ") ":5 == b[d]?(a += "(" + b[d + 1] + "px " + b[d + 2] + "px " + b[d + 3] + "px rgba(" + (b[d + 4] >>> 24) + "," + (b[d + 4] >> 16 & 255) + "," + (b[d + 4] >> 8 & 255) + "," + (b[d + 4] & 255) / 255 + ")) ",d += 3):a = 2 == b[d]?a + ("(" + b[d + 1] + "px) "):7 == b[d]?a + ("(" + b[d + 1] + "deg) "):a + ("(" + (0 > b[d + 1]?0:b[d + 1]) + ") "),d += 2;return a;}return 32 == a?b + "px":b;}function w(a){return 0 >= a?0:255 <= a?255:a;}function aa(a,b,c,d){if(16 == a || 32 == a)return (c - b) * d + b;if(0 == a)return .5 > d?b:c;if(48 == a){if("number" === typeof b && "number" === typeof c){var e=1 - d;return w(e * (b >> 16) + d * (c >> 16)) << 16 | w(e * (b >> 8 & 255) + d * (c >> 8 & 255)) << 8 | w(e * (b & 255) + d * (c & 255));}return .5 > d?b:c;}if(64 == a){0 == b.length && (b = [0]);0 == c.length && (c = [0]);var k=b.length;b.length != c.length && (k = b.length * c.length);var h=[];for(a = 0;a < k;++a) {var f=b[a % b.length];var g=(c[a % c.length] - f) * d + f;0 > g && (g = 0);h.push(g);}return h;}if(96 == a){if(b.length != c.length)return .5 > d?b:c;k = b.length;h = [];for(a = 0;a < k;a += 2) {if(b[a] !== c[a])return .5 > d?b:c;h[a] = b[a];h[a + 1] = [];for(f = 0;f < b[a + 1].length;++f) h[a + 1].push((c[a + 1][f] - b[a + 1][f]) * d + b[a + 1][f]);}return h;}if(80 == a){k = b.length;if(k != c.length)return .5 > d?b:c;h = [];for(a = 0;a < k;) {if(b[a] != c[a] || 1 == b[a])return .5 > d?b:c;h[a] = b[a];h[a + 1] = (c[a + 1] - b[a + 1]) * d + b[a + 1];if(5 == b[a]){h[a + 2] = (c[a + 2] - b[a + 2]) * d + b[a + 2];h[a + 3] = (c[a + 3] - b[a + 3]) * d + b[a + 3];e = 1 - d;var l=b[a + 4],q=c[a + 4];g = e * (l >>> 24) + d * (q >>> 24);var n=e * (l >> 16 & 255) + d * (q >> 16 & 255);f = e * (l >> 8 & 255) + d * (q >> 8 & 255);h[a + 4] = (w(n) << 16 | w(f) << 8 | w(e * (l & 255) + d * (q & 255))) + 16777216 * (w(g) | 0);a += 3;}a += 2;}return h;}return 0;}function S(a,b){a: {var c=a + b[2];var d=b[4].length;for(var e=0;e < d;++e) if(c < b[4][e]){c = e;break a;}c = d - 1;}d = b[2];e = b[4][c - 1] - d;a = (a - e) / (b[4][c] - d - e);if(b[6] && b[6].length > c - 1)if((d = b[6][c - 1],1 == d[0]))if(0 >= a)a = 0;else if(1 <= a)a = 1;else {e = d[1];var k=d[3];a = Y(3 * e - 3 * k + 1,-6 * e + 3 * k,3 * e,-a);a = 3 * a * (1 - a) * (1 - a) * d[2] + 3 * a * a * (1 - a) * d[4] + a * a * a;}else 2 == d[0]?(d = d[1],a = Math.ceil(a * d) / d):3 == d[0] && (d = d[1],a = Math.floor(a * d) / d);return aa(b[1] & 240,b[5][c - 1],b[5][c],a);}function P(){A = new Date().getTime();}function J(a){for(var b=!1,c=0;c < x.length;++c) x[c].F(a) && (b = !0);a && x.forEach(function(a){a.l && (a.l = !1,a.onfinish && (a.onfinish(),b = !0));});return b;}function T(){P();J(!0)?(K = !0,L(T)):K = !1;}function Q(){K || (K = !0,L(T));}function U(a,b){var c=[];a.split(b).forEach(function(a){c.push(parseFloat(a));});return c;}function t(a){-1 == a.indexOf(",") && (a = a.replace(" ",","));return U(a,",");}function V(a){a._ks || (a._ks = {H:M},++M);if(!a._ks.transform){for(var b=a._ks.transform = [],c=0;14 >= c;++c) b[c] = 0;b[10] = 1;b[11] = 1;if(c = a.getAttribute("transform")){for(c = c.trim().split(") ");0 < a._ks.w;) c.shift(),--a._ks.w;a = c.shift();v(a,"translate(") && (a = t(a.substring(10)),b[1] = a[0],b[2] = z(a[1])?a[1]:0,a = c.shift());v(a,"rotate(") && (a = t(a.substring(7)),b[6] = a[0],a = c.shift());v(a,"skewX(") && (a = t(a.substring(6)),b[7] = a[0],a = c.shift());v(a,"skewY(") && (a = t(a.substring(6)),b[8] = a[0],a = c.shift());v(a,"scale(") && (a = t(a.substring(6)),b[10] = a[0],b[11] = z(a[1])?a[1]:0,a = c.shift());v(a,"translate(") && (a = t(a.substring(10)),b[13] = a[0],b[14] = z(a[1])?a[1]:0);}}}function W(a){this.C = a;this.v = [];this.o = [];this.g = 0;this.i = this.a = this.b = null;this.f = this.A = this.l = this.h = !1;}function G(a,b,c){b = a[b];void 0 === b && (b = a[c]);return b;}function ba(a){return Array.isArray(a)?a:v(a,"cubic-bezier(")?(a = a.substring(13,a.length - 1).split(","),[1,parseFloat(a[0]),parseFloat(a[1]),parseFloat(a[2]),parseFloat(a[3])]):v(a,"steps(")?(a = a.substring(6,a.length - 1).split(","),[a[1] && "start" == a[1].trim()?2:3,parseFloat(a[0])]):[0];}function ca(a){a = a.trim();return v(a,"#")?(parseInt(a.substring(1),16) << 8) + 255:v(a,"rgba(")?(a = a.substring(5,a.length - 1),a = a.split(","),(parseInt(a[0],10) << 24) + (parseInt(a[1],10) << 16) + (parseInt(a[2],10) << 8) + 255 * parseFloat(a[3]) << 0):a;}var da=" translate translate    rotate skewX skewY  scale scale  translate translate".split(" "),R="none url blur brightness contrast drop-shadow grayscale hue-rotate invert opacity saturate sepia".split(" "),L=window.requestAnimationFrame || window.webkitRequestAnimationFrame || window.mozRequestAnimationFrame || window.oRequestAnimationFrame || window.msRequestAnimationFrame || null;L || (L = function(a){window.setTimeout(a,16);});var M=0,X={d:97,fill:48,fillOpacity:16,filter:80,height:33,opacity:16,stroke:48,strokeDasharray:64,strokeDashoffset:32,strokeOpacity:16,strokeWidth:32,transform:1,width:33},K=!1,A=new Date().getTime(),x=[];W.prototype = {j:function j(a){var b=!1;if(null !== this.b){var c=this.c();null !== c && c >= this.g?(b = !0,a?this.a = c:this.a = this.i?Math.max(this.i,this.g):this.g):null !== c && (a && null !== this.a && (this.b = A - this.a / 1),this.a = null);}this.i = this.c();return b;},F:function F(a){a && (this.h && (this.h = !1,null === this.b && (null !== this.a?(this.b = A - this.a / 1,this.a = null):this.b = A)),null === this.a && null !== this.b && this.j(!1) && (this.l = !0));a = this.c();if(null === a)return !1;for(var b=this.v,c=this.o,d=0;d < b.length;++d) {for(var e=b[d],k=!1,h=0;h < c[d].length;++h) {var f=c[d][h],g=f[0];if(null !== g){var l=f[2];var q=f[4].length,n=f[4][q - 1] - l;l = 0 == n?f[5][q - 1]:a <= l?f[5][0]:a >= l + f[3]?0 == f[3] % n?f[5][q - 1]:S(f[3] % n,f):S((a - l) % n,f);0 == g?(e._ks.mpath = f[8],e._ks.transform[g] = l,k = !0):14 >
488= g?(e._ks.transform[g] = l,k = !0):(l = Z(f[1] & 240,l),f[1] & 1?e.setAttribute(g,l):e.style[g] = l);}}if(k){V(e);k = e._ks.transform;h = "";if(f = e._ks.mpath)l = k[0] * f[2] / 100,g = f[1].getPointAtLength(l),h = "translate(" + g.x + "," + g.y + ") ",f[0] && (.5 > l?(l = g,g = f[1].getPointAtLength(.5)):l = f[1].getPointAtLength(l - .5),h += "rotate(" + 180 * Math.atan2(g.y - l.y,g.x - l.x) / Math.PI + ") ");for(f = 1;f < k.length;++f) g = k[f],g != (10 == f || 11 == f?1:0) && (h += " " + da[f] + "(",h = 2 >= f?h + (1 == f?g + ",0":"0," + g):13 <= f?h + (13 == f?g + ",0":"0," + g):10 <= f?h + (10 == f?g + ",1":"1," + g):h + g,h += ")");e.setAttribute("transform",h);}}return "running" == this.B();},s:function s(){if(!this.A){this.A = !0;for(var a=this.v,b=this.o,c=0;c < a.length;++c) for(var d=a[c],e=!1,k=0;k < b[c].length;++k) {var h=b[c][k][0];14 >= h?d._ks.G || (V(d),d._ks.G = d._ks.transform.slice()):(d._ks.m || (d._ks.m = {}),z(d._ks.m[h]) || (e || (e = getComputedStyle(d)),d._ks.m[h] = O(h) & 1?d.getAttribute(h):e[h]));}}},play:function play(a){z(a) && this.u(a,!0);if(!this.f)return this;a = this.c();if(null === a || 0 > a || a >= this.g)this.a = 0;if(null === this.a)return this;this.b = null;this.h = !0;this.s();Q();return this;},pause:function pause(a){z(a) && this.u(a,!0);if(!this.f || "paused" == this.B())return this;z(a) || P();a = this.c();null === a && (this.a = 0);null !== this.b && null === this.a && (this.a = a);this.b = null;this.h = !1;this.j(!1);this.s();J(!1);return this;},c:function c(){return null !== this.a?this.a:null === this.b?null:1 * (A - this.b);},u:function u(a,b){N(a);b && P();null !== a && (this.s(),null !== this.a || null === this.b?(this.a = a,J(!1)):this.b = A - a / 1,this.f || (this.b = null),this.i = null,this.j(!0),Q());},I:function I(){return this.c();},time:function time(a){return z(a)?(this.f && this.u(a,!0),this):this.I();},startTime:function startTime(a){if(z(a)){N(a);if(!this.f)return this;this.i = this.c();this.b = a;null !== a?this.a = null:this.a = this.i;this.h = !1;this.j(!0);J(!1);Q();return this;}return this.D?this.D[0].startTime:this.b;},B:function B(){var a=this.c();return this.h?"running":null === a?"idle":null === this.b?"paused":a >= this.g?"finished":"running";}};return {setmptr:function setmptr(a){for(var b in a) {var c=document.getElementById(b);c._ks || (c._ks = {});c._ks.w = a[b];}},animate:function animate(){if(0 < x.length)throw "data already set";var a={};if(1 == arguments.length % 2){a = arguments[arguments.length - 1];var b={};for(c in a) b[c] = a[c];a = b;}var c=new W(a);a = arguments;for(var d=b = 0;d < a.length - 1;d += 2) {var e=a[d];var k=e instanceof Element?e:document.getElementById(e.substring(1));if(!k)throw "invalid target: " + e;e = k;k = a[d + 1];e._ks || (e._ks = {H:M},++M);for(var h=[],f=0;f < k.length;++f) {var g=k[f],l=G(g,"p","property");14 >= l || -1 == l.indexOf("-") || (l = null);var q=O(l);q || (q = 0);var n=G(g,"t","times");if(!n || 2 > n.length)throw "not enough times";n = n.slice();if(!isFinite(n[0]) || 0 > n[0])throw "bad time: " + n[0];for(var y=1;y < n.length;++y) if(!isFinite(n[y]) || 0 > n[y] || n[y] < n[y - 1])throw "bad time: " + n[y];y = n[0];var w=n[n.length - 1] - y,A=g.iterations || 0;1 > A && (A = 1);w *= A;b < w + y && (b = w + y);var t=G(g,"v","values");if(!t || t.length != n.length)throw "values don't match times";t = t.slice();for(var B=l,m=t,H=O(B) & 240,p=0;p < m.length;++p) if(96 == H){for(var F=m[p].substring(6,m[p].length - 2).match(/[A-DF-Za-df-z][-+0-9eE., ]*/ig),I=[],r=0;r < F.length;++r) {I.push(F[r][0]);for(var u=1 < F[r].trim().length?F[r].substring(1).split(","):[],E=0;E < u.length;++E) u[E] = parseFloat(u[E]);I.push(u);}m[p] = I;}else if(48 == H)v(m[p],"#")?m[p] = parseInt(m[p].substring(1),16):v(m[p],"url(") || "none" == m[p] || (console.warn("unsupported color: " + m[p]),m[p] = 0);else if(80 == H){F = m;I = p;r = m[p];if("none" == r)r = [0];else {u = [];for(var C=r.indexOf("(");0 < C;) if((E = R.indexOf(r.substring(0,C)),0 <= E)){u.push(E);var D=r.indexOf(") ");0 > D && (D = r.length - 1);C = r.substring(C + 1,D).split(" ");5 == E?(u.push(parseFloat(C[0])),u.push(parseFloat(C[1])),u.push(parseFloat(C[2])),u.push(ca(C[3]))):1 == E?u.push(C[0]):u.push(parseFloat(C[0]));r = r.substring(D + 1).trim();C = r.indexOf("(");}else break;r = u;}F[I] = r;}else 64 == H?"none" != m[p]?/^[0-9 .]*$/.test(m[p])?m[p] = U(m[p]," "):(console.warn("unsupported value: " + m[p]),m[p] = [0]):m[p] = [0]:32 == H?(N(m[p]),m[p] = parseFloat(m[p])):0 === B && (m[p] = parseFloat(m[p]));
488B = G(g,"e","easing");m = n.length;for(B || (B = []);B.length < m;) B.push([1,0,0,.58,1]);for(m = 0;m < B.length;++m) B[m] = ba(B[m]);q = [l,q,y,w,n,t,B,A];n = G(g,"m","motionPath");z(n) && 0 === l && (q[8] = [],q[8][0] = g.motionRotate,g = document.createElementNS("http://www.w3.org/2000/svg","path"),n || (n = "M0,0"),g.setAttribute("d",n),q[8][1] = g,q[8][2] = g.getTotalLength());h.push(q);}0 < h.length && (c.v.push(e),c.o.push(h));}c.g = b;!1 === c.f && (x.push(c),c.f = !0,!1 !== c.C.autoplay && c.play());return c;},_priv_list:function _priv_list(){return x.slice();},play:function play(){return x[0]?x[0].play():this;},pause:function pause(){return x[0]?x[0].pause():this;},time:function time(a){return x[0]?x[0].time(a):z(a)?this:null;}};})();document.ks = ks;(function(ks){ks.animate("#_svg_cone_a0",[{p:'strokeDashoffset',t:[0,2000],v:[646,0],e:[[1,0,0,0.58,1],[0]]}],"#_svg_cone_a1",[{p:'strokeDashoffset',t:[0,300,700,2000],v:[90,90,0,0],e:[[0],[1,0,0,0.58,1],[0],[0]]}],"#_svg_cone_a2",[{p:'strokeDashoffset',t:[0,400,1700,2000],v:[387,387,0,0],e:[[0],[1,0,0,0.58,1],[0],[0]]}],"#_svg_cone_a3",[{p:'strokeDashoffset',t:[0,1000,2000],v:[426,0,0],e:[[1,0,0,0.58,1],[0],[0]]}],{autoplay:document.location.search.substr(1).split('&').indexOf('autoplay=false') < 0});})(ks);setTimeout(function(){can_svg_anime_cone = true;},10000);break;case "_svg_scoop":if(!can_svg_anime_scoop){return;}can_svg_anime_scoop = false;document.getElementById(id).style.opacity = 1;window.ks = (function(){function z(a){return "undefined" !== typeof a;}function v(a,b){return a && 0 == a.indexOf(b);}function N(a){if(!isFinite(a))throw "non-finite value";}function O(a){if(14 >= a)return 16;(a = X[a]) || (a = 0);return a;}function D(a){return 0 <= a?Math.pow(a,1 / 3):-Math.pow(-a,1 / 3);}function Y(a,b,c,d){if(0 == a)return 0 == b?b = -d / c:(a = Math.sqrt(c * c - 4 * b * d),d = (-c + a) / (2 * b),0 <= d && 1 >= d?b = d:(d = (-c - a) / (2 * b),b = 0 <= d && 1 >= d?d:0)),b;var e=c / a - b * b / (a * a) / 3;c = b * b * b / (a * a * a) / 13.5 - b * c / (a * a) / 3 + d / a;var k=c * c / 4 + e * e * e / 27;b = -b / (3 * a);if(0 >= k){if(0 == e && 0 == c)return -D(d / a);a = Math.sqrt(c * c / 4 - k);d = Math.acos(-c / 2 / a);c = Math.cos(d / 3);d = Math.sqrt(3) * Math.sin(d / 3);a = D(a);e = 2 * a * c + b;if(0 <= e && 1 >= e)return e;e = -a * (c + d) + b;if(0 <= e && 1 >= e)return e;e = a * (d - c) + b;if(0 <= e && 1 >= e)return e;}else {a = D(-c / 2 + Math.sqrt(k));c = D(-c / 2 - Math.sqrt(k));d = a + c + b;if(0 <= d && 1 >= d)return d;d = -(a + c) / 2 + b;if(0 <= d && 1 >= d)return d;}return 0;}function Z(a,b){if(48 == a && "number" === typeof b)return "#" + ("000000" + b.toString(16)).substr(-6);if(64 == a)return b = b.map(function(a){return a + "px";}),b.join(",");if(96 == a){a = "";for(var c=b.length,d=0;d < c;d += 2) a += b[d],a += b[d + 1].join(",");return a;}if(80 == a){if(0 == b[0])return "none";a = "";c = b.length;for(d = 0;d < c;) a += R[b[d]],1 == b[d]?a += "(" + b[d + 1] + ") ":5 == b[d]?(a += "(" + b[d + 1] + "px " + b[d + 2] + "px " + b[d + 3] + "px rgba(" + (b[d + 4] >>> 24) + "," + (b[d + 4] >> 16 & 255) + "," + (b[d + 4] >> 8 & 255) + "," + (b[d + 4] & 255) / 255 + ")) ",d += 3):a = 2 == b[d]?a + ("(" + b[d + 1] + "px) "):7 == b[d]?a + ("(" + b[d + 1] + "deg) "):a + ("(" + (0 > b[d + 1]?0:b[d + 1]) + ") "),d += 2;return a;}return 32 == a?b + "px":b;}function w(a){return 0 >= a?0:255 <= a?255:a;}function aa(a,b,c,d){if(16 == a || 32 == a)return (c - b) * d + b;if(0 == a)return .5 > d?b:c;if(48 == a){if("number" === typeof b && "number" === typeof c){var e=1 - d;return w(e * (b >> 16) + d * (c >> 16)) << 16 | w(e * (b >> 8 & 255) + d * (c >> 8 & 255)) << 8 | w(e * (b & 255) + d * (c & 255));}return .5 > d?b:c;}if(64 == a){0 == b.length && (b = [0]);0 == c.length && (c = [0]);var k=b.length;b.length != c.length && (k = b.length * c.length);var h=[];for(a = 0;a < k;++a) {var f=b[a % b.length];var g=(c[a % c.length] - f) * d + f;0 > g && (g = 0);h.push(g);}return h;}if(96 == a){if(b.length != c.length)return .5 > d?b:c;k = b.length;h = [];for(a = 0;a < k;a += 2) {if(b[a] !== c[a])return .5 > d?b:c;h[a] = b[a];h[a + 1] = [];for(f = 0;f < b[a + 1].length;++f) h[a + 1].push((c[a + 1][f] - b[a + 1][f]) * d + b[a + 1][f]);}return h;}if(80 == a){k = b.length;if(k != c.length)return .5 > d?b:c;h = [];for(a = 0;a < k;) {if(b[a] != c[a] || 1 == b[a])return .5 > d?b:c;h[a] = b[a];h[a + 1] = (c[a + 1] - b[a + 1]) * d + b[a + 1];if(5 == b[a]){h[a + 2] = (c[a + 2] - b[a + 2]) * d + b[a + 2];h[a + 3] = (c[a + 3] - b[a + 3]) * d + b[a + 3];e = 1 - d;var l=b[a + 4],q=c[a + 4];g = e * (l >>> 24) + d * (q >>> 24);var n=e * (l >> 16 & 255) + d * (q >> 16 & 255);f = e * (l >> 8 & 255) + d * (q >> 8 & 255);h[a + 4] = (w(n) << 16 | w(f) << 8 | w(e * (l & 255) + d * (q & 255))) + 16777216 * (w(g) | 0);a += 3;}a += 2;}return h;}return 0;}function S(a,b){a: {var c=a + b[2];var d=b[4].length;for(var e=0;e < d;++e) if(c < b[4][e]){c = e;break a;}c = d - 1;}d = b[2];e = b[4][c - 1] - d;a = (a - e) / (b[4][c] - d - e);if(b[6] && b[6].length > c - 1)if((d = b[6][c - 1],1 == d[0]))if(0 >= a)a = 0;else if(1 <= a)a = 1;else {e = d[1];var k=d[3];a = Y(3 * e - 3 * k + 1,-6 * e + 3 * k,3 * e,-a);a = 3 * a * (1 - a) * (1 - a) * d[2] + 3 * a * a * (1 - a) * d[4] + a * a * a;}else 2 == d[0]?(d = d[1],a = Math.ceil(a * d) / d):3 == d[0] && (d = d[1],a = Math.floor(a * d) / d);return aa(b[1] & 240,b[5][c - 1],b[5][c],a);}function P(){A = new Date().getTime();}function J(a){for(var b=!1,c=0;c < x.length;++c) x[c].F(a) && (b = !0);a && x.forEach(function(a){a.l && (a.l = !1,a.onfinish && (a.onfinish(),b = !0));});return b;}function T(){P();J(!0)?(K = !0,L(T)):K = !1;}function Q(){K || (K = !0,L(T));}function U(a,b){var c=[];a.split(b).forEach(function(a){c.push(parseFloat(a));});return c;}function t(a){-1 == a.indexOf(",") && (a = a.replace(" ",","));return U(a,",");}function V(a){a._ks || (a._ks = {H:M},++M);if(!a._ks.transform){for(var b=a._ks.transform = [],c=0;14 >= c;++c) b[c] = 0;b[10] = 1;b[11] = 1;if(c = a.getAttribute("transform")){for(c = c.trim().split(") ");0 < a._ks.w;) c.shift(),--a._ks.w;a = c.shift();v(a,"translate(") && (a = t(a.substring(10)),b[1] = a[0],b[2] = z(a[1])?a[1]:0,a = c.shift());v(a,"rotate(") && (a = t(a.substring(7)),b[6] = a[0],a = c.shift());v(a,"skewX(") && (a = t(a.substring(6)),b[7] = a[0],a = c.shift());v(a,"skewY(") && (a = t(a.substring(6)),b[8] = a[0],a = c.shift());v(a,"scale(") && (a = t(a.substring(6)),b[10] = a[0],b[11] = z(a[1])?a[1]:0,a = c.shift());v(a,"translate(") && (a = t(a.substring(10)),b[13] = a[0],b[14] = z(a[1])?a[1]:0);}}}function W(a){this.C = a;this.v = [];this.o = [];this.g = 0;this.i = this.a = this.b = null;this.f = this.A = this.l = this.h = !1;}function G(a,b,c){b = a[b];void 0 === b && (b = a[c]);return b;}function ba(a){return Array.isArray(a)?a:v(a,"cubic-bezier(")?(a = a.substring(13,a.length - 1).split(","),[1,parseFloat(a[0]),parseFloat(a[1]),parseFloat(a[2]),parseFloat(a[3])]):v(a,"steps(")?(a = a.substring(6,a.length - 1).split(","),[a[1] && "start" == a[1].trim()?2:3,parseFloat(a[0])]):[0];}function ca(a){a = a.trim();return v(a,"#")?(parseInt(a.substring(1),16) << 8) + 255:v(a,"rgba(")?(a = a.substring(5,a.length - 1),a = a.split(","),(parseInt(a[0],10) << 24) + (parseInt(a[1],10) << 16) + (parseInt(a[2],10) << 8) + 255 * parseFloat(a[3]) << 0):a;}var da=" translate translate    rotate skewX skewY  scale scale  translate translate".split(" "),R="none url blur brightness contrast drop-shadow grayscale hue-rotate invert opacity saturate sepia".split(" "),L=window.requestAnimationFrame || window.webkitRequestAnimationFrame || window.mozRequestAnimationFrame || window.oRequestAnimationFrame || window.msRequestAnimationFrame || null;L || (L = function(a){window.setTimeout(a,16);});var M=0,X={d:97,fill:48,fillOpacity:16,filter:80,height:33,opacity:16,stroke:48,strokeDasharray:64,strokeDashoffset:32,strokeOpacity:16,strokeWidth:32,transform:1,width:33},K=!1,A=new Date().getTime(),x=[];W.prototype = {j:function j(a){var b=!1;if(null !== this.b){var c=this.c();null !== c && c >= this.g?(b = !0,a?this.a = c:this.a = this.i?Math.max(this.i,this.g):this.g):null !== c && (a && null !== this.a && (this.b = A - this.a / 1),this.a = null);}this.i = this.c();return b;},F:function F(a){a && (this.h && (this.h = !1,null === this.b && (null !== this.a?(this.b = A - this.a / 1,this.a = null):this.b = A)),null === this.a && null !== this.b && this.j(!1) && (this.l = !0));a = this.c();if(null === a)return !1;for(var b=this.v,c=this.o,d=0;d < b.length;++d) {for(var e=b[d],k=!1,h=0;h < c[d].length;++h) {var f=c[d][h],g=f[0];if(null !== g){var l=f[2];var q=f[4].length,n=f[4][q - 1] - l;l = 0 == n?f[5][q - 1]:a <= l?f[5][0]:a >= l + f[3]?0 == f[3] % n?f[5][q - 1]:S(f[3] % n,f):S((a - l) % n,f);0 == g?(e._ks.mpath = f[8],e._ks.transform[g] = l,k = !0):14 >
488= g?(e._ks.transform[g] = l,k = !0):(l = Z(f[1] & 240,l),f[1] & 1?e.setAttribute(g,l):e.style[g] = l);}}if(k){V(e);k = e._ks.transform;h = "";if(f = e._ks.mpath)l = k[0] * f[2] / 100,g = f[1].getPointAtLength(l),h = "translate(" + g.x + "," + g.y + ") ",f[0] && (.5 > l?(l = g,g = f[1].getPointAtLength(.5)):l = f[1].getPointAtLength(l - .5),h += "rotate(" + 180 * Math.atan2(g.y - l.y,g.x - l.x) / Math.PI + ") ");for(f = 1;f < k.length;++f) g = k[f],g != (10 == f || 11 == f?1:0) && (h += " " + da[f] + "(",h = 2 >= f?h + (1 == f?g + ",0":"0," + g):13 <= f?h + (13 == f?g + ",0":"0," + g):10 <= f?h + (10 == f?g + ",1":"1," + g):h + g,h += ")");e.setAttribute("transform",h);}}return "running" == this.B();},s:function s(){if(!this.A){this.A = !0;for(var a=this.v,b=this.o,c=0;c < a.length;++c) for(var d=a[c],e=!1,k=0;k < b[c].length;++k) {var h=b[c][k][0];14 >= h?d._ks.G || (V(d),d._ks.G = d._ks.transform.slice()):(d._ks.m || (d._ks.m = {}),z(d._ks.m[h]) || (e || (e = getComputedStyle(d)),d._ks.m[h] = O(h) & 1?d.getAttribute(h):e[h]));}}},play:function play(a){z(a) && this.u(a,!0);if(!this.f)return this;a = this.c();if(null === a || 0 > a || a >= this.g)this.a = 0;if(null === this.a)return this;this.b = null;this.h = !0;this.s();Q();return this;},pause:function pause(a){z(a) && this.u(a,!0);if(!this.f || "paused" == this.B())return this;z(a) || P();a = this.c();null === a && (this.a = 0);null !== this.b && null === this.a && (this.a = a);this.b = null;this.h = !1;this.j(!1);this.s();J(!1);return this;},c:function c(){return null !== this.a?this.a:null === this.b?null:1 * (A - this.b);},u:function u(a,b){N(a);b && P();null !== a && (this.s(),null !== this.a || null === this.b?(this.a = a,J(!1)):this.b = A - a / 1,this.f || (this.b = null),this.i = null,this.j(!0),Q());},I:function I(){return this.c();},time:function time(a){return z(a)?(this.f && this.u(a,!0),this):this.I();},startTime:function startTime(a){if(z(a)){N(a);if(!this.f)return this;this.i = this.c();this.b = a;null !== a?this.a = null:this.a = this.i;this.h = !1;this.j(!0);J(!1);Q();return this;}return this.D?this.D[0].startTime:this.b;},B:function B(){var a=this.c();return this.h?"running":null === a?"idle":null === this.b?"paused":a >= this.g?"finished":"running";}};return {setmptr:function setmptr(a){for(var b in a) {var c=document.getElementById(b);c._ks || (c._ks = {});c._ks.w = a[b];}},animate:function animate(){if(0 < x.length)throw "data already set";var a={};if(1 == arguments.length % 2){a = arguments[arguments.length - 1];var b={};for(c in a) b[c] = a[c];a = b;}var c=new W(a);a = arguments;for(var d=b = 0;d < a.length - 1;d += 2) {var e=a[d];var k=e instanceof Element?e:document.getElementById(e.substring(1));if(!k)throw "invalid target: " + e;e = k;k = a[d + 1];e._ks || (e._ks = {H:M},++M);for(var h=[],f=0;f < k.length;++f) {var g=k[f],l=G(g,"p","property");14 >= l || -1 == l.indexOf("-") || (l = null);var q=O(l);q || (q = 0);var n=G(g,"t","times");if(!n || 2 > n.length)throw "not enough times";n = n.slice();if(!isFinite(n[0]) || 0 > n[0])throw "bad time: " + n[0];for(var y=1;y < n.length;++y) if(!isFinite(n[y]) || 0 > n[y] || n[y] < n[y - 1])throw "bad time: " + n[y];y = n[0];var w=n[n.length - 1] - y,A=g.iterations || 0;1 > A && (A = 1);w *= A;b < w + y && (b = w + y);var t=G(g,"v","values");if(!t || t.length != n.length)throw "values don't match times";t = t.slice();for(var B=l,m=t,H=O(B) & 240,p=0;p < m.length;++p) if(96 == H){for(var F=m[p].substring(6,m[p].length - 2).match(/[A-DF-Za-df-z][-+0-9eE., ]*/ig),I=[],r=0;r < F.length;++r) {I.push(F[r][0]);for(var u=1 < F[r].trim().length?F[r].substring(1).split(","):[],E=0;E < u.length;++E) u[E] = parseFloat(u[E]);I.push(u);}m[p] = I;}else if(48 == H)v(m[p],"#")?m[p] = parseInt(m[p].substring(1),16):v(m[p],"url(") || "none" == m[p] || (console.warn("unsupported color: " + m[p]),m[p] = 0);else if(80 == H){F = m;I = p;r = m[p];if("none" == r)r = [0];else {u = [];for(var C=r.indexOf("(");0 < C;) if((E = R.indexOf(r.substring(0,C)),0 <= E)){u.push(E);var D=r.indexOf(") ");0 > D && (D = r.length - 1);C = r.substring(C + 1,D).split(" ");5 == E?(u.push(parseFloat(C[0])),u.push(parseFloat(C[1])),u.push(parseFloat(C[2])),u.push(ca(C[3]))):1 == E?u.push(C[0]):u.push(parseFloat(C[0]));r = r.substring(D + 1).trim();C = r.indexOf("(");}else break;r = u;}F[I] = r;}else 64 == H?"none" != m[p]?/^[0-9 .]*$/.test(m[p])?m[p] = U(m[p]," "):(console.warn("unsupported value: " + m[p]),m[p] = [0]):m[p] = [0]:32 == H?(N(m[p]),m[p] = parseFloat(m[p])):0 === B && (m[p] = parseFloat(m[p]));
488B = G(g,"e","easing");m = n.length;for(B || (B = []);B.length < m;) B.push([1,0,0,.58,1]);for(m = 0;m < B.length;++m) B[m] = ba(B[m]);q = [l,q,y,w,n,t,B,A];n = G(g,"m","motionPath");z(n) && 0 === l && (q[8] = [],q[8][0] = g.motionRotate,g = document.createElementNS("http://www.w3.org/2000/svg","path"),n || (n = "M0,0"),g.setAttribute("d",n),q[8][1] = g,q[8][2] = g.getTotalLength());h.push(q);}0 < h.length && (c.v.push(e),c.o.push(h));}c.g = b;!1 === c.f && (x.push(c),c.f = !0,!1 !== c.C.autoplay && c.play());return c;},_priv_list:function _priv_list(){return x.slice();},play:function play(){return x[0]?x[0].play():this;},pause:function pause(){return x[0]?x[0].pause():this;},time:function time(a){return x[0]?x[0].time(a):z(a)?this:null;}};})();document.ks = ks;(function(ks){ks.animate("#_svg_scoop_a0",[{p:'strokeDashoffset',t:[0,1000,1600],v:[428,0,0],e:[[1,0,0,0.58,1],[0],[0]]}],"#_svg_scoop_a1",[{p:'strokeDashoffset',t:[0,1000,1600],v:[477,0,0],e:[[1,0,0,0.58,1],[0],[0]]}],"#_svg_scoop_a2",[{p:'strokeDashoffset',t:[0,1000,1600],v:[127,0,0],e:[[1,0,0,0.58,1],[0],[0]]}],"#_svg_scoop_a3",[{p:'strokeDashoffset',t:[0,1000,1600],v:[106,0,0],e:[[1,0,0,0.58,1],[0],[0]]}],"#_svg_scoop_a4",[{p:'strokeDashoffset',t:[0,1000,1600],v:[106,0,0],e:[[1,0,0,0.58,1],[0],[0]]}],"#_svg_scoop_a5",[{p:10,t:[0,400,1400,1600],v:[0,0,1,1],e:[[0],[1,0,0,0.58,1],[0],[0]]},{p:11,t:[0,400,1400,1600],v:[0,0,1,1],e:[[0],[1,0,0,0.58,1],[0],[0]]}
488],"#_svg_scoop_a6",[{p:10,t:[0,600,1600],v:[0,0,1],e:[[0],[1,0,0,0.58,1],[0]]},{p:11,t:[0,600,1600],v:[0,0,1],e:[[0],[1,0,0,0.58,1],[0]]}],"#_svg_scoop_a7",[{p:'strokeDashoffset',t:[0,1000,1600],v:[64,0,0],e:[[1,0,0,0.58,1],[0],[0]]}],"#_svg_scoop_a8",[{p:'strokeDashoffset',t:[0,1000,1600],v:[89,0,0],e:[[1,0,0,0.58,1],[0],[0]]}],"#_svg_scoop_a9",[{p:10,t:[0,200,1200,1600],v:[0,0,1,1],e:[[0],[1,0,0,0.58,1],[0],[0]]},{p:11,t:[0,200,1200,1600],v:[0,0,1,1],e:[[0],[1,0,0,0.58,1],[0],[0]]}],"#_svg_scoop_a10",[{p:10,t:[0,300,1300,1600],v:[0,0,1,1],e:[[0],[1,0,0,0.58,1],[0],[0]]},{p:11,t:[0,300,1300,1600],v:[0,0,1,1],e:[[0],[1,0,0,0.58,1],[0],[0]]}],"#_svg_scoop_a11",[{p:'strokeDashoffset',t:[0,1000,1600],v:[74,0,0],e:[[1,0,0,0.58,1],[0],[0]]}],"#_svg_scoop_a12",[{p:'strokeDashoffset',t:[0,600,1200,1600],v:[14,14,0,0],e:[[0],[1,0,0,0.58,1],[0],[0]]}],"#_svg_scoop_a13",[{p:'strokeDashoffset',t:[0,400,1000,1600],v:[14,14,0,0],e:[[0],[1,0,0,0.58,1],[0],[0]]}],{autoplay:document.location.search.substr(1).split('&').indexOf('autoplay=false') < 0});})(ks);setTimeout(function(){can_svg_anime_scoop = true;},10000);break;case "_svg_milk":if(!can_svg_anime_milk){return;}can_svg_anime_milk = false;document.getElementById(id).style.opacity = 1;window.ks = (function(){function z(a){return "undefined" !== typeof a;}function v(a,b){return a && 0 == a.indexOf(b);}function N(a){if(!isFinite(a))throw "non-finite value";}function O(a){if(14 >= a)return 16;(a = X[a]) || (a = 0);return a;}function D(a){return 0 <= a?Math.pow(a,1 / 3):-Math.pow(-a,1 / 3);}function Y(a,b,c,d){if(0 == a)return 0 == b?b = -d / c:(a = Math.sqrt(c * c - 4 * b * d),d = (-c + a) / (2 * b),0 <= d && 1 >= d?b = d:(d = (-c - a) / (2 * b),b = 0 <= d && 1 >= d?d:0)),b;var e=c / a - b * b / (a * a) / 3;c = b * b * b / (a * a * a) / 13.5 - b * c / (a * a) / 3 + d / a;var k=c * c / 4 + e * e * e / 27;b = -b / (3 * a);if(0 >= k){if(0 == e && 0 == c)return -D(d / a);a = Math.sqrt(c * c / 4 - k);d = Math.acos(-c / 2 / a);c = Math.cos(d / 3);d = Math.sqrt(3) * Math.sin(d / 3);a = D(a);e = 2 * a * c + b;if(0 <= e && 1 >= e)return e;e = -a * (c + d) + b;if(0 <= e && 1 >= e)return e;e = a * (d - c) + b;if(0 <= e && 1 >= e)return e;}else {a = D(-c / 2 + Math.sqrt(k));c = D(-c / 2 - Math.sqrt(k));d = a + c + b;if(0 <= d && 1 >= d)return d;d = -(a + c) / 2 + b;if(0 <= d && 1 >= d)return d;}return 0;}function Z(a,b){if(48 == a && "number" === typeof b)return "#" + ("000000" + b.toString(16)).substr(-6);if(64 == a)return b = b.map(function(a){return a + "px";}),b.join(",");if(96 == a){a = "";for(var c=b.length,d=0;d < c;d += 2) a += b[d],a += b[d + 1].join(",");return a;}if(80 == a){if(0 == b[0])return "none";a = "";c = b.length;for(d = 0;d < c;) a += R[b[d]],1 == b[d]?a += "(" + b[d + 1] + ") ":5 == b[d]?(a += "(" + b[d + 1] + "px " + b[d + 2] + "px " + b[d + 3] + "px rgba(" + (b[d + 4] >>> 24) + "," + (b[d + 4] >> 16 & 255) + "," + (b[d + 4] >> 8 & 255) + "," + (b[d + 4] & 255) / 255 + ")) ",d += 3):a = 2 == b[d]?a + ("(" + b[d + 1] + "px) "):7 == b[d]?a + ("(" + b[d + 1] + "deg) "):a + ("(" + (0 > b[d + 1]?0:b[d + 1]) + ") "),d += 2;return a;}return 32 == a?b + "px":b;}function w(a){return 0 >= a?0:255 <= a?255:a;}function aa(a,b,c,d){if(16 == a || 32 == a)return (c - b) * d + b;if(0 == a)return .5 > d?b:c;if(48 == a){if("number" === typeof b && "number" === typeof c){var e=1 - d;return w(e * (b >> 16) + d * (c >> 16)) << 16 | w(e * (b >> 8 & 255) + d * (c >> 8 & 255)) << 8 | w(e * (b & 255) + d * (c & 255));}return .5 > d?b:c;}if(64 == a){0 == b.length && (b = [0]);0 == c.length && (c = [0]);var k=b.length;b.length != c.length && (k = b.length * c.length);var h=[];for(a = 0;a < k;++a) {var f=b[a % b.length];var g=(c[a % c.length] - f) * d + f;0 > g && (g = 0);h.push(g);}return h;}if(96 == a){if(b.length != c.length)return .5 > d?b:c;k = b.length;h = [];for(a = 0;a < k;a += 2) {if(b[a] !== c[a])return .5 > d?b:c;h[a] = b[a];h[a + 1] = [];for(f = 0;f < b[a + 1].length;++f) h[a + 1].push((c[a + 1][f] - b[a + 1][f]) * d + b[a + 1][f]);}return h;}if(80 == a){k = b.length;if(k != c.length)return .5 > d?b:c;h = [];for(a = 0;a < k;) {if(b[a] != c[a] || 1 == b[a])return .5 > d?b:c;h[a] = b[a];h[a + 1] = (c[a + 1] - b[a + 1]) * d + b[a + 1];if(5 == b[a]){h[a + 2] = (c[a + 2] - b[a + 2]) * d + b[a + 2];h[a + 3] = (c[a + 3] - b[a + 3]) * d + b[a + 3];e = 1 - d;var l=b[a + 4],q=c[a + 4];g = e * (l >>> 24) + d * (q >>> 24);var n=e * (l >> 16 & 255) + d * (q >> 16 & 255);f = e * (l >> 8 & 255) + d * (q >> 8 & 255);h[a + 4] = (w(n) << 16 | w(f) << 8 | w(e * (l & 255) + d * (q & 255))) + 16777216 * (w(g) | 0);a += 3;}a += 2;}return h;}return 0;}function S(a,b){a: {var c=a + b[2];var d=b[4].length;for(var e=0;e < d;++e) if(c < b[4][e]){c = e;break a;}c = d - 1;}d = b[2];e = b[4][c - 1] - d;a = (a - e) / (b[4][c] - d - e);if(b[6] && b[6].length > c - 1)if((d = b[6][c - 1],1 == d[0]))if(0 >= a)a = 0;else if(1 <= a)a = 1;else {e = d[1];var k=d[3];a = Y(3 * e - 3 * k + 1,-6 * e + 3 * k,3 * e,-a);a = 3 * a * (1 - a) * (1 - a) * d[2] + 3 * a * a * (1 - a) * d[4] + a * a * a;}else 2 == d[0]?(d = d[1],a = Math.ceil(a * d) / d):3 == d[0] && (d = d[1],a = Math.floor(a * d) / d);return aa(b[1] & 240,b[5][c - 1],b[5][c],a);}function P(){A = new Date().getTime();}function J(a){for(var b=!1,c=0;c < x.length;++c) x[c].F(a) && (b = !0);a && x.forEach(function(a){a.l && (a.l = !1,a.onfinish && (a.onfinish(),b = !0));});return b;}function T(){P();J(!0)?(K = !0,L(T)):K = !1;}function Q(){K || (K = !0,L(T));}function U(a,b){var c=[];a.split(b).forEach(function(a){c.push(parseFloat(a));});return c;}function t(a){-1 == a.indexOf(",") && (a = a.replace(" ",","));return U(a,",");}function V(a){a._ks || (a._ks = {H:M},++M);if(!a._ks.transform){for(var b=a._ks.transform = [],c=0;14 >= c;++c) b[c] = 0;b[10] = 1;b[11] = 1;if(c = a.getAttribute("transform")){for(c = c.trim().split(") ");0 < a._ks.w;) c.shift(),--a._ks.w;a = c.shift();v(a,"translate(") && (a = t(a.substring(10)),b[1] = a[0],b[2] = z(a[1])?a[1]:0,a = c.shift());v(a,"rotate(") && (a = t(a.substring(7)),b[6] = a[0],a = c.shift());v(a,"skewX(") && (a = t(a.substring(6)),b[7] = a[0],a = c.shift());v(a,"skewY(") && (a = t(a.substring(6)),b[8] = a[0],a = c.shift());v(a,"scale(") && (a = t(a.substring(6)),b[10] = a[0],b[11] = z(a[1])?a[1]:0,a = c.shift());v(a,"translate(") && (a = t(a.substring(10)),b[13] = a[0],b[14] = z(a[1])?a[1]:0);}}}function W(a){this.C = a;this.v = [];this.o = [];this.g = 0;this.i = this.a = this.b = null;this.f = this.A = this.l = this.h = !1;}function G(a,b,c){b = a[b];void 0 === b && (b = a[c]);return b;}function ba(a){return Array.isArray(a)?a:v(a,"cubic-bezier(")?(a = a.substring(13,a.length - 1).split(","),[1,parseFloat(a[0]),parseFloat(a[1]),parseFloat(a[2]),parseFloat(a[3])]):v(a,"steps(")?(a = a.substring(6,a.length - 1).split(","),[a[1] && "start" == a[1].trim()?2:3,parseFloat(a[0])]):[0];}function ca(a){a = a.trim();return v(a,"#")?(parseInt(a.substring(1),16) << 8) + 255:v(a,"rgba(")?(a = a.substring(5,a.length - 1),a = a.split(","),(parseInt(a[0],10) << 24) + (parseInt(a[1],10) << 16) + (parseInt(a[2],10) << 8) + 255 * parseFloat(a[3]) << 0):a;}var da=" translate translate    rotate skewX skewY  scale scale  translate translate".split(" "),R="none url blur brightness contrast drop-shadow grayscale hue-rotate invert opacity saturate sepia".split(" "),L=window.requestAnimationFrame || window.webkitRequestAnimationFrame || window.mozRequestAnimationFrame || window.oRequestAnimationFrame || window.msRequestAnimationFrame || null;L || (L = function(a){window.setTimeout(a,16);});var M=0,X={d:97,fill:48,fillOpacity:16,filter:80,height:33,opacity:16,stroke:48,strokeDasharray:64,strokeDashoffset:32,strokeOpacity:16,strokeWidth:32,transform:1,width:33},K=!1,A=new Date().getTime(),x=[];W.prototype = {j:function j(a){var b=!1;if(null !== this.b){var c=this.c();null !== c && c >= this.g?(b = !0,a?this.a = c:this.a = this.i?Math.max(this.i,this.g):this.g):null !== c && (a && null !== this.a && (this.b = A - this.a / 1),this.a = null);}this.i = this.c();return b;},F:function F(a){a && (this.h && (this.h = !1,null === this.b && (null !== this.a?(this.b = A - this.a / 1,this.a = null):this.b = A)),null === this.a && null !== this.b && this.j(!1) && (this.l = !0));a = this.c();if(null === a)return !1;for(var b=this.v,c=this.o,d=0;d < b.length;++d) {for(var e=b[d],k=!1,h=0;h < c[d].length;++h) {var f=c[d][h],g=f[0];if(null !== g){var l=f[2];var q=f[4].length,n=f[4][q - 1] - l;l = 0 == n?f[5][q - 1]:a <= l?f[5][0]:a >= l + f[3]?0 == f[3] % n?f[5][q - 1]:S(f[3] % n,f):S((a - l) % n,f);0 == g?(e._ks.mpath = f[8],e._ks.transform[g] = l,k = !0):14 >
488= g?(e._ks.transform[g] = l,k = !0):(l = Z(f[1] & 240,l),f[1] & 1?e.setAttribute(g,l):e.style[g] = l);}}if(k){V(e);k = e._ks.transform;h = "";if(f = e._ks.mpath)l = k[0] * f[2] / 100,g = f[1].getPointAtLength(l),h = "translate(" + g.x + "," + g.y + ") ",f[0] && (.5 > l?(l = g,g = f[1].getPointAtLength(.5)):l = f[1].getPointAtLength(l - .5),h += "rotate(" + 180 * Math.atan2(g.y - l.y,g.x - l.x) / Math.PI + ") ");for(f = 1;f < k.length;++f) g = k[f],g != (10 == f || 11 == f?1:0) && (h += " " + da[f] + "(",h = 2 >= f?h + (1 == f?g + ",0":"0," + g):13 <= f?h + (13 == f?g + ",0":"0," + g):10 <= f?h + (10 == f?g + ",1":"1," + g):h + g,h += ")");e.setAttribute("transform",h);}}return "running" == this.B();},s:function s(){if(!this.A){this.A = !0;for(var a=this.v,b=this.o,c=0;c < a.length;++c) for(var d=a[c],e=!1,k=0;k < b[c].length;++k) {var h=b[c][k][0];14 >= h?d._ks.G || (V(d),d._ks.G = d._ks.transform.slice()):(d._ks.m || (d._ks.m = {}),z(d._ks.m[h]) || (e || (e = getComputedStyle(d)),d._ks.m[h] = O(h) & 1?d.getAttribute(h):e[h]));}}},play:function play(a){z(a) && this.u(a,!0);if(!this.f)return this;a = this.c();if(null === a || 0 > a || a >= this.g)this.a = 0;if(null === this.a)return this;this.b = null;this.h = !0;this.s();Q();return this;},pause:function pause(a){z(a) && this.u(a,!0);if(!this.f || "paused" == this.B())return this;z(a) || P();a = this.c();null === a && (this.a = 0);null !== this.b && null === this.a && (this.a = a);this.b = null;this.h = !1;this.j(!1);this.s();J(!1);return this;},c:function c(){return null !== this.a?this.a:null === this.b?null:1 * (A - this.b);},u:function u(a,b){N(a);b && P();null !== a && (this.s(),null !== this.a || null === this.b?(this.a = a,J(!1)):this.b = A - a / 1,this.f || (this.b = null),this.i = null,this.j(!0),Q());},I:function I(){return this.c();},time:function time(a){return z(a)?(this.f && this.u(a,!0),this):this.I();},startTime:function startTime(a){if(z(a)){N(a);if(!this.f)return this;this.i = this.c();this.b = a;null !== a?this.a = null:this.a = this.i;this.h = !1;this.j(!0);J(!1);Q();return this;}return this.D?this.D[0].startTime:this.b;},B:function B(){var a=this.c();return this.h?"running":null === a?"idle":null === this.b?"paused":a >= this.g?"finished":"running";}};return {setmptr:function setmptr(a){for(var b in a) {var c=document.getElementById(b);c._ks || (c._ks = {});c._ks.w = a[b];}},animate:function animate(){if(0 < x.length)throw "data already set";var a={};if(1 == arguments.length % 2){a = arguments[arguments.length - 1];var b={};for(c in a) b[c] = a[c];a = b;}var c=new W(a);a = arguments;for(var d=b = 0;d < a.length - 1;d += 2) {var e=a[d];var k=e instanceof Element?e:document.getElementById(e.substring(1));if(!k)throw "invalid target: " + e;e = k;k = a[d + 1];e._ks || (e._ks = {H:M},++M);for(var h=[],f=0;f < k.length;++f) {var g=k[f],l=G(g,"p","property");14 >= l || -1 == l.indexOf("-") || (l = null);var q=O(l);q || (q = 0);var n=G(g,"t","times");if(!n || 2 > n.length)throw "not enough times";n = n.slice();if(!isFinite(n[0]) || 0 > n[0])throw "bad time: " + n[0];for(var y=1;y < n.length;++y) if(!isFinite(n[y]) || 0 > n[y] || n[y] < n[y - 1])throw "bad time: " + n[y];y = n[0];var w=n[n.length - 1] - y,A=g.iterations || 0;1 > A && (A = 1);w *= A;b < w + y && (b = w + y);var t=G(g,"v","values");if(!t || t.length != n.length)throw "values don't match times";t = t.slice();for(var B=l,m=t,H=O(B) & 240,p=0;p < m.length;++p) if(96 == H){for(var F=m[p].substring(6,m[p].length - 2).match(/[A-DF-Za-df-z][-+0-9eE., ]*/ig),I=[],r=0;r < F.length;++r) {I.push(F[r][0]);for(var u=1 < F[r].trim().length?F[r].substring(1).split(","):[],E=0;E < u.length;++E) u[E] = parseFloat(u[E]);I.push(u);}m[p] = I;}else if(48 == H)v(m[p],"#")?m[p] = parseInt(m[p].substring(1),16):v(m[p],"url(") || "none" == m[p] || (console.warn("unsupported color: " + m[p]),m[p] = 0);else if(80 == H){F = m;I = p;r = m[p];if("none" == r)r = [0];else {u = [];for(var C=r.indexOf("(");0 < C;) if((E = R.indexOf(r.substring(0,C)),0 <= E)){u.push(E);var D=r.indexOf(") ");0 > D && (D = r.length - 1);C = r.substring(C + 1,D).split(" ");5 == E?(u.push(parseFloat(C[0])),u.push(parseFloat(C[1])),u.push(parseFloat(C[2])),u.push(ca(C[3]))):1 == E?u.push(C[0]):u.push(parseFloat(C[0]));r = r.substring(D + 1).trim();C = r.indexOf("(");}else break;r = u;}F[I] = r;}else 64 == H?"none" != m[p]?/^[0-9 .]*$/.test(m[p])?m[p] = U(m[p]," "):(console.warn("unsupported value: " + m[p]),m[p] = [0]):m[p] = [0]:32 == H?(N(m[p]),m[p] = parseFloat(m[p])):0 === B && (m[p] = parseFloat(m[p]));
488B = G(g,"e","easing");m = n.length;for(B || (B = []);B.length < m;) B.push([1,0,0,.58,1]);for(m = 0;m < B.length;++m) B[m] = ba(B[m]);q = [l,q,y,w,n,t,B,A];n = G(g,"m","motionPath");z(n) && 0 === l && (q[8] = [],q[8][0] = g.motionRotate,g = document.createElementNS("http://www.w3.org/2000/svg","path"),n || (n = "M0,0"),g.setAttribute("d",n),q[8][1] = g,q[8][2] = g.getTotalLength());h.push(q);}0 < h.length && (c.v.push(e),c.o.push(h));}c.g = b;!1 === c.f && (x.push(c),c.f = !0,!1 !== c.C.autoplay && c.play());return c;},_priv_list:function _priv_list(){return x.slice();},play:function play(){return x[0]?x[0].play():this;},pause:function pause(){return x[0]?x[0].pause():this;},time:function time(a){return x[0]?x[0].time(a):z(a)?this:null;}};})();document.ks = ks;(function(ks){ks.animate("#_svg_milk_a0",[{p:'strokeDashoffset',t:[0,1000,2000],v:[320,0,0],e:[[1,0,0,0.343424,1],[0],[0]]}],"#_svg_milk_a1",[{p:'strokeDashoffset',t:[0,1000,2000],v:[418,0,0],e:[[1,0,0,0.58,1],[0],[0]]}],"#_svg_milk_a2",[{p:'strokeDashoffset',t:[0,2000],v:[933,0],e:[[1,0,0,0.257552,1],[0]]}],{autoplay:document.location.search.substr(1).split('&').indexOf('autoplay=false') < 0});})(ks);setTimeout(function(){can_svg_anime_milk = true;},10000);break;case "_svg_spoon":if(!can_svg_anime_svg_spoon){return;}can_svg_anime_svg_spoon = false;document.getElementById(id).style.opacity = 1;window.ks = (function(){function z(a){return "undefined" !== typeof a;}function v(a,b){return a && 0 == a.indexOf(b);}function N(a){if(!isFinite(a))throw "non-finite value";}function O(a){if(14 >= a)return 16;(a = X[a]) || (a = 0);return a;}function D(a){return 0 <= a?Math.pow(a,1 / 3):-Math.pow(-a,1 / 3);}function Y(a,b,c,d){if(0 == a)return 0 == b?b = -d / c:(a = Math.sqrt(c * c - 4 * b * d),d = (-c + a) / (2 * b),0 <= d && 1 >= d?b = d:(d = (-c - a) / (2 * b),b = 0 <= d && 1 >= d?d:0)),b;var e=c / a - b * b / (a * a) / 3;c = b * b * b / (a * a * a) / 13.5 - b * c / (a * a) / 3 + d / a;var k=c * c / 4 + e * e * e / 27;b = -b / (3 * a);if(0 >= k){if(0 == e && 0 == c)return -D(d / a);a = Math.sqrt(c * c / 4 - k);d = Math.acos(-c / 2 / a);c = Math.cos(d / 3);d = Math.sqrt(3) * Math.sin(d / 3);a = D(a);e = 2 * a * c + b;if(0 <= e && 1 >= e)return e;e = -a * (c + d) + b;if(0 <= e && 1 >= e)return e;e = a * (d - c) + b;if(0 <= e && 1 >= e)return e;}else {a = D(-c / 2 + Math.sqrt(k));c = D(-c / 2 - Math.sqrt(k));d = a + c + b;if(0 <= d && 1 >= d)return d;d = -(a + c) / 2 + b;if(0 <= d && 1 >= d)return d;}return 0;}function Z(a,b){if(48 == a && "number" === typeof b)return "#" + ("000000" + b.toString(16)).substr(-6);if(64 == a)return b = b.map(function(a){return a + "px";}),b.join(",");if(96 == a){a = "";for(var c=b.length,d=0;d < c;d += 2) a += b[d],a += b[d + 1].join(",");return a;}if(80 == a){if(0 == b[0])return "none";a = "";c = b.length;for(d = 0;d < c;) a += R[b[d]],1 == b[d]?a += "(" + b[d + 1] + ") ":5 == b[d]?(a += "(" + b[d + 1] + "px " + b[d + 2] + "px " + b[d + 3] + "px rgba(" + (b[d + 4] >>> 24) + "," + (b[d + 4] >> 16 & 255) + "," + (b[d + 4] >> 8 & 255) + "," + (b[d + 4] & 255) / 255 + ")) ",d += 3):a = 2 == b[d]?a + ("(" + b[d + 1] + "px) "):7 == b[d]?a + ("(" + b[d + 1] + "deg) "):a + ("(" + (0 > b[d + 1]?0:b[d + 1]) + ") "),d += 2;return a;}return 32 == a?b + "px":b;}function w(a){return 0 >= a?0:255 <= a?255:a;}function aa(a,b,c,d){if(16 == a || 32 == a)return (c - b) * d + b;if(0 == a)return .5 > d?b:c;if(48 == a){if("number" === typeof b && "number" === typeof c){var e=1 - d;return w(e * (b >> 16) + d * (c >> 16)) << 16 | w(e * (b >> 8 & 255) + d * (c >> 8 & 255)) << 8 | w(e * (b & 255) + d * (c & 255));}return .5 > d?b:c;}if(64 == a){0 == b.length && (b = [0]);0 == c.length && (c = [0]);var k=b.length;b.length != c.length && (k = b.length * c.length);var h=[];for(a = 0;a < k;++a) {var f=b[a % b.length];var g=(c[a % c.length] - f) * d + f;0 > g && (g = 0);h.push(g);}return h;}if(96 == a){if(b.length != c.length)return .5 > d?b:c;k = b.length;h = [];for(a = 0;a < k;a += 2) {if(b[a] !== c[a])return .5 > d?b:c;h[a] = b[a];h[a + 1] = [];for(f = 0;f < b[a + 1].length;++f) h[a + 1].push((c[a + 1][f] - b[a + 1][f]) * d + b[a + 1][f]);}return h;}if(80 == a){k = b.length;if(k != c.length)return .5 > d?b:c;h = [];for(a = 0;a < k;) {if(b[a] != c[a] || 1 == b[a])return .5 > d?b:c;h[a] = b[a];h[a + 1] = (c[a + 1] - b[a + 1]) * d + b[a + 1];if(5 == b[a]){h[a + 2] = (c[a + 2] - b[a + 2]) * d + b[a + 2];h[a + 3] = (c[a + 3] - b[a + 3]) * d + b[a + 3];e = 1 - d;var l=b[a + 4],q=c[a + 4];g = e * (l >>> 24) + d * (q >>> 24);var n=e * (l >> 16 & 255) + d * (q >> 16 & 255);f = e * (l >> 8 & 255) + d * (q >> 8 & 255);h[a + 4] = (w(n) << 16 | w(f) << 8 | w(e * (l & 255) + d * (q & 255))) + 16777216 * (w(g) | 0);a += 3;}a += 2;}return h;}return 0;}function S(a,b){a: {var c=a + b[2];var d=b[4].length;for(var e=0;e < d;++e) if(c < b[4][e]){c = e;break a;}c = d - 1;}d = b[2];e = b[4][c - 1] - d;a = (a - e) / (b[4][c] - d - e);if(b[6] && b[6].length > c - 1)if((d = b[6][c - 1],1 == d[0]))if(0 >= a)a = 0;else if(1 <= a)a = 1;else {e = d[1];var k=d[3];a = Y(3 * e - 3 * k + 1,-6 * e + 3 * k,3 * e,-a);a = 3 * a * (1 - a) * (1 - a) * d[2] + 3 * a * a * (1 - a) * d[4] + a * a * a;}else 2 == d[0]?(d = d[1],a = Math.ceil(a * d) / d):3 == d[0] && (d = d[1],a = Math.floor(a * d) / d);return aa(b[1] & 240,b[5][c - 1],b[5][c],a);}function P(){A = new Date().getTime();}function J(a){for(var b=!1,c=0;c < x.length;++c) x[c].F(a) && (b = !0);a && x.forEach(function(a){a.l && (a.l = !1,a.onfinish && (a.onfinish(),b = !0));});return b;}function T(){P();J(!0)?(K = !0,L(T)):K = !1;}function Q(){K || (K = !0,L(T));}function U(a,b){var c=[];a.split(b).forEach(function(a){c.push(parseFloat(a));});return c;}function t(a){-1 == a.indexOf(",") && (a = a.replace(" ",","));return U(a,",");}function V(a){a._ks || (a._ks = {H:M},++M);if(!a._ks.transform){for(var b=a._ks.transform = [],c=0;14 >= c;++c) b[c] = 0;b[10] = 1;b[11] = 1;if(c = a.getAttribute("transform")){for(c = c.trim().split(") ");0 < a._ks.w;) c.shift(),--a._ks.w;a = c.shift();v(a,"translate(") && (a = t(a.substring(10)),b[1] = a[0],b[2] = z(a[1])?a[1]:0,a = c.shift());v(a,"rotate(") && (a = t(a.substring(7)),b[6] = a[0],a = c.shift());v(a,"skewX(") && (a = t(a.substring(6)),b[7] = a[0],a = c.shift());v(a,"skewY(") && (a = t(a.substring(6)),b[8] = a[0],a = c.shift());v(a,"scale(") && (a = t(a.substring(6)),b[10] = a[0],b[11] = z(a[1])?a[1]:0,a = c.shift());v(a,"translate(") && (a = t(a.substring(10)),b[13] = a[0],b[14] = z(a[1])?a[1]:0);}}}function W(a){this.C = a;this.v = [];this.o = [];this.g = 0;this.i = this.a = this.b = null;this.f = this.A = this.l = this.h = !1;}function G(a,b,c){b = a[b];void 0 === b && (b = a[c]);return b;}function ba(a){return Array.isArray(a)?a:v(a,"cubic-bezier(")?(a = a.substring(13,a.length - 1).split(","),[1,parseFloat(a[0]),parseFloat(a[1]),parseFloat(a[2]),parseFloat(a[3])]):v(a,"steps(")?(a = a.substring(6,a.length - 1).split(","),[a[1] && "start" == a[1].trim()?2:3,parseFloat(a[0])]):[0];}function ca(a){a = a.trim();return v(a,"#")?(parseInt(a.substring(1),16) << 8) + 255:v(a,"rgba(")?(a = a.substring(5,a.length - 1),a = a.split(","),(parseInt(a[0],10) << 24) + (parseInt(a[1],10) << 16) + (parseInt(a[2],10) << 8) + 255 * parseFloat(a[3]) << 0):a;}var da=" translate translate    rotate skewX skewY  scale scale  translate translate".split(" "),R="none url blur brightness contrast drop-shadow grayscale hue-rotate invert opacity saturate sepia".split(" "),L=window.requestAnimationFrame || window.webkitRequestAnimationFrame || window.mozRequestAnimationFrame || window.oRequestAnimationFrame || window.msRequestAnimationFrame || null;L || (L = function(a){window.setTimeout(a,16);});var M=0,X={d:97,fill:48,fillOpacity:16,filter:80,height:33,opacity:16,stroke:48,strokeDasharray:64,strokeDashoffset:32,strokeOpacity:16,strokeWidth:32,transform:1,width:33},K=!1,A=new Date().getTime(),x=[];W.prototype = {j:function j(a){var b=!1;if(null !== this.b){var c=this.c();null !== c && c >= this.g?(b = !0,a?this.a = c:this.a = this.i?Math.max(this.i,this.g):this.g):null !== c && (a && null !== this.a && (this.b = A - this.a / 1),this.a = null);}this.i = this.c();return b;},F:function F(a){a && (this.h && (this.h = !1,null === this.b && (null !== this.a?(this.b = A - this.a / 1,this.a = null):this.b = A)),null === this.a && null !== this.b && this.j(!1) && (this.l = !0));a = this.c();if(null === a)return !1;for(var b=this.v,c=this.o,d=0;d < b.length;++d) {for(var e=b[d],k=!1,h=0;h < c[d].length;++h) {var f=c[d][h],g=f[0];if(null !== g){var l=f[2];var q=f[4].length,n=f[4][q - 1] - l;l = 0 == n?f[5][q - 1]:a <= l?f[5][0]:a >= l + f[3]?0 == f[3] % n?f[5][q - 1]:S(f[3] % n,f):S((a - l) % n,f);0 == g?(e._ks.mpath = f[8],e._ks.transform[g] = l,k = !0):14 >
488= g?(e._ks.transform[g] = l,k = !0):(l = Z(f[1] & 240,l),f[1] & 1?e.setAttribute(g,l):e.style[g] = l);}}if(k){V(e);k = e._ks.transform;h = "";if(f = e._ks.mpath)l = k[0] * f[2] / 100,g = f[1].getPointAtLength(l),h = "translate(" + g.x + "," + g.y + ") ",f[0] && (.5 > l?(l = g,g = f[1].getPointAtLength(.5)):l = f[1].getPointAtLength(l - .5),h += "rotate(" + 180 * Math.atan2(g.y - l.y,g.x - l.x) / Math.PI + ") ");for(f = 1;f < k.length;++f) g = k[f],g != (10 == f || 11 == f?1:0) && (h += " " + da[f] + "(",h = 2 >= f?h + (1 == f?g + ",0":"0," + g):13 <= f?h + (13 == f?g + ",0":"0," + g):10 <= f?h + (10 == f?g + ",1":"1," + g):h + g,h += ")");e.setAttribute("transform",h);}}return "running" == this.B();},s:function s(){if(!this.A){this.A = !0;for(var a=this.v,b=this.o,c=0;c < a.length;++c) for(var d=a[c],e=!1,k=0;k < b[c].length;++k) {var h=b[c][k][0];14 >= h?d._ks.G || (V(d),d._ks.G = d._ks.transform.slice()):(d._ks.m || (d._ks.m = {}),z(d._ks.m[h]) || (e || (e = getComputedStyle(d)),d._ks.m[h] = O(h) & 1?d.getAttribute(h):e[h]));}}},play:function play(a){z(a) && this.u(a,!0);if(!this.f)return this;a = this.c();if(null === a || 0 > a || a >= this.g)this.a = 0;if(null === this.a)return this;this.b = null;this.h = !0;this.s();Q();return this;},pause:function pause(a){z(a) && this.u(a,!0);if(!this.f || "paused" == this.B())return this;z(a) || P();a = this.c();null === a && (this.a = 0);null !== this.b && null === this.a && (this.a = a);this.b = null;this.h = !1;this.j(!1);this.s();J(!1);return this;},c:function c(){return null !== this.a?this.a:null === this.b?null:1 * (A - this.b);},u:function u(a,b){N(a);b && P();null !== a && (this.s(),null !== this.a || null === this.b?(this.a = a,J(!1)):this.b = A - a / 1,this.f || (this.b = null),this.i = null,this.j(!0),Q());},I:function I(){return this.c();},time:function time(a){return z(a)?(this.f && this.u(a,!0),this):this.I();},startTime:function startTime(a){if(z(a)){N(a);if(!this.f)return this;this.i = this.c();this.b = a;null !== a?this.a = null:this.a = this.i;this.h = !1;this.j(!0);J(!1);Q();return this;}return this.D?this.D[0].startTime:this.b;},B:function B(){var a=this.c();return this.h?"running":null === a?"idle":null === this.b?"paused":a >= this.g?"finished":"running";}};return {setmptr:function setmptr(a){for(var b in a) {var c=document.getElementById(b);c._ks || (c._ks = {});c._ks.w = a[b];}},animate:function animate(){if(0 < x.length)throw "data already set";var a={};if(1 == arguments.length % 2){a = arguments[arguments.length - 1];var b={};for(c in a) b[c] = a[c];a = b;}var c=new W(a);a = arguments;for(var d=b = 0;d < a.length - 1;d += 2) {var e=a[d];var k=e instanceof Element?e:document.getElementById(e.substring(1));if(!k)throw "invalid target: " + e;e = k;k = a[d + 1];e._ks || (e._ks = {H:M},++M);for(var h=[],f=0;f < k.length;++f) {var g=k[f],l=G(g,"p","property");14 >= l || -1 == l.indexOf("-") || (l = null);var q=O(l);q || (q = 0);var n=G(g,"t","times");if(!n || 2 > n.length)throw "not enough times";n = n.slice();if(!isFinite(n[0]) || 0 > n[0])throw "bad time: " + n[0];for(var y=1;y < n.length;++y) if(!isFinite(n[y]) || 0 > n[y] || n[y] < n[y - 1])throw "bad time: " + n[y];y = n[0];var w=n[n.length - 1] - y,A=g.iterations || 0;1 > A && (A = 1);w *= A;b < w + y && (b = w + y);var t=G(g,"v","values");if(!t || t.length != n.length)throw "values don't match times";t = t.slice();for(var B=l,m=t,H=O(B) & 240,p=0;p < m.length;++p) if(96 == H){for(var F=m[p].substring(6,m[p].length - 2).match(/[A-DF-Za-df-z][-+0-9eE., ]*/ig),I=[],r=0;r < F.length;++r) {I.push(F[r][0]);for(var u=1 < F[r].trim().length?F[r].substring(1).split(","):[],E=0;E < u.length;++E) u[E] = parseFloat(u[E]);I.push(u);}m[p] = I;}else if(48 == H)v(m[p],"#")?m[p] = parseInt(m[p].substring(1),16):v(m[p],"url(") || "none" == m[p] || (console.warn("unsupported color: " + m[p]),m[p] = 0);else if(80 == H){F = m;I = p;r = m[p];if("none" == r)r = [0];else {u = [];for(var C=r.indexOf("(");0 < C;) if((E = R.indexOf(r.substring(0,C)),0 <= E)){u.push(E);var D=r.indexOf(") ");0 > D && (D = r.length - 1);C = r.substring(C + 1,D).split(" ");5 == E?(u.push(parseFloat(C[0])),u.push(parseFloat(C[1])),u.push(parseFloat(C[2])),u.push(ca(C[3]))):1 == E?u.push(C[0]):u.push(parseFloat(C[0]));r = r.substring(D + 1).trim();C = r.indexOf("(");}else break;r = u;}F[I] = r;}else 64 == H?"none" != m[p]?/^[0-9 .]*$/.test(m[p])?m[p] = U(m[p]," "):(console.warn("unsupported value: " + m[p]),m[p] = [0]):m[p] = [0]:32 == H?(N(m[p]),m[p] = parseFloat(m[p])):0 === B && (m[p] = parseFloat(m[p]));
488B = G(g,"e","easing");m = n.length;for(B || (B = []);B.length < m;) B.push([1,0,0,.58,1]);for(m = 0;m < B.length;++m) B[m] = ba(B[m]);q = [l,q,y,w,n,t,B,A];n = G(g,"m","motionPath");z(n) && 0 === l && (q[8] = [],q[8][0] = g.motionRotate,g = document.createElementNS("http://www.w3.org/2000/svg","path"),n || (n = "M0,0"),g.setAttribute("d",n),q[8][1] = g,q[8][2] = g.getTotalLength());h.push(q);}0 < h.length && (c.v.push(e),c.o.push(h));}c.g = b;!1 === c.f && (x.push(c),c.f = !0,!1 !== c.C.autoplay && c.play());return c;},_priv_list:function _priv_list(){return x.slice();},play:function play(){return x[0]?x[0].play():this;},pause:function pause(){return x[0]?x[0].pause():this;},time:function time(a){return x[0]?x[0].time(a):z(a)?this:null;}};})();document.ks = ks;(function(ks){ks.animate("#_svg_spoon_a0",[{p:'strokeDashoffset',t:[0,2000],v:[828,0],e:[[1,0,0,0.58,1],[0]]}],"#_svg_spoon_a1",[{p:'strokeDashoffset',t:[0,600,1600,2000],v:[53,53,0,0],e:[[0],[1,0,0,0.58,1],[0],[0]]}],{autoplay:document.location.search.substr(1).split('&').indexOf('autoplay=false') < 0});})(ks);setTimeout(function(){can_svg_anime_svg_spoon = true;},10000);break;}};};if(document.readyState !== 'loading'){icongraphs();}else {document.addEventListener?addEvent(document,'DOMContentLoaded',icongraphs):addEvent(window,'load',icongraphs);}})();

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.