(function(n){typeof define=="function"&&define.amd?define(["jquery"],n):typeof exports=="object"?n(require("jquery")):n(jQuery)})(function(n){var i=0,t=Array.prototype.slice,r;n.cleanData=function(t){return function(i){for(var r,u,f=0;(u=i[f])!=null;f++)try{r=n._data(u,"events");r&&r.remove&&n(u).triggerHandler("remove")}catch(e){}t(i)}}(n.cleanData);n.widget=function(t,i,r){var s,f,u,o,h={},e=t.split(".")[0];return t=t.split(".")[1],s=e+"-"+t,r||(r=i,i=n.Widget),n.expr[":"][s.toLowerCase()]=function(t){return!!n.data(t,s)},n[e]=n[e]||{},f=n[e][t],u=n[e][t]=function(n,t){if(!this._createWidget)return new u(n,t);arguments.length&&this._createWidget(n,t)},n.extend(u,f,{version:r.version,_proto:n.extend({},r),_childConstructors:[]}),o=new i,o.options=n.widget.extend({},o.options),n.each(r,function(t,r){if(!n.isFunction(r)){h[t]=r;return}h[t]=function(){var n=function(){return i.prototype[t].apply(this,arguments)},u=function(n){return i.prototype[t].apply(this,n)};return function(){var i=this._super,f=this._superApply,t;return this._super=n,this._superApply=u,t=r.apply(this,arguments),this._super=i,this._superApply=f,t}}()}),u.prototype=n.widget.extend(o,{widgetEventPrefix:f?o.widgetEventPrefix||t:t},h,{constructor:u,namespace:e,widgetName:t,widgetFullName:s}),f?(n.each(f._childConstructors,function(t,i){var r=i.prototype;n.widget(r.namespace+"."+r.widgetName,u,i._proto)}),delete f._childConstructors):i._childConstructors.push(u),n.widget.bridge(t,u),u};n.widget.extend=function(i){for(var e=t.call(arguments,1),f=0,o=e.length,r,u;f<o;f++)for(r in e[f])u=e[f][r],e[f].hasOwnProperty(r)&&u!==undefined&&(i[r]=n.isPlainObject(u)?n.isPlainObject(i[r])?n.widget.extend({},i[r],u):n.widget.extend({},u):u);return i};n.widget.bridge=function(i,r){var u=r.prototype.widgetFullName||i;n.fn[i]=function(f){var s=typeof f=="string",o=t.call(arguments,1),e=this;return f=!s&&o.length?n.widget.extend.apply(null,[f].concat(o)):f,s?this.each(function(){var t,r=n.data(this,u);return f==="instance"?(e=r,!1):r?!n.isFunction(r[f])||f.charAt(0)==="_"?n.error("no such method '"+f+"' for "+i+" widget instance"):(t=r[f].apply(r,o),t!==r&&t!==undefined?(e=t&&t.jquery?e.pushStack(t.get()):t,!1):void 0):n.error("cannot call methods on "+i+" prior to initialization; attempted to call method '"+f+"'")}):this.each(function(){var t=n.data(this,u);t?(t.option(f||{}),t._init&&t._init()):n.data(this,u,new r(f,this))}),e}};n.Widget=function(){};n.Widget._childConstructors=[];n.Widget.prototype={widgetName:"widget",widgetEventPrefix:"",defaultElement:"<div>",options:{disabled:!1,create:null},_createWidget:function(t,r){r=n(r||this.defaultElement||this)[0];this.element=n(r);this.uuid=i++;this.eventNamespace="."+this.widgetName+this.uuid;this.options=n.widget.extend({},this.options,this._getCreateOptions(),t);this.bindings=n();this.hoverable=n();this.focusable=n();r!==this&&(n.data(r,this.widgetFullName,this),this._on(!0,this.element,{remove:function(n){n.target===r&&this.destroy()}}),this.document=n(r.style?r.ownerDocument:r.document||r),this.window=n(this.document[0].defaultView||this.document[0].parentWindow));this._create();this._trigger("create",null,this._getCreateEventData());this._init()},_getCreateOptions:n.noop,_getCreateEventData:n.noop,_create:n.noop,_init:n.noop,destroy:function(){this._destroy();this.element.unbind(this.eventNamespace).removeData(this.widgetFullName).removeData(n.camelCase(this.widgetFullName));this.widget().unbind(this.eventNamespace).removeAttr("aria-disabled").removeClass(this.widgetFullName+"-disabled ui-state-disabled");this.bindings.unbind(this.eventNamespace);this.hoverable.removeClass("ui-state-hover");this.focusable.removeClass("ui-state-focus")},_destroy:n.noop,widget:function(){return this.element},option:function(t,i){var e=t,r,u,f;if(arguments.length===0)return n.widget.extend({},this.options);if(typeof t=="string")if(e={},r=t.split("."),t=r.shift(),r.length){for(u=e[t]=n.widget.extend({},this.options[t]),f=0;f<r.length-1;f++)u[r[f]]=u[r[f]]||{},u=u[r[f]];if(t=r.pop(),arguments.length===1)return u[t]===undefined?null:u[t];u[t]=i}else{if(arguments.length===1)return this.options[t]===undefined?null:this.options[t];e[t]=i}return this._setOptions(e),this},_setOptions:function(n){for(var t in n)this._setOption(t,n[t]);return this},_setOption:function(n,t){return this.options[n]=t,n==="disabled"&&(this.widget().toggleClass(this.widgetFullName+"-disabled",!!t),t&&(this.hoverable.removeClass("ui-state-hover"),this.focusable.removeClass("ui-state-focus"))),this},enable:function(){return this._setOptions({disabled:!1})},disable:function(){return this._setOptions({disabled:!0})},_on:function(t,i,r){var f,u=this;typeof t!="boolean"&&(r=i,i=t,t=!1);r?(i=f=n(i),this.bindings=this.bindings.add(i)):(r=i,i=this.element,f=this.widget());n.each(r,function(r,e){function o(){if(t||u.options.disabled!==!0&&!n(this).hasClass("ui-state-disabled"))return(typeof e=="string"?u[e]:e).apply(u,arguments)}typeof e!="string"&&(o.guid=e.guid=e.guid||o.guid||n.guid++);var s=r.match(/^([\w:-]*)\s*(.*)$/),h=s[1]+u.eventNamespace,c=s[2];c?f.delegate(c,h,o):i.bind(h,o)})},_off:function(n,t){t=(t||"").split(" ").join(this.eventNamespace+" ")+this.eventNamespace;n.unbind(t).undelegate(t)},_delay:function(n,t){function r(){return(typeof n=="string"?i[n]:n).apply(i,arguments)}var i=this;return setTimeout(r,t||0)},_hoverable:function(t){this.hoverable=this.hoverable.add(t);this._on(t,{mouseenter:function(t){n(t.currentTarget).addClass("ui-state-hover")},mouseleave:function(t){n(t.currentTarget).removeClass("ui-state-hover")}})},_focusable:function(t){this.focusable=this.focusable.add(t);this._on(t,{focusin:function(t){n(t.currentTarget).addClass("ui-state-focus")},focusout:function(t){n(t.currentTarget).removeClass("ui-state-focus")}})},_trigger:function(t,i,r){var u,f,e=this.options[t];if(r=r||{},i=n.Event(i),i.type=(t===this.widgetEventPrefix?t:this.widgetEventPrefix+t).toLowerCase(),i.target=this.element[0],f=i.originalEvent,f)for(u in f)u in i||(i[u]=f[u]);return this.element.trigger(i,r),!(n.isFunction(e)&&e.apply(this.element[0],[i].concat(r))===!1||i.isDefaultPrevented())}};n.each({show:"fadeIn",hide:"fadeOut"},function(t,i){n.Widget.prototype["_"+t]=function(r,u,f){typeof u=="string"&&(u={effect:u});var o,e=u?u===!0||typeof u=="number"?i:u.effect||i:t;u=u||{};typeof u=="number"&&(u={duration:u});o=!n.isEmptyObject(u);u.complete=f;u.delay&&r.delay(u.delay);o&&n.effects&&n.effects.effect[e]?r[t](u):e!==t&&r[e]?r[e](u.duration,u.easing,f):r.queue(function(i){n(this)[t]();f&&f.call(r[0]);i()})}});r=n.widget});!function(n){"use strict";var t=function(n,i){var r=/[^\w\-\.:]/.test(n)?new Function(t.arg+",tmpl","var _e=tmpl.encode"+t.helper+",_s='"+n.replace(t.regexp,t.func)+"';return _s;"):t.cache[n]=t.cache[n]||t(t.load(n));return i?r(i,t):function(n){return r(n,t)}};t.cache={};t.load=function(n){return document.getElementById(n).innerHTML};t.regexp=/([\s'\\])(?!(?:[^{]|\{(?!%))*%\})|(?:\{%(=|#)([\s\S]+?)%\})|(\{%)|(%\})/g;t.func=function(n,t,i,r,u,f){return t?{"\n":"\\n","\r":"\\r","\t":"\\t"," ":" "}[t]||"\\"+t:i?"="===i?"'+_e("+r+")+'":"'+("+r+"==null?'':"+r+")+'":u?"';":f?"_s+='":void 0};t.encReg=/[<>&"'\x00]/g;t.encMap={"<":"&lt;",">":"&gt;","&":"&amp;",'"':"&quot;","'":"&#39;"};t.encode=function(n){return(null==n?"":""+n).replace(t.encReg,function(n){return t.encMap[n]||""})};t.arg="o";t.helper=",print=function(s,e){_s+=e?(s==null?'':s):_e(s);},include=function(s,d){_s+=tmpl(s,d);}";"function"==typeof define&&define.amd?define(function(){return t}):n.tmpl=t}(this);!function(n){"use strict";var t=function(n,i,r){var f,e,u=document.createElement("img");if(u.onerror=i,u.onload=function(){!e||r&&r.noRevoke||t.revokeObjectURL(e);i&&i(t.scale(u,r))},t.isInstanceOf("Blob",n)||t.isInstanceOf("File",n))f=e=t.createObjectURL(n),u._type=n.type;else{if("string"!=typeof n)return!1;f=n;r&&r.crossOrigin&&(u.crossOrigin=r.crossOrigin)}return f?(u.src=f,u):t.readFile(n,function(n){var t=n.target;t&&t.result?u.src=t.result:i&&i(n)})},i=window.createObjectURL&&window||window.URL&&URL.revokeObjectURL&&URL||window.webkitURL&&webkitURL;t.isInstanceOf=function(n,t){return Object.prototype.toString.call(t)==="[object "+n+"]"};t.transformCoordinates=function(){};t.getTransformedOptions=function(n,t){var i,r,u,f,e=t.aspectRatio;if(!e)return t;i={};for(r in t)t.hasOwnProperty(r)&&(i[r]=t[r]);return i.crop=!0,u=n.naturalWidth||n.width,f=n.naturalHeight||n.height,u/f>e?(i.maxWidth=f*e,i.maxHeight=f):(i.maxWidth=u,i.maxHeight=u/e),i};t.renderImageToCanvas=function(n,t,i,r,u,f,e,o,s,h){return n.getContext("2d").drawImage(t,i,r,u,f,e,o,s,h),n};t.hasCanvasOption=function(n){return n.canvas||n.crop||n.aspectRatio};t.scale=function(n,i){i=i||{};var f,e,a,v,o,s,h,c,w,l=document.createElement("canvas"),b=n.getContext||t.hasCanvasOption(i)&&l.getContext,y=n.naturalWidth||n.width,p=n.naturalHeight||n.height,r=y,u=p,k=function(){var n=Math.max((a||r)/r,(v||u)/u);n>1&&(r*=n,u*=n)},d=function(){var n=Math.min((f||r)/r,(e||u)/u);1>n&&(r*=n,u*=n)};return b&&(i=t.getTransformedOptions(n,i),h=i.left||0,c=i.top||0,i.sourceWidth?(o=i.sourceWidth,void 0!==i.right&&void 0===i.left&&(h=y-o-i.right)):o=y-h-(i.right||0),i.sourceHeight?(s=i.sourceHeight,void 0!==i.bottom&&void 0===i.top&&(c=p-s-i.bottom)):s=p-c-(i.bottom||0),r=o,u=s),f=i.maxWidth,e=i.maxHeight,a=i.minWidth,v=i.minHeight,b&&f&&e&&i.crop?(r=f,u=e,w=o/s-f/e,0>w?(s=e*o/f,void 0===i.top&&void 0===i.bottom&&(c=(p-s)/2)):w>0&&(o=f*s/e,void 0===i.left&&void 0===i.right&&(h=(y-o)/2))):((i.contain||i.cover)&&(a=f=f||a,v=e=e||v),i.cover?(d(),k()):(k(),d())),b?(l.width=r,l.height=u,t.transformCoordinates(l,i),t.renderImageToCanvas(l,n,h,c,o,s,0,0,r,u)):(n.width=r,n.height=u,n)};t.createObjectURL=function(n){return i?i.createObjectURL(n):!1};t.revokeObjectURL=function(n){return i?i.revokeObjectURL(n):!1};t.readFile=function(n,t,i){if(window.FileReader){var r=new FileReader;if(r.onload=r.onerror=t,i=i||"readAsDataURL",r[i])return r[i](n),r}return!1};"function"==typeof define&&define.amd?define(function(){return t}):n.loadImage=t}(this),function(n){"use strict";"function"==typeof define&&define.amd?define(["load-image"],n):n(window.loadImage)}(function(n){"use strict";if(window.navigator&&window.navigator.platform&&/iP(hone|od|ad)/.test(window.navigator.platform)){var t=n.renderImageToCanvas;n.detectSubsampling=function(n){var t,i;return n.width*n.height>1048576?(t=document.createElement("canvas"),t.width=t.height=1,i=t.getContext("2d"),i.drawImage(n,-n.width+1,0),0===i.getImageData(0,0,1,1).data[3]):!1};n.detectVerticalSquash=function(n,t){var o,u,f,i,s,r=n.naturalHeight||n.height,e=document.createElement("canvas"),h=e.getContext("2d");for(t&&(r/=2),e.width=1,e.height=r,h.drawImage(n,0,0),o=h.getImageData(0,0,1,r).data,u=0,f=r,i=r;i>u;)s=o[4*(i-1)+3],0===s?f=i:u=i,i=f+u>>1;return i/r||1};n.renderImageToCanvas=function(i,r,u,f,e,o,s,h,c,l){if("image/jpeg"===r._type){var v,y,p,w,k=i.getContext("2d"),b=document.createElement("canvas"),a=1024,d=b.getContext("2d");if(b.width=a,b.height=a,k.save(),v=n.detectSubsampling(r),v&&(u/=2,f/=2,e/=2,o/=2),y=n.detectVerticalSquash(r,v),v||1!==y){for(f*=y,c=Math.ceil(a*c/e),l=Math.ceil(a*l/o/y),h=0,w=0;o>w;){for(s=0,p=0;e>p;)d.clearRect(0,0,a,a),d.drawImage(r,u,f,e,o,-p,-w,e,o),k.drawImage(b,0,0,a,a,s,h,c,l),p+=a,s+=c;w+=a;h+=l}return k.restore(),i}}return t(i,r,u,f,e,o,s,h,c,l)}}}),function(n){"use strict";"function"==typeof define&&define.amd?define(["load-image"],n):n(window.loadImage)}(function(n){"use strict";var t=n.hasCanvasOption,i=n.transformCoordinates,r=n.getTransformedOptions;n.hasCanvasOption=function(i){return t.call(n,i)||i.orientation};n.transformCoordinates=function(t,r){i.call(n,t,r);var u=t.getContext("2d"),f=t.width,e=t.height,o=r.orientation;if(o&&!(o>8))switch(o>4&&(t.width=e,t.height=f),o){case 2:u.translate(f,0);u.scale(-1,1);break;case 3:u.translate(f,e);u.rotate(Math.PI);break;case 4:u.translate(0,e);u.scale(1,-1);break;case 5:u.rotate(.5*Math.PI);u.scale(1,-1);break;case 6:u.rotate(.5*Math.PI);u.translate(0,-e);break;case 7:u.rotate(.5*Math.PI);u.translate(f,-e);u.scale(-1,1);break;case 8:u.rotate(-.5*Math.PI);u.translate(-f,0)}};n.getTransformedOptions=function(t,i){var f,e,u=r.call(n,t,i),o=u.orientation;if(!o||o>8||1===o)return u;f={};for(e in u)u.hasOwnProperty(e)&&(f[e]=u[e]);switch(u.orientation){case 2:f.left=u.right;f.right=u.left;break;case 3:f.left=u.right;f.top=u.bottom;f.right=u.left;f.bottom=u.top;break;case 4:f.top=u.bottom;f.bottom=u.top;break;case 5:f.left=u.top;f.top=u.left;f.right=u.bottom;f.bottom=u.right;break;case 6:f.left=u.top;f.top=u.right;f.right=u.bottom;f.bottom=u.left;break;case 7:f.left=u.bottom;f.top=u.right;f.right=u.top;f.bottom=u.left;break;case 8:f.left=u.bottom;f.top=u.left;f.right=u.top;f.bottom=u.right}return u.orientation>4&&(f.maxWidth=u.maxHeight,f.maxHeight=u.maxWidth,f.minWidth=u.minHeight,f.minHeight=u.minWidth,f.sourceWidth=u.sourceHeight,f.sourceHeight=u.sourceWidth),f}}),function(n){"use strict";"function"==typeof define&&define.amd?define(["load-image"],n):n(window.loadImage)}(function(n){"use strict";var t=window.Blob&&(Blob.prototype.slice||Blob.prototype.webkitSlice||Blob.prototype.mozSlice);n.blobSlice=t&&function(){var n=this.slice||this.webkitSlice||this.mozSlice;return n.apply(this,arguments)};n.metaDataParsers={jpeg:{65505:[]}};n.parseMetaData=function(t,i,r){r=r||{};var f=this,e=r.maxMetaDataSize||262144,u={},o=!(window.DataView&&t&&t.size>=12&&"image/jpeg"===t.type&&n.blobSlice);(o||!n.readFile(n.blobSlice.call(t,0,e),function(t){if(t.target.error)return console.log(t.target.error),void i(u);var s,h,v,c,l=t.target.result,o=new DataView(l),e=2,y=o.byteLength-4,a=e;if(65496===o.getUint16(0)){for(;y>e&&(s=o.getUint16(e),s>=65504&&65519>=s||65534===s);){if(h=o.getUint16(e+2)+2,e+h>o.byteLength){console.log("Invalid meta data: Invalid segment size.");break}if(v=n.metaDataParsers.jpeg[s])for(c=0;c<v.length;c+=1)v[c].call(f,o,e,h,u,r);e+=h;a=e}!r.disableImageHead&&a>6&&(u.imageHead=l.slice?l.slice(0,a):new Uint8Array(l).subarray(0,a))}else console.log("Invalid JPEG file: Missing JPEG marker.");i(u)},"readAsArrayBuffer"))&&i(u)}}),function(n){"use strict";"function"==typeof define&&define.amd?define(["load-image","load-image-meta"],n):n(window.loadImage)}(function(n){"use strict";n.ExifMap=function(){return this};n.ExifMap.prototype.map={Orientation:274};n.ExifMap.prototype.get=function(n){return this[n]||this[this.map[n]]};n.getExifThumbnail=function(n,t,i){var u,r,f;if(!i||t+i>n.byteLength)return void console.log("Invalid Exif data: Invalid thumbnail data.");for(u=[],r=0;i>r;r+=1)f=n.getUint8(t+r),u.push((16>f?"0":"")+f.toString(16));return"data:image/jpeg,%"+u.join("%")};n.exifTagTypes={1:{getValue:function(n,t){return n.getUint8(t)},size:1},2:{getValue:function(n,t){return String.fromCharCode(n.getUint8(t))},size:1,ascii:!0},3:{getValue:function(n,t,i){return n.getUint16(t,i)},size:2},4:{getValue:function(n,t,i){return n.getUint32(t,i)},size:4},5:{getValue:function(n,t,i){return n.getUint32(t,i)/n.getUint32(t+4,i)},size:8},9:{getValue:function(n,t,i){return n.getInt32(t,i)},size:4},10:{getValue:function(n,t,i){return n.getInt32(t,i)/n.getInt32(t+4,i)},size:8}};n.exifTagTypes[7]=n.exifTagTypes[1];n.getExifValue=function(t,i,r,u,f,e){var l,c,h,o,a,v,s=n.exifTagTypes[u];if(!s)return void console.log("Invalid Exif data: Invalid tag type.");if(l=s.size*f,c=l>4?i+t.getUint32(r+8,e):r+8,c+l>t.byteLength)return void console.log("Invalid Exif data: Invalid data offset.");if(1===f)return s.getValue(t,c,e);for(h=[],o=0;f>o;o+=1)h[o]=s.getValue(t,c+o*s.size,e);if(s.ascii){for(a="",o=0;o<h.length&&(v=h[o],"\x00"!==v);o+=1)a+=v;return a}return h};n.parseExifTag=function(t,i,r,u,f){var e=t.getUint16(r,u);f.exif[e]=n.getExifValue(t,i,r,t.getUint16(r+2,u),t.getUint32(r+4,u),u)};n.parseExifTags=function(n,t,i,r,u){var e,o,f;if(i+6>n.byteLength)return void console.log("Invalid Exif data: Invalid directory offset.");if(e=n.getUint16(i,r),o=i+2+12*e,o+4>n.byteLength)return void console.log("Invalid Exif data: Invalid directory size.");for(f=0;e>f;f+=1)this.parseExifTag(n,t,i+2+12*f,r,u);return n.getUint32(o,r)};n.parseExifData=function(t,i,r,u,f){if(!f.disableExif){var o,s,h,e=i+10;if(1165519206===t.getUint32(i+4)){if(e+8>t.byteLength)return void console.log("Invalid Exif data: Invalid segment size.");if(0!==t.getUint16(i+8))return void console.log("Invalid Exif data: Missing byte alignment offset.");switch(t.getUint16(e)){case 18761:o=!0;break;case 19789:o=!1;break;default:return void console.log("Invalid Exif data: Invalid byte alignment marker.")}if(42!==t.getUint16(e+2,o))return void console.log("Invalid Exif data: Missing TIFF marker.");s=t.getUint32(e+4,o);u.exif=new n.ExifMap;s=n.parseExifTags(t,e,e+s,o,u);s&&!f.disableExifThumbnail&&(h={exif:{}},s=n.parseExifTags(t,e,e+s,o,h),h.exif[513]&&(u.exif.Thumbnail=n.getExifThumbnail(t,e+h.exif[513],h.exif[514])));u.exif[34665]&&!f.disableExifSub&&n.parseExifTags(t,e,e+u.exif[34665],o,u);u.exif[34853]&&!f.disableExifGps&&n.parseExifTags(t,e,e+u.exif[34853],o,u)}}};n.metaDataParsers.jpeg[65505].push(n.parseExifData)}),function(n){"use strict";"function"==typeof define&&define.amd?define(["load-image","load-image-exif"],n):n(window.loadImage)}(function(n){"use strict";n.ExifMap.prototype.tags={256:"ImageWidth",257:"ImageHeight",34665:"ExifIFDPointer",34853:"GPSInfoIFDPointer",40965:"InteroperabilityIFDPointer",258:"BitsPerSample",259:"Compression",262:"PhotometricInterpretation",274:"Orientation",277:"SamplesPerPixel",284:"PlanarConfiguration",530:"YCbCrSubSampling",531:"YCbCrPositioning",282:"XResolution",283:"YResolution",296:"ResolutionUnit",273:"StripOffsets",278:"RowsPerStrip",279:"StripByteCounts",513:"JPEGInterchangeFormat",514:"JPEGInterchangeFormatLength",301:"TransferFunction",318:"WhitePoint",319:"PrimaryChromaticities",529:"YCbCrCoefficients",532:"ReferenceBlackWhite",306:"DateTime",270:"ImageDescription",271:"Make",272:"Model",305:"Software",315:"Artist",33432:"Copyright",36864:"ExifVersion",40960:"FlashpixVersion",40961:"ColorSpace",40962:"PixelXDimension",40963:"PixelYDimension",42240:"Gamma",37121:"ComponentsConfiguration",37122:"CompressedBitsPerPixel",37500:"MakerNote",37510:"UserComment",40964:"RelatedSoundFile",36867:"DateTimeOriginal",36868:"DateTimeDigitized",37520:"SubSecTime",37521:"SubSecTimeOriginal",37522:"SubSecTimeDigitized",33434:"ExposureTime",33437:"FNumber",34850:"ExposureProgram",34852:"SpectralSensitivity",34855:"PhotographicSensitivity",34856:"OECF",34864:"SensitivityType",34865:"StandardOutputSensitivity",34866:"RecommendedExposureIndex",34867:"ISOSpeed",34868:"ISOSpeedLatitudeyyy",34869:"ISOSpeedLatitudezzz",37377:"ShutterSpeedValue",37378:"ApertureValue",37379:"BrightnessValue",37380:"ExposureBias",37381:"MaxApertureValue",37382:"SubjectDistance",37383:"MeteringMode",37384:"LightSource",37385:"Flash",37396:"SubjectArea",37386:"FocalLength",41483:"FlashEnergy",41484:"SpatialFrequencyResponse",41486:"FocalPlaneXResolution",41487:"FocalPlaneYResolution",41488:"FocalPlaneResolutionUnit",41492:"SubjectLocation",41493:"ExposureIndex",41495:"SensingMethod",41728:"FileSource",41729:"SceneType",41730:"CFAPattern",41985:"CustomRendered",41986:"ExposureMode",41987:"WhiteBalance",41988:"DigitalZoomRatio",41989:"FocalLengthIn35mmFilm",41990:"SceneCaptureType",41991:"GainControl",41992:"Contrast",41993:"Saturation",41994:"Sharpness",41995:"DeviceSettingDescription",41996:"SubjectDistanceRange",42016:"ImageUniqueID",42032:"CameraOwnerName",42033:"BodySerialNumber",42034:"LensSpecification",42035:"LensMake",42036:"LensModel",42037:"LensSerialNumber",0:"GPSVersionID",1:"GPSLatitudeRef",2:"GPSLatitude",3:"GPSLongitudeRef",4:"GPSLongitude",5:"GPSAltitudeRef",6:"GPSAltitude",7:"GPSTimeStamp",8:"GPSSatellites",9:"GPSStatus",10:"GPSMeasureMode",11:"GPSDOP",12:"GPSSpeedRef",13:"GPSSpeed",14:"GPSTrackRef",15:"GPSTrack",16:"GPSImgDirectionRef",17:"GPSImgDirection",18:"GPSMapDatum",19:"GPSDestLatitudeRef",20:"GPSDestLatitude",21:"GPSDestLongitudeRef",22:"GPSDestLongitude",23:"GPSDestBearingRef",24:"GPSDestBearing",25:"GPSDestDistanceRef",26:"GPSDestDistance",27:"GPSProcessingMethod",28:"GPSAreaInformation",29:"GPSDateStamp",30:"GPSDifferential",31:"GPSHPositioningError"};n.ExifMap.prototype.stringValues={ExposureProgram:{0:"Undefined",1:"Manual",2:"Normal program",3:"Aperture priority",4:"Shutter priority",5:"Creative program",6:"Action program",7:"Portrait mode",8:"Landscape mode"},MeteringMode:{0:"Unknown",1:"Average",2:"CenterWeightedAverage",3:"Spot",4:"MultiSpot",5:"Pattern",6:"Partial",255:"Other"},LightSource:{0:"Unknown",1:"Daylight",2:"Fluorescent",3:"Tungsten (incandescent light)",4:"Flash",9:"Fine weather",10:"Cloudy weather",11:"Shade",12:"Daylight fluorescent (D 5700 - 7100K)",13:"Day white fluorescent (N 4600 - 5400K)",14:"Cool white fluorescent (W 3900 - 4500K)",15:"White fluorescent (WW 3200 - 3700K)",17:"Standard light A",18:"Standard light B",19:"Standard light C",20:"D55",21:"D65",22:"D75",23:"D50",24:"ISO studio tungsten",255:"Other"},Flash:{0:"Flash did not fire",1:"Flash fired",5:"Strobe return light not detected",7:"Strobe return light detected",9:"Flash fired, compulsory flash mode",13:"Flash fired, compulsory flash mode, return light not detected",15:"Flash fired, compulsory flash mode, return light detected",16:"Flash did not fire, compulsory flash mode",24:"Flash did not fire, auto mode",25:"Flash fired, auto mode",29:"Flash fired, auto mode, return light not detected",31:"Flash fired, auto mode, return light detected",32:"No flash function",65:"Flash fired, red-eye reduction mode",69:"Flash fired, red-eye reduction mode, return light not detected",71:"Flash fired, red-eye reduction mode, return light detected",73:"Flash fired, compulsory flash mode, red-eye reduction mode",77:"Flash fired, compulsory flash mode, red-eye reduction mode, return light not detected",79:"Flash fired, compulsory flash mode, red-eye reduction mode, return light detected",89:"Flash fired, auto mode, red-eye reduction mode",93:"Flash fired, auto mode, return light not detected, red-eye reduction mode",95:"Flash fired, auto mode, return light detected, red-eye reduction mode"},SensingMethod:{1:"Undefined",2:"One-chip color area sensor",3:"Two-chip color area sensor",4:"Three-chip color area sensor",5:"Color sequential area sensor",7:"Trilinear sensor",8:"Color sequential linear sensor"},SceneCaptureType:{0:"Standard",1:"Landscape",2:"Portrait",3:"Night scene"},SceneType:{1:"Directly photographed"},CustomRendered:{0:"Normal process",1:"Custom process"},WhiteBalance:{0:"Auto white balance",1:"Manual white balance"},GainControl:{0:"None",1:"Low gain up",2:"High gain up",3:"Low gain down",4:"High gain down"},Contrast:{0:"Normal",1:"Soft",2:"Hard"},Saturation:{0:"Normal",1:"Low saturation",2:"High saturation"},Sharpness:{0:"Normal",1:"Soft",2:"Hard"},SubjectDistanceRange:{0:"Unknown",1:"Macro",2:"Close view",3:"Distant view"},FileSource:{3:"DSC"},ComponentsConfiguration:{0:"",1:"Y",2:"Cb",3:"Cr",4:"R",5:"G",6:"B"},Orientation:{1:"top-left",2:"top-right",3:"bottom-right",4:"bottom-left",5:"left-top",6:"right-top",7:"right-bottom",8:"left-bottom"}};n.ExifMap.prototype.getText=function(n){var t=this.get(n);switch(n){case"LightSource":case"Flash":case"MeteringMode":case"ExposureProgram":case"SensingMethod":case"SceneCaptureType":case"SceneType":case"CustomRendered":case"WhiteBalance":case"GainControl":case"Contrast":case"Saturation":case"Sharpness":case"SubjectDistanceRange":case"FileSource":case"Orientation":return this.stringValues[n][t];case"ExifVersion":case"FlashpixVersion":return String.fromCharCode(t[0],t[1],t[2],t[3]);case"ComponentsConfiguration":return this.stringValues[n][t[0]]+this.stringValues[n][t[1]]+this.stringValues[n][t[2]]+this.stringValues[n][t[3]];case"GPSVersionID":return t[0]+"."+t[1]+"."+t[2]+"."+t[3]}return String(t)},function(n){var t,i=n.tags,r=n.map;for(t in i)i.hasOwnProperty(t)&&(r[i[t]]=t)}(n.ExifMap.prototype);n.ExifMap.prototype.getAll=function(){var t,n,i={};for(t in this)this.hasOwnProperty(t)&&(n=this.tags[t],n&&(i[n]=this.getText(n)));return i}});!function(n){"use strict";var t=n.HTMLCanvasElement&&n.HTMLCanvasElement.prototype,r=n.Blob&&function(){try{return Boolean(new Blob)}catch(n){return!1}}(),f=r&&n.Uint8Array&&function(){try{return 100===new Blob([new Uint8Array(100)]).size}catch(n){return!1}}(),u=n.BlobBuilder||n.WebKitBlobBuilder||n.MozBlobBuilder||n.MSBlobBuilder,i=(r||u)&&n.atob&&n.ArrayBuffer&&n.Uint8Array&&function(n){var i,e,o,t,s,h;for(i=n.split(",")[0].indexOf("base64")>=0?atob(n.split(",")[1]):decodeURIComponent(n.split(",")[1]),e=new ArrayBuffer(i.length),o=new Uint8Array(e),t=0;t<i.length;t+=1)o[t]=i.charCodeAt(t);return s=n.split(",")[0].split(":")[1].split(";")[0],r?new Blob([f?o:e],{type:s}):(h=new u,h.append(e),h.getBlob(s))};n.HTMLCanvasElement&&!t.toBlob&&(t.mozGetAsFile?t.toBlob=function(n,r,u){u&&t.toDataURL&&i?n(i(this.toDataURL(r,u))):n(this.mozGetAsFile("blob",r))}:t.toDataURL&&i&&(t.toBlob=function(n,t,r){n(i(this.toDataURL(t,r)))}));"function"==typeof define&&define.amd?define(function(){return i}):n.dataURLtoBlob=i}(this),function(n){"use strict";typeof define=="function"&&define.amd?define(["jquery"],n):typeof exports=="object"?n(require("jquery")):n(window.jQuery)}(function(n){"use strict";var t=0;n.ajaxTransport("iframe",function(i){if(i.async){var e=i.initialIframeSrc||"javascript:false;",r,u,f;return{send:function(o,s){r=n('<form style="display:none;"><\/form>');r.attr("accept-charset",i.formAcceptCharset);f=/\?/.test(i.url)?"&":"?";i.type==="DELETE"?(i.url=i.url+f+"_method=DELETE",i.type="POST"):i.type==="PUT"?(i.url=i.url+f+"_method=PUT",i.type="POST"):i.type==="PATCH"&&(i.url=i.url+f+"_method=PATCH",i.type="POST");t+=1;u=n('<iframe src="'+e+'" name="iframe-transport-'+t+'"><\/iframe>').bind("load",function(){var t,f=n.isArray(i.paramName)?i.paramName:[i.paramName];u.unbind("load").bind("load",function(){var t;try{if(t=u.contents(),!t.length||!t[0].firstChild)throw new Error;}catch(i){t=undefined}s(200,"success",{iframe:t});n('<iframe src="'+e+'"><\/iframe>').appendTo(r);window.setTimeout(function(){r.remove()},0)});r.prop("target",u.prop("name")).prop("action",i.url).prop("method",i.type);i.formData&&n.each(i.formData,function(t,i){n('<input type="hidden"/>').prop("name",i.name).val(i.value).appendTo(r)});i.fileInput&&i.fileInput.length&&i.type==="POST"&&(t=i.fileInput.clone(),i.fileInput.after(function(n){return t[n]}),i.paramName&&i.fileInput.each(function(t){n(this).prop("name",f[t]||i.paramName)}),r.append(i.fileInput).prop("enctype","multipart/form-data").prop("encoding","multipart/form-data"),i.fileInput.removeAttr("form"));r.submit();t&&t.length&&i.fileInput.each(function(i,r){var u=n(t[i]);n(r).prop("name",u.prop("name")).attr("form",u.attr("form"));u.replaceWith(r)})});r.append(u).appendTo(document.body)},abort:function(){u&&u.unbind("load").prop("src",e);r&&r.remove()}}}});n.ajaxSetup({converters:{"iframe text":function(t){return t&&n(t[0].body).text()},"iframe json":function(t){return t&&n.parseJSON(n(t[0].body).text())},"iframe html":function(t){return t&&n(t[0].body).html()},"iframe xml":function(t){var i=t&&t[0];return i&&n.isXMLDoc(i)?i:n.parseXML(i.XMLDocument&&i.XMLDocument.xml||n(i.body).html())},"iframe script":function(t){return t&&n.globalEval(n(t[0].body).text())}}})}),function(n){"use strict";typeof define=="function"&&define.amd?define(["jquery","jquery.ui.widget"],n):typeof exports=="object"?n(require("jquery"),require("./vendor/jquery.ui.widget")):n(window.jQuery)}(function(n){"use strict";function t(t){var i=t==="dragover";return function(r){r.dataTransfer=r.originalEvent&&r.originalEvent.dataTransfer;var u=r.dataTransfer;u&&n.inArray("Files",u.types)!==-1&&this._trigger(t,n.Event(t,{delegatedEvent:r}))!==!1&&(r.preventDefault(),i&&(u.dropEffect="copy"))}}n.support.fileInput=!(new RegExp("(Android (1\\.[0156]|2\\.[01]))|(Windows Phone (OS 7|8\\.0))|(XBLWP)|(ZuneWP)|(WPDesktop)|(w(eb)?OSBrowser)|(webOS)|(Kindle/(1\\.0|2\\.[05]|3\\.0))").test(window.navigator.userAgent)||n('<input type="file">').prop("disabled"));n.support.xhrFileUpload=!!(window.ProgressEvent&&window.FileReader);n.support.xhrFormDataFileUpload=!!window.FormData;n.support.blobSlice=window.Blob&&(Blob.prototype.slice||Blob.prototype.webkitSlice||Blob.prototype.mozSlice);n.widget("blueimp.fileupload",{options:{dropZone:n(document),pasteZone:undefined,fileInput:undefined,replaceFileInput:!0,paramName:undefined,singleFileUploads:!0,limitMultiFileUploads:undefined,limitMultiFileUploadSize:undefined,limitMultiFileUploadSizeOverhead:512,sequentialUploads:!1,limitConcurrentUploads:undefined,forceIframeTransport:!1,redirect:undefined,redirectParamName:undefined,postMessage:undefined,multipart:!0,maxChunkSize:undefined,uploadedBytes:undefined,recalculateProgress:!0,progressInterval:100,bitrateInterval:500,autoUpload:!0,messages:{uploadedBytes:"Uploaded bytes exceed file size"},i18n:function(t,i){return t=this.messages[t]||t.toString(),i&&n.each(i,function(n,i){t=t.replace("{"+n+"}",i)}),t},formData:function(n){return n.serializeArray()},add:function(t,i){if(t.isDefaultPrevented())return!1;(i.autoUpload||i.autoUpload!==!1&&n(this).fileupload("option","autoUpload"))&&i.process().done(function(){i.submit()})},processData:!1,contentType:!1,cache:!1,timeout:0},_specialOptions:["fileInput","dropZone","pasteZone","multipart","forceIframeTransport"],_blobSlice:n.support.blobSlice&&function(){var n=this.slice||this.webkitSlice||this.mozSlice;return n.apply(this,arguments)},_BitrateTimer:function(){this.timestamp=Date.now?Date.now():(new Date).getTime();this.loaded=0;this.bitrate=0;this.getBitrate=function(n,t,i){var r=n-this.timestamp;return(!this.bitrate||!i||r>i)&&(this.bitrate=(t-this.loaded)*(1e3/r)*8,this.loaded=t,this.timestamp=n),this.bitrate}},_isXHRUpload:function(t){return!t.forceIframeTransport&&(!t.multipart&&n.support.xhrFileUpload||n.support.xhrFormDataFileUpload)},_getFormData:function(t){var i;return n.type(t.formData)==="function"?t.formData(t.form):n.isArray(t.formData)?t.formData:n.type(t.formData)==="object"?(i=[],n.each(t.formData,function(n,t){i.push({name:n,value:t})}),i):[]},_getTotal:function(t){var i=0;return n.each(t,function(n,t){i+=t.size||1}),i},_initProgressObject:function(t){var i={loaded:0,total:0,bitrate:0};t._progress?n.extend(t._progress,i):t._progress=i},_initResponseObject:function(n){var t;if(n._response)for(t in n._response)n._response.hasOwnProperty(t)&&delete n._response[t];else n._response={}},_onProgress:function(t,i){if(t.lengthComputable){var r=Date.now?Date.now():(new Date).getTime(),u;if(i._time&&i.progressInterval&&r-i._time<i.progressInterval&&t.loaded!==t.total)return;i._time=r;u=Math.floor(t.loaded/t.total*(i.chunkSize||i._progress.total))+(i.uploadedBytes||0);this._progress.loaded+=u-i._progress.loaded;this._progress.bitrate=this._bitrateTimer.getBitrate(r,this._progress.loaded,i.bitrateInterval);i._progress.loaded=i.loaded=u;i._progress.bitrate=i.bitrate=i._bitrateTimer.getBitrate(r,u,i.bitrateInterval);this._trigger("progress",n.Event("progress",{delegatedEvent:t}),i);this._trigger("progressall",n.Event("progressall",{delegatedEvent:t}),this._progress)}},_initProgressListener:function(t){var r=this,i=t.xhr?t.xhr():n.ajaxSettings.xhr();i.upload&&(n(i.upload).bind("progress",function(n){var i=n.originalEvent;n.lengthComputable=i.lengthComputable;n.loaded=i.loaded;n.total=i.total;r._onProgress(n,t)}),t.xhr=function(){return i})},_isInstanceOf:function(n,t){return Object.prototype.toString.call(t)==="[object "+n+"]"},_initXHRData:function(t){var f=this,i,r=t.files[0],e=t.multipart||!n.support.xhrFileUpload,u=n.type(t.paramName)==="array"?t.paramName[0]:t.paramName;t.headers=n.extend({},t.headers);t.contentRange&&(t.headers["Content-Range"]=t.contentRange);e&&!t.blob&&this._isInstanceOf("File",r)||(t.headers["Content-Disposition"]='attachment; filename="'+encodeURI(r.name)+'"');e?n.support.xhrFormDataFileUpload&&(t.postMessage?(i=this._getFormData(t),t.blob?i.push({name:u,value:t.blob}):n.each(t.files,function(r,f){i.push({name:n.type(t.paramName)==="array"&&t.paramName[r]||u,value:f})})):(f._isInstanceOf("FormData",t.formData)?i=t.formData:(i=new FormData,n.each(this._getFormData(t),function(n,t){i.append(t.name,t.value)})),t.blob?i.append(u,t.blob,r.name):n.each(t.files,function(r,e){(f._isInstanceOf("File",e)||f._isInstanceOf("Blob",e))&&i.append(n.type(t.paramName)==="array"&&t.paramName[r]||u,e,e.uploadName||e.name)})),t.data=i):(t.contentType=r.type||"application/octet-stream",t.data=t.blob||r);t.blob=null},_initIframeSettings:function(t){var i=n("<a><\/a>").prop("href",t.url).prop("host");t.dataType="iframe "+(t.dataType||"");t.formData=this._getFormData(t);t.redirect&&i&&i!==location.host&&t.formData.push({name:t.redirectParamName||"redirect",value:t.redirect})},_initDataSettings:function(n){this._isXHRUpload(n)?(this._chunkedUpload(n,!0)||(n.data||this._initXHRData(n),this._initProgressListener(n)),n.postMessage&&(n.dataType="postmessage "+(n.dataType||""))):this._initIframeSettings(n)},_getParamName:function(t){var r=n(t.fileInput),i=t.paramName;return i?n.isArray(i)||(i=[i]):(i=[],r.each(function(){for(var t=n(this),u=t.prop("name")||"files[]",r=(t.prop("files")||[1]).length;r;)i.push(u),r-=1}),i.length||(i=[r.prop("name")||"files[]"])),i},_initFormSettings:function(t){t.form&&t.form.length||(t.form=n(t.fileInput.prop("form")),t.form.length||(t.form=n(this.options.fileInput.prop("form"))));t.paramName=this._getParamName(t);t.url||(t.url=t.form.prop("action")||location.href);t.type=(t.type||n.type(t.form.prop("method"))==="string"&&t.form.prop("method")||"").toUpperCase();t.type!=="POST"&&t.type!=="PUT"&&t.type!=="PATCH"&&(t.type="POST");t.formAcceptCharset||(t.formAcceptCharset=t.form.attr("accept-charset"))},_getAJAXSettings:function(t){var i=n.extend({},this.options,t);return this._initFormSettings(i),this._initDataSettings(i),i},_getDeferredState:function(n){return n.state?n.state():n.isResolved()?"resolved":n.isRejected()?"rejected":"pending"},_enhancePromise:function(n){return n.success=n.done,n.error=n.fail,n.complete=n.always,n},_getXHRPromise:function(t,i,r){var u=n.Deferred(),f=u.promise();return i=i||this.options.context||f,t===!0?u.resolveWith(i,r):t===!1&&u.rejectWith(i,r),f.abort=u.promise,this._enhancePromise(f)},_addConvenienceMethods:function(t,i){var r=this,u=function(t){return n.Deferred().resolveWith(r,t).promise()};i.process=function(t,f){return(t||f)&&(i._processQueue=this._processQueue=(this._processQueue||u([this])).pipe(function(){return i.errorThrown?n.Deferred().rejectWith(r,[i]).promise():u(arguments)}).pipe(t,f)),this._processQueue||u([this])};i.submit=function(){return this.state()!=="pending"&&(i.jqXHR=this.jqXHR=r._trigger("submit",n.Event("submit",{delegatedEvent:t}),this)!==!1&&r._onSend(t,this)),this.jqXHR||r._getXHRPromise()};i.abort=function(){return this.jqXHR?this.jqXHR.abort():(this.errorThrown="abort",r._trigger("fail",null,this),r._getXHRPromise(!1))};i.state=function(){return this.jqXHR?r._getDeferredState(this.jqXHR):this._processQueue?r._getDeferredState(this._processQueue):void 0};i.processing=function(){return!this.jqXHR&&this._processQueue&&r._getDeferredState(this._processQueue)==="pending"};i.progress=function(){return this._progress};i.response=function(){return this._response}},_getUploadedBytes:function(n){var i=n.getResponseHeader("Range"),t=i&&i.split("-"),r=t&&t.length>1&&parseInt(t[1],10);return r&&r+1},_chunkedUpload:function(t,i){t.uploadedBytes=t.uploadedBytes||0;var u=this,f=t.files[0],e=f.size,r=t.uploadedBytes,c=t.maxChunkSize||e,l=this._blobSlice,o=n.Deferred(),s=o.promise(),a,h;return!(this._isXHRUpload(t)&&l&&(r||c<e))||t.data?!1:i?!0:r>=e?(f.error=t.i18n("uploadedBytes"),this._getXHRPromise(!1,t.context,[null,"error",f.error])):(h=function(){var i=n.extend({},t),s=i._progress.loaded;i.blob=l.call(f,r,r+c,f.type);i.chunkSize=i.blob.size;i.contentRange="bytes "+r+"-"+(r+i.chunkSize-1)+"/"+e;u._initXHRData(i);u._initProgressListener(i);a=(u._trigger("chunksend",null,i)!==!1&&n.ajax(i)||u._getXHRPromise(!1,i.context)).done(function(f,c,l){r=u._getUploadedBytes(l)||r+i.chunkSize;s+i.chunkSize-i._progress.loaded&&u._onProgress(n.Event("progress",{lengthComputable:!0,loaded:r-i.uploadedBytes,total:r-i.uploadedBytes}),i);t.uploadedBytes=i.uploadedBytes=r;i.result=f;i.textStatus=c;i.jqXHR=l;u._trigger("chunkdone",null,i);u._trigger("chunkalways",null,i);r<e?h():o.resolveWith(i.context,[f,c,l])}).fail(function(n,t,r){i.jqXHR=n;i.textStatus=t;i.errorThrown=r;u._trigger("chunkfail",null,i);u._trigger("chunkalways",null,i);o.rejectWith(i.context,[n,t,r])})},this._enhancePromise(s),s.abort=function(){return a.abort()},h(),s)},_beforeSend:function(n,t){this._active===0&&(this._trigger("start"),this._bitrateTimer=new this._BitrateTimer,this._progress.loaded=this._progress.total=0,this._progress.bitrate=0);this._initResponseObject(t);this._initProgressObject(t);t._progress.loaded=t.loaded=t.uploadedBytes||0;t._progress.total=t.total=this._getTotal(t.files)||1;t._progress.bitrate=t.bitrate=0;this._active+=1;this._progress.loaded+=t.loaded;this._progress.total+=t.total},_onDone:function(t,i,r,u){var f=u._progress.total,e=u._response;u._progress.loaded<f&&this._onProgress(n.Event("progress",{lengthComputable:!0,loaded:f,total:f}),u);e.result=u.result=t;e.textStatus=u.textStatus=i;e.jqXHR=u.jqXHR=r;this._trigger("done",null,u)},_onFail:function(n,t,i,r){var u=r._response;r.recalculateProgress&&(this._progress.loaded-=r._progress.loaded,this._progress.total-=r._progress.total);u.jqXHR=r.jqXHR=n;u.textStatus=r.textStatus=t;u.errorThrown=r.errorThrown=i;this._trigger("fail",null,r)},_onAlways:function(n,t,i,r){this._trigger("always",null,r)},_onSend:function(t,i){i.submit||this._addConvenienceMethods(t,i);var r=this,f,s,e,h,u=r._getAJAXSettings(i),o=function(){return r._sending+=1,u._bitrateTimer=new r._BitrateTimer,f=f||((s||r._trigger("send",n.Event("send",{delegatedEvent:t}),u)===!1)&&r._getXHRPromise(!1,u.context,s)||r._chunkedUpload(u)||n.ajax(u)).done(function(n,t,i){r._onDone(n,t,i,u)}).fail(function(n,t,i){r._onFail(n,t,i,u)}).always(function(n,t,i){if(r._onAlways(n,t,i,u),r._sending-=1,r._active-=1,u.limitConcurrentUploads&&u.limitConcurrentUploads>r._sending)for(var f=r._slots.shift();f;){if(r._getDeferredState(f)==="pending"){f.resolve();break}f=r._slots.shift()}r._active===0&&r._trigger("stop")})};return(this._beforeSend(t,u),this.options.sequentialUploads||this.options.limitConcurrentUploads&&this.options.limitConcurrentUploads<=this._sending)?(this.options.limitConcurrentUploads>1?(e=n.Deferred(),this._slots.push(e),h=e.pipe(o)):(this._sequence=this._sequence.pipe(o,o),h=this._sequence),h.abort=function(){return(s=[undefined,"abort","abort"],!f)?(e&&e.rejectWith(u.context,s),o()):f.abort()},this._enhancePromise(h)):o()},_onAdd:function(t,i){var a=this,p=!0,f=n.extend({},this.options,i),u=i.files,v=u.length,o=f.limitMultiFileUploads,c=f.limitMultiFileUploadSize,b=f.limitMultiFileUploadSizeOverhead,w=0,l=this._getParamName(f),s,e,h,r,y=0;if(!v)return!1;if(c&&u[0].size===undefined&&(c=undefined),(f.singleFileUploads||o||c)&&this._isXHRUpload(f))if(f.singleFileUploads||c||!o)if(!f.singleFileUploads&&c)for(h=[],s=[],r=0;r<v;r=r+1)w+=u[r].size+b,(r+1===v||w+u[r+1].size+b>c||o&&r+1-y>=o)&&(h.push(u.slice(y,r+1)),e=l.slice(y,r+1),e.length||(e=l),s.push(e),y=r+1,w=0);else s=l;else for(h=[],s=[],r=0;r<v;r+=o)h.push(u.slice(r,r+o)),e=l.slice(r,r+o),e.length||(e=l),s.push(e);else h=[u],s=[l];return i.originalFiles=u,n.each(h||u,function(r,u){var f=n.extend({},i);return f.files=h?u:[u],f.paramName=s[r],a._initResponseObject(f),a._initProgressObject(f),a._addConvenienceMethods(t,f),p=a._trigger("add",n.Event("add",{delegatedEvent:t}),f)}),p},_replaceFileInput:function(t){var i=t.fileInput,r=i.clone(!0);t.fileInputClone=r;n("<form><\/form>").append(r)[0].reset();i.after(r).detach();n.cleanData(i.unbind("remove"));this.options.fileInput=this.options.fileInput.map(function(n,t){return t===i[0]?r[0]:t});i[0]===this.element[0]&&(this.element=r)},_handleFileTreeEntry:function(t,i){var s=this,r=n.Deferred(),u=function(n){n&&!n.entry&&(n.entry=t);r.resolve([n])},h=function(n){s._handleFileTreeEntries(n,i+t.name+"/").done(function(n){r.resolve(n)}).fail(u)},e=function(){o.readEntries(function(n){n.length?(f=f.concat(n),e()):h(f)},u)},o,f=[];return i=i||"",t.isFile?t._file?(t._file.relativePath=i,r.resolve(t._file)):t.file(function(n){n.relativePath=i;r.resolve(n)},u):t.isDirectory?(o=t.createReader(),e()):r.resolve([]),r.promise()},_handleFileTreeEntries:function(t,i){var r=this;return n.when.apply(n,n.map(t,function(n){return r._handleFileTreeEntry(n,i)})).pipe(function(){return Array.prototype.concat.apply([],arguments)})},_getDroppedFiles:function(t){t=t||{};var i=t.items;return i&&i.length&&(i[0].webkitGetAsEntry||i[0].getAsEntry)?this._handleFileTreeEntries(n.map(i,function(n){var t;return n.webkitGetAsEntry?(t=n.webkitGetAsEntry(),t&&(t._file=n.getAsFile()),t):n.getAsEntry()})):n.Deferred().resolve(n.makeArray(t.files)).promise()},_getSingleFileInputFiles:function(t){t=n(t);var r=t.prop("webkitEntries")||t.prop("entries"),i,u;if(r&&r.length)return this._handleFileTreeEntries(r);if(i=n.makeArray(t.prop("files")),i.length)i[0].name===undefined&&i[0].fileName&&n.each(i,function(n,t){t.name=t.fileName;t.size=t.fileSize});else{if(u=t.prop("value"),!u)return n.Deferred().resolve([]).promise();i=[{name:u.replace(/^.*\\/,"")}]}return n.Deferred().resolve(i).promise()},_getFileInputFiles:function(t){return!(t instanceof n)||t.length===1?this._getSingleFileInputFiles(t):n.when.apply(n,n.map(t,this._getSingleFileInputFiles)).pipe(function(){return Array.prototype.concat.apply([],arguments)})},_onChange:function(t){var r=this,i={fileInput:n(t.target),form:n(t.target.form)};this._getFileInputFiles(i.fileInput).always(function(u){i.files=u;r.options.replaceFileInput&&r._replaceFileInput(i);r._trigger("change",n.Event("change",{delegatedEvent:t}),i)!==!1&&r._onAdd(t,i)})},_onPaste:function(t){var i=t.originalEvent&&t.originalEvent.clipboardData&&t.originalEvent.clipboardData.items,r={files:[]};i&&i.length&&(n.each(i,function(n,t){var i=t.getAsFile&&t.getAsFile();i&&r.files.push(i)}),this._trigger("paste",n.Event("paste",{delegatedEvent:t}),r)!==!1&&this._onAdd(t,r))},_onDrop:function(t){t.dataTransfer=t.originalEvent&&t.originalEvent.dataTransfer;var u=this,i=t.dataTransfer,r={};i&&i.files&&i.files.length&&(t.preventDefault(),this._getDroppedFiles(i).always(function(i){r.files=i;u._trigger("drop",n.Event("drop",{delegatedEvent:t}),r)!==!1&&u._onAdd(t,r)}))},_onDragOver:t("dragover"),_onDragEnter:t("dragenter"),_onDragLeave:t("dragleave"),_initEventHandlers:function(){this._isXHRUpload(this.options)&&(this._on(this.options.dropZone,{dragover:this._onDragOver,drop:this._onDrop,dragenter:this._onDragEnter,dragleave:this._onDragLeave}),this._on(this.options.pasteZone,{paste:this._onPaste}));n.support.fileInput&&this._on(this.options.fileInput,{change:this._onChange})},_destroyEventHandlers:function(){this._off(this.options.dropZone,"dragenter dragleave dragover drop");this._off(this.options.pasteZone,"paste");this._off(this.options.fileInput,"change")},_setOption:function(t,i){var r=n.inArray(t,this._specialOptions)!==-1;r&&this._destroyEventHandlers();this._super(t,i);r&&(this._initSpecialOptions(),this._initEventHandlers())},_initSpecialOptions:function(){var t=this.options;t.fileInput===undefined?t.fileInput=this.element.is('input[type="file"]')?this.element:this.element.find('input[type="file"]'):t.fileInput instanceof n||(t.fileInput=n(t.fileInput));t.dropZone instanceof n||(t.dropZone=n(t.dropZone));t.pasteZone instanceof n||(t.pasteZone=n(t.pasteZone))},_getRegExp:function(n){var t=n.split("/"),i=t.pop();return t.shift(),new RegExp(t.join("/"),i)},_isRegExpOption:function(t,i){return t!=="url"&&n.type(i)==="string"&&/^\/.*\/[igm]{0,3}$/.test(i)},_initDataAttributes:function(){var t=this,i=this.options,r=this.element.data();n.each(this.element[0].attributes,function(n,u){var f=u.name.toLowerCase(),e;/^data-/.test(f)&&(f=f.slice(5).replace(/-[a-z]/g,function(n){return n.charAt(1).toUpperCase()}),e=r[f],t._isRegExpOption(f,e)&&(e=t._getRegExp(e)),i[f]=e)})},_create:function(){this._initDataAttributes();this._initSpecialOptions();this._slots=[];this._sequence=this._getXHRPromise(!0);this._sending=this._active=0;this._initProgressObject(this);this._initEventHandlers()},active:function(){return this._active},progress:function(){return this._progress},add:function(t){var i=this;t&&!this.options.disabled&&(t.fileInput&&!t.files?this._getFileInputFiles(t.fileInput).always(function(n){t.files=n;i._onAdd(null,t)}):(t.files=n.makeArray(t.files),this._onAdd(null,t)))},send:function(t){if(t&&!this.options.disabled){if(t.fileInput&&!t.files){var e=this,i=n.Deferred(),u=i.promise(),r,f;return u.abort=function(){return(f=!0,r)?r.abort():(i.reject(null,"abort","abort"),u)},this._getFileInputFiles(t.fileInput).always(function(n){if(!f){if(!n.length){i.reject();return}t.files=n;r=e._onSend(null,t);r.then(function(n,t,r){i.resolve(n,t,r)},function(n,t,r){i.reject(n,t,r)})}}),this._enhancePromise(u)}if(t.files=n.makeArray(t.files),t.files.length)return this._onSend(null,t)}return this._getXHRPromise(!1,t&&t.context)}})}),function(n){"use strict";typeof define=="function"&&define.amd?define(["jquery","./jquery.fileupload"],n):typeof exports=="object"?n(require("jquery")):n(window.jQuery)}(function(n){"use strict";var t=n.blueimp.fileupload.prototype.options.add;n.widget("blueimp.fileupload",n.blueimp.fileupload,{options:{processQueue:[],add:function(i,r){var u=n(this);r.process(function(){return u.fileupload("process",r)});t.call(this,i,r)}},processActions:{},_processFile:function(t,i){var r=this,f=n.Deferred().resolveWith(r,[t]),u=f.promise();return this._trigger("process",null,t),n.each(t.processQueue,function(t,f){var e=function(t){return i.errorThrown?n.Deferred().rejectWith(r,[i]).promise():r.processActions[f.action].call(r,t,f)};u=u.pipe(e,f.always&&e)}),u.done(function(){r._trigger("processdone",null,t);r._trigger("processalways",null,t)}).fail(function(){r._trigger("processfail",null,t);r._trigger("processalways",null,t)}),u},_transformProcessQueue:function(t){var i=[];n.each(t.processQueue,function(){var r={},f=this.action,u=this.prefix===!0?f:this.prefix;n.each(this,function(i,f){r[i]=n.type(f)==="string"&&f.charAt(0)==="@"?t[f.slice(1)||(u?u+i.charAt(0).toUpperCase()+i.slice(1):i)]:f});i.push(r)});t.processQueue=i},processing:function(){return this._processing},process:function(t){var i=this,r=n.extend({},this.options,t);return r.processQueue&&r.processQueue.length&&(this._transformProcessQueue(r),this._processing===0&&this._trigger("processstart"),n.each(t.files,function(u){var f=u?n.extend({},r):r,e=function(){return t.errorThrown?n.Deferred().rejectWith(i,[t]).promise():i._processFile(f,t)};f.index=u;i._processing+=1;i._processingQueue=i._processingQueue.pipe(e,e).always(function(){i._processing-=1;i._processing===0&&i._trigger("processstop")})})),this._processingQueue},_create:function(){this._super();this._processing=0;this._processingQueue=n.Deferred().resolveWith(this).promise()}})}),function(n){"use strict";typeof define=="function"&&define.amd?define(["jquery","load-image","load-image-meta","load-image-exif","load-image-ios","canvas-to-blob","./jquery.fileupload-process"],n):typeof exports=="object"?n(require("jquery"),require("load-image")):n(window.jQuery,window.loadImage)}(function(n,t){"use strict";n.blueimp.fileupload.prototype.options.processQueue.unshift({action:"loadImageMetaData",disableImageHead:"@",disableExif:"@",disableExifThumbnail:"@",disableExifSub:"@",disableExifGps:"@",disabled:"@disableImageMetaDataLoad"},{action:"loadImage",prefix:!0,fileTypes:"@",maxFileSize:"@",noRevoke:"@",disabled:"@disableImageLoad"},{action:"resizeImage",prefix:"image",maxWidth:"@",maxHeight:"@",minWidth:"@",minHeight:"@",crop:"@",orientation:"@",forceResize:"@",disabled:"@disableImageResize"},{action:"saveImage",quality:"@imageQuality",type:"@imageType",disabled:"@disableImageResize"},{action:"saveImageMetaData",disabled:"@disableImageMetaDataSave"},{action:"resizeImage",prefix:"preview",maxWidth:"@",maxHeight:"@",minWidth:"@",minHeight:"@",crop:"@",orientation:"@",thumbnail:"@",canvas:"@",disabled:"@disableImagePreview"},{action:"setImage",name:"@imagePreviewName",disabled:"@disableImagePreview"},{action:"deleteImageReferences",disabled:"@disableImageReferencesDeletion"});n.widget("blueimp.fileupload",n.blueimp.fileupload,{options:{loadImageFileTypes:/^image\/(gif|jpeg|png|svg\+xml)$/,loadImageMaxFileSize:1e7,imageMaxWidth:1920,imageMaxHeight:1080,imageOrientation:!1,imageCrop:!1,disableImageResize:!0,previewMaxWidth:80,previewMaxHeight:80,previewOrientation:!0,previewThumbnail:!0,previewCrop:!1,previewCanvas:!0},processActions:{loadImage:function(i,r){if(r.disabled)return i;var e=this,u=i.files[i.index],f=n.Deferred();return n.type(r.maxFileSize)==="number"&&u.size>r.maxFileSize||r.fileTypes&&!r.fileTypes.test(u.type)||!t(u,function(n){n.src&&(i.img=n);f.resolveWith(e,[i])},r)?i:f.promise()},resizeImage:function(i,r){if(r.disabled||!(i.canvas||i.img))return i;r=n.extend({canvas:!0},r);var s=this,f=n.Deferred(),u=r.canvas&&i.canvas||i.img,o=function(n){n&&(n.width!==u.width||n.height!==u.height||r.forceResize)&&(i[n.getContext?"canvas":"img"]=n);i.preview=n;f.resolveWith(s,[i])},e;if(i.exif){if(r.orientation===!0&&(r.orientation=i.exif.get("Orientation")),r.thumbnail&&(e=i.exif.get("Thumbnail"),e))return t(e,o,r),f.promise();i.orientation?delete r.orientation:i.orientation=r.orientation}return u?(o(t.scale(u,r)),f.promise()):i},saveImage:function(t,i){if(!t.canvas||i.disabled)return t;var f=this,r=t.files[t.index],u=n.Deferred();if(t.canvas.toBlob)t.canvas.toBlob(function(n){n.name||(r.type===n.type?n.name=r.name:r.name&&(n.name=r.name.replace(/\.\w+$/,"."+n.type.substr(6))));r.type!==n.type&&delete t.imageHead;t.files[t.index]=n;u.resolveWith(f,[t])},i.type||r.type,i.quality);else return t;return u.promise()},loadImageMetaData:function(i,r){if(r.disabled)return i;var f=this,u=n.Deferred();return t.parseMetaData(i.files[i.index],function(t){n.extend(i,t);u.resolveWith(f,[i])},r),u.promise()},saveImageMetaData:function(n,t){if(!(n.imageHead&&n.canvas&&n.canvas.toBlob&&!t.disabled))return n;var i=n.files[n.index],r=new Blob([n.imageHead,this._blobSlice.call(i,20)],{type:i.type});return r.name=i.name,n.files[n.index]=r,n},setImage:function(n,t){return n.preview&&!t.disabled&&(n.files[n.index][t.name||"preview"]=n.preview),n},deleteImageReferences:function(n,t){return t.disabled||(delete n.img,delete n.canvas,delete n.preview,delete n.imageHead),n}}})}),function(n){"use strict";typeof define=="function"&&define.amd?define(["jquery","load-image","./jquery.fileupload-process"],n):typeof exports=="object"?n(require("jquery"),require("load-image")):n(window.jQuery,window.loadImage)}(function(n,t){"use strict";n.blueimp.fileupload.prototype.options.processQueue.unshift({action:"loadAudio",prefix:!0,fileTypes:"@",maxFileSize:"@",disabled:"@disableAudioPreview"},{action:"setAudio",name:"@audioPreviewName",disabled:"@disableAudioPreview"});n.widget("blueimp.fileupload",n.blueimp.fileupload,{options:{loadAudioFileTypes:/^audio\/.*$/},_audioElement:document.createElement("audio"),processActions:{loadAudio:function(i,r){if(r.disabled)return i;var u=i.files[i.index],e,f;return this._audioElement.canPlayType&&this._audioElement.canPlayType(u.type)&&(n.type(r.maxFileSize)!=="number"||u.size<=r.maxFileSize)&&(!r.fileTypes||r.fileTypes.test(u.type))&&(e=t.createObjectURL(u),e)?(f=this._audioElement.cloneNode(!1),f.src=e,f.controls=!0,i.audio=f,i):i},setAudio:function(n,t){return n.audio&&!t.disabled&&(n.files[n.index][t.name||"preview"]=n.audio),n}}})}),function(n){"use strict";typeof define=="function"&&define.amd?define(["jquery","load-image","./jquery.fileupload-process"],n):typeof exports=="object"?n(require("jquery"),require("load-image")):n(window.jQuery,window.loadImage)}(function(n,t){"use strict";n.blueimp.fileupload.prototype.options.processQueue.unshift({action:"loadVideo",prefix:!0,fileTypes:"@",maxFileSize:"@",disabled:"@disableVideoPreview"},{action:"setVideo",name:"@videoPreviewName",disabled:"@disableVideoPreview"});n.widget("blueimp.fileupload",n.blueimp.fileupload,{options:{loadVideoFileTypes:/^video\/.*$/},_videoElement:document.createElement("video"),processActions:{loadVideo:function(i,r){if(r.disabled)return i;var u=i.files[i.index],e,f;return this._videoElement.canPlayType&&this._videoElement.canPlayType(u.type)&&(n.type(r.maxFileSize)!=="number"||u.size<=r.maxFileSize)&&(!r.fileTypes||r.fileTypes.test(u.type))&&(e=t.createObjectURL(u),e)?(f=this._videoElement.cloneNode(!1),f.src=e,f.controls=!0,i.video=f,i):i},setVideo:function(n,t){return n.video&&!t.disabled&&(n.files[n.index][t.name||"preview"]=n.video),n}}})}),function(n){"use strict";typeof define=="function"&&define.amd?define(["jquery","./jquery.fileupload-process"],n):typeof exports=="object"?n(require("jquery")):n(window.jQuery)}(function(n){"use strict";n.blueimp.fileupload.prototype.options.processQueue.push({action:"validate",always:!0,acceptFileTypes:"@",maxFileSize:"@",minFileSize:"@",maxNumberOfFiles:"@",disabled:"@disableValidation"});n.widget("blueimp.fileupload",n.blueimp.fileupload,{options:{getNumberOfFiles:n.noop,messages:{maxNumberOfFiles:"Maximum number of files exceeded",acceptFileTypes:"File type not allowed",maxFileSize:"File is too large",minFileSize:"File is too small"}},processActions:{validate:function(t,i){if(i.disabled)return t;var e=n.Deferred(),u=this.options,r=t.files[t.index],f;return(i.minFileSize||i.maxFileSize)&&(f=r.size),n.type(i.maxNumberOfFiles)==="number"&&(u.getNumberOfFiles()||0)+t.files.length>i.maxNumberOfFiles?r.error=u.i18n("maxNumberOfFiles"):!i.acceptFileTypes||i.acceptFileTypes.test(r.type)||i.acceptFileTypes.test(r.name)?f>i.maxFileSize?r.error=u.i18n("maxFileSize"):n.type(f)==="number"&&f<i.minFileSize?r.error=u.i18n("minFileSize"):delete r.error:r.error=u.i18n("acceptFileTypes"),r.error||t.files.error?(t.files.error=!0,e.rejectWith(this,[t])):e.resolveWith(this,[t]),e.promise()}}})}),function(n){"use strict";typeof define=="function"&&define.amd?define(["jquery","tmpl","./jquery.fileupload-image","./jquery.fileupload-audio","./jquery.fileupload-video","./jquery.fileupload-validate"],n):typeof exports=="object"?n(require("jquery"),require("tmpl")):n(window.jQuery,window.tmpl)}(function(n,t){"use strict";n.blueimp.fileupload.prototype._specialOptions.push("filesContainer","uploadTemplateId","downloadTemplateId");n.widget("blueimp.fileupload",n.blueimp.fileupload,{options:{autoUpload:!1,uploadTemplateId:"template-upload",downloadTemplateId:"template-download",filesContainer:undefined,prependFiles:!1,dataType:"json",messages:{unknownError:"Unknown error"},getNumberOfFiles:function(){return this.filesContainer.children().not(".processing").length},getFilesFromResponse:function(t){return t.result&&n.isArray(t.result.files)?t.result.files:[]},add:function(t,i){if(t.isDefaultPrevented())return!1;var u=n(this),r=u.data("blueimp-fileupload")||u.data("fileupload"),f=r.options;i.context=r._renderUpload(i.files).data("data",i).addClass("processing");f.filesContainer[f.prependFiles?"prepend":"append"](i.context);r._forceReflow(i.context);r._transition(i.context);i.process(function(){return u.fileupload("process",i)}).always(function(){i.context.each(function(t){n(this).find(".size").text(r._formatFileSize(i.files[t].size))}).removeClass("processing");r._renderPreviews(i)}).done(function(){i.context.find(".start").prop("disabled",!1);r._trigger("added",t,i)!==!1&&(f.autoUpload||i.autoUpload)&&i.autoUpload!==!1&&i.submit()}).fail(function(){i.files.error&&i.context.each(function(t){var r=i.files[t].error;r&&n(this).find(".error").text(r)})})},send:function(t,i){if(t.isDefaultPrevented())return!1;var r=n(this).data("blueimp-fileupload")||n(this).data("fileupload");return i.context&&i.dataType&&i.dataType.substr(0,6)==="iframe"&&i.context.find(".progress").addClass(!n.support.transition&&"progress-animated").attr("aria-valuenow",100).children().first().css("width","100%"),r._trigger("sent",t,i)},done:function(t,i){if(t.isDefaultPrevented())return!1;var r=n(this).data("blueimp-fileupload")||n(this).data("fileupload"),o=i.getFilesFromResponse||r.options.getFilesFromResponse,e=o(i),u,f;i.context?i.context.each(function(o){var s=e[o]||{error:"Empty file upload result"};f=r._addFinishedDeferreds();r._transition(n(this)).done(function(){var e=n(this);u=r._renderDownload([s]).replaceAll(e);r._forceReflow(u);r._transition(u).done(function(){i.context=n(this);r._trigger("completed",t,i);r._trigger("finished",t,i);f.resolve()})})}):(u=r._renderDownload(e)[r.options.prependFiles?"prependTo":"appendTo"](r.options.filesContainer),r._forceReflow(u),f=r._addFinishedDeferreds(),r._transition(u).done(function(){i.context=n(this);r._trigger("completed",t,i);r._trigger("finished",t,i);f.resolve()}))},fail:function(t,i){if(t.isDefaultPrevented())return!1;var r=n(this).data("blueimp-fileupload")||n(this).data("fileupload"),f,u;i.context?i.context.each(function(e){if(i.errorThrown!=="abort"){var o=i.files[e];o.error=o.error||i.errorThrown||i.i18n("unknownError");u=r._addFinishedDeferreds();r._transition(n(this)).done(function(){var e=n(this);f=r._renderDownload([o]).replaceAll(e);r._forceReflow(f);r._transition(f).done(function(){i.context=n(this);r._trigger("failed",t,i);r._trigger("finished",t,i);u.resolve()})})}else u=r._addFinishedDeferreds(),r._transition(n(this)).done(function(){n(this).remove();r._trigger("failed",t,i);r._trigger("finished",t,i);u.resolve()})}):i.errorThrown!=="abort"?(i.context=r._renderUpload(i.files)[r.options.prependFiles?"prependTo":"appendTo"](r.options.filesContainer).data("data",i),r._forceReflow(i.context),u=r._addFinishedDeferreds(),r._transition(i.context).done(function(){i.context=n(this);r._trigger("failed",t,i);r._trigger("finished",t,i);u.resolve()})):(r._trigger("failed",t,i),r._trigger("finished",t,i),r._addFinishedDeferreds().resolve())},progress:function(t,i){if(t.isDefaultPrevented())return!1;var r=Math.floor(i.loaded/i.total*100);i.context&&i.context.each(function(){n(this).find(".progress").attr("aria-valuenow",r).children().first().css("width",r+"%")})},progressall:function(t,i){if(t.isDefaultPrevented())return!1;var r=n(this),u=Math.floor(i.loaded/i.total*100),f=r.find(".fileupload-progress"),e=f.find(".progress-extended");e.length&&e.html((r.data("blueimp-fileupload")||r.data("fileupload"))._renderExtendedProgress(i));f.find(".progress").attr("aria-valuenow",u).children().first().css("width",u+"%")},start:function(t){if(t.isDefaultPrevented())return!1;var i=n(this).data("blueimp-fileupload")||n(this).data("fileupload");i._resetFinishedDeferreds();i._transition(n(this).find(".fileupload-progress")).done(function(){i._trigger("started",t)})},stop:function(t){if(t.isDefaultPrevented())return!1;var i=n(this).data("blueimp-fileupload")||n(this).data("fileupload"),r=i._addFinishedDeferreds();n.when.apply(n,i._getFinishedDeferreds()).done(function(){i._trigger("stopped",t)});i._transition(n(this).find(".fileupload-progress")).done(function(){n(this).find(".progress").attr("aria-valuenow","0").children().first().css("width","0%");n(this).find(".progress-extended").html("&nbsp;");r.resolve()})},processstart:function(t){if(t.isDefaultPrevented())return!1;n(this).addClass("fileupload-processing")},processstop:function(t){if(t.isDefaultPrevented())return!1;n(this).removeClass("fileupload-processing")},destroy:function(t,i){if(t.isDefaultPrevented())return!1;var r=n(this).data("blueimp-fileupload")||n(this).data("fileupload"),u=function(){r._transition(i.context).done(function(){n(this).remove();r._trigger("destroyed",t,i)})};i.url?(i.dataType=i.dataType||r.options.dataType,n.ajax(i).done(u).fail(function(){r._trigger("destroyfailed",t,i)})):u()}},_resetFinishedDeferreds:function(){this._finishedUploads=[]},_addFinishedDeferreds:function(t){return t||(t=n.Deferred()),this._finishedUploads.push(t),t},_getFinishedDeferreds:function(){return this._finishedUploads},_enableDragToDesktop:function(){var t=n(this),i=t.prop("href"),r=t.prop("download"),u="application/octet-stream";t.bind("dragstart",function(n){try{n.originalEvent.dataTransfer.setData("DownloadURL",[u,r,i].join(":"))}catch(t){}})},_formatFileSize:function(n){return typeof n!="number"?"":n>=1e9?(n/1e9).toFixed(2)+" GB":n>=1e6?(n/1e6).toFixed(2)+" MB":(n/1e3).toFixed(2)+" KB"},_formatBitrate:function(n){return typeof n!="number"?"":n>=1e9?(n/1e9).toFixed(2)+" Gbit/s":n>=1e6?(n/1e6).toFixed(2)+" Mbit/s":n>=1e3?(n/1e3).toFixed(2)+" kbit/s":n.toFixed(2)+" bit/s"},_formatTime:function(n){var i=new Date(n*1e3),t=Math.floor(n/86400);return t=t?t+"d ":"",t+("0"+i.getUTCHours()).slice(-2)+":"+("0"+i.getUTCMinutes()).slice(-2)+":"+("0"+i.getUTCSeconds()).slice(-2)},_formatPercentage:function(n){return(n*100).toFixed(2)+" %"},_renderExtendedProgress:function(n){return this._formatBitrate(n.bitrate)+" | "+this._formatTime((n.total-n.loaded)*8/n.bitrate)+" | "+this._formatPercentage(n.loaded/n.total)+" | "+this._formatFileSize(n.loaded)+" / "+this._formatFileSize(n.total)},_renderTemplate:function(t,i){if(!t)return n();var r=t({files:i,formatFileSize:this._formatFileSize,options:this.options});return r instanceof n?r:n(this.options.templatesContainer).html(r).children()},_renderPreviews:function(t){t.context.find(".preview").each(function(i,r){n(r).append(t.files[i].preview)})},_renderUpload:function(n){return this._renderTemplate(this.options.uploadTemplate,n)},_renderDownload:function(n){return this._renderTemplate(this.options.downloadTemplate,n).find("a[download]").each(this._enableDragToDesktop).end()},_startHandler:function(t){t.preventDefault();var r=n(t.currentTarget),u=r.closest(".template-upload"),i=u.data("data");r.prop("disabled",!0);i&&i.submit&&i.submit()},_cancelHandler:function(t){t.preventDefault();var r=n(t.currentTarget).closest(".template-upload,.template-download"),i=r.data("data")||{};i.context=i.context||r;i.abort?i.abort():(i.errorThrown="abort",this._trigger("fail",t,i))},_deleteHandler:function(t){t.preventDefault();var i=n(t.currentTarget);this._trigger("destroy",t,n.extend({context:i.closest(".template-download"),type:"DELETE"},i.data()))},_forceReflow:function(t){return n.support.transition&&t.length&&t[0].offsetWidth},_transition:function(t){var i=n.Deferred();return n.support.transition&&t.hasClass("fade")&&t.is(":visible")?t.bind(n.support.transition.end,function(r){r.target===t[0]&&(t.unbind(n.support.transition.end),i.resolveWith(t))}).toggleClass("in"):(t.toggleClass("in"),i.resolveWith(t)),i},_initButtonBarEventHandlers:function(){var t=this.element.find(".fileupload-buttonbar"),i=this.options.filesContainer;this._on(t.find(".start"),{click:function(n){n.preventDefault();i.find(".start").click()}});this._on(t.find(".cancel"),{click:function(n){n.preventDefault();i.find(".cancel").click()}});this._on(t.find(".delete"),{click:function(n){n.preventDefault();i.find(".toggle:checked").closest(".template-download").find(".delete").click();t.find(".toggle").prop("checked",!1)}});this._on(t.find(".toggle"),{change:function(t){i.find(".toggle").prop("checked",n(t.currentTarget).is(":checked"))}})},_destroyButtonBarEventHandlers:function(){this._off(this.element.find(".fileupload-buttonbar").find(".start, .cancel, .delete"),"click");this._off(this.element.find(".fileupload-buttonbar .toggle"),"change.")},_initEventHandlers:function(){this._super();this._on(this.options.filesContainer,{"click .start":this._startHandler,"click .cancel":this._cancelHandler,"click .delete":this._deleteHandler});this._initButtonBarEventHandlers()},_destroyEventHandlers:function(){this._destroyButtonBarEventHandlers();this._off(this.options.filesContainer,"click");this._super()},_enableFileInputButton:function(){this.element.find(".fileinput-button input").prop("disabled",!1).parent().removeClass("disabled")},_disableFileInputButton:function(){this.element.find(".fileinput-button input").prop("disabled",!0).parent().addClass("disabled")},_initTemplates:function(){var n=this.options;n.templatesContainer=this.document[0].createElement(n.filesContainer.prop("nodeName"));t&&(n.uploadTemplateId&&(n.uploadTemplate=t(n.uploadTemplateId)),n.downloadTemplateId&&(n.downloadTemplate=t(n.downloadTemplateId)))},_initFilesContainer:function(){var t=this.options;t.filesContainer===undefined?t.filesContainer=this.element.find(".files"):t.filesContainer instanceof n||(t.filesContainer=n(t.filesContainer))},_initSpecialOptions:function(){this._super();this._initFilesContainer();this._initTemplates()},_create:function(){this._super();this._resetFinishedDeferreds();n.support.fileInput||this._disableFileInputButton()},enable:function(){var n=!1;this.options.disabled&&(n=!0);this._super();n&&(this.element.find("input, button").prop("disabled",!1),this._enableFileInputButton())},disable:function(){this.options.disabled||(this.element.find("input, button").prop("disabled",!0),this._disableFileInputButton());this._super()}})})