var BlobBuilder=BlobBuilder||self.WebKitBlobBuilder||self.MozBlobBuilder||self.MSBlobBuilder||(function(view){"\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74";var get_class=function(object){return Object.prototype.toString.call(object).match(/^\[object\s(.*)\]$/)[1];},FakeBlobBuilder=function(){this.data=[];},FakeBlob=function(data,type,encoding){this.data=data;this.size=data.length;this.type=type;this.encoding=encoding;},FBB_proto=FakeBlobBuilder.prototype,FB_proto=FakeBlob.prototype,FileReaderSync=view.FileReaderSync,FileException=function(type){this.code=this[this.name=type];},file_ex_codes=("\x4e\x4f\x54\x5f\x46\x4f\x55\x4e\x44\x5f\x45\x52\x52\x20\x53\x45\x43\x55\x52\x49\x54\x59\x5f\x45\x52\x52\x20\x41\x42\x4f\x52\x54\x5f\x45\x52\x52\x20\x4e\x4f\x54\x5f\x52\x45\x41\x44\x41\x42\x4c\x45\x5f\x45\x52\x52\x20\x45\x4e\x43\x4f\x44\x49\x4e\x47\x5f\x45\x52\x52\x20"+"\x4e\x4f\x5f\x4d\x4f\x44\x49\x46\x49\x43\x41\x54\x49\x4f\x4e\x5f\x41\x4c\x4c\x4f\x57\x45\x44\x5f\x45\x52\x52\x20\x49\x4e\x56\x41\x4c\x49\x44\x5f\x53\x54\x41\x54\x45\x5f\x45\x52\x52\x20\x53\x59\x4e\x54\x41\x58\x5f\x45\x52\x52").split("\x20"),file_ex_code=file_ex_codes.length,real_URL=view.URL||view.webkitURL||view,real_create_object_URL=real_URL.createObjectURL,real_revoke_object_URL=real_URL.revokeObjectURL,URL=real_URL,btoa=view.btoa,atob=view.atob,can_apply_typed_arrays=false,can_apply_typed_arrays_test=function(pass){can_apply_typed_arrays= !pass;},ArrayBuffer=view.ArrayBuffer,Uint8Array=view.Uint8Array;FakeBlobBuilder.fake=FB_proto.fake=true;while(file_ex_code--){FileException.prototype[file_ex_codes[file_ex_code]]=file_ex_code+1;}try{if(Uint8Array){can_apply_typed_arrays_test.apply(0,new Uint8Array(1));}}catch(ex){}if(!real_URL.createObjectURL){URL=view.URL={};}URL.createObjectURL=function(blob){var type=blob.type,data_URI_header;if(type===null){type="\x61\x70\x70\x6c\x69\x63\x61\x74\x69\x6f\x6e\x2f\x6f\x63\x74\x65\x74\x2d\x73\x74\x72\x65\x61\x6d";}if(blob instanceof FakeBlob){data_URI_header="\x64\x61\x74\x61\x3a"+type;if(blob.encoding==="\x62\x61\x73\x65\x36\x34"){return data_URI_header+"\x3b\x62\x61\x73\x65\x36\x34\x2c"+blob.data;}else if(blob.encoding==="\x55\x52\x49"){return data_URI_header+"\x2c"+decodeURIComponent(blob.data);}if(btoa){return data_URI_header+"\x3b\x62\x61\x73\x65\x36\x34\x2c"+btoa(blob.data);}else{return data_URI_header+"\x2c"+encodeURIComponent(blob.data);}}else if(real_create_object_URL){return real_create_object_URL.call(real_URL,blob);}};URL.revokeObjectURL=function(object_URL){if(object_URL.substring(0,5)!=="\x64\x61\x74\x61\x3a"&&real_revoke_object_URL){real_revoke_object_URL.call(real_URL,object_URL);}};FBB_proto.append=function(data){var aT=this.data;if(Uint8Array&&data instanceof ArrayBuffer){if(can_apply_typed_arrays){aT.push(String.fromCharCode.apply(String,new Uint8Array(data)));}else{var str="",buf=new Uint8Array(data),i=0,buf_len=buf.length;for(;i<buf_len;i++){str+=String.fromCharCode(buf[i]);}}}else if(get_class(data)==="\x42\x6c\x6f\x62"||get_class(data)==="\x46\x69\x6c\x65"){if(FileReaderSync){var fr=new FileReaderSync;aT.push(fr.readAsBinaryString(data));}else{throw new FileException("\x4e\x4f\x54\x5f\x52\x45\x41\x44\x41\x42\x4c\x45\x5f\x45\x52\x52");}}else if(data instanceof FakeBlob){if(data.encoding==="\x62\x61\x73\x65\x36\x34"&&atob){aT.push(atob(data.data));}else if(data.encoding==="\x55\x52\x49"){aT.push(decodeURIComponent(data.data));}else if(data.encoding==="\x72\x61\x77"){aT.push(data.data);}}else{if(typeof data!=="\x73\x74\x72\x69\x6e\x67"){data+="";}aT.push(unescape(encodeURIComponent(data)));}};FBB_proto.getBlob=function(type){if(!arguments.length){type=null;}return new FakeBlob(this.data.join(""),type,"\x72\x61\x77");};FBB_proto.toString=function(){return "\x5b\x6f\x62\x6a\x65\x63\x74\x20\x42\x6c\x6f\x62\x42\x75\x69\x6c\x64\x65\x72\x5d";};FB_proto.slice=function(start,end,type){var args=arguments.length;if(args<3){type=null;}return new FakeBlob(this.data.slice(start,args>1?end:this.data.length),type,this.encoding);};FB_proto.toString=function(){return "\x5b\x6f\x62\x6a\x65\x63\x74\x20\x42\x6c\x6f\x62\x5d";};return FakeBlobBuilder;}(self));