varModule=typeofModule!="undefined"?Module:{};if(!Module.expectedDataFileDownloads){Module.expectedDataFileDownloads=0}Module.expectedDataFileDownloads++;(function(){if(Module["ENVIRONMENT_IS_PTHREAD"])return;varloadPackage=function(metadata){varPACKAGE_PATH="";if(typeofwindow==="object"){PACKAGE_PATH=window["encodeURIComponent"](window.location.pathname.toString().substring(0,window.location.pathname.toString().lastIndexOf("/"))+"/")}elseif(typeofprocess==="undefined"&&typeoflocation!=="undefined"){PACKAGE_PATH=encodeURIComponent(location.pathname.toString().substring(0,location.pathname.toString().lastIndexOf("/"))+"/")}varPACKAGE_NAME="C++ProjectTemplate.data";varREMOTE_PACKAGE_BASE="C++ProjectTemplate.data";if(typeofModule["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)")}varREMOTE_PACKAGE_NAME=Module["locateFile"]?Module["locateFile"](REMOTE_PACKAGE_BASE,""):REMOTE_PACKAGE_BASE;varREMOTE_PACKAGE_SIZE=metadata["remote_package_size"];functionfetchRemotePackage(packageName,packageSize,callback,errback){if(typeofprocess==="object"&&typeofprocess.versions==="object"&&typeofprocess.versions.node==="string"){require("fs").readFile(packageName,function(err,contents){if(err){errback(err)}else{callback(contents.buffer)}});return}varxhr=newXMLHttpRequest;xhr.open("GET",packageName,true);xhr.responseType="arraybuffer";xhr.onprogress=function(event){varurl=packageName;varsize=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}vartotal=0;varloaded=0;varnum=0;for(vardownloadinModule.dataFileDownloads){vardata=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+")")}elseif(!Module.dataFileDownloads){if(Module["setStatus"])Module["setStatus"]("Downloading data...")}};xhr.onerror=function(event){thrownewError("NetworkError for: "+packageName)};xhr.onload=function(event){if(xhr.status==200||xhr.status==304||xhr.status==206||xhr.status==0&&xhr.response){varpackageData=xhr.response;callback(packageData)}else{thrownewError(xhr.statusText+" : "+xhr.responseURL)}};xhr.send(null)}functionhandleError(error){console.error("package error:",error)}varfetchedCallback=null;varfetched=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);functionrunWithFS(){functionassert(check,msg){if(!check)throwmsg+(newError).stack}Module["FS_createPath"]("/","assets",true,true);Module["FS_createPath"]("/assets","maps",true,true);functionDataRequest(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(){varbyteArray=this.byteArray.subarray(this.start,this.end);this.finish(byteArray)},finish:function(byteArray){varthat=this;Module["FS_createDataFile"](this.name,null,byteArray,true,true,true);Module["removeRunDependency"]("fp "+that.name);this.requests[this.name]=null}};varfiles=metadata["files"];for(vari=0;i<files.length;++i){newDataRequest(files[i]["start"],files[i]["end"],files[i]["audio"]||0).open("GET",files[i]["filename"])}functionprocessPackageData(arrayBuffer){assert(arrayBuffer,"Loading data file failed.");assert(arrayBufferinstanceofArrayBuffer,"bad input to processPackageData");varbyteArray=newUint8Array(ar