!function(shared,scope,testing){function makePropertySpecificKeyframeGroups(keyframes){for(var propertySpecificKeyframeGroups={},i=0;i=fraction&&0==interpolation.startTime||fraction>=1&&1==interpolation.endTime||fraction>=interpolation.startTime&&fraction<=interpolation.endTime}).forEach(function(interpolation){var offsetFraction=fraction-interpolation.startTime,localDuration=interpolation.endTime-interpolation.startTime,scaledLocalTime=0==localDuration?0:interpolation.easing(offsetFraction/localDuration);scope.apply(target,interpolation.property,interpolation.interpolation(scaledLocalTime))});else for(var property in propertySpecificKeyframeGroups)"offset"!=property&&"easing"!=property&&"composite"!=property&&scope.clear(target,property)}}}(webAnimationsShared,webAnimations1,webAnimationsTesting),function(scope,testing){function addPropertyHandler(parser,merger,property){propertyHandlers[property]=propertyHandlers[property]||[],propertyHandlers[property].push([parser,merger])}function addPropertiesHandler(parser,merger,properties){for(var i=0;ithis._surrogateStyle.length;)this._length--,Object.defineProperty(this,this._length,{configurable:!0,enumerable:!1,value:void 0})},_set:function(property,value){this._style[property]=value,this._isAnimatedProperty[property]=!0},_clear:function(property){this._style[property]=this._surrogateStyle[property],delete this._isAnimatedProperty[property]}};for(var method in styleMethods)AnimatedCSSStyleDeclaration.prototype[method]=function(method,modifiesStyle){return function(){var result=this._surrogateStyle[method].apply(this._surrogateStyle,arguments);return modifiesStyle&&(this._isAnimatedProperty[arguments[0]]||this._style[method].apply(this._style,arguments),this._updateIndices()),result}}(method,method in styleMutatingMethods);for(var property in document.documentElement.style)property in styleAttributes||property in styleMethods||!function(property){configureProperty(AnimatedCSSStyleDeclaration.prototype,property,{get:function(){return this._surrogateStyle[property]},set:function(value){this._surrogateStyle[property]=value,this._updateIndices(),this._isAnimatedProperty[property]||(this._style[property]=value)}})}(property);scope.apply=function(element,property,value){ensureStyleIsPatched(element),element.style._set(scope.propertyName(property),value)},scope.clear=function(element,property){element._webAnimationsPatchedStyle&&element.style._clear(scope.propertyName(property))}}(webAnimations1,webAnimationsTesting),function(scope){window.Element.prototype.animate=function(effectInput,timingInput){return scope.timeline._play(scope.KeyframeEffect(this,effectInput,timingInput))}}(webAnimations1),function(scope,testing){function interpolate(from,to,f){if("number"==typeof from&&"number"==typeof to)return from*(1-f)+to*f;if("boolean"==typeof from&&"boolean"==typeof to)return.5>f?from:to;if(from.length==to.length){for(var r=[],i=0;ii;i++)quat.push(fromQ[i]*(Math.cos(f*theta)-product*w)+toQ[i]*w);return quat}var composeMatrix=function(){function multiply(a,b){for(var result=[[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0]],i=0;4>i;i++)for(var j=0;4>j;j++)for(var k=0;4>k;k++)result[i][j]+=b[i][k]*a[k][j];return result}function is2D(m){return 0==m[0][2]&&0==m[0][3]&&0==m[1][2]&&0==m[1][3]&&0==m[2][0]&&0==m[2][1]&&1==m[2][2]&&0==m[2][3]&&0==m[3][2]&&1==m[3][3]}function composeMatrix(translate,scale,skew,quat,perspective){for(var matrix=[[1,0,0,0],[0,1,0,0],[0,0,1,0],[0,0,0,1]],i=0;4>i;i++)matrix[i][3]=perspective[i];for(var i=0;3>i;i++)for(var j=0;3>j;j++)matrix[3][i]+=translate[j]*matrix[j][i];var x=quat[0],y=quat[1],z=quat[2],w=quat[3],rotMatrix=[[1,0,0,0],[0,1,0,0],[0,0,1,0],[0,0,0,1]];rotMatrix[0][0]=1-2*(y*y+z*z),rotMatrix[0][1]=2*(x*y-z*w),rotMatrix[0][2]=2*(x*z+y*w),rotMatrix[1][0]=2*(x*y+z*w),rotMatrix[1][1]=1-2*(x*x+z*z),rotMatrix[1][2]=2*(y*z-x*w),rotMatrix[2][0]=2*(x*z-y*w),rotMatrix[2][1]=2*(y*z+x*w),rotMatrix[2][2]=1-2*(x*x+y*y),matrix=multiply(matrix,rotMatrix);var temp=[[1,0,0,0],[0,1,0,0],[0,0,1,0],[0,0,0,1]];skew[2]&&(temp[2][1]=skew[2],matrix=multiply(matrix,temp)),skew[1]&&(temp[2][1]=0,temp[2][0]=skew[0],matrix=multiply(matrix,temp)),skew[0]&&(temp[2][0]=0,temp[1][0]=skew[0],matrix=multiply(matrix,temp));for(var i=0;3>i;i++)for(var j=0;3>j;j++)matrix[i][j]*=scale[i];return is2D(matrix)?[matrix[0][0],matrix[0][1],matrix[1][0],matrix[1][1],matrix[3][0],matrix[3][1]]:matrix[0].concat(matrix[1],matrix[2],matrix[3])}return composeMatrix}();scope.composeMatrix=composeMatrix,scope.quat=quat}(webAnimations1,webAnimationsTesting),function(scope,testing){var sequenceNumber=0,AnimationEvent=function(target,currentTime,timelineTime){this.target=target,this.currentTime=currentTime,this.timelineTime=timelineTime,this.type="finish",this.bubbles=!1,this.cancelable=!1,this.currentTarget=target,this.defaultPrevented=!1,this.eventPhase=Event.AT_TARGET,this.timeStamp=Date.now()};scope.Animation=function(effect){this._sequenceNumber=sequenceNumber++,this._currentTime=0,this._startTime=null,this.paused=!1,this._playbackRate=1,this._inTimeline=!0,this._finishedFlag=!1,this.onfinish=null,this._finishHandlers=[],this._effect=effect,this._inEffect=this._effect._update(0),this._idle=!0,this._currentTimePending=!1},scope.Animation.prototype={_ensureAlive:function(){this.playbackRate<0&&0===this.currentTime?this._inEffect=this._effect._update(-1):this._inEffect=this._effect._update(this.currentTime),this._inTimeline||!this._inEffect&&this._finishedFlag||(this._inTimeline=!0,scope.timeline._animations.push(this))},_tickCurrentTime:function(newTime,ignoreLimit){newTime!=this._currentTime&&(this._currentTime=newTime,this.finished&&!ignoreLimit&&(this._currentTime=this._playbackRate>0?this._totalDuration:0),this._ensureAlive())},get currentTime(){return this._idle||this._currentTimePending?null:this._currentTime},set currentTime(newTime){newTime=+newTime,isNaN(newTime)||(scope.restart(),this.paused||null==this._startTime||(this._startTime=this._timeline.currentTime-newTime/this._playbackRate),this._currentTimePending=!1,this._currentTime!=newTime&&(this._tickCurrentTime(newTime,!0),scope.invalidateEffects()))},get startTime(){return this._startTime},set startTime(newTime){newTime=+newTime,isNaN(newTime)||this.paused||this._idle||(this._startTime=newTime,this._tickCurrentTime((this._timeline.currentTime-this._startTime)*this.playbackRate),scope.invalidateEffects())},get playbackRate(){return this._playbackRate},set playbackRate(value){if(value!=this._playbackRate){var oldCurrentTime=this.currentTime;this._playbackRate=value,this._startTime=null,"paused"!=this.playState&&"idle"!=this.playState&&this.play(),null!=oldCurrentTime&&(this.currentTime=oldCurrentTime)}},get finished(){return!this._idle&&(this._playbackRate>0&&this._currentTime>=this._totalDuration||this._playbackRate<0&&this._currentTime<=0)},get _totalDuration(){return this._effect._totalDuration},get playState(){return this._idle?"idle":null==this._startTime&&!this.paused&&0!=this.playbackRate||this._currentTimePending?"pending":this.paused?"paused":this.finished?"finished":"running"},play:function(){this.paused=!1,(this.finished||this._idle)&&(this._currentTime=this._playbackRate>0?0:this._totalDuration,this._startTime=null,scope.invalidateEffects()),this._finishedFlag=!1,scope.restart(),this._idle=!1,this._ensureAlive()},pause:function(){this.finished||this.paused||this._idle||(this._currentTimePending=!0),this._startTime=null,this.paused=!0},finish:function(){this._idle||(this.currentTime=this._playbackRate>0?this._totalDuration:0,this._startTime=this._totalDuration-this.currentTime,this._currentTimePending=!1)},cancel:function(){this._inEffect=!1,this._idle=!0,this.currentTime=0,this._startTime=null},reverse:function(){this.playbackRate*=-1,this.play()},addEventListener:function(type,handler){"function"==typeof handler&&"finish"==type&&this._finishHandlers.push(handler)},removeEventListener:function(type,handler){if("finish"==type){var index=this._finishHandlers.indexOf(handler);index>=0&&this._finishHandlers.splice(index,1)}},_fireEvents:function(baseTime){var finished=this.finished;if((finished||this._idle)&&!this._finishedFlag){var event=new AnimationEvent(this,this._currentTime,baseTime),handlers=this._finishHandlers.concat(this.onfinish?[this.onfinish]:[]);handlers.forEach(function(handler){handler.call(event.target,event)})}this._finishedFlag=finished},_tick:function(timelineTime){return this._idle||this.paused||(null==this._startTime?this.startTime=timelineTime-this._currentTime/this.playbackRate:this.finished||this._tickCurrentTime((timelineTime-this._startTime)*this.playbackRate)),this._currentTimePending=!1,this._fireEvents(timelineTime),!this._idle&&(this._inEffect||!this._finishedFlag)}}}(webAnimations1,webAnimationsTesting),function(shared,scope,testing){function processRafCallbacks(t){var processing=rafCallbacks;rafCallbacks=[],tick(t),processing.forEach(function(entry){entry[1](t)}),needsRetick&&tick(t),applyPendingEffects()}function compareAnimations(leftAnimation,rightAnimation){return leftAnimation._sequenceNumber-rightAnimation._sequenceNumber}function InternalTimeline(){this._animations=[],this.currentTime=window.performance&&performance.now?performance.now():0}function applyPendingEffects(){pendingEffects.forEach(function(f){f()}),pendingEffects.length=0}function tick(t){hasRestartedThisFrame=!1;var timeline=scope.timeline;timeline.currentTime=t,timeline._animations.sort(compareAnimations),ticking=!1;var updatingAnimations=timeline._animations;timeline._animations=[];var newPendingClears=[],newPendingEffects=[];updatingAnimations=updatingAnimations.filter(function(animation){return animation._inTimeline=animation._tick(t),animation._inEffect?newPendingEffects.push(animation._effect):newPendingClears.push(animation._effect),animation.finished||animation.paused||animation._idle||(ticking=!0),animation._inTimeline}),pendingEffects.push.apply(pendingEffects,newPendingClears),pendingEffects.push.apply(pendingEffects,newPendingEffects),timeline._animations.push.apply(timeline._animations,updatingAnimations),needsRetick=!1,ticking&&requestAnimationFrame(function(){})}var originalRequestAnimationFrame=window.requestAnimationFrame,rafCallbacks=[],rafId=0;window.requestAnimationFrame=function(f){var id=rafId++;return 0==rafCallbacks.length&&originalRequestAnimationFrame(processRafCallbacks),rafCallbacks.push([id,f]),id},window.cancelAnimationFrame=function(id){rafCallbacks.forEach(function(entry){entry[0]==id&&(entry[1]=function(){})})},InternalTimeline.prototype={_play:function(effect){effect._timing=shared.normalizeTimingInput(effect.timing);var animation=new scope.Animation(effect);return animation._idle=!1,animation._timeline=this,this._animations.push(animation),scope.restart(),scope.invalidateEffects(),animation}};var ticking=!1,hasRestartedThisFrame=!1;scope.restart=function(){return ticking||(ticking=!0,requestAnimationFrame(function(){}),hasRestartedThisFrame=!0),hasRestartedThisFrame};var needsRetick=!1;scope.invalidateEffects=function(){needsRetick=!0};var pendingEffects=[],originalGetComputedStyle=window.getComputedStyle;Object.defineProperty(window,"getComputedStyle",{configurable:!0,enumerable:!0,value:function(){return needsRetick&&tick(timeline.currentTime),applyPendingEffects(),originalGetComputedStyle.apply(this,arguments)}});var timeline=new InternalTimeline;scope.timeline=timeline}(webAnimationsShared,webAnimations1,webAnimationsTesting),function(scope,testing){function dot(v1,v2){for(var result=0,i=0;ii;i++){for(var val=0,j=0;3>j;j++)val+=m[3][j]*Ainv[j][i];lastRow.push(val)}return lastRow.push(1),Ainv.push(lastRow),Ainv}function transposeMatrix4(m){return[[m[0][0],m[1][0],m[2][0],m[3][0]],[m[0][1],m[1][1],m[2][1],m[3][1]],[m[0][2],m[1][2],m[2][2],m[3][2]],[m[0][3],m[1][3],m[2][3],m[3][3]]]}function multVecMatrix(v,m){for(var result=[],i=0;4>i;i++){for(var val=0,j=0;4>j;j++)val+=v[j]*m[j][i];result.push(val)}return result}function normalize(v){var len=length(v);return[v[0]/len,v[1]/len,v[2]/len]}function length(v){return Math.sqrt(v[0]*v[0]+v[1]*v[1]+v[2]*v[2])}function combine(v1,v2,v1s,v2s){return[v1s*v1[0]+v2s*v2[0],v1s*v1[1]+v2s*v2[1],v1s*v1[2]+v2s*v2[2]]}function cross(v1,v2){return[v1[1]*v2[2]-v1[2]*v2[1],v1[2]*v2[0]-v1[0]*v2[2],v1[0]*v2[1]-v1[1]*v2[0]]}function decomposeMatrix(matrix){var m3d=[matrix.slice(0,4),matrix.slice(4,8),matrix.slice(8,12),matrix.slice(12,16)];if(1!==m3d[3][3])return null;for(var perspectiveMatrix=[],i=0;4>i;i++)perspectiveMatrix.push(m3d[i].slice());for(var i=0;3>i;i++)perspectiveMatrix[i][3]=0;if(0===determinant(perspectiveMatrix))return!1;var perspective,rhs=[];if(m3d[0][3]||m3d[1][3]||m3d[2][3]){rhs.push(m3d[0][3]),rhs.push(m3d[1][3]),rhs.push(m3d[2][3]),rhs.push(m3d[3][3]);var inversePerspectiveMatrix=inverse(perspectiveMatrix),transposedInversePerspectiveMatrix=transposeMatrix4(inversePerspectiveMatrix);perspective=multVecMatrix(rhs,transposedInversePerspectiveMatrix)}else perspective=[0,0,0,1];var translate=m3d[3].slice(0,3),row=[];row.push(m3d[0].slice(0,3));var scale=[];scale.push(length(row[0])),row[0]=normalize(row[0]);var skew=[];row.push(m3d[1].slice(0,3)),skew.push(dot(row[0],row[1])),row[1]=combine(row[1],row[0],1,-skew[0]),scale.push(length(row[1])),row[1]=normalize(row[1]),skew[0]/=scale[1],row.push(m3d[2].slice(0,3)),skew.push(dot(row[0],row[2])),row[2]=combine(row[2],row[0],1,-skew[1]),skew.push(dot(row[1],row[2])),row[2]=combine(row[2],row[1],1,-skew[2]),scale.push(length(row[2])),row[2]=normalize(row[2]),skew[1]/=scale[2],skew[2]/=scale[2];var pdum3=cross(row[1],row[2]);if(dot(row[0],pdum3)<0)for(var i=0;3>i;i++)scale[i]*=-1,row[i][0]*=-1,row[i][1]*=-1,row[i][2]*=-1;var s,quaternion,t=row[0][0]+row[1][1]+row[2][2]+1;return t>1e-4?(s=.5/Math.sqrt(t),quaternion=[(row[2][1]-row[1][2])*s,(row[0][2]-row[2][0])*s,(row[1][0]-row[0][1])*s,.25/s]):row[0][0]>row[1][1]&&row[0][0]>row[2][2]?(s=2*Math.sqrt(1+row[0][0]-row[1][1]-row[2][2]),quaternion=[.25*s,(row[0][1]+row[1][0])/s,(row[0][2]+row[2][0])/s,(row[2][1]-row[1][2])/s]):row[1][1]>row[2][2]?(s=2*Math.sqrt(1+row[1][1]-row[0][0]-row[2][2]),quaternion=[(row[0][1]+row[1][0])/s,.25*s,(row[1][2]+row[2][1])/s,(row[0][2]-row[2][0])/s]):(s=2*Math.sqrt(1+row[2][2]-row[0][0]-row[1][1]),quaternion=[(row[0][2]+row[2][0])/s,(row[1][2]+row[2][1])/s,.25*s,(row[1][0]-row[0][1])/s]),[translate,scale,skew,quaternion,perspective]}return decomposeMatrix}();scope.dot=dot,scope.makeMatrixDecomposition=makeMatrixDecomposition}(webAnimations1,webAnimationsTesting),function(scope){function consumeToken(regex,string){var result=regex.exec(string);return result?(result=regex.ignoreCase?result[0].toLowerCase():result[0],[result,string.substr(result.length)]):void 0}function consumeTrimmed(consumer,string){string=string.replace(/^\s*/,"");var result=consumer(string);return result?[result[0],result[1].replace(/^\s*/,"")]:void 0}function consumeRepeated(consumer,separator,string){consumer=consumeTrimmed.bind(null,consumer);for(var list=[];;){var result=consumer(string);if(!result)return[list,string];if(list.push(result[0]),string=result[1],result=consumeToken(separator,string),!result||""==result[1])return[list,string];string=result[1]}}function consumeParenthesised(parser,string){for(var nesting=0,n=0;n=nesting))break;var parsed=parser(string.substr(0,n));return void 0==parsed?void 0:[parsed,string.substr(n)]}function lcm(a,b){for(var c=a,d=b;c&&d;)c>d?c%=d:d%=c;return c=a*b/(c+d)}function ignore(value){return function(input){var result=value(input);return result&&(result[0]=void 0),result}}function optional(value,defaultValue){return function(input){var result=value(input);return result?result:[defaultValue,input]}}function consumeList(list,input){for(var output=[],i=0;ii;i++){var thing=nestedMerge(left[i%left.length],right[i%right.length]);if(!thing)return;matchingLeft.push(thing[0]),matchingRight.push(thing[1]),reconsititution.push(thing[2])}return[matchingLeft,matchingRight,function(positions){var result=positions.map(function(position,i){return reconsititution[i](position)}).join(separator);return wrap?wrap(result):result}]}function mergeList(left,right,list){for(var lefts=[],rights=[],functions=[],j=0,i=0;i=x?left:x>=1?right:"visible"}]:void 0}scope.addPropertiesHandler(String,merge,["visibility"])}(webAnimations1),function(scope,testing){function parseColor(string){string=string.trim(),context.fillStyle="#000",context.fillStyle=string;var contextSerializedFillStyle=context.fillStyle;if(context.fillStyle="#fff",context.fillStyle=string,contextSerializedFillStyle==context.fillStyle){context.fillRect(0,0,1,1);var pixelColor=context.getImageData(0,0,1,1).data;context.clearRect(0,0,1,1);var alpha=pixelColor[3]/255;return[pixelColor[0]*alpha,pixelColor[1]*alpha,pixelColor[2]*alpha,alpha]}}function mergeColors(left,right){return[left,right,function(x){function clamp(v){return Math.max(0,Math.min(255,v))}if(x[3])for(var i=0;3>i;i++)x[i]=Math.round(clamp(x[i]/x[3]));return x[3]=scope.numberToString(scope.clamp(0,1,x[3])),"rgba("+x.join(",")+")"}]}var canvas=document.createElementNS("http://www.w3.org/1999/xhtml","canvas");canvas.width=canvas.height=1;var context=canvas.getContext("2d");scope.addPropertiesHandler(parseColor,mergeColors,["background-color","border-bottom-color","border-left-color","border-right-color","border-top-color","color","outline-color","text-decoration-color"]),scope.consumeColor=scope.consumeParenthesised.bind(null,parseColor),scope.mergeColors=mergeColors}(webAnimations1,webAnimationsTesting),function(scope,testing){function parseDimension(unitRegExp,string){if(string=string.trim().toLowerCase(),"0"==string&&"px".search(unitRegExp)>=0)return{px:0};if(/^[^(]*$|^calc/.test(string)){string=string.replace(/calc\(/g,"(");var matchedUnits={};string=string.replace(unitRegExp,function(match){return matchedUnits[match]=null,"U"+match});for(var taggedUnitRegExp="U("+unitRegExp.source+")",typeCheck=string.replace(/[-+]?(\d*\.)?\d+/g,"N").replace(new RegExp("N"+taggedUnitRegExp,"g"),"D").replace(/\s[+-]\s/g,"O").replace(/\s/g,""),reductions=[/N\*(D)/g,/(N|D)[*/]N/g,/(N|D)O\1/g,/\((N|D)\)/g],i=0;i1?"calc("+result+")":result}]}var lengthUnits="px|em|ex|ch|rem|vw|vh|vmin|vmax|cm|mm|in|pt|pc",parseLength=parseDimension.bind(null,new RegExp(lengthUnits,"g")),parseLengthOrPercent=parseDimension.bind(null,new RegExp(lengthUnits+"|%","g")),parseAngle=parseDimension.bind(null,/deg|rad|grad|turn/g);scope.parseLength=parseLength,scope.parseLengthOrPercent=parseLengthOrPercent,scope.consumeLengthOrPercent=scope.consumeParenthesised.bind(null,parseLengthOrPercent),scope.parseAngle=parseAngle,scope.mergeDimensions=mergeDimensions;var consumeLength=scope.consumeParenthesised.bind(null,parseLength),consumeSizePair=scope.consumeRepeated.bind(void 0,consumeLength,/^/),consumeSizePairList=scope.consumeRepeated.bind(void 0,consumeSizePair,/^,/);scope.consumeSizePairList=consumeSizePairList;var parseSizePairList=function(input){var result=consumeSizePairList(input);return result&&""==result[1]?result[0]:void 0},mergeNonNegativeSizePair=scope.mergeNestedRepeated.bind(void 0,mergeDimensionsNonNegative," "),mergeNonNegativeSizePairList=scope.mergeNestedRepeated.bind(void 0,mergeNonNegativeSizePair,",");scope.mergeNonNegativeSizePair=mergeNonNegativeSizePair,scope.addPropertiesHandler(parseSizePairList,mergeNonNegativeSizePairList,["background-size"]),scope.addPropertiesHandler(parseLengthOrPercent,mergeDimensionsNonNegative,["border-bottom-width","border-image-width","border-left-width","border-right-width","border-top-width","flex-basis","font-size","height","line-height","max-height","max-width","outline-width","width"]),scope.addPropertiesHandler(parseLengthOrPercent,mergeDimensions,["border-bottom-left-radius","border-bottom-right-radius","border-top-left-radius","border-top-right-radius","bottom","left","letter-spacing","margin-bottom","margin-left","margin-right","margin-top","min-height","min-width","outline-offset","padding-bottom","padding-left","padding-right","padding-top","perspective","right","shape-margin","text-indent","top","vertical-align","word-spacing"])}(webAnimations1,webAnimationsTesting),function(scope,testing){function consumeLengthPercentOrAuto(string){return scope.consumeLengthOrPercent(string)||scope.consumeToken(/^auto/,string)}function parseBox(string){var result=scope.consumeList([scope.ignore(scope.consumeToken.bind(null,/^rect/)),scope.ignore(scope.consumeToken.bind(null,/^\(/)),scope.consumeRepeated.bind(null,consumeLengthPercentOrAuto,/^,/),scope.ignore(scope.consumeToken.bind(null,/^\)/))],string);return result&&4==result[0].length?result[0]:void 0}function mergeComponent(left,right){return"auto"==left||"auto"==right?[!0,!1,function(t){var result=t?left:right;if("auto"==result)return"auto";var merged=scope.mergeDimensions(result,result);return merged[2](merged[0])}]:scope.mergeDimensions(left,right)}function wrap(result){return"rect("+result+")"}var mergeBoxes=scope.mergeWrappedNestedRepeated.bind(null,wrap,mergeComponent,", ");scope.parseBox=parseBox,scope.mergeBoxes=mergeBoxes,scope.addPropertiesHandler(parseBox,mergeBoxes,["clip"])}(webAnimations1,webAnimationsTesting),function(scope,testing){function cast(pattern){return function(contents){var i=0;return pattern.map(function(x){return x===_?contents[i++]:x})}}function id(x){return x}function parseTransform(string){if(string=string.toLowerCase().trim(),"none"==string)return[];for(var match,transformRegExp=/\s*(\w+)\(([^)]*)\)/g,result=[],prevLastIndex=0;match=transformRegExp.exec(string);){if(match.index!=prevLastIndex)return;prevLastIndex=match.index+match[0].length;var functionName=match[1],functionData=transformFunctions[functionName];if(!functionData)return;var args=match[2].split(","),argTypes=functionData[0];if(argTypes.lengthout||out>900||out%100!==0))return out}function toCss(value){return value=100*Math.round(value/100),value=scope.clamp(100,900,value),400===value?"normal":700===value?"bold":String(value)}function merge(left,right){return[left,right,toCss]}scope.addPropertiesHandler(parse,merge,["font-weight"])}(webAnimations1),function(scope){function negateDimension(dimension){var result={};for(var k in dimension)result[k]=-dimension[k];return result}function consumeOffset(string){return scope.consumeToken(/^(left|center|right|top|bottom)\b/i,string)||scope.consumeLengthOrPercent(string)}function parseOrigin(slots,string){var result=scope.consumeRepeated(consumeOffset,/^/,string);if(result&&""==result[1]){var tokens=result[0];if(tokens[0]=tokens[0]||"center",tokens[1]=tokens[1]||"center",3==slots&&(tokens[2]=tokens[2]||{px:0}),tokens.length==slots){if(/top|bottom/.test(tokens[0])||/left|right/.test(tokens[1])){var tmp=tokens[0];tokens[0]=tokens[1],tokens[1]=tmp}if(/left|right|center|Object/.test(tokens[0])&&/top|bottom|center|Object/.test(tokens[1]))return tokens.map(function(position){return"object"==typeof position?position:offsetMap[position]})}}}function consumePosition(string){var result=scope.consumeRepeated(consumeOffset,/^/,string);if(result){for(var tokens=result[0],out=[{"%":50},{"%":50}],pos=0,bottomOrRight=!1,i=0;i