1 /*global setTimeout: false, console: false */(function(){var a
={};var b
=this,c
=b
.async
;typeof module
!=="undefined"&&module
.exports
?module
.exports
=a
:b
.async
=a
,a
.noConflict=function(){b
.async
=c
;return a
};var d=function(a
,b
){if(a
.forEach
)return a
.forEach(b
);for(var c
=0;c
<a
.length
;c
+=1)b(a
[c
],c
,a
)};var e=function(a
,b
){if(a
.map
)return a
.map(b
);var c
=[];d(a
,function(a
,d
,e
){c
.push(b(a
,d
,e
))});return c
};var f=function(a
,b
,c
){if(a
.reduce
)return a
.reduce(b
,c
);d(a
,function(a
,d
,e
){c
=b(c
,a
,d
,e
)});return c
};var g=function(a
){if(Object
.keys
)return Object
.keys(a
);var b
=[];for(var c
in a
)a
.hasOwnProperty(c
)&&b
.push(c
);return b
};var h=function(a
,b
){if(a
.indexOf
)return a
.indexOf(b
);for(var c
=0;c
<a
.length
;c
+=1)if(a
[c
]===b
)return c
;return-1};typeof process
==="undefined"||!process
.nextTick
?a
.nextTick=function(a
){setTimeout(a
,0)}:a
.nextTick
=process
.nextTick
,a
.forEach=function(a
,b
,c
){if(!a
.length
)return c();var e
=0;d(a
,function(d
){b(d
,function(b
){b
?(c(b
),c=function(){}):(e
+=1,e
===a
.length
&&c())})})},a
.forEachSeries=function(a
,b
,c
){if(!a
.length
)return c();var d
=0;var e=function(){b(a
[d
],function(b
){b
?(c(b
),c=function(){}):(d
+=1,d
===a
.length
?c():e())})};e()};var i=function(b
){return function(){var c
=Array
.prototype.slice
.call(arguments
);return b
.apply(null,[a
.forEach
].concat(c
))}};var j=function(b
){return function(){var c
=Array
.prototype.slice
.call(arguments
);return b
.apply(null,[a
.forEachSeries
].concat(c
))}};var k=function(a
,b
,c
,d
){var f
=[];b
=e(b
,function(a
,b
){return{index
:b
,value
:a
}}),a(b
,function(a
,b
){c(a
.value
,function(c
,d
){f
[a
.index
]=d
,b(c
)})},function(a
){d(a
,f
)})};a
.map
=i(k
),a
.mapSeries
=j(k
),a
.reduce=function(b
,c
,d
,e
){a
.forEachSeries(b
,function(a
,b
){d(c
,a
,function(a
,d
){c
=d
,b(a
)})},function(a
){e(a
,c
)})},a
.inject
=a
.reduce
,a
.foldl
=a
.reduce
,a
.reduceRight=function(b
,c
,d
,f
){var g
=e(b
,function(a
){return a
}).reverse();a
.reduce(g
,c
,d
,f
)},a
.foldr
=a
.reduceRight
;var l=function(a
,b
,c
,d
){var f
=[];b
=e(b
,function(a
,b
){return{index
:b
,value
:a
}}),a(b
,function(a
,b
){c(a
.value
,function(c
){c
&&f
.push(a
),b()})},function(a
){d(e(f
.sort(function(a
,b
){return a
.index
-b
.index
}),function(a
){return a
.value
}))})};a
.filter
=i(l
),a
.filterSeries
=j(l
),a
.select
=a
.filter
,a
.selectSeries
=a
.filterSeries
;var m=function(a
,b
,c
,d
){var f
=[];b
=e(b
,function(a
,b
){return{index
:b
,value
:a
}}),a(b
,function(a
,b
){c(a
.value
,function(c
){c
||f
.push(a
),b()})},function(a
){d(e(f
.sort(function(a
,b
){return a
.index
-b
.index
}),function(a
){return a
.value
}))})};a
.reject
=i(m
),a
.rejectSeries
=j(m
);var n=function(a
,b
,c
,d
){a(b
,function(a
,b
){c(a
,function(c
){c
?d(a
):b()})},function(a
){d()})};a
.detect
=i(n
),a
.detectSeries
=j(n
),a
.some=function(b
,c
,d
){a
.forEach(b
,function(a
,b
){c(a
,function(a
){a
&&(d(true),d=function(){}),b()})},function(a
){d(false)})},a
.any
=a
.some
,a
.every=function(b
,c
,d
){a
.forEach(b
,function(a
,b
){c(a
,function(a
){a
||(d(false),d=function(){}),b()})},function(a
){d(true)})},a
.all
=a
.every
,a
.sortBy=function(b
,c
,d
){a
.map(b
,function(a
,b
){c(a
,function(c
,d
){c
?b(c
):b(null,{value
:a
,criteria
:d
})})},function(a
,b
){if(a
)return d(a
);var c=function(a
,b
){var c
=a
.criteria
,d
=b
.criteria
;return c
<d
?-1:c
>d
?1:0};d(null,e(b
.sort(c
),function(a
){return a
.value
}))})},a
.auto=function(a
,b
){b
=b
||function(){};var c
=g(a
);if(!c
.length
)return b(null);var e
=[];var i
=[];var j=function(a
){i
.unshift(a
)};var k=function(a
){for(var b
=0;b
<i
.length
;b
+=1)if(i
[b
]===a
){i
.splice(b
,1);return}};var l=function(){d(i
,function(a
){a()})};j(function(){e
.length
===c
.length
&&b(null)}),d(c
,function(c
){var d
=a
[c
]instanceof Function
?[a
[c
]]:a
[c
];var g=function(a
){a
?(b(a
),b=function(){}):(e
.push(c
),l())};var i
=d
.slice(0,Math
.abs(d
.length
-1))||[];var m=function(){return f(i
,function(a
,b
){return a
&&h(e
,b
)!==-1},true)};if(m())d
[d
.length
-1](g
);else{var n=function(){m()&&(k(n
),d
[d
.length
-1](g
))};j(n
)}})},a
.waterfall=function(b
,c
){if(!b
.length
)return c();c
=c
||function(){};var d=function(b
){return function(e
){if(e
)c(e
),c=function(){};else{var f
=Array
.prototype.slice
.call(arguments
,1);var g
=b
.next();g
?f
.push(d(g
)):f
.push(c
),a
.nextTick(function(){b
.apply(null,f
)})}}};d(a
.iterator(b
))()},a
.parallel=function(b
,c
){c
=c
||function(){};if(b
.constructor===Array
)a
.map(b
,function(a
,b
){a
&&a(function(a
){var c
=Array
.prototype.slice
.call(arguments
,1);c
.length
<=1&&(c
=c
[0]),b
.call(null,a
,c
)})},c
);else{var d
={};a
.forEach(g(b
),function(a
,c
){b
[a
](function(b
){var e
=Array
.prototype.slice
.call(arguments
,1);e
.length
<=1&&(e
=e
[0]),d
[a
]=e
,c(b
)})},function(a
){c(a
,d
)})}},a
.series=function(b
,c
){c
=c
||function(){};if(b
.constructor===Array
)a
.mapSeries(b
,function(a
,b
){a
&&a(function(a
){var c
=Array
.prototype.slice
.call(arguments
,1);c
.length
<=1&&(c
=c
[0]),b
.call(null,a
,c
)})},c
);else{var d
={};a
.forEachSeries(g(b
),function(a
,c
){b
[a
](function(b
){var e
=Array
.prototype.slice
.call(arguments
,1);e
.length
<=1&&(e
=e
[0]),d
[a
]=e
,c(b
)})},function(a
){c(a
,d
)})}},a
.iterator=function(a
){var b=function(c
){var d=function(){a
.length
&&a
[c
].apply(null,arguments
);return d
.next()};d
.next=function(){return c
<a
.length
-1?b(c
+1):null};return d
};return b(0)},a
.apply=function(a
){var b
=Array
.prototype.slice
.call(arguments
,1);return function(){return a
.apply(null,b
.concat(Array
.prototype.slice
.call(arguments
)))}};var o=function(a
,b
,c
,d
){var e
=[];a(b
,function(a
,b
){c(a
,function(a
,c
){e
=e
.concat(c
||[]),b(a
)})},function(a
){d(a
,e
)})};a
.concat
=i(o
),a
.concatSeries
=j(o
),a
.whilst=function(b
,c
,d
){b()?c(function(e
){if(e
)return d(e
);a
.whilst(b
,c
,d
)}):d()},a
.until=function(b
,c
,d
){b()?d():c(function(e
){if(e
)return d(e
);a
.until(b
,c
,d
)})},a
.queue=function(b
,c
){var d
=0;var e
=[];var f
={concurrency
:c
,saturated
:null,empty
:null,drain
:null,push:function(b
,d
){e
.push({data
:b
,callback
:d
}),f
.saturated
&&e
.length
==c
&&f
.saturated(),a
.nextTick(f
.process
)},process:function(){if(d
<f
.concurrency
&&e
.length
){var a
=e
.splice(0,1)[0];f
.empty
&&e
.length
==0&&f
.empty(),d
+=1,b(a
.data
,function(){d
-=1,a
.callback
&&a
.callback
.apply(a
,arguments
),f
.drain
&&e
.length
+d
==0&&f
.drain(),f
.process()})}},length:function(){return e
.length
},running:function(){return d
}};return f
};var p=function(a
){return function(b
){var c
=Array
.prototype.slice
.call(arguments
,1);b
.apply(null,c
.concat([function(b
){var c
=Array
.prototype.slice
.call(arguments
,1);typeof console
!=="undefined"&&(b
?console
.error
&&console
.error(b
):console
[a
]&&d(c
,function(b
){console
[a
](b
)}))}]))}};a
.log
=p("log"),a
.dir
=p("dir"),a
.memoize=function(a
,b
){var c
={};b
=b
||function(a
){return a
};return function(){var d
=Array
.prototype.slice
.call(arguments
);var e
=d
.pop();var f
=b
.apply(null,d
);f
in c
?e
.apply(null,c
[f
]):a
.apply(null,d
.concat([function(){c
[f
]=arguments
,e
.apply(null,arguments
)}]))}}})()