Commit 68eeb70d authored by Boxiang Sun's avatar Boxiang Sun

erp5_notebook: Upgrade pyodide file to SlapOS version

The previous files were built on normal Linux
The updated files were built on SlapOS
parent 29c1dfca
var Module=typeof pyodide!=="undefined"?pyodide:{};if(!Module.expectedDataFileDownloads){Module.expectedDataFileDownloads=0;Module.finishedDataFileDownloads=0}Module.expectedDataFileDownloads++;(function(){var loadPackage=function(metadata){var PACKAGE_PATH;if(typeof window==="object"){PACKAGE_PATH=window["encodeURIComponent"](window.location.pathname.toString().substring(0,window.location.pathname.toString().lastIndexOf("/"))+"/")}else if(typeof location!=="undefined"){PACKAGE_PATH=encodeURIComponent(location.pathname.toString().substring(0,location.pathname.toString().lastIndexOf("/"))+"/")}else{throw"using preloaded data can only be done on a web page or in a web worker"}var PACKAGE_NAME="cycler.data";var REMOTE_PACKAGE_BASE="cycler.data";if(typeof Module["locateFilePackage"]==="function"&&!Module["locateFile"]){Module["locateFile"]=Module["locateFilePackage"];err("warning: you defined Module.locateFilePackage, that has been renamed to Module.locateFile (using your locateFilePackage for now)")}var REMOTE_PACKAGE_NAME=Module["locateFile"]?Module["locateFile"](REMOTE_PACKAGE_BASE,""):REMOTE_PACKAGE_BASE;var REMOTE_PACKAGE_SIZE=metadata.remote_package_size;var PACKAGE_UUID=metadata.package_uuid;function fetchRemotePackage(packageName,packageSize,callback,errback){var xhr=new XMLHttpRequest;xhr.open("GET",packageName,true);xhr.responseType="arraybuffer";xhr.onprogress=function(event){var url=packageName;var size=packageSize;if(event.total)size=event.total;if(event.loaded){if(!xhr.addedTotal){xhr.addedTotal=true;if(!Module.dataFileDownloads)Module.dataFileDownloads={};Module.dataFileDownloads[url]={loaded:event.loaded,total:size}}else{Module.dataFileDownloads[url].loaded=event.loaded}var total=0;var loaded=0;var num=0;for(var download in Module.dataFileDownloads){var data=Module.dataFileDownloads[download];total+=data.total;loaded+=data.loaded;num++}total=Math.ceil(total*Module.expectedDataFileDownloads/num);if(Module["setStatus"])Module["setStatus"]("Downloading data... ("+loaded+"/"+total+")")}else if(!Module.dataFileDownloads){if(Module["setStatus"])Module["setStatus"]("Downloading data...")}};xhr.onerror=function(event){throw new Error("NetworkError for: "+packageName)};xhr.onload=function(event){if(xhr.status==200||xhr.status==304||xhr.status==206||xhr.status==0&&xhr.response){var packageData=xhr.response;callback(packageData)}else{throw new Error(xhr.statusText+" : "+xhr.responseURL)}};xhr.send(null)}function handleError(error){console.error("package error:",error)}var fetchedCallback=null;var fetched=Module["getPreloadedPackage"]?Module["getPreloadedPackage"](REMOTE_PACKAGE_NAME,REMOTE_PACKAGE_SIZE):null;if(!fetched)fetchRemotePackage(REMOTE_PACKAGE_NAME,REMOTE_PACKAGE_SIZE,function(data){if(fetchedCallback){fetchedCallback(data);fetchedCallback=null}else{fetched=data}},handleError);function runWithFS(){function assert(check,msg){if(!check)throw msg+(new Error).stack}Module["FS_createPath"]("/","lib",true,true);Module["FS_createPath"]("/lib","python3.6",true,true);Module["FS_createPath"]("/lib/python3.6","site-packages",true,true);Module["FS_createPath"]("/lib/python3.6/site-packages","__pycache__",true,true);Module["FS_createPath"]("/lib/python3.6/site-packages","cycler-0.10.0-py3.6.egg-info",true,true);function DataRequest(start,end,audio){this.start=start;this.end=end;this.audio=audio}DataRequest.prototype={requests:{},open:function(mode,name){this.name=name;this.requests[name]=this;Module["addRunDependency"]("fp "+this.name)},send:function(){},onload:function(){var byteArray=this.byteArray.subarray(this.start,this.end);this.finish(byteArray)},finish:function(byteArray){var that=this;Module["FS_createPreloadedFile"](this.name,null,byteArray,true,true,function(){Module["removeRunDependency"]("fp "+that.name)},function(){if(that.audio){Module["removeRunDependency"]("fp "+that.name)}else{err("Preloading file "+that.name+" failed")}},false,true);this.requests[this.name]=null}};var files=metadata.files;for(var i=0;i<files.length;++i){new DataRequest(files[i].start,files[i].end,files[i].audio).open("GET",files[i].filename)}function processPackageData(arrayBuffer){Module.finishedDataFileDownloads++;assert(arrayBuffer,"Loading data file failed.");assert(arrayBuffer instanceof ArrayBuffer,"bad input to processPackageData");var byteArray=new Uint8Array(arrayBuffer);var curr;if(Module["SPLIT_MEMORY"])err("warning: you should run the file packager with --no-heap-copy when SPLIT_MEMORY is used, otherwise copying into the heap may fail due to the splitting");var ptr=Module["getMemory"](byteArray.length);Module["HEAPU8"].set(byteArray,ptr);DataRequest.prototype.byteArray=Module["HEAPU8"].subarray(ptr,ptr+byteArray.length);var files=metadata.files;for(var i=0;i<files.length;++i){DataRequest.prototype.requests[files[i].filename].onload()}Module["removeRunDependency"]("datafile_cycler.data")}Module["addRunDependency"]("datafile_cycler.data");if(!Module.preloadResults)Module.preloadResults={};Module.preloadResults[PACKAGE_NAME]={fromCache:false};if(fetched){processPackageData(fetched);fetched=null}else{fetchedCallback=processPackageData}}if(Module["calledRun"]){runWithFS()}else{if(!Module["preRun"])Module["preRun"]=[];Module["preRun"].push(runWithFS)}};loadPackage({files:[{filename:"/lib/python3.6/site-packages/cycler.py",start:0,end:15959,audio:0},{filename:"/lib/python3.6/site-packages/__pycache__/cycler.cpython-36.pyc",start:15959,end:31999,audio:0},{filename:"/lib/python3.6/site-packages/cycler-0.10.0-py3.6.egg-info/top_level.txt",start:31999,end:32006,audio:0},{filename:"/lib/python3.6/site-packages/cycler-0.10.0-py3.6.egg-info/dependency_links.txt",start:32006,end:32007,audio:0},{filename:"/lib/python3.6/site-packages/cycler-0.10.0-py3.6.egg-info/PKG-INFO",start:32007,end:32720,audio:0},{filename:"/lib/python3.6/site-packages/cycler-0.10.0-py3.6.egg-info/SOURCES.txt",start:32720,end:33110,audio:0},{filename:"/lib/python3.6/site-packages/cycler-0.10.0-py3.6.egg-info/requires.txt",start:33110,end:33114,audio:0}],remote_package_size:33114,package_uuid:"49e462f0-cff7-482f-b8b2-7b414ac838db"})})(); var Module=typeof pyodide._module!=="undefined"?pyodide._module:{};Module.checkABI(1);if(!Module.expectedDataFileDownloads){Module.expectedDataFileDownloads=0;Module.finishedDataFileDownloads=0}Module.expectedDataFileDownloads++;(function(){var loadPackage=function(metadata){var PACKAGE_PATH;if(typeof window==="object"){PACKAGE_PATH=window["encodeURIComponent"](window.location.pathname.toString().substring(0,window.location.pathname.toString().lastIndexOf("/"))+"/")}else if(typeof location!=="undefined"){PACKAGE_PATH=encodeURIComponent(location.pathname.toString().substring(0,location.pathname.toString().lastIndexOf("/"))+"/")}else{throw"using preloaded data can only be done on a web page or in a web worker"}var PACKAGE_NAME="cycler.data";var REMOTE_PACKAGE_BASE="cycler.data";if(typeof Module["locateFilePackage"]==="function"&&!Module["locateFile"]){Module["locateFile"]=Module["locateFilePackage"];err("warning: you defined Module.locateFilePackage, that has been renamed to Module.locateFile (using your locateFilePackage for now)")}var REMOTE_PACKAGE_NAME=Module["locateFile"]?Module["locateFile"](REMOTE_PACKAGE_BASE,""):REMOTE_PACKAGE_BASE;var REMOTE_PACKAGE_SIZE=metadata.remote_package_size;var PACKAGE_UUID=metadata.package_uuid;function fetchRemotePackage(packageName,packageSize,callback,errback){var xhr=new XMLHttpRequest;xhr.open("GET",packageName,true);xhr.responseType="arraybuffer";xhr.onprogress=function(event){var url=packageName;var size=packageSize;if(event.total)size=event.total;if(event.loaded){if(!xhr.addedTotal){xhr.addedTotal=true;if(!Module.dataFileDownloads)Module.dataFileDownloads={};Module.dataFileDownloads[url]={loaded:event.loaded,total:size}}else{Module.dataFileDownloads[url].loaded=event.loaded}var total=0;var loaded=0;var num=0;for(var download in Module.dataFileDownloads){var data=Module.dataFileDownloads[download];total+=data.total;loaded+=data.loaded;num++}total=Math.ceil(total*Module.expectedDataFileDownloads/num);if(Module["setStatus"])Module["setStatus"]("Downloading data... ("+loaded+"/"+total+")")}else if(!Module.dataFileDownloads){if(Module["setStatus"])Module["setStatus"]("Downloading data...")}};xhr.onerror=function(event){throw new Error("NetworkError for: "+packageName)};xhr.onload=function(event){if(xhr.status==200||xhr.status==304||xhr.status==206||xhr.status==0&&xhr.response){var packageData=xhr.response;callback(packageData)}else{throw new Error(xhr.statusText+" : "+xhr.responseURL)}};xhr.send(null)}function handleError(error){console.error("package error:",error)}var fetchedCallback=null;var fetched=Module["getPreloadedPackage"]?Module["getPreloadedPackage"](REMOTE_PACKAGE_NAME,REMOTE_PACKAGE_SIZE):null;if(!fetched)fetchRemotePackage(REMOTE_PACKAGE_NAME,REMOTE_PACKAGE_SIZE,function(data){if(fetchedCallback){fetchedCallback(data);fetchedCallback=null}else{fetched=data}},handleError);function runWithFS(){function assert(check,msg){if(!check)throw msg+(new Error).stack}Module["FS_createPath"]("/","lib",true,true);Module["FS_createPath"]("/lib","python3.7",true,true);Module["FS_createPath"]("/lib/python3.7","site-packages",true,true);Module["FS_createPath"]("/lib/python3.7/site-packages","cycler-0.10.0-py3.7.egg-info",true,true);function DataRequest(start,end,audio){this.start=start;this.end=end;this.audio=audio}DataRequest.prototype={requests:{},open:function(mode,name){this.name=name;this.requests[name]=this;Module["addRunDependency"]("fp "+this.name)},send:function(){},onload:function(){var byteArray=this.byteArray.subarray(this.start,this.end);this.finish(byteArray)},finish:function(byteArray){var that=this;Module["FS_createPreloadedFile"](this.name,null,byteArray,true,true,function(){Module["removeRunDependency"]("fp "+that.name)},function(){if(that.audio){Module["removeRunDependency"]("fp "+that.name)}else{err("Preloading file "+that.name+" failed")}},false,true);this.requests[this.name]=null}};function processPackageData(arrayBuffer){Module.finishedDataFileDownloads++;assert(arrayBuffer,"Loading data file failed.");assert(arrayBuffer instanceof ArrayBuffer,"bad input to processPackageData");var byteArray=new Uint8Array(arrayBuffer);var curr;var compressedData={data:null,cachedOffset:10001,cachedIndexes:[-1,-1],cachedChunks:[null,null],offsets:[0,1123,2222,3501,4513,5774,6981,8302,9628],sizes:[1123,1099,1279,1012,1261,1207,1321,1326,373],successes:[1,1,1,1,1,1,1,1,1]};compressedData.data=byteArray;assert(typeof Module.LZ4==="object","LZ4 not present - was your app build with -s LZ4=1 ?");Module.LZ4.loadPackage({metadata:metadata,compressedData:compressedData});Module["removeRunDependency"]("datafile_cycler.data")}Module["addRunDependency"]("datafile_cycler.data");if(!Module.preloadResults)Module.preloadResults={};Module.preloadResults[PACKAGE_NAME]={fromCache:false};if(fetched){processPackageData(fetched);fetched=null}else{fetchedCallback=processPackageData}}if(Module["calledRun"]){runWithFS()}else{if(!Module["preRun"])Module["preRun"]=[];Module["preRun"].push(runWithFS)}};loadPackage({files:[{filename:"/lib/python3.7/site-packages/cycler.py",start:0,end:15959,audio:0},{filename:"/lib/python3.7/site-packages/cycler-0.10.0-py3.7.egg-info/PKG-INFO",start:15959,end:16672,audio:0},{filename:"/lib/python3.7/site-packages/cycler-0.10.0-py3.7.egg-info/SOURCES.txt",start:16672,end:17062,audio:0},{filename:"/lib/python3.7/site-packages/cycler-0.10.0-py3.7.egg-info/dependency_links.txt",start:17062,end:17063,audio:0},{filename:"/lib/python3.7/site-packages/cycler-0.10.0-py3.7.egg-info/requires.txt",start:17063,end:17067,audio:0},{filename:"/lib/python3.7/site-packages/cycler-0.10.0-py3.7.egg-info/top_level.txt",start:17067,end:17074,audio:0}],remote_package_size:14097,package_uuid:"6c6cb8d4-8fd5-48d5-8f5c-e98266cdfb81"})})();
\ No newline at end of file \ No newline at end of file
var Module=typeof pyodide!=="undefined"?pyodide:{};if(!Module.expectedDataFileDownloads){Module.expectedDataFileDownloads=0;Module.finishedDataFileDownloads=0}Module.expectedDataFileDownloads++;(function(){var loadPackage=function(metadata){var PACKAGE_PATH;if(typeof window==="object"){PACKAGE_PATH=window["encodeURIComponent"](window.location.pathname.toString().substring(0,window.location.pathname.toString().lastIndexOf("/"))+"/")}else if(typeof location!=="undefined"){PACKAGE_PATH=encodeURIComponent(location.pathname.toString().substring(0,location.pathname.toString().lastIndexOf("/"))+"/")}else{throw"using preloaded data can only be done on a web page or in a web worker"}var PACKAGE_NAME="kiwisolver.data";var REMOTE_PACKAGE_BASE="kiwisolver.data";if(typeof Module["locateFilePackage"]==="function"&&!Module["locateFile"]){Module["locateFile"]=Module["locateFilePackage"];err("warning: you defined Module.locateFilePackage, that has been renamed to Module.locateFile (using your locateFilePackage for now)")}var REMOTE_PACKAGE_NAME=Module["locateFile"]?Module["locateFile"](REMOTE_PACKAGE_BASE,""):REMOTE_PACKAGE_BASE;var REMOTE_PACKAGE_SIZE=metadata.remote_package_size;var PACKAGE_UUID=metadata.package_uuid;function fetchRemotePackage(packageName,packageSize,callback,errback){var xhr=new XMLHttpRequest;xhr.open("GET",packageName,true);xhr.responseType="arraybuffer";xhr.onprogress=function(event){var url=packageName;var size=packageSize;if(event.total)size=event.total;if(event.loaded){if(!xhr.addedTotal){xhr.addedTotal=true;if(!Module.dataFileDownloads)Module.dataFileDownloads={};Module.dataFileDownloads[url]={loaded:event.loaded,total:size}}else{Module.dataFileDownloads[url].loaded=event.loaded}var total=0;var loaded=0;var num=0;for(var download in Module.dataFileDownloads){var data=Module.dataFileDownloads[download];total+=data.total;loaded+=data.loaded;num++}total=Math.ceil(total*Module.expectedDataFileDownloads/num);if(Module["setStatus"])Module["setStatus"]("Downloading data... ("+loaded+"/"+total+")")}else if(!Module.dataFileDownloads){if(Module["setStatus"])Module["setStatus"]("Downloading data...")}};xhr.onerror=function(event){throw new Error("NetworkError for: "+packageName)};xhr.onload=function(event){if(xhr.status==200||xhr.status==304||xhr.status==206||xhr.status==0&&xhr.response){var packageData=xhr.response;callback(packageData)}else{throw new Error(xhr.statusText+" : "+xhr.responseURL)}};xhr.send(null)}function handleError(error){console.error("package error:",error)}var fetchedCallback=null;var fetched=Module["getPreloadedPackage"]?Module["getPreloadedPackage"](REMOTE_PACKAGE_NAME,REMOTE_PACKAGE_SIZE):null;if(!fetched)fetchRemotePackage(REMOTE_PACKAGE_NAME,REMOTE_PACKAGE_SIZE,function(data){if(fetchedCallback){fetchedCallback(data);fetchedCallback=null}else{fetched=data}},handleError);function runWithFS(){function assert(check,msg){if(!check)throw msg+(new Error).stack}Module["FS_createPath"]("/","lib",true,true);Module["FS_createPath"]("/lib","python3.6",true,true);Module["FS_createPath"]("/lib/python3.6","site-packages",true,true);Module["FS_createPath"]("/lib/python3.6/site-packages","kiwisolver-1.0.1-py3.6.egg-info",true,true);function DataRequest(start,end,audio){this.start=start;this.end=end;this.audio=audio}DataRequest.prototype={requests:{},open:function(mode,name){this.name=name;this.requests[name]=this;Module["addRunDependency"]("fp "+this.name)},send:function(){},onload:function(){var byteArray=this.byteArray.subarray(this.start,this.end);this.finish(byteArray)},finish:function(byteArray){var that=this;Module["FS_createPreloadedFile"](this.name,null,byteArray,true,true,function(){Module["removeRunDependency"]("fp "+that.name)},function(){if(that.audio){Module["removeRunDependency"]("fp "+that.name)}else{err("Preloading file "+that.name+" failed")}},false,true);this.requests[this.name]=null}};var files=metadata.files;for(var i=0;i<files.length;++i){new DataRequest(files[i].start,files[i].end,files[i].audio).open("GET",files[i].filename)}function processPackageData(arrayBuffer){Module.finishedDataFileDownloads++;assert(arrayBuffer,"Loading data file failed.");assert(arrayBuffer instanceof ArrayBuffer,"bad input to processPackageData");var byteArray=new Uint8Array(arrayBuffer);var curr;if(Module["SPLIT_MEMORY"])err("warning: you should run the file packager with --no-heap-copy when SPLIT_MEMORY is used, otherwise copying into the heap may fail due to the splitting");var ptr=Module["getMemory"](byteArray.length);Module["HEAPU8"].set(byteArray,ptr);DataRequest.prototype.byteArray=Module["HEAPU8"].subarray(ptr,ptr+byteArray.length);var files=metadata.files;for(var i=0;i<files.length;++i){DataRequest.prototype.requests[files[i].filename].onload()}Module["removeRunDependency"]("datafile_kiwisolver.data")}Module["addRunDependency"]("datafile_kiwisolver.data");if(!Module.preloadResults)Module.preloadResults={};Module.preloadResults[PACKAGE_NAME]={fromCache:false};if(fetched){processPackageData(fetched);fetched=null}else{fetchedCallback=processPackageData}}if(Module["calledRun"]){runWithFS()}else{if(!Module["preRun"])Module["preRun"]=[];Module["preRun"].push(runWithFS)}};loadPackage({files:[{filename:"/lib/python3.6/site-packages/kiwisolver.so",start:0,end:144087,audio:0},{filename:"/lib/python3.6/site-packages/kiwisolver-1.0.1-py3.6.egg-info/top_level.txt",start:144087,end:144098,audio:0},{filename:"/lib/python3.6/site-packages/kiwisolver-1.0.1-py3.6.egg-info/dependency_links.txt",start:144098,end:144099,audio:0},{filename:"/lib/python3.6/site-packages/kiwisolver-1.0.1-py3.6.egg-info/PKG-INFO",start:144099,end:145168,audio:0},{filename:"/lib/python3.6/site-packages/kiwisolver-1.0.1-py3.6.egg-info/SOURCES.txt",start:145168,end:145846,audio:0},{filename:"/lib/python3.6/site-packages/kiwisolver-1.0.1-py3.6.egg-info/requires.txt",start:145846,end:145857,audio:0}],remote_package_size:145857,package_uuid:"8f0d0a23-11d4-41e9-9503-f90b53718e97"})})(); var Module=typeof pyodide._module!=="undefined"?pyodide._module:{};Module.checkABI(1);if(!Module.expectedDataFileDownloads){Module.expectedDataFileDownloads=0;Module.finishedDataFileDownloads=0}Module.expectedDataFileDownloads++;(function(){var loadPackage=function(metadata){var PACKAGE_PATH;if(typeof window==="object"){PACKAGE_PATH=window["encodeURIComponent"](window.location.pathname.toString().substring(0,window.location.pathname.toString().lastIndexOf("/"))+"/")}else if(typeof location!=="undefined"){PACKAGE_PATH=encodeURIComponent(location.pathname.toString().substring(0,location.pathname.toString().lastIndexOf("/"))+"/")}else{throw"using preloaded data can only be done on a web page or in a web worker"}var PACKAGE_NAME="kiwisolver.data";var REMOTE_PACKAGE_BASE="kiwisolver.data";if(typeof Module["locateFilePackage"]==="function"&&!Module["locateFile"]){Module["locateFile"]=Module["locateFilePackage"];err("warning: you defined Module.locateFilePackage, that has been renamed to Module.locateFile (using your locateFilePackage for now)")}var REMOTE_PACKAGE_NAME=Module["locateFile"]?Module["locateFile"](REMOTE_PACKAGE_BASE,""):REMOTE_PACKAGE_BASE;var REMOTE_PACKAGE_SIZE=metadata.remote_package_size;var PACKAGE_UUID=metadata.package_uuid;function fetchRemotePackage(packageName,packageSize,callback,errback){var xhr=new XMLHttpRequest;xhr.open("GET",packageName,true);xhr.responseType="arraybuffer";xhr.onprogress=function(event){var url=packageName;var size=packageSize;if(event.total)size=event.total;if(event.loaded){if(!xhr.addedTotal){xhr.addedTotal=true;if(!Module.dataFileDownloads)Module.dataFileDownloads={};Module.dataFileDownloads[url]={loaded:event.loaded,total:size}}else{Module.dataFileDownloads[url].loaded=event.loaded}var total=0;var loaded=0;var num=0;for(var download in Module.dataFileDownloads){var data=Module.dataFileDownloads[download];total+=data.total;loaded+=data.loaded;num++}total=Math.ceil(total*Module.expectedDataFileDownloads/num);if(Module["setStatus"])Module["setStatus"]("Downloading data... ("+loaded+"/"+total+")")}else if(!Module.dataFileDownloads){if(Module["setStatus"])Module["setStatus"]("Downloading data...")}};xhr.onerror=function(event){throw new Error("NetworkError for: "+packageName)};xhr.onload=function(event){if(xhr.status==200||xhr.status==304||xhr.status==206||xhr.status==0&&xhr.response){var packageData=xhr.response;callback(packageData)}else{throw new Error(xhr.statusText+" : "+xhr.responseURL)}};xhr.send(null)}function handleError(error){console.error("package error:",error)}var fetchedCallback=null;var fetched=Module["getPreloadedPackage"]?Module["getPreloadedPackage"](REMOTE_PACKAGE_NAME,REMOTE_PACKAGE_SIZE):null;if(!fetched)fetchRemotePackage(REMOTE_PACKAGE_NAME,REMOTE_PACKAGE_SIZE,function(data){if(fetchedCallback){fetchedCallback(data);fetchedCallback=null}else{fetched=data}},handleError);function runWithFS(){function assert(check,msg){if(!check)throw msg+(new Error).stack}Module["FS_createPath"]("/","lib",true,true);Module["FS_createPath"]("/lib","python3.7",true,true);Module["FS_createPath"]("/lib/python3.7","site-packages",true,true);Module["FS_createPath"]("/lib/python3.7/site-packages","kiwisolver-1.0.1-py3.7.egg-info",true,true);function DataRequest(start,end,audio){this.start=start;this.end=end;this.audio=audio}DataRequest.prototype={requests:{},open:function(mode,name){this.name=name;this.requests[name]=this;Module["addRunDependency"]("fp "+this.name)},send:function(){},onload:function(){var byteArray=this.byteArray.subarray(this.start,this.end);this.finish(byteArray)},finish:function(byteArray){var that=this;Module["FS_createPreloadedFile"](this.name,null,byteArray,true,true,function(){Module["removeRunDependency"]("fp "+that.name)},function(){if(that.audio){Module["removeRunDependency"]("fp "+that.name)}else{err("Preloading file "+that.name+" failed")}},false,true);this.requests[this.name]=null}};function processPackageData(arrayBuffer){Module.finishedDataFileDownloads++;assert(arrayBuffer,"Loading data file failed.");assert(arrayBuffer instanceof ArrayBuffer,"bad input to processPackageData");var byteArray=new Uint8Array(arrayBuffer);var curr;var compressedData={data:null,cachedOffset:74874,cachedIndexes:[-1,-1],cachedChunks:[null,null],offsets:[0,1114,1765,2970,4135,4987,5747,6169,6900,7786,8716,9628,10423,11143,12003,12478,13038,13883,14793,15477,16410,17343,18479,19761,20988,22248,23603,24844,26242,26841,27354,28188,29009,29678,30538,31171,32153,32716,32985,33808,35137,36789,38443,39974,41469,42830,44122,45707,47191,48459,49648,51196,52632,54193,55487,56652,58087,58799,59599,60356,61275,62146,62938,63952,64765,65408,66166,66657,67938,69292,69937,70643,71454,71720,72408,73551],sizes:[1114,651,1205,1165,852,760,422,731,886,930,912,795,720,860,475,560,845,910,684,933,933,1136,1282,1227,1260,1355,1241,1398,599,513,834,821,669,860,633,982,563,269,823,1329,1652,1654,1531,1495,1361,1292,1585,1484,1268,1189,1548,1436,1561,1294,1165,1435,712,800,757,919,871,792,1014,813,643,758,491,1281,1354,645,706,811,266,688,1143,1323],successes:[1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1]};compressedData.data=byteArray;assert(typeof Module.LZ4==="object","LZ4 not present - was your app build with -s LZ4=1 ?");Module.LZ4.loadPackage({metadata:metadata,compressedData:compressedData});Module["removeRunDependency"]("datafile_kiwisolver.data")}Module["addRunDependency"]("datafile_kiwisolver.data");if(!Module.preloadResults)Module.preloadResults={};Module.preloadResults[PACKAGE_NAME]={fromCache:false};if(fetched){processPackageData(fetched);fetched=null}else{fetchedCallback=processPackageData}}if(Module["calledRun"]){runWithFS()}else{if(!Module["preRun"])Module["preRun"]=[];Module["preRun"].push(runWithFS)}};loadPackage({files:[{filename:"/lib/python3.7/site-packages/kiwisolver.so",start:0,end:153821,audio:0},{filename:"/lib/python3.7/site-packages/kiwisolver-1.0.1-py3.7.egg-info/PKG-INFO",start:153821,end:154890,audio:0},{filename:"/lib/python3.7/site-packages/kiwisolver-1.0.1-py3.7.egg-info/SOURCES.txt",start:154890,end:155568,audio:0},{filename:"/lib/python3.7/site-packages/kiwisolver-1.0.1-py3.7.egg-info/dependency_links.txt",start:155568,end:155569,audio:0},{filename:"/lib/python3.7/site-packages/kiwisolver-1.0.1-py3.7.egg-info/requires.txt",start:155569,end:155580,audio:0},{filename:"/lib/python3.7/site-packages/kiwisolver-1.0.1-py3.7.egg-info/top_level.txt",start:155580,end:155591,audio:0}],remote_package_size:78970,package_uuid:"d33a8faa-0455-4018-9c3d-7766a3f8ffc3"})})();
\ No newline at end of file \ No newline at end of file
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
...@@ -2,22 +2,22 @@ ...@@ -2,22 +2,22 @@
* The main bootstrap script for loading pyodide. * The main bootstrap script for loading pyodide.
*/ */
// Regexp for validating package name and URI
var package_name_regexp = '[a-z0-9_][a-z0-9_\-]*'
var package_uri_regexp =
new RegExp('^https?://.*?(' + package_name_regexp + ').js$', 'i');
var package_name_regexp = new RegExp('^' + package_name_regexp + '$', 'i');
var languagePluginLoader = new Promise((resolve, reject) => { var languagePluginLoader = new Promise((resolve, reject) => {
// This is filled in by the Makefile to be either a local file or the // This is filled in by the Makefile to be either a local file or the
// deployed location. TODO: This should be done in a less hacky // deployed location. TODO: This should be done in a less hacky
// way. // way.
const baseURL = ''; var baseURL = ''; // = window.languagePluginUrl || 'https://iodide.io/pyodide-demo/';
// baseURL = baseURL.substr(0, baseURL.lastIndexOf('/')) + '/';
//////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////
// Package loading // Package loading
var packages = undefined;
let loadedPackages = new Array(); let loadedPackages = new Array();
var loadPackagePromise = new Promise((resolve) => resolve());
// Regexp for validating package name and URI
var package_name_regexp = '[a-z0-9_][a-z0-9_\-]*'
var package_uri_regexp =
new RegExp('^https?://.*?(' + package_name_regexp + ').js$', 'i');
var package_name_regexp = new RegExp('^' + package_name_regexp + '$', 'i');
let _uri_to_package_name = (package_uri) => { let _uri_to_package_name = (package_uri) => {
// Generate a unique package name from URI // Generate a unique package name from URI
...@@ -33,10 +33,54 @@ var languagePluginLoader = new Promise((resolve, reject) => { ...@@ -33,10 +33,54 @@ var languagePluginLoader = new Promise((resolve, reject) => {
} }
}; };
let loadPackage = (names) => { // clang-format off
let preloadWasm = () => {
// On Chrome, we have to instantiate wasm asynchronously. Since that
// can't be done synchronously within the call to dlopen, we instantiate
// every .so that comes our way up front, caching it in the
// `preloadedWasm` dictionary.
let promise = new Promise((resolve) => resolve());
let FS = pyodide._module.FS;
function recurseDir(rootpath) {
let dirs;
try {
dirs = FS.readdir(rootpath);
} catch {
return;
}
for (entry of dirs) {
if (entry.startsWith('.')) {
continue;
}
const path = rootpath + entry;
if (entry.endsWith('.so')) {
if (Module['preloadedWasm'][path] === undefined) {
promise = promise
.then(() => Module['loadWebAssemblyModule'](
FS.readFile(path), {loadAsync: true}))
.then((module) => {
Module['preloadedWasm'][path] = module;
});
}
} else if (FS.isDir(FS.lookupPath(path).node.mode)) {
recurseDir(path + '/');
}
}
}
recurseDir('/');
return promise;
}
// clang-format on
let _loadPackage = (names, messageCallback) => {
// DFS to find all dependencies of the requested packages // DFS to find all dependencies of the requested packages
let packages = window.pyodide.packages.dependencies; let packages = window.pyodide._module.packages.dependencies;
let queue = new Array(names); let loadedPackages = window.pyodide.loadedPackages;
let queue = [].concat(names || []);
let toLoad = new Array(); let toLoad = new Array();
while (queue.length) { while (queue.length) {
let package_uri = queue.pop(); let package_uri = queue.pop();
...@@ -44,21 +88,29 @@ var languagePluginLoader = new Promise((resolve, reject) => { ...@@ -44,21 +88,29 @@ var languagePluginLoader = new Promise((resolve, reject) => {
const package = _uri_to_package_name(package_uri); const package = _uri_to_package_name(package_uri);
if (package == null) { if (package == null) {
throw new Error(`Invalid package name or URI '${package_uri}'`); console.error(`Invalid package name or URI '${package_uri}'`);
return;
} else if (package == package_uri) { } else if (package == package_uri) {
package_uri = 'default channel'; package_uri = 'default channel';
} }
console.log(`Loading ${package} from ${package_uri}`);
if (package in loadedPackages) { if (package in loadedPackages) {
if (package_uri != loadedPackages[package]) { if (package_uri != loadedPackages[package]) {
throw new Error( console.error(`URI mismatch, attempting to load package ` +
`URI mismatch, attempting to load package ` + `${package} from ${package_uri} while it is already ` +
`${package} from ${package_uri} while it is already ` + `loaded from ${loadedPackages[package]}!`);
`loaded from ${loadedPackages[package]}!`); return;
}
} else if (package in toLoad) {
if (package_uri != toLoad[package]) {
console.error(`URI mismatch, attempting to load package ` +
`${package} from ${package_uri} while it is already ` +
`being loaded from ${toLoad[package]}!`);
return;
} }
} else { } else {
console.log(`Loading ${package} from ${package_uri}`);
toLoad[package] = package_uri; toLoad[package] = package_uri;
if (packages.hasOwnProperty(package)) { if (packages.hasOwnProperty(package)) {
packages[package].forEach((subpackage) => { packages[package].forEach((subpackage) => {
...@@ -67,27 +119,66 @@ var languagePluginLoader = new Promise((resolve, reject) => { ...@@ -67,27 +119,66 @@ var languagePluginLoader = new Promise((resolve, reject) => {
} }
}); });
} else { } else {
console.log(`Unknown package '${package}'`); console.error(`Unknown package '${package}'`);
} }
} }
} }
window.pyodide._module.locateFile = (path) => {
// handle packages loaded from custom URLs
let package = path.replace(/\.data$/, "");
if (package in toLoad) {
let package_uri = toLoad[package];
if (package_uri != 'default channel') {
return package_uri.replace(/\.js$/, ".data");
};
};
return baseURL + path;
};
let promise = new Promise((resolve, reject) => { let promise = new Promise((resolve, reject) => {
if (Object.keys(toLoad).length === 0) { if (Object.keys(toLoad).length === 0) {
resolve('No new packages to load'); resolve('No new packages to load');
return;
}
const packageList = Array.from(Object.keys(toLoad)).join(', ');
if (messageCallback !== undefined) {
messageCallback(`Loading ${packageList}`);
} }
pyodide.monitorRunDependencies = (n) => { // monitorRunDependencies is called at the beginning and the end of each
if (n === 0) { // package being loaded. We know we are done when it has been called
// exactly "toLoad * 2" times.
var packageCounter = Object.keys(toLoad).length * 2;
window.pyodide._module.monitorRunDependencies = () => {
packageCounter--;
if (packageCounter === 0) {
for (let package in toLoad) { for (let package in toLoad) {
loadedPackages[package] = toLoad[package]; window.pyodide.loadedPackages[package] = toLoad[package];
}
delete window.pyodide._module.monitorRunDependencies;
window.removeEventListener('error', windowErrorHandler);
if (!isFirefox) {
preloadWasm().then(() => {resolve(`Loaded ${packageList}`)});
} else {
resolve(`Loaded ${packageList}`);
} }
delete pyodide.monitorRunDependencies;
const packageList = Array.from(Object.keys(toLoad)).join(', ');
resolve(`Loaded ${packageList}`);
} }
}; };
// Add a handler for any exceptions that are thrown in the process of
// loading a package
var windowErrorHandler = (err) => {
delete window.pyodide._module.monitorRunDependencies;
window.removeEventListener('error', windowErrorHandler);
// Set up a new Promise chain, since this one failed
loadPackagePromise = new Promise((resolve) => resolve());
reject(err.message);
};
window.addEventListener('error', windowErrorHandler);
for (let package in toLoad) { for (let package in toLoad) {
let script = document.createElement('script'); let script = document.createElement('script');
let package_uri = toLoad[package]; let package_uri = toLoad[package];
...@@ -96,7 +187,19 @@ var languagePluginLoader = new Promise((resolve, reject) => { ...@@ -96,7 +187,19 @@ var languagePluginLoader = new Promise((resolve, reject) => {
} else { } else {
script.src = `${package_uri}`; script.src = `${package_uri}`;
} }
script.onerror = (e) => { reject(e); }; script.onerror = (e) => {
// If the package_uri fails to load, call monitorRunDependencies twice
// (so packageCounter will still hit 0 and finish loading), and remove
// the package from toLoad so we don't mark it as loaded.
console.error(`Couldn't load package from URL ${script.src}`)
let index = toLoad.indexOf(package);
if (index !== -1) {
toLoad.splice(index, 1);
}
for (let i = 0; i < 2; i++) {
window.pyodide._module.monitorRunDependencies();
}
};
document.body.appendChild(script); document.body.appendChild(script);
} }
...@@ -107,13 +210,19 @@ var languagePluginLoader = new Promise((resolve, reject) => { ...@@ -107,13 +210,19 @@ var languagePluginLoader = new Promise((resolve, reject) => {
'_importlib.invalidate_caches()\n'); '_importlib.invalidate_caches()\n');
}); });
if (window.iodide !== undefined) {
window.iodide.evalQueue.await([ promise ]);
}
return promise; return promise;
}; };
let loadPackage = (names, messageCallback) => {
/* We want to make sure that only one loadPackage invocation runs at any
* given time, so this creates a "chain" of promises. */
loadPackagePromise =
loadPackagePromise.then(() => _loadPackage(names, messageCallback));
return loadPackagePromise;
};
////////////////////////////////////////////////////////////
// Fix Python recursion limit
function fixRecursionLimit(pyodide) { function fixRecursionLimit(pyodide) {
// The Javascript/Wasm call stack may be too small to handle the default // The Javascript/Wasm call stack may be too small to handle the default
// Python call stack limit of 1000 frames. This is generally the case on // Python call stack limit of 1000 frames. This is generally the case on
...@@ -140,19 +249,39 @@ var languagePluginLoader = new Promise((resolve, reject) => { ...@@ -140,19 +249,39 @@ var languagePluginLoader = new Promise((resolve, reject) => {
`import sys; sys.setrecursionlimit(int(${recursionLimit}))`); `import sys; sys.setrecursionlimit(int(${recursionLimit}))`);
}; };
////////////////////////////////////////////////////////////
// Rearrange namespace for public API
let PUBLIC_API = [
'globals',
'loadPackage',
'loadedPackages',
'pyimport',
'repr',
'runPython',
'runPythonAsync',
'checkABI',
'version',
];
function makePublicAPI(module, public_api) {
var namespace = {_module : module};
for (let name of public_api) {
namespace[name] = module[name];
}
return namespace;
}
//////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////
// Loading Pyodide // Loading Pyodide
let wasmURL = `${baseURL}pyodide.asm.wasm`; let wasmURL = `pyodide.asm.wasm`;
let Module = {}; let Module = {};
window.Module = Module; window.Module = Module;
Module.noImageDecoding = true; Module.noImageDecoding = true;
Module.noAudioDecoding = true; Module.noAudioDecoding = true;
Module.noWasmDecoding = true;
Module.preloadedWasm = {};
let isFirefox = navigator.userAgent.toLowerCase().indexOf('firefox') > -1; let isFirefox = navigator.userAgent.toLowerCase().indexOf('firefox') > -1;
if (isFirefox) {
console.log("Skipping wasm decoding");
Module.noWasmDecoding = true;
}
let wasm_promise = WebAssembly.compileStreaming(fetch(wasmURL)); let wasm_promise = WebAssembly.compileStreaming(fetch(wasmURL));
Module.instantiateWasm = (info, receiveInstance) => { Module.instantiateWasm = (info, receiveInstance) => {
...@@ -161,7 +290,16 @@ var languagePluginLoader = new Promise((resolve, reject) => { ...@@ -161,7 +290,16 @@ var languagePluginLoader = new Promise((resolve, reject) => {
return {}; return {};
}; };
Module.filePackagePrefixURL = baseURL; Module.checkABI = function(ABI_number) {
if (ABI_number !== parseInt('1')) {
var ABI_mismatch_exception =
`ABI numbers differ. Expected 1, got ${ABI_number}`;
console.error(ABI_mismatch_exception);
throw ABI_mismatch_exception;
}
return true;
};
Module.locateFile = (path) => baseURL + path; Module.locateFile = (path) => baseURL + path;
var postRunPromise = new Promise((resolve, reject) => { var postRunPromise = new Promise((resolve, reject) => {
Module.postRun = () => { Module.postRun = () => {
...@@ -169,8 +307,11 @@ var languagePluginLoader = new Promise((resolve, reject) => { ...@@ -169,8 +307,11 @@ var languagePluginLoader = new Promise((resolve, reject) => {
fetch(`${baseURL}packages.json`) fetch(`${baseURL}packages.json`)
.then((response) => response.json()) .then((response) => response.json())
.then((json) => { .then((json) => {
window.pyodide.packages = json; fixRecursionLimit(window.pyodide);
fixRecursionLimit(pyodide); window.pyodide.globals =
window.pyodide.runPython('import sys\nsys.modules["__main__"]');
window.pyodide = makePublicAPI(window.pyodide, PUBLIC_API);
window.pyodide._module.packages = json;
resolve(); resolve();
}); });
}; };
...@@ -189,12 +330,16 @@ var languagePluginLoader = new Promise((resolve, reject) => { ...@@ -189,12 +330,16 @@ var languagePluginLoader = new Promise((resolve, reject) => {
Promise.all([ postRunPromise, dataLoadPromise ]).then(() => resolve()); Promise.all([ postRunPromise, dataLoadPromise ]).then(() => resolve());
let data_script = document.createElement('script'); let data_script = document.createElement('script');
data_script.src = `${baseURL}pyodide.asm.data.js`; data_script.src = `pyodide.asm.data.js`;
data_script.onload = (event) => { data_script.onload = (event) => {
let script = document.createElement('script'); let script = document.createElement('script');
script.src = `${baseURL}pyodide.asm.js`; script.src = `pyodide.asm.js`;
script.onload = () => { script.onload = () => {
// The emscripten module needs to be at this location for the core
// filesystem to install itself. Once that's complete, it will be replaced
// by the call to `makePublicAPI` with a more limited public API.
window.pyodide = pyodide(Module); window.pyodide = pyodide(Module);
window.pyodide.loadedPackages = new Array();
window.pyodide.loadPackage = loadPackage; window.pyodide.loadPackage = loadPackage;
}; };
document.head.appendChild(script); document.head.appendChild(script);
...@@ -216,7 +361,8 @@ var languagePluginLoader = new Promise((resolve, reject) => { ...@@ -216,7 +361,8 @@ var languagePluginLoader = new Promise((resolve, reject) => {
// Add a custom output handler for Python objects // Add a custom output handler for Python objects
window.iodide.addOutputHandler({ window.iodide.addOutputHandler({
shouldHandle : (val) => { shouldHandle : (val) => {
return (typeof val === 'function' && pyodide.PyProxy.isPyProxy(val)); return (typeof val === 'function' &&
pyodide._module.PyProxy.isPyProxy(val));
}, },
render : (val) => { render : (val) => {
......
var Module=typeof pyodide!=="undefined"?pyodide:{};if(!Module.expectedDataFileDownloads){Module.expectedDataFileDownloads=0;Module.finishedDataFileDownloads=0}Module.expectedDataFileDownloads++;(function(){var loadPackage=function(metadata){var PACKAGE_PATH;if(typeof window==="object"){PACKAGE_PATH=window["encodeURIComponent"](window.location.pathname.toString().substring(0,window.location.pathname.toString().lastIndexOf("/"))+"/")}else if(typeof location!=="undefined"){PACKAGE_PATH=encodeURIComponent(location.pathname.toString().substring(0,location.pathname.toString().lastIndexOf("/"))+"/")}else{throw"using preloaded data can only be done on a web page or in a web worker"}var PACKAGE_NAME="pyparsing.data";var REMOTE_PACKAGE_BASE="pyparsing.data";if(typeof Module["locateFilePackage"]==="function"&&!Module["locateFile"]){Module["locateFile"]=Module["locateFilePackage"];err("warning: you defined Module.locateFilePackage, that has been renamed to Module.locateFile (using your locateFilePackage for now)")}var REMOTE_PACKAGE_NAME=Module["locateFile"]?Module["locateFile"](REMOTE_PACKAGE_BASE,""):REMOTE_PACKAGE_BASE;var REMOTE_PACKAGE_SIZE=metadata.remote_package_size;var PACKAGE_UUID=metadata.package_uuid;function fetchRemotePackage(packageName,packageSize,callback,errback){var xhr=new XMLHttpRequest;xhr.open("GET",packageName,true);xhr.responseType="arraybuffer";xhr.onprogress=function(event){var url=packageName;var size=packageSize;if(event.total)size=event.total;if(event.loaded){if(!xhr.addedTotal){xhr.addedTotal=true;if(!Module.dataFileDownloads)Module.dataFileDownloads={};Module.dataFileDownloads[url]={loaded:event.loaded,total:size}}else{Module.dataFileDownloads[url].loaded=event.loaded}var total=0;var loaded=0;var num=0;for(var download in Module.dataFileDownloads){var data=Module.dataFileDownloads[download];total+=data.total;loaded+=data.loaded;num++}total=Math.ceil(total*Module.expectedDataFileDownloads/num);if(Module["setStatus"])Module["setStatus"]("Downloading data... ("+loaded+"/"+total+")")}else if(!Module.dataFileDownloads){if(Module["setStatus"])Module["setStatus"]("Downloading data...")}};xhr.onerror=function(event){throw new Error("NetworkError for: "+packageName)};xhr.onload=function(event){if(xhr.status==200||xhr.status==304||xhr.status==206||xhr.status==0&&xhr.response){var packageData=xhr.response;callback(packageData)}else{throw new Error(xhr.statusText+" : "+xhr.responseURL)}};xhr.send(null)}function handleError(error){console.error("package error:",error)}var fetchedCallback=null;var fetched=Module["getPreloadedPackage"]?Module["getPreloadedPackage"](REMOTE_PACKAGE_NAME,REMOTE_PACKAGE_SIZE):null;if(!fetched)fetchRemotePackage(REMOTE_PACKAGE_NAME,REMOTE_PACKAGE_SIZE,function(data){if(fetchedCallback){fetchedCallback(data);fetchedCallback=null}else{fetched=data}},handleError);function runWithFS(){function assert(check,msg){if(!check)throw msg+(new Error).stack}Module["FS_createPath"]("/","lib",true,true);Module["FS_createPath"]("/lib","python3.6",true,true);Module["FS_createPath"]("/lib/python3.6","site-packages",true,true);Module["FS_createPath"]("/lib/python3.6/site-packages","pyparsing-2.2.0-py3.6.egg-info",true,true);Module["FS_createPath"]("/lib/python3.6/site-packages","__pycache__",true,true);function DataRequest(start,end,audio){this.start=start;this.end=end;this.audio=audio}DataRequest.prototype={requests:{},open:function(mode,name){this.name=name;this.requests[name]=this;Module["addRunDependency"]("fp "+this.name)},send:function(){},onload:function(){var byteArray=this.byteArray.subarray(this.start,this.end);this.finish(byteArray)},finish:function(byteArray){var that=this;Module["FS_createPreloadedFile"](this.name,null,byteArray,true,true,function(){Module["removeRunDependency"]("fp "+that.name)},function(){if(that.audio){Module["removeRunDependency"]("fp "+that.name)}else{err("Preloading file "+that.name+" failed")}},false,true);this.requests[this.name]=null}};var files=metadata.files;for(var i=0;i<files.length;++i){new DataRequest(files[i].start,files[i].end,files[i].audio).open("GET",files[i].filename)}function processPackageData(arrayBuffer){Module.finishedDataFileDownloads++;assert(arrayBuffer,"Loading data file failed.");assert(arrayBuffer instanceof ArrayBuffer,"bad input to processPackageData");var byteArray=new Uint8Array(arrayBuffer);var curr;if(Module["SPLIT_MEMORY"])err("warning: you should run the file packager with --no-heap-copy when SPLIT_MEMORY is used, otherwise copying into the heap may fail due to the splitting");var ptr=Module["getMemory"](byteArray.length);Module["HEAPU8"].set(byteArray,ptr);DataRequest.prototype.byteArray=Module["HEAPU8"].subarray(ptr,ptr+byteArray.length);var files=metadata.files;for(var i=0;i<files.length;++i){DataRequest.prototype.requests[files[i].filename].onload()}Module["removeRunDependency"]("datafile_pyparsing.data")}Module["addRunDependency"]("datafile_pyparsing.data");if(!Module.preloadResults)Module.preloadResults={};Module.preloadResults[PACKAGE_NAME]={fromCache:false};if(fetched){processPackageData(fetched);fetched=null}else{fetchedCallback=processPackageData}}if(Module["calledRun"]){runWithFS()}else{if(!Module["preRun"])Module["preRun"]=[];Module["preRun"].push(runWithFS)}};loadPackage({files:[{filename:"/lib/python3.6/site-packages/pyparsing.py",start:0,end:231121,audio:0},{filename:"/lib/python3.6/site-packages/pyparsing-2.2.0-py3.6.egg-info/top_level.txt",start:231121,end:231131,audio:0},{filename:"/lib/python3.6/site-packages/pyparsing-2.2.0-py3.6.egg-info/dependency_links.txt",start:231131,end:231132,audio:0},{filename:"/lib/python3.6/site-packages/pyparsing-2.2.0-py3.6.egg-info/PKG-INFO",start:231132,end:232052,audio:0},{filename:"/lib/python3.6/site-packages/pyparsing-2.2.0-py3.6.egg-info/SOURCES.txt",start:232052,end:237111,audio:0},{filename:"/lib/python3.6/site-packages/__pycache__/pyparsing.cpython-36.pyc",start:237111,end:439358,audio:0}],remote_package_size:439358,package_uuid:"28aa4f4a-c37c-41cd-a4e5-cc0435e7a49e"})})(); var Module=typeof pyodide._module!=="undefined"?pyodide._module:{};Module.checkABI(1);if(!Module.expectedDataFileDownloads){Module.expectedDataFileDownloads=0;Module.finishedDataFileDownloads=0}Module.expectedDataFileDownloads++;(function(){var loadPackage=function(metadata){var PACKAGE_PATH;if(typeof window==="object"){PACKAGE_PATH=window["encodeURIComponent"](window.location.pathname.toString().substring(0,window.location.pathname.toString().lastIndexOf("/"))+"/")}else if(typeof location!=="undefined"){PACKAGE_PATH=encodeURIComponent(location.pathname.toString().substring(0,location.pathname.toString().lastIndexOf("/"))+"/")}else{throw"using preloaded data can only be done on a web page or in a web worker"}var PACKAGE_NAME="pyparsing.data";var REMOTE_PACKAGE_BASE="pyparsing.data";if(typeof Module["locateFilePackage"]==="function"&&!Module["locateFile"]){Module["locateFile"]=Module["locateFilePackage"];err("warning: you defined Module.locateFilePackage, that has been renamed to Module.locateFile (using your locateFilePackage for now)")}var REMOTE_PACKAGE_NAME=Module["locateFile"]?Module["locateFile"](REMOTE_PACKAGE_BASE,""):REMOTE_PACKAGE_BASE;var REMOTE_PACKAGE_SIZE=metadata.remote_package_size;var PACKAGE_UUID=metadata.package_uuid;function fetchRemotePackage(packageName,packageSize,callback,errback){var xhr=new XMLHttpRequest;xhr.open("GET",packageName,true);xhr.responseType="arraybuffer";xhr.onprogress=function(event){var url=packageName;var size=packageSize;if(event.total)size=event.total;if(event.loaded){if(!xhr.addedTotal){xhr.addedTotal=true;if(!Module.dataFileDownloads)Module.dataFileDownloads={};Module.dataFileDownloads[url]={loaded:event.loaded,total:size}}else{Module.dataFileDownloads[url].loaded=event.loaded}var total=0;var loaded=0;var num=0;for(var download in Module.dataFileDownloads){var data=Module.dataFileDownloads[download];total+=data.total;loaded+=data.loaded;num++}total=Math.ceil(total*Module.expectedDataFileDownloads/num);if(Module["setStatus"])Module["setStatus"]("Downloading data... ("+loaded+"/"+total+")")}else if(!Module.dataFileDownloads){if(Module["setStatus"])Module["setStatus"]("Downloading data...")}};xhr.onerror=function(event){throw new Error("NetworkError for: "+packageName)};xhr.onload=function(event){if(xhr.status==200||xhr.status==304||xhr.status==206||xhr.status==0&&xhr.response){var packageData=xhr.response;callback(packageData)}else{throw new Error(xhr.statusText+" : "+xhr.responseURL)}};xhr.send(null)}function handleError(error){console.error("package error:",error)}var fetchedCallback=null;var fetched=Module["getPreloadedPackage"]?Module["getPreloadedPackage"](REMOTE_PACKAGE_NAME,REMOTE_PACKAGE_SIZE):null;if(!fetched)fetchRemotePackage(REMOTE_PACKAGE_NAME,REMOTE_PACKAGE_SIZE,function(data){if(fetchedCallback){fetchedCallback(data);fetchedCallback=null}else{fetched=data}},handleError);function runWithFS(){function assert(check,msg){if(!check)throw msg+(new Error).stack}Module["FS_createPath"]("/","lib",true,true);Module["FS_createPath"]("/lib","python3.7",true,true);Module["FS_createPath"]("/lib/python3.7","site-packages",true,true);Module["FS_createPath"]("/lib/python3.7/site-packages","pyparsing-2.2.0-py3.7.egg-info",true,true);function DataRequest(start,end,audio){this.start=start;this.end=end;this.audio=audio}DataRequest.prototype={requests:{},open:function(mode,name){this.name=name;this.requests[name]=this;Module["addRunDependency"]("fp "+this.name)},send:function(){},onload:function(){var byteArray=this.byteArray.subarray(this.start,this.end);this.finish(byteArray)},finish:function(byteArray){var that=this;Module["FS_createPreloadedFile"](this.name,null,byteArray,true,true,function(){Module["removeRunDependency"]("fp "+that.name)},function(){if(that.audio){Module["removeRunDependency"]("fp "+that.name)}else{err("Preloading file "+that.name+" failed")}},false,true);this.requests[this.name]=null}};function processPackageData(arrayBuffer){Module.finishedDataFileDownloads++;assert(arrayBuffer,"Loading data file failed.");assert(arrayBuffer instanceof ArrayBuffer,"bad input to processPackageData");var byteArray=new Uint8Array(arrayBuffer);var curr;var compressedData={data:null,cachedOffset:130565,cachedIndexes:[-1,-1],cachedChunks:[null,null],offsets:[0,1665,3098,4575,6063,7133,8413,9533,10443,11469,12534,13651,14654,15736,16836,17965,18915,20073,21183,22208,23443,24729,25824,26990,28156,29473,30657,31714,32472,33430,34117,35284,36515,37735,38818,40007,41108,42184,43137,43986,44506,45363,46500,47589,48727,49912,50786,51865,52989,54276,55340,56566,57642,59050,60022,60950,62289,63533,64457,65576,66847,68106,69156,70091,70976,72127,72962,74166,75314,76341,77468,78759,79767,80905,81796,82987,84088,85195,86396,87629,88834,89921,91172,92336,93560,94664,95953,97236,98550,99730,101037,102336,103674,105050,106475,107651,108810,110073,111382,112695,113998,114958,116058,117342,118158,119407,120422,121746,122659,123563,124637,125586,126953,128131,129141,130035],sizes:[1665,1433,1477,1488,1070,1280,1120,910,1026,1065,1117,1003,1082,1100,1129,950,1158,1110,1025,1235,1286,1095,1166,1166,1317,1184,1057,758,958,687,1167,1231,1220,1083,1189,1101,1076,953,849,520,857,1137,1089,1138,1185,874,1079,1124,1287,1064,1226,1076,1408,972,928,1339,1244,924,1119,1271,1259,1050,935,885,1151,835,1204,1148,1027,1127,1291,1008,1138,891,1191,1101,1107,1201,1233,1205,1087,1251,1164,1224,1104,1289,1283,1314,1180,1307,1299,1338,1376,1425,1176,1159,1263,1309,1313,1303,960,1100,1284,816,1249,1015,1324,913,904,1074,949,1367,1178,1010,894,530],successes:[1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1]};compressedData.data=byteArray;assert(typeof Module.LZ4==="object","LZ4 not present - was your app build with -s LZ4=1 ?");Module.LZ4.loadPackage({metadata:metadata,compressedData:compressedData});Module["removeRunDependency"]("datafile_pyparsing.data")}Module["addRunDependency"]("datafile_pyparsing.data");if(!Module.preloadResults)Module.preloadResults={};Module.preloadResults[PACKAGE_NAME]={fromCache:false};if(fetched){processPackageData(fetched);fetched=null}else{fetchedCallback=processPackageData}}if(Module["calledRun"]){runWithFS()}else{if(!Module["preRun"])Module["preRun"]=[];Module["preRun"].push(runWithFS)}};loadPackage({files:[{filename:"/lib/python3.7/site-packages/pyparsing.py",start:0,end:231121,audio:0},{filename:"/lib/python3.7/site-packages/pyparsing-2.2.0-py3.7.egg-info/PKG-INFO",start:231121,end:232041,audio:0},{filename:"/lib/python3.7/site-packages/pyparsing-2.2.0-py3.7.egg-info/SOURCES.txt",start:232041,end:237100,audio:0},{filename:"/lib/python3.7/site-packages/pyparsing-2.2.0-py3.7.egg-info/dependency_links.txt",start:237100,end:237101,audio:0},{filename:"/lib/python3.7/site-packages/pyparsing-2.2.0-py3.7.egg-info/top_level.txt",start:237101,end:237111,audio:0}],remote_package_size:134661,package_uuid:"21d46ad8-2374-42c2-a3da-4f5fb13a76e0"})})();
\ No newline at end of file \ No newline at end of file
var Module=typeof pyodide!=="undefined"?pyodide:{};if(!Module.expectedDataFileDownloads){Module.expectedDataFileDownloads=0;Module.finishedDataFileDownloads=0}Module.expectedDataFileDownloads++;(function(){var loadPackage=function(metadata){var PACKAGE_PATH;if(typeof window==="object"){PACKAGE_PATH=window["encodeURIComponent"](window.location.pathname.toString().substring(0,window.location.pathname.toString().lastIndexOf("/"))+"/")}else if(typeof location!=="undefined"){PACKAGE_PATH=encodeURIComponent(location.pathname.toString().substring(0,location.pathname.toString().lastIndexOf("/"))+"/")}else{throw"using preloaded data can only be done on a web page or in a web worker"}var PACKAGE_NAME="python-dateutil.data";var REMOTE_PACKAGE_BASE="python-dateutil.data";if(typeof Module["locateFilePackage"]==="function"&&!Module["locateFile"]){Module["locateFile"]=Module["locateFilePackage"];err("warning: you defined Module.locateFilePackage, that has been renamed to Module.locateFile (using your locateFilePackage for now)")}var REMOTE_PACKAGE_NAME=Module["locateFile"]?Module["locateFile"](REMOTE_PACKAGE_BASE,""):REMOTE_PACKAGE_BASE;var REMOTE_PACKAGE_SIZE=metadata.remote_package_size;var PACKAGE_UUID=metadata.package_uuid;function fetchRemotePackage(packageName,packageSize,callback,errback){var xhr=new XMLHttpRequest;xhr.open("GET",packageName,true);xhr.responseType="arraybuffer";xhr.onprogress=function(event){var url=packageName;var size=packageSize;if(event.total)size=event.total;if(event.loaded){if(!xhr.addedTotal){xhr.addedTotal=true;if(!Module.dataFileDownloads)Module.dataFileDownloads={};Module.dataFileDownloads[url]={loaded:event.loaded,total:size}}else{Module.dataFileDownloads[url].loaded=event.loaded}var total=0;var loaded=0;var num=0;for(var download in Module.dataFileDownloads){var data=Module.dataFileDownloads[download];total+=data.total;loaded+=data.loaded;num++}total=Math.ceil(total*Module.expectedDataFileDownloads/num);if(Module["setStatus"])Module["setStatus"]("Downloading data... ("+loaded+"/"+total+")")}else if(!Module.dataFileDownloads){if(Module["setStatus"])Module["setStatus"]("Downloading data...")}};xhr.onerror=function(event){throw new Error("NetworkError for: "+packageName)};xhr.onload=function(event){if(xhr.status==200||xhr.status==304||xhr.status==206||xhr.status==0&&xhr.response){var packageData=xhr.response;callback(packageData)}else{throw new Error(xhr.statusText+" : "+xhr.responseURL)}};xhr.send(null)}function handleError(error){console.error("package error:",error)}var fetchedCallback=null;var fetched=Module["getPreloadedPackage"]?Module["getPreloadedPackage"](REMOTE_PACKAGE_NAME,REMOTE_PACKAGE_SIZE):null;if(!fetched)fetchRemotePackage(REMOTE_PACKAGE_NAME,REMOTE_PACKAGE_SIZE,function(data){if(fetchedCallback){fetchedCallback(data);fetchedCallback=null}else{fetched=data}},handleError);function runWithFS(){function assert(check,msg){if(!check)throw msg+(new Error).stack}Module["FS_createPath"]("/","lib",true,true);Module["FS_createPath"]("/lib","python3.6",true,true);Module["FS_createPath"]("/lib/python3.6","site-packages",true,true);Module["FS_createPath"]("/lib/python3.6/site-packages","dateutil",true,true);Module["FS_createPath"]("/lib/python3.6/site-packages/dateutil","__pycache__",true,true);Module["FS_createPath"]("/lib/python3.6/site-packages/dateutil","tz",true,true);Module["FS_createPath"]("/lib/python3.6/site-packages/dateutil/tz","__pycache__",true,true);Module["FS_createPath"]("/lib/python3.6/site-packages/dateutil","parser",true,true);Module["FS_createPath"]("/lib/python3.6/site-packages/dateutil/parser","__pycache__",true,true);Module["FS_createPath"]("/lib/python3.6/site-packages/dateutil","zoneinfo",true,true);Module["FS_createPath"]("/lib/python3.6/site-packages/dateutil/zoneinfo","__pycache__",true,true);Module["FS_createPath"]("/lib/python3.6/site-packages","python_dateutil-2.7.2-py3.6.egg-info",true,true);function DataRequest(start,end,audio){this.start=start;this.end=end;this.audio=audio}DataRequest.prototype={requests:{},open:function(mode,name){this.name=name;this.requests[name]=this;Module["addRunDependency"]("fp "+this.name)},send:function(){},onload:function(){var byteArray=this.byteArray.subarray(this.start,this.end);this.finish(byteArray)},finish:function(byteArray){var that=this;Module["FS_createPreloadedFile"](this.name,null,byteArray,true,true,function(){Module["removeRunDependency"]("fp "+that.name)},function(){if(that.audio){Module["removeRunDependency"]("fp "+that.name)}else{err("Preloading file "+that.name+" failed")}},false,true);this.requests[this.name]=null}};var files=metadata.files;for(var i=0;i<files.length;++i){new DataRequest(files[i].start,files[i].end,files[i].audio).open("GET",files[i].filename)}function processPackageData(arrayBuffer){Module.finishedDataFileDownloads++;assert(arrayBuffer,"Loading data file failed.");assert(arrayBuffer instanceof ArrayBuffer,"bad input to processPackageData");var byteArray=new Uint8Array(arrayBuffer);var curr;if(Module["SPLIT_MEMORY"])err("warning: you should run the file packager with --no-heap-copy when SPLIT_MEMORY is used, otherwise copying into the heap may fail due to the splitting");var ptr=Module["getMemory"](byteArray.length);Module["HEAPU8"].set(byteArray,ptr);DataRequest.prototype.byteArray=Module["HEAPU8"].subarray(ptr,ptr+byteArray.length);var files=metadata.files;for(var i=0;i<files.length;++i){DataRequest.prototype.requests[files[i].filename].onload()}Module["removeRunDependency"]("datafile_python-dateutil.data")}Module["addRunDependency"]("datafile_python-dateutil.data");if(!Module.preloadResults)Module.preloadResults={};Module.preloadResults[PACKAGE_NAME]={fromCache:false};if(fetched){processPackageData(fetched);fetched=null}else{fetchedCallback=processPackageData}}if(Module["calledRun"]){runWithFS()}else{if(!Module["preRun"])Module["preRun"]=[];Module["preRun"].push(runWithFS)}};loadPackage({files:[{filename:"/lib/python3.6/site-packages/dateutil/_common.py",start:0,end:932,audio:0},{filename:"/lib/python3.6/site-packages/dateutil/tzwin.py",start:932,end:991,audio:0},{filename:"/lib/python3.6/site-packages/dateutil/rrule.py",start:991,end:65858,audio:0},{filename:"/lib/python3.6/site-packages/dateutil/easter.py",start:65858,end:68542,audio:0},{filename:"/lib/python3.6/site-packages/dateutil/__init__.py",start:68542,end:68764,audio:0},{filename:"/lib/python3.6/site-packages/dateutil/_version.py",start:68764,end:68880,audio:0},{filename:"/lib/python3.6/site-packages/dateutil/relativedelta.py",start:68880,end:93373,audio:0},{filename:"/lib/python3.6/site-packages/dateutil/utils.py",start:93373,end:95214,audio:0},{filename:"/lib/python3.6/site-packages/dateutil/__pycache__/relativedelta.cpython-36.pyc",start:95214,end:110049,audio:0},{filename:"/lib/python3.6/site-packages/dateutil/__pycache__/tzwin.cpython-36.pyc",start:110049,end:110208,audio:0},{filename:"/lib/python3.6/site-packages/dateutil/__pycache__/utils.cpython-36.pyc",start:110208,end:112291,audio:0},{filename:"/lib/python3.6/site-packages/dateutil/__pycache__/_version.cpython-36.pyc",start:112291,end:112447,audio:0},{filename:"/lib/python3.6/site-packages/dateutil/__pycache__/_common.cpython-36.pyc",start:112447,end:113846,audio:0},{filename:"/lib/python3.6/site-packages/dateutil/__pycache__/__init__.cpython-36.pyc",start:113846,end:114186,audio:0},{filename:"/lib/python3.6/site-packages/dateutil/__pycache__/easter.cpython-36.pyc",start:114186,end:116345,audio:0},{filename:"/lib/python3.6/site-packages/dateutil/__pycache__/rrule.cpython-36.pyc",start:116345,end:158308,audio:0},{filename:"/lib/python3.6/site-packages/dateutil/tz/_common.py",start:158308,end:171200,audio:0},{filename:"/lib/python3.6/site-packages/dateutil/tz/tz.py",start:171200,end:227580,audio:0},{filename:"/lib/python3.6/site-packages/dateutil/tz/_factories.py",start:227580,end:229014,audio:0},{filename:"/lib/python3.6/site-packages/dateutil/tz/__init__.py",start:229014,end:229517,audio:0},{filename:"/lib/python3.6/site-packages/dateutil/tz/win.py",start:229517,end:240835,audio:0},{filename:"/lib/python3.6/site-packages/dateutil/tz/__pycache__/_factories.cpython-36.pyc",start:240835,end:243019,audio:0},{filename:"/lib/python3.6/site-packages/dateutil/tz/__pycache__/win.cpython-36.pyc",start:243019,end:252492,audio:0},{filename:"/lib/python3.6/site-packages/dateutil/tz/__pycache__/_common.cpython-36.pyc",start:252492,end:264717,audio:0},{filename:"/lib/python3.6/site-packages/dateutil/tz/__pycache__/__init__.cpython-36.pyc",start:264717,end:265362,audio:0},{filename:"/lib/python3.6/site-packages/dateutil/tz/__pycache__/tz.cpython-36.pyc",start:265362,end:305860,audio:0},{filename:"/lib/python3.6/site-packages/dateutil/parser/isoparser.py",start:305860,end:318705,audio:0},{filename:"/lib/python3.6/site-packages/dateutil/parser/__init__.py",start:318705,end:320432,audio:0},{filename:"/lib/python3.6/site-packages/dateutil/parser/_parser.py",start:320432,end:376190,audio:0},{filename:"/lib/python3.6/site-packages/dateutil/parser/__pycache__/_parser.cpython-36.pyc",start:376190,end:414320,audio:0},{filename:"/lib/python3.6/site-packages/dateutil/parser/__pycache__/isoparser.cpython-36.pyc",start:414320,end:425238,audio:0},{filename:"/lib/python3.6/site-packages/dateutil/parser/__pycache__/__init__.cpython-36.pyc",start:425238,end:427252,audio:0},{filename:"/lib/python3.6/site-packages/dateutil/zoneinfo/rebuild.py",start:427252,end:428971,audio:0},{filename:"/lib/python3.6/site-packages/dateutil/zoneinfo/dateutil-zoneinfo.tar.gz",start:428971,end:568051,audio:0},{filename:"/lib/python3.6/site-packages/dateutil/zoneinfo/__init__.py",start:568051,end:573940,audio:0},{filename:"/lib/python3.6/site-packages/dateutil/zoneinfo/__pycache__/rebuild.cpython-36.pyc",start:573940,end:575800,audio:0},{filename:"/lib/python3.6/site-packages/dateutil/zoneinfo/__pycache__/__init__.cpython-36.pyc",start:575800,end:581385,audio:0},{filename:"/lib/python3.6/site-packages/python_dateutil-2.7.2-py3.6.egg-info/top_level.txt",start:581385,end:581394,audio:0},{filename:"/lib/python3.6/site-packages/python_dateutil-2.7.2-py3.6.egg-info/dependency_links.txt",start:581394,end:581395,audio:0},{filename:"/lib/python3.6/site-packages/python_dateutil-2.7.2-py3.6.egg-info/zip-safe",start:581395,end:581396,audio:0},{filename:"/lib/python3.6/site-packages/python_dateutil-2.7.2-py3.6.egg-info/PKG-INFO",start:581396,end:589214,audio:0},{filename:"/lib/python3.6/site-packages/python_dateutil-2.7.2-py3.6.egg-info/SOURCES.txt",start:589214,end:590799,audio:0},{filename:"/lib/python3.6/site-packages/python_dateutil-2.7.2-py3.6.egg-info/requires.txt",start:590799,end:590809,audio:0}],remote_package_size:590809,package_uuid:"4f0f9fb5-9590-40c6-af98-fa434b9d4140"})})(); var Module=typeof pyodide._module!=="undefined"?pyodide._module:{};Module.checkABI(1);if(!Module.expectedDataFileDownloads){Module.expectedDataFileDownloads=0;Module.finishedDataFileDownloads=0}Module.expectedDataFileDownloads++;(function(){var loadPackage=function(metadata){var PACKAGE_PATH;if(typeof window==="object"){PACKAGE_PATH=window["encodeURIComponent"](window.location.pathname.toString().substring(0,window.location.pathname.toString().lastIndexOf("/"))+"/")}else if(typeof location!=="undefined"){PACKAGE_PATH=encodeURIComponent(location.pathname.toString().substring(0,location.pathname.toString().lastIndexOf("/"))+"/")}else{throw"using preloaded data can only be done on a web page or in a web worker"}var PACKAGE_NAME="python-dateutil.data";var REMOTE_PACKAGE_BASE="python-dateutil.data";if(typeof Module["locateFilePackage"]==="function"&&!Module["locateFile"]){Module["locateFile"]=Module["locateFilePackage"];err("warning: you defined Module.locateFilePackage, that has been renamed to Module.locateFile (using your locateFilePackage for now)")}var REMOTE_PACKAGE_NAME=Module["locateFile"]?Module["locateFile"](REMOTE_PACKAGE_BASE,""):REMOTE_PACKAGE_BASE;var REMOTE_PACKAGE_SIZE=metadata.remote_package_size;var PACKAGE_UUID=metadata.package_uuid;function fetchRemotePackage(packageName,packageSize,callback,errback){var xhr=new XMLHttpRequest;xhr.open("GET",packageName,true);xhr.responseType="arraybuffer";xhr.onprogress=function(event){var url=packageName;var size=packageSize;if(event.total)size=event.total;if(event.loaded){if(!xhr.addedTotal){xhr.addedTotal=true;if(!Module.dataFileDownloads)Module.dataFileDownloads={};Module.dataFileDownloads[url]={loaded:event.loaded,total:size}}else{Module.dataFileDownloads[url].loaded=event.loaded}var total=0;var loaded=0;var num=0;for(var download in Module.dataFileDownloads){var data=Module.dataFileDownloads[download];total+=data.total;loaded+=data.loaded;num++}total=Math.ceil(total*Module.expectedDataFileDownloads/num);if(Module["setStatus"])Module["setStatus"]("Downloading data... ("+loaded+"/"+total+")")}else if(!Module.dataFileDownloads){if(Module["setStatus"])Module["setStatus"]("Downloading data...")}};xhr.onerror=function(event){throw new Error("NetworkError for: "+packageName)};xhr.onload=function(event){if(xhr.status==200||xhr.status==304||xhr.status==206||xhr.status==0&&xhr.response){var packageData=xhr.response;callback(packageData)}else{throw new Error(xhr.statusText+" : "+xhr.responseURL)}};xhr.send(null)}function handleError(error){console.error("package error:",error)}var fetchedCallback=null;var fetched=Module["getPreloadedPackage"]?Module["getPreloadedPackage"](REMOTE_PACKAGE_NAME,REMOTE_PACKAGE_SIZE):null;if(!fetched)fetchRemotePackage(REMOTE_PACKAGE_NAME,REMOTE_PACKAGE_SIZE,function(data){if(fetchedCallback){fetchedCallback(data);fetchedCallback=null}else{fetched=data}},handleError);function runWithFS(){function assert(check,msg){if(!check)throw msg+(new Error).stack}Module["FS_createPath"]("/","lib",true,true);Module["FS_createPath"]("/lib","python3.7",true,true);Module["FS_createPath"]("/lib/python3.7","site-packages",true,true);Module["FS_createPath"]("/lib/python3.7/site-packages","dateutil",true,true);Module["FS_createPath"]("/lib/python3.7/site-packages/dateutil","zoneinfo",true,true);Module["FS_createPath"]("/lib/python3.7/site-packages/dateutil","tz",true,true);Module["FS_createPath"]("/lib/python3.7/site-packages/dateutil","parser",true,true);Module["FS_createPath"]("/lib/python3.7/site-packages","python_dateutil-2.7.2-py3.7.egg-info",true,true);function DataRequest(start,end,audio){this.start=start;this.end=end;this.audio=audio}DataRequest.prototype={requests:{},open:function(mode,name){this.name=name;this.requests[name]=this;Module["addRunDependency"]("fp "+this.name)},send:function(){},onload:function(){var byteArray=this.byteArray.subarray(this.start,this.end);this.finish(byteArray)},finish:function(byteArray){var that=this;Module["FS_createPreloadedFile"](this.name,null,byteArray,true,true,function(){Module["removeRunDependency"]("fp "+that.name)},function(){if(that.audio){Module["removeRunDependency"]("fp "+that.name)}else{err("Preloading file "+that.name+" failed")}},false,true);this.requests[this.name]=null}};function processPackageData(arrayBuffer){Module.finishedDataFileDownloads++;assert(arrayBuffer,"Loading data file failed.");assert(arrayBuffer instanceof ArrayBuffer,"bad input to processPackageData");var byteArray=new Uint8Array(arrayBuffer);var curr;var compressedData={data:null,cachedOffset:278934,cachedIndexes:[-1,-1],cachedChunks:[null,null],offsets:[0,1415,2685,3619,4650,5412,6437,7020,8002,8709,9304,10123,11072,12468,13660,14643,15518,16660,18014,18978,20095,21306,22119,23034,23742,24743,25825,26778,27765,28520,29322,30191,31499,32846,33786,34619,35615,36714,37634,38600,39624,40615,41364,42193,42972,44405,45729,46992,48354,49618,51420,53468,55516,57564,59612,61664,63712,65760,67808,69856,71904,73961,76009,78057,80105,82149,84197,86245,88302,90350,92399,94414,96462,98509,100564,102612,104669,106717,108765,110813,112861,114909,116957,119005,121053,123101,125149,127197,129245,131297,133348,135396,137444,139492,141540,143588,145636,147684,149732,151780,153828,155868,157916,159964,162021,164069,166117,168165,170213,172261,174309,176357,178405,180453,182501,184549,186597,188645,190154,191283,192609,193861,194921,196124,197208,198686,199926,201179,202418,203722,204832,205993,207262,208455,209499,210540,211541,212828,213935,215202,216391,217401,218517,219723,220901,222104,223009,224280,225670,226665,227731,229051,230094,230840,231527,232630,233366,234266,235668,236906,238388,239824,240824,241647,242782,243882,244751,245737,246524,247730,248942,250083,251012,251963,252991,254011,254832,255931,257146,258269,259412,260738,261860,263092,263860,264805,265442,266753,268043,269207,270332,271428,272564,273783,274883,276142,277356,278533],sizes:[1415,1270,934,1031,762,1025,583,982,707,595,819,949,1396,1192,983,875,1142,1354,964,1117,1211,813,915,708,1001,1082,953,987,755,802,869,1308,1347,940,833,996,1099,920,966,1024,991,749,829,779,1433,1324,1263,1362,1264,1802,2048,2048,2048,2048,2052,2048,2048,2048,2048,2048,2057,2048,2048,2048,2044,2048,2048,2057,2048,2049,2015,2048,2047,2055,2048,2057,2048,2048,2048,2048,2048,2048,2048,2048,2048,2048,2048,2048,2052,2051,2048,2048,2048,2048,2048,2048,2048,2048,2048,2048,2040,2048,2048,2057,2048,2048,2048,2048,2048,2048,2048,2048,2048,2048,2048,2048,2048,1509,1129,1326,1252,1060,1203,1084,1478,1240,1253,1239,1304,1110,1161,1269,1193,1044,1041,1001,1287,1107,1267,1189,1010,1116,1206,1178,1203,905,1271,1390,995,1066,1320,1043,746,687,1103,736,900,1402,1238,1482,1436,1e3,823,1135,1100,869,986,787,1206,1212,1141,929,951,1028,1020,821,1099,1215,1123,1143,1326,1122,1232,768,945,637,1311,1290,1164,1125,1096,1136,1219,1100,1259,1214,1177,401],successes:[1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,1,0,0,0,0,0,1,0,0,0,1,0,0,1,0,1,1,0,1,1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,1,1,0,0,0,0,0,0,0,0,0,0,1,0,0,1,0,0,0,0,1,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1]};compressedData.data=byteArray;assert(typeof Module.LZ4==="object","LZ4 not present - was your app build with -s LZ4=1 ?");Module.LZ4.loadPackage({metadata:metadata,compressedData:compressedData});Module["removeRunDependency"]("datafile_python-dateutil.data")}Module["addRunDependency"]("datafile_python-dateutil.data");if(!Module.preloadResults)Module.preloadResults={};Module.preloadResults[PACKAGE_NAME]={fromCache:false};if(fetched){processPackageData(fetched);fetched=null}else{fetchedCallback=processPackageData}}if(Module["calledRun"]){runWithFS()}else{if(!Module["preRun"])Module["preRun"]=[];Module["preRun"].push(runWithFS)}};loadPackage({files:[{filename:"/lib/python3.7/site-packages/dateutil/relativedelta.py",start:0,end:24493,audio:0},{filename:"/lib/python3.7/site-packages/dateutil/__init__.py",start:24493,end:24715,audio:0},{filename:"/lib/python3.7/site-packages/dateutil/_version.py",start:24715,end:24831,audio:0},{filename:"/lib/python3.7/site-packages/dateutil/rrule.py",start:24831,end:89698,audio:0},{filename:"/lib/python3.7/site-packages/dateutil/tzwin.py",start:89698,end:89757,audio:0},{filename:"/lib/python3.7/site-packages/dateutil/easter.py",start:89757,end:92441,audio:0},{filename:"/lib/python3.7/site-packages/dateutil/utils.py",start:92441,end:94282,audio:0},{filename:"/lib/python3.7/site-packages/dateutil/_common.py",start:94282,end:95214,audio:0},{filename:"/lib/python3.7/site-packages/dateutil/zoneinfo/__init__.py",start:95214,end:101103,audio:0},{filename:"/lib/python3.7/site-packages/dateutil/zoneinfo/dateutil-zoneinfo.tar.gz",start:101103,end:240183,audio:0},{filename:"/lib/python3.7/site-packages/dateutil/zoneinfo/rebuild.py",start:240183,end:241902,audio:0},{filename:"/lib/python3.7/site-packages/dateutil/tz/__init__.py",start:241902,end:242405,audio:0},{filename:"/lib/python3.7/site-packages/dateutil/tz/_factories.py",start:242405,end:243839,audio:0},{filename:"/lib/python3.7/site-packages/dateutil/tz/win.py",start:243839,end:255157,audio:0},{filename:"/lib/python3.7/site-packages/dateutil/tz/_common.py",start:255157,end:268049,audio:0},{filename:"/lib/python3.7/site-packages/dateutil/tz/tz.py",start:268049,end:324429,audio:0},{filename:"/lib/python3.7/site-packages/dateutil/parser/__init__.py",start:324429,end:326156,audio:0},{filename:"/lib/python3.7/site-packages/dateutil/parser/_parser.py",start:326156,end:381914,audio:0},{filename:"/lib/python3.7/site-packages/dateutil/parser/isoparser.py",start:381914,end:394759,audio:0},{filename:"/lib/python3.7/site-packages/python_dateutil-2.7.2-py3.7.egg-info/PKG-INFO",start:394759,end:402682,audio:0},{filename:"/lib/python3.7/site-packages/python_dateutil-2.7.2-py3.7.egg-info/SOURCES.txt",start:402682,end:404267,audio:0},{filename:"/lib/python3.7/site-packages/python_dateutil-2.7.2-py3.7.egg-info/dependency_links.txt",start:404267,end:404268,audio:0},{filename:"/lib/python3.7/site-packages/python_dateutil-2.7.2-py3.7.egg-info/zip-safe",start:404268,end:404269,audio:0},{filename:"/lib/python3.7/site-packages/python_dateutil-2.7.2-py3.7.egg-info/requires.txt",start:404269,end:404278,audio:0},{filename:"/lib/python3.7/site-packages/python_dateutil-2.7.2-py3.7.egg-info/top_level.txt",start:404278,end:404287,audio:0}],remote_package_size:283030,package_uuid:"5756e8b2-6145-442e-a646-81126769f6fd"})})();
\ No newline at end of file \ No newline at end of file
This source diff could not be displayed because it is too large. You can view the blob instead.
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment