)/gi,bN=/^(?:select|textarea)/i,bO=/\s+/,bP=/([?&])_=[^&]*/,bQ=/^([\w\+\.\-]+:)(?:\/\/([^\/?#:]*)(?::(\d+))?)?/,bR=f.fn.load,bS={},bT={},bU,bV,bW=["*/"]+["*"];try{bU=e.href}catch(bX){bU=c.createElement("a"),bU.href="",bU=bU.href}bV=bQ.exec(bU.toLowerCase())||[],f.fn.extend({load:function(a,c,d){if(typeof a!="string"&&bR)return bR.apply(this,arguments);if(!this.length)return this;var e=a.indexOf(" ");if(e>=0){var g=a.slice(e,a.length);a=a.slice(0,e)}var h="GET";c&&(f.isFunction(c)?(d=c,c=b):typeof c=="object"&&(c=f.param(c,f.ajaxSettings.traditional),h="POST"));var i=this;f.ajax({url:a,type:h,dataType:"html",data:c,complete:function(a,b,c){c=a.responseText,a.isResolved()&&(a.done(function(a){c=a}),i.html(g?f("
").append(c.replace(bM,"")).find(g):c)),d&&i.each(d,[c,b,a])}});return this},serialize:function(){return f.param(this.serializeArray())},serializeArray:function(){return this.map(function(){return this.elements?f.makeArray(this.elements):this}).filter(function(){return this.name&&!this.disabled&&(this.checked||bN.test(this.nodeName)||bH.test(this.type))}).map(function(a,b){var c=f(this).val();return c==null?null:f.isArray(c)?f.map(c,function(a,c){return{name:b.name,value:a.replace(bE,"\r\n")}}):{name:b.name,value:c.replace(bE,"\r\n")}}).get()}}),f.each("ajaxStart ajaxStop ajaxComplete ajaxError ajaxSuccess ajaxSend".split(" "),function(a,b){f.fn[b]=function(a){return this.on(b,a)}}),f.each(["get","post"],function(a,c){f[c]=function(a,d,e,g){f.isFunction(d)&&(g=g||e,e=d,d=b);return f.ajax({type:c,url:a,data:d,success:e,dataType:g})}}),f.extend({getScript:function(a,c){return f.get(a,b,c,"script")},getJSON:function(a,b,c){return f.get(a,b,c,"json")},ajaxSetup:function(a,b){b?b$(a,f.ajaxSettings):(b=a,a=f.ajaxSettings),b$(a,b);return a},ajaxSettings:{url:bU,isLocal:bI.test(bV[1]),global:!0,type:"GET",contentType:"application/x-www-form-urlencoded; charset=UTF-8",processData:!0,async:!0,accepts:{xml:"application/xml, text/xml",html:"text/html",text:"text/plain",json:"application/json, text/javascript","*":bW},contents:{xml:/xml/,html:/html/,json:/json/},responseFields:{xml:"responseXML",text:"responseText"},converters:{"* text":a.String,"text html":!0,"text json":f.parseJSON,"text xml":f.parseXML},flatOptions:{context:!0,url:!0}},ajaxPrefilter:bY(bS),ajaxTransport:bY(bT),ajax:function(a,c){function w(a,c,l,m){if(s!==2){s=2,q&&clearTimeout(q),p=b,n=m||"",v.readyState=a>0?4:0;var o,r,u,w=c,x=l?ca(d,v,l):b,y,z;if(a>=200&&a<300||a===304){if(d.ifModified){if(y=v.getResponseHeader("Last-Modified"))f.lastModified[k]=y;if(z=v.getResponseHeader("Etag"))f.etag[k]=z}if(a===304)w="notmodified",o=!0;else try{r=cb(d,x),w="success",o=!0}catch(A){w="parsererror",u=A}}else{u=w;if(!w||a)w="error",a<0&&(a=0)}v.status=a,v.statusText=""+(c||w),o?h.resolveWith(e,[r,w,v]):h.rejectWith(e,[v,w,u]),v.statusCode(j),j=b,t&&g.trigger("ajax"+(o?"Success":"Error"),[v,d,o?r:u]),i.fireWith(e,[v,w]),t&&(g.trigger("ajaxComplete",[v,d]),--f.active||f.event.trigger("ajaxStop"))}}typeof a=="object"&&(c=a,a=b),c=c||{};var d=f.ajaxSetup({},c),e=d.context||d,g=e!==d&&(e.nodeType||e instanceof f)?f(e):f.event,h=f.Deferred(),i=f.Callbacks("once memory"),j=d.statusCode||{},k,l={},m={},n,o,p,q,r,s=0,t,u,v={readyState:0,setRequestHeader:function(a,b){if(!s){var c=a.toLowerCase();a=m[c]=m[c]||a,l[a]=b}return this},getAllResponseHeaders:function(){return s===2?n:null},getResponseHeader:function(a){var c;if(s===2){if(!o){o={};while(c=bG.exec(n))o[c[1].toLowerCase()]=c[2]}c=o[a.toLowerCase()]}return c===b?null:c},overrideMimeType:function(a){s||(d.mimeType=a);return this},abort:function(a){a=a||"abort",p&&p.abort(a),w(0,a);return this}};h.promise(v),v.success=v.done,v.error=v.fail,v.complete=i.add,v.statusCode=function(a){if(a){var b;if(s<2)for(b in a)j[b]=[j[b],a[b]];else b=a[v.status],v.then(b,b)}return this},d.url=((a||d.url)+"").replace(bF,"").replace(bK,bV[1]+"//"),d.dataTypes=f.trim(d.dataType||"*").toLowerCase().split(bO),d.crossDomain==null&&(r=bQ.exec(d.url.toLowerCase()),d.crossDomain=!(!r||r[1]==bV[1]&&r[2]==bV[2]&&(r[3]||(r[1]==="http:"?80:443))==(bV[3]||(bV[1]==="http:"?80:443)))),d.data&&d.processData&&typeof d.data!="string"&&(d.data=f.param(d.data,d.traditional)),bZ(bS,d,c,v);if(s===2)return!1;t=d.global,d.type=d.type.toUpperCase(),d.hasContent=!bJ.test(d.type),t&&f.active++===0&&f.event.trigger("ajaxStart");if(!d.hasContent){d.data&&(d.url+=(bL.test(d.url)?"&":"?")+d.data,delete d.data),k=d.url;if(d.cache===!1){var x=f.now(),y=d.url.replace(bP,"$1_="+x);d.url=y+(y===d.url?(bL.test(d.url)?"&":"?")+"_="+x:"")}}(d.data&&d.hasContent&&d.contentType!==!1||c.contentType)&&v.setRequestHeader("Content-Type",d.contentType),d.ifModified&&(k=k||d.url,f.lastModified[k]&&v.setRequestHeader("If-Modified-Since",f.lastModified[k]),f.etag[k]&&v.setRequestHeader("If-None-Match",f.etag[k])),v.setRequestHeader("Accept",d.dataTypes[0]&&d.accepts[d.dataTypes[0]]?d.accepts[d.dataTypes[0]]+(d.dataTypes[0]!=="*"?", "+bW+"; q=0.01":""):d.accepts["*"]);for(u in d.headers)v.setRequestHeader(u,d.headers[u]);if(d.beforeSend&&(d.beforeSend.call(e,v,d)===!1||s===2)){v.abort();return!1}for(u in{success:1,error:1,complete:1})v[u](d[u]);p=bZ(bT,d,c,v);if(!p)w(-1,"No Transport");else{v.readyState=1,t&&g.trigger("ajaxSend",[v,d]),d.async&&d.timeout>0&&(q=setTimeout(function(){v.abort("timeout")},d.timeout));try{s=1,p.send(l,w)}catch(z){if(s<2)w(-1,z);else throw z}}return v},param:function(a,c){var d=[],e=function(a,b){b=f.isFunction(b)?b():b,d[d.length]=encodeURIComponent(a)+"="+encodeURIComponent(b)};c===b&&(c=f.ajaxSettings.traditional);if(f.isArray(a)||a.jquery&&!f.isPlainObject(a))f.each(a,function(){e(this.name,this.value)});else for(var g in a)b_(g,a[g],c,e);return d.join("&").replace(bC,"+")}}),f.extend({active:0,lastModified:{},etag:{}});var cc=f.now(),cd=/(\=)\?(&|$)|\?\?/i;f.ajaxSetup({jsonp:"callback",jsonpCallback:function(){return f.expando+"_"+cc++}}),f.ajaxPrefilter("json jsonp",function(b,c,d){var e=typeof b.data=="string"&&/^application\/x\-www\-form\-urlencoded/.test(b.contentType);if(b.dataTypes[0]==="jsonp"||b.jsonp!==!1&&(cd.test(b.url)||e&&cd.test(b.data))){var g,h=b.jsonpCallback=f.isFunction(b.jsonpCallback)?b.jsonpCallback():b.jsonpCallback,i=a[h],j=b.url,k=b.data,l="$1"+h+"$2";b.jsonp!==!1&&(j=j.replace(cd,l),b.url===j&&(e&&(k=k.replace(cd,l)),b.data===k&&(j+=(/\?/.test(j)?"&":"?")+b.jsonp+"="+h))),b.url=j,b.data=k,a[h]=function(a){g=[a]},d.always(function(){a[h]=i,g&&f.isFunction(i)&&a[h](g[0])}),b.converters["script json"]=function(){g||f.error(h+" was not called");return g[0]},b.dataTypes[0]="json";return"script"}}),f.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/javascript|ecmascript/},converters:{"text script":function(a){f.globalEval(a);return a}}}),f.ajaxPrefilter("script",function(a){a.cache===b&&(a.cache=!1),a.crossDomain&&(a.type="GET",a.global=!1)}),f.ajaxTransport("script",function(a){if(a.crossDomain){var d,e=c.head||c.getElementsByTagName("head")[0]||c.documentElement;return{send:function(f,g){d=c.createElement("script"),d.async="async",a.scriptCharset&&(d.charset=a.scriptCharset),d.src=a.url,d.onload=d.onreadystatechange=function(a,c){if(c||!d.readyState||/loaded|complete/.test(d.readyState))d.onload=d.onreadystatechange=null,e&&d.parentNode&&e.removeChild(d),d=b,c||g(200,"success")},e.insertBefore(d,e.firstChild)},abort:function(){d&&d.onload(0,1)}}}});var ce=a.ActiveXObject?function(){for(var a in cg)cg[a](0,1)}:!1,cf=0,cg;f.ajaxSettings.xhr=a.ActiveXObject?function(){return!this.isLocal&&ch()||ci()}:ch,function(a){f.extend(f.support,{ajax:!!a,cors:!!a&&"withCredentials"in a})}(f.ajaxSettings.xhr()),f.support.ajax&&f.ajaxTransport(function(c){if(!c.crossDomain||f.support.cors){var d;return{send:function(e,g){var h=c.xhr(),i,j;c.username?h.open(c.type,c.url,c.async,c.username,c.password):h.open(c.type,c.url,c.async);if(c.xhrFields)for(j in c.xhrFields)h[j]=c.xhrFields[j];c.mimeType&&h.overrideMimeType&&h.overrideMimeType(c.mimeType),!c.crossDomain&&!e["X-Requested-With"]&&(e["X-Requested-With"]="XMLHttpRequest");try{for(j in e)h.setRequestHeader(j,e[j])}catch(k){}h.send(c.hasContent&&c.data||null),d=function(a,e){var j,k,l,m,n;try{if(d&&(e||h.readyState===4)){d=b,i&&(h.onreadystatechange=f.noop,ce&&delete cg[i]);if(e)h.readyState!==4&&h.abort();else{j=h.status,l=h.getAllResponseHeaders(),m={},n=h.responseXML,n&&n.documentElement&&(m.xml=n);try{m.text=h.responseText}catch(a){}try{k=h.statusText}catch(o){k=""}!j&&c.isLocal&&!c.crossDomain?j=m.text?200:404:j===1223&&(j=204)}}}catch(p){e||g(-1,p)}m&&g(j,k,m,l)},!c.async||h.readyState===4?d():(i=++cf,ce&&(cg||(cg={},f(a).unload(ce)),cg[i]=d),h.onreadystatechange=d)},abort:function(){d&&d(0,1)}}}});var cj={},ck,cl,cm=/^(?:toggle|show|hide)$/,cn=/^([+\-]=)?([\d+.\-]+)([a-z%]*)$/i,co,cp=[["height","marginTop","marginBottom","paddingTop","paddingBottom"],["width","marginLeft","marginRight","paddingLeft","paddingRight"],["opacity"]],cq;f.fn.extend({show:function(a,b,c){var d,e;if(a||a===0)return this.animate(ct("show",3),a,b,c);for(var g=0,h=this.length;g
=i.duration+this.startTime){this.now=this.end,this.pos=this.state=1,this.update(),i.animatedProperties[this.prop]=!0;for(b in i.animatedProperties)i.animatedProperties[b]!==!0&&(g=!1);if(g){i.overflow!=null&&!f.support.shrinkWrapBlocks&&f.each(["","X","Y"],function(a,b){h.style["overflow"+b]=i.overflow[a]}),i.hide&&f(h).hide();if(i.hide||i.show)for(b in i.animatedProperties)f.style(h,b,i.orig[b]),f.removeData(h,"fxshow"+b,!0),f.removeData(h,"toggle"+b,!0);d=i.complete,d&&(i.complete=!1,d.call(h))}return!1}i.duration==Infinity?this.now=e:(c=e-this.startTime,this.state=c/i.duration,this.pos=f.easing[i.animatedProperties[this.prop]](this.state,c,0,1,i.duration),this.now=this.start+(this.end-this.start)*this.pos),this.update();return!0}},f.extend(f.fx,{tick:function(){var a,b=f.timers,c=0;for(;c-1,k={},l={},m,n;j?(l=e.position(),m=l.top,n=l.left):(m=parseFloat(h)||0,n=parseFloat(i)||0),f.isFunction(b)&&(b=b.call(a,c,g)),b.top!=null&&(k.top=b.top-g.top+m),b.left!=null&&(k.left=b.left-g.left+n),"using"in b?b.using.call(a,k):e.css(k)}},f.fn.extend({position:function(){if(!this[0])return null;var a=this[0],b=this.offsetParent(),c=this.offset(),d=cx.test(b[0].nodeName)?{top:0,left:0}:b.offset();c.top-=parseFloat(f.css(a,"marginTop"))||0,c.left-=parseFloat(f.css(a,"marginLeft"))||0,d.top+=parseFloat(f.css(b[0],"borderTopWidth"))||0,d.left+=parseFloat(f.css(b[0],"borderLeftWidth"))||0;return{top:c.top-d.top,left:c.left-d.left}},offsetParent:function(){return this.map(function(){var a=this.offsetParent||c.body;while(a&&!cx.test(a.nodeName)&&f.css(a,"position")==="static")a=a.offsetParent;return a})}}),f.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},function(a,c){var d=/Y/.test(c);f.fn[a]=function(e){return f.access(this,function(a,e,g){var h=cy(a);if(g===b)return h?c in h?h[c]:f.support.boxModel&&h.document.documentElement[e]||h.document.body[e]:a[e];h?h.scrollTo(d?f(h).scrollLeft():g,d?g:f(h).scrollTop()):a[e]=g},a,e,arguments.length,null)}}),f.each({Height:"height",Width:"width"},function(a,c){var d="client"+a,e="scroll"+a,g="offset"+a;f.fn["inner"+a]=function(){var a=this[0];return a?a.style?parseFloat(f.css(a,c,"padding")):this[c]():null},f.fn["outer"+a]=function(a){var b=this[0];return b?b.style?parseFloat(f.css(b,c,a?"margin":"border")):this[c]():null},f.fn[c]=function(a){return f.access(this,function(a,c,h){var i,j,k,l;if(f.isWindow(a)){i=a.document,j=i.documentElement[d];return f.support.boxModel&&j||i.body&&i.body[d]||j}if(a.nodeType===9){i=a.documentElement;if(i[d]>=i[e])return i[d];return Math.max(a.body[e],i[e],a.body[g],i[g])}if(h===b){k=f.css(a,c),l=parseFloat(k);return f.isNumeric(l)?l:k}f(a).css(c,h)},c,a,arguments.length,null)}}),a.jQuery=a.$=f,typeof define=="function"&&define.amd&&define.amd.jQuery&&define("jquery",[],function(){return f})})(window);
/*** combinestatic: from:lib/js/jquery-utils.js ***/
(function($){!function(A,P,U){A.from=A.from||function(a,f,t){var r=P.slice.apply(a);return f?r.map(f.bind(t)):r};P.includes||Object.defineProperty(P,'includes',{value:function(e,i){return this.slice(i===U?0:i).indexOf(e)>=0}});P.fill||Object.defineProperty(P,'fill',{value:function(v,s,e){var i,l=this.length;s=(s===U?0:s);e=(e===U?l:e);s=(s<0?l-s:s);for(i=s;i");var loremIpsum_src="Lorem ipsum dolor sit amet, consectetur adipiscing elit. In dignissim sem et arcu imperdiet molestie. Curabitur non libero at diam eleifend molestie id ac justo. Sed viverra, est ut mattis faucibus, lacus diam cursus mauris, eu laoreet nibh augue nec ante. Vestibulum id elit sit amet velit pulvinar fermentum et egestas libero. Nullam hendrerit nunc non orci convallis at sodales sem pellentesque. Integer imperdiet porttitor faucibus. Etiam placerat ultrices venenatis. Nam lectus est, posuere at interdum non, ullamcorper sit amet augue. Integer tristique tellus ut eros fermentum molestie sollicitudin tortor molestie. Nam facilisis auctor mattis. Sed et lectus leo. Aliquam erat volutpat. In iaculis vehicula arcu, scelerisque sodales turpis vehicula vel. Quisque eleifend porttitor dolor ac fermentum. Suspendisse nec lectus vel elit euismod vestibulum. ".split(' ');var scrollbarWidth=null,scrollbarHeight=null;var _ua=navigator.userAgent,m,k,i;$.browser={useragent:_ua};var rxs=[['webkit',/AppleWebKit\/([0-9.]+)/,false,false],['ios',/iPhone OS ([\d_]+)/,true,false],['ios',/iPad;(?: U;)? CPU OS ([\d_]+)/,true,false],['macosx',/Mac OS X ([\d_]+)/,false,false],['operamini',/Opera Mini\/([0-9.]+)$/,true,false],['operamobi',/Opera Mobi\/([^ ;]+)$/,true,false],['opera',/^Opera\/.*Version\/([0-9.]+)$/,false,true],['opera',/^Opera ([0-9.]+)/,false,true],['opera',/Opera[\/ ]([0-9.]+)/,false,true],['chrome',/CriOS\/([0-9.]+)/,true,true],['chrome',/Chrome\/([0-9.]+)/,false,true],['firefox',/Fennec\/([0-9.]+)/,true,true],['firefox',/Firefox\/([0-9.]+)/,false,true],['safari',/Version\/([0-9.]+) Safari\/([0-9.]+)/,false,true],['safari',/Safari\/([0-9.]+)/,false,true],['msie',/IEMobile\/([0-9.]+)/,true,true],['msie',/MSIE ([0-9.]+)/,false,true]];$.each(rxs,function(i,v){var k=v[0];var m=_ua.match(v[1]);if(m){$.browser[k]={version:m[1].replace(/_/g,'.'),mobile:v[2]};$.browser.version=$.browser[k].version;$.browser.mobile=v[2];if(v[3]){return false;}}});if($.browser.opera){m=_ua.match(/Opera Mini\/([0-9.]+)/);if(m){$.browser.opera.mini={version:m[1]};$.browser.opera.mobile=true;}}
if($.browser.safari){m=_ua.match(/ Mobile\//);if(m){$.browser.safari.mobile=true;}}
if($.browser.msie){$.browser.msie.backcompat=document.compatMode=='BackCompat';}
$.browser.mozilla=$.browser.firefox;if(m=_ua.match(/Android ([0-9.]+)/)){$.browser.android={mobile:!!_ua.match(/Mobile/),tablet:!(_ua.match(/Mobile/)),version:m[1]};}else if(m=_ua.match(/Android;/)){$.browser.android={mobile:true,firefox:true,version:'unknown'};}
if($.browser.ios){$.browser.iphone=!!_ua.match(/iPhone/);$.browser.ipod=!!_ua.match(/iPod/);$.browser.ipad=!!_ua.match(/iPad/);$.browser.ios.mobile=$.browser.iphone||$.browser.ipod;$.browser.ios.tablet=$.browser.ipad;}
$.browser.mobile=$.browser.iphone||$.browser.ipod||($.browser.android&&$.browser.android.mobile)||($.browser.msie&&$.browser.msie.mobile)||($.browser.firefox&&$.browser.firefox.mobile);$.browser.tablet=$.browser.ipad||($.browser.android&&$.browser.android.tablet);$.browser.desktop=!$.browser.mobile&&!$.browser.tablet;$.browser.touchable=!!('ontouchstart'in window);$.each(['msie','webkit','safari','opera','mozilla','firefox','chrome','opera'],function(i,v){var _b=$.browser[v];if(_b){$('html').addClass('ua-'+v);var _v=(_b.version||$.browser.version).split('.');if(_v){$('html').addClass('ua-'+v+'-'+_v.join('.')).addClass('ua-'+v+'-'+_v[0]+'.'+_v[1]).addClass('ua-'+v+'-'+_v[0]);}}});$.each($.browser,function(k,v){if(!v){delete $.browser[k];}});$.each(['ios','android'],function(i,v){var _b=$.browser[v];if(_b){$('html').addClass('ua-'+v);var _v=$.browser[v].version.split('.');if(_v){$('html').addClass('ua-'+v+'-'+_v.join('.')).addClass('ua-'+v+'-'+_v[0]+'.'+_v[1]).addClass('ua-'+v+'-'+_v[0]);}}});$.browser.cssRound=function(v){return Math.round(v);};if($.browser.webkit){$.browser.cssRound=function(v){return Math.floor(v+0.01);};}else if($.browser.firefox){$.browser.cssRound=function(v){return Math.floor(v+(1-0.49166));};}else if($.browser.msie){$.browser.cssRound=function(v){return Math.floor(v);};}
if(!('console'in window)){window.console={log:$.noop,error:$.noop,warn:$.noop,info:$.noop};}else if(typeof window.console.log!='function'){var _console=window.console;window.console={};$.each(['log','error','warn','info'],function(i,v){(function(method){var org=_console[method];window.console[method]=function(){return org(Array.prototype.slice.apply(arguments).join(', '));};})(v);});}
$(document).ready(function(){var $div=$('#_dpi')||$('').attr('id','_dpi').css({position:'absolute',width:'1in',height:'0',padding:0}).appendTo('body');$.browser.dpi=$div.width();});$(document).ready(function(){var dummy_console=$('textarea#console');if(dummy_console[0]){var dump=function(){var args=Array.prototype.slice.apply(arguments);return $.map(args,function(v){if(v===window)return'[Window]';if($.isXMLDoc(v))return'[Node:'+dumpHTMLElement(v)+']';if($.isPlainObject)return($.toJSON?$.toJSON(v):''+v);return""+v;}).join(',');};$.each([['log',''],['error','\nERR: '],['warn','WARN: '],['info','INFO: ']],function(i,v){(function(method){var lead=method[1],method=method[0],org=window.console[method];window.console[method]=function(){var args=Array.prototype.slice.apply(arguments);dummy_console.val(dummy_console.val()+lead+dump.apply(this,args)+'\n').scrollTop(100000);return org.apply(console,arguments);};})(v);});console.log('--- start console ---');}});$.extend({_log:function(){if('console'in window){console.log.apply(console,arguments);}},_error:function(){if('console'in window){console.error.apply(console,[(new Error()).stack].concat(arguments));}},_typeOf_constructors:{array:(new Array()).constructor,date:(new Date()).constructor,regexp:(new RegExp()).constructor,string:(new String()).constructor,number:(new Number()).constructor,boolean:(new Boolean()).constructor},typeOf:$.type||function(v){if(v===null){return'null';}
var t=typeof(v);if(t==='object'){for(var k in $._typeOf_constructors){if(v.constructor===$._typeOf_constructors[k]){return k;}}
return'object';}
return t;},min:function(){var ret=arguments[0];Array.prototype.forEach.call(arguments,function(v){if(v===undefined||v===null){return;}
if(ret>v){ret=v;}});return ret;},max:function(){var ret=arguments[0];Array.prototype.forEach.call(arguments,function(v){if(v===undefined||v===null){return;}
if(ret
0&&remain<0){clearInterval(_t);_d.resolve('timeout');}else if((ret=c())!==true){clearInterval(_t);_d.resolve(ret);}
remain--;},interval);}}));},poll:function(func,timeout,interval){return $.pollWith([],null,func,timeout,interval);},resolve:function(obj,str,val){var bits=str.split('.'),bit,settable=false;var curobj=obj;var curname='';while(bit=bits.shift()){if(curobj===undefined){throw new Error('ResolveError: obj is undefined:'+curname);}
curname=curname+'.'+bit;var res=bit.match(/^([a-zA-Z0-9_]+)(\(\))?(\[(\d+)\])?/);var name=res[1];var isfunc=res[2]=='()';var isarray=(res[3]!=undefined)&&(res[3]!='');var arraynum=parseInt(res[4],10);if(isfunc||isarray){if(curobj[name]===undefined){throw new Error('ResolveError: property is undefined:'+curname);}
if(isfunc){settable=false;if(curobj[name].call===undefined){throw new Error('ResolveError:property is not callable:'+curname);}
curobj=curobj[name].call(curobj);}else{settable=true;if(curobj[name]===undefined){throw new Error('ResolveError:undefined property:'+curname);}
curobj=curobj[name][arraynum];}}else{settable=true;curobj=curobj[name];}}
if(val!==undefined){if(settable){eval('(function(obj,v){obj.'+str+' = v;})(obj,val)');}}
return curobj;},lpad:function(chr,len,str,do_cut){if(!do_cut&&str.length>=len){return str;}
return(Array.apply(null,Array(len)).map(function(){return chr;}).join('')+str).splice(-len);},parseISO8601:function(str){var p=str.match(/(\d{4})(?:-(\d{2})(?:-(\d{2}))?)?T(\d{2})(?::(\d{2})(?::(\d{2})(?:\.(\d+))?)?)(Z|([+-]\d{2})(?::?(\d{2}))?)/);if(p===null){throw new Error('ISO8601ParseError','Invalid ISO8601 DateTime : '+str);}
for(var i=0;idate.getTime())?options.suffixes[0]:options.suffixes[1];var delta=Math.floor(Math.abs((options.now.getTime()-date.getTime())/1000));for(var i=0,l=options.thresholds.length;i0){return Math.max(1,Math.floor(delta/th[1]))+th[2]+suffix;}else{return th[2];}}}
return $.dateformat(date,options.dateformat);},calcAge:function(birthday_str){var _birth=parseInt(birthday_str.replace(/[-\/]/g,''));var _today=parseInt($.dateformat(new Date(),'yyyyMMdd'));return parseInt((_today-_birth)/10000);},numformat:{comma3:function(v){if(!isFinite(v)||isNaN(v)){return v;}
if(v<1000&&v>-1000){return new String(v);}
v=(new String(v)).match(/^([-+]?)(\d+)(\.\d+)?$/);v[2]=v[2].replace(/\B(?=(?:\d{3})+(?!\d))/g,',');v[3]=v[3]===undefined?'':v[3];return v[1]+v[2]+v[3];},round:function(v,pos,pad0){pad0=(pad0===undefined)?true:pad0;pos=(pos===undefined)?0:pos;var ret=v;if(pos<0){ret=Math.round(v*Math.pow(10,-pos))/Math.pow(10,-pos);}else{ret=Math.round(v/Math.pow(10,pos))*Math.pow(10,pos);}
if(pad0&&pos<0){ret=ret.toFixed(-pos);}
return ret;},kilo:function(v,use_si){return $.numformat.round(v/(use_si?1000:1024),-2,false);},mega:function(v,use_si){return $.numformat.round(v/(use_si?1000*1000:1024*1024),-2,false);},tera:function(v,use_si){return $.numformat.round(v/(use_si?1000*1000*1000:1024*1024*1024),-2,false);},shorten:function(v,use_si){var a=Math.abs(v),n=v<0?-1:1,u=use_si?1000:1024,r;if(a');var css=$('head').children(':last');css.attr({'href':href,'rel':'stylesheet'});return $('head').children(':last');},unloadCss:function(elem){if($.typeOf(elem)==='string'){elem=$('head link[rel="stylesheet"][href="'+elem+'"]');}
elem.remove();},setStyle:function(style,id){if(!id===undefined){if(!$('#'+id).is('style')){console.error('$.setStyle:#'+id+' is not ');var $exists=$('#'+id);if($exists[0]){$exists.removeAttr('id');$new.insertAfter($exists);$exists.remove();}else{$new.appendTo($('head'));}
return $new;},removeStyle:function(target){if(!id_or_$style_elm instanceof $){id_or_$style_elm=$('#'+id_or_$style_elm);}
if(id_or_$style_elm.is('style')){id_or_$style_elm.remove();}},getScrollbarWidth:function(){if(scrollbarWidth!==null){return scrollbarWidth;}
var div=$('').css({position:'absolute',top:'-100px',left:'-100px',width:'100px',height:'100px',overflowY:'scroll'}).appendTo('body');scrollbarWidth=100-div[0].clientWidth;div.remove();return scrollbarWidth;},getScrollbarHeight:function(){if(scrollbarHeight!==null){return scrollbarHeight;}
var div=$('
').css({position:'absolute',top:'-100px',left:'-100px',width:'100px',height:'100px',overflowX:'scroll'}).appendTo('body');scrollbarHeight=100-div[0].clientHeight;div.remove();return scrollbarHeight;},redraw:function(func){$('body').redraw(func);},arrayMap:function(array,key,ignore_null){ignore_null=ignore_null===undefined?true:ignore_null;var ret={};$.each(array,function(i,v){if(ignore_null&&v==null){return;}
if(key in v){ret[v[key]]=v;}else{throw'arrayMap():object array['+i+'] is not have "'+key+'"';return false;}});return ret;},fontAvailable:function(fontName,teststr){var width,height;var element=$('#_fontavailable');if(!element[0]){element=$(document.createElement('span')).attr('id','_fontavailable').css({'visibility':'hidden','position':'absolute','top':'-10000px','left':'-10000px'}).html('abcdefghijklmnopqrstuvwxyz'+(teststr||'')).appendTo(document.body);}
width=element.css('font-family','__FAKEFONT__').width();height=element.height();element.css('font-family',fontName);return width!==element.width()||height!==element.height();},createOrGet:function(selector,generate_func,context){var $ret=$(selector,context);if($ret[0]){return $ret;}
$ret=generate_func(context);if(!$ret.is(selector)){console.error('$.createOrGet():generate_func is not "'+selector+'"');}
return $ret;},toBase:function(num,base){var chars,type=$.type(base),use_chars=false;if(type=='number'){chars='01234567890abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ';}else if(type=='string'){chars=base;base=chars.length;use_chars=true;}else{throw new Error('invalid base (number or string):'+base);}
if(base<=36&&!use_chars){return Number(num).toString(base);}
var is_negative=num<0;for(var str='',num=Math.abs(num);num>0;num=Math.floor(num/base)){str=chars[num%base]+str;}
return(is_negative?'-':'')+str;},generateUUID4:function(base){if(base<2||base>62){throw new Error('invalid base (2 to 62):'+base);}
base=base||16;return'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g,function(c){var r=Math.random()*16|0,v=c=='x'?r:(r&0x3|0x8);return v.toString(16)}).split('-').map(function(v){return $.toBase(parseInt(v,16),base);}).join('-');},});var _imgtest=$('
![]()
')[0];_imgtest='naturalWidth'in _imgtest?0:'runtimeStyle'in _imgtest?1:2;function dumpHTMLElement(v){if(v===window)return'Window';if(v.nodeName)return v.nodeName+(v.id?'#'+v.id:'')+(v.className?('.'+v.className.split(/\s+/).join('.')):'');return""+v;};var _toString=$.fn.toString;$.fn.extend({events:function(callback,type){return $(this).each(function(){var root=this,elm=root;while(elm){var evs=$._data(elm).events;if(!evs){elm=elm.parentNode;continue;}
Object.keys(evs).forEach(function(name){if(type&&type!=name){return;}
evs[name].forEach(function(evd){if(elm!=root){if(!evd.selector){return;}
if(!$(root).is(evd.selector,elm)){return;}}
(callback||console.info)(elm,evd);})});elm=elm.parentNode;}});},csses:function(properties_array){var $elm=this,ret={};properties_array.forEach(function(prop){ret[prop]=$elm.css(prop);});return ret;},assureUniqId:function(prefix,context){prefix=prefix||'asuq-';return $(this).each(function(){var org_id=$(this).attr('id');if(org_id){if($('[id]',context).filter(function(){return this.id==org_id}).length>1){console.error('assureUniqId:duplicated id is found:'+org_id,this);$(this).attr('data-duplicated-id',org_id);}else{return;}}
$(this).attr('id',prefix+$.generateUUID4(62));});},reverse:[].reverse,spaceless:function(){return $(this).each(function(){$(this).contents().filter(function(){if(this.nodeType==3){return/^\s*$/.test(this.textContent);}
return false;}).remove();});},bindFirst:function(name,fn){this.on(name,fn);this.each(function(){var handlers=$._data(this,'events')[name.split('.')[0]];var handler=handlers.pop();handlers.splice(0,0,handler);});},toString:function(){if(this[0]){return'[object jQuery:'+this.selector+':['+this.map(function(i,v){return dumpHTMLElement(v);}).toArray().join(',')+']]';}
return _toString.call(this)+'';},tagName:function(){return this.nodeName;},outerHTML:function(s){if(s){this.before(s);return s.append(this);}else{return $('
').append(this.clone()).html();}},innerHTML:function(html){if(arguments.length==0){return this.html();}
this[0].innerHTML=html;return this;},naturalSize:function(){var img=this[0];if(img.nodeName!=="IMG"){return null;}
if(!img.src){return null;}
if(img.complete===undefined||img.readyState=='uninitialized'){return false;}
var w,h;if(_imgtest==0){w=img.naturalWidth;h=img.naturalHeight;}else if(_imgtest==1){var img2=new Image;img2.src=img.src;w=img2.width;h=img2.height;}else{var ow=img.width,oh=img.height;img.removeAttribute('width');img.removeAttribute('height');w=img.width;h=img.height;img.width=ow;img.height=oh;}
if(img.complete==true&&w===0){return null;}
return(w===0||w===undefined)?false:{elm:this,src:this.attr('src'),width:w,height:h};},imagesLoaded:function(func,timeout){timeout=(timeout===undefined)?30:timeout;var $images=$(this).find('img[src]').add($(this).filter('img[src]')).addClass('img_loading');var _d=$.Deferred(function(_d){var _ds=[];$images.each(function(){var _d=$.Deferred();_ds.push(_d);var $img=$(this);if($img.naturalSize()){$img.removeClass('img_loading');_d.resolve($img.naturalSize());}else{$img.one('load.imagesLoaded',function(){$.poll(function(){var size=$img.naturalSize();return size===false;},-1,20).always(function(){$img.removeClass('img_loading');_d.resolve($img.naturalSize());});}).one('error.imagesLoaded',function(){_d.resolve({'error ':arguments});$img.removeClass('img_loading').addClass('img_load_error');});if($img[0].complete||($.browser.msie&&$.browser.version<9)){$img.trigger('load');}}});$.when.apply(null,_ds).always(function(){func&&func.call(this,$images);_d.resolve(arguments);});});return func?$images:_d;},redraw:function(func){return this.hide(0,function(){$(this).show();func&&func($(this));});},overflowedX:function(){var ret=(this[0].clientWidth
').css({'width':'1em','height':'1em','line-height':'1em','padding':0,'position':'absolute'}).appendTo('body');$tmp.appendTo(this).show();var ret=$tmp[0].offsetWidth;$tmp.appendTo('body').hide();return ret;},adjustFontSizeNoWrap:function(){this.each(function(){var $this=$(this).wrapInner('');var $wrapped=$this.children('div').css({'white-space':'nowrap','padding':0,'margin':0,'width':'auto','font-size':'inherit','letter-spacing':'inherit'});var ratio=$wrapped[0].clientWidth/$wrapped[0].scrollWidth;var fs=Math.floor($this.getFontSize()*ratio);if(ratio<1){$this.css('font-size',fs+'px');console.log('adjustFontSize():adjusted by ratio:'+$this+':'+fs);}
while(fs>9&&$wrapped.css('white-space','normal').height()!=$wrapped.css('white-space','wrapped').height()){fs=Math.floor(fs*0.9);$wrapped.css('font-size',fs+'px');}
console.log('adjustFontSize():adjusted by resize:'+$this+':'+fs);$wrapped.contents().unwrap();});return this;},scrollIntoView:function(opts){var o=this.offset();if(!o){return this;}
opts=$.extend({margin:15},opts);var margin=opts.margin;var container=window;var ct=$(container).scrollTop(),ch=container.clientHeight||$(container).height(),cb=ct+ch;var t=this.offset().top,h=this.outerHeight(),b=t+h;var nt=ct;if(t>cb){nt=b-ch+margin;ct=nt;}
if(b').addClass(className).appendTo(this.$elem.offsetParent());}
var css=getMetrics($elem);mask=mask.clone();if(opts.html){mask.append($(opts.html));}
mask.css($.extend(opts.css,{opacity:opts.opacity,background:opts.background},css)).appendTo(this.$elem.offsetParent());$elem.on('changemetrics.mask',function(){mask.css($.extend(opts.css,{opacity:opts.opacity,background:opts.background},css=getMetrics($(this))));});proc&&proc.call&&proc.call(this,mask);this._org_style=$elem.attr('style');this._org_position=$elem.css('position');if(this._org_position=='static'){$elem.css('position','relative');}
this._org_display=$elem.css('display');if(this._org_display=='inline'){$elem.css('display','inline-block');}
mask.show();this.$mask=mask;this.is_shown=true;},hide:function(opts,proc){if(!this.is_shown){return;}
this.$elem.off('changemetrics.mask');opts=$.extend(this.opts,opts);this.$elem.css('position',this._org_position);this.$elem.css('display',this._org_display);if(this._org_style){this.$elem.attr('style',this._org_style);}else{this.$elem.removeAttr('style');}
this.$elem.removeClass('masked');this.$mask.hide();this.is_shown=false;},destroy:function(){this.$elem.off('changemetrics.mask');this.hide();this.$mask&&this.$mask.remove();this.$elem.removeData('mask').removeClass('masked');}};$.fn.mask=function(opts,proc){if($.isFunction(opts)){proc=opts;opts={};}
return this.each(function(){var $this=$(this),data=$this.data('mask'),_opts=$.extend({},$.fn.mask.defaults,$this.data(),typeof opts=='object'&&opts);if(!data)$this.data('mask',(data=new Mask(this,_opts)));if(typeof opts=='string')data[opts](_opts,proc);else if(_opts.show)data.show(_opts,proc);});};$.fn.mask.defaults={show:true,className:'mask',css:{'display':'block','position':'absolute','-webkit-box-sizing':'border-box','-moz-box-sizing':'border-box','-mz-box-sizing':'border-box','-o-box-sizing':'border-box','box-sizing':'border-box'},html:''};$.doLater(function(){var s=$.setStyle('#cssstest { margin:10px; }'),t=$('').appendTo($('body'));if(t.css('margin')!=t.css('margin-left')){function mapSubProp(prop,repl,repls){return $.closure([prop,repl],null,function(prop,sub,elem,computed,extra){$elem=$(elem);return $.map(repls,function(v){return $elem.css(prop.replace(repl,v));}).join(' ');});}
function mapDirections(prop){return mapSubProp(prop,'Direction',['Top','Right','Bottom','Left']);}
$.each({'margin':mapDirections('marginDirection'),'padding':mapDirections('paddingDirection'),'borderWidth':mapDirections('borderDirectionWidth'),'borderColor':mapDirections('borderDirectionColor'),'borderStyle':mapDirections('borderDirectionStyle'),'border':mapSubProp('borderSub','Sub',['Width','Color','Style']),'borderTop':mapDirections('borderTopDirection'),'borderRight':mapDirections('borderRightDirection'),'borderBottom':mapDirections('borderBottomDirection'),'borderLeft':mapDirections('borderLeftDirection'),'borderImage':mapSubProp('borderImageSub','Sub',['Source','Slice','Width','Outset','Repeat']),'outline':mapSubProp('outlineSub','Sub',['Color','Style','Width']),'borderRadius':mapSubProp('borderCornerRadius','Corner',['TopLeft','TopRight','BottomRight','BottomLeft']),'font':mapSubProp('fontSub','Sub',['Style','Veriant','Weight','Size','Family']),'background':mapSubProp('backgroundSub','Sub',['Color','Image','Repeat','Attachment','Position']),'listStyle':mapSubProp('listStyleSub','Sub',['Type','Position','Image']),'transition':mapSubProp('transitionSub','Sub',['Property','Duration','TimingFunction','Delay'])},function(k,v){$.cssHooks[k]={get:v,set:$.closure([k],null,function(prop,elem,value){elem.style[k]=value;})};});}
t.remove();s.remove();},10);if($.browser.msie){}
if($.browser.android){$(document).on('focus','input[type="date"]',function(ev){$(this).val($(this).val().replace(/^(\d+)-(\d)-(\d+)$/,'$1-0$2-$3').replace(/^(\d+)-(\d+)-(\d)$/,'$1-$2-0$3'));});}
$.fn.watch=function(id,opts){opts=$.extend({interval:1000/30,watch:function(){},onchange:function(id,mode,old,cur){}},opts);return this.each(function(){var _self=this;var o=opts.watch.call(_self),n,m=0,s=0;$(_self).data('watch_t',setInterval(function(){if((n=opts.watch.call(_self))!==o){if(m==0){m=1;s=n;opts.onchange.call(_self,id,'start',o,n);}else{opts.onchange.call(_self,id,'change',o,n,s);}
o=n;}else{if(m==1){m=0;opts.onchange.call(_self,id,'end',s,n);}}},opts.interval));});};$.fn.unwatch=function(id){return this.each(function(){clearInterval($(this).data('watch_t'));});};function watchScrollTop(){return $(this).scrollTop();}
function watchSize(){var t=$(this);return t.width()+','+t.height();}
function watchOverflow(){return $(this).innerHeight()
').attr('id','autogrow-ta-mirror-div').css({visibility:'hidden',opacity:0,position:'absolute',top:'-9999px',left:'-9999px',zIndex:-1}).appendTo('body');}
var styles={};for(var i=0,style;style=mirrorStyles[i];i++){styles[style]=$ta.css(style);}
$mirror.css(styles).css({'height':'auto','overflow-y':$ta[0].clientWidth'))[_hfunc]();var maxHeight=$mirror.html(new Array(opts.maxRows).join('A
'))[_hfunc]();$ta.css({minHeight:+'px',maxHeight:+'px'});$mirror.html(text.replace(/&/g,'&').replace(/').replace(/
$/,'
').replace(/^$/,' '));if(DEBUG){$ta.css({background:'#ccf',borderRadius:0});$mirror.css({visibility:'visible',opacity:'1',zIndex:'1000',background:'#fcc',top:($ta.offset().top+$ta.outerHeight())+'px',left:($ta.offset().left)+'px',});}
var new_height=$mirror[_hfunc]();var old_height=$ta[_hfunc]();var vScrollbarHeight=0;if($ta.css('overflow-x')=='scroll'||($ta.css('overflow-x')=='auto'&&$ta.overflowedX())){vScrollbarHeight=$.getScrollbarHeight();}
if(opts.autoShrink){}else{if(new_height+vScrollbarHeightoffsets.left+offsets.width-1.3*offsets.fs&&ev.clientY
This article is a sponsored article by
''.