drill.define(a=>{const n=a=>{if(!(a instanceof Object))return;let t=0;Object.keys(a).forEach(e=>{if(!/\D/.test(e)){let a=parseInt(e)+1;a>t&&(t=a)}n(a[e])}),t&&(a.length=t)};return{addLength:n,getTransformStr:a=>{let n="";return Object.keys(a).forEach(t=>{let e=a[t];n+=`${t}(${e}) `}),n},transPos:a=>{let{mainPage:n,animation:t}=a;Array.from(n).forEach(a=>{let{pageIn:n,pageOut:e}=a,i=t.find(a=>a.name==n),o=t.find(a=>a.name==e);if(!i)throw"has not this pageIn anime => "+n;if(!o)throw"has not this pageOut anime => "+e;a.pos1=Object.assign({},i.animation.from||i.animation[0]),a.pos1_after=Object.assign({},i.animation.to||i.animation[100]),a.pos2=Object.assign({},o.animation.from||o.animation[0]),a.pos2_after=Object.assign({},o.animation.to||o.animation[100]),a.removeInOpa&&(a.pos1.opacity=1),a.removeOutOpa&&(a.pos2_after.opacity=1),Array.from(a).forEach(a=>{let{animateIn:n,animateOut:e}=a,i=n&&t.find(a=>a.name==n),o=e&&t.find(a=>a.name==e);Object.assign(a,{eleAnimeInCSS:i,eleAnimeOutCSS:o})})})}}});