diff --git a/README.md b/README.md index 4ce3d9c..e440693 100644 --- a/README.md +++ b/README.md @@ -26,3 +26,4 @@ * HighCharts : [Vue-HighCharts](https://github.com/weizhenye/vue-highcharts) * Vue Analytics : [Vue-ua](https://github.com/ScreamZ/vue-analytics) * Date picker : [Vue-Flatpickr](https://github.com/jrainlau/vue-flatpickr) +* File Uploader : [Vue-Dropzone](https://github.com/rowanwins/vue-dropzone) diff --git a/dist/build.js b/dist/build.js index fd6e962..47a003b 100644 --- a/dist/build.js +++ b/dist/build.js @@ -1,9 +1,9 @@ -!function(t){function e(r){if(n[r])return n[r].exports;var i=n[r]={i:r,l:!1,exports:{}};return t[r].call(i.exports,i,i.exports,e),i.l=!0,i.exports}var n={};e.m=t,e.c=n,e.i=function(t){return t},e.d=function(t,n,r){e.o(t,n)||Object.defineProperty(t,n,{configurable:!1,enumerable:!0,get:r})},e.n=function(t){var n=t&&t.__esModule?function(){return t.default}:function(){return t};return e.d(n,"a",n),n},e.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},e.p="/dist/",e(e.s=238)}([function(t,e,n){(function(t){!function(e,n){t.exports=n()}(0,function(){"use strict";function e(){return yr.apply(null,arguments)}function r(t){return t instanceof Array||"[object Array]"===Object.prototype.toString.call(t)}function i(t){return null!=t&&"[object Object]"===Object.prototype.toString.call(t)}function a(t){var e;for(e in t)return!1;return!0}function o(t){return void 0===t}function s(t){return"number"==typeof t||"[object Number]"===Object.prototype.toString.call(t)}function c(t){return t instanceof Date||"[object Date]"===Object.prototype.toString.call(t)}function l(t,e){var n,r=[];for(n=0;n0)for(n=0;n0?"future":"past"];return Y(n)?n(e):n.replace(/%s/i,e)}function E(t,e){var n=t.toLowerCase();Ar[n]=Ar[n+"s"]=Ar[e]=t}function z(t){return"string"==typeof t?Ar[t]||Ar[t.toLowerCase()]:void 0}function I(t){var e,n,r={};for(n in t)d(t,n)&&(e=z(n))&&(r[e]=t[n]);return r}function $(t,e){jr[t]=e}function W(t){var e=[];for(var n in t)e.push({unit:n,priority:jr[n]});return e.sort(function(t,e){return t.priority-e.priority}),e}function N(t,n){return function(r){return null!=r?(R(this,t,r),e.updateOffset(this,n),this):F(this,t)}}function F(t,e){return t.isValid()?t._d["get"+(t._isUTC?"UTC":"")+e]():NaN}function R(t,e,n){t.isValid()&&t._d["set"+(t._isUTC?"UTC":"")+e](n)}function B(t){return t=z(t),Y(this[t])?this[t]():this}function G(t,e){if("object"==typeof t){t=I(t);for(var n=W(t),r=0;r=0?n?"+":"":"-")+Math.pow(10,Math.max(0,i)).toString().substr(1)+r}function J(t,e,n,r){var i=r;"string"==typeof r&&(i=function(){return this[r]()}),t&&(zr[t]=i),e&&(zr[e[0]]=function(){return U(i.apply(this,arguments),e[1],e[2])}),n&&(zr[n]=function(){return this.localeData().ordinal(i.apply(this,arguments),t)})}function q(t){return t.match(/\[[\s\S]/)?t.replace(/^\[|\]$/g,""):t.replace(/\\/g,"")}function V(t){var e,n,r=t.match(Hr);for(e=0,n=r.length;e=0&&Or.test(t);)t=t.replace(Or,n),Or.lastIndex=0,r-=1;return t}function Z(t,e,n){Fr[t]=Y(e)?e:function(t,r){return t&&n?n:e}}function Q(t,e){return d(Fr,t)?Fr[t](e._strict,e._locale):new RegExp(tt(t))}function tt(t){return et(t.replace("\\","").replace(/\\(\[)|\\(\])|\[([^\]\[]*)\]|\\(.)/g,function(t,e,n,r,i){return e||n||r||i}))}function et(t){return t.replace(/[-\/\\^$*+?.()|[\]{}]/g,"\\$&")}function nt(t,e){var n,r=e;for("string"==typeof t&&(t=[t]),s(e)&&(r=function(t,n){n[e]=x(t)}),n=0;n=0&&isFinite(s.getFullYear())&&s.setFullYear(t),s}function yt(t){var e=new Date(Date.UTC.apply(null,arguments));return t<100&&t>=0&&isFinite(e.getUTCFullYear())&&e.setUTCFullYear(t),e}function xt(t,e,n){var r=7+e-n;return-((7+yt(t,0,r).getUTCDay()-e)%7)+r-1}function Mt(t,e,n,r,i){var a,o,s=(7+n-r)%7,c=xt(t,r,i),l=1+7*(e-1)+s+c;return l<=0?(a=t-1,o=_t(a)+l):l>_t(t)?(a=t+1,o=l-_t(t)):(a=t,o=l),{year:a,dayOfYear:o}}function wt(t,e,n){var r,i,a=xt(t.year(),e,n),o=Math.floor((t.dayOfYear()-a-1)/7)+1;return o<1?(i=t.year()-1,r=o+kt(i,e,n)):o>kt(t.year(),e,n)?(r=o-kt(t.year(),e,n),i=t.year()+1):(i=t.year(),r=o),{week:r,year:i}}function kt(t,e,n){var r=xt(t,e,n),i=xt(t+1,e,n);return(_t(t)-r+i)/7}function Lt(t){return wt(t,this._week.dow,this._week.doy).week}function Yt(){return this._week.dow}function Tt(){return this._week.doy}function Dt(t){var e=this.localeData().week(this);return null==t?e:this.add(7*(t-e),"d")}function St(t){var e=wt(this,1,4).week;return null==t?e:this.add(7*(t-e),"d")}function Ct(t,e){return"string"!=typeof t?t:isNaN(t)?(t=e.weekdaysParse(t),"number"==typeof t?t:null):parseInt(t,10)}function Pt(t,e){return"string"==typeof t?e.weekdaysParse(t)%7||7:isNaN(t)?null:t}function At(t,e){return t?r(this._weekdays)?this._weekdays[t.day()]:this._weekdays[this._weekdays.isFormat.test(e)?"format":"standalone"][t.day()]:r(this._weekdays)?this._weekdays:this._weekdays.standalone}function jt(t){return t?this._weekdaysShort[t.day()]:this._weekdaysShort}function Ht(t){return t?this._weekdaysMin[t.day()]:this._weekdaysMin}function Ot(t,e,n){var r,i,a,o=t.toLocaleLowerCase();if(!this._weekdaysParse)for(this._weekdaysParse=[],this._shortWeekdaysParse=[],this._minWeekdaysParse=[],r=0;r<7;++r)a=h([2e3,1]).day(r),this._minWeekdaysParse[r]=this.weekdaysMin(a,"").toLocaleLowerCase(),this._shortWeekdaysParse[r]=this.weekdaysShort(a,"").toLocaleLowerCase(),this._weekdaysParse[r]=this.weekdays(a,"").toLocaleLowerCase();return n?"dddd"===e?(i=Qr.call(this._weekdaysParse,o),i!==-1?i:null):"ddd"===e?(i=Qr.call(this._shortWeekdaysParse,o),i!==-1?i:null):(i=Qr.call(this._minWeekdaysParse,o),i!==-1?i:null):"dddd"===e?(i=Qr.call(this._weekdaysParse,o))!==-1?i:(i=Qr.call(this._shortWeekdaysParse,o))!==-1?i:(i=Qr.call(this._minWeekdaysParse,o),i!==-1?i:null):"ddd"===e?(i=Qr.call(this._shortWeekdaysParse,o))!==-1?i:(i=Qr.call(this._weekdaysParse,o))!==-1?i:(i=Qr.call(this._minWeekdaysParse,o),i!==-1?i:null):(i=Qr.call(this._minWeekdaysParse,o))!==-1?i:(i=Qr.call(this._weekdaysParse,o))!==-1?i:(i=Qr.call(this._shortWeekdaysParse,o),i!==-1?i:null)}function Et(t,e,n){var r,i,a;if(this._weekdaysParseExact)return Ot.call(this,t,e,n);for(this._weekdaysParse||(this._weekdaysParse=[],this._minWeekdaysParse=[],this._shortWeekdaysParse=[],this._fullWeekdaysParse=[]),r=0;r<7;r++){if(i=h([2e3,1]).day(r),n&&!this._fullWeekdaysParse[r]&&(this._fullWeekdaysParse[r]=new RegExp("^"+this.weekdays(i,"").replace(".",".?")+"$","i"),this._shortWeekdaysParse[r]=new RegExp("^"+this.weekdaysShort(i,"").replace(".",".?")+"$","i"),this._minWeekdaysParse[r]=new RegExp("^"+this.weekdaysMin(i,"").replace(".",".?")+"$","i")),this._weekdaysParse[r]||(a="^"+this.weekdays(i,"")+"|^"+this.weekdaysShort(i,"")+"|^"+this.weekdaysMin(i,""),this._weekdaysParse[r]=new RegExp(a.replace(".",""),"i")),n&&"dddd"===e&&this._fullWeekdaysParse[r].test(t))return r;if(n&&"ddd"===e&&this._shortWeekdaysParse[r].test(t))return r;if(n&&"dd"===e&&this._minWeekdaysParse[r].test(t))return r;if(!n&&this._weekdaysParse[r].test(t))return r}}function zt(t){if(!this.isValid())return null!=t?this:NaN;var e=this._isUTC?this._d.getUTCDay():this._d.getDay();return null!=t?(t=Ct(t,this.localeData()),this.add(t-e,"d")):e}function It(t){if(!this.isValid())return null!=t?this:NaN;var e=(this.day()+7-this.localeData()._week.dow)%7;return null==t?e:this.add(t-e,"d")}function $t(t){if(!this.isValid())return null!=t?this:NaN;if(null!=t){var e=Pt(t,this.localeData());return this.day(this.day()%7?e:e-7)}return this.day()||7}function Wt(t){return this._weekdaysParseExact?(d(this,"_weekdaysRegex")||Rt.call(this),t?this._weekdaysStrictRegex:this._weekdaysRegex):(d(this,"_weekdaysRegex")||(this._weekdaysRegex=di),this._weekdaysStrictRegex&&t?this._weekdaysStrictRegex:this._weekdaysRegex)}function Nt(t){return this._weekdaysParseExact?(d(this,"_weekdaysRegex")||Rt.call(this),t?this._weekdaysShortStrictRegex:this._weekdaysShortRegex):(d(this,"_weekdaysShortRegex")||(this._weekdaysShortRegex=ui),this._weekdaysShortStrictRegex&&t?this._weekdaysShortStrictRegex:this._weekdaysShortRegex)}function Ft(t){return this._weekdaysParseExact?(d(this,"_weekdaysRegex")||Rt.call(this),t?this._weekdaysMinStrictRegex:this._weekdaysMinRegex):(d(this,"_weekdaysMinRegex")||(this._weekdaysMinRegex=hi),this._weekdaysMinStrictRegex&&t?this._weekdaysMinStrictRegex:this._weekdaysMinRegex)}function Rt(){function t(t,e){return e.length-t.length}var e,n,r,i,a,o=[],s=[],c=[],l=[];for(e=0;e<7;e++)n=h([2e3,1]).day(e),r=this.weekdaysMin(n,""),i=this.weekdaysShort(n,""),a=this.weekdays(n,""),o.push(r),s.push(i),c.push(a),l.push(r),l.push(i),l.push(a);for(o.sort(t),s.sort(t),c.sort(t),l.sort(t),e=0;e<7;e++)s[e]=et(s[e]),c[e]=et(c[e]),l[e]=et(l[e]);this._weekdaysRegex=new RegExp("^("+l.join("|")+")","i"),this._weekdaysShortRegex=this._weekdaysRegex,this._weekdaysMinRegex=this._weekdaysRegex,this._weekdaysStrictRegex=new RegExp("^("+c.join("|")+")","i"),this._weekdaysShortStrictRegex=new RegExp("^("+s.join("|")+")","i"),this._weekdaysMinStrictRegex=new RegExp("^("+o.join("|")+")","i")}function Bt(){return this.hours()%12||12}function Gt(){return this.hours()||24}function Ut(t,e){J(t,0,0,function(){return this.localeData().meridiem(this.hours(),this.minutes(),e)})}function Jt(t,e){return e._meridiemParse}function qt(t){return"p"===(t+"").toLowerCase().charAt(0)}function Vt(t,e,n){return t>11?n?"pm":"PM":n?"am":"AM"}function Xt(t){return t?t.toLowerCase().replace("_","-"):t}function Kt(t){for(var e,n,r,i,a=0;a0;){if(r=Zt(i.slice(0,e).join("-")))return r;if(n&&n.length>=e&&M(i,n,!0)>=e-1)break;e--}a++}return null}function Zt(e){var r=null;if(!_i[e]&&void 0!==t&&t&&t.exports)try{r=fi._abbr,n(179)("./"+e),Qt(r)}catch(t){}return _i[e]}function Qt(t,e){var n;return t&&(n=o(e)?ne(t):te(t,e))&&(fi=n),fi._abbr}function te(t,e){if(null!==e){var n=pi;if(e.abbr=t,null!=_i[t])L("defineLocaleOverride","use moment.updateLocale(localeName, config) to change an existing locale. moment.defineLocale(localeName, config) should only be used for creating a new locale See http://momentjs.com/guides/#/warnings/define-locale/ for more info."),n=_i[t]._config;else if(null!=e.parentLocale){if(null==_i[e.parentLocale])return gi[e.parentLocale]||(gi[e.parentLocale]=[]),gi[e.parentLocale].push({name:t,config:e}),null;n=_i[e.parentLocale]._config}return _i[t]=new S(D(n,e)),gi[t]&&gi[t].forEach(function(t){te(t.name,t.config)}),Qt(t),_i[t]}return delete _i[t],null}function ee(t,e){if(null!=e){var n,r=pi;null!=_i[t]&&(r=_i[t]._config),e=D(r,e),n=new S(e),n.parentLocale=_i[t],_i[t]=n,Qt(t)}else null!=_i[t]&&(null!=_i[t].parentLocale?_i[t]=_i[t].parentLocale:null!=_i[t]&&delete _i[t]);return _i[t]}function ne(t){var e;if(t&&t._locale&&t._locale._abbr&&(t=t._locale._abbr),!t)return fi;if(!r(t)){if(e=Zt(t))return e;t=[t]}return Kt(t)}function re(){return Dr(_i)}function ie(t){var e,n=t._a;return n&&m(t).overflow===-2&&(e=n[Gr]<0||n[Gr]>11?Gr:n[Ur]<1||n[Ur]>at(n[Br],n[Gr])?Ur:n[Jr]<0||n[Jr]>24||24===n[Jr]&&(0!==n[qr]||0!==n[Vr]||0!==n[Xr])?Jr:n[qr]<0||n[qr]>59?qr:n[Vr]<0||n[Vr]>59?Vr:n[Xr]<0||n[Xr]>999?Xr:-1,m(t)._overflowDayOfYear&&(eUr)&&(e=Ur),m(t)._overflowWeeks&&e===-1&&(e=Kr),m(t)._overflowWeekday&&e===-1&&(e=Zr),m(t).overflow=e),t}function ae(t){var e,n,r,i,a,o,s=t._i,c=bi.exec(s)||vi.exec(s);if(c){for(m(t).iso=!0,e=0,n=xi.length;e10?"YYYY ":"YY "),a="HH:mm"+(n[4]?":ss":""),n[1]){var u=new Date(n[2]),h=["Sun","Mon","Tue","Wed","Thu","Fri","Sat"][u.getDay()];if(n[1].substr(0,3)!==h)return m(t).weekdayMismatch=!0,void(t._isValid=!1)}switch(n[5].length){case 2:0===c?s=" +0000":(c=d.indexOf(n[5][1].toUpperCase())-12,s=(c<0?" -":" +")+(""+c).replace(/^-?/,"0").match(/..$/)[0]+"00");break;case 4:s=l[n[5]];break;default:s=l[" GMT"]}n[5]=s,t._i=n.splice(1).join(""),o=" ZZ",t._f=r+i+a+o,he(t),m(t).rfc2822=!0}else t._isValid=!1}function se(t){var n=wi.exec(t._i);if(null!==n)return void(t._d=new Date(+n[1]));ae(t),t._isValid===!1&&(delete t._isValid,oe(t),t._isValid===!1&&(delete t._isValid,e.createFromInputFallback(t)))}function ce(t,e,n){return null!=t?t:null!=e?e:n}function le(t){var n=new Date(e.now());return t._useUTC?[n.getUTCFullYear(),n.getUTCMonth(),n.getUTCDate()]:[n.getFullYear(),n.getMonth(),n.getDate()]}function de(t){var e,n,r,i,a=[];if(!t._d){for(r=le(t),t._w&&null==t._a[Ur]&&null==t._a[Gr]&&ue(t),null!=t._dayOfYear&&(i=ce(t._a[Br],r[Br]),(t._dayOfYear>_t(i)||0===t._dayOfYear)&&(m(t)._overflowDayOfYear=!0),n=yt(i,0,t._dayOfYear),t._a[Gr]=n.getUTCMonth(),t._a[Ur]=n.getUTCDate()),e=0;e<3&&null==t._a[e];++e)t._a[e]=a[e]=r[e];for(;e<7;e++)t._a[e]=a[e]=null==t._a[e]?2===e?1:0:t._a[e];24===t._a[Jr]&&0===t._a[qr]&&0===t._a[Vr]&&0===t._a[Xr]&&(t._nextDay=!0,t._a[Jr]=0),t._d=(t._useUTC?yt:vt).apply(null,a),null!=t._tzm&&t._d.setUTCMinutes(t._d.getUTCMinutes()-t._tzm),t._nextDay&&(t._a[Jr]=24)}}function ue(t){var e,n,r,i,a,o,s,c;if(e=t._w,null!=e.GG||null!=e.W||null!=e.E)a=1,o=4,n=ce(e.GG,t._a[Br],wt(ye(),1,4).year),r=ce(e.W,1),((i=ce(e.E,1))<1||i>7)&&(c=!0);else{a=t._locale._week.dow,o=t._locale._week.doy;var l=wt(ye(),a,o);n=ce(e.gg,t._a[Br],l.year),r=ce(e.w,l.week),null!=e.d?((i=e.d)<0||i>6)&&(c=!0):null!=e.e?(i=e.e+a,(e.e<0||e.e>6)&&(c=!0)):i=a}r<1||r>kt(n,a,o)?m(t)._overflowWeeks=!0:null!=c?m(t)._overflowWeekday=!0:(s=Mt(n,r,i,a,o),t._a[Br]=s.year,t._dayOfYear=s.dayOfYear)}function he(t){if(t._f===e.ISO_8601)return void ae(t);if(t._f===e.RFC_2822)return void oe(t);t._a=[],m(t).empty=!0;var n,r,i,a,o,s=""+t._i,c=s.length,l=0;for(i=K(t._f,t._locale).match(Hr)||[],n=0;n0&&m(t).unusedInput.push(o),s=s.slice(s.indexOf(r)+r.length),l+=r.length),zr[a]?(r?m(t).empty=!1:m(t).unusedTokens.push(a),it(a,r,t)):t._strict&&!r&&m(t).unusedTokens.push(a);m(t).charsLeftOver=c-l,s.length>0&&m(t).unusedInput.push(s),t._a[Jr]<=12&&m(t).bigHour===!0&&t._a[Jr]>0&&(m(t).bigHour=void 0),m(t).parsedDateParts=t._a.slice(0),m(t).meridiem=t._meridiem,t._a[Jr]=fe(t._locale,t._a[Jr],t._meridiem),de(t),ie(t)}function fe(t,e,n){var r;return null==n?e:null!=t.meridiemHour?t.meridiemHour(e,n):null!=t.isPM?(r=t.isPM(n),r&&e<12&&(e+=12),r||12!==e||(e=0),e):e}function me(t){var e,n,r,i,a;if(0===t._f.length)return m(t).invalidFormat=!0,void(t._d=new Date(NaN));for(i=0;ithis.clone().month(0).utcOffset()||this.utcOffset()>this.clone().month(5).utcOffset()}function Ne(){if(!o(this._isDSTShifted))return this._isDSTShifted;var t={};if(g(t,this),t=ge(t),t._a){var e=t._isUTC?h(t._a):ye(t._a);this._isDSTShifted=this.isValid()&&M(t._a,e.toArray())>0}else this._isDSTShifted=!1;return this._isDSTShifted}function Fe(){return!!this.isValid()&&!this._isUTC}function Re(){return!!this.isValid()&&this._isUTC}function Be(){return!!this.isValid()&&(this._isUTC&&0===this._offset)}function Ge(t,e){var n,r,i,a=t,o=null;return De(t)?a={ms:t._milliseconds,d:t._days,M:t._months}:s(t)?(a={},e?a[e]=t:a.milliseconds=t):(o=Ci.exec(t))?(n="-"===o[1]?-1:1,a={y:0,d:x(o[Ur])*n,h:x(o[Jr])*n,m:x(o[qr])*n,s:x(o[Vr])*n,ms:x(Se(1e3*o[Xr]))*n}):(o=Pi.exec(t))?(n="-"===o[1]?-1:1,a={y:Ue(o[2],n),M:Ue(o[3],n),w:Ue(o[4],n),d:Ue(o[5],n),h:Ue(o[6],n),m:Ue(o[7],n),s:Ue(o[8],n)}):null==a?a={}:"object"==typeof a&&("from"in a||"to"in a)&&(i=qe(ye(a.from),ye(a.to)),a={},a.ms=i.milliseconds,a.M=i.months),r=new Te(a),De(t)&&d(t,"_locale")&&(r._locale=t._locale),r}function Ue(t,e){var n=t&&parseFloat(t.replace(",","."));return(isNaN(n)?0:n)*e}function Je(t,e){var n={milliseconds:0,months:0};return n.months=e.month()-t.month()+12*(e.year()-t.year()),t.clone().add(n.months,"M").isAfter(e)&&--n.months,n.milliseconds=+e-+t.clone().add(n.months,"M"),n}function qe(t,e){var n;return t.isValid()&&e.isValid()?(e=Ae(e,t),t.isBefore(e)?n=Je(t,e):(n=Je(e,t),n.milliseconds=-n.milliseconds,n.months=-n.months),n):{milliseconds:0,months:0}}function Ve(t,e){return function(n,r){var i,a;return null===r||isNaN(+r)||(L(e,"moment()."+e+"(period, number) is deprecated. Please use moment()."+e+"(number, period). See http://momentjs.com/guides/#/warnings/add-inverted-param/ for more info."),a=n,n=r,r=a),n="string"==typeof n?+n:n,i=Ge(n,r),Xe(this,i,t),this}}function Xe(t,n,r,i){var a=n._milliseconds,o=Se(n._days),s=Se(n._months);t.isValid()&&(i=null==i||i,a&&t._d.setTime(t._d.valueOf()+a*r),o&&R(t,"Date",F(t,"Date")+o*r),s&&dt(t,F(t,"Month")+s*r),i&&e.updateOffset(t,o||s))}function Ke(t,e){var n=t.diff(e,"days",!0);return n<-6?"sameElse":n<-1?"lastWeek":n<0?"lastDay":n<1?"sameDay":n<2?"nextDay":n<7?"nextWeek":"sameElse"}function Ze(t,n){var r=t||ye(),i=Ae(r,this).startOf("day"),a=e.calendarFormat(this,i)||"sameElse",o=n&&(Y(n[a])?n[a].call(this,r):n[a]);return this.format(o||this.localeData().calendar(a,this,ye(r)))}function Qe(){return new b(this)}function tn(t,e){var n=v(t)?t:ye(t);return!(!this.isValid()||!n.isValid())&&(e=z(o(e)?"millisecond":e),"millisecond"===e?this.valueOf()>n.valueOf():n.valueOf()9999?X(t,"YYYYYY-MM-DD[T]HH:mm:ss.SSS[Z]"):Y(Date.prototype.toISOString)?this.toDate().toISOString():X(t,"YYYY-MM-DD[T]HH:mm:ss.SSS[Z]")}function un(){if(!this.isValid())return"moment.invalid(/* "+this._i+" */)";var t="moment",e="";this.isLocal()||(t=0===this.utcOffset()?"moment.utc":"moment.parseZone",e="Z");var n="["+t+'("]',r=0<=this.year()&&this.year()<=9999?"YYYY":"YYYYYY",i=e+'[")]';return this.format(n+r+"-MM-DD[T]HH:mm:ss.SSS"+i)}function hn(t){t||(t=this.isUtc()?e.defaultFormatUtc:e.defaultFormat);var n=X(this,t);return this.localeData().postformat(n)}function fn(t,e){return this.isValid()&&(v(t)&&t.isValid()||ye(t).isValid())?Ge({to:this,from:t}).locale(this.locale()).humanize(!e):this.localeData().invalidDate()}function mn(t){return this.from(ye(),t)}function pn(t,e){return this.isValid()&&(v(t)&&t.isValid()||ye(t).isValid())?Ge({from:this,to:t}).locale(this.locale()).humanize(!e):this.localeData().invalidDate()}function _n(t){return this.to(ye(),t)}function gn(t){var e;return void 0===t?this._locale._abbr:(e=ne(t),null!=e&&(this._locale=e),this)}function bn(){return this._locale}function vn(t){switch(t=z(t)){case"year":this.month(0);case"quarter":case"month":this.date(1);case"week":case"isoWeek":case"day":case"date":this.hours(0);case"hour":this.minutes(0);case"minute":this.seconds(0);case"second":this.milliseconds(0)}return"week"===t&&this.weekday(0),"isoWeek"===t&&this.isoWeekday(1),"quarter"===t&&this.month(3*Math.floor(this.month()/3)),this}function yn(t){return void 0===(t=z(t))||"millisecond"===t?this:("date"===t&&(t="day"),this.startOf(t).add(1,"isoWeek"===t?"week":t).subtract(1,"ms"))}function xn(){return this._d.valueOf()-6e4*(this._offset||0)}function Mn(){return Math.floor(this.valueOf()/1e3)}function wn(){return new Date(this.valueOf())}function kn(){var t=this;return[t.year(),t.month(),t.date(),t.hour(),t.minute(),t.second(),t.millisecond()]}function Ln(){var t=this;return{years:t.year(),months:t.month(),date:t.date(),hours:t.hours(),minutes:t.minutes(),seconds:t.seconds(),milliseconds:t.milliseconds()}}function Yn(){return this.isValid()?this.toISOString():null}function Tn(){return p(this)}function Dn(){return u({},m(this))}function Sn(){return m(this).overflow}function Cn(){return{input:this._i,format:this._f,locale:this._locale,isUTC:this._isUTC,strict:this._strict}}function Pn(t,e){J(0,[t,t.length],0,e)}function An(t){return En.call(this,t,this.week(),this.weekday(),this.localeData()._week.dow,this.localeData()._week.doy)}function jn(t){return En.call(this,t,this.isoWeek(),this.isoWeekday(),1,4)}function Hn(){return kt(this.year(),1,4)}function On(){var t=this.localeData()._week;return kt(this.year(),t.dow,t.doy)}function En(t,e,n,r,i){var a;return null==t?wt(this,r,i).year:(a=kt(t,r,i),e>a&&(e=a),zn.call(this,t,e,n,r,i))}function zn(t,e,n,r,i){var a=Mt(t,e,n,r,i),o=yt(a.year,0,a.dayOfYear);return this.year(o.getUTCFullYear()),this.month(o.getUTCMonth()),this.date(o.getUTCDate()),this}function In(t){return null==t?Math.ceil((this.month()+1)/3):this.month(3*(t-1)+this.month()%3)}function $n(t){var e=Math.round((this.clone().startOf("day")-this.clone().startOf("year"))/864e5)+1;return null==t?e:this.add(t-e,"d")}function Wn(t,e){e[Xr]=x(1e3*("0."+t))}function Nn(){return this._isUTC?"UTC":""}function Fn(){return this._isUTC?"Coordinated Universal Time":""}function Rn(t){return ye(1e3*t)}function Bn(){return ye.apply(null,arguments).parseZone()}function Gn(t){return t}function Un(t,e,n,r){var i=ne(),a=h().set(r,e);return i[n](a,t)}function Jn(t,e,n){if(s(t)&&(e=t,t=void 0),t=t||"",null!=e)return Un(t,e,n,"month");var r,i=[];for(r=0;r<12;r++)i[r]=Un(t,r,n,"month");return i}function qn(t,e,n,r){"boolean"==typeof t?(s(e)&&(n=e,e=void 0),e=e||""):(e=t,n=e,t=!1,s(e)&&(n=e,e=void 0),e=e||"");var i=ne(),a=t?i._week.dow:0;if(null!=n)return Un(e,(n+a)%7,r,"day");var o,c=[];for(o=0;o<7;o++)c[o]=Un(e,(o+a)%7,r,"day");return c}function Vn(t,e){return Jn(t,e,"months")}function Xn(t,e){return Jn(t,e,"monthsShort")}function Kn(t,e,n){return qn(t,e,n,"weekdays")}function Zn(t,e,n){return qn(t,e,n,"weekdaysShort")}function Qn(t,e,n){return qn(t,e,n,"weekdaysMin")}function tr(){var t=this._data;return this._milliseconds=Fi(this._milliseconds),this._days=Fi(this._days),this._months=Fi(this._months),t.milliseconds=Fi(t.milliseconds),t.seconds=Fi(t.seconds),t.minutes=Fi(t.minutes),t.hours=Fi(t.hours),t.months=Fi(t.months),t.years=Fi(t.years),this}function er(t,e,n,r){var i=Ge(e,n);return t._milliseconds+=r*i._milliseconds,t._days+=r*i._days,t._months+=r*i._months,t._bubble()}function nr(t,e){return er(this,t,e,1)}function rr(t,e){return er(this,t,e,-1)}function ir(t){return t<0?Math.floor(t):Math.ceil(t)}function ar(){var t,e,n,r,i,a=this._milliseconds,o=this._days,s=this._months,c=this._data;return a>=0&&o>=0&&s>=0||a<=0&&o<=0&&s<=0||(a+=864e5*ir(sr(s)+o),o=0,s=0),c.milliseconds=a%1e3,t=y(a/1e3),c.seconds=t%60,e=y(t/60),c.minutes=e%60,n=y(e/60),c.hours=n%24,o+=y(n/24),i=y(or(o)),s+=i,o-=ir(sr(i)),r=y(s/12),s%=12,c.days=o,c.months=s,c.years=r,this}function or(t){return 4800*t/146097}function sr(t){return 146097*t/4800}function cr(t){if(!this.isValid())return NaN;var e,n,r=this._milliseconds;if("month"===(t=z(t))||"year"===t)return e=this._days+r/864e5,n=this._months+or(e),"month"===t?n:n/12;switch(e=this._days+Math.round(sr(this._months)),t){case"week":return e/7+r/6048e5;case"day":return e+r/864e5;case"hour":return 24*e+r/36e5;case"minute":return 1440*e+r/6e4;case"second":return 86400*e+r/1e3;case"millisecond":return Math.floor(864e5*e)+r;default:throw new Error("Unknown unit "+t)}}function lr(){return this.isValid()?this._milliseconds+864e5*this._days+this._months%12*2592e6+31536e6*x(this._months/12):NaN}function dr(t){return function(){return this.as(t)}}function ur(t){return t=z(t),this.isValid()?this[t+"s"]():NaN}function hr(t){return function(){return this.isValid()?this._data[t]:NaN}}function fr(){return y(this.days()/7)}function mr(t,e,n,r,i){return i.relativeTime(e||1,!!n,t,r)}function pr(t,e,n){var r=Ge(t).abs(),i=ia(r.as("s")),a=ia(r.as("m")),o=ia(r.as("h")),s=ia(r.as("d")),c=ia(r.as("M")),l=ia(r.as("y")),d=i<=aa.ss&&["s",i]||i0,d[4]=n,mr.apply(null,d)}function _r(t){return void 0===t?ia:"function"==typeof t&&(ia=t,!0)}function gr(t,e){return void 0!==aa[t]&&(void 0===e?aa[t]:(aa[t]=e,"s"===t&&(aa.ss=e-1),!0))}function br(t){if(!this.isValid())return this.localeData().invalidDate();var e=this.localeData(),n=pr(this,!t,e);return t&&(n=e.pastFuture(+this,n)),e.postformat(n)}function vr(){if(!this.isValid())return this.localeData().invalidDate();var t,e,n,r=oa(this._milliseconds)/1e3,i=oa(this._days),a=oa(this._months);t=y(r/60),e=y(t/60),r%=60,t%=60,n=y(a/12),a%=12;var o=n,s=a,c=i,l=e,d=t,u=r,h=this.asSeconds();return h?(h<0?"-":"")+"P"+(o?o+"Y":"")+(s?s+"M":"")+(c?c+"D":"")+(l||d||u?"T":"")+(l?l+"H":"")+(d?d+"M":"")+(u?u+"S":""):"P0D"}var yr,xr;xr=Array.prototype.some?Array.prototype.some:function(t){for(var e=Object(this),n=e.length>>>0,r=0;r68?1900:2e3)};var ai=N("FullYear",!0);J("w",["ww",2],"wo","week"),J("W",["WW",2],"Wo","isoWeek"),E("week","w"),E("isoWeek","W"),$("week",5),$("isoWeek",5),Z("w",/\d\d?/),Z("ww",/\d\d?/,/\d\d/),Z("W",/\d\d?/),Z("WW",/\d\d?/,/\d\d/),rt(["w","ww","W","WW"],function(t,e,n,r){e[r.substr(0,1)]=x(t)});var oi={dow:0,doy:6};J("d",0,"do","day"),J("dd",0,0,function(t){return this.localeData().weekdaysMin(this,t)}),J("ddd",0,0,function(t){return this.localeData().weekdaysShort(this,t)}),J("dddd",0,0,function(t){return this.localeData().weekdays(this,t)}),J("e",0,0,"weekday"),J("E",0,0,"isoWeekday"),E("day","d"),E("weekday","e"),E("isoWeekday","E"),$("day",11),$("weekday",11),$("isoWeekday",11),Z("d",/\d\d?/),Z("e",/\d\d?/),Z("E",/\d\d?/),Z("dd",function(t,e){return e.weekdaysMinRegex(t)}),Z("ddd",function(t,e){return e.weekdaysShortRegex(t)}),Z("dddd",function(t,e){return e.weekdaysRegex(t)}),rt(["dd","ddd","dddd"],function(t,e,n,r){var i=n._locale.weekdaysParse(t,r,n._strict);null!=i?e.d=i:m(n).invalidWeekday=t}),rt(["d","e","E"],function(t,e,n,r){e[r]=x(t)});var si="Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),ci="Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),li="Su_Mo_Tu_We_Th_Fr_Sa".split("_"),di=Nr,ui=Nr,hi=Nr;J("H",["HH",2],0,"hour"),J("h",["hh",2],0,Bt),J("k",["kk",2],0,Gt),J("hmm",0,0,function(){return""+Bt.apply(this)+U(this.minutes(),2)}),J("hmmss",0,0,function(){return""+Bt.apply(this)+U(this.minutes(),2)+U(this.seconds(),2)}),J("Hmm",0,0,function(){return""+this.hours()+U(this.minutes(),2)}),J("Hmmss",0,0,function(){return""+this.hours()+U(this.minutes(),2)+U(this.seconds(),2)}),Ut("a",!0),Ut("A",!1),E("hour","h"),$("hour",13),Z("a",Jt),Z("A",Jt),Z("H",/\d\d?/),Z("h",/\d\d?/),Z("k",/\d\d?/),Z("HH",/\d\d?/,/\d\d/),Z("hh",/\d\d?/,/\d\d/),Z("kk",/\d\d?/,/\d\d/),Z("hmm",/\d\d\d\d?/),Z("hmmss",/\d\d\d\d\d\d?/),Z("Hmm",/\d\d\d\d?/),Z("Hmmss",/\d\d\d\d\d\d?/),nt(["H","HH"],Jr),nt(["k","kk"],function(t,e,n){var r=x(t);e[Jr]=24===r?0:r}),nt(["a","A"],function(t,e,n){n._isPm=n._locale.isPM(t),n._meridiem=t}),nt(["h","hh"],function(t,e,n){e[Jr]=x(t),m(n).bigHour=!0}),nt("hmm",function(t,e,n){var r=t.length-2;e[Jr]=x(t.substr(0,r)),e[qr]=x(t.substr(r)),m(n).bigHour=!0}),nt("hmmss",function(t,e,n){var r=t.length-4,i=t.length-2;e[Jr]=x(t.substr(0,r)),e[qr]=x(t.substr(r,2)),e[Vr]=x(t.substr(i)),m(n).bigHour=!0}),nt("Hmm",function(t,e,n){var r=t.length-2;e[Jr]=x(t.substr(0,r)),e[qr]=x(t.substr(r))}),nt("Hmmss",function(t,e,n){var r=t.length-4,i=t.length-2;e[Jr]=x(t.substr(0,r)),e[qr]=x(t.substr(r,2)),e[Vr]=x(t.substr(i))});var fi,mi=N("Hours",!0),pi={calendar:Sr,longDateFormat:Cr,invalidDate:"Invalid date",ordinal:"%d",dayOfMonthOrdinalParse:/\d{1,2}/,relativeTime:Pr,months:ei,monthsShort:ni,week:oi,weekdays:si,weekdaysMin:li,weekdaysShort:ci,meridiemParse:/[ap]\.?m?\.?/i},_i={},gi={},bi=/^\s*((?:[+-]\d{6}|\d{4})-(?:\d\d-\d\d|W\d\d-\d|W\d\d|\d\d\d|\d\d))(?:(T| )(\d\d(?::\d\d(?::\d\d(?:[.,]\d+)?)?)?)([\+\-]\d\d(?::?\d\d)?|\s*Z)?)?$/,vi=/^\s*((?:[+-]\d{6}|\d{4})(?:\d\d\d\d|W\d\d\d|W\d\d|\d\d\d|\d\d))(?:(T| )(\d\d(?:\d\d(?:\d\d(?:[.,]\d+)?)?)?)([\+\-]\d\d(?::?\d\d)?|\s*Z)?)?$/,yi=/Z|[+-]\d\d(?::?\d\d)?/,xi=[["YYYYYY-MM-DD",/[+-]\d{6}-\d\d-\d\d/],["YYYY-MM-DD",/\d{4}-\d\d-\d\d/],["GGGG-[W]WW-E",/\d{4}-W\d\d-\d/],["GGGG-[W]WW",/\d{4}-W\d\d/,!1],["YYYY-DDD",/\d{4}-\d{3}/],["YYYY-MM",/\d{4}-\d\d/,!1],["YYYYYYMMDD",/[+-]\d{10}/],["YYYYMMDD",/\d{8}/],["GGGG[W]WWE",/\d{4}W\d{3}/],["GGGG[W]WW",/\d{4}W\d{2}/,!1],["YYYYDDD",/\d{7}/]],Mi=[["HH:mm:ss.SSSS",/\d\d:\d\d:\d\d\.\d+/],["HH:mm:ss,SSSS",/\d\d:\d\d:\d\d,\d+/],["HH:mm:ss",/\d\d:\d\d:\d\d/],["HH:mm",/\d\d:\d\d/],["HHmmss.SSSS",/\d\d\d\d\d\d\.\d+/],["HHmmss,SSSS",/\d\d\d\d\d\d,\d+/],["HHmmss",/\d\d\d\d\d\d/],["HHmm",/\d\d\d\d/],["HH",/\d\d/]],wi=/^\/?Date\((\-?\d+)/i,ki=/^((?:Mon|Tue|Wed|Thu|Fri|Sat|Sun),?\s)?(\d?\d\s(?:Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)\s(?:\d\d)?\d\d\s)(\d\d:\d\d)(\:\d\d)?(\s(?:UT|GMT|[ECMP][SD]T|[A-IK-Za-ik-z]|[+-]\d{4}))$/;e.createFromInputFallback=k("value provided is not in a recognized RFC2822 or ISO format. moment construction falls back to js Date(), which is not reliable across all browsers and versions. Non RFC2822/ISO date formats are discouraged and will be removed in an upcoming major release. Please refer to http://momentjs.com/guides/#/warnings/js-date/ for more info.",function(t){t._d=new Date(t._i+(t._useUTC?" UTC":""))}),e.ISO_8601=function(){},e.RFC_2822=function(){};var Li=k("moment().min is deprecated, use moment.max instead. http://momentjs.com/guides/#/warnings/min-max/",function(){var t=ye.apply(null,arguments);return this.isValid()&&t.isValid()?tthis?this:t:_()}),Ti=function(){return Date.now?Date.now():+new Date},Di=["year","quarter","month","week","day","hour","minute","second","millisecond"];Ce("Z",":"),Ce("ZZ",""),Z("Z",Wr),Z("ZZ",Wr),nt(["Z","ZZ"],function(t,e,n){n._useUTC=!0,n._tzm=Pe(Wr,t)});var Si=/([\+\-]|\d\d)/gi;e.updateOffset=function(){};var Ci=/^(\-)?(?:(\d*)[. ])?(\d+)\:(\d+)(?:\:(\d+)(\.\d*)?)?$/,Pi=/^(-)?P(?:(-?[0-9,.]*)Y)?(?:(-?[0-9,.]*)M)?(?:(-?[0-9,.]*)W)?(?:(-?[0-9,.]*)D)?(?:T(?:(-?[0-9,.]*)H)?(?:(-?[0-9,.]*)M)?(?:(-?[0-9,.]*)S)?)?$/;Ge.fn=Te.prototype,Ge.invalid=Ye;var Ai=Ve(1,"add"),ji=Ve(-1,"subtract");e.defaultFormat="YYYY-MM-DDTHH:mm:ssZ",e.defaultFormatUtc="YYYY-MM-DDTHH:mm:ss[Z]";var Hi=k("moment().lang() is deprecated. Instead, use moment().localeData() to get the language configuration. Use moment().locale() to change languages.",function(t){return void 0===t?this.localeData():this.locale(t)});J(0,["gg",2],0,function(){return this.weekYear()%100}),J(0,["GG",2],0,function(){return this.isoWeekYear()%100}),Pn("gggg","weekYear"),Pn("ggggg","weekYear"),Pn("GGGG","isoWeekYear"),Pn("GGGGG","isoWeekYear"),E("weekYear","gg"),E("isoWeekYear","GG"),$("weekYear",1),$("isoWeekYear",1),Z("G",/[+-]?\d+/),Z("g",/[+-]?\d+/),Z("GG",/\d\d?/,/\d\d/),Z("gg",/\d\d?/,/\d\d/),Z("GGGG",/\d{1,4}/,/\d{4}/),Z("gggg",/\d{1,4}/,/\d{4}/),Z("GGGGG",/[+-]?\d{1,6}/,Ir),Z("ggggg",/[+-]?\d{1,6}/,Ir),rt(["gggg","ggggg","GGGG","GGGGG"],function(t,e,n,r){e[r.substr(0,2)]=x(t)}),rt(["gg","GG"],function(t,n,r,i){n[i]=e.parseTwoDigitYear(t)}),J("Q",0,"Qo","quarter"),E("quarter","Q"),$("quarter",7),Z("Q",/\d/),nt("Q",function(t,e){e[Gr]=3*(x(t)-1)}),J("D",["DD",2],"Do","date"),E("date","D"),$("date",9),Z("D",/\d\d?/),Z("DD",/\d\d?/,/\d\d/),Z("Do",function(t,e){return t?e._dayOfMonthOrdinalParse||e._ordinalParse:e._dayOfMonthOrdinalParseLenient}),nt(["D","DD"],Ur),nt("Do",function(t,e){e[Ur]=x(t.match(/\d\d?/)[0],10)});var Oi=N("Date",!0);J("DDD",["DDDD",3],"DDDo","dayOfYear"),E("dayOfYear","DDD"),$("dayOfYear",4),Z("DDD",/\d{1,3}/),Z("DDDD",/\d{3}/),nt(["DDD","DDDD"],function(t,e,n){n._dayOfYear=x(t)}),J("m",["mm",2],0,"minute"),E("minute","m"),$("minute",14),Z("m",/\d\d?/),Z("mm",/\d\d?/,/\d\d/),nt(["m","mm"],qr);var Ei=N("Minutes",!1);J("s",["ss",2],0,"second"),E("second","s"),$("second",15),Z("s",/\d\d?/),Z("ss",/\d\d?/,/\d\d/),nt(["s","ss"],Vr);var zi=N("Seconds",!1);J("S",0,0,function(){return~~(this.millisecond()/100)}),J(0,["SS",2],0,function(){return~~(this.millisecond()/10)}),J(0,["SSS",3],0,"millisecond"),J(0,["SSSS",4],0,function(){return 10*this.millisecond()}),J(0,["SSSSS",5],0,function(){return 100*this.millisecond()}),J(0,["SSSSSS",6],0,function(){return 1e3*this.millisecond()}),J(0,["SSSSSSS",7],0,function(){return 1e4*this.millisecond()}),J(0,["SSSSSSSS",8],0,function(){return 1e5*this.millisecond()}),J(0,["SSSSSSSSS",9],0,function(){return 1e6*this.millisecond()}),E("millisecond","ms"),$("millisecond",16),Z("S",/\d{1,3}/,/\d/),Z("SS",/\d{1,3}/,/\d\d/),Z("SSS",/\d{1,3}/,/\d{3}/);var Ii;for(Ii="SSSS";Ii.length<=9;Ii+="S")Z(Ii,/\d+/);for(Ii="S";Ii.length<=9;Ii+="S")nt(Ii,Wn);var $i=N("Milliseconds",!1);J("z",0,0,"zoneAbbr"),J("zz",0,0,"zoneName");var Wi=b.prototype;Wi.add=Ai,Wi.calendar=Ze,Wi.clone=Qe,Wi.diff=sn,Wi.endOf=yn,Wi.format=hn,Wi.from=fn,Wi.fromNow=mn,Wi.to=pn,Wi.toNow=_n,Wi.get=B,Wi.invalidAt=Sn,Wi.isAfter=tn,Wi.isBefore=en,Wi.isBetween=nn,Wi.isSame=rn,Wi.isSameOrAfter=an,Wi.isSameOrBefore=on,Wi.isValid=Tn,Wi.lang=Hi,Wi.locale=gn,Wi.localeData=bn,Wi.max=Yi,Wi.min=Li,Wi.parsingFlags=Dn,Wi.set=G,Wi.startOf=vn,Wi.subtract=ji,Wi.toArray=kn,Wi.toObject=Ln,Wi.toDate=wn,Wi.toISOString=dn,Wi.inspect=un,Wi.toJSON=Yn,Wi.toString=ln,Wi.unix=Mn,Wi.valueOf=xn,Wi.creationData=Cn,Wi.year=ai,Wi.isLeapYear=bt,Wi.weekYear=An,Wi.isoWeekYear=jn,Wi.quarter=Wi.quarters=In,Wi.month=ut,Wi.daysInMonth=ht,Wi.week=Wi.weeks=Dt,Wi.isoWeek=Wi.isoWeeks=St,Wi.weeksInYear=On,Wi.isoWeeksInYear=Hn,Wi.date=Oi,Wi.day=Wi.days=zt,Wi.weekday=It,Wi.isoWeekday=$t,Wi.dayOfYear=$n,Wi.hour=Wi.hours=mi,Wi.minute=Wi.minutes=Ei,Wi.second=Wi.seconds=zi,Wi.millisecond=Wi.milliseconds=$i,Wi.utcOffset=He,Wi.utc=Ee,Wi.local=ze,Wi.parseZone=Ie,Wi.hasAlignedHourOffset=$e,Wi.isDST=We,Wi.isLocal=Fe,Wi.isUtcOffset=Re,Wi.isUtc=Be,Wi.isUTC=Be,Wi.zoneAbbr=Nn,Wi.zoneName=Fn,Wi.dates=k("dates accessor is deprecated. Use date instead.",Oi),Wi.months=k("months accessor is deprecated. Use month instead",ut),Wi.years=k("years accessor is deprecated. Use year instead",ai),Wi.zone=k("moment().zone is deprecated, use moment().utcOffset instead. http://momentjs.com/guides/#/warnings/zone/",Oe),Wi.isDSTShifted=k("isDSTShifted is deprecated. See http://momentjs.com/guides/#/warnings/dst-shifted/ for more information",Ne);var Ni=S.prototype;Ni.calendar=C,Ni.longDateFormat=P,Ni.invalidDate=A,Ni.ordinal=j,Ni.preparse=Gn,Ni.postformat=Gn,Ni.relativeTime=H,Ni.pastFuture=O,Ni.set=T,Ni.months=ot,Ni.monthsShort=st,Ni.monthsParse=lt,Ni.monthsRegex=mt,Ni.monthsShortRegex=ft,Ni.week=Lt,Ni.firstDayOfYear=Tt,Ni.firstDayOfWeek=Yt,Ni.weekdays=At,Ni.weekdaysMin=Ht,Ni.weekdaysShort=jt,Ni.weekdaysParse=Et,Ni.weekdaysRegex=Wt,Ni.weekdaysShortRegex=Nt,Ni.weekdaysMinRegex=Ft,Ni.isPM=qt,Ni.meridiem=Vt,Qt("en",{dayOfMonthOrdinalParse:/\d{1,2}(th|st|nd|rd)/,ordinal:function(t){var e=t%10;return t+(1===x(t%100/10)?"th":1===e?"st":2===e?"nd":3===e?"rd":"th")}}),e.lang=k("moment.lang is deprecated. Use moment.locale instead.",Qt),e.langData=k("moment.langData is deprecated. Use moment.localeData instead.",ne);var Fi=Math.abs,Ri=dr("ms"),Bi=dr("s"),Gi=dr("m"),Ui=dr("h"),Ji=dr("d"),qi=dr("w"),Vi=dr("M"),Xi=dr("y"),Ki=hr("milliseconds"),Zi=hr("seconds"),Qi=hr("minutes"),ta=hr("hours"),ea=hr("days"),na=hr("months"),ra=hr("years"),ia=Math.round,aa={ss:44,s:45,m:45,h:22,d:26,M:11},oa=Math.abs,sa=Te.prototype;return sa.isValid=Le,sa.abs=tr,sa.add=nr,sa.subtract=rr,sa.as=cr,sa.asMilliseconds=Ri,sa.asSeconds=Bi,sa.asMinutes=Gi,sa.asHours=Ui,sa.asDays=Ji,sa.asWeeks=qi,sa.asMonths=Vi,sa.asYears=Xi,sa.valueOf=lr,sa._bubble=ar,sa.get=ur,sa.milliseconds=Ki,sa.seconds=Zi,sa.minutes=Qi,sa.hours=ta,sa.days=ea,sa.weeks=fr,sa.months=na,sa.years=ra,sa.humanize=br,sa.toISOString=vr,sa.toString=vr,sa.toJSON=vr,sa.locale=gn,sa.localeData=bn,sa.toIsoString=k("toIsoString() is deprecated. Please use toISOString() instead (notice the capitals)",vr),sa.lang=Hi,J("X",0,0,"unix"),J("x",0,0,"valueOf"),Z("x",/[+-]?\d+/),Z("X",/[+-]?\d+(\.\d{1,3})?/),nt("X",function(t,e,n){n._d=new Date(1e3*parseFloat(t,10))}),nt("x",function(t,e,n){n._d=new Date(x(t))}),e.version="2.18.1",function(t){yr=t}(ye),e.fn=Wi,e.min=Me,e.max=we,e.now=Ti,e.utc=h,e.unix=Rn,e.months=Vn,e.isDate=c,e.locale=Qt,e.invalid=_,e.duration=Ge,e.isMoment=v,e.weekdays=Kn,e.parseZone=Bn,e.localeData=ne,e.isDuration=De,e.monthsShort=Xn,e.weekdaysMin=Qn,e.defineLocale=te,e.updateLocale=ee,e.locales=re,e.weekdaysShort=Zn,e.normalizeUnits=z,e.relativeTimeRounding=_r,e.relativeTimeThreshold=gr,e.calendarFormat=Ke,e.prototype=Wi,e})}).call(e,n(134)(t))},function(t,e){t.exports=function(t,e,n,r){var i,a=t=t||{},o=typeof t.default;"object"!==o&&"function"!==o||(i=t,a=t.default);var s="function"==typeof a?a.options:a;if(e&&(s.render=e.render,s.staticRenderFns=e.staticRenderFns),n&&(s._scopeId=n),r){var c=s.computed||(s.computed={});Object.keys(r).forEach(function(t){var e=r[t];c[t]=function(){return e}})}return{esModule:i,exports:a,options:s}}},function(t,e,n){"use strict";(function(e){/*! +!function(e){function t(r){if(n[r])return n[r].exports;var i=n[r]={i:r,l:!1,exports:{}};return e[r].call(i.exports,i,i.exports,t),i.l=!0,i.exports}var n={};t.m=e,t.c=n,t.i=function(e){return e},t.d=function(e,n,r){t.o(e,n)||Object.defineProperty(e,n,{configurable:!1,enumerable:!0,get:r})},t.n=function(e){var n=e&&e.__esModule?function(){return e.default}:function(){return e};return t.d(n,"a",n),n},t.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},t.p="/dist/",t(t.s=245)}([function(e,t,n){(function(e){!function(t,n){e.exports=n()}(0,function(){"use strict";function t(){return yr.apply(null,arguments)}function r(e){return e instanceof Array||"[object Array]"===Object.prototype.toString.call(e)}function i(e){return null!=e&&"[object Object]"===Object.prototype.toString.call(e)}function a(e){var t;for(t in e)return!1;return!0}function o(e){return void 0===e}function s(e){return"number"==typeof e||"[object Number]"===Object.prototype.toString.call(e)}function c(e){return e instanceof Date||"[object Date]"===Object.prototype.toString.call(e)}function l(e,t){var n,r=[];for(n=0;n0)for(n=0;n0?"future":"past"];return Y(n)?n(t):n.replace(/%s/i,t)}function E(e,t){var n=e.toLowerCase();Ar[n]=Ar[n+"s"]=Ar[t]=e}function H(e){return"string"==typeof e?Ar[e]||Ar[e.toLowerCase()]:void 0}function F(e){var t,n,r={};for(n in e)d(e,n)&&(t=H(n))&&(r[t]=e[n]);return r}function I(e,t){zr[e]=t}function N(e){var t=[];for(var n in e)t.push({unit:n,priority:zr[n]});return t.sort(function(e,t){return e.priority-t.priority}),t}function $(e,n){return function(r){return null!=r?(W(this,e,r),t.updateOffset(this,n),this):R(this,e)}}function R(e,t){return e.isValid()?e._d["get"+(e._isUTC?"UTC":"")+t]():NaN}function W(e,t,n){e.isValid()&&e._d["set"+(e._isUTC?"UTC":"")+t](n)}function B(e){return e=H(e),Y(this[e])?this[e]():this}function U(e,t){if("object"==typeof e){e=F(e);for(var n=N(e),r=0;r=0?n?"+":"":"-")+Math.pow(10,Math.max(0,i)).toString().substr(1)+r}function q(e,t,n,r){var i=r;"string"==typeof r&&(i=function(){return this[r]()}),e&&(Hr[e]=i),t&&(Hr[t[0]]=function(){return G(i.apply(this,arguments),t[1],t[2])}),n&&(Hr[n]=function(){return this.localeData().ordinal(i.apply(this,arguments),e)})}function J(e){return e.match(/\[[\s\S]/)?e.replace(/^\[|\]$/g,""):e.replace(/\\/g,"")}function V(e){var t,n,r=e.match(jr);for(t=0,n=r.length;t=0&&Or.test(e);)e=e.replace(Or,n),Or.lastIndex=0,r-=1;return e}function Z(e,t,n){Rr[e]=Y(t)?t:function(e,r){return e&&n?n:t}}function Q(e,t){return d(Rr,e)?Rr[e](t._strict,t._locale):new RegExp(ee(e))}function ee(e){return te(e.replace("\\","").replace(/\\(\[)|\\(\])|\[([^\]\[]*)\]|\\(.)/g,function(e,t,n,r,i){return t||n||r||i}))}function te(e){return e.replace(/[-\/\\^$*+?.()|[\]{}]/g,"\\$&")}function ne(e,t){var n,r=t;for("string"==typeof e&&(e=[e]),s(t)&&(r=function(e,n){n[t]=x(e)}),n=0;n=0&&isFinite(s.getFullYear())&&s.setFullYear(e),s}function ye(e){var t=new Date(Date.UTC.apply(null,arguments));return e<100&&e>=0&&isFinite(t.getUTCFullYear())&&t.setUTCFullYear(e),t}function xe(e,t,n){var r=7+t-n;return-((7+ye(e,0,r).getUTCDay()-t)%7)+r-1}function we(e,t,n,r,i){var a,o,s=(7+n-r)%7,c=xe(e,r,i),l=1+7*(t-1)+s+c;return l<=0?(a=e-1,o=ge(a)+l):l>ge(e)?(a=e+1,o=l-ge(e)):(a=e,o=l),{year:a,dayOfYear:o}}function ke(e,t,n){var r,i,a=xe(e.year(),t,n),o=Math.floor((e.dayOfYear()-a-1)/7)+1;return o<1?(i=e.year()-1,r=o+Me(i,t,n)):o>Me(e.year(),t,n)?(r=o-Me(e.year(),t,n),i=e.year()+1):(i=e.year(),r=o),{week:r,year:i}}function Me(e,t,n){var r=xe(e,t,n),i=xe(e+1,t,n);return(ge(e)-r+i)/7}function Le(e){return ke(e,this._week.dow,this._week.doy).week}function Ye(){return this._week.dow}function De(){return this._week.doy}function Te(e){var t=this.localeData().week(this);return null==e?t:this.add(7*(e-t),"d")}function Se(e){var t=ke(this,1,4).week;return null==e?t:this.add(7*(e-t),"d")}function Ce(e,t){return"string"!=typeof e?e:isNaN(e)?(e=t.weekdaysParse(e),"number"==typeof e?e:null):parseInt(e,10)}function Pe(e,t){return"string"==typeof e?t.weekdaysParse(e)%7||7:isNaN(e)?null:e}function Ae(e,t){return e?r(this._weekdays)?this._weekdays[e.day()]:this._weekdays[this._weekdays.isFormat.test(t)?"format":"standalone"][e.day()]:r(this._weekdays)?this._weekdays:this._weekdays.standalone}function ze(e){return e?this._weekdaysShort[e.day()]:this._weekdaysShort}function je(e){return e?this._weekdaysMin[e.day()]:this._weekdaysMin}function Oe(e,t,n){var r,i,a,o=e.toLocaleLowerCase();if(!this._weekdaysParse)for(this._weekdaysParse=[],this._shortWeekdaysParse=[],this._minWeekdaysParse=[],r=0;r<7;++r)a=h([2e3,1]).day(r),this._minWeekdaysParse[r]=this.weekdaysMin(a,"").toLocaleLowerCase(),this._shortWeekdaysParse[r]=this.weekdaysShort(a,"").toLocaleLowerCase(),this._weekdaysParse[r]=this.weekdays(a,"").toLocaleLowerCase();return n?"dddd"===t?(i=Qr.call(this._weekdaysParse,o),i!==-1?i:null):"ddd"===t?(i=Qr.call(this._shortWeekdaysParse,o),i!==-1?i:null):(i=Qr.call(this._minWeekdaysParse,o),i!==-1?i:null):"dddd"===t?(i=Qr.call(this._weekdaysParse,o))!==-1?i:(i=Qr.call(this._shortWeekdaysParse,o))!==-1?i:(i=Qr.call(this._minWeekdaysParse,o),i!==-1?i:null):"ddd"===t?(i=Qr.call(this._shortWeekdaysParse,o))!==-1?i:(i=Qr.call(this._weekdaysParse,o))!==-1?i:(i=Qr.call(this._minWeekdaysParse,o),i!==-1?i:null):(i=Qr.call(this._minWeekdaysParse,o))!==-1?i:(i=Qr.call(this._weekdaysParse,o))!==-1?i:(i=Qr.call(this._shortWeekdaysParse,o),i!==-1?i:null)}function Ee(e,t,n){var r,i,a;if(this._weekdaysParseExact)return Oe.call(this,e,t,n);for(this._weekdaysParse||(this._weekdaysParse=[],this._minWeekdaysParse=[],this._shortWeekdaysParse=[],this._fullWeekdaysParse=[]),r=0;r<7;r++){if(i=h([2e3,1]).day(r),n&&!this._fullWeekdaysParse[r]&&(this._fullWeekdaysParse[r]=new RegExp("^"+this.weekdays(i,"").replace(".",".?")+"$","i"),this._shortWeekdaysParse[r]=new RegExp("^"+this.weekdaysShort(i,"").replace(".",".?")+"$","i"),this._minWeekdaysParse[r]=new RegExp("^"+this.weekdaysMin(i,"").replace(".",".?")+"$","i")),this._weekdaysParse[r]||(a="^"+this.weekdays(i,"")+"|^"+this.weekdaysShort(i,"")+"|^"+this.weekdaysMin(i,""),this._weekdaysParse[r]=new RegExp(a.replace(".",""),"i")),n&&"dddd"===t&&this._fullWeekdaysParse[r].test(e))return r;if(n&&"ddd"===t&&this._shortWeekdaysParse[r].test(e))return r;if(n&&"dd"===t&&this._minWeekdaysParse[r].test(e))return r;if(!n&&this._weekdaysParse[r].test(e))return r}}function He(e){if(!this.isValid())return null!=e?this:NaN;var t=this._isUTC?this._d.getUTCDay():this._d.getDay();return null!=e?(e=Ce(e,this.localeData()),this.add(e-t,"d")):t}function Fe(e){if(!this.isValid())return null!=e?this:NaN;var t=(this.day()+7-this.localeData()._week.dow)%7;return null==e?t:this.add(e-t,"d")}function Ie(e){if(!this.isValid())return null!=e?this:NaN;if(null!=e){var t=Pe(e,this.localeData());return this.day(this.day()%7?t:t-7)}return this.day()||7}function Ne(e){return this._weekdaysParseExact?(d(this,"_weekdaysRegex")||We.call(this),e?this._weekdaysStrictRegex:this._weekdaysRegex):(d(this,"_weekdaysRegex")||(this._weekdaysRegex=di),this._weekdaysStrictRegex&&e?this._weekdaysStrictRegex:this._weekdaysRegex)}function $e(e){return this._weekdaysParseExact?(d(this,"_weekdaysRegex")||We.call(this),e?this._weekdaysShortStrictRegex:this._weekdaysShortRegex):(d(this,"_weekdaysShortRegex")||(this._weekdaysShortRegex=ui),this._weekdaysShortStrictRegex&&e?this._weekdaysShortStrictRegex:this._weekdaysShortRegex)}function Re(e){return this._weekdaysParseExact?(d(this,"_weekdaysRegex")||We.call(this),e?this._weekdaysMinStrictRegex:this._weekdaysMinRegex):(d(this,"_weekdaysMinRegex")||(this._weekdaysMinRegex=hi),this._weekdaysMinStrictRegex&&e?this._weekdaysMinStrictRegex:this._weekdaysMinRegex)}function We(){function e(e,t){return t.length-e.length}var t,n,r,i,a,o=[],s=[],c=[],l=[];for(t=0;t<7;t++)n=h([2e3,1]).day(t),r=this.weekdaysMin(n,""),i=this.weekdaysShort(n,""),a=this.weekdays(n,""),o.push(r),s.push(i),c.push(a),l.push(r),l.push(i),l.push(a);for(o.sort(e),s.sort(e),c.sort(e),l.sort(e),t=0;t<7;t++)s[t]=te(s[t]),c[t]=te(c[t]),l[t]=te(l[t]);this._weekdaysRegex=new RegExp("^("+l.join("|")+")","i"),this._weekdaysShortRegex=this._weekdaysRegex,this._weekdaysMinRegex=this._weekdaysRegex,this._weekdaysStrictRegex=new RegExp("^("+c.join("|")+")","i"),this._weekdaysShortStrictRegex=new RegExp("^("+s.join("|")+")","i"),this._weekdaysMinStrictRegex=new RegExp("^("+o.join("|")+")","i")}function Be(){return this.hours()%12||12}function Ue(){return this.hours()||24}function Ge(e,t){q(e,0,0,function(){return this.localeData().meridiem(this.hours(),this.minutes(),t)})}function qe(e,t){return t._meridiemParse}function Je(e){return"p"===(e+"").toLowerCase().charAt(0)}function Ve(e,t,n){return e>11?n?"pm":"PM":n?"am":"AM"}function Xe(e){return e?e.toLowerCase().replace("_","-"):e}function Ke(e){for(var t,n,r,i,a=0;a0;){if(r=Ze(i.slice(0,t).join("-")))return r;if(n&&n.length>=t&&w(i,n,!0)>=t-1)break;t--}a++}return null}function Ze(t){var r=null;if(!gi[t]&&void 0!==e&&e&&e.exports)try{r=fi._abbr,n(182)("./"+t),Qe(r)}catch(e){}return gi[t]}function Qe(e,t){var n;return e&&(n=o(t)?nt(e):et(e,t))&&(fi=n),fi._abbr}function et(e,t){if(null!==t){var n=mi;if(t.abbr=e,null!=gi[e])L("defineLocaleOverride","use moment.updateLocale(localeName, config) to change an existing locale. moment.defineLocale(localeName, config) should only be used for creating a new locale See http://momentjs.com/guides/#/warnings/define-locale/ for more info."),n=gi[e]._config;else if(null!=t.parentLocale){if(null==gi[t.parentLocale])return _i[t.parentLocale]||(_i[t.parentLocale]=[]),_i[t.parentLocale].push({name:e,config:t}),null;n=gi[t.parentLocale]._config}return gi[e]=new S(T(n,t)),_i[e]&&_i[e].forEach(function(e){et(e.name,e.config)}),Qe(e),gi[e]}return delete gi[e],null}function tt(e,t){if(null!=t){var n,r=mi;null!=gi[e]&&(r=gi[e]._config),t=T(r,t),n=new S(t),n.parentLocale=gi[e],gi[e]=n,Qe(e)}else null!=gi[e]&&(null!=gi[e].parentLocale?gi[e]=gi[e].parentLocale:null!=gi[e]&&delete gi[e]);return gi[e]}function nt(e){var t;if(e&&e._locale&&e._locale._abbr&&(e=e._locale._abbr),!e)return fi;if(!r(e)){if(t=Ze(e))return t;e=[e]}return Ke(e)}function rt(){return Tr(gi)}function it(e){var t,n=e._a;return n&&p(e).overflow===-2&&(t=n[Ur]<0||n[Ur]>11?Ur:n[Gr]<1||n[Gr]>ae(n[Br],n[Ur])?Gr:n[qr]<0||n[qr]>24||24===n[qr]&&(0!==n[Jr]||0!==n[Vr]||0!==n[Xr])?qr:n[Jr]<0||n[Jr]>59?Jr:n[Vr]<0||n[Vr]>59?Vr:n[Xr]<0||n[Xr]>999?Xr:-1,p(e)._overflowDayOfYear&&(tGr)&&(t=Gr),p(e)._overflowWeeks&&t===-1&&(t=Kr),p(e)._overflowWeekday&&t===-1&&(t=Zr),p(e).overflow=t),e}function at(e){var t,n,r,i,a,o,s=e._i,c=vi.exec(s)||bi.exec(s);if(c){for(p(e).iso=!0,t=0,n=xi.length;t10?"YYYY ":"YY "),a="HH:mm"+(n[4]?":ss":""),n[1]){var u=new Date(n[2]),h=["Sun","Mon","Tue","Wed","Thu","Fri","Sat"][u.getDay()];if(n[1].substr(0,3)!==h)return p(e).weekdayMismatch=!0,void(e._isValid=!1)}switch(n[5].length){case 2:0===c?s=" +0000":(c=d.indexOf(n[5][1].toUpperCase())-12,s=(c<0?" -":" +")+(""+c).replace(/^-?/,"0").match(/..$/)[0]+"00");break;case 4:s=l[n[5]];break;default:s=l[" GMT"]}n[5]=s,e._i=n.splice(1).join(""),o=" ZZ",e._f=r+i+a+o,ht(e),p(e).rfc2822=!0}else e._isValid=!1}function st(e){var n=ki.exec(e._i);if(null!==n)return void(e._d=new Date(+n[1]));at(e),e._isValid===!1&&(delete e._isValid,ot(e),e._isValid===!1&&(delete e._isValid,t.createFromInputFallback(e)))}function ct(e,t,n){return null!=e?e:null!=t?t:n}function lt(e){var n=new Date(t.now());return e._useUTC?[n.getUTCFullYear(),n.getUTCMonth(),n.getUTCDate()]:[n.getFullYear(),n.getMonth(),n.getDate()]}function dt(e){var t,n,r,i,a=[];if(!e._d){for(r=lt(e),e._w&&null==e._a[Gr]&&null==e._a[Ur]&&ut(e),null!=e._dayOfYear&&(i=ct(e._a[Br],r[Br]),(e._dayOfYear>ge(i)||0===e._dayOfYear)&&(p(e)._overflowDayOfYear=!0),n=ye(i,0,e._dayOfYear),e._a[Ur]=n.getUTCMonth(),e._a[Gr]=n.getUTCDate()),t=0;t<3&&null==e._a[t];++t)e._a[t]=a[t]=r[t];for(;t<7;t++)e._a[t]=a[t]=null==e._a[t]?2===t?1:0:e._a[t];24===e._a[qr]&&0===e._a[Jr]&&0===e._a[Vr]&&0===e._a[Xr]&&(e._nextDay=!0,e._a[qr]=0),e._d=(e._useUTC?ye:be).apply(null,a),null!=e._tzm&&e._d.setUTCMinutes(e._d.getUTCMinutes()-e._tzm),e._nextDay&&(e._a[qr]=24)}}function ut(e){var t,n,r,i,a,o,s,c;if(t=e._w,null!=t.GG||null!=t.W||null!=t.E)a=1,o=4,n=ct(t.GG,e._a[Br],ke(yt(),1,4).year),r=ct(t.W,1),((i=ct(t.E,1))<1||i>7)&&(c=!0);else{a=e._locale._week.dow,o=e._locale._week.doy;var l=ke(yt(),a,o);n=ct(t.gg,e._a[Br],l.year),r=ct(t.w,l.week),null!=t.d?((i=t.d)<0||i>6)&&(c=!0):null!=t.e?(i=t.e+a,(t.e<0||t.e>6)&&(c=!0)):i=a}r<1||r>Me(n,a,o)?p(e)._overflowWeeks=!0:null!=c?p(e)._overflowWeekday=!0:(s=we(n,r,i,a,o),e._a[Br]=s.year,e._dayOfYear=s.dayOfYear)}function ht(e){if(e._f===t.ISO_8601)return void at(e);if(e._f===t.RFC_2822)return void ot(e);e._a=[],p(e).empty=!0;var n,r,i,a,o,s=""+e._i,c=s.length,l=0;for(i=K(e._f,e._locale).match(jr)||[],n=0;n0&&p(e).unusedInput.push(o),s=s.slice(s.indexOf(r)+r.length),l+=r.length),Hr[a]?(r?p(e).empty=!1:p(e).unusedTokens.push(a),ie(a,r,e)):e._strict&&!r&&p(e).unusedTokens.push(a);p(e).charsLeftOver=c-l,s.length>0&&p(e).unusedInput.push(s),e._a[qr]<=12&&p(e).bigHour===!0&&e._a[qr]>0&&(p(e).bigHour=void 0),p(e).parsedDateParts=e._a.slice(0),p(e).meridiem=e._meridiem,e._a[qr]=ft(e._locale,e._a[qr],e._meridiem),dt(e),it(e)}function ft(e,t,n){var r;return null==n?t:null!=e.meridiemHour?e.meridiemHour(t,n):null!=e.isPM?(r=e.isPM(n),r&&t<12&&(t+=12),r||12!==t||(t=0),t):t}function pt(e){var t,n,r,i,a;if(0===e._f.length)return p(e).invalidFormat=!0,void(e._d=new Date(NaN));for(i=0;ithis.clone().month(0).utcOffset()||this.utcOffset()>this.clone().month(5).utcOffset()}function $t(){if(!o(this._isDSTShifted))return this._isDSTShifted;var e={};if(_(e,this),e=_t(e),e._a){var t=e._isUTC?h(e._a):yt(e._a);this._isDSTShifted=this.isValid()&&w(e._a,t.toArray())>0}else this._isDSTShifted=!1;return this._isDSTShifted}function Rt(){return!!this.isValid()&&!this._isUTC}function Wt(){return!!this.isValid()&&this._isUTC}function Bt(){return!!this.isValid()&&(this._isUTC&&0===this._offset)}function Ut(e,t){var n,r,i,a=e,o=null;return Tt(e)?a={ms:e._milliseconds,d:e._days,M:e._months}:s(e)?(a={},t?a[t]=e:a.milliseconds=e):(o=Ci.exec(e))?(n="-"===o[1]?-1:1,a={y:0,d:x(o[Gr])*n,h:x(o[qr])*n,m:x(o[Jr])*n,s:x(o[Vr])*n,ms:x(St(1e3*o[Xr]))*n}):(o=Pi.exec(e))?(n="-"===o[1]?-1:1,a={y:Gt(o[2],n),M:Gt(o[3],n),w:Gt(o[4],n),d:Gt(o[5],n),h:Gt(o[6],n),m:Gt(o[7],n),s:Gt(o[8],n)}):null==a?a={}:"object"==typeof a&&("from"in a||"to"in a)&&(i=Jt(yt(a.from),yt(a.to)),a={},a.ms=i.milliseconds,a.M=i.months),r=new Dt(a),Tt(e)&&d(e,"_locale")&&(r._locale=e._locale),r}function Gt(e,t){var n=e&&parseFloat(e.replace(",","."));return(isNaN(n)?0:n)*t}function qt(e,t){var n={milliseconds:0,months:0};return n.months=t.month()-e.month()+12*(t.year()-e.year()),e.clone().add(n.months,"M").isAfter(t)&&--n.months,n.milliseconds=+t-+e.clone().add(n.months,"M"),n}function Jt(e,t){var n;return e.isValid()&&t.isValid()?(t=At(t,e),e.isBefore(t)?n=qt(e,t):(n=qt(t,e),n.milliseconds=-n.milliseconds,n.months=-n.months),n):{milliseconds:0,months:0}}function Vt(e,t){return function(n,r){var i,a;return null===r||isNaN(+r)||(L(t,"moment()."+t+"(period, number) is deprecated. Please use moment()."+t+"(number, period). See http://momentjs.com/guides/#/warnings/add-inverted-param/ for more info."),a=n,n=r,r=a),n="string"==typeof n?+n:n,i=Ut(n,r),Xt(this,i,e),this}}function Xt(e,n,r,i){var a=n._milliseconds,o=St(n._days),s=St(n._months);e.isValid()&&(i=null==i||i,a&&e._d.setTime(e._d.valueOf()+a*r),o&&W(e,"Date",R(e,"Date")+o*r),s&&de(e,R(e,"Month")+s*r),i&&t.updateOffset(e,o||s))}function Kt(e,t){var n=e.diff(t,"days",!0);return n<-6?"sameElse":n<-1?"lastWeek":n<0?"lastDay":n<1?"sameDay":n<2?"nextDay":n<7?"nextWeek":"sameElse"}function Zt(e,n){var r=e||yt(),i=At(r,this).startOf("day"),a=t.calendarFormat(this,i)||"sameElse",o=n&&(Y(n[a])?n[a].call(this,r):n[a]);return this.format(o||this.localeData().calendar(a,this,yt(r)))}function Qt(){return new v(this)}function en(e,t){var n=b(e)?e:yt(e);return!(!this.isValid()||!n.isValid())&&(t=H(o(t)?"millisecond":t),"millisecond"===t?this.valueOf()>n.valueOf():n.valueOf()9999?X(e,"YYYYYY-MM-DD[T]HH:mm:ss.SSS[Z]"):Y(Date.prototype.toISOString)?this.toDate().toISOString():X(e,"YYYY-MM-DD[T]HH:mm:ss.SSS[Z]")}function un(){if(!this.isValid())return"moment.invalid(/* "+this._i+" */)";var e="moment",t="";this.isLocal()||(e=0===this.utcOffset()?"moment.utc":"moment.parseZone",t="Z");var n="["+e+'("]',r=0<=this.year()&&this.year()<=9999?"YYYY":"YYYYYY",i=t+'[")]';return this.format(n+r+"-MM-DD[T]HH:mm:ss.SSS"+i)}function hn(e){e||(e=this.isUtc()?t.defaultFormatUtc:t.defaultFormat);var n=X(this,e);return this.localeData().postformat(n)}function fn(e,t){return this.isValid()&&(b(e)&&e.isValid()||yt(e).isValid())?Ut({to:this,from:e}).locale(this.locale()).humanize(!t):this.localeData().invalidDate()}function pn(e){return this.from(yt(),e)}function mn(e,t){return this.isValid()&&(b(e)&&e.isValid()||yt(e).isValid())?Ut({from:this,to:e}).locale(this.locale()).humanize(!t):this.localeData().invalidDate()}function gn(e){return this.to(yt(),e)}function _n(e){var t;return void 0===e?this._locale._abbr:(t=nt(e),null!=t&&(this._locale=t),this)}function vn(){return this._locale}function bn(e){switch(e=H(e)){case"year":this.month(0);case"quarter":case"month":this.date(1);case"week":case"isoWeek":case"day":case"date":this.hours(0);case"hour":this.minutes(0);case"minute":this.seconds(0);case"second":this.milliseconds(0)}return"week"===e&&this.weekday(0),"isoWeek"===e&&this.isoWeekday(1),"quarter"===e&&this.month(3*Math.floor(this.month()/3)),this}function yn(e){return void 0===(e=H(e))||"millisecond"===e?this:("date"===e&&(e="day"),this.startOf(e).add(1,"isoWeek"===e?"week":e).subtract(1,"ms"))}function xn(){return this._d.valueOf()-6e4*(this._offset||0)}function wn(){return Math.floor(this.valueOf()/1e3)}function kn(){return new Date(this.valueOf())}function Mn(){var e=this;return[e.year(),e.month(),e.date(),e.hour(),e.minute(),e.second(),e.millisecond()]}function Ln(){var e=this;return{years:e.year(),months:e.month(),date:e.date(),hours:e.hours(),minutes:e.minutes(),seconds:e.seconds(),milliseconds:e.milliseconds()}}function Yn(){return this.isValid()?this.toISOString():null}function Dn(){return m(this)}function Tn(){return u({},p(this))}function Sn(){return p(this).overflow}function Cn(){return{input:this._i,format:this._f,locale:this._locale,isUTC:this._isUTC,strict:this._strict}}function Pn(e,t){q(0,[e,e.length],0,t)}function An(e){return En.call(this,e,this.week(),this.weekday(),this.localeData()._week.dow,this.localeData()._week.doy)}function zn(e){return En.call(this,e,this.isoWeek(),this.isoWeekday(),1,4)}function jn(){return Me(this.year(),1,4)}function On(){var e=this.localeData()._week;return Me(this.year(),e.dow,e.doy)}function En(e,t,n,r,i){var a;return null==e?ke(this,r,i).year:(a=Me(e,r,i),t>a&&(t=a),Hn.call(this,e,t,n,r,i))}function Hn(e,t,n,r,i){var a=we(e,t,n,r,i),o=ye(a.year,0,a.dayOfYear);return this.year(o.getUTCFullYear()),this.month(o.getUTCMonth()),this.date(o.getUTCDate()),this}function Fn(e){return null==e?Math.ceil((this.month()+1)/3):this.month(3*(e-1)+this.month()%3)}function In(e){var t=Math.round((this.clone().startOf("day")-this.clone().startOf("year"))/864e5)+1;return null==e?t:this.add(e-t,"d")}function Nn(e,t){t[Xr]=x(1e3*("0."+e))}function $n(){return this._isUTC?"UTC":""}function Rn(){return this._isUTC?"Coordinated Universal Time":""}function Wn(e){return yt(1e3*e)}function Bn(){return yt.apply(null,arguments).parseZone()}function Un(e){return e}function Gn(e,t,n,r){var i=nt(),a=h().set(r,t);return i[n](a,e)}function qn(e,t,n){if(s(e)&&(t=e,e=void 0),e=e||"",null!=t)return Gn(e,t,n,"month");var r,i=[];for(r=0;r<12;r++)i[r]=Gn(e,r,n,"month");return i}function Jn(e,t,n,r){"boolean"==typeof e?(s(t)&&(n=t,t=void 0),t=t||""):(t=e,n=t,e=!1,s(t)&&(n=t,t=void 0),t=t||"");var i=nt(),a=e?i._week.dow:0;if(null!=n)return Gn(t,(n+a)%7,r,"day");var o,c=[];for(o=0;o<7;o++)c[o]=Gn(t,(o+a)%7,r,"day");return c}function Vn(e,t){return qn(e,t,"months")}function Xn(e,t){return qn(e,t,"monthsShort")}function Kn(e,t,n){return Jn(e,t,n,"weekdays")}function Zn(e,t,n){return Jn(e,t,n,"weekdaysShort")}function Qn(e,t,n){return Jn(e,t,n,"weekdaysMin")}function er(){var e=this._data;return this._milliseconds=Ri(this._milliseconds),this._days=Ri(this._days),this._months=Ri(this._months),e.milliseconds=Ri(e.milliseconds),e.seconds=Ri(e.seconds),e.minutes=Ri(e.minutes),e.hours=Ri(e.hours),e.months=Ri(e.months),e.years=Ri(e.years),this}function tr(e,t,n,r){var i=Ut(t,n);return e._milliseconds+=r*i._milliseconds,e._days+=r*i._days,e._months+=r*i._months,e._bubble()}function nr(e,t){return tr(this,e,t,1)}function rr(e,t){return tr(this,e,t,-1)}function ir(e){return e<0?Math.floor(e):Math.ceil(e)}function ar(){var e,t,n,r,i,a=this._milliseconds,o=this._days,s=this._months,c=this._data;return a>=0&&o>=0&&s>=0||a<=0&&o<=0&&s<=0||(a+=864e5*ir(sr(s)+o),o=0,s=0),c.milliseconds=a%1e3,e=y(a/1e3),c.seconds=e%60,t=y(e/60),c.minutes=t%60,n=y(t/60),c.hours=n%24,o+=y(n/24),i=y(or(o)),s+=i,o-=ir(sr(i)),r=y(s/12),s%=12,c.days=o,c.months=s,c.years=r,this}function or(e){return 4800*e/146097}function sr(e){return 146097*e/4800}function cr(e){if(!this.isValid())return NaN;var t,n,r=this._milliseconds;if("month"===(e=H(e))||"year"===e)return t=this._days+r/864e5,n=this._months+or(t),"month"===e?n:n/12;switch(t=this._days+Math.round(sr(this._months)),e){case"week":return t/7+r/6048e5;case"day":return t+r/864e5;case"hour":return 24*t+r/36e5;case"minute":return 1440*t+r/6e4;case"second":return 86400*t+r/1e3;case"millisecond":return Math.floor(864e5*t)+r;default:throw new Error("Unknown unit "+e)}}function lr(){return this.isValid()?this._milliseconds+864e5*this._days+this._months%12*2592e6+31536e6*x(this._months/12):NaN}function dr(e){return function(){return this.as(e)}}function ur(e){return e=H(e),this.isValid()?this[e+"s"]():NaN}function hr(e){return function(){return this.isValid()?this._data[e]:NaN}}function fr(){return y(this.days()/7)}function pr(e,t,n,r,i){return i.relativeTime(t||1,!!n,e,r)}function mr(e,t,n){var r=Ut(e).abs(),i=ia(r.as("s")),a=ia(r.as("m")),o=ia(r.as("h")),s=ia(r.as("d")),c=ia(r.as("M")),l=ia(r.as("y")),d=i<=aa.ss&&["s",i]||i0,d[4]=n,pr.apply(null,d)}function gr(e){return void 0===e?ia:"function"==typeof e&&(ia=e,!0)}function _r(e,t){return void 0!==aa[e]&&(void 0===t?aa[e]:(aa[e]=t,"s"===e&&(aa.ss=t-1),!0))}function vr(e){if(!this.isValid())return this.localeData().invalidDate();var t=this.localeData(),n=mr(this,!e,t);return e&&(n=t.pastFuture(+this,n)),t.postformat(n)}function br(){if(!this.isValid())return this.localeData().invalidDate();var e,t,n,r=oa(this._milliseconds)/1e3,i=oa(this._days),a=oa(this._months);e=y(r/60),t=y(e/60),r%=60,e%=60,n=y(a/12),a%=12;var o=n,s=a,c=i,l=t,d=e,u=r,h=this.asSeconds();return h?(h<0?"-":"")+"P"+(o?o+"Y":"")+(s?s+"M":"")+(c?c+"D":"")+(l||d||u?"T":"")+(l?l+"H":"")+(d?d+"M":"")+(u?u+"S":""):"P0D"}var yr,xr;xr=Array.prototype.some?Array.prototype.some:function(e){for(var t=Object(this),n=t.length>>>0,r=0;r68?1900:2e3)};var ai=$("FullYear",!0);q("w",["ww",2],"wo","week"),q("W",["WW",2],"Wo","isoWeek"),E("week","w"),E("isoWeek","W"),I("week",5),I("isoWeek",5),Z("w",/\d\d?/),Z("ww",/\d\d?/,/\d\d/),Z("W",/\d\d?/),Z("WW",/\d\d?/,/\d\d/),re(["w","ww","W","WW"],function(e,t,n,r){t[r.substr(0,1)]=x(e)});var oi={dow:0,doy:6};q("d",0,"do","day"),q("dd",0,0,function(e){return this.localeData().weekdaysMin(this,e)}),q("ddd",0,0,function(e){return this.localeData().weekdaysShort(this,e)}),q("dddd",0,0,function(e){return this.localeData().weekdays(this,e)}),q("e",0,0,"weekday"),q("E",0,0,"isoWeekday"),E("day","d"),E("weekday","e"),E("isoWeekday","E"),I("day",11),I("weekday",11),I("isoWeekday",11),Z("d",/\d\d?/),Z("e",/\d\d?/),Z("E",/\d\d?/),Z("dd",function(e,t){return t.weekdaysMinRegex(e)}),Z("ddd",function(e,t){return t.weekdaysShortRegex(e)}),Z("dddd",function(e,t){return t.weekdaysRegex(e)}),re(["dd","ddd","dddd"],function(e,t,n,r){var i=n._locale.weekdaysParse(e,r,n._strict);null!=i?t.d=i:p(n).invalidWeekday=e}),re(["d","e","E"],function(e,t,n,r){t[r]=x(e)});var si="Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),ci="Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),li="Su_Mo_Tu_We_Th_Fr_Sa".split("_"),di=$r,ui=$r,hi=$r;q("H",["HH",2],0,"hour"),q("h",["hh",2],0,Be),q("k",["kk",2],0,Ue),q("hmm",0,0,function(){return""+Be.apply(this)+G(this.minutes(),2)}),q("hmmss",0,0,function(){return""+Be.apply(this)+G(this.minutes(),2)+G(this.seconds(),2)}),q("Hmm",0,0,function(){return""+this.hours()+G(this.minutes(),2)}),q("Hmmss",0,0,function(){return""+this.hours()+G(this.minutes(),2)+G(this.seconds(),2)}),Ge("a",!0),Ge("A",!1),E("hour","h"),I("hour",13),Z("a",qe),Z("A",qe),Z("H",/\d\d?/),Z("h",/\d\d?/),Z("k",/\d\d?/),Z("HH",/\d\d?/,/\d\d/),Z("hh",/\d\d?/,/\d\d/),Z("kk",/\d\d?/,/\d\d/),Z("hmm",/\d\d\d\d?/),Z("hmmss",/\d\d\d\d\d\d?/),Z("Hmm",/\d\d\d\d?/),Z("Hmmss",/\d\d\d\d\d\d?/),ne(["H","HH"],qr),ne(["k","kk"],function(e,t,n){var r=x(e);t[qr]=24===r?0:r}),ne(["a","A"],function(e,t,n){n._isPm=n._locale.isPM(e),n._meridiem=e}),ne(["h","hh"],function(e,t,n){t[qr]=x(e),p(n).bigHour=!0}),ne("hmm",function(e,t,n){var r=e.length-2;t[qr]=x(e.substr(0,r)),t[Jr]=x(e.substr(r)),p(n).bigHour=!0}),ne("hmmss",function(e,t,n){var r=e.length-4,i=e.length-2;t[qr]=x(e.substr(0,r)),t[Jr]=x(e.substr(r,2)),t[Vr]=x(e.substr(i)),p(n).bigHour=!0}),ne("Hmm",function(e,t,n){var r=e.length-2;t[qr]=x(e.substr(0,r)),t[Jr]=x(e.substr(r))}),ne("Hmmss",function(e,t,n){var r=e.length-4,i=e.length-2;t[qr]=x(e.substr(0,r)),t[Jr]=x(e.substr(r,2)),t[Vr]=x(e.substr(i))});var fi,pi=$("Hours",!0),mi={calendar:Sr,longDateFormat:Cr,invalidDate:"Invalid date",ordinal:"%d",dayOfMonthOrdinalParse:/\d{1,2}/,relativeTime:Pr,months:ti,monthsShort:ni,week:oi,weekdays:si,weekdaysMin:li,weekdaysShort:ci,meridiemParse:/[ap]\.?m?\.?/i},gi={},_i={},vi=/^\s*((?:[+-]\d{6}|\d{4})-(?:\d\d-\d\d|W\d\d-\d|W\d\d|\d\d\d|\d\d))(?:(T| )(\d\d(?::\d\d(?::\d\d(?:[.,]\d+)?)?)?)([\+\-]\d\d(?::?\d\d)?|\s*Z)?)?$/,bi=/^\s*((?:[+-]\d{6}|\d{4})(?:\d\d\d\d|W\d\d\d|W\d\d|\d\d\d|\d\d))(?:(T| )(\d\d(?:\d\d(?:\d\d(?:[.,]\d+)?)?)?)([\+\-]\d\d(?::?\d\d)?|\s*Z)?)?$/,yi=/Z|[+-]\d\d(?::?\d\d)?/,xi=[["YYYYYY-MM-DD",/[+-]\d{6}-\d\d-\d\d/],["YYYY-MM-DD",/\d{4}-\d\d-\d\d/],["GGGG-[W]WW-E",/\d{4}-W\d\d-\d/],["GGGG-[W]WW",/\d{4}-W\d\d/,!1],["YYYY-DDD",/\d{4}-\d{3}/],["YYYY-MM",/\d{4}-\d\d/,!1],["YYYYYYMMDD",/[+-]\d{10}/],["YYYYMMDD",/\d{8}/],["GGGG[W]WWE",/\d{4}W\d{3}/],["GGGG[W]WW",/\d{4}W\d{2}/,!1],["YYYYDDD",/\d{7}/]],wi=[["HH:mm:ss.SSSS",/\d\d:\d\d:\d\d\.\d+/],["HH:mm:ss,SSSS",/\d\d:\d\d:\d\d,\d+/],["HH:mm:ss",/\d\d:\d\d:\d\d/],["HH:mm",/\d\d:\d\d/],["HHmmss.SSSS",/\d\d\d\d\d\d\.\d+/],["HHmmss,SSSS",/\d\d\d\d\d\d,\d+/],["HHmmss",/\d\d\d\d\d\d/],["HHmm",/\d\d\d\d/],["HH",/\d\d/]],ki=/^\/?Date\((\-?\d+)/i,Mi=/^((?:Mon|Tue|Wed|Thu|Fri|Sat|Sun),?\s)?(\d?\d\s(?:Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)\s(?:\d\d)?\d\d\s)(\d\d:\d\d)(\:\d\d)?(\s(?:UT|GMT|[ECMP][SD]T|[A-IK-Za-ik-z]|[+-]\d{4}))$/;t.createFromInputFallback=M("value provided is not in a recognized RFC2822 or ISO format. moment construction falls back to js Date(), which is not reliable across all browsers and versions. Non RFC2822/ISO date formats are discouraged and will be removed in an upcoming major release. Please refer to http://momentjs.com/guides/#/warnings/js-date/ for more info.",function(e){e._d=new Date(e._i+(e._useUTC?" UTC":""))}),t.ISO_8601=function(){},t.RFC_2822=function(){};var Li=M("moment().min is deprecated, use moment.max instead. http://momentjs.com/guides/#/warnings/min-max/",function(){var e=yt.apply(null,arguments);return this.isValid()&&e.isValid()?ethis?this:e:g()}),Di=function(){return Date.now?Date.now():+new Date},Ti=["year","quarter","month","week","day","hour","minute","second","millisecond"];Ct("Z",":"),Ct("ZZ",""),Z("Z",Nr),Z("ZZ",Nr),ne(["Z","ZZ"],function(e,t,n){n._useUTC=!0,n._tzm=Pt(Nr,e)});var Si=/([\+\-]|\d\d)/gi;t.updateOffset=function(){};var Ci=/^(\-)?(?:(\d*)[. ])?(\d+)\:(\d+)(?:\:(\d+)(\.\d*)?)?$/,Pi=/^(-)?P(?:(-?[0-9,.]*)Y)?(?:(-?[0-9,.]*)M)?(?:(-?[0-9,.]*)W)?(?:(-?[0-9,.]*)D)?(?:T(?:(-?[0-9,.]*)H)?(?:(-?[0-9,.]*)M)?(?:(-?[0-9,.]*)S)?)?$/;Ut.fn=Dt.prototype,Ut.invalid=Yt;var Ai=Vt(1,"add"),zi=Vt(-1,"subtract");t.defaultFormat="YYYY-MM-DDTHH:mm:ssZ",t.defaultFormatUtc="YYYY-MM-DDTHH:mm:ss[Z]";var ji=M("moment().lang() is deprecated. Instead, use moment().localeData() to get the language configuration. Use moment().locale() to change languages.",function(e){return void 0===e?this.localeData():this.locale(e)});q(0,["gg",2],0,function(){return this.weekYear()%100}),q(0,["GG",2],0,function(){return this.isoWeekYear()%100}),Pn("gggg","weekYear"),Pn("ggggg","weekYear"),Pn("GGGG","isoWeekYear"),Pn("GGGGG","isoWeekYear"),E("weekYear","gg"),E("isoWeekYear","GG"),I("weekYear",1),I("isoWeekYear",1),Z("G",/[+-]?\d+/),Z("g",/[+-]?\d+/),Z("GG",/\d\d?/,/\d\d/),Z("gg",/\d\d?/,/\d\d/),Z("GGGG",/\d{1,4}/,/\d{4}/),Z("gggg",/\d{1,4}/,/\d{4}/),Z("GGGGG",/[+-]?\d{1,6}/,Fr),Z("ggggg",/[+-]?\d{1,6}/,Fr),re(["gggg","ggggg","GGGG","GGGGG"],function(e,t,n,r){t[r.substr(0,2)]=x(e)}),re(["gg","GG"],function(e,n,r,i){n[i]=t.parseTwoDigitYear(e)}),q("Q",0,"Qo","quarter"),E("quarter","Q"),I("quarter",7),Z("Q",/\d/),ne("Q",function(e,t){t[Ur]=3*(x(e)-1)}),q("D",["DD",2],"Do","date"),E("date","D"),I("date",9),Z("D",/\d\d?/),Z("DD",/\d\d?/,/\d\d/),Z("Do",function(e,t){return e?t._dayOfMonthOrdinalParse||t._ordinalParse:t._dayOfMonthOrdinalParseLenient}),ne(["D","DD"],Gr),ne("Do",function(e,t){t[Gr]=x(e.match(/\d\d?/)[0],10)});var Oi=$("Date",!0);q("DDD",["DDDD",3],"DDDo","dayOfYear"),E("dayOfYear","DDD"),I("dayOfYear",4),Z("DDD",/\d{1,3}/),Z("DDDD",/\d{3}/),ne(["DDD","DDDD"],function(e,t,n){n._dayOfYear=x(e)}),q("m",["mm",2],0,"minute"),E("minute","m"),I("minute",14),Z("m",/\d\d?/),Z("mm",/\d\d?/,/\d\d/),ne(["m","mm"],Jr);var Ei=$("Minutes",!1);q("s",["ss",2],0,"second"),E("second","s"),I("second",15),Z("s",/\d\d?/),Z("ss",/\d\d?/,/\d\d/),ne(["s","ss"],Vr);var Hi=$("Seconds",!1);q("S",0,0,function(){return~~(this.millisecond()/100)}),q(0,["SS",2],0,function(){return~~(this.millisecond()/10)}),q(0,["SSS",3],0,"millisecond"),q(0,["SSSS",4],0,function(){return 10*this.millisecond()}),q(0,["SSSSS",5],0,function(){return 100*this.millisecond()}),q(0,["SSSSSS",6],0,function(){return 1e3*this.millisecond()}),q(0,["SSSSSSS",7],0,function(){return 1e4*this.millisecond()}),q(0,["SSSSSSSS",8],0,function(){return 1e5*this.millisecond()}),q(0,["SSSSSSSSS",9],0,function(){return 1e6*this.millisecond()}),E("millisecond","ms"),I("millisecond",16),Z("S",/\d{1,3}/,/\d/),Z("SS",/\d{1,3}/,/\d\d/),Z("SSS",/\d{1,3}/,/\d{3}/);var Fi;for(Fi="SSSS";Fi.length<=9;Fi+="S")Z(Fi,/\d+/);for(Fi="S";Fi.length<=9;Fi+="S")ne(Fi,Nn);var Ii=$("Milliseconds",!1);q("z",0,0,"zoneAbbr"),q("zz",0,0,"zoneName");var Ni=v.prototype;Ni.add=Ai,Ni.calendar=Zt,Ni.clone=Qt,Ni.diff=sn,Ni.endOf=yn,Ni.format=hn,Ni.from=fn,Ni.fromNow=pn,Ni.to=mn,Ni.toNow=gn,Ni.get=B,Ni.invalidAt=Sn,Ni.isAfter=en,Ni.isBefore=tn,Ni.isBetween=nn,Ni.isSame=rn,Ni.isSameOrAfter=an,Ni.isSameOrBefore=on,Ni.isValid=Dn,Ni.lang=ji,Ni.locale=_n,Ni.localeData=vn,Ni.max=Yi,Ni.min=Li,Ni.parsingFlags=Tn,Ni.set=U,Ni.startOf=bn,Ni.subtract=zi,Ni.toArray=Mn,Ni.toObject=Ln,Ni.toDate=kn,Ni.toISOString=dn,Ni.inspect=un,Ni.toJSON=Yn,Ni.toString=ln,Ni.unix=wn,Ni.valueOf=xn,Ni.creationData=Cn,Ni.year=ai,Ni.isLeapYear=ve,Ni.weekYear=An,Ni.isoWeekYear=zn,Ni.quarter=Ni.quarters=Fn,Ni.month=ue,Ni.daysInMonth=he,Ni.week=Ni.weeks=Te,Ni.isoWeek=Ni.isoWeeks=Se,Ni.weeksInYear=On,Ni.isoWeeksInYear=jn,Ni.date=Oi,Ni.day=Ni.days=He,Ni.weekday=Fe,Ni.isoWeekday=Ie,Ni.dayOfYear=In,Ni.hour=Ni.hours=pi,Ni.minute=Ni.minutes=Ei,Ni.second=Ni.seconds=Hi,Ni.millisecond=Ni.milliseconds=Ii,Ni.utcOffset=jt,Ni.utc=Et,Ni.local=Ht,Ni.parseZone=Ft,Ni.hasAlignedHourOffset=It,Ni.isDST=Nt,Ni.isLocal=Rt,Ni.isUtcOffset=Wt,Ni.isUtc=Bt,Ni.isUTC=Bt,Ni.zoneAbbr=$n,Ni.zoneName=Rn,Ni.dates=M("dates accessor is deprecated. Use date instead.",Oi),Ni.months=M("months accessor is deprecated. Use month instead",ue),Ni.years=M("years accessor is deprecated. Use year instead",ai),Ni.zone=M("moment().zone is deprecated, use moment().utcOffset instead. http://momentjs.com/guides/#/warnings/zone/",Ot),Ni.isDSTShifted=M("isDSTShifted is deprecated. See http://momentjs.com/guides/#/warnings/dst-shifted/ for more information",$t);var $i=S.prototype;$i.calendar=C,$i.longDateFormat=P,$i.invalidDate=A,$i.ordinal=z,$i.preparse=Un,$i.postformat=Un,$i.relativeTime=j,$i.pastFuture=O,$i.set=D,$i.months=oe,$i.monthsShort=se,$i.monthsParse=le,$i.monthsRegex=pe,$i.monthsShortRegex=fe,$i.week=Le,$i.firstDayOfYear=De,$i.firstDayOfWeek=Ye,$i.weekdays=Ae,$i.weekdaysMin=je,$i.weekdaysShort=ze,$i.weekdaysParse=Ee,$i.weekdaysRegex=Ne,$i.weekdaysShortRegex=$e,$i.weekdaysMinRegex=Re,$i.isPM=Je,$i.meridiem=Ve,Qe("en",{dayOfMonthOrdinalParse:/\d{1,2}(th|st|nd|rd)/,ordinal:function(e){var t=e%10;return e+(1===x(e%100/10)?"th":1===t?"st":2===t?"nd":3===t?"rd":"th")}}),t.lang=M("moment.lang is deprecated. Use moment.locale instead.",Qe),t.langData=M("moment.langData is deprecated. Use moment.localeData instead.",nt);var Ri=Math.abs,Wi=dr("ms"),Bi=dr("s"),Ui=dr("m"),Gi=dr("h"),qi=dr("d"),Ji=dr("w"),Vi=dr("M"),Xi=dr("y"),Ki=hr("milliseconds"),Zi=hr("seconds"),Qi=hr("minutes"),ea=hr("hours"),ta=hr("days"),na=hr("months"),ra=hr("years"),ia=Math.round,aa={ss:44,s:45,m:45,h:22,d:26,M:11},oa=Math.abs,sa=Dt.prototype;return sa.isValid=Lt,sa.abs=er,sa.add=nr,sa.subtract=rr,sa.as=cr,sa.asMilliseconds=Wi,sa.asSeconds=Bi,sa.asMinutes=Ui,sa.asHours=Gi,sa.asDays=qi,sa.asWeeks=Ji,sa.asMonths=Vi,sa.asYears=Xi,sa.valueOf=lr,sa._bubble=ar,sa.get=ur,sa.milliseconds=Ki,sa.seconds=Zi,sa.minutes=Qi,sa.hours=ea,sa.days=ta,sa.weeks=fr,sa.months=na,sa.years=ra,sa.humanize=vr,sa.toISOString=br,sa.toString=br,sa.toJSON=br,sa.locale=_n,sa.localeData=vn,sa.toIsoString=M("toIsoString() is deprecated. Please use toISOString() instead (notice the capitals)",br),sa.lang=ji,q("X",0,0,"unix"),q("x",0,0,"valueOf"),Z("x",/[+-]?\d+/),Z("X",/[+-]?\d+(\.\d{1,3})?/),ne("X",function(e,t,n){n._d=new Date(1e3*parseFloat(e,10))}),ne("x",function(e,t,n){n._d=new Date(x(e))}),t.version="2.18.1",function(e){yr=e}(yt),t.fn=Ni,t.min=wt,t.max=kt,t.now=Di,t.utc=h,t.unix=Wn,t.months=Vn,t.isDate=c,t.locale=Qe,t.invalid=g,t.duration=Ut,t.isMoment=b,t.weekdays=Kn,t.parseZone=Bn,t.localeData=nt,t.isDuration=Tt,t.monthsShort=Xn,t.weekdaysMin=Qn,t.defineLocale=et,t.updateLocale=tt,t.locales=rt,t.weekdaysShort=Zn,t.normalizeUnits=H,t.relativeTimeRounding=gr,t.relativeTimeThreshold=_r,t.calendarFormat=Kt,t.prototype=Ni,t})}).call(t,n(136)(e))},function(e,t){e.exports=function(e,t,n,r){var i,a=e=e||{},o=typeof e.default;"object"!==o&&"function"!==o||(i=e,a=e.default);var s="function"==typeof a?a.options:a;if(t&&(s.render=t.render,s.staticRenderFns=t.staticRenderFns),n&&(s._scopeId=n),r){var c=s.computed||(s.computed={});Object.keys(r).forEach(function(e){var t=r[e];c[e]=function(){return t}})}return{esModule:i,exports:a,options:s}}},function(e,t,n){"use strict";(function(t){/*! * Vue.js v2.2.5 * (c) 2014-2017 Evan You * Released under the MIT License. */ -function n(t){return null==t?"":"object"==typeof t?JSON.stringify(t,null,2):String(t)}function r(t){var e=parseFloat(t);return isNaN(e)?t:e}function i(t,e){for(var n=Object.create(null),r=t.split(","),i=0;i-1)return t.splice(n,1)}}function o(t,e){return wi.call(t,e)}function s(t){return"string"==typeof t||"number"==typeof t}function c(t){var e=Object.create(null);return function(n){return e[n]||(e[n]=t(n))}}function l(t,e){function n(n){var r=arguments.length;return r?r>1?t.apply(e,arguments):t.call(e,n):t.call(e)}return n._length=t.length,n}function d(t,e){e=e||0;for(var n=t.length-e,r=new Array(n);n--;)r[n]=t[n+e];return r}function u(t,e){for(var n in e)t[n]=e[n];return t}function h(t){return null!==t&&"object"==typeof t}function f(t){return Ti.call(t)===Di}function m(t){for(var e={},n=0;n=0&&da[n].id>t.id;)n--;da.splice(Math.max(n,ma)+1,0,t)}else da.push(t);ha||(ha=!0,Ui(pt))}}function gt(t){ga.clear(),bt(t,ga)}function bt(t,e){var n,r,i=Array.isArray(t);if((i||h(t))&&Object.isExtensible(t)){if(t.__ob__){var a=t.__ob__.dep.id;if(e.has(a))return;e.add(a)}if(i)for(n=t.length;n--;)bt(t[n],e);else for(r=Object.keys(t),n=r.length;n--;)bt(t[r[n]],e)}}function vt(t,e,n){ba.get=function(){return this[e][n]},ba.set=function(t){this[e][n]=t},Object.defineProperty(t,n,ba)}function yt(t){t._watchers=[];var e=t.$options;e.props&&xt(t,e.props),e.methods&&Tt(t,e.methods),e.data?Mt(t):T(t._data={},!0),e.computed&&kt(t,e.computed),e.watch&&Dt(t,e.watch)}function xt(t,e){var n=t.$options.propsData||{},r=t._props={},i=t.$options._propKeys=[],a=!t.$parent;ta.shouldConvert=a;for(var o in e)!function(a){i.push(a);var o=$(a,e,n,t);D(r,a,o),a in t||vt(t,"_props",a)}(o);ta.shouldConvert=!0}function Mt(t){var e=t.$options.data;e=t._data="function"==typeof e?wt(e,t):e||{},f(e)||(e={});for(var n=Object.keys(e),r=t.$options.props,i=n.length;i--;)r&&o(r,n[i])||v(n[i])||vt(t,"_data",n[i]);T(e,!0)}function wt(t,e){try{return t.call(e)}catch(t){return R(t,e,"data()"),{}}}function kt(t,e){var n=t._computedWatchers=Object.create(null);for(var r in e){var i=e[r],a="function"==typeof i?i:i.get;n[r]=new _a(t,a,p,va),r in t||Lt(t,r,i)}}function Lt(t,e,n){"function"==typeof n?(ba.get=Yt(e),ba.set=p):(ba.get=n.get?n.cache!==!1?Yt(e):n.get:p,ba.set=n.set?n.set:p),Object.defineProperty(t,e,ba)}function Yt(t){return function(){var e=this._computedWatchers&&this._computedWatchers[t];if(e)return e.dirty&&e.evaluate(),Vi.target&&e.depend(),e.value}}function Tt(t,e){t.$options.props;for(var n in e)t[n]=null==e[n]?p:l(e[n],t)}function Dt(t,e){for(var n in e){var r=e[n];if(Array.isArray(r))for(var i=0;i-1:t instanceof RegExp&&t.test(e)}function fe(t,e){for(var n in t){var r=t[n];if(r){var i=ue(r.componentOptions);i&&!e(i)&&(me(r),t[n]=null)}}}function me(t){t&&(t.componentInstance._inactive||ft(t.componentInstance,"deactivated"),t.componentInstance.$destroy())}function pe(t){for(var e=t.data,n=t,r=t;r.componentInstance;)r=r.componentInstance._vnode,r.data&&(e=_e(r.data,e));for(;n=n.parent;)n.data&&(e=_e(e,n.data));return ge(e)}function _e(t,e){return{staticClass:be(t.staticClass,e.staticClass),class:t.class?[t.class,e.class]:e.class}}function ge(t){var e=t.class,n=t.staticClass;return n||e?be(n,ve(e)):""}function be(t,e){return t?e?t+" "+e:t:e||""}function ve(t){var e="";if(!t)return e;if("string"==typeof t)return t;if(Array.isArray(t)){for(var n,r=0,i=t.length;r-1?Xa[t]=e.constructor===window.HTMLUnknownElement||e.constructor===window.HTMLElement:Xa[t]=/HTMLUnknownElement/.test(e.toString())}function Me(t){if("string"==typeof t){var e=document.querySelector(t);return e?e:document.createElement("div")}return t}function we(t,e){var n=document.createElement(t);return"select"!==t?n:(e.data&&e.data.attrs&&void 0!==e.data.attrs.multiple&&n.setAttribute("multiple","multiple"),n)}function ke(t,e){return document.createElementNS(Ga[t],e)}function Le(t){return document.createTextNode(t)}function Ye(t){return document.createComment(t)}function Te(t,e,n){t.insertBefore(e,n)}function De(t,e){t.removeChild(e)}function Se(t,e){t.appendChild(e)}function Ce(t){return t.parentNode}function Pe(t){return t.nextSibling}function Ae(t){return t.tagName}function je(t,e){t.textContent=e}function He(t,e,n){t.setAttribute(e,n)}function Oe(t,e){var n=t.data.ref;if(n){var r=t.context,i=t.componentInstance||t.elm,o=r.$refs;e?Array.isArray(o[n])?a(o[n],i):o[n]===i&&(o[n]=void 0):t.data.refInFor?Array.isArray(o[n])&&o[n].indexOf(i)<0?o[n].push(i):o[n]=[i]:o[n]=i}}function Ee(t){return void 0===t||null===t}function ze(t){return void 0!==t&&null!==t}function Ie(t){return t===!0}function $e(t,e){return t.key===e.key&&t.tag===e.tag&&t.isComment===e.isComment&&ze(t.data)===ze(e.data)&&We(t,e)}function We(t,e){if("input"!==t.tag)return!0;var n;return(ze(n=t.data)&&ze(n=n.attrs)&&n.type)===(ze(n=e.data)&&ze(n=n.attrs)&&n.type)}function Ne(t,e,n){var r,i,a={};for(r=e;r<=n;++r)i=t[r].key,ze(i)&&(a[i]=r);return a}function Fe(t,e){(t.data.directives||e.data.directives)&&Re(t,e)}function Re(t,e){var n,r,i,a=t===Qa,o=e===Qa,s=Be(t.data.directives,t.context),c=Be(e.data.directives,e.context),l=[],d=[];for(n in c)r=s[n],i=c[n],r?(i.oldValue=r.value,Ue(i,"update",e,t),i.def&&i.def.componentUpdated&&d.push(i)):(Ue(i,"bind",e,t),i.def&&i.def.inserted&&l.push(i));if(l.length){var u=function(){for(var n=0;n=0&&" "===(_=t.charAt(p));p--);_&&oo.test(_)||(d=!0)}}else void 0===a?(m=i+1,a=t.slice(0,i).trim()):e();if(void 0===a?a=t.slice(0,i).trim():0!==m&&e(),o)for(i=0;i=Da}function hn(t){return 34===t||39===t}function fn(t){var e=1;for(Aa=Pa;!un();)if(t=dn(),hn(t))mn(t);else if(91===t&&e++,93===t&&e--,0===e){ja=Pa;break}}function mn(t){for(var e=t;!un()&&(t=dn())!==e;);}function pn(t,e,n){Ha=n;var r=e.value,i=e.modifiers,a=t.tag,o=t.attrsMap.type;if("select"===a)bn(t,r,i);else if("input"===a&&"checkbox"===o)_n(t,r,i);else if("input"===a&&"radio"===o)gn(t,r,i);else if("input"===a||"textarea"===a)vn(t,r,i);else if(!Pi.isReservedTag(a))return sn(t,r,i),!1;return!0}function _n(t,e,n){var r=n&&n.number,i=an(t,"value")||"null",a=an(t,"true-value")||"true",o=an(t,"false-value")||"false";tn(t,"checked","Array.isArray("+e+")?_i("+e+","+i+")>-1"+("true"===a?":("+e+")":":_q("+e+","+a+")")),rn(t,co,"var $$a="+e+",$$el=$event.target,$$c=$$el.checked?("+a+"):("+o+");if(Array.isArray($$a)){var $$v="+(r?"_n("+i+")":i)+",$$i=_i($$a,$$v);if($$c){$$i<0&&("+e+"=$$a.concat($$v))}else{$$i>-1&&("+e+"=$$a.slice(0,$$i).concat($$a.slice($$i+1)))}}else{"+e+"=$$c}",null,!0)}function gn(t,e,n){var r=n&&n.number,i=an(t,"value")||"null";i=r?"_n("+i+")":i,tn(t,"checked","_q("+e+","+i+")"),rn(t,co,cn(e,i),null,!0)}function bn(t,e,n){var r=n&&n.number,i='Array.prototype.filter.call($event.target.options,function(o){return o.selected}).map(function(o){var val = "_value" in o ? o._value : o.value;return '+(r?"_n(val)":"val")+"})",a="var $$selectedVal = "+i+";";a=a+" "+cn(e,"$event.target.multiple ? $$selectedVal : $$selectedVal[0]"),rn(t,"change",a,null,!0)}function vn(t,e,n){var r=t.attrsMap.type,i=n||{},a=i.lazy,o=i.number,s=i.trim,c=!a&&"range"!==r,l=a?"change":"range"===r?so:"input",d="$event.target.value";s&&(d="$event.target.value.trim()"),o&&(d="_n("+d+")");var u=cn(e,d);c&&(u="if($event.target.composing)return;"+u),tn(t,"value","("+e+")"),rn(t,l,u,null,!0),(s||o||"number"===r)&&rn(t,"blur","$forceUpdate()")}function yn(t){var e;t[so]&&(e=zi?"change":"input",t[e]=[].concat(t[so],t[e]||[]),delete t[so]),t[co]&&(e=Fi?"click":"change",t[e]=[].concat(t[co],t[e]||[]),delete t[co])}function xn(t,e,n,r){if(n){var i=e,a=Oa;e=function(n){null!==(1===arguments.length?i(n):i.apply(null,arguments))&&Mn(t,e,r,a)}}Oa.addEventListener(t,e,r)}function Mn(t,e,n,r){(r||Oa).removeEventListener(t,e,n)}function wn(t,e){if(t.data.on||e.data.on){var n=e.data.on||{},r=t.data.on||{};Oa=e.elm,yn(n),q(n,r,xn,Mn,e.context)}}function kn(t,e){if(t.data.domProps||e.data.domProps){var n,r,i=e.elm,a=t.data.domProps||{},o=e.data.domProps||{};o.__ob__&&(o=e.data.domProps=u({},o));for(n in a)null==o[n]&&(i[n]="");for(n in o)if(r=o[n],"textContent"!==n&&"innerHTML"!==n||(e.children&&(e.children.length=0),r!==a[n]))if("value"===n){i._value=r;var s=null==r?"":String(r);Ln(i,e,s)&&(i.value=s)}else i[n]=r}}function Ln(t,e,n){return!t.composing&&("option"===e.tag||Yn(t,n)||Tn(t,n))}function Yn(t,e){return document.activeElement!==t&&t.value!==e}function Tn(t,e){var n=t.value,i=t._vModifiers;return i&&i.number||"number"===t.type?r(n)!==r(e):i&&i.trim?n.trim()!==e.trim():n!==e}function Dn(t){var e=Sn(t.style);return t.staticStyle?u(t.staticStyle,e):e}function Sn(t){return Array.isArray(t)?m(t):"string"==typeof t?ho(t):t}function Cn(t,e){var n,r={};if(e)for(var i=t;i.componentInstance;)i=i.componentInstance._vnode,i.data&&(n=Dn(i.data))&&u(r,n);(n=Dn(t.data))&&u(r,n);for(var a=t;a=a.parent;)a.data&&(n=Dn(a.data))&&u(r,n);return r}function Pn(t,e){var n=e.data,r=t.data;if(n.staticStyle||n.style||r.staticStyle||r.style){var i,a,o=e.elm,s=t.data.staticStyle,c=t.data.style||{},l=s||c,d=Sn(e.data.style)||{};e.data.style=d.__ob__?u({},d):d;var h=Cn(e,!0);for(a in l)null==h[a]&&po(o,a,"");for(a in h)(i=h[a])!==l[a]&&po(o,a,null==i?"":i)}}function An(t,e){if(e&&(e=e.trim()))if(t.classList)e.indexOf(" ")>-1?e.split(/\s+/).forEach(function(e){return t.classList.add(e)}):t.classList.add(e);else{var n=" "+(t.getAttribute("class")||"")+" ";n.indexOf(" "+e+" ")<0&&t.setAttribute("class",(n+e).trim())}}function jn(t,e){if(e&&(e=e.trim()))if(t.classList)e.indexOf(" ")>-1?e.split(/\s+/).forEach(function(e){return t.classList.remove(e)}):t.classList.remove(e);else{for(var n=" "+(t.getAttribute("class")||"")+" ",r=" "+e+" ";n.indexOf(r)>=0;)n=n.replace(r," ");t.setAttribute("class",n.trim())}}function Hn(t){if(t){if("object"==typeof t){var e={};return t.css!==!1&&u(e,vo(t.name||"v")),u(e,t),e}return"string"==typeof t?vo(t):void 0}}function On(t){To(function(){To(t)})}function En(t,e){(t._transitionClasses||(t._transitionClasses=[])).push(e),An(t,e)}function zn(t,e){t._transitionClasses&&a(t._transitionClasses,e),jn(t,e)}function In(t,e,n){var r=$n(t,e),i=r.type,a=r.timeout,o=r.propCount;if(!i)return n();var s=i===xo?ko:Yo,c=0,l=function(){t.removeEventListener(s,d),n()},d=function(e){e.target===t&&++c>=o&&l()};setTimeout(function(){c0&&(n=xo,d=o,u=a.length):e===Mo?l>0&&(n=Mo,d=l,u=c.length):(d=Math.max(o,l),n=d>0?o>l?xo:Mo:null,u=n?n===xo?a.length:c.length:0),{type:n,timeout:d,propCount:u,hasTransform:n===xo&&Do.test(r[wo+"Property"])}}function Wn(t,e){for(;t.length1}function Un(t,e){e.data.show||Fn(e)}function Jn(t,e,n){var r=e.value,i=t.multiple;if(!i||Array.isArray(r)){for(var a,o,s=0,c=t.options.length;s-1,o.selected!==a&&(o.selected=a);else if(_(Vn(o),r))return void(t.selectedIndex!==s&&(t.selectedIndex=s));i||(t.selectedIndex=-1)}}function qn(t,e){for(var n=0,r=e.length;n=0&&o[i].lowerCasedTag!==s;i--);else i=0;if(i>=0){for(var c=o.length-1;c>=i;c--)e.end&&e.end(o[c].tag,n,r);o.length=i,a=i&&o[i-1].tag}else"br"===s?e.start&&e.start(t,[],!0,n,r):"p"===s&&(e.start&&e.start(t,[],!1,n,r),e.end&&e.end(t,n,r))}for(var i,a,o=[],s=e.expectHTML,c=e.isUnaryTag||Si,l=e.canBeLeftOpenTag||Si,d=0;t;){if(i=t,a&&ys(a)){var u=a.toLowerCase(),h=xs[u]||(xs[u]=new RegExp("([\\s\\S]*?)(]*>)","i")),f=0,m=t.replace(h,function(t,n,r){return f=r.length,ys(u)||"noscript"===u||(n=n.replace(//g,"$1").replace(//g,"$1")),e.chars&&e.chars(n),""});d+=t.length-m.length,t=m,r(u,d-f,d)}else{var p=t.indexOf("<");if(0===p){if(Qo.test(t)){var _=t.indexOf("-->");if(_>=0){n(_+3);continue}}if(ts.test(t)){var g=t.indexOf("]>");if(g>=0){n(g+2);continue}}var b=t.match(Zo);if(b){n(b[0].length);continue}var v=t.match(Ko);if(v){var y=d;n(v[0].length),r(v[1],y,d);continue}var x=function(){var e=t.match(Vo);if(e){var r={tagName:e[1],attrs:[],start:d};n(e[0].length);for(var i,a;!(i=t.match(Xo))&&(a=t.match(Jo));)n(a[0].length),r.attrs.push(a);if(i)return r.unarySlash=i[1],n(i[0].length),r.end=d,r}}();if(x){!function(t){var n=t.tagName,i=t.unarySlash;s&&("p"===a&&Go(n)&&r(a),l(n)&&a===n&&r(n));for(var d=c(n)||"html"===n&&"head"===a||!!i,u=t.attrs.length,h=new Array(u),f=0;f=0){for(w=t.slice(p);!(Ko.test(w)||Vo.test(w)||Qo.test(w)||ts.test(w)||(k=w.indexOf("<",1))<0);)p+=k,w=t.slice(p);M=t.substring(0,p),n(p)}p<0&&(M=t,t=""),e.chars&&M&&e.chars(M)}if(t===i){e.chars&&e.chars(t);break}}r()}function ur(t,e){var n=e?Ys(e):Ls;if(n.test(t)){for(var r,i,a=[],o=n.lastIndex=0;r=n.exec(t);){i=r.index,i>o&&a.push(JSON.stringify(t.slice(o,i)));var s=Xe(r[1].trim());a.push("_s("+s+")"),o=i+r[0].length}return o0,$i=Ei&&Ei.indexOf("edge/")>0,Wi=Ei&&Ei.indexOf("android")>0,Ni=Ei&&/iphone|ipad|ipod|ios/.test(Ei),Fi=Ei&&/chrome\/\d+/.test(Ei)&&!$i,Ri=function(){return void 0===yi&&(yi=!Oi&&void 0!==e&&"server"===e.process.env.VUE_ENV),yi},Bi=Oi&&window.__VUE_DEVTOOLS_GLOBAL_HOOK__,Gi="undefined"!=typeof Symbol&&M(Symbol)&&"undefined"!=typeof Reflect&&M(Reflect.ownKeys),Ui=function(){function t(){r=!1;var t=n.slice(0);n.length=0;for(var e=0;e1?d(n):n;for(var r=d(arguments,1),i=0,a=n.length;i1&&(e[n[0].trim()]=n[1].trim())}}),e}),fo=/^--/,mo=/\s*!important$/,po=function(t,e,n){fo.test(e)?t.style.setProperty(e,n):mo.test(n)?t.style.setProperty(e,n.replace(mo,""),"important"):t.style[go(e)]=n},_o=["Webkit","Moz","ms"],go=c(function(t){if(Ea=Ea||document.createElement("div"),"filter"!==(t=ki(t))&&t in Ea.style)return t;for(var e=t.charAt(0).toUpperCase()+t.slice(1),n=0;n<_o.length;n++){var r=_o[n]+e;if(r in Ea.style)return r}}),bo={create:Pn,update:Pn},vo=c(function(t){return{enterClass:t+"-enter",enterToClass:t+"-enter-to",enterActiveClass:t+"-enter-active",leaveClass:t+"-leave",leaveToClass:t+"-leave-to",leaveActiveClass:t+"-leave-active"}}),yo=Oi&&!Ii,xo="transition",Mo="animation",wo="transition",ko="transitionend",Lo="animation",Yo="animationend";yo&&(void 0===window.ontransitionend&&void 0!==window.onwebkittransitionend&&(wo="WebkitTransition",ko="webkitTransitionEnd"),void 0===window.onanimationend&&void 0!==window.onwebkitanimationend&&(Lo="WebkitAnimation",Yo="webkitAnimationEnd"));var To=Oi&&window.requestAnimationFrame?window.requestAnimationFrame.bind(window):setTimeout,Do=/\b(transform|all)(,|$)/,So=Oi?{create:Un,activate:Un,remove:function(t,e){t.data.show?e():Rn(t,e)}}:{},Co=[io,ao,lo,uo,bo,So],Po=Co.concat(ro),Ao=function(t){function e(t){return new ia(T.tagName(t).toLowerCase(),{},[],void 0,t)}function n(t,e){function n(){0==--n.listeners&&r(t)}return n.listeners=e,n}function r(t){var e=T.parentNode(t);ze(e)&&T.removeChild(e,t)}function a(t,e,n,r,i){if(t.isRootInsert=!i,!o(t,e,n,r)){var a=t.data,s=t.children,c=t.tag;ze(c)?(t.elm=t.ns?T.createElementNS(t.ns,c):T.createElement(c,t),m(t),u(t,s,e),ze(a)&&f(t,e),d(n,t.elm,r)):Ie(t.isComment)?(t.elm=T.createComment(t.text),d(n,t.elm,r)):(t.elm=T.createTextNode(t.text),d(n,t.elm,r))}}function o(t,e,n,r){var i=t.data;if(ze(i)){var a=ze(t.componentInstance)&&i.keepAlive;if(ze(i=i.hook)&&ze(i=i.init)&&i(t,!1,n,r),ze(t.componentInstance))return c(t,e),Ie(a)&&l(t,e,n,r),!0}}function c(t,e){ze(t.data.pendingInsert)&&e.push.apply(e,t.data.pendingInsert),t.elm=t.componentInstance.$el,h(t)?(f(t,e),m(t)):(Oe(t),e.push(t))}function l(t,e,n,r){for(var i,a=t;a.componentInstance;)if(a=a.componentInstance._vnode,ze(i=a.data)&&ze(i=i.transition)){for(i=0;ih?(l=Ee(n[_+1])?null:n[_+1].elm,p(t,l,n,u,_,r)):u>_&&g(t,e,d,h)}function y(t,e,n,r){if(t!==e){if(Ie(e.isStatic)&&Ie(t.isStatic)&&e.key===t.key&&(Ie(e.isCloned)||Ie(e.isOnce)))return e.elm=t.elm,void(e.componentInstance=t.componentInstance);var i,a=e.data;ze(a)&&ze(i=a.hook)&&ze(i=i.prepatch)&&i(t,e);var o=e.elm=t.elm,s=t.children,c=e.children;if(ze(a)&&h(e)){for(i=0;i',n.innerHTML.indexOf(e)>0}("\n"," "),Ro=i("area,base,br,col,embed,frame,hr,img,input,isindex,keygen,link,meta,param,source,track,wbr"),Bo=i("colgroup,dd,dt,li,options,p,td,tfoot,th,thead,tr,source"),Go=i("address,article,aside,base,blockquote,body,caption,col,colgroup,dd,details,dialog,div,dl,dt,fieldset,figcaption,figure,footer,form,h1,h2,h3,h4,h5,h6,head,header,hgroup,hr,html,legend,li,menuitem,meta,optgroup,option,param,rp,rt,source,style,summary,tbody,td,tfoot,th,thead,title,tr,track"),Uo=[/"([^"]*)"+/.source,/'([^']*)'+/.source,/([^\s"'=<>`]+)/.source],Jo=new RegExp("^\\s*"+/([^\s"'<>\/=]+)/.source+"(?:\\s*("+/(?:=)/.source+")\\s*(?:"+Uo.join("|")+"))?"),qo="[a-zA-Z_][\\w\\-\\.]*",Vo=new RegExp("^<((?:"+qo+"\\:)?"+qo+")"),Xo=/^\s*(\/?)>/,Ko=new RegExp("^<\\/((?:"+qo+"\\:)?"+qo+")[^>]*>"),Zo=/^]+>/i,Qo=/^/g,"$1").replace(//g,"$1")),t.chars&&t.chars(n),""});d+=e.length-p.length,e=p,r(u,d-f,d)}else{var m=e.indexOf("<");if(0===m){if(Qo.test(e)){var g=e.indexOf("-->");if(g>=0){n(g+3);continue}}if(es.test(e)){var _=e.indexOf("]>");if(_>=0){n(_+2);continue}}var v=e.match(Zo);if(v){n(v[0].length);continue}var b=e.match(Ko);if(b){var y=d;n(b[0].length),r(b[1],y,d);continue}var x=function(){var t=e.match(Vo);if(t){var r={tagName:t[1],attrs:[],start:d};n(t[0].length);for(var i,a;!(i=e.match(Xo))&&(a=e.match(qo));)n(a[0].length),r.attrs.push(a);if(i)return r.unarySlash=i[1],n(i[0].length),r.end=d,r}}();if(x){!function(e){var n=e.tagName,i=e.unarySlash;s&&("p"===a&&Uo(n)&&r(a),l(n)&&a===n&&r(n));for(var d=c(n)||"html"===n&&"head"===a||!!i,u=e.attrs.length,h=new Array(u),f=0;f=0){for(k=e.slice(m);!(Ko.test(k)||Vo.test(k)||Qo.test(k)||es.test(k)||(M=k.indexOf("<",1))<0);)m+=M,k=e.slice(m);w=e.substring(0,m),n(m)}m<0&&(w=e,e=""),t.chars&&w&&t.chars(w)}if(e===i){t.chars&&t.chars(e);break}}r()}function ur(e,t){var n=t?Ys(t):Ls;if(n.test(e)){for(var r,i,a=[],o=n.lastIndex=0;r=n.exec(e);){i=r.index,i>o&&a.push(JSON.stringify(e.slice(o,i)));var s=Xt(r[1].trim());a.push("_s("+s+")"),o=i+r[0].length}return o0,Ii=Ei&&Ei.indexOf("edge/")>0,Ni=Ei&&Ei.indexOf("android")>0,$i=Ei&&/iphone|ipad|ipod|ios/.test(Ei),Ri=Ei&&/chrome\/\d+/.test(Ei)&&!Ii,Wi=function(){return void 0===yi&&(yi=!Oi&&void 0!==t&&"server"===t.process.env.VUE_ENV),yi},Bi=Oi&&window.__VUE_DEVTOOLS_GLOBAL_HOOK__,Ui="undefined"!=typeof Symbol&&w(Symbol)&&"undefined"!=typeof Reflect&&w(Reflect.ownKeys),Gi=function(){function e(){r=!1;var e=n.slice(0);n.length=0;for(var t=0;t1?d(n):n;for(var r=d(arguments,1),i=0,a=n.length;i1&&(t[n[0].trim()]=n[1].trim())}}),t}),fo=/^--/,po=/\s*!important$/,mo=function(e,t,n){fo.test(t)?e.style.setProperty(t,n):po.test(n)?e.style.setProperty(t,n.replace(po,""),"important"):e.style[_o(t)]=n},go=["Webkit","Moz","ms"],_o=c(function(e){if(Ea=Ea||document.createElement("div"),"filter"!==(e=Mi(e))&&e in Ea.style)return e;for(var t=e.charAt(0).toUpperCase()+e.slice(1),n=0;nh?(l=Et(n[g+1])?null:n[g+1].elm,m(e,l,n,u,g,r)):u>g&&_(e,t,d,h)}function y(e,t,n,r){if(e!==t){if(Ft(t.isStatic)&&Ft(e.isStatic)&&t.key===e.key&&(Ft(t.isCloned)||Ft(t.isOnce)))return t.elm=e.elm,void(t.componentInstance=e.componentInstance);var i,a=t.data;Ht(a)&&Ht(i=a.hook)&&Ht(i=i.prepatch)&&i(e,t);var o=t.elm=e.elm,s=e.children,c=t.children;if(Ht(a)&&h(t)){for(i=0;i',n.innerHTML.indexOf(t)>0}("\n"," "),Wo=i("area,base,br,col,embed,frame,hr,img,input,isindex,keygen,link,meta,param,source,track,wbr"),Bo=i("colgroup,dd,dt,li,options,p,td,tfoot,th,thead,tr,source"),Uo=i("address,article,aside,base,blockquote,body,caption,col,colgroup,dd,details,dialog,div,dl,dt,fieldset,figcaption,figure,footer,form,h1,h2,h3,h4,h5,h6,head,header,hgroup,hr,html,legend,li,menuitem,meta,optgroup,option,param,rp,rt,source,style,summary,tbody,td,tfoot,th,thead,title,tr,track"),Go=[/"([^"]*)"+/.source,/'([^']*)'+/.source,/([^\s"'=<>`]+)/.source],qo=new RegExp("^\\s*"+/([^\s"'<>\/=]+)/.source+"(?:\\s*("+/(?:=)/.source+")\\s*(?:"+Go.join("|")+"))?"),Jo="[a-zA-Z_][\\w\\-\\.]*",Vo=new RegExp("^<((?:"+Jo+"\\:)?"+Jo+")"),Xo=/^\s*(\/?)>/,Ko=new RegExp("^<\\/((?:"+Jo+"\\:)?"+Jo+")[^>]*>"),Zo=/^]+>/i,Qo=/^\n// 5:31:26 +0200 It is possible that 5:31:26 doesn't exist with offset\n// +0200, so we adjust the time as needed, to be valid.\n//\n// Keeping the time actually adds/subtracts (one hour)\n// from the actual represented time. That is why we call updateOffset\n// a second time. In case it wants us to change the offset again\n// _changeInProgress == true case, then we have to adjust, because\n// there is no such time in the given timezone.\nfunction getSetOffset (input, keepLocalTime, keepMinutes) {\n var offset = this._offset || 0,\n localAdjust;\n if (!this.isValid()) {\n return input != null ? this : NaN;\n }\n if (input != null) {\n if (typeof input === 'string') {\n input = offsetFromString(matchShortOffset, input);\n if (input === null) {\n return this;\n }\n } else if (Math.abs(input) < 16 && !keepMinutes) {\n input = input * 60;\n }\n if (!this._isUTC && keepLocalTime) {\n localAdjust = getDateOffset(this);\n }\n this._offset = input;\n this._isUTC = true;\n if (localAdjust != null) {\n this.add(localAdjust, 'm');\n }\n if (offset !== input) {\n if (!keepLocalTime || this._changeInProgress) {\n addSubtract(this, createDuration(input - offset, 'm'), 1, false);\n } else if (!this._changeInProgress) {\n this._changeInProgress = true;\n hooks.updateOffset(this, true);\n this._changeInProgress = null;\n }\n }\n return this;\n } else {\n return this._isUTC ? offset : getDateOffset(this);\n }\n}\n\nfunction getSetZone (input, keepLocalTime) {\n if (input != null) {\n if (typeof input !== 'string') {\n input = -input;\n }\n\n this.utcOffset(input, keepLocalTime);\n\n return this;\n } else {\n return -this.utcOffset();\n }\n}\n\nfunction setOffsetToUTC (keepLocalTime) {\n return this.utcOffset(0, keepLocalTime);\n}\n\nfunction setOffsetToLocal (keepLocalTime) {\n if (this._isUTC) {\n this.utcOffset(0, keepLocalTime);\n this._isUTC = false;\n\n if (keepLocalTime) {\n this.subtract(getDateOffset(this), 'm');\n }\n }\n return this;\n}\n\nfunction setOffsetToParsedOffset () {\n if (this._tzm != null) {\n this.utcOffset(this._tzm, false, true);\n } else if (typeof this._i === 'string') {\n var tZone = offsetFromString(matchOffset, this._i);\n if (tZone != null) {\n this.utcOffset(tZone);\n }\n else {\n this.utcOffset(0, true);\n }\n }\n return this;\n}\n\nfunction hasAlignedHourOffset (input) {\n if (!this.isValid()) {\n return false;\n }\n input = input ? createLocal(input).utcOffset() : 0;\n\n return (this.utcOffset() - input) % 60 === 0;\n}\n\nfunction isDaylightSavingTime () {\n return (\n this.utcOffset() > this.clone().month(0).utcOffset() ||\n this.utcOffset() > this.clone().month(5).utcOffset()\n );\n}\n\nfunction isDaylightSavingTimeShifted () {\n if (!isUndefined(this._isDSTShifted)) {\n return this._isDSTShifted;\n }\n\n var c = {};\n\n copyConfig(c, this);\n c = prepareConfig(c);\n\n if (c._a) {\n var other = c._isUTC ? createUTC(c._a) : createLocal(c._a);\n this._isDSTShifted = this.isValid() &&\n compareArrays(c._a, other.toArray()) > 0;\n } else {\n this._isDSTShifted = false;\n }\n\n return this._isDSTShifted;\n}\n\nfunction isLocal () {\n return this.isValid() ? !this._isUTC : false;\n}\n\nfunction isUtcOffset () {\n return this.isValid() ? this._isUTC : false;\n}\n\nfunction isUtc () {\n return this.isValid() ? this._isUTC && this._offset === 0 : false;\n}\n\n// ASP.NET json date format regex\nvar aspNetRegex = /^(\\-)?(?:(\\d*)[. ])?(\\d+)\\:(\\d+)(?:\\:(\\d+)(\\.\\d*)?)?$/;\n\n// from http://docs.closure-library.googlecode.com/git/closure_goog_date_date.js.source.html\n// somewhat more in line with 4.4.3.2 2004 spec, but allows decimal anywhere\n// and further modified to allow for strings containing both week and day\nvar isoRegex = /^(-)?P(?:(-?[0-9,.]*)Y)?(?:(-?[0-9,.]*)M)?(?:(-?[0-9,.]*)W)?(?:(-?[0-9,.]*)D)?(?:T(?:(-?[0-9,.]*)H)?(?:(-?[0-9,.]*)M)?(?:(-?[0-9,.]*)S)?)?$/;\n\nfunction createDuration (input, key) {\n var duration = input,\n // matching against regexp is expensive, do it on demand\n match = null,\n sign,\n ret,\n diffRes;\n\n if (isDuration(input)) {\n duration = {\n ms : input._milliseconds,\n d : input._days,\n M : input._months\n };\n } else if (isNumber(input)) {\n duration = {};\n if (key) {\n duration[key] = input;\n } else {\n duration.milliseconds = input;\n }\n } else if (!!(match = aspNetRegex.exec(input))) {\n sign = (match[1] === '-') ? -1 : 1;\n duration = {\n y : 0,\n d : toInt(match[DATE]) * sign,\n h : toInt(match[HOUR]) * sign,\n m : toInt(match[MINUTE]) * sign,\n s : toInt(match[SECOND]) * sign,\n ms : toInt(absRound(match[MILLISECOND] * 1000)) * sign // the millisecond decimal point is included in the match\n };\n } else if (!!(match = isoRegex.exec(input))) {\n sign = (match[1] === '-') ? -1 : 1;\n duration = {\n y : parseIso(match[2], sign),\n M : parseIso(match[3], sign),\n w : parseIso(match[4], sign),\n d : parseIso(match[5], sign),\n h : parseIso(match[6], sign),\n m : parseIso(match[7], sign),\n s : parseIso(match[8], sign)\n };\n } else if (duration == null) {// checks for null or undefined\n duration = {};\n } else if (typeof duration === 'object' && ('from' in duration || 'to' in duration)) {\n diffRes = momentsDifference(createLocal(duration.from), createLocal(duration.to));\n\n duration = {};\n duration.ms = diffRes.milliseconds;\n duration.M = diffRes.months;\n }\n\n ret = new Duration(duration);\n\n if (isDuration(input) && hasOwnProp(input, '_locale')) {\n ret._locale = input._locale;\n }\n\n return ret;\n}\n\ncreateDuration.fn = Duration.prototype;\ncreateDuration.invalid = createInvalid$1;\n\nfunction parseIso (inp, sign) {\n // We'd normally use ~~inp for this, but unfortunately it also\n // converts floats to ints.\n // inp may be undefined, so careful calling replace on it.\n var res = inp && parseFloat(inp.replace(',', '.'));\n // apply sign while we're at it\n return (isNaN(res) ? 0 : res) * sign;\n}\n\nfunction positiveMomentsDifference(base, other) {\n var res = {milliseconds: 0, months: 0};\n\n res.months = other.month() - base.month() +\n (other.year() - base.year()) * 12;\n if (base.clone().add(res.months, 'M').isAfter(other)) {\n --res.months;\n }\n\n res.milliseconds = +other - +(base.clone().add(res.months, 'M'));\n\n return res;\n}\n\nfunction momentsDifference(base, other) {\n var res;\n if (!(base.isValid() && other.isValid())) {\n return {milliseconds: 0, months: 0};\n }\n\n other = cloneWithOffset(other, base);\n if (base.isBefore(other)) {\n res = positiveMomentsDifference(base, other);\n } else {\n res = positiveMomentsDifference(other, base);\n res.milliseconds = -res.milliseconds;\n res.months = -res.months;\n }\n\n return res;\n}\n\n// TODO: remove 'name' arg after deprecation is removed\nfunction createAdder(direction, name) {\n return function (val, period) {\n var dur, tmp;\n //invert the arguments, but complain about it\n if (period !== null && !isNaN(+period)) {\n deprecateSimple(name, 'moment().' + name + '(period, number) is deprecated. Please use moment().' + name + '(number, period). ' +\n 'See http://momentjs.com/guides/#/warnings/add-inverted-param/ for more info.');\n tmp = val; val = period; period = tmp;\n }\n\n val = typeof val === 'string' ? +val : val;\n dur = createDuration(val, period);\n addSubtract(this, dur, direction);\n return this;\n };\n}\n\nfunction addSubtract (mom, duration, isAdding, updateOffset) {\n var milliseconds = duration._milliseconds,\n days = absRound(duration._days),\n months = absRound(duration._months);\n\n if (!mom.isValid()) {\n // No op\n return;\n }\n\n updateOffset = updateOffset == null ? true : updateOffset;\n\n if (milliseconds) {\n mom._d.setTime(mom._d.valueOf() + milliseconds * isAdding);\n }\n if (days) {\n set$1(mom, 'Date', get(mom, 'Date') + days * isAdding);\n }\n if (months) {\n setMonth(mom, get(mom, 'Month') + months * isAdding);\n }\n if (updateOffset) {\n hooks.updateOffset(mom, days || months);\n }\n}\n\nvar add = createAdder(1, 'add');\nvar subtract = createAdder(-1, 'subtract');\n\nfunction getCalendarFormat(myMoment, now) {\n var diff = myMoment.diff(now, 'days', true);\n return diff < -6 ? 'sameElse' :\n diff < -1 ? 'lastWeek' :\n diff < 0 ? 'lastDay' :\n diff < 1 ? 'sameDay' :\n diff < 2 ? 'nextDay' :\n diff < 7 ? 'nextWeek' : 'sameElse';\n}\n\nfunction calendar$1 (time, formats) {\n // We want to compare the start of today, vs this.\n // Getting start-of-today depends on whether we're local/utc/offset or not.\n var now = time || createLocal(),\n sod = cloneWithOffset(now, this).startOf('day'),\n format = hooks.calendarFormat(this, sod) || 'sameElse';\n\n var output = formats && (isFunction(formats[format]) ? formats[format].call(this, now) : formats[format]);\n\n return this.format(output || this.localeData().calendar(format, this, createLocal(now)));\n}\n\nfunction clone () {\n return new Moment(this);\n}\n\nfunction isAfter (input, units) {\n var localInput = isMoment(input) ? input : createLocal(input);\n if (!(this.isValid() && localInput.isValid())) {\n return false;\n }\n units = normalizeUnits(!isUndefined(units) ? units : 'millisecond');\n if (units === 'millisecond') {\n return this.valueOf() > localInput.valueOf();\n } else {\n return localInput.valueOf() < this.clone().startOf(units).valueOf();\n }\n}\n\nfunction isBefore (input, units) {\n var localInput = isMoment(input) ? input : createLocal(input);\n if (!(this.isValid() && localInput.isValid())) {\n return false;\n }\n units = normalizeUnits(!isUndefined(units) ? units : 'millisecond');\n if (units === 'millisecond') {\n return this.valueOf() < localInput.valueOf();\n } else {\n return this.clone().endOf(units).valueOf() < localInput.valueOf();\n }\n}\n\nfunction isBetween (from, to, units, inclusivity) {\n inclusivity = inclusivity || '()';\n return (inclusivity[0] === '(' ? this.isAfter(from, units) : !this.isBefore(from, units)) &&\n (inclusivity[1] === ')' ? this.isBefore(to, units) : !this.isAfter(to, units));\n}\n\nfunction isSame (input, units) {\n var localInput = isMoment(input) ? input : createLocal(input),\n inputMs;\n if (!(this.isValid() && localInput.isValid())) {\n return false;\n }\n units = normalizeUnits(units || 'millisecond');\n if (units === 'millisecond') {\n return this.valueOf() === localInput.valueOf();\n } else {\n inputMs = localInput.valueOf();\n return this.clone().startOf(units).valueOf() <= inputMs && inputMs <= this.clone().endOf(units).valueOf();\n }\n}\n\nfunction isSameOrAfter (input, units) {\n return this.isSame(input, units) || this.isAfter(input,units);\n}\n\nfunction isSameOrBefore (input, units) {\n return this.isSame(input, units) || this.isBefore(input,units);\n}\n\nfunction diff (input, units, asFloat) {\n var that,\n zoneDelta,\n delta, output;\n\n if (!this.isValid()) {\n return NaN;\n }\n\n that = cloneWithOffset(input, this);\n\n if (!that.isValid()) {\n return NaN;\n }\n\n zoneDelta = (that.utcOffset() - this.utcOffset()) * 6e4;\n\n units = normalizeUnits(units);\n\n if (units === 'year' || units === 'month' || units === 'quarter') {\n output = monthDiff(this, that);\n if (units === 'quarter') {\n output = output / 3;\n } else if (units === 'year') {\n output = output / 12;\n }\n } else {\n delta = this - that;\n output = units === 'second' ? delta / 1e3 : // 1000\n units === 'minute' ? delta / 6e4 : // 1000 * 60\n units === 'hour' ? delta / 36e5 : // 1000 * 60 * 60\n units === 'day' ? (delta - zoneDelta) / 864e5 : // 1000 * 60 * 60 * 24, negate dst\n units === 'week' ? (delta - zoneDelta) / 6048e5 : // 1000 * 60 * 60 * 24 * 7, negate dst\n delta;\n }\n return asFloat ? output : absFloor(output);\n}\n\nfunction monthDiff (a, b) {\n // difference in months\n var wholeMonthDiff = ((b.year() - a.year()) * 12) + (b.month() - a.month()),\n // b is in (anchor - 1 month, anchor + 1 month)\n anchor = a.clone().add(wholeMonthDiff, 'months'),\n anchor2, adjust;\n\n if (b - anchor < 0) {\n anchor2 = a.clone().add(wholeMonthDiff - 1, 'months');\n // linear across the month\n adjust = (b - anchor) / (anchor - anchor2);\n } else {\n anchor2 = a.clone().add(wholeMonthDiff + 1, 'months');\n // linear across the month\n adjust = (b - anchor) / (anchor2 - anchor);\n }\n\n //check for negative zero, return zero if negative zero\n return -(wholeMonthDiff + adjust) || 0;\n}\n\nhooks.defaultFormat = 'YYYY-MM-DDTHH:mm:ssZ';\nhooks.defaultFormatUtc = 'YYYY-MM-DDTHH:mm:ss[Z]';\n\nfunction toString () {\n return this.clone().locale('en').format('ddd MMM DD YYYY HH:mm:ss [GMT]ZZ');\n}\n\nfunction toISOString() {\n if (!this.isValid()) {\n return null;\n }\n var m = this.clone().utc();\n if (m.year() < 0 || m.year() > 9999) {\n return formatMoment(m, 'YYYYYY-MM-DD[T]HH:mm:ss.SSS[Z]');\n }\n if (isFunction(Date.prototype.toISOString)) {\n // native implementation is ~50x faster, use it when we can\n return this.toDate().toISOString();\n }\n return formatMoment(m, 'YYYY-MM-DD[T]HH:mm:ss.SSS[Z]');\n}\n\n/**\n * Return a human readable representation of a moment that can\n * also be evaluated to get a new moment which is the same\n *\n * @link https://nodejs.org/dist/latest/docs/api/util.html#util_custom_inspect_function_on_objects\n */\nfunction inspect () {\n if (!this.isValid()) {\n return 'moment.invalid(/* ' + this._i + ' */)';\n }\n var func = 'moment';\n var zone = '';\n if (!this.isLocal()) {\n func = this.utcOffset() === 0 ? 'moment.utc' : 'moment.parseZone';\n zone = 'Z';\n }\n var prefix = '[' + func + '(\"]';\n var year = (0 <= this.year() && this.year() <= 9999) ? 'YYYY' : 'YYYYYY';\n var datetime = '-MM-DD[T]HH:mm:ss.SSS';\n var suffix = zone + '[\")]';\n\n return this.format(prefix + year + datetime + suffix);\n}\n\nfunction format (inputString) {\n if (!inputString) {\n inputString = this.isUtc() ? hooks.defaultFormatUtc : hooks.defaultFormat;\n }\n var output = formatMoment(this, inputString);\n return this.localeData().postformat(output);\n}\n\nfunction from (time, withoutSuffix) {\n if (this.isValid() &&\n ((isMoment(time) && time.isValid()) ||\n createLocal(time).isValid())) {\n return createDuration({to: this, from: time}).locale(this.locale()).humanize(!withoutSuffix);\n } else {\n return this.localeData().invalidDate();\n }\n}\n\nfunction fromNow (withoutSuffix) {\n return this.from(createLocal(), withoutSuffix);\n}\n\nfunction to (time, withoutSuffix) {\n if (this.isValid() &&\n ((isMoment(time) && time.isValid()) ||\n createLocal(time).isValid())) {\n return createDuration({from: this, to: time}).locale(this.locale()).humanize(!withoutSuffix);\n } else {\n return this.localeData().invalidDate();\n }\n}\n\nfunction toNow (withoutSuffix) {\n return this.to(createLocal(), withoutSuffix);\n}\n\n// If passed a locale key, it will set the locale for this\n// instance. Otherwise, it will return the locale configuration\n// variables for this instance.\nfunction locale (key) {\n var newLocaleData;\n\n if (key === undefined) {\n return this._locale._abbr;\n } else {\n newLocaleData = getLocale(key);\n if (newLocaleData != null) {\n this._locale = newLocaleData;\n }\n return this;\n }\n}\n\nvar lang = deprecate(\n 'moment().lang() is deprecated. Instead, use moment().localeData() to get the language configuration. Use moment().locale() to change languages.',\n function (key) {\n if (key === undefined) {\n return this.localeData();\n } else {\n return this.locale(key);\n }\n }\n);\n\nfunction localeData () {\n return this._locale;\n}\n\nfunction startOf (units) {\n units = normalizeUnits(units);\n // the following switch intentionally omits break keywords\n // to utilize falling through the cases.\n switch (units) {\n case 'year':\n this.month(0);\n /* falls through */\n case 'quarter':\n case 'month':\n this.date(1);\n /* falls through */\n case 'week':\n case 'isoWeek':\n case 'day':\n case 'date':\n this.hours(0);\n /* falls through */\n case 'hour':\n this.minutes(0);\n /* falls through */\n case 'minute':\n this.seconds(0);\n /* falls through */\n case 'second':\n this.milliseconds(0);\n }\n\n // weeks are a special case\n if (units === 'week') {\n this.weekday(0);\n }\n if (units === 'isoWeek') {\n this.isoWeekday(1);\n }\n\n // quarters are also special\n if (units === 'quarter') {\n this.month(Math.floor(this.month() / 3) * 3);\n }\n\n return this;\n}\n\nfunction endOf (units) {\n units = normalizeUnits(units);\n if (units === undefined || units === 'millisecond') {\n return this;\n }\n\n // 'date' is an alias for 'day', so it should be considered as such.\n if (units === 'date') {\n units = 'day';\n }\n\n return this.startOf(units).add(1, (units === 'isoWeek' ? 'week' : units)).subtract(1, 'ms');\n}\n\nfunction valueOf () {\n return this._d.valueOf() - ((this._offset || 0) * 60000);\n}\n\nfunction unix () {\n return Math.floor(this.valueOf() / 1000);\n}\n\nfunction toDate () {\n return new Date(this.valueOf());\n}\n\nfunction toArray () {\n var m = this;\n return [m.year(), m.month(), m.date(), m.hour(), m.minute(), m.second(), m.millisecond()];\n}\n\nfunction toObject () {\n var m = this;\n return {\n years: m.year(),\n months: m.month(),\n date: m.date(),\n hours: m.hours(),\n minutes: m.minutes(),\n seconds: m.seconds(),\n milliseconds: m.milliseconds()\n };\n}\n\nfunction toJSON () {\n // new Date(NaN).toJSON() === null\n return this.isValid() ? this.toISOString() : null;\n}\n\nfunction isValid$2 () {\n return isValid(this);\n}\n\nfunction parsingFlags () {\n return extend({}, getParsingFlags(this));\n}\n\nfunction invalidAt () {\n return getParsingFlags(this).overflow;\n}\n\nfunction creationData() {\n return {\n input: this._i,\n format: this._f,\n locale: this._locale,\n isUTC: this._isUTC,\n strict: this._strict\n };\n}\n\n// FORMATTING\n\naddFormatToken(0, ['gg', 2], 0, function () {\n return this.weekYear() % 100;\n});\n\naddFormatToken(0, ['GG', 2], 0, function () {\n return this.isoWeekYear() % 100;\n});\n\nfunction addWeekYearFormatToken (token, getter) {\n addFormatToken(0, [token, token.length], 0, getter);\n}\n\naddWeekYearFormatToken('gggg', 'weekYear');\naddWeekYearFormatToken('ggggg', 'weekYear');\naddWeekYearFormatToken('GGGG', 'isoWeekYear');\naddWeekYearFormatToken('GGGGG', 'isoWeekYear');\n\n// ALIASES\n\naddUnitAlias('weekYear', 'gg');\naddUnitAlias('isoWeekYear', 'GG');\n\n// PRIORITY\n\naddUnitPriority('weekYear', 1);\naddUnitPriority('isoWeekYear', 1);\n\n\n// PARSING\n\naddRegexToken('G', matchSigned);\naddRegexToken('g', matchSigned);\naddRegexToken('GG', match1to2, match2);\naddRegexToken('gg', match1to2, match2);\naddRegexToken('GGGG', match1to4, match4);\naddRegexToken('gggg', match1to4, match4);\naddRegexToken('GGGGG', match1to6, match6);\naddRegexToken('ggggg', match1to6, match6);\n\naddWeekParseToken(['gggg', 'ggggg', 'GGGG', 'GGGGG'], function (input, week, config, token) {\n week[token.substr(0, 2)] = toInt(input);\n});\n\naddWeekParseToken(['gg', 'GG'], function (input, week, config, token) {\n week[token] = hooks.parseTwoDigitYear(input);\n});\n\n// MOMENTS\n\nfunction getSetWeekYear (input) {\n return getSetWeekYearHelper.call(this,\n input,\n this.week(),\n this.weekday(),\n this.localeData()._week.dow,\n this.localeData()._week.doy);\n}\n\nfunction getSetISOWeekYear (input) {\n return getSetWeekYearHelper.call(this,\n input, this.isoWeek(), this.isoWeekday(), 1, 4);\n}\n\nfunction getISOWeeksInYear () {\n return weeksInYear(this.year(), 1, 4);\n}\n\nfunction getWeeksInYear () {\n var weekInfo = this.localeData()._week;\n return weeksInYear(this.year(), weekInfo.dow, weekInfo.doy);\n}\n\nfunction getSetWeekYearHelper(input, week, weekday, dow, doy) {\n var weeksTarget;\n if (input == null) {\n return weekOfYear(this, dow, doy).year;\n } else {\n weeksTarget = weeksInYear(input, dow, doy);\n if (week > weeksTarget) {\n week = weeksTarget;\n }\n return setWeekAll.call(this, input, week, weekday, dow, doy);\n }\n}\n\nfunction setWeekAll(weekYear, week, weekday, dow, doy) {\n var dayOfYearData = dayOfYearFromWeeks(weekYear, week, weekday, dow, doy),\n date = createUTCDate(dayOfYearData.year, 0, dayOfYearData.dayOfYear);\n\n this.year(date.getUTCFullYear());\n this.month(date.getUTCMonth());\n this.date(date.getUTCDate());\n return this;\n}\n\n// FORMATTING\n\naddFormatToken('Q', 0, 'Qo', 'quarter');\n\n// ALIASES\n\naddUnitAlias('quarter', 'Q');\n\n// PRIORITY\n\naddUnitPriority('quarter', 7);\n\n// PARSING\n\naddRegexToken('Q', match1);\naddParseToken('Q', function (input, array) {\n array[MONTH] = (toInt(input) - 1) * 3;\n});\n\n// MOMENTS\n\nfunction getSetQuarter (input) {\n return input == null ? Math.ceil((this.month() + 1) / 3) : this.month((input - 1) * 3 + this.month() % 3);\n}\n\n// FORMATTING\n\naddFormatToken('D', ['DD', 2], 'Do', 'date');\n\n// ALIASES\n\naddUnitAlias('date', 'D');\n\n// PRIOROITY\naddUnitPriority('date', 9);\n\n// PARSING\n\naddRegexToken('D', match1to2);\naddRegexToken('DD', match1to2, match2);\naddRegexToken('Do', function (isStrict, locale) {\n // TODO: Remove \"ordinalParse\" fallback in next major release.\n return isStrict ?\n (locale._dayOfMonthOrdinalParse || locale._ordinalParse) :\n locale._dayOfMonthOrdinalParseLenient;\n});\n\naddParseToken(['D', 'DD'], DATE);\naddParseToken('Do', function (input, array) {\n array[DATE] = toInt(input.match(match1to2)[0], 10);\n});\n\n// MOMENTS\n\nvar getSetDayOfMonth = makeGetSet('Date', true);\n\n// FORMATTING\n\naddFormatToken('DDD', ['DDDD', 3], 'DDDo', 'dayOfYear');\n\n// ALIASES\n\naddUnitAlias('dayOfYear', 'DDD');\n\n// PRIORITY\naddUnitPriority('dayOfYear', 4);\n\n// PARSING\n\naddRegexToken('DDD', match1to3);\naddRegexToken('DDDD', match3);\naddParseToken(['DDD', 'DDDD'], function (input, array, config) {\n config._dayOfYear = toInt(input);\n});\n\n// HELPERS\n\n// MOMENTS\n\nfunction getSetDayOfYear (input) {\n var dayOfYear = Math.round((this.clone().startOf('day') - this.clone().startOf('year')) / 864e5) + 1;\n return input == null ? dayOfYear : this.add((input - dayOfYear), 'd');\n}\n\n// FORMATTING\n\naddFormatToken('m', ['mm', 2], 0, 'minute');\n\n// ALIASES\n\naddUnitAlias('minute', 'm');\n\n// PRIORITY\n\naddUnitPriority('minute', 14);\n\n// PARSING\n\naddRegexToken('m', match1to2);\naddRegexToken('mm', match1to2, match2);\naddParseToken(['m', 'mm'], MINUTE);\n\n// MOMENTS\n\nvar getSetMinute = makeGetSet('Minutes', false);\n\n// FORMATTING\n\naddFormatToken('s', ['ss', 2], 0, 'second');\n\n// ALIASES\n\naddUnitAlias('second', 's');\n\n// PRIORITY\n\naddUnitPriority('second', 15);\n\n// PARSING\n\naddRegexToken('s', match1to2);\naddRegexToken('ss', match1to2, match2);\naddParseToken(['s', 'ss'], SECOND);\n\n// MOMENTS\n\nvar getSetSecond = makeGetSet('Seconds', false);\n\n// FORMATTING\n\naddFormatToken('S', 0, 0, function () {\n return ~~(this.millisecond() / 100);\n});\n\naddFormatToken(0, ['SS', 2], 0, function () {\n return ~~(this.millisecond() / 10);\n});\n\naddFormatToken(0, ['SSS', 3], 0, 'millisecond');\naddFormatToken(0, ['SSSS', 4], 0, function () {\n return this.millisecond() * 10;\n});\naddFormatToken(0, ['SSSSS', 5], 0, function () {\n return this.millisecond() * 100;\n});\naddFormatToken(0, ['SSSSSS', 6], 0, function () {\n return this.millisecond() * 1000;\n});\naddFormatToken(0, ['SSSSSSS', 7], 0, function () {\n return this.millisecond() * 10000;\n});\naddFormatToken(0, ['SSSSSSSS', 8], 0, function () {\n return this.millisecond() * 100000;\n});\naddFormatToken(0, ['SSSSSSSSS', 9], 0, function () {\n return this.millisecond() * 1000000;\n});\n\n\n// ALIASES\n\naddUnitAlias('millisecond', 'ms');\n\n// PRIORITY\n\naddUnitPriority('millisecond', 16);\n\n// PARSING\n\naddRegexToken('S', match1to3, match1);\naddRegexToken('SS', match1to3, match2);\naddRegexToken('SSS', match1to3, match3);\n\nvar token;\nfor (token = 'SSSS'; token.length <= 9; token += 'S') {\n addRegexToken(token, matchUnsigned);\n}\n\nfunction parseMs(input, array) {\n array[MILLISECOND] = toInt(('0.' + input) * 1000);\n}\n\nfor (token = 'S'; token.length <= 9; token += 'S') {\n addParseToken(token, parseMs);\n}\n// MOMENTS\n\nvar getSetMillisecond = makeGetSet('Milliseconds', false);\n\n// FORMATTING\n\naddFormatToken('z', 0, 0, 'zoneAbbr');\naddFormatToken('zz', 0, 0, 'zoneName');\n\n// MOMENTS\n\nfunction getZoneAbbr () {\n return this._isUTC ? 'UTC' : '';\n}\n\nfunction getZoneName () {\n return this._isUTC ? 'Coordinated Universal Time' : '';\n}\n\nvar proto = Moment.prototype;\n\nproto.add = add;\nproto.calendar = calendar$1;\nproto.clone = clone;\nproto.diff = diff;\nproto.endOf = endOf;\nproto.format = format;\nproto.from = from;\nproto.fromNow = fromNow;\nproto.to = to;\nproto.toNow = toNow;\nproto.get = stringGet;\nproto.invalidAt = invalidAt;\nproto.isAfter = isAfter;\nproto.isBefore = isBefore;\nproto.isBetween = isBetween;\nproto.isSame = isSame;\nproto.isSameOrAfter = isSameOrAfter;\nproto.isSameOrBefore = isSameOrBefore;\nproto.isValid = isValid$2;\nproto.lang = lang;\nproto.locale = locale;\nproto.localeData = localeData;\nproto.max = prototypeMax;\nproto.min = prototypeMin;\nproto.parsingFlags = parsingFlags;\nproto.set = stringSet;\nproto.startOf = startOf;\nproto.subtract = subtract;\nproto.toArray = toArray;\nproto.toObject = toObject;\nproto.toDate = toDate;\nproto.toISOString = toISOString;\nproto.inspect = inspect;\nproto.toJSON = toJSON;\nproto.toString = toString;\nproto.unix = unix;\nproto.valueOf = valueOf;\nproto.creationData = creationData;\n\n// Year\nproto.year = getSetYear;\nproto.isLeapYear = getIsLeapYear;\n\n// Week Year\nproto.weekYear = getSetWeekYear;\nproto.isoWeekYear = getSetISOWeekYear;\n\n// Quarter\nproto.quarter = proto.quarters = getSetQuarter;\n\n// Month\nproto.month = getSetMonth;\nproto.daysInMonth = getDaysInMonth;\n\n// Week\nproto.week = proto.weeks = getSetWeek;\nproto.isoWeek = proto.isoWeeks = getSetISOWeek;\nproto.weeksInYear = getWeeksInYear;\nproto.isoWeeksInYear = getISOWeeksInYear;\n\n// Day\nproto.date = getSetDayOfMonth;\nproto.day = proto.days = getSetDayOfWeek;\nproto.weekday = getSetLocaleDayOfWeek;\nproto.isoWeekday = getSetISODayOfWeek;\nproto.dayOfYear = getSetDayOfYear;\n\n// Hour\nproto.hour = proto.hours = getSetHour;\n\n// Minute\nproto.minute = proto.minutes = getSetMinute;\n\n// Second\nproto.second = proto.seconds = getSetSecond;\n\n// Millisecond\nproto.millisecond = proto.milliseconds = getSetMillisecond;\n\n// Offset\nproto.utcOffset = getSetOffset;\nproto.utc = setOffsetToUTC;\nproto.local = setOffsetToLocal;\nproto.parseZone = setOffsetToParsedOffset;\nproto.hasAlignedHourOffset = hasAlignedHourOffset;\nproto.isDST = isDaylightSavingTime;\nproto.isLocal = isLocal;\nproto.isUtcOffset = isUtcOffset;\nproto.isUtc = isUtc;\nproto.isUTC = isUtc;\n\n// Timezone\nproto.zoneAbbr = getZoneAbbr;\nproto.zoneName = getZoneName;\n\n// Deprecations\nproto.dates = deprecate('dates accessor is deprecated. Use date instead.', getSetDayOfMonth);\nproto.months = deprecate('months accessor is deprecated. Use month instead', getSetMonth);\nproto.years = deprecate('years accessor is deprecated. Use year instead', getSetYear);\nproto.zone = deprecate('moment().zone is deprecated, use moment().utcOffset instead. http://momentjs.com/guides/#/warnings/zone/', getSetZone);\nproto.isDSTShifted = deprecate('isDSTShifted is deprecated. See http://momentjs.com/guides/#/warnings/dst-shifted/ for more information', isDaylightSavingTimeShifted);\n\nfunction createUnix (input) {\n return createLocal(input * 1000);\n}\n\nfunction createInZone () {\n return createLocal.apply(null, arguments).parseZone();\n}\n\nfunction preParsePostFormat (string) {\n return string;\n}\n\nvar proto$1 = Locale.prototype;\n\nproto$1.calendar = calendar;\nproto$1.longDateFormat = longDateFormat;\nproto$1.invalidDate = invalidDate;\nproto$1.ordinal = ordinal;\nproto$1.preparse = preParsePostFormat;\nproto$1.postformat = preParsePostFormat;\nproto$1.relativeTime = relativeTime;\nproto$1.pastFuture = pastFuture;\nproto$1.set = set;\n\n// Month\nproto$1.months = localeMonths;\nproto$1.monthsShort = localeMonthsShort;\nproto$1.monthsParse = localeMonthsParse;\nproto$1.monthsRegex = monthsRegex;\nproto$1.monthsShortRegex = monthsShortRegex;\n\n// Week\nproto$1.week = localeWeek;\nproto$1.firstDayOfYear = localeFirstDayOfYear;\nproto$1.firstDayOfWeek = localeFirstDayOfWeek;\n\n// Day of Week\nproto$1.weekdays = localeWeekdays;\nproto$1.weekdaysMin = localeWeekdaysMin;\nproto$1.weekdaysShort = localeWeekdaysShort;\nproto$1.weekdaysParse = localeWeekdaysParse;\n\nproto$1.weekdaysRegex = weekdaysRegex;\nproto$1.weekdaysShortRegex = weekdaysShortRegex;\nproto$1.weekdaysMinRegex = weekdaysMinRegex;\n\n// Hours\nproto$1.isPM = localeIsPM;\nproto$1.meridiem = localeMeridiem;\n\nfunction get$1 (format, index, field, setter) {\n var locale = getLocale();\n var utc = createUTC().set(setter, index);\n return locale[field](utc, format);\n}\n\nfunction listMonthsImpl (format, index, field) {\n if (isNumber(format)) {\n index = format;\n format = undefined;\n }\n\n format = format || '';\n\n if (index != null) {\n return get$1(format, index, field, 'month');\n }\n\n var i;\n var out = [];\n for (i = 0; i < 12; i++) {\n out[i] = get$1(format, i, field, 'month');\n }\n return out;\n}\n\n// ()\n// (5)\n// (fmt, 5)\n// (fmt)\n// (true)\n// (true, 5)\n// (true, fmt, 5)\n// (true, fmt)\nfunction listWeekdaysImpl (localeSorted, format, index, field) {\n if (typeof localeSorted === 'boolean') {\n if (isNumber(format)) {\n index = format;\n format = undefined;\n }\n\n format = format || '';\n } else {\n format = localeSorted;\n index = format;\n localeSorted = false;\n\n if (isNumber(format)) {\n index = format;\n format = undefined;\n }\n\n format = format || '';\n }\n\n var locale = getLocale(),\n shift = localeSorted ? locale._week.dow : 0;\n\n if (index != null) {\n return get$1(format, (index + shift) % 7, field, 'day');\n }\n\n var i;\n var out = [];\n for (i = 0; i < 7; i++) {\n out[i] = get$1(format, (i + shift) % 7, field, 'day');\n }\n return out;\n}\n\nfunction listMonths (format, index) {\n return listMonthsImpl(format, index, 'months');\n}\n\nfunction listMonthsShort (format, index) {\n return listMonthsImpl(format, index, 'monthsShort');\n}\n\nfunction listWeekdays (localeSorted, format, index) {\n return listWeekdaysImpl(localeSorted, format, index, 'weekdays');\n}\n\nfunction listWeekdaysShort (localeSorted, format, index) {\n return listWeekdaysImpl(localeSorted, format, index, 'weekdaysShort');\n}\n\nfunction listWeekdaysMin (localeSorted, format, index) {\n return listWeekdaysImpl(localeSorted, format, index, 'weekdaysMin');\n}\n\ngetSetGlobalLocale('en', {\n dayOfMonthOrdinalParse: /\\d{1,2}(th|st|nd|rd)/,\n ordinal : function (number) {\n var b = number % 10,\n output = (toInt(number % 100 / 10) === 1) ? 'th' :\n (b === 1) ? 'st' :\n (b === 2) ? 'nd' :\n (b === 3) ? 'rd' : 'th';\n return number + output;\n }\n});\n\n// Side effect imports\nhooks.lang = deprecate('moment.lang is deprecated. Use moment.locale instead.', getSetGlobalLocale);\nhooks.langData = deprecate('moment.langData is deprecated. Use moment.localeData instead.', getLocale);\n\nvar mathAbs = Math.abs;\n\nfunction abs () {\n var data = this._data;\n\n this._milliseconds = mathAbs(this._milliseconds);\n this._days = mathAbs(this._days);\n this._months = mathAbs(this._months);\n\n data.milliseconds = mathAbs(data.milliseconds);\n data.seconds = mathAbs(data.seconds);\n data.minutes = mathAbs(data.minutes);\n data.hours = mathAbs(data.hours);\n data.months = mathAbs(data.months);\n data.years = mathAbs(data.years);\n\n return this;\n}\n\nfunction addSubtract$1 (duration, input, value, direction) {\n var other = createDuration(input, value);\n\n duration._milliseconds += direction * other._milliseconds;\n duration._days += direction * other._days;\n duration._months += direction * other._months;\n\n return duration._bubble();\n}\n\n// supports only 2.0-style add(1, 's') or add(duration)\nfunction add$1 (input, value) {\n return addSubtract$1(this, input, value, 1);\n}\n\n// supports only 2.0-style subtract(1, 's') or subtract(duration)\nfunction subtract$1 (input, value) {\n return addSubtract$1(this, input, value, -1);\n}\n\nfunction absCeil (number) {\n if (number < 0) {\n return Math.floor(number);\n } else {\n return Math.ceil(number);\n }\n}\n\nfunction bubble () {\n var milliseconds = this._milliseconds;\n var days = this._days;\n var months = this._months;\n var data = this._data;\n var seconds, minutes, hours, years, monthsFromDays;\n\n // if we have a mix of positive and negative values, bubble down first\n // check: https://github.com/moment/moment/issues/2166\n if (!((milliseconds >= 0 && days >= 0 && months >= 0) ||\n (milliseconds <= 0 && days <= 0 && months <= 0))) {\n milliseconds += absCeil(monthsToDays(months) + days) * 864e5;\n days = 0;\n months = 0;\n }\n\n // The following code bubbles up values, see the tests for\n // examples of what that means.\n data.milliseconds = milliseconds % 1000;\n\n seconds = absFloor(milliseconds / 1000);\n data.seconds = seconds % 60;\n\n minutes = absFloor(seconds / 60);\n data.minutes = minutes % 60;\n\n hours = absFloor(minutes / 60);\n data.hours = hours % 24;\n\n days += absFloor(hours / 24);\n\n // convert days to months\n monthsFromDays = absFloor(daysToMonths(days));\n months += monthsFromDays;\n days -= absCeil(monthsToDays(monthsFromDays));\n\n // 12 months -> 1 year\n years = absFloor(months / 12);\n months %= 12;\n\n data.days = days;\n data.months = months;\n data.years = years;\n\n return this;\n}\n\nfunction daysToMonths (days) {\n // 400 years have 146097 days (taking into account leap year rules)\n // 400 years have 12 months === 4800\n return days * 4800 / 146097;\n}\n\nfunction monthsToDays (months) {\n // the reverse of daysToMonths\n return months * 146097 / 4800;\n}\n\nfunction as (units) {\n if (!this.isValid()) {\n return NaN;\n }\n var days;\n var months;\n var milliseconds = this._milliseconds;\n\n units = normalizeUnits(units);\n\n if (units === 'month' || units === 'year') {\n days = this._days + milliseconds / 864e5;\n months = this._months + daysToMonths(days);\n return units === 'month' ? months : months / 12;\n } else {\n // handle milliseconds separately because of floating point math errors (issue #1867)\n days = this._days + Math.round(monthsToDays(this._months));\n switch (units) {\n case 'week' : return days / 7 + milliseconds / 6048e5;\n case 'day' : return days + milliseconds / 864e5;\n case 'hour' : return days * 24 + milliseconds / 36e5;\n case 'minute' : return days * 1440 + milliseconds / 6e4;\n case 'second' : return days * 86400 + milliseconds / 1000;\n // Math.floor prevents floating point math errors here\n case 'millisecond': return Math.floor(days * 864e5) + milliseconds;\n default: throw new Error('Unknown unit ' + units);\n }\n }\n}\n\n// TODO: Use this.as('ms')?\nfunction valueOf$1 () {\n if (!this.isValid()) {\n return NaN;\n }\n return (\n this._milliseconds +\n this._days * 864e5 +\n (this._months % 12) * 2592e6 +\n toInt(this._months / 12) * 31536e6\n );\n}\n\nfunction makeAs (alias) {\n return function () {\n return this.as(alias);\n };\n}\n\nvar asMilliseconds = makeAs('ms');\nvar asSeconds = makeAs('s');\nvar asMinutes = makeAs('m');\nvar asHours = makeAs('h');\nvar asDays = makeAs('d');\nvar asWeeks = makeAs('w');\nvar asMonths = makeAs('M');\nvar asYears = makeAs('y');\n\nfunction get$2 (units) {\n units = normalizeUnits(units);\n return this.isValid() ? this[units + 's']() : NaN;\n}\n\nfunction makeGetter(name) {\n return function () {\n return this.isValid() ? this._data[name] : NaN;\n };\n}\n\nvar milliseconds = makeGetter('milliseconds');\nvar seconds = makeGetter('seconds');\nvar minutes = makeGetter('minutes');\nvar hours = makeGetter('hours');\nvar days = makeGetter('days');\nvar months = makeGetter('months');\nvar years = makeGetter('years');\n\nfunction weeks () {\n return absFloor(this.days() / 7);\n}\n\nvar round = Math.round;\nvar thresholds = {\n ss: 44, // a few seconds to seconds\n s : 45, // seconds to minute\n m : 45, // minutes to hour\n h : 22, // hours to day\n d : 26, // days to month\n M : 11 // months to year\n};\n\n// helper function for moment.fn.from, moment.fn.fromNow, and moment.duration.fn.humanize\nfunction substituteTimeAgo(string, number, withoutSuffix, isFuture, locale) {\n return locale.relativeTime(number || 1, !!withoutSuffix, string, isFuture);\n}\n\nfunction relativeTime$1 (posNegDuration, withoutSuffix, locale) {\n var duration = createDuration(posNegDuration).abs();\n var seconds = round(duration.as('s'));\n var minutes = round(duration.as('m'));\n var hours = round(duration.as('h'));\n var days = round(duration.as('d'));\n var months = round(duration.as('M'));\n var years = round(duration.as('y'));\n\n var a = seconds <= thresholds.ss && ['s', seconds] ||\n seconds < thresholds.s && ['ss', seconds] ||\n minutes <= 1 && ['m'] ||\n minutes < thresholds.m && ['mm', minutes] ||\n hours <= 1 && ['h'] ||\n hours < thresholds.h && ['hh', hours] ||\n days <= 1 && ['d'] ||\n days < thresholds.d && ['dd', days] ||\n months <= 1 && ['M'] ||\n months < thresholds.M && ['MM', months] ||\n years <= 1 && ['y'] || ['yy', years];\n\n a[2] = withoutSuffix;\n a[3] = +posNegDuration > 0;\n a[4] = locale;\n return substituteTimeAgo.apply(null, a);\n}\n\n// This function allows you to set the rounding function for relative time strings\nfunction getSetRelativeTimeRounding (roundingFunction) {\n if (roundingFunction === undefined) {\n return round;\n }\n if (typeof(roundingFunction) === 'function') {\n round = roundingFunction;\n return true;\n }\n return false;\n}\n\n// This function allows you to set a threshold for relative time strings\nfunction getSetRelativeTimeThreshold (threshold, limit) {\n if (thresholds[threshold] === undefined) {\n return false;\n }\n if (limit === undefined) {\n return thresholds[threshold];\n }\n thresholds[threshold] = limit;\n if (threshold === 's') {\n thresholds.ss = limit - 1;\n }\n return true;\n}\n\nfunction humanize (withSuffix) {\n if (!this.isValid()) {\n return this.localeData().invalidDate();\n }\n\n var locale = this.localeData();\n var output = relativeTime$1(this, !withSuffix, locale);\n\n if (withSuffix) {\n output = locale.pastFuture(+this, output);\n }\n\n return locale.postformat(output);\n}\n\nvar abs$1 = Math.abs;\n\nfunction toISOString$1() {\n // for ISO strings we do not use the normal bubbling rules:\n // * milliseconds bubble up until they become hours\n // * days do not bubble at all\n // * months bubble up until they become years\n // This is because there is no context-free conversion between hours and days\n // (think of clock changes)\n // and also not between days and months (28-31 days per month)\n if (!this.isValid()) {\n return this.localeData().invalidDate();\n }\n\n var seconds = abs$1(this._milliseconds) / 1000;\n var days = abs$1(this._days);\n var months = abs$1(this._months);\n var minutes, hours, years;\n\n // 3600 seconds -> 60 minutes -> 1 hour\n minutes = absFloor(seconds / 60);\n hours = absFloor(minutes / 60);\n seconds %= 60;\n minutes %= 60;\n\n // 12 months -> 1 year\n years = absFloor(months / 12);\n months %= 12;\n\n\n // inspired by https://github.com/dordille/moment-isoduration/blob/master/moment.isoduration.js\n var Y = years;\n var M = months;\n var D = days;\n var h = hours;\n var m = minutes;\n var s = seconds;\n var total = this.asSeconds();\n\n if (!total) {\n // this is the same as C#'s (Noda) and python (isodate)...\n // but not other JS (goog.date)\n return 'P0D';\n }\n\n return (total < 0 ? '-' : '') +\n 'P' +\n (Y ? Y + 'Y' : '') +\n (M ? M + 'M' : '') +\n (D ? D + 'D' : '') +\n ((h || m || s) ? 'T' : '') +\n (h ? h + 'H' : '') +\n (m ? m + 'M' : '') +\n (s ? s + 'S' : '');\n}\n\nvar proto$2 = Duration.prototype;\n\nproto$2.isValid = isValid$1;\nproto$2.abs = abs;\nproto$2.add = add$1;\nproto$2.subtract = subtract$1;\nproto$2.as = as;\nproto$2.asMilliseconds = asMilliseconds;\nproto$2.asSeconds = asSeconds;\nproto$2.asMinutes = asMinutes;\nproto$2.asHours = asHours;\nproto$2.asDays = asDays;\nproto$2.asWeeks = asWeeks;\nproto$2.asMonths = asMonths;\nproto$2.asYears = asYears;\nproto$2.valueOf = valueOf$1;\nproto$2._bubble = bubble;\nproto$2.get = get$2;\nproto$2.milliseconds = milliseconds;\nproto$2.seconds = seconds;\nproto$2.minutes = minutes;\nproto$2.hours = hours;\nproto$2.days = days;\nproto$2.weeks = weeks;\nproto$2.months = months;\nproto$2.years = years;\nproto$2.humanize = humanize;\nproto$2.toISOString = toISOString$1;\nproto$2.toString = toISOString$1;\nproto$2.toJSON = toISOString$1;\nproto$2.locale = locale;\nproto$2.localeData = localeData;\n\n// Deprecations\nproto$2.toIsoString = deprecate('toIsoString() is deprecated. Please use toISOString() instead (notice the capitals)', toISOString$1);\nproto$2.lang = lang;\n\n// Side effect imports\n\n// FORMATTING\n\naddFormatToken('X', 0, 0, 'unix');\naddFormatToken('x', 0, 0, 'valueOf');\n\n// PARSING\n\naddRegexToken('x', matchSigned);\naddRegexToken('X', matchTimestamp);\naddParseToken('X', function (input, array, config) {\n config._d = new Date(parseFloat(input, 10) * 1000);\n});\naddParseToken('x', function (input, array, config) {\n config._d = new Date(toInt(input));\n});\n\n// Side effect imports\n\n\nhooks.version = '2.18.1';\n\nsetHookCallback(createLocal);\n\nhooks.fn = proto;\nhooks.min = min;\nhooks.max = max;\nhooks.now = now;\nhooks.utc = createUTC;\nhooks.unix = createUnix;\nhooks.months = listMonths;\nhooks.isDate = isDate;\nhooks.locale = getSetGlobalLocale;\nhooks.invalid = createInvalid;\nhooks.duration = createDuration;\nhooks.isMoment = isMoment;\nhooks.weekdays = listWeekdays;\nhooks.parseZone = createInZone;\nhooks.localeData = getLocale;\nhooks.isDuration = isDuration;\nhooks.monthsShort = listMonthsShort;\nhooks.weekdaysMin = listWeekdaysMin;\nhooks.defineLocale = defineLocale;\nhooks.updateLocale = updateLocale;\nhooks.locales = listLocales;\nhooks.weekdaysShort = listWeekdaysShort;\nhooks.normalizeUnits = normalizeUnits;\nhooks.relativeTimeRounding = getSetRelativeTimeRounding;\nhooks.relativeTimeThreshold = getSetRelativeTimeThreshold;\nhooks.calendarFormat = getCalendarFormat;\nhooks.prototype = proto;\n\nreturn hooks;\n\n})));\n\n/* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(134)(module)))\n\n/***/ }),\n/* 1 */\n/***/ (function(module, exports) {\n\nmodule.exports = function normalizeComponent (\n rawScriptExports,\n compiledTemplate,\n scopeId,\n cssModules\n) {\n var esModule\n var scriptExports = rawScriptExports = rawScriptExports || {}\n\n // ES6 modules interop\n var type = typeof rawScriptExports.default\n if (type === 'object' || type === 'function') {\n esModule = rawScriptExports\n scriptExports = rawScriptExports.default\n }\n\n // Vue.extend constructor export interop\n var options = typeof scriptExports === 'function'\n ? scriptExports.options\n : scriptExports\n\n // render functions\n if (compiledTemplate) {\n options.render = compiledTemplate.render\n options.staticRenderFns = compiledTemplate.staticRenderFns\n }\n\n // scopedId\n if (scopeId) {\n options._scopeId = scopeId\n }\n\n // inject cssModules\n if (cssModules) {\n var computed = options.computed || (options.computed = {})\n Object.keys(cssModules).forEach(function (key) {\n var module = cssModules[key]\n computed[key] = function () { return module }\n })\n }\n\n return {\n esModule: esModule,\n exports: scriptExports,\n options: options\n }\n}\n\n\n/***/ }),\n/* 2 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n/* WEBPACK VAR INJECTION */(function(global) {/*!\n * Vue.js v2.2.5\n * (c) 2014-2017 Evan You\n * Released under the MIT License.\n */\n\n\n/* */\n\n/**\n * Convert a value to a string that is actually rendered.\n */\nfunction _toString (val) {\n return val == null\n ? ''\n : typeof val === 'object'\n ? JSON.stringify(val, null, 2)\n : String(val)\n}\n\n/**\n * Convert a input value to a number for persistence.\n * If the conversion fails, return original string.\n */\nfunction toNumber (val) {\n var n = parseFloat(val);\n return isNaN(n) ? val : n\n}\n\n/**\n * Make a map and return a function for checking if a key\n * is in that map.\n */\nfunction makeMap (\n str,\n expectsLowerCase\n) {\n var map = Object.create(null);\n var list = str.split(',');\n for (var i = 0; i < list.length; i++) {\n map[list[i]] = true;\n }\n return expectsLowerCase\n ? function (val) { return map[val.toLowerCase()]; }\n : function (val) { return map[val]; }\n}\n\n/**\n * Check if a tag is a built-in tag.\n */\nvar isBuiltInTag = makeMap('slot,component', true);\n\n/**\n * Remove an item from an array\n */\nfunction remove (arr, item) {\n if (arr.length) {\n var index = arr.indexOf(item);\n if (index > -1) {\n return arr.splice(index, 1)\n }\n }\n}\n\n/**\n * Check whether the object has the property.\n */\nvar hasOwnProperty = Object.prototype.hasOwnProperty;\nfunction hasOwn (obj, key) {\n return hasOwnProperty.call(obj, key)\n}\n\n/**\n * Check if value is primitive\n */\nfunction isPrimitive (value) {\n return typeof value === 'string' || typeof value === 'number'\n}\n\n/**\n * Create a cached version of a pure function.\n */\nfunction cached (fn) {\n var cache = Object.create(null);\n return (function cachedFn (str) {\n var hit = cache[str];\n return hit || (cache[str] = fn(str))\n })\n}\n\n/**\n * Camelize a hyphen-delimited string.\n */\nvar camelizeRE = /-(\\w)/g;\nvar camelize = cached(function (str) {\n return str.replace(camelizeRE, function (_, c) { return c ? c.toUpperCase() : ''; })\n});\n\n/**\n * Capitalize a string.\n */\nvar capitalize = cached(function (str) {\n return str.charAt(0).toUpperCase() + str.slice(1)\n});\n\n/**\n * Hyphenate a camelCase string.\n */\nvar hyphenateRE = /([^-])([A-Z])/g;\nvar hyphenate = cached(function (str) {\n return str\n .replace(hyphenateRE, '$1-$2')\n .replace(hyphenateRE, '$1-$2')\n .toLowerCase()\n});\n\n/**\n * Simple bind, faster than native\n */\nfunction bind (fn, ctx) {\n function boundFn (a) {\n var l = arguments.length;\n return l\n ? l > 1\n ? fn.apply(ctx, arguments)\n : fn.call(ctx, a)\n : fn.call(ctx)\n }\n // record original fn length\n boundFn._length = fn.length;\n return boundFn\n}\n\n/**\n * Convert an Array-like object to a real Array.\n */\nfunction toArray (list, start) {\n start = start || 0;\n var i = list.length - start;\n var ret = new Array(i);\n while (i--) {\n ret[i] = list[i + start];\n }\n return ret\n}\n\n/**\n * Mix properties into target object.\n */\nfunction extend (to, _from) {\n for (var key in _from) {\n to[key] = _from[key];\n }\n return to\n}\n\n/**\n * Quick object check - this is primarily used to tell\n * Objects from primitive values when we know the value\n * is a JSON-compliant type.\n */\nfunction isObject (obj) {\n return obj !== null && typeof obj === 'object'\n}\n\n/**\n * Strict object type check. Only returns true\n * for plain JavaScript objects.\n */\nvar toString = Object.prototype.toString;\nvar OBJECT_STRING = '[object Object]';\nfunction isPlainObject (obj) {\n return toString.call(obj) === OBJECT_STRING\n}\n\n/**\n * Merge an Array of Objects into a single Object.\n */\nfunction toObject (arr) {\n var res = {};\n for (var i = 0; i < arr.length; i++) {\n if (arr[i]) {\n extend(res, arr[i]);\n }\n }\n return res\n}\n\n/**\n * Perform no operation.\n */\nfunction noop () {}\n\n/**\n * Always return false.\n */\nvar no = function () { return false; };\n\n/**\n * Return same value\n */\nvar identity = function (_) { return _; };\n\n/**\n * Generate a static keys string from compiler modules.\n */\nfunction genStaticKeys (modules) {\n return modules.reduce(function (keys, m) {\n return keys.concat(m.staticKeys || [])\n }, []).join(',')\n}\n\n/**\n * Check if two values are loosely equal - that is,\n * if they are plain objects, do they have the same shape?\n */\nfunction looseEqual (a, b) {\n var isObjectA = isObject(a);\n var isObjectB = isObject(b);\n if (isObjectA && isObjectB) {\n try {\n return JSON.stringify(a) === JSON.stringify(b)\n } catch (e) {\n // possible circular reference\n return a === b\n }\n } else if (!isObjectA && !isObjectB) {\n return String(a) === String(b)\n } else {\n return false\n }\n}\n\nfunction looseIndexOf (arr, val) {\n for (var i = 0; i < arr.length; i++) {\n if (looseEqual(arr[i], val)) { return i }\n }\n return -1\n}\n\n/**\n * Ensure a function is called only once.\n */\nfunction once (fn) {\n var called = false;\n return function () {\n if (!called) {\n called = true;\n fn();\n }\n }\n}\n\n/* */\n\nvar config = {\n /**\n * Option merge strategies (used in core/util/options)\n */\n optionMergeStrategies: Object.create(null),\n\n /**\n * Whether to suppress warnings.\n */\n silent: false,\n\n /**\n * Show production mode tip message on boot?\n */\n productionTip: \"production\" !== 'production',\n\n /**\n * Whether to enable devtools\n */\n devtools: \"production\" !== 'production',\n\n /**\n * Whether to record perf\n */\n performance: false,\n\n /**\n * Error handler for watcher errors\n */\n errorHandler: null,\n\n /**\n * Ignore certain custom elements\n */\n ignoredElements: [],\n\n /**\n * Custom user key aliases for v-on\n */\n keyCodes: Object.create(null),\n\n /**\n * Check if a tag is reserved so that it cannot be registered as a\n * component. This is platform-dependent and may be overwritten.\n */\n isReservedTag: no,\n\n /**\n * Check if a tag is an unknown element.\n * Platform-dependent.\n */\n isUnknownElement: no,\n\n /**\n * Get the namespace of an element\n */\n getTagNamespace: noop,\n\n /**\n * Parse the real tag name for the specific platform.\n */\n parsePlatformTagName: identity,\n\n /**\n * Check if an attribute must be bound using property, e.g. value\n * Platform-dependent.\n */\n mustUseProp: no,\n\n /**\n * List of asset types that a component can own.\n */\n _assetTypes: [\n 'component',\n 'directive',\n 'filter'\n ],\n\n /**\n * List of lifecycle hooks.\n */\n _lifecycleHooks: [\n 'beforeCreate',\n 'created',\n 'beforeMount',\n 'mounted',\n 'beforeUpdate',\n 'updated',\n 'beforeDestroy',\n 'destroyed',\n 'activated',\n 'deactivated'\n ],\n\n /**\n * Max circular updates allowed in a scheduler flush cycle.\n */\n _maxUpdateCount: 100\n};\n\n/* */\n\nvar emptyObject = Object.freeze({});\n\n/**\n * Check if a string starts with $ or _\n */\nfunction isReserved (str) {\n var c = (str + '').charCodeAt(0);\n return c === 0x24 || c === 0x5F\n}\n\n/**\n * Define a property.\n */\nfunction def (obj, key, val, enumerable) {\n Object.defineProperty(obj, key, {\n value: val,\n enumerable: !!enumerable,\n writable: true,\n configurable: true\n });\n}\n\n/**\n * Parse simple path.\n */\nvar bailRE = /[^\\w.$]/;\nfunction parsePath (path) {\n if (bailRE.test(path)) {\n return\n }\n var segments = path.split('.');\n return function (obj) {\n for (var i = 0; i < segments.length; i++) {\n if (!obj) { return }\n obj = obj[segments[i]];\n }\n return obj\n }\n}\n\n/* */\n/* globals MutationObserver */\n\n// can we use __proto__?\nvar hasProto = '__proto__' in {};\n\n// Browser environment sniffing\nvar inBrowser = typeof window !== 'undefined';\nvar UA = inBrowser && window.navigator.userAgent.toLowerCase();\nvar isIE = UA && /msie|trident/.test(UA);\nvar isIE9 = UA && UA.indexOf('msie 9.0') > 0;\nvar isEdge = UA && UA.indexOf('edge/') > 0;\nvar isAndroid = UA && UA.indexOf('android') > 0;\nvar isIOS = UA && /iphone|ipad|ipod|ios/.test(UA);\nvar isChrome = UA && /chrome\\/\\d+/.test(UA) && !isEdge;\n\n// this needs to be lazy-evaled because vue may be required before\n// vue-server-renderer can set VUE_ENV\nvar _isServer;\nvar isServerRendering = function () {\n if (_isServer === undefined) {\n /* istanbul ignore if */\n if (!inBrowser && typeof global !== 'undefined') {\n // detect presence of vue-server-renderer and avoid\n // Webpack shimming the process\n _isServer = global['process'].env.VUE_ENV === 'server';\n } else {\n _isServer = false;\n }\n }\n return _isServer\n};\n\n// detect devtools\nvar devtools = inBrowser && window.__VUE_DEVTOOLS_GLOBAL_HOOK__;\n\n/* istanbul ignore next */\nfunction isNative (Ctor) {\n return /native code/.test(Ctor.toString())\n}\n\nvar hasSymbol =\n typeof Symbol !== 'undefined' && isNative(Symbol) &&\n typeof Reflect !== 'undefined' && isNative(Reflect.ownKeys);\n\n/**\n * Defer a task to execute it asynchronously.\n */\nvar nextTick = (function () {\n var callbacks = [];\n var pending = false;\n var timerFunc;\n\n function nextTickHandler () {\n pending = false;\n var copies = callbacks.slice(0);\n callbacks.length = 0;\n for (var i = 0; i < copies.length; i++) {\n copies[i]();\n }\n }\n\n // the nextTick behavior leverages the microtask queue, which can be accessed\n // via either native Promise.then or MutationObserver.\n // MutationObserver has wider support, however it is seriously bugged in\n // UIWebView in iOS >= 9.3.3 when triggered in touch event handlers. It\n // completely stops working after triggering a few times... so, if native\n // Promise is available, we will use it:\n /* istanbul ignore if */\n if (typeof Promise !== 'undefined' && isNative(Promise)) {\n var p = Promise.resolve();\n var logError = function (err) { console.error(err); };\n timerFunc = function () {\n p.then(nextTickHandler).catch(logError);\n // in problematic UIWebViews, Promise.then doesn't completely break, but\n // it can get stuck in a weird state where callbacks are pushed into the\n // microtask queue but the queue isn't being flushed, until the browser\n // needs to do some other work, e.g. handle a timer. Therefore we can\n // \"force\" the microtask queue to be flushed by adding an empty timer.\n if (isIOS) { setTimeout(noop); }\n };\n } else if (typeof MutationObserver !== 'undefined' && (\n isNative(MutationObserver) ||\n // PhantomJS and iOS 7.x\n MutationObserver.toString() === '[object MutationObserverConstructor]'\n )) {\n // use MutationObserver where native Promise is not available,\n // e.g. PhantomJS IE11, iOS7, Android 4.4\n var counter = 1;\n var observer = new MutationObserver(nextTickHandler);\n var textNode = document.createTextNode(String(counter));\n observer.observe(textNode, {\n characterData: true\n });\n timerFunc = function () {\n counter = (counter + 1) % 2;\n textNode.data = String(counter);\n };\n } else {\n // fallback to setTimeout\n /* istanbul ignore next */\n timerFunc = function () {\n setTimeout(nextTickHandler, 0);\n };\n }\n\n return function queueNextTick (cb, ctx) {\n var _resolve;\n callbacks.push(function () {\n if (cb) { cb.call(ctx); }\n if (_resolve) { _resolve(ctx); }\n });\n if (!pending) {\n pending = true;\n timerFunc();\n }\n if (!cb && typeof Promise !== 'undefined') {\n return new Promise(function (resolve) {\n _resolve = resolve;\n })\n }\n }\n})();\n\nvar _Set;\n/* istanbul ignore if */\nif (typeof Set !== 'undefined' && isNative(Set)) {\n // use native Set when available.\n _Set = Set;\n} else {\n // a non-standard Set polyfill that only works with primitive keys.\n _Set = (function () {\n function Set () {\n this.set = Object.create(null);\n }\n Set.prototype.has = function has (key) {\n return this.set[key] === true\n };\n Set.prototype.add = function add (key) {\n this.set[key] = true;\n };\n Set.prototype.clear = function clear () {\n this.set = Object.create(null);\n };\n\n return Set;\n }());\n}\n\nvar warn = noop;\nvar tip = noop;\nvar formatComponentName;\n\nif (false) {\n var hasConsole = typeof console !== 'undefined';\n var classifyRE = /(?:^|[-_])(\\w)/g;\n var classify = function (str) { return str\n .replace(classifyRE, function (c) { return c.toUpperCase(); })\n .replace(/[-_]/g, ''); };\n\n warn = function (msg, vm) {\n if (hasConsole && (!config.silent)) {\n console.error(\"[Vue warn]: \" + msg + \" \" + (\n vm ? formatLocation(formatComponentName(vm)) : ''\n ));\n }\n };\n\n tip = function (msg, vm) {\n if (hasConsole && (!config.silent)) {\n console.warn(\"[Vue tip]: \" + msg + \" \" + (\n vm ? formatLocation(formatComponentName(vm)) : ''\n ));\n }\n };\n\n formatComponentName = function (vm, includeFile) {\n if (vm.$root === vm) {\n return ''\n }\n var name = typeof vm === 'string'\n ? vm\n : typeof vm === 'function' && vm.options\n ? vm.options.name\n : vm._isVue\n ? vm.$options.name || vm.$options._componentTag\n : vm.name;\n\n var file = vm._isVue && vm.$options.__file;\n if (!name && file) {\n var match = file.match(/([^/\\\\]+)\\.vue$/);\n name = match && match[1];\n }\n\n return (\n (name ? (\"<\" + (classify(name)) + \">\") : \"\") +\n (file && includeFile !== false ? (\" at \" + file) : '')\n )\n };\n\n var formatLocation = function (str) {\n if (str === \"\") {\n str += \" - use the \\\"name\\\" option for better debugging messages.\";\n }\n return (\"\\n(found in \" + str + \")\")\n };\n}\n\n/* */\n\n\nvar uid$1 = 0;\n\n/**\n * A dep is an observable that can have multiple\n * directives subscribing to it.\n */\nvar Dep = function Dep () {\n this.id = uid$1++;\n this.subs = [];\n};\n\nDep.prototype.addSub = function addSub (sub) {\n this.subs.push(sub);\n};\n\nDep.prototype.removeSub = function removeSub (sub) {\n remove(this.subs, sub);\n};\n\nDep.prototype.depend = function depend () {\n if (Dep.target) {\n Dep.target.addDep(this);\n }\n};\n\nDep.prototype.notify = function notify () {\n // stabilize the subscriber list first\n var subs = this.subs.slice();\n for (var i = 0, l = subs.length; i < l; i++) {\n subs[i].update();\n }\n};\n\n// the current target watcher being evaluated.\n// this is globally unique because there could be only one\n// watcher being evaluated at any time.\nDep.target = null;\nvar targetStack = [];\n\nfunction pushTarget (_target) {\n if (Dep.target) { targetStack.push(Dep.target); }\n Dep.target = _target;\n}\n\nfunction popTarget () {\n Dep.target = targetStack.pop();\n}\n\n/*\n * not type checking this file because flow doesn't play well with\n * dynamically accessing methods on Array prototype\n */\n\nvar arrayProto = Array.prototype;\nvar arrayMethods = Object.create(arrayProto);[\n 'push',\n 'pop',\n 'shift',\n 'unshift',\n 'splice',\n 'sort',\n 'reverse'\n]\n.forEach(function (method) {\n // cache original method\n var original = arrayProto[method];\n def(arrayMethods, method, function mutator () {\n var arguments$1 = arguments;\n\n // avoid leaking arguments:\n // http://jsperf.com/closure-with-arguments\n var i = arguments.length;\n var args = new Array(i);\n while (i--) {\n args[i] = arguments$1[i];\n }\n var result = original.apply(this, args);\n var ob = this.__ob__;\n var inserted;\n switch (method) {\n case 'push':\n inserted = args;\n break\n case 'unshift':\n inserted = args;\n break\n case 'splice':\n inserted = args.slice(2);\n break\n }\n if (inserted) { ob.observeArray(inserted); }\n // notify change\n ob.dep.notify();\n return result\n });\n});\n\n/* */\n\nvar arrayKeys = Object.getOwnPropertyNames(arrayMethods);\n\n/**\n * By default, when a reactive property is set, the new value is\n * also converted to become reactive. However when passing down props,\n * we don't want to force conversion because the value may be a nested value\n * under a frozen data structure. Converting it would defeat the optimization.\n */\nvar observerState = {\n shouldConvert: true,\n isSettingProps: false\n};\n\n/**\n * Observer class that are attached to each observed\n * object. Once attached, the observer converts target\n * object's property keys into getter/setters that\n * collect dependencies and dispatches updates.\n */\nvar Observer = function Observer (value) {\n this.value = value;\n this.dep = new Dep();\n this.vmCount = 0;\n def(value, '__ob__', this);\n if (Array.isArray(value)) {\n var augment = hasProto\n ? protoAugment\n : copyAugment;\n augment(value, arrayMethods, arrayKeys);\n this.observeArray(value);\n } else {\n this.walk(value);\n }\n};\n\n/**\n * Walk through each property and convert them into\n * getter/setters. This method should only be called when\n * value type is Object.\n */\nObserver.prototype.walk = function walk (obj) {\n var keys = Object.keys(obj);\n for (var i = 0; i < keys.length; i++) {\n defineReactive$$1(obj, keys[i], obj[keys[i]]);\n }\n};\n\n/**\n * Observe a list of Array items.\n */\nObserver.prototype.observeArray = function observeArray (items) {\n for (var i = 0, l = items.length; i < l; i++) {\n observe(items[i]);\n }\n};\n\n// helpers\n\n/**\n * Augment an target Object or Array by intercepting\n * the prototype chain using __proto__\n */\nfunction protoAugment (target, src) {\n /* eslint-disable no-proto */\n target.__proto__ = src;\n /* eslint-enable no-proto */\n}\n\n/**\n * Augment an target Object or Array by defining\n * hidden properties.\n */\n/* istanbul ignore next */\nfunction copyAugment (target, src, keys) {\n for (var i = 0, l = keys.length; i < l; i++) {\n var key = keys[i];\n def(target, key, src[key]);\n }\n}\n\n/**\n * Attempt to create an observer instance for a value,\n * returns the new observer if successfully observed,\n * or the existing observer if the value already has one.\n */\nfunction observe (value, asRootData) {\n if (!isObject(value)) {\n return\n }\n var ob;\n if (hasOwn(value, '__ob__') && value.__ob__ instanceof Observer) {\n ob = value.__ob__;\n } else if (\n observerState.shouldConvert &&\n !isServerRendering() &&\n (Array.isArray(value) || isPlainObject(value)) &&\n Object.isExtensible(value) &&\n !value._isVue\n ) {\n ob = new Observer(value);\n }\n if (asRootData && ob) {\n ob.vmCount++;\n }\n return ob\n}\n\n/**\n * Define a reactive property on an Object.\n */\nfunction defineReactive$$1 (\n obj,\n key,\n val,\n customSetter\n) {\n var dep = new Dep();\n\n var property = Object.getOwnPropertyDescriptor(obj, key);\n if (property && property.configurable === false) {\n return\n }\n\n // cater for pre-defined getter/setters\n var getter = property && property.get;\n var setter = property && property.set;\n\n var childOb = observe(val);\n Object.defineProperty(obj, key, {\n enumerable: true,\n configurable: true,\n get: function reactiveGetter () {\n var value = getter ? getter.call(obj) : val;\n if (Dep.target) {\n dep.depend();\n if (childOb) {\n childOb.dep.depend();\n }\n if (Array.isArray(value)) {\n dependArray(value);\n }\n }\n return value\n },\n set: function reactiveSetter (newVal) {\n var value = getter ? getter.call(obj) : val;\n /* eslint-disable no-self-compare */\n if (newVal === value || (newVal !== newVal && value !== value)) {\n return\n }\n /* eslint-enable no-self-compare */\n if (false) {\n customSetter();\n }\n if (setter) {\n setter.call(obj, newVal);\n } else {\n val = newVal;\n }\n childOb = observe(newVal);\n dep.notify();\n }\n });\n}\n\n/**\n * Set a property on an object. Adds the new property and\n * triggers change notification if the property doesn't\n * already exist.\n */\nfunction set (target, key, val) {\n if (Array.isArray(target) && typeof key === 'number') {\n target.length = Math.max(target.length, key);\n target.splice(key, 1, val);\n return val\n }\n if (hasOwn(target, key)) {\n target[key] = val;\n return val\n }\n var ob = (target ).__ob__;\n if (target._isVue || (ob && ob.vmCount)) {\n \"production\" !== 'production' && warn(\n 'Avoid adding reactive properties to a Vue instance or its root $data ' +\n 'at runtime - declare it upfront in the data option.'\n );\n return val\n }\n if (!ob) {\n target[key] = val;\n return val\n }\n defineReactive$$1(ob.value, key, val);\n ob.dep.notify();\n return val\n}\n\n/**\n * Delete a property and trigger change if necessary.\n */\nfunction del (target, key) {\n if (Array.isArray(target) && typeof key === 'number') {\n target.splice(key, 1);\n return\n }\n var ob = (target ).__ob__;\n if (target._isVue || (ob && ob.vmCount)) {\n \"production\" !== 'production' && warn(\n 'Avoid deleting properties on a Vue instance or its root $data ' +\n '- just set it to null.'\n );\n return\n }\n if (!hasOwn(target, key)) {\n return\n }\n delete target[key];\n if (!ob) {\n return\n }\n ob.dep.notify();\n}\n\n/**\n * Collect dependencies on array elements when the array is touched, since\n * we cannot intercept array element access like property getters.\n */\nfunction dependArray (value) {\n for (var e = (void 0), i = 0, l = value.length; i < l; i++) {\n e = value[i];\n e && e.__ob__ && e.__ob__.dep.depend();\n if (Array.isArray(e)) {\n dependArray(e);\n }\n }\n}\n\n/* */\n\n/**\n * Option overwriting strategies are functions that handle\n * how to merge a parent option value and a child option\n * value into the final value.\n */\nvar strats = config.optionMergeStrategies;\n\n/**\n * Options with restrictions\n */\nif (false) {\n strats.el = strats.propsData = function (parent, child, vm, key) {\n if (!vm) {\n warn(\n \"option \\\"\" + key + \"\\\" can only be used during instance \" +\n 'creation with the `new` keyword.'\n );\n }\n return defaultStrat(parent, child)\n };\n}\n\n/**\n * Helper that recursively merges two data objects together.\n */\nfunction mergeData (to, from) {\n if (!from) { return to }\n var key, toVal, fromVal;\n var keys = Object.keys(from);\n for (var i = 0; i < keys.length; i++) {\n key = keys[i];\n toVal = to[key];\n fromVal = from[key];\n if (!hasOwn(to, key)) {\n set(to, key, fromVal);\n } else if (isPlainObject(toVal) && isPlainObject(fromVal)) {\n mergeData(toVal, fromVal);\n }\n }\n return to\n}\n\n/**\n * Data\n */\nstrats.data = function (\n parentVal,\n childVal,\n vm\n) {\n if (!vm) {\n // in a Vue.extend merge, both should be functions\n if (!childVal) {\n return parentVal\n }\n if (typeof childVal !== 'function') {\n \"production\" !== 'production' && warn(\n 'The \"data\" option should be a function ' +\n 'that returns a per-instance value in component ' +\n 'definitions.',\n vm\n );\n return parentVal\n }\n if (!parentVal) {\n return childVal\n }\n // when parentVal & childVal are both present,\n // we need to return a function that returns the\n // merged result of both functions... no need to\n // check if parentVal is a function here because\n // it has to be a function to pass previous merges.\n return function mergedDataFn () {\n return mergeData(\n childVal.call(this),\n parentVal.call(this)\n )\n }\n } else if (parentVal || childVal) {\n return function mergedInstanceDataFn () {\n // instance merge\n var instanceData = typeof childVal === 'function'\n ? childVal.call(vm)\n : childVal;\n var defaultData = typeof parentVal === 'function'\n ? parentVal.call(vm)\n : undefined;\n if (instanceData) {\n return mergeData(instanceData, defaultData)\n } else {\n return defaultData\n }\n }\n }\n};\n\n/**\n * Hooks and props are merged as arrays.\n */\nfunction mergeHook (\n parentVal,\n childVal\n) {\n return childVal\n ? parentVal\n ? parentVal.concat(childVal)\n : Array.isArray(childVal)\n ? childVal\n : [childVal]\n : parentVal\n}\n\nconfig._lifecycleHooks.forEach(function (hook) {\n strats[hook] = mergeHook;\n});\n\n/**\n * Assets\n *\n * When a vm is present (instance creation), we need to do\n * a three-way merge between constructor options, instance\n * options and parent options.\n */\nfunction mergeAssets (parentVal, childVal) {\n var res = Object.create(parentVal || null);\n return childVal\n ? extend(res, childVal)\n : res\n}\n\nconfig._assetTypes.forEach(function (type) {\n strats[type + 's'] = mergeAssets;\n});\n\n/**\n * Watchers.\n *\n * Watchers hashes should not overwrite one\n * another, so we merge them as arrays.\n */\nstrats.watch = function (parentVal, childVal) {\n /* istanbul ignore if */\n if (!childVal) { return Object.create(parentVal || null) }\n if (!parentVal) { return childVal }\n var ret = {};\n extend(ret, parentVal);\n for (var key in childVal) {\n var parent = ret[key];\n var child = childVal[key];\n if (parent && !Array.isArray(parent)) {\n parent = [parent];\n }\n ret[key] = parent\n ? parent.concat(child)\n : [child];\n }\n return ret\n};\n\n/**\n * Other object hashes.\n */\nstrats.props =\nstrats.methods =\nstrats.computed = function (parentVal, childVal) {\n if (!childVal) { return Object.create(parentVal || null) }\n if (!parentVal) { return childVal }\n var ret = Object.create(null);\n extend(ret, parentVal);\n extend(ret, childVal);\n return ret\n};\n\n/**\n * Default strategy.\n */\nvar defaultStrat = function (parentVal, childVal) {\n return childVal === undefined\n ? parentVal\n : childVal\n};\n\n/**\n * Validate component names\n */\nfunction checkComponents (options) {\n for (var key in options.components) {\n var lower = key.toLowerCase();\n if (isBuiltInTag(lower) || config.isReservedTag(lower)) {\n warn(\n 'Do not use built-in or reserved HTML elements as component ' +\n 'id: ' + key\n );\n }\n }\n}\n\n/**\n * Ensure all props option syntax are normalized into the\n * Object-based format.\n */\nfunction normalizeProps (options) {\n var props = options.props;\n if (!props) { return }\n var res = {};\n var i, val, name;\n if (Array.isArray(props)) {\n i = props.length;\n while (i--) {\n val = props[i];\n if (typeof val === 'string') {\n name = camelize(val);\n res[name] = { type: null };\n } else if (false) {\n warn('props must be strings when using array syntax.');\n }\n }\n } else if (isPlainObject(props)) {\n for (var key in props) {\n val = props[key];\n name = camelize(key);\n res[name] = isPlainObject(val)\n ? val\n : { type: val };\n }\n }\n options.props = res;\n}\n\n/**\n * Normalize raw function directives into object format.\n */\nfunction normalizeDirectives (options) {\n var dirs = options.directives;\n if (dirs) {\n for (var key in dirs) {\n var def = dirs[key];\n if (typeof def === 'function') {\n dirs[key] = { bind: def, update: def };\n }\n }\n }\n}\n\n/**\n * Merge two option objects into a new one.\n * Core utility used in both instantiation and inheritance.\n */\nfunction mergeOptions (\n parent,\n child,\n vm\n) {\n if (false) {\n checkComponents(child);\n }\n normalizeProps(child);\n normalizeDirectives(child);\n var extendsFrom = child.extends;\n if (extendsFrom) {\n parent = typeof extendsFrom === 'function'\n ? mergeOptions(parent, extendsFrom.options, vm)\n : mergeOptions(parent, extendsFrom, vm);\n }\n if (child.mixins) {\n for (var i = 0, l = child.mixins.length; i < l; i++) {\n var mixin = child.mixins[i];\n if (mixin.prototype instanceof Vue$3) {\n mixin = mixin.options;\n }\n parent = mergeOptions(parent, mixin, vm);\n }\n }\n var options = {};\n var key;\n for (key in parent) {\n mergeField(key);\n }\n for (key in child) {\n if (!hasOwn(parent, key)) {\n mergeField(key);\n }\n }\n function mergeField (key) {\n var strat = strats[key] || defaultStrat;\n options[key] = strat(parent[key], child[key], vm, key);\n }\n return options\n}\n\n/**\n * Resolve an asset.\n * This function is used because child instances need access\n * to assets defined in its ancestor chain.\n */\nfunction resolveAsset (\n options,\n type,\n id,\n warnMissing\n) {\n /* istanbul ignore if */\n if (typeof id !== 'string') {\n return\n }\n var assets = options[type];\n // check local registration variations first\n if (hasOwn(assets, id)) { return assets[id] }\n var camelizedId = camelize(id);\n if (hasOwn(assets, camelizedId)) { return assets[camelizedId] }\n var PascalCaseId = capitalize(camelizedId);\n if (hasOwn(assets, PascalCaseId)) { return assets[PascalCaseId] }\n // fallback to prototype chain\n var res = assets[id] || assets[camelizedId] || assets[PascalCaseId];\n if (false) {\n warn(\n 'Failed to resolve ' + type.slice(0, -1) + ': ' + id,\n options\n );\n }\n return res\n}\n\n/* */\n\nfunction validateProp (\n key,\n propOptions,\n propsData,\n vm\n) {\n var prop = propOptions[key];\n var absent = !hasOwn(propsData, key);\n var value = propsData[key];\n // handle boolean props\n if (isType(Boolean, prop.type)) {\n if (absent && !hasOwn(prop, 'default')) {\n value = false;\n } else if (!isType(String, prop.type) && (value === '' || value === hyphenate(key))) {\n value = true;\n }\n }\n // check default value\n if (value === undefined) {\n value = getPropDefaultValue(vm, prop, key);\n // since the default value is a fresh copy,\n // make sure to observe it.\n var prevShouldConvert = observerState.shouldConvert;\n observerState.shouldConvert = true;\n observe(value);\n observerState.shouldConvert = prevShouldConvert;\n }\n if (false) {\n assertProp(prop, key, value, vm, absent);\n }\n return value\n}\n\n/**\n * Get the default value of a prop.\n */\nfunction getPropDefaultValue (vm, prop, key) {\n // no default, return undefined\n if (!hasOwn(prop, 'default')) {\n return undefined\n }\n var def = prop.default;\n // warn against non-factory defaults for Object & Array\n if (false) {\n warn(\n 'Invalid default value for prop \"' + key + '\": ' +\n 'Props with type Object/Array must use a factory function ' +\n 'to return the default value.',\n vm\n );\n }\n // the raw prop value was also undefined from previous render,\n // return previous default value to avoid unnecessary watcher trigger\n if (vm && vm.$options.propsData &&\n vm.$options.propsData[key] === undefined &&\n vm._props[key] !== undefined) {\n return vm._props[key]\n }\n // call factory function for non-Function types\n // a value is Function if its prototype is function even across different execution context\n return typeof def === 'function' && getType(prop.type) !== 'Function'\n ? def.call(vm)\n : def\n}\n\n/**\n * Assert whether a prop is valid.\n */\nfunction assertProp (\n prop,\n name,\n value,\n vm,\n absent\n) {\n if (prop.required && absent) {\n warn(\n 'Missing required prop: \"' + name + '\"',\n vm\n );\n return\n }\n if (value == null && !prop.required) {\n return\n }\n var type = prop.type;\n var valid = !type || type === true;\n var expectedTypes = [];\n if (type) {\n if (!Array.isArray(type)) {\n type = [type];\n }\n for (var i = 0; i < type.length && !valid; i++) {\n var assertedType = assertType(value, type[i]);\n expectedTypes.push(assertedType.expectedType || '');\n valid = assertedType.valid;\n }\n }\n if (!valid) {\n warn(\n 'Invalid prop: type check failed for prop \"' + name + '\".' +\n ' Expected ' + expectedTypes.map(capitalize).join(', ') +\n ', got ' + Object.prototype.toString.call(value).slice(8, -1) + '.',\n vm\n );\n return\n }\n var validator = prop.validator;\n if (validator) {\n if (!validator(value)) {\n warn(\n 'Invalid prop: custom validator check failed for prop \"' + name + '\".',\n vm\n );\n }\n }\n}\n\n/**\n * Assert the type of a value\n */\nfunction assertType (value, type) {\n var valid;\n var expectedType = getType(type);\n if (expectedType === 'String') {\n valid = typeof value === (expectedType = 'string');\n } else if (expectedType === 'Number') {\n valid = typeof value === (expectedType = 'number');\n } else if (expectedType === 'Boolean') {\n valid = typeof value === (expectedType = 'boolean');\n } else if (expectedType === 'Function') {\n valid = typeof value === (expectedType = 'function');\n } else if (expectedType === 'Object') {\n valid = isPlainObject(value);\n } else if (expectedType === 'Array') {\n valid = Array.isArray(value);\n } else {\n valid = value instanceof type;\n }\n return {\n valid: valid,\n expectedType: expectedType\n }\n}\n\n/**\n * Use function string name to check built-in types,\n * because a simple equality check will fail when running\n * across different vms / iframes.\n */\nfunction getType (fn) {\n var match = fn && fn.toString().match(/^\\s*function (\\w+)/);\n return match && match[1]\n}\n\nfunction isType (type, fn) {\n if (!Array.isArray(fn)) {\n return getType(fn) === getType(type)\n }\n for (var i = 0, len = fn.length; i < len; i++) {\n if (getType(fn[i]) === getType(type)) {\n return true\n }\n }\n /* istanbul ignore next */\n return false\n}\n\nfunction handleError (err, vm, info) {\n if (config.errorHandler) {\n config.errorHandler.call(null, err, vm, info);\n } else {\n if (false) {\n warn((\"Error in \" + info + \":\"), vm);\n }\n /* istanbul ignore else */\n if (inBrowser && typeof console !== 'undefined') {\n console.error(err);\n } else {\n throw err\n }\n }\n}\n\n/* not type checking this file because flow doesn't play well with Proxy */\n\nvar initProxy;\n\nif (false) {\n var allowedGlobals = makeMap(\n 'Infinity,undefined,NaN,isFinite,isNaN,' +\n 'parseFloat,parseInt,decodeURI,decodeURIComponent,encodeURI,encodeURIComponent,' +\n 'Math,Number,Date,Array,Object,Boolean,String,RegExp,Map,Set,JSON,Intl,' +\n 'require' // for Webpack/Browserify\n );\n\n var warnNonPresent = function (target, key) {\n warn(\n \"Property or method \\\"\" + key + \"\\\" is not defined on the instance but \" +\n \"referenced during render. Make sure to declare reactive data \" +\n \"properties in the data option.\",\n target\n );\n };\n\n var hasProxy =\n typeof Proxy !== 'undefined' &&\n Proxy.toString().match(/native code/);\n\n if (hasProxy) {\n var isBuiltInModifier = makeMap('stop,prevent,self,ctrl,shift,alt,meta');\n config.keyCodes = new Proxy(config.keyCodes, {\n set: function set (target, key, value) {\n if (isBuiltInModifier(key)) {\n warn((\"Avoid overwriting built-in modifier in config.keyCodes: .\" + key));\n return false\n } else {\n target[key] = value;\n return true\n }\n }\n });\n }\n\n var hasHandler = {\n has: function has (target, key) {\n var has = key in target;\n var isAllowed = allowedGlobals(key) || key.charAt(0) === '_';\n if (!has && !isAllowed) {\n warnNonPresent(target, key);\n }\n return has || !isAllowed\n }\n };\n\n var getHandler = {\n get: function get (target, key) {\n if (typeof key === 'string' && !(key in target)) {\n warnNonPresent(target, key);\n }\n return target[key]\n }\n };\n\n initProxy = function initProxy (vm) {\n if (hasProxy) {\n // determine which proxy handler to use\n var options = vm.$options;\n var handlers = options.render && options.render._withStripped\n ? getHandler\n : hasHandler;\n vm._renderProxy = new Proxy(vm, handlers);\n } else {\n vm._renderProxy = vm;\n }\n };\n}\n\nvar mark;\nvar measure;\n\nif (false) {\n var perf = inBrowser && window.performance;\n /* istanbul ignore if */\n if (\n perf &&\n perf.mark &&\n perf.measure &&\n perf.clearMarks &&\n perf.clearMeasures\n ) {\n mark = function (tag) { return perf.mark(tag); };\n measure = function (name, startTag, endTag) {\n perf.measure(name, startTag, endTag);\n perf.clearMarks(startTag);\n perf.clearMarks(endTag);\n perf.clearMeasures(name);\n };\n }\n}\n\n/* */\n\nvar VNode = function VNode (\n tag,\n data,\n children,\n text,\n elm,\n context,\n componentOptions\n) {\n this.tag = tag;\n this.data = data;\n this.children = children;\n this.text = text;\n this.elm = elm;\n this.ns = undefined;\n this.context = context;\n this.functionalContext = undefined;\n this.key = data && data.key;\n this.componentOptions = componentOptions;\n this.componentInstance = undefined;\n this.parent = undefined;\n this.raw = false;\n this.isStatic = false;\n this.isRootInsert = true;\n this.isComment = false;\n this.isCloned = false;\n this.isOnce = false;\n};\n\nvar prototypeAccessors = { child: {} };\n\n// DEPRECATED: alias for componentInstance for backwards compat.\n/* istanbul ignore next */\nprototypeAccessors.child.get = function () {\n return this.componentInstance\n};\n\nObject.defineProperties( VNode.prototype, prototypeAccessors );\n\nvar createEmptyVNode = function () {\n var node = new VNode();\n node.text = '';\n node.isComment = true;\n return node\n};\n\nfunction createTextVNode (val) {\n return new VNode(undefined, undefined, undefined, String(val))\n}\n\n// optimized shallow clone\n// used for static nodes and slot nodes because they may be reused across\n// multiple renders, cloning them avoids errors when DOM manipulations rely\n// on their elm reference.\nfunction cloneVNode (vnode) {\n var cloned = new VNode(\n vnode.tag,\n vnode.data,\n vnode.children,\n vnode.text,\n vnode.elm,\n vnode.context,\n vnode.componentOptions\n );\n cloned.ns = vnode.ns;\n cloned.isStatic = vnode.isStatic;\n cloned.key = vnode.key;\n cloned.isCloned = true;\n return cloned\n}\n\nfunction cloneVNodes (vnodes) {\n var len = vnodes.length;\n var res = new Array(len);\n for (var i = 0; i < len; i++) {\n res[i] = cloneVNode(vnodes[i]);\n }\n return res\n}\n\n/* */\n\nvar normalizeEvent = cached(function (name) {\n var once$$1 = name.charAt(0) === '~'; // Prefixed last, checked first\n name = once$$1 ? name.slice(1) : name;\n var capture = name.charAt(0) === '!';\n name = capture ? name.slice(1) : name;\n return {\n name: name,\n once: once$$1,\n capture: capture\n }\n});\n\nfunction createFnInvoker (fns) {\n function invoker () {\n var arguments$1 = arguments;\n\n var fns = invoker.fns;\n if (Array.isArray(fns)) {\n for (var i = 0; i < fns.length; i++) {\n fns[i].apply(null, arguments$1);\n }\n } else {\n // return handler return value for single handlers\n return fns.apply(null, arguments)\n }\n }\n invoker.fns = fns;\n return invoker\n}\n\nfunction updateListeners (\n on,\n oldOn,\n add,\n remove$$1,\n vm\n) {\n var name, cur, old, event;\n for (name in on) {\n cur = on[name];\n old = oldOn[name];\n event = normalizeEvent(name);\n if (!cur) {\n \"production\" !== 'production' && warn(\n \"Invalid handler for event \\\"\" + (event.name) + \"\\\": got \" + String(cur),\n vm\n );\n } else if (!old) {\n if (!cur.fns) {\n cur = on[name] = createFnInvoker(cur);\n }\n add(event.name, cur, event.once, event.capture);\n } else if (cur !== old) {\n old.fns = cur;\n on[name] = old;\n }\n }\n for (name in oldOn) {\n if (!on[name]) {\n event = normalizeEvent(name);\n remove$$1(event.name, oldOn[name], event.capture);\n }\n }\n}\n\n/* */\n\nfunction mergeVNodeHook (def, hookKey, hook) {\n var invoker;\n var oldHook = def[hookKey];\n\n function wrappedHook () {\n hook.apply(this, arguments);\n // important: remove merged hook to ensure it's called only once\n // and prevent memory leak\n remove(invoker.fns, wrappedHook);\n }\n\n if (!oldHook) {\n // no existing hook\n invoker = createFnInvoker([wrappedHook]);\n } else {\n /* istanbul ignore if */\n if (oldHook.fns && oldHook.merged) {\n // already a merged invoker\n invoker = oldHook;\n invoker.fns.push(wrappedHook);\n } else {\n // existing plain hook\n invoker = createFnInvoker([oldHook, wrappedHook]);\n }\n }\n\n invoker.merged = true;\n def[hookKey] = invoker;\n}\n\n/* */\n\n// The template compiler attempts to minimize the need for normalization by\n// statically analyzing the template at compile time.\n//\n// For plain HTML markup, normalization can be completely skipped because the\n// generated render function is guaranteed to return Array. There are\n// two cases where extra normalization is needed:\n\n// 1. When the children contains components - because a functional component\n// may return an Array instead of a single root. In this case, just a simple\n// normalization is needed - if any child is an Array, we flatten the whole\n// thing with Array.prototype.concat. It is guaranteed to be only 1-level deep\n// because functional components already normalize their own children.\nfunction simpleNormalizeChildren (children) {\n for (var i = 0; i < children.length; i++) {\n if (Array.isArray(children[i])) {\n return Array.prototype.concat.apply([], children)\n }\n }\n return children\n}\n\n// 2. When the children contains constructs that always generated nested Arrays,\n// e.g.