1function number_format(number, decimals, dec_point, thousands_sep) {� 2 � 3 number = (number + '').replace(/[^0-9+\-Ee.]/g, '');� 4 var n = !isFinite(+number) ? 0 : +number,� 5 prec = !isFinite(+decimals) ? 0 : Math.abs(decimals),� 6 sep = (typeof thousands_sep === 'undefined') ? ',' : thousands_sep,� 7 dec = (typeof dec_point === 'undefined') ? '.' : dec_point,� 8 s = '',� 9 toFixedFix = function(n, prec) {� 10 var k = Math.pow(10, prec);� 11 return '' + Math.round(n * k) / k;� 12 };� 13 // Fix for IE parseFloat(0.55).toFixed(0) = 0;� 14 s = (prec ? toFixedFix(n, prec) : '' + Math.round(n)).split('.');� 15 if (s[0].length > 3) {� 16 s[0] = s[0].replace(/\B(?=(?:\d{3})+(?!\d))/g, sep);� 17 }� 18 if ((s[1] || '').length < prec) {� 19 s[1] = s[1] || '';� 20 s[1] += new Array(prec - s[1].length + 1).join('0');� 21 }� 22 return s.join(dec);� 23} � 24� 25(function(a){� 26 function b(a,b){� 27 return function(c){� 28 return i(a.call(this,c),b)� 29 }� 30 }� 31 function c(a,b){� 32 return function(c){� 33 return this.lang().ordinal(a.call(this,c),b)� 34 }� 35 }� 36function d(){}� 37 function e(a){� 38 g(this,a)� 39 }� 40 function f(a){� 41 var b=a.years||a.year||a.y||0,c=a.months||a.month||a.M||0,d=a.weeks||a.week||a.w||0,e=a.days||a.day||a.d||0,f=a.hours||a.hour||a.h||0,g=a.minutes||a.minute||a.m||0,h=a.seconds||a.second||a.s||0,i=a.milliseconds||a.millisecond||a.ms||0;� 42 this._input=a,this._milliseconds=+i+1e3*h+6e4*g+36e5*f,this._days=+e+7*d,this._months=+c+12*b,this._data={},this._bubble()� 43 }� 44 function g(a,b){� 45 for(var c in b)b.hasOwnProperty(c)&&(a[c]=b[c]);return a� 46 }� 47 function h(a){� 48 return 0>a?Math.ceil(a):Math.floor(a)� 49 }� 50 function i(a,b){� 51 for(var c=a+"";c.length<b;)c="0"+c;� 52 return c� 53 }� 54 function j(a,b,c,d){� 55 var e,f,g=b._milliseconds,h=b._days,i=b._months;� 56 g&&a._d.setTime(+a._d+g*c),(h||i)&&(e=a.minute(),f=a.hour()),h&&a.date(a.date()+h*c),i&&a.month(a.month()+i*c),g&&!d&&L.updateOffset(a),(h||i)&&(a.minute(e),a.hour(f))� 57 }� 58 function k(a){� 59 return"[object Array]"===Object.prototype.toString.call(a)� 60 }� 61 function l(a,b){� 62 var c,d=Math.min(a.length,b.length),e=Math.abs(a.length-b.length),f=0;� 63 for(c=0;d>c;c++)~~a[c]!==~~b[c]&&f++;� 64 return f+e� 65 }� 66 function m(a){� 67 return a?ib[a]||a.toLowerCase().replace(/(.)s$/,"$1"):a� 68 }� 69 function n(a,b){� 70 return b.abbr=a,P[a]||(P[a]=new d),P[a].set(b),P[a]� 71 }� 72 function o(a){� 73 delete P[a]� 74}� 75function p(a){� 76 if(!a)return L.fn._lang;� 77 if(!P[a]&&Q)try{� 78 require("./lang/"+a)� 79 }catch(b){� 80 return L.fn._lang� 81 }� 82 return P[a]||L.fn._lang� 83 }� 84 function q(a){� 85 return a.match(/\[.*\]/)?a.replace(/^\[|\]$/g,""):a.replace(/\\/g,"")� 86 }� 87 function r(a){� 88 var b,c,d=a.match(T);� 89 for(b=0,c=d.length;c>b;b++)d[b]=mb[d[b]]?mb[d[b]]:q(d[b]);� 90 return function(e){� 91 var f="";� 92 for(b=0;c>b;b++)f+=d[b]instanceof Function?d[b].call(e,a):d[b];� 93 return f� 94 }� 95 }� 96function s(a,b){� 97 return b=t(b,a.lang()),jb[b]||(jb[b]=r(b)),jb[b](a)� 98 }� 99 function t(a,b){� 100 function c(a){� 101 return b.longDateFormat(a)||a� 102 }� 103 for(var d=5;d--&&(U.lastIndex=0,U.test(a));)a=a.replace(U,c);� 104 return a� 105 }� 106 function u(a,b){� 107 switch(a){� 108 case"DDDD":� 109 return X;� 110 case"YYYY":� 111 return Y;� 112 case"YYYYY":� 113 return Z;� 114 case"S":case"SS":case"SSS":case"DDD":� 115 return W;� 116 case"MMM":case"MMMM":case"dd":case"ddd":case"dddd":� 117 return $;� 118 case"a":case"A":� 119 return p(b._l)._meridiemParse;� 120 case"X":� 121 return bb;� 122 case"Z":case"ZZ":� 123 return _;� 124 case"T":� 125 return ab;� 126 case"MM":case"DD":case"YY":case"HH":case"hh":case"mm":case"ss":case"M":case"D":case"d":case"H":case"h":case"m":case"s":� 127 return V;� 128 default:� 129 return new RegExp(a.replace("\\",""))� 130 }� 131 }� 132function v(a){� 133 var b=(_.exec(a)||[])[0],c=(b+"").match(fb)||["-",0,0],d=+(60*c[1])+~~c[2];� 134 return"+"===c[0]?-d:d� 135 }� 136 function w(a,b,c){� 137 var d,e=c._a;� 138 switch(a){� 139 case"M":case"MM":� 140 null!=b&&(e[1]=~~b-1);� 141 break;� 142 case"MMM":case"MMMM":� 143 d=p(c._l).monthsParse(b),null!=d?e[1]=d:c._isValid=!1;� 144 break;� 145 case"D":case"DD":� 146 null!=b&&(e[2]=~~b);� 147 break;� 148 case"DDD":case"DDDD":� 149 null!=b&&(e[1]=0,e[2]=~~b);� 150 break;� 151 case"YY":� 152 e[0]=~~b+(~~b>68?1900:2e3);� 153 break;� 154 case"YYYY":case"YYYYY":� 155 e[0]=~~b;� 156 break;� 157 case"a":case"A":� 158 c._isPm=p(c._l).isPM(b);� 159 break;� 160 case"H":case"HH":case"h":case"hh":� 161 e[3]=~~b;� 162 break;� 163 case"m":case"mm":� 164 e[4]=~~b;� 165 break;� 166 case"s":case"ss":� 167 e[5]=~~b;� 168 break;� 169 case"S":case"SS":case"SSS":� 170 e[6]=~~(1e3*("0."+b));� 171 break;� 172 case"X":�
173 c._d=new Date(1e3*parseFloat(b));� 174 break;� 175 case"Z":case"ZZ":� 176 c._useUTC=!0,c._tzm=v(b)� 177 }� 178 null==b&&(c._isValid=!1)� 179 }� 180 function x(a){� 181 var b,c,d,e=[];� 182 if(!a._d){� 183 for(d=z(a),b=0;3>b&&null==a._a[b];++b)a._a[b]=e[b]=d[b];� 184 for(;7>b;b++)a._a[b]=e[b]=null==a._a[b]?2===b?1:0:a._a[b];� 185 e[3]+=~~((a._tzm||0)/60),e[4]+=~~((a._tzm||0)%60),c=new Date(0),a._useUTC?(c.setUTCFullYear(e[0],e[1],e[2]),c.setUTCHours(e[3],e[4],e[5],e[6])):(c.setFullYear(e[0],e[1],e[2]),c.setHours(e[3],e[4],e[5],e[6])),a._d=c� 186 }� 187 }� 188function y(a){� 189 var b=a._i;� 190 a._d||(a._a=[b.years||b.year||b.y,b.months||b.month||b.M,b.days||b.day||b.d,b.hours||b.hour||b.h,b.minutes||b.minute||b.m,b.seconds||b.second||b.s,b.milliseconds||b.millisecond||b.ms],x(a))� 191 }� 192 function z(a){� 193 var b=new Date;� 194 return a._useUTC?[b.getUTCFullYear(),b.getUTCMonth(),b.getUTCDate()]:[b.getFullYear(),b.getMonth(),b.getDate()]� 195 }� 196 function A(a){� 197 var b,c,d,e=p(a._l),f=""+a._i;� 198 for(d=t(a._f,e).match(T),a._a=[],b=0;b<d.length;b++)c=(u(d[b],a).exec(f)||[])[0],c&&(f=f.slice(f.indexOf(c)+c.length)),mb[d[b]]&&w(d[b],c,a);� 199 f&&(a._il=f),a._isPm&&a._a[3]<12&&(a._a[3]+=12),a._isPm===!1&&12===a._a[3]&&(a._a[3]=0),x(a)� 200 }� 201 function B(a){� 202 var b,c,d,f,h,i=99;� 203 for(f=0;f<a._f.length;f++)b=g({},a),b._f=a._f[f],A(b),c=new e(b),h=l(b._a,c.toArray()),c._il&&(h+=c._il.length),i>h&&(i=h,d=c);� 204 g(a,d)� 205 }� 206 function C(a){� 207 var b,c=a._i,d=cb.exec(c);� 208 if(d){� 209 for(a._f="YYYY-MM-DD"+(d[2]||" "),b=0;4>b;b++)if(eb[b][1].exec(c)){� 210 a._f+=eb[b][0];� 211 break� 212 }� 213 _.exec(c)&&(a._f+=" Z"),A(a)� 214 }else a._d=new Date(c)� 215 }� 216 function D(b){� 217 var c=b._i,d=R.exec(c);� 218 c===a?b._d=new Date:d?b._d=new Date(+d[1]):"string"==typeof c?C(b):k(c)?(b._a=c.slice(0),x(b)):c instanceof Date?b._d=new Date(+c):"object"==typeof c?y(b):b._d=new Date(c)� 219 }� 220 function E(a,b,c,d,e){� 221 return e.relativeTime(b||1,!!c,a,d)� 222 }� 223 function F(a,b,c){� 224 var d=O(Math.abs(a)/1e3),e=O(d/60),f=O(e/60),g=O(f/24),h=O(g/365),i=45>d&&["s",d]||1===e&&["m"]||45>e&&["mm",e]||1===f&&["h"]||22>f&&["hh",f]||1===g&&["d"]||25>=g&&["dd",g]||45>=g&&["M"]||345>g&&["MM",O(g/30)]||1===h&&["y"]||["yy",h];� 225 return i[2]=b,i[3]=a>0,i[4]=c,E.apply({},i)� 226 }� 227 function G(a,b,c){� 228 var d,e=c-b,f=c-a.day();� 229 return f>e&&(f-=7),e-7>f&&(f+=7),d=L(a).add("d",f),{� 230 week:Math.ceil(d.dayOfYear()/7),� 231 year:d.year()� 232 }� 233 }� 234function H(a){� 235 var b=a._i,c=a._f;� 236 return null===b||""===b?null:("string"==typeof b&&(a._i=b=p().preparse(b)),L.isMoment(b)?(a=g({},b),a._d=new Date(+b._d)):c?k(c)?B(a):A(a):D(a),new e(a))� 237 }� 238 function I(a,b){� 239 L.fn[a]=L.fn[a+"s"]=function(a){� 240 var c=this._isUTC?"UTC":"";� 241 return null!=a?(this._d["set"+c+b](a),L.updateOffset(this),this):this._d["get"+c+b]()� 242 }� 243 }� 244function J(a){� 245 L.duration.fn[a]=function(){� 246 return this._data[a]� 247 }� 248 }� 249function K(a,b){� 250 L.duration.fn["as"+a]=function(){� 251 return+this/b� 252 }� 253 }� 254for(var L,M,N="2.2.1",O=Math.round,P={},Q="undefined"!=typeof module&&module.exports,R=/^\/?Date\((\-?\d+)/i,S=/(\-)?(?:(\d*)\.)?(\d+)\:(\d+)\:(\d+)\.?(\d{3})?/,T=/(\[[^\[]*\])|(\\)?(Mo|MM?M?M?|Do|DDDo|DD?D?D?|ddd?d?|do?|w[o|w]?|W[o|W]?|YYYYY|YYYY|YY|gg(ggg?)?|GG(GGG?)?|e|E|a|A|hh?|HH?|mm?|ss?|SS?S?|X|zz?|ZZ?|.)/g,U=/(\[[^\[]*\])|(\\)?(LT|LL?L?L?|l{1,4})/g,V=/\d\d?/,W=/\d{1,3}/,X=/\d{3}/,Y=/\d{1,4}/,Z=/[+\-]?\d{1,6}/,$=/[0-9]*['a-z\u00A0-\u05FF\u0700-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]+|[\u0600-\u06FF\/]+(\s*?[\u0600-\u06FF]+){1,2}/i,_=/Z|[\+\-]\d\d:?\d\d/i,ab=/T/i,bb=/[\+\-]?\d+(\.\d{1,3})?/,cb=/^\s*\d{4}-\d\d-\d\d((T| )(\d\d(:\d\d(:\d\d(\.\d\d?\d?)?)?)?)?([\+\-]\d\d:?\d\d)?)?/,db="YYYY-MM-DDTHH:mm:ssZ",eb=[["HH:mm:ss.S",/(T| )\d\d:\d\d:\d\d\.\d{1,3}/],["HH:mm:ss",/(T| )\d\d:\d\d:\d\d/],["HH:mm",/(T| )\d\d:\d\d/],["HH",/(T| )\d\d/]],fb=/([\+\-]|\d\d)/gi,gb="Date|Hours|Minutes|Seconds|Milliseconds".split("|"),hb={� 255 Milliseconds:1,� 256 Seconds:1e3,� 257 Minutes:6e4,� 258 Hours:36e5,� 259 Days:864e5,� 260 Months:2592e6,� 261 Years:31536e6�
262},ib={� 263 ms:"millisecond",� 264 s:"second",� 265 m:"minute",� 266 h:"hour",� 267 d:"day",� 268 w:"week",� 269 W:"isoweek",� 270 M:"month",� 271 y:"year"� 272},jb={},kb="DDD w W M D d".split(" "),lb="M D H h m s w W".split(" "),mb={� 273 M:function(){� 274 return this.month()+1� 275 },� 276 MMM:function(a){� 277 return this.lang().monthsShort(this,a)� 278 },� 279 MMMM:function(a){� 280 return this.lang().months(this,a)� 281 },� 282 D:function(){� 283 return this.date()� 284 },� 285 DDD:function(){� 286 return this.dayOfYear()� 287 },� 288 d:function(){� 289 return this.day()� 290 },� 291 dd:function(a){� 292 return this.lang().weekdaysMin(this,a)� 293 },� 294 ddd:function(a){� 295 return this.lang().weekdaysShort(this,a)� 296 },� 297 dddd:function(a){� 298 return this.lang().weekdays(this,a)� 299 },� 300 w:function(){� 301 return this.week()� 302 },� 303 W:function(){� 304 return this.isoWeek()� 305 },� 306 YY:function(){� 307 return i(this.year()%100,2)� 308 },� 309 YYYY:function(){� 310 return i(this.year(),4)� 311 },� 312 YYYYY:function(){� 313 return i(this.year(),5)� 314 },� 315 gg:function(){� 316 return i(this.weekYear()%100,2)� 317 },� 318 gggg:function(){� 319 return this.weekYear()� 320 },� 321 ggggg:function(){� 322 return i(this.weekYear(),5)� 323 },� 324 GG:function(){� 325 return i(this.isoWeekYear()%100,2)� 326 },� 327 GGGG:function(){� 328 return this.isoWeekYear()� 329 },� 330 GGGGG:function(){� 331 return i(this.isoWeekYear(),5)� 332 },� 333 e:function(){� 334 return this.weekday()� 335 },� 336 E:function(){� 337 return this.isoWeekday()� 338 },� 339 a:function(){� 340 return this.lang().meridiem(this.hours(),this.minutes(),!0)� 341 },� 342 A:function(){� 343 return this.lang().meridiem(this.hours(),this.minutes(),!1)� 344 },� 345 H:function(){� 346 return this.hours()� 347 },� 348 h:function(){� 349 return this.hours()%12||12� 350 },� 351 m:function(){� 352 return this.minutes()� 353 },� 354 s:function(){� 355 return this.seconds()� 356 },� 357 S:function(){� 358 return~~(this.milliseconds()/100)� 359 },� 360 SS:function(){� 361 return i(~~(this.milliseconds()/10),2)� 362 },� 363 SSS:function(){� 364 return i(this.milliseconds(),3)� 365 },� 366 Z:function(){� 367 var a=-this.zone(),b="+";� 368 return 0>a&&(a=-a,b="-"),b+i(~~(a/60),2)+":"+i(~~a%60,2)� 369 },� 370 ZZ:function(){� 371 var a=-this.zone(),b="+";� 372 return 0>a&&(a=-a,b="-"),b+i(~~(10*a/6),4)� 373 },� 374 z:function(){� 375 return this.zoneAbbr()� 376 },� 377 zz:function(){� 378 return this.zoneName()� 379 },� 380 X:function(){� 381 return this.unix()� 382 }� 383 };� 384kb.length;)M=kb.pop(),mb[M+"o"]=c(mb[M],M);� 385for(;lb.length;)M=lb.pop(),mb[M+M]=b(mb[M],2);� 386for(mb.DDDD=b(mb.DDD,3),g(d.prototype,{� 387 set:function(a){� 388 var b,c;� 389 for(c in a)b=a[c],"function"==typeof b?this[c]=b:this["_"+c]=b� 390 },� 391 _months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),� 392 months:function(a){� 393 return this._months[a.month()]� 394 },� 395 _monthsShort:"Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"),� 396 monthsShort:function(a){� 397 return this._monthsShort[a.month()]� 398 },� 399 monthsParse:function(a){� 400 var b,c,d;� 401 for(this._monthsParse||(this._monthsParse=[]),b=0;12>b;b++)if(this._monthsParse[b]||(c=L.utc([2e3,b]),d="^"+this.months(c,"")+"|^"+this.monthsShort(c,""),this._monthsParse[b]=new RegExp(d.replace(".",""),"i")),this._monthsParse[b].test(a))return b� 402 },� 403 _weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),� 404 weekdays:function(a){� 405 return this._weekdays[a.day()]� 406 },� 407 _weekdaysShort:"Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),� 408 weekdaysShort:function(a){� 409 return this._weekdaysShort[a.day()]� 410 },� 411 _weekdaysMin:"Su_Mo_Tu_We_Th_Fr_Sa".split("_"),� 412 weekdaysMin:function(a){� 413 return this._weekdaysMin[a.day()]� 414 },� 415 weekdaysParse:function(a){� 416 var b,c,d;� 417 for(this._weekdaysParse||(this._weekdaysParse=[]),b=0;7>b;b++)if(this._weekdaysParse[b]||(c=L([2e3,1]).day(b),d="^"+this.weekdays(c,"")+"|^"+this.weekdaysShort(c,"")+"|^"+this.weekdaysMin(c,""),this._weekdaysParse[b]=new RegExp(d.replace(".",""),"i")),this._weekdaysParse[b].test(a))return b� 418 },� 419 _longDateFormat:{� 420 LT:"h:mm A",� 421 L:"MM/DD/YYYY",� 422 LL:"MMMM D YYYY",� 423 LLL:"MMMM D YYYY LT",� 424 LLLL:"dddd, MMMM D YYYY LT"� 425 },� 426 longDateFormat:function(a){� 427 var b=this._longDateFormat[a];� 428 return!b&&this._longDateFormat[a.toUpperCase()]&&(b=this._longDateFormat[a.toUpperCase()].replace(/MMMM|MM|DD|dddd/g,function(a){� 429 return a.slice(1)� 430 }),this._longDateFormat[a]=b),b� 431 },� 432 isPM:function(a){� 433 return"p"===(a+"").toLowerCase().charAt(0)� 434 },� 435 _meridiemParse:/[ap]\.?m?\.?/i,� 436 meridiem:function(a,b,c){� 437 return a>11?c?"pm":"PM":c?"am":"AM"� 438 },� 439 _calendar:{� 440 sameDay:"[Today at] LT",� 441 nextDay:"[Tomorrow at] LT",� 442 nextWeek:"dddd [at] LT",� 443 lastDay:"[Yesterday at] LT",� 444 lastWeek:"[Last] dddd [at] LT",� 445 sameElse:"L"� 446 },� 447 calendar:function(a,b){� 448 var c=this._calendar[a];� 449 return"function"==typeof c?c.apply(b):c� 450 },� 451 _relativeTime:{� 452 future:"in %s",� 453 past:"%s ago",� 454 s:"a few seconds",� 455 m:"a minute",� 456 mm:"%d minutes",� 457 h:"an hour",� 458 hh:"%d hours",� 459 d:"a day",� 460 dd:"%d days",� 461 M:"a month",� 462 MM:"%d months",� 463 y:"a year",� 464 yy:"%d years"� 465 },� 466 relativeTime:function(a,b,c,d){� 467 var e=this._relativeTime[c];� 468 return"function"==typeof e?e(a,b,c,d):e.replace(/%d/i,a)� 469 },� 470 pastFuture:function(a,b){� 471 var c=this._relativeTime[a>0?"future":"past"];� 472 return"function"==typeof c?c(b):c.replace(/%s/i,b)� 473 },� 474 ordinal:function(a){� 475 return this._ordinal.replace("%d",a)� 476 },� 477 _ordinal:"%d",� 478 preparse:function(a){� 479 return a� 480 },� 481 postformat:function(a){� 482 return a� 483 },� 484 week:function(a){� 485 return G(a,this._week.dow,this._week.doy).week� 486 },� 487 _week:{� 488 dow:0,� 489 doy:6� 490 }� 491}),L=function(a,b,c){� 492 return H({� 493 _i:a,� 494 _f:b,� 495 _l:c,� 496 _isUTC:!1� 497 })� 498 },L.utc=function(a,b,c){� 499 return H({� 500 _useUTC:!0,� 501 _isUTC:!0,� 502 _l:c,� 503 _i:a,� 504 _f:b� 505 }).utc()� 506 },L.unix=function(a){� 507 return L(1e3*a)� 508 },L.duration=function(a,b){�
509 var c,d,e=L.isDuration(a),g="number"==typeof a,h=e?a._input:g?{}:a,i=S.exec(a);� 510 return g?b?h[b]=a:h.milliseconds=a:i&&(c="-"===i[1]?-1:1,h={� 511 y:0,� 512 d:~~i[2]*c,� 513 h:~~i[3]*c,� 514 m:~~i[4]*c,� 515 s:~~i[5]*c,� 516 ms:~~i[6]*c� 517 }),d=new f(h),e&&a.hasOwnProperty("_lang")&&(d._lang=a._lang),d� 518 },L.version=N,L.defaultFormat=db,L.updateOffset=function(){},L.lang=function(a,b){� 519 return a?(a=a.toLowerCase(),a=a.replace("_","-"),b?n(a,b):null===b?(o(a),a="en"):P[a]||p(a),L.duration.fn._lang=L.fn._lang=p(a),void 0):L.fn._lang._abbr� 520 },L.langData=function(a){� 521 return a&&a._lang&&a._lang._abbr&&(a=a._lang._abbr),p(a)� 522 },L.isMoment=function(a){� 523 return a instanceof e� 524 },L.isDuration=function(a){� 525 return a instanceof f� 526 },g(L.fn=e.prototype,{� 527 clone:function(){� 528 return L(this)� 529 },� 530 valueOf:function(){� 531 return+this._d+6e4*(this._offset||0)� 532 },� 533 unix:function(){� 534 return Math.floor(+this/1e3)� 535 },� 536 toString:function(){� 537 return this.format("ddd MMM DD YYYY HH:mm:ss [GMT]ZZ")� 538 },� 539 toDate:function(){� 540 return this._offset?new Date(+this):this._d� 541 },� 542 toISOString:function(){� 543 return s(L(this).utc(),"YYYY-MM-DD[T]HH:mm:ss.SSS[Z]")� 544 },� 545 toArray:function(){� 546 var a=this;� 547 return[a.year(),a.month(),a.date(),a.hours(),a.minutes(),a.seconds(),a.milliseconds()]� 548 },� 549 isValid:function(){� 550 return null==this._isValid&&(this._isValid=this._a?!l(this._a,(this._isUTC?L.utc(this._a):L(this._a)).toArray()):!isNaN(this._d.getTime())),!!this._isValid� 551 },� 552 invalidAt:function(){� 553 var a,b=this._a,c=(this._isUTC?L.utc(this._a):L(this._a)).toArray();� 554 for(a=6;a>=0&&b[a]===c[a];--a);� 555 return a� 556 },� 557 utc:function(){� 558 return this.zone(0)� 559 },� 560 local:function(){� 561 return this.zone(0),this._isUTC=!1,this� 562 },� 563 format:function(a){� 564 var b=s(this,a||L.defaultFormat);� 565 return this.lang().postformat(b)� 566 },� 567 add:function(a,b){� 568 var c;� 569 return c="string"==typeof a?L.duration(+b,a):L.duration(a,b),j(this,c,1),this� 570 },� 571 subtract:function(a,b){� 572 var c;� 573 return c="string"==typeof a?L.duration(+b,a):L.duration(a,b),j(this,c,-1),this� 574 },� 575 diff:function(a,b,c){� 576 var d,e,f=this._isUTC?L(a).zone(this._offset||0):L(a).local(),g=6e4*(this.zone()-f.zone());� 577 return b=m(b),"year"===b||"month"===b?(d=432e5*(this.daysInMonth()+f.daysInMonth()),e=12*(this.year()-f.year())+(this.month()-f.month()),e+=(this-L(this).startOf("month")-(f-L(f).startOf("month")))/d,e-=6e4*(this.zone()-L(this).startOf("month").zone()-(f.zone()-L(f).startOf("month").zone()))/d,"year"===b&&(e/=12)):(d=this-f,e="second"===b?d/1e3:"minute"===b?d/6e4:"hour"===b?d/36e5:"day"===b?(d-g)/864e5:"week"===b?(d-g)/6048e5:d),c?e:h(e)� 578 },� 579 from:function(a,b){� 580 return L.duration(this.diff(a)).lang(this.lang()._abbr).humanize(!b)� 581 },� 582 fromNow:function(a){� 583 return this.from(L(),a)� 584 },� 585 calendar:function(){� 586 var a=this.diff(L().zone(this.zone()).startOf("day"),"days",!0),b=-6>a?"sameElse":-1>a?"lastWeek":0>a?"lastDay":1>a?"sameDay":2>a?"nextDay":7>a?"nextWeek":"sameElse";� 587 return this.format(this.lang().calendar(b,this))� 588 },� 589 isLeapYear:function(){� 590 var a=this.year();� 591 return 0===a%4&&0!==a%100||0===a%400� 592 },� 593 isDST:function(){� 594 return this.zone()<this.clone().month(0).zone()||this.zone()<this.clone().month(5).zone()� 595 },� 596 day:function(a){� 597 var b=this._isUTC?this._d.getUTCDay():this._d.getDay();� 598 return null!=a?"string"==typeof a&&(a=this.lang().weekdaysParse(a),"number"!=typeof a)?this:this.add({� 599 d:a-b� 600 }):b� 601 },� 602 month:function(a){� 603 var b,c=this._isUTC?"UTC":"";� 604 return null!=a?"string"==typeof a&&(a=this.lang().monthsParse(a),"number"!=typeof a)?this:(b=this.date(),this.date(1),this._d["set"+c+"Month"](a),this.date(Math.min(b,this.daysInMonth())),L.updateOffset(this),this):this._d["get"+c+"Month"]()� 605 },� 606 startOf:function(a){� 607 switch(a=m(a)){� 608 case"year":� 609 this.month(0);� 610 case"month":� 611 this.date(1);� 612 case"week":case"isoweek":case"day":� 613 this.hours(0);� 614 case"hour":� 615 this.minutes(0);� 616 case"minute":� 617 this.seconds(0);� 618 case"second":� 619 this.milliseconds(0)� 620 }� 621 return"week"===a?this.weekday(0):"isoweek"===a&&this.isoWeekday(1),this� 622 },� 623 endOf:function(a){� 624 return a=m(a),this.startOf(a).add("isoweek"===a?"week":a,1).subtract("ms",1)� 625 },� 626 isAfter:function(a,b){� 627 return b="undefined"!=typeof b?b:"millisecond",+this.clone().startOf(b)>+L(a).startOf(b)� 628 },� 629 isBefore:function(a,b){� 630 return b="undefined"!=typeof b?b:"millisecond",+this.clone().startOf(b)<+L(a).startOf(b)� 631 },� 632 isSame:function(a,b){� 633 return b="undefined"!=typeof b?b:"millisecond",+this.clone().startOf(b)===+L(a).startOf(b)� 634 },� 635 min:function(a){� 636 return a=L.apply(null,arguments),this>a?this:a� 637 },� 638 max:function(a){� 639 return a=L.apply(null,arguments),a>this?this:a� 640 },� 641 zone:function(a){� 642 var b=this._offset||0;� 643 return null==a?this._isUTC?b:this._d.getTimezoneOffset():("string"==typeof a&&(a=v(a)),Math.abs(a)<16&&(a=60*a),this._offset=a,this._isUTC=!0,b!==a&&j(this,L.duration(b-a,"m"),1,!0),this)� 644 },� 645 zoneAbbr:function(){� 646 return this._isUTC?"UTC":""� 647 },� 648 zoneName:function(){� 649 return this._isUTC?"Coordinated Universal Time":""� 650 },� 651 hasAlignedHourOffset:function(a){� 652 return a=a?L(a).zone():0,0===(this.zone()-a)%60� 653 },� 654 daysInMonth:function(){� 655 return L.utc([this.year(),this.month()+1,0]).date()� 656 },� 657 dayOfYear:function(a){� 658 var b=O((L(this).startOf("day")-L(this).startOf("year"))/864e5)+1;� 659 return null==a?b:this.add("d",a-b)� 660 },� 661 weekYear:function(a){� 662 var b=G(this,this.lang()._week.dow,this.lang()._week.doy).year;� 663 return null==a?b:this.add("y",a-b)� 664 },� 665 isoWeekYear:function(a){� 666 var b=G(this,1,4).year;� 667 return null==a?b:this.add("y",a-b)� 668 },� 669 week:function(a){� 670 var b=this.lang().week(this);� 671 return null==a?b:this.add("d",7*(a-b))� 672 },� 673 isoWeek:function(a){� 674 var b=G(this,1,4).week;� 675 return null==a?b:this.add("d",7*(a-b))� 676 },� 677 weekday:function(a){� 678 var b=(this._d.getDay()+7-this.lang()._week.dow)%7;� 679 return null==a?b:this.add("d",a-b)� 680 },� 681 isoWeekday:function(a){� 682 return null==a?this.day()||7:this.day(this.day()%7?a:a-7)� 683 },� 684 get:function(a){� 685 return a=m(a),this[a.toLowerCase()]()� 686 },� 687 set:function(a,b){� 688 a=m(a),this[a.toLowerCase()](b)� 689 },� 690 lang:function(b){� 691 return b===a?this._lang:(this._lang=p(b),this)� 692 }� 693 }),M=0;M<gb.length;M++)I(gb[M].toLowerCase().replace(/s$/,""),gb[M]);� 694I("year","FullYear"),L.fn.days=L.fn.day,L.fn.months=L.fn.month,L.fn.weeks=L.fn.week,L.fn.isoWeeks=L.fn.isoWeek,L.fn.toJSON=L.fn.toISOString,g(L.duration.fn=f.prototype,{� 695 _bubble:function(){� 696 var a,b,c,d,e=this._milliseconds,f=this._days,g=this._months,i=this._data;� 697 i.milliseconds=e%1e3,a=h(e/1e3),i.seconds=a%60,b=h(a/60),i.minutes=b%60,c=h(b/60),i.hours=c%24,f+=h(c/24),i.days=f%30,g+=h(f/30),i.months=g%12,d=h(g/12),i.years=d� 698 },� 699 weeks:function(){� 700 return h(this.days()/7)� 701 },�
702 valueOf:function(){� 703 return this._milliseconds+864e5*this._days+2592e6*(this._months%12)+31536e6*~~(this._months/12)� 704 },� 705 humanize:function(a){� 706 var b=+this,c=F(b,!a,this.lang());� 707 return a&&(c=this.lang().pastFuture(b,c)),this.lang().postformat(c)� 708 },� 709 add:function(a,b){� 710 var c=L.duration(a,b);� 711 return this._milliseconds+=c._milliseconds,this._days+=c._days,this._months+=c._months,this._bubble(),this� 712 },� 713 subtract:function(a,b){� 714 var c=L.duration(a,b);� 715 return this._milliseconds-=c._milliseconds,this._days-=c._days,this._months-=c._months,this._bubble(),this� 716 },� 717 get:function(a){� 718 return a=m(a),this[a.toLowerCase()+"s"]()� 719 },� 720 as:function(a){� 721 return a=m(a),this["as"+a.charAt(0).toUpperCase()+a.slice(1)+"s"]()� 722 },� 723 lang:L.fn.lang� 724 });� 725for(M in hb)hb.hasOwnProperty(M)&&(K(M,hb[M]),J(M.toLowerCase()));K("Weeks",6048e5),L.duration.fn.asMonths=function(){� 726 return(+this-31536e6*this.years())/2592e6+12*this.years()� 727 },L.lang("en",{� 728 ordinal:function(a){� 729 var b=a%10,c=1===~~(a%100/10)?"th":1===b?"st":2===b?"nd":3===b?"rd":"th";� 730 return a+c� 731 }� 732 }),Q&&(module.exports=L),"undefined"==typeof ender&&(this.moment=L),"function"==typeof define&&define.amd&&define("moment",[],function(){� 733 return L� 734 })� 735}).call(this);� 736// Livestamp.js / v1.1.2 / (c) 2012 Matt Bradley / MIT License� 737(function($, moment) {� 738 var updateInterval = 1e3,� 739 paused = false,� 740 $livestamps = $([]),� 741� 742 init = function() {� 743 livestampGlobal.resume();� 744 },� 745� 746 prep = function($el, timestamp) {� 747 var oldData = $el.data('livestampdata');� 748 if (typeof timestamp == 'number')� 749 timestamp *= 1e3;� 750� 751 $el.removeAttr('data-livestamp')� 752 .removeData('livestamp');� 753� 754 timestamp = moment(timestamp);� 755 if (moment.isMoment(timestamp) && !isNaN(+timestamp)) {� 756 var newData = $.extend({ }, {� 757 'original': $el.contents()� 758 }, oldData);� 759 newData.moment = moment(timestamp);� 760� 761 $el.data('livestampdata', newData).empty();� 762 $livestamps.push($el[0]);� 763 }� 764 },� 765� 766 run = function() {� 767 if (paused) return;� 768 livestampGlobal.update();� 769 setTimeout(run, updateInterval);� 770 },� 771� 772 livestampGlobal = {� 773 update: function() {� 774 $('[data-livestamp]').each(function() {� 775 var $this = $(this);� 776 prep($this, $this.data('livestamp'));� 777 });� 778� 779 var toRemove = [];� 780 $livestamps.each(function() {� 781 var $this = $(this),� 782 data = $this.data('livestampdata');� 783� 784 if (data === undefined)� 785 toRemove.push(this);� 786 else if (moment.isMoment(data.moment)) {� 787 var from = $this.html(),� 788 to = data.moment.fromNow();� 789� 790 if (from != to) {� 791 var e = $.Event('change.livestamp');� 792 $this.trigger(e, [from, to]);� 793 if (!e.isDefaultPrevented())� 794 $this.html(to);� 795 }� 796 }� 797 });� 798� 799 $livestamps = $livestamps.not(toRemove);� 800 },� 801� 802 pause: function() {� 803 paused = true;� 804 },� 805� 806 resume: function() {� 807 paused = false;� 808 run();� 809 },� 810� 811 interval: function(interval) {� 812 if (interval === undefined)� 813 return updateInterval;� 814 updateInterval = interval;� 815 }� 816 },� 817� 818 livestampLocal = {� 819 add: function($el, timestamp) {� 820 if (typeof timestamp == 'number')� 821 timestamp *= 1e3;� 822 timestamp = moment(timestamp);� 823� 824 if (moment.isMoment(timestamp) && !isNaN(+timestamp)) {� 825 $el.each(function() {� 826 prep($(this), timestamp);� 827 });�
828 livestampGlobal.update();� 829 }� 830� 831 return $el;� 832 },� 833� 834 destroy: function($el) {� 835 $livestamps = $livestamps.not($el);� 836 $el.each(function() {� 837 var $this = $(this),� 838 data = $this.data('livestampdata');� 839� 840 if (data === undefined)� 841 return $el;� 842� 843 $this� 844 .html(data.original ? data.original : '')� 845 .removeData('livestampdata');� 846 });� 847� 848 return $el;� 849 },� 850� 851 isLivestamp: function($el) {� 852 return $el.data('livestampdata') !== undefined;� 853 }� 854 };� 855� 856 $.livestamp = livestampGlobal;� 857 $(init);� 858 $.fn.livestamp = function(method, options) {� 859 if (!livestampLocal[method]) {� 860 options = method;� 861 method = 'add';� 862 }� 863� 864 return livestampLocal[method](this, options);� 865 };� 866})(jQuery, moment);
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.