/** * Implementation of standard Array methods (introduced in ECMAScript 5th * edition) and shorthand generics (JavaScript 1.8.5) * * Copyright (c) 2013 Alex K @plusdude * http://opensource.org/licenses/MIT */ (function(h,r,m){function q(a){a=u(a);return a!==a?0:0===a||r===a||-r===a?a:(0>>0;m!==a?(a=q(a),f=0>a?l.max(d+a,0):l.min(a,d)):f=0;m!==c&&(c=q(c),d=0>c?l.max(d+c,0):l.min(c,d));b=new g(d-f);for(h=0;f>>0;m!==c? (c=q(c),d=0>c?l.max(e+c,0):l.min(c,e)):d=0;for(;d>>0;m!==c?(c=q(c),e=0>c?e-l.abs(c):l.min(c,e-1)):e-=1;for(;-1>>0;for(d=0;d>>0;for(d=0;d>>0;for(d=0;d>>0;for(f=g=0;f>>0;for(f=0;f>>0;for(f=0;f>>0)-1;-1