diff --git a/.obsidian/community-plugins.json b/.obsidian/community-plugins.json index 88ca7ee..7ddecba 100644 --- a/.obsidian/community-plugins.json +++ b/.obsidian/community-plugins.json @@ -16,5 +16,7 @@ "obsidian-tasks-plugin", "obsidian-git", "copilot", - "mathlive" + "mathlive", + "markitdown", + "obsidian-importer" ] \ No newline at end of file diff --git a/.obsidian/hotkeys.json b/.obsidian/hotkeys.json index 8b0dd8a..42e402c 100644 --- a/.obsidian/hotkeys.json +++ b/.obsidian/hotkeys.json @@ -15,5 +15,14 @@ ], "key": "Q" } + ], + "copilot:copilot-search-orama-db": [ + { + "modifiers": [ + "Alt", + "Shift" + ], + "key": "Q" + } ] } \ No newline at end of file diff --git a/.obsidian/plugins/markitdown/data.json b/.obsidian/plugins/markitdown/data.json new file mode 100644 index 0000000..bc78f97 --- /dev/null +++ b/.obsidian/plugins/markitdown/data.json @@ -0,0 +1,6 @@ +{ + "pythonPath": "\"C:\\Users\\migue\\miniconda3\\envs\\markdown\\python.exe\"", + "enablePlugins": false, + "docintelEndpoint": "", + "outputPath": "" +} \ No newline at end of file diff --git a/.obsidian/plugins/markitdown/main.js b/.obsidian/plugins/markitdown/main.js new file mode 100644 index 0000000..6db6268 --- /dev/null +++ b/.obsidian/plugins/markitdown/main.js @@ -0,0 +1,9 @@ +/* +THIS IS A GENERATED/BUNDLED FILE BY ESBUILD +if you want to view the source, please visit the github repository of this plugin +*/ + +var D=Object.create;var b=Object.defineProperty;var j=Object.getOwnPropertyDescriptor;var B=Object.getOwnPropertyNames;var A=Object.getPrototypeOf,L=Object.prototype.hasOwnProperty;var N=(r,h)=>{for(var t in h)b(r,t,{get:h[t],enumerable:!0})},M=(r,h,t,s)=>{if(h&&typeof h=="object"||typeof h=="function")for(let i of B(h))!L.call(r,i)&&i!==t&&b(r,i,{get:()=>h[i],enumerable:!(s=j(h,i))||s.enumerable});return r};var $=(r,h,t)=>(t=r!=null?D(A(r)):{},M(h||!r||!r.__esModule?b(t,"default",{value:r,enumerable:!0}):t,r)),O=r=>M(b({},"__esModule",{value:!0}),r);var V={};N(V,{default:()=>P});module.exports=O(V);var e=require("obsidian"),u=$(require("fs")),p=$(require("path")),v=require("child_process"),z={pythonPath:"python",enablePlugins:!1,docintelEndpoint:"",outputPath:""},P=class extends e.Plugin{constructor(){super(...arguments);this.pythonInstalled=!1;this.markitdownInstalled=!1}async onload(){await this.loadSettings(),await this.checkDependencies();let t=this.addRibbonIcon("file-text","Convert to Markdown with Markitdown",()=>{new C(this.app,this).open()});this.addCommand({id:"convert-file-markitdown",name:"Convert file to Markdown with Markitdown",callback:()=>{if(!this.markitdownInstalled){new I(this.app,this).open();return}new C(this.app,this).open()}}),this.addCommand({id:"convert-folder-markitdown",name:"Convert folder contents to Markdown with Markitdown",callback:()=>{if(!this.markitdownInstalled){new I(this.app,this).open();return}new S(this.app,this).open()}}),this.addSettingTab(new T(this.app,this))}async checkDependencies(){try{await this.execCommand(`${this.settings.pythonPath} --version`),this.pythonInstalled=!0;try{await this.execCommand(`${this.settings.pythonPath} -m pip show markitdown`),this.markitdownInstalled=!0}catch(t){this.markitdownInstalled=!1}}catch(t){this.pythonInstalled=!1,this.markitdownInstalled=!1,console.error("Failed to check Python installation",t)}}async execCommand(t){return new Promise((s,i)=>{(0,v.exec)(t,(o,f,c)=>{if(o){i(o);return}s(f)})})}async installMarkitdown(){try{return await this.execCommand(`${this.settings.pythonPath} -m pip install 'markitdown[all]'`),this.markitdownInstalled=!0,!0}catch(t){return console.error("Failed to install Markitdown",t),!1}}async convertFile(t,s){return new Promise((i,o)=>{let f=`markitdown "${t}" > "${s}"`;(0,v.exec)(f,(c,n,a)=>{if(c){let g=`${this.settings.pythonPath} -c "from markitdown import convert; convert('${t}', output_file='${s}')"`;(0,v.exec)(g,(l,m,y)=>{if(l){let w=`${this.settings.pythonPath} -m markitdown "${t}" > "${s}"`;(0,v.exec)(w,(d,k,x)=>{if(d){o(new Error(`Markitdown failed to convert the file: ${d.message} +${x}`));return}i(k)});return}i(m)});return}i(n)})})}onunload(){}async loadSettings(){this.settings=Object.assign({},z,await this.loadData())}async saveSettings(){await this.saveData(this.settings)}},C=class extends e.Modal{constructor(t,s){super(t);this.plugin=s}onOpen(){let{contentEl:t}=this;if(t.addClass("markitdown-modal"),t.createEl("h2",{text:"Convert File to Markdown"}),!this.plugin.markitdownInstalled){t.createEl("p",{text:"Markitdown is not installed. Please install it in the settings tab."}),t.createEl("button",{text:"Go to Settings"}).addEventListener("click",()=>{this.close(),"setting"in this.app&&(this.app.setting.open(),this.app.setting.openTabById("obsidian-markitdown"))});return}t.createEl("p",{text:"Select a file to convert:"});let i=t.createDiv("markitdown-file-input-container").createEl("input",{attr:{type:"file",accept:".pdf,.docx,.pptx,.xlsx,.xls,.html,.htm,.txt,.csv,.json,.xml,.jpg,.jpeg,.png,.gif,.wav,.mp3,.zip"}}),o=t.createDiv("markitdown-button-container");o.style.display="flex",o.style.justifyContent="flex-end",o.style.marginTop="20px",o.createEl("button",{text:"Convert"}).addEventListener("click",async()=>{if(i.files&&i.files.length>0){let c=i.files[0];try{let n="";if(this.app.vault.adapter instanceof e.FileSystemAdapter&&(n=this.app.vault.adapter.getBasePath()),!n){new e.Notice("Could not determine vault path. This plugin requires a local vault.");return}let a=this.plugin.settings.outputPath||"";a?(a=p.join(n,a),u.existsSync(a)||u.mkdirSync(a,{recursive:!0})):(a=p.join(n,"markitdown-output"),u.existsSync(a)||u.mkdirSync(a,{recursive:!0}));let g=p.basename(c.name,p.extname(c.name)),l=p.join(a,`${g}.md`);new e.Notice("Converting file...");let m=p.join(a,`${Date.now()}_${c.name}`),y=await c.arrayBuffer();u.writeFileSync(m,Buffer.from(y)),await this.plugin.convertFile(m,l),u.existsSync(m)&&u.unlinkSync(m),await this.app.vault.adapter.exists(l),new e.Notice(`File converted and saved to ${l}`),this.close();let w=p.relative(n,l).replace(/\\/g,"/"),d=this.app.vault.getAbstractFileByPath(w);d instanceof e.TFile&&this.app.workspace.getLeaf().openFile(d)}catch(n){console.error("Error during conversion:",n),new e.Notice(`Error: ${n.message}`)}}else new e.Notice("Please select a file first")})}onClose(){let{contentEl:t}=this;t.empty()}},S=class extends e.Modal{constructor(t,s){super(t);this.plugin=s}onOpen(){let{contentEl:t}=this;if(t.addClass("markitdown-modal"),t.createEl("h2",{text:"Convert Folder Contents to Markdown"}),!this.plugin.markitdownInstalled){t.createEl("p",{text:"Markitdown is not installed. Please install it in the settings tab."}),t.createEl("button",{text:"Go to Settings"}).addEventListener("click",()=>{this.close(),"setting"in this.app&&(this.app.setting.open(),this.app.setting.openTabById("obsidian-markitdown"))});return}t.createEl("p",{text:"Select a folder to process:"});let i=t.createDiv("markitdown-file-input-container").createEl("input",{attr:{type:"file",webkitdirectory:"",directory:""}});t.createEl("p",{text:"Select file types to convert:"});let o=[{name:"PDF Files",ext:".pdf"},{name:"Word Documents",ext:".docx"},{name:"PowerPoint Presentations",ext:".pptx"},{name:"Excel Spreadsheets",ext:".xlsx,.xls"},{name:"Web Pages",ext:".html,.htm"},{name:"Text Files",ext:".txt"},{name:"Data Files",ext:".csv,.json,.xml"},{name:"Images",ext:".jpg,.jpeg,.png,.gif"},{name:"Audio Files",ext:".wav,.mp3"},{name:"Archives",ext:".zip"}],f=t.createDiv("markitdown-checkbox-grid"),c=[];o.forEach(g=>{let l=f.createEl("label",{cls:"markitdown-checkbox-label"}),m=l.createEl("input",{attr:{type:"checkbox",value:g.ext}});m.addEventListener("change",()=>{let y=g.ext.split(",");m.checked?y.forEach(w=>{c.includes(w)||c.push(w)}):y.forEach(w=>{let d=c.indexOf(w);d>-1&&c.splice(d,1)})}),l.appendText(g.name)});let n=t.createDiv("markitdown-button-container");n.style.display="flex",n.style.justifyContent="flex-end",n.style.marginTop="20px",n.createEl("button",{text:"Convert"}).addEventListener("click",async()=>{if(i.files&&i.files.length>0){if(c.length===0){new e.Notice("Please select at least one file type");return}try{let g="";if(this.app.vault.adapter instanceof e.FileSystemAdapter&&(g=this.app.vault.adapter.getBasePath()),!g){new e.Notice("Could not determine vault path. This plugin requires a local vault.");return}let l=this.plugin.settings.outputPath||"";l?(l=p.join(g,l),u.existsSync(l)||u.mkdirSync(l,{recursive:!0})):(l=p.join(g,"markitdown-output"),u.existsSync(l)||u.mkdirSync(l,{recursive:!0}));let m=[];for(let d=0;d{this.close(),"setting"in this.app&&(this.app.setting.open(),this.app.setting.openTabById("obsidian-markitdown"))});return}t.createEl("p",{text:"Markitdown is not installed. Would you like to install it now?"}),t.createEl("p",{text:"This will install the Markitdown Python package using pip."});let s=t.createDiv("markitdown-button-container");s.style.display="flex",s.style.justifyContent="flex-end",s.style.gap="10px",s.style.marginTop="20px",s.createEl("button",{text:"Cancel"}).addEventListener("click",()=>{this.close()});let o=s.createEl("button",{text:"Install Markitdown"});o.addEventListener("click",async()=>{o.disabled=!0,o.setText("Installing...");try{await this.plugin.installMarkitdown()?(new e.Notice("Markitdown installed successfully!"),this.close()):(t.createEl("p",{text:"Failed to install Markitdown. Please check the console for errors."}),o.disabled=!1,o.setText("Try Again"))}catch(f){console.error("Error installing Markitdown:",f),t.createEl("p",{text:`Error: ${f.message}`}),o.disabled=!1,o.setText("Try Again")}})}onClose(){let{contentEl:t}=this;t.empty()}},T=class extends e.PluginSettingTab{constructor(t,s){super(t,s);this.plugin=s}display(){let{containerEl:t}=this;t.empty(),t.createEl("h2",{text:"Markitdown Settings"}),new e.Setting(t).setName("Python Path").setDesc("Path to Python executable (e.g., python, python3, or full path)").addText(n=>n.setPlaceholder("python").setValue(this.plugin.settings.pythonPath).onChange(async a=>{this.plugin.settings.pythonPath=a,await this.plugin.saveSettings(),this.plugin.checkDependencies()})),new e.Setting(t).setName("Enable Markitdown Plugins").setDesc("Enable third-party plugins for Markitdown").addToggle(n=>n.setValue(this.plugin.settings.enablePlugins).onChange(async a=>{this.plugin.settings.enablePlugins=a,await this.plugin.saveSettings()})),new e.Setting(t).setName("Azure Document Intelligence Endpoint").setDesc("Optional: Use Azure Document Intelligence for better conversion (requires API key setup)").addText(n=>n.setPlaceholder("https://your-resource.cognitiveservices.azure.com/").setValue(this.plugin.settings.docintelEndpoint).onChange(async a=>{this.plugin.settings.docintelEndpoint=a,await this.plugin.saveSettings()})),new e.Setting(t).setName("Output Folder").setDesc('Folder path for converted files (relative to vault root, leave empty for default "markitdown-output")').addText(n=>n.setPlaceholder("markitdown-output").setValue(this.plugin.settings.outputPath).onChange(async a=>{this.plugin.settings.outputPath=a,await this.plugin.saveSettings()})),t.createEl("h3",{text:"Status"});let s=t.createDiv("markitdown-status-container"),i=s.createDiv("markitdown-status-item"),o=i.createSpan();o.addClass("markitdown-status-icon"),o.addClass(this.plugin.pythonInstalled?"success":"error"),o.setText(this.plugin.pythonInstalled?"\u2713":"\u2717"),i.createSpan().setText(`Python: ${this.plugin.pythonInstalled?"Installed":"Not installed"}`);let f=s.createDiv("markitdown-status-item"),c=f.createSpan();if(c.addClass("markitdown-status-icon"),c.addClass(this.plugin.markitdownInstalled?"success":"error"),c.setText(this.plugin.markitdownInstalled?"\u2713":"\u2717"),f.createSpan().setText(`Markitdown: ${this.plugin.markitdownInstalled?"Installed":"Not installed"}`),!this.plugin.markitdownInstalled&&this.plugin.pythonInstalled){let n=t.createEl("button",{text:"Install Markitdown",cls:"markitdown-install-button"});n.addEventListener("click",async()=>{n.disabled=!0,n.setText("Installing...");try{await this.plugin.installMarkitdown()?(new e.Notice("Markitdown installed successfully!"),this.display()):(new e.Notice("Failed to install Markitdown. Please check the console for errors."),n.disabled=!1,n.setText("Try Again"))}catch(a){console.error("Error installing Markitdown:",a),new e.Notice(`Error: ${a.message}`),n.disabled=!1,n.setText("Try Again")}})}}}; + +/* nosourcemap */ \ No newline at end of file diff --git a/.obsidian/plugins/markitdown/manifest.json b/.obsidian/plugins/markitdown/manifest.json new file mode 100644 index 0000000..5d1a70d --- /dev/null +++ b/.obsidian/plugins/markitdown/manifest.json @@ -0,0 +1,10 @@ +{ + "id": "markitdown", + "name": "Markitdown File Converter", + "version": "1.0.2", + "minAppVersion": "0.15.0", + "description": "Convert PDFs, Office documents, images, and other file formats to Markdown using Microsoft's Markitdown tool", + "author": "Ethan Troy", + "authorUrl": "https://github.com/ethanolivertroy", + "isDesktopOnly": true +} \ No newline at end of file diff --git a/.obsidian/plugins/markitdown/styles.css b/.obsidian/plugins/markitdown/styles.css new file mode 100644 index 0000000..ddab175 --- /dev/null +++ b/.obsidian/plugins/markitdown/styles.css @@ -0,0 +1,96 @@ +/* +Styles for the Markitdown Obsidian plugin +*/ + +/* Modal styles */ +.markitdown-modal input[type="file"] { + width: 100%; + padding: 8px; + margin: 5px 0; + border: 1px solid var(--background-modifier-border); + border-radius: 4px; +} + +.markitdown-modal button { + background-color: var(--interactive-accent); + color: var(--text-on-accent); + padding: 8px 16px; + border-radius: 4px; + font-weight: 500; + cursor: pointer; + border: none; + transition: background-color 0.2s ease; +} + +.markitdown-modal button:hover { + background-color: var(--interactive-accent-hover); +} + +.markitdown-modal button:disabled { + opacity: 0.6; + cursor: not-allowed; +} + +/* Settings tab status container */ +.markitdown-status-container { + background-color: var(--background-secondary); + padding: 12px; + border-radius: 6px; + margin-bottom: 20px; +} + +.markitdown-status-item { + display: flex; + align-items: center; + margin-bottom: 8px; +} + +.markitdown-status-icon { + margin-right: 8px; + font-weight: bold; +} + +.markitdown-status-icon.success { + color: var(--interactive-success); +} + +.markitdown-status-icon.error { + color: var(--text-error); +} + +/* File type checkbox grid */ +.markitdown-checkbox-grid { + display: grid; + grid-template-columns: 1fr 1fr; + gap: 8px; + margin: 12px 0; +} + +.markitdown-checkbox-label { + display: flex; + align-items: center; + gap: 6px; +} + +/* Installation button */ +.markitdown-install-button { + display: block; + margin-top: 16px; + background-color: var(--interactive-accent); + color: var(--text-on-accent); + padding: 8px 16px; + border-radius: 4px; + font-weight: 500; + cursor: pointer; + border: none; + transition: background-color 0.2s ease; +} + +.markitdown-install-button:hover { + background-color: var(--interactive-accent-hover); +} + +.markitdown-install-button:disabled { + opacity: 0.6; + cursor: not-allowed; +} diff --git a/.obsidian/plugins/obsidian-excalidraw-plugin/data.json b/.obsidian/plugins/obsidian-excalidraw-plugin/data.json index d042f13..483d93b 100644 --- a/.obsidian/plugins/obsidian-excalidraw-plugin/data.json +++ b/.obsidian/plugins/obsidian-excalidraw-plugin/data.json @@ -102,6 +102,8723 @@ "version": 2, "source": "https://github.com/zsviczian/obsidian-excalidraw-plugin/releases/tag/2.9.2", "libraryItems": [ + { + "id": "AqXQC3pXrxv328BPDxGGl", + "status": "published", + "elements": [ + { + "type": "line", + "version": 450, + "versionNonce": 972643491, + "isDeleted": false, + "id": "_D11nWZBcrBcTJ_mVsfZn", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "angle": 4.71238898038469, + "x": 1034.8634796070019, + "y": -312.46066812823074, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "width": 37.25449466036624, + "height": 0, + "seed": 575700395, + "groupIds": [ + "KbYka4iZAXpJuxronqPIM" + ], + "roundness": { + "type": 2 + }, + "boundElements": [], + "updated": 1743585021767, + "link": null, + "locked": false, + "startBinding": null, + "endBinding": null, + "lastCommittedPoint": null, + "startArrowhead": null, + "endArrowhead": null, + "points": [ + [ + 0, + 0 + ], + [ + 37.25449466036624, + 0 + ] + ], + "index": "a0", + "frameId": null + }, + { + "type": "line", + "version": 439, + "versionNonce": 38957837, + "isDeleted": false, + "id": "qlgorkcmAAdGJK7hhIkLK", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "angle": 4.71238898038469, + "x": 1128.1015610462548, + "y": -313.2821093616405, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "width": 41.8347378390039, + "height": 0, + "seed": 743065515, + "groupIds": [ + "KbYka4iZAXpJuxronqPIM" + ], + "roundness": { + "type": 2 + }, + "boundElements": [], + "updated": 1743585021767, + "link": null, + "locked": false, + "startBinding": null, + "endBinding": null, + "lastCommittedPoint": null, + "startArrowhead": null, + "endArrowhead": null, + "points": [ + [ + 0, + 0 + ], + [ + -41.8347378390039, + 0 + ] + ], + "index": "a1", + "frameId": null + }, + { + "id": "pxWNMdJ1nc1Uu5qhqM-ZJ", + "type": "line", + "x": 1058.2265912221317, + "y": -326.9376393380582, + "width": 40.37338511557641, + "height": 28.909311903636876, + "angle": 0, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "groupIds": [ + "KbYka4iZAXpJuxronqPIM" + ], + "roundness": { + "type": 2 + }, + "seed": 947727915, + "version": 43, + "versionNonce": 1485557827, + "isDeleted": false, + "boundElements": [], + "updated": 1743585021767, + "link": null, + "locked": false, + "points": [ + [ + 0, + 0 + ], + [ + 40.37338511557641, + 28.909311903636876 + ] + ], + "lastCommittedPoint": null, + "startBinding": null, + "endBinding": null, + "startArrowhead": null, + "endArrowhead": null, + "index": "a2", + "frameId": null + }, + { + "id": "9dUErlyhEteEC0bNR_bMd", + "type": "ellipse", + "x": 1077.3460823573944, + "y": -314.3915863609842, + "width": 5.730678104086337, + "height": 7.572667280903943, + "angle": 0, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "groupIds": [ + "KbYka4iZAXpJuxronqPIM" + ], + "roundness": { + "type": 2 + }, + "seed": 1379344005, + "version": 87, + "versionNonce": 587893101, + "isDeleted": false, + "boundElements": [], + "updated": 1743585021767, + "link": null, + "locked": false, + "index": "a3", + "frameId": null + }, + { + "id": "Haa4QCyN6nPKt2vBhpba0", + "type": "ellipse", + "x": 1079.5974302221118, + "y": -311.11691204330333, + "width": 0.2046793439499197, + "height": 4.298000770643853, + "angle": 0, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "groupIds": [ + "KbYka4iZAXpJuxronqPIM" + ], + "roundness": { + "type": 2 + }, + "seed": 411329221, + "version": 29, + "versionNonce": 1338953699, + "isDeleted": false, + "boundElements": [], + "updated": 1743585021767, + "link": null, + "locked": false, + "index": "a4", + "frameId": null + } + ], + "created": 1676979897012, + "name": "Butterfly valve" + }, + { + "id": "C1ceNVIG-vvyjut3w9EK3", + "status": "published", + "elements": [ + { + "type": "line", + "version": 242, + "versionNonce": 1966134221, + "isDeleted": false, + "id": "kJns5mHDJVo8NCHUEexeb", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "angle": 4.71238898038469, + "x": 1105.0692591098086, + "y": -214.41830550766372, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "width": 40.12637414426396, + "height": 44.048463334185286, + "seed": 251609957, + "groupIds": [ + "rq6KDgH_bFKpnv7nirLpU" + ], + "roundness": { + "type": 2 + }, + "boundElements": [], + "updated": 1743585021768, + "link": null, + "locked": false, + "startBinding": null, + "endBinding": null, + "lastCommittedPoint": null, + "startArrowhead": null, + "endArrowhead": null, + "points": [ + [ + 0, + 0 + ], + [ + -40.12637414426396, + -44.048463334185286 + ] + ], + "index": "a0", + "frameId": null + }, + { + "type": "line", + "version": 427, + "versionNonce": 1372642179, + "isDeleted": false, + "id": "0lZoPIouvd2jzltyK2HMN", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "angle": 4.71238898038469, + "x": 1043.2081969450185, + "y": -235.84908106341965, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "width": 37.25449466036624, + "height": 0, + "seed": 1444204907, + "groupIds": [ + "rq6KDgH_bFKpnv7nirLpU" + ], + "roundness": { + "type": 2 + }, + "boundElements": [], + "updated": 1743585021768, + "link": null, + "locked": false, + "startBinding": null, + "endBinding": null, + "lastCommittedPoint": null, + "startArrowhead": null, + "endArrowhead": null, + "points": [ + [ + 0, + 0 + ], + [ + 37.25449466036624, + 0 + ] + ], + "index": "a1", + "frameId": null + }, + { + "type": "line", + "version": 400, + "versionNonce": 350147117, + "isDeleted": false, + "id": "pPdqMqyjcIbh0WXnq_lXH", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "angle": 4.71238898038469, + "x": 1066.8446149879392, + "y": -211.97558919129813, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "width": 35.03345445561337, + "height": 44.170507907156775, + "seed": 1600884421, + "groupIds": [ + "rq6KDgH_bFKpnv7nirLpU" + ], + "roundness": { + "type": 2 + }, + "boundElements": [], + "updated": 1743585021768, + "link": null, + "locked": false, + "startBinding": null, + "endBinding": null, + "lastCommittedPoint": null, + "startArrowhead": null, + "endArrowhead": null, + "points": [ + [ + 0, + 0 + ], + [ + 35.03345445561337, + -44.170507907156775 + ] + ], + "index": "a2", + "frameId": null + }, + { + "type": "line", + "version": 375, + "versionNonce": 1255174947, + "isDeleted": false, + "id": "zEcSZWR5WIb2HKQnuI1Tc", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "angle": 4.71238898038469, + "x": 1129.230099047655, + "y": -236.74475871343833, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "width": 41.8347378390039, + "height": 0, + "seed": 1240296459, + "groupIds": [ + "rq6KDgH_bFKpnv7nirLpU" + ], + "roundness": { + "type": 2 + }, + "boundElements": [], + "updated": 1743585021768, + "link": null, + "locked": false, + "startBinding": null, + "endBinding": null, + "lastCommittedPoint": null, + "startArrowhead": null, + "endArrowhead": null, + "points": [ + [ + 0, + 0 + ], + [ + -41.8347378390039, + 0 + ] + ], + "index": "a3", + "frameId": null + }, + { + "type": "line", + "version": 358, + "versionNonce": 1593705613, + "isDeleted": false, + "id": "8iRE_sEgk2nuwu1aa2a_D", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "angle": 4.71238898038469, + "x": 1095.5362687565703, + "y": -250.10528676886798, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "width": 23.892433673357793, + "height": 0.31698199110405767, + "seed": 653749797, + "groupIds": [ + "rq6KDgH_bFKpnv7nirLpU" + ], + "roundness": { + "type": 2 + }, + "boundElements": [], + "updated": 1743585021768, + "link": null, + "locked": false, + "startBinding": null, + "endBinding": null, + "lastCommittedPoint": null, + "startArrowhead": null, + "endArrowhead": null, + "points": [ + [ + 0, + 0 + ], + [ + -23.892433673357793, + -0.31698199110405767 + ] + ], + "index": "a4", + "frameId": null + }, + { + "type": "line", + "version": 543, + "versionNonce": 456922819, + "isDeleted": false, + "id": "_NDXuTzAOdMvrG9GJ-bER", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "angle": 4.71238898038469, + "x": 1084.5979203598586, + "y": -278.22173499199005, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "width": 0, + "height": 30.48656735904627, + "seed": 2031727275, + "groupIds": [ + "rq6KDgH_bFKpnv7nirLpU" + ], + "roundness": { + "type": 2 + }, + "boundElements": [], + "updated": 1743585021768, + "link": null, + "locked": false, + "startBinding": null, + "endBinding": null, + "lastCommittedPoint": null, + "startArrowhead": null, + "endArrowhead": null, + "points": [ + [ + 0, + 0 + ], + [ + 0, + 30.48656735904627 + ] + ], + "index": "a5", + "frameId": null + } + ], + "created": 1676979895258, + "name": "Ball valve" + }, + { + "id": "PC7etDuWirAwzdTyDr43R", + "status": "published", + "elements": [ + { + "type": "line", + "version": 699, + "versionNonce": 1464330989, + "isDeleted": false, + "id": "xl5t1tVOoD4ePesGGOU_S", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "angle": 10.995574287564274, + "x": 1112.2567511953596, + "y": -119.12606410619001, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "width": 40.12637414426396, + "height": 44.048463334185286, + "seed": 1615738949, + "groupIds": [ + "3UxA4QkkR2pqjAjhkr3MA" + ], + "roundness": { + "type": 2 + }, + "boundElements": [], + "updated": 1743585021768, + "link": null, + "locked": false, + "startBinding": null, + "endBinding": null, + "lastCommittedPoint": null, + "startArrowhead": null, + "endArrowhead": null, + "points": [ + [ + 0, + 0 + ], + [ + -40.12637414426396, + -44.048463334185286 + ] + ], + "index": "a0", + "frameId": null + }, + { + "type": "line", + "version": 884, + "versionNonce": 296896099, + "isDeleted": false, + "id": "P-eIRfFoZLs40IbXY-3J6", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "angle": 10.995574287564274, + "x": 1050.3956890305699, + "y": -140.5568396619459, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "width": 37.25449466036624, + "height": 0, + "seed": 1023679115, + "groupIds": [ + "3UxA4QkkR2pqjAjhkr3MA" + ], + "roundness": { + "type": 2 + }, + "boundElements": [], + "updated": 1743585021768, + "link": null, + "locked": false, + "startBinding": null, + "endBinding": null, + "lastCommittedPoint": null, + "startArrowhead": null, + "endArrowhead": null, + "points": [ + [ + 0, + 0 + ], + [ + 37.25449466036624, + 0 + ] + ], + "index": "a1", + "frameId": null + }, + { + "type": "line", + "version": 857, + "versionNonce": 1313211725, + "isDeleted": false, + "id": "_pUs5k2z14CtMxdeVuj3t", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "angle": 10.995574287564274, + "x": 1074.0321070734906, + "y": -116.68334778982508, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "width": 35.03345445561337, + "height": 44.170507907156775, + "seed": 415819685, + "groupIds": [ + "3UxA4QkkR2pqjAjhkr3MA" + ], + "roundness": { + "type": 2 + }, + "boundElements": [], + "updated": 1743585021768, + "link": null, + "locked": false, + "startBinding": null, + "endBinding": null, + "lastCommittedPoint": null, + "startArrowhead": null, + "endArrowhead": null, + "points": [ + [ + 0, + 0 + ], + [ + 35.03345445561337, + -44.170507907156775 + ] + ], + "index": "a2", + "frameId": null + }, + { + "type": "line", + "version": 832, + "versionNonce": 620855811, + "isDeleted": false, + "id": "q2KuYL9Smq0zY0oTRUXE4", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "angle": 10.995574287564274, + "x": 1136.4175911332056, + "y": -141.4525173119654, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "width": 41.8347378390039, + "height": 0, + "seed": 1649840427, + "groupIds": [ + "3UxA4QkkR2pqjAjhkr3MA" + ], + "roundness": { + "type": 2 + }, + "boundElements": [], + "updated": 1743585021768, + "link": null, + "locked": false, + "startBinding": null, + "endBinding": null, + "lastCommittedPoint": null, + "startArrowhead": null, + "endArrowhead": null, + "points": [ + [ + 0, + 0 + ], + [ + -41.8347378390039, + 0 + ] + ], + "index": "a3", + "frameId": null + }, + { + "type": "line", + "version": 822, + "versionNonce": 1196544941, + "isDeleted": false, + "id": "QFtZVFGHayQb7GV_Qnimj", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "angle": 10.995574287564274, + "x": 1103.0421207276052, + "y": -152.26593551754237, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "width": 23.892433673357793, + "height": 0.31698199110405767, + "seed": 16165637, + "groupIds": [ + "3UxA4QkkR2pqjAjhkr3MA" + ], + "roundness": { + "type": 2 + }, + "boundElements": [], + "updated": 1743585021768, + "link": null, + "locked": false, + "startBinding": null, + "endBinding": null, + "lastCommittedPoint": null, + "startArrowhead": null, + "endArrowhead": null, + "points": [ + [ + 0, + 0 + ], + [ + -23.892433673357793, + -0.31698199110405767 + ] + ], + "index": "a4", + "frameId": null + }, + { + "id": "weUnrnhRn_0hGzuSRqFKa", + "type": "rectangle", + "x": 1074.40584538513, + "y": -185.3354844358748, + "width": 32.44997907594097, + "height": 20.010803925250855, + "angle": 6.283185307179586, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "groupIds": [ + "3UxA4QkkR2pqjAjhkr3MA" + ], + "roundness": { + "type": 3 + }, + "seed": 1078904261, + "version": 490, + "versionNonce": 1848134051, + "isDeleted": false, + "boundElements": [], + "updated": 1743585021768, + "link": null, + "locked": false, + "index": "a5", + "frameId": null + } + ], + "created": 1676979893049, + "name": "Actuated valve" + }, + { + "id": "xU6KFYqGOv6NQ-bqmJ_Ti", + "status": "published", + "elements": [ + { + "type": "line", + "version": 286, + "versionNonce": 513070605, + "isDeleted": false, + "id": "Dq0ZH9GfiDPePswSVdV_p", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "angle": 4.71238898038469, + "x": 1106.9570897771678, + "y": -24.397953273649705, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "width": 40.12637414426396, + "height": 44.048463334185286, + "seed": 1411689445, + "groupIds": [ + "OMvtRfIhZmDWoE0pFoB-D" + ], + "roundness": { + "type": 2 + }, + "boundElements": [], + "updated": 1743585021768, + "link": null, + "locked": false, + "startBinding": null, + "endBinding": null, + "lastCommittedPoint": null, + "startArrowhead": null, + "endArrowhead": null, + "points": [ + [ + 0, + 0 + ], + [ + -40.12637414426396, + -44.048463334185286 + ] + ], + "index": "a0", + "frameId": null + }, + { + "type": "line", + "version": 471, + "versionNonce": 1649745219, + "isDeleted": false, + "id": "87fN_yVUaHSugCyila9R4", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "angle": 4.71238898038469, + "x": 1045.0960276123778, + "y": -45.82872882940569, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "width": 37.25449466036624, + "height": 0, + "seed": 1857564907, + "groupIds": [ + "OMvtRfIhZmDWoE0pFoB-D" + ], + "roundness": { + "type": 2 + }, + "boundElements": [], + "updated": 1743585021768, + "link": null, + "locked": false, + "startBinding": null, + "endBinding": null, + "lastCommittedPoint": null, + "startArrowhead": null, + "endArrowhead": null, + "points": [ + [ + 0, + 0 + ], + [ + 37.25449466036624, + 0 + ] + ], + "index": "a1", + "frameId": null + }, + { + "type": "line", + "version": 444, + "versionNonce": 1862831213, + "isDeleted": false, + "id": "e7uHA0-iBqrmzn1SnajpY", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "angle": 4.71238898038469, + "x": 1068.7324456552983, + "y": -21.955236957284114, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "width": 35.03345445561337, + "height": 44.170507907156775, + "seed": 483387205, + "groupIds": [ + "OMvtRfIhZmDWoE0pFoB-D" + ], + "roundness": { + "type": 2 + }, + "boundElements": [], + "updated": 1743585021768, + "link": null, + "locked": false, + "startBinding": null, + "endBinding": null, + "lastCommittedPoint": null, + "startArrowhead": null, + "endArrowhead": null, + "points": [ + [ + 0, + 0 + ], + [ + 35.03345445561337, + -44.170507907156775 + ] + ], + "index": "a2", + "frameId": null + }, + { + "type": "line", + "version": 419, + "versionNonce": 1290173667, + "isDeleted": false, + "id": "AbJAzcVF4OHKCYMSktuK3", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "angle": 4.71238898038469, + "x": 1131.1179297150143, + "y": -46.724406479424374, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "width": 41.8347378390039, + "height": 0, + "seed": 1173937035, + "groupIds": [ + "OMvtRfIhZmDWoE0pFoB-D" + ], + "roundness": { + "type": 2 + }, + "boundElements": [], + "updated": 1743585021768, + "link": null, + "locked": false, + "startBinding": null, + "endBinding": null, + "lastCommittedPoint": null, + "startArrowhead": null, + "endArrowhead": null, + "points": [ + [ + 0, + 0 + ], + [ + -41.8347378390039, + 0 + ] + ], + "index": "a3", + "frameId": null + }, + { + "type": "line", + "version": 415, + "versionNonce": 947287757, + "isDeleted": false, + "id": "3Vt93RstW5YgbLPMS9W1w", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "angle": 4.71238898038469, + "x": 1098.1608512156454, + "y": -58.256734769169086, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "width": 24.894150743150014, + "height": 0.016463813168513752, + "seed": 1463596709, + "groupIds": [ + "OMvtRfIhZmDWoE0pFoB-D" + ], + "roundness": { + "type": 2 + }, + "boundElements": [], + "updated": 1743585021768, + "link": null, + "locked": false, + "startBinding": null, + "endBinding": null, + "lastCommittedPoint": null, + "startArrowhead": null, + "endArrowhead": null, + "points": [ + [ + 0, + 0 + ], + [ + -24.894150743150014, + -0.016463813168513752 + ] + ], + "index": "a4", + "frameId": null + }, + { + "id": "rLsoooPKHYglCTWLAgLQv", + "type": "line", + "x": 1073.545630018992, + "y": -71.87057074893451, + "width": 23.35128497489245, + "height": 0, + "angle": 0, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "groupIds": [ + "OMvtRfIhZmDWoE0pFoB-D" + ], + "roundness": { + "type": 2 + }, + "seed": 1930397963, + "version": 39, + "versionNonce": 158001283, + "isDeleted": false, + "boundElements": [], + "updated": 1743585021768, + "link": null, + "locked": false, + "points": [ + [ + 0, + 0 + ], + [ + 23.35128497489245, + 0 + ] + ], + "lastCommittedPoint": null, + "startBinding": null, + "endBinding": null, + "startArrowhead": null, + "endArrowhead": null, + "index": "a5", + "frameId": null + }, + { + "id": "n60OWoIzUdDTuccqg-w-m", + "type": "line", + "x": 1072.7130508487678, + "y": -71.76042420065734, + "width": 25.328192413894158, + "height": 12.343402530378157, + "angle": 0, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "groupIds": [ + "OMvtRfIhZmDWoE0pFoB-D" + ], + "roundness": { + "type": 2 + }, + "seed": 36338917, + "version": 245, + "versionNonce": 1165497645, + "isDeleted": false, + "boundElements": [], + "updated": 1743585021768, + "link": null, + "locked": false, + "points": [ + [ + 0, + 0 + ], + [ + 15.06059608573014, + -12.343402530378157 + ], + [ + 25.328192413894158, + -0.784181501076489 + ] + ], + "lastCommittedPoint": null, + "startBinding": null, + "endBinding": null, + "startArrowhead": null, + "endArrowhead": null, + "index": "a6", + "frameId": null + } + ], + "created": 1676979891268, + "name": "Regulating valve" + }, + { + "id": "N5v6pnePV8tFbHprVyw0r", + "status": "published", + "elements": [ + { + "type": "line", + "version": 491, + "versionNonce": 2107695139, + "isDeleted": false, + "id": "elHmdaahL3wI_MqwxiKqI", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "angle": 3.169554442280049, + "x": 1103.2382740914059, + "y": 2.346781042419492, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "width": 1.1166876527220502, + "height": 39.92579366707775, + "seed": 169993035, + "groupIds": [ + "8Lg3tr8_nufro8mfo0ohL" + ], + "roundness": { + "type": 2 + }, + "boundElements": [], + "updated": 1743585021768, + "link": null, + "locked": false, + "startBinding": null, + "endBinding": null, + "lastCommittedPoint": null, + "startArrowhead": null, + "endArrowhead": null, + "points": [ + [ + 0, + 0 + ], + [ + 1.1166876527220502, + 39.92579366707775 + ] + ], + "index": "a0", + "frameId": null + }, + { + "type": "line", + "version": 454, + "versionNonce": 1366747021, + "isDeleted": false, + "id": "vRLiBaTjoEvBiKuEwUqog", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "angle": 3.169554442280049, + "x": 1100.2677713552662, + "y": 21.172926410144456, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "width": 27.969750319093464, + "height": 19.87435881037004, + "seed": 198773477, + "groupIds": [ + "8Lg3tr8_nufro8mfo0ohL" + ], + "roundness": { + "type": 2 + }, + "boundElements": [], + "updated": 1743585021768, + "link": null, + "locked": false, + "startBinding": null, + "endBinding": null, + "lastCommittedPoint": null, + "startArrowhead": null, + "endArrowhead": null, + "points": [ + [ + 0, + 0 + ], + [ + -27.969750319093464, + 19.87435881037004 + ] + ], + "index": "a1", + "frameId": null + }, + { + "type": "line", + "version": 463, + "versionNonce": 1400300483, + "isDeleted": false, + "id": "0N6nd3pHYiVnj2wn40KVm", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "angle": 3.169554442280049, + "x": 1102.8588229677453, + "y": 19.212070804000135, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "width": 28.532163241608146, + "height": 17.467257411496178, + "seed": 37569003, + "groupIds": [ + "8Lg3tr8_nufro8mfo0ohL" + ], + "roundness": { + "type": 2 + }, + "boundElements": [], + "updated": 1743585021768, + "link": null, + "locked": false, + "startBinding": null, + "endBinding": null, + "lastCommittedPoint": null, + "startArrowhead": null, + "endArrowhead": null, + "points": [ + [ + 0, + 0 + ], + [ + -28.532163241608146, + -17.467257411496178 + ] + ], + "index": "a2", + "frameId": null + }, + { + "type": "line", + "version": 473, + "versionNonce": 1856794093, + "isDeleted": false, + "id": "UteWsl4O9oGG0gX4gimBV", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "angle": 3.169554442280049, + "x": 1073.4410064572, + "y": 1.3227367624450164, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "width": 1.1195777331598755, + "height": 40.02912493877274, + "seed": 1017144901, + "groupIds": [ + "8Lg3tr8_nufro8mfo0ohL" + ], + "roundness": { + "type": 2 + }, + "boundElements": [], + "updated": 1743585021768, + "link": null, + "locked": false, + "startBinding": null, + "endBinding": null, + "lastCommittedPoint": null, + "startArrowhead": null, + "endArrowhead": null, + "points": [ + [ + 0, + 0 + ], + [ + 1.1195777331598755, + 40.02912493877274 + ] + ], + "index": "a3", + "frameId": null + } + ], + "created": 1676979883108, + "name": "Check Valve" + }, + { + "id": "naTDZjUKzsBqWxUB_MDTk", + "status": "published", + "elements": [ + { + "type": "line", + "version": 168, + "versionNonce": 1930130275, + "isDeleted": false, + "id": "bWvZ9wMc1pzM3t5uKXLZW", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "angle": 0, + "x": 1062.0725750719541, + "y": 170.0254186311746, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "width": 36.308541895143904, + "height": 0.6601326425506326, + "seed": 1284312523, + "groupIds": [ + "AkqX0J_V6M18GU2cZ1Dj0" + ], + "roundness": { + "type": 2 + }, + "boundElements": [], + "updated": 1743585021768, + "link": null, + "locked": false, + "startBinding": null, + "endBinding": null, + "lastCommittedPoint": null, + "startArrowhead": null, + "endArrowhead": null, + "points": [ + [ + 0, + 0 + ], + [ + 36.308541895143904, + -0.6601326425506326 + ] + ], + "index": "a0", + "frameId": null + }, + { + "type": "line", + "version": 170, + "versionNonce": 740436045, + "isDeleted": false, + "id": "uXHzM6zbrPcc7RPxN9QZf", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "angle": 0, + "x": 1077.3391567155807, + "y": 140.94416353507836, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "width": 15.183541845730321, + "height": 28.38667317234538, + "seed": 1491847269, + "groupIds": [ + "AkqX0J_V6M18GU2cZ1Dj0" + ], + "roundness": { + "type": 2 + }, + "boundElements": [], + "updated": 1743585021768, + "link": null, + "locked": false, + "startBinding": null, + "endBinding": null, + "lastCommittedPoint": null, + "startArrowhead": null, + "endArrowhead": null, + "points": [ + [ + 0, + 0 + ], + [ + -15.183541845730321, + 28.38667317234538 + ] + ], + "index": "a1", + "frameId": null + }, + { + "type": "line", + "version": 156, + "versionNonce": 1017974531, + "isDeleted": false, + "id": "ydsIh5s_tXMsYZwA79Hwv", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "angle": 0, + "x": 1097.8040115309802, + "y": 169.99099453290086, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "width": 18.48436874750504, + "height": 32.34762012520785, + "seed": 1390353515, + "groupIds": [ + "AkqX0J_V6M18GU2cZ1Dj0" + ], + "roundness": { + "type": 2 + }, + "boundElements": [], + "updated": 1743585021768, + "link": null, + "locked": false, + "startBinding": null, + "endBinding": null, + "lastCommittedPoint": null, + "startArrowhead": null, + "endArrowhead": null, + "points": [ + [ + 0, + 0 + ], + [ + -18.48436874750504, + -32.34762012520785 + ] + ], + "index": "a2", + "frameId": null + }, + { + "type": "line", + "version": 196, + "versionNonce": 2075236013, + "isDeleted": false, + "id": "fxf77FpntQT34x8Y4JfJ6", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "angle": 0, + "x": 1110.2632112474541, + "y": 118.17912176299336, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "width": 30.283423229965123, + "height": 18.143949585208723, + "seed": 595555269, + "groupIds": [ + "AkqX0J_V6M18GU2cZ1Dj0" + ], + "roundness": { + "type": 2 + }, + "boundElements": [], + "updated": 1743585021768, + "link": null, + "locked": false, + "startBinding": null, + "endBinding": null, + "lastCommittedPoint": null, + "startArrowhead": null, + "endArrowhead": null, + "points": [ + [ + 0, + 0 + ], + [ + -30.283423229965123, + 18.143949585208723 + ] + ], + "index": "a3", + "frameId": null + }, + { + "type": "line", + "version": 199, + "versionNonce": 47855267, + "isDeleted": false, + "id": "1MNHR73ccFhqUHCAol0A3", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "angle": 0, + "x": 1108.4340829937346, + "y": 149.8690988477232, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "width": 28.962592693895004, + "height": 11.282050545714249, + "seed": 1832277771, + "groupIds": [ + "AkqX0J_V6M18GU2cZ1Dj0" + ], + "roundness": { + "type": 2 + }, + "boundElements": [], + "updated": 1743585021768, + "link": null, + "locked": false, + "startBinding": null, + "endBinding": null, + "lastCommittedPoint": null, + "startArrowhead": null, + "endArrowhead": null, + "points": [ + [ + 0, + 0 + ], + [ + -28.962592693895004, + -11.282050545714249 + ] + ], + "index": "a4", + "frameId": null + }, + { + "type": "line", + "version": 184, + "versionNonce": 1476671757, + "isDeleted": false, + "id": "edMPQ-JB3oo9j4JAUBe0S", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "angle": 0, + "x": 1109.6867768407885, + "y": 116.02837533901038, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "width": 0, + "height": 34.328062122981024, + "seed": 1766241061, + "groupIds": [ + "AkqX0J_V6M18GU2cZ1Dj0" + ], + "roundness": { + "type": 2 + }, + "boundElements": [], + "updated": 1743585021768, + "link": null, + "locked": false, + "startBinding": null, + "endBinding": null, + "lastCommittedPoint": null, + "startArrowhead": null, + "endArrowhead": null, + "points": [ + [ + 0, + 0 + ], + [ + 0, + 34.328062122981024 + ] + ], + "index": "a5", + "frameId": null + }, + { + "type": "line", + "version": 146, + "versionNonce": 1145137731, + "isDeleted": false, + "id": "lBhPuvlhOzRqq8rpX-GV6", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "angle": 0, + "x": 1078.7170586608443, + "y": 136.42772646708266, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "width": 16.29229193107275, + "height": 15.783127461511521, + "seed": 973946283, + "groupIds": [ + "AkqX0J_V6M18GU2cZ1Dj0" + ], + "roundness": { + "type": 2 + }, + "boundElements": [], + "updated": 1743585021768, + "link": null, + "locked": false, + "startBinding": null, + "endBinding": null, + "lastCommittedPoint": null, + "startArrowhead": null, + "endArrowhead": null, + "points": [ + [ + 0, + 0 + ], + [ + -16.29229193107275, + -15.783127461511521 + ] + ], + "index": "a6", + "frameId": null + }, + { + "type": "line", + "version": 158, + "versionNonce": 714313581, + "isDeleted": false, + "id": "lPMuB2wtshmDbyfnchElC", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "angle": 0, + "x": 1084.802596338389, + "y": 113.12840598640719, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "width": 20.850413887524493, + "height": 7.007047971500537, + "seed": 649004677, + "groupIds": [ + "AkqX0J_V6M18GU2cZ1Dj0" + ], + "roundness": { + "type": 2 + }, + "boundElements": [], + "updated": 1743585021768, + "link": null, + "locked": false, + "startBinding": null, + "endBinding": null, + "lastCommittedPoint": null, + "startArrowhead": null, + "endArrowhead": null, + "points": [ + [ + 0, + 0 + ], + [ + -20.850413887524493, + 7.007047971500537 + ] + ], + "index": "a7", + "frameId": null + }, + { + "type": "line", + "version": 169, + "versionNonce": 633416163, + "isDeleted": false, + "id": "zRef7Y06XeJASl8rnNjr9", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "angle": 0, + "x": 1061.4065154782404, + "y": 98.24272187771834, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "width": 23.29933250464842, + "height": 13.940051379784109, + "seed": 613306443, + "groupIds": [ + "AkqX0J_V6M18GU2cZ1Dj0" + ], + "roundness": { + "type": 2 + }, + "boundElements": [], + "updated": 1743585021768, + "link": null, + "locked": false, + "startBinding": null, + "endBinding": null, + "lastCommittedPoint": null, + "startArrowhead": null, + "endArrowhead": null, + "points": [ + [ + 0, + 0 + ], + [ + 23.29933250464842, + 13.940051379784109 + ] + ], + "index": "a8", + "frameId": null + }, + { + "type": "line", + "version": 170, + "versionNonce": 1906907597, + "isDeleted": false, + "id": "uTPRLN2RNqVDbukpbd93d", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "angle": 0, + "x": 1092.7881885027662, + "y": 98.50375397778072, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "width": 30.038878045725642, + "height": 2.5456863945219808, + "seed": 1853222373, + "groupIds": [ + "AkqX0J_V6M18GU2cZ1Dj0" + ], + "roundness": { + "type": 2 + }, + "boundElements": [], + "updated": 1743585021768, + "link": null, + "locked": false, + "startBinding": null, + "endBinding": null, + "lastCommittedPoint": null, + "startArrowhead": null, + "endArrowhead": null, + "points": [ + [ + 0, + 0 + ], + [ + -30.038878045725642, + -2.5456863945219808 + ] + ], + "index": "a9", + "frameId": null + }, + { + "id": "yIx8XDJNMQd1_rd_RdVfl", + "type": "line", + "x": 1078.1465349115354, + "y": 193.81756167173643, + "width": 0, + "height": 24.507015663390575, + "angle": 0, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "groupIds": [ + "AkqX0J_V6M18GU2cZ1Dj0" + ], + "roundness": { + "type": 2 + }, + "seed": 371786949, + "version": 60, + "versionNonce": 745010563, + "isDeleted": false, + "boundElements": [], + "updated": 1743585021768, + "link": null, + "locked": false, + "points": [ + [ + 0, + 0 + ], + [ + 0, + -24.507015663390575 + ] + ], + "lastCommittedPoint": null, + "startBinding": null, + "endBinding": null, + "startArrowhead": null, + "endArrowhead": null, + "index": "aA", + "frameId": null + } + ], + "created": 1676979880858, + "name": "Overpressure Valve" + }, + { + "id": "HoRhrvJpEN8QEWUsW9HV5", + "status": "published", + "elements": [ + { + "type": "line", + "version": 616, + "versionNonce": 643717165, + "isDeleted": false, + "id": "l5D_vOMocXWdEa6QnZlnZ", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "angle": 4.71238898038469, + "x": 1090.4799581318794, + "y": 237.0711516336227, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "width": 4.313356188416181e-15, + "height": 23.480817442870375, + "seed": 93028645, + "groupIds": [ + "dSfi6smOw_L27aSE_gC0c" + ], + "roundness": { + "type": 2 + }, + "boundElements": [], + "updated": 1743585021769, + "link": null, + "locked": false, + "startBinding": null, + "endBinding": null, + "lastCommittedPoint": null, + "startArrowhead": null, + "endArrowhead": null, + "points": [ + [ + 0, + 0 + ], + [ + -4.313356188416181e-15, + 23.480817442870375 + ] + ], + "index": "a0", + "frameId": null + }, + { + "type": "line", + "version": 646, + "versionNonce": 930368803, + "isDeleted": false, + "id": "0AHwShPzw1P1GgkkMIyJA", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "angle": 4.71238898038469, + "x": 1089.0772303485776, + "y": 224.0517933457156, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "width": 4.313356188416181e-15, + "height": 23.480817442870375, + "seed": 498721893, + "groupIds": [ + "dSfi6smOw_L27aSE_gC0c" + ], + "roundness": { + "type": 2 + }, + "boundElements": [], + "updated": 1743585021769, + "link": null, + "locked": false, + "startBinding": null, + "endBinding": null, + "lastCommittedPoint": null, + "startArrowhead": null, + "endArrowhead": null, + "points": [ + [ + 0, + 0 + ], + [ + -4.313356188416181e-15, + 23.480817442870375 + ] + ], + "index": "a1", + "frameId": null + }, + { + "id": "v2-bl5FwRE6gUGBR2JcdF", + "type": "line", + "x": 1077.1366702095438, + "y": 243.67403668242991, + "width": 24.990756160428532, + "height": 3.548378164280564, + "angle": 0, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 0, + "opacity": 100, + "groupIds": [ + "dSfi6smOw_L27aSE_gC0c" + ], + "roundness": { + "type": 2 + }, + "seed": 1265304165, + "version": 362, + "versionNonce": 1654442637, + "isDeleted": false, + "boundElements": [], + "updated": 1743585021769, + "link": null, + "locked": false, + "points": [ + [ + 0, + 0 + ], + [ + 6.469595913890203, + -0.35426887002398644 + ], + [ + 13.147064760200124, + -3.548378164280564 + ], + [ + 20.000561978970836, + -0.5082670846446149 + ], + [ + 24.990756160428532, + -0.35426151037790987 + ] + ], + "lastCommittedPoint": null, + "startBinding": null, + "endBinding": null, + "startArrowhead": null, + "endArrowhead": null, + "index": "a2", + "frameId": null + } + ], + "created": 1676979878844, + "name": "Burst disk" + }, + { + "id": "4iCamIsApRJFDmxdgbdA5", + "status": "published", + "elements": [ + { + "type": "line", + "version": 414, + "versionNonce": 978628803, + "isDeleted": false, + "id": "mVW4RKnkuTq4OiMFV46nT", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "angle": 3.169554442280049, + "x": 907.2695710067125, + "y": -378.2538905302561, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "width": 1.1195777331598755, + "height": 40.02912493877274, + "seed": 1477120971, + "groupIds": [ + "YGmGNtK8_Ms0ZOZkVz5H8" + ], + "roundness": { + "type": 2 + }, + "boundElements": [], + "updated": 1743585021769, + "link": null, + "locked": false, + "startBinding": null, + "endBinding": null, + "lastCommittedPoint": null, + "startArrowhead": null, + "endArrowhead": null, + "points": [ + [ + 0, + 0 + ], + [ + 1.1195777331598755, + 40.02912493877274 + ] + ], + "index": "a0", + "frameId": null + }, + { + "id": "hmvcn7inlXelfpdBCj7fe", + "type": "line", + "x": 907.4417679869913, + "y": -378.7859672655079, + "width": 40.63221670867699, + "height": 14.142578335920689, + "angle": 0, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "groupIds": [ + "YGmGNtK8_Ms0ZOZkVz5H8" + ], + "roundness": { + "type": 2 + }, + "seed": 1246517573, + "version": 64, + "versionNonce": 1193144557, + "isDeleted": false, + "boundElements": [], + "updated": 1743585021769, + "link": null, + "locked": false, + "points": [ + [ + 0, + 0 + ], + [ + 40.63221670867699, + 14.142578335920689 + ] + ], + "lastCommittedPoint": null, + "startBinding": null, + "endBinding": null, + "startArrowhead": null, + "endArrowhead": null, + "index": "a1", + "frameId": null + }, + { + "id": "SHbhT3mjRRWMcBOSH45ja", + "type": "line", + "x": 907.0956855861393, + "y": -337.60468299144884, + "width": 40.761116678283656, + "height": 13.053239040839287, + "angle": 0, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "groupIds": [ + "YGmGNtK8_Ms0ZOZkVz5H8" + ], + "roundness": { + "type": 2 + }, + "seed": 1317364229, + "version": 48, + "versionNonce": 916955235, + "isDeleted": false, + "boundElements": [], + "updated": 1743585021769, + "link": null, + "locked": false, + "points": [ + [ + 0, + 0 + ], + [ + 40.761116678283656, + -13.053239040839287 + ] + ], + "lastCommittedPoint": null, + "startBinding": null, + "endBinding": null, + "startArrowhead": null, + "endArrowhead": null, + "index": "a2", + "frameId": null + }, + { + "id": "0J4nmPhFkB-1_WNkv9HC4", + "type": "line", + "x": 948.2770094637689, + "y": -366.6738225023393, + "width": 0, + "height": 15.918813551116898, + "angle": 0, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "groupIds": [ + "YGmGNtK8_Ms0ZOZkVz5H8" + ], + "roundness": { + "type": 2 + }, + "seed": 83769349, + "version": 25, + "versionNonce": 560679757, + "isDeleted": false, + "boundElements": [], + "updated": 1743585021769, + "link": null, + "locked": false, + "points": [ + [ + 0, + 0 + ], + [ + 0, + 15.918813551116898 + ] + ], + "lastCommittedPoint": null, + "startBinding": null, + "endBinding": null, + "startArrowhead": null, + "endArrowhead": null, + "index": "a3", + "frameId": null + } + ], + "created": 1676979876275, + "name": "Reducer" + }, + { + "id": "Tos4qkJYvMvpN51VOTlOL", + "status": "published", + "elements": [ + { + "type": "line", + "version": 488, + "versionNonce": 1983618051, + "isDeleted": false, + "id": "bcaZ02Wf6RZ_wLSm52Gsh", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "angle": 4.71238898038469, + "x": 892.7434004114454, + "y": -286.7630989531071, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "width": 37.25449466036624, + "height": 0, + "seed": 1447560293, + "groupIds": [ + "DGtcjwUEQTR-u8UWFPTLF" + ], + "roundness": { + "type": 2 + }, + "boundElements": [], + "updated": 1743585021769, + "link": null, + "locked": false, + "startBinding": null, + "endBinding": null, + "lastCommittedPoint": null, + "startArrowhead": null, + "endArrowhead": null, + "points": [ + [ + 0, + 0 + ], + [ + 37.25449466036624, + 0 + ] + ], + "index": "a0", + "frameId": null + }, + { + "id": "GHfKPPEErRL1SnM87QHJG", + "type": "line", + "x": 910.877170202819, + "y": -285.91032885075447, + "width": 52.8650379304853, + "height": 0, + "angle": 0, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "groupIds": [ + "DGtcjwUEQTR-u8UWFPTLF" + ], + "roundness": { + "type": 2 + }, + "seed": 643796843, + "version": 58, + "versionNonce": 1373526445, + "isDeleted": false, + "boundElements": [], + "updated": 1743585021769, + "link": null, + "locked": false, + "points": [ + [ + 0, + 0 + ], + [ + 52.8650379304853, + 0 + ] + ], + "lastCommittedPoint": null, + "startBinding": null, + "endBinding": null, + "startArrowhead": null, + "endArrowhead": null, + "index": "a1", + "frameId": null + }, + { + "id": "CPkBK29vTS1r2kMLKyaMI", + "type": "line", + "x": 963.7422081333043, + "y": -303.22011892600506, + "width": 0, + "height": 37.42656541832466, + "angle": 0, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "groupIds": [ + "DGtcjwUEQTR-u8UWFPTLF" + ], + "roundness": { + "type": 2 + }, + "seed": 673273259, + "version": 56, + "versionNonce": 84878243, + "isDeleted": false, + "boundElements": [], + "updated": 1743585021769, + "link": null, + "locked": false, + "points": [ + [ + 0, + 0 + ], + [ + 0, + 37.42656541832466 + ] + ], + "lastCommittedPoint": null, + "startBinding": null, + "endBinding": null, + "startArrowhead": null, + "endArrowhead": null, + "index": "a2", + "frameId": null + }, + { + "id": "I3Q5oFEOPxsu21O_P3iIM", + "type": "line", + "x": 923.0407968252238, + "y": -285.44246822882207, + "width": 20.579462983224175, + "height": 19.575489691568777, + "angle": 0, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "groupIds": [ + "DGtcjwUEQTR-u8UWFPTLF" + ], + "roundness": { + "type": 2 + }, + "seed": 982134091, + "version": 81, + "versionNonce": 1906351117, + "isDeleted": false, + "boundElements": [], + "updated": 1743585021769, + "link": null, + "locked": false, + "points": [ + [ + 0, + 0 + ], + [ + 20.579462983224175, + 19.575489691568777 + ] + ], + "lastCommittedPoint": null, + "startBinding": null, + "endBinding": null, + "startArrowhead": null, + "endArrowhead": null, + "index": "a3", + "frameId": null + }, + { + "id": "FIo8u7YTFIKQYB5MreM5S", + "type": "line", + "x": 937.9331183115448, + "y": -259.3558261902039, + "width": 10.701735280938692, + "height": 11.482406354243182, + "angle": 0, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "groupIds": [ + "DGtcjwUEQTR-u8UWFPTLF" + ], + "roundness": { + "type": 2 + }, + "seed": 1368284357, + "version": 95, + "versionNonce": 1800451907, + "isDeleted": false, + "boundElements": [], + "updated": 1743585021769, + "link": null, + "locked": false, + "points": [ + [ + 0, + 0 + ], + [ + 10.701735280938692, + -11.482406354243182 + ] + ], + "lastCommittedPoint": null, + "startBinding": null, + "endBinding": null, + "startArrowhead": null, + "endArrowhead": null, + "index": "a4", + "frameId": null + } + ], + "created": 1676979873058, + "name": "Y-filter" + }, + { + "id": "mGxb9kxJ9LcXh0ApSBEDG", + "status": "published", + "elements": [ + { + "type": "line", + "version": 468, + "versionNonce": 950768237, + "isDeleted": false, + "id": "fFTdS_3Qrg_t0TPot1QyU", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "angle": 4.71238898038469, + "x": 931.0998166253228, + "y": -213.6187676359026, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "width": 41.8347378390039, + "height": 0, + "seed": 1310241637, + "groupIds": [ + "qxYcWtCzbjvskO4oyPx-P" + ], + "roundness": { + "type": 2 + }, + "boundElements": [], + "updated": 1743585021769, + "link": null, + "locked": false, + "startBinding": null, + "endBinding": null, + "lastCommittedPoint": null, + "startArrowhead": null, + "endArrowhead": null, + "points": [ + [ + 0, + 0 + ], + [ + -41.8347378390039, + 0 + ] + ], + "index": "a0", + "frameId": null + }, + { + "id": "Owuqd2gGl-LipWxVEjjQK", + "type": "line", + "x": 910.2538232474453, + "y": -229.12291689428315, + "width": 18.64622624610638, + "height": 33.67453908843896, + "angle": 0, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "groupIds": [ + "qxYcWtCzbjvskO4oyPx-P" + ], + "roundness": { + "type": 2 + }, + "seed": 2140343051, + "version": 72, + "versionNonce": 660526819, + "isDeleted": false, + "boundElements": [], + "updated": 1743585021769, + "link": null, + "locked": false, + "points": [ + [ + 0, + 0 + ], + [ + 18.64622624610638, + 33.67453908843896 + ] + ], + "lastCommittedPoint": null, + "startBinding": null, + "endBinding": null, + "startArrowhead": null, + "endArrowhead": null, + "index": "a1", + "frameId": null + }, + { + "id": "oDOmMF7iCztHg8qek4WQD", + "type": "line", + "x": 928.0651349673494, + "y": -195.4483778058442, + "width": 11.132080441319204, + "height": 31.726412271553045, + "angle": 0, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "groupIds": [ + "qxYcWtCzbjvskO4oyPx-P" + ], + "roundness": { + "type": 2 + }, + "seed": 165498789, + "version": 72, + "versionNonce": 600358093, + "isDeleted": false, + "boundElements": [], + "updated": 1743585021769, + "link": null, + "locked": false, + "points": [ + [ + 0, + 0 + ], + [ + 11.132080441319204, + -31.726412271553045 + ] + ], + "lastCommittedPoint": null, + "startBinding": null, + "endBinding": null, + "startArrowhead": null, + "endArrowhead": null, + "index": "a2", + "frameId": null + }, + { + "id": "aG-fI_SSQUvVGufipef2v", + "type": "line", + "x": 939.0894433840092, + "y": -225.12945566442147, + "width": 12.055846029025133, + "height": 29.822336857381117, + "angle": 0, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "groupIds": [ + "qxYcWtCzbjvskO4oyPx-P" + ], + "roundness": { + "type": 2 + }, + "seed": 215916715, + "version": 81, + "versionNonce": 1741161091, + "isDeleted": false, + "boundElements": [], + "updated": 1743585021769, + "link": null, + "locked": false, + "points": [ + [ + 0, + 0 + ], + [ + 12.055846029025133, + 29.822336857381117 + ] + ], + "lastCommittedPoint": null, + "startBinding": null, + "endBinding": null, + "startArrowhead": null, + "endArrowhead": null, + "index": "a3", + "frameId": null + }, + { + "id": "2ggf0xpJg_5l-nguy7o79", + "type": "line", + "x": 952.0970756487209, + "y": -195.9416510324745, + "width": 10.469551772833938, + "height": 28.870550621694605, + "angle": 0, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "groupIds": [ + "qxYcWtCzbjvskO4oyPx-P" + ], + "roundness": { + "type": 2 + }, + "seed": 1007017291, + "version": 71, + "versionNonce": 1519491885, + "isDeleted": false, + "boundElements": [], + "updated": 1743585021769, + "link": null, + "locked": false, + "points": [ + [ + 0, + 0 + ], + [ + 10.469551772833938, + -28.870550621694605 + ] + ], + "lastCommittedPoint": null, + "startBinding": null, + "endBinding": null, + "startArrowhead": null, + "endArrowhead": null, + "index": "a4", + "frameId": null + }, + { + "id": "QtCFqrAKJ8tDaPRG2c4qq", + "type": "line", + "x": 963.2011354420597, + "y": -225.12945566442147, + "width": 8.24870108627897, + "height": 30.456844877885857, + "angle": 0, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "groupIds": [ + "qxYcWtCzbjvskO4oyPx-P" + ], + "roundness": { + "type": 2 + }, + "seed": 2088674507, + "version": 86, + "versionNonce": 88783395, + "isDeleted": false, + "boundElements": [], + "updated": 1743585021769, + "link": null, + "locked": false, + "points": [ + [ + 0, + 0 + ], + [ + 8.24870108627897, + 30.456844877885857 + ] + ], + "lastCommittedPoint": null, + "startBinding": null, + "endBinding": null, + "startArrowhead": null, + "endArrowhead": null, + "index": "a5", + "frameId": null + }, + { + "id": "UkNWtpgTxIyqlbsFB2BfR", + "type": "line", + "x": 974.9397032559032, + "y": -189.59647400770956, + "width": 0, + "height": 42.8299449171634, + "angle": 0, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "groupIds": [ + "qxYcWtCzbjvskO4oyPx-P" + ], + "roundness": { + "type": 2 + }, + "seed": 956749189, + "version": 101, + "versionNonce": 1433382285, + "isDeleted": false, + "boundElements": [], + "updated": 1743585021769, + "link": null, + "locked": false, + "points": [ + [ + 0, + 0 + ], + [ + 0, + -42.8299449171634 + ] + ], + "lastCommittedPoint": null, + "startBinding": null, + "endBinding": null, + "startArrowhead": null, + "endArrowhead": null, + "index": "a6", + "frameId": null + } + ], + "created": 1676979871211, + "name": "Compensator" + }, + { + "id": "k_nDEf0QJkwHUYIl5FXOE", + "status": "published", + "elements": [ + { + "id": "Kb3PFyVhHSXhEAtpZbE4A", + "type": "line", + "x": 926.2497844330567, + "y": -123.02783031586904, + "width": 14.06083809558254, + "height": 0, + "angle": 0, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "groupIds": [ + "PewOyNGDRVXQxVB-7T0kK" + ], + "roundness": { + "type": 2 + }, + "seed": 1007760133, + "version": 121, + "versionNonce": 1020624323, + "isDeleted": false, + "boundElements": [], + "updated": 1743585021770, + "link": null, + "locked": false, + "points": [ + [ + 0, + 0 + ], + [ + 14.06083809558254, + 0 + ] + ], + "lastCommittedPoint": null, + "startBinding": null, + "endBinding": null, + "startArrowhead": null, + "endArrowhead": null, + "index": "a0", + "frameId": null + }, + { + "id": "In5MFf69ZBXN8ijd3Bu7M", + "type": "line", + "x": 951.8075863272932, + "y": -141.50733040571555, + "width": 10.317175535387719, + "height": 0, + "angle": 0, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "groupIds": [ + "PewOyNGDRVXQxVB-7T0kK" + ], + "roundness": { + "type": 2 + }, + "seed": 1673858571, + "version": 84, + "versionNonce": 1134326765, + "isDeleted": false, + "boundElements": [], + "updated": 1743585021770, + "link": null, + "locked": false, + "points": [ + [ + 0, + 0 + ], + [ + -10.317175535387719, + 0 + ] + ], + "lastCommittedPoint": null, + "startBinding": null, + "endBinding": null, + "startArrowhead": null, + "endArrowhead": null, + "index": "a1", + "frameId": null + }, + { + "id": "hhnSNGTGEjycOil_f0cZU", + "type": "line", + "x": 953.0016203613827, + "y": -106.58464576975564, + "width": 13.326361754646655, + "height": 0, + "angle": 0, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "groupIds": [ + "PewOyNGDRVXQxVB-7T0kK" + ], + "roundness": { + "type": 2 + }, + "seed": 343013317, + "version": 81, + "versionNonce": 696700259, + "isDeleted": false, + "boundElements": [], + "updated": 1743585021770, + "link": null, + "locked": false, + "points": [ + [ + 0, + 0 + ], + [ + -13.326361754646655, + 0 + ] + ], + "lastCommittedPoint": null, + "startBinding": null, + "endBinding": null, + "startArrowhead": null, + "endArrowhead": null, + "index": "a2", + "frameId": null + }, + { + "id": "c8lBeT7kmkU8j9fzn2v36", + "type": "line", + "x": 953.16995286573, + "y": -113.00380018060088, + "width": 0.23892584733482636, + "height": 23.404360271213307, + "angle": 0, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "groupIds": [ + "PewOyNGDRVXQxVB-7T0kK" + ], + "roundness": { + "type": 2 + }, + "seed": 1085298533, + "version": 224, + "versionNonce": 824274509, + "isDeleted": false, + "boundElements": [], + "updated": 1743585021770, + "link": null, + "locked": false, + "points": [ + [ + 0, + 0 + ], + [ + -0.23892584733482636, + -23.404360271213307 + ] + ], + "lastCommittedPoint": null, + "startBinding": null, + "endBinding": null, + "startArrowhead": null, + "endArrowhead": null, + "index": "a3", + "frameId": null + }, + { + "id": "84S-6zsprYo4AHfzNxH9x", + "type": "line", + "x": 953.39638033041, + "y": -123.02067789284615, + "width": 14.499900777403468, + "height": 0, + "angle": 0, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "groupIds": [ + "PewOyNGDRVXQxVB-7T0kK" + ], + "roundness": { + "type": 2 + }, + "seed": 2037529355, + "version": 149, + "versionNonce": 2125277443, + "isDeleted": false, + "boundElements": [], + "updated": 1743585021770, + "link": null, + "locked": false, + "points": [ + [ + 0, + 0 + ], + [ + 14.499900777403468, + 0 + ] + ], + "lastCommittedPoint": null, + "startBinding": null, + "endBinding": null, + "startArrowhead": null, + "endArrowhead": null, + "index": "a4", + "frameId": null + }, + { + "type": "line", + "version": 558, + "versionNonce": 1826102445, + "isDeleted": false, + "id": "EOtcredAaxjRZNMtFBIJo", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "angle": 4.71238898038469, + "x": 920.902110039671, + "y": -122.95320630364415, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "width": 37.25449466036624, + "height": 0, + "seed": 1250043589, + "groupIds": [ + "PewOyNGDRVXQxVB-7T0kK" + ], + "roundness": { + "type": 2 + }, + "boundElements": [], + "updated": 1743585021770, + "link": null, + "locked": false, + "startBinding": null, + "endBinding": null, + "lastCommittedPoint": null, + "startArrowhead": null, + "endArrowhead": null, + "points": [ + [ + 0, + 0 + ], + [ + 37.25449466036624, + 0 + ] + ], + "index": "a5", + "frameId": null + } + ], + "created": 1676979868539, + "name": "Coupling" + }, + { + "id": "Rb1BIT6sa_pnXqKcV7mAn", + "status": "published", + "elements": [ + { + "id": "TvC_rzpCEf4ecPsr-Whj6", + "type": "rectangle", + "x": 914.0804053024094, + "y": -73.21374518711866, + "width": 69.9938669529106, + "height": 30.097410049781615, + "angle": 0, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "fillStyle": "solid", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "groupIds": [ + "taX7ZLb6FzOPXl5tQodyV" + ], + "roundness": null, + "seed": 881755691, + "version": 292, + "versionNonce": 29823139, + "isDeleted": false, + "boundElements": [], + "updated": 1743585021770, + "link": null, + "locked": false, + "index": "a0", + "frameId": null + }, + { + "id": "rYiWi1nDYmtq7Iny5ZsUy", + "type": "ellipse", + "x": 931.5788987412191, + "y": -73.91366089414714, + "width": 37.79680990922588, + "height": 29.39745429187985, + "angle": 0, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "fillStyle": "solid", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "groupIds": [ + "taX7ZLb6FzOPXl5tQodyV" + ], + "roundness": null, + "seed": 315827819, + "version": 332, + "versionNonce": 778698509, + "isDeleted": false, + "boundElements": [], + "updated": 1743585021770, + "link": null, + "locked": false, + "index": "a1", + "frameId": null + } + ], + "created": 1676979866545, + "name": "Sight glass" + }, + { + "id": "kxEjBfOdAEmoc0GW2GG6U", + "status": "published", + "elements": [ + { + "type": "ellipse", + "version": 277, + "versionNonce": 1149436995, + "isDeleted": false, + "id": "yp-ZWJrH0HDpGjRY-XKT2", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "angle": 0, + "x": 911.7537927647916, + "y": -19.86765785230932, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "width": 60.045736871195686, + "height": 57.36512288760787, + "seed": 1999796549, + "groupIds": [ + "gsrOIKXfECbBzVoTG_Bdd" + ], + "roundness": { + "type": 2 + }, + "boundElements": [], + "updated": 1743585021770, + "link": null, + "locked": false, + "index": "a0", + "frameId": null + }, + { + "id": "B1aOiiW0uxIpQM6mSMKEQ", + "type": "line", + "x": 920.2986362336858, + "y": 29.994627081233148, + "width": 49.45123315184708, + "height": 50.71203057790001, + "angle": 0, + "strokeColor": "#000000", + "backgroundColor": "00000", + "fillStyle": "solid", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "groupIds": [ + "gsrOIKXfECbBzVoTG_Bdd" + ], + "roundness": { + "type": 2 + }, + "seed": 951848811, + "version": 153, + "versionNonce": 2085655917, + "isDeleted": false, + "boundElements": [], + "updated": 1743585021770, + "link": null, + "locked": false, + "points": [ + [ + 0, + 0 + ], + [ + 41.16684643089138, + -42.35946404868503 + ], + [ + 49.45123315184708, + -12.754439383610816 + ], + [ + 34.008125307227374, + 6.861821530223665 + ], + [ + 14.318652965877277, + 8.352566529214982 + ], + [ + 0, + 0 + ] + ], + "lastCommittedPoint": null, + "startBinding": null, + "endBinding": null, + "startArrowhead": null, + "endArrowhead": null, + "index": "a1", + "frameId": null + } + ], + "created": 1676979864780, + "name": "Steam trap" + }, + { + "id": "XG8pwKdXlynapd5H8Dz-Y", + "status": "published", + "elements": [ + { + "type": "line", + "version": 528, + "versionNonce": 515867619, + "isDeleted": false, + "id": "4uoDGWzjYnAm4YIlSkykm", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "angle": 4.71238898038469, + "x": 907.1693889090566, + "y": 91.40651682544323, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "width": 37.25449466036624, + "height": 0, + "seed": 1757252811, + "groupIds": [ + "m_KDWMHaWfdM7jbxoSoYi" + ], + "roundness": { + "type": 2 + }, + "boundElements": [], + "updated": 1743585021770, + "link": null, + "locked": false, + "startBinding": null, + "endBinding": null, + "lastCommittedPoint": null, + "startArrowhead": null, + "endArrowhead": null, + "points": [ + [ + 0, + 0 + ], + [ + 37.25449466036624, + 0 + ] + ], + "index": "a0", + "frameId": null + }, + { + "type": "line", + "version": 584, + "versionNonce": 1372938189, + "isDeleted": false, + "id": "SQFQC0SLrwp3jJEBNQ8-1", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "angle": 4.71238898038469, + "x": 961.8084579069357, + "y": 90.06152469878792, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "width": 37.25449466036624, + "height": 0, + "seed": 272146635, + "groupIds": [ + "m_KDWMHaWfdM7jbxoSoYi" + ], + "roundness": { + "type": 2 + }, + "boundElements": [], + "updated": 1743585021770, + "link": null, + "locked": false, + "startBinding": null, + "endBinding": null, + "lastCommittedPoint": null, + "startArrowhead": null, + "endArrowhead": null, + "points": [ + [ + 0, + 0 + ], + [ + 37.25449466036624, + 0 + ] + ], + "index": "a1", + "frameId": null + }, + { + "id": "A5LuVjdHRn36BF3jbAoJU", + "type": "line", + "x": 925.5746452009331, + "y": 104.19745374653364, + "width": 54.50561906383575, + "height": 0, + "angle": 0, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 0, + "opacity": 100, + "groupIds": [ + "m_KDWMHaWfdM7jbxoSoYi" + ], + "roundness": { + "type": 2 + }, + "seed": 2032527173, + "version": 104, + "versionNonce": 1753943939, + "isDeleted": false, + "boundElements": [], + "updated": 1743585021770, + "link": null, + "locked": false, + "points": [ + [ + 0, + 0 + ], + [ + 54.50561906383575, + 0 + ] + ], + "lastCommittedPoint": null, + "startBinding": null, + "endBinding": null, + "startArrowhead": null, + "endArrowhead": null, + "index": "a2", + "frameId": null + }, + { + "id": "gzpKkBv39kMlLHrAe8g5c", + "type": "line", + "x": 925.1648348635822, + "y": 76.3299287085894, + "width": 54.09579309322248, + "height": 0, + "angle": 0, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 0, + "opacity": 100, + "groupIds": [ + "m_KDWMHaWfdM7jbxoSoYi" + ], + "roundness": { + "type": 2 + }, + "seed": 1583087947, + "version": 99, + "versionNonce": 85057069, + "isDeleted": false, + "boundElements": [], + "updated": 1743585021770, + "link": null, + "locked": false, + "points": [ + [ + 0, + 0 + ], + [ + 54.09579309322248, + 0 + ] + ], + "lastCommittedPoint": null, + "startBinding": null, + "endBinding": null, + "startArrowhead": null, + "endArrowhead": null, + "index": "a3", + "frameId": null + }, + { + "id": "Bx-sC1HFLXe2vEbzqXnnl", + "type": "line", + "x": 925.5746452009331, + "y": 80.22318944647229, + "width": 53.48107758719618, + "height": 0, + "angle": 0, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 0, + "opacity": 100, + "groupIds": [ + "m_KDWMHaWfdM7jbxoSoYi" + ], + "roundness": { + "type": 2 + }, + "seed": 731975115, + "version": 100, + "versionNonce": 1948526371, + "isDeleted": false, + "boundElements": [], + "updated": 1743585021770, + "link": null, + "locked": false, + "points": [ + [ + 0, + 0 + ], + [ + 53.48107758719618, + 0 + ] + ], + "lastCommittedPoint": null, + "startBinding": null, + "endBinding": null, + "startArrowhead": null, + "endArrowhead": null, + "index": "a4", + "frameId": null + }, + { + "id": "yiiK0BHCxD0KdpkXafGdb", + "type": "line", + "x": 925.9844711715464, + "y": 85.3458968296702, + "width": 53.89087229128472, + "height": 0, + "angle": 0, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 0, + "opacity": 100, + "groupIds": [ + "m_KDWMHaWfdM7jbxoSoYi" + ], + "roundness": { + "type": 2 + }, + "seed": 1519846373, + "version": 119, + "versionNonce": 1827639437, + "isDeleted": false, + "boundElements": [], + "updated": 1743585021770, + "link": null, + "locked": false, + "points": [ + [ + 0, + 0 + ], + [ + 53.89087229128472, + 0 + ] + ], + "lastCommittedPoint": null, + "startBinding": null, + "endBinding": null, + "startArrowhead": null, + "endArrowhead": null, + "index": "a5", + "frameId": null + }, + { + "id": "4q9LqVtDFGzHJLV19n5-8", + "type": "line", + "x": 925.3697400322576, + "y": 91.08332753552564, + "width": 53.89088792454709, + "height": 0, + "angle": 0, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 0, + "opacity": 100, + "groupIds": [ + "m_KDWMHaWfdM7jbxoSoYi" + ], + "roundness": { + "type": 2 + }, + "seed": 353793317, + "version": 99, + "versionNonce": 1207519939, + "isDeleted": false, + "boundElements": [], + "updated": 1743585021770, + "link": null, + "locked": false, + "points": [ + [ + 0, + 0 + ], + [ + 53.89088792454709, + 0 + ] + ], + "lastCommittedPoint": null, + "startBinding": null, + "endBinding": null, + "startArrowhead": null, + "endArrowhead": null, + "index": "a6", + "frameId": null + }, + { + "id": "PFAmFTeaN1AtRZNb6UqRt", + "type": "line", + "x": 925.9844711715464, + "y": 95.59131159606606, + "width": 53.68596712260933, + "height": 0, + "angle": 0, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 0, + "opacity": 100, + "groupIds": [ + "m_KDWMHaWfdM7jbxoSoYi" + ], + "roundness": { + "type": 2 + }, + "seed": 703058085, + "version": 104, + "versionNonce": 1193801453, + "isDeleted": false, + "boundElements": [], + "updated": 1743585021770, + "link": null, + "locked": false, + "points": [ + [ + 0, + 0 + ], + [ + 53.68596712260933, + 0 + ] + ], + "lastCommittedPoint": null, + "startBinding": null, + "endBinding": null, + "startArrowhead": null, + "endArrowhead": null, + "index": "a7", + "frameId": null + }, + { + "id": "Y35qBMC9x-Y1NlaqOnWHl", + "type": "line", + "x": 925.5746452009331, + "y": 99.89439830456216, + "width": 54.7105085992489, + "height": 0, + "angle": 0, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 0, + "opacity": 100, + "groupIds": [ + "m_KDWMHaWfdM7jbxoSoYi" + ], + "roundness": { + "type": 2 + }, + "seed": 1211934187, + "version": 111, + "versionNonce": 413727331, + "isDeleted": false, + "boundElements": [], + "updated": 1743585021770, + "link": null, + "locked": false, + "points": [ + [ + 0, + 0 + ], + [ + 54.7105085992489, + 0 + ] + ], + "lastCommittedPoint": null, + "startBinding": null, + "endBinding": null, + "startArrowhead": null, + "endArrowhead": null, + "index": "a8", + "frameId": null + }, + { + "id": "32Y0dfaxPdzR_n9sFmpRw", + "type": "line", + "x": 930.6973525841311, + "y": 76.12502353991395, + "width": 0, + "height": 27.867540671206484, + "angle": 0, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 0, + "opacity": 100, + "groupIds": [ + "m_KDWMHaWfdM7jbxoSoYi" + ], + "roundness": { + "type": 2 + }, + "seed": 495655115, + "version": 100, + "versionNonce": 1581551949, + "isDeleted": false, + "boundElements": [], + "updated": 1743585021770, + "link": null, + "locked": false, + "points": [ + [ + 0, + 0 + ], + [ + 0, + 27.867540671206484 + ] + ], + "lastCommittedPoint": null, + "startBinding": null, + "endBinding": null, + "startArrowhead": null, + "endArrowhead": null, + "index": "a9", + "frameId": null + }, + { + "type": "line", + "version": 149, + "versionNonce": 50443779, + "isDeleted": false, + "id": "Du8LWRMWX3A-tfXa1vozS", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 0, + "opacity": 100, + "angle": 0, + "x": 935.381739516432, + "y": 76.31051799825359, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "width": 0, + "height": 27.867540671206484, + "seed": 658801643, + "groupIds": [ + "m_KDWMHaWfdM7jbxoSoYi" + ], + "roundness": { + "type": 2 + }, + "boundElements": [], + "updated": 1743585021770, + "link": null, + "locked": false, + "startBinding": null, + "endBinding": null, + "lastCommittedPoint": null, + "startArrowhead": null, + "endArrowhead": null, + "points": [ + [ + 0, + 0 + ], + [ + 0, + 27.867540671206484 + ] + ], + "index": "aA", + "frameId": null + }, + { + "type": "line", + "version": 195, + "versionNonce": 1872682925, + "isDeleted": false, + "id": "-FLjybH5wbQf971eFNnIM", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 0, + "opacity": 100, + "angle": 0, + "x": 940.1822853084619, + "y": 76.30143228118634, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "width": 0, + "height": 27.867540671206484, + "seed": 1390498981, + "groupIds": [ + "m_KDWMHaWfdM7jbxoSoYi" + ], + "roundness": { + "type": 2 + }, + "boundElements": [], + "updated": 1743585021770, + "link": null, + "locked": false, + "startBinding": null, + "endBinding": null, + "lastCommittedPoint": null, + "startArrowhead": null, + "endArrowhead": null, + "points": [ + [ + 0, + 0 + ], + [ + 0, + 27.867540671206484 + ] + ], + "index": "aB", + "frameId": null + }, + { + "type": "line", + "version": 233, + "versionNonce": 100793763, + "isDeleted": false, + "id": "1IfrMoHKmY3Tre-iRavnW", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 0, + "opacity": 100, + "angle": 0, + "x": 945.3874785930641, + "y": 76.28226195157173, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "width": 0, + "height": 27.867540671206484, + "seed": 309612741, + "groupIds": [ + "m_KDWMHaWfdM7jbxoSoYi" + ], + "roundness": { + "type": 2 + }, + "boundElements": [], + "updated": 1743585021770, + "link": null, + "locked": false, + "startBinding": null, + "endBinding": null, + "lastCommittedPoint": null, + "startArrowhead": null, + "endArrowhead": null, + "points": [ + [ + 0, + 0 + ], + [ + 0, + 27.867540671206484 + ] + ], + "index": "aC", + "frameId": null + }, + { + "type": "line", + "version": 263, + "versionNonce": 1365271053, + "isDeleted": false, + "id": "jf4HXVzM5WLV9fiEm4B8n", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 0, + "opacity": 100, + "angle": 0, + "x": 950.2125696805517, + "y": 76.28864874669698, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "width": 0, + "height": 27.867540671206484, + "seed": 293456805, + "groupIds": [ + "m_KDWMHaWfdM7jbxoSoYi" + ], + "roundness": { + "type": 2 + }, + "boundElements": [], + "updated": 1743585021770, + "link": null, + "locked": false, + "startBinding": null, + "endBinding": null, + "lastCommittedPoint": null, + "startArrowhead": null, + "endArrowhead": null, + "points": [ + [ + 0, + 0 + ], + [ + 0, + 27.867540671206484 + ] + ], + "index": "aD", + "frameId": null + }, + { + "type": "line", + "version": 301, + "versionNonce": 1020809539, + "isDeleted": false, + "id": "HRDBn3oFTmEZFVfNwbXxy", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 0, + "opacity": 100, + "angle": 0, + "x": 954.9401336394043, + "y": 76.45818071552075, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "width": 0, + "height": 27.867540671206484, + "seed": 138196779, + "groupIds": [ + "m_KDWMHaWfdM7jbxoSoYi" + ], + "roundness": { + "type": 2 + }, + "boundElements": [], + "updated": 1743585021770, + "link": null, + "locked": false, + "startBinding": null, + "endBinding": null, + "lastCommittedPoint": null, + "startArrowhead": null, + "endArrowhead": null, + "points": [ + [ + 0, + 0 + ], + [ + 0, + 27.867540671206484 + ] + ], + "index": "aE", + "frameId": null + }, + { + "type": "line", + "version": 278, + "versionNonce": 1484953709, + "isDeleted": false, + "id": "bLWY6OKGU5eaYRbwTv2mQ", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 0, + "opacity": 100, + "angle": 0, + "x": 959.5530015077876, + "y": 76.6595135226692, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "width": 0, + "height": 27.867540671206484, + "seed": 1410568075, + "groupIds": [ + "m_KDWMHaWfdM7jbxoSoYi" + ], + "roundness": { + "type": 2 + }, + "boundElements": [], + "updated": 1743585021770, + "link": null, + "locked": false, + "startBinding": null, + "endBinding": null, + "lastCommittedPoint": null, + "startArrowhead": null, + "endArrowhead": null, + "points": [ + [ + 0, + 0 + ], + [ + 0, + 27.867540671206484 + ] + ], + "index": "aF", + "frameId": null + }, + { + "type": "line", + "version": 312, + "versionNonce": 1491284195, + "isDeleted": false, + "id": "13JGUo-h9fQQ3kpLLRFDJ", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 0, + "opacity": 100, + "angle": 0, + "x": 963.5826506882386, + "y": 76.32686655901897, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "width": 0, + "height": 27.867540671206484, + "seed": 1415004837, + "groupIds": [ + "m_KDWMHaWfdM7jbxoSoYi" + ], + "roundness": { + "type": 2 + }, + "boundElements": [], + "updated": 1743585021770, + "link": null, + "locked": false, + "startBinding": null, + "endBinding": null, + "lastCommittedPoint": null, + "startArrowhead": null, + "endArrowhead": null, + "points": [ + [ + 0, + 0 + ], + [ + 0, + 27.867540671206484 + ] + ], + "index": "aG", + "frameId": null + }, + { + "type": "line", + "version": 337, + "versionNonce": 2127495885, + "isDeleted": false, + "id": "SztJSycooyfnIUk9e3JFe", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 0, + "opacity": 100, + "angle": 0, + "x": 968.5644845770885, + "y": 76.56835858749854, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "width": 0, + "height": 27.867540671206484, + "seed": 833578539, + "groupIds": [ + "m_KDWMHaWfdM7jbxoSoYi" + ], + "roundness": { + "type": 2 + }, + "boundElements": [], + "updated": 1743585021770, + "link": null, + "locked": false, + "startBinding": null, + "endBinding": null, + "lastCommittedPoint": null, + "startArrowhead": null, + "endArrowhead": null, + "points": [ + [ + 0, + 0 + ], + [ + 0, + 27.867540671206484 + ] + ], + "index": "aH", + "frameId": null + }, + { + "type": "line", + "version": 382, + "versionNonce": 1538333827, + "isDeleted": false, + "id": "0QSVX-y2jpxG5fnbh0i3K", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 0, + "opacity": 100, + "angle": 0, + "x": 972.5083405082543, + "y": 76.58115074452284, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "width": 0, + "height": 27.867540671206484, + "seed": 268543493, + "groupIds": [ + "m_KDWMHaWfdM7jbxoSoYi" + ], + "roundness": { + "type": 2 + }, + "boundElements": [], + "updated": 1743585021770, + "link": null, + "locked": false, + "startBinding": null, + "endBinding": null, + "lastCommittedPoint": null, + "startArrowhead": null, + "endArrowhead": null, + "points": [ + [ + 0, + 0 + ], + [ + 0, + 27.867540671206484 + ] + ], + "index": "aI", + "frameId": null + }, + { + "type": "line", + "version": 443, + "versionNonce": 1222582573, + "isDeleted": false, + "id": "Pra_tpyQgFObw6PGi5J4e", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 0, + "opacity": 100, + "angle": 0, + "x": 976.5517961213865, + "y": 76.4344165489914, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "width": 0, + "height": 27.867540671206484, + "seed": 1160178821, + "groupIds": [ + "m_KDWMHaWfdM7jbxoSoYi" + ], + "roundness": { + "type": 2 + }, + "boundElements": [], + "updated": 1743585021770, + "link": null, + "locked": false, + "startBinding": null, + "endBinding": null, + "lastCommittedPoint": null, + "startArrowhead": null, + "endArrowhead": null, + "points": [ + [ + 0, + 0 + ], + [ + 0, + 27.867540671206484 + ] + ], + "index": "aJ", + "frameId": null + } + ], + "created": 1676979862949, + "name": "Flame arrester" + }, + { + "id": "AFvavFsnd7NNF4WqAaugO", + "status": "published", + "elements": [ + { + "type": "line", + "version": 550, + "versionNonce": 285250595, + "isDeleted": false, + "id": "i6FFESCmE_jB9PGom1_45", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "angle": 4.71238898038469, + "x": 933.6945686856982, + "y": 183.0340065315835, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "width": 37.25449466036624, + "height": 0, + "seed": 1903165867, + "groupIds": [ + "k1ryKsRongpTEPw3VSP7h" + ], + "roundness": { + "type": 2 + }, + "boundElements": [], + "updated": 1743585021770, + "link": null, + "locked": false, + "startBinding": null, + "endBinding": null, + "lastCommittedPoint": null, + "startArrowhead": null, + "endArrowhead": null, + "points": [ + [ + 0, + 0 + ], + [ + 37.25449466036624, + 0 + ] + ], + "index": "a0", + "frameId": null + }, + { + "type": "line", + "version": 585, + "versionNonce": 1813803917, + "isDeleted": false, + "id": "mx2_R2UTQMYVvoW-p1wEj", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "angle": 4.71238898038469, + "x": 949.7952711432083, + "y": 182.5299501375971, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "width": 37.25449466036624, + "height": 0, + "seed": 516588165, + "groupIds": [ + "k1ryKsRongpTEPw3VSP7h" + ], + "roundness": { + "type": 2 + }, + "boundElements": [], + "updated": 1743585021770, + "link": null, + "locked": false, + "startBinding": null, + "endBinding": null, + "lastCommittedPoint": null, + "startArrowhead": null, + "endArrowhead": null, + "points": [ + [ + 0, + 0 + ], + [ + 37.25449466036624, + 0 + ] + ], + "index": "a1", + "frameId": null + }, + { + "type": "line", + "version": 145, + "versionNonce": 1220548547, + "isDeleted": false, + "id": "iWReuXz4isI5pEY5oj4Ua", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "angle": 0, + "x": 960.1323098723803, + "y": 149.34857154294002, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "width": 0, + "height": 33.413914907221624, + "seed": 1794675787, + "groupIds": [ + "k1ryKsRongpTEPw3VSP7h" + ], + "roundness": { + "type": 2 + }, + "boundElements": [], + "updated": 1743585021770, + "link": null, + "locked": false, + "startBinding": null, + "endBinding": null, + "lastCommittedPoint": null, + "startArrowhead": null, + "endArrowhead": null, + "points": [ + [ + 0, + 0 + ], + [ + 0, + 33.413914907221624 + ] + ], + "index": "a2", + "frameId": null + }, + { + "type": "ellipse", + "version": 147, + "versionNonce": 885029357, + "isDeleted": false, + "id": "cUoPO-fYeE2P4rPrjrDoo", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "angle": 0, + "x": 952.7812615941114, + "y": 138.5005538949007, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "width": 13.699694787383125, + "height": 12.541718534730421, + "seed": 1304553957, + "groupIds": [ + "k1ryKsRongpTEPw3VSP7h" + ], + "roundness": { + "type": 2 + }, + "boundElements": [], + "updated": 1743585021770, + "link": null, + "locked": false, + "index": "a3", + "frameId": null + }, + { + "id": "VPSqINuKA5ouoPXBRAHN7", + "type": "ellipse", + "x": 954.1096039847564, + "y": 140.1238561812737, + "width": 10.210205888599603, + "height": 9.245236030622552, + "angle": 0, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "groupIds": [ + "k1ryKsRongpTEPw3VSP7h" + ], + "roundness": { + "type": 2 + }, + "seed": 228768843, + "version": 162, + "versionNonce": 1359882083, + "isDeleted": false, + "boundElements": [], + "updated": 1743585021770, + "link": null, + "locked": false, + "index": "a4", + "frameId": null + }, + { + "id": "aC4OLalT4KAqe_LRraCxy", + "type": "ellipse", + "x": 956.2983070933421, + "y": 140.82119561625632, + "width": 6.946297253959986, + "height": 6.847299451014064, + "angle": 0, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "groupIds": [ + "k1ryKsRongpTEPw3VSP7h" + ], + "roundness": { + "type": 2 + }, + "seed": 418787941, + "version": 119, + "versionNonce": 735360077, + "isDeleted": false, + "boundElements": [], + "updated": 1743585021770, + "link": null, + "locked": false, + "index": "a5", + "frameId": null + }, + { + "id": "apSfQ523nZiCjvj_ZY_3Z", + "type": "ellipse", + "x": 957.3799372965066, + "y": 142.67709806491575, + "width": 3.2481053510584843, + "height": 2.8207144873433094, + "angle": 0, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "groupIds": [ + "k1ryKsRongpTEPw3VSP7h" + ], + "roundness": { + "type": 2 + }, + "seed": 1520346155, + "version": 93, + "versionNonce": 809059075, + "isDeleted": false, + "boundElements": [], + "updated": 1743585021770, + "link": null, + "locked": false, + "index": "a6", + "frameId": null + } + ], + "created": 1676979855977, + "name": "Blind plate" + }, + { + "id": "ICTER2HN5aga5Lg88vzsU", + "status": "published", + "elements": [ + { + "type": "line", + "version": 528, + "versionNonce": 2100470445, + "isDeleted": false, + "id": "3eOv82mY9h_pCzE6B14ug", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "angle": 4.71238898038469, + "x": 935.4869546298098, + "y": 282.1932333859048, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "width": 37.25449466036624, + "height": 0, + "seed": 1792062821, + "groupIds": [ + "A84SE0mXgJgHPxMByPApi" + ], + "roundness": { + "type": 2 + }, + "boundElements": [], + "updated": 1743585021770, + "link": null, + "locked": false, + "startBinding": null, + "endBinding": null, + "lastCommittedPoint": null, + "startArrowhead": null, + "endArrowhead": null, + "points": [ + [ + 0, + 0 + ], + [ + 37.25449466036624, + 0 + ] + ], + "index": "a0", + "frameId": null + }, + { + "type": "line", + "version": 563, + "versionNonce": 515893923, + "isDeleted": false, + "id": "i_Tv7796_EKiPpS6yeB2m", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "angle": 4.71238898038469, + "x": 951.5876570873199, + "y": 281.68917699191843, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "width": 37.25449466036624, + "height": 0, + "seed": 750917317, + "groupIds": [ + "A84SE0mXgJgHPxMByPApi" + ], + "roundness": { + "type": 2 + }, + "boundElements": [], + "updated": 1743585021770, + "link": null, + "locked": false, + "startBinding": null, + "endBinding": null, + "lastCommittedPoint": null, + "startArrowhead": null, + "endArrowhead": null, + "points": [ + [ + 0, + 0 + ], + [ + 37.25449466036624, + 0 + ] + ], + "index": "a1", + "frameId": null + }, + { + "id": "4Lk3PjiS3V0hI26fmtAaC", + "type": "line", + "x": 961.924695816492, + "y": 248.50779839726135, + "width": 0, + "height": 33.413914907221624, + "angle": 0, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "groupIds": [ + "A84SE0mXgJgHPxMByPApi" + ], + "roundness": { + "type": 2 + }, + "seed": 1184808837, + "version": 123, + "versionNonce": 495174925, + "isDeleted": false, + "boundElements": [], + "updated": 1743585021770, + "link": null, + "locked": false, + "points": [ + [ + 0, + 0 + ], + [ + 0, + 33.413914907221624 + ] + ], + "lastCommittedPoint": null, + "startBinding": null, + "endBinding": null, + "startArrowhead": null, + "endArrowhead": null, + "index": "a2", + "frameId": null + }, + { + "id": "94pOLxwcY3klND_YDlhjj", + "type": "ellipse", + "x": 954.5736475382232, + "y": 237.65978074922197, + "width": 13.699694787383125, + "height": 12.541718534730421, + "angle": 0, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "groupIds": [ + "A84SE0mXgJgHPxMByPApi" + ], + "roundness": { + "type": 2 + }, + "seed": 336508997, + "version": 125, + "versionNonce": 1095802435, + "isDeleted": false, + "boundElements": [], + "updated": 1743585021770, + "link": null, + "locked": false, + "index": "a3", + "frameId": null + } + ], + "created": 1676979852697, + "name": "Orifice" + }, + { + "id": "E7EOsAXqxzNg-XwkS_zsd", + "status": "published", + "elements": [ + { + "type": "ellipse", + "version": 185, + "versionNonce": 809605997, + "isDeleted": false, + "id": "KxSdZ5zGq8GjrJA_8NMxi", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "angle": 0, + "x": 816.904674760043, + "y": -405.47185925431955, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "width": 60.045736871195686, + "height": 57.36512288760787, + "seed": 874214245, + "groupIds": [ + "sgHnzfqLghL1Pa2pjKrHy" + ], + "roundness": { + "type": 2 + }, + "boundElements": [], + "updated": 1743585021770, + "link": null, + "locked": false, + "index": "a0", + "frameId": null + }, + { + "id": "emK9G21aeNLLxB9-enAw4", + "type": "line", + "x": 823.208795567856, + "y": -360.13816265477516, + "width": 47.80264311189194, + "height": 11.844920426294607, + "angle": 0, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "groupIds": [ + "sgHnzfqLghL1Pa2pjKrHy" + ], + "roundness": { + "type": 2 + }, + "seed": 1650076075, + "version": 195, + "versionNonce": 583654883, + "isDeleted": false, + "boundElements": [], + "updated": 1743585021770, + "link": null, + "locked": false, + "points": [ + [ + 0, + 0 + ], + [ + 25.593473793509816, + -11.844920426294607 + ], + [ + 47.80264311189194, + -2.3266750346629124 + ] + ], + "lastCommittedPoint": null, + "startBinding": null, + "endBinding": null, + "startArrowhead": null, + "endArrowhead": null, + "index": "a1", + "frameId": null + }, + { + "id": "x_KmGjxeTGW9Nz1TELpo4", + "type": "line", + "x": 822.7857373367078, + "y": -394.8268195744169, + "width": 47.59114627112933, + "height": 10.787327294992906, + "angle": 0, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "groupIds": [ + "sgHnzfqLghL1Pa2pjKrHy" + ], + "roundness": { + "type": 2 + }, + "seed": 614793061, + "version": 110, + "versionNonce": 766879181, + "isDeleted": false, + "boundElements": [], + "updated": 1743585021770, + "link": null, + "locked": false, + "points": [ + [ + 0, + 0 + ], + [ + 23.3097793649481, + 10.787327294992906 + ], + [ + 47.59114627112933, + 0.42303402503949883 + ] + ], + "lastCommittedPoint": null, + "startBinding": null, + "endBinding": null, + "startArrowhead": null, + "endArrowhead": null, + "index": "a2", + "frameId": null + } + ], + "created": 1676979846548, + "name": "Pneumatic pump" + }, + { + "id": "iJodoUxpjT6S-moEcwq70", + "status": "published", + "elements": [ + { + "id": "09SpEQFtRKtGY9Wh-hkEv", + "type": "ellipse", + "x": 811.8626066824947, + "y": -301.9866999334992, + "width": 60.045736871195686, + "height": 57.36512288760787, + "angle": 0, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "groupIds": [ + "kbVqrx7BGSOhOaM2DsWSv" + ], + "roundness": { + "type": 2 + }, + "seed": 1943388395, + "version": 88, + "versionNonce": 1849305475, + "isDeleted": false, + "boundElements": [], + "updated": 1743585021770, + "link": null, + "locked": false, + "index": "a0", + "frameId": null + }, + { + "id": "OmX2BaoGLs1520bHkEHrc", + "type": "line", + "x": 826.3379058326991, + "y": -298.2338362661841, + "width": 42.97023157581168, + "height": 24.313306187589774, + "angle": 0, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "groupIds": [ + "kbVqrx7BGSOhOaM2DsWSv" + ], + "roundness": { + "type": 2 + }, + "seed": 1894017931, + "version": 81, + "versionNonce": 1224303661, + "isDeleted": false, + "boundElements": [], + "updated": 1743585021770, + "link": null, + "locked": false, + "points": [ + [ + 0, + 0 + ], + [ + 42.97023157581168, + 24.313306187589774 + ] + ], + "lastCommittedPoint": null, + "startBinding": null, + "endBinding": null, + "startArrowhead": null, + "endArrowhead": null, + "index": "a1", + "frameId": null + }, + { + "id": "YsIUDvlbUSxMgc0bDLsXp", + "type": "line", + "x": 825.2656766004334, + "y": -249.98280501306675, + "width": 44.578540656011796, + "height": 22.182130418886175, + "angle": 0, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "groupIds": [ + "kbVqrx7BGSOhOaM2DsWSv" + ], + "roundness": { + "type": 2 + }, + "seed": 939835947, + "version": 65, + "versionNonce": 1759510819, + "isDeleted": false, + "boundElements": [], + "updated": 1743585021770, + "link": null, + "locked": false, + "points": [ + [ + 0, + 0 + ], + [ + 44.578540656011796, + -22.182130418886175 + ] + ], + "lastCommittedPoint": null, + "startBinding": null, + "endBinding": null, + "startArrowhead": null, + "endArrowhead": null, + "index": "a2", + "frameId": null + }, + { + "id": "CbjC5ymvUOXhTuMafleBk", + "type": "line", + "x": 825.6723966240161, + "y": -296.59675729702667, + "width": 0, + "height": 46.606317019591756, + "angle": 0, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "groupIds": [ + "kbVqrx7BGSOhOaM2DsWSv" + ], + "roundness": { + "type": 2 + }, + "seed": 1914782923, + "version": 72, + "versionNonce": 368465549, + "isDeleted": false, + "boundElements": [], + "updated": 1743585021770, + "link": null, + "locked": false, + "points": [ + [ + 0, + 0 + ], + [ + 0, + 46.606317019591756 + ] + ], + "lastCommittedPoint": null, + "startBinding": null, + "endBinding": null, + "startArrowhead": null, + "endArrowhead": null, + "index": "a3", + "frameId": null + } + ], + "created": 1676979844812, + "name": "Motor driven pump" + }, + { + "id": "-iWYaTUzYKJIpc2vPhZk5", + "status": "published", + "elements": [ + { + "id": "xe6YemKKMpIn14qZBySjf", + "type": "ellipse", + "x": 731.1096135462108, + "y": -407.9499552740533, + "width": 55.99517900419073, + "height": 60.194833449854116, + "angle": 0, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "fillStyle": "solid", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "groupIds": [ + "4f1Y2D2ldX_YN0BVt3DPd" + ], + "roundness": null, + "seed": 131020869, + "version": 118, + "versionNonce": 740943043, + "isDeleted": false, + "boundElements": [], + "updated": 1743585021770, + "link": null, + "locked": false, + "index": "a0", + "frameId": null + }, + { + "id": "8ZPwKu9eAchPdDi7xlUun", + "type": "line", + "x": 740.9087805521771, + "y": -402.3504160131688, + "width": 37.09677404957779, + "height": 46.8959410555442, + "angle": 0, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "fillStyle": "solid", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "groupIds": [ + "4f1Y2D2ldX_YN0BVt3DPd" + ], + "roundness": null, + "seed": 1556554891, + "version": 131, + "versionNonce": 1868954861, + "isDeleted": false, + "boundElements": [], + "updated": 1743585021770, + "link": null, + "locked": false, + "points": [ + [ + 0, + 0 + ], + [ + 37.09677404957779, + 46.8959410555442 + ] + ], + "lastCommittedPoint": null, + "startBinding": null, + "endBinding": null, + "startArrowhead": null, + "endArrowhead": null, + "index": "a1", + "frameId": null + }, + { + "id": "gf23p5TKrK-BV8tVoFYrq", + "type": "line", + "x": 738.1090109217346, + "y": -356.15440401494425, + "width": 39.196614622700736, + "height": 44.09619812568371, + "angle": 0, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "fillStyle": "solid", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "groupIds": [ + "4f1Y2D2ldX_YN0BVt3DPd" + ], + "roundness": null, + "seed": 1822803275, + "version": 115, + "versionNonce": 532042851, + "isDeleted": false, + "boundElements": [], + "updated": 1743585021770, + "link": null, + "locked": false, + "points": [ + [ + 0, + 0 + ], + [ + 39.196614622700736, + -44.09619812568371 + ] + ], + "lastCommittedPoint": null, + "startBinding": null, + "endBinding": null, + "startArrowhead": null, + "endArrowhead": null, + "index": "a2", + "frameId": null + } + ], + "created": 1676979841875, + "name": "Lighting" + }, + { + "id": "S7VLwiWxBoq02Z-5XUxjh", + "status": "published", + "elements": [ + { + "id": "Ez38EOTmSdcVUyjg69cJB", + "type": "ellipse", + "x": 725.8552340467642, + "y": -311.91837276069185, + "width": 54.830591079882765, + "height": 57.56888739796159, + "angle": 0, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "groupIds": [ + "CIcOIOChKvG0ItmJqyPgi" + ], + "roundness": { + "type": 2 + }, + "seed": 1372231397, + "version": 202, + "versionNonce": 483514189, + "isDeleted": false, + "boundElements": [ + { + "type": "text", + "id": "9A45gPwxme0tyDZBhY0ag" + } + ], + "updated": 1743585021770, + "link": null, + "locked": false, + "index": "a0", + "frameId": null + }, + { + "id": "9A45gPwxme0tyDZBhY0ag", + "type": "text", + "x": 732.2705295867055, + "y": -295.63392906171106, + "width": 42, + "height": 25, + "angle": 0, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "groupIds": [ + "CIcOIOChKvG0ItmJqyPgi" + ], + "roundness": null, + "seed": 1030496427, + "version": 20, + "versionNonce": 861130755, + "isDeleted": false, + "boundElements": [], + "updated": 1743585021770, + "link": null, + "locked": false, + "text": "PIT", + "fontSize": 20, + "fontFamily": 1, + "textAlign": "center", + "verticalAlign": "middle", + "baseline": 18, + "containerId": "Ez38EOTmSdcVUyjg69cJB", + "originalText": "PIT", + "index": "a1", + "frameId": null, + "rawText": "", + "autoResize": true, + "lineHeight": 1.25 + } + ], + "created": 1676979839738, + "name": "Pressure indicator transmitter" + }, + { + "id": "bEk3yZzNGeV1gXa3WfcEw", + "status": "published", + "elements": [ + { + "type": "ellipse", + "version": 211, + "versionNonce": 949183917, + "isDeleted": false, + "id": "1Do6TWtzj2uqx_TshY_Fj", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "angle": 0, + "x": 732.2072296339069, + "y": -233.49483935970227, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "width": 54.830591079882765, + "height": 57.56888739796159, + "seed": 293250059, + "groupIds": [ + "cXvVGEl6XzT4jWFVmKq2O" + ], + "roundness": { + "type": 2 + }, + "boundElements": [ + { + "type": "text", + "id": "TcCOlEVRd2XuLMlxZYKkD" + } + ], + "updated": 1743585021770, + "link": null, + "locked": false, + "index": "a0", + "frameId": null + }, + { + "type": "text", + "version": 30, + "versionNonce": 1493227427, + "isDeleted": false, + "id": "TcCOlEVRd2XuLMlxZYKkD", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "angle": 0, + "x": 742.6225251738482, + "y": -217.21039566072147, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "width": 34, + "height": 25, + "seed": 1408874021, + "groupIds": [ + "cXvVGEl6XzT4jWFVmKq2O" + ], + "roundness": null, + "boundElements": [], + "updated": 1743585021770, + "link": null, + "locked": false, + "fontSize": 20, + "fontFamily": 1, + "text": "TT", + "baseline": 18, + "textAlign": "center", + "verticalAlign": "middle", + "containerId": "1Do6TWtzj2uqx_TshY_Fj", + "originalText": "TT", + "index": "a1", + "frameId": null, + "rawText": "", + "autoResize": true, + "lineHeight": 1.25 + } + ], + "created": 1676979837521, + "name": "Temperature transmitter" + }, + { + "id": "KEQ6TfYDzl5E5KPHbdlDk", + "status": "published", + "elements": [ + { + "type": "ellipse", + "version": 234, + "versionNonce": 1439967245, + "isDeleted": false, + "id": "Acsi5GC7bGK5Rr8aEVlT2", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "angle": 0, + "x": 735.2840531578274, + "y": -164.21256313853917, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "width": 54.830591079882765, + "height": 57.56888739796159, + "seed": 423811723, + "groupIds": [ + "eSvYd7wXbSyiiGhrebRCh" + ], + "roundness": { + "type": 2 + }, + "boundElements": [ + { + "type": "text", + "id": "RR9J304EapnmYmZr9M9Yk" + } + ], + "updated": 1743585021770, + "link": null, + "locked": false, + "index": "a0", + "frameId": null + }, + { + "type": "text", + "version": 55, + "versionNonce": 1055648579, + "isDeleted": false, + "id": "RR9J304EapnmYmZr9M9Yk", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "angle": 0, + "x": 742.1993486977688, + "y": -147.92811943955837, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "width": 41, + "height": 25, + "seed": 886450085, + "groupIds": [ + "eSvYd7wXbSyiiGhrebRCh" + ], + "roundness": null, + "boundElements": [], + "updated": 1743585021770, + "link": null, + "locked": false, + "fontSize": 20, + "fontFamily": 1, + "text": "LIT", + "baseline": 18, + "textAlign": "center", + "verticalAlign": "middle", + "containerId": "Acsi5GC7bGK5Rr8aEVlT2", + "originalText": "LIT", + "index": "a1", + "frameId": null, + "rawText": "", + "autoResize": true, + "lineHeight": 1.25 + } + ], + "created": 1676979834873, + "name": "Level indicator transmitter" + }, + { + "id": "LuEa8Iu4zbp13fD3AmYsT", + "status": "published", + "elements": [ + { + "id": "WmfL-ydhvouhDpR_ltb5k", + "type": "line", + "x": 632.8775726585804, + "y": -397.7815465515401, + "width": 50.97680082409306, + "height": 0, + "angle": 0, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "groupIds": [ + "7gyUJuX4rrZJz5zFHAsVe" + ], + "roundness": { + "type": 2 + }, + "seed": 2116331, + "version": 100, + "versionNonce": 1720557165, + "isDeleted": false, + "boundElements": [], + "updated": 1743585021770, + "link": null, + "locked": false, + "points": [ + [ + 0, + 0 + ], + [ + 50.97680082409306, + 0 + ] + ], + "lastCommittedPoint": null, + "startBinding": null, + "endBinding": null, + "startArrowhead": null, + "endArrowhead": null, + "index": "a0", + "frameId": null + }, + { + "id": "O0IitbPPESasIMKmx3k5r", + "type": "line", + "x": 631.6631351461363, + "y": -384.8087512669892, + "width": 56.30029595694714, + "height": 0, + "angle": 0, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "groupIds": [ + "7gyUJuX4rrZJz5zFHAsVe" + ], + "roundness": { + "type": 2 + }, + "seed": 1587596165, + "version": 43, + "versionNonce": 1232308963, + "isDeleted": false, + "boundElements": [], + "updated": 1743585021770, + "link": null, + "locked": false, + "points": [ + [ + 0, + 0 + ], + [ + 56.30029595694714, + 0 + ] + ], + "lastCommittedPoint": null, + "startBinding": null, + "endBinding": null, + "startArrowhead": null, + "endArrowhead": null, + "index": "a1", + "frameId": null + }, + { + "id": "GUnRetxSz91FLGBEu9v5_", + "type": "line", + "x": 631.892966833264, + "y": -398.09612247330165, + "width": 9.45394107553534, + "height": 13.269717884974114, + "angle": 0, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "groupIds": [ + "7gyUJuX4rrZJz5zFHAsVe" + ], + "roundness": { + "type": 2 + }, + "seed": 1311383013, + "version": 186, + "versionNonce": 1636387021, + "isDeleted": false, + "boundElements": [], + "updated": 1743585021770, + "link": null, + "locked": false, + "points": [ + [ + 0, + 0 + ], + [ + -5.059860937874305, + 2.796235931796218 + ], + [ + 4.394080137661035, + 8.255556968744202 + ], + [ + -2.333477758954473, + 13.269717884974114 + ] + ], + "lastCommittedPoint": null, + "startBinding": null, + "endBinding": null, + "startArrowhead": null, + "endArrowhead": null, + "index": "a2", + "frameId": null + }, + { + "id": "6BdfaXcexMNHyxeg7TbIu", + "type": "line", + "x": 686.504368958558, + "y": -398.1914878520408, + "width": 12.145746361083638, + "height": 14.429567263892807, + "angle": 0, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "groupIds": [ + "7gyUJuX4rrZJz5zFHAsVe" + ], + "roundness": { + "type": 2 + }, + "seed": 1506632965, + "version": 114, + "versionNonce": 1294349955, + "isDeleted": false, + "boundElements": [], + "updated": 1743585021770, + "link": null, + "locked": false, + "points": [ + [ + 0, + 0 + ], + [ + -7.47430423450362, + 5.6057321359082835 + ], + [ + 4.671442126580018, + 8.200977761786078 + ], + [ + -1.4533312144426418, + 14.429567263892807 + ] + ], + "lastCommittedPoint": null, + "startBinding": null, + "endBinding": null, + "startArrowhead": null, + "endArrowhead": null, + "index": "a3", + "frameId": null + }, + { + "id": "Rx_TJI0fYmJnuJKYsFEeR", + "type": "line", + "x": 635.5356574872534, + "y": -388.53873159501256, + "width": 5.955672844880041, + "height": 8.232832833340808, + "angle": 0, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "groupIds": [ + "7gyUJuX4rrZJz5zFHAsVe" + ], + "roundness": { + "type": 2 + }, + "seed": 84815243, + "version": 75, + "versionNonce": 677422893, + "isDeleted": false, + "boundElements": [], + "updated": 1743585021770, + "link": null, + "locked": false, + "points": [ + [ + 0, + 0 + ], + [ + 5.955672844880041, + -8.232832833340808 + ] + ], + "lastCommittedPoint": null, + "startBinding": null, + "endBinding": null, + "startArrowhead": null, + "endArrowhead": null, + "index": "a4", + "frameId": null + }, + { + "id": "VDUgEmmkF4VZe1iYOJu_T", + "type": "line", + "x": 641.6664944290667, + "y": -384.685068005824, + "width": 13.312685193554444, + "height": 12.261660519462737, + "angle": 0, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "groupIds": [ + "7gyUJuX4rrZJz5zFHAsVe" + ], + "roundness": { + "type": 2 + }, + "seed": 1733246597, + "version": 57, + "versionNonce": 146959907, + "isDeleted": false, + "boundElements": [], + "updated": 1743585021770, + "link": null, + "locked": false, + "points": [ + [ + 0, + 0 + ], + [ + 13.312685193554444, + -12.261660519462737 + ] + ], + "lastCommittedPoint": null, + "startBinding": null, + "endBinding": null, + "startArrowhead": null, + "endArrowhead": null, + "index": "a5", + "frameId": null + }, + { + "type": "line", + "version": 65, + "versionNonce": 763181453, + "isDeleted": false, + "id": "rFN6mfe0LDrRAfQCepZ3t", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "angle": 0, + "x": 651.599339985667, + "y": -382.9591635872048, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "width": 15.064352891215322, + "height": 14.363669775154221, + "seed": 383007717, + "groupIds": [ + "7gyUJuX4rrZJz5zFHAsVe" + ], + "roundness": { + "type": 2 + }, + "boundElements": [], + "updated": 1743585021770, + "link": null, + "locked": false, + "startBinding": null, + "endBinding": null, + "lastCommittedPoint": null, + "startArrowhead": null, + "endArrowhead": null, + "points": [ + [ + 0, + 0 + ], + [ + 15.064352891215322, + -14.363669775154221 + ] + ], + "index": "a6", + "frameId": null + }, + { + "type": "line", + "version": 101, + "versionNonce": 1597419971, + "isDeleted": false, + "id": "2yhxd-7N6GHuRnZHnwILQ", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "angle": 0, + "x": 663.5120625043811, + "y": -384.9441771554664, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "width": 14.188519042384883, + "height": 12.086496422529365, + "seed": 1700667973, + "groupIds": [ + "7gyUJuX4rrZJz5zFHAsVe" + ], + "roundness": { + "type": 2 + }, + "boundElements": [], + "updated": 1743585021770, + "link": null, + "locked": false, + "startBinding": null, + "endBinding": null, + "lastCommittedPoint": null, + "startArrowhead": null, + "endArrowhead": null, + "points": [ + [ + 0, + 0 + ], + [ + 14.188519042384883, + -12.086496422529365 + ] + ], + "index": "a7", + "frameId": null + }, + { + "type": "line", + "version": 138, + "versionNonce": 1511555053, + "isDeleted": false, + "id": "p-r7vqr3EOpCu25OZYNwz", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "angle": 0, + "x": 675.1033852488945, + "y": -385.3142551224787, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "width": 7.356998984510369, + "height": 5.955672844879928, + "seed": 1395537451, + "groupIds": [ + "7gyUJuX4rrZJz5zFHAsVe" + ], + "roundness": { + "type": 2 + }, + "boundElements": [], + "updated": 1743585021770, + "link": null, + "locked": false, + "startBinding": null, + "endBinding": null, + "lastCommittedPoint": null, + "startArrowhead": null, + "endArrowhead": null, + "points": [ + [ + 0, + 0 + ], + [ + 7.356998984510369, + -5.955672844879928 + ] + ], + "index": "a8", + "frameId": null + } + ], + "created": 1676979829428, + "name": "Insulation" + }, + { + "id": "dkDl0OtS0fLrnZoATci7o", + "status": "published", + "elements": [ + { + "type": "line", + "version": 128, + "versionNonce": 1369538915, + "isDeleted": false, + "id": "Ke56mgQlVcmGL8CEhTl4M", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "angle": 0, + "x": 628.0144267221146, + "y": -319.540388550545, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "width": 50.97680082409306, + "height": 0, + "seed": 767417099, + "groupIds": [ + "J4trtHkh_Iz-_9uQQ26ed" + ], + "roundness": { + "type": 2 + }, + "boundElements": [], + "updated": 1743585021770, + "link": null, + "locked": false, + "startBinding": null, + "endBinding": null, + "lastCommittedPoint": null, + "startArrowhead": null, + "endArrowhead": null, + "points": [ + [ + 0, + 0 + ], + [ + 50.97680082409306, + 0 + ] + ], + "index": "a0", + "frameId": null + }, + { + "type": "line", + "version": 71, + "versionNonce": 876345933, + "isDeleted": false, + "id": "yo021khmwBGDndsip32pP", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "angle": 0, + "x": 626.7999892096705, + "y": -306.567593265994, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "width": 56.30029595694714, + "height": 0, + "seed": 2045341477, + "groupIds": [ + "J4trtHkh_Iz-_9uQQ26ed" + ], + "roundness": { + "type": 2 + }, + "boundElements": [], + "updated": 1743585021770, + "link": null, + "locked": false, + "startBinding": null, + "endBinding": null, + "lastCommittedPoint": null, + "startArrowhead": null, + "endArrowhead": null, + "points": [ + [ + 0, + 0 + ], + [ + 56.30029595694714, + 0 + ] + ], + "index": "a1", + "frameId": null + }, + { + "type": "line", + "version": 214, + "versionNonce": 961633539, + "isDeleted": false, + "id": "cQ3suOL_70_U8wlWn8dHo", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "angle": 0, + "x": 627.0298208967981, + "y": -319.8549644723065, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "width": 9.45394107553534, + "height": 13.269717884974114, + "seed": 117719467, + "groupIds": [ + "J4trtHkh_Iz-_9uQQ26ed" + ], + "roundness": { + "type": 2 + }, + "boundElements": [], + "updated": 1743585021770, + "link": null, + "locked": false, + "startBinding": null, + "endBinding": null, + "lastCommittedPoint": null, + "startArrowhead": null, + "endArrowhead": null, + "points": [ + [ + 0, + 0 + ], + [ + -5.059860937874305, + 2.796235931796218 + ], + [ + 4.394080137661035, + 8.255556968744202 + ], + [ + -2.333477758954473, + 13.269717884974114 + ] + ], + "index": "a2", + "frameId": null + }, + { + "type": "line", + "version": 142, + "versionNonce": 1153509549, + "isDeleted": false, + "id": "AUltvBV7BjwPf9X4-FKOU", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "angle": 0, + "x": 681.6412230220922, + "y": -319.9503298510456, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "width": 12.145746361083638, + "height": 14.429567263892807, + "seed": 194658949, + "groupIds": [ + "J4trtHkh_Iz-_9uQQ26ed" + ], + "roundness": { + "type": 2 + }, + "boundElements": [], + "updated": 1743585021770, + "link": null, + "locked": false, + "startBinding": null, + "endBinding": null, + "lastCommittedPoint": null, + "startArrowhead": null, + "endArrowhead": null, + "points": [ + [ + 0, + 0 + ], + [ + -7.47430423450362, + 5.6057321359082835 + ], + [ + 4.671442126580018, + 8.200977761786078 + ], + [ + -1.4533312144426418, + 14.429567263892807 + ] + ], + "index": "a3", + "frameId": null + }, + { + "type": "line", + "version": 103, + "versionNonce": 1103414435, + "isDeleted": false, + "id": "yk2ImMTapxA3aNPoQvgVB", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "angle": 0, + "x": 630.6725115507877, + "y": -310.2975735940174, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "width": 5.955672844880041, + "height": 8.232832833340808, + "seed": 1141167179, + "groupIds": [ + "J4trtHkh_Iz-_9uQQ26ed" + ], + "roundness": { + "type": 2 + }, + "boundElements": [], + "updated": 1743585021770, + "link": null, + "locked": false, + "startBinding": null, + "endBinding": null, + "lastCommittedPoint": null, + "startArrowhead": null, + "endArrowhead": null, + "points": [ + [ + 0, + 0 + ], + [ + 5.955672844880041, + -8.232832833340808 + ] + ], + "index": "a4", + "frameId": null + }, + { + "type": "line", + "version": 85, + "versionNonce": 1028754189, + "isDeleted": false, + "id": "fh6cnUP-rsrBUIvUnkRIL", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "angle": 0, + "x": 636.8033484926009, + "y": -306.4439100048289, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "width": 13.312685193554444, + "height": 12.261660519462737, + "seed": 177842661, + "groupIds": [ + "J4trtHkh_Iz-_9uQQ26ed" + ], + "roundness": { + "type": 2 + }, + "boundElements": [], + "updated": 1743585021770, + "link": null, + "locked": false, + "startBinding": null, + "endBinding": null, + "lastCommittedPoint": null, + "startArrowhead": null, + "endArrowhead": null, + "points": [ + [ + 0, + 0 + ], + [ + 13.312685193554444, + -12.261660519462737 + ] + ], + "index": "a5", + "frameId": null + }, + { + "type": "line", + "version": 93, + "versionNonce": 581580867, + "isDeleted": false, + "id": "4ZgKkxI0TAUTs1MPiEJwm", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "angle": 0, + "x": 646.7361940492012, + "y": -304.71800558620964, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "width": 15.064352891215322, + "height": 14.363669775154221, + "seed": 1150948075, + "groupIds": [ + "J4trtHkh_Iz-_9uQQ26ed" + ], + "roundness": { + "type": 2 + }, + "boundElements": [], + "updated": 1743585021770, + "link": null, + "locked": false, + "startBinding": null, + "endBinding": null, + "lastCommittedPoint": null, + "startArrowhead": null, + "endArrowhead": null, + "points": [ + [ + 0, + 0 + ], + [ + 15.064352891215322, + -14.363669775154221 + ] + ], + "index": "a6", + "frameId": null + }, + { + "type": "line", + "version": 129, + "versionNonce": 1583784301, + "isDeleted": false, + "id": "H2HFZH4rikh-0A5ZmmJvp", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "angle": 0, + "x": 658.6489165679152, + "y": -306.70301915447124, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "width": 14.188519042384883, + "height": 12.086496422529365, + "seed": 2012554565, + "groupIds": [ + "J4trtHkh_Iz-_9uQQ26ed" + ], + "roundness": { + "type": 2 + }, + "boundElements": [], + "updated": 1743585021770, + "link": null, + "locked": false, + "startBinding": null, + "endBinding": null, + "lastCommittedPoint": null, + "startArrowhead": null, + "endArrowhead": null, + "points": [ + [ + 0, + 0 + ], + [ + 14.188519042384883, + -12.086496422529365 + ] + ], + "index": "a7", + "frameId": null + }, + { + "type": "line", + "version": 166, + "versionNonce": 434124771, + "isDeleted": false, + "id": "ekUp8VLFjYUt5WL3HwEge", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "angle": 0, + "x": 670.2402393124287, + "y": -307.07309712148356, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "width": 7.356998984510369, + "height": 5.955672844879928, + "seed": 156138891, + "groupIds": [ + "J4trtHkh_Iz-_9uQQ26ed" + ], + "roundness": { + "type": 2 + }, + "boundElements": [], + "updated": 1743585021770, + "link": null, + "locked": false, + "startBinding": null, + "endBinding": null, + "lastCommittedPoint": null, + "startArrowhead": null, + "endArrowhead": null, + "points": [ + [ + 0, + 0 + ], + [ + 7.356998984510369, + -5.955672844879928 + ] + ], + "index": "a8", + "frameId": null + }, + { + "id": "8vKTEH5bJRoVeBr41uFVg", + "type": "line", + "x": 626.71088649685, + "y": -326.02028323225784, + "width": 55.197009579113455, + "height": 0, + "angle": 0, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "dashed", + "roughness": 1, + "opacity": 100, + "groupIds": [ + "J4trtHkh_Iz-_9uQQ26ed" + ], + "roundness": { + "type": 2 + }, + "seed": 558130827, + "version": 88, + "versionNonce": 491383757, + "isDeleted": false, + "boundElements": [], + "updated": 1743585021770, + "link": null, + "locked": false, + "points": [ + [ + 0, + 0 + ], + [ + 55.197009579113455, + 0 + ] + ], + "lastCommittedPoint": null, + "startBinding": null, + "endBinding": null, + "startArrowhead": null, + "endArrowhead": null, + "index": "a9", + "frameId": null + } + ], + "created": 1676979827186, + "name": "Insulation and Tracing" + }, + { + "id": "nivqbxVRcIjEtH5UZwqzC", + "status": "published", + "elements": [ + { + "type": "text", + "version": 416, + "versionNonce": 628441987, + "isDeleted": false, + "id": "8Vu6S1T6k1wF0pWsQWIcN", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "angle": 0, + "x": 2130.6014201528496, + "y": -386.4442238019725, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "width": 137, + "height": 54, + "seed": 1180460005, + "groupIds": [ + "5rTc-PxmHmvPEbLuIDXEI" + ], + "roundness": null, + "boundElements": [], + "updated": 1743585021771, + "link": null, + "locked": false, + "fontSize": 43.130193104788276, + "fontFamily": 1, + "text": "T1000", + "baseline": 38, + "textAlign": "left", + "verticalAlign": "top", + "containerId": null, + "originalText": "T1000", + "index": "a0", + "frameId": null, + "rawText": "", + "autoResize": true, + "lineHeight": 1.2520231446402907 + }, + { + "id": "YK1-pB5eT0hkRRH84fuXN", + "type": "line", + "x": 2024.1475058502504, + "y": 22.52756458292845, + "width": 0, + "height": 561.2740184524793, + "angle": 0, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "groupIds": [ + "5rTc-PxmHmvPEbLuIDXEI" + ], + "roundness": { + "type": 2 + }, + "seed": 1728023275, + "version": 220, + "versionNonce": 169142829, + "isDeleted": false, + "boundElements": [], + "updated": 1743585021771, + "link": null, + "locked": false, + "points": [ + [ + 0, + 0 + ], + [ + 0, + -561.2740184524793 + ] + ], + "lastCommittedPoint": null, + "startBinding": null, + "endBinding": null, + "startArrowhead": null, + "endArrowhead": null, + "index": "a1", + "frameId": null + }, + { + "id": "WYTX73njHCR4fOseCPky4", + "type": "line", + "x": 2029.215463540587, + "y": 19.993827395892822, + "width": 335.7509161966733, + "height": 0, + "angle": 0, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "groupIds": [ + "5rTc-PxmHmvPEbLuIDXEI" + ], + "roundness": { + "type": 2 + }, + "seed": 1571691941, + "version": 257, + "versionNonce": 2108152611, + "isDeleted": false, + "boundElements": [], + "updated": 1743585021771, + "link": null, + "locked": false, + "points": [ + [ + 0, + 0 + ], + [ + 335.7509161966733, + 0 + ] + ], + "lastCommittedPoint": null, + "startBinding": null, + "endBinding": null, + "startArrowhead": null, + "endArrowhead": null, + "index": "a2", + "frameId": null + }, + { + "id": "tmv9BJF54uW1wZ8pAulRa", + "type": "line", + "x": 2364.9663797372596, + "y": 23.794626502952156, + "width": 0, + "height": 558.5747868796975, + "angle": 0, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "groupIds": [ + "5rTc-PxmHmvPEbLuIDXEI" + ], + "roundness": { + "type": 2 + }, + "seed": 1191130155, + "version": 352, + "versionNonce": 1974541453, + "isDeleted": false, + "boundElements": [], + "updated": 1743585021771, + "link": null, + "locked": false, + "points": [ + [ + 0, + 0 + ], + [ + 0, + -558.5747868796975 + ] + ], + "lastCommittedPoint": null, + "startBinding": null, + "endBinding": null, + "startArrowhead": null, + "endArrowhead": null, + "index": "a3", + "frameId": null + }, + { + "id": "vl8s_0IhqwucHTkNO0pB1", + "type": "line", + "x": 2021.1589631100169, + "y": -21.296704981074754, + "width": 21.27334917380397, + "height": 2.363675407610346, + "angle": 0, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "groupIds": [ + "5rTc-PxmHmvPEbLuIDXEI" + ], + "roundness": { + "type": 2 + }, + "seed": 1537449867, + "version": 181, + "versionNonce": 1323728579, + "isDeleted": false, + "boundElements": [], + "updated": 1743585021771, + "link": null, + "locked": false, + "points": [ + [ + 0, + 0 + ], + [ + -21.27334917380397, + 2.363675407610346 + ] + ], + "lastCommittedPoint": null, + "startBinding": null, + "endBinding": null, + "startArrowhead": null, + "endArrowhead": null, + "index": "a4", + "frameId": null + }, + { + "id": "uQ8jEUu7Cu8QFJpglOmtj", + "type": "line", + "x": 1997.1366359178685, + "y": -47.12328947699274, + "width": 0, + "height": 43.45596132710199, + "angle": 0, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "groupIds": [ + "5rTc-PxmHmvPEbLuIDXEI" + ], + "roundness": { + "type": 2 + }, + "seed": 2112614085, + "version": 234, + "versionNonce": 1473774317, + "isDeleted": false, + "boundElements": [], + "updated": 1743585021771, + "link": null, + "locked": false, + "points": [ + [ + 0, + 0 + ], + [ + 0, + 43.45596132710199 + ] + ], + "lastCommittedPoint": null, + "startBinding": null, + "endBinding": null, + "startArrowhead": null, + "endArrowhead": null, + "index": "a5", + "frameId": null + }, + { + "id": "86J8PnIbGV0ghes8tqF10", + "type": "line", + "x": 2328.549304490142, + "y": -593.1073209462955, + "width": 0, + "height": 31.910068844924147, + "angle": 0, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "groupIds": [ + "5rTc-PxmHmvPEbLuIDXEI" + ], + "roundness": { + "type": 2 + }, + "seed": 1331897643, + "version": 180, + "versionNonce": 869248611, + "isDeleted": false, + "boundElements": [], + "updated": 1743585021771, + "link": null, + "locked": false, + "points": [ + [ + 0, + 0 + ], + [ + 0, + 31.910068844924147 + ] + ], + "lastCommittedPoint": null, + "startBinding": null, + "endBinding": null, + "startArrowhead": null, + "endArrowhead": null, + "index": "a6", + "frameId": null + }, + { + "id": "Xw4UVNhRfmy7kyeDFhrfz", + "type": "line", + "x": 2306.8113558186396, + "y": -593.9904746534421, + "width": 39.98766349233438, + "height": 0, + "angle": 0, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "groupIds": [ + "5rTc-PxmHmvPEbLuIDXEI" + ], + "roundness": { + "type": 2 + }, + "seed": 325957547, + "version": 352, + "versionNonce": 1964186957, + "isDeleted": false, + "boundElements": [], + "updated": 1743585021771, + "link": null, + "locked": false, + "points": [ + [ + 0, + 0 + ], + [ + 39.98766349233438, + 0 + ] + ], + "lastCommittedPoint": null, + "startBinding": null, + "endBinding": null, + "startArrowhead": null, + "endArrowhead": null, + "index": "a7", + "frameId": null + }, + { + "id": "1YGR-gd6UTOKW6Pqiidms", + "type": "line", + "x": 2020.010406118326, + "y": -537.3967350828393, + "width": 344.8315766535452, + "height": 0, + "angle": 0, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "groupIds": [ + "5rTc-PxmHmvPEbLuIDXEI" + ], + "roundness": { + "type": 2 + }, + "seed": 1137291851, + "version": 191, + "versionNonce": 1865542147, + "isDeleted": false, + "boundElements": [], + "updated": 1743585021771, + "link": null, + "locked": false, + "points": [ + [ + 0, + 0 + ], + [ + 344.8315766535452, + 0 + ] + ], + "lastCommittedPoint": null, + "startBinding": null, + "endBinding": null, + "startArrowhead": null, + "endArrowhead": null, + "index": "a8", + "frameId": null + }, + { + "type": "text", + "version": 437, + "versionNonce": 1153166253, + "isDeleted": false, + "id": "Adci8_R5AtvLirhcTNMQh", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "angle": 0, + "x": 2164.4296439248055, + "y": -326.3394363255527, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "width": 83, + "height": 54, + "seed": 1700745931, + "groupIds": [ + "5rTc-PxmHmvPEbLuIDXEI" + ], + "roundness": null, + "boundElements": [], + "updated": 1743585021771, + "link": null, + "locked": false, + "fontSize": 43.130193104788276, + "fontFamily": 1, + "text": "...m³", + "baseline": 38, + "textAlign": "left", + "verticalAlign": "top", + "containerId": null, + "originalText": "...m³", + "index": "a9", + "frameId": null, + "rawText": "", + "autoResize": true, + "lineHeight": 1.2520231446402907 + }, + { + "id": "oT8GNvc1Q4A7mu1VUnAI3", + "type": "line", + "x": 2021.458245427165, + "y": -537.1211512888574, + "width": 344.39722615104375, + "height": 64.97231035585828, + "angle": 0, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "groupIds": [ + "5rTc-PxmHmvPEbLuIDXEI" + ], + "roundness": { + "type": 2 + }, + "seed": 438158891, + "version": 343, + "versionNonce": 1712042403, + "isDeleted": false, + "boundElements": [], + "updated": 1743585021771, + "link": null, + "locked": false, + "points": [ + [ + 0, + 0 + ], + [ + 184.4075477995469, + -64.97231035585828 + ], + [ + 344.39722615104375, + 0 + ] + ], + "lastCommittedPoint": null, + "startBinding": null, + "endBinding": null, + "startArrowhead": null, + "endArrowhead": null, + "index": "aA", + "frameId": null + } + ], + "created": 1676979797325, + "name": "Storage tank" + }, + { + "id": "bQuB14FNvHAw_tw60bp6N", + "status": "published", + "elements": [ + { + "type": "text", + "version": 430, + "versionNonce": 385609229, + "isDeleted": false, + "id": "z9bxU53mCBGXF33fdyUP1", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "angle": 0, + "x": 2516.6853799806904, + "y": -375.6466798824472, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "width": 128, + "height": 51, + "seed": 815008549, + "groupIds": [ + "p5hWcfkm1TlybRxvx3bum" + ], + "roundness": null, + "boundElements": [], + "updated": 1743585021771, + "link": null, + "locked": false, + "fontSize": 40.257364018061345, + "fontFamily": 1, + "text": "T1000", + "baseline": 36, + "textAlign": "left", + "verticalAlign": "top", + "containerId": null, + "originalText": "T1000", + "index": "a0", + "frameId": null, + "rawText": "", + "autoResize": true, + "lineHeight": 1.2668489664926645 + }, + { + "type": "line", + "version": 223, + "versionNonce": 1502315843, + "isDeleted": false, + "id": "CfjOhbYRWkV-2p344UJYi", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "angle": 0, + "x": 2421.482488518276, + "y": 15.791240849711244, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "width": 0, + "height": 523.8885070563947, + "seed": 1524721067, + "groupIds": [ + "p5hWcfkm1TlybRxvx3bum" + ], + "roundness": { + "type": 2 + }, + "boundElements": [], + "updated": 1743585021771, + "link": null, + "locked": false, + "startBinding": null, + "endBinding": null, + "lastCommittedPoint": null, + "startArrowhead": null, + "endArrowhead": null, + "points": [ + [ + 0, + 0 + ], + [ + 0, + -523.8885070563947 + ] + ], + "index": "a1", + "frameId": null + }, + { + "type": "line", + "version": 355, + "versionNonce": 2060231789, + "isDeleted": false, + "id": "27usqlKl6WBli9uvohXS7", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "angle": 0, + "x": 2739.599994669016, + "y": 16.973905922039762, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "width": 0, + "height": 521.3690667253368, + "seed": 1755150411, + "groupIds": [ + "p5hWcfkm1TlybRxvx3bum" + ], + "roundness": { + "type": 2 + }, + "boundElements": [], + "updated": 1743585021771, + "link": null, + "locked": false, + "startBinding": null, + "endBinding": null, + "lastCommittedPoint": null, + "startArrowhead": null, + "endArrowhead": null, + "points": [ + [ + 0, + 0 + ], + [ + 0, + -521.3690667253368 + ] + ], + "index": "a2", + "frameId": null + }, + { + "type": "line", + "version": 333, + "versionNonce": 1628431587, + "isDeleted": false, + "id": "2i4Ux7vJiZM3jKXCrb2au", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "angle": 0, + "x": 2573.9226421741528, + "y": 78.18587688851449, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "width": 4.576732410221364e-13, + "height": 31.84544986590419, + "seed": 1468512299, + "groupIds": [ + "p5hWcfkm1TlybRxvx3bum" + ], + "roundness": { + "type": 2 + }, + "boundElements": [], + "updated": 1743585021771, + "link": null, + "locked": false, + "startBinding": null, + "endBinding": null, + "lastCommittedPoint": null, + "startArrowhead": null, + "endArrowhead": null, + "points": [ + [ + 0, + 0 + ], + [ + -4.576732410221364e-13, + 31.84544986590419 + ] + ], + "index": "a3", + "frameId": null + }, + { + "type": "line", + "version": 181, + "versionNonce": 1677168333, + "isDeleted": false, + "id": "R7WMyKK_5rN-A3_4lkpMe", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "angle": 0, + "x": 2704.2063793203674, + "y": -567.2503661383674, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "width": 0, + "height": 35.798907202737674, + "seed": 1372945099, + "groupIds": [ + "p5hWcfkm1TlybRxvx3bum" + ], + "roundness": { + "type": 2 + }, + "boundElements": [], + "updated": 1743585021771, + "link": null, + "locked": false, + "startBinding": null, + "endBinding": null, + "lastCommittedPoint": null, + "startArrowhead": null, + "endArrowhead": null, + "points": [ + [ + 0, + 0 + ], + [ + 0, + 35.798907202737674 + ] + ], + "index": "a4", + "frameId": null + }, + { + "type": "line", + "version": 206, + "versionNonce": 606556291, + "isDeleted": false, + "id": "68dnnuK4dPWXSE2sGfUDg", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "angle": 0, + "x": 2683.8073511214893, + "y": -570.6861129444217, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "width": 37.50649986452279, + "height": 0, + "seed": 2087496549, + "groupIds": [ + "p5hWcfkm1TlybRxvx3bum" + ], + "roundness": { + "type": 2 + }, + "boundElements": [], + "updated": 1743585021771, + "link": null, + "locked": false, + "startBinding": null, + "endBinding": null, + "lastCommittedPoint": null, + "startArrowhead": null, + "endArrowhead": null, + "points": [ + [ + 0, + 0 + ], + [ + 37.50649986452279, + 0 + ] + ], + "index": "a5", + "frameId": null + }, + { + "type": "line", + "version": 194, + "versionNonce": 286666029, + "isDeleted": false, + "id": "v1RNEXKk2jNxF1_u0cDWC", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "angle": 0, + "x": 2417.6209539899596, + "y": -506.8374499015108, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "width": 321.8629295847652, + "height": 0, + "seed": 1318185323, + "groupIds": [ + "p5hWcfkm1TlybRxvx3bum" + ], + "roundness": { + "type": 2 + }, + "boundElements": [], + "updated": 1743585021771, + "link": null, + "locked": false, + "startBinding": null, + "endBinding": null, + "lastCommittedPoint": null, + "startArrowhead": null, + "endArrowhead": null, + "points": [ + [ + 0, + 0 + ], + [ + 321.8629295847652, + 0 + ] + ], + "index": "a6", + "frameId": null + }, + { + "type": "text", + "version": 440, + "versionNonce": 1418741795, + "isDeleted": false, + "id": "HCHdaIvBv6HIyBrNJgJu3", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "angle": 0, + "x": 2552.4206710573276, + "y": -309.83832021763476, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "width": 78, + "height": 51, + "seed": 183236293, + "groupIds": [ + "p5hWcfkm1TlybRxvx3bum" + ], + "roundness": null, + "boundElements": [], + "updated": 1743585021771, + "link": null, + "locked": false, + "fontSize": 40.257364018061345, + "fontFamily": 1, + "text": "...m³", + "baseline": 36, + "textAlign": "left", + "verticalAlign": "top", + "containerId": null, + "originalText": "...m³", + "index": "a7", + "frameId": null, + "rawText": "", + "autoResize": true, + "lineHeight": 1.2668489664926645 + }, + { + "id": "9HmSPqWh3lZL4DstgtopN", + "type": "line", + "x": 2420.3215609828203, + "y": 14.763460424825212, + "width": 318.6409333259159, + "height": 1.81562446402364, + "angle": 0, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "groupIds": [ + "p5hWcfkm1TlybRxvx3bum" + ], + "roundness": { + "type": 2 + }, + "seed": 1530263435, + "version": 138, + "versionNonce": 831651725, + "isDeleted": false, + "boundElements": [], + "updated": 1743585021771, + "link": null, + "locked": false, + "points": [ + [ + 0, + 0 + ], + [ + 318.6409333259159, + 1.81562446402364 + ] + ], + "lastCommittedPoint": null, + "startBinding": null, + "endBinding": null, + "startArrowhead": null, + "endArrowhead": null, + "index": "a8", + "frameId": null + }, + { + "id": "oG9upG5IgOk0Zs1Vs_shf", + "type": "line", + "x": 2555.6675298367395, + "y": 107.6295190300226, + "width": 40.243245006589675, + "height": 0, + "angle": 0, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "groupIds": [ + "p5hWcfkm1TlybRxvx3bum" + ], + "roundness": { + "type": 2 + }, + "seed": 1886860491, + "version": 118, + "versionNonce": 1748585411, + "isDeleted": false, + "boundElements": [], + "updated": 1743585021771, + "link": null, + "locked": false, + "points": [ + [ + 0, + 0 + ], + [ + 40.243245006589675, + 0 + ] + ], + "lastCommittedPoint": null, + "startBinding": null, + "endBinding": null, + "startArrowhead": null, + "endArrowhead": null, + "index": "a9", + "frameId": null + }, + { + "type": "line", + "version": 360, + "versionNonce": 1269073389, + "isDeleted": false, + "id": "-pwapmb8KPOXRnTuuklRA", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "angle": 0, + "x": 2421.2764325549574, + "y": -507.2550169183994, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "width": 321.4575104333103, + "height": 60.64461484638845, + "seed": 1971983595, + "groupIds": [ + "p5hWcfkm1TlybRxvx3bum" + ], + "roundness": { + "type": 2 + }, + "boundElements": [], + "updated": 1743585021771, + "link": null, + "locked": false, + "startBinding": null, + "endBinding": null, + "lastCommittedPoint": null, + "startArrowhead": null, + "endArrowhead": null, + "points": [ + [ + 0, + 0 + ], + [ + 172.1244734844516, + -60.64461484638845 + ], + [ + 321.4575104333103, + 0 + ] + ], + "index": "aA", + "frameId": null + }, + { + "type": "line", + "version": 514, + "versionNonce": 323017571, + "isDeleted": false, + "id": "PjdD1cdWT749hOgNrc27X", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "angle": 3.141592653589793, + "x": 2418.6603911135026, + "y": 76.04405740652749, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "width": 321.4575104333103, + "height": 60.64461484638845, + "seed": 135635461, + "groupIds": [ + "p5hWcfkm1TlybRxvx3bum" + ], + "roundness": { + "type": 2 + }, + "boundElements": [], + "updated": 1743585021771, + "link": null, + "locked": false, + "startBinding": null, + "endBinding": null, + "lastCommittedPoint": null, + "startArrowhead": null, + "endArrowhead": null, + "points": [ + [ + 0, + 0 + ], + [ + 172.1244734844516, + -60.64461484638845 + ], + [ + 321.4575104333103, + 0 + ] + ], + "index": "aB", + "frameId": null + } + ], + "created": 1676979793978, + "name": "Reactor" + }, + { + "id": "p19TukyDVqaQKzpxCvEeW", + "status": "published", + "elements": [ + { + "id": "orkVw_cie2EKAkwB1sBCn", + "type": "rectangle", + "x": 2054.7208219896906, + "y": 119.89586758726125, + "width": 216.16148114047814, + "height": 213.2984585627144, + "angle": 0, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "groupIds": [ + "8x0GE_Mpv889HxnFdi4ZE" + ], + "roundness": { + "type": 3 + }, + "seed": 1004128549, + "version": 128, + "versionNonce": 1649885261, + "isDeleted": false, + "boundElements": [], + "updated": 1743585021771, + "link": null, + "locked": false, + "index": "a0", + "frameId": null + }, + { + "id": "CMRshoIBcVEo5wujeZoGX", + "type": "line", + "x": 2111.2329270529476, + "y": 119.30902950921745, + "width": 0, + "height": 214.14274128551523, + "angle": 0, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "groupIds": [ + "8x0GE_Mpv889HxnFdi4ZE" + ], + "roundness": { + "type": 2 + }, + "seed": 142795851, + "version": 127, + "versionNonce": 32864003, + "isDeleted": false, + "boundElements": [], + "updated": 1743585021771, + "link": null, + "locked": false, + "points": [ + [ + 0, + 0 + ], + [ + 0, + 214.14274128551523 + ] + ], + "lastCommittedPoint": null, + "startBinding": null, + "endBinding": null, + "startArrowhead": null, + "endArrowhead": null, + "index": "a1", + "frameId": null + }, + { + "id": "y4IPyMRbamr84j1nh_ZyI", + "type": "line", + "x": 2168.337637316015, + "y": 124.40766574340216, + "width": 0, + "height": 208.0243544647891, + "angle": 0, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "groupIds": [ + "8x0GE_Mpv889HxnFdi4ZE" + ], + "roundness": { + "type": 2 + }, + "seed": 829855627, + "version": 130, + "versionNonce": 1535356589, + "isDeleted": false, + "boundElements": [], + "updated": 1743585021771, + "link": null, + "locked": false, + "points": [ + [ + 0, + 0 + ], + [ + 0, + 208.0243544647891 + ] + ], + "lastCommittedPoint": null, + "startBinding": null, + "endBinding": null, + "startArrowhead": null, + "endArrowhead": null, + "index": "a2", + "frameId": null + }, + { + "id": "VYCDzh8X2ZBuYpgmVgaj8", + "type": "line", + "x": 2213.2057295356585, + "y": 118.2892983724298, + "width": 0, + "height": 215.16247242230287, + "angle": 0, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "groupIds": [ + "8x0GE_Mpv889HxnFdi4ZE" + ], + "roundness": { + "type": 2 + }, + "seed": 1237976075, + "version": 142, + "versionNonce": 1389731491, + "isDeleted": false, + "boundElements": [], + "updated": 1743585021771, + "link": null, + "locked": false, + "points": [ + [ + 0, + 0 + ], + [ + 0, + 215.16247242230287 + ] + ], + "lastCommittedPoint": null, + "startBinding": null, + "endBinding": null, + "startArrowhead": null, + "endArrowhead": null, + "index": "a3", + "frameId": null + }, + { + "id": "RkIqmTKi8JkCZ60xbQiC1", + "type": "line", + "x": 2054.128138990866, + "y": 170.2953918510657, + "width": 217.2020124948934, + "height": 0, + "angle": 0, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "groupIds": [ + "8x0GE_Mpv889HxnFdi4ZE" + ], + "roundness": { + "type": 2 + }, + "seed": 167414405, + "version": 139, + "versionNonce": 634605837, + "isDeleted": false, + "boundElements": [], + "updated": 1743585021771, + "link": null, + "locked": false, + "points": [ + [ + 0, + 0 + ], + [ + 217.2020124948934, + 0 + ] + ], + "lastCommittedPoint": null, + "startBinding": null, + "endBinding": null, + "startArrowhead": null, + "endArrowhead": null, + "index": "a4", + "frameId": null + }, + { + "id": "xQx6JViCrwW5XOXgsCKb3", + "type": "line", + "x": 2054.468567845062, + "y": 281.44565786634337, + "width": 215.84179415464908, + "height": 0, + "angle": 0, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "groupIds": [ + "8x0GE_Mpv889HxnFdi4ZE" + ], + "roundness": { + "type": 2 + }, + "seed": 1834750693, + "version": 132, + "versionNonce": 1351602755, + "isDeleted": false, + "boundElements": [], + "updated": 1743585021771, + "link": null, + "locked": false, + "points": [ + [ + 0, + 0 + ], + [ + 215.84179415464908, + 0 + ] + ], + "lastCommittedPoint": null, + "startBinding": null, + "endBinding": null, + "startArrowhead": null, + "endArrowhead": null, + "index": "a5", + "frameId": null + }, + { + "id": "B4VeZWQ_zQ_Z-tbrpd0Sq", + "type": "line", + "x": 2053.108505102847, + "y": 228.41985270067357, + "width": 217.20185689686357, + "height": 0, + "angle": 0, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "groupIds": [ + "8x0GE_Mpv889HxnFdi4ZE" + ], + "roundness": { + "type": 2 + }, + "seed": 489699077, + "version": 131, + "versionNonce": 515876717, + "isDeleted": false, + "boundElements": [], + "updated": 1743585021771, + "link": null, + "locked": false, + "points": [ + [ + 0, + 0 + ], + [ + 217.20185689686357, + 0 + ] + ], + "lastCommittedPoint": null, + "startBinding": null, + "endBinding": null, + "startArrowhead": null, + "endArrowhead": null, + "index": "a6", + "frameId": null + }, + { + "id": "3axxeLNICHiaxg59QNAYd", + "type": "line", + "x": 2131.7100151668023, + "y": 115.16984015174988, + "width": 58.77220961596926, + "height": 0, + "angle": 0, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "groupIds": [ + "8x0GE_Mpv889HxnFdi4ZE" + ], + "roundness": { + "type": 2 + }, + "seed": 1166734379, + "version": 113, + "versionNonce": 1812107747, + "isDeleted": false, + "boundElements": [], + "updated": 1743585021771, + "link": null, + "locked": false, + "points": [ + [ + 0, + 0 + ], + [ + 58.77220961596926, + 0 + ] + ], + "lastCommittedPoint": null, + "startBinding": null, + "endBinding": null, + "startArrowhead": null, + "endArrowhead": null, + "index": "a7", + "frameId": null + }, + { + "id": "BmokWuqyRhnZcJjAuCjCS", + "type": "rectangle", + "x": 2269.7166108930846, + "y": 285.6468965298767, + "width": 7.346543717454554, + "height": 30.304370226291496, + "angle": 0, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "groupIds": [ + "8x0GE_Mpv889HxnFdi4ZE" + ], + "roundness": { + "type": 3 + }, + "seed": 880780581, + "version": 138, + "versionNonce": 949105101, + "isDeleted": false, + "boundElements": [], + "updated": 1743585021771, + "link": null, + "locked": false, + "index": "a8", + "frameId": null + }, + { + "id": "FDQ8X-etfhX7b6jkEUKEU", + "type": "line", + "x": 2257.863474570792, + "y": 319.20305099497847, + "width": 13.965625543711708, + "height": 5.508715021062195, + "angle": 0, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "groupIds": [ + "8x0GE_Mpv889HxnFdi4ZE" + ], + "roundness": { + "type": 2 + }, + "seed": 544316075, + "version": 121, + "versionNonce": 1983667587, + "isDeleted": false, + "boundElements": [], + "updated": 1743585021771, + "link": null, + "locked": false, + "points": [ + [ + 0, + 0 + ], + [ + 13.965625543711708, + -5.508715021062195 + ] + ], + "lastCommittedPoint": null, + "startBinding": null, + "endBinding": null, + "startArrowhead": null, + "endArrowhead": null, + "index": "a9", + "frameId": null + } + ], + "created": 1676979792122, + "name": "Cubitainer" + }, + { + "id": "He14cXBLKoCZDmU9gUnN7", + "status": "published", + "elements": [ + { + "type": "ellipse", + "version": 357, + "versionNonce": 1617195053, + "isDeleted": false, + "id": "MbRwmHIpkxYB0WGa7p-Br", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "angle": 0, + "x": 2993.7721797158174, + "y": 314.5613071892582, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "width": 56.90105530999814, + "height": 51.78635946375858, + "seed": 828266277, + "groupIds": [ + "26jhfCHYRdF8mdeLbHxLF" + ], + "roundness": null, + "boundElements": [], + "updated": 1743585021771, + "link": null, + "locked": false, + "index": "a0", + "frameId": null + }, + { + "type": "ellipse", + "version": 412, + "versionNonce": 444314915, + "isDeleted": false, + "id": "00lxaQZZQctyhE9L2JbVz", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "angle": 0, + "x": 2926.3291198767074, + "y": 316.4071531012744, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "width": 56.90105530999814, + "height": 51.78635946375858, + "seed": 1538382251, + "groupIds": [ + "26jhfCHYRdF8mdeLbHxLF" + ], + "roundness": null, + "boundElements": [], + "updated": 1743585021771, + "link": null, + "locked": false, + "index": "a1", + "frameId": null + }, + { + "type": "rectangle", + "version": 355, + "versionNonce": 606069389, + "isDeleted": false, + "id": "DMXIT0NUC47D-lZH5Zy4q", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "angle": 0, + "x": 2456.5766061442428, + "y": 186.69369153412694, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "width": 141.9329499687106, + "height": 153.44102171994805, + "seed": 1412573829, + "groupIds": [ + "26jhfCHYRdF8mdeLbHxLF" + ], + "roundness": null, + "boundElements": [], + "updated": 1743585021771, + "link": null, + "locked": false, + "index": "a2", + "frameId": null + }, + { + "type": "ellipse", + "version": 552, + "versionNonce": 405739715, + "isDeleted": false, + "id": "SrpMPxBPWghDN0n6zf-US", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "angle": 0, + "x": 2502.4490246072564, + "y": 317.9177051565349, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "width": 56.90105530999814, + "height": 51.78635946375858, + "seed": 1597992011, + "groupIds": [ + "26jhfCHYRdF8mdeLbHxLF" + ], + "roundness": null, + "boundElements": [], + "updated": 1743585021771, + "link": null, + "locked": false, + "index": "a3", + "frameId": null + }, + { + "type": "ellipse", + "version": 492, + "versionNonce": 410913005, + "isDeleted": false, + "id": "5atvQrQYKDZ5yzHq6Gd0u", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "angle": 0, + "x": 2640.9882797968976, + "y": 312.1345289116168, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "width": 56.90105530999814, + "height": 51.78635946375858, + "seed": 1207210469, + "groupIds": [ + "26jhfCHYRdF8mdeLbHxLF" + ], + "roundness": null, + "boundElements": [], + "updated": 1743585021771, + "link": null, + "locked": false, + "index": "a4", + "frameId": null + }, + { + "type": "ellipse", + "version": 437, + "versionNonce": 1022691427, + "isDeleted": false, + "id": "V3zZQuOjhfN3-6YaPkDKj", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "angle": 0, + "x": 2703.6726260825726, + "y": 311.6842221822666, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "width": 56.90105530999814, + "height": 51.78635946375858, + "seed": 1287760619, + "groupIds": [ + "26jhfCHYRdF8mdeLbHxLF" + ], + "roundness": null, + "boundElements": [], + "updated": 1743585021772, + "link": null, + "locked": false, + "index": "a5", + "frameId": null + }, + { + "id": "umqMM_VIH6tmjq9w7GVuJ", + "type": "line", + "x": 2640.9263094460994, + "y": 321.69120468659037, + "width": 438.9457990177079, + "height": 10.80475911066612, + "angle": 0, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "groupIds": [ + "26jhfCHYRdF8mdeLbHxLF" + ], + "roundness": { + "type": 2 + }, + "seed": 951610693, + "version": 246, + "versionNonce": 2131256141, + "isDeleted": false, + "boundElements": [], + "updated": 1743585021772, + "link": null, + "locked": false, + "points": [ + [ + 0, + 0 + ], + [ + 438.9457990177079, + 10.80475911066612 + ] + ], + "lastCommittedPoint": null, + "startBinding": null, + "endBinding": null, + "startArrowhead": null, + "endArrowhead": null, + "index": "a6", + "frameId": null + }, + { + "id": "OVQhrn_0GJ3B9-cqSqG9S", + "type": "line", + "x": 2654.432335616534, + "y": 192.03327101618115, + "width": 425.193621166648, + "height": 0, + "angle": 0, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "groupIds": [ + "26jhfCHYRdF8mdeLbHxLF" + ], + "roundness": { + "type": 2 + }, + "seed": 763588421, + "version": 270, + "versionNonce": 513541123, + "isDeleted": false, + "boundElements": [], + "updated": 1743585021772, + "link": null, + "locked": false, + "points": [ + [ + 0, + 0 + ], + [ + 425.193621166648, + 0 + ] + ], + "lastCommittedPoint": null, + "startBinding": null, + "endBinding": null, + "startArrowhead": null, + "endArrowhead": null, + "index": "a7", + "frameId": null + }, + { + "id": "OvYFKSsJ-Sef5iVgHwQLq", + "type": "line", + "x": 2729.678667131655, + "y": 181.17747022328885, + "width": 69.31381179148087, + "height": 1.9602207013215248e-13, + "angle": 0, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "groupIds": [ + "26jhfCHYRdF8mdeLbHxLF" + ], + "roundness": { + "type": 2 + }, + "seed": 1014758405, + "version": 266, + "versionNonce": 739799469, + "isDeleted": false, + "boundElements": [], + "updated": 1743585021772, + "link": null, + "locked": false, + "points": [ + [ + 0, + 0 + ], + [ + 69.31381179148087, + 1.9602207013215248e-13 + ] + ], + "lastCommittedPoint": null, + "startBinding": null, + "endBinding": null, + "startArrowhead": null, + "endArrowhead": null, + "index": "a8", + "frameId": null + }, + { + "id": "2oKYj-DCpTeQpWQvN9twf", + "type": "line", + "x": 3088.722867355651, + "y": 319.2008493284935, + "width": 22.25677463283546, + "height": 0, + "angle": 0, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "groupIds": [ + "26jhfCHYRdF8mdeLbHxLF" + ], + "roundness": { + "type": 2 + }, + "seed": 424002283, + "version": 325, + "versionNonce": 354585507, + "isDeleted": false, + "boundElements": [], + "updated": 1743585021772, + "link": null, + "locked": false, + "points": [ + [ + 0, + 0 + ], + [ + 22.25677463283546, + 0 + ] + ], + "lastCommittedPoint": null, + "startBinding": null, + "endBinding": null, + "startArrowhead": null, + "endArrowhead": null, + "index": "a9", + "frameId": null + }, + { + "id": "10BNmM1_113_nXKrEZ6so", + "type": "rectangle", + "x": 2467.7261782168616, + "y": 208.09539072231277, + "width": 55.04801388709433, + "height": 40.51807851130238, + "angle": 0, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "groupIds": [ + "26jhfCHYRdF8mdeLbHxLF" + ], + "roundness": { + "type": 3 + }, + "seed": 1467058725, + "version": 280, + "versionNonce": 752333837, + "isDeleted": false, + "boundElements": [], + "updated": 1743585021772, + "link": null, + "locked": false, + "index": "aA", + "frameId": null + }, + { + "type": "line", + "version": 316, + "versionNonce": 1958158147, + "isDeleted": false, + "id": "_9CV7RZuY6zQFFv0-OaW2", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "angle": 0, + "x": 2932.6198259629964, + "y": 179.2071578937525, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "width": 69.31381179148087, + "height": 1.9602207013215248e-13, + "seed": 1901517323, + "groupIds": [ + "26jhfCHYRdF8mdeLbHxLF" + ], + "roundness": { + "type": 2 + }, + "boundElements": [], + "updated": 1743585021772, + "link": null, + "locked": false, + "startBinding": null, + "endBinding": null, + "lastCommittedPoint": null, + "startArrowhead": null, + "endArrowhead": null, + "points": [ + [ + 0, + 0 + ], + [ + 69.31381179148087, + 1.9602207013215248e-13 + ] + ], + "index": "aB", + "frameId": null + }, + { + "id": "BOwxP9CiRgXY8iikuK9Lb", + "type": "line", + "x": 3079.831039019914, + "y": 191.2921389227308, + "width": 45.23052566560513, + "height": 141.1591717374806, + "angle": 0, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "groupIds": [ + "26jhfCHYRdF8mdeLbHxLF" + ], + "roundness": { + "type": 2 + }, + "seed": 1702374981, + "version": 351, + "versionNonce": 759147117, + "isDeleted": false, + "boundElements": [], + "updated": 1743585021772, + "link": null, + "locked": false, + "points": [ + [ + 0, + 0 + ], + [ + 44.23646234676646, + 73.5618232266126 + ], + [ + -0.9940633188386715, + 141.1591717374806 + ] + ], + "lastCommittedPoint": null, + "startBinding": null, + "endBinding": null, + "startArrowhead": null, + "endArrowhead": null, + "index": "aC", + "frameId": null + }, + { + "id": "RuqgRiQYT7GjgGc2Parl-", + "type": "line", + "x": 2658.9154394070356, + "y": 191.41214394241874, + "width": 42.70409550801079, + "height": 130.11408753339435, + "angle": 0, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "groupIds": [ + "26jhfCHYRdF8mdeLbHxLF" + ], + "roundness": { + "type": 2 + }, + "seed": 1356939915, + "version": 327, + "versionNonce": 129515235, + "isDeleted": false, + "boundElements": [], + "updated": 1743585021772, + "link": null, + "locked": false, + "points": [ + [ + 0, + 0 + ], + [ + -42.70409550801079, + 56.049155580454055 + ], + [ + -15.346784720904392, + 130.11408753339435 + ] + ], + "lastCommittedPoint": null, + "startBinding": null, + "endBinding": null, + "startArrowhead": null, + "endArrowhead": null, + "index": "aD", + "frameId": null + }, + { + "id": "qVPv_gVyOdLs1Ns59nOlQ", + "type": "line", + "x": 2544.8496193411365, + "y": 341.1606504567196, + "width": 221.9721034218439, + "height": 5.402975192067281, + "angle": 0, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "groupIds": [ + "26jhfCHYRdF8mdeLbHxLF" + ], + "roundness": { + "type": 2 + }, + "seed": 1444524427, + "version": 273, + "versionNonce": 505009357, + "isDeleted": false, + "boundElements": [], + "updated": 1743585021772, + "link": null, + "locked": false, + "points": [ + [ + 0, + 0 + ], + [ + 221.9721034218439, + -5.402975192067281 + ] + ], + "lastCommittedPoint": null, + "startBinding": null, + "endBinding": null, + "startArrowhead": null, + "endArrowhead": null, + "index": "aE", + "frameId": null + }, + { + "id": "xvPtIVGzggHDUQiTvb47d", + "type": "line", + "x": 3078.9000113456686, + "y": 191.98019669434788, + "width": 1.6651930318570667, + "height": 139.81815568666, + "angle": 0, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "groupIds": [ + "26jhfCHYRdF8mdeLbHxLF" + ], + "roundness": { + "type": 2 + }, + "seed": 2063890629, + "version": 236, + "versionNonce": 1219783299, + "isDeleted": false, + "boundElements": [], + "updated": 1743585021772, + "link": null, + "locked": false, + "points": [ + [ + 0, + 0 + ], + [ + 1.6651930318570667, + 139.81815568666 + ] + ], + "lastCommittedPoint": null, + "startBinding": null, + "endBinding": null, + "startArrowhead": null, + "endArrowhead": null, + "index": "aF", + "frameId": null + }, + { + "id": "cOIF503DqUmHI-dBN4kx5", + "type": "line", + "x": 2661.277618483744, + "y": 192.0902756149935, + "width": 7.194624316616795, + "height": 133.09997808222536, + "angle": 0, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "groupIds": [ + "26jhfCHYRdF8mdeLbHxLF" + ], + "roundness": { + "type": 2 + }, + "seed": 474255723, + "version": 225, + "versionNonce": 452965165, + "isDeleted": false, + "boundElements": [], + "updated": 1743585021772, + "link": null, + "locked": false, + "points": [ + [ + 0, + 0 + ], + [ + -7.194624316616795, + 133.09997808222536 + ] + ], + "lastCommittedPoint": null, + "startBinding": null, + "endBinding": null, + "startArrowhead": null, + "endArrowhead": null, + "index": "aG", + "frameId": null + }, + { + "id": "CusrEs0Us7E29mBTNghEU", + "type": "line", + "x": 2569.271512903203, + "y": 187.75870635097064, + "width": 54.78265825897469, + "height": 13.175584073342902, + "angle": 0, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "fillStyle": "hachure", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "groupIds": [ + "26jhfCHYRdF8mdeLbHxLF" + ], + "roundness": { + "type": 2 + }, + "seed": 53268997, + "version": 230, + "versionNonce": 1550459427, + "isDeleted": false, + "boundElements": [], + "updated": 1743585021772, + "link": null, + "locked": false, + "points": [ + [ + 0, + 0 + ], + [ + 54.78265825897469, + -13.175584073342902 + ] + ], + "lastCommittedPoint": null, + "startBinding": null, + "endBinding": null, + "startArrowhead": null, + "endArrowhead": null, + "index": "aH", + "frameId": null + }, + { + "id": "NrTloS52_1GJMYshfpGRW", + "type": "line", + "x": 3111.7960382063256, + "y": 326.84634439503895, + "width": 0, + "height": 18.32916416007106, + "angle": 0, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "fillStyle": "solid", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "groupIds": [ + "26jhfCHYRdF8mdeLbHxLF" + ], + "roundness": { + "type": 2 + }, + "seed": 1433727499, + "version": 136, + "versionNonce": 274384269, + "isDeleted": false, + "boundElements": [], + "updated": 1743585021772, + "link": null, + "locked": false, + "points": [ + [ + 0, + 0 + ], + [ + 0, + -18.32916416007106 + ] + ], + "lastCommittedPoint": null, + "startBinding": null, + "endBinding": null, + "startArrowhead": null, + "endArrowhead": null, + "index": "aI", + "frameId": null + }, + { + "id": "MPUc1S2PD8TNOqNLfiPTe", + "type": "line", + "x": 3124.770759267384, + "y": 308.66824819055364, + "width": 13.296378076086057, + "height": 0, + "angle": 0, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "fillStyle": "solid", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "groupIds": [ + "26jhfCHYRdF8mdeLbHxLF" + ], + "roundness": { + "type": 2 + }, + "seed": 1482806213, + "version": 139, + "versionNonce": 1271391683, + "isDeleted": false, + "boundElements": [], + "updated": 1743585021772, + "link": null, + "locked": false, + "points": [ + [ + 0, + 0 + ], + [ + -11.1167589965371, + 0 + ], + [ + -13.296378076086057, + 0 + ] + ], + "lastCommittedPoint": null, + "startBinding": null, + "endBinding": null, + "startArrowhead": null, + "endArrowhead": null, + "index": "aJ", + "frameId": null + }, + { + "id": "FWN-ZJvdDOurwW2lzj18K", + "type": "line", + "x": 3124.0175055905784, + "y": 326.8715767734353, + "width": 12.862900202787841, + "height": 0, + "angle": 0, + "strokeColor": "#000000", + "backgroundColor": "transparent", + "fillStyle": "solid", + "strokeWidth": 1, + "strokeStyle": "solid", + "roughness": 1, + "opacity": 100, + "groupIds": [ + "26jhfCHYRdF8mdeLbHxLF" + ], + "roundness": { + "type": 2 + }, + "seed": 1025110091, + "version": 151, + "versionNonce": 560237549, + "isDeleted": false, + "boundElements": [], + "updated": 1743585021772, + "link": null, + "locked": false, + "points": [ + [ + 0, + 0 + ], + [ + -12.862900202787841, + 0 + ] + ], + "lastCommittedPoint": null, + "startBinding": null, + "endBinding": null, + "startArrowhead": null, + "endArrowhead": null, + "index": "aK", + "frameId": null + } + ], + "created": 1676979788808, + "name": "Liquid bulk Cargo" + }, { "status": "published", "elements": [ diff --git a/.obsidian/plugins/obsidian-importer/main.js b/.obsidian/plugins/obsidian-importer/main.js new file mode 100644 index 0000000..295585b --- /dev/null +++ b/.obsidian/plugins/obsidian-importer/main.js @@ -0,0 +1,228 @@ +/* +THIS IS A GENERATED/BUNDLED FILE BY ESBUILD +if you want to view the source, please visit the github repository of this plugin +*/ + +var hd=Object.create;var vi=Object.defineProperty;var gd=Object.getOwnPropertyDescriptor;var yd=Object.getOwnPropertyNames;var bd=Object.getPrototypeOf,xd=Object.prototype.hasOwnProperty;var Y=(n,t)=>()=>(t||n((t={exports:{}}).exports,t),t.exports),Se=(n,t)=>{for(var e in t)vi(n,e,{get:t[e],enumerable:!0})},is=(n,t,e,i)=>{if(t&&typeof t=="object"||typeof t=="function")for(let r of yd(t))!xd.call(n,r)&&r!==e&&vi(n,r,{get:()=>t[r],enumerable:!(i=gd(t,r))||i.enumerable});return n};var rs=(n,t,e)=>(e=n!=null?hd(bd(n)):{},is(t||!n||!n.__esModule?vi(e,"default",{value:n,enumerable:!0}):e,n)),wd=n=>is(vi({},"__esModule",{value:!0}),n);var Do=Y((Mx,Ml)=>{"use strict";Ml.exports=sh;function sh(n,t){for(var e=new Array(arguments.length-1),i=0,r=2,o=!0;r{"use strict";var zi=Ul;zi.length=function(t){var e=t.length;if(!e)return 0;for(var i=0;--e%4>1&&t.charAt(e)==="=";)++i;return Math.ceil(t.length*3)/4-i};var wn=new Array(64),Bl=new Array(123);for(Ye=0;Ye<64;)Bl[wn[Ye]=Ye<26?Ye+65:Ye<52?Ye+71:Ye<62?Ye-4:Ye-59|43]=Ye++;var Ye;zi.encode=function(t,e,i){for(var r=null,o=[],a=0,s=0,l;e>2],l=(c&3)<<4,s=1;break;case 1:o[a++]=wn[l|c>>4],l=(c&15)<<2,s=2;break;case 2:o[a++]=wn[l|c>>6],o[a++]=wn[c&63],s=0;break}a>8191&&((r||(r=[])).push(String.fromCharCode.apply(String,o)),a=0)}return s&&(o[a++]=wn[l],o[a++]=61,s===1&&(o[a++]=61)),r?(a&&r.push(String.fromCharCode.apply(String,o.slice(0,a))),r.join("")):String.fromCharCode.apply(String,o.slice(0,a))};var $l="invalid encoding";zi.decode=function(t,e,i){for(var r=i,o=0,a,s=0;s1)break;if((l=Bl[l])===void 0)throw Error($l);switch(o){case 0:a=l,o=1;break;case 1:e[i++]=a<<2|(l&48)>>4,a=l,o=2;break;case 2:e[i++]=(a&15)<<4|(l&60)>>2,a=l,o=3;break;case 3:e[i++]=(a&3)<<6|l,o=0;break}}if(o===1)throw Error($l);return i-r};zi.test=function(t){return/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/.test(t)}});var ql=Y((Bx,Hl)=>{"use strict";Hl.exports=Gi;function Gi(){this._listeners={}}Gi.prototype.on=function(t,e,i){return(this._listeners[t]||(this._listeners[t]=[])).push({fn:e,ctx:i||this}),this};Gi.prototype.off=function(t,e){if(t===void 0)this._listeners={};else if(e===void 0)this._listeners[t]=[];else for(var i=this._listeners[t],r=0;r{"use strict";Vl.exports=Wl(Wl);function Wl(n){return typeof Float32Array!="undefined"?function(){var t=new Float32Array([-0]),e=new Uint8Array(t.buffer),i=e[3]===128;function r(l,c,p){t[0]=l,c[p]=e[0],c[p+1]=e[1],c[p+2]=e[2],c[p+3]=e[3]}function o(l,c,p){t[0]=l,c[p]=e[3],c[p+1]=e[2],c[p+2]=e[1],c[p+3]=e[0]}n.writeFloatLE=i?r:o,n.writeFloatBE=i?o:r;function a(l,c){return e[0]=l[c],e[1]=l[c+1],e[2]=l[c+2],e[3]=l[c+3],t[0]}function s(l,c){return e[3]=l[c],e[2]=l[c+1],e[1]=l[c+2],e[0]=l[c+3],t[0]}n.readFloatLE=i?a:s,n.readFloatBE=i?s:a}():function(){function t(i,r,o,a){var s=r<0?1:0;if(s&&(r=-r),r===0)i(1/r>0?0:2147483648,o,a);else if(isNaN(r))i(2143289344,o,a);else if(r>34028234663852886e22)i((s<<31|2139095040)>>>0,o,a);else if(r<11754943508222875e-54)i((s<<31|Math.round(r/1401298464324817e-60))>>>0,o,a);else{var l=Math.floor(Math.log(r)/Math.LN2),c=Math.round(r*Math.pow(2,-l)*8388608)&8388607;i((s<<31|l+127<<23|c)>>>0,o,a)}}n.writeFloatLE=t.bind(null,Zl),n.writeFloatBE=t.bind(null,Yl);function e(i,r,o){var a=i(r,o),s=(a>>31)*2+1,l=a>>>23&255,c=a&8388607;return l===255?c?NaN:s*(1/0):l===0?s*1401298464324817e-60*c:s*Math.pow(2,l-150)*(c+8388608)}n.readFloatLE=e.bind(null,zl),n.readFloatBE=e.bind(null,Gl)}(),typeof Float64Array!="undefined"?function(){var t=new Float64Array([-0]),e=new Uint8Array(t.buffer),i=e[7]===128;function r(l,c,p){t[0]=l,c[p]=e[0],c[p+1]=e[1],c[p+2]=e[2],c[p+3]=e[3],c[p+4]=e[4],c[p+5]=e[5],c[p+6]=e[6],c[p+7]=e[7]}function o(l,c,p){t[0]=l,c[p]=e[7],c[p+1]=e[6],c[p+2]=e[5],c[p+3]=e[4],c[p+4]=e[3],c[p+5]=e[2],c[p+6]=e[1],c[p+7]=e[0]}n.writeDoubleLE=i?r:o,n.writeDoubleBE=i?o:r;function a(l,c){return e[0]=l[c],e[1]=l[c+1],e[2]=l[c+2],e[3]=l[c+3],e[4]=l[c+4],e[5]=l[c+5],e[6]=l[c+6],e[7]=l[c+7],t[0]}function s(l,c){return e[7]=l[c],e[6]=l[c+1],e[5]=l[c+2],e[4]=l[c+3],e[3]=l[c+4],e[2]=l[c+5],e[1]=l[c+6],e[0]=l[c+7],t[0]}n.readDoubleLE=i?a:s,n.readDoubleBE=i?s:a}():function(){function t(i,r,o,a,s,l){var c=a<0?1:0;if(c&&(a=-a),a===0)i(0,s,l+r),i(1/a>0?0:2147483648,s,l+o);else if(isNaN(a))i(0,s,l+r),i(2146959360,s,l+o);else if(a>17976931348623157e292)i(0,s,l+r),i((c<<31|2146435072)>>>0,s,l+o);else{var p;if(a<22250738585072014e-324)p=a/5e-324,i(p>>>0,s,l+r),i((c<<31|p/4294967296)>>>0,s,l+o);else{var m=Math.floor(Math.log(a)/Math.LN2);m===1024&&(m=1023),p=a*Math.pow(2,-m),i(p*4503599627370496>>>0,s,l+r),i((c<<31|m+1023<<20|p*1048576&1048575)>>>0,s,l+o)}}}n.writeDoubleLE=t.bind(null,Zl,0,4),n.writeDoubleBE=t.bind(null,Yl,4,0);function e(i,r,o,a,s){var l=i(a,s+r),c=i(a,s+o),p=(c>>31)*2+1,m=c>>>20&2047,y=4294967296*(c&1048575)+l;return m===2047?y?NaN:p*(1/0):m===0?p*5e-324*y:p*Math.pow(2,m-1075)*(y+4503599627370496)}n.readDoubleLE=e.bind(null,zl,0,4),n.readDoubleBE=e.bind(null,Gl,4,0)}(),n}function Zl(n,t,e){t[e]=n&255,t[e+1]=n>>>8&255,t[e+2]=n>>>16&255,t[e+3]=n>>>24}function Yl(n,t,e){t[e]=n>>>24,t[e+1]=n>>>16&255,t[e+2]=n>>>8&255,t[e+3]=n&255}function zl(n,t){return(n[t]|n[t+1]<<8|n[t+2]<<16|n[t+3]<<24)>>>0}function Gl(n,t){return(n[t]<<24|n[t+1]<<16|n[t+2]<<8|n[t+3])>>>0}});var Co=Y((exports,module)=>{"use strict";module.exports=inquire;function inquire(moduleName){try{var mod=eval("quire".replace(/^/,"re"))(moduleName);if(mod&&(mod.length||Object.keys(mod).length))return mod}catch(n){}return null}});var Jl=Y(Xl=>{"use strict";var Io=Xl;Io.length=function(t){for(var e=0,i=0,r=0;r191&&l<224?a[s++]=(l&31)<<6|t[e++]&63:l>239&&l<365?(l=((l&7)<<18|(t[e++]&63)<<12|(t[e++]&63)<<6|t[e++]&63)-65536,a[s++]=55296+(l>>10),a[s++]=56320+(l&1023)):a[s++]=(l&15)<<12|(t[e++]&63)<<6|t[e++]&63,s>8191&&((o||(o=[])).push(String.fromCharCode.apply(String,a)),s=0);return o?(s&&o.push(String.fromCharCode.apply(String,a.slice(0,s))),o.join("")):String.fromCharCode.apply(String,a.slice(0,s))};Io.write=function(t,e,i){for(var r=i,o,a,s=0;s>6|192,e[i++]=o&63|128):(o&64512)===55296&&((a=t.charCodeAt(s+1))&64512)===56320?(o=65536+((o&1023)<<10)+(a&1023),++s,e[i++]=o>>18|240,e[i++]=o>>12&63|128,e[i++]=o>>6&63|128,e[i++]=o&63|128):(e[i++]=o>>12|224,e[i++]=o>>6&63|128,e[i++]=o&63|128);return i-r}});var ec=Y((Hx,Ql)=>{"use strict";Ql.exports=lh;function lh(n,t,e){var i=e||8192,r=i>>>1,o=null,a=i;return function(l){if(l<1||l>r)return n(l);a+l>i&&(o=n(i),a=0);var c=t.call(o,a,a+=l);return a&7&&(a=(a|7)+1),c}}});var nc=Y((qx,tc)=>{"use strict";tc.exports=ge;var ei=et();function ge(n,t){this.lo=n>>>0,this.hi=t>>>0}var Jt=ge.zero=new ge(0,0);Jt.toNumber=function(){return 0};Jt.zzEncode=Jt.zzDecode=function(){return this};Jt.length=function(){return 1};var ch=ge.zeroHash="\0\0\0\0\0\0\0\0";ge.fromNumber=function(t){if(t===0)return Jt;var e=t<0;e&&(t=-t);var i=t>>>0,r=(t-i)/4294967296>>>0;return e&&(r=~r>>>0,i=~i>>>0,++i>4294967295&&(i=0,++r>4294967295&&(r=0))),new ge(i,r)};ge.from=function(t){if(typeof t=="number")return ge.fromNumber(t);if(ei.isString(t))if(ei.Long)t=ei.Long.fromString(t);else return ge.fromNumber(parseInt(t,10));return t.low||t.high?new ge(t.low>>>0,t.high>>>0):Jt};ge.prototype.toNumber=function(t){if(!t&&this.hi>>>31){var e=~this.lo+1>>>0,i=~this.hi>>>0;return e||(i=i+1>>>0),-(e+i*4294967296)}return this.lo+this.hi*4294967296};ge.prototype.toLong=function(t){return ei.Long?new ei.Long(this.lo|0,this.hi|0,Boolean(t)):{low:this.lo|0,high:this.hi|0,unsigned:Boolean(t)}};var Ot=String.prototype.charCodeAt;ge.fromHash=function(t){return t===ch?Jt:new ge((Ot.call(t,0)|Ot.call(t,1)<<8|Ot.call(t,2)<<16|Ot.call(t,3)<<24)>>>0,(Ot.call(t,4)|Ot.call(t,5)<<8|Ot.call(t,6)<<16|Ot.call(t,7)<<24)>>>0)};ge.prototype.toHash=function(){return String.fromCharCode(this.lo&255,this.lo>>>8&255,this.lo>>>16&255,this.lo>>>24,this.hi&255,this.hi>>>8&255,this.hi>>>16&255,this.hi>>>24)};ge.prototype.zzEncode=function(){var t=this.hi>>31;return this.hi=((this.hi<<1|this.lo>>>31)^t)>>>0,this.lo=(this.lo<<1^t)>>>0,this};ge.prototype.zzDecode=function(){var t=-(this.lo&1);return this.lo=((this.lo>>>1|this.hi<<31)^t)>>>0,this.hi=(this.hi>>>1^t)>>>0,this};ge.prototype.length=function(){var t=this.lo,e=(this.lo>>>28|this.hi<<4)>>>0,i=this.hi>>>24;return i===0?e===0?t<16384?t<128?1:2:t<2097152?3:4:e<16384?e<128?5:6:e<2097152?7:8:i<128?9:10}});var et=Y(Fo=>{"use strict";var H=Fo;H.asPromise=Do();H.base64=jl();H.EventEmitter=ql();H.float=Kl();H.inquire=Co();H.utf8=Jl();H.pool=ec();H.LongBits=nc();H.isNode=Boolean(typeof global!="undefined"&&global&&global.process&&global.process.versions&&global.process.versions.node);H.global=H.isNode&&global||typeof window!="undefined"&&window||typeof self!="undefined"&&self||Fo;H.emptyArray=Object.freeze?Object.freeze([]):[];H.emptyObject=Object.freeze?Object.freeze({}):{};H.isInteger=Number.isInteger||function(t){return typeof t=="number"&&isFinite(t)&&Math.floor(t)===t};H.isString=function(t){return typeof t=="string"||t instanceof String};H.isObject=function(t){return t&&typeof t=="object"};H.isset=H.isSet=function(t,e){var i=t[e];return i!=null&&t.hasOwnProperty(e)?typeof i!="object"||(Array.isArray(i)?i.length:Object.keys(i).length)>0:!1};H.Buffer=function(){try{var n=H.inquire("buffer").Buffer;return n.prototype.utf8Write?n:null}catch(t){return null}}();H._Buffer_from=null;H._Buffer_allocUnsafe=null;H.newBuffer=function(t){return typeof t=="number"?H.Buffer?H._Buffer_allocUnsafe(t):new H.Array(t):H.Buffer?H._Buffer_from(t):typeof Uint8Array=="undefined"?t:new Uint8Array(t)};H.Array=typeof Uint8Array!="undefined"?Uint8Array:Array;H.Long=H.global.dcodeIO&&H.global.dcodeIO.Long||H.global.Long||H.inquire("long");H.key2Re=/^true|false|0|1$/;H.key32Re=/^-?(?:0|[1-9][0-9]*)$/;H.key64Re=/^(?:[\\x00-\\xff]{8}|-?(?:0|[1-9][0-9]*))$/;H.longToHash=function(t){return t?H.LongBits.from(t).toHash():H.LongBits.zeroHash};H.longFromHash=function(t,e){var i=H.LongBits.fromHash(t);return H.Long?H.Long.fromBits(i.lo,i.hi,e):i.toNumber(Boolean(e))};function ic(n,t,e){for(var i=Object.keys(t),r=0;r-1;--o)if(e[r[o]]===1&&this[r[o]]!==void 0&&this[r[o]]!==null)return r[o]}};H.oneOfSetter=function(t){return function(e){for(var i=0;i{"use strict";lc.exports=X;var $e=et(),Lo,Vi=$e.LongBits,oc=$e.base64,ac=$e.utf8;function ti(n,t,e){this.fn=n,this.len=t,this.next=void 0,this.val=e}function Mo(){}function ph(n){this.head=n.head,this.tail=n.tail,this.len=n.len,this.next=n.states}function X(){this.len=0,this.head=new ti(Mo,0,0),this.tail=this.head,this.states=null}var sc=function(){return $e.Buffer?function(){return(X.create=function(){return new Lo})()}:function(){return new X}};X.create=sc();X.alloc=function(t){return new $e.Array(t)};$e.Array!==Array&&(X.alloc=$e.pool(X.alloc,$e.Array.prototype.subarray));X.prototype._push=function(t,e,i){return this.tail=this.tail.next=new ti(t,e,i),this.len+=e,this};function $o(n,t,e){t[e]=n&255}function uh(n,t,e){for(;n>127;)t[e++]=n&127|128,n>>>=7;t[e]=n}function Bo(n,t){this.len=n,this.next=void 0,this.val=t}Bo.prototype=Object.create(ti.prototype);Bo.prototype.fn=uh;X.prototype.uint32=function(t){return this.len+=(this.tail=this.tail.next=new Bo((t=t>>>0)<128?1:t<16384?2:t<2097152?3:t<268435456?4:5,t)).len,this};X.prototype.int32=function(t){return t<0?this._push(Uo,10,Vi.fromNumber(t)):this.uint32(t)};X.prototype.sint32=function(t){return this.uint32((t<<1^t>>31)>>>0)};function Uo(n,t,e){for(;n.hi;)t[e++]=n.lo&127|128,n.lo=(n.lo>>>7|n.hi<<25)>>>0,n.hi>>>=7;for(;n.lo>127;)t[e++]=n.lo&127|128,n.lo=n.lo>>>7;t[e++]=n.lo}X.prototype.uint64=function(t){var e=Vi.from(t);return this._push(Uo,e.length(),e)};X.prototype.int64=X.prototype.uint64;X.prototype.sint64=function(t){var e=Vi.from(t).zzEncode();return this._push(Uo,e.length(),e)};X.prototype.bool=function(t){return this._push($o,1,t?1:0)};function Po(n,t,e){t[e]=n&255,t[e+1]=n>>>8&255,t[e+2]=n>>>16&255,t[e+3]=n>>>24}X.prototype.fixed32=function(t){return this._push(Po,4,t>>>0)};X.prototype.sfixed32=X.prototype.fixed32;X.prototype.fixed64=function(t){var e=Vi.from(t);return this._push(Po,4,e.lo)._push(Po,4,e.hi)};X.prototype.sfixed64=X.prototype.fixed64;X.prototype.float=function(t){return this._push($e.float.writeFloatLE,4,t)};X.prototype.double=function(t){return this._push($e.float.writeDoubleLE,8,t)};var fh=$e.Array.prototype.set?function(t,e,i){e.set(t,i)}:function(t,e,i){for(var r=0;r>>0;if(!e)return this._push($o,1,0);if($e.isString(t)){var i=X.alloc(e=oc.length(t));oc.decode(t,i,0),t=i}return this.uint32(e)._push(fh,e,t)};X.prototype.string=function(t){var e=ac.length(t);return e?this.uint32(e)._push(ac.write,e,t):this._push($o,1,0)};X.prototype.fork=function(){return this.states=new ph(this),this.head=this.tail=new ti(Mo,0,0),this.len=0,this};X.prototype.reset=function(){return this.states?(this.head=this.states.head,this.tail=this.states.tail,this.len=this.states.len,this.states=this.states.next):(this.head=this.tail=new ti(Mo,0,0),this.len=0),this};X.prototype.ldelim=function(){var t=this.head,e=this.tail,i=this.len;return this.reset().uint32(i),i&&(this.tail.next=t.next,this.tail=e,this.len+=i),this};X.prototype.finish=function(){for(var t=this.head.next,e=this.constructor.alloc(this.len),i=0;t;)t.fn(t.val,e,i),i+=t.len,t=t.next;return e};X._configure=function(n){Lo=n,X.create=sc(),Lo._configure()}});var uc=Y((Yx,pc)=>{"use strict";pc.exports=tt;var cc=Ki();(tt.prototype=Object.create(cc.prototype)).constructor=tt;var Dt=et();function tt(){cc.call(this)}tt._configure=function(){tt.alloc=Dt._Buffer_allocUnsafe,tt.writeBytesBuffer=Dt.Buffer&&Dt.Buffer.prototype instanceof Uint8Array&&Dt.Buffer.prototype.set.name==="set"?function(t,e,i){e.set(t,i)}:function(t,e,i){if(t.copy)t.copy(e,i,0,t.length);else for(var r=0;r>>0;return this.uint32(e),e&&this._push(tt.writeBytesBuffer,e,t),this};function dh(n,t,e){n.length<40?Dt.utf8.write(n,t,e):t.utf8Write?t.utf8Write(n,e):t.write(n,e)}tt.prototype.string=function(t){var e=Dt.Buffer.byteLength(t);return this.uint32(e),e&&this._push(dh,e,t),this};tt._configure()});var Ji=Y((zx,gc)=>{"use strict";gc.exports=se;var ze=et(),Ho,mc=ze.LongBits,mh=ze.utf8;function Ge(n,t){return RangeError("index out of range: "+n.pos+" + "+(t||1)+" > "+n.len)}function se(n){this.buf=n,this.pos=0,this.len=n.length}var fc=typeof Uint8Array!="undefined"?function(t){if(t instanceof Uint8Array||Array.isArray(t))return new se(t);throw Error("illegal buffer")}:function(t){if(Array.isArray(t))return new se(t);throw Error("illegal buffer")},hc=function(){return ze.Buffer?function(e){return(se.create=function(r){return ze.Buffer.isBuffer(r)?new Ho(r):fc(r)})(e)}:fc};se.create=hc();se.prototype._slice=ze.Array.prototype.subarray||ze.Array.prototype.slice;se.prototype.uint32=function(){var t=4294967295;return function(){if(t=(this.buf[this.pos]&127)>>>0,this.buf[this.pos++]<128||(t=(t|(this.buf[this.pos]&127)<<7)>>>0,this.buf[this.pos++]<128)||(t=(t|(this.buf[this.pos]&127)<<14)>>>0,this.buf[this.pos++]<128)||(t=(t|(this.buf[this.pos]&127)<<21)>>>0,this.buf[this.pos++]<128)||(t=(t|(this.buf[this.pos]&15)<<28)>>>0,this.buf[this.pos++]<128))return t;if((this.pos+=5)>this.len)throw this.pos=this.len,Ge(this,10);return t}}();se.prototype.int32=function(){return this.uint32()|0};se.prototype.sint32=function(){var t=this.uint32();return t>>>1^-(t&1)|0};function jo(){var n=new mc(0,0),t=0;if(this.len-this.pos>4){for(;t<4;++t)if(n.lo=(n.lo|(this.buf[this.pos]&127)<>>0,this.buf[this.pos++]<128)return n;if(n.lo=(n.lo|(this.buf[this.pos]&127)<<28)>>>0,n.hi=(n.hi|(this.buf[this.pos]&127)>>4)>>>0,this.buf[this.pos++]<128)return n;t=0}else{for(;t<3;++t){if(this.pos>=this.len)throw Ge(this);if(n.lo=(n.lo|(this.buf[this.pos]&127)<>>0,this.buf[this.pos++]<128)return n}return n.lo=(n.lo|(this.buf[this.pos++]&127)<>>0,n}if(this.len-this.pos>4){for(;t<5;++t)if(n.hi=(n.hi|(this.buf[this.pos]&127)<>>0,this.buf[this.pos++]<128)return n}else for(;t<5;++t){if(this.pos>=this.len)throw Ge(this);if(n.hi=(n.hi|(this.buf[this.pos]&127)<>>0,this.buf[this.pos++]<128)return n}throw Error("invalid varint encoding")}se.prototype.bool=function(){return this.uint32()!==0};function Xi(n,t){return(n[t-4]|n[t-3]<<8|n[t-2]<<16|n[t-1]<<24)>>>0}se.prototype.fixed32=function(){if(this.pos+4>this.len)throw Ge(this,4);return Xi(this.buf,this.pos+=4)};se.prototype.sfixed32=function(){if(this.pos+4>this.len)throw Ge(this,4);return Xi(this.buf,this.pos+=4)|0};function dc(){if(this.pos+8>this.len)throw Ge(this,8);return new mc(Xi(this.buf,this.pos+=4),Xi(this.buf,this.pos+=4))}se.prototype.float=function(){if(this.pos+4>this.len)throw Ge(this,4);var t=ze.float.readFloatLE(this.buf,this.pos);return this.pos+=4,t};se.prototype.double=function(){if(this.pos+8>this.len)throw Ge(this,4);var t=ze.float.readDoubleLE(this.buf,this.pos);return this.pos+=8,t};se.prototype.bytes=function(){var t=this.uint32(),e=this.pos,i=this.pos+t;if(i>this.len)throw Ge(this,t);if(this.pos+=t,Array.isArray(this.buf))return this.buf.slice(e,i);if(e===i){var r=ze.Buffer;return r?r.alloc(0):new this.buf.constructor(0)}return this._slice.call(this.buf,e,i)};se.prototype.string=function(){var t=this.bytes();return mh.read(t,0,t.length)};se.prototype.skip=function(t){if(typeof t=="number"){if(this.pos+t>this.len)throw Ge(this,t);this.pos+=t}else do if(this.pos>=this.len)throw Ge(this);while(this.buf[this.pos++]&128);return this};se.prototype.skipType=function(n){switch(n){case 0:this.skip();break;case 1:this.skip(8);break;case 2:this.skip(this.uint32());break;case 3:for(;(n=this.uint32()&7)!==4;)this.skipType(n);break;case 5:this.skip(4);break;default:throw Error("invalid wire type "+n+" at offset "+this.pos)}return this};se._configure=function(n){Ho=n,se.create=hc(),Ho._configure();var t=ze.Long?"toLong":"toNumber";ze.merge(se.prototype,{int64:function(){return jo.call(this)[t](!1)},uint64:function(){return jo.call(this)[t](!0)},sint64:function(){return jo.call(this).zzDecode()[t](!1)},fixed64:function(){return dc.call(this)[t](!0)},sfixed64:function(){return dc.call(this)[t](!1)}})}});var wc=Y((Gx,xc)=>{"use strict";xc.exports=Qt;var bc=Ji();(Qt.prototype=Object.create(bc.prototype)).constructor=Qt;var yc=et();function Qt(n){bc.call(this,n)}Qt._configure=function(){yc.Buffer&&(Qt.prototype._slice=yc.Buffer.prototype.slice)};Qt.prototype.string=function(){var t=this.uint32();return this.buf.utf8Slice?this.buf.utf8Slice(this.pos,this.pos=Math.min(this.pos+t,this.len)):this.buf.toString("utf-8",this.pos,this.pos=Math.min(this.pos+t,this.len))};Qt._configure()});var Ec=Y((Vx,vc)=>{"use strict";vc.exports=ni;var qo=et();(ni.prototype=Object.create(qo.EventEmitter.prototype)).constructor=ni;function ni(n,t,e){if(typeof n!="function")throw TypeError("rpcImpl must be a function");qo.EventEmitter.call(this),this.rpcImpl=n,this.requestDelimited=Boolean(t),this.responseDelimited=Boolean(e)}ni.prototype.rpcCall=function n(t,e,i,r,o){if(!r)throw TypeError("request must be specified");var a=this;if(!o)return qo.asPromise(n,a,t,e,i,r);if(!a.rpcImpl){setTimeout(function(){o(Error("already ended"))},0);return}try{return a.rpcImpl(t,e[a.requestDelimited?"encodeDelimited":"encode"](r).finish(),function(l,c){if(l)return a.emit("error",l,t),o(l);if(c===null){a.end(!0);return}if(!(c instanceof i))try{c=i[a.responseDelimited?"decodeDelimited":"decode"](c)}catch(p){return a.emit("error",p,t),o(p)}return a.emit("data",c,t),o(null,c)})}catch(s){a.emit("error",s,t),setTimeout(function(){o(s)},0);return}};ni.prototype.end=function(t){return this.rpcImpl&&(t||this.rpcImpl(null,null,null),this.rpcImpl=null,this.emit("end").off()),this}});var Wo=Y(_c=>{"use strict";var hh=_c;hh.Service=Ec()});var Zo=Y((Xx,Tc)=>{"use strict";Tc.exports={}});var Nc=Y(kc=>{"use strict";var Oe=kc;Oe.build="minimal";Oe.Writer=Ki();Oe.BufferWriter=uc();Oe.Reader=Ji();Oe.BufferReader=wc();Oe.util=et();Oe.rpc=Wo();Oe.roots=Zo();Oe.configure=Ac;function Ac(){Oe.util._configure(),Oe.Writer._configure(Oe.BufferWriter),Oe.Reader._configure(Oe.BufferReader)}Ac()});var Rc=Y((Qx,Sc)=>{"use strict";Sc.exports=Yo;function Yo(n,t){typeof n=="string"&&(t=n,n=void 0);var e=[];function i(o){if(typeof o!="string"){var a=r();if(Yo.verbose&&console.log("codegen: "+a),a="return "+a,o){for(var s=Object.keys(o),l=new Array(s.length+1),c=new Array(s.length),p=0;p{"use strict";Oc.exports=ii;var gh=Do(),yh=Co(),zo=yh("fs");function ii(n,t,e){return typeof t=="function"?(e=t,t={}):t||(t={}),e?!t.xhr&&zo&&zo.readFile?zo.readFile(n,function(r,o){return r&&typeof XMLHttpRequest!="undefined"?ii.xhr(n,t,e):r?e(r):e(null,t.binary?o:o.toString("utf8"))}):ii.xhr(n,t,e):gh(ii,this,n,t)}ii.xhr=function(t,e,i){var r=new XMLHttpRequest;r.onreadystatechange=function(){if(r.readyState===4){if(r.status!==0&&r.status!==200)return i(Error("status "+r.status));if(e.binary){var a=r.response;if(!a){a=[];for(var s=0;s{"use strict";var Vo=Ic,Cc=Vo.isAbsolute=function(t){return/^(?:\/|\w+:)/.test(t)},Go=Vo.normalize=function(t){t=t.replace(/\\/g,"/").replace(/\/{2,}/g,"/");var e=t.split("/"),i=Cc(t),r="";i&&(r=e.shift()+"/");for(var o=0;o0&&e[o-1]!==".."?e.splice(--o,2):i?e.splice(o,1):++o:e[o]==="."?e.splice(o,1):++o;return r+e.join("/")};Vo.resolve=function(t,e,i){return i||(e=Go(e)),Cc(e)?e:(i||(t=Go(t)),(t=t.replace(/(?:\/|^)[^/]+$/,"")).length?Go(t+"/"+e):e)}});var en=Y(Lc=>{"use strict";var ri=Lc,bh=ye(),xh=["double","float","int32","uint32","sint32","fixed32","sfixed32","int64","uint64","sint64","fixed64","sfixed64","bool","string","bytes"];function oi(n,t){var e=0,i={};for(t|=0;e{"use strict";$c.exports=Be;var Qi=tn();((Be.prototype=Object.create(Qi.prototype)).constructor=Be).className="Field";var Pc=Ve(),Mc=en(),pe=ye(),Ko,wh=/^required|optional|repeated$/;Be.fromJSON=function(t,e){return new Be(t,e.id,e.type,e.rule,e.extend,e.options,e.comment)};function Be(n,t,e,i,r,o,a){if(pe.isObject(i)?(a=r,o=i,i=r=void 0):pe.isObject(r)&&(a=o,o=r,r=void 0),Qi.call(this,n,o),!pe.isInteger(t)||t<0)throw TypeError("id must be a non-negative integer");if(!pe.isString(e))throw TypeError("type must be a string");if(i!==void 0&&!wh.test(i=i.toString().toLowerCase()))throw TypeError("rule must be a string rule");if(r!==void 0&&!pe.isString(r))throw TypeError("extend must be a string");i==="proto3_optional"&&(i="optional"),this.rule=i&&i!=="optional"?i:void 0,this.type=e,this.id=t,this.extend=r||void 0,this.required=i==="required",this.optional=!this.required,this.repeated=i==="repeated",this.map=!1,this.message=null,this.partOf=null,this.typeDefault=null,this.defaultValue=null,this.long=pe.Long?Mc.long[e]!==void 0:!1,this.bytes=e==="bytes",this.resolvedType=null,this.extensionField=null,this.declaringField=null,this._packed=null,this.comment=a}Object.defineProperty(Be.prototype,"packed",{get:function(){return this._packed===null&&(this._packed=this.getOption("packed")!==!1),this._packed}});Be.prototype.setOption=function(t,e,i){return t==="packed"&&(this._packed=null),Qi.prototype.setOption.call(this,t,e,i)};Be.prototype.toJSON=function(t){var e=t?Boolean(t.keepComments):!1;return pe.toObject(["rule",this.rule!=="optional"&&this.rule||void 0,"type",this.type,"id",this.id,"extend",this.extend,"options",this.options,"comment",e?this.comment:void 0])};Be.prototype.resolve=function(){if(this.resolved)return this;if((this.typeDefault=Mc.defaults[this.type])===void 0?(this.resolvedType=(this.declaringField?this.declaringField.parent:this.parent).lookupTypeOrEnum(this.type),this.resolvedType instanceof Ko?this.typeDefault=null:this.typeDefault=this.resolvedType.values[Object.keys(this.resolvedType.values)[0]]):this.options&&this.options.proto3_optional&&(this.typeDefault=null),this.options&&this.options.default!=null&&(this.typeDefault=this.options.default,this.resolvedType instanceof Pc&&typeof this.typeDefault=="string"&&(this.typeDefault=this.resolvedType.values[this.typeDefault])),this.options&&((this.options.packed===!0||this.options.packed!==void 0&&this.resolvedType&&!(this.resolvedType instanceof Pc))&&delete this.options.packed,Object.keys(this.options).length||(this.options=void 0)),this.long)this.typeDefault=pe.Long.fromNumber(this.typeDefault,this.type.charAt(0)==="u"),Object.freeze&&Object.freeze(this.typeDefault);else if(this.bytes&&typeof this.typeDefault=="string"){var t;pe.base64.test(this.typeDefault)?pe.base64.decode(this.typeDefault,t=pe.newBuffer(pe.base64.length(this.typeDefault)),0):pe.utf8.write(this.typeDefault,t=pe.newBuffer(pe.utf8.length(this.typeDefault)),0),this.typeDefault=t}return this.map?this.defaultValue=pe.emptyObject:this.repeated?this.defaultValue=pe.emptyArray:this.defaultValue=this.typeDefault,this.parent instanceof Ko&&(this.parent.ctor.prototype[this.name]=this.defaultValue),Qi.prototype.resolve.call(this)};Be.d=function(t,e,i,r){return typeof e=="function"?e=pe.decorateType(e).name:e&&typeof e=="object"&&(e=pe.decorateEnum(e).name),function(a,s){pe.decorateType(a.constructor).add(new Be(s,t,e,i,{default:r}))}};Be._configure=function(t){Ko=t}});var vn=Y((rw,jc)=>{"use strict";jc.exports=Ue;var tr=tn();((Ue.prototype=Object.create(tr.prototype)).constructor=Ue).className="OneOf";var Bc=Ct(),er=ye();function Ue(n,t,e,i){if(Array.isArray(t)||(e=t,t=void 0),tr.call(this,n,e),!(t===void 0||Array.isArray(t)))throw TypeError("fieldNames must be an Array");this.oneof=t||[],this.fieldsArray=[],this.comment=i}Ue.fromJSON=function(t,e){return new Ue(t,e.oneof,e.options,e.comment)};Ue.prototype.toJSON=function(t){var e=t?Boolean(t.keepComments):!1;return er.toObject(["options",this.options,"oneof",this.oneof,"comment",e?this.comment:void 0])};function Uc(n){if(n.parent)for(var t=0;t-1&&this.oneof.splice(e,1),t.partOf=null,this};Ue.prototype.onAdd=function(t){tr.prototype.onAdd.call(this,t);for(var e=this,i=0;i{"use strict";Zc.exports=J;var Xo=tn();((J.prototype=Object.create(Xo.prototype)).constructor=J).className="Namespace";var Hc=Ct(),nr=ye(),vh=vn(),En,ai,_n;J.fromJSON=function(t,e){return new J(t,e.options).addJSON(e.nested)};function qc(n,t){if(n&&n.length){for(var e={},i=0;ie)return!0}return!1};J.isReservedName=function(t,e){if(t){for(var i=0;i0;){var r=t.shift();if(i.nested&&i.nested[r]){if(i=i.nested[r],!(i instanceof J))throw Error("path conflicts with non-namespace objects")}else i.add(i=new J(r))}return e&&i.addJSON(e),i};J.prototype.resolveAll=function(){for(var t=this.nestedArray,e=0;e-1)return r}else if(r instanceof J&&(r=r.lookup(t.slice(1),e,!0)))return r}else for(var o=0;o{"use strict";Yc.exports=dt;var Jo=Ct();((dt.prototype=Object.create(Jo.prototype)).constructor=dt).className="MapField";var Eh=en(),si=ye();function dt(n,t,e,i,r,o){if(Jo.call(this,n,t,i,void 0,void 0,r,o),!si.isString(e))throw TypeError("keyType must be a string");this.keyType=e,this.resolvedKeyType=null,this.map=!0}dt.fromJSON=function(t,e){return new dt(t,e.id,e.keyType,e.type,e.options,e.comment)};dt.prototype.toJSON=function(t){var e=t?Boolean(t.keepComments):!1;return si.toObject(["keyType",this.keyType,"type",this.type,"id",this.id,"extend",this.extend,"options",this.options,"comment",e?this.comment:void 0])};dt.prototype.resolve=function(){if(this.resolved)return this;if(Eh.mapKey[this.keyType]===void 0)throw Error("invalid key type: "+this.keyType);return Jo.prototype.resolve.call(this)};dt.d=function(t,e,i){return typeof i=="function"?i=si.decorateType(i).name:i&&typeof i=="object"&&(i=si.decorateEnum(i).name),function(o,a){si.decorateType(o.constructor).add(new dt(a,t,e,i))}}});var rr=Y((sw,zc)=>{"use strict";zc.exports=nn;var Qo=tn();((nn.prototype=Object.create(Qo.prototype)).constructor=nn).className="Method";var An=ye();function nn(n,t,e,i,r,o,a,s,l){if(An.isObject(r)?(a=r,r=o=void 0):An.isObject(o)&&(a=o,o=void 0),!(t===void 0||An.isString(t)))throw TypeError("type must be a string");if(!An.isString(e))throw TypeError("requestType must be a string");if(!An.isString(i))throw TypeError("responseType must be a string");Qo.call(this,n,a),this.type=t||"rpc",this.requestType=e,this.requestStream=r?!0:void 0,this.responseType=i,this.responseStream=o?!0:void 0,this.resolvedRequestType=null,this.resolvedResponseType=null,this.comment=s,this.parsedOptions=l}nn.fromJSON=function(t,e){return new nn(t,e.type,e.requestType,e.responseType,e.requestStream,e.responseStream,e.options,e.comment,e.parsedOptions)};nn.prototype.toJSON=function(t){var e=t?Boolean(t.keepComments):!1;return An.toObject(["type",this.type!=="rpc"&&this.type||void 0,"requestType",this.requestType,"requestStream",this.requestStream,"responseType",this.responseType,"responseStream",this.responseStream,"options",this.options,"comment",e?this.comment:void 0,"parsedOptions",this.parsedOptions])};nn.prototype.resolve=function(){return this.resolved?this:(this.resolvedRequestType=this.parent.lookupType(this.requestType),this.resolvedResponseType=this.parent.lookupType(this.responseType),Qo.prototype.resolve.call(this))}});var or=Y((lw,Vc)=>{"use strict";Vc.exports=je;var It=Tn();((je.prototype=Object.create(It.prototype)).constructor=je).className="Service";var ea=rr(),li=ye(),_h=Wo();function je(n,t){It.call(this,n,t),this.methods={},this._methodsArray=null}je.fromJSON=function(t,e){var i=new je(t,e.options);if(e.methods)for(var r=Object.keys(e.methods),o=0;o{"use strict";Kc.exports=nt;var Th=et();function nt(n){if(n)for(var t=Object.keys(n),e=0;e{"use strict";Jc.exports=Nh;var Ah=Ve(),mt=en(),Xc=ye();function kh(n){return"missing required '"+n.name+"'"}function Nh(n){var t=Xc.codegen(["r","l"],n.name+"$decode")("if(!(r instanceof Reader))")("r=Reader.create(r)")("var c=l===undefined?r.len:r.pos+l,m=new this.ctor"+(n.fieldsArray.filter(function(s){return s.map}).length?",k,value":""))("while(r.pos>>3){");for(var e=0;e>>3){")("case 1: k=r.%s(); break",i.keyType)("case 2:"),mt.basic[r]===void 0?t("value=types[%i].decode(r,r.uint32())",e):t("value=r.%s()",r),t("break")("default:")("r.skipType(tag2&7)")("break")("}")("}"),mt.long[i.keyType]!==void 0?t('%s[typeof k==="object"?util.longToHash(k):k]=value',o):t("%s[k]=value",o)):i.repeated?(t("if(!(%s&&%s.length))",o,o)("%s=[]",o),mt.packed[r]!==void 0&&t("if((t&7)===2){")("var c2=r.uint32()+r.pos")("while(r.pos{"use strict";Qc.exports=Oh;var Sh=Ve(),na=ye();function He(n,t){return n.name+": "+t+(n.repeated&&t!=="array"?"[]":n.map&&t!=="object"?"{k:"+n.keyType+"}":"")+" expected"}function ia(n,t,e,i){if(t.resolvedType)if(t.resolvedType instanceof Sh){n("switch(%s){",i)("default:")("return%j",He(t,"enum value"));for(var r=Object.keys(t.resolvedType.values),o=0;o{"use strict";var ep=tp,ci=Ve(),it=ye();function oa(n,t,e,i){var r=!1;if(t.resolvedType)if(t.resolvedType instanceof ci){n("switch(d%s){",i);for(var o=t.resolvedType.values,a=Object.keys(o),s=0;s>>0",i,i);break;case"int32":case"sint32":case"sfixed32":n("m%s=d%s|0",i,i);break;case"uint64":l=!0;case"int64":case"sint64":case"fixed64":case"sfixed64":n("if(util.Long)")("(m%s=util.Long.fromValue(d%s)).unsigned=%j",i,i,l)('else if(typeof d%s==="string")',i)("m%s=parseInt(d%s,10)",i,i)('else if(typeof d%s==="number")',i)("m%s=d%s",i,i)('else if(typeof d%s==="object")',i)("m%s=new util.LongBits(d%s.low>>>0,d%s.high>>>0).toNumber(%s)",i,i,i,l?"true":"");break;case"bytes":n('if(typeof d%s==="string")',i)("util.base64.decode(d%s,m%s=util.newBuffer(util.base64.length(d%s)),0)",i,i,i)("else if(d%s.length >= 0)",i)("m%s=d%s",i,i);break;case"string":n("m%s=String(d%s)",i,i);break;case"bool":n("m%s=Boolean(d%s)",i,i);break}}return n}ep.fromObject=function(t){var e=t.fieldsArray,i=it.codegen(["d"],t.name+"$fromObject")("if(d instanceof this.ctor)")("return d");if(!e.length)return i("return new this.ctor");i("var m=new this.ctor");for(var r=0;r>>0,m%s.high>>>0).toNumber(%s):m%s",i,i,i,i,r?"true":"",i);break;case"bytes":n("d%s=o.bytes===String?util.base64.encode(m%s,0,m%s.length):o.bytes===Array?Array.prototype.slice.call(m%s):m%s",i,i,i,i,i);break;default:n("d%s=m%s",i,i);break}}return n}ep.toObject=function(t){var e=t.fieldsArray.slice().sort(it.compareFieldsById);if(!e.length)return it.codegen()("return {}");for(var i=it.codegen(["m","o"],t.name+"$toObject")("if(!o)")("o={}")("var d={}"),r=[],o=[],a=[],s=0;s{"use strict";var Dh=np,Ch=ar();Dh[".google.protobuf.Any"]={fromObject:function(n){if(n&&n["@type"]){var t=n["@type"].substring(n["@type"].lastIndexOf("/")+1),e=this.lookup(t);if(e){var i=n["@type"].charAt(0)==="."?n["@type"].slice(1):n["@type"];return i.indexOf("/")===-1&&(i="/"+i),this.create({type_url:i,value:e.encode(e.fromObject(n)).finish()})}}return this.fromObject(n)},toObject:function(n,t){var e="type.googleapis.com/",i="",r="";if(t&&t.json&&n.type_url&&n.value){r=n.type_url.substring(n.type_url.lastIndexOf("/")+1),i=n.type_url.substring(0,n.type_url.lastIndexOf("/")+1);var o=this.lookup(r);o&&(n=o.decode(n.value))}if(!(n instanceof this.ctor)&&n instanceof Ch){var a=n.$type.toObject(n,t),s=n.$type.fullName[0]==="."?n.$type.fullName.slice(1):n.$type.fullName;return i===""&&(i=e),r=i+s,a["@type"]=r,a}return this.toObject(n,t)}}});var cr=Y((mw,rp)=>{"use strict";rp.exports=ne;var Ke=Tn();((ne.prototype=Object.create(Ke.prototype)).constructor=ne).className="Type";var Ih=Ve(),ua=vn(),sr=Ct(),Fh=ir(),Lh=or(),ca=ar(),pa=Ji(),Ph=Ki(),ve=ye(),Mh=fa(),$h=ta(),Bh=ra(),ip=sa(),Uh=la();function ne(n,t){Ke.call(this,n,t),this.fields={},this.oneofs=void 0,this.extensions=void 0,this.reserved=void 0,this.group=void 0,this._fieldsById=null,this._fieldsArray=null,this._oneofsArray=null,this._ctor=null}Object.defineProperties(ne.prototype,{fieldsById:{get:function(){if(this._fieldsById)return this._fieldsById;this._fieldsById={};for(var n=Object.keys(this.fields),t=0;t{"use strict";cp.exports=Ce;var ur=Tn();((Ce.prototype=Object.create(ur.prototype)).constructor=Ce).className="Root";var ma=Ct(),ap=Ve(),jh=vn(),Ft=ye(),sp,da,pi;function Ce(n){ur.call(this,"",n),this.deferred=[],this.files=[]}Ce.fromJSON=function(t,e){return e||(e=new Ce),t.options&&e.setOptions(t.options),e.addJSON(t.nested)};Ce.prototype.resolvePath=Ft.path.resolve;Ce.prototype.fetch=Ft.fetch;function lp(){}Ce.prototype.load=function n(t,e,i){typeof e=="function"&&(i=e,e=void 0);var r=this;if(!i)return Ft.asPromise(n,r,t,e);var o=i===lp;function a(w,E){if(i){var d=i;if(i=null,o)throw w;d(w,E)}}function s(w){var E=w.lastIndexOf("google/protobuf/");if(E>-1){var d=w.substring(E);if(d in pi)return d}return null}function l(w,E){try{if(Ft.isString(E)&&E.charAt(0)==="{"&&(E=JSON.parse(E)),!Ft.isString(E))r.setOptions(E.options).addJSON(E.nested);else{da.filename=w;var d=da(E,r,e),f,g=0;if(d.imports)for(;g-1)){if(r.files.push(w),w in pi){o?l(w,pi[w]):(++p,setTimeout(function(){--p,l(w,pi[w])}));return}if(o){var d;try{d=Ft.fs.readFileSync(w).toString("utf8")}catch(f){E||a(f);return}l(w,d)}else++p,r.fetch(w,function(f,g){if(--p,!!i){if(f){E?p||a(null,r):a(f);return}l(w,g)}})}}var p=0;Ft.isString(t)&&(t=[t]);for(var m=0,y;m-1&&this.deferred.splice(e,1)}}else if(t instanceof ap)pr.test(t.name)&&delete t.parent[t.name];else if(t instanceof ur){for(var i=0;i{"use strict";var le=up.exports=et(),pp=Zo(),ha,ga;le.codegen=Rc();le.fetch=Dc();le.path=Fc();le.fs=le.inquire("fs");le.toArray=function(t){if(t){for(var e=Object.keys(t),i=new Array(e.length),r=0;r0)o[l]=r(o[l]||{},a,s);else{var c=o[l];c&&(s=[].concat(c).concat(s)),o[l]=s}return o}if(typeof t!="object")throw TypeError("dst must be an object");if(!e)throw TypeError("path must be specified");return e=e.split("."),r(t,e,i)};Object.defineProperty(le,"decorateRoot",{get:function(){return pp.decorated||(pp.decorated=new(fr()))}})});var tn=Y((yw,fp)=>{"use strict";fp.exports=Ie;Ie.className="ReflectionObject";var dr=ye(),mr;function Ie(n,t){if(!dr.isString(n))throw TypeError("name must be a string");if(t&&!dr.isObject(t))throw TypeError("options must be an object");this.options=t,this.parsedOptions=null,this.name=n,this.parent=null,this.resolved=!1,this.comment=null,this.filename=null}Object.defineProperties(Ie.prototype,{root:{get:function(){for(var n=this;n.parent!==null;)n=n.parent;return n}},fullName:{get:function(){for(var n=[this.name],t=this.parent;t;)n.unshift(t.name),t=t.parent;return n.join(".")}}});Ie.prototype.toJSON=function(){throw Error()};Ie.prototype.onAdd=function(t){this.parent&&this.parent!==t&&this.parent.remove(this),this.parent=t,this.resolved=!1;var e=t.root;e instanceof mr&&e._handleAdd(this)};Ie.prototype.onRemove=function(t){var e=t.root;e instanceof mr&&e._handleRemove(this),this.parent=null,this.resolved=!1};Ie.prototype.resolve=function(){return this.resolved?this:(this.root instanceof mr&&(this.resolved=!0),this)};Ie.prototype.getOption=function(t){if(this.options)return this.options[t]};Ie.prototype.setOption=function(t,e,i){return(!i||!this.options||this.options[t]===void 0)&&((this.options||(this.options={}))[t]=e),this};Ie.prototype.setParsedOption=function(t,e,i){this.parsedOptions||(this.parsedOptions=[]);var r=this.parsedOptions;if(i){var o=r.find(function(l){return Object.prototype.hasOwnProperty.call(l,t)});if(o){var a=o[t];dr.setProperty(a,i,e)}else o={},o[t]=dr.setProperty({},i,e),r.push(o)}else{var s={};s[t]=e,r.push(s)}return this};Ie.prototype.setOptions=function(t,e){if(t)for(var i=Object.keys(t),r=0;r{"use strict";hp.exports=rt;var dp=tn();((rt.prototype=Object.create(dp.prototype)).constructor=rt).className="Enum";var mp=Tn(),hr=ye();function rt(n,t,e,i,r,o){if(dp.call(this,n,e),t&&typeof t!="object")throw TypeError("values must be an object");if(this.valuesById={},this.values=Object.create(this.valuesById),this.comment=i,this.comments=r||{},this.valuesOptions=o,this.reserved=void 0,t)for(var a=Object.keys(t),s=0;s{"use strict";yp.exports=zh;var Yh=Ve(),ya=en(),ba=ye();function gp(n,t,e,i){return t.resolvedType.group?n("types[%i].encode(%s,w.uint32(%i)).uint32(%i)",e,i,(t.id<<3|3)>>>0,(t.id<<3|4)>>>0):n("types[%i].encode(%s,w.uint32(%i).fork()).ldelim()",e,i,(t.id<<3|2)>>>0)}function zh(n){for(var t=ba.codegen(["m","w"],n.name+"$encode")("if(!w)")("w=Writer.create()"),e,i,r=n.fieldsArray.slice().sort(ba.compareFieldsById),e=0;e>>0,8|ya.mapKey[o.keyType],o.keyType),l===void 0?t("types[%i].encode(%s[ks[i]],w.uint32(18).fork()).ldelim().ldelim()",a,i):t(".uint32(%i).%s(%s[ks[i]]).ldelim()",16|l,s,i),t("}")("}")):o.repeated?(t("if(%s!=null&&%s.length){",i,i),o.packed&&ya.packed[s]!==void 0?t("w.uint32(%i).fork()",(o.id<<3|2)>>>0)("for(var i=0;i<%s.length;++i)",i)("w.%s(%s[i])",s,i)("w.ldelim()"):(t("for(var i=0;i<%s.length;++i)",i),l===void 0?gp(t,o,a,i+"[i]"):t("w.uint32(%i).%s(%s[i])",(o.id<<3|l)>>>0,s,i)),t("}")):(o.optional&&t("if(%s!=null&&Object.hasOwnProperty.call(m,%j))",i,o.name),l===void 0?gp(t,o,a,i):t("w.uint32(%i).%s(%s)",(o.id<<3|l)>>>0,s,i))}return t("return w")}});var xp=Y((ww,bp)=>{"use strict";var V=bp.exports=Nc();V.build="light";function Gh(n,t,e){return typeof t=="function"?(e=t,t=new V.Root):t||(t=new V.Root),t.load(n,e)}V.load=Gh;function Vh(n,t){return t||(t=new V.Root),t.loadSync(n)}V.loadSync=Vh;V.encoder=fa();V.decoder=ta();V.verifier=ra();V.converter=sa();V.ReflectionObject=tn();V.Namespace=Tn();V.Root=fr();V.Enum=Ve();V.Type=cr();V.Field=Ct();V.OneOf=vn();V.MapField=ir();V.Service=or();V.Method=rr();V.Message=ar();V.wrappers=la();V.types=en();V.util=ye();V.ReflectionObject._configure(V.Root);V.Namespace._configure(V.Type,V.Service,V.Enum);V.Root._configure(V.Type);V.Field._configure(V.Type)});var wa=Y((vw,Ep)=>{"use strict";Ep.exports=vp;var xa=/[\s{}=;:[\],'"()<>]/g,Kh=/(?:"([^"\\]*(?:\\.[^"\\]*)*)")/g,Xh=/(?:'([^'\\]*(?:\\.[^'\\]*)*)')/g,Jh=/^ *[*/]+ */,Qh=/^\s*\*?\/*/,eg=/\n/g,tg=/\s/,ng=/\\(.?)/g,ig={0:"\0",r:"\r",n:` +`,t:" "};function wp(n){return n.replace(ng,function(t,e){switch(e){case"\\":case"":return e;default:return ig[e]||""}})}vp.unescape=wp;function vp(n,t){n=n.toString();var e=0,i=n.length,r=1,o=0,a={},s=[],l=null;function c(A){return Error("illegal "+A+" (line "+r+")")}function p(){var A=l==="'"?Xh:Kh;A.lastIndex=e-1;var D=A.exec(n);if(!D)throw c("string");return e=A.lastIndex,f(l),l=null,wp(D[1])}function m(A){return n.charAt(A)}function y(A,D,T){var k={type:n.charAt(A++),lineEmpty:!1,leading:T},b;t?b=2:b=3;var C=A-b,O;do if(--C<0||(O=n.charAt(C))===` +`){k.lineEmpty=!0;break}while(O===" "||O===" ");for(var S=n.substring(A,D).split(eg),M=0;M0)return s.shift();if(l)return p();var A,D,T,k,b,C=e===0;do{if(e===i)return null;for(A=!1;tg.test(T=m(e));)if(T===` +`&&(C=!0,++r),++e===i)return null;if(m(e)==="/"){if(++e===i)throw c("comment");if(m(e)==="/")if(t){if(k=e,b=!1,w(e-1)){b=!0;do if(e=E(e),e===i||(e++,!C))break;while(w(e))}else e=Math.min(i,E(e)+1);b&&(y(k,e,C),C=!0),r++,A=!0}else{for(b=m(k=e+1)==="/";m(++e)!==` +`;)if(e===i)return null;++e,b&&(y(k,e-1,C),C=!0),++r,A=!0}else if((T=m(e))==="*"){k=e+1,b=t||m(k)==="*";do{if(T===` +`&&++r,++e===i)throw c("comment");D=T,T=m(e)}while(D!=="*"||T!=="/");++e,b&&(y(k,e-2,C),C=!0),A=!0}else return"/"}}while(A);var O=e;xa.lastIndex=0;var S=xa.test(m(O++));if(!S)for(;O{"use strict";Np.exports=ht;ht.filename=null;ht.defaults={keepCase:!1};var rg=wa(),_p=fr(),Tp=cr(),Ap=Ct(),og=ir(),kp=vn(),ag=Ve(),sg=or(),lg=rr(),va=en(),Ea=ye(),cg=/^[1-9][0-9]*$/,pg=/^-?[1-9][0-9]*$/,ug=/^0[x][0-9a-fA-F]+$/,fg=/^-?0[x][0-9a-fA-F]+$/,dg=/^0[0-7]+$/,mg=/^-?0[0-7]+$/,hg=/^(?![eE])[0-9]*(?:\.[0-9]*)?(?:[eE][+-]?[0-9]+)?$/,ot=/^[a-zA-Z_][a-zA-Z_0-9]*$/,at=/^(?:\.?[a-zA-Z_][a-zA-Z_0-9]*)(?:\.[a-zA-Z_][a-zA-Z_0-9]*)*$/,gg=/^(?:\.[a-zA-Z_][a-zA-Z_0-9]*)+$/;function ht(n,t,e){t instanceof _p||(e=t,t=new _p),e||(e=ht.defaults);var i=e.preferTrailingComment||!1,r=rg(n,e.alternateCommentMode||!1),o=r.next,a=r.push,s=r.peek,l=r.skip,c=r.cmnt,p=!0,m,y,w,E,d=!1,f=t,g=e.keepCase?function(x){return x}:Ea.camelCase;function v(x,N,I){var P=ht.filename;return I||(ht.filename=null),Error("illegal "+(N||"token")+" '"+x+"' ("+(P?P+", ":"")+"line "+r.line+")")}function _(){var x=[],N;do{if((N=o())!=='"'&&N!=="'")throw v(N);x.push(o()),l(N),N=s()}while(N==='"'||N==="'");return x.join("")}function A(x){var N=o();switch(N){case"'":case'"':return a(N),_();case"true":case"TRUE":return!0;case"false":case"FALSE":return!1}try{return T(N,!0)}catch(I){if(x&&at.test(N))return N;throw v(N,"value")}}function D(x,N){var I,P;do N&&((I=s())==='"'||I==="'")?x.push(_()):x.push([P=k(o()),l("to",!0)?k(o()):P]);while(l(",",!0));l(";")}function T(x,N){var I=1;switch(x.charAt(0)==="-"&&(I=-1,x=x.substring(1)),x){case"inf":case"INF":case"Inf":return I*(1/0);case"nan":case"NAN":case"Nan":case"NaN":return NaN;case"0":return 0}if(cg.test(x))return I*parseInt(x,10);if(ug.test(x))return I*parseInt(x,16);if(dg.test(x))return I*parseInt(x,8);if(hg.test(x))return I*parseFloat(x);throw v(x,"number",N)}function k(x,N){switch(x){case"max":case"MAX":case"Max":return 536870911;case"0":return 0}if(!N&&x.charAt(0)==="-")throw v(x,"id");if(pg.test(x))return parseInt(x,10);if(fg.test(x))return parseInt(x,16);if(mg.test(x))return parseInt(x,8);throw v(x,"id")}function b(){if(m!==void 0)throw v("package");if(m=o(),!at.test(m))throw v(m,"name");f=f.define(m),l(";")}function C(){var x=s(),N;switch(x){case"weak":N=w||(w=[]),o();break;case"public":o();default:N=y||(y=[]);break}x=_(),l(";"),N.push(x)}function O(){if(l("="),E=_(),d=E==="proto3",!d&&E!=="proto2")throw v(E,"syntax");l(";")}function S(x,N){switch(N){case"option":return U(x,N),l(";"),!0;case"message":return L(x,N),!0;case"enum":return z(x,N),!0;case"service":return pn(x,N),!0;case"extend":return u(x,N),!0}return!1}function M(x,N,I){var P=r.line;if(x&&(typeof x.comment!="string"&&(x.comment=c()),x.filename=ht.filename),l("{",!0)){for(var $;($=o())!=="}";)N($);l(";",!0)}else I&&I(),l(";"),x&&(typeof x.comment!="string"||i)&&(x.comment=c(P)||x.comment)}function L(x,N){if(!ot.test(N=o()))throw v(N,"type name");var I=new Tp(N);M(I,function($){if(!S(I,$))switch($){case"map":F(I,$);break;case"required":case"repeated":j(I,$);break;case"optional":d?j(I,"proto3_optional"):j(I,"optional");break;case"oneof":ee(I,$);break;case"extensions":D(I.extensions||(I.extensions=[]));break;case"reserved":D(I.reserved||(I.reserved=[]),!0);break;default:if(!d||!at.test($))throw v($);a($),j(I,"optional");break}}),x.add(I)}function j(x,N,I){var P=o();if(P==="group"){Z(x,N);return}for(;P.endsWith(".")||s().startsWith(".");)P+=o();if(!at.test(P))throw v(P,"type");var $=o();if(!ot.test($))throw v($,"name");$=g($),l("=");var W=new Ap($,k(o()),P,N,I);if(M(W,function(oe){if(oe==="option")U(W,oe),l(";");else throw v(oe)},function(){lt(W)}),N==="proto3_optional"){var ie=new kp("_"+$);W.setOption("proto3_optional",!0),ie.add(W),x.add(ie)}else x.add(W);!d&&W.repeated&&(va.packed[P]!==void 0||va.basic[P]===void 0)&&W.setOption("packed",!1,!0)}function Z(x,N){var I=o();if(!ot.test(I))throw v(I,"name");var P=Ea.lcFirst(I);I===P&&(I=Ea.ucFirst(I)),l("=");var $=k(o()),W=new Tp(I);W.group=!0;var ie=new Ap(P,$,I,N);ie.filename=ht.filename,M(W,function(oe){switch(oe){case"option":U(W,oe),l(";");break;case"required":case"repeated":j(W,oe);break;case"optional":d?j(W,"proto3_optional"):j(W,"optional");break;case"message":L(W,oe);break;case"enum":z(W,oe);break;default:throw v(oe)}}),x.add(W).add(ie)}function F(x){l("<");var N=o();if(va.mapKey[N]===void 0)throw v(N,"type");l(",");var I=o();if(!at.test(I))throw v(I,"type");l(">");var P=o();if(!ot.test(P))throw v(P,"name");l("=");var $=new og(g(P),k(o()),N,I);M($,function(ie){if(ie==="option")U($,ie),l(";");else throw v(ie)},function(){lt($)}),x.add($)}function ee(x,N){if(!ot.test(N=o()))throw v(N,"name");var I=new kp(g(N));M(I,function($){$==="option"?(U(I,$),l(";")):(a($),j(I,"optional"))}),x.add(I)}function z(x,N){if(!ot.test(N=o()))throw v(N,"name");var I=new ag(N);M(I,function($){switch($){case"option":U(I,$),l(";");break;case"reserved":D(I.reserved||(I.reserved=[]),!0);break;default:We(I,$)}}),x.add(I)}function We(x,N){if(!ot.test(N))throw v(N,"name");l("=");var I=k(o(),!0),P={options:void 0};P.setOption=function($,W){this.options===void 0&&(this.options={}),this.options[$]=W},M(P,function(W){if(W==="option")U(P,W),l(";");else throw v(W)},function(){lt(P)}),x.add(N,I,P.comment,P.options)}function U(x,N){var I=l("(",!0);if(!at.test(N=o()))throw v(N,"name");var P=N,$=P,W;I&&(l(")"),P="("+P+")",$=P,N=s(),gg.test(N)&&(W=N.slice(1),P+=N,o())),l("=");var ie=Ne(x,P);Q(x,$,ie,W)}function Ne(x,N){if(l("{",!0)){for(var I={};!l("}",!0);){if(!ot.test(R=o()))throw v(R,"name");if(R===null)throw v(R,"end of input");var P,$=R;if(l(":",!0),s()==="{")P=Ne(x,N+"."+R);else if(s()==="["){P=[];var W;if(l("[",!0)){do W=A(!0),P.push(W);while(l(",",!0));l("]"),typeof W!="undefined"&&G(x,N+"."+R,W)}}else P=A(!0),G(x,N+"."+R,P);var ie=I[$];ie&&(P=[].concat(ie).concat(P)),I[$]=P,l(",",!0),l(";",!0)}return I}var te=A(!0);return G(x,N,te),te}function G(x,N,I){x.setOption&&x.setOption(N,I)}function Q(x,N,I,P){x.setParsedOption&&x.setParsedOption(N,I,P)}function lt(x){if(l("[",!0)){do U(x,"option");while(l(",",!0));l("]")}return x}function pn(x,N){if(!ot.test(N=o()))throw v(N,"service name");var I=new sg(N);M(I,function($){if(!S(I,$))if($==="rpc")h(I,$);else throw v($)}),x.add(I)}function h(x,N){var I=c(),P=N;if(!ot.test(N=o()))throw v(N,"name");var $=N,W,ie,te,oe;if(l("("),l("stream",!0)&&(ie=!0),!at.test(N=o())||(W=N,l(")"),l("returns"),l("("),l("stream",!0)&&(oe=!0),!at.test(N=o())))throw v(N);te=N,l(")");var un=new lg($,P,W,te,ie,oe);un.comment=I,M(un,function(qt){if(qt==="option")U(un,qt),l(";");else throw v(qt)}),x.add(un)}function u(x,N){if(!at.test(N=o()))throw v(N,"reference");var I=N;M(null,function($){switch($){case"required":case"repeated":j(x,$,I);break;case"optional":d?j(x,"proto3_optional",I):j(x,"optional",I);break;default:if(!d||!at.test($))throw v($);a($),j(x,"optional",I);break}})}for(var R;(R=o())!==null;)switch(R){case"package":if(!p)throw v(R);b();break;case"import":if(!p)throw v(R);C();break;case"syntax":if(!p)throw v(R);O();break;case"option":U(f,R),l(";");break;default:if(S(f,R)){p=!1;continue}throw v(R)}return ht.filename=null,{package:m,imports:y,weakImports:w,syntax:E,root:t}}});var Dp=Y((_w,Op)=>{"use strict";Op.exports=Xe;var yg=/\/|\./;function Xe(n,t){yg.test(n)||(n="google/protobuf/"+n+".proto",t={nested:{google:{nested:{protobuf:{nested:t}}}}}),Xe[n]=t}Xe("any",{Any:{fields:{type_url:{type:"string",id:1},value:{type:"bytes",id:2}}}});var Rp;Xe("duration",{Duration:Rp={fields:{seconds:{type:"int64",id:1},nanos:{type:"int32",id:2}}}});Xe("timestamp",{Timestamp:Rp});Xe("empty",{Empty:{fields:{}}});Xe("struct",{Struct:{fields:{fields:{keyType:"string",type:"Value",id:1}}},Value:{oneofs:{kind:{oneof:["nullValue","numberValue","stringValue","boolValue","structValue","listValue"]}},fields:{nullValue:{type:"NullValue",id:1},numberValue:{type:"double",id:2},stringValue:{type:"string",id:3},boolValue:{type:"bool",id:4},structValue:{type:"Struct",id:5},listValue:{type:"ListValue",id:6}}},NullValue:{values:{NULL_VALUE:0}},ListValue:{fields:{values:{rule:"repeated",type:"Value",id:1}}}});Xe("wrappers",{DoubleValue:{fields:{value:{type:"double",id:1}}},FloatValue:{fields:{value:{type:"float",id:1}}},Int64Value:{fields:{value:{type:"int64",id:1}}},UInt64Value:{fields:{value:{type:"uint64",id:1}}},Int32Value:{fields:{value:{type:"int32",id:1}}},UInt32Value:{fields:{value:{type:"uint32",id:1}}},BoolValue:{fields:{value:{type:"bool",id:1}}},StringValue:{fields:{value:{type:"string",id:1}}},BytesValue:{fields:{value:{type:"bytes",id:1}}}});Xe("field_mask",{FieldMask:{fields:{paths:{rule:"repeated",type:"string",id:1}}}});Xe.get=function(t){return Xe[t]||null}});var Ip=Y((Tw,Cp)=>{"use strict";var Lt=Cp.exports=xp();Lt.build="full";Lt.tokenize=wa();Lt.parse=Sp();Lt.common=Dp();Lt.Root._configure(Lt.Type,Lt.parse,Lt.common)});var Lp=Y((Aw,Fp)=>{"use strict";Fp.exports=Ip()});var Df=Y(Rr=>{(function(n){n.parser=function(h,u){return new e(h,u)},n.SAXParser=e,n.SAXStream=c,n.createStream=l,n.MAX_BUFFER_LENGTH=64*1024;var t=["comment","sgmlDecl","textNode","tagName","doctype","procInstName","procInstBody","entity","attribName","attribValue","cdata","script"];n.EVENTS=["text","processinginstruction","sgmldeclaration","doctype","comment","opentagstart","attribute","opentag","closetag","opencdata","cdata","closecdata","error","end","ready","script","opennamespace","closenamespace"];function e(h,u){if(!(this instanceof e))return new e(h,u);var R=this;r(R),R.q=R.c="",R.bufferCheckPosition=n.MAX_BUFFER_LENGTH,R.opt=u||{},R.opt.lowercase=R.opt.lowercase||R.opt.lowercasetags,R.looseCase=R.opt.lowercase?"toLowerCase":"toUpperCase",R.tags=[],R.closed=R.closedRoot=R.sawRoot=!1,R.tag=R.error=null,R.strict=!!h,R.noscript=!!(h||R.opt.noscript),R.state=b.BEGIN,R.strictEntities=R.opt.strictEntities,R.ENTITIES=R.strictEntities?Object.create(n.XML_ENTITIES):Object.create(n.ENTITIES),R.attribList=[],R.opt.xmlns&&(R.ns=Object.create(E)),R.trackPosition=R.opt.position!==!1,R.trackPosition&&(R.position=R.line=R.column=0),O(R,"onready")}Object.create||(Object.create=function(h){function u(){}u.prototype=h;var R=new u;return R}),Object.keys||(Object.keys=function(h){var u=[];for(var R in h)h.hasOwnProperty(R)&&u.push(R);return u});function i(h){for(var u=Math.max(n.MAX_BUFFER_LENGTH,10),R=0,x=0,N=t.length;xu)switch(t[x]){case"textNode":M(h);break;case"cdata":S(h,"oncdata",h.cdata),h.cdata="";break;case"script":S(h,"onscript",h.script),h.script="";break;default:j(h,"Max buffer length exceeded: "+t[x])}R=Math.max(R,I)}var P=n.MAX_BUFFER_LENGTH-R;h.bufferCheckPosition=P+h.position}function r(h){for(var u=0,R=t.length;u"||_(h)}function T(h,u){return h.test(u)}function k(h,u){return!T(h,u)}var b=0;n.STATE={BEGIN:b++,BEGIN_WHITESPACE:b++,TEXT:b++,TEXT_ENTITY:b++,OPEN_WAKA:b++,SGML_DECL:b++,SGML_DECL_QUOTED:b++,DOCTYPE:b++,DOCTYPE_QUOTED:b++,DOCTYPE_DTD:b++,DOCTYPE_DTD_QUOTED:b++,COMMENT_STARTING:b++,COMMENT:b++,COMMENT_ENDING:b++,COMMENT_ENDED:b++,CDATA:b++,CDATA_ENDING:b++,CDATA_ENDING_2:b++,PROC_INST:b++,PROC_INST_BODY:b++,PROC_INST_ENDING:b++,OPEN_TAG:b++,OPEN_TAG_SLASH:b++,ATTRIB:b++,ATTRIB_NAME:b++,ATTRIB_NAME_SAW_WHITE:b++,ATTRIB_VALUE:b++,ATTRIB_VALUE_QUOTED:b++,ATTRIB_VALUE_CLOSED:b++,ATTRIB_VALUE_UNQUOTED:b++,ATTRIB_VALUE_ENTITY_Q:b++,ATTRIB_VALUE_ENTITY_U:b++,CLOSE_TAG:b++,CLOSE_TAG_SAW_WHITE:b++,SCRIPT:b++,SCRIPT_ENDING:b++},n.XML_ENTITIES={amp:"&",gt:">",lt:"<",quot:'"',apos:"'"},n.ENTITIES={amp:"&",gt:">",lt:"<",quot:'"',apos:"'",AElig:198,Aacute:193,Acirc:194,Agrave:192,Aring:197,Atilde:195,Auml:196,Ccedil:199,ETH:208,Eacute:201,Ecirc:202,Egrave:200,Euml:203,Iacute:205,Icirc:206,Igrave:204,Iuml:207,Ntilde:209,Oacute:211,Ocirc:212,Ograve:210,Oslash:216,Otilde:213,Ouml:214,THORN:222,Uacute:218,Ucirc:219,Ugrave:217,Uuml:220,Yacute:221,aacute:225,acirc:226,aelig:230,agrave:224,aring:229,atilde:227,auml:228,ccedil:231,eacute:233,ecirc:234,egrave:232,eth:240,euml:235,iacute:237,icirc:238,igrave:236,iuml:239,ntilde:241,oacute:243,ocirc:244,ograve:242,oslash:248,otilde:245,ouml:246,szlig:223,thorn:254,uacute:250,ucirc:251,ugrave:249,uuml:252,yacute:253,yuml:255,copy:169,reg:174,nbsp:160,iexcl:161,cent:162,pound:163,curren:164,yen:165,brvbar:166,sect:167,uml:168,ordf:170,laquo:171,not:172,shy:173,macr:175,deg:176,plusmn:177,sup1:185,sup2:178,sup3:179,acute:180,micro:181,para:182,middot:183,cedil:184,ordm:186,raquo:187,frac14:188,frac12:189,frac34:190,iquest:191,times:215,divide:247,OElig:338,oelig:339,Scaron:352,scaron:353,Yuml:376,fnof:402,circ:710,tilde:732,Alpha:913,Beta:914,Gamma:915,Delta:916,Epsilon:917,Zeta:918,Eta:919,Theta:920,Iota:921,Kappa:922,Lambda:923,Mu:924,Nu:925,Xi:926,Omicron:927,Pi:928,Rho:929,Sigma:931,Tau:932,Upsilon:933,Phi:934,Chi:935,Psi:936,Omega:937,alpha:945,beta:946,gamma:947,delta:948,epsilon:949,zeta:950,eta:951,theta:952,iota:953,kappa:954,lambda:955,mu:956,nu:957,xi:958,omicron:959,pi:960,rho:961,sigmaf:962,sigma:963,tau:964,upsilon:965,phi:966,chi:967,psi:968,omega:969,thetasym:977,upsih:978,piv:982,ensp:8194,emsp:8195,thinsp:8201,zwnj:8204,zwj:8205,lrm:8206,rlm:8207,ndash:8211,mdash:8212,lsquo:8216,rsquo:8217,sbquo:8218,ldquo:8220,rdquo:8221,bdquo:8222,dagger:8224,Dagger:8225,bull:8226,hellip:8230,permil:8240,prime:8242,Prime:8243,lsaquo:8249,rsaquo:8250,oline:8254,frasl:8260,euro:8364,image:8465,weierp:8472,real:8476,trade:8482,alefsym:8501,larr:8592,uarr:8593,rarr:8594,darr:8595,harr:8596,crarr:8629,lArr:8656,uArr:8657,rArr:8658,dArr:8659,hArr:8660,forall:8704,part:8706,exist:8707,empty:8709,nabla:8711,isin:8712,notin:8713,ni:8715,prod:8719,sum:8721,minus:8722,lowast:8727,radic:8730,prop:8733,infin:8734,ang:8736,and:8743,or:8744,cap:8745,cup:8746,int:8747,there4:8756,sim:8764,cong:8773,asymp:8776,ne:8800,equiv:8801,le:8804,ge:8805,sub:8834,sup:8835,nsub:8836,sube:8838,supe:8839,oplus:8853,otimes:8855,perp:8869,sdot:8901,lceil:8968,rceil:8969,lfloor:8970,rfloor:8971,lang:9001,rang:9002,loz:9674,spades:9824,clubs:9827,hearts:9829,diams:9830},Object.keys(n.ENTITIES).forEach(function(h){var u=n.ENTITIES[h],R=typeof u=="number"?String.fromCharCode(u):u;n.ENTITIES[h]=R});for(var C in n.STATE)n.STATE[n.STATE[C]]=C;b=n.STATE;function O(h,u,R){h[u]&&h[u](R)}function S(h,u,R){h.textNode&&M(h),O(h,u,R)}function M(h){h.textNode=L(h.opt,h.textNode),h.textNode&&O(h,"ontext",h.textNode),h.textNode=""}function L(h,u){return h.trim&&(u=u.trim()),h.normalize&&(u=u.replace(/\s+/g," ")),u}function j(h,u){return M(h),h.trackPosition&&(u+=` +Line: `+h.line+` +Column: `+h.column+` +Char: `+h.c),u=new Error(u),h.error=u,O(h,"onerror",u),h}function Z(h){return h.sawRoot&&!h.closedRoot&&F(h,"Unclosed root tag"),h.state!==b.BEGIN&&h.state!==b.BEGIN_WHITESPACE&&h.state!==b.TEXT&&j(h,"Unexpected end"),M(h),h.c="",h.closed=!0,O(h,"onend"),e.call(h,h.strict,h.opt),h}function F(h,u){if(typeof h!="object"||!(h instanceof e))throw new Error("bad call to strictFail");h.strict&&j(h,u)}function ee(h){h.strict||(h.tagName=h.tagName[h.looseCase]());var u=h.tags[h.tags.length-1]||h,R=h.tag={name:h.tagName,attributes:{}};h.opt.xmlns&&(R.ns=u.ns),h.attribList.length=0,S(h,"onopentagstart",R)}function z(h,u){var R=h.indexOf(":"),x=R<0?["",h]:h.split(":"),N=x[0],I=x[1];return u&&h==="xmlns"&&(N="xmlns",I=""),{prefix:N,local:I}}function We(h){if(h.strict||(h.attribName=h.attribName[h.looseCase]()),h.attribList.indexOf(h.attribName)!==-1||h.tag.attributes.hasOwnProperty(h.attribName)){h.attribName=h.attribValue="";return}if(h.opt.xmlns){var u=z(h.attribName,!0),R=u.prefix,x=u.local;if(R==="xmlns")if(x==="xml"&&h.attribValue!==y)F(h,"xml: prefix must be bound to "+y+` +Actual: `+h.attribValue);else if(x==="xmlns"&&h.attribValue!==w)F(h,"xmlns: prefix must be bound to "+w+` +Actual: `+h.attribValue);else{var N=h.tag,I=h.tags[h.tags.length-1]||h;N.ns===I.ns&&(N.ns=Object.create(I.ns)),N.ns[x]=h.attribValue}h.attribList.push([h.attribName,h.attribValue])}else h.tag.attributes[h.attribName]=h.attribValue,S(h,"onattribute",{name:h.attribName,value:h.attribValue});h.attribName=h.attribValue=""}function U(h,u){if(h.opt.xmlns){var R=h.tag,x=z(h.tagName);R.prefix=x.prefix,R.local=x.local,R.uri=R.ns[x.prefix]||"",R.prefix&&!R.uri&&(F(h,"Unbound namespace prefix: "+JSON.stringify(h.tagName)),R.uri=x.prefix);var N=h.tags[h.tags.length-1]||h;R.ns&&N.ns!==R.ns&&Object.keys(R.ns).forEach(function(ns){S(h,"onopennamespace",{prefix:ns,uri:R.ns[ns]})});for(var I=0,P=h.attribList.length;I",h.tagName="",h.state=b.SCRIPT;return}S(h,"onscript",h.script),h.script=""}var u=h.tags.length,R=h.tagName;h.strict||(R=R[h.looseCase]());for(var x=R;u--;){var N=h.tags[u];if(N.name!==x)F(h,"Unexpected close tag");else break}if(u<0){F(h,"Unmatched closing tag: "+h.tagName),h.textNode+="",h.state=b.TEXT;return}h.tagName=R;for(var I=h.tags.length;I-- >u;){var P=h.tag=h.tags.pop();h.tagName=h.tag.name,S(h,"onclosetag",h.tagName);var $={};for(var W in P.ns)$[W]=P.ns[W];var ie=h.tags[h.tags.length-1]||h;h.opt.xmlns&&P.ns!==ie.ns&&Object.keys(P.ns).forEach(function(te){var oe=P.ns[te];S(h,"onclosenamespace",{prefix:te,uri:oe})})}u===0&&(h.closedRoot=!0),h.tagName=h.attribValue=h.attribName="",h.attribList.length=0,h.state=b.TEXT}function G(h){var u=h.entity,R=u.toLowerCase(),x,N="";return h.ENTITIES[u]?h.ENTITIES[u]:h.ENTITIES[R]?h.ENTITIES[R]:(u=R,u.charAt(0)==="#"&&(u.charAt(1)==="x"?(u=u.slice(2),x=parseInt(u,16),N=x.toString(16)):(u=u.slice(1),x=parseInt(u,10),N=x.toString(10))),u=u.replace(/^0+/,""),isNaN(x)||N.toLowerCase()!==u?(F(h,"Invalid character entity"),"&"+h.entity+";"):String.fromCodePoint(x))}function Q(h,u){u==="<"?(h.state=b.OPEN_WAKA,h.startTagPosition=h.position):_(u)||(F(h,"Non-whitespace before first tag."),h.textNode=u,h.state=b.TEXT)}function lt(h,u){var R="";return u"?(S(u,"onsgmldeclaration",u.sgmlDecl),u.sgmlDecl="",u.state=b.TEXT):(A(x)&&(u.state=b.SGML_DECL_QUOTED),u.sgmlDecl+=x);continue;case b.SGML_DECL_QUOTED:x===u.q&&(u.state=b.SGML_DECL,u.q=""),u.sgmlDecl+=x;continue;case b.DOCTYPE:x===">"?(u.state=b.TEXT,S(u,"ondoctype",u.doctype),u.doctype=!0):(u.doctype+=x,x==="["?u.state=b.DOCTYPE_DTD:A(x)&&(u.state=b.DOCTYPE_QUOTED,u.q=x));continue;case b.DOCTYPE_QUOTED:u.doctype+=x,x===u.q&&(u.q="",u.state=b.DOCTYPE);continue;case b.DOCTYPE_DTD:u.doctype+=x,x==="]"?u.state=b.DOCTYPE:A(x)&&(u.state=b.DOCTYPE_DTD_QUOTED,u.q=x);continue;case b.DOCTYPE_DTD_QUOTED:u.doctype+=x,x===u.q&&(u.state=b.DOCTYPE_DTD,u.q="");continue;case b.COMMENT:x==="-"?u.state=b.COMMENT_ENDING:u.comment+=x;continue;case b.COMMENT_ENDING:x==="-"?(u.state=b.COMMENT_ENDED,u.comment=L(u.opt,u.comment),u.comment&&S(u,"oncomment",u.comment),u.comment=""):(u.comment+="-"+x,u.state=b.COMMENT);continue;case b.COMMENT_ENDED:x!==">"?(F(u,"Malformed comment"),u.comment+="--"+x,u.state=b.COMMENT):u.state=b.TEXT;continue;case b.CDATA:x==="]"?u.state=b.CDATA_ENDING:u.cdata+=x;continue;case b.CDATA_ENDING:x==="]"?u.state=b.CDATA_ENDING_2:(u.cdata+="]"+x,u.state=b.CDATA);continue;case b.CDATA_ENDING_2:x===">"?(u.cdata&&S(u,"oncdata",u.cdata),S(u,"onclosecdata"),u.cdata="",u.state=b.TEXT):x==="]"?u.cdata+="]":(u.cdata+="]]"+x,u.state=b.CDATA);continue;case b.PROC_INST:x==="?"?u.state=b.PROC_INST_ENDING:_(x)?u.state=b.PROC_INST_BODY:u.procInstName+=x;continue;case b.PROC_INST_BODY:if(!u.procInstBody&&_(x))continue;x==="?"?u.state=b.PROC_INST_ENDING:u.procInstBody+=x;continue;case b.PROC_INST_ENDING:x===">"?(S(u,"onprocessinginstruction",{name:u.procInstName,body:u.procInstBody}),u.procInstName=u.procInstBody="",u.state=b.TEXT):(u.procInstBody+="?"+x,u.state=b.PROC_INST_BODY);continue;case b.OPEN_TAG:T(f,x)?u.tagName+=x:(ee(u),x===">"?U(u):x==="/"?u.state=b.OPEN_TAG_SLASH:(_(x)||F(u,"Invalid character in tag name"),u.state=b.ATTRIB));continue;case b.OPEN_TAG_SLASH:x===">"?(U(u,!0),Ne(u)):(F(u,"Forward-slash in opening tag not followed by >"),u.state=b.ATTRIB);continue;case b.ATTRIB:if(_(x))continue;x===">"?U(u):x==="/"?u.state=b.OPEN_TAG_SLASH:T(d,x)?(u.attribName=x,u.attribValue="",u.state=b.ATTRIB_NAME):F(u,"Invalid attribute name");continue;case b.ATTRIB_NAME:x==="="?u.state=b.ATTRIB_VALUE:x===">"?(F(u,"Attribute without value"),u.attribValue=u.attribName,We(u),U(u)):_(x)?u.state=b.ATTRIB_NAME_SAW_WHITE:T(f,x)?u.attribName+=x:F(u,"Invalid attribute name");continue;case b.ATTRIB_NAME_SAW_WHITE:if(x==="=")u.state=b.ATTRIB_VALUE;else{if(_(x))continue;F(u,"Attribute without value"),u.tag.attributes[u.attribName]="",u.attribValue="",S(u,"onattribute",{name:u.attribName,value:""}),u.attribName="",x===">"?U(u):T(d,x)?(u.attribName=x,u.state=b.ATTRIB_NAME):(F(u,"Invalid attribute name"),u.state=b.ATTRIB)}continue;case b.ATTRIB_VALUE:if(_(x))continue;A(x)?(u.q=x,u.state=b.ATTRIB_VALUE_QUOTED):(F(u,"Unquoted attribute value"),u.state=b.ATTRIB_VALUE_UNQUOTED,u.attribValue=x);continue;case b.ATTRIB_VALUE_QUOTED:if(x!==u.q){x==="&"?u.state=b.ATTRIB_VALUE_ENTITY_Q:u.attribValue+=x;continue}We(u),u.q="",u.state=b.ATTRIB_VALUE_CLOSED;continue;case b.ATTRIB_VALUE_CLOSED:_(x)?u.state=b.ATTRIB:x===">"?U(u):x==="/"?u.state=b.OPEN_TAG_SLASH:T(d,x)?(F(u,"No whitespace between attributes"),u.attribName=x,u.attribValue="",u.state=b.ATTRIB_NAME):F(u,"Invalid attribute name");continue;case b.ATTRIB_VALUE_UNQUOTED:if(!D(x)){x==="&"?u.state=b.ATTRIB_VALUE_ENTITY_U:u.attribValue+=x;continue}We(u),x===">"?U(u):u.state=b.ATTRIB;continue;case b.CLOSE_TAG:if(u.tagName)x===">"?Ne(u):T(f,x)?u.tagName+=x:u.script?(u.script+=""?Ne(u):F(u,"Invalid characters in closing tag");continue;case b.TEXT_ENTITY:case b.ATTRIB_VALUE_ENTITY_Q:case b.ATTRIB_VALUE_ENTITY_U:var P,$;switch(u.state){case b.TEXT_ENTITY:P=b.TEXT,$="textNode";break;case b.ATTRIB_VALUE_ENTITY_Q:P=b.ATTRIB_VALUE_QUOTED,$="attribValue";break;case b.ATTRIB_VALUE_ENTITY_U:P=b.ATTRIB_VALUE_UNQUOTED,$="attribValue";break}if(x===";")if(u.opt.unparsedEntities){var W=G(u);u.entity="",u.state=P,u.write(W)}else u[$]+=G(u),u.entity="",u.state=P;else T(u.entity.length?v:g,x)?u.entity+=x:(F(u,"Invalid character in entity name"),u[$]+="&"+u.entity+x,u.entity="",u.state=P);continue;default:throw new Error(u,"Unknown state: "+u.state)}return u.position>=u.bufferCheckPosition&&i(u),u}String.fromCodePoint||function(){var h=String.fromCharCode,u=Math.floor,R=function(){var x=16384,N=[],I,P,$=-1,W=arguments.length;if(!W)return"";for(var ie="";++$1114111||u(te)!==te)throw RangeError("Invalid code point: "+te);te<=65535?N.push(te):(te-=65536,I=(te>>10)+55296,P=te%1024+56320,N.push(I,P)),($+1===W||N.length>x)&&(ie+=h.apply(null,N),N.length=0)}return ie};Object.defineProperty?Object.defineProperty(String,"fromCodePoint",{value:R,configurable:!0,writable:!0}):String.fromCodePoint=R}()})(typeof Rr=="undefined"?Rr.sax={}:Rr)});var Lf=Y((o2,Ff)=>{var Cf=/[&<>"]/g,yy=RegExp(Cf.source),by={"&":"&","<":"<",">":">",'"':"""},xy=n=>{let t=String(n);return t&&yy.test(t)?t.replace(Cf,e=>by[e]):t},wy=(n,t)=>typeof n=="string"&&typeof t=="string"||n&&n[0].$name===t.$name,vy=(n,t)=>typeof n=="string"?n+t:n.concat(t),Ey=n=>n.reduce((t,e)=>{let i=t.length-1,r=t[i];return wy(r,e)?t[i]=vy(r,e):t.push(typeof e=="string"?e:[e]),t},[]),_y=(n,t,e)=>{let i=null,r={};return Object.keys(n).forEach(o=>{let a=Or(n[o])?n[o]:null;if(a)switch(o){case"$name":!t&&a&&(r.$name=a);break;case"$attrs":i=a;break;case"$markup":r.$markup=If(a);break;default:a&&(r[o]=e(a))}}),{stripped:r,$attrs:i}},Ty=n=>Array.isArray(n)&&n.length===1?n[0]:n,Ay=(n,t)=>Or(t)?n?Object.keys(t).length===1&&t.$name?Object.assign(t,n):Object.assign(t,{$attrs:n}):t:n,ky=n=>{if(!n)return;let t=Object.keys(n),[e]=t;return t.length===1&&e!=="$name"&&e!=="id"?n[t[0]]:n},Za=(n,t,e)=>{let i=e?l=>l:Ty,r=i(n);if(!Or(r))return null;if(typeof r!="object"||Array.isArray(r))return r;let{$attrs:o,stripped:a}=_y(r,t,i),s=Ay(o,a);return ky(s)},Ny=n=>{let t,e={},i=!0;return n.every(r=>(typeof r=="string"?t="$text":t=r[0].$name,e[t]?(i=!1,!1):(e[t]=!0,!0))),i},Ya=(n=[],t=[],e=!1)=>{let i=Array.isArray(n)?n:[n],r=Array.isArray(t)?t:[t],o=i.concat(r);return o.length===1&&!e?o[0]:o},If=(n,t)=>{let e=[];return n!==null&&typeof n=="object"&&n.constructor===Array?(n.forEach(i=>{e.push(Za(i,t))}),e):Za(n,t)},Sy=(n,t)=>{let e,i={};return Object.keys(n).forEach(r=>{r!=="$markup"&&(i[r]=n[r])}),n.$markup&&n.$markup.forEach(r=>{typeof r=="string"?i.$text=Ya(i.$text,r,t):typeof r=="object"&&(r.constructor===Array?e=r[0].$name:e=r.$name,i[e]=Ya(i[e],If(r,!0),t))}),i},Or=n=>n!=null&&(n.length==null||n.length!==0)&&(typeof n!="object"||Object.keys(n).length!==0);Ff.exports={condenseArray:Ey,escape:xy,isSomething:Or,moosh:Ya,objectifyMarkup:Sy,shouldObjectifyMarkup:Ny,simplifyNode:Za}});var $f=Y((a2,Mf)=>{var{EventEmitter:Ry}=require("events"),Oy=Df(),$t=Lf(),Dy=1,In=0,Bt=-1,Pf={preserveMarkup:In,simplifyNodes:!0,useArrays:In,lowercase:!0,trim:!0,normalize:!0,cdataAsText:!1,strict:!1},bi=function(t,e=Pf){let i=new Ry,r=[],o=Object.assign({},Pf,e),{preserveMarkup:a,simplifyNodes:s,useArrays:l,lowercase:c,trim:p,normalize:m,cdataAsText:y,strict:w}=o,E=null,d=null,f=Oy.createStream(w,{lowercase:c,trim:p,normalize:m,cdataAsText:y});return f.on("opentag",g=>{r.length===0&&!i.listeners(`tag:${g.name}`).length||(E={$name:g.name,$attrs:g.attributes},l>Bt&&(E.$markup=[]),r.push(E))}),f.on("text",g=>{E&&(l>Bt?E.$markup.push(g):E.$text?E.$text+=g:E.$text=g)}),f.on("opencdata",()=>{E&&(y||(d={$name:"$cdata",text:""},l>Bt?E.$markup.push(d):E.$cdata=d))}),f.on("cdata",g=>{E&&(d!==null?d.text+=g:l>Bt?E.$markup.push(g):E.$text?E.$text+=g:E.$text=g)}),f.on("closecdata",()=>{d=null}),f.on("script",g=>{E&&(E.$script=g)}),f.on("closetag",g=>{let v,_=null,A=l>In;r.length!==0&&(l>Bt&&(a<=Bt?(E.$markup=$t.condenseArray(E.$markup),E=$t.objectifyMarkup(E,A)):a===In&&(v=$t.condenseArray(E.$markup),$t.shouldObjectifyMarkup(v)&&(E.$markup=v,E=$t.objectifyMarkup(E,A)))),i.listeners(`tag:${g}`).length&&i.emit(`tag:${g}`,s?$t.simplifyNode(E,!1,l>In):E),r.pop(),r.length>0&&(_=r[r.length-1],l>Bt?_.$markup.push(E):_[g]||(_[g]=$t.simplifyNode(E,!0))),E=_)}),f.on("end",()=>{i.emit("end")}),f.on("error",g=>{i.emit("error",g)}),t.pipe(f),i.pause=function(){t.pause()},i.resume=function(){t.resume()},i};bi.ALWAYS=Dy;bi.SOMETIMES=In;bi.NEVER=Bt;bi.toXml=function(t,{indent:e="",selfClosing:i=!0,escape:r=$t.escape,nodeName:o}={}){let a=e?` +`:"";function s(l,c,p){let m="",y,w=c,E=p?a+p:"",d=p+e,f="";return l=l||"",l.constructor===Array?(l.forEach(g=>{m+=s(g,w,p)}),m):(!w&&l.$name&&(w=l.$name),w&&(m=`${E}<${w}`,l.$attrs&&typeof l.$attrs=="object"&&(y=Object.keys(l.$attrs),y.forEach(g=>{m+=` ${g}=${JSON.stringify(String(l.$attrs[g]))}`}))),l==null||l===""||(typeof l=="object"?(y=Object.keys(l),y.forEach(g=>{let v=l[g];switch(g){case"$name":case"$attrs":break;case"$text":case"$markup":f+=s(v,null,d);break;case"$script":f+=s(v,"script",d);break;case"$cdata":f+=`${E}`;break;default:f+=s(v,g,d)}})):f+=E+r(l)),w?f?m+=`>${f}${a}${p}`:i?m+="/>":m+=`>`:m+=f,m)}return s(t,o,"")};Mf.exports=bi});var I1={};Se(I1,{ATTACHMENT_EXTS:()=>Ln,AUTH_REDIRECT_URI:()=>$r,ImportContext:()=>Wr,ImporterModal:()=>wi,default:()=>Zr});module.exports=wd(I1);var Ht=require("obsidian");var st=require("obsidian");var wt=class{constructor(t){this.importer=t,this.app=t.app}};var Mn=class extends wt{constructor(e,i){super(e);this.scan=i.mergableDataObject,this.objects=this.scan.mergeableDataObjectData.mergeableDataObjectEntry}async format(){let e=[];for(let i of this.objects){if(!i.customMap)continue;let r=i.customMap.mapEntry[0].value.stringValue,o=await this.importer.database.get` + SELECT z_pk, zmedia, ztypeuti FROM ziccloudsyncingobject + WHERE zidentifier = ${r}`,a=await this.importer.resolveAttachment(o.Z_PK,"com.apple.notes.gallery");if(a||(a=await this.importer.resolveAttachment(o.ZMEDIA,o.ZTYPEUTI)),a)e.push(this.importer.app.fileManager.generateMarkdownLink(a,"/"));else return"**Cannot decode scan**"}return` +${e.join(` +`)} +`}};Mn.protobufType="ciofecaforensics.MergableDataProto";var $n=class extends wt{constructor(e,i){super(e);this.rowLocations={};this.columnLocations={};this.table=i.mergableDataObject;let r=this.table.mergeableDataObjectData;this.keys=r.mergeableDataObjectKeyItem,this.types=r.mergeableDataObjectTypeItem,this.uuids=r.mergeableDataObjectUuidItem.map(this.uuidToString),this.objects=r.mergeableDataObjectEntry}async parse(){let e=this.objects.find(r=>r.customMap&&this.types[r.customMap.type]=="com.apple.notes.ICTable");if(!e)return null;let i=null;for(let r of e.customMap.mapEntry){let o=this.objects[r.value.objectIndex];switch(this.keys[r.key]){case"crRows":[this.rowLocations,this.rowCount]=this.findLocations(o);break;case"crColumns":[this.columnLocations,this.columnCount]=this.findLocations(o);break;case"cellColumns":i=o;break}}return i?await this.computeCells(i):null}findLocations(e){let i=[],r={};for(let o of e.orderedSet.ordering.array.attachment)i.push(this.uuidToString(o.uuid));for(let o of e.orderedSet.ordering.contents.element){let a=this.getTargetUuid(o.key),s=this.getTargetUuid(o.value);r[s]=i.indexOf(a)}return[r,i.length]}async computeCells(e){let i=Array(this.rowCount).fill(0).map(()=>Array(this.columnCount));for(let r of e.dictionary.element){let o=this.columnLocations[this.getTargetUuid(r.key)],a=this.objects[r.value.objectIndex];for(let s of a.dictionary.element){let l=this.rowLocations[this.getTargetUuid(s.key)],c=this.objects[s.value.objectIndex];if(!(l in i)||!c)continue;let p=new Wt(this.importer,c);i[l][o]=await p.format(!0)}}return i}async format(){let e=await this.parse();if(!e)return"";let i=` +`;for(let r=0;r").replace("|","|"),o.trim()}formatMultiRun(e){var o,a,s,l,c,p;let i=(o=e.paragraphStyle)==null?void 0:o.styleType,r="";switch(this.multiRun){case 3:(((a=e.paragraphStyle)==null?void 0:a.indentAmount)==0&&!as.includes(i)||_d(e))&&(this.multiRun=0);break;case 1:i!=4&&(this.multiRun=0,r+="```\n");break;case 2:(s=e.paragraphStyle)!=null&&s.alignment||(this.multiRun=0,r+=`

+`);break}if(this.multiRun==0){if(i==4)this.multiRun=1,r+="\n```\n";else if(as.includes(i))this.multiRun=3,(l=e.paragraphStyle)!=null&&l.indentAmount&&(r+=` +-   +`);else if((c=e.paragraphStyle)!=null&&c.alignment){this.multiRun=2;let m=this.convertAlign((p=e==null?void 0:e.paragraphStyle)==null?void 0:p.alignment);r+=` +

`}}return r}async formatHtmlAttr(e){var r,o;e.strikethrough&&(e.fragment=`${e.fragment}`),e.underlined&&(e.fragment=`${e.fragment}`),e.superscript==1&&(e.fragment=`${e.fragment}`),e.superscript==-1&&(e.fragment=`${e.fragment}`);let i="";switch(e.fontWeight){case 1:e.fragment=`${e.fragment}`;break;case 2:e.fragment=`${e.fragment}`;break;case 3:e.fragment=`${e.fragment}`;break}return(r=e.font)!=null&&r.fontName&&e.font.fontName!==Ed&&(i+=`font-family:${e.font.fontName};`),(o=e.font)!=null&&o.pointSize&&(i+=`font-size:${e.font.pointSize}pt;`),e.color&&(i+=`color:${this.convertColor(e.color)};`),e.link&&!zr.test(e.link)?(i&&(i=` style="${i}"`),e.fragment=`${e.fragment}`):i&&(e.link&&(e.fragment=await this.getInternalLink(e.link,e.fragment)),e.fragment=`${e.fragment}`),e.atLineStart?this.formatParagraph(e):e.fragment}async formatAttr(e){switch(e.fontWeight){case 1:e.fragment=`**${e.fragment}**`;break;case 2:e.fragment=`*${e.fragment}*`;break;case 3:e.fragment=`***${e.fragment}***`;break}return e.strikethrough&&(e.fragment=`~~${e.fragment}~~`),e.link&&e.link!=e.fragment&&(zr.test(e.link)?e.fragment=await this.getInternalLink(e.link,e.fragment):e.fragment=`[${e.fragment}](${e.link})`),e.atLineStart?this.formatParagraph(e):e.fragment}formatParagraph(e){var a,s,l,c,p,m;let i=" ".repeat(((a=e.paragraphStyle)==null?void 0:a.indentAmount)||0),r=(s=e.paragraphStyle)==null?void 0:s.styleType,o=(l=e.paragraphStyle)!=null&&l.blockquote?"> ":"";switch(this.listNumber!=0&&(r!==102||this.listIndent!==((c=e.paragraphStyle)==null?void 0:c.indentAmount))&&(this.listIndent=((p=e.paragraphStyle)==null?void 0:p.indentAmount)||0,this.listNumber=0),r){case 0:return`${o}# ${e.fragment}`;case 1:return`${o}## ${e.fragment}`;case 2:return`${o}### ${e.fragment}`;case 101:case 100:return`${o}${i}- ${e.fragment}`;case 102:return this.listNumber++,`${o}${i}${this.listNumber}. ${e.fragment}`;case 103:let y=(m=e.paragraphStyle.checklist)!=null&&m.done?"[x]":"[ ]";return`${o}${i}- ${y} ${e.fragment}`}return this.multiRun==3&&(o+=i),`${o}${e.fragment}`}async formatAttachment(e){var l,c,p;let i,r,o;switch((l=e.attachmentInfo)==null?void 0:l.typeUti){case"com.apple.notes.inlinetextattachment.hashtag":case"com.apple.notes.inlinetextattachment.mention":return i=await this.importer.database.get` + SELECT zalttext FROM ziccloudsyncingobject + WHERE zidentifier = ${e.attachmentInfo.attachmentIdentifier}`,i.ZALTTEXT;case"com.apple.notes.inlinetextattachment.link":return i=await this.importer.database.get` + SELECT ztokencontentidentifier FROM ziccloudsyncingobject + WHERE zidentifier = ${e.attachmentInfo.attachmentIdentifier}`,await this.getInternalLink(i.ZTOKENCONTENTIDENTIFIER);case"com.apple.notes.table":return i=await this.importer.database.get` + SELECT hex(zmergeabledata1) as zhexdata FROM ziccloudsyncingobject + WHERE zidentifier = ${e.attachmentInfo.attachmentIdentifier}`,o=this.importer.decodeData(i.zhexdata,$n),await o.format();case"public.url":return i=await this.importer.database.get` + SELECT ztitle, zurlstring FROM ziccloudsyncingobject + WHERE zidentifier = ${e.attachmentInfo.attachmentIdentifier}`,`[**${i.ZTITLE}**](${i.ZURLSTRING})`;case"com.apple.notes.gallery":return i=await this.importer.database.get` + SELECT hex(zmergeabledata1) as zhexdata FROM ziccloudsyncingobject + WHERE zidentifier = ${e.attachmentInfo.attachmentIdentifier}`,o=this.importer.decodeData(i.zhexdata,Mn),await o.format();case"com.apple.paper.doc.scan":case"com.apple.drawing":case"com.apple.drawing.2":case"com.apple.paper":i=await this.importer.database.get` + SELECT z_pk, zhandwritingsummary + FROM (SELECT *, NULL AS zhandwritingsummary FROM ziccloudsyncingobject) + WHERE zidentifier = ${e.attachmentInfo.attachmentIdentifier}`,r=i==null?void 0:i.Z_PK;break;default:i=await this.importer.database.get` + SELECT zmedia FROM ziccloudsyncingobject + WHERE zidentifier = ${(c=e.attachmentInfo)==null?void 0:c.attachmentIdentifier}`,r=i==null?void 0:i.ZMEDIA;break}if(!r)return` **(unknown attachment: ${(p=e.attachmentInfo)==null?void 0:p.typeUti})** `;let a=await this.importer.resolveAttachment(r,e.attachmentInfo.typeUti),s=a?` +${this.app.fileManager.generateMarkdownLink(a,"/")} +`:" **(error reading attachment)**";return this.importer.includeHandwriting&&i.ZHANDWRITINGSUMMARY&&(s=` +> [!Handwriting]- +> ${i.ZHANDWRITINGSUMMARY.replace(` +`,` +> `)}${s}`),s}async getInternalLink(e,i=void 0){let r=e.match(zr)[1],o=await this.importer.database.get` + SELECT z_pk FROM ziccloudsyncingobject + WHERE zidentifier = ${r.toUpperCase()}`,a=await this.importer.resolveNote(o.Z_PK);return a?this.app.fileManager.generateMarkdownLink(a,this.importer.rootFolder.path,void 0,i):"(unknown file link)"}convertColor(e){let i="#";for(let r of Object.values(e))i+=Math.floor(r*255).toString(16);return i}convertAlign(e){switch(e){default:return"left";case 1:return"center";case 2:return"right";case 3:return"justify"}}};Wt.protobufType="ciofecaforensics.Document";function _d(n){return n.attachmentInfo?!n.attachmentInfo.typeUti.includes("com.apple.notes.inlinetextattachment"):!1}function ss(n,t){var e,i;if(!t||n.$type!=t.$type)return!1;for(let r of n.$type.fieldsArray)if(r.name!="length"){if((e=n[r.name])!=null&&e.$type&&((i=t[r.name])!=null&&i.$type)){if(!ss(n[r.name],t[r.name]))return!1}else if(n[r.name]!=t[r.name])return!1}return!0}var ls={nested:{ciofecaforensics:{nested:{Color:{fields:{red:{type:"float",id:1},green:{type:"float",id:2},blue:{type:"float",id:3},alpha:{type:"float",id:4}}},AttachmentInfo:{fields:{attachmentIdentifier:{type:"string",id:1},typeUti:{type:"string",id:2}}},Font:{fields:{fontName:{type:"string",id:1},pointSize:{type:"float",id:2},fontHints:{type:"int32",id:3}}},ParagraphStyle:{fields:{styleType:{type:"int32",id:1,options:{default:-1}},alignment:{type:"int32",id:2},indentAmount:{type:"int32",id:4},checklist:{type:"Checklist",id:5},blockquote:{type:"int32",id:8}}},Checklist:{fields:{uuid:{type:"bytes",id:1},done:{type:"int32",id:2}}},DictionaryElement:{fields:{key:{type:"ObjectID",id:1},value:{type:"ObjectID",id:2}}},Dictionary:{fields:{element:{rule:"repeated",type:"DictionaryElement",id:1,options:{packed:!1}}}},ObjectID:{fields:{unsignedIntegerValue:{type:"uint64",id:2},stringValue:{type:"string",id:4},objectIndex:{type:"int32",id:6}}},RegisterLatest:{fields:{contents:{type:"ObjectID",id:2}}},MapEntry:{fields:{key:{type:"int32",id:1},value:{type:"ObjectID",id:2}}},AttributeRun:{fields:{length:{type:"int32",id:1},paragraphStyle:{type:"ParagraphStyle",id:2},font:{type:"Font",id:3},fontWeight:{type:"int32",id:5},underlined:{type:"int32",id:6},strikethrough:{type:"int32",id:7},superscript:{type:"int32",id:8},link:{type:"string",id:9},color:{type:"Color",id:10},attachmentInfo:{type:"AttachmentInfo",id:12}}},NoteStoreProto:{fields:{document:{type:"Document",id:2}}},Document:{fields:{version:{type:"int32",id:2},note:{type:"Note",id:3}}},Note:{fields:{noteText:{type:"string",id:2},attributeRun:{rule:"repeated",type:"AttributeRun",id:5,options:{packed:!1}}}},MergableDataProto:{fields:{mergableDataObject:{type:"MergableDataObject",id:2}}},MergableDataObject:{fields:{version:{type:"int32",id:2},mergeableDataObjectData:{type:"MergeableDataObjectData",id:3}}},MergeableDataObjectData:{fields:{mergeableDataObjectEntry:{rule:"repeated",type:"MergeableDataObjectEntry",id:3,options:{packed:!1}},mergeableDataObjectKeyItem:{rule:"repeated",type:"string",id:4},mergeableDataObjectTypeItem:{rule:"repeated",type:"string",id:5},mergeableDataObjectUuidItem:{rule:"repeated",type:"bytes",id:6}}},MergeableDataObjectEntry:{fields:{registerLatest:{type:"RegisterLatest",id:1},list:{type:"List",id:5},dictionary:{type:"Dictionary",id:6},unknownMessage:{type:"UnknownMergeableDataObjectEntryMessage",id:9},note:{type:"Note",id:10},customMap:{type:"MergeableDataObjectMap",id:13},orderedSet:{type:"OrderedSet",id:16}}},UnknownMergeableDataObjectEntryMessage:{fields:{unknownEntry:{type:"UnknownMergeableDataObjectEntryMessageEntry",id:1}}},UnknownMergeableDataObjectEntryMessageEntry:{fields:{unknownInt1:{type:"int32",id:1},unknownInt2:{type:"int64",id:2}}},MergeableDataObjectMap:{fields:{type:{type:"int32",id:1},mapEntry:{rule:"repeated",type:"MapEntry",id:3,options:{packed:!1}}}},OrderedSet:{fields:{ordering:{type:"OrderedSetOrdering",id:1},elements:{type:"Dictionary",id:2}}},OrderedSetOrdering:{fields:{array:{type:"OrderedSetOrderingArray",id:1},contents:{type:"Dictionary",id:2}}},OrderedSetOrderingArray:{fields:{contents:{type:"Note",id:1},attachment:{rule:"repeated",type:"OrderedSetOrderingArrayAttachment",id:2,options:{packed:!1}}}},OrderedSetOrderingArrayAttachment:{fields:{index:{type:"int32",id:1},uuid:{type:"bytes",id:2}}},List:{fields:{listEntry:{rule:"repeated",type:"ListEntry",id:1,options:{packed:!1}}}},ListEntry:{fields:{id:{type:"ObjectID",id:2},details:{type:"ListEntryDetails",id:3},additionalDetails:{type:"ListEntryDetails",id:4}}},ListEntryDetails:{fields:{listEntryDetailsKey:{type:"ListEntryDetailsKey",id:1},id:{type:"ObjectID",id:2}}},ListEntryDetailsKey:{fields:{listEntryDetailsTypeIndex:{type:"int32",id:1},listEntryDetailsKey:{type:"int32",id:2}}}}}}};var De=[0,1,3,7,15,31,63,127,255,511,1023,2047,4095,8191,16383,32767,65535],Ss=1440,Td=0,Ad=4,kd=9,Nd=5,Sd=[96,7,256,0,8,80,0,8,16,84,8,115,82,7,31,0,8,112,0,8,48,0,9,192,80,7,10,0,8,96,0,8,32,0,9,160,0,8,0,0,8,128,0,8,64,0,9,224,80,7,6,0,8,88,0,8,24,0,9,144,83,7,59,0,8,120,0,8,56,0,9,208,81,7,17,0,8,104,0,8,40,0,9,176,0,8,8,0,8,136,0,8,72,0,9,240,80,7,4,0,8,84,0,8,20,85,8,227,83,7,43,0,8,116,0,8,52,0,9,200,81,7,13,0,8,100,0,8,36,0,9,168,0,8,4,0,8,132,0,8,68,0,9,232,80,7,8,0,8,92,0,8,28,0,9,152,84,7,83,0,8,124,0,8,60,0,9,216,82,7,23,0,8,108,0,8,44,0,9,184,0,8,12,0,8,140,0,8,76,0,9,248,80,7,3,0,8,82,0,8,18,85,8,163,83,7,35,0,8,114,0,8,50,0,9,196,81,7,11,0,8,98,0,8,34,0,9,164,0,8,2,0,8,130,0,8,66,0,9,228,80,7,7,0,8,90,0,8,26,0,9,148,84,7,67,0,8,122,0,8,58,0,9,212,82,7,19,0,8,106,0,8,42,0,9,180,0,8,10,0,8,138,0,8,74,0,9,244,80,7,5,0,8,86,0,8,22,192,8,0,83,7,51,0,8,118,0,8,54,0,9,204,81,7,15,0,8,102,0,8,38,0,9,172,0,8,6,0,8,134,0,8,70,0,9,236,80,7,9,0,8,94,0,8,30,0,9,156,84,7,99,0,8,126,0,8,62,0,9,220,82,7,27,0,8,110,0,8,46,0,9,188,0,8,14,0,8,142,0,8,78,0,9,252,96,7,256,0,8,81,0,8,17,85,8,131,82,7,31,0,8,113,0,8,49,0,9,194,80,7,10,0,8,97,0,8,33,0,9,162,0,8,1,0,8,129,0,8,65,0,9,226,80,7,6,0,8,89,0,8,25,0,9,146,83,7,59,0,8,121,0,8,57,0,9,210,81,7,17,0,8,105,0,8,41,0,9,178,0,8,9,0,8,137,0,8,73,0,9,242,80,7,4,0,8,85,0,8,21,80,8,258,83,7,43,0,8,117,0,8,53,0,9,202,81,7,13,0,8,101,0,8,37,0,9,170,0,8,5,0,8,133,0,8,69,0,9,234,80,7,8,0,8,93,0,8,29,0,9,154,84,7,83,0,8,125,0,8,61,0,9,218,82,7,23,0,8,109,0,8,45,0,9,186,0,8,13,0,8,141,0,8,77,0,9,250,80,7,3,0,8,83,0,8,19,85,8,195,83,7,35,0,8,115,0,8,51,0,9,198,81,7,11,0,8,99,0,8,35,0,9,166,0,8,3,0,8,131,0,8,67,0,9,230,80,7,7,0,8,91,0,8,27,0,9,150,84,7,67,0,8,123,0,8,59,0,9,214,82,7,19,0,8,107,0,8,43,0,9,182,0,8,11,0,8,139,0,8,75,0,9,246,80,7,5,0,8,87,0,8,23,192,8,0,83,7,51,0,8,119,0,8,55,0,9,206,81,7,15,0,8,103,0,8,39,0,9,174,0,8,7,0,8,135,0,8,71,0,9,238,80,7,9,0,8,95,0,8,31,0,9,158,84,7,99,0,8,127,0,8,63,0,9,222,82,7,27,0,8,111,0,8,47,0,9,190,0,8,15,0,8,143,0,8,79,0,9,254,96,7,256,0,8,80,0,8,16,84,8,115,82,7,31,0,8,112,0,8,48,0,9,193,80,7,10,0,8,96,0,8,32,0,9,161,0,8,0,0,8,128,0,8,64,0,9,225,80,7,6,0,8,88,0,8,24,0,9,145,83,7,59,0,8,120,0,8,56,0,9,209,81,7,17,0,8,104,0,8,40,0,9,177,0,8,8,0,8,136,0,8,72,0,9,241,80,7,4,0,8,84,0,8,20,85,8,227,83,7,43,0,8,116,0,8,52,0,9,201,81,7,13,0,8,100,0,8,36,0,9,169,0,8,4,0,8,132,0,8,68,0,9,233,80,7,8,0,8,92,0,8,28,0,9,153,84,7,83,0,8,124,0,8,60,0,9,217,82,7,23,0,8,108,0,8,44,0,9,185,0,8,12,0,8,140,0,8,76,0,9,249,80,7,3,0,8,82,0,8,18,85,8,163,83,7,35,0,8,114,0,8,50,0,9,197,81,7,11,0,8,98,0,8,34,0,9,165,0,8,2,0,8,130,0,8,66,0,9,229,80,7,7,0,8,90,0,8,26,0,9,149,84,7,67,0,8,122,0,8,58,0,9,213,82,7,19,0,8,106,0,8,42,0,9,181,0,8,10,0,8,138,0,8,74,0,9,245,80,7,5,0,8,86,0,8,22,192,8,0,83,7,51,0,8,118,0,8,54,0,9,205,81,7,15,0,8,102,0,8,38,0,9,173,0,8,6,0,8,134,0,8,70,0,9,237,80,7,9,0,8,94,0,8,30,0,9,157,84,7,99,0,8,126,0,8,62,0,9,221,82,7,27,0,8,110,0,8,46,0,9,189,0,8,14,0,8,142,0,8,78,0,9,253,96,7,256,0,8,81,0,8,17,85,8,131,82,7,31,0,8,113,0,8,49,0,9,195,80,7,10,0,8,97,0,8,33,0,9,163,0,8,1,0,8,129,0,8,65,0,9,227,80,7,6,0,8,89,0,8,25,0,9,147,83,7,59,0,8,121,0,8,57,0,9,211,81,7,17,0,8,105,0,8,41,0,9,179,0,8,9,0,8,137,0,8,73,0,9,243,80,7,4,0,8,85,0,8,21,80,8,258,83,7,43,0,8,117,0,8,53,0,9,203,81,7,13,0,8,101,0,8,37,0,9,171,0,8,5,0,8,133,0,8,69,0,9,235,80,7,8,0,8,93,0,8,29,0,9,155,84,7,83,0,8,125,0,8,61,0,9,219,82,7,23,0,8,109,0,8,45,0,9,187,0,8,13,0,8,141,0,8,77,0,9,251,80,7,3,0,8,83,0,8,19,85,8,195,83,7,35,0,8,115,0,8,51,0,9,199,81,7,11,0,8,99,0,8,35,0,9,167,0,8,3,0,8,131,0,8,67,0,9,231,80,7,7,0,8,91,0,8,27,0,9,151,84,7,67,0,8,123,0,8,59,0,9,215,82,7,19,0,8,107,0,8,43,0,9,183,0,8,11,0,8,139,0,8,75,0,9,247,80,7,5,0,8,87,0,8,23,192,8,0,83,7,51,0,8,119,0,8,55,0,9,207,81,7,15,0,8,103,0,8,39,0,9,175,0,8,7,0,8,135,0,8,71,0,9,239,80,7,9,0,8,95,0,8,31,0,9,159,84,7,99,0,8,127,0,8,63,0,9,223,82,7,27,0,8,111,0,8,47,0,9,191,0,8,15,0,8,143,0,8,79,0,9,255],Rd=[80,5,1,87,5,257,83,5,17,91,5,4097,81,5,5,89,5,1025,85,5,65,93,5,16385,80,5,3,88,5,513,84,5,33,92,5,8193,82,5,9,90,5,2049,86,5,129,192,5,24577,80,5,2,87,5,385,83,5,25,91,5,6145,81,5,7,89,5,1537,85,5,97,93,5,24577,80,5,4,88,5,769,84,5,49,92,5,12289,82,5,13,90,5,3073,86,5,193,192,5,24577],Od=[3,4,5,6,7,8,9,10,11,13,15,17,19,23,27,31,35,43,51,59,67,83,99,115,131,163,195,227,258,0,0],Dd=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0,112,112],Cd=[1,2,3,4,5,7,9,13,17,25,33,49,65,97,129,193,257,385,513,769,1025,1537,2049,3073,4097,6145,8193,12289,16385,24577],Id=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13],vt=15;function Xr(){let n=this,t,e,i,r,o,a;function s(c,p,m,y,w,E,d,f,g,v,_){let A,D,T,k,b,C,O,S,M,L,j,Z,F,ee,z;L=0,b=m;do i[c[p+L]]++,L++,b--;while(b!==0);if(i[0]==m)return d[0]=-1,f[0]=0,0;for(S=f[0],C=1;C<=vt&&i[C]===0;C++);for(O=C,Sb&&(S=b),f[0]=S,ee=1<Z+S;){if(k++,Z+=S,z=T-Z,z=z>S?S:z,(D=1<<(C=O-Z))>A+1&&(D-=A+1,F=O,CSs)return-3;o[k]=j=v[0],v[0]+=z,k!==0?(a[k]=b,r[0]=C,r[1]=S,C=b>>>Z-S,r[2]=j-o[k-1]-C,g.set(r,(o[k-1]+C)*3)):d[0]=j}for(r[1]=O-Z,L>=m?r[0]=128+64:_[L]>>Z;C>>=1)b^=C;for(b^=C,M=(1<257?(v==-3?g.msg="oversubscribed distance tree":v==-5?(g.msg="incomplete distance tree",v=-3):v!=-4&&(g.msg="empty distance tree with lengths",v=-3),v):0)}}Xr.inflate_trees_fixed=function(n,t,e,i){return n[0]=kd,t[0]=Nd,e[0]=Sd,i[0]=Rd,0};var Ei=0,cs=1,ps=2,us=3,fs=4,ds=5,ms=6,Gr=7,hs=8,_i=9;function Fd(){let n=this,t,e=0,i,r=0,o=0,a=0,s=0,l=0,c=0,p=0,m,y=0,w,E=0;function d(f,g,v,_,A,D,T,k){let b,C,O,S,M,L,j,Z,F,ee,z,We,U,Ne,G,Q;j=k.next_in_index,Z=k.avail_in,M=T.bitb,L=T.bitk,F=T.write,ee=F>=C[Q+1],L-=C[Q+1],T.win[F++]=C[Q+2],ee--;continue}do{if(M>>=C[Q+1],L-=C[Q+1],S&16){for(S&=15,U=C[Q+2]+(M&De[S]),M>>=S,L-=S;L<15;)Z--,M|=(k.read_byte(j++)&255)<>=C[Q+1],L-=C[Q+1],S&16){for(S&=15;L>=S,L-=S,ee-=U,F>=Ne)G=F-Ne,F-G>0&&2>F-G?(T.win[F++]=T.win[G++],T.win[F++]=T.win[G++],U-=2):(T.win.set(T.win.subarray(G,G+2),F),F+=2,G+=2,U-=2);else{G=F-Ne;do G+=T.end;while(G<0);if(S=T.end-G,U>S){if(U-=S,F-G>0&&S>F-G)do T.win[F++]=T.win[G++];while(--S!==0);else T.win.set(T.win.subarray(G,G+S),F),F+=S,G+=S,S=0;G=0}}if(F-G>0&&U>F-G)do T.win[F++]=T.win[G++];while(--U!==0);else T.win.set(T.win.subarray(G,G+U),F),F+=U,G+=U,U=0;break}else if(!(S&64))b+=C[Q+2],b+=M&De[S],Q=(O+b)*3,S=C[Q];else return k.msg="invalid distance code",U=k.avail_in-Z,U=L>>3>3:U,Z+=U,j-=U,L-=U<<3,T.bitb=M,T.bitk=L,k.avail_in=Z,k.total_in+=j-k.next_in_index,k.next_in_index=j,T.write=F,-3;while(!0);break}if(S&64)return S&32?(U=k.avail_in-Z,U=L>>3>3:U,Z+=U,j-=U,L-=U<<3,T.bitb=M,T.bitk=L,k.avail_in=Z,k.total_in+=j-k.next_in_index,k.next_in_index=j,T.write=F,1):(k.msg="invalid literal/length code",U=k.avail_in-Z,U=L>>3>3:U,Z+=U,j-=U,L-=U<<3,T.bitb=M,T.bitk=L,k.avail_in=Z,k.total_in+=j-k.next_in_index,k.next_in_index=j,T.write=F,-3);if(b+=C[Q+2],b+=M&De[S],Q=(O+b)*3,(S=C[Q])===0){M>>=C[Q+1],L-=C[Q+1],T.win[F++]=C[Q+2],ee--;break}}while(!0)}while(ee>=258&&Z>=10);return U=k.avail_in-Z,U=L>>3>3:U,Z+=U,j-=U,L-=U<<3,T.bitb=M,T.bitk=L,k.avail_in=Z,k.total_in+=j-k.next_in_index,k.next_in_index=j,T.write=F,0}n.init=function(f,g,v,_,A,D){t=Ei,c=f,p=g,m=v,y=_,w=A,E=D,i=null},n.proc=function(f,g,v){let _,A,D,T=0,k=0,b=0,C,O,S,M;for(b=g.next_in_index,C=g.avail_in,T=f.bitb,k=f.bitk,O=f.write,S=O=258&&C>=10&&(f.bitb=T,f.bitk=k,g.avail_in=C,g.total_in+=b-g.next_in_index,g.next_in_index=b,f.write=O,v=d(c,p,m,y,w,E,f,g),b=g.next_in_index,C=g.avail_in,T=f.bitb,k=f.bitk,O=f.write,S=O>>=i[A+1],k-=i[A+1],D=i[A],D===0){a=i[A+2],t=ms;break}if(D&16){s=D&15,e=i[A+2],t=ps;break}if(!(D&64)){o=D,r=A/3+i[A+2];break}if(D&32){t=Gr;break}return t=_i,g.msg="invalid literal/length code",v=-3,f.bitb=T,f.bitk=k,g.avail_in=C,g.total_in+=b-g.next_in_index,g.next_in_index=b,f.write=O,f.inflate_flush(g,v);case ps:for(_=s;k<_;){if(C!==0)v=0;else return f.bitb=T,f.bitk=k,g.avail_in=C,g.total_in+=b-g.next_in_index,g.next_in_index=b,f.write=O,f.inflate_flush(g,v);C--,T|=(g.read_byte(b++)&255)<>=_,k-=_,o=p,i=w,r=E,t=us;case us:for(_=o;k<_;){if(C!==0)v=0;else return f.bitb=T,f.bitk=k,g.avail_in=C,g.total_in+=b-g.next_in_index,g.next_in_index=b,f.write=O,f.inflate_flush(g,v);C--,T|=(g.read_byte(b++)&255)<>=i[A+1],k-=i[A+1],D=i[A],D&16){s=D&15,l=i[A+2],t=fs;break}if(!(D&64)){o=D,r=A/3+i[A+2];break}return t=_i,g.msg="invalid distance code",v=-3,f.bitb=T,f.bitk=k,g.avail_in=C,g.total_in+=b-g.next_in_index,g.next_in_index=b,f.write=O,f.inflate_flush(g,v);case fs:for(_=s;k<_;){if(C!==0)v=0;else return f.bitb=T,f.bitk=k,g.avail_in=C,g.total_in+=b-g.next_in_index,g.next_in_index=b,f.write=O,f.inflate_flush(g,v);C--,T|=(g.read_byte(b++)&255)<>=_,k-=_,t=ds;case ds:for(M=O-l;M<0;)M+=f.end;for(;e!==0;){if(S===0&&(O==f.end&&f.read!==0&&(O=0,S=O7&&(k-=8,C++,b--),f.write=O,v=f.inflate_flush(g,v),O=f.write,S=Od.avail_out&&(g=d.avail_out),g!==0&&f==-5&&(f=0),d.avail_out-=g,d.total_out+=g,d.next_out.set(e.win.subarray(_,_+g),v),v+=g,_+=g,_==e.end&&(_=0,e.write==e.end&&(e.write=0),g=e.write-_,g>d.avail_out&&(g=d.avail_out),g!==0&&f==-5&&(f=0),d.avail_out-=g,d.total_out+=g,d.next_out.set(e.win.subarray(_,_+g),v),v+=g,_+=g),d.next_out_index=v,e.read=_,f},e.proc=function(d,f){let g,v,_,A,D,T,k,b;for(A=d.next_in_index,D=d.avail_in,v=e.bitb,_=e.bitk,T=e.write,k=T>>1){case 0:v>>>=3,_-=3,g=_&7,v>>>=g,_-=g,i=Vr;break;case 1:C=[],O=[],S=[[]],M=[[]],Xr.inflate_trees_fixed(C,O,S,M),p.init(C[0],O[0],S[0],0,M[0],0),v>>>=3,_-=3,i=Ti;break;case 2:v>>>=3,_-=3,i=bs;break;case 3:return v>>>=3,_-=3,i=Zt,d.msg="invalid block type",f=-3,e.bitb=v,e.bitk=_,d.avail_in=D,d.total_in+=A-d.next_in_index,d.next_in_index=A,e.write=T,e.inflate_flush(d,f)}break;case Vr:for(;_<32;){if(D!==0)f=0;else return e.bitb=v,e.bitk=_,d.avail_in=D,d.total_in+=A-d.next_in_index,d.next_in_index=A,e.write=T,e.inflate_flush(d,f);D--,v|=(d.read_byte(A++)&255)<<_,_+=8}if((~v>>>16&65535)!=(v&65535))return i=Zt,d.msg="invalid stored block lengths",f=-3,e.bitb=v,e.bitk=_,d.avail_in=D,d.total_in+=A-d.next_in_index,d.next_in_index=A,e.write=T,e.inflate_flush(d,f);r=v&65535,v=_=0,i=r!==0?ys:m!==0?Ai:fn;break;case ys:if(D===0||k===0&&(T==e.end&&e.read!==0&&(T=0,k=TD&&(g=D),g>k&&(g=k),e.win.set(d.read_buf(A,g),T),A+=g,D-=g,T+=g,k-=g,(r-=g)!==0)break;i=m!==0?Ai:fn;break;case bs:for(;_<14;){if(D!==0)f=0;else return e.bitb=v,e.bitk=_,d.avail_in=D,d.total_in+=A-d.next_in_index,d.next_in_index=A,e.write=T,e.inflate_flush(d,f);D--,v|=(d.read_byte(A++)&255)<<_,_+=8}if(o=g=v&16383,(g&31)>29||(g>>5&31)>29)return i=Zt,d.msg="too many length or distance symbols",f=-3,e.bitb=v,e.bitk=_,d.avail_in=D,d.total_in+=A-d.next_in_index,d.next_in_index=A,e.write=T,e.inflate_flush(d,f);if(g=258+(g&31)+(g>>5&31),!s||s.length>>=14,_-=14,a=0,i=xs;case xs:for(;a<4+(o>>>10);){for(;_<3;){if(D!==0)f=0;else return e.bitb=v,e.bitk=_,d.avail_in=D,d.total_in+=A-d.next_in_index,d.next_in_index=A,e.write=T,e.inflate_flush(d,f);D--,v|=(d.read_byte(A++)&255)<<_,_+=8}s[gs[a++]]=v&7,v>>>=3,_-=3}for(;a<19;)s[gs[a++]]=0;if(l[0]=7,g=E.inflate_trees_bits(s,l,c,y,d),g!=0)return f=g,f==-3&&(s=null,i=Zt),e.bitb=v,e.bitk=_,d.avail_in=D,d.total_in+=A-d.next_in_index,d.next_in_index=A,e.write=T,e.inflate_flush(d,f);a=0,i=ws;case ws:for(;g=o,!(a>=258+(g&31)+(g>>5&31));){let ee,z;for(g=l[0];_>>=g,_-=g,s[a++]=z;else{for(b=z==18?7:z-14,ee=z==18?11:3;_>>=g,_-=g,ee+=v&De[b],v>>>=b,_-=b,b=a,g=o,b+ee>258+(g&31)+(g>>5&31)||z==16&&b<1)return s=null,i=Zt,d.msg="invalid bit length repeat",f=-3,e.bitb=v,e.bitk=_,d.avail_in=D,d.total_in+=A-d.next_in_index,d.next_in_index=A,e.write=T,e.inflate_flush(d,f);z=z==16?s[b-1]:0;do s[b++]=z;while(--ee!==0);a=b}}if(c[0]=-1,L=[],j=[],Z=[],F=[],L[0]=9,j[0]=6,g=o,g=E.inflate_trees_dynamic(257+(g&31),1+(g>>5&31),s,L,j,Z,F,y,d),g!=0)return g==-3&&(s=null,i=Zt),f=g,e.bitb=v,e.bitk=_,d.avail_in=D,d.total_in+=A-d.next_in_index,d.next_in_index=A,e.write=T,e.inflate_flush(d,f);p.init(L[0],j[0],y,Z[0],y,F[0]),i=Ti;case Ti:if(e.bitb=v,e.bitk=_,d.avail_in=D,d.total_in+=A-d.next_in_index,d.next_in_index=A,e.write=T,(f=p.proc(e,d,f))!=1)return e.inflate_flush(d,f);if(f=0,p.free(d),A=d.next_in_index,D=d.avail_in,v=e.bitb,_=e.bitk,T=e.write,k=T15?(n.inflateEnd(e),-2):(n.wbits=i,e.istate.blocks=new Ld(e,1<>4)+8>a.wbits){a.mode=Et,e.msg="invalid win size",a.marker=5;break}a.mode=Es;case Es:if(e.avail_in===0)return r;if(r=i,e.avail_in--,e.total_in++,o=e.read_byte(e.next_in_index++)&255,((a.method<<8)+o)%31!==0){a.mode=Et,e.msg="incorrect header check",a.marker=5;break}if(!(o&Pd)){a.mode=Bn;break}a.mode=_s;case _s:if(e.avail_in===0)return r;r=i,e.avail_in--,e.total_in++,a.need=(e.read_byte(e.next_in_index++)&255)<<24&4278190080,a.mode=Ts;case Ts:if(e.avail_in===0)return r;r=i,e.avail_in--,e.total_in++,a.need+=(e.read_byte(e.next_in_index++)&255)<<16&16711680,a.mode=As;case As:if(e.avail_in===0)return r;r=i,e.avail_in--,e.total_in++,a.need+=(e.read_byte(e.next_in_index++)&255)<<8&65280,a.mode=ks;case ks:return e.avail_in===0?r:(r=i,e.avail_in--,e.total_in++,a.need+=e.read_byte(e.next_in_index++)&255,a.mode=Kr,2);case Kr:return a.mode=Et,e.msg="need dictionary",a.marker=0,-2;case Bn:if(r=a.blocks.proc(e,r),r==-3){a.mode=Et,a.marker=0;break}if(r==0&&(r=i),r!=1)return r;r=i,a.blocks.reset(e,a.was),a.mode=Ns;case Ns:return e.avail_in=0,1;case Et:return-3;default:return-2}},n.inflateSetDictionary=function(e,i,r){let o=0,a=r;if(!e||!e.istate||e.istate.mode!=Kr)return-2;let s=e.istate;return a>=1<0&&e.next_in_index!=y&&(l(e.next_in_index),y=e.next_in_index)}while(e.avail_in>0||e.avail_out===0);return c.length>1?(m=new Uint8Array(E),c.forEach(function(d){m.set(d,w),w+=d.length})):m=c[0]?new Uint8Array(c[0]):new Uint8Array,m}},t.flush=function(){e.inflateEnd()}}var Ds="/",db=new Date(2107,11,31),mb=new Date(1980,0,1),_e=void 0,dn="undefined",ki="function";var Un=class{constructor(t){return class extends TransformStream{constructor(e,i){let r=new t(i);super({transform(o,a){a.enqueue(r.append(o))},flush(o){let a=r.flush();a&&o.enqueue(a)}})}}}};var jd=64,Cs=2;try{typeof navigator!=dn&&navigator.hardwareConcurrency&&(Cs=navigator.hardwareConcurrency)}catch(n){}var Hd={chunkSize:512*1024,maxWorkers:Cs,terminateWorkerTimeout:5e3,useWebWorkers:!0,useCompressionStream:!0,workerScripts:_e,CompressionStreamNative:typeof CompressionStream!=dn&&CompressionStream,DecompressionStreamNative:typeof DecompressionStream!=dn&&DecompressionStream},Tt=Object.assign({},Hd);function Jr(){return Tt}function Is(n){return Math.max(n.chunkSize,jd)}function Ni(n){let{baseURL:t,chunkSize:e,maxWorkers:i,terminateWorkerTimeout:r,useCompressionStream:o,useWebWorkers:a,Deflate:s,Inflate:l,CompressionStream:c,DecompressionStream:p,workerScripts:m}=n;if(_t("baseURL",t),_t("chunkSize",e),_t("maxWorkers",i),_t("terminateWorkerTimeout",r),_t("useCompressionStream",o),_t("useWebWorkers",a),s&&(Tt.CompressionStream=new Un(s)),l&&(Tt.DecompressionStream=new Un(l)),_t("CompressionStream",c),_t("DecompressionStream",p),m!==_e){let{deflate:y,inflate:w}=m;if((y||w)&&(Tt.workerScripts||(Tt.workerScripts={})),y){if(!Array.isArray(y))throw new Error("workerScripts.deflate must be an array");Tt.workerScripts.deflate=y}if(w){if(!Array.isArray(w))throw new Error("workerScripts.inflate must be an array");Tt.workerScripts.inflate=w}}}function _t(n,t){t!==_e&&(Tt[n]=t)}var Fs=[];for(let n=0;n<256;n++){let t=n;for(let e=0;e<8;e++)t&1?t=t>>>1^3988292384:t=t>>>1;Fs[n]=t}var ct=class{constructor(t){this.crc=t||-1}append(t){let e=this.crc|0;for(let i=0,r=t.length|0;i>>8^Fs[(e^t[i])&255];this.crc=e}get(){return~this.crc}};var jn=class extends TransformStream{constructor(){let t,e=new ct;super({transform(i,r){e.append(i),r.enqueue(i)},flush(){let i=new Uint8Array(4);new DataView(i.buffer).setUint32(0,e.get()),t.value=i}}),t=this}};function Ls(n){if(typeof TextEncoder=="undefined"){n=unescape(encodeURIComponent(n));let t=new Uint8Array(n.length);for(let e=0;e0&&t&&(n[e-1]=Te.partial(t,n[e-1]&2147483648>>t-1,1)),n},partial(n,t,e){return n===32?t:(e?t|0:t<<32-n)+n*1099511627776},getPartial(n){return Math.round(n/1099511627776)||32},_shiftRight(n,t,e,i){for(i===void 0&&(i=[]);t>=32;t-=32)i.push(e),e=0;if(t===0)return i.concat(n);for(let a=0;a>>t),e=n[a]<<32-t;let r=n.length?n[n.length-1]:0,o=Te.getPartial(r);return i.push(Te.partial(t+o&31,t+o>32?e:i.pop(),1)),i}},Hn={bytes:{fromBits(n){let e=Te.bitLength(n)/8,i=new Uint8Array(e),r;for(let o=0;o>>24,r<<=8;return i},toBits(n){let t=[],e,i=0;for(e=0;e9007199254740991)throw new Error("Cannot hash more than 2^53 - 1 bits");let o=new Uint32Array(e),a=0;for(let s=t.blockSize+i-(t.blockSize+i&t.blockSize-1);s<=r;s+=t.blockSize)t._block(o.subarray(16*a,16*(a+1))),a+=1;return e.splice(0,16*a),t}finalize(){let n=this,t=n._buffer,e=n._h;t=Te.concat(t,[Te.partial(1,1)]);for(let i=t.length+2;i&15;i++)t.push(0);for(t.push(Math.floor(n._length/4294967296)),t.push(n._length|0);t.length;)n._block(t.splice(0,16));return n.reset(),e}_f(n,t,e,i){if(n<=19)return t&e|~t&i;if(n<=39)return t^e^i;if(n<=59)return t&e|t&i|e&i;if(n<=79)return t^e^i}_S(n,t){return t<>>32-n}_block(n){let t=this,e=t._h,i=Array(80);for(let c=0;c<16;c++)i[c]=n[c];let r=e[0],o=e[1],a=e[2],s=e[3],l=e[4];for(let c=0;c<=79;c++){c>=16&&(i[c]=t._S(1,i[c-3]^i[c-8]^i[c-14]^i[c-16]));let p=t._S(5,r)+t._f(c,o,a,s)+l+i[c]+t._key[Math.floor(c/20)]|0;l=s,s=a,a=t._S(30,o),o=r,r=p}e[0]=e[0]+r|0,e[1]=e[1]+o|0,e[2]=e[2]+a|0,e[3]=e[3]+s|0,e[4]=e[4]+l|0}};var Qr={};Qr.aes=class{constructor(n){let t=this;t._tables=[[[],[],[],[],[]],[[],[],[],[],[]]],t._tables[0][0][0]||t._precompute();let e=t._tables[0][4],i=t._tables[1],r=n.length,o,a,s,l=1;if(r!==4&&r!==6&&r!==8)throw new Error("invalid aes key size");for(t._key=[a=n.slice(0),s=[]],o=r;o<4*r+28;o++){let c=a[o-1];(o%r===0||r===8&&o%r===4)&&(c=e[c>>>24]<<24^e[c>>16&255]<<16^e[c>>8&255]<<8^e[c&255],o%r===0&&(c=c<<8^c>>>24^l<<24,l=l<<1^(l>>7)*283)),a[o]=a[o-r]^c}for(let c=0;o;c++,o--){let p=a[c&3?o:o-4];o<=4||c<4?s[c]=p:s[c]=i[0][e[p>>>24]]^i[1][e[p>>16&255]]^i[2][e[p>>8&255]]^i[3][e[p&255]]}}encrypt(n){return this._crypt(n,0)}decrypt(n){return this._crypt(n,1)}_precompute(){let n=this._tables[0],t=this._tables[1],e=n[4],i=t[4],r=[],o=[],a,s,l,c;for(let p=0;p<256;p++)o[(r[p]=p<<1^(p>>7)*283)^p]=p;for(let p=a=0;!e[p];p^=s||1,a=o[a]||1){let m=a^a<<1^a<<2^a<<3^a<<4;m=m>>8^m&255^99,e[p]=m,i[m]=p,c=r[l=r[s=r[p]]];let y=c*16843009^l*65537^s*257^p*16843008,w=r[m]*257^m*16843008;for(let E=0;E<4;E++)n[E][p]=w=w<<24^w>>>8,t[E][m]=y=y<<24^y>>>8}for(let p=0;p<5;p++)n[p]=n[p].slice(0),t[p]=t[p].slice(0)}_crypt(n,t){if(n.length!==4)throw new Error("invalid aes block size");let e=this._key[t],i=e.length/4-2,r=[0,0,0,0],o=this._tables[t],a=o[0],s=o[1],l=o[2],c=o[3],p=o[4],m=n[0]^e[0],y=n[t?3:1]^e[1],w=n[2]^e[2],E=n[t?1:3]^e[3],d=4,f,g,v;for(let _=0;_>>24]^s[y>>16&255]^l[w>>8&255]^c[E&255]^e[d],g=a[y>>>24]^s[w>>16&255]^l[E>>8&255]^c[m&255]^e[d+1],v=a[w>>>24]^s[E>>16&255]^l[m>>8&255]^c[y&255]^e[d+2],E=a[E>>>24]^s[m>>16&255]^l[y>>8&255]^c[w&255]^e[d+3],d+=4,m=f,y=g,w=v;for(let _=0;_<4;_++)r[t?3&-_:_]=p[m>>>24]<<24^p[y>>16&255]<<16^p[w>>8&255]<<8^p[E&255]^e[d++],f=m,m=y,y=w,w=E,E=f;return r}};var Ms={getRandomValues(n){let t=new Uint32Array(n.buffer),e=i=>{let r=987654321,o=4294967295;return function(){return r=36969*(r&65535)+(r>>16)&o,i=18e3*(i&65535)+(i>>16)&o,(((r<<16)+i&o)/4294967296+.5)*(Math.random()>.5?1:-1)}};for(let i=0,r;i>24&255)===255){let t=n>>16&255,e=n>>8&255,i=n&255;t===255?(t=0,e===255?(e=0,i===255?i=0:++i):++e):++t,n=0,n+=t<<16,n+=e<<8,n+=i}else n+=1<<24;return n}incCounter(n){(n[0]=this.incWord(n[0]))===0&&(n[1]=this.incWord(n[1]))}calculate(n,t,e){let i;if(!(i=t.length))return[];let r=Te.bitLength(t);for(let o=0;o>5)+1<<2,o,a,s,l,c,p=new ArrayBuffer(r),m=new DataView(p),y=0,w=Te;for(t=Hn.bytes.toBits(t),c=1;y<(r||1);c++){for(o=a=n.encrypt(w.concat(t,[c])),s=1;sr&&(n=new e().update(n).finalize());for(let o=0;othis.resolveReady=o),password:t,signed:e,strength:i-1,pending:new Uint8Array})},async transform(o,a){let s=this,{password:l,strength:c,resolveReady:p,ready:m}=s;l?(await Qd(s,c,l,Fe(o,0,Wn[c]+2)),o=Fe(o,Wn[c]+2),r?a.error(new Error(pt)):p()):await m;let y=new Uint8Array(o.length-Nt-(o.length-Nt)%mn);a.enqueue(Ws(s,o,y,0,Nt,!0))},async flush(o){let{signed:a,ctr:s,hmac:l,pending:c,ready:p}=this;await p;let m=Fe(c,0,c.length-Nt),y=Fe(c,c.length-Nt),w=new Uint8Array;if(m.length){let E=Yn(Je,m);l.update(E);let d=s.update(E);w=Zn(Je,d)}if(a){let E=Fe(Zn(Je,l.digest()),0,Nt);for(let d=0;dthis.resolveReady=r),password:t,strength:e-1,pending:new Uint8Array})},async transform(r,o){let a=this,{password:s,strength:l,resolveReady:c,ready:p}=a,m=new Uint8Array;s?(m=await em(a,l,s),c()):await p;let y=new Uint8Array(m.length+r.length-r.length%mn);y.set(m,0),o.enqueue(Ws(a,r,y,m.length,0))},async flush(r){let{ctr:o,hmac:a,pending:s,ready:l}=this;await l;let c=new Uint8Array;if(s.length){let p=o.update(Yn(Je,s));a.update(p),c=Zn(Je,p)}i.signature=Zn(Je,a.digest()).slice(0,Nt),r.enqueue(no(c,i.signature))}}),i=this}};function Ws(n,t,e,i,r,o){let{ctr:a,hmac:s,pending:l}=n,c=t.length-r;l.length&&(t=no(l,t),e=im(e,c-c%mn));let p;for(p=0;p<=c-mn;p+=mn){let m=Yn(Je,Fe(t,p,p+mn));o&&s.update(m);let y=a.update(m);o||s.update(y),e.set(Zn(Je,y),p+i)}return n.pending=Fe(t,p),e}async function Qd(n,t,e,i){let r=await Zs(n,t,e,Fe(i,0,Wn[t])),o=Fe(i,Wn[t]);if(r[0]!=o[0]||r[1]!=o[1])throw new Error(kt)}async function em(n,t,e){let i=Si(new Uint8Array(Wn[t])),r=await Zs(n,t,e,i);return no(i,r)}async function Zs(n,t,e,i){n.password=null;let r=Ls(e),o=await tm(Wd,r,zd,!1,Gd),a=await nm(Object.assign({salt:i},to),o,8*(qn[t]*2+2)),s=new Uint8Array(a),l=Yn(Je,Fe(s,0,qn[t])),c=Yn(Je,Fe(s,qn[t],qn[t]*2)),p=Fe(s,qn[t]*2);return Object.assign(n,{keys:{key:l,authentication:c,passwordVerification:p},ctr:new Xd(new Kd(l),Array.from(Vd)),hmac:new Jd(c)}),p}async function tm(n,t,e,i,r){if($s)try{return await zn.importKey(n,t,e,i,r)}catch(o){return $s=!1,At.importKey(t)}else return At.importKey(t)}async function nm(n,t,e){if(Bs)try{return await zn.deriveBits(n,t,e)}catch(i){return Bs=!1,At.pbkdf2(t,n.salt,to.iterations,e)}else return At.pbkdf2(t,n.salt,to.iterations,e)}function no(n,t){let e=n;return n.length+t.length&&(e=new Uint8Array(n.length+t.length),e.set(n,0),e.set(t,n.length)),e}function im(n,t){if(t&&t>n.length){let e=n;n=new Uint8Array(t),n.set(e,0)}return n}function Fe(n,t,e){return n.subarray(t,e)}function Zn(n,t){return n.fromBits(t)}function Yn(n,t){return n.toBits(t)}var hn=12,Ci=class extends TransformStream{constructor({password:t,passwordVerification:e,checkPasswordOnly:i}){super({start(){Object.assign(this,{password:t,passwordVerification:e}),Vs(this,t)},transform(r,o){let a=this;if(a.password){let s=Ys(a,r.subarray(0,hn));if(a.password=null,s[hn-1]!=a.passwordVerification)throw new Error(kt);r=r.subarray(hn)}i?o.error(new Error(pt)):o.enqueue(Ys(a,r))}})}},Ii=class extends TransformStream{constructor({password:t,passwordVerification:e}){super({start(){Object.assign(this,{password:t,passwordVerification:e}),Vs(this,t)},transform(i,r){let o=this,a,s;if(o.password){o.password=null;let l=Si(new Uint8Array(hn));l[hn-1]=o.passwordVerification,a=new Uint8Array(i.length+l.length),a.set(zs(o,l),0),s=hn}else a=new Uint8Array(i.length),s=0;a.set(zs(o,i),s),r.enqueue(a)}})}};function Ys(n,t){let e=new Uint8Array(t.length);for(let i=0;i>>24]),r=~n.crcKey2.get(),n.keys=[e,i,r]}function Ks(n){let t=n.keys[2]|2;return Xs(Math.imul(t,t^1)>>>8)}function Xs(n){return n&255}function Gs(n){return n&4294967295}var Js="deflate-raw",Fi=class extends TransformStream{constructor(t,{chunkSize:e,CompressionStream:i,CompressionStreamNative:r}){super({});let{compressed:o,encrypted:a,useCompressionStream:s,zipCrypto:l,signed:c,level:p}=t,m=this,y,w,E=Qs(super.readable);(!a||l)&&c&&(y=new jn,E=Qe(E,y)),o&&(E=tl(E,s,{level:p,chunkSize:e},r,i)),a&&(l?E=Qe(E,new Ii(t)):(w=new Oi(t),E=Qe(E,w))),el(m,E,async()=>{let d;a&&!l&&(d=w.signature),(!a||l)&&c&&(d=new DataView(y.value.buffer).getUint32(0)),m.signature=d})}},Li=class extends TransformStream{constructor(t,{chunkSize:e,DecompressionStream:i,DecompressionStreamNative:r}){super({});let{zipCrypto:o,encrypted:a,signed:s,signature:l,compressed:c,useCompressionStream:p}=t,m,y,w=Qs(super.readable);a&&(o?w=Qe(w,new Ci(t)):(y=new Ri(t),w=Qe(w,y))),c&&(w=tl(w,p,{chunkSize:e},r,i)),(!a||o)&&s&&(m=new jn,w=Qe(w,m)),el(this,w,async()=>{if((!a||o)&&s){let E=new DataView(m.value.buffer);if(l!=E.getUint32(0,!1))throw new Error(Yt)}})}};function Qs(n){return Qe(n,new TransformStream({transform(t,e){t&&t.length&&e.enqueue(t)}}))}function el(n,t,e){t=Qe(t,new TransformStream({flush:e})),Object.defineProperty(n,"readable",{get(){return t}})}function tl(n,t,e,i,r){try{let o=t&&i?i:r;n=Qe(n,new o(Js,e))}catch(o){if(t)n=Qe(n,new r(Js,e));else throw o}return n}function Qe(n,t){return n.pipeThrough(t)}var nl="message",il="start",rl="pull",ro="data",ol="ack",al="close",sl="deflate",Mi="inflate";var Pi=class extends TransformStream{constructor(t,e){super({});let i=this,{codecType:r}=t,o;r.startsWith(sl)?o=Fi:r.startsWith(Mi)&&(o=Li);let a=0,s=new o(t,e),l=super.readable,c=new TransformStream({transform(p,m){p&&p.length&&(a+=p.length,m.enqueue(p))},flush(){let{signature:p}=s;Object.assign(i,{signature:p,size:a})}});Object.defineProperty(i,"readable",{get(){return l.pipeThrough(s).pipeThrough(c)}})}};var rm=typeof Worker!=dn;var gn=class{constructor(t,{readable:e,writable:i},{options:r,config:o,streamOptions:a,useWebWorkers:s,transferStreams:l,scripts:c},p){let{signal:m}=a;return Object.assign(t,{busy:!0,readable:e.pipeThrough(new ao(e,a,o),{signal:m}),writable:i,options:Object.assign({},r),scripts:c,transferStreams:l,terminate(){let{worker:y,busy:w}=t;y&&!w&&(y.terminate(),t.interface=null)},onTaskFinished(){t.busy=!1,p(t)}}),(s&&rm?am:om)(t,o)}},ao=class extends TransformStream{constructor(t,{onstart:e,onprogress:i,size:r,onend:o},{chunkSize:a}){let s=0;super({start(){e&&oo(e,r)},async transform(l,c){s+=l.length,i&&await oo(i,s,r),c.enqueue(l)},flush(){t.size=s,o&&oo(o,s)}},{highWaterMark:1,size:()=>a})}};async function oo(n,...t){try{await n(...t)}catch(e){}}function om(n,t){return{run:()=>sm(n,t)}}function am(n,{baseURL:t,chunkSize:e}){return n.interface||Object.assign(n,{worker:pm(n.scripts[0],t,n),interface:{run:()=>lm(n,{chunkSize:e})}}),n.interface}async function sm({options:n,readable:t,writable:e,onTaskFinished:i},r){let o=new Pi(n,r);try{await t.pipeThrough(o).pipeTo(e,{preventClose:!0,preventAbort:!0});let{signature:a,size:s}=o;return{signature:a,size:s}}finally{i()}}async function lm(n,t){let e,i,r=new Promise((y,w)=>{e=y,i=w});Object.assign(n,{reader:null,writer:null,resolveResult:e,rejectResult:i,result:r});let{readable:o,options:a,scripts:s}=n,{writable:l,closed:c}=cm(n.writable);so({type:il,scripts:s.slice(1),options:a,config:t,readable:o,writable:l},n)||Object.assign(n,{reader:o.getReader(),writer:l.getWriter()});let m=await r;try{await l.getWriter().close()}catch(y){}return await c,m}function cm(n){let t=n.getWriter(),e,i=new Promise(o=>e=o);return{writable:new WritableStream({async write(o){await t.ready,await t.write(o)},close(){t.releaseLock(),e()},abort(o){return t.abort(o)}}),closed:i}}var ll=!0,cl=!0;function pm(n,t,e){let i={type:"module"},r,o;typeof n==ki&&(n=n());try{r=new URL(n,t)}catch(a){r=n}if(ll)try{o=new Worker(r)}catch(a){ll=!1,o=new Worker(r,i)}else o=new Worker(r,i);return o.addEventListener(nl,a=>um(a,e)),o}function so(n,{worker:t,writer:e,onTaskFinished:i,transferStreams:r}){try{let{value:o,readable:a,writable:s}=n,l=[];if(o&&(n.value=o.buffer,l.push(n.value)),r&&cl?(a&&l.push(a),s&&l.push(s)):n.readable=n.writable=null,l.length)try{return t.postMessage(n,l),!0}catch(c){cl=!1,n.readable=n.writable=null,t.postMessage(n)}else t.postMessage(n)}catch(o){throw e&&e.releaseLock(),i(),o}}async function um({data:n},t){let{type:e,value:i,messageId:r,result:o,error:a}=n,{reader:s,writer:l,resolveResult:c,rejectResult:p,onTaskFinished:m}=t;try{if(a){let{message:w,stack:E,code:d,name:f}=a,g=new Error(w);Object.assign(g,{stack:E,code:d,name:f}),y(g)}else{if(e==rl){let{value:w,done:E}=await s.read();so({type:ro,value:w,done:E,messageId:r},t)}e==ro&&(await l.ready,await l.write(new Uint8Array(i)),so({type:ol,messageId:r},t)),e==al&&y(null,o)}}catch(w){y(w)}function y(w,E){w?p(w):c(E),l&&l.releaseLock(),m()}}var zt=[],lo=[];var pl=0;async function fl(n,t){let{options:e,config:i}=t,{transferStreams:r,useWebWorkers:o,useCompressionStream:a,codecType:s,compressed:l,signed:c,encrypted:p}=e,{workerScripts:m,maxWorkers:y,terminateWorkerTimeout:w}=i;t.transferStreams=r||r===_e;let E=!l&&!c&&!p&&!t.transferStreams;t.useWebWorkers=!E&&(o||o===_e&&i.useWebWorkers),t.scripts=t.useWebWorkers&&m?m[s]:[],e.useCompressionStream=a||a===_e&&i.useCompressionStream;let d,f=zt.find(v=>!v.busy);if(f)ul(f),d=new gn(f,n,t,g);else if(zt.lengthlo.push({resolve:v,stream:n,workerOptions:t}));return d.run();function g(v){if(lo.length){let[{resolve:_,stream:A,workerOptions:D}]=lo.splice(0,1);_(new gn(v,A,D,g))}else v.worker?(ul(v),Number.isFinite(w)&&w>=0&&(v.terminateTimeout=setTimeout(()=>{zt=zt.filter(_=>_!=v),v.terminate()},w))):zt=zt.filter(_=>_!=v)}}function ul(n){let{terminateTimeout:t}=n;t&&(clearTimeout(t),n.terminateTimeout=null)}var fm="Writer iterator completed too soon";var dm="Content-Type";var mm=64*1024,dl="writable",Gn=class{constructor(){this.size=0}init(){this.initialized=!0}},yn=class extends Gn{get readable(){let t=this,{chunkSize:e=mm}=t,i=new ReadableStream({start(){this.chunkOffset=0},async pull(r){let{offset:o=0,size:a,diskNumberStart:s}=i,{chunkOffset:l}=this;r.enqueue(await xe(t,o+l,Math.min(e,a-l),s)),l+e>a?r.close():this.chunkOffset+=e}});return i}};var St=class extends yn{constructor(t){super(),Object.assign(this,{blob:t,size:t.size})}async readUint8Array(t,e){let i=this,r=t+e,a=await(t||re&&(a=a.slice(t,r)),new Uint8Array(a)}},Vn=class extends Gn{constructor(t){super();let e=this,i=new TransformStream,r=[];t&&r.push([dm,t]),Object.defineProperty(e,dl,{get(){return i.writable}}),e.blob=new Response(i.readable,{headers:r}).blob()}getData(){return this.blob}};var $i=class extends Vn{constructor(t){super(t),Object.assign(this,{encoding:t,utf8:!t||t.toLowerCase()=="utf-8"})}async getData(){let{encoding:t,utf8:e}=this,i=await super.getData();if(i.text&&e)return i.text();{let r=new FileReader;return new Promise((o,a)=>{Object.assign(r,{onload:({target:s})=>o(s.result),onerror:()=>a(r.error)}),r.readAsText(i,t)})}}};var co=class extends yn{constructor(t){super(),this.readers=t}async init(){let t=this,{readers:e}=t;t.lastDiskNumber=0,t.lastDiskOffset=0,await Promise.all(e.map(async(i,r)=>{await i.init(),r!=e.length-1&&(t.lastDiskOffset+=i.size),t.size+=i.size})),super.init()}async readUint8Array(t,e,i=0){let r=this,{readers:o}=this,a,s=i;s==-1&&(s=o.length-1);let l=t;for(;l>=o[s].size;)l-=o[s].size,s++;let c=o[s],p=c.size;if(l+e<=p)a=await xe(c,l,e);else{let m=p-l;a=new Uint8Array(e),a.set(await xe(c,l,m)),a.set(await r.readUint8Array(t+m,e-m,i),m)}return r.lastDiskNumber=Math.max(s,r.lastDiskNumber),a}},Bi=class extends Gn{constructor(t,e=4294967295){super();let i=this;Object.assign(i,{diskNumber:0,diskOffset:0,size:0,maxSize:e,availableSize:e});let r,o,a,s=new WritableStream({async write(p){let{availableSize:m}=i;if(a)p.length>=m?(await l(p.slice(0,m)),await c(),i.diskOffset+=r.size,i.diskNumber++,a=null,await this.write(p.slice(m))):await l(p);else{let{value:y,done:w}=await t.next();if(w&&!y)throw new Error(fm);r=y,r.size=0,r.maxSize&&(i.maxSize=r.maxSize),i.availableSize=i.maxSize,await Kn(r),o=y.writable,a=o.getWriter(),await this.write(p)}},async close(){await a.ready,await c()}});Object.defineProperty(i,dl,{get(){return s}});async function l(p){let m=p.length;m&&(await a.ready,await a.write(p),r.size+=m,i.size+=m,i.availableSize-=m)}async function c(){o.size=r.size,await a.close()}}};async function Kn(n,t){n.init&&!n.initialized&&await n.init(t)}function ml(n){return Array.isArray(n)&&(n=new co(n)),n instanceof ReadableStream&&(n={readable:n}),n}function hl(n){n.writable===_e&&typeof n.next==ki&&(n=new Bi(n)),n instanceof WritableStream&&(n={writable:n});let{writable:t}=n;return t.size===_e&&(t.size=0),n instanceof Bi||Object.assign(n,{diskNumber:0,diskOffset:0,availableSize:1/0,maxSize:1/0}),n}function xe(n,t,e,i){return n.readUint8Array(t,e,i)}var gl="\0\u263A\u263B\u2665\u2666\u2663\u2660\u2022\u25D8\u25CB\u25D9\u2642\u2640\u266A\u266B\u263C\u25BA\u25C4\u2195\u203C\xB6\xA7\u25AC\u21A8\u2191\u2193\u2192\u2190\u221F\u2194\u25B2\u25BC !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~\u2302\xC7\xFC\xE9\xE2\xE4\xE0\xE5\xE7\xEA\xEB\xE8\xEF\xEE\xEC\xC4\xC5\xC9\xE6\xC6\xF4\xF6\xF2\xFB\xF9\xFF\xD6\xDC\xA2\xA3\xA5\u20A7\u0192\xE1\xED\xF3\xFA\xF1\xD1\xAA\xBA\xBF\u2310\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0 ".split(""),hm=gl.length==256;function yl(n){if(hm){let t="";for(let e=0;ethis[e]=t[e])}};var To="File format is not recognized",Pm="End of central directory not found",Mm="End of Zip64 central directory not found",$m="End of Zip64 central directory locator not found",Bm="Central directory header not found",Um="Local file header not found",jm="Zip64 extra field not found",Hm="File contains encrypted entry",qm="Encryption method not supported",kl="Compression method not supported",Nl="Split zip file",Sl="utf-8",Rl="cp437",Wm=[[ho,4294967295],[go,4294967295],[yo,4294967295],[ji,65535]],Zm={[65535]:{getValue:ae,bytes:4},[4294967295]:{getValue:qi,bytes:8}},Vt=class{constructor(t,e={}){Object.assign(this,{reader:ml(t),options:e,config:Jr()})}async*getEntriesGenerator(t={}){let e=this,{reader:i}=e,{config:r}=e;if(await Kn(i),(i.size===_e||!i.readUint8Array)&&(i=new St(await new Response(i.readable).blob()),await Kn(i)),i.size<22)throw new Error(To);i.chunkSize=Is(r);let o=await Km(i,101010256,i.size,22,65535*16);if(!o){let O=await xe(i,0,4),S=he(O);throw ae(S)==134695760?new Error(Nl):new Error(Pm)}let a=he(o),s=ae(a,12),l=ae(a,16),c=o.offset,p=me(a,20),m=c+22+p,y=me(a,4),w=i.lastDiskNumber||0,E=me(a,6),d=me(a,8),f=0,g=0;if(l==4294967295||s==4294967295||d==65535||E==65535){let O=await xe(i,o.offset-20,20),S=he(O);if(ae(S,0)!=117853008)throw new Error(Mm);l=qi(S,8);let M=await xe(i,l,56,-1),L=he(M),j=o.offset-20-56;if(ae(L,0)!=101075792&&l!=j){let Z=l;l=j,f=l-Z,M=await xe(i,l,56,-1),L=he(M)}if(ae(L,0)!=101075792)throw new Error($m);y==65535&&(y=ae(L,16)),E==65535&&(E=ae(L,20)),d==65535&&(d=qi(L,32)),s==4294967295&&(s=qi(L,40)),l-=s}if(w!=y)throw new Error(Nl);if(l<0||l>=i.size)throw new Error(To);let v=0,_=await xe(i,l,s,E),A=he(_);if(s){let O=o.offset-s;if(ae(A,v)!=33639248&&l!=O){let S=l;l=O,f=l-S,_=await xe(i,l,s,E),A=he(_)}}let D=o.offset-l-(i.lastDiskOffset||0);if(s!=D&&D>=0&&(s=D,_=await xe(i,l,s,E),A=he(_)),l<0||l>=i.size)throw new Error(To);let T=Le(e,t,"filenameEncoding"),k=Le(e,t,"commentEncoding");for(let O=0;OS.getData(N,R,I),v=U;let{onprogress:x}=t;if(x)try{await x(O+1,d,new Xn(S))}catch(N){}yield R}let b=Le(e,t,"extractPrependedData"),C=Le(e,t,"extractAppendedData");return b&&(e.prependedData=g>0?await xe(i,0,g):new Uint8Array),e.comment=p?await xe(i,c+22,p):new Uint8Array,C&&(e.appendedData=m>>8&255:y>>>24&255),signature:y,compressed:c!=0,encrypted:A,useWebWorkers:Le(r,i,"useWebWorkers"),useCompressionStream:Le(r,i,"useCompressionStream"),transferStreams:Le(r,i,"transferStreams"),checkPasswordOnly:O},config:p,streamOptions:{signal:C,size:k,onstart:M,onprogress:L,onend:j}},F=0;try{({outputSize:F}=await fl({readable:b,writable:S},Z))}catch(ee){if(!O||ee.message!=pt)throw ee}finally{let ee=Le(r,i,"preventClose");S.size+=F,!ee&&!S.locked&&await S.getWriter().close()}return O?void 0:t.getData?t.getData():S}};function Dl(n,t,e){let i=n.rawBitFlag=me(t,e+2),r=(i&1)==1,o=ae(t,e+6);Object.assign(n,{encrypted:r,version:me(t,e),bitFlag:{level:(i&6)>>1,dataDescriptor:(i&8)==8,languageEncodingFlag:(i&2048)==2048},rawLastModDate:o,lastModDate:Xm(o),filenameLength:me(t,e+22),extraFieldLength:me(t,e+24)})}async function Cl(n,t,e,i){let{rawExtraField:r}=t,o=t.extraField=new Map,a=he(new Uint8Array(r)),s=0;try{for(;st[r]==o);for(let r=0,o=0;r{if(n.data.length>=a+4){let c=ae(e,a);t[s]=n[s]=new Date(c*1e3);let p=o[l];n[p]=c}a+=4})}async function Km(n,t,e,i,r){let o=new Uint8Array(4),a=he(o);Jm(a,0,t);let s=i+r;return await l(i)||await l(Math.min(s,e));async function l(c){let p=e-c,m=await xe(n,p,c);for(let y=m.length-i;y>=0;y--)if(m[y]==o[0]&&m[y+1]==o[1]&&m[y+2]==o[2]&&m[y+3]==o[3])return{offset:p+y,buffer:m.slice(y,y+i).buffer}}}function Le(n,t,e){return t[e]===_e?n.options[e]:t[e]}function Xm(n){let t=(n&4294901760)>>16,e=n&65535;try{return new Date(1980+((t&65024)>>9),((t&480)>>5)-1,t&31,(e&63488)>>11,(e&2016)>>5,(e&31)*2,0)}catch(i){}}function Ao(n){return new Date(Number(n/BigInt(1e4)-BigInt(116444736e5)))}function bn(n,t){return n.getUint8(t)}function me(n,t){return n.getUint16(t,!0)}function ae(n,t){return n.getUint32(t,!0)}function qi(n,t){return Number(n.getBigUint64(t,!0))}function Jm(n,t,e){n.setUint32(t,e,!0)}function he(n){return new DataView(n.buffer)}Ni({Inflate:Os});var Kt=require("obsidian");function Il(n){let t=()=>URL.createObjectURL(new Blob([`const{Array:e,Object:t,Number:n,Math:r,Error:s,Uint8Array:i,Uint16Array:o,Uint32Array:c,Int32Array:f,Map:a,DataView:l,Promise:u,TextEncoder:w,crypto:h,postMessage:d,TransformStream:p,ReadableStream:y,WritableStream:m,CompressionStream:b,DecompressionStream:g}=self;class k{constructor(e){return class extends p{constructor(t,n){const r=new e(n);super({transform(e,t){t.enqueue(r.append(e))},flush(e){const t=r.flush();t&&e.enqueue(t)}})}}}}const v=[];for(let e=0;256>e;e++){let t=e;for(let e=0;8>e;e++)1&t?t=t>>>1^3988292384:t>>>=1;v[e]=t}class S{constructor(e){this.t=e||-1}append(e){let t=0|this.t;for(let n=0,r=0|e.length;r>n;n++)t=t>>>8^v[255&(t^e[n])];this.t=t}get(){return~this.t}}class z extends p{constructor(){let e;const t=new S;super({transform(e,n){t.append(e),n.enqueue(e)},flush(){const n=new i(4);new l(n.buffer).setUint32(0,t.get()),e.value=n}}),e=this}}const C={concat(e,t){if(0===e.length||0===t.length)return e.concat(t);const n=e[e.length-1],r=C.i(n);return 32===r?e.concat(t):C.o(t,r,0|n,e.slice(0,e.length-1))},l(e){const t=e.length;if(0===t)return 0;const n=e[t-1];return 32*(t-1)+C.i(n)},u(e,t){if(32*e.length0&&t&&(e[n-1]=C.h(t,e[n-1]&2147483648>>t-1,1)),e},h:(e,t,n)=>32===e?t:(n?0|t:t<<32-e)+1099511627776*e,i:e=>r.round(e/1099511627776)||32,o(e,t,n,r){for(void 0===r&&(r=[]);t>=32;t-=32)r.push(n),n=0;if(0===t)return r.concat(e);for(let s=0;s>>t),n=e[s]<<32-t;const s=e.length?e[e.length-1]:0,i=C.i(s);return r.push(C.h(t+i&31,t+i>32?n:r.pop(),1)),r}},x={p:{m(e){const t=C.l(e)/8,n=new i(t);let r;for(let s=0;t>s;s++)0==(3&s)&&(r=e[s/4]),n[s]=r>>>24,r<<=8;return n},g(e){const t=[];let n,r=0;for(n=0;n9007199254740991)throw new s("Cannot hash more than 2^53 - 1 bits");const o=new c(n);let f=0;for(let e=t.blockSize+r-(t.blockSize+r&t.blockSize-1);i>=e;e+=t.blockSize)t.I(o.subarray(16*f,16*(f+1))),f+=1;return n.splice(0,16*f),t}D(){const e=this;let t=e.C;const n=e.S;t=C.concat(t,[C.h(1,1)]);for(let e=t.length+2;15&e;e++)t.push(0);for(t.push(r.floor(e._/4294967296)),t.push(0|e._);t.length;)e.I(t.splice(0,16));return e.reset(),n}V(e,t,n,r){return e>19?e>39?e>59?e>79?void 0:t^n^r:t&n|t&r|n&r:t^n^r:t&n|~t&r}P(e,t){return t<>>32-e}I(t){const n=this,s=n.S,i=e(80);for(let e=0;16>e;e++)i[e]=t[e];let o=s[0],c=s[1],f=s[2],a=s[3],l=s[4];for(let e=0;79>=e;e++){16>e||(i[e]=n.P(1,i[e-3]^i[e-8]^i[e-14]^i[e-16]));const t=n.P(5,o)+n.V(e,c,f,a)+l+i[e]+n.v[r.floor(e/20)]|0;l=a,a=f,f=n.P(30,c),c=o,o=t}s[0]=s[0]+o|0,s[1]=s[1]+c|0,s[2]=s[2]+f|0,s[3]=s[3]+a|0,s[4]=s[4]+l|0}},A={getRandomValues(e){const t=new c(e.buffer),n=e=>{let t=987654321;const n=4294967295;return()=>(t=36969*(65535&t)+(t>>16)&n,(((t<<16)+(e=18e3*(65535&e)+(e>>16)&n)&n)/4294967296+.5)*(r.random()>.5?1:-1))};for(let s,i=0;inew I.R(x.p.g(e)),B(e,t,n,r){if(n=n||1e4,0>r||0>n)throw new s("invalid params to pbkdf2");const i=1+(r>>5)<<2;let o,c,f,a,u;const w=new ArrayBuffer(i),h=new l(w);let d=0;const p=C;for(t=x.p.g(t),u=1;(i||1)>d;u++){for(o=c=e.encrypt(p.concat(t,[u])),f=1;n>f;f++)for(c=e.encrypt(c),a=0;ad&&fs&&(e=(new n).update(e).D());for(let t=0;s>t;t++)r[0][t]=909522486^e[t],r[1][t]=1549556828^e[t];t.K[0].update(r[0]),t.K[1].update(r[1]),t.U=new n(t.K[0])}reset(){const e=this;e.U=new e.M(e.K[0]),e.N=!1}update(e){this.N=!0,this.U.update(e)}digest(){const e=this,t=e.U.D(),n=new e.M(e.K[1]).update(t).D();return e.reset(),n}encrypt(e){if(this.N)throw new s("encrypt on already updated hmac called!");return this.update(e),this.digest(e)}}},D=void 0!==h&&"function"==typeof h.getRandomValues,V="Invalid password",P="Invalid signature",R="zipjs-abort-check-password";function B(e){return D?h.getRandomValues(e):A.getRandomValues(e)}const E=16,M={name:"PBKDF2"},K=t.assign({hash:{name:"HMAC"}},M),U=t.assign({iterations:1e3,hash:{name:"SHA-1"}},M),N=["deriveBits"],O=[8,12,16],T=[16,24,32],W=10,j=[0,0,0,0],H="undefined",L="function",F=typeof h!=H,q=F&&h.subtle,G=F&&typeof q!=H,J=x.p,Q=class{constructor(e){const t=this;t.O=[[[],[],[],[],[]],[[],[],[],[],[]]],t.O[0][0][0]||t.T();const n=t.O[0][4],r=t.O[1],i=e.length;let o,c,f,a=1;if(4!==i&&6!==i&&8!==i)throw new s("invalid aes key size");for(t.v=[c=e.slice(0),f=[]],o=i;4*i+28>o;o++){let e=c[o-1];(o%i==0||8===i&&o%i==4)&&(e=n[e>>>24]<<24^n[e>>16&255]<<16^n[e>>8&255]<<8^n[255&e],o%i==0&&(e=e<<8^e>>>24^a<<24,a=a<<1^283*(a>>7))),c[o]=c[o-i]^e}for(let e=0;o;e++,o--){const t=c[3&e?o:o-4];f[e]=4>=o||4>e?t:r[0][n[t>>>24]]^r[1][n[t>>16&255]]^r[2][n[t>>8&255]]^r[3][n[255&t]]}}encrypt(e){return this.W(e,0)}decrypt(e){return this.W(e,1)}T(){const e=this.O[0],t=this.O[1],n=e[4],r=t[4],s=[],i=[];let o,c,f,a;for(let e=0;256>e;e++)i[(s[e]=e<<1^283*(e>>7))^e]=e;for(let l=o=0;!n[l];l^=c||1,o=i[o]||1){let i=o^o<<1^o<<2^o<<3^o<<4;i=i>>8^255&i^99,n[l]=i,r[i]=l,a=s[f=s[c=s[l]]];let u=16843009*a^65537*f^257*c^16843008*l,w=257*s[i]^16843008*i;for(let n=0;4>n;n++)e[n][l]=w=w<<24^w>>>8,t[n][i]=u=u<<24^u>>>8}for(let n=0;5>n;n++)e[n]=e[n].slice(0),t[n]=t[n].slice(0)}W(e,t){if(4!==e.length)throw new s("invalid aes block size");const n=this.v[t],r=n.length/4-2,i=[0,0,0,0],o=this.O[t],c=o[0],f=o[1],a=o[2],l=o[3],u=o[4];let w,h,d,p=e[0]^n[0],y=e[t?3:1]^n[1],m=e[2]^n[2],b=e[t?1:3]^n[3],g=4;for(let e=0;r>e;e++)w=c[p>>>24]^f[y>>16&255]^a[m>>8&255]^l[255&b]^n[g],h=c[y>>>24]^f[m>>16&255]^a[b>>8&255]^l[255&p]^n[g+1],d=c[m>>>24]^f[b>>16&255]^a[p>>8&255]^l[255&y]^n[g+2],b=c[b>>>24]^f[p>>16&255]^a[y>>8&255]^l[255&m]^n[g+3],g+=4,p=w,y=h,m=d;for(let e=0;4>e;e++)i[t?3&-e:e]=u[p>>>24]<<24^u[y>>16&255]<<16^u[m>>8&255]<<8^u[255&b]^n[g++],w=p,p=y,y=m,m=b,b=w;return i}},X=class{constructor(e,t){this.j=e,this.H=t,this.L=t}reset(){this.L=this.H}update(e){return this.F(this.j,e,this.L)}q(e){if(255==(e>>24&255)){let t=e>>16&255,n=e>>8&255,r=255&e;255===t?(t=0,255===n?(n=0,255===r?r=0:++r):++n):++t,e=0,e+=t<<16,e+=n<<8,e+=r}else e+=1<<24;return e}G(e){0===(e[0]=this.q(e[0]))&&(e[1]=this.q(e[1]))}F(e,t,n){let r;if(!(r=t.length))return[];const s=C.l(t);for(let s=0;r>s;s+=4){this.G(n);const r=e.encrypt(n);t[s]^=r[0],t[s+1]^=r[1],t[s+2]^=r[2],t[s+3]^=r[3]}return C.u(t,s)}},Y=I.R;let Z=F&&G&&typeof q.importKey==L,$=F&&G&&typeof q.deriveBits==L;class ee extends p{constructor({password:e,signed:n,encryptionStrength:r,checkPasswordOnly:o}){super({start(){t.assign(this,{ready:new u((e=>this.J=e)),password:e,signed:n,X:r-1,pending:new i})},async transform(e,t){const n=this,{password:r,X:c,J:f,ready:a}=n;r?(await(async(e,t,n,r)=>{const i=await re(e,t,n,ie(r,0,O[t])),o=ie(r,O[t]);if(i[0]!=o[0]||i[1]!=o[1])throw new s(V)})(n,c,r,ie(e,0,O[c]+2)),e=ie(e,O[c]+2),o?t.error(new s(R)):f()):await a;const l=new i(e.length-W-(e.length-W)%E);t.enqueue(ne(n,e,l,0,W,!0))},async flush(e){const{signed:t,Y:n,Z:r,pending:o,ready:c}=this;await c;const f=ie(o,0,o.length-W),a=ie(o,o.length-W);let l=new i;if(f.length){const e=ce(J,f);r.update(e);const t=n.update(e);l=oe(J,t)}if(t){const e=ie(oe(J,r.digest()),0,W);for(let t=0;W>t;t++)if(e[t]!=a[t])throw new s(P)}e.enqueue(l)}})}}class te extends p{constructor({password:e,encryptionStrength:n}){let r;super({start(){t.assign(this,{ready:new u((e=>this.J=e)),password:e,X:n-1,pending:new i})},async transform(e,t){const n=this,{password:r,X:s,J:o,ready:c}=n;let f=new i;r?(f=await(async(e,t,n)=>{const r=B(new i(O[t]));return se(r,await re(e,t,n,r))})(n,s,r),o()):await c;const a=new i(f.length+e.length-e.length%E);a.set(f,0),t.enqueue(ne(n,e,a,f.length,0))},async flush(e){const{Y:t,Z:n,pending:s,ready:o}=this;await o;let c=new i;if(s.length){const e=t.update(ce(J,s));n.update(e),c=oe(J,e)}r.signature=oe(J,n.digest()).slice(0,W),e.enqueue(se(c,r.signature))}}),r=this}}function ne(e,t,n,r,s,o){const{Y:c,Z:f,pending:a}=e,l=t.length-s;let u;for(a.length&&(t=se(a,t),n=((e,t)=>{if(t&&t>e.length){const n=e;(e=new i(t)).set(n,0)}return e})(n,l-l%E)),u=0;l-E>=u;u+=E){const e=ce(J,ie(t,u,u+E));o&&f.update(e);const s=c.update(e);o||f.update(s),n.set(oe(J,s),u+r)}return e.pending=ie(t,u),n}async function re(n,r,s,o){n.password=null;const c=(e=>{if(void 0===w){const t=new i((e=unescape(encodeURIComponent(e))).length);for(let n=0;n{if(!Z)return I.importKey(t);try{return await q.importKey("raw",t,n,!1,s)}catch(e){return Z=!1,I.importKey(t)}})(0,c,K,0,N),a=await(async(e,t,n)=>{if(!$)return I.B(t,e.salt,U.iterations,n);try{return await q.deriveBits(e,t,n)}catch(r){return $=!1,I.B(t,e.salt,U.iterations,n)}})(t.assign({salt:o},U),f,8*(2*T[r]+2)),l=new i(a),u=ce(J,ie(l,0,T[r])),h=ce(J,ie(l,T[r],2*T[r])),d=ie(l,2*T[r]);return t.assign(n,{keys:{key:u,$:h,passwordVerification:d},Y:new X(new Q(u),e.from(j)),Z:new Y(h)}),d}function se(e,t){let n=e;return e.length+t.length&&(n=new i(e.length+t.length),n.set(e,0),n.set(t,e.length)),n}function ie(e,t,n){return e.subarray(t,n)}function oe(e,t){return e.m(t)}function ce(e,t){return e.g(t)}class fe extends p{constructor({password:e,passwordVerification:n,checkPasswordOnly:r}){super({start(){t.assign(this,{password:e,passwordVerification:n}),we(this,e)},transform(e,t){const n=this;if(n.password){const t=le(n,e.subarray(0,12));if(n.password=null,t[11]!=n.passwordVerification)throw new s(V);e=e.subarray(12)}r?t.error(new s(R)):t.enqueue(le(n,e))}})}}class ae extends p{constructor({password:e,passwordVerification:n}){super({start(){t.assign(this,{password:e,passwordVerification:n}),we(this,e)},transform(e,t){const n=this;let r,s;if(n.password){n.password=null;const t=B(new i(12));t[11]=n.passwordVerification,r=new i(e.length+t.length),r.set(ue(n,t),0),s=12}else r=new i(e.length),s=0;r.set(ue(n,e),s),t.enqueue(r)}})}}function le(e,t){const n=new i(t.length);for(let r=0;r>>24]),i=~e.te.get(),e.keys=[n,s,i]}function de(e){const t=2|e.keys[2];return pe(r.imul(t,1^t)>>>8)}function pe(e){return 255&e}function ye(e){return 4294967295&e}const me="deflate-raw";class be extends p{constructor(e,{chunkSize:t,CompressionStream:n,CompressionStreamNative:r}){super({});const{compressed:s,encrypted:i,useCompressionStream:o,zipCrypto:c,signed:f,level:a}=e,u=this;let w,h,d=ke(super.readable);i&&!c||!f||(w=new z,d=ze(d,w)),s&&(d=Se(d,o,{level:a,chunkSize:t},r,n)),i&&(c?d=ze(d,new ae(e)):(h=new te(e),d=ze(d,h))),ve(u,d,(async()=>{let e;i&&!c&&(e=h.signature),i&&!c||!f||(e=new l(w.value.buffer).getUint32(0)),u.signature=e}))}}class ge extends p{constructor(e,{chunkSize:t,DecompressionStream:n,DecompressionStreamNative:r}){super({});const{zipCrypto:i,encrypted:o,signed:c,signature:f,compressed:a,useCompressionStream:u}=e;let w,h,d=ke(super.readable);o&&(i?d=ze(d,new fe(e)):(h=new ee(e),d=ze(d,h))),a&&(d=Se(d,u,{chunkSize:t},r,n)),o&&!i||!c||(w=new z,d=ze(d,w)),ve(this,d,(async()=>{if((!o||i)&&c){const e=new l(w.value.buffer);if(f!=e.getUint32(0,!1))throw new s(P)}}))}}function ke(e){return ze(e,new p({transform(e,t){e&&e.length&&t.enqueue(e)}}))}function ve(e,n,r){n=ze(n,new p({flush:r})),t.defineProperty(e,"readable",{get:()=>n})}function Se(e,t,n,r,s){try{e=ze(e,new(t&&r?r:s)(me,n))}catch(r){if(!t)throw r;e=ze(e,new s(me,n))}return e}function ze(e,t){return e.pipeThrough(t)}const Ce="data";class xe extends p{constructor(e,n){super({});const r=this,{codecType:s}=e;let i;s.startsWith("deflate")?i=be:s.startsWith("inflate")&&(i=ge);let o=0;const c=new i(e,n),f=super.readable,a=new p({transform(e,t){e&&e.length&&(o+=e.length,t.enqueue(e))},flush(){const{signature:e}=c;t.assign(r,{signature:e,size:o})}});t.defineProperty(r,"readable",{get:()=>f.pipeThrough(c).pipeThrough(a)})}}const _e=new a,Ae=new a;let Ie=0;async function De(e){try{const{options:t,scripts:r,config:s}=e;r&&r.length&&importScripts.apply(void 0,r),self.initCodec&&self.initCodec(),s.CompressionStreamNative=self.CompressionStream,s.DecompressionStreamNative=self.DecompressionStream,self.Deflate&&(s.CompressionStream=new k(self.Deflate)),self.Inflate&&(s.DecompressionStream=new k(self.Inflate));const i={highWaterMark:1,size:()=>s.chunkSize},o=e.readable||new y({async pull(e){const t=new u((e=>_e.set(Ie,e)));Ve({type:"pull",messageId:Ie}),Ie=(Ie+1)%n.MAX_SAFE_INTEGER;const{value:r,done:s}=await t;e.enqueue(r),s&&e.close()}},i),c=e.writable||new m({async write(e){let t;const r=new u((e=>t=e));Ae.set(Ie,t),Ve({type:Ce,value:e,messageId:Ie}),Ie=(Ie+1)%n.MAX_SAFE_INTEGER,await r}},i),f=new xe(t,s);await o.pipeThrough(f).pipeTo(c,{preventClose:!0,preventAbort:!0});try{await c.getWriter().close()}catch(e){}const{signature:a,size:l}=f;Ve({type:"close",result:{signature:a,size:l}})}catch(e){Pe(e)}}function Ve(e){let{value:t}=e;if(t)if(t.length)try{t=new i(t),e.value=t.buffer,d(e,[e.value])}catch(t){d(e)}else d(e);else d(e)}function Pe(e){const{message:t,stack:n,code:r,name:s}=e;d({error:{message:t,stack:n,code:r,name:s}})}addEventListener("message",(({data:e})=>{const{type:t,messageId:n,value:r,done:s}=e;try{if("start"==t&&De(e),t==Ce){const e=_e.get(n);_e.delete(n),e({value:new i(r),done:s})}if("ack"==t){const e=Ae.get(n);Ae.delete(n),e()}}catch(e){Pe(e)}}));const Re=-2;function Be(t){return Ee(t.map((([t,n])=>new e(t).fill(n,0,t))))}function Ee(t){return t.reduce(((t,n)=>t.concat(e.isArray(n)?Ee(n):n)),[])}const Me=[0,1,2,3].concat(...Be([[2,4],[2,5],[4,6],[4,7],[8,8],[8,9],[16,10],[16,11],[32,12],[32,13],[64,14],[64,15],[2,0],[1,16],[1,17],[2,18],[2,19],[4,20],[4,21],[8,22],[8,23],[16,24],[16,25],[32,26],[32,27],[64,28],[64,29]]));function Ke(){const e=this;function t(e,t){let n=0;do{n|=1&e,e>>>=1,n<<=1}while(--t>0);return n>>>1}e.ne=n=>{const s=e.re,i=e.ie.se,o=e.ie.oe;let c,f,a,l=-1;for(n.ce=0,n.fe=573,c=0;o>c;c++)0!==s[2*c]?(n.ae[++n.ce]=l=c,n.le[c]=0):s[2*c+1]=0;for(;2>n.ce;)a=n.ae[++n.ce]=2>l?++l:0,s[2*a]=1,n.le[a]=0,n.ue--,i&&(n.we-=i[2*a+1]);for(e.he=l,c=r.floor(n.ce/2);c>=1;c--)n.de(s,c);a=o;do{c=n.ae[1],n.ae[1]=n.ae[n.ce--],n.de(s,1),f=n.ae[1],n.ae[--n.fe]=c,n.ae[--n.fe]=f,s[2*a]=s[2*c]+s[2*f],n.le[a]=r.max(n.le[c],n.le[f])+1,s[2*c+1]=s[2*f+1]=a,n.ae[1]=a++,n.de(s,1)}while(n.ce>=2);n.ae[--n.fe]=n.ae[1],(t=>{const n=e.re,r=e.ie.se,s=e.ie.pe,i=e.ie.ye,o=e.ie.me;let c,f,a,l,u,w,h=0;for(l=0;15>=l;l++)t.be[l]=0;for(n[2*t.ae[t.fe]+1]=0,c=t.fe+1;573>c;c++)f=t.ae[c],l=n[2*n[2*f+1]+1]+1,l>o&&(l=o,h++),n[2*f+1]=l,f>e.he||(t.be[l]++,u=0,i>f||(u=s[f-i]),w=n[2*f],t.ue+=w*(l+u),r&&(t.we+=w*(r[2*f+1]+u)));if(0!==h){do{for(l=o-1;0===t.be[l];)l--;t.be[l]--,t.be[l+1]+=2,t.be[o]--,h-=2}while(h>0);for(l=o;0!==l;l--)for(f=t.be[l];0!==f;)a=t.ae[--c],a>e.he||(n[2*a+1]!=l&&(t.ue+=(l-n[2*a+1])*n[2*a],n[2*a+1]=l),f--)}})(n),((e,n,r)=>{const s=[];let i,o,c,f=0;for(i=1;15>=i;i++)s[i]=f=f+r[i-1]<<1;for(o=0;n>=o;o++)c=e[2*o+1],0!==c&&(e[2*o]=t(s[c]++,c))})(s,e.he,n.be)}}function Ue(e,t,n,r,s){const i=this;i.se=e,i.pe=t,i.ye=n,i.oe=r,i.me=s}Ke.ge=[0,1,2,3,4,5,6,7].concat(...Be([[2,8],[2,9],[2,10],[2,11],[4,12],[4,13],[4,14],[4,15],[8,16],[8,17],[8,18],[8,19],[16,20],[16,21],[16,22],[16,23],[32,24],[32,25],[32,26],[31,27],[1,28]])),Ke.ke=[0,1,2,3,4,5,6,7,8,10,12,14,16,20,24,28,32,40,48,56,64,80,96,112,128,160,192,224,0],Ke.ve=[0,1,2,3,4,6,8,12,16,24,32,48,64,96,128,192,256,384,512,768,1024,1536,2048,3072,4096,6144,8192,12288,16384,24576],Ke.Se=e=>256>e?Me[e]:Me[256+(e>>>7)],Ke.ze=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0],Ke.Ce=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13],Ke.xe=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7],Ke._e=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];const Ne=Be([[144,8],[112,9],[24,7],[8,8]]);Ue.Ae=Ee([12,140,76,204,44,172,108,236,28,156,92,220,60,188,124,252,2,130,66,194,34,162,98,226,18,146,82,210,50,178,114,242,10,138,74,202,42,170,106,234,26,154,90,218,58,186,122,250,6,134,70,198,38,166,102,230,22,150,86,214,54,182,118,246,14,142,78,206,46,174,110,238,30,158,94,222,62,190,126,254,1,129,65,193,33,161,97,225,17,145,81,209,49,177,113,241,9,137,73,201,41,169,105,233,25,153,89,217,57,185,121,249,5,133,69,197,37,165,101,229,21,149,85,213,53,181,117,245,13,141,77,205,45,173,109,237,29,157,93,221,61,189,125,253,19,275,147,403,83,339,211,467,51,307,179,435,115,371,243,499,11,267,139,395,75,331,203,459,43,299,171,427,107,363,235,491,27,283,155,411,91,347,219,475,59,315,187,443,123,379,251,507,7,263,135,391,71,327,199,455,39,295,167,423,103,359,231,487,23,279,151,407,87,343,215,471,55,311,183,439,119,375,247,503,15,271,143,399,79,335,207,463,47,303,175,431,111,367,239,495,31,287,159,415,95,351,223,479,63,319,191,447,127,383,255,511,0,64,32,96,16,80,48,112,8,72,40,104,24,88,56,120,4,68,36,100,20,84,52,116,3,131,67,195,35,163,99,227].map(((e,t)=>[e,Ne[t]])));const Oe=Be([[30,5]]);function Te(e,t,n,r,s){const i=this;i.Ie=e,i.De=t,i.Ve=n,i.Pe=r,i.Re=s}Ue.Be=Ee([0,16,8,24,4,20,12,28,2,18,10,26,6,22,14,30,1,17,9,25,5,21,13,29,3,19,11,27,7,23].map(((e,t)=>[e,Oe[t]]))),Ue.Ee=new Ue(Ue.Ae,Ke.ze,257,286,15),Ue.Me=new Ue(Ue.Be,Ke.Ce,0,30,15),Ue.Ke=new Ue(null,Ke.xe,0,19,7);const We=[new Te(0,0,0,0,0),new Te(4,4,8,4,1),new Te(4,5,16,8,1),new Te(4,6,32,32,1),new Te(4,4,16,16,2),new Te(8,16,32,32,2),new Te(8,16,128,128,2),new Te(8,32,128,256,2),new Te(32,128,258,1024,2),new Te(32,258,258,4096,2)],je=["need dictionary","stream end","","","stream error","data error","","buffer error","",""],He=113,Le=666,Fe=262;function qe(e,t,n,r){const s=e[2*t],i=e[2*n];return i>s||s==i&&r[t]<=r[n]}function Ge(){const e=this;let t,n,s,c,f,a,l,u,w,h,d,p,y,m,b,g,k,v,S,z,C,x,_,A,I,D,V,P,R,B,E,M,K;const U=new Ke,N=new Ke,O=new Ke;let T,W,j,H,L,F;function q(){let t;for(t=0;286>t;t++)E[2*t]=0;for(t=0;30>t;t++)M[2*t]=0;for(t=0;19>t;t++)K[2*t]=0;E[512]=1,e.ue=e.we=0,W=j=0}function G(e,t){let n,r=-1,s=e[1],i=0,o=7,c=4;0===s&&(o=138,c=3),e[2*(t+1)+1]=65535;for(let f=0;t>=f;f++)n=s,s=e[2*(f+1)+1],++ii?K[2*n]+=i:0!==n?(n!=r&&K[2*n]++,K[32]++):i>10?K[36]++:K[34]++,i=0,r=n,0===s?(o=138,c=3):n==s?(o=6,c=3):(o=7,c=4))}function J(t){e.Ue[e.pending++]=t}function Q(e){J(255&e),J(e>>>8&255)}function X(e,t){let n;const r=t;F>16-r?(n=e,L|=n<>>16-F,F+=r-16):(L|=e<=n;n++)if(r=i,i=e[2*(n+1)+1],++o>=c||r!=i){if(f>o)do{Y(r,K)}while(0!=--o);else 0!==r?(r!=s&&(Y(r,K),o--),Y(16,K),X(o-3,2)):o>10?(Y(18,K),X(o-11,7)):(Y(17,K),X(o-3,3));o=0,s=r,0===i?(c=138,f=3):r==i?(c=6,f=3):(c=7,f=4)}}function $(){16==F?(Q(L),L=0,F=0):8>F||(J(255&L),L>>>=8,F-=8)}function ee(t,n){let s,i,o;if(e.Ne[W]=t,e.Oe[W]=255&n,W++,0===t?E[2*n]++:(j++,t--,E[2*(Ke.ge[n]+256+1)]++,M[2*Ke.Se(t)]++),0==(8191&W)&&V>2){for(s=8*W,i=C-k,o=0;30>o;o++)s+=M[2*o]*(5+Ke.Ce[o]);if(s>>>=3,jc);Y(256,t),H=t[513]}function ne(){F>8?Q(L):F>0&&J(255&L),L=0,F=0}function re(t,n,r){X(0+(r?1:0),3),((t,n)=>{ne(),H=8,Q(n),Q(~n),e.Ue.set(u.subarray(t,t+n),e.pending),e.pending+=n})(t,n)}function se(n){((t,n,r)=>{let s,i,o=0;V>0?(U.ne(e),N.ne(e),o=(()=>{let t;for(G(E,U.he),G(M,N.he),O.ne(e),t=18;t>=3&&0===K[2*Ke._e[t]+1];t--);return e.ue+=14+3*(t+1),t})(),s=e.ue+3+7>>>3,i=e.we+3+7>>>3,i>s||(s=i)):s=i=n+5,n+4>s||-1==t?i==s?(X(2+(r?1:0),3),te(Ue.Ae,Ue.Be)):(X(4+(r?1:0),3),((e,t,n)=>{let r;for(X(e-257,5),X(t-1,5),X(n-4,4),r=0;n>r;r++)X(K[2*Ke._e[r]+1],3);Z(E,e-1),Z(M,t-1)})(U.he+1,N.he+1,o+1),te(E,M)):re(t,n,r),q(),r&&ne()})(0>k?-1:k,C-k,n),k=C,t.Te()}function ie(){let e,n,r,s;do{if(s=w-_-C,0===s&&0===C&&0===_)s=f;else if(-1==s)s--;else if(C>=f+f-Fe){u.set(u.subarray(f,f+f),0),x-=f,C-=f,k-=f,e=y,r=e;do{n=65535&d[--r],d[r]=f>n?0:n-f}while(0!=--e);e=f,r=e;do{n=65535&h[--r],h[r]=f>n?0:n-f}while(0!=--e);s+=f}if(0===t.We)return;e=t.je(u,C+_,s),_+=e,3>_||(p=255&u[C],p=(p<_&&0!==t.We)}function oe(e){let t,n,r=I,s=C,i=A;const o=C>f-Fe?C-(f-Fe):0;let c=B;const a=l,w=C+258;let d=u[s+i-1],p=u[s+i];R>A||(r>>=2),c>_&&(c=_);do{if(t=e,u[t+i]==p&&u[t+i-1]==d&&u[t]==u[s]&&u[++t]==u[s+1]){s+=2,t++;do{}while(u[++s]==u[++t]&&u[++s]==u[++t]&&u[++s]==u[++t]&&u[++s]==u[++t]&&u[++s]==u[++t]&&u[++s]==u[++t]&&u[++s]==u[++t]&&u[++s]==u[++t]&&w>s);if(n=258-(w-s),s=w-258,n>i){if(x=e,i=n,n>=c)break;d=u[s+i-1],p=u[s+i]}}}while((e=65535&h[e&a])>o&&0!=--r);return i>_?_:i}e.le=[],e.be=[],e.ae=[],E=[],M=[],K=[],e.de=(t,n)=>{const r=e.ae,s=r[n];let i=n<<1;for(;i<=e.ce&&(i(W||(W=8),j||(j=8),G||(G=0),t.Le=null,-1==S&&(S=6),1>j||j>9||8!=W||9>x||x>15||0>S||S>9||0>G||G>2?Re:(t.Fe=e,a=x,f=1<(t.qe=t.Ge=0,t.Le=null,e.pending=0,e.Je=0,n=He,c=0,U.re=E,U.ie=Ue.Ee,N.re=M,N.ie=Ue.Me,O.re=K,O.ie=Ue.Ke,L=0,F=0,H=8,q(),(()=>{w=2*f,d[y-1]=0;for(let e=0;y-1>e;e++)d[e]=0;D=We[V].De,R=We[V].Ie,B=We[V].Ve,I=We[V].Pe,C=0,k=0,_=0,v=A=2,z=0,p=0})(),0))(t))),e.Qe=()=>42!=n&&n!=He&&n!=Le?Re:(e.Oe=null,e.Ne=null,e.Ue=null,d=null,h=null,u=null,e.Fe=null,n==He?-3:0),e.Xe=(e,t,n)=>{let r=0;return-1==t&&(t=6),0>t||t>9||0>n||n>2?Re:(We[V].Re!=We[t].Re&&0!==e.qe&&(r=e.Ye(1)),V!=t&&(V=t,D=We[V].De,R=We[V].Ie,B=We[V].Ve,I=We[V].Pe),P=n,r)},e.Ze=(e,t,r)=>{let s,i=r,o=0;if(!t||42!=n)return Re;if(3>i)return 0;for(i>f-Fe&&(i=f-Fe,o=r-i),u.set(t.subarray(o,o+i),0),C=i,k=i,p=255&u[0],p=(p<=s;s++)p=(p<{let o,w,m,I,R;if(i>4||0>i)return Re;if(!r.$e||!r.et&&0!==r.We||n==Le&&4!=i)return r.Le=je[4],Re;if(0===r.tt)return r.Le=je[7],-5;var B;if(t=r,I=c,c=i,42==n&&(w=8+(a-8<<4)<<8,m=(V-1&255)>>1,m>3&&(m=3),w|=m<<6,0!==C&&(w|=32),w+=31-w%31,n=He,J((B=w)>>8&255),J(255&B)),0!==e.pending){if(t.Te(),0===t.tt)return c=-1,0}else if(0===t.We&&I>=i&&4!=i)return t.Le=je[7],-5;if(n==Le&&0!==t.We)return r.Le=je[7],-5;if(0!==t.We||0!==_||0!=i&&n!=Le){switch(R=-1,We[V].Re){case 0:R=(e=>{let n,r=65535;for(r>s-5&&(r=s-5);;){if(1>=_){if(ie(),0===_&&0==e)return 0;if(0===_)break}if(C+=_,_=0,n=k+r,(0===C||C>=n)&&(_=C-n,C=n,se(!1),0===t.tt))return 0;if(C-k>=f-Fe&&(se(!1),0===t.tt))return 0}return se(4==e),0===t.tt?4==e?2:0:4==e?3:1})(i);break;case 1:R=(e=>{let n,r=0;for(;;){if(Fe>_){if(ie(),Fe>_&&0==e)return 0;if(0===_)break}if(3>_||(p=(p<f-Fe||2!=P&&(v=oe(r)),3>v)n=ee(0,255&u[C]),_--,C++;else if(n=ee(C-x,v-3),_-=v,v>D||3>_)C+=v,v=0,p=255&u[C],p=(p<{let n,r,s=0;for(;;){if(Fe>_){if(ie(),Fe>_&&0==e)return 0;if(0===_)break}if(3>_||(p=(p<A&&f-Fe>=(C-s&65535)&&(2!=P&&(v=oe(s)),5>=v&&(1==P||3==v&&C-x>4096)&&(v=2)),3>A||v>A)if(0!==z){if(n=ee(0,255&u[C-1]),n&&se(!1),C++,_--,0===t.tt)return 0}else z=1,C++,_--;else{r=C+_-3,n=ee(C-1-S,A-3),_-=A-1,A-=2;do{++C>r||(p=(p<1+H+10-F&&(X(2,3),Y(256,Ue.Ae),$()),H=7;else if(re(0,0,!1),3==i)for(o=0;y>o;o++)d[o]=0;if(t.Te(),0===t.tt)return c=-1,0}}return 4!=i?0:1}}function Je(){const e=this;e.nt=0,e.rt=0,e.We=0,e.qe=0,e.tt=0,e.Ge=0}function Qe(e){const t=new Je,n=(o=e&&e.chunkSize?e.chunkSize:65536)+5*(r.floor(o/16383)+1);var o;const c=new i(n);let f=e?e.level:-1;void 0===f&&(f=-1),t.He(f),t.$e=c,this.append=(e,r)=>{let o,f,a=0,l=0,u=0;const w=[];if(e.length){t.nt=0,t.et=e,t.We=e.length;do{if(t.rt=0,t.tt=n,o=t.Ye(0),0!=o)throw new s("deflating: "+t.Le);t.rt&&(t.rt==n?w.push(new i(c)):w.push(c.subarray(0,t.rt))),u+=t.rt,r&&t.nt>0&&t.nt!=a&&(r(t.nt),a=t.nt)}while(t.We>0||0===t.tt);return w.length>1?(f=new i(u),w.forEach((e=>{f.set(e,l),l+=e.length}))):f=w[0]?new i(w[0]):new i,f}},this.flush=()=>{let e,r,o=0,f=0;const a=[];do{if(t.rt=0,t.tt=n,e=t.Ye(4),1!=e&&0!=e)throw new s("deflating: "+t.Le);n-t.tt>0&&a.push(c.slice(0,t.rt)),f+=t.rt}while(t.We>0||0===t.tt);return t.Qe(),r=new i(f),a.forEach((e=>{r.set(e,o),o+=e.length})),r}}Je.prototype={He(e,t){const n=this;return n.Fe=new Ge,t||(t=15),n.Fe.He(n,e,t)},Ye(e){const t=this;return t.Fe?t.Fe.Ye(t,e):Re},Qe(){const e=this;if(!e.Fe)return Re;const t=e.Fe.Qe();return e.Fe=null,t},Xe(e,t){const n=this;return n.Fe?n.Fe.Xe(n,e,t):Re},Ze(e,t){const n=this;return n.Fe?n.Fe.Ze(n,e,t):Re},je(e,t,n){const r=this;let s=r.We;return s>n&&(s=n),0===s?0:(r.We-=s,e.set(r.et.subarray(r.nt,r.nt+s),t),r.nt+=s,r.qe+=s,s)},Te(){const e=this;let t=e.Fe.pending;t>e.tt&&(t=e.tt),0!==t&&(e.$e.set(e.Fe.Ue.subarray(e.Fe.Je,e.Fe.Je+t),e.rt),e.rt+=t,e.Fe.Je+=t,e.Ge+=t,e.tt-=t,e.Fe.pending-=t,0===e.Fe.pending&&(e.Fe.Je=0))}};const Xe=-2,Ye=-3,Ze=-5,$e=[0,1,3,7,15,31,63,127,255,511,1023,2047,4095,8191,16383,32767,65535],et=[96,7,256,0,8,80,0,8,16,84,8,115,82,7,31,0,8,112,0,8,48,0,9,192,80,7,10,0,8,96,0,8,32,0,9,160,0,8,0,0,8,128,0,8,64,0,9,224,80,7,6,0,8,88,0,8,24,0,9,144,83,7,59,0,8,120,0,8,56,0,9,208,81,7,17,0,8,104,0,8,40,0,9,176,0,8,8,0,8,136,0,8,72,0,9,240,80,7,4,0,8,84,0,8,20,85,8,227,83,7,43,0,8,116,0,8,52,0,9,200,81,7,13,0,8,100,0,8,36,0,9,168,0,8,4,0,8,132,0,8,68,0,9,232,80,7,8,0,8,92,0,8,28,0,9,152,84,7,83,0,8,124,0,8,60,0,9,216,82,7,23,0,8,108,0,8,44,0,9,184,0,8,12,0,8,140,0,8,76,0,9,248,80,7,3,0,8,82,0,8,18,85,8,163,83,7,35,0,8,114,0,8,50,0,9,196,81,7,11,0,8,98,0,8,34,0,9,164,0,8,2,0,8,130,0,8,66,0,9,228,80,7,7,0,8,90,0,8,26,0,9,148,84,7,67,0,8,122,0,8,58,0,9,212,82,7,19,0,8,106,0,8,42,0,9,180,0,8,10,0,8,138,0,8,74,0,9,244,80,7,5,0,8,86,0,8,22,192,8,0,83,7,51,0,8,118,0,8,54,0,9,204,81,7,15,0,8,102,0,8,38,0,9,172,0,8,6,0,8,134,0,8,70,0,9,236,80,7,9,0,8,94,0,8,30,0,9,156,84,7,99,0,8,126,0,8,62,0,9,220,82,7,27,0,8,110,0,8,46,0,9,188,0,8,14,0,8,142,0,8,78,0,9,252,96,7,256,0,8,81,0,8,17,85,8,131,82,7,31,0,8,113,0,8,49,0,9,194,80,7,10,0,8,97,0,8,33,0,9,162,0,8,1,0,8,129,0,8,65,0,9,226,80,7,6,0,8,89,0,8,25,0,9,146,83,7,59,0,8,121,0,8,57,0,9,210,81,7,17,0,8,105,0,8,41,0,9,178,0,8,9,0,8,137,0,8,73,0,9,242,80,7,4,0,8,85,0,8,21,80,8,258,83,7,43,0,8,117,0,8,53,0,9,202,81,7,13,0,8,101,0,8,37,0,9,170,0,8,5,0,8,133,0,8,69,0,9,234,80,7,8,0,8,93,0,8,29,0,9,154,84,7,83,0,8,125,0,8,61,0,9,218,82,7,23,0,8,109,0,8,45,0,9,186,0,8,13,0,8,141,0,8,77,0,9,250,80,7,3,0,8,83,0,8,19,85,8,195,83,7,35,0,8,115,0,8,51,0,9,198,81,7,11,0,8,99,0,8,35,0,9,166,0,8,3,0,8,131,0,8,67,0,9,230,80,7,7,0,8,91,0,8,27,0,9,150,84,7,67,0,8,123,0,8,59,0,9,214,82,7,19,0,8,107,0,8,43,0,9,182,0,8,11,0,8,139,0,8,75,0,9,246,80,7,5,0,8,87,0,8,23,192,8,0,83,7,51,0,8,119,0,8,55,0,9,206,81,7,15,0,8,103,0,8,39,0,9,174,0,8,7,0,8,135,0,8,71,0,9,238,80,7,9,0,8,95,0,8,31,0,9,158,84,7,99,0,8,127,0,8,63,0,9,222,82,7,27,0,8,111,0,8,47,0,9,190,0,8,15,0,8,143,0,8,79,0,9,254,96,7,256,0,8,80,0,8,16,84,8,115,82,7,31,0,8,112,0,8,48,0,9,193,80,7,10,0,8,96,0,8,32,0,9,161,0,8,0,0,8,128,0,8,64,0,9,225,80,7,6,0,8,88,0,8,24,0,9,145,83,7,59,0,8,120,0,8,56,0,9,209,81,7,17,0,8,104,0,8,40,0,9,177,0,8,8,0,8,136,0,8,72,0,9,241,80,7,4,0,8,84,0,8,20,85,8,227,83,7,43,0,8,116,0,8,52,0,9,201,81,7,13,0,8,100,0,8,36,0,9,169,0,8,4,0,8,132,0,8,68,0,9,233,80,7,8,0,8,92,0,8,28,0,9,153,84,7,83,0,8,124,0,8,60,0,9,217,82,7,23,0,8,108,0,8,44,0,9,185,0,8,12,0,8,140,0,8,76,0,9,249,80,7,3,0,8,82,0,8,18,85,8,163,83,7,35,0,8,114,0,8,50,0,9,197,81,7,11,0,8,98,0,8,34,0,9,165,0,8,2,0,8,130,0,8,66,0,9,229,80,7,7,0,8,90,0,8,26,0,9,149,84,7,67,0,8,122,0,8,58,0,9,213,82,7,19,0,8,106,0,8,42,0,9,181,0,8,10,0,8,138,0,8,74,0,9,245,80,7,5,0,8,86,0,8,22,192,8,0,83,7,51,0,8,118,0,8,54,0,9,205,81,7,15,0,8,102,0,8,38,0,9,173,0,8,6,0,8,134,0,8,70,0,9,237,80,7,9,0,8,94,0,8,30,0,9,157,84,7,99,0,8,126,0,8,62,0,9,221,82,7,27,0,8,110,0,8,46,0,9,189,0,8,14,0,8,142,0,8,78,0,9,253,96,7,256,0,8,81,0,8,17,85,8,131,82,7,31,0,8,113,0,8,49,0,9,195,80,7,10,0,8,97,0,8,33,0,9,163,0,8,1,0,8,129,0,8,65,0,9,227,80,7,6,0,8,89,0,8,25,0,9,147,83,7,59,0,8,121,0,8,57,0,9,211,81,7,17,0,8,105,0,8,41,0,9,179,0,8,9,0,8,137,0,8,73,0,9,243,80,7,4,0,8,85,0,8,21,80,8,258,83,7,43,0,8,117,0,8,53,0,9,203,81,7,13,0,8,101,0,8,37,0,9,171,0,8,5,0,8,133,0,8,69,0,9,235,80,7,8,0,8,93,0,8,29,0,9,155,84,7,83,0,8,125,0,8,61,0,9,219,82,7,23,0,8,109,0,8,45,0,9,187,0,8,13,0,8,141,0,8,77,0,9,251,80,7,3,0,8,83,0,8,19,85,8,195,83,7,35,0,8,115,0,8,51,0,9,199,81,7,11,0,8,99,0,8,35,0,9,167,0,8,3,0,8,131,0,8,67,0,9,231,80,7,7,0,8,91,0,8,27,0,9,151,84,7,67,0,8,123,0,8,59,0,9,215,82,7,19,0,8,107,0,8,43,0,9,183,0,8,11,0,8,139,0,8,75,0,9,247,80,7,5,0,8,87,0,8,23,192,8,0,83,7,51,0,8,119,0,8,55,0,9,207,81,7,15,0,8,103,0,8,39,0,9,175,0,8,7,0,8,135,0,8,71,0,9,239,80,7,9,0,8,95,0,8,31,0,9,159,84,7,99,0,8,127,0,8,63,0,9,223,82,7,27,0,8,111,0,8,47,0,9,191,0,8,15,0,8,143,0,8,79,0,9,255],tt=[80,5,1,87,5,257,83,5,17,91,5,4097,81,5,5,89,5,1025,85,5,65,93,5,16385,80,5,3,88,5,513,84,5,33,92,5,8193,82,5,9,90,5,2049,86,5,129,192,5,24577,80,5,2,87,5,385,83,5,25,91,5,6145,81,5,7,89,5,1537,85,5,97,93,5,24577,80,5,4,88,5,769,84,5,49,92,5,12289,82,5,13,90,5,3073,86,5,193,192,5,24577],nt=[3,4,5,6,7,8,9,10,11,13,15,17,19,23,27,31,35,43,51,59,67,83,99,115,131,163,195,227,258,0,0],rt=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0,112,112],st=[1,2,3,4,5,7,9,13,17,25,33,49,65,97,129,193,257,385,513,769,1025,1537,2049,3073,4097,6145,8193,12289,16385,24577],it=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13];function ot(){let e,t,n,r,s,i;function o(e,t,o,c,f,a,l,u,w,h,d){let p,y,m,b,g,k,v,S,z,C,x,_,A,I,D;C=0,g=o;do{n[e[t+C]]++,C++,g--}while(0!==g);if(n[0]==o)return l[0]=-1,u[0]=0,0;for(S=u[0],k=1;15>=k&&0===n[k];k++);for(v=k,k>S&&(S=k),g=15;0!==g&&0===n[g];g--);for(m=g,S>g&&(S=g),u[0]=S,I=1<k;k++,I<<=1)if(0>(I-=n[k]))return Ye;if(0>(I-=n[g]))return Ye;for(n[g]+=I,i[1]=k=0,C=1,A=2;0!=--g;)i[A]=k+=n[C],A++,C++;g=0,C=0;do{0!==(k=e[t+C])&&(d[i[k]++]=g),C++}while(++g=v;v++)for(p=n[v];0!=p--;){for(;v>_+S;){if(b++,_+=S,D=m-_,D=D>S?S:D,(y=1<<(k=v-_))>p+1&&(y-=p+1,A=v,D>k))for(;++kn[++A];)y-=n[A];if(D=1<1440)return Ye;s[b]=x=h[0],h[0]+=D,0!==b?(i[b]=g,r[0]=k,r[1]=S,k=g>>>_-S,r[2]=x-s[b-1]-k,w.set(r,3*(s[b-1]+k))):l[0]=x}for(r[1]=v-_,o>C?d[C]d[C]?0:96,r[2]=d[C++]):(r[0]=a[d[C]-c]+16+64,r[2]=f[d[C++]-c]):r[0]=192,y=1<>>_;D>k;k+=y)w.set(r,3*(x+k));for(k=1<>>=1)g^=k;for(g^=k,z=(1<<_)-1;(g&z)!=i[b];)b--,_-=S,z=(1<<_)-1}return 0!==I&&1!=m?Ze:0}function c(o){let c;for(e||(e=[],t=[],n=new f(16),r=[],s=new f(15),i=new f(16)),t.lengthc;c++)t[c]=0;for(c=0;16>c;c++)n[c]=0;for(c=0;3>c;c++)r[c]=0;s.set(n.subarray(0,15),0),i.set(n.subarray(0,16),0)}this.st=(n,r,s,i,f)=>{let a;return c(19),e[0]=0,a=o(n,0,19,19,null,null,s,r,i,e,t),a==Ye?f.Le="oversubscribed dynamic bit lengths tree":a!=Ze&&0!==r[0]||(f.Le="incomplete dynamic bit lengths tree",a=Ye),a},this.it=(n,r,s,i,f,a,l,u,w)=>{let h;return c(288),e[0]=0,h=o(s,0,n,257,nt,rt,a,i,u,e,t),0!=h||0===i[0]?(h==Ye?w.Le="oversubscribed literal/length tree":-4!=h&&(w.Le="incomplete literal/length tree",h=Ye),h):(c(288),h=o(s,n,r,0,st,it,l,f,u,e,t),0!=h||0===f[0]&&n>257?(h==Ye?w.Le="oversubscribed distance tree":h==Ze?(w.Le="incomplete distance tree",h=Ye):-4!=h&&(w.Le="empty distance tree with lengths",h=Ye),h):0)}}function ct(){const e=this;let t,n,r,s,i=0,o=0,c=0,f=0,a=0,l=0,u=0,w=0,h=0,d=0;function p(e,t,n,r,s,i,o,c){let f,a,l,u,w,h,d,p,y,m,b,g,k,v,S,z;d=c.nt,p=c.We,w=o.ot,h=o.ct,y=o.write,m=yh;)p--,w|=(255&c.ft(d++))<>=a[z+1],h-=a[z+1],0!=(16&u)){for(u&=15,k=a[z+2]+(w&$e[u]),w>>=u,h-=u;15>h;)p--,w|=(255&c.ft(d++))<>=a[z+1],h-=a[z+1],0!=(16&u)){for(u&=15;u>h;)p--,w|=(255&c.ft(d++))<>=u,h-=u,m-=k,v>y){S=y-v;do{S+=o.end}while(0>S);if(u=o.end-S,k>u){if(k-=u,y-S>0&&u>y-S)do{o.lt[y++]=o.lt[S++]}while(0!=--u);else o.lt.set(o.lt.subarray(S,S+u),y),y+=u,S+=u,u=0;S=0}}else S=y-v,y-S>0&&2>y-S?(o.lt[y++]=o.lt[S++],o.lt[y++]=o.lt[S++],k-=2):(o.lt.set(o.lt.subarray(S,S+2),y),y+=2,S+=2,k-=2);if(y-S>0&&k>y-S)do{o.lt[y++]=o.lt[S++]}while(0!=--k);else o.lt.set(o.lt.subarray(S,S+k),y),y+=k,S+=k,k=0;break}if(0!=(64&u))return c.Le="invalid distance code",k=c.We-p,k=k>h>>3?h>>3:k,p+=k,d-=k,h-=k<<3,o.ot=w,o.ct=h,c.We=p,c.qe+=d-c.nt,c.nt=d,o.write=y,Ye;f+=a[z+2],f+=w&$e[u],z=3*(l+f),u=a[z]}break}if(0!=(64&u))return 0!=(32&u)?(k=c.We-p,k=k>h>>3?h>>3:k,p+=k,d-=k,h-=k<<3,o.ot=w,o.ct=h,c.We=p,c.qe+=d-c.nt,c.nt=d,o.write=y,1):(c.Le="invalid literal/length code",k=c.We-p,k=k>h>>3?h>>3:k,p+=k,d-=k,h-=k<<3,o.ot=w,o.ct=h,c.We=p,c.qe+=d-c.nt,c.nt=d,o.write=y,Ye);if(f+=a[z+2],f+=w&$e[u],z=3*(l+f),0===(u=a[z])){w>>=a[z+1],h-=a[z+1],o.lt[y++]=a[z+2],m--;break}}else w>>=a[z+1],h-=a[z+1],o.lt[y++]=a[z+2],m--}while(m>=258&&p>=10);return k=c.We-p,k=k>h>>3?h>>3:k,p+=k,d-=k,h-=k<<3,o.ot=w,o.ct=h,c.We=p,c.qe+=d-c.nt,c.nt=d,o.write=y,0}e.init=(e,i,o,c,f,a)=>{t=0,u=e,w=i,r=o,h=c,s=f,d=a,n=null},e.ut=(e,y,m)=>{let b,g,k,v,S,z,C,x=0,_=0,A=0;for(A=y.nt,v=y.We,x=e.ot,_=e.ct,S=e.write,z=S=258&&v>=10&&(e.ot=x,e.ct=_,y.We=v,y.qe+=A-y.nt,y.nt=A,e.write=S,m=p(u,w,r,h,s,d,e,y),A=y.nt,v=y.We,x=e.ot,_=e.ct,S=e.write,z=S_;){if(0===v)return e.ot=x,e.ct=_,y.We=v,y.qe+=A-y.nt,y.nt=A,e.write=S,e.wt(y,m);m=0,v--,x|=(255&y.ft(A++))<<_,_+=8}if(g=3*(o+(x&$e[b])),x>>>=n[g+1],_-=n[g+1],k=n[g],0===k){f=n[g+2],t=6;break}if(0!=(16&k)){a=15&k,i=n[g+2],t=2;break}if(0==(64&k)){c=k,o=g/3+n[g+2];break}if(0!=(32&k)){t=7;break}return t=9,y.Le="invalid literal/length code",m=Ye,e.ot=x,e.ct=_,y.We=v,y.qe+=A-y.nt,y.nt=A,e.write=S,e.wt(y,m);case 2:for(b=a;b>_;){if(0===v)return e.ot=x,e.ct=_,y.We=v,y.qe+=A-y.nt,y.nt=A,e.write=S,e.wt(y,m);m=0,v--,x|=(255&y.ft(A++))<<_,_+=8}i+=x&$e[b],x>>=b,_-=b,c=w,n=s,o=d,t=3;case 3:for(b=c;b>_;){if(0===v)return e.ot=x,e.ct=_,y.We=v,y.qe+=A-y.nt,y.nt=A,e.write=S,e.wt(y,m);m=0,v--,x|=(255&y.ft(A++))<<_,_+=8}if(g=3*(o+(x&$e[b])),x>>=n[g+1],_-=n[g+1],k=n[g],0!=(16&k)){a=15&k,l=n[g+2],t=4;break}if(0==(64&k)){c=k,o=g/3+n[g+2];break}return t=9,y.Le="invalid distance code",m=Ye,e.ot=x,e.ct=_,y.We=v,y.qe+=A-y.nt,y.nt=A,e.write=S,e.wt(y,m);case 4:for(b=a;b>_;){if(0===v)return e.ot=x,e.ct=_,y.We=v,y.qe+=A-y.nt,y.nt=A,e.write=S,e.wt(y,m);m=0,v--,x|=(255&y.ft(A++))<<_,_+=8}l+=x&$e[b],x>>=b,_-=b,t=5;case 5:for(C=S-l;0>C;)C+=e.end;for(;0!==i;){if(0===z&&(S==e.end&&0!==e.read&&(S=0,z=S7&&(_-=8,v++,A--),e.write=S,m=e.wt(y,m),S=e.write,z=S{}}ot.dt=(e,t,n,r)=>(e[0]=9,t[0]=5,n[0]=et,r[0]=tt,0);const ft=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];function at(e,t){const n=this;let r,s=0,o=0,c=0,a=0;const l=[0],u=[0],w=new ct;let h=0,d=new f(4320);const p=new ot;n.ct=0,n.ot=0,n.lt=new i(t),n.end=t,n.read=0,n.write=0,n.reset=(e,t)=>{t&&(t[0]=0),6==s&&w.ht(e),s=0,n.ct=0,n.ot=0,n.read=n.write=0},n.reset(e,null),n.wt=(e,t)=>{let r,s,i;return s=e.rt,i=n.read,r=(i>n.write?n.end:n.write)-i,r>e.tt&&(r=e.tt),0!==r&&t==Ze&&(t=0),e.tt-=r,e.Ge+=r,e.$e.set(n.lt.subarray(i,i+r),s),s+=r,i+=r,i==n.end&&(i=0,n.write==n.end&&(n.write=0),r=n.write-i,r>e.tt&&(r=e.tt),0!==r&&t==Ze&&(t=0),e.tt-=r,e.Ge+=r,e.$e.set(n.lt.subarray(i,i+r),s),s+=r,i+=r),e.rt=s,n.read=i,t},n.ut=(e,t)=>{let i,f,y,m,b,g,k,v;for(m=e.nt,b=e.We,f=n.ot,y=n.ct,g=n.write,k=gy;){if(0===b)return n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);t=0,b--,f|=(255&e.ft(m++))<>>1){case 0:f>>>=3,y-=3,i=7&y,f>>>=i,y-=i,s=1;break;case 1:S=[],z=[],C=[[]],x=[[]],ot.dt(S,z,C,x),w.init(S[0],z[0],C[0],0,x[0],0),f>>>=3,y-=3,s=6;break;case 2:f>>>=3,y-=3,s=3;break;case 3:return f>>>=3,y-=3,s=9,e.Le="invalid block type",t=Ye,n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t)}break;case 1:for(;32>y;){if(0===b)return n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);t=0,b--,f|=(255&e.ft(m++))<>>16&65535)!=(65535&f))return s=9,e.Le="invalid stored block lengths",t=Ye,n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);o=65535&f,f=y=0,s=0!==o?2:0!==h?7:0;break;case 2:if(0===b)return n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);if(0===k&&(g==n.end&&0!==n.read&&(g=0,k=gb&&(i=b),i>k&&(i=k),n.lt.set(e.je(m,i),g),m+=i,b-=i,g+=i,k-=i,0!=(o-=i))break;s=0!==h?7:0;break;case 3:for(;14>y;){if(0===b)return n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);t=0,b--,f|=(255&e.ft(m++))<29||(i>>5&31)>29)return s=9,e.Le="too many length or distance symbols",t=Ye,n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);if(i=258+(31&i)+(i>>5&31),!r||r.lengthv;v++)r[v]=0;f>>>=14,y-=14,a=0,s=4;case 4:for(;4+(c>>>10)>a;){for(;3>y;){if(0===b)return n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);t=0,b--,f|=(255&e.ft(m++))<>>=3,y-=3}for(;19>a;)r[ft[a++]]=0;if(l[0]=7,i=p.st(r,l,u,d,e),0!=i)return(t=i)==Ye&&(r=null,s=9),n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);a=0,s=5;case 5:for(;i=c,258+(31&i)+(i>>5&31)>a;){let o,w;for(i=l[0];i>y;){if(0===b)return n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);t=0,b--,f|=(255&e.ft(m++))<w)f>>>=i,y-=i,r[a++]=w;else{for(v=18==w?7:w-14,o=18==w?11:3;i+v>y;){if(0===b)return n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);t=0,b--,f|=(255&e.ft(m++))<>>=i,y-=i,o+=f&$e[v],f>>>=v,y-=v,v=a,i=c,v+o>258+(31&i)+(i>>5&31)||16==w&&1>v)return r=null,s=9,e.Le="invalid bit length repeat",t=Ye,n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);w=16==w?r[v-1]:0;do{r[v++]=w}while(0!=--o);a=v}}if(u[0]=-1,_=[],A=[],I=[],D=[],_[0]=9,A[0]=6,i=c,i=p.it(257+(31&i),1+(i>>5&31),r,_,A,I,D,d,e),0!=i)return i==Ye&&(r=null,s=9),t=i,n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);w.init(_[0],A[0],d,I[0],d,D[0]),s=6;case 6:if(n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,1!=(t=w.ut(n,e,t)))return n.wt(e,t);if(t=0,w.ht(e),m=e.nt,b=e.We,f=n.ot,y=n.ct,g=n.write,k=g{n.reset(e,null),n.lt=null,d=null},n.yt=(e,t,r)=>{n.lt.set(e.subarray(t,t+r),0),n.read=n.write=r},n.bt=()=>1==s?1:0}const lt=13,ut=[0,0,255,255];function wt(){const e=this;function t(e){return e&&e.gt?(e.qe=e.Ge=0,e.Le=null,e.gt.mode=7,e.gt.kt.reset(e,null),0):Xe}e.mode=0,e.method=0,e.vt=[0],e.St=0,e.marker=0,e.zt=0,e.Ct=t=>(e.kt&&e.kt.ht(t),e.kt=null,0),e.xt=(n,r)=>(n.Le=null,e.kt=null,8>r||r>15?(e.Ct(n),Xe):(e.zt=r,n.gt.kt=new at(n,1<{let n,r;if(!e||!e.gt||!e.et)return Xe;const s=e.gt;for(t=4==t?Ze:0,n=Ze;;)switch(s.mode){case 0:if(0===e.We)return n;if(n=t,e.We--,e.qe++,8!=(15&(s.method=e.ft(e.nt++)))){s.mode=lt,e.Le="unknown compression method",s.marker=5;break}if(8+(s.method>>4)>s.zt){s.mode=lt,e.Le="invalid win size",s.marker=5;break}s.mode=1;case 1:if(0===e.We)return n;if(n=t,e.We--,e.qe++,r=255&e.ft(e.nt++),((s.method<<8)+r)%31!=0){s.mode=lt,e.Le="incorrect header check",s.marker=5;break}if(0==(32&r)){s.mode=7;break}s.mode=2;case 2:if(0===e.We)return n;n=t,e.We--,e.qe++,s.St=(255&e.ft(e.nt++))<<24&4278190080,s.mode=3;case 3:if(0===e.We)return n;n=t,e.We--,e.qe++,s.St+=(255&e.ft(e.nt++))<<16&16711680,s.mode=4;case 4:if(0===e.We)return n;n=t,e.We--,e.qe++,s.St+=(255&e.ft(e.nt++))<<8&65280,s.mode=5;case 5:return 0===e.We?n:(n=t,e.We--,e.qe++,s.St+=255&e.ft(e.nt++),s.mode=6,2);case 6:return s.mode=lt,e.Le="need dictionary",s.marker=0,Xe;case 7:if(n=s.kt.ut(e,n),n==Ye){s.mode=lt,s.marker=0;break}if(0==n&&(n=t),1!=n)return n;n=t,s.kt.reset(e,s.vt),s.mode=12;case 12:return e.We=0,1;case lt:return Ye;default:return Xe}},e.At=(e,t,n)=>{let r=0,s=n;if(!e||!e.gt||6!=e.gt.mode)return Xe;const i=e.gt;return s<1<{let n,r,s,i,o;if(!e||!e.gt)return Xe;const c=e.gt;if(c.mode!=lt&&(c.mode=lt,c.marker=0),0===(n=e.We))return Ze;for(r=e.nt,s=c.marker;0!==n&&4>s;)e.ft(r)==ut[s]?s++:s=0!==e.ft(r)?0:4-s,r++,n--;return e.qe+=r-e.nt,e.nt=r,e.We=n,c.marker=s,4!=s?Ye:(i=e.qe,o=e.Ge,t(e),e.qe=i,e.Ge=o,c.mode=7,0)},e.Dt=e=>e&&e.gt&&e.gt.kt?e.gt.kt.bt():Xe}function ht(){}function dt(e){const t=new ht,n=e&&e.chunkSize?r.floor(2*e.chunkSize):131072,o=new i(n);let c=!1;t.xt(),t.$e=o,this.append=(e,r)=>{const f=[];let a,l,u=0,w=0,h=0;if(0!==e.length){t.nt=0,t.et=e,t.We=e.length;do{if(t.rt=0,t.tt=n,0!==t.We||c||(t.nt=0,c=!0),a=t._t(0),c&&a===Ze){if(0!==t.We)throw new s("inflating: bad input")}else if(0!==a&&1!==a)throw new s("inflating: "+t.Le);if((c||1===a)&&t.We===e.length)throw new s("inflating: bad input");t.rt&&(t.rt===n?f.push(new i(o)):f.push(o.subarray(0,t.rt))),h+=t.rt,r&&t.nt>0&&t.nt!=u&&(r(t.nt),u=t.nt)}while(t.We>0||0===t.tt);return f.length>1?(l=new i(h),f.forEach((e=>{l.set(e,w),w+=e.length}))):l=f[0]?new i(f[0]):new i,l}},this.flush=()=>{t.Ct()}}ht.prototype={xt(e){const t=this;return t.gt=new wt,e||(e=15),t.gt.xt(t,e)},_t(e){const t=this;return t.gt?t.gt._t(t,e):Xe},Ct(){const e=this;if(!e.gt)return Xe;const t=e.gt.Ct(e);return e.gt=null,t},It(){const e=this;return e.gt?e.gt.It(e):Xe},At(e,t){const n=this;return n.gt?n.gt.At(n,e,t):Xe},ft(e){return this.et[e]},je(e,t){return this.et.subarray(e,e+t)}},self.initCodec=()=>{self.Deflate=Qe,self.Inflate=dt}; +`],{type:"text/javascript"}));n({workerScripts:{inflate:[t],deflate:[t]}})}Il(Ni);var K=Kt.Platform.isDesktopApp?window.require("node:original-fs"):null,Pe=Kt.Platform.isDesktopApp?K.promises:null,Xt=Kt.Platform.isDesktopApp?window.require("node:os"):null,q=Kt.Platform.isDesktopApp?window.require("node:path"):null,Jn=Kt.Platform.isDesktopApp?window.require("node:url"):null,Fl=Kt.Platform.isDesktopApp?window.require("node:zlib"):null;function Zi(n,t=0,e=n.byteLength){return n.buffer.slice(n.byteOffset+t,n.byteOffset+t+e)}var Me=class{constructor(t){this.type="file";this.filepath=t;let e=this.name=q.basename(t);this.fullpath=e;let i=q.extname(e);this.extension=i.substring(1).toLowerCase(),this.basename=q.basename(e,i)}async readText(){return Pe.readFile(this.filepath,"utf8")}async read(){let t=await Pe.readFile(this.filepath);return Zi(t)}async readZip(t){let e=null;try{e=await Pe.open(this.filepath,"r");let i=await e.stat();return await t(new Vt(new No(e,i.size)))}finally{await(e==null?void 0:e.close())}}createReadStream(){return K.createReadStream(this.filepath)}toString(){return this.filepath}},ut=class{constructor(t){this.type="folder";this.filepath=t,this.name=q.basename(t)}async list(){let{filepath:t}=this,e=await Pe.readdir(t,{withFileTypes:!0}),i=[];for(let r of e)r.isFile()?i.push(new Me(q.join(t,r.name))):r.isDirectory()&&i.push(new ut(q.join(t,r.name)));return i}toString(){return this.filepath}},Wi=class{constructor(t){this.type="file";this.file=t;let e=this.name=t.name;this.fullpath=e;let{basename:i,extension:r}=re(e);this.basename=i,this.extension=r}readText(){let{file:t}=this;return t.text?t.text():new Promise((e,i)=>{let r=new FileReader;r.addEventListener("load",()=>e(r.result)),r.addEventListener("error",i),r.readAsText(this.file)})}async read(){let{file:t}=this;return t.arrayBuffer?t.arrayBuffer():new Promise((e,i)=>{let r=new FileReader;r.addEventListener("load",()=>e(r.result)),r.addEventListener("error",i),r.readAsArrayBuffer(this.file)})}async readZip(t){return t(new Vt(new St(this.file)))}toString(){return this.file.toString()}};async function So(n,t){let e=[];for(let i of n)try{i.type==="folder"?e.push(...await So(await i.list(),t)):i.type==="file"&&(!t||t(i))&&e.push(i)}catch(r){console.log("Skipping path: ",i.name,r)}return e}function re(n){let t=Math.max(n.lastIndexOf("/"),n.lastIndexOf("\\")),e=n,i="";t>=0&&(e=n.substring(t+1),i=n.substring(0,t));let[r,o]=Ro(e);return{parent:i,name:e,basename:r,extension:o}}function Ro(n){let t=n.lastIndexOf("."),e=n,i="";return t>0&&(e=n.substring(0,t),i=n.substring(t+1).toLowerCase()),[e,i]}var No=class extends yn{constructor(e,i){super(e);this.fd=e,this.size=i}async readUint8Array(e,i){let r=Buffer.alloc(i),o=await this.fd.read(r,0,i,e);return new Uint8Array(Zi(r,0,o.bytesRead))}};var Ll=require("obsidian"),Qm=/[\/\?<>\\:\*\|"]/g,eh=/[\x00-\x1f\x80-\x9f]/g,th=/^\.+$/,nh=/^(con|prn|aux|nul|com[0-9]|lpt[0-9])(\..*)?$/i,ih=/[\. ]+$/,rh=/^\./,oh=/[\[\]#|^]/g;function Ze(n){return n.replace(Qm,"").replace(eh,"").replace(th,"").replace(nh,"").replace(ih,"").replace(rh,"").replace(oh,"")}function xn(n){let t=[];for(let e=0;ea.setButtonText(i?"Choose files":"Choose file").onClick(async()=>{if(Re.Platform.isDesktopApp){let s=["openFile","dontAddToRecent"];i&&s.push("multiSelections");let l=window.electron.remote.dialog.showOpenDialogSync({title:"Pick files to import",properties:s,filters:[{name:t,extensions:e}]});l&&l.length>0&&(this.files=l.map(c=>new Me(c)),o())}else{let s=createEl("input");s.type="file",s.accept=e.map(l=>"."+l.toLowerCase()).join(","),s.addEventListener("change",()=>{if(!s.files)return;let l=Array.from(s.files);l.length>0&&(this.files=l.map(c=>new Wi(c)).filter(c=>e.contains(c.extension)),o())}),s.click()}}));i&&Re.Platform.isDesktopApp&&r.addButton(a=>a.setButtonText("Choose folders").onClick(async()=>{if(Re.Platform.isDesktopApp){let s=window.electron.remote.dialog.showOpenDialogSync({title:"Pick folders to import",properties:["openDirectory","multiSelections","dontAddToRecent"]});if(s&&s.length>0){r.setDesc("Reading folders...");let l=s.map(c=>new ut(c));this.files=await So(l,c=>e.contains(c.extension)),o()}}}));let o=()=>{let a=document.createDocumentFragment(),s=this.files.length,l=this.files.map(c=>c.name).join(", ");l.length>Pl&&(l=l.substring(0,Pl)+"..."),a.createEl("span",{text:`These ${s} files will be imported: `}),a.createEl("br"),a.createEl("span",{cls:"u-pop",text:l}),r.setDesc(a)}}addOutputLocationSetting(t){this.outputLocation=t,new Re.Setting(this.modal.contentEl).setName("Output folder").setDesc("Choose a folder in the vault to put the imported files. Leave empty to output to vault root.").addText(e=>e.setValue(t).onChange(i=>{this.outputLocation=i,this.outputFolder=null}))}async getOutputFolder(){if(this.outputFolder)return this.outputFolder;let{vault:t}=this.app,e=this.outputLocation;e===""&&(e="/");let i=t.getAbstractFileByPath(e);return(i===null||!(i instanceof Re.TFolder))&&(await t.createFolder(e),i=t.getAbstractFileByPath(e)),i instanceof Re.TFolder?(this.outputFolder=i,i):null}async getAvailablePathForAttachment(t,e){let i=await this.getOutputFolder(),r=i?{parent:i}:null,{basename:o,extension:a}=re(t),s=await this.vault.getAvailablePathForAttachments(o,a,r),l=re(s),c=l.extension?"."+l.extension:"."+a,p=1,m=s;for(;e.includes(m)||this.vault.getAbstractFileByPath(m);)m=q.join(l.parent,`${l.name} ${p}${c}`),p++;return m}async createFolders(t){let e=t.split("/").map(o=>o.replace(/^\.+/,"")).join("/"),i=(0,Re.normalizePath)(e),r=this.vault.getAbstractFileByPathInsensitive(i);if(r&&r instanceof Re.TFolder)return r;if(await this.vault.createFolder(i),r=this.vault.getAbstractFileByPathInsensitive(i),!(r instanceof Re.TFolder))throw new Error(`Failed to create folder at "${t}"`);return r}async saveAsMarkdownFile(t,e,i){let r=Ze(e);return await this.app.fileManager.createNewMarkdownFile(t,r,i)}};var Zp=rs(Lp());var ka=require("obsidian");var Pp=n=>{let e=gr.execSync(`${n} --version`).toString().toString().match(/(\d+)\.(\d+).(\d+)/);return(e==null?void 0:e[1])>3||(e==null?void 0:e[2])>32},Mp=n=>{let t=[];if(!n)return t;let e=[],i=0,r=-1,o={};for(;il>0),n.length-1);a=parseFloat(n.substring(i,s)),i=s}r==-1?e.push(a):(o[e[r]]=a,r++),(n[i]==` +`||e.length{let e=[n[0]],i=[e];for(let r=0;r",")),i.push(...t[r].length?t[r]:[""])):i.push(t[r]),e.push(n[r+1]));return i},Up=n=>new yr(n);var ui=(n,t)=>{let e="SQLITE_ERROR",i=new Error(e+": "+t);return i.code=e,n(i),""},jp=(...n)=>Up($p(...n)),{from:xg}=Array,wg=/'/g,vg=n=>n.toString(16).padStart(2,"0"),Eg=n=>`x'${xg(n,vg).join("")}'`,_g=n=>{switch(typeof n){case"string":return"'"+n.replace(wg,"''")+"'";case"number":if(!isFinite(n))return;case"boolean":return+n;case"object":case"undefined":switch(!0){case!n:return"NULL";case n instanceof Date:return"'"+n.toISOString()+"'";case n instanceof Buffer:case n instanceof ArrayBuffer:n=new Uint8Array(n);case n instanceof Uint8Array:case n instanceof Uint8ClampedArray:return Eg(n)}}},_a=(n,t)=>{let[e,...i]=Bp(...t),r=[e[0]];for(let a=0;a{},Rg=(n,t,e,i,r,o)=>{let a=[],{stdout:s,stderr:l}=gr.spawn(i,r,o).on("close",p=>{if(c||p!==0){p!==0&&ui(t,"busy DB or query too slow");return}let m=a.join("").trim();if(e==="query")n(m);else{let y=qp(m||"[]");n(e==="get"&&kg(y)?y.shift():y)}});s.on("data",p=>{a.push(p)});let c=!1;l.on("data",p=>{c=!0,ui(t,"".trim.call(p))})},Og=(n,t,e)=>{let i=Pp(n),r=i?Tg:Ag,{stdin:o,stdout:a,stderr:s}=gr.spawn(n,t);i?o.write(`.mode json +`):o.write(`.mode quote +.headers on +`),e&&o.write(`.timeout ${e} +`);let l=Promise.resolve();return(c,p,m,y,w)=>{m==="close"?(o.write(`.quit +`),l=null):l&&(l=l.then(()=>new Promise(E=>{let d="",f=_=>{d+=_;let A=!1;for(;d.endsWith(r);)A=!0,d=d.slice(0,-r.length);if(A){for(v();d.startsWith(r);)d=d.slice(r.length);if(m==="query")c(d);else{let D=i?qp(d||"[]"):Mp(d);c(m==="get"?D.shift():D)}}},g=_=>{v(),p(new Error(_))},v=()=>{E(),a.removeListener("data",f),s.removeListener("data",g)};a.on("data",f),s.once("data",g),o.write(`${w[w.length-1]}; +`),o.write(`SELECT '${Na}' as _; +`)})))}},Aa=(n,t,e,i,r)=>(...o)=>new Promise((a,s)=>{let l=_a(s,o);l.length&&(n==="get"&&/^SELECT\s+/i.test(l)&&!/\s+LIMIT\s+\d+$/i.test(l)&&(l+=" LIMIT 1"),e(a,s,n,t,i.concat(l),r))}),Hp="";function Sa(n,t={}){n===":memory:"&&(n=Hp||(Hp=q.join(Xt.tmpdir(),randomUUID())));let e=t.timeout||0,i=t.bin||"sqlite3",r=[n,"-bail"],o={timeout:e};t.readonly&&r.push("-readonly"),e&&r.push("-cmd",".timeout "+e);let a=r.concat("-json"),s=t.exec||(t.persistent?Og(i,r,e):Rg);return{transaction(){let l=[];return Ng((...c)=>{l.push(c)},"commit",{value(){return new Promise((c,p)=>{let m=["BEGIN TRANSACTION"];for(let y of l){let w=_a(p,y);if(!w.length)return;m.push(w)}m.push("COMMIT"),s(c,p,"query",i,r.concat(m.join(";")),o)})}})},query:Aa("query",i,s,r,o),get:Aa("get",i,s,a,o),all:Aa("all",i,s,a,o),close:t.persistent?()=>s(null,null,"close"):Sg,raw:jp}}var Ra="Library/Group Containers/group.com.apple.notes",Wp="NoteStore.sqlite",Dg=978307200,br=class extends ce{constructor(){super(...arguments);this.owners={};this.resolvedAccounts={};this.resolvedFiles={};this.resolvedFolders={};this.multiAccount=!1;this.noteCount=0;this.parsedNotes=0;this.omitFirstLine=!0;this.importTrashed=!1;this.includeHandwriting=!1;this.trashFolders=[]}init(){if(!st.Platform.isMacOS||!st.Platform.isDesktop){this.modal.contentEl.createEl("p",{text:"Due to platform limitations, Apple Notes cannot be exported from this device. Open your vault on a Mac to export from Apple Notes."}),this.notAvailable=!0;return}this.addOutputLocationSetting("Apple Notes"),new st.Setting(this.modal.contentEl).setName("Import recently deleted notes").setDesc('Import notes in the "Recently Deleted" folder. Unlike in Apple Notes, they will not be automatically removed after a set amount of time.').addToggle(e=>e.setValue(!1).onChange(async i=>this.importTrashed=i)),new st.Setting(this.modal.contentEl).setName("Omit first line").setDesc("Don't include the first line in the text, since Apple Notes uses it as the title. It will still be used as the note name.").addToggle(e=>e.setValue(!0).onChange(async i=>this.omitFirstLine=i)),new st.Setting(this.modal.contentEl).setName("Include handwriting text").setDesc("When Apple Notes has detected handwriting in drawings, include it as text before the drawing.").addToggle(e=>e.setValue(!1).onChange(async i=>this.includeHandwriting=i))}async getNotesDatabase(){let e=q.join(Xt.homedir(),Ra),i=window.electron.remote.dialog.showOpenDialogSync({defaultPath:e,properties:["openDirectory"],message:'Select the "group.com.apple.notes" folder to allow Obsidian to read Apple Notes data.'});if(!(i!=null&&i.includes(e)))return new st.Notice("Data import failed. Ensure you have selected the correct Apple Notes data folder."),null;let r=q.join(e,Wp),o=q.join(Xt.tmpdir(),Wp);return await Pe.copyFile(r,o),await Pe.copyFile(r+"-shm",o+"-shm"),await Pe.copyFile(r+"-wal",o+"-wal"),new Sa(o,{readonly:!0,persistent:!0})}async import(e){if(this.ctx=e,this.protobufRoot=Zp.Root.fromJSON(ls),this.rootFolder=await this.getOutputFolder(),!this.rootFolder){new st.Notice("Please select a location to export to.");return}if(this.database=await this.getNotesDatabase(),!this.database)return;this.keys=Object.fromEntries((await this.database.all`SELECT z_ent, z_name FROM z_primarykey`).map(a=>[a.Z_NAME,a.Z_ENT]));let i=await this.database.all` + SELECT z_pk FROM ziccloudsyncingobject WHERE z_ent = ${this.keys.ICAccount} + `,r=await this.database.all` + SELECT z_pk, ztitle2 FROM ziccloudsyncingobject WHERE z_ent = ${this.keys.ICFolder} + `;for(let a of i)await this.resolveAccount(a.Z_PK);for(let a of r)try{await this.resolveFolder(a.Z_PK)}catch(s){this.ctx.reportFailed(a.ZTITLE2,s==null?void 0:s.message),console.error(s)}let o=await this.database.all` + SELECT + z_pk, zfolder, ztitle1 FROM ziccloudsyncingobject + WHERE + z_ent = ${this.keys.ICNote} + AND ztitle1 IS NOT NULL + AND zfolder NOT IN (${this.trashFolders}) + `;this.noteCount=o.length;for(let a of o)try{await this.resolveNote(a.Z_PK)}catch(s){this.ctx.reportFailed(a.ZTITLE1,s==null?void 0:s.message),console.error(s)}this.database.close()}async resolveAccount(e){!this.multiAccount&&Object.keys(this.resolvedAccounts).length&&(this.multiAccount=!0);let i=await this.database.get` + SELECT zname, zidentifier FROM ziccloudsyncingobject + WHERE z_ent = ${this.keys.ICAccount} AND z_pk = ${e} + `;this.resolvedAccounts[e]={name:i.ZNAME,uuid:i.ZIDENTIFIER,path:q.join(Xt.homedir(),Ra,"Accounts",i.ZIDENTIFIER)}}async resolveFolder(e){var a;if(e in this.resolvedFiles)return this.resolvedFolders[e];let i=await this.database.get` + SELECT ztitle2, zparent, zidentifier, zfoldertype, zowner + FROM ziccloudsyncingobject + WHERE z_ent = ${this.keys.ICFolder} AND z_pk = ${e} + `,r;if(i.ZFOLDERTYPE==3)return null;if(!this.importTrashed&&i.ZFOLDERTYPE==1)return this.trashFolders.push(e),null;if(i.ZPARENT!==null)r=((a=await this.resolveFolder(i.ZPARENT))==null?void 0:a.path)+"/";else if(this.multiAccount){let s=this.resolvedAccounts[i.ZOWNER].name;r=`${this.rootFolder.path}/${s}/`}else r=`${this.rootFolder.path}/`;i.ZIDENTIFIER.startsWith("DefaultFolder")||(r+=Ze(i.ZTITLE2));let o=await this.createFolders(r);return this.resolvedFolders[e]=o,this.owners[e]=i.ZOWNER,o}async resolveNote(e){if(e in this.resolvedFiles)return this.resolvedFiles[e];let i=await this.database.get` + SELECT + nd.z_pk, hex(nd.zdata) as zhexdata, zcso.ztitle1, zfolder, + zcreationdate1, zcreationdate2, zcreationdate3, zmodificationdate1, zispasswordprotected + FROM + zicnotedata AS nd, + (SELECT + *, NULL AS zcreationdate3, NULL AS zcreationdate2, + NULL AS zispasswordprotected FROM ziccloudsyncingobject + ) AS zcso + WHERE + zcso.z_pk = nd.znote + AND zcso.z_pk = ${e} + `;if(i.ZISPASSWORDPROTECTED)return this.ctx.reportSkipped(i.ZTITLE1,"note is password protected"),null;let r=this.resolvedFolders[i.ZFOLDER]||this.rootFolder,o=`${i.ZTITLE1}.md`,a=await this.saveAsMarkdownFile(r,o,"");this.ctx.status(`Importing note ${o}`),this.resolvedFiles[e]=a,this.owners[e]=this.owners[i.ZFOLDER];let s=this.decodeData(i.zhexdata,Wt);return this.vault.modify(a,await s.format(),{ctime:this.decodeTime(i.ZCREATIONDATE3||i.ZCREATIONDATE2||i.ZCREATIONDATE1),mtime:this.decodeTime(i.ZMODIFICATIONDATE1)}),this.parsedNotes++,this.ctx.reportProgress(this.parsedNotes,this.noteCount),a}async resolveAttachment(e,i){if(e in this.resolvedFiles)return this.resolvedFiles[e];let r,o,a,s,l;switch(i){case"com.apple.paper.doc.scan":s=await this.database.get` + SELECT + zidentifier, zfallbackpdfgeneration, zcreationdate, zmodificationdate, znote + FROM + (SELECT *, NULL AS zfallbackpdfgeneration FROM ziccloudsyncingobject) + WHERE + z_ent = ${this.keys.ICAttachment} + AND z_pk = ${e} + `,r=q.join("FallbackPDFs",s.ZIDENTIFIER,s.ZFALLBACKPDFGENERATION||"","FallbackPDF.pdf"),o="Scan",a="pdf";break;case"com.apple.notes.gallery":s=await this.database.get` + SELECT + zidentifier, zsizeheight, zsizewidth, zcreationdate, zmodificationdate, znote + FROM ziccloudsyncingobject + WHERE + z_ent = ${this.keys.ICAttachment} + AND z_pk = ${e} + `,r=q.join("Previews",`${s.ZIDENTIFIER}-1-${s.ZSIZEWIDTH}x${s.ZSIZEHEIGHT}-0.jpeg`),o="Scan Page",a="jpg";break;case"com.apple.paper":s=await this.database.get` + SELECT + zidentifier, zfallbackimagegeneration, zcreationdate, zmodificationdate, + znote, zhandwritingsummary + FROM + (SELECT *, NULL AS zfallbackimagegeneration FROM ziccloudsyncingobject) + WHERE + z_ent = ${this.keys.ICAttachment} + AND z_pk = ${e} + `,s.ZFALLBACKIMAGEGENERATION?r=q.join("FallbackImages",s.ZIDENTIFIER,s.ZFALLBACKIMAGEGENERATION,"FallbackImage.png"):r=q.join("FallbackImages",`${s.ZIDENTIFIER}.jpg`),o="Drawing",a="png";break;default:s=await this.database.get` + SELECT + a.zidentifier, a.zfilename, + a.zgeneration1, b.zcreationdate, b.zmodificationdate, b.znote + FROM + (SELECT *, NULL AS zgeneration1 FROM ziccloudsyncingobject) AS a, + ziccloudsyncingobject AS b + WHERE + a.z_ent = ${this.keys.ICMedia} + AND a.z_pk = ${e} + AND a.z_pk = b.zmedia + `,r=q.join("Media",s.ZIDENTIFIER,s.ZGENERATION1||"",s.ZFILENAME),[o,a]=Ro(s.ZFILENAME);break}try{let c=await this.getAttachmentSource(this.resolvedAccounts[this.owners[s.ZNOTE]],r),p=await this.getAvailablePathForAttachment(`${o}.${a}`,[]);l=await this.vault.createBinary(p,c,{ctime:this.decodeTime(s.ZCREATIONDATE),mtime:this.decodeTime(s.ZMODIFICATIONDATE)})}catch(c){return this.ctx.reportFailed(r),console.error(c),null}return this.resolvedFiles[e]=l,this.ctx.reportAttachmentSuccess(this.resolvedFiles[e].path),l}decodeData(e,i){let r=Fl.gunzipSync(Buffer.from(e,"hex")),o=this.protobufRoot.lookupType(i.protobufType).decode(r);return new i(this,o)}decodeTime(e){return!e||e<1?new Date().getTime():Math.floor((e+Dg)*1e3)}async getAttachmentSource(e,i){try{return await Pe.readFile(q.join(e.path,i))}catch(r){return await Pe.readFile(q.join(Xt.homedir(),Ra,i))}}};var kn=require("obsidian");var fi=class{constructor(t,e){this.type="file";this.entry=e,this.fullpath=t.fullpath+"/"+e.filename;let{parent:i,name:r,basename:o,extension:a}=re(e.filename);this.parent=i,this.name=r,this.basename=o,this.extension=a}async readText(){return this.entry.getData(new $i)}async read(){return(await this.entry.getData(new Vn)).arrayBuffer()}get filepath(){return this.entry.filename}get size(){return this.entry.uncompressedSize}get ctime(){return this.entry.creationDate}get mtime(){return this.entry.lastModDate}async readZip(t){return t(new Vt(new St(new Blob([await this.read()]))))}};async function gt(n,t){await n.readZip(async e=>{let r=(await e.getEntries()).filter(o=>!o.directory&&!!o.getData).map(o=>new fi(n,o));return t(e,r)})}var xr=class extends ce{constructor(){super(...arguments);this.attachmentMap={}}init(){this.addFileChooserSetting("Bear2bk",["bear2bk"]),this.addOutputLocationSetting("Bear")}async import(e){let{files:i}=this;if(i.length===0){new kn.Notice("Please pick at least one file to import.");return}let r=await this.getOutputFolder();if(!r){new kn.Notice("Please select a location to export to.");return}let o=r,a=new RegExp("\\[[^\\]]*\\]\\((assets/[^\\)]+)\\)","gm"),s=await this.createFolders(`${r.path}/archive`),l=await this.createFolders(`${r.path}/trash`);for(let c of i){if(e.isCancelled())return;e.status("Processing "+c.name),await gt(c,async(p,m)=>{let y=await this.collectMetadata(e,m);for(let w of m){if(e.isCancelled())return;let{fullpath:E,filepath:d,parent:f,name:g,extension:v}=w;if(!(g==="info.json"||g==="tags.json")){e.status("Processing "+g);try{if(v==="md"||v==="markdown"){let _=re(f).basename;e.status("Importing note "+_);let A=await w.readText();A=this.removeMarkdownHeader(_,A);let D=[...A.matchAll(a)];if(D.length>0)for(let O of D){let[S,M]=O,L=q.join(f,decodeURI(M)),j=await this.getAttachmentStoragePath(L);j=encodeURI(j);let Z=S.replace(M,j);A=A.replace(S,Z)}let T=(0,kn.normalizePath)(_),k=y[f],b=o;k!=null&&k.archived?b=s:k!=null&&k.trashed&&(b=l);let C=await this.saveAsMarkdownFile(b,T,A);k!=null&&k.ctime&&(k!=null&&k.mtime)&&await this.modifFileTimestamps(k,C),e.reportNoteSuccess(_)}else if(d.match(/\/assets\//g)){e.status("Importing asset "+w.name);let _=await this.getAttachmentStoragePath(w.filepath),A=await w.read();await this.vault.createBinary(_,A),e.reportAttachmentSuccess(w.fullpath)}else e.reportSkipped(E,"unknown type of file")}catch(_){e.reportFailed(E,_)}}}})}}async modifFileTimestamps(e,i){let r={ctime:e.ctime,mtime:e.mtime};await this.vault.append(i,"",r)}async collectMetadata(e,i){let r={};for(let o of i){if(e.isCancelled())return r;if(o.name!=="info.json")continue;let a=await o.readText(),l=JSON.parse(a)["net.shinyfrog.bear"],c=Date.parse(l.creationDate),p=Date.parse(l.modificationDate);r[o.parent]={ctime:isNaN(c)?void 0:c,mtime:isNaN(p)?void 0:p,archived:l.archived===1,trashed:l.trashed===1}}return r}async getAttachmentStoragePath(e){let i=(0,kn.normalizePath)(e);if(this.attachmentMap[i])return this.attachmentMap[i];let r=Object.values(this.attachmentMap),o=await this.getAvailablePathForAttachment(i,r);return o=o.replace(/:/g,""),this.attachmentMap[i]=o,o}removeMarkdownHeader(e,i){if(!i.startsWith("# "))return i;let r=i.indexOf(` +`),o=r>0?i.substring(2,r):i.substring(2);return o=o.trim(),o!==e.trim()&&o!==""?i:r>0?i.substring(r+1):""}};var xi=require("obsidian");var Bf=require("obsidian");var Yp=require("obsidian");var zp=n=>({...n,created:di(n.created),statusupdated:di(n.statusupdated),updated:di(n.updated),duedate:di(n.duedate),taskflag:n.taskflag==="true",reminderdate:n.reminder?di(n.reminder.reminderdate):void 0,sortweight:n.sortweight}),di=n=>n?(0,Yp.moment)(n,"YYYYMMDDThhmmssZ").toDate():void 0;var Gp=/highlight-(?:text|source)-([a-z0-9]+)/;function Cg(n){n.addRule("highlightedCodeBlock",{filter:function(t){var e=t.firstChild;return t.nodeName==="DIV"&&Gp.test(t.className)&&e&&e.nodeName==="PRE"},replacement:function(t,e,i){var r=e.className||"",o=(r.match(Gp)||[null,""])[1];return` + +`+i.fence+o+` +`+e.firstChild.textContent+` +`+i.fence+` + +`}})}function Ig(n){n.addRule("strikethrough",{filter:["del","s","strike"],replacement:function(t){return"~"+t+"~"}})}var Fg=Array.prototype.indexOf,Lg=Array.prototype.every,Nn={};Nn.tableCell={filter:["th","td"],replacement:function(n,t){return Da(Kp(t))?n:Oa(n,t)}};Nn.tableRow={filter:"tr",replacement:function(n,t){let e=Kp(t);if(Da(e))return n;var i="",r={left:":--",right:"--:",center:":-:"};if(Pg(t)){let l=Xp(e);for(var o=0;o=t.childNodes.length?null:t.childNodes[o];var a="---",s=c?(c.getAttribute("align")||"").toLowerCase():"";s&&(a=r[s]||a),c?i+=Oa(a,t.childNodes[o]):i+=Oa(a,null,o)}}return` +`+n+(i?` +`+i:"")}};Nn.table={filter:function(n){return n.nodeName==="TABLE"},replacement:function(n,t){if(Da(t))return n;n=n.replace(/\n+/g,` +`);var e=n.trim().split(` +`);e.length>=2&&(e=e[1]);var i=e.indexOf("| ---")===0,r=Xp(t),o="";return r&&!i&&(o="|"+" |".repeat(r)+` +|`+" --- |".repeat(r)),` + +`+o+n+` + +`}};Nn.tableSection={filter:["thead","tbody","tfoot"],replacement:function(n){return n}};function Pg(n){var t=n.parentNode;return t.nodeName==="THEAD"||t.firstChild===n&&(t.nodeName==="TABLE"||Mg(t))&&Lg.call(n.childNodes,function(e){return e.nodeName==="TH"})}function Mg(n){var t=n.previousSibling;return n.nodeName==="TBODY"&&(!t||t.nodeName==="THEAD"&&/^\s*$/i.test(t.textContent))}function Oa(n,t=null,e=null){e===null&&(e=Fg.call(t.parentNode.childNodes,t));var i=" ";e===0&&(i="| ");let r=n.trim().replace(/\n\r/g,"
").replace(/\n/g,"
");for(r=r.replace(/\|+/g,"\\|");r.length<3;)r+=" ";return t&&(r=$g(r,t," ")),i+r+" |"}function Vp(n){if(!n.childNodes)return!1;for(let t=0;tt&&(t=r)}return t}function Bg(n){n.keep(function(e){return e.nodeName==="TABLE"});for(var t in Nn)n.addRule(t,Nn[t])}function Ug(n){n.addRule("taskListItems",{filter:function(t){return t.type==="checkbox"&&t.parentNode.nodeName==="LI"},replacement:function(t,e){return(e.checked?"[x]":"[ ]")+" "}})}function Jp(n){n.use([Cg,Ig,Bg,Ug])}var ue=n=>{let t={get(e,i){return e[i]}};return new Proxy(n.attributes,t)};var Qp="\n```\n",Ca=n=>{let t=ue(n),e="-en-codeblock:true";return t.style&&t.style.value.indexOf(e)>=0},jg=n=>{let t=ue(n),e="padding-left:",i=0;return t.style&&t.style.value.indexOf(e)>=0&&(i=Math.floor(t.style.value.split(e)[1].split("px")[0]/20)),i},Ia=n=>n.replace(/\\(.)/g,"$1"),eu=(n,t)=>{let e=jg(t);return n=`${" ".repeat(e)}${n}`,Ca(t)?(n=Ia(n),`${Qp}${n}${Qp}`):t.parentElement&&Ca(t.parentElement)&&t.parentElement.firstElementChild===t?`${n}`:t.parentElement&&Ca(t.parentElement)?` +${n}`:t.isBlock?` +${n} +`:n};var wr="\n```\n",Hg="-en-codeblock:true",qg=/\b(Courier|Mono|Consolas|Console|Inconsolata|Pitch|Monaco|monospace)\b/,tu=n=>{var o,a;if(n.nodeType!==1)return null;let t=n.childNodes,e=t.length;if(e>1)return"mixed";if(e===1){let s=tu(t[0]);if(s)return s}let i=ue(n);if(n.tagName==="FONT")return(o=i.face)==null?void 0:o.value;let r=(a=i.style)==null?void 0:a.value;if(r){let s=r.match(/font-family:([^;]+)/);if(s)return s[1]}return null},mi=n=>{var r;let e=(r=ue(n).style)==null?void 0:r.value;if(e&&e.includes(Hg))return!0;let i=tu(n);return!!i&&qg.test(i)},nu=(n,t)=>{if(mi(t)){let e=t.previousSibling,i=e&&e.tagName===t.tagName&&mi(e),r=t.nextSibling,o=r&&r.tagName===t.tagName&&mi(r);return i||o?(n=i?` +${n}`:`${wr}${n}`,n=o?`${n} +`:`${n}${wr}`,n):(n=Ia(n),n.trim()?`${wr}${n}${wr}`:n)}return t.parentElement&&mi(t.parentElement)&&t.parentElement.firstElementChild===t?n:t.parentElement&&mi(t.parentElement)?` +${n}`:t.isBlock?` +${n} +`:n};var qe=n=>t=>t.nodeName===n||t.nodeName.toLowerCase()===n;var iu={filter:qe("IMG"),replacement:(n,t)=>{let e=ue(t);if(!e.src)return"";let i=e.src.value,r=t.width||"",o=t.height||"",a=i;B.sanitizeResourceNameSpaces?a=a.replace(/ /g,B.replacementChar):B.urlEncodeFileNamesAndLinks&&(a=encodeURI(a));let s=r||o?` =${r}x${o}`:"";if(B.keepImageSize)return s=r||o?`|${r||0}x${o||0}`:"",a.startsWith("./")?`![[${a}${s}]]`:`![${s}](${a})`;if(!i.match(/^[a-z]+:/))return`![[${a}]]`;let l=e.src.value.split("/");return`![${l[l.length-1]}](${a})`}};var fe=class{constructor(){this.noteIdNameMap={},this.noteIdNameTOCMap={}}static getInstance(){return fe.instance||(fe.instance=new fe),fe.instance}addItemToMap(t){this.noteIdNameMap[t.url]={...this.noteIdNameMap[t.url],title:t.title,noteName:this.currentNoteName,notebookName:this.currentNotebookName,uniqueEnd:t.uniqueEnd}}addItemToTOCMap(t){this.noteIdNameTOCMap[t.url]={...this.noteIdNameMap[t.url],title:t.title,noteName:this.currentNoteName,notebookName:this.currentNotebookName,uniqueEnd:t.uniqueEnd}}getNoteIdNameMap(){return this.noteIdNameMap}getNoteIdNameTOCMap(){return this.noteIdNameTOCMap}getAllNoteIdNameMap(){return{...this.noteIdNameMap,...this.noteIdNameTOCMap}}getNoteIdNameMapByNoteTitle(t){return Object.values(this.getAllNoteIdNameMap()).filter(e=>e.title===t)}setCurrentNotebookName(t){this.currentNotebookName=t}getCurrentNotebookName(){return this.currentNotebookName}setCurrentNotebookFullpath(t){this.currentNotebookFullpath=t}setCurrentNoteName(t){this.currentNoteName=t}getCurrentNoteName(){return this.currentNoteName}getCurrentNotePath(){return this.currentNotePath}setCurrentNotePath(t){this.currentNotePath=t}getCurrentNotebookFullpath(){return this.currentNotebookFullpath}};var ru=require("obsidian");var Sn=n=>n.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&");var Wg={"application/andrew-inset":"ez","application/applixware":"aw","application/atom+xml":"atom","application/atomcat+xml":"atomcat","application/atomdeleted+xml":"atomdeleted","application/atomsvc+xml":"atomsvc","application/atsc-dwd+xml":"dwd","application/atsc-held+xml":"held","application/atsc-rsat+xml":"rsat","application/bdoc":"bdoc","application/calendar+xml":"xcs","application/ccxml+xml":"ccxml","application/cdfx+xml":"cdfx","application/cdmi-capability":"cdmia","application/cdmi-container":"cdmic","application/cdmi-domain":"cdmid","application/cdmi-object":"cdmio","application/cdmi-queue":"cdmiq","application/cpl+xml":"cpl","application/cu-seeme":"cu","application/dash+xml":"mpd","application/dash-patch+xml":"mpp","application/davmount+xml":"davmount","application/docbook+xml":"dbk","application/dssc+der":"dssc","application/dssc+xml":"xdssc","application/ecmascript":"es","application/emma+xml":"emma","application/emotionml+xml":"emotionml","application/epub+zip":"epub","application/exi":"exi","application/express":"exp","application/fdt+xml":"fdt","application/font-tdpfr":"pfr","application/geo+json":"geojson","application/gml+xml":"gml","application/gpx+xml":"gpx","application/gxf":"gxf","application/gzip":"gz","application/hjson":"hjson","application/hyperstudio":"stk","application/inkml+xml":"ink","application/ipfix":"ipfix","application/its+xml":"its","application/java-archive":"jar","application/java-serialized-object":"ser","application/java-vm":"class","application/javascript":"js","application/json":"json","application/json5":"json5","application/jsonml+json":"jsonml","application/ld+json":"jsonld","application/lgr+xml":"lgr","application/lost+xml":"lostxml","application/mac-binhex40":"hqx","application/mac-compactpro":"cpt","application/mads+xml":"mads","application/manifest+json":"webmanifest","application/marc":"mrc","application/marcxml+xml":"mrcx","application/mathematica":"ma","application/mathml+xml":"mathml","application/mbox":"mbox","application/media-policy-dataset+xml":"mpf","application/mediaservercontrol+xml":"mscml","application/metalink+xml":"metalink","application/metalink4+xml":"meta4","application/mets+xml":"mets","application/mmt-aei+xml":"maei","application/mmt-usd+xml":"musd","application/mods+xml":"mods","application/mp21":"m21","application/mp4":"mp4s","application/msword":"doc","application/mxf":"mxf","application/n-quads":"nq","application/n-triples":"nt","application/node":"cjs","application/octet-stream":"bin","application/oda":"oda","application/oebps-package+xml":"opf","application/ogg":"ogx","application/omdoc+xml":"omdoc","application/onenote":"onetoc","application/oxps":"oxps","application/p2p-overlay+xml":"relo","application/patch-ops-error+xml":"xer","application/pdf":"pdf","application/pgp-encrypted":"pgp","application/pgp-keys":"asc","application/pgp-signature":"asc","application/pics-rules":"prf","application/pkcs10":"p10","application/pkcs7-mime":"p7m","application/pkcs7-signature":"p7s","application/pkcs8":"p8","application/pkix-attr-cert":"ac","application/pkix-cert":"cer","application/pkix-crl":"crl","application/pkix-pkipath":"pkipath","application/pkixcmp":"pki","application/pls+xml":"pls","application/postscript":"ai","application/provenance+xml":"provx","application/prs.cww":"cww","application/pskc+xml":"pskcxml","application/raml+yaml":"raml","application/rdf+xml":"rdf","application/reginfo+xml":"rif","application/relax-ng-compact-syntax":"rnc","application/resource-lists+xml":"rl","application/resource-lists-diff+xml":"rld","application/rls-services+xml":"rs","application/route-apd+xml":"rapd","application/route-s-tsid+xml":"sls","application/route-usd+xml":"rusd","application/rpki-ghostbusters":"gbr","application/rpki-manifest":"mft","application/rpki-roa":"roa","application/rsd+xml":"rsd","application/rss+xml":"rss","application/rtf":"rtf","application/sbml+xml":"sbml","application/scvp-cv-request":"scq","application/scvp-cv-response":"scs","application/scvp-vp-request":"spq","application/scvp-vp-response":"spp","application/sdp":"sdp","application/senml+xml":"senmlx","application/sensml+xml":"sensmlx","application/set-payment-initiation":"setpay","application/set-registration-initiation":"setreg","application/shf+xml":"shf","application/sieve":"siv","application/smil+xml":"smi","application/sparql-query":"rq","application/sparql-results+xml":"srx","application/srgs":"gram","application/srgs+xml":"grxml","application/sru+xml":"sru","application/ssdl+xml":"ssdl","application/ssml+xml":"ssml","application/swid+xml":"swidtag","application/tei+xml":"tei","application/thraud+xml":"tfi","application/timestamped-data":"tsd","application/toml":"toml","application/trig":"trig","application/ttml+xml":"ttml","application/ubjson":"ubj","application/urc-ressheet+xml":"rsheet","application/urc-targetdesc+xml":"td","application/vnd.1000minds.decision-model+xml":"1km","application/vnd.3gpp.pic-bw-large":"plb","application/vnd.3gpp.pic-bw-small":"psb","application/vnd.3gpp.pic-bw-var":"pvb","application/vnd.3gpp2.tcap":"tcap","application/vnd.3m.post-it-notes":"pwn","application/vnd.accpac.simply.aso":"aso","application/vnd.accpac.simply.imp":"imp","application/vnd.acucobol":"acu","application/vnd.acucorp":"atc","application/vnd.adobe.air-application-installer-package+zip":"air","application/vnd.adobe.formscentral.fcdt":"fcdt","application/vnd.adobe.fxp":"fxp","application/vnd.adobe.xdp+xml":"xdp","application/vnd.adobe.xfdf":"xfdf","application/vnd.age":"age","application/vnd.ahead.space":"ahead","application/vnd.airzip.filesecure.azf":"azf","application/vnd.airzip.filesecure.azs":"azs","application/vnd.amazon.ebook":"azw","application/vnd.americandynamics.acc":"acc","application/vnd.amiga.ami":"ami","application/vnd.android.package-archive":"apk","application/vnd.anser-web-certificate-issue-initiation":"cii","application/vnd.anser-web-funds-transfer-initiation":"fti","application/vnd.antix.game-component":"atx","application/vnd.apple.installer+xml":"mpkg","application/vnd.apple.keynote":"key","application/vnd.apple.mpegurl":"m3u8","application/vnd.apple.numbers":"numbers","application/vnd.apple.pages":"pages","application/vnd.apple.pkpass":"pkpass","application/vnd.aristanetworks.swi":"swi","application/vnd.astraea-software.iota":"iota","application/vnd.audiograph":"aep","application/vnd.balsamiq.bmml+xml":"bmml","application/vnd.blueice.multipass":"mpm","application/vnd.bmi":"bmi","application/vnd.businessobjects":"rep","application/vnd.chemdraw+xml":"cdxml","application/vnd.chipnuts.karaoke-mmd":"mmd","application/vnd.cinderella":"cdy","application/vnd.citationstyles.style+xml":"csl","application/vnd.claymore":"cla","application/vnd.cloanto.rp9":"rp9","application/vnd.clonk.c4group":"c4g","application/vnd.cluetrust.cartomobile-config":"c11amc","application/vnd.cluetrust.cartomobile-config-pkg":"c11amz","application/vnd.commonspace":"csp","application/vnd.contact.cmsg":"cdbcmsg","application/vnd.cosmocaller":"cmc","application/vnd.crick.clicker":"clkx","application/vnd.crick.clicker.keyboard":"clkk","application/vnd.crick.clicker.palette":"clkp","application/vnd.crick.clicker.template":"clkt","application/vnd.crick.clicker.wordbank":"clkw","application/vnd.criticaltools.wbs+xml":"wbs","application/vnd.ctc-posml":"pml","application/vnd.cups-ppd":"ppd","application/vnd.curl.car":"car","application/vnd.curl.pcurl":"pcurl","application/vnd.dart":"dart","application/vnd.data-vision.rdz":"rdz","application/vnd.dbf":"dbf","application/vnd.dece.data":"uvf","application/vnd.dece.ttml+xml":"uvt","application/vnd.dece.unspecified":"uvx","application/vnd.dece.zip":"uvz","application/vnd.denovo.fcselayout-link":"fe_launch","application/vnd.dna":"dna","application/vnd.dolby.mlp":"mlp","application/vnd.dpgraph":"dpg","application/vnd.dreamfactory":"dfac","application/vnd.ds-keypoint":"kpxx","application/vnd.dvb.ait":"ait","application/vnd.dvb.service":"svc","application/vnd.dynageo":"geo","application/vnd.ecowin.chart":"mag","application/vnd.enliven":"nml","application/vnd.epson.esf":"esf","application/vnd.epson.msf":"msf","application/vnd.epson.quickanime":"qam","application/vnd.epson.salt":"slt","application/vnd.epson.ssf":"ssf","application/vnd.eszigno3+xml":"es3","application/vnd.ezpix-album":"ez2","application/vnd.ezpix-package":"ez3","application/vnd.fdf":"fdf","application/vnd.fdsn.mseed":"mseed","application/vnd.fdsn.seed":"seed","application/vnd.flographit":"gph","application/vnd.fluxtime.clip":"ftc","application/vnd.framemaker":"fm","application/vnd.frogans.fnc":"fnc","application/vnd.frogans.ltf":"ltf","application/vnd.fsc.weblaunch":"fsc","application/vnd.fujitsu.oasys":"oas","application/vnd.fujitsu.oasys2":"oa2","application/vnd.fujitsu.oasys3":"oa3","application/vnd.fujitsu.oasysgp":"fg5","application/vnd.fujitsu.oasysprs":"bh2","application/vnd.fujixerox.ddd":"ddd","application/vnd.fujixerox.docuworks":"xdw","application/vnd.fujixerox.docuworks.binder":"xbd","application/vnd.fuzzysheet":"fzs","application/vnd.genomatix.tuxedo":"txd","application/vnd.geogebra.file":"ggb","application/vnd.geogebra.tool":"ggt","application/vnd.geometry-explorer":"gex","application/vnd.geonext":"gxt","application/vnd.geoplan":"g2w","application/vnd.geospace":"g3w","application/vnd.gmx":"gmx","application/vnd.google-apps.document":"gdoc","application/vnd.google-apps.presentation":"gslides","application/vnd.google-apps.spreadsheet":"gsheet","application/vnd.google-earth.kml+xml":"kml","application/vnd.google-earth.kmz":"kmz","application/vnd.grafeq":"gqf","application/vnd.groove-account":"gac","application/vnd.groove-help":"ghf","application/vnd.groove-identity-message":"gim","application/vnd.groove-injector":"grv","application/vnd.groove-tool-message":"gtm","application/vnd.groove-tool-template":"tpl","application/vnd.groove-vcard":"vcg","application/vnd.hal+xml":"hal","application/vnd.handheld-entertainment+xml":"zmm","application/vnd.hbci":"hbci","application/vnd.hhe.lesson-player":"les","application/vnd.hp-hpgl":"hpgl","application/vnd.hp-hpid":"hpid","application/vnd.hp-hps":"hps","application/vnd.hp-jlyt":"jlt","application/vnd.hp-pcl":"pcl","application/vnd.hp-pclxl":"pclxl","application/vnd.hydrostatix.sof-data":"sfd-hdstx","application/vnd.ibm.minipay":"mpy","application/vnd.ibm.modcap":"afp","application/vnd.ibm.rights-management":"irm","application/vnd.ibm.secure-container":"sc","application/vnd.iccprofile":"icc","application/vnd.igloader":"igl","application/vnd.immervision-ivp":"ivp","application/vnd.immervision-ivu":"ivu","application/vnd.insors.igm":"igm","application/vnd.intercon.formnet":"xpw","application/vnd.intergeo":"i2g","application/vnd.intu.qbo":"qbo","application/vnd.intu.qfx":"qfx","application/vnd.ipunplugged.rcprofile":"rcprofile","application/vnd.irepository.package+xml":"irp","application/vnd.is-xpr":"xpr","application/vnd.isac.fcs":"fcs","application/vnd.jam":"jam","application/vnd.jcp.javame.midlet-rms":"rms","application/vnd.jisp":"jisp","application/vnd.joost.joda-archive":"joda","application/vnd.kahootz":"ktz","application/vnd.kde.karbon":"karbon","application/vnd.kde.kchart":"chrt","application/vnd.kde.kformula":"kfo","application/vnd.kde.kivio":"flw","application/vnd.kde.kontour":"kon","application/vnd.kde.kpresenter":"kpr","application/vnd.kde.kspread":"ksp","application/vnd.kde.kword":"kwd","application/vnd.kenameaapp":"htke","application/vnd.kidspiration":"kia","application/vnd.kinar":"kne","application/vnd.koan":"skp","application/vnd.kodak-descriptor":"sse","application/vnd.las.las+xml":"lasxml","application/vnd.llamagraphics.life-balance.desktop":"lbd","application/vnd.llamagraphics.life-balance.exchange+xml":"lbe","application/vnd.lotus-1-2-3":"123","application/vnd.lotus-approach":"apr","application/vnd.lotus-freelance":"pre","application/vnd.lotus-notes":"nsf","application/vnd.lotus-organizer":"org","application/vnd.lotus-screencam":"scm","application/vnd.lotus-wordpro":"lwp","application/vnd.macports.portpkg":"portpkg","application/vnd.mapbox-vector-tile":"mvt","application/vnd.mcd":"mcd","application/vnd.medcalcdata":"mc1","application/vnd.mediastation.cdkey":"cdkey","application/vnd.mfer":"mwf","application/vnd.mfmp":"mfm","application/vnd.micrografx.flo":"flo","application/vnd.micrografx.igx":"igx","application/vnd.mif":"mif","application/vnd.mobius.daf":"daf","application/vnd.mobius.dis":"dis","application/vnd.mobius.mbk":"mbk","application/vnd.mobius.mqy":"mqy","application/vnd.mobius.msl":"msl","application/vnd.mobius.plc":"plc","application/vnd.mobius.txf":"txf","application/vnd.mophun.application":"mpn","application/vnd.mophun.certificate":"mpc","application/vnd.mozilla.xul+xml":"xul","application/vnd.ms-artgalry":"cil","application/vnd.ms-cab-compressed":"cab","application/vnd.ms-excel":"xls","application/vnd.ms-excel.addin.macroenabled.12":"xlam","application/vnd.ms-excel.sheet.binary.macroenabled.12":"xlsb","application/vnd.ms-excel.sheet.macroenabled.12":"xlsm","application/vnd.ms-excel.template.macroenabled.12":"xltm","application/vnd.ms-fontobject":"eot","application/vnd.ms-htmlhelp":"chm","application/vnd.ms-ims":"ims","application/vnd.ms-lrm":"lrm","application/vnd.ms-officetheme":"thmx","application/vnd.ms-outlook":"msg","application/vnd.ms-pki.seccat":"cat","application/vnd.ms-pki.stl":"stl","application/vnd.ms-powerpoint":"ppt","application/vnd.ms-powerpoint.addin.macroenabled.12":"ppam","application/vnd.ms-powerpoint.presentation.macroenabled.12":"pptm","application/vnd.ms-powerpoint.slide.macroenabled.12":"sldm","application/vnd.ms-powerpoint.slideshow.macroenabled.12":"ppsm","application/vnd.ms-powerpoint.template.macroenabled.12":"potm","application/vnd.ms-project":"mpp","application/vnd.ms-word.document.macroenabled.12":"docm","application/vnd.ms-word.template.macroenabled.12":"dotm","application/vnd.ms-works":"wps","application/vnd.ms-wpl":"wpl","application/vnd.ms-xpsdocument":"xps","application/vnd.mseq":"mseq","application/vnd.musician":"mus","application/vnd.muvee.style":"msty","application/vnd.mynfc":"taglet","application/vnd.neurolanguage.nlu":"nlu","application/vnd.nitf":"ntf","application/vnd.noblenet-directory":"nnd","application/vnd.noblenet-sealer":"nns","application/vnd.noblenet-web":"nnw","application/vnd.nokia.n-gage.ac+xml":"ac","application/vnd.nokia.n-gage.data":"ngdat","application/vnd.nokia.n-gage.symbian.install":"n-gage","application/vnd.nokia.radio-preset":"rpst","application/vnd.nokia.radio-presets":"rpss","application/vnd.novadigm.edm":"edm","application/vnd.novadigm.edx":"edx","application/vnd.novadigm.ext":"ext","application/vnd.oasis.opendocument.chart":"odc","application/vnd.oasis.opendocument.chart-template":"otc","application/vnd.oasis.opendocument.database":"odb","application/vnd.oasis.opendocument.formula":"odf","application/vnd.oasis.opendocument.formula-template":"odft","application/vnd.oasis.opendocument.graphics":"odg","application/vnd.oasis.opendocument.graphics-template":"otg","application/vnd.oasis.opendocument.image":"odi","application/vnd.oasis.opendocument.image-template":"oti","application/vnd.oasis.opendocument.presentation":"odp","application/vnd.oasis.opendocument.presentation-template":"otp","application/vnd.oasis.opendocument.spreadsheet":"ods","application/vnd.oasis.opendocument.spreadsheet-template":"ots","application/vnd.oasis.opendocument.text":"odt","application/vnd.oasis.opendocument.text-master":"odm","application/vnd.oasis.opendocument.text-template":"ott","application/vnd.oasis.opendocument.text-web":"oth","application/vnd.olpc-sugar":"xo","application/vnd.oma.dd2+xml":"dd2","application/vnd.openblox.game+xml":"obgx","application/vnd.openofficeorg.extension":"oxt","application/vnd.openstreetmap.data+xml":"osm","application/vnd.openxmlformats-officedocument.presentationml.presentation":"pptx","application/vnd.openxmlformats-officedocument.presentationml.slide":"sldx","application/vnd.openxmlformats-officedocument.presentationml.slideshow":"ppsx","application/vnd.openxmlformats-officedocument.presentationml.template":"potx","application/vnd.openxmlformats-officedocument.spreadsheetml.sheet":"xlsx","application/vnd.openxmlformats-officedocument.spreadsheetml.template":"xltx","application/vnd.openxmlformats-officedocument.wordprocessingml.document":"docx","application/vnd.openxmlformats-officedocument.wordprocessingml.template":"dotx","application/vnd.osgeo.mapguide.package":"mgp","application/vnd.osgi.dp":"dp","application/vnd.osgi.subsystem":"esa","application/vnd.palm":"pdb","application/vnd.pawaafile":"paw","application/vnd.pg.format":"str","application/vnd.pg.osasli":"ei6","application/vnd.picsel":"efif","application/vnd.pmi.widget":"wg","application/vnd.pocketlearn":"plf","application/vnd.powerbuilder6":"pbd","application/vnd.previewsystems.box":"box","application/vnd.proteus.magazine":"mgz","application/vnd.publishare-delta-tree":"qps","application/vnd.pvi.ptid1":"ptid","application/vnd.quark.quarkxpress":"qxd","application/vnd.rar":"rar","application/vnd.realvnc.bed":"bed","application/vnd.recordare.musicxml":"mxl","application/vnd.recordare.musicxml+xml":"musicxml","application/vnd.rig.cryptonote":"cryptonote","application/vnd.rim.cod":"cod","application/vnd.rn-realmedia":"rm","application/vnd.rn-realmedia-vbr":"rmvb","application/vnd.route66.link66+xml":"link66","application/vnd.sailingtracker.track":"st","application/vnd.seemail":"see","application/vnd.sema":"sema","application/vnd.semd":"semd","application/vnd.semf":"semf","application/vnd.shana.informed.formdata":"ifm","application/vnd.shana.informed.formtemplate":"itp","application/vnd.shana.informed.interchange":"iif","application/vnd.shana.informed.package":"ipk","application/vnd.simtech-mindmapper":"twd","application/vnd.smaf":"mmf","application/vnd.smart.teacher":"teacher","application/vnd.software602.filler.form+xml":"fo","application/vnd.solent.sdkm+xml":"sdkm","application/vnd.spotfire.dxp":"dxp","application/vnd.spotfire.sfs":"sfs","application/vnd.stardivision.calc":"sdc","application/vnd.stardivision.draw":"sda","application/vnd.stardivision.impress":"sdd","application/vnd.stardivision.math":"smf","application/vnd.stardivision.writer":"sdw","application/vnd.stardivision.writer-global":"sgl","application/vnd.stepmania.package":"smzip","application/vnd.stepmania.stepchart":"sm","application/vnd.sun.wadl+xml":"wadl","application/vnd.sun.xml.calc":"sxc","application/vnd.sun.xml.calc.template":"stc","application/vnd.sun.xml.draw":"sxd","application/vnd.sun.xml.draw.template":"std","application/vnd.sun.xml.impress":"sxi","application/vnd.sun.xml.impress.template":"sti","application/vnd.sun.xml.math":"sxm","application/vnd.sun.xml.writer":"sxw","application/vnd.sun.xml.writer.global":"sxg","application/vnd.sun.xml.writer.template":"stw","application/vnd.sus-calendar":"sus","application/vnd.svd":"svd","application/vnd.symbian.install":"sis","application/vnd.syncml+xml":"xsm","application/vnd.syncml.dm+wbxml":"bdm","application/vnd.syncml.dm+xml":"xdm","application/vnd.syncml.dmddf+xml":"ddf","application/vnd.tao.intent-module-archive":"tao","application/vnd.tcpdump.pcap":"pcap","application/vnd.tmobile-livetv":"tmo","application/vnd.trid.tpt":"tpt","application/vnd.triscape.mxs":"mxs","application/vnd.trueapp":"tra","application/vnd.ufdl":"ufd","application/vnd.uiq.theme":"utz","application/vnd.umajin":"umj","application/vnd.unity":"unityweb","application/vnd.uoml+xml":"uoml","application/vnd.vcx":"vcx","application/vnd.visio":"vsd","application/vnd.visionary":"vis","application/vnd.vsf":"vsf","application/vnd.wap.wbxml":"wbxml","application/vnd.wap.wmlc":"wmlc","application/vnd.wap.wmlscriptc":"wmlsc","application/vnd.webturbo":"wtb","application/vnd.wolfram.player":"nbp","application/vnd.wordperfect":"wpd","application/vnd.wqd":"wqd","application/vnd.wt.stf":"stf","application/vnd.xara":"xar","application/vnd.xfdl":"xfdl","application/vnd.yamaha.hv-dic":"hvd","application/vnd.yamaha.hv-script":"hvs","application/vnd.yamaha.hv-voice":"hvp","application/vnd.yamaha.openscoreformat":"osf","application/vnd.yamaha.openscoreformat.osfpvg+xml":"osfpvg","application/vnd.yamaha.smaf-audio":"saf","application/vnd.yamaha.smaf-phrase":"spf","application/vnd.yellowriver-custom-menu":"cmp","application/vnd.zul":"zir","application/vnd.zzazz.deck+xml":"zaz","application/voicexml+xml":"vxml","application/wasm":"wasm","application/watcherinfo+xml":"wif","application/widget":"wgt","application/winhlp":"hlp","application/wsdl+xml":"wsdl","application/wspolicy+xml":"wspolicy","application/x-7z-compressed":"7z","application/x-abiword":"abw","application/x-ace-compressed":"ace","application/x-apple-diskimage":"dmg","application/x-arj":"arj","application/x-authorware-bin":"aab","application/x-authorware-map":"aam","application/x-authorware-seg":"aas","application/x-bcpio":"bcpio","application/x-bdoc":"bdoc","application/x-bittorrent":"torrent","application/x-blorb":"blb","application/x-bzip":"bz","application/x-bzip2":"bz2","application/x-cbr":"cbr","application/x-cdlink":"vcd","application/x-cfs-compressed":"cfs","application/x-chat":"chat","application/x-chess-pgn":"pgn","application/x-chrome-extension":"crx","application/x-cocoa":"cco","application/x-conference":"nsc","application/x-cpio":"cpio","application/x-csh":"csh","application/x-debian-package":"deb","application/x-dgc-compressed":"dgc","application/x-director":"dir","application/x-doom":"wad","application/x-dtbncx+xml":"ncx","application/x-dtbook+xml":"dtb","application/x-dtbresource+xml":"res","application/x-dvi":"dvi","application/x-envoy":"evy","application/x-eva":"eva","application/x-font-bdf":"bdf","application/x-font-ghostscript":"gsf","application/x-font-linux-psf":"psf","application/x-font-pcf":"pcf","application/x-font-snf":"snf","application/x-font-type1":"pfa","application/x-freearc":"arc","application/x-futuresplash":"spl","application/x-gca-compressed":"gca","application/x-glulx":"ulx","application/x-gnumeric":"gnumeric","application/x-gramps-xml":"gramps","application/x-gtar":"gtar","application/x-hdf":"hdf","application/x-httpd-php":"php","application/x-install-instructions":"install","application/x-iso9660-image":"iso","application/x-iwork-keynote-sffkey":"key","application/x-iwork-numbers-sffnumbers":"numbers","application/x-iwork-pages-sffpages":"pages","application/x-java-archive-diff":"jardiff","application/x-java-jnlp-file":"jnlp","application/x-keepass2":"kdbx","application/x-latex":"latex","application/x-lua-bytecode":"luac","application/x-lzh-compressed":"lzh","application/x-makeself":"run","application/x-mie":"mie","application/x-mobipocket-ebook":"prc","application/x-ms-application":"application","application/x-ms-shortcut":"lnk","application/x-ms-wmd":"wmd","application/x-ms-wmz":"wmz","application/x-ms-xbap":"xbap","application/x-msaccess":"mdb","application/x-msbinder":"obd","application/x-mscardfile":"crd","application/x-msclip":"clp","application/x-msdos-program":"exe","application/x-msdownload":"exe","application/x-msmediaview":"mvb","application/x-msmetafile":"wmf","application/x-msmoney":"mny","application/x-mspublisher":"pub","application/x-msschedule":"scd","application/x-msterminal":"trm","application/x-mswrite":"wri","application/x-netcdf":"nc","application/x-ns-proxy-autoconfig":"pac","application/x-nzb":"nzb","application/x-perl":"pl","application/x-pilot":"prc","application/x-pkcs12":"p12","application/x-pkcs7-certificates":"p7b","application/x-pkcs7-certreqresp":"p7r","application/x-rar-compressed":"rar","application/x-redhat-package-manager":"rpm","application/x-research-info-systems":"ris","application/x-sea":"sea","application/x-sh":"sh","application/x-shar":"shar","application/x-shockwave-flash":"swf","application/x-silverlight-app":"xap","application/x-sql":"sql","application/x-stuffit":"sit","application/x-stuffitx":"sitx","application/x-subrip":"srt","application/x-sv4cpio":"sv4cpio","application/x-sv4crc":"sv4crc","application/x-t3vm-image":"t3","application/x-tads":"gam","application/x-tar":"tar","application/x-tcl":"tcl","application/x-tex":"tex","application/x-tex-tfm":"tfm","application/x-texinfo":"texinfo","application/x-tgif":"obj","application/x-ustar":"ustar","application/x-virtualbox-hdd":"hdd","application/x-virtualbox-ova":"ova","application/x-virtualbox-ovf":"ovf","application/x-virtualbox-vbox":"vbox","application/x-virtualbox-vbox-extpack":"vbox-extpack","application/x-virtualbox-vdi":"vdi","application/x-virtualbox-vhd":"vhd","application/x-virtualbox-vmdk":"vmdk","application/x-wais-source":"src","application/x-web-app-manifest+json":"webapp","application/x-x509-ca-cert":"der","application/x-xfig":"fig","application/x-xliff+xml":"xlf","application/x-xpinstall":"xpi","application/x-xz":"xz","application/x-zmachine":"z1","application/xaml+xml":"xaml","application/xcap-att+xml":"xav","application/xcap-caps+xml":"xca","application/xcap-diff+xml":"xdf","application/xcap-el+xml":"xel","application/xcap-ns+xml":"xns","application/xenc+xml":"xenc","application/xhtml+xml":"xhtml","application/xliff+xml":"xlf","application/xml":"xml","application/xml-dtd":"dtd","application/xop+xml":"xop","application/xproc+xml":"xpl","application/xslt+xml":"xsl","application/xspf+xml":"xspf","application/xv+xml":"mxml","application/yang":"yang","application/yin+xml":"yin","application/zip":"zip","audio/3gpp":"3gpp","audio/adpcm":"adp","audio/amr":"amr","audio/basic":"au","audio/midi":"mid","audio/mobile-xmf":"mxmf","audio/mp3":"mp3","audio/mp4":"m4a","audio/mpeg":"mpga","audio/ogg":"oga","audio/s3m":"s3m","audio/silk":"sil","audio/vnd.dece.audio":"uva","audio/vnd.digital-winds":"eol","audio/vnd.dra":"dra","audio/vnd.dts":"dts","audio/vnd.dts.hd":"dtshd","audio/vnd.lucent.voice":"lvp","audio/vnd.ms-playready.media.pya":"pya","audio/vnd.nuera.ecelp4800":"ecelp4800","audio/vnd.nuera.ecelp7470":"ecelp7470","audio/vnd.nuera.ecelp9600":"ecelp9600","audio/vnd.rip":"rip","audio/wav":"wav","audio/wave":"wav","audio/webm":"weba","audio/x-aac":"aac","audio/x-aiff":"aif","audio/x-caf":"caf","audio/x-flac":"flac","audio/x-m4a":"m4a","audio/x-matroska":"mka","audio/x-mpegurl":"m3u","audio/x-ms-wax":"wax","audio/x-ms-wma":"wma","audio/x-pn-realaudio":"ram","audio/x-pn-realaudio-plugin":"rmp","audio/x-realaudio":"ra","audio/x-wav":"wav","audio/xm":"xm","chemical/x-cdx":"cdx","chemical/x-cif":"cif","chemical/x-cmdf":"cmdf","chemical/x-cml":"cml","chemical/x-csml":"csml","chemical/x-xyz":"xyz","font/collection":"ttc","font/otf":"otf","font/ttf":"ttf","font/woff":"woff","font/woff2":"woff2","image/aces":"exr","image/apng":"apng","image/avci":"avci","image/avcs":"avcs","image/avif":"avif","image/bmp":"bmp","image/cgm":"cgm","image/dicom-rle":"drle","image/emf":"emf","image/fits":"fits","image/g3fax":"g3","image/gif":"gif","image/heic":"heic","image/heic-sequence":"heics","image/heif":"heif","image/heif-sequence":"heifs","image/hej2k":"hej2","image/hsj2":"hsj2","image/ief":"ief","image/jls":"jls","image/jp2":"jp2","image/jpeg":"jpeg","image/jph":"jph","image/jphc":"jhc","image/jpm":"jpm","image/jpx":"jpx","image/jxr":"jxr","image/jxra":"jxra","image/jxrs":"jxrs","image/jxs":"jxs","image/jxsc":"jxsc","image/jxsi":"jxsi","image/jxss":"jxss","image/ktx":"ktx","image/ktx2":"ktx2","image/png":"png","image/prs.btif":"btif","image/prs.pti":"pti","image/sgi":"sgi","image/svg+xml":"svg","image/t38":"t38","image/tiff":"tif","image/tiff-fx":"tfx","image/vnd.adobe.photoshop":"psd","image/vnd.airzip.accelerator.azv":"azv","image/vnd.dece.graphic":"uvi","image/vnd.djvu":"djvu","image/vnd.dvb.subtitle":"sub","image/vnd.dwg":"dwg","image/vnd.dxf":"dxf","image/vnd.fastbidsheet":"fbs","image/vnd.fpx":"fpx","image/vnd.fst":"fst","image/vnd.fujixerox.edmics-mmr":"mmr","image/vnd.fujixerox.edmics-rlc":"rlc","image/vnd.microsoft.icon":"ico","image/vnd.ms-dds":"dds","image/vnd.ms-modi":"mdi","image/vnd.ms-photo":"wdp","image/vnd.net-fpx":"npx","image/vnd.pco.b16":"b16","image/vnd.tencent.tap":"tap","image/vnd.valve.source.texture":"vtf","image/vnd.wap.wbmp":"wbmp","image/vnd.xiff":"xif","image/vnd.zbrush.pcx":"pcx","image/webp":"webp","image/wmf":"wmf","image/x-3ds":"3ds","image/x-cmu-raster":"ras","image/x-cmx":"cmx","image/x-freehand":"fh","image/x-icon":"ico","image/x-jng":"jng","image/x-mrsid-image":"sid","image/x-ms-bmp":"bmp","image/x-pcx":"pcx","image/x-pict":"pic","image/x-portable-anymap":"pnm","image/x-portable-bitmap":"pbm","image/x-portable-graymap":"pgm","image/x-portable-pixmap":"ppm","image/x-rgb":"rgb","image/x-tga":"tga","image/x-xbitmap":"xbm","image/x-xpixmap":"xpm","image/x-xwindowdump":"xwd","message/disposition-notification":"disposition-notification","message/global":"u8msg","message/global-delivery-status":"u8dsn","message/global-disposition-notification":"u8mdn","message/global-headers":"u8hdr","message/rfc822":"eml","message/vnd.wfa.wsc":"wsc","model/3mf":"3mf","model/gltf+json":"gltf","model/gltf-binary":"glb","model/iges":"igs","model/mesh":"msh","model/mtl":"mtl","model/obj":"obj","model/step+xml":"stpx","model/step+zip":"stpz","model/step-xml+zip":"stpxz","model/stl":"stl","model/vnd.collada+xml":"dae","model/vnd.dwf":"dwf","model/vnd.gdl":"gdl","model/vnd.gtw":"gtw","model/vnd.mts":"mts","model/vnd.opengex":"ogex","model/vnd.parasolid.transmit.binary":"x_b","model/vnd.parasolid.transmit.text":"x_t","model/vnd.sap.vds":"vds","model/vnd.usdz+zip":"usdz","model/vnd.valve.source.compiled-map":"bsp","model/vnd.vtu":"vtu","model/vrml":"wrl","model/x3d+binary":"x3db","model/x3d+fastinfoset":"x3db","model/x3d+vrml":"x3dv","model/x3d+xml":"x3d","model/x3d-vrml":"x3dv","text/cache-manifest":"appcache","text/calendar":"ics","text/coffeescript":"coffee","text/css":"css","text/csv":"csv","text/html":"html","text/jade":"jade","text/jsx":"jsx","text/less":"less","text/markdown":"markdown","text/mathml":"mml","text/mdx":"mdx","text/n3":"n3","text/plain":"txt","text/prs.lines.tag":"dsc","text/richtext":"rtx","text/rtf":"rtf","text/sgml":"sgml","text/shex":"shex","text/slim":"slim","text/spdx":"spdx","text/stylus":"stylus","text/tab-separated-values":"tsv","text/troff":"t","text/turtle":"ttl","text/uri-list":"uri","text/vcard":"vcard","text/vnd.curl":"curl","text/vnd.curl.dcurl":"dcurl","text/vnd.curl.mcurl":"mcurl","text/vnd.curl.scurl":"scurl","text/vnd.dvb.subtitle":"sub","text/vnd.familysearch.gedcom":"ged","text/vnd.fly":"fly","text/vnd.fmi.flexstor":"flx","text/vnd.graphviz":"gv","text/vnd.in3d.3dml":"3dml","text/vnd.in3d.spot":"spot","text/vnd.sun.j2me.app-descriptor":"jad","text/vnd.wap.wml":"wml","text/vnd.wap.wmlscript":"wmls","text/vtt":"vtt","text/x-asm":"s","text/x-c":"c","text/x-component":"htc","text/x-fortran":"f","text/x-handlebars-template":"hbs","text/x-java-source":"java","text/x-lua":"lua","text/x-markdown":"mkd","text/x-nfo":"nfo","text/x-opml":"opml","text/x-org":"org","text/x-pascal":"p","text/x-processing":"pde","text/x-sass":"sass","text/x-scss":"scss","text/x-setext":"etx","text/x-sfv":"sfv","text/x-suse-ymp":"ymp","text/x-uuencode":"uu","text/x-vcalendar":"vcs","text/x-vcard":"vcf","text/xml":"xml","text/yaml":"yaml","video/3gpp":"3gp","video/3gpp2":"3g2","video/h261":"h261","video/h263":"h263","video/h264":"h264","video/iso.segment":"m4s","video/jpeg":"jpgv","video/jpm":"jpm","video/mj2":"mj2","video/mp2t":"ts","video/mp4":"mp4","video/mpeg":"mpeg","video/ogg":"ogv","video/quicktime":"qt","video/vnd.dece.hd":"uvh","video/vnd.dece.mobile":"uvm","video/vnd.dece.pd":"uvp","video/vnd.dece.sd":"uvs","video/vnd.dece.video":"uvv","video/vnd.dvb.file":"dvb","video/vnd.fvt":"fvt","video/vnd.mpegurl":"mxu","video/vnd.ms-playready.media.pyv":"pyv","video/vnd.uvvu.mp4":"uvu","video/vnd.vivo":"viv","video/webm":"webm","video/x-f4v":"f4v","video/x-fli":"fli","video/x-flv":"flv","video/x-m4v":"m4v","video/x-matroska":"mkv","video/x-mng":"mng","video/x-ms-asf":"asf","video/x-ms-vob":"vob","video/x-ms-wm":"wm","video/x-ms-wmv":"wmv","video/x-ms-wmx":"wmx","video/x-ms-wvx":"wvx","video/x-msvideo":"avi","video/x-sgi-movie":"movie","video/x-smv":"smv","x-conference/x-cooltalk":"ice"},Zg=/^\s*([^;\s]*)(?:;|\s|$)/;function vr(n){if(!n||typeof n!="string")return"";let t=Zg.exec(n);return t&&Wg[t[1].toLowerCase()]||""}var Rn=n=>Ze(n).replace(/[\[\]\#\^]/g,""),hi=(n,t)=>K.readdirSync(n).filter(i=>{let r=i.split(".").slice(0,-1).join("."),o=Sn(t),a=r.match(new RegExp(`${o}\\.\\d+`));return r===t||a}).length,ou=(n,t)=>{let e=B.useUniqueUnknownFileNames?"unknown_filename"+(Math.random().toString(16)+"0000000").slice(2,10):"unknown_filename",i=Gg(t),r=e;if(t["resource-attributes"]&&t["resource-attributes"]["file-name"]){let s=t["resource-attributes"]["file-name"].substr(0,50);r=re(s).basename}r=r.replace(/[/\\?%*:|"<>\[\]\+]/g,"-"),B.sanitizeResourceNameSpaces&&(r=r.replace(/ /g,B.replacementChar));let o=hi(n,r);return{fileName:`${o>0?`${r}.${o}`:r}.${i}`,extension:i,index:o}},Fa=n=>Rn(n.title?`${n.title.toString()}`:"Untitled"),au=(n,t,e="md")=>`${La(n,t)}.${e}`,Yg=n=>{if(!(n["resource-attributes"]&&n["resource-attributes"]["file-name"]))return"";let t=n["resource-attributes"]["file-name"].split(".");return t.length>1?t[t.length-1]:void 0},zg=n=>{let t=n.mime;return t&&vr(t)||""},Gg=n=>{let t="dat";return Yg(n)||zg(n)||t},Vg=(n,t)=>(0,ru.moment)(n.created).format("YYYYMMDDHHmm"),La=(n,t)=>{let e;if(B.isZettelkastenNeeded||B.useZettelIdAsFilename){let i=Vg(t,n),r=hi(n,i),o=" ";e=r!==0?`${i}.${r}`:i,B.useZettelIdAsFilename||(e+=Fa(t)!=="Untitled"?`${o}${Fa(t)}`:"")}else{let i=Fa(t),r=hi(n,i);e=r===0?i:`${i}.${r}`}return e};var su=n=>n==="Table of Contents";var Kg=n=>n.replace(/\[|\]/g,""),Xg=n=>n.replace(/\\/g,""),cu={filter:qe("A"),replacement:(n,t)=>{let e=ue(t);if(!e.href)return"";let i=Er(B).turndown(Kg(t.innerHTML));i=Xg(i);let r="",o=i.match(/^(#{1,6} )(.*)/);o&&(r=o[1],i=o[2]);let a=e.href.value,s=e.type?e.type.value:void 0,l=B.urlEncodeFileNamesAndLinks?encodeURI(a):a;if(s==="file")return`![[${l}]]`;if(a.match(/^(https?:|www\.|file:|ftp:|mailto:)/))return r+e0(i,a);if(a.startsWith("evernote://")){let c=Rn(i),p=fe.getInstance(),m=xn(6);return su(p.getCurrentNoteName())?p.addItemToTOCMap({url:a,title:c,uniqueEnd:m}):p.addItemToMap({url:a,title:c,uniqueEnd:m}),r+`[[${a}]]`}return r+`[[${l}${i===l?"":`|${i}`}]]`}},Jg={"&":"&","<":"<",">":">",""":'"',"'":"'"},pu=/&(?:amp|lt|gt|quot|#39);/g,Qg=RegExp(pu.source);function lu(n){return n&&Qg.test(n)?n.replace(pu,t=>Jg[t]):n}var e0=(n,t)=>!n||lu(n)===lu(t)?B.generateNakedUrls?t:`<${t}>`:`[${n}](${t})`;var we={bold:"**",italic:"_",highlight:"==",strikethrough:"~~"};var t0="-evernote-highlight:true;",n0="--en-highlight",i0="bold",r0="italic",uu={filter:qe("SPAN"),replacement:(n,t)=>{let e=ue(t);if(e.style&&n.trim()!==""){let i=e.style.value;if(n!==""){let r=i.includes(i0),o=i.includes(r0);if(r&&!o)return`${we.bold}${n}${we.bold}`;if(!r&&o)return`${we.italic}${n}${we.italic}`;if(r&&o)return`${we.italic}${we.bold}${n}${we.bold}${we.italic}`}return i.includes(t0)||i.includes(n0)?`${we.highlight}${n}${we.highlight}`:n}return n}};var fu={filter:["del","s","strike"],replacement:n=>`${we.strikethrough}${n}${we.strikethrough}`};var du={filter:qe("EN-TODO"),replacement:(n,t)=>{var r,o;let e=ue(t);return`${((o=(r=t.parentElement)==null?void 0:r.nodeName)==null?void 0:o.toUpperCase())==="LI"?"":"- "}${e.checked&&e.checked.value==="true"?"[x]":"[ ]"} ${n}`}};var mu={filter:qe("BR"),replacement:(n,t)=>""};var o0=n=>{let t=ue(n),e="--en-task-group:true";return t.style&&t.style.value.indexOf(e)>=0},a0=n=>{let t=ue(n),e="--en-id:";return t.style.value.split(e)[1].split(";")[0]},hu={filter:qe("DIV"),replacement:(n,t)=>o0(t)?`${a0(t)}`:B.monospaceIsCodeBlock?nu(n,t):eu(n,t)};var gu={filter:["i"],replacement:n=>n.trim()!==""?`${we.italic}${n}${we.italic}`:n};var _r="- [ ]",Tr="- [x]";var yu=" ",bu={filter:"li",replacement:(n,t,e)=>{let i=m=>{let y=ue(m),w="--en-checked:true;";return y.style&&y.style.value.indexOf(w)>=0},r=m=>{let y=ue(m),w="--en-checked:false;";return y.style&&y.style.value.indexOf(w)>=0},o=n.match(/^\n*/)[0].length||0,a=yu.repeat(o),s=n.replace(/^\n+/,"").replace(/\n+$/,` +`).replace(/\n/gm,` +${yu}`),l=o>0?a:i(t)?`${Tr} `:r(t)?`${_r} `:"* ",c=t.parentNode;if(c.nodeName==="OL"){let m=c.getAttribute("start"),y=Array.prototype.indexOf.call(c.children,t);l=`${m?Number(m)+y:y+1}. `}let p;return p=l+s+(t.nextSibling&&!/\n$/.test(s)?` +`:""),p}};var Er=n=>{let t=new window.TurndownService({br:"",...n.turndownOptions,blankReplacement:(e,i)=>i.isBlock?` + +`:"",keepReplacement:(e,i)=>i.isBlock?` +${i.outerHTML} +`:i.outerHTML,defaultReplacement:(e,i)=>i.isBlock?` +${e} +`:e});return t.use(Jp),t.addRule("span",uu),t.addRule("strikethrough",fu),t.addRule("evernote task items",du),t.addRule("wikistyle links",cu),t.addRule("images",iu),t.addRule("list",bu),t.addRule("italic",gu),n.keepMDCharactersOfENNotes&&(t.escape=e=>e),t.addRule("divBlock",hu),n.keepOriginalAmountOfNewlines&&t.addRule("newline",mu),t};var xu=n=>{n.replaceWith(...Array.from(n.children))},wu=n=>{let t=n.parentElement;t.replaceWith(...Array.from(t.childNodes)),t.append(...Array.from(n.childNodes)),n.appendChild(t)},s0=n=>(Array.from(n.querySelectorAll("span>en-todo")).forEach(wu),Array.from(n.querySelectorAll("a>en-todo")).forEach(wu),n),l0=n=>{let t=n.replace(/

  • /g,"
  • ");return t=t.replace(/<\/li>/g,"
  • "),t=t.replace(/
  • (\s)*
    /g,"
  • "),t=t.replace(/<\/div>(\s)*<\/div><\/li>/g,"
  • "),t},c0=n=>{var o;let t=Array.from(n.getElementsByTagName("ul")),e=Array.from(n.getElementsByTagName("ol")),i=t.concat(e);i.forEach(a=>{a.parentElement.tagName==="LI"&&a.parentElement.replaceWith(a),a.previousElementSibling&&a.previousElementSibling.tagName==="LI"&&a.previousElementSibling.appendChild(a)});for(let a of i){let s=a.parentElement;(s==null?void 0:s.tagName)==="DIV"&&((o=s==null?void 0:s.parentElement)==null?void 0:o.tagName)==="UL"&&xu(s),((s==null?void 0:s.tagName)==="UL"||(s==null?void 0:s.tagName)==="OL")&&(s==null?void 0:s.childNodes.length)===1&&xu(s)}let r=Array.from(n.getElementsByTagName("li"));for(let a of r){let s=a.firstElementChild;if(s&&s.tagName==="DIV"){let l=Array.from(s.childNodes);s.replaceWith(...l)}}return n},vu=(n,{htmlContent:t})=>{let e=t.replace(/]*>/,"").replace(/(]*)\/>/,"$1>").replace(//g,""),i=new DOMParser().parseFromString(l0(e),"text/html").getElementsByTagName("en-note").item(0),r=Er(n).turndown(s0(c0(i))),o=new RegExp("","g");return r=r.replace(o,""),r&&r!=="undefined"?{content:r}:{content:""}};var df=rs(require("crypto"));var yt=require("obsidian");var Eu=(n,t)=>({createdAt:p0(n),updatedAt:u0(n),sourceUrl:f0(n),location:d0(n),reminderTime:m0(n),reminderOrder:h0(n),reminderDoneTime:g0(n),notebookName:t});var p0=n=>!B.skipCreationTime&&n.created?(0,yt.moment)(n.created).format(B.dateFormat):"",u0=n=>!B.skipUpdateTime&&n.updated?(0,yt.moment)(n.updated).format(B.dateFormat):"",f0=n=>!B.skipSourceUrl&&n["note-attributes"]?n["note-attributes"]["source-url"]:"",d0=n=>!B.skipLocation&&n["note-attributes"]&&n["note-attributes"].longitude?`${n["note-attributes"].latitude},${n["note-attributes"].longitude}`:"",m0=n=>!B.skipReminderTime&&n["note-attributes"]&&n["note-attributes"]["reminder-time"]?(0,yt.moment)(n["note-attributes"]["reminder-time"]).format(B.dateFormat):"",h0=n=>!B.skipReminderOrder&&n["note-attributes"]&&n["note-attributes"]["reminder-order"]?n["note-attributes"]["reminder-order"]:"",g0=n=>!B.skipReminderDoneTime&&n["note-attributes"]&&n["note-attributes"]["reminder-done-time"]?(0,yt.moment)(n["note-attributes"]["reminder-done-time"]).format(B.dateFormat):"",_u=n=>({tags:y0(n)}),y0=n=>{if(!B.skipTags&&n.tag){let t=Array.isArray(n.tag)?n.tag:[n.tag],e=B.nestedTags;return t.map(r=>{let o=r.toString().replace(/^#/,"");e&&(o=o.replace(new RegExp(Sn(e.separatorInEN),"g"),e.replaceSeparatorWith));let a=e&&e.replaceSpaceWith||"-";return o=o.replace(/ /g,a),`${B.useHashTags?"#":""}${o}`}).join(" ")}return""},Pa;try{Pa=window.require("btime")}catch(n){}var Ar=(n,t)=>{let e=(0,yt.moment)(t.created).valueOf();e>0&&Pa&&Pa.btime(n,e);let r=(0,yt.moment)(t.updated).valueOf()/1e3;try{K.utimesSync(n,r,r)}catch(o){}},Tu=n=>n["resource-attributes"]&&n["resource-attributes"].timestamp?(0,yt.moment)(n["resource-attributes"].timestamp):(0,yt.moment)();var Au=(n,t,e)=>{let i=n.lastIndexOf(t);return i<0?n:n.substring(0,i)+e+n.substring(i+t.length)};var Ae={mdPath:"",resourcePath:""},Nr=249,ku=(n,t)=>La(n,t).replace(/\s/g,"_"),Nu=(n,t)=>{if(n.length<=11)throw Error("FATAL: note folder directory path exceeds the OS limitation. Please pick a destination closer to the root folder.");return`${$a()}${q.sep}${n}`.length{let r=fe.getInstance().getNoteIdNameMapByNoteTitle(Rn(n.title))[0]||{uniqueEnd:xn(6)};if(t.length<=11)throw Error("FATAL: note folder directory path exceeds the OS limitation. Please pick a destination closer to the root folder.");return`${e.slice(0,Nr-11)}_${r.uniqueEnd}.md`},x0=(n,t,e)=>{let i=au(n,t,e),r=`${n}${q.sep}${Rn(i)}`;return r.lengthx0(Ae.mdPath,n,"md");var w0=n=>{K.existsSync(n)&&(K.rmSync?K.rmSync(n,{recursive:!0,force:!0}):K.rmdirSync(n,{recursive:!0})),K.mkdirSync(n)},Ru=n=>{let t=`${q.sep}${B.resourcesDir}`;return B.haveGlobalResources?`..${t}`:B.haveEnexLevelResources?`.${t}`:`.${t}${q.sep}${ku(Ae.mdPath,n)}.resources`},Ma=n=>B.haveGlobalResources?q.resolve(Ae.resourcePath,"..","..",B.resourcesDir):B.haveEnexLevelResources?Ae.resourcePath:`${Ae.resourcePath}${q.sep}${ku(Ae.mdPath,n)}.resources`,kr=new Map,Ou=n=>{let t=Ma(n);kr.has(t)||kr.set(t,0);let e=kr.get(t)||0;(B.haveEnexLevelResources||B.haveGlobalResources)&&e>=1||(w0(t),kr.set(t,e+1))},Du=n=>{let t=n.split("@@@"),e=t.pop();return e||(e=n),{notebookName:e,notebookFolderNames:t}},Cu=n=>{if(!(n instanceof Me))throw new Error("Evernote import currently only works on desktop");let{notebookName:t}=Du(n.basename);return{fullpath:Au(n.fullpath,n.basename,t||n.basename),basename:t}},Iu=(n,t)=>{let{notebookFolderNames:e}=Du(n.basename);return K.mkdirSync(q.join(t.outputDir,...e),{recursive:!0}),[t.outputDir,...e].join(t.pathSeparator)},Fu=(n,t)=>{let e=n.basename;Pu(e,t)},Lu=(n,t)=>{let e=n.basename;Pu(e,t)},Pu=(n,t)=>{let e=q.isAbsolute(t.outputDir)?t.outputDir:`${process.cwd()}${q.sep}${t.outputDir}`;Ae.mdPath=`${e}${q.sep}`,Ae.resourcePath=`${e}${q.sep}${t.resourcesDir}`,t.skipEnexFileNameFromOutputPath||(Ae.mdPath=`${Ae.mdPath}${n}`,Ae.resourcePath=`${e}${q.sep}${n}${q.sep}${t.resourcesDir}`),K.mkdirSync(Ae.mdPath,{recursive:!0}),!t.haveEnexLevelResources&&!t.haveGlobalResources&&K.mkdirSync(Ae.resourcePath,{recursive:!0}),console.log(`path ${Ae.mdPath} created`)},$a=()=>Ae.mdPath;var Mu=n=>!!n.resource,$u=n=>n["note-attributes"]&&(n["note-attributes"]["source-application"]==="webclipper.evernote"||n["note-attributes"].source==="web.clip7");var Ba={};Se(Ba,{CONTENT_PLACEHOLDER:()=>v0,END_BLOCK:()=>_0,START_BLOCK:()=>E0});var v0="{content}",E0="{content-block}",_0="{end-content-block}";var Pt=({template:n,check:t,startBlockPlaceholder:e,endBlockPlaceholder:i,valuePlaceholder:r,value:o})=>{if(o&&t())return n.replace(new RegExp(`${e}`,"g"),"").replace(new RegExp(`${i}`,"g"),"").replace(new RegExp(`${r}`,"g"),o);let a=`${e}([\\d\\D])(?:.|(\r +|\r| +))*?(?=${i})${i}`;return n.replace(new RegExp(a,"g"),"")};var Mt=(n,t,e,i)=>({template:n,check:t,startBlockPlaceholder:e.START_BLOCK,endBlockPlaceholder:e.END_BLOCK,valuePlaceholder:e.CONTENT_PLACEHOLDER,value:i});var Bu=(n,t,e)=>{let i=Mt(t,e,Ba,n.content);return Pt(i)};var gi={};Se(gi,{CONTENT_PLACEHOLDER:()=>T0,END_BLOCK:()=>k0,START_BLOCK:()=>A0});var T0="{tags}",A0="{tags-block}",k0="{end-tags-block}";var Uu=(n,t,e)=>{let i=Mt(t,e,gi,n.tags);return Pt(i)};var Ua={};Se(Ua,{CONTENT_PLACEHOLDER:()=>N0,END_BLOCK:()=>R0,START_BLOCK:()=>S0});var N0="{title}",S0="{title-block}",R0="{end-title-block}";var ju=(n,t,e)=>{let i=Mt(t,e,Ua,n.title);return Pt(i)};var rn={};Se(rn,{CONTENT_PLACEHOLDER:()=>O0,END_BLOCK:()=>C0,START_BLOCK:()=>D0});var O0="{created-at}",D0="{created-at-block}",C0="{end-created-at-block}";var Ee=(n,t,e)=>n.replace(new RegExp(`${t.CONTENT_PLACEHOLDER}`,"g"),e||"").replace(new RegExp(`${t.START_BLOCK}`,"g"),"").replace(new RegExp(`${t.END_BLOCK}`,"g"),"");var Hu=(n,t)=>Ee(t,rn,n.createdAt);var on={};Se(on,{CONTENT_PLACEHOLDER:()=>I0,END_BLOCK:()=>L0,START_BLOCK:()=>F0});var I0="{updated-at}",F0="{updated-at-block}",L0="{end-updated-at-block}";var qu=(n,t)=>Ee(t,on,n.updatedAt);var an={};Se(an,{CONTENT_PLACEHOLDER:()=>P0,END_BLOCK:()=>$0,START_BLOCK:()=>M0});var P0="{source-url}",M0="{source-url-block}",$0="{end-source-url-block}";var Wu=(n,t)=>Ee(t,an,n.sourceUrl);var sn={};Se(sn,{CONTENT_PLACEHOLDER:()=>B0,END_BLOCK:()=>j0,START_BLOCK:()=>U0});var B0="{location}",U0="{location-block}",j0="{end-location-block}";var Zu=(n,t)=>Ee(t,sn,n.location);var ln={};Se(ln,{CONTENT_PLACEHOLDER:()=>H0,END_BLOCK:()=>W0,START_BLOCK:()=>q0});var H0="{notebook}",q0="{notebook-block}",W0="{end-notebook-block}";var Yu=(n,t)=>Ee(t,ln,n.notebookName);var On={};Se(On,{CONTENT_PLACEHOLDER:()=>Z0,END_BLOCK:()=>z0,START_BLOCK:()=>Y0});var Z0="{reminder-time}",Y0="{reminder-time-block}",z0="{end-reminder-time-block}";var zu=(n,t)=>Ee(t,On,n.reminderTime);var Dn={};Se(Dn,{CONTENT_PLACEHOLDER:()=>G0,END_BLOCK:()=>K0,START_BLOCK:()=>V0});var G0="{reminder-order}",V0="{reminder-order-block}",K0="{end-reminder-order-block}";var Gu=(n,t)=>Ee(t,Dn,n.reminderOrder);var Cn={};Se(Cn,{CONTENT_PLACEHOLDER:()=>X0,END_BLOCK:()=>Q0,START_BLOCK:()=>J0});var X0="{reminder-done-time}",J0="{reminder-done-time-block}",Q0="{end-reminder-done-time-block}";var Vu=(n,t)=>Ee(t,Cn,n.reminderDoneTime);var yi={};Se(yi,{CONTENT_PLACEHOLDER:()=>ey,END_BLOCK:()=>ny,START_BLOCK:()=>ty});var ey="{tags-yaml-list}",ty="{tags-yaml-list-block}",ny="{end-tags-yaml-list-block}";var Ku=(n,t,e)=>{let i;n.tags&&(i=` +`+n.tags.split(" ").map(o=>` - ${o.replace(/^#/,"")}`).join(` +`));let r=Mt(t,e,yi,i);return Pt(r)};var ja="{metadata-block}",Ha="{end-metadata-block}";var Xu=`\r? +?`;var de=(n,t)=>n.replace(new RegExp(`${t.START_BLOCK}(?<=${t.START_BLOCK})(.*)(?=${t.END_BLOCK})${t.END_BLOCK}${Xu}`,"g"),"");var Ju=n=>de(n,rn);var Qu=n=>de(n,on);var ef=n=>de(n,an);var tf=n=>de(n,ln);var nf=n=>de(n,sn);var Sr={};Se(Sr,{CONTENT_PLACEHOLDER:()=>ry,END_BLOCK:()=>ay,START_BLOCK:()=>oy});var ry="{link-to-original}",oy="{link-to-original-block}",ay="{end-link-to-original-block}";var rf=n=>de(n,Sr);var of=n=>de(n,On);var af=n=>de(n,Cn);var sf=n=>de(n,Dn);var lf=(n,t)=>{let e=t.currentTemplate;return e=ju(n,e,()=>n.title),e=Uu(n,e,()=>!t.skipTags),e=Ku(n,e,()=>!t.skipTags),e=Bu(n,e,()=>n.content),e=rf(e),e=!t.skipCreationTime&&n.createdAt?Hu(n,e):Ju(e),e=!t.skipUpdateTime&&n.updatedAt?qu(n,e):Qu(e),e=!t.skipSourceUrl&&n.sourceUrl?Wu(n,e):ef(e),e=!t.skipLocation&&n.location?Zu(n,e):nf(e),e=t.isNotebookNameNeeded&&n.notebookName?Yu(n,e):tf(e),e=!t.skipReminderTime&&n.reminderTime?zu(n,e):of(e),e=!t.skipReminderOrder&&n.reminderOrder?Gu(n,e):sf(e),e=!t.skipReminderDoneTime&&n.reminderDoneTime?Vu(n,e):af(e),e=e.replace(ja,"").replace(Ha,""),e};var cf=(n,t,e)=>{try{K.writeFileSync(n,t),Ar(n,e)}catch(i){throw console.error("Cannot write file ",i),i}};var pf=(n,t)=>{let e=Su(t);fe.getInstance().setCurrentNotePath(e),cf(e,n,t),console.log(`Note saved to ${e}`)};var mf=n=>{let t=new RegExp(`\\${q.sep}`,"g"),e=Ru(n).replace(t,B.pathSeparator||"/");return{absoluteResourceWorkDir:Ma(n),relativeResourceWorkDir:e}},hf=n=>{let t={},e=n.content,{absoluteResourceWorkDir:i,relativeResourceWorkDir:r}=mf(n);if(console.log(`relative resource work dir: ${r}`),console.log(`absolute resource work dir: ${i}`),Ou(n),Array.isArray(n.resource))for(let o of n.resource)t={...t,...ff(i,o)};else t={...t,...ff(i,n.resource)};for(let o of Object.keys(t))e=sy(e,t,o,r);return e},sy=(n,t,e,i)=>{let r=`${i}${B.pathSeparator}${t[e].fileName.replace(/ /g," ")}`;console.log(`mediaReference src ${r} added`);let o,a=`]*)hash="${e}".([^>]*)>`,s=new RegExp(a,"g"),l=n.match(s),c=l&&l.length>0&&l[0].split("type=");if(c&&c.length>1&&c[1].startsWith('"image')){let p=l[0].match(/width="(\w+)"/),m=p?` width="${p[1]}"`:"",y=l[0].match(/height="(\w+)"/),w=y?` height="${y[1]}"`:"";o=n.replace(s,`${t[e].fileName}`)}else o=n.replace(s,`${t[e].fileName}`);return o},ff=(n,t)=>{let e={},i=t.data.$text,r=Tu(t),a=ou(n,t).fileName,s=`${n}${q.sep}${a}`;console.log(t),console.log(i);let l=Buffer.from(i,"base64");K.writeFileSync(s,l);let c=r.valueOf()/1e3;try{K.utimesSync(s,c,c)}catch(p){}if(t.recognition&&a){let p=t.recognition.match(/[a-f0-9]{32}/);console.log(`resource ${a} added with hash ${p}`),e[p]={fileName:a,alreadyUsed:!1}}else{let p=df.default.createHash("md5");p.update(l);let m=p.digest("hex");e[m]={fileName:a,alreadyUsed:!1}}return e},gf=(n,t)=>{if(t.indexOf('src="data:')<0)return t;let{absoluteResourceWorkDir:e,relativeResourceWorkDir:i}=mf(n);return K.mkdirSync(e,{recursive:!0}),t.replace(/src="data:([^;,]*)(;base64)?,([^"]*)"/g,(r,o,a,s)=>{let l=ly(o,a===";base64",s,e,n);return`src="${`${i}${B.pathSeparator}${l}`}"`})},ly=(n,t,e,i,r)=>{let o="embedded",a=cy(n)||".dat",s=hi(i,o),l=s<1?`${o}.${a}`:`${o}.${s}.${a}`,c=`${i}${q.sep}${l}`;return t||(e=decodeURIComponent(e)),K.writeFileSync(c,e,t?"base64":void 0),Ar(c,r),console.log(`data url resource ${l} added`),l},cy=n=>n.split("/").pop().split("+")[0];var yf=(n,t)=>{let e=new Date;fe.getInstance().setCurrentNoteName(n.title),Array.isArray(n.content)&&(n.content=n.content.join(""));let r={title:n.title,content:n.content,htmlContent:n.content,originalContent:n.content};console.log(`Converting for note "${r.title}" started at ${e}...`);try{Mu(n)&&(r.htmlContent=hf(n)),r.htmlContent=gf(n,r.htmlContent),r={...r,...vu(B,r)},r={...r,...Eu(n,t)},r={...r,..._u(n)};let o=lf(r,B);pf(o,n)}catch(o){throw console.error(`Failed to convert note: ${r.title}`,o),o}finally{let o=new Date,a=(o.getTime()-e.getTime())/1e3;console.log(`Conversion for note "${r.title}" finished at ${o}. Took ${a} seconds`)}};var wf=require("obsidian");var bf=n=>n.taskstatus==="open"?_r:Tr;var py="\u{1F53C}",uy="\u{1F53D}",fy="\u{1F4C5}",dy="\u23F3",vf=(n,t)=>{let e=bf(n),i=n.title?` ${n.title}`:"",r=B.obsidianTaskTag!==""?` ${B.obsidianTaskTag}`:"",o=n.duedate&&!isNaN(n.duedate.getTime())?` ${fy} ${xf(n.duedate)}`:"",a=n.reminderdate?` ${dy} ${xf(n.reminderdate)}`:"",s=n.taskflag?` ${py}`:` ${uy}`;return`${e}${r}${i}${o}${a}${s}`},xf=n=>(0,wf.moment)(n).format("YYYY-MM-DD").toString();var Wa=(n,t,e)=>{let i=K.readdirSync(n);return t=t||[],i.forEach(r=>{K.statSync(`${n}${q.sep}${r}`).isDirectory()?t=Wa(`${n}${q.sep}${r}`,t,e):(e&&q.extname(r)==`.${e}`||!e)&&t.push(q.join(n,"/",r))}),t};var Ef=(n,t)=>{let i=fe.getInstance().getAllNoteIdNameMap(),r=Object.entries(i);if(r.length===0)return;console.log("About to update links...");let o=[];for(let a of t)Wa(a,o,"");for(let a of t){console.log(`Notebook: ${a}`);let l=K.readdirSync(a).filter(c=>q.extname(c).toLowerCase()===".md");console.log(`${l.length} files to check for links`);for(let c of l){let p=q.join(a,c),m=K.readFileSync(p,"utf8"),y=m;for(let[w,E]of r){let d=E.uniqueEnd,f=E.title;o.find(D=>D.includes(d))&&(f=Nu(f,d));let g=E.notebookName,v=n.urlEncodeFileNamesAndLinks?encodeURI(f):f,_=v;g&&!a.endsWith(g)&&(_=`${g}/${v}`);let A=new RegExp(Sn(w),"g");y=y.replace(A,_)}m!==y&&(console.log(`File written: ${p}`),K.writeFileSync(p,y))}}console.log("Link update complete.")};var _f=n=>cn(rn,n);var Tf=n=>cn(sn,n),Af=n=>cn(ln,n);var kf=n=>cn(an,n),Nf=n=>cn(gi,n)||cn(yi,n);var Sf=n=>cn(on,n),cn=(n,t)=>t.includes(n.START_BLOCK)&&t.includes(n.CONTENT_PLACEHOLDER)&&t.includes(n.END_BLOCK);var Rf=`--- +`,my=`{source-url-block}source: {source-url}{end-source-url-block} +`,hy=`{tags-yaml-list-block} +tags: {tags-yaml-list} + +{end-tags-yaml-list-block}`,gy=`{content-block}{content}{end-content-block} +`,Of=Rf+hy+my+Rf+gy;var Cy=Bf.Platform.isDesktopApp?$f():null,Dr={enexSources:[],currentTemplate:"",outputDir:"./mdNotes",isMetadataNeeded:!1,isNotebookNameNeeded:!1,isZettelkastenNeeded:!1,useZettelIdAsFilename:!1,plainTextNotesOnly:!1,skipWebClips:!1,useHashTags:!0,nestedTags:{separatorInEN:"_",replaceSeparatorWith:"/",replaceSpaceWith:"-"},obsidianTaskTag:"",urlEncodeFileNamesAndLinks:!1,sanitizeResourceNameSpaces:!1,replacementChar:"_",pathSeparator:"/",resourcesDir:"_resources",turndownOptions:{headingStyle:"atx"}},Iy="@@@",B={...Dr};function Fy(n){return n==null?n:JSON.parse(JSON.stringify(n))}function Uf(n,...t){for(let e of t)for(let i of Object.keys(e)){let r=e[i],o=n[i];!Array.isArray(r)&&typeof r=="object"&&!Array.isArray(o)&&typeof o=="object"?n[i]=Uf({},o,r):n[i]=Fy(r)}return n}var Ly=n=>{B=Uf({},Dr,n);let t=B.templateFile?K.readFileSync(B.templateFile,"utf-8"):Of;t=B.currentTemplate?B.currentTemplate:t,B.skipCreationTime=!_f(t),B.skipLocation=!Tf(t),B.skipSourceUrl=!kf(t),B.skipTags=!Nf(t),B.skipUpdateTime=!Sf(t),B.isNotebookNameNeeded=Af(t),B.currentTemplate=t,console.log(`Current config is: ${JSON.stringify(B,null,4)}`),console.log(`Path separator:${q.sep}`)},Py=async(n,t,e)=>{if(!(t instanceof Me))throw new Error("Evernote import currently only works on desktop");let i=fe.getInstance();e.status("Processing "+t.name),console.log(`Getting stream from ${t}`);let r=t.createReadStream(),o={},a=i.getCurrentNotebookName();return new Promise((s,l)=>{let c=y=>(e.reportFailed(i.getCurrentNotebookFullpath(),y),l(y)),p=Cy(r),m=null;p.on("tag:note-attributes",y=>{m=y}),p.on("tag:note",y=>{if(e.isCancelled()){r.close();return}if(n.skipWebClips&&$u(y))e.reportSkipped(y.title);else{e.status("Importing note "+y.title),m&&(y["note-attributes"]=m);try{yf(y,a),e.reportNoteSuccess(a+"/"+y.title)}catch(E){return e.reportFailed(y.title||t,E),s()}}m=null;let w=i.getCurrentNotePath();if(w)for(let E of Object.keys(o)){let d=`${E}`,f=K.readFileSync(w,"utf8"),g=new Map([...o[E]].sort()),v=f.replace(d,[...g.values()].join(` +`));K.writeFileSync(w,v)}}),p.on("tag:task",y=>{let w=zp(y);o[w.taskgroupnotelevelid]||(o[w.taskgroupnotelevelid]=new Map),o[w.taskgroupnotelevelid].set(w.sortweight,vf(w,a))}),p.on("end",s),p.on("error",c),r.on("error",c)})};async function jf(n,t){Ly(n);let e=[],i=n.outputDir;for(let r of n.enexSources){if(t.isCancelled())return;let o,a=fe.getInstance();r.basename.includes(Iy)?(n.outputDir=Iu(r,n),o=Cu(r),Lu(o,n),a.setCurrentNotebookName(o.basename),a.setCurrentNotebookFullpath(o.fullpath)):(Fu(r,n),a.setCurrentNotebookName(r.basename),a.setCurrentNotebookFullpath(r.fullpath)),await Py(n,r,t),e.push($a()),n.outputDir=i}t.isCancelled()||await Ef(n,e)}var Cr=class extends ce{init(){this.addFileChooserSetting("Evernote",["enex"],!0),this.addOutputLocationSetting("Evernote")}async import(t){let{files:e}=this;if(e.length===0){new xi.Notice("Please pick at least one file to import.");return}let i=await this.getOutputFolder();if(!i){new xi.Notice("Please select a location to export to.");return}let{app:r}=this,o=r.vault.adapter;if(!(o instanceof xi.FileSystemAdapter))return;let a={...Dr,enexSources:e,outputDir:q.join(o.getBasePath(),i.path)};await jf(a,t)}};var ke=require("obsidian");var Ir=class extends ce{init(){this.addFileChooserSetting("HTML",["htm","html"],!0),this.addAttachmentSizeLimit(0),this.addMinimumImageSize(65),this.addOutputLocationSetting("HTML import")}addAttachmentSizeLimit(e){this.attachmentSizeLimit=e*10**6,new ke.Setting(this.modal.contentEl).setName("Attachment size limit (MB)").setDesc("Set 0 to disable.").addText(i=>i.then(({inputEl:r})=>{r.type="number",r.step="0.1"}).setValue(e.toString()).onChange(r=>{let o=["+","-"].includes(r)?0:Number(r);if(Number.isNaN(o)||o<0){i.setValue((this.attachmentSizeLimit/10**6).toString());return}this.attachmentSizeLimit=o*10**6}))}addMinimumImageSize(e){this.minimumImageSize=e,new ke.Setting(this.modal.contentEl).setName("Minimum image size (px)").setDesc("Set 0 to disable.").addText(i=>i.then(({inputEl:r})=>r.type="number").setValue(e.toString()).onChange(r=>{let o=["+","-"].includes(r)?0:Number(r);if(!Number.isInteger(o)||o<0){i.setValue(this.minimumImageSize.toString());return}this.minimumImageSize=o}))}async import(e){let{files:i}=this;if(i.length===0){new ke.Notice("Please pick at least one file to import.");return}let r=await this.getOutputFolder();if(!r){new ke.Notice("Please select a location to export to.");return}let o=new Map;e.reportProgress(0,i.length);for(let c=0;c{s=c});a.onCleanCache(async()=>{for(let[c,{file:p,tFile:m}]of o){if(e.isCancelled())break;try{let y=await this.app.vault.cachedRead(m),w=a.computeMetadataAsync?await a.computeMetadataAsync(Oo(y)):a.getFileCache(m);if(!w)continue;let E=[];if(w.links)for(let{link:d,position:f,displayText:g}of w.links){let{path:v,subpath:_}=(0,ke.parseLinktext)(d),A;if(Jn){let T=new URL(encodeURI(v),c);T.hash="",T.search="",A=decodeURIComponent(T.href)}else A=re(v.replace(/#/gu,"%23")).name;let D=o.get(A);if(D){let T=this.app.fileManager.generateMarkdownLink(D.tFile,m.path,_,g);E.push({from:f.start.offset,to:f.end.offset,text:T})}}E.sort((d,f)=>f.from-d.from);for(let d of E)y=y.substring(0,d.from)+d.text+y.substring(d.to);await this.vault.modify(m,y)}catch(y){e.reportFailed(p.fullpath,y)}}s()}),await l}async processFile(e,i,r){e.status("Processing "+r.name);try{let o=await r.readText(),a=ft(o);My(a);let s=r instanceof Me?Jn.pathToFileURL(r.filepath):void 0,l=new Map,c=new Map;for(let y of a.findAll("img, audio, video")){if(e.isCancelled())return;let w=y.getAttribute("src");if(w)try{let E=new URL(w.startsWith("//")?`https:${w}`:w,s),d=E.href,f=l.get(d);l.has(d)||(e.status("Downloading attachment for "+r.name),f=await this.downloadAttachment(i,y,E),l.set(d,f),f?(c.set(f.path,f),e.reportAttachmentSuccess(f.name)):e.reportSkipped(w)),f&&(y.setAttribute("src",f.path.replace(/ /g,"%20")),y instanceof HTMLImageElement||y.replaceWith(createEl("img",{attr:{src:f.path.replace(/ /g,"%20"),alt:y.getAttr("alt")}})))}catch(E){e.reportFailed(w,E)}}let p=(0,ke.htmlToMarkdown)(a),m=await this.saveAsMarkdownFile(i,r.basename,p);if(!Object.isEmpty(l)){let{metadataCache:y}=this.app,w;y.computeMetadataAsync?w=await y.computeMetadataAsync(Oo(p)):w=await new Promise(d=>{let f=y.getFileCache(m);if(f)return d(f);let g=y.on("changed",(v,_,A)=>{v===m&&(y.offref(g),d(A))})});let E=[];if(w.embeds){for(let{link:d,position:f}of w.embeds)if(c.has(d)){let g=this.app.fileManager.generateMarkdownLink(c.get(d),m.path);E.push({from:f.start.offset,to:f.end.offset,text:g})}}E.sort((d,f)=>f.from-d.from);for(let d of E)p=p.substring(0,d.from)+d.text+p.substring(d.to);await this.vault.modify(m,p)}return e.reportNoteSuccess(r.fullpath),m}catch(o){e.reportFailed(r.fullpath,o)}return null}async downloadAttachment(e,i,r){let o="",a="",s;switch(r.protocol){case"file:":let p=Jn.fileURLToPath(r.href);({basename:o,extension:a}=re(p)),s=Zi(await Pe.readFile(p));break;case"https:":case"http:":let m=await By(r),y=$y(r);o=y.basename,s=m.data,a=vr(m.mime)||y.extension;break;default:throw new Error(r.href)}if(!this.filterAttachmentSize(s)||i instanceof HTMLImageElement&&!await this.filterImageSize(s))return null;if(!a)if(i instanceof HTMLImageElement)a="png";else if(i instanceof HTMLAudioElement)a="mp3";else if(i instanceof HTMLVideoElement)a="mp4";else return null;let l=await this.createFolders((0,ke.normalizePath)(e.path+"/Attachments")),c=await this.vault.getAvailablePath(l.getParentPrefix()+o,a);return await this.vault.createBinary(c,s)}filterAttachmentSize(e){let{byteLength:i}=e;return!this.attachmentSizeLimit||i<=this.attachmentSizeLimit}async filterImageSize(e){if(!this.minimumImageSize)return!0;let i;try{i=await Uy(e)}catch(a){return!0}let{height:r,width:o}=i;return o>=this.minimumImageSize&&r>=this.minimumImageSize}};function Hf(n,t){let e=n.getAttribute(t);e!==null&&n.setAttribute(t,e.replace(/ /gu,"%20"))}function My(n){n.findAll("a").forEach(t=>Hf(t,"href")),n.findAll("audio, img, video").forEach(t=>Hf(t,"src"))}function $y(n){return re((0,ke.normalizePath)(decodeURIComponent(n.pathname)))}async function By(n){var e,i;try{let r=await fetch(n,{mode:"cors",referrerPolicy:"no-referrer"});if(r.ok)return{data:await r.arrayBuffer(),mime:(e=r.headers.get("Content-Type"))!=null?e:""}}catch(r){}let t=await(0,ke.requestUrl)(n.href);return{data:t.arrayBuffer,mime:(i=t.headers["Content-Type"])!=null?i:""}}async function Uy(n){let t=new Image,e=URL.createObjectURL(new Blob([n]));try{return await new Promise((i,r)=>{t.addEventListener("error",({error:o})=>r(o),{once:!0,passive:!0}),t.addEventListener("load",()=>i({height:t.naturalHeight,width:t.naturalWidth}),{once:!0,passive:!0}),t.src=e})}finally{URL.revokeObjectURL(e)}}var Fn=require("obsidian");var jy=/(#[^ ^#]*)/g,Hy=/[\\:*?<>\"|!@#$%^&()+=\`\'~;,.]/g;function za(n){let t=n.replace(Hy,"");return t=t.split(" ").join("-"),isNaN(t[0])||(t="_"+t),t}function Ga(n){return n.replace(jy,t=>"#"+za(t))}function qf(n){return n.charAt(0).toUpperCase()+n.slice(1).toLowerCase()}var qy=["zip"],Wy=["json"],Zy=["html","txt"],Fr=class extends ce{constructor(){super(...arguments);this.importArchived=!1;this.importTrashed=!1}init(){this.addFileChooserSetting("Notes & attachments",[...qy,...Wy,...Ln],!0),this.importArchivedSetting=new Fn.Setting(this.modal.contentEl).setName("Import archived notes").setDesc("If imported, files archived in Google Keep will be tagged as archived.").addToggle(e=>{e.setValue(this.importArchived),e.onChange(async i=>{this.importArchived=i})}),this.importTrashedSetting=new Fn.Setting(this.modal.contentEl).setName("Import deleted notes").setDesc("If imported, files deleted in Google Keep will be tagged as deleted. Deleted notes will only exist in your Google export if deleted recently.").addToggle(e=>{e.setValue(this.importTrashed),e.onChange(async i=>{this.importTrashed=i})}),this.addOutputLocationSetting("Google Keep")}async import(e){let{files:i}=this;if(i.length===0){new Fn.Notice("Please pick at least one file to import.");return}let r=await this.getOutputFolder();if(!r){new Fn.Notice("Please select a location to import your files to.");return}let o=`${r.path}/Assets`;for(let a of i){if(e.isCancelled())return;await this.handleFile(a,r,o,e)}}async handleFile(e,i,r,o){let{fullpath:a,name:s,extension:l}=e;o.status("Processing "+s);try{l==="zip"?await this.readZipEntries(e,i,r,o):l==="json"?await this.importKeepNote(e,i,o):Ln.contains(l)?(o.status("Importing attachment "+s),await this.copyFile(e,r),o.reportAttachmentSuccess(a)):!(e instanceof fi)&&!Zy.contains(l)&&o.reportSkipped(a)}catch(c){o.reportFailed(a,c)}}async readZipEntries(e,i,r,o){await gt(e,async(a,s)=>{for(let l of s){if(o.isCancelled())return;await this.handleFile(l,i,r,o)}})}async importKeepNote(e,i,r){let{fullpath:o,basename:a}=e;r.status("Importing note "+a);let s=await e.readText(),l=JSON.parse(s);if(!l||!l.userEditedTimestampUsec||!l.createdTimestampUsec){r.reportFailed(o,"Invalid Google Keep JSON");return}if(l.isArchived&&!this.importArchived){r.reportSkipped(o,"Archived note");return}if(l.isTrashed&&!this.importTrashed){r.reportSkipped(o,"Deleted note");return}await this.convertKeepJson(l,i,a),r.reportNoteSuccess(o)}async copyFile(e,i){let r=await this.createFolders(i),o=await e.read();await this.vault.createBinary(`${r.path}/${e.name}`,o)}async convertKeepJson(e,i,r){let o=[],a={};if(e.title){let c=e.title.split(` +`).filter(p=>p!==r);c.length>0&&(a.aliases=c)}let s=[];if(e.color&&e.color!=="DEFAULT"){let c=e.color.toLowerCase();c=qf(c),s.push(`Keep/Color/${c}`)}if(e.isPinned&&s.push("Keep/Pinned"),e.attachments&&s.push("Keep/Attachment"),e.isArchived&&s.push("Keep/Archived"),e.isTrashed&&s.push("Keep/Deleted"),e.labels)for(let c of e.labels)s.push(`Keep/Label/${c.name}`);if(s.length>0&&(a.tags=s.map(c=>za(c))),o.push(Yi(a)),e.textContent&&(o.push(` +`),o.push(Ga(e.textContent))),e.listContent){let c=[];for(let p of e.listContent){if(!p.text)continue;let m=`- [${p.isChecked?"X":" "}] ${p.text}`;c.push(Ga(m))}o.push(` + +`),o.push(c.join(` +`))}if(e.attachments){o.push(` + +`);for(let c of e.attachments)o.push(`![[${c.filePath}]]`)}let l=await this.saveAsMarkdownFile(i,r,o.join(""));await this.vault.append(l,"",{ctime:e.createdTimestampUsec/1e3,mtime:e.userEditedTimestampUsec/1e3})}};var xt=require("obsidian");var Va=require("obsidian");function Wf({info:n,vault:t,targetFolderPath:e,parentsInSubfolders:i}){let r=t.getAllLoadedFiles(),o=new Set,a=new Set(r.map(s=>s.name));i&&zy(n),Yy({info:n,pathDuplicateChecks:o,titleDuplicateChecks:a}),Gy({info:n,loadedFiles:r,titleDuplicateChecks:a,targetFolderPath:e})}function Yy({info:n,pathDuplicateChecks:t,titleDuplicateChecks:e}){for(let i of Object.values(n.idsToFileInfo)){let r=n.getPathForFile(i);if(t.has(`${r}${i.title}`)){let o=2;for(i.title=i.title+" "+o;t.has(`${r}${i.title}`);)o++,i.title=`${i.title.replace(/ \d+$/,"")} ${o}`}e.has(i.title+".md")&&(i.fullLinkPathNeeded=!0),t.add(`${r}${i.title}`),e.add(i.title+".md")}}function zy(n){let t=new Set(Object.values(n.idsToFileInfo).map(e=>e.parentIds).concat(Object.values(n.pathsToAttachmentInfo).map(e=>e.parentIds)).map(e=>e.length>0?e[e.length-1]:""));for(let e of Object.keys(n.idsToFileInfo))t.has(e)&&n.idsToFileInfo[e].parentIds.push(e)}function Gy({info:n,loadedFiles:t,titleDuplicateChecks:e,targetFolderPath:i}){var l;let r=new Set(t.filter(c=>!c.path.endsWith(".md")).map(c=>c.path)),o=n.attachmentPath,a=/^\.\//.test(o),s=(l=o.match(/\.\/(.*)/))==null?void 0:l[1];for(let c of Object.values(n.pathsToAttachmentInfo)){e.has(c.nameWithExtension)&&(c.fullLinkPathNeeded=!0);let p="";if(a?p=(0,Va.normalizePath)(`${i}${n.getPathForFile(c)}${s!=null?s:""}`):p=(0,Va.normalizePath)(o+"/"),p.endsWith("/")||(p+="/"),r.has(p+c.nameWithExtension)){let m=2,{basename:y,extension:w}=re(c.path);for(;r.has(`${p}${y} ${m}.${w}`);)m++;c.nameWithExtension=`${y} ${m}.${w}`}c.targetParentFolder=p,r.add(p+c.nameWithExtension),e.add(c.nameWithExtension)}}var Pn=require("obsidian");var Zf=n=>n.replace(/-/g,"").replace(/[ -]?[a-z0-9]{32}(\.|$)/,"$1"),bt=n=>{var t;return(t=n.replace(/-/g,"").match(/([a-z0-9]{32})(\?|\.|$)/))==null?void 0:t[1]},Ka=n=>{let{parent:t}=re(n);return t.split("/").map(e=>bt(e)).filter(e=>e)};function Xa(n){return n.hour()===0&&n.minute()===0?n.format("YYYY-MM-DD"):n.format("YYYY-MM-DDTHH:mm")}function Yf(n){return n.replace(/^(\.\.\/)+/,"")}function zf(n){let t=/#\d*?(?:[-_/a-z]|[^\x00-\x7F])/gi;if(!t.test(n))return n;let e=n.split(` +`);for(let i=0;i tbody");if(s){let m=Vf(n,s);nd(n,m,!1),m1(s);for(let y of Array.from(s.rows)){let w=Vy(y);w&&(w.title=="Tags"&&(w.title="tags",typeof w.content=="string"?w.content=w.content.replace(/ /g,"-"):w.content instanceof Array&&(w.content=w.content.map(E=>E.replace(/ /g,"-")))),a[w.title]=w.content)}}o1(r,["strong","em","mark","del"]),n1(r),Xy(r),u1(r),e1(r),p1(r),ad(r),ed(r,"div.indented"),ed(r,"details"),f1(r),td(r,"ul"),td(r,"ol"),d1(r),c1(r),i1(r);let l=(0,Pn.htmlToMarkdown)(r.innerHTML);n.singleLineBreaks&&(l=l.replace(/\n\n(?!>)/g,` +`)),l=zf(l),l=Ky(l);let c=(p=i.find("p[class*=page-description]"))==null?void 0:p.textContent;return c&&(l=c+` + +`+l),Yi(a)+l}var Gf={checkbox:["checkbox"],date:["created_time","last_edited_time","date"],list:["file","multi_select","relation"],number:["number","auto_increment_id"],text:["email","person","phone_number","text","url","status","select","formula","rollup","last_edited_by","created_by"]};function Vy(n){var a,s,l,c,p,m;let t=(a=n.className.match(/property-row-(.*)/))==null?void 0:a[1];if(!t)throw new Error("property type not found for: "+n);let e=(0,Pn.htmlToMarkdown)((s=n.cells[0].textContent)!=null?s:""),i=n.cells[1],r=Object.keys(Gf).find(y=>Gf[y].includes(t));if(!r)throw new Error("type not found for: "+i);let o="";switch(r){case"checkbox":o=i.innerHTML.includes("checkbox-on");break;case"number":if(o=Number(i.textContent),isNaN(o))return;break;case"date":ad(i);let y=i.getElementsByTagName("time");if(y.length===0)o="";else if(y.length===1)o=Xa((0,Pn.moment)((l=y.item(0))==null?void 0:l.textContent));else{let d=[];for(let f=0;fc.includes(a));s&&a.endsWith(".html")?e.push({type:"relation",a:o,id:s}):l?e.push({type:"attachment",a:o,path:l}):s&&a.startsWith("#")&&((r=o.parentElement)!=null&&r.classList.contains("table_of_contents-item"))&&e.push({type:"toc-item",a:o,id:s})}return e}function Ky(n){let t=/\[\[[^\]]*(\\\\)\|[^\]]*\]\]/,e=n.match(new RegExp(t,"g"));return e==null||e.forEach(i=>{n=n.replace(i,i.replace(/\\\\\|/g,"\\|"))}),n}function Xy(n){r1(n,"style"),rd(n,"span.notion-text-equation-token");let t=n.ownerDocument,e=n.findAll("figure.equation");for(let r of e){let o=r.find("annotation");if(!o)continue;let a=t.createElement("div");a.className="annotation",a.appendText(`$$${Kf(o.textContent)}$$`),r.replaceWith(a)}let i=n.findAll("span.notion-text-equation-token");for(let r of i){let o=r.find("annotation");o&&r.replaceWith(`$${Kf(o.textContent,!0)}$`)}}function Kf(n,t=!1){var i;let e=new RegExp(/^(?:\s|\\\\|\\\s)*(.*?)[\s\\]*$/,"s");return(i=n==null?void 0:n.replace(e,"$1").replace(/[\r\n]+/g,t?" ":` +`))!=null?i:""}function Jy(n){var e;let t=(e=n.match(/^[^\.\?\!\n]*[\.\?\!]?/))==null?void 0:e[0];return t!=null?t:""}function Qy(n){var t;return!!/callout|bookmark/.test((t=n.getAttribute("class"))!=null?t:"")}function e1(n){var e;let t=n.ownerDocument;for(let i of n.findAll("figure.callout")){let r=(e=i.lastElementChild)==null?void 0:e.childNodes;if(!r)continue;let o=t.createElement("blockquote");o.append(...Array.from(r)),t1(o),i.replaceWith(o)}}function t1(n){var o,a,s;let t=n.firstChild,e=(o=t==null?void 0:t.nodeName)!=null?o:"",i=n.ownerDocument.createElement("p"),r="";e=="#text"?r=(a=t==null?void 0:t.textContent)!=null?a:"":e=="P"?r=t.innerHTML:["EM","STRONG","DEL","MARK"].includes(e)?r=t.outerHTML:n.prepend(i),r=r.replace(/
    /g,"<br>"),i.innerHTML=`[!important] ${r}`,(s=n.firstChild)==null||s.replaceWith(i)}function n1(n){var t,e,i;for(let r of n.findAll("a.bookmark.source")){let o=r.getAttribute("href"),a=(t=r.find("div.bookmark-title"))==null?void 0:t.textContent,s=Jy((i=(e=r.find("div.bookmark-description"))==null?void 0:e.textContent)!=null?i:""),l=`> [!info] ${a} +> ${s} +> [${o}](${o}) +`;r.nextElementSibling&&Qy(r.nextElementSibling)&&(l+=` +`),r.replaceWith(l)}}function i1(n){var t,e,i;for(let r of n.findAll("span[class=user]"))r.innerText=(t=r.textContent)!=null?t:"";for(let r of n.findAll("td div[class*=checkbox]")){let o=createSpan();o.setText(r.hasClass("checkbox-on")?"X":""),r.replaceWith(o)}for(let r of n.findAll("table span[class*=selected-value]"))((e=r.parentElement)==null?void 0:e.lastElementChild)!==r&&r.setText(r.textContent+", ");for(let r of n.findAll("a[href]"))if(!/^(https?:\/\/|www\.)/.test(r.href)){let o=createSpan();o.setText((i=r.textContent)!=null?i:""),r.replaceWith(o)}}function r1(n,t){for(let e of n.findAll(t))e.remove()}function o1(n,t){for(let e of t)a1(n,e);for(let e of t)s1(n,e);for(let e of t)rd(n,e);for(let e of t)l1(n,e)}function a1(n,t){for(let e of n.findAll(t)){if(!e.parentElement||e.parentElement.tagName===t.toUpperCase())continue;let i=e.find(t);for(;i;)Ja(i),i=e.find(t)}}function s1(n,t){let e=n.findAll(t);if(!e)return;let i=new RegExp(`( *)<${t}>`,"g");for(let r of e){if(!r||!r.parentElement)continue;let o=r.parentElement,a=o==null?void 0:o.innerHTML;o.innerHTML=a==null?void 0:a.replace(i,"$1")}}function rd(n,t){let e=n.findAll(t);if(e)for(let i of e){let r=i.previousSibling;(r==null?void 0:r.nodeName)=="BR"&&(r==null||r.remove())}}function l1(n,t){let e=n.innerHTML,i=e.match(new RegExp(`<${t}>.*?`,"sg"));if(i){for(let r of i.filter(o=>o.includes("
    ")))e=e.replace(r,r.split("
    ").join(`
    <${t}>`));n.innerHTML=e}}function Xf(n){var t;return Number((t=n==null?void 0:n.classList[1].slice(-1))!=null?t:-1)}function od(n,t){let e=Xf(n),i=Xf(t);if(e>i&&t.childElementCount==1){let r=createEl("ul");r.append(n),t.append(r)}else if(e>i&&t.childElementCount==2){let r=t.lastElementChild;r==null||r.append(n)}else if(e==i){let r=t.parentElement;r==null||r.append(n)}else e)/g,"
    ");for(let t of n.findAll("code"))for(let e of t.findAll("br"))e.replaceWith(` +`)}function u1(n){var t;for(let e of n.findAll("link"))e.innerText=(t=e.textContent)!=null?t:""}function ad(n){var t,e;for(let i of n.findAll("time"))i.textContent=(e=(t=i.textContent)==null?void 0:t.replace(/@/g,""))!=null?e:""}var Qf={"1.875em":"h1","1.5em":"h2","1.25em":"h3"};function f1(n){var e;let t=n.findAll("summary");for(let i of t){let r=i.getAttribute("style");if(r){for(let o of Object.keys(Qf))if(r.includes(o)){i.replaceWith(createEl(Qf[o],{text:(e=i.textContent)!=null?e:""}));break}}}}function ed(n,t){let e=n.findAll(t);for(let i of e)Ja(i)}function td(n,t){for(let e of n.findAll(t)){let i=[],r=[],o=e;for(;o.tagName===t.toUpperCase();){i.push(o);for(let s=0;ss.remove())}}function d1(n){for(let t of n.findAll(".checkbox.checkbox-on"))t.replaceWith("[x] ");for(let t of n.findAll(".checkbox.checkbox-off"))t.replaceWith("[ ] ")}function m1(n){var e;let t=n.findAll("a");if(t.length===0)return n;for(let i of t){let r=createSpan();r.setText((e=i.getAttribute("href"))!=null?e:""),i.replaceWith(r)}}function nd(n,t,e){var i,r,o;for(let a of t){let s=createSpan(),l="";switch(a.type){case"relation":let c=n.idsToFileInfo[a.id];if(c){let y=a.a.closest("table");l=`[[${c.fullLinkPathNeeded?`${n.getPathForFile(c)}${c.title}${y?"\\":""}|${c.title}`:c.title}]]`}else{console.warn("missing relation data for id: "+a.id);let{basename:y}=re(decodeURI((i=a.a.getAttribute("href"))!=null?i:""));l=`[[${Zf(y)}]]`}break;case"attachment":let p=n.pathsToAttachmentInfo[a.path];if(!p){console.warn("missing attachment data for: "+a.path);continue}l=`${e?"!":""}[[${p.fullLinkPathNeeded?p.targetParentFolder+p.nameWithExtension+"|"+p.nameWithExtension:p.nameWithExtension}]]`;break;case"toc-item":l=(r=a.a.textContent)!=null?r:"";let m=(o=l.endsWith("]"))!=null?o:!1;l=`[[#${l+(m?" ":"")}]]`}s.setText(l),a.a.replaceWith(s)}}var Lr=class{constructor(t,e){this.idsToFileInfo={};this.pathsToAttachmentInfo={};this.attachmentPath=t,this.singleLineBreaks=e}getPathForFile(t){let{idsToFileInfo:e}=this,i=t.path.split("/");return t.parentIds.map(r=>{var o,a,s;return(s=(o=e[r])==null?void 0:o.title)!=null?s:(a=i.find(l=>l.contains(r)))==null?void 0:a.replace(` ${r}`,"")}).filter(r=>r).map(r=>r.replace(/[\. ]+$/,"")).join("/")+"/"}};async function ld(n,t){var i,r;let{filepath:e}=t;if(t.extension==="html"){let o=await t.readText(),a=ft(o),l=a.find("body").children,c;for(let E=0;Ee.setValue(this.parentsInSubfolders).onChange(i=>this.parentsInSubfolders=i)),new xt.Setting(this.modal.contentEl).setName("Single line breaks").setDesc("Separate Notion blocks with only one line break (default is 2).").addToggle(e=>e.setValue(this.singleLineBreaks).onChange(i=>{this.singleLineBreaks=i}))}async import(e){var w;let{vault:i,parentsInSubfolders:r,files:o}=this;if(o.length===0){new xt.Notice("Please pick at least one file to import.");return}let a=await this.getOutputFolder();if(!a){new xt.Notice("Please select a location to export to.");return}let s=a.path;s=(0,xt.normalizePath)(s),s!=null&&s.endsWith("/")||(s+="/");let l=new Lr((w=i.getConfig("attachmentFolderPath"))!=null?w:"",this.singleLineBreaks);e.status("Looking for files to import");let c=0;if(await Qa(e,o,async E=>{try{await ld(l,E),c=Object.keys(l.idsToFileInfo).length+Object.keys(l.pathsToAttachmentInfo).length,e.reportProgress(0,c)}catch(d){e.reportSkipped(E.fullpath)}}),e.isCancelled())return;e.status("Resolving links and de-duplicating files"),Wf({vault:i,info:l,targetFolderPath:s,parentsInSubfolders:r});let p=new Set([s]),m=Object.values(l.idsToFileInfo).map(E=>s+l.getPathForFile(E)).concat(Object.values(l.pathsToAttachmentInfo).map(E=>E.targetParentFolder));for(let E of m)p.add(E);for(let E of p){if(e.isCancelled())return;await this.createFolders(E)}let y=0;e.status("Starting import"),await Qa(e,o,async E=>{y++,e.reportProgress(y,c);try{if(E.extension==="html"){let d=bt(E.name);if(!d)throw new Error("ids not found for "+E.filepath);let f=l.idsToFileInfo[d];if(!f)throw new Error("file info not found for "+E.filepath);e.status(`Importing note ${f.title}`);let g=await id(l,E),v={};f.ctime&&(v.ctime=f.ctime.getTime(),v.mtime=f.ctime.getTime()),f.mtime&&(v.mtime=f.mtime.getTime());let _=`${s}${l.getPathForFile(f)}${f.title}.md`;await i.create(_,g,v),e.reportNoteSuccess(E.fullpath)}else{let d=l.pathsToAttachmentInfo[E.filepath];if(!d)throw new Error("attachment info not found for "+E.filepath);e.status(`Importing attachment ${E.name}`);let f=await E.read();await i.createBinary(`${d.targetParentFolder}${d.nameWithExtension}`,f),e.reportAttachmentSuccess(E.fullpath)}}catch(d){if(d.message==="page body was not found"){e.reportSkipped(E.fullpath,"page body was not found");return}e.reportFailed(E.fullpath,d)}})}};async function Qa(n,t,e){for(let i of t){if(n.isCancelled())return;try{await gt(i,async(r,o)=>{for(let a of o){if(n.isCancelled())return;if(a.extension==="md"&&bt(a.name))throw new xt.Notice("Notion Markdown export detected. Please export Notion data to HTML instead."),n.cancel(),new Error("Notion importer uses only HTML exports. Please use the correct format.");if(!(a.extension==="csv"&&bt(a.name))&&a.name!=="index.html")if(a.extension==="zip"&&a.parent==="")try{await Qa(n,[a],e)}catch(s){n.reportFailed(a.fullpath)}else await e(a)}})}catch(r){n.reportFailed(i.fullpath)}}}var be=require("obsidian");var es="onenote-importer-refresh-token",cd="66553851-08fa-44f2-8bb1-1436f121a73d",pd=["user.read","notes.read"],y1=/<(object|iframe)([^>]*)\/>/g,ud=/(<\/p>)\s*(]*>)|\n \n/g,ts=5,b1=new RegExp(/^data:[\w\d]+\/[\w\d]+;base64,/),Mr=class extends ce{constructor(){super(...arguments);this.importPreviouslyImported=!1;this.importIncompatibleAttachments=!1;this.selectedIds=[];this.notebooks=[];this.graphData={state:xn(32),accessToken:""};this.attachmentDownloadPauseCounter=0;this.rememberMe=!1}async init(){this.addOutputLocationSetting("OneNote"),new be.Setting(this.modal.contentEl).setName("Import incompatible attachments").setDesc("Imports incompatible attachments which cannot be embedded in Obsidian, such as .exe files.").addToggle(r=>r.setValue(!1).onChange(o=>this.importIncompatibleAttachments=o)),new be.Setting(this.modal.contentEl).setName("Skip previously imported").setDesc("If enabled, notes imported previously by this plugin will be skipped.").addToggle(r=>r.setValue(!0).onChange(o=>this.importPreviouslyImported=!o));let e=!1;if(this.retrieveRefreshToken())try{await this.updateAccessToken(),e=!0}catch(r){}this.microsoftAccountSetting=new be.Setting(this.modal.contentEl).setName("Sign in with your Microsoft account").setDesc("You need to sign in to import your OneNote data.").addButton(r=>r.setCta().setButtonText("Sign in").onClick(()=>{this.registerAuthCallback(this.authenticateUser.bind(this));let o=new URLSearchParams({client_id:cd,scope:"offline_access "+pd.join(" "),response_type:"code",redirect_uri:$r,response_mode:"query",state:this.graphData.state});window.open(`https://login.microsoftonline.com/common/oauth2/v2.0/authorize?${o.toString()}`)})),this.microsoftAccountSetting.settingEl.toggle(!e);let i=new be.Setting(this.modal.contentEl).setName("Remember me").setDesc("If checked, you will be automatically logged in for subsequent imports.").addToggle(r=>{r.onChange(o=>{this.rememberMe=o,o&&this.refreshToken?this.storeRefreshToken(this.refreshToken):this.clearStoredRefreshToken()})});i.settingEl.toggle(!e),this.switchUserSetting=new be.Setting(this.modal.contentEl).addButton(r=>r.setCta().setButtonText("Switch user").onClick(()=>{this.microsoftAccountSetting.settingEl.show(),i.settingEl.show(),this.clearStoredRefreshToken(),this.switchUserSetting.settingEl.hide(),this.contentArea.empty()})),this.loadingArea=this.modal.contentEl.createDiv({text:"Loading notebooks..."}),this.loadingArea.hide(),this.contentArea=this.modal.contentEl.createDiv(),this.contentArea.hide(),e?(await this.setSwitchUser(),await this.showSectionPickerUI()):this.switchUserSetting.settingEl.hide()}async authenticateUser(e){try{if(e.state!==this.graphData.state)throw new Error(`An incorrect state was returned. +Expected state: ${this.graphData.state} +Returned state: ${e.state}`);await this.updateAccessToken(e.code),await this.setSwitchUser(),await this.showSectionPickerUI()}catch(i){console.error("An error occurred while we were trying to sign you in. Error details: ",i),this.modal.contentEl.createEl("div",{text:"An error occurred while trying to sign you in."}).createEl("details",{text:i}).createEl("summary",{text:"Click here to show error details"})}}async setSwitchUser(){let e=await this.fetchResource("https://graph.microsoft.com/v1.0/me","json");this.switchUserSetting.setDesc(`Signed in as ${e.displayName} (${e.mail}). If that's not the correct account, sign in again.`),this.switchUserSetting.settingEl.show(),this.microsoftAccountSetting.settingEl.hide()}async updateAccessToken(e){let i=new URLSearchParams({client_id:cd,scope:"offline_access "+pd.join(" "),redirect_uri:$r});if(e)i.set("code",e),i.set("grant_type","authorization_code");else{let o=this.retrieveRefreshToken();if(!o)throw new Error("Missing token required for authentication. Please try logging in again.");i.set("refresh_token",o),i.set("grant_type","refresh_token")}let r=await(0,be.requestUrl)({method:"POST",url:"https://login.microsoftonline.com/common/oauth2/v2.0/token",contentType:"application/x-www-form-urlencoded",body:i.toString()}).json;if(!r.access_token)throw new Error(`Unexpected data was returned instead of an access token. Error details: ${r}`);r.refresh_token&&this.storeRefreshToken(r.refresh_token),this.graphData.accessToken=r.access_token}storeRefreshToken(e){this.refreshToken=e,this.rememberMe&&localStorage.setItem(es,e)}retrieveRefreshToken(){return this.refreshToken?this.refreshToken:localStorage.getItem(es)}clearStoredRefreshToken(){localStorage.removeItem(es)}async showSectionPickerUI(){var o,a;this.loadingArea.show(),this.selectedIds=[];let e="https://graph.microsoft.com/v1.0/me/onenote/notebooks",i=new URLSearchParams({$expand:"sections($select=id,displayName),sectionGroups($expand=sections,sectionGroups)",$select:"id,displayName,lastModifiedDateTime",$orderby:"lastModifiedDateTime DESC"}),r=`${e}?${i.toString()}`;try{this.notebooks=(await this.fetchResource(r,"json")).value,this.contentArea.empty(),this.contentArea.createEl("h4",{text:"Choose data to import"});for(let s of this.notebooks){if(((o=s.sectionGroups)==null?void 0:o.length)!==0)for(let c of s.sectionGroups)await this.fetchNestedSectionGroups(c);let l=this.contentArea.createDiv();new be.Setting(l).setName(s.displayName).setDesc(`Last edited on: ${be.moment.utc(s.lastModifiedDateTime).format("Do MMMM YYYY")}. Contains ${(a=s.sections)==null?void 0:a.length} sections.`).addButton(c=>c.setCta().setButtonText("Select all").onClick(()=>{l.querySelectorAll('input[type="checkbox"]:not(:checked)').forEach(p=>p.click())})),this.renderHierarchy(s,l)}}catch(s){this.showContentAreaErrorMessage()}this.loadingArea.hide(),this.contentArea.show()}async fetchNestedSectionGroups(e){if(e.sectionGroups=(await this.fetchResource(e.sectionGroupsUrl+"?$expand=sectionGroups($expand=sections),sections","json")).value,e.sectionGroups)for(let i=0;i{if(l.checked)this.selectedIds.push(o.id);else{let c=this.selectedIds.findIndex(p=>p===o.id);c!==-1&&this.selectedIds.splice(c,1)}})}}}showContentAreaErrorMessage(){this.contentArea.empty(),this.contentArea.createEl("p",{text:"Microsoft OneNote has limited how fast notes can be imported. Please try again in 30 minutes to continue importing."}),this.contentArea.show(),this.loadingArea.hide()}async import(e){let i=new Set,r=await this.modal.plugin.loadData();r.importers.onenote||(r.importers.onenote={previouslyImportedIDs:[]});for(let c of r.importers.onenote.previouslyImportedIDs)i.add(c);if(!await this.getOutputFolder()){new be.Notice("Please select a location to export to.");return}if(!this.graphData.accessToken){new be.Notice("Please sign in to your Microsoft Account.");return}e.status("Starting OneNote import");let a=0,s=0,l=0;for(let c of this.selectedIds){e.reportProgress(s,a);let p=`https://graph.microsoft.com/v1.0/me/onenote/sections/${c}/pages`,m=new URLSearchParams({$select:"id,title,createdDateTime,lastModifiedDateTime,level,order,contentUrl",$orderby:"order",pagelevel:"true"}),y=`${p}?${m.toString()}`,w=null;try{w=(await this.fetchResource(y,"json")).value}catch(E){e.status("Microsoft OneNote has limited how fast notes can be imported. Please try again in 30 minutes to continue importing.");return}if(w){a+=w.length,this.insertPagesToSection(w,c),e.reportProgress(s,a);for(let E=0;E5){e.status("Microsoft OneNote has limited how fast notes can be imported. Please try again in 30 minutes to continue importing.");return}}e.reportProgress(s,a)}}}}insertPagesToSection(e,i,r){if(!r){for(let o of this.notebooks)this.insertPagesToSection(e,i,o);return}if(r.sectionGroups){let o=r.sectionGroups;for(let a of o)this.insertPagesToSection(e,i,a)}if(r.sections){let o=r;for(let a of o.sections)a.id===i&&(a.pages=e)}}async processFile(e,i,r){var o,a;try{let s=this.convertFormat(i),l=await this.getOutputFolder(),c=this.getEntityPathNoParent(r.id,l.name),p;await this.vault.adapter.exists(c)?p=this.vault.getAbstractFileByPath(c):p=await this.vault.createFolder(c);let m=this.convertTags(ft(s.html)),y=await this.getAllAttachments(e,m.replace(ud,"
    ")),w=this.styledElementToHTML(y);w=this.convertInternalLinks(w),w=this.convertDrawings(w);let E=(0,be.htmlToMarkdown)(w).trim().replace(ud," "),d=await this.saveAsMarkdownFile(p,r.title,E),f=r!=null&&r.lastModifiedDateTime?Date.parse(r.lastModifiedDateTime):null,g=r!=null&&r.createdDateTime?Date.parse(r.createdDateTime):null,v={ctime:(o=g!=null?g:f)!=null?o:Date.now(),mtime:(a=f!=null?f:g)!=null?a:Date.now()};await this.vault.append(d,"",v),e.reportNoteSuccess(r.title)}catch(s){e.reportFailed(r.title,s)}}convertFormat(e){let i={html:"",inkml:""},r=e.split(` +`,1)[0];e.slice(0,-2);let o=e.split(r);if(o.shift(),o.length===2)for(let a of o){let l=a.split(` +`).find(p=>p.includes("Content-Type")).split(";")[0].split(":")[1].trim(),c=a.split(` +`).slice(2).join(` +`).trim();l==="text/html"?i.html=c:l==="application/inkml+xml"&&(i.inkml=c)}else throw new Error("The input string is incorrect and may be missing data. Inputted string: "+e);return i}convertTags(e){var r,o;let i=Array.from(e.querySelectorAll("[data-tag]"));for(let a of i)if((r=a.getAttribute("data-tag"))!=null&&r.contains("to-do")){let l=a.getAttribute("data-tag")==="to-do:completed"?"[x]":"[ ]";a.innerHTML=`- ${l} ${a.innerHTML}`}else{let s=(o=a.getAttribute("data-tag"))==null?void 0:o.split(",");s==null||s.forEach(l=>{a.innerHTML=a.innerHTML+` #${l.replace(":","-")} `})}return e.outerHTML}convertInternalLinks(e){let i=e.findAll("a");for(let r of i)if(r.href.startsWith("onenote:")){let o=r.href.indexOf("#")+1,a=r.href.indexOf("&",o);r.href=r.href.slice(o,a)}return e}getEntityPathNoParent(e,i){for(let r of this.notebooks){let o=this.getEntityPath(e,`${i}/${r.displayName}`,r);if(o)return o}return null}getEntityPath(e,i,r){let o=null;if("sectionGroups"in r&&r.sectionGroups){let a=this.searchSectionGroups(e,i,r.sectionGroups);a!==null&&(o=a)}if("sections"in r&&r.sections){let a=this.searchSectionGroups(e,i,r.sections);a!==null&&(o=a)}if("pages"in r&&r.pages){let a=this.searchPages(e,i,r);a!==null&&(o=a)}return o}searchPages(e,i,r){var a;let o=null;for(let s=0;s=0;p--)if(r.pages[p].level===l.level-1){o+="/"+r.pages[p].title;break}}break}}return o}searchSectionGroups(e,i,r){let o=null;for(let a of r)if(a.id===e)o=`${i}/${a.displayName}`;else{let s=this.getEntityPath(e,`${i}/${a.displayName}`,a);if(s){o=s;break}}return o}async getAllAttachments(e,i){var l,c,p,m;let r=ft(i.replace(y1,"<$1$2>")),o=r.findAll("object"),a=r.findAll("img"),s=r.findAll("iframe");for(let y of o){for(;y.firstChild;)(l=y.parentNode)==null||l.insertBefore(y.firstChild,y.nextSibling);let w=y.getAttribute("data-attachment").split("."),E=w[w.length-1];if(!(!Ln.contains(E)&&!this.importIncompatibleAttachments)){let d=y.getAttribute("data-attachment"),f=y.getAttribute("data"),g=await this.fetchAttachment(e,d,f),v=document.createElement("p");v.innerText=`![[${g}]]`,(c=y.parentNode)==null||c.replaceChild(v,y)}}for(let y=0;y{e.status("Pausing attachment download to avoid rate limiting."),this.attachmentDownloadPauseCounter=0,setTimeout(o,3e3)}),this.attachmentDownloadPauseCounter++,e.status("Downloading attachment "+i);try{let o=await this.getAvailablePathForAttachment(i,[]),a=await this.fetchResource(r,"file");return await this.app.vault.createBinary(o,a),e.reportAttachmentSuccess(i),o}catch(o){e.reportFailed(i),console.error(o)}}styledElementToHTML(e){let i={"font-weight:bold":"b","font-style:italic":"i","text-decoration:underline":"u","text-decoration:line-through":"s","background-color":"mark"};e.findAll("cite").forEach(l=>l.innerHTML="> "+l.innerHTML+"
    ");let o=!1,a=document.createElement("pre");return e.querySelectorAll("*").forEach(l=>{let c=l.getAttribute("style")||"",p=Object.keys(i).find(m=>c.includes(m));if(c!=null&&c.contains("font-family:Consolas"))o?a.innerHTML=a.innerHTML.slice(0,-3)+l.innerHTML+"\n```":(o=!0,l.replaceWith(a),a.innerHTML="```\n"+l.innerHTML+"\n```");else if(l.nodeName==="BR"&&o)a.innerHTML=a.innerHTML.slice(0,-3)+"\n```";else if(p){let m=i[p],y=document.createElement(m);y.innerHTML=l.innerHTML,l.replaceWith(y)}}),e}convertDrawings(e){var o;let i=document.createTreeWalker(e,NodeFilter.SHOW_COMMENT),r=!1;for(;i.nextNode();)((o=i.currentNode.nodeValue)==null?void 0:o.trim())==="InkNode is not supported"&&(r=!0);if(r){let a=document.createTextNode("> [!caution] This page contained a drawing which was not converted.");e.insertBefore(a,e.firstChild)}else for(let a=0;asetTimeout(p,c)),this.fetchResource(e,i,r+1);throw new Error("Exceeded maximum retry attempts")}}return a}catch(o){throw console.error(`An internal error occurred while trying to fetch '${e}'. Error details: `,o),o}}};var Ut=require("obsidian");var fd=require("obsidian"),x1=/[\?<>\\:\*\|"]/g,w1=/[\x00-\x1f\x80-\x9f]/g,v1=/^\.+$/,E1=/^(con|prn|aux|nul|com[0-9]|lpt[0-9])(\..*)?$/i,_1=/[\. ]+$/,T1=/^\./,A1=/\[/g,k1=/\]/g;function Br(n){return n.replace(x1,"").replace(w1,"").replace(v1,"").replace(E1,"").replace(_1,"").replace(A1,"").replace(k1,"").replace(T1,"")}function Ur(n,t){let e="MMMM Do, YYYY",i=(0,fd.moment)(n,e);return i.format(e)!==n?n:i.isValid()?i.format(t):n}var jr=require("obsidian"),N1=["POMO","word-count","date","slider","encrypt","TaoOfRoam","orphans","count","character-count","comment-button","query","streak","attr-table","mentions","search","roam/render","calc"],S1=new RegExp(`\\{\\{(\\[\\[)?(${N1.join("|")})(\\]\\])?.*?\\}\\}(\\})?`,"g"),R1=/{{pdf:|{{\[\[pdf|{{\[\[audio|{{audio:|{{video:|{{\[\[video/,dd=/https:\/\/firebasestorage(.*?)\?alt(.*?)\)/,O1=/https:\/\/firebasestorage(.*?)\?alt(.*?)/,D1=/(?<=\(\()\b(.*?)\b(?=\)\))/g,Hr=class extends ce{constructor(){super(...arguments);this.downloadAttachments=!1;this.fileDateYAML=!1;this.titleYAML=!1;this.newestTimestamp=0;this.oldestTimestamp=0}init(){this.addFileChooserSetting("Roam (.json)",["json"]),this.addOutputLocationSetting("Roam"),this.userDNPFormat=this.getUserDNPFormat(),new Ut.Setting(this.modal.contentEl).setName("Import settings").setHeading(),new Ut.Setting(this.modal.contentEl).setName("Download all attachments").setDesc("If enabled, all attachments uploaded to Roam will be downloaded to your attachments folder.").addToggle(e=>{e.setValue(this.downloadAttachments),e.onChange(async i=>{this.downloadAttachments=i})}),new Ut.Setting(this.modal.contentEl).setName("Add YAML created/update date").setDesc("If enabled, notes will have the create-time and edit-time from Roam added as properties.").addToggle(e=>{e.setValue(this.fileDateYAML),e.onChange(async i=>{this.fileDateYAML=i})}),new Ut.Setting(this.modal.contentEl).setName("Add YAML title").setDesc("If enabled, notes will have the full title added as a property (regardless of illegal file name characters).").addToggle(e=>{e.setValue(this.titleYAML),e.onChange(async i=>{this.titleYAML=i})})}async import(e){this.progress=e;let{files:i}=this;if(i.length===0){new Ut.Notice("Please pick at least one file to import.");return}let r=await this.getOutputFolder();if(!r){new Ut.Notice("Please select a location to export to.");return}for(let o of i){if(e.isCancelled())return;let a=Ze(o.basename),s=`${r.path}/${a}`,l=`${r.path}/${a}/Attachments`;await this.createFolders(s),await this.createFolders(l);let c=await o.readText(),p=JSON.parse(c),[m,y]=this.preprocess(p),w=new Map;for(let g in p){let v=p[g],_=Ur(Br(v.title),this.userDNPFormat).trim();if(_===""){e.reportFailed(v.uid,"Title is empty"),console.error("Cannot import data with an empty title",v);continue}let A=`${s}/${_}.md`,D=this.titleYAML?v.title:"",T=0,k=0;if(this.fileDateYAML){let C=v["create-time"],O=v["edit-time"];typeof C=="number"&&(T=C),typeof O=="number"&&(k=O)}let b=await this.jsonToMarkdown(s,l,v,"",!1,D,T,k);w.set(A,b)}for(let g of y.values()){let v=await this.roamMarkupScrubber(s,l,g.blockString,!0),_=await this.extractAndProcessBlockReferences(w,m,s,v),A=`${s}/${g.pageName}.md`,D=w.get(A);if(D){let T=D.split(` +`),k=T.findIndex(b=>b.contains("* "+v));k!==-1&&(T[k]=T[k].replace(v,_)),w.set(A,T.join(` +`))}}let{vault:E}=this,d=w.size,f=1;for(let[g,v]of w.entries()){if(e.isCancelled())return;try{let{parent:_}=re(g);await this.createFolders(_);let A=E.getAbstractFileByPath(g);A?await E.modify(A,v):await E.create(g,v),e.reportNoteSuccess(g),e.reportProgress(f,d)}catch(_){console.error("Error saving Markdown to file:",g,_),e.reportFailed(g)}f++}}}getUserDNPFormat(){let e=this.app.internalPlugins.getPluginById("daily-notes").instance;return e?e.options.format||"YYYY-MM-DD":(console.log('Daily note plugin is not enabled. Roam import defaulting to "YYYY-MM-DD" format.'),"YYYY-MM-DD")}preprocess(e){let i=new Map,r=new Map,o=this.userDNPFormat;function a(s,l){if(l.uid){let c=new Date(s.uid);if(!isNaN(c.getTime())){let y=Ur(s.title,o);s.title=y}let p={pageName:Br(s.title),blockString:l.string};/.*?(\(\(.*?\)\)).*?/g.test(l.string)&&r.set(l.uid,p),i.set(l.uid,p)}if(l.children)for(let c of l.children)a(s,c)}for(let s of e)if(s.children)for(let l of s.children)a(s,l);return[i,r]}async roamMarkupScrubber(e,i,r,o=!1){return r=r.replace(S1,""),r.substring(0,8)==":hiccup "&&r.includes(":hr")?"---":(r=r.replace(/\[\[(.*?)\]\]/g,(a,s)=>`[[${Ur(Br(s),this.userDNPFormat)}]]`),r=r.replace(/\[\[(.*\/.*)\]\]/g,(a,s)=>`[[${e}/${s}|${s}]]`),r=r.replace(/\[.+?\]\((\(.+?\)\))\)/g,"$1"),r=r.replace(/\[(.+?)\]\(\[\[(.+?)\]\]\)/g,"[[$2|$1]]"),r=r.replace(/\[\[>\]\]/g,">"),r=r.replace(/{{TODO}}|{{\[\[TODO\]\]}}/g,"[ ]"),r=r.replace(/{{DONE}}|{{\[\[DONE\]\]}}/g,"[x]"),r=r.replace("::",":"),r=r.replace(/{{.*?\bvideo\b.*?(\bhttp.*?\byoutu.*?)}}/g,"![]($1)"),r=r.replace(/(https?:\/\/twitter\.com\/(?:#!\/)?\w+\/status\/\d+(?:\?[\w=&-]+)?)/g,"![]($1)"),r=r.replace(/\_\_(.+?)\_\_/g,"*$1*"),r=r.replace(/\^\^(.+?)\^\^/g,"==$1=="),r=r.replace(/{{\[{0,2}embed.*?(\(\(.*?\)\)).*?}}/g,"$1"),r=r.replace(/{{\[{0,2}embed.*?(\[\[.*?\]\]).*?}}/g,"$1"),this.downloadAttachments&&!o&&r.includes("firebasestorage")&&(r=await this.downloadFirebaseFile(r,i)),r)}async jsonToMarkdown(e,i,r,o="",a=!1,s,l,c){let p=[],m=[],y=r["edit-time"],w=r["create-time"];if(this.newestTimestampy?c:y,w!==void 0?l>10?this.oldestTimestamp=Math.min(l,w):this.oldestTimestamp=w:this.oldestTimestamp=l,"string"in r&&r.string){let E=r.heading?"#".repeat(r.heading)+" ":"",d=await this.roamMarkupScrubber(e,i,r.string);p.push(`${a?o+"* ":o}${E}${d}`)}if(r.children)for(let E of r.children)p.push(await this.jsonToMarkdown(e,i,E,o+" ",!0,"",this.oldestTimestamp,this.newestTimestamp));if((this.fileDateYAML||this.titleYAML)&&!a){let E=this.oldestTimestamp;if(m.push("---"),this.titleYAML&&m.push(`title: "${s}"`),this.fileDateYAML){let d="YYYY-MM-DD HH:mm:ss",f=this.newestTimestamp?(0,jr.moment)(this.newestTimestamp).format(d):(0,jr.moment)(new Date).format(d),g=E?(0,jr.moment)(E).format(d):f;m.push("created: "+g),m.push("updated: "+f)}m.push("---"),p.unshift(m.join(` +`))}return p.join(` +`)}async modifySourceBlockString(e,i,r,o){if(!i.blockString.endsWith("^"+o)){let a=`${r}/${i.pageName}.md`,s=e.get(a);if(s){let l=s.split(` +`),c=l.findIndex(p=>p.contains("* "+i.blockString));if(c!==-1){let p=i.blockString+" ^"+o;l[c]=l[c].replace(i.blockString,p),i.blockString=i.blockString+" ^"+o}e.set(a,l.join(` +`))}}}async extractAndProcessBlockReferences(e,i,r,o){let a=o.match(D1);if(!a)return o;let s=[];for(let p of a)try{let m=i.get(p);if(!m){s.push(p);continue}let y=m.blockString.replace(/\[\[|\]\]/g,""),w=`[[${r}/${m.pageName}#^${p}|${y}]]`;await this.modifySourceBlockString(e,m,r,p),s.push(w)}catch(m){s.push(p)}let l=0;return o.replace(/\(\(\b.*?\b\)\)/g,()=>s[l++])}async downloadFirebaseFile(e,i){let{progress:r,vault:o}=this,a="";try{let s,l;if(R1.test(e)?(s=e.match(/https:\/\/firebasestorage(.*?)\?alt(.*?)\}/),l=e.match(/{{.*https:\/\/firebasestorage.*?alt=media&.*?(?=\s|$)/)):dd.test(e)?(s=e.match(dd),l=e.match(/!\[.*https:\/\/firebasestorage.*?alt=media&.*?(?=\s|$)/)):(s=e.match(O1),l=e.match(/https:\/\/firebasestorage.*?alt=media&.*?(?=\s|$)/)),s&&l){let c="https://firebasestorage"+s[1],p=decodeURIComponent(c.split("/").last()||"");if(p){let d=p.split("/");d.length>1&&(d.splice(-1,1),this.createFolders(`${i}/${d.join("/")}`))}else{let d=Math.floor(Date.now()/1e3),f=c.slice(-5).match(/(.*?)\.(.+)/);if(!f)return r.reportSkipped(s[1],"Unexpected file extension"),e;p=`${d}.${f[2]}`}let m=`${i}/${p}`;if(o.getAbstractFileByPath(m))return r.reportSkipped(s[1],"File already exists"),e;a=s[0].slice(0,-1);let E=await(await fetch(a,{})).arrayBuffer();return await o.createBinary(m,E),r.reportAttachmentSuccess(a),e.replace(l[0],`![[${m}]]`)}}catch(s){console.error(s),r.reportFailed(a,s)}return e}};var jt=require("obsidian");var md=/!\[\]\(assets\/([^)]*)\)/g,qr=class extends ce{init(){jt.Platform.isMacOS||this.modal.contentEl.createEl("p",{text:"Due to platform limitations, only textpack and zip files can be imported from this device. Open your vault on a Mac to import textbundle files."});let e=jt.Platform.isMacOS?["textbundle","textpack","zip"]:["textpack","zip"];this.addFileChooserSetting("Textbundle",e,!0),this.addOutputLocationSetting("Textbundle")}async import(e){let{files:i}=this;if(i.length===0){new jt.Notice("Please pick at least one file to import.");return}let r=await this.getOutputFolder();if(!r){new jt.Notice("Please select a location to export to.");return}this.attachmentsFolderPath=await this.createFolders(`${r.path}/assets`);for(let o of i)if(o.extension==="textpack")await gt(o,async(a,s)=>{await this.process(e,o.name,s)});else if(o.extension==="zip")await gt(o,async(a,s)=>{let l=this.groupFilesByTextbundle(o.name,s);for(let c of l)await this.process(e,o.name,c)});else{let s=await new ut(`${o.toString()}/`).list();await this.process(e,o.name,s)}}groupFilesByTextbundle(e,i){let r={},o=e+"/",a=".textbundle";for(let s of i){if(!s.fullpath.startsWith(o)){console.log("Skipping",s.fullpath);continue}let l=s.fullpath.slice(o.length);if(l.startsWith("._")||l.startsWith("__MACOSX")){console.log("Skipping",s.fullpath);continue}let c=l.indexOf(a);if(c===-1){console.log("Skipping",s.fullpath);continue}let p=l.slice(0,c)+".textbundle";if(l.slice(c+a.length+1).startsWith("._")){console.log("Skipping",s.fullpath);continue}p in r?r[p].push(s):r[p]=[s]}return Object.values(r)}async process(e,i,r){let o=r.find(a=>a.name==="info.json");if(o){let a=await o.readText(),s=JSON.parse(a);if(s.hasOwnProperty("type")&&s.type!=="net.daringfireball.markdown"){e.reportSkipped(i,"The textbundle does not contain markdown");return}}for(let a of r)if(!a.name.startsWith("._"))try{if(a.type==="file"&&(a.extension==="md"||a.extension==="markdown")){let s="parent"in a?a.parent:i;s=s.replace(/.textbundle$/,"");let l=await a.readText();l.match(md)&&(l=l.replace(md,`![[${this.attachmentsFolderPath.path}/$1]]`));let c=(0,jt.normalizePath)(s),p=await this.getOutputFolder();await this.saveAsMarkdownFile(p,c,l),e.reportNoteSuccess(s)}else if(a.type==="file"&&a.fullpath.contains("assets/"))await this.importAsset(e,a);else if(a.type==="folder"){let{basename:s}=re(a.toString());if(s!=="assets")continue;let c=await new ut(`${a.toString()}/`).list();for(let p of c)await this.importAsset(e,p)}else a.name!=="info.json"&&e.reportSkipped(a.name,"the file is not a media or markdown file.")}catch(s){e.reportFailed(a.name,s)}}async importAsset(e,i){if(i.type==="folder"){e.reportSkipped(i.name);return}let r=`${this.attachmentsFolderPath.path}/${i.name}`;this.vault.getAbstractFileByPath(r)&&e.reportSkipped(i.name,"the file already exists.");let a=await i.read();await this.vault.createBinary(r,a),e.reportAttachmentSuccess(i.name)}};var $r="obsidian://importer-auth/",Ln=["png","webp","jpg","jpeg","gif","bmp","svg","mpg","m4a","webm","wav","ogv","3gp","mov","mp4","mkv","pdf"],Wr=class{constructor(t){this.notes=0;this.attachments=0;this.skipped=[];this.failed=[];this.maxFileNameLength=100;this.cancelled=!1;this.el=t,t.empty(),this.statusEl=t.createDiv("importer-status"),this.progressBarEl=t.createDiv("importer-progress-bar",e=>{this.progressBarInnerEl=e.createDiv("importer-progress-bar-inner")}),t.createDiv("importer-stats-container",e=>{e.createDiv("importer-stat mod-imported",i=>{this.importedCountEl=i.createDiv({cls:"importer-stat-count",text:"0"}),i.createDiv({cls:"importer-stat-name",text:"imported"})}),e.createDiv("importer-stat mod-attachments",i=>{this.attachmentCountEl=i.createDiv({cls:"importer-stat-count",text:"0"}),i.createDiv({cls:"importer-stat-name",text:"attachments"})}),e.createDiv("importer-stat mod-remaining",i=>{this.remainingCountEl=i.createDiv({cls:"importer-stat-count",text:"0"}),i.createDiv({cls:"importer-stat-name",text:"remaining"})}),e.createDiv("importer-stat mod-skipped",i=>{this.skippedCountEl=i.createDiv({cls:"importer-stat-count",text:"0"}),i.createDiv({cls:"importer-stat-name",text:"skipped"})}),e.createDiv("importer-stat mod-failed",i=>{this.failedCountEl=i.createDiv({cls:"importer-stat-count",text:"0"}),i.createDiv({cls:"importer-stat-name",text:"failed"})})}),this.importLogEl=t.createDiv("importer-log"),this.importLogEl.hide()}status(t){this.statusEl.setText(t.trim()+"...")}reportNoteSuccess(t){this.notes++,this.importedCountEl.setText(this.notes.toString())}reportAttachmentSuccess(t){this.attachments++,this.attachmentCountEl.setText(this.attachments.toString())}reportSkipped(t,e){let{importLogEl:i}=this;this.skipped.push(t),this.skippedCountEl.setText(this.skipped.length.toString()),console.log("Import skipped",t,e),this.importLogEl.createDiv("list-item",r=>{r.createSpan({cls:"importer-error",text:"Skipped: "}),r.createSpan({text:`"${Qn(t,this.maxFileNameLength)}"`+(e?` because ${Qn(String(e),this.maxFileNameLength)}`:"")})}),i.scrollTop=i.scrollHeight,i.show()}reportFailed(t,e){let{importLogEl:i}=this;this.failed.push(t),this.failedCountEl.setText(this.failed.length.toString()),console.log("Import failed",t,e),this.importLogEl.createDiv("list-item",r=>{r.createSpan({cls:"importer-error",text:"Failed: "}),r.createSpan({text:`"${Qn(t,this.maxFileNameLength)}"`+(e?` because ${Qn(String(e),this.maxFileNameLength)}`:"")})}),i.scrollTop=i.scrollHeight,i.show()}reportProgress(t,e){e<=0||(console.log("Current progress:",(100*t/e).toFixed(1)+"%"),this.remainingCountEl.setText((e-t).toString()),this.importedCountEl.setText(t.toString()),this.progressBarInnerEl.style.width=(100*t/e).toFixed(1)+"%")}cancel(){this.cancelled=!0,this.progressBarEl.hide(),this.statusEl.hide()}hideStatus(){this.progressBarEl.hide(),this.statusEl.hide()}isCancelled(){return this.cancelled}},C1={importers:{onenote:{previouslyImportedIDs:[]}}},Zr=class extends Ht.Plugin{async onload(){this.importers={"apple-notes":{name:"Apple Notes",optionText:"Apple Notes",importer:br,helpPermalink:"import/apple-notes"},bear:{name:"Bear",optionText:"Bear (.bear2bk)",importer:xr,helpPermalink:"import/bear"},evernote:{name:"Evernote",optionText:"Evernote (.enex)",importer:Cr,helpPermalink:"import/evernote"},keep:{name:"Google Keep",optionText:"Google Keep (.zip/.json)",importer:Fr,helpPermalink:"import/google-keep"},html:{name:"HTML files",optionText:"HTML (.html)",importer:Ir,helpPermalink:"import/html"},onenote:{name:"Microsoft OneNote",optionText:"Microsoft OneNote",importer:Mr,helpPermalink:"import/onenote"},notion:{name:"Notion",optionText:"Notion (.zip)",importer:Pr,helpPermalink:"import/notion",formatDescription:"Export your Notion workspace to HTML format."},"roam-json":{name:"Roam Research",optionText:"Roam Research (.json)",importer:Hr,helpPermalink:"import/roam",formatDescription:"Export your Roam Research workspace to JSON format."},textbundle:{name:"Textbundle files",optionText:"Textbundle (.textbundle, .textpack)",importer:qr,helpPermalink:"import/textbundle"}},this.addRibbonIcon("lucide-import","Open Importer",()=>{new wi(this.app,this).open()}),this.addCommand({id:"open-modal",name:"Open importer",callback:()=>{new wi(this.app,this).open()}}),this.registerObsidianProtocolHandler("importer-auth",e=>{if(this.authCallback){this.authCallback(e),this.authCallback=void 0;return}new Ht.Notice("Unexpected auth event. Please restart the auth process.")})}onunload(){}async loadData(){return Object.assign({},C1,await super.loadData())}async saveData(e){await super.saveData(e)}registerAuthCallback(e){this.authCallback=e}},wi=class extends Ht.Modal{constructor(e,i){super(e);this.current=null;this.plugin=i,this.titleEl.setText("Import data into Obsidian"),this.modalEl.addClass("mod-importer");let r=Object.keys(i.importers);r.length>0&&(this.selectedId=r[0],this.updateContent())}updateContent(){let{contentEl:e,selectedId:i}=this,r=this.plugin.importers,o=r[i];e.empty();let a=new DocumentFragment;if(a.createSpan({text:"The format to be imported."}),o.formatDescription&&(a.createEl("br"),a.createSpan({text:o.formatDescription})),a.createEl("br"),a.createEl("a",{text:`Learn more about importing from ${o.name}.`,href:`https://help.obsidian.md/${o.helpPermalink}`}),new Ht.Setting(e).setName("File format").setDesc(a).addDropdown(s=>{for(let l in r)r.hasOwnProperty(l)&&s.addOption(l,r[l].optionText);s.onChange(l=>{r.hasOwnProperty(l)&&(this.selectedId=l,this.updateContent())}),s.setValue(this.selectedId)}),i&&r.hasOwnProperty(i)){let s=this.importer=new o.importer(this.app,this);if(s.notAvailable)return;e.createDiv("modal-button-container",l=>{l.createEl("button",{cls:"mod-cta",text:"Import"},c=>{c.addEventListener("click",async()=>{this.current&&this.current.cancel(),e.empty();let p=e.createDiv(),m=this.current=new Wr(p),y=e.createDiv("modal-button-container"),w=y.createEl("button",{cls:"mod-danger",text:"Stop"},E=>{E.addEventListener("click",()=>{m.cancel(),w.detach()})});try{await s.import(m)}finally{this.current===m&&(this.current=null),y.createEl("button",{text:"Upload more"},E=>{E.addEventListener("click",()=>this.updateContent())}),w.detach(),y.createEl("button",{cls:"mod-cta",text:"Done"},E=>{E.addEventListener("click",()=>this.close())}),m.hideStatus()}})})})}}onClose(){let{contentEl:e,current:i}=this;e.empty(),i&&i.cancel()}}; +/*! Bundled license information: + +sax/lib/sax.js: + (*! http://mths.be/fromcodepoint v0.1.0 by @mathias *) +*/ + +/* nosourcemap */ \ No newline at end of file diff --git a/.obsidian/plugins/obsidian-importer/manifest.json b/.obsidian/plugins/obsidian-importer/manifest.json new file mode 100644 index 0000000..8f6bfe3 --- /dev/null +++ b/.obsidian/plugins/obsidian-importer/manifest.json @@ -0,0 +1,10 @@ +{ + "id": "obsidian-importer", + "name": "Importer", + "version": "1.6.19", + "minAppVersion": "0.15.0", + "description": "Import data from Notion, Evernote, Apple Notes, Microsoft OneNote, Google Keep, Bear, Roam, and HTML files.", + "author": "Obsidian", + "authorUrl": "https://obsidian.md", + "isDesktopOnly": false +} diff --git a/.obsidian/plugins/obsidian-importer/styles.css b/.obsidian/plugins/obsidian-importer/styles.css new file mode 100644 index 0000000..6f9b809 --- /dev/null +++ b/.obsidian/plugins/obsidian-importer/styles.css @@ -0,0 +1,87 @@ +.modal.mod-importer { + max-height: var(--modal-height); + padding: var(--size-4-4) 0 0 0; + position: relative; + overflow: hidden; +} +.modal.mod-importer .modal-title { + padding: 0 var(--size-4-4); +} +.modal.mod-importer .modal-content { + overflow: auto; + padding: var(--size-4-4); + margin-bottom: calc(var(--input-height) + var(--size-4-8)); + border-top: var(--border-width) solid var(--background-modifier-border); +} +.modal.mod-importer .modal-button-container { + margin: 0 0 0 calc(var(--size-4-4) * -1); + padding: var(--size-4-4); + gap: var(--size-4-2); + position: absolute; + bottom: 0; + background-color: var(--background-primary); + border-top: var(--border-width) solid var(--background-modifier-border); + width: 100%; +} + +.importer-progress-bar { + width: 100%; + height: 8px; + background-color: var(--background-secondary); + overflow: hidden; + box-shadow: inset 0px 0px 0px 1px var(--background-modifier-border); + border-radius: var(--radius-s); +} + +.importer-progress-bar-inner { + width: 0; + height: 100%; + background-color: var(--interactive-accent); +} + +.importer-status { + white-space: nowrap; + overflow: hidden; + text-overflow: ellipsis; + padding: var(--size-4-2) 0; +} + +.importer-stats-container { + display: flex; + justify-content: space-evenly; + margin-top: var(--size-4-5); + margin-bottom: var(--size-4-5); +} + +.importer-stat { + text-align: center; +} + +.importer-stat-count { + font-size: var(--font-ui-large); +} + +.importer-log { + overflow: auto; + flex-grow: 1; + font-family: var(--font-monospace); + font-size: var(--font-ui-smaller); + color: var(--text-muted); + border: 1px solid var(--background-modifier-border); + padding: var(--size-4-4); + background-color: var(--background-secondary); + border-radius: var(--radius-s); + max-height: 300px; + user-select: text; +} + +.importer-log .list-item { + display: inline-block; + line-height: var(--line-height-normal); + white-space: pre; + margin: var(--size-2-1); +} + +.importer-error { + color: var(--text-error); +} diff --git a/.obsidian/plugins/omnisearch/data.json b/.obsidian/plugins/omnisearch/data.json index 584ccfe..8f48687 100644 --- a/.obsidian/plugins/omnisearch/data.json +++ b/.obsidian/plugins/omnisearch/data.json @@ -24,10 +24,10 @@ "showPreviousQueryResults": true, "simpleSearch": false, "tokenizeUrls": false, - "fuzziness": "1", - "weightBasename": 3, - "weightDirectory": 2, - "weightH1": 1.5, + "fuzziness": "2", + "weightBasename": 5, + "weightDirectory": 3.5, + "weightH1": 3.5, "weightH2": 1.3, "weightH3": 1.1, "weightUnmarkedTags": 1.1, diff --git a/.obsidian/workspace.json b/.obsidian/workspace.json index 634756c..5b1306d 100644 --- a/.obsidian/workspace.json +++ b/.obsidian/workspace.json @@ -4,109 +4,20 @@ "type": "split", "children": [ { - "id": "0d00cbfda05560f4", + "id": "98b7207724e72bb7", "type": "tabs", "children": [ { - "id": "a63c5a40742c1d13", + "id": "8e9cd00e3f1b6144", "type": "leaf", "state": { - "type": "markdown", - "state": { - "file": "01-Documentation/SIDEL/Master Filler/Master Filler - Notes.md", - "mode": "source", - "source": false - }, + "type": "empty", + "state": {}, "icon": "lucide-file", - "title": "Master Filler - Notes" - } - }, - { - "id": "866e2b2b7e3c81e6", - "type": "leaf", - "state": { - "type": "markdown", - "state": { - "file": "07 - Desarrolo de Proyectos - Scripts - Visual Studio/Proyectos Visual Studio/Aplicaciones y Librerias.md", - "mode": "source", - "source": false - }, - "icon": "lucide-file", - "title": "Aplicaciones y Librerias" - } - }, - { - "id": "c665e3b9ed860d0a", - "type": "leaf", - "state": { - "type": "markdown", - "state": { - "file": "04-SIDEL/05 - E5.007161 - Modifica O&U - SAE346/E5.007161 - Modifica O&U - SAE346 - Modified on PLC.md", - "mode": "source", - "source": false - }, - "icon": "lucide-file", - "title": "E5.007161 - Modifica O&U - SAE346 - Modified on PLC" - } - }, - { - "id": "e14094a81778a8bf", - "type": "leaf", - "state": { - "type": "markdown", - "state": { - "file": "01-Documentation/SIDEL/SIDEL - FLD.md", - "mode": "source", - "source": false - }, - "icon": "lucide-file", - "title": "SIDEL - FLD" - } - }, - { - "id": "1f1bee6d92fe50e5", - "type": "leaf", - "state": { - "type": "markdown", - "state": { - "file": "05-COMS/01 - T300881 - Nestle SudAfrica/T300881 - Notes.md", - "mode": "source", - "source": false - }, - "icon": "lucide-file", - "title": "T300881 - Notes" - } - }, - { - "id": "7bf1188623139dd2", - "type": "leaf", - "state": { - "type": "markdown", - "state": { - "file": "05-COMS/01 - T300881 - Nestle SudAfrica/T300881 - LINAK - Guides.md", - "mode": "source", - "source": false - }, - "icon": "lucide-file", - "title": "T300881 - LINAK - Guides" - } - }, - { - "id": "6f4de4514b7c5b59", - "type": "leaf", - "state": { - "type": "markdown", - "state": { - "file": "05-COMS/01 - T300881 - Nestle SudAfrica/T300881 - PAS4000 - PILz.md", - "mode": "source", - "source": false - }, - "icon": "lucide-file", - "title": "T300881 - PAS4000 - PILz" + "title": "New tab" } } - ], - "currentTab": 6 + ] } ], "direction": "vertical" @@ -272,11 +183,11 @@ } } ], - "currentTab": 4 + "currentTab": 6 } ], "direction": "horizontal", - "width": 477.5, + "width": 369.5, "collapsed": true }, "left-ribbon": { @@ -296,56 +207,59 @@ "publish:Publish changes...": false, "obsidian-excalidraw-plugin:New drawing": false, "obsidian-git:Open Git source control": false, - "copilot:Open Copilot Chat": false + "copilot:Open Copilot Chat": false, + "markitdown:Convert to Markdown with Markitdown": false, + "obsidian-importer:Open Importer": false } }, - "active": "6f4de4514b7c5b59", + "active": "8e9cd00e3f1b6144", "lastOpenFiles": [ - "05-COMS/01 - T300881 - Nestle SudAfrica/T300881 - Notes.md", - "05-COMS/01 - T300881 - Nestle SudAfrica/T300881 - PAS4000 - PILz.md", - "05-COMS/01 - T300881 - Nestle SudAfrica/adjuntos/Pasted image 20250329101837.png", - "05-COMS/01 - T300881 - Nestle SudAfrica/adjuntos/Pasted image 20250329100104.png", - "05-COMS/01 - T300881 - Nestle SudAfrica/adjuntos/Pasted image 20250329093003.png", - "05-COMS/01 - T300881 - Nestle SudAfrica/adjuntos/Pasted image 20250329092938.png", - "05-COMS/01 - T300881 - Nestle SudAfrica/T300881 - LINAK - Guides.md", - "05-COMS/01 - T300881 - Nestle SudAfrica/Buffer Logic.md", - "07 - Desarrolo de Proyectos - Scripts - Visual Studio/Proyectos Visual Studio/Aplicaciones y Librerias.md", - "04-SIDEL/05 - E5.007161 - Modifica O&U - SAE346/E5.007161 - Modifica O&U - SAE346 - Modified on PLC.md", + "TODY - Punti da vedere.md", + "Palabras Tecnicas/Lista.md", + "Temporales/NAT - Switch.md", + "Temporales/Drawing 2024-10-13 20.08.30.excalidraw.md", + "Excalidraw/Drawing 2025-01-27 16.50.21.excalidraw.md", + "04-SIDEL/00 - MASTER/SIDEL - Mixer - Master - IO Tags.md", + "cronologiaI-93040-3074-ALPLA-BG-open-points.md", + "markitdown-output/adjuntos/TIA Portal Ethernet communication Rules V0.1.pdf", + "HTML import/TIA Portal Ethernet communication Rules V0.1.md", + "HTML import/Attachments/image051.jpg", + "HTML import/Attachments/image047.jpg", + "01-Documentation/SIDEL/MASTER/Communication/Untitled.md", + "HTML import/Attachments/image154.gif", + "HTML import/Attachments/image151.jpg", + "HTML import/Attachments/image149.jpg", + "HTML import/Attachments/image147.gif", + "HTML import/Attachments/image145.gif", + "HTML import/Attachments/image141.gif", + "HTML import/Attachments/image138.gif", + "HTML import/Attachments/image131.gif", + "HTML import/Attachments", + "HTML import", + "04-SIDEL/05 - E5.007161 - Modifica O&U - SAE346/IO/IO - PLC - Software.md", + "01-Documentation/SIDEL/MASTER/Communication/contenidoImportado.md", + "01-Documentation/SIDEL/MASTER/Communication/adjuntos/temp_conversion.html", + "01-Documentation/SIDEL/MASTER/Communication/adjuntos/header.htm", + "01-Documentation/SIDEL/MASTER/Communication/adjuntos", + "04-SIDEL/05 - E5.007161 - Modifica O&U - SAE346/COMM - FILLER - MIXER/Comm - Mixer - Filler.md", + "01-Documentation/SIDEL/MASTER/Communication", + "01-Documentation/SIDEL/MASTER", + "04-SIDEL/04 - E5.007299 - Modifica O&U - RNF032/contenidoImportado.md", + "04-SIDEL/04 - E5.007299 - Modifica O&U - RNF032/FDM RNF032 E5.007299.md", + "04-SIDEL/04 - E5.007299 - Modifica O&U - RNF032/E5.007299 - Modifica O&U - RNF032 - NOTES.md", + "04-SIDEL/04 - E5.007299 - Modifica O&U - RNF032/data.json", + "04-SIDEL/04 - E5.007299 - Modifica O&U - RNF032/E5.007299 - RNF032 - FDM.md", "01-Documentation/SIDEL/SIDEL - FLD.md", - "04-SIDEL/05 - E5.007161 - Modifica O&U - SAE346/E5.007161 - Modifica O&U - SAE346 - Notes.md", - "04-SIDEL/05 - E5.007161 - Modifica O&U - SAE346/adjuntos/Pasted image 20250328160001.png", - "05-COMS/01 - T300881 - Nestle SudAfrica/T300881 - IPs.md", - "05-COMS/01 - T300881 - Nestle SudAfrica/T300881 - LINAK - Motor Setup.md", - "07 - Desarrolo de Proyectos - Scripts - Visual Studio/Proyectos Visual Studio/Como usar PublicApiGenerator - Nuget - Documentator.md", - "05-COMS/01 - T300881 - Nestle SudAfrica/adjuntos/Pasted image 20250327104037.png", - "05-COMS/01 - T300881 - Nestle SudAfrica/adjuntos/Pasted image 20250327101403.png", - "05-COMS/01 - T300881 - Nestle SudAfrica/adjuntos/Pasted image 20250327100219.png", - "05-COMS/01 - T300881 - Nestle SudAfrica/adjuntos/Pasted image 20250327100057.png", - "05-COMS/01 - T300881 - Nestle SudAfrica/adjuntos/Pasted image 20250327100008.png", - "07 - Desarrolo de Proyectos - Scripts - Visual Studio/Proyectos Visual Studio/Notas para crear nuevas aplicaciones.md", - "07 - Desarrolo de Proyectos - Scripts - Visual Studio/Proyectos Visual Studio/S7 Explorer/S7 Explorer - Csharp.md", - "04-SIDEL/05 - E5.007161 - Modifica O&U - SAE346/Drawing 2025-03-26 13.28.27.excalidraw.md", - "04-SIDEL/05 - E5.007161 - Modifica O&U - SAE346/adjuntos", - "04-SIDEL/01 - SAE463 - E5.006894-EXMU01UM - New Anton Paar/SAE463 - New Anton Paar - FDA.md", - "04-SIDEL/01 - SAE463 - E5.006894-EXMU01UM - New Anton Paar/SAE463 - New Anton Paar.md", - "01-Documentation/B&R/B&R Software.md", - "04-SIDEL/05 - E5.007161 - Modifica O&U - SAE346/Reporte", - "04-SIDEL/05 - E5.007161 - Modifica O&U - SAE346", - "01-Documentation/B&R", - "07 - Desarrolo de Proyectos - Scripts - Visual Studio/Proyectos Visual Studio/Librerias utiles cSharp.md", - "07 - Desarrolo de Proyectos - Scripts - Visual Studio/Proyectos Visual Studio/NetDocsForLLM/NetDocsForLLM - Especifica base.md", - "07 - Desarrolo de Proyectos - Scripts - Visual Studio/Proyectos Visual Studio/NetDocsForLLM", - "01-Documentation/SIDEL/Master Filler/Master Filler - Notes.md", - "01-Documentation/SIDEL/Master Filler/adjuntos", - "01-Documentation/GIT/Notes - Git - Gitea.md", - "01-Documentation/SIDEL/Master Filler", - "07 - Desarrolo de Proyectos - Scripts - Visual Studio/Scripts List.md", - "07 - Desarrolo de Proyectos - Scripts - Visual Studio/Proyectos en Python/Script para obtener las ultimas versiones.md", - "07 - Desarrolo de Proyectos - Scripts - Visual Studio/Proyectos en Python/Group Scripts Manager.md", - "07 - Desarrolo de Proyectos - Scripts - Visual Studio/Proyectos Visual Studio/ROI Editor/CtrEditor - Descripción de Funcionamiento.md", - "07 - Desarrolo de Proyectos - Scripts - Visual Studio/Proyectos Visual Studio/S7 Explorer", - "04-SIDEL/04 - E5.007299 - Modifica O&U - RNF032/Reporte/adjuntos", - "04-SIDEL/00 - MASTER/Reporte", + "04-SIDEL/00 - MASTER/Untitled.md", + "markitdown-output/TIA Portal Ethernet communication Rules V0.1.md", + "markitdown-output/1743758594713_TIA Portal Ethernet communication Rules V0.1.docx", + "markitdown-output/Specifiche per implemetare com. Siemens V6.5-It.md", + "01-Documentation/SIDEL/SIDEL - Passwords.md", + "04-SIDEL/03 - 5.007382-EXMU01UF - RVU008 - EQPT24731/5.007382-EXMU01UF - RVU008 - EQPT24731 - Notes.md", + "04-SIDEL/03 - 5.007382-EXMU01UF - RVU008 - EQPT24731/5.007382-EXMU01UF - RVU008 - EQPT24731 - Initial Data.md", + "01-Documentation/SIEMENS & WINCC/PLC Siemens/TCON, TDISCON, TSEND, and TRCV (TCP communication) instructions.md", + "04-SIDEL/00 - MASTER/SIDEL - Master - IPs.md", + "01-Documentation/SIEMENS & WINCC/PLC Siemens/Communication TSEND_C - TRCV_C.md", "03-Revised/93789 Sipa Italia - Tinny - HSCounters - Piattaforma/Divider/Untitled.canvas", "04-InLavoro/9..... MASTER Transport/Standard Transport/FB500 Logic.canvas", "04-InLavoro/HENKEL/93040 - HENKEL - BowlingGreen/TL22-L25/Synoptic Change/Q3.canvas", diff --git a/01-Documentation/GIT/Git - Start New Repository with Visual Studio Code - VS Code.md b/01-Documentation/GIT/Git - Start New Repository with Visual Studio Code - VS Code.md new file mode 100644 index 0000000..0b01475 --- /dev/null +++ b/01-Documentation/GIT/Git - Start New Repository with Visual Studio Code - VS Code.md @@ -0,0 +1,37 @@ + +### Create Repository +*** +1. Open the working folder with File +2. Ctr+Shit + P -> >Add Gitignore -> Select Python + + +![[Pasted image 20250331130643.png]] + +![[Pasted image 20250331130826.png]] + + +* With stage you accept this files to be on the Git. +* After this you can start to Commit versions + +### Branch +*** + +![[Pasted image 20250331131244.png]] + + +* Type the name of the new Branch + +The current branch will appear on the bottom-left + +![[Pasted image 20250331131430.png]] + +* The you can work on this branch, and make Commits + + +* If wanted to merge this branch to ==main== follow this steps: + * Commit last modification on the actual branch + * Change branch to main + * Select merge branch and select the branch from were to merge + * After this the ==main== will have the last modifications. If the branch is not needed you can delete it. + + diff --git a/01-Documentation/GIT/adjuntos/Pasted image 20250331130643.png b/01-Documentation/GIT/adjuntos/Pasted image 20250331130643.png new file mode 100644 index 0000000..a6a8e21 Binary files /dev/null and b/01-Documentation/GIT/adjuntos/Pasted image 20250331130643.png differ diff --git a/01-Documentation/GIT/adjuntos/Pasted image 20250331130826.png b/01-Documentation/GIT/adjuntos/Pasted image 20250331130826.png new file mode 100644 index 0000000..bc928f8 Binary files /dev/null and b/01-Documentation/GIT/adjuntos/Pasted image 20250331130826.png differ diff --git a/01-Documentation/GIT/adjuntos/Pasted image 20250331131244.png b/01-Documentation/GIT/adjuntos/Pasted image 20250331131244.png new file mode 100644 index 0000000..500143d Binary files /dev/null and b/01-Documentation/GIT/adjuntos/Pasted image 20250331131244.png differ diff --git a/01-Documentation/GIT/adjuntos/Pasted image 20250331131430.png b/01-Documentation/GIT/adjuntos/Pasted image 20250331131430.png new file mode 100644 index 0000000..5c0c7f3 Binary files /dev/null and b/01-Documentation/GIT/adjuntos/Pasted image 20250331131430.png differ diff --git a/01-Documentation/SIDEL/Master Filler/Master Filler - Notes.md b/01-Documentation/SIDEL/Master Filler/Master Filler - Notes.md index 4a82a3a..6fcee8c 100644 --- a/01-Documentation/SIDEL/Master Filler/Master Filler - Notes.md +++ b/01-Documentation/SIDEL/Master Filler/Master Filler - Notes.md @@ -2,3 +2,6 @@ CPU with DI HF ![[Pasted image 20250325173142.png|800]] + + + diff --git a/01-Documentation/SIDEL/Master Mixer/Mixer - Notes.md b/01-Documentation/SIDEL/Master Mixer/Mixer - Notes.md new file mode 100644 index 0000000..797ae0d --- /dev/null +++ b/01-Documentation/SIDEL/Master Mixer/Mixer - Notes.md @@ -0,0 +1,16 @@ + +Equivalence comments table +*** + +P1 = WATER PUMP = SOFTSTART = 160Q2:E10.0 = 160K4:E11.0 +P2 = SYRUP PUMP = 163Q2:E10.1 = 163K8:E11.1 +P3 = OVERPRESSURE PRODUCT PUMP = 166Q2:E10.2 +P6 = RECYCLE PUMP = 169Q2:E11.3 = 169K8:E11.3 + +___K_ : COMMAND RELAY - FEEDBACK SIGNAL +___Q_ : TERMIC OVERLOAD SIGNAL + +301 : WATER PUMP = P1 +302 : SYRUP = P2 +303 : PRODUCT = P3 +306 : RECIRCULATING = P6 \ No newline at end of file diff --git a/01-Documentation/SIDEL/SIDEL - Passwords.md b/01-Documentation/SIDEL/SIDEL - Passwords.md new file mode 100644 index 0000000..8f511ca --- /dev/null +++ b/01-Documentation/SIDEL/SIDEL - Passwords.md @@ -0,0 +1,33 @@ + +![[Pasted image 20250401162127.png]] + +## Windows PC +*** +administrator : 9-3urKW* +sidel : _Ymk47h2&M +Customer: sidel + + +## ULTRA VNC +*** +* Ultra VNC :  r@c2PS + +Oppure + +* Ultra VNC :  sysop + +## SAFETY +*** +### Filler: + +Per Carica il SAFETY :  **9991** + +Scrittura: +SAFETY Filler Utilizzata per RVE045 e REV128 +### ==safeuro1== + + + +![[Pasted image 20250401162219.png]] + +Password Maintenance 4685 \ No newline at end of file diff --git a/01-Documentation/SIDEL/adjuntos/Pasted image 20250401162127.png b/01-Documentation/SIDEL/adjuntos/Pasted image 20250401162127.png new file mode 100644 index 0000000..8bd3614 Binary files /dev/null and b/01-Documentation/SIDEL/adjuntos/Pasted image 20250401162127.png differ diff --git a/01-Documentation/SIDEL/adjuntos/Pasted image 20250401162219.png b/01-Documentation/SIDEL/adjuntos/Pasted image 20250401162219.png new file mode 100644 index 0000000..9b807a0 Binary files /dev/null and b/01-Documentation/SIDEL/adjuntos/Pasted image 20250401162219.png differ diff --git a/01-Documentation/SIEMENS & WINCC/IM Siemens - Profibus - Comissioning.md b/01-Documentation/SIEMENS & WINCC/IM Siemens - Profibus - Comissioning.md new file mode 100644 index 0000000..c0e7ddd --- /dev/null +++ b/01-Documentation/SIEMENS & WINCC/IM Siemens - Profibus - Comissioning.md @@ -0,0 +1,20 @@ + + +### Notes on comissioning: +*** +On profibus the configuration if the configuration is not exact the node is not online. Need to check that all cards are correctly assigned and connected. + + +### Profibus Address: +*** +![[Pasted image 20250331100137.png]] + + +### Leds +*** +![[Pasted image 20250331100123.png]] + + +### LEDs faults +*** +![[Pasted image 20250331100112.png]] \ No newline at end of file diff --git a/01-Documentation/SIEMENS & WINCC/PLC Siemens/SCL Scripts/SCL Script to test DI Outputs.md b/01-Documentation/SIEMENS & WINCC/PLC Siemens/SCL Scripts/SCL Script to test DI Outputs.md new file mode 100644 index 0000000..2f35c3b --- /dev/null +++ b/01-Documentation/SIEMENS & WINCC/PLC Siemens/SCL Scripts/SCL Script to test DI Outputs.md @@ -0,0 +1,23 @@ + +```pascal + +IF "CLK_0.2S" THEN + FOR #t := 0 TO 3 DO + IF "DBTEST".Count[#t] >= 128 THEN + "DBTEST".Count[#t + 1] := 1; + END_IF; + "DBTEST".Count[#t] := "DBTEST".Count[#t] * 2; + + END_FOR; + + IF "DBTEST".Count[0] + "DBTEST".Count[1] + "DBTEST".Count[2] + "DBTEST".Count[3] = 0 THEN + "DBTEST".Count[0] := 1; + END_IF; +END_IF; + +"AB5" := "DBTEST".Count[0]; +"Tag_2" := "DBTEST".Count[1]; +"Tag_3" := "DBTEST".Count[2]; +"Tag_4" := "DBTEST".Count[3]; + +``` \ No newline at end of file diff --git a/01-Documentation/SIEMENS & WINCC/PLC Siemens/TCON, TDISCON, TSEND, and TRCV (TCP communication) instructions.md b/01-Documentation/SIEMENS & WINCC/PLC Siemens/TCON, TDISCON, TSEND, and TRCV (TCP communication) instructions.md new file mode 100644 index 0000000..a66cf07 --- /dev/null +++ b/01-Documentation/SIEMENS & WINCC/PLC Siemens/TCON, TDISCON, TSEND, and TRCV (TCP communication) instructions.md @@ -0,0 +1,232 @@ + +# SIMATIC S7 S7-1200 Programmable controller + +https://support.industry.siemens.com/cs/mdm/109759862?c=89820793099&lc=en-KZ + +==VIDEO:== +https://support.industry.siemens.com/cs/document/109486139/how-you-configure-a-connection-in-the-tia-portal-?dti=0&dl=en&lc=nl-BE + +![[Pasted image 20250403170349.png|750]] + + +| | | | | | +|---|---|---|---|---| +|Document:|S7-1200 Programmable controller (V4.2.3, 08/2018, English)|||| +|Type of topic:|Fact| + + + +TCON, TDISCON, TSEND, and TRCV (TCP communication) instructions + + + +#### Ethernet communication using TCP and ISO on TCP protocols + +| | | +|---|---| +||---

    **Note**

    #### TSEND_C and TRCV_C instructions

    To help simplify the programming of PROFINET/Ethernet communication, the TSEND_C instruction and the TRCV_C instruction combine the functionality of the TCON, TDISCON. TSEND and TRCV instructions:

    - TSEND_C combines the TCON, TDISCON and TSEND instructions.

    - TRCV_C combines the TCON, TDISCON and TRCV instructions.


    ---| + + + +The following instructions control the communication process: + +- TCON establishes the TCP/IP connection between the client and server (CPU) PC. +- TSEND and TRCV send and receive data. +- TDISCON breaks the connection. + +The minimum size of data that you can transmit (TSEND) or receive (TRCV) is one byte; the maximum size is 8192 bytes. TSEND does not support the transmission of data from Boolean locations, and TRCV will not receive data into Boolean locations. For information transferring data with these instructions, see the section on [data consistency](https://support.industry.siemens.com/cs/mdm/109759862?c=65872045195&lc=en-kz&dl=en). + +TCON, TDISCON, TSEND, and TRCV operate asynchronously, which means that the job processing extends over multiple instruction executions. For example, you start a job for setting up and establishing a connection by executing an instruction TCON with parameter REQ = 1. Then you use additional TCON executions to monitor the job progress and test for job completion with parameter DONE. + +The following table shows the relationships between BUSY, DONE, and ERROR. Use the table to determine the current job status: + +Table: Interactions between the BUSY, DONE, and ERROR parameters + +| | | | | +|---|---|---|---| +|BUSY|DONE|ERROR|Description| +|1|0|0|The job is being processed.| +|0|1|0|The job successfully completed.| +|0|0|1|The job ended with an error. The cause of the error is output at the STATUS parameter.| +|0|0|0|No new job assigned.| + +#### TCON and TDISCON + +| | | +|---|---| +||---

    **Note**

    #### Initializing the communication parameters

    After you insert the TCON instruction, use the "Properties" [of the instruction](https://support.industry.siemens.com/cs/mdm/109759862?c=86819412235&lc=en-kz&dl=en) to configure the [communication parameters](https://support.industry.siemens.com/cs/mdm/109759862?c=83326252299&lc=en-kz&dl=en). As you enter the parameters for the communication partners in the inspector window, STEP 7 enters the corresponding data in the instance DB for the instruction.

    If you want to use a multi-instance DB, you must manually configure the DB on both CPUs.

    ---| + + + +Table: TCON and TDISCON instructions + +| | | | +|---|---|---| +|LAD / FBD||Description| +|[![](https://support.industry.siemens.com/dokumentation/MDMImage.img?docVersionId=114575606411&imageFileName=14772022155_DV_resource.Stream@PNG-en-US.png&Language=en-US)](https://support.industry.siemens.com/dokumentation/image.aspx?docVersionId=114575606411&imageName=14772022155_DV_resource.Stream%2540PNG-en-US.png&Language=en-US)|"TCON_DB"(    req:=_bool_in_,    ID:=_undef_in_,    done=>_bool_out_,    busy=>_bool_out_,    error=>_bool_out_,    status=>_word_out_,    connect:=_struct_inout_);|TCP and ISO on TCP: TCON initiates a communications connection from the CPU to a communication partner.| +|[![](https://support.industry.siemens.com/dokumentation/MDMImage.img?docVersionId=114575606411&imageFileName=14772064011_DV_resource.Stream@PNG-en-US.png&Language=en-US)](https://support.industry.siemens.com/dokumentation/image.aspx?docVersionId=114575606411&imageName=14772064011_DV_resource.Stream%2540PNG-en-US.png&Language=en-US)|"TDISCON_DB"(    req:=_bool_in_,    ID:=_word_in_,    done=>_bool_out_,    busy=>_bool_out_,    error=>_bool_out_,    status=>_word_out_);|TCP and ISO on TCP: TDISCON terminates a communications connection from the CPU to a communication partner.| + +1 STEP 7 automatically creates the DB when you insert the instruction. + + + +Table: Data types for the parameters of TCON and TDISCON + +| | | | | +|---|---|---|---| +|Parameter|Declaration|Data type|Description| +|REQ|IN|Bool|Starts the job to establish the connection specified in the ID upon a rising edge.| +|ID|IN|CONN_OUC (Word)|Reference to the assigned connection.

    Range of values: W#16#0001 to W#16#0FFF| +|CONNECT

    (TCON)|IN_OUT|VARIANT|Pointer to the connection description

    - For TCP or UDP, use the structure TCON_IP_v4

    For further information on TCON_IP_v4, refer to: ["Parameters for the PROFINET connection"](https://support.industry.siemens.com/cs/mdm/109759862?c=83326252299&lc=en-kz&dl=en).

    - For ISO-on-TCP, use the structure TCON_IP_RFC

    For further information on TCON_IP_RFC, refer to: ["Parameters for the PROFINET connection"](https://support.industry.siemens.com/cs/mdm/109759862?c=83326252299&lc=en-kz&dl=en).| +|DONE|OUT|Bool|Status parameter with the following values:

    - 0: Job not yet started or still in progress
    - 1: Job executed without errors| +|BUSY|OUT|Bool|Status parameter with the following values:

    - 0: Job not yet started or already completed
    - 1: Job not yet completed. A new job cannot be started| +|ERROR|OUT|Bool|Status parameter ERROR:

    - 0: No error
    - 1: Error occurred| +|STATUS|OUT|Word|Status of the instruction| + +Both communication partners execute the TCON instruction to set up and establish the communication connection. You use parameters to specify the active and passive communication end point partners. After the connection is set up and established, it is automatically maintained and monitored by the CPU. + +If the connection is terminated due to a line break or due to the remote communications partner, for example, the active partner attempts to re-establish the configured connection. You do not have to execute TCON again. + +An existing connection is terminated and the set-up connection is removed when the TDISCON instruction is executed or when the CPU has gone into STOP mode. To set up and re-establish the connection, you must execute TCON again. + +Table: ERROR and STATUS condition codes for TCON and TDISCON + +| | | | +| ----- | ----------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| ERROR | STATUS (W#16#...) | Explanation | +| 0 | 0000 | Connection successfully established. | +| 0 | 7000 | No job processing active | +| 0 | 7001 | Start job execution; establish connection (TCON) or terminate connection (TDISCON). | +| 0 | 7002 | Connection is being established (REQ irrelevant); establish connection (TCON) or terminate connection (TDISCON). | +| 1 | 8085 | TCON: Connection ID is already in use. | +| 1 | 8086 | TCON: The ID parameter is outside the valid range. | +| 1 | 8087 | TCON: Maximum number of connections reached; no additional connection possible | +| 1 | 8089 | TCON: The CONNECT parameter does not point to a connection description or the connection description was created manually. | +| 1 | 809A | TCON: The structure at the CONNECT parameter is not supported or the length is invalid. | +| 1 | 809B | TCON: The ID of the local device in the connection description does not correspond to the CPU or the CP, or it is "0". | +| 1 | 80A0 | Group error for error codes W#16#80A1 and W#16#80A2. | +| 1 | 80A1 | TCON: For TCP/UDP (TCON_IP_v4): Connection or port is already in use. | +| 1 | 80A2 | TCON: Local or remote port is being used by the system. | +| 1 | 80A3 | TCON: Value at the ID parameter is already being used by a connection (TCON) that was created using the user program. The connection uses the identical ID, but different connection settings at the parameter CONNECT. | +| 1 | 80A4 | TCON: IP address of the remote endpoint of the connection is invalid or it corresponds to the IP address of the local partner. | +| 1 | 80A5 | TCON: Connection ID is already in use. | +| 1 | 80A7 | TCON: Communication error: You executed "TDISCON" before "TCON" had completed. | +| 1 | 80B2 | TCON: The CONNECT parameter points to a data block that was generated with the attribute "Only store in load memory". | +| 1 | 80B3 | Inconsistent parameter assignment: Group error for error codes W#16#80A0 to W#16#80A2, W#16#80A4, W#16#80B4 to W#16#80B9. | +| 1 | 80B4 | TCON: Only with TCON_IP_RFC The local T selector was not specified or the first byte does not contain the value 0x0E or the local T selector starts with "SIMATIC-". | +| 1 | 80B5 | TCON: Only passive connection establishment is permitted for connection type 13 = UDP (Parameter active_est of the structure TCON_IP_v4 has the value TRUE).. | +| 1 | 80B6 | TCON: Parameter assignment error in the connection_type parameter of the data block for connection description.

    - Only valid with TCON_IP_v4: 0x11, 0x0B and 0x13.
    - Only valid with TCON_IP_RFC: 0x0C and 0x12 | +| 1 | 80B7 | TCON: With TCON_IP_v4:

    - TCP (active connection establishment): Remote port is "0".
    - TCP (passive connection establishment): Local port is "0".
    - UDP: Local port is "0".

    TCON: With TCON_IP_RFC:

    - Local (local_tselector) or remote (remote_tselector) T selector was specified with a length of more than 32 bytes.
    - For TSelLength of the T selector (local or remote), a length greater than 32 was entered.
    - Error in the length of the IP address of the specific connection partner. | +| 1 | 80B8 | TCON: Parameter ID in the local connection description (structure at parameter CONNECT) and parameter ID of the instruction are different. | +| 1 | 80C3 | TCON: All [connection](https://support.industry.siemens.com/cs/mdm/109759862?c=89820232331&lc=en-kz&dl=en) resources are in use. | +| 1 | 80C4 | Temporary communication error:

    - The connection cannot be established at this time (TCON).
    - The interface is currently receiving new parameters (TCON and TDISCON).
    - The configured connection is currently being removed by a "TDISCON" instruction (TCON). | +| 1 | 80C5 | TCON: The remote partner refuses to establish the connection, has terminated the connection or actively ended it. | +| 1 | 80C6 | TCON: The remote partner cannot be reached (network error). | +| 1 | 80C7 | TCON: Execution timeout. | +| 1 | 80C8 | TCON: ID is used by a connection created by the user program, which uses the same connection description at the CONNECT parameter. | +| 1 | 80C9 | TCON: Validation of the remote partner failed. The remote partner that wants to establish the connection does not match the defined partner of the structure at the CONNECT parameter. | +| 1 | 80CE | TCON: The IP address of the local interface is 0.0.0.0. | + +#### TSEND and TRCV + +| | | +|---|---| +||---

    **Note**

    When using PROFINET Open User communication, if you execute a TSEND instruction without a corresponding TRCV instruction executing on the remote device, then the TSEND instruction may reside indefinitely in a "Busy State", waiting for the TRCV instruction to receive the data. In this state, the TSEND instruction "Busy" output is set, and the "Status" output has a value of "0x7002". This condition may occur if you are transferring more than 4096 bytes of data. The issue is resolved at the next execution of the TRCV instruction.

    ---| + + + +Table: TSEND and TRCV instructions + +| | | | +|---|---|---| +|LAD / FBD|SCL|Description| +|[![](https://support.industry.siemens.com/dokumentation/MDMImage.img?docVersionId=114575606411&imageFileName=53306541323_DV_resource.Stream@PNG-en-US.png&Language=en-US)](https://support.industry.siemens.com/dokumentation/image.aspx?docVersionId=114575606411&imageName=53306541323_DV_resource.Stream%2540PNG-en-US.png&Language=en-US)|"TSEND_DB"(    req:=_bool_in_,    ID:=_word_in_,    len:=_udint_in_,    done=>_bool_out_,    busy=>_bool_out_,    error=>_bool_out_,    status=>_word_out_,    data:=_variant_inout_);|TCP and ISO on TCP: TSEND sends data through a communication connection from the CPU to a partner station.| +|[![](https://support.industry.siemens.com/dokumentation/MDMImage.img?docVersionId=114575606411&imageFileName=53306537099_DV_resource.Stream@PNG-en-US.png&Language=en-US)](https://support.industry.siemens.com/dokumentation/image.aspx?docVersionId=114575606411&imageName=53306537099_DV_resource.Stream%2540PNG-en-US.png&Language=en-US)|"TRCV_DB"(    en_r:=_bool_in_,    ID:=_word_in_,    len:=_udint_in_, adhoc:=_bool_in_,    ndr=>_bool_out_,    busy=>_bool_out_,    error=>_bool_out_,    status=>_word_out_,    rcvd_len=>_udint_out_,    data:=_variant_inout_);|TCP and ISO on TCP: TRCV receives data through a communication connection from a partner station to the CPU.| + +1 STEP 7 automatically creates the DB when you insert the instruction. + + + +Table: Data types for the parameters of TSEND and TRCV + +| | | | | +|---|---|---|---| +|Parameter and type| |Data type|Description| +|REQ|IN|Bool|TSEND: Starts the send job on a rising edge. The data is transferred from the area specified by DATA and LEN.| +|EN_R|IN|Bool|TRCV: Enables the CPU to receive; with EN_R = 1, the TRCV is ready to receive. The receive job is processed.| +|ID|IN|CONN_OUC (Word)|Reference to the associated connection. ID must be identical to the associated parameter ID in the local connection description.

    Value range: W#16#0001 to W#16#0FFF| +|LEN|IN|UDInt|Maximum number of bytes to be sent (TSEND) or received (TRCV):

    - Default = 0: The DATA parameter determines the length of the data to be sent (TSEND) or received (TRCV).
    - Ad hoc mode = 65535: A variable length of data is set for reception (TRCV).| +|ADHOC|IN|Bool|TRCV: Optional parameter (hidden)

    Ad hoc mode request for connection type TCP.| +|DATA|IN_OUT|Variant|Pointer to send (TSEND) or receive (TRCV) data area; data area contains the address and length. The address refers to I memory, Q memory, M memory, or a DB.| +|DONE|OUT|Bool|TSEND:

    - 0: Job not yet started or still running.
    - 1: Job executed without error.| +|NDR|OUT|Bool|TRCV:

    - NDR = 0: Job not yet started or still running.
    - NDR = 1: Job successfully completed.| +|BUSY|OUT|Bool|- BUSY = 1: The job is not yet complete. A new job cannot be triggered.
    - BUSY = 0: Job is complete.| +|ERROR|OUT|Bool|ERROR = 1: Error occurred during processing. STATUS provides detailed information on the type of error| +|STATUS|OUT|Word|Status information including error information. (Refer to the Error and Status condition codes in the table below.)| +|RCVD_LEN|OUT|UDInt|TRCV: Amount of data actually received in bytes| + +| | | +|---|---| +||---

    **Note**

    The TSEND instruction requires a low-to-high transition at the REQ input parameter to start a send job. The BUSY parameter is then set to 1 during processing. Completion of the send job is indicated by either the DONE or ERROR parameters being set to 1 for one scan. During this time, any low-to-high transition at the REQ input parameter is ignored.

    ---| + + + +#### TRCV Operations + +The TRCV instruction writes the received data to a receive area that is specified by the following two variables: + +- Pointer to the start of the area +- Length of the area or the value supplied at the LEN input if not 0 + + | | | + |---|---| + ||---

    **Note**

    The default setting of the LEN parameter (LEN = 0) uses the DATA parameter to determine the length of the data being transmitted. It is recommended that the data transmitted by the TSEND instruction be the same size as the DATA parameter of the TRCV instruction.

    If using the default setting of the LEN parameter and it is necessary to send the data in segments smaller than the DATA parameter size, the following applies. It is recommended to keep the EN_R bit high until the corresponding TSEND transfers the appropriate amount of data to fill the TRCV DATA parameter. If the size of the data transmitted from TSEND does not equal the TRCV DATA parameter size, TRCV remains in a busy status (status code: 7002) while the EN_R bit is high until the overall size of the data transmitted from TSEND equals the TRCV DATA parameter size. If the EN_R bit of TRCV is pulsed, it needs to be pulsed the same number of times as TSEND is executed to receive the data.

    The TRCV DATA parameter buffer does not display the new data received until the data size equals the DATA parameter buffer size.

    ---| + + + + +As soon as all the job data has been received, TRCV transfers it to the receive area and sets NDR to 1. + +Table: Entering the data into the receive area + +| | | | | | +|---|---|---|---|---| +|Protocol variant|Entering the data 
in the receive area|Parameter 
"connection_type"|Value of the LEN parameter|Value of the RCVD_LEN parameter (bytes)| +|TCP|Ad hoc mode|B#16#11|Selected with the TRCV instruction ADHOC input|1 to 1472| +|TCP|Data reception with specified length|B#16#11|0 (recommended) or 1 to 8192, except 65535|1 to 8192| +|ISO on TCP|Ad hoc mode|B#16#12|65535|1 to 1472| +|ISO on TCP|protocol-controlled|B#16#12|0 (recommended) or 1 to 8192, except 65535|1 to 8192| + +| | | +|---|---| +||---

    **Note**

    #### Ad hoc mode

    The "ad hoc mode" exists with the TCP and ISO on TCP protocol variants. To configure the TRCV instruction for ad hoc mode, set the ADHOC instruction input parameter. The receive area is identical to the area formed by DATA. The length of the received data will be output to the parameter RCVD_LEN. Immediately after receiving a block of data, TRCV enters the data in the receive area and sets NDR to 1.

    If you store the data in an "optimized" DB (symbolic only), you can receive data only in arrays of Byte, Char, USInt, and SInt data types.

    ---| + + + +| | | +|---|---| +||---

    **Note**

    #### Importing of S7-300/400 STEP 7 projects containing "ad hoc mode" into the S7-1200

    In S7-300/400 STEP 7 projects, "ad hoc mode" is selected by assigning "0" to the LEN parameter. In the S7-1200, you configure the TRCV instruction for ad hoc mode by setting the ADHOC instruction input parameter.

    If you import an S7-300/400 STEP 7 project containing "ad hoc mode" into the S7-1200, you must change the LEN parameter to "65535".

    ---| + + + +Table: ERROR and STATUS condition codes for TSEND and TRCV + +| | | | +|---|---|---| +|ERROR|STATUS|Description| +|0|0000|- Send job completed without error (TSEND)
    - New data accepted: The current length of the received data is shown in RCVD_LEN (TRCV).| +|0|7000|- No job processing active (TSEND)
    - Block not ready to receive (TRCV)| +|0|7001|- Start of job processing, data being sent: During this processing the operating system accesses the data in the DATA send area (TSEND).
    - Block is ready to receive, receive job was activated (TRCV).| +|0|7002|- Follow-on instruction execution (REQ irrelevant), job being processed: The operating system accesses the data in the DATA send area during this processing (TSEND).
    - Follow-on instruction execution, receive job being processed: Data is written to the receive area during this processing. For this reason, an error could result in inconsistent data in the receive area (TRCV).| +|1|8085|- LEN parameter is greater than the largest permitted value (TSEND) and (TRCV).
    - LEN or DATA parameter changed since the first instruction execution (TRCV).| +|1|8086|The ID parameter is not in the permitted address range.| +|1|8088|The LEN parameter is larger than the memory area specified in DATA.| +|1|80A1|Communications error:

    - The specified connection has not yet established (TSEND and TRCV).
    - The specified connection is currently being terminated. Transmission or a receive job over this connection is not possible (TSEND and TRCV).
    - The interface is being reinitialized (TSEND).
    - The interface is receiving new parameters (TRCV).| +|1|80C3|Internal lack of [connection](https://support.industry.siemens.com/cs/mdm/109759862?c=89820232331&lc=en-kz&dl=en) resources: A block with this ID is already being processed in a different priority class.| +|1|80C4|Temporary communications error:

    - The connection to the communications partner cannot be established at this time.
    - The interface is receiving new parameter settings, or the connection is currently being established.| + +#### Connection Ethernet protocols + +Every CPU has an integrated PROFINET port, which supports standard PROFINET communications. The TSEND_C, TRCV_C, TSEND and TRCV instructions all support the TCP and ISO on TCP Ethernet protocols. + +Refer to "Device Configuration: [Configuring the Local/Partner connection path](https://support.industry.siemens.com/cs/mdm/109759862?c=86819412235&lc=en-kz&dl=en)" for more information. \ No newline at end of file diff --git a/01-Documentation/SIEMENS & WINCC/PLC Siemens/adjuntos/Pasted image 20250403170349.png b/01-Documentation/SIEMENS & WINCC/PLC Siemens/adjuntos/Pasted image 20250403170349.png new file mode 100644 index 0000000..358bd1f Binary files /dev/null and b/01-Documentation/SIEMENS & WINCC/PLC Siemens/adjuntos/Pasted image 20250403170349.png differ diff --git a/01-Documentation/SIEMENS & WINCC/adjuntos/Pasted image 20250331100112.png b/01-Documentation/SIEMENS & WINCC/adjuntos/Pasted image 20250331100112.png new file mode 100644 index 0000000..329eda6 Binary files /dev/null and b/01-Documentation/SIEMENS & WINCC/adjuntos/Pasted image 20250331100112.png differ diff --git a/01-Documentation/SIEMENS & WINCC/adjuntos/Pasted image 20250331100123.png b/01-Documentation/SIEMENS & WINCC/adjuntos/Pasted image 20250331100123.png new file mode 100644 index 0000000..15a20e3 Binary files /dev/null and b/01-Documentation/SIEMENS & WINCC/adjuntos/Pasted image 20250331100123.png differ diff --git a/01-Documentation/SIEMENS & WINCC/adjuntos/Pasted image 20250331100137.png b/01-Documentation/SIEMENS & WINCC/adjuntos/Pasted image 20250331100137.png new file mode 100644 index 0000000..dabd1da Binary files /dev/null and b/01-Documentation/SIEMENS & WINCC/adjuntos/Pasted image 20250331100137.png differ diff --git a/01-Documentation/Teknors/Teknors p-Cloud.md b/01-Documentation/Teknors/Teknors p-Cloud.md new file mode 100644 index 0000000..e31b242 --- /dev/null +++ b/01-Documentation/Teknors/Teknors p-Cloud.md @@ -0,0 +1,28 @@ +*** + +Rev. 0.1 + +Gestione Ordini e Backups tra SIDEL e TEKNORS + +![[Pasted image 20250402162556.png]] + +![[Pasted image 20250402162539.png]] + +https://u.pcloud.link/publink/show?code=kZ0YbGVZfYOWcrHotzbr0wOoopeht0qJ9Y4V + +#### Pcloud +*** +1. Info Ordini + SIDEL Carica le Informazioni e Documentazione dell’ordine assegnato nella carpetta **1-Info Ordini** +2. Work in Progress + TEKNORS **Sposta** la carpetta dell’ordine in lavorazione nella carpetta -> **2-Work in Progress** +3. Per Sidel + A progetto terminato TEKNORS **sposta** la carpetta del progetto da **2-Work in Progress** a **3-Per Sidel** +4. Archiviati\Anno + La carpetta copiata in **3-Per Sidel** deve essere copiata anche in **4-Archiviati>202x** +5. In Avviamento + Cartella da utilizzare per gli ordini in avviamento + + + + diff --git a/01-Documentation/Teknors/adjuntos/Pasted image 20250402162539.png b/01-Documentation/Teknors/adjuntos/Pasted image 20250402162539.png new file mode 100644 index 0000000..2afc62b Binary files /dev/null and b/01-Documentation/Teknors/adjuntos/Pasted image 20250402162539.png differ diff --git a/01-Documentation/Teknors/adjuntos/Pasted image 20250402162556.png b/01-Documentation/Teknors/adjuntos/Pasted image 20250402162556.png new file mode 100644 index 0000000..c5027fc Binary files /dev/null and b/01-Documentation/Teknors/adjuntos/Pasted image 20250402162556.png differ diff --git a/01-Documentation/VB.NET Scripts VBA/DB5100 - Supervisor SIPA - Notes.md b/01-Documentation/VB.NET Scripts VBA/DB5100 - Supervisor SIPA - Notes.md index 23ca63f..54ca16d 100644 --- a/01-Documentation/VB.NET Scripts VBA/DB5100 - Supervisor SIPA - Notes.md +++ b/01-Documentation/VB.NET Scripts VBA/DB5100 - Supervisor SIPA - Notes.md @@ -1,3 +1,5 @@ +*** + This script works with a DB like this: @@ -11,3 +13,212 @@ Use the XML file Exported from : Then drag an drop in offline the DB to export on the Workspace area + +![[Pasted image 20250401210005.png|800]] +Export the DB5100 to XML file + +![[Pasted image 20250401210056.png]] + +On the Excel Import the XML ==if needed==. + +![[Pasted image 20250401210147.png|800]] + +![[Pasted image 20250401210230.png|800]] + +Next, use Excel to categorize each Alarm into Sections and hide any unused Alarms. + +After editing the DB in Excel, export it back to the DB using the same XML file you used for importing. Always use the XML file generated by Tia Portal for exporting, as the Excel script requires its header to create the final file. + +![[Pasted image 20250401210439.png|800]] + +After this go to Tia Portal and Import the xml file + +![[Pasted image 20250401210828.png]] + +After this, the DB will only contain visible Alarms and will have every section configured. + + + +* Set X on Hidden: will add X to every hidden row in the Excel sheet. +* Restore Hidden: will hide all rows with an X in the Hidden column. +* Unhide All: Will unhide all rows. +* Import: will decode the XML file into the Excel sheet. +* Export: The latest XML file exported from Tia Portal will be used to recreate the DB based on the current Excel sheet configuration. + +*** + +# Tia Portal Alarm Management Tool Documentation - DB5100 + +## Overview + +This Excel-based tool facilitates the management of alarms in Siemens TIA Portal projects by allowing users to: + +- Import alarm configurations from TIA Portal XML exports +- Modify alarm properties, comments, and section assignments +- Export modified configurations back to TIA Portal +- Generate alarm mapping files for SIPA supervision systems + +The tool simplifies alarm management through a user-friendly Excel interface rather than working directly within TIA Portal. + +## Main Workflow + +1. Export the DB5100 (Alarm Database) from TIA Portal as XML +2. Import the XML into this Excel tool +3. Modify alarm properties, comments, and section assignments +4. Hide unwanted alarms (rather than deleting them) +5. Export the modified configuration back to XML +6. Import the XML back into TIA Portal +7. Optionally generate a SIPA supervision system export file + +## Button Functions + +### Import + +![[Pasted image 20250401212140.png]] + +**Function**: `ImportSiemensXML()` + +This button imports alarm data from a Siemens TIA Portal XML file into the Excel sheet: + +1. Prompts user to select an XML file +2. Validates the file (checks for expiration date) +3. Reads alarm configurations from the XML structure +4. Populates the Excel sheet with: + - Alarm numbers + - DB addresses (DB, Byte, Bit) + - Priority settings + - Section assignments + - Alarm descriptions +5. Preserves existing row states (hidden/visible) + +**Notes**: + +- The import preserves existing configuration where possible +- Alarms with value "0" are automatically hidden +- Alarm sections are displayed as "X" marks in the appropriate columns + +### Export + +![[Pasted image 20250401212212.png]] +**Function**: `ExportSiemensXML()` + +This button exports the current Excel sheet data back to a Siemens XML file: + +1. Prompts user to select the target XML file (typically the original import file) +2. Validates input data (checks for duplicate alarm numbers) +3. Updates XML structures with modified values from Excel: + - Reads only visible rows (hidden rows are excluded from export) + - Updates alarm sections, priorities, and other properties + - Preserves alarm descriptions +4. Saves the modified XML file for import into TIA Portal + +**Notes**: + +- Only visible rows are included in the export +- The tool maintains the XML structure required by TIA Portal +- The export correctly handles special data types (Bool, Byte, Int) + +### Set X on Hidden + +![[Pasted image 20250401212236.png]] +**Function**: `MarcarFilasOcultas()` + +This button marks all currently hidden rows with an "X" in the Hidden column (column 17): + +1. Scans all rows in the sheet +2. If a row is hidden, places an "X" in column 17 +3. If a row is visible, clears column 17 + +**Purpose**: This function allows you to "remember" which rows are hidden so you can restore this state later. + +### Restore Hidden + +![[Pasted image 20250401212251.png]] +**Function**: `OcultarFilasSegunMarca()` + +This button hides all rows that have an "X" in the Hidden column (column 17): + +1. Makes all rows visible first +2. Scans column 17 for all rows +3. If an "X" is found, hides that row +4. Displays a progress bar during processing +5. Reports the number of rows hidden when complete + +**Purpose**: Restores a previously saved hidden/visible state. + +### Unhide All + +![[Pasted image 20250401212305.png]] +**Function**: `MostrarTodasLasFilas()` + +This button makes all rows in the worksheet visible: + +1. Simply removes the hidden state from all rows +2. No other changes are made to the data + +**Purpose**: Shows all alarms, including those previously hidden. + +### Export to SIPA + +![[Pasted image 20250401212322.png]] +**Function**: `Exportar_A_SIPA()` + +This button exports alarm data to a format compatible with SIPA supervision systems: + +1. Validates input data (checks for duplicate alarm numbers) +2. Transfers data to the "Per Supervisore SIPA" worksheet: + - Reformats alarm/warning indicators + - Creates appropriate tag names from DB/Byte/Bit values + - Combines section assignments into a comma-separated list + - Transfers priorities and descriptions + - Indicates used/unused alarms +3. Offers to save the SIPA worksheet as a separate Excel file +4. Provides confirmation when complete + +**Notes**: + +- Only visible rows are included in the SIPA export +- The "Per Supervisore SIPA" worksheet must exist +- The export uses color-coding: blue for warnings, red for alarms + +This button will generate a file based on the current state of the Excel Sheet definition. + +![[Pasted image 20250401211017.png|800]] + +## Data Structure + +### Excel Sheet Layout + +The main Excel sheet has the following column structure: + +|Column|Content|Description| +|---|---|---| +|B|Alarm Number|Unique identifier for each alarm| +|C|DB|Data Block number| +|D|Byte|Byte address within DB| +|E|Bit|Bit address within Byte| +|F|Priority|Alarm priority level| +|G-K|Section.1-5|"X" indicates alarm belongs to this section| +|L|Value|Value status| +|M|Disable|"X" indicates alarm is disabled| +|N|Is Warning|"X" indicates this is a warning (not alarm)| +|O|Ons|On/off status| +|P|Description|Alarm text description| +|Q|Hidden|Used by the tool to track hidden rows| + +### SIPA Export Format + +The "Per Supervisore SIPA" sheet has the following structure: + +|Column|Content|Description| +|---|---|---| +|A|Alarm/Warning|Indicator with color coding| +|B|Number|Alarm number| +|C|Tag|DB address in format DBx.DBXy.z| +|D|Sections|Comma-separated list of section numbers| +|E|Priority|Priority level| +|F|Description|Alarm text description| +|G|Used|Symbol if alarm is active, "-" if disabled| + + + diff --git a/01-Documentation/VB.NET Scripts VBA/DB5100 - Supervisor SIPA - Script en VBA for Import and Export DB from Tia Portal.md b/01-Documentation/VB.NET Scripts VBA/DB5100 - Supervisor SIPA - Script en VBA for Import and Export DB from Tia Portal.md index cea5c49..a0e1454 100644 --- a/01-Documentation/VB.NET Scripts VBA/DB5100 - Supervisor SIPA - Script en VBA for Import and Export DB from Tia Portal.md +++ b/01-Documentation/VB.NET Scripts VBA/DB5100 - Supervisor SIPA - Script en VBA for Import and Export DB from Tia Portal.md @@ -1186,15 +1186,3 @@ End Function The password for the VBA is: 3vpjTCr^AuyEw& -This script works with a DB like this: - -![[Pasted image 20240924113131.png]] - -Use the XML file Exported from : - -![[Pasted image 20240924113222.png]] - -![[Pasted image 20240924113305.png]] - -Then drag an drop in offline the DB to export on the Workspace area - diff --git a/01-Documentation/VB.NET Scripts VBA/adjuntos/Pasted image 20250401210005.png b/01-Documentation/VB.NET Scripts VBA/adjuntos/Pasted image 20250401210005.png new file mode 100644 index 0000000..81cbac3 Binary files /dev/null and b/01-Documentation/VB.NET Scripts VBA/adjuntos/Pasted image 20250401210005.png differ diff --git a/01-Documentation/VB.NET Scripts VBA/adjuntos/Pasted image 20250401210056.png b/01-Documentation/VB.NET Scripts VBA/adjuntos/Pasted image 20250401210056.png new file mode 100644 index 0000000..5894d7b Binary files /dev/null and b/01-Documentation/VB.NET Scripts VBA/adjuntos/Pasted image 20250401210056.png differ diff --git a/01-Documentation/VB.NET Scripts VBA/adjuntos/Pasted image 20250401210147.png b/01-Documentation/VB.NET Scripts VBA/adjuntos/Pasted image 20250401210147.png new file mode 100644 index 0000000..fe1d4c7 Binary files /dev/null and b/01-Documentation/VB.NET Scripts VBA/adjuntos/Pasted image 20250401210147.png differ diff --git a/01-Documentation/VB.NET Scripts VBA/adjuntos/Pasted image 20250401210230.png b/01-Documentation/VB.NET Scripts VBA/adjuntos/Pasted image 20250401210230.png new file mode 100644 index 0000000..9be810e Binary files /dev/null and b/01-Documentation/VB.NET Scripts VBA/adjuntos/Pasted image 20250401210230.png differ diff --git a/01-Documentation/VB.NET Scripts VBA/adjuntos/Pasted image 20250401210439.png b/01-Documentation/VB.NET Scripts VBA/adjuntos/Pasted image 20250401210439.png new file mode 100644 index 0000000..1ac0a20 Binary files /dev/null and b/01-Documentation/VB.NET Scripts VBA/adjuntos/Pasted image 20250401210439.png differ diff --git a/01-Documentation/VB.NET Scripts VBA/adjuntos/Pasted image 20250401210828.png b/01-Documentation/VB.NET Scripts VBA/adjuntos/Pasted image 20250401210828.png new file mode 100644 index 0000000..8529547 Binary files /dev/null and b/01-Documentation/VB.NET Scripts VBA/adjuntos/Pasted image 20250401210828.png differ diff --git a/01-Documentation/VB.NET Scripts VBA/adjuntos/Pasted image 20250401211017.png b/01-Documentation/VB.NET Scripts VBA/adjuntos/Pasted image 20250401211017.png new file mode 100644 index 0000000..0b49c9d Binary files /dev/null and b/01-Documentation/VB.NET Scripts VBA/adjuntos/Pasted image 20250401211017.png differ diff --git a/01-Documentation/VB.NET Scripts VBA/adjuntos/Pasted image 20250401211038.png b/01-Documentation/VB.NET Scripts VBA/adjuntos/Pasted image 20250401211038.png new file mode 100644 index 0000000..50cb541 Binary files /dev/null and b/01-Documentation/VB.NET Scripts VBA/adjuntos/Pasted image 20250401211038.png differ diff --git a/01-Documentation/VB.NET Scripts VBA/adjuntos/Pasted image 20250401212140.png b/01-Documentation/VB.NET Scripts VBA/adjuntos/Pasted image 20250401212140.png new file mode 100644 index 0000000..8d91554 Binary files /dev/null and b/01-Documentation/VB.NET Scripts VBA/adjuntos/Pasted image 20250401212140.png differ diff --git a/01-Documentation/VB.NET Scripts VBA/adjuntos/Pasted image 20250401212212.png b/01-Documentation/VB.NET Scripts VBA/adjuntos/Pasted image 20250401212212.png new file mode 100644 index 0000000..9569d69 Binary files /dev/null and b/01-Documentation/VB.NET Scripts VBA/adjuntos/Pasted image 20250401212212.png differ diff --git a/01-Documentation/VB.NET Scripts VBA/adjuntos/Pasted image 20250401212236.png b/01-Documentation/VB.NET Scripts VBA/adjuntos/Pasted image 20250401212236.png new file mode 100644 index 0000000..6f129f2 Binary files /dev/null and b/01-Documentation/VB.NET Scripts VBA/adjuntos/Pasted image 20250401212236.png differ diff --git a/01-Documentation/VB.NET Scripts VBA/adjuntos/Pasted image 20250401212251.png b/01-Documentation/VB.NET Scripts VBA/adjuntos/Pasted image 20250401212251.png new file mode 100644 index 0000000..26d9b99 Binary files /dev/null and b/01-Documentation/VB.NET Scripts VBA/adjuntos/Pasted image 20250401212251.png differ diff --git a/01-Documentation/VB.NET Scripts VBA/adjuntos/Pasted image 20250401212305.png b/01-Documentation/VB.NET Scripts VBA/adjuntos/Pasted image 20250401212305.png new file mode 100644 index 0000000..3538ddb Binary files /dev/null and b/01-Documentation/VB.NET Scripts VBA/adjuntos/Pasted image 20250401212305.png differ diff --git a/01-Documentation/VB.NET Scripts VBA/adjuntos/Pasted image 20250401212322.png b/01-Documentation/VB.NET Scripts VBA/adjuntos/Pasted image 20250401212322.png new file mode 100644 index 0000000..47087b0 Binary files /dev/null and b/01-Documentation/VB.NET Scripts VBA/adjuntos/Pasted image 20250401212322.png differ diff --git a/04-SIDEL/00 - MASTER/SIDEL - Master - IPs.md b/04-SIDEL/00 - MASTER/SIDEL - Master - IPs.md new file mode 100644 index 0000000..2b3fb30 --- /dev/null +++ b/04-SIDEL/00 - MASTER/SIDEL - Master - IPs.md @@ -0,0 +1,54 @@ +*** +### Filler : 10.1.20.11 +### Mixer : 10.1.33.11 + + + + + +| Links for bottle conveyors Sidel 92.1 (10.1.92.11) | | | | | | | | | | | | | +| -------------------------------------------------- | -------------------------------------- | ---------- | --- | --- | --- | --- | ----- | ---------------------- | ---------------------------------------- | ------------------------------------------------------------------------------------------------------------- | ---------------------- | --- | +| Protocole | Local Tsap  (ASC)
    or port TCP/UDP | ID  Number | | | | ACT | Sync. | Partner TCP/IP Address | Partner Tsap  (ASC)
    or port TCP/UDP | Partner PLC type/ref
    Ethernet coupler used for communication
    For Iso-on-tcp protocol, rack and slot | Partner Machine | | +| TCP | 2001 | 1 | | | SR | no | 100ms | _ | _ | B&R | Combi | | +| TCP | 2002 | 2 | | | SR | no | 100ms | _ | _ | Siemens S7-1500 | Tilter | | +| TCP | 2003 | 3 | | | SR | no | 100ms | _ | _ | Siemens S7-1500 | Cooler | | +| TCP | 2004 | 4 | | | SR | no | 100ms | _ | _ | ? | Sleever 1 | | +| TCP | 2005 | 5 | | | SR | no | 100ms | _ | _ | ? | Sleever 2 | | +| TCP | 2006 | 6 | | | SR | no | 100ms | _ | _ | ? | Packer | | +| TCP | 2007 | 7 | | | SR | no | 100ms | _ | _ | Siemens S7-1500 | Pack divider | | +| TCP | 2008 | 8 | | | SR | no | 100ms | _ | _ | ? | Palletizer | | +| | | | | | | | | | | | | | +| Links for Sidel Combi 20.1 | | | | | | | | | | | | | +| Protocole | Local Tsap  (ASC)
    or port TCP/UDP | ID  Number | | | M | ACT | Sync. | Partner TCP/IP Address | Partner Tsap  (ASC)
    or port TCP/UDP | Partner PLC type/ref
    Ethernet coupler used for communication
    For Iso-on-tcp protocol, rack and slot | Partner Machine | | +| TCP | 2001 | 1 | | | SR | yes | 100ms | 10.1.92.11 | 2001 | Siemens S7-1516 | bottle & pack conveyor | | +| | | | | | | | | | | | | | +| Links for Vetromeccanica Tilter 6.1 | | | | | | | | | | | | | +| Protocole | Local Tsap  (ASC)
    or port TCP/UDP | ID  Number | | | M | ACT | Sync. | Partner TCP/IP Address | Partner Tsap  (ASC)
    or port TCP/UDP | Partner PLC type/ref
    Ethernet coupler used for communication
    For Iso-on-tcp protocol, rack and slot | Partner Machine | | +| TCP | 2001 | - | | | SR | yes | - | 10.1.92.11 | 2002 | Siemens S7-1516 | bottle & pack conveyor | | +| | | | | | | | | | | | | | +| Links for Sidel Cooler 60.1 | | | | | | | | | | | | | +| Protocole | Local Tsap  (ASC)
    or port TCP/UDP | ID  Number | | | M | ACT | Sync. | Partner TCP/IP Address | Partner Tsap  (ASC)
    or port TCP/UDP | Partner PLC type/ref
    Ethernet coupler used for communication
    For Iso-on-tcp protocol, rack and slot | Partner Machine | | +| TCP | 2001 | 1 | | | SR | Yes | 100ms | 10.1.92.11 | 2003 | Siemens S7-1516 | bottle & pack conveyor | | +| | | | | | | | | | | | | | +| Links for Clever sleever 38.1 | | | | | | | | | | | | | +| Protocole | Local Tsap  (ASC)
    or port TCP/UDP | ID  Number | | | M | ACT | Sync. | Partner TCP/IP Address | Partner Tsap  (ASC)
    or port TCP/UDP | Partner PLC type/ref
    Ethernet coupler used for communication
    For Iso-on-tcp protocol, rack and slot | Partner Machine | | +| TCP | 2001 | 1 | | | SR | Yes | 100ms | 10.1.92.11 | 2004 | Siemens S7-1516 | bottle & pack conveyor | | +| | | | | | | | | | | | | | +| Links for Clever sleever 38.2 | | | | | | | | | | | | | +| Protocole | Local Tsap  (ASC)
    or port TCP/UDP | ID  Number | | | M | ACT | Sync. | Partner TCP/IP Address | Partner Tsap  (ASC)
    or port TCP/UDP | Partner PLC type/ref
    Ethernet coupler used for communication
    For Iso-on-tcp protocol, rack and slot | Partner Machine | | +| TCP | 2001 | 1 | | | SR | Yes | 100ms | 10.21.92.11 | 2005 | Siemens S7-1516 | bottle & pack conveyor | | +| | | | | | | | | | | | | | +| Links for Sidel Packer 41.1 | | | | | | | | | | | | | +| Protocole | Local Tsap  (ASC)
    or port TCP/UDP | ID  Number | | | M | ACT | Sync. | Partner TCP/IP Address | Partner Tsap  (ASC)
    or port TCP/UDP | Partner PLC type/ref
    Ethernet coupler used for communication
    For Iso-on-tcp protocol, rack and slot | Partner Machine | | +| TCP | 2001 | 1 | | | SR | yes | 100ms | 10.1.92.11 | 2006 | Siemens S7-1516 | bottle & pack conveyor | | +| | | | | | | | | | | | | | +| Links for LM Pack divider 10.1 | | | | | | | | | | | | | +| Protocole | Local Tsap  (ASC)
    or port TCP/UDP | ID  Number | | | M | ACT | Sync. | Partner TCP/IP Address | Partner Tsap  (ASC)
    or port TCP/UDP | Partner PLC type/ref
    Ethernet coupler used for communication
    For Iso-on-tcp protocol, rack and slot | Partner Machine | | +| TCP | 2001 | 1 | | | SR | yes | 100ms | 10.1.92.11 | 2007 | Siemens S7-1516 | bottle & pack conveyor | | +| | | | | | | | | | | | | | +| Links for Palletizer 53.1 | | | | | | | | | | | | | +| Protocole | Local Tsap  (ASC)
    or port TCP/UDP | ID  Number | | | M | ACT | Sync. | Partner TCP/IP Address | Partner Tsap  (ASC)
    or port TCP/UDP | Partner PLC type/ref
    Ethernet coupler used for communication
    For Iso-on-tcp protocol, rack and slot | Partner Machine | | +| TCP | 2001 | 1 | | | SR | yes | 100ms | 10.1.92.11 | 2008 | Siemens S7-1516 | bottle & pack conveyor | | + + +![[H1002261 RG Brands Network layout rev02.png]] \ No newline at end of file diff --git a/04-SIDEL/00 - MASTER/SIDEL - Mixer - Equivalences.md b/04-SIDEL/00 - MASTER/SIDEL - Mixer - Equivalences.md new file mode 100644 index 0000000..37d058f --- /dev/null +++ b/04-SIDEL/00 - MASTER/SIDEL - Mixer - Equivalences.md @@ -0,0 +1,19 @@ + +## Legend of equivalences + +- ___K_ : COMMAND RELAY - FEEDBACK SIGNAL (Señales de retroalimentación) +- ___Q_ : TERMIC OVERLOAD SIGNAL (Señales de sobrecarga térmica) +- P1 = WATER PUMP = SOFTSTART = 301 +- P2 = SYRUP PUMP = 302 +- P3 = OVERPRESSURE PRODUCT PUMP = 303 +- P6 = RECYCLE PUMP = 306 + +* Anton Paar = Analizatore + +301 : WATER PUMP = P1 +302 : SYRUP = P2 +303 : PRODUCT = P3 +306 : RECIRCULATING = P6 + +NORGREN Valve has Analog Input and Ouput to control PCM306 - Gas Pressure Injection (CO2) +NORGREN : Gasatura Produtto CO2 \ No newline at end of file diff --git a/04-SIDEL/00 - MASTER/SIDEL - Mixer - Master - IO Tags.md b/04-SIDEL/00 - MASTER/SIDEL - Mixer - Master - IO Tags.md new file mode 100644 index 0000000..4736917 --- /dev/null +++ b/04-SIDEL/00 - MASTER/SIDEL - Mixer - Master - IO Tags.md @@ -0,0 +1,465 @@ + +| Tag Name | Type | Data Type | Tag Comment | +| -------------------------------- | ------ | --------- | ----------------------------------------------------------------------- | +| AI_CIP_CIP_Total_Time | Inputs | Int | "AI_CIP_CIP_Total_Time" | +| AI_CIP_SetPoint_Temeperature | Inputs | Byte | "AI_CIP_SetPoint_Temeperature" | +| AI_SYRUP_Cip_Phase | Inputs | Byte | "AI_SYRUP_Cip_Phase" | +| AI_SYRUP_Cip_RemaningTime | Inputs | Byte | "AI_SYRUP_Cip_RemaningTime" | +| AI_SYRUP_Cip_TotalTime | Inputs | Byte | "AI_SYRUP_Cip_TotalTime" | +| DI_Air_InletPress_OK | Inputs | Bool | Air Pressure Switch | +| DI_AlarmReset | Inputs | Bool | PB Machine Reset | +| DI_Ammonia_High_Lev_Prod | Inputs | Bool | Product Chiller Ammonia High Level | +| DI_AmmoniaHighLev_Water | Inputs | Bool | Water Chiller Ammonia High Level | +| DI_AuxVoltage_On | Inputs | Bool | Electrical Panel Restored | +| DI_AVM362_Close | Inputs | Bool | AVM362 - Feedback OFF | +| DI_AVM362_Open | Inputs | Bool | AVM362 - Feedback ON | +| DI_CIP_ChemicalProd | Inputs | Bool | CIP - Chemical Prod [for local CIP only] | +| DI_CIP_CleaningCompleted | Inputs | Bool | CIP - Cip Cleaning Completed | +| DI_CIP_CleaningFault | Inputs | Bool | CIP - Cip in Fault | +| DI_CIP_FreeSodaTank | Inputs | Bool | CIP - Soda Tank is able to receive soda from mixer [for local CIP only] | +| DI_CIP_HotWaterSending | Inputs | Bool | CIP - Hot Water Sending [for local CIP only] | +| DI_CIP_TankFilling | Inputs | Bool | CIP - Flooding Request | +| DI_CO2_InletPress_OK | Inputs | Bool | - CO2 Inlet Pressure Switch | +| DI_DeairVacuumOk | Inputs | Bool | - Deairator Vaccum Switch | +| DI_Emergency_Pilz_On | Inputs | Bool | Pilz Emergency | +| DI_Emergency_Pressed | Inputs | Bool | Electrical Panel Emergency Button | +| DI_Flr_CIP_CleaningAlarm | Inputs | Bool | FILLER - Alarm | +| DI_Flr1_CIP_DrainComplete | Inputs | Bool | From FILLER - Cip Drain Complete | +| DI_Flr_CIP_FloodingEnd | Inputs | Bool | FILLER - Flooding End | +| DI_Flr1_CIP/RinseFiller | Inputs | Bool | From FILLER 1 - Cip/rinse | +| DI_Flr_CIP_RecoverReq | Inputs | Bool | FILLER - Recover Request | +| DI_Flr_CIP_RinseMode | Inputs | Bool | FILLER - Rinse Mode | +| DI_Flr_EndProdLastBottleFilled | Inputs | Bool | From FILLER - Production done Last bottle filled | +| DI_Flr_OpenAVM369 | Inputs | Bool | From FILLER - AVM369 Opening request | +| DI_Flr1_PROD_Request | Inputs | Bool | From FILLER 1 - Product Request | +| DI_CIP_Drain | Inputs | Bool | From CIP Drain | +| DI_CIP_CIP_Rinse | Inputs | Bool | From CIP Running | +| DI_CIP_CIP_Enable | Inputs | Bool | From CIP Enable | +| DI_SYR_TANK_LEVEL | Inputs | Word | DI_Syrup Room Tank Level % | +| DI_FSS301 | Inputs | Bool | FSS301 - Local Cip Return Flow Switch | +| DI_HVM302_Sensor | Inputs | Bool | GCM302 - Manual Water Valve Closed (NO) | +| DI_Log_Sidel | Inputs | Bool | Log son usuario Sidel | +| DI_LSM302L | Inputs | Bool | LSM302_L - Product Tank Minimun Level | +| DI_LSN301L | Inputs | Bool | LSN301_L - Deaireator Tank Minimun Level | +| DI_MaxTempAlarm | Inputs | Bool | Electrical Cabinet High Temperature | +| DI_Min_Deair2_Level | Inputs | Bool | LSN302_L - Deaireator Tank #2 Minimun Level | +| DI_Min_Syrup_Level | Inputs | Bool | - Syrup Tank Minimun Level | +| DI_PB_Machine_Start | Inputs | Bool | PB Machine Start | +| DI_PB_Machine_Stop | Inputs | Bool | PB Machine Stop | +| DI_PPM303_Ovrld | Inputs | Bool | PPM303 - Product Pump Overload | +| DI_PPN301_Contactor | Inputs | Bool | PPN301 - Deaireator Pump Feedback | +| DI_PPN301_Ovrld | Inputs | Bool | PPN301 - Deaireator Pump Overload | +| DI_PPN301_SoftStOvr | Inputs | Bool | PPN301 - Deaireator Pump Softstarter Ready | +| DI_PPN304_Contactor | Inputs | Bool | PPN304 - Vaccum Pump Feedback | +| DI_PPM305_Ovrld | Inputs | Bool | PPM305 - Product Pump 2 Overload | +| DI_PPP302_Contactor | Inputs | Bool | PPP302 - Syrup Pump Feedback | +| DI_PPP302_Ovrld | Inputs | Bool | PPP302 - Syrup Pump Overload | +| DI_Product_Analyzer_Prod_NO_OK | Inputs | Bool | | +| DI_RMM301_Closed | Inputs | Bool | RMM301 - Feedback OFF (VM1WATER) | +| DI_RMM303_Closed | Inputs | Bool | RMM303 - Feedback OFF (VM3 CO2) | +| DI_RMM304_Closed | Inputs | Bool | RMM304 - Feedback OFF | +| DI_RMP302_Closed | Inputs | Bool | RMP302 - Feedback OFF (VM2 SYRUP) | +| DI_SyrRoom_Cip_Mode | Inputs | Bool | Syrup Room - Cip Mode | +| DI_SyrRoom_Pump_Ready | Inputs | Bool | Syrup Room - Pump ready | +| DI_SyrRoom_WatPumpReady | Inputs | Bool | From Syrup Room - Water Pump Ready | +| DI_UPSBatteryReady | Inputs | Bool | UPS Battery ready | +| DI_UV_Lamp_Ready | Inputs | Bool | Water UV Lamp Ready | +| DI_Water_Pump2_Contactor | Inputs | Bool | PPN305 - Deaireator Pump #2 Feedback | +| DI_Water_Pump2_Ovrld | Inputs | Bool | PPN305 - Deaireator Pump #2 Overload | +| DI_WaterPipeCIP_Sensor | Inputs | Bool | MIX - N10_I32_ | +| DO_Aux24DC | Output | Bool | MIX - 24DC ON | +| DO_AVM312_Deair_Reflux | Output | Bool | MIX - N10_O41_ | +| DO_AVM317_1 | Output | Bool | MIX - CIP to Syrup Tank Inlet | +| DO_AVM327 | Output | Bool | MIX - Blendfill Still Water By-Pass Mixproof 1 | +| DO_AVM328 | Output | Bool | MIX - Blendfill Still Water By-Pass Mixproof 2 | +| DO_AVM329 | Output | Bool | MIX - Blendfill Still Water By-Pass Mixproof 3 | +| DO_AVM330 | Output | Bool | MIX - Blendfill Still Water By-Pass Drain Inlet Deaireator Tank | +| DO_AVM396 | Output | Bool | MIX - Steril Air Inlet | +| DO_AVN325 | Output | Bool | MIX - Vacuum Pump PPN304 Water In | +| DO_AVN329 | Output | Bool | MIX - Deaireator 2 Tank Spray Ball | +| DO_AVN348 | Output | Bool | MIX - Deaireator Inlet | +| DO_AVN349 | Output | Bool | MIX - Deaireator Bypass 1 | +| DO_AVN373 | Output | Bool | MIX - Deaireator 2 Drain | +| DO_AVN374 | Output | Bool | MIX - Deaireators Connection Drain | +| DO_AVN377 | Output | Bool | | +| DO_AVN378 | Output | Bool | | +| DO_AVN390 | Output | Bool | | +| DO_AVN347 | Output | Bool | MIX - Deaireator Tank Start CO2 Injection  1 | +| DO_AVP363 | Output | Bool | MIX - Syrup Line In H2O | +| DO_AVP391 | Output | Bool | MIX - | +| DO_AVS331 | Output | Bool | MIX - CIP Venturi | +| DO_AVS332 | Output | Bool | MIX - CIP Wash Venturi | +| DO_AVS333 | Output | Bool | MIX - CIP Caustic | +| DO_AVS334 | Output | Bool | MIX - CIP Acid | +| DO_AVS335 | Output | Bool | MIX - CIP Peracetic Acid | +| DO_AVS336 | Output | Bool | MIX - CIP Recirculation | +| DO_AVS337 | Output | Bool | MIX - CIP Drain | +| DO_AVS338 | Output | Bool | MIX - CIP Heater | +| DO_CIP_CleaningFault | Output | Bool | CIP - Cleaning Fault | +| DO_SyrupRoom_Aux1 | Output | Bool | To Syrup Room- Alarm | +| DO_CIP_DrainCompleted | Output | Bool | CIP - Drain Completed | +| DO_CIP_HotWaterReq | Output | Bool | CIP - Hot Water Request [for local CIP only] | +| DO_CIP_RecoverCompleted | Output | Bool | CIP - Recover Completed | +| DO_CIP_SendSodaReq | Output | Bool | CIP - Send Soda Request [for local CIP only] | +| DO_CIP_SolutionReturn | Output | Bool | CIP - Solution Return | +| DO_CIP_WaterPipe_Ready | Output | Bool | CIP - Water Pipe Ready [for local CIP only] | +| DO_CO2_Counter_Pulse | Output | Bool | MIX - Water Counter Pulse ( 1 Pulse = 100 Kg) | +| DO_CtrlCircuitRun | Output | Bool | Electrical Panel Reset | +| DO_SyRm_SyrupReques | Output | Bool | To syrup Room Syrup Request | +| DO_EV03_SyrupLvlCtrl | Output | Bool | MIX - N10_O06_ | +| DO_EV04_SyrupFillUp | Output | Bool | MIX - N10_O07_ | +| DO_EV66_FillerRinseWater | Output | Bool | MIX - N10_O97_ | +| DO_EV67_SyrupLineDrain | Output | Bool | MIX - N10_O101_ | +| DO_EV68_FillerRinseWater | Output | Bool | MIX - N10_O102_ | +| DO_EV71_FillerPrPipeDrai | Output | Bool | MIX - N10_O104_ | +| DO_EV71_FiRinseSprayBall | Output | Bool | MIX - N10_O105_ | +| DO_EV72_FlrRinseTankDrai | Output | Bool | MIX - N10_O106_ | +| DO_FillerNextRecipe | Output | Byte | MIX - | +| DO_Flr_BottleStop | Output | Bool | FILLER - Bottles Stop | +| DO_Flr1_CIP_CleaningEnd | Output | Bool | FILLER - Cip Cleaning Ended | +| DO_Flr_CIP_CleaningFault | Output | Bool | FILLER - Cip Fault | +| DO_Flr1_CIP_DrainRequest | Output | Bool | FILLER - Cip Drain Request | +| DO_Flr_CIP_ProdSending | Output | Bool | FILLER - Cip Product Sending | +| DO_Flr_CIP_RecoverReq | Output | Bool | FILLER - Cip Recover Request | +| DO_Flr1_RinseMode | Output | Bool | FILLER - Rinse Mode | +| DO_Flr_CIP_RinseSending | Output | Bool | FILLER - Rinse Sending | +| DO_Flr_CIP_Running | Output | Bool | FILLER - Cip Running | +| DO_Flr_CIP_TankFilling | Output | Bool | FILLER - Flooding Request | +| DO_Flr_FastRinseRequest | Output | Bool | FILLER - Fast Change Over Rinse Request | +| DO_Flr1_CIP/Rinse | Output | Bool | To Filler 1 CIP/Rinse | +| DO_Flr1_PROD_Available | Output | Bool | FILLER - Product Available | +| DO_Flr1_OpenBottleblock | Output | Bool | FILLER - Production Mode | +| DO_Flr_PROD_Run_Out | Output | Bool | FILLER - Run Out Request | +| DO_Flr_ProductCompleted | Output | Bool | FILLER - Product Completed | +| DO_Flr_WaterRinseReady | Output | Bool | FILLER - Fast Change Over Water Ready | +| DO_Green_Lamp | Output | Bool | DO_Green_Lamp | +| DO_Horn | Output | Bool | DO_Horn | +| DO_MES_CIP | Output | Bool | MES - CIP Mode | +| DO_MES_FAULT | Output | Bool | MES - FAULT (1= FAULT) | +| DO_MES_PRODUCTION | Output | Bool | MES - Production | +| DO_MES_Running | Output | Bool | MES - Running 1(Running - 0 Stop) | +| DO_CIP_Mode_En | Output | Bool | To CIP Modo Enable | +| DO_MIXER _CIP_Temperature_Return | Output | Word | | +| DO_CoolingON | Output | Bool | EV Cooling Enbled | +| DO_MIXER _Rinse_mode | Output | Bool | MIXER en RinseMode | +| DO_PB_Green_Lamp | Output | Bool | PB Machine Start Lamp | +| DO_PCM306En | Output | Bool | DO_PCM306_Enabled Power On | +| DO_PPM303_Run | Output | Bool | DO_PPM303_Run | +| DO_PPN301_1053K1 | Output | Bool | DO_PPN301_ElectonicStart | +| DO_PPN301_Run | Output | Bool | DO_PPN301_SoftStartPower | +| DO_PPN304_Run | Output | Bool | DO_PPN304_Run | +| DO_PPP302_Run | Output | Bool | DO_PPP302_Run | +| DO_Red_Lamp | Output | Bool | DO_Red_Lamp | +| DO_RVN301_Level | Output | Bool | MIX - Deaireator Level Control | +| DO_SyrRoom_SyrupRequest | Output | Bool | SYRUP ROOM - Syrup Request | +| DO_Syrup_Counter_Pulse | Output | Bool | MIX - Syrup Counter Pulse ( 1 Pulse = 100 Lt.) | +| DO_SyrupRoomPump_Run | Output | Bool | Syrup Room - Syrup Pump Request | +| DO_SyrupRoomWaterReq | Output | Bool | Syrup Room - Water Pump Request | +| DO_Water_Counter_Pulse | Output | Bool | DO_Water_Counter_Pulse | +| DO_Yellow_Lamp | Output | Bool | DO_Yellow_Lamp | +| MaselliSpare | Output | Bool | Maselli Spare | +| MaselliHold | Output | Bool | Masseli Hold activated | +| P_AI_TTM306 | Inputs | Word | TTM306 - Chiller Temperature | +| P_AI_LTM302 | Inputs | Word | LTM302 - Product Tank Level | +| P_AI_LTP303 | Inputs | Word | LTP303 - Syrup Tank Level | +| P_AI_PCM306 | Inputs | Word | PCM306 - Gas Pressure Injection | +| P_AI_ProductCO2 | Inputs | Word | Product Analizer - Product CO2 | +| P_AI_PTF203 | Inputs | Word | PTF203 - Differential Pressure | +| P_AI_PTM304 | Inputs | Word | PTM304 - Product Tank Pressure | +| P_AI_PTP338 | Inputs | Word | PTP338 - Syrup Inlet Pressure | +| P_AI_RVM301 | Inputs | Word | RVM301 - Product Tank Pressure Valve | +| P_AI_RVN304 | Inputs | Word | RVN304 - Deaireation Valve | +| P_AI_TTN321 | Inputs | Word | TTN321 - Deaireator Temperature | +| P_AO_CIPCausticCond | Output | Word | Recorder - Local Cip Delivery Conductivity  [0.0 … 200.0 mS] | +| P_AO_CIPReturnTemperature | Output | Word | Recorder - Local Cip Return Temperaure [0.0 … 100.0 °C] | +| P_AO_CIPWaterCond | Output | Word | Recorder - Local Cip Return Conductivity [0.0 … 2000.0 mS] | +| P_AO_PCM306 | Output | Word | PCM306 - Gas Injection Pressure Control | +| P_AO_ProductRunOutAmount | Output | Word | FILLER - Product Run Out Amount [200.0 … 800.0 L] | +| P_AO_RMM301 | Output | Word | RMM301 - Water Flow Control | +| P_AO_RMM303 | Output | Word | RMM303 - Gas Flow Control | +| P_AO_RMM304 | Output | Word | RMM304 - Gas 2 Flow Control | +| P_AO_RMP302 | Output | Word | RMP302 - Syrup Flow Control | +| P_AO_RVM301 | Output | Word | RVM301 - Product Tank Pressure Valve | +| P_AO_RVM302 | Output | Word | RVM302 - Deaireation Tank Level / Product Tank Level Valve | +| P_AO_RVM319 | Output | Word | RVM319 - Chiller Temperature control | +| P_AO_RVN302 | Output | Word | RVN302 - Deaireation Tank Level Valve | +| P_AO_RVN304 | Output | Word | RVN304 - Deaireation Valve | +| P_AO_RVP303 | Output | Word | RVP303 - Syrup Tank Level Valve | +| P_AO_RVS318 | Output | Word | RVS318 - Local Cip Heating Valve | +| P_AO_ToFillerEqPress | Output | Word | FILLER - Product Saturation Pressure [0.0 … 100.0 Bar/10] | +| P_CTS301_Conductiv_State | Inputs | Byte | MIX - Profibus Variables | +| P_CTS301_Conductivity | Inputs | Real | MIX - Profibus Variables | +| P_CTS301_Temperat_State | Inputs | Byte | MIX - Profibus Variables | +| P_CTS301_Temperature | Inputs | Real | MIX - Profibus Variables | +| P_CTS302_Conductiv_State | Inputs | Byte | MIX - Profibus Variables | +| P_CTS302_Conductivity | Inputs | Real | MIX - Profibus Variables | +| P_CTS302_Temperat_State | Inputs | Byte | MIX - Profibus Variables | +| P_CTS302_Temperature | Inputs | Real | MIX - Profibus Variables | +| P_FTM303_Tot_Ctrl | Output | Byte | MIX - | +| P_FTM303_Density | Inputs | Real | MIX - Profibus Variables | +| P_FTM303_Density_State | Inputs | Byte | MIX - Profibus Variables | +| P_FTM303_EPD | Inputs | Byte | MIX - Profibus Variables | +| P_FTM303_Flow | Inputs | Real | MIX - Profibus Variables | +| P_FTM303_Flow_State | Inputs | Byte | MIX - Profibus Variables | +| P_FTM303_Temperature_State | Inputs | Byte | MIX - Profibus Variables | +| P_FTM303_Temperature | Inputs | Real | MIX - Profibus Variables | +| P_FTM303_Totalizer | Inputs | Real | MIX - Profibus Variables | +| P_FTM303_Totalizer_State | Inputs | Byte | MIX - Profibus Variables | +| P_FTN301_Flow | Inputs | Real | MIX - Profibus Variables | +| P_FTN301_Flow_State | Inputs | Byte | MIX - Profibus Variables | +| P_FTN301_Tot_Ctrl | Output | Byte | MIX - | +| P_FTN301_Totaliz_State | Inputs | Byte | MIX - Profibus Variables | +| P_FTN301_Totalizer | Inputs | Real | MIX - Profibus Variables | +| P_FTP302_Brix | Inputs | Real | MIX - Profibus Variables | +| P_FTP302_Brix_State | Inputs | Byte | MIX - Profibus Variables | +| P_FTP302_Tot_Ctrl | Output | Byte | MIX - | +| P_FTP302_Density | Inputs | Real | MIX - Profibus Variables | +| P_FTP302_Density_State | Inputs | Byte | MIX - Profibus Variables | +| P_FTP302_Flow | Inputs | Real | MIX - Profibus Variables | +| P_FTP302_Flow_State | Inputs | Byte | MIX - Profibus Variables | +| P_FTP302_Temp | Inputs | Real | MIX - Profibus Variables | +| P_FTP302_Temp_State | Inputs | Byte | MIX - Profibus Variables | +| P_FTP302_Totaliz_State | Inputs | Byte | MIX - Profibus Variables | +| P_FTP302_Totalizer | Inputs | Real | MIX - Profibus Variables | +| P_gMaselli_AlcoholVolume | Inputs | Real | MIX - Profibus Variables | +| P_gMaselli_ProdPerStandard | Inputs | Real | MIX - Profibus Variables | +| P_gMaselli_ProductBrix | Inputs | Real | MIX - Profibus Variables | +| P_gMaselli_ProductCO2 | Inputs | Real | MIX - Profibus Variables | +| P_gMaselli_ProductNumber | Inputs | Byte | MIX - Profibus Variables | +| P_gMaselli_ProductTemp | Inputs | Real | MIX - Profibus Variables | +| P_gMaselli_ProfibusStatus | Inputs | Byte | MIX - Profibus Variables | +| P_gMaselli_RecipeSetNum | Output | Byte | MIX - Profibus Variables | +| P_gMaselli_RecipeSetNumStr | Output | Byte | MIX - Profibus Variables | +| P_gPAmPDS_INBlock01_0 | Inputs | Byte | MIX - Profibus Variables | +| P_gPAmPDS_INBlock01_1 | Inputs | Byte | MIX - Profibus Variables | +| P_gPAmPDS_INBlock01_10 | Inputs | Byte | MIX - Profibus Variables | +| P_gPAmPDS_INBlock01_11 | Inputs | Byte | MIX - Profibus Variables | +| P_gPAmPDS_INBlock01_12 | Inputs | Byte | MIX - Profibus Variables | +| P_gPAmPDS_INBlock01_13 | Inputs | Byte | MIX - Profibus Variables | +| P_gPAmPDS_INBlock01_14 | Inputs | Byte | MIX - Profibus Variables | +| P_gPAmPDS_INBlock01_15 | Inputs | Byte | MIX - Profibus Variables | +| P_gPAmPDS_INBlock01_16 | Inputs | Byte | MIX - Profibus Variables | +| P_gPAmPDS_INBlock01_17 | Inputs | Byte | MIX - Profibus Variables | +| P_gPAmPDS_INBlock01_18 | Inputs | Byte | MIX - Profibus Variables | +| P_gPAmPDS_INBlock01_19 | Inputs | Byte | MIX - Profibus Variables | +| P_gPAmPDS_INBlock01_2 | Inputs | Byte | MIX - Profibus Variables | +| P_gPAmPDS_INBlock01_20 | Inputs | Byte | MIX - Profibus Variables | +| P_gPAmPDS_INBlock01_21 | Inputs | Byte | MIX - Profibus Variables | +| P_gPAmPDS_INBlock01_22 | Inputs | Byte | MIX - Profibus Variables | +| P_gPAmPDS_INBlock01_23 | Inputs | Byte | MIX - Profibus Variables | +| P_gPAmPDS_INBlock01_24 | Inputs | Byte | MIX - Profibus Variables | +| P_gPAmPDS_INBlock01_25 | Inputs | Byte | MIX - Profibus Variables | +| P_gPAmPDS_INBlock01_26 | Inputs | Byte | MIX - Profibus Variables | +| P_gPAmPDS_INBlock01_27 | Inputs | Byte | MIX - Profibus Variables | +| P_gPAmPDS_INBlock01_28 | Inputs | Byte | MIX - Profibus Variables | +| P_gPAmPDS_INBlock01_29 | Inputs | Byte | MIX - Profibus Variables | +| P_gPAmPDS_INBlock01_3 | Inputs | Byte | MIX - Profibus Variables | +| P_gPAmPDS_INBlock01_4 | Inputs | Byte | MIX - Profibus Variables | +| P_gPAmPDS_INBlock01_5 | Inputs | Byte | MIX - Profibus Variables | +| P_gPAmPDS_INBlock01_6 | Inputs | Byte | MIX - Profibus Variables | +| P_gPAmPDS_INBlock01_7 | Inputs | Byte | MIX - Profibus Variables | +| P_gPAmPDS_INBlock01_8 | Inputs | Byte | MIX - Profibus Variables | +| P_gPAmPDS_INBlock01_9 | Inputs | Byte | MIX - Profibus Variables | +| P_gPAmPDS_INBlock02_30 | Inputs | Byte | MIX - Profibus Variables | +| P_gPAmPDS_INBlock02_31 | Inputs | Byte | MIX - Profibus Variables | +| P_gPAmPDS_INBlock02_32 | Inputs | Byte | MIX - Profibus Variables | +| P_gPAmPDS_INBlock02_33 | Inputs | Byte | MIX - Profibus Variables | +| P_gPAmPDS_INBlock02_34 | Inputs | Byte | MIX - Profibus Variables | +| P_gPAmPDS_INBlock02_35 | Inputs | Byte | MIX - Profibus Variables | +| P_gPAmPDS_INBlock02_36 | Inputs | Byte | MIX - Profibus Variables | +| P_gPAmPDS_INBlock02_37 | Inputs | Byte | MIX - Profibus Variables | +| P_gPAmPDS_INBlock02_38 | Inputs | Byte | MIX - Profibus Variables | +| P_gPAmPDS_INBlock02_39 | Inputs | Byte | MIX - Profibus Variables | +| P_gPAmPDS_INBlock02_40 | Inputs | Byte | MIX - Profibus Variables | +| P_gPAmPDS_INBlock02_41 | Inputs | Byte | MIX - Profibus Variables | +| P_gPAmPDS_INBlock02_42 | Inputs | Byte | MIX - Profibus Variables | +| P_gPAmPDS_INBlock02_43 | Inputs | Byte | MIX - Profibus Variables | +| P_gPAmPDS_INBlock02_44 | Inputs | Byte | MIX - Profibus Variables | +| P_gPAmPDS_INBlock02_45 | Inputs | Byte | MIX - Profibus Variables | +| P_gPAmPDS_INBlock02_46 | Inputs | Byte | MIX - Profibus Variables | +| P_gPAmPDS_INBlock02_47 | Inputs | Byte | MIX - Profibus Variables | +| P_gPAmPDS_INBlock02_48 | Inputs | Byte | MIX - Profibus Variables | +| P_gPAmPDS_INBlock02_49 | Inputs | Byte | MIX - Profibus Variables | +| P_gPAmPDS_INBlock02_50 | Inputs | Byte | MIX - Profibus Variables | +| P_gPAmPDS_INBlock02_51 | Inputs | Byte | MIX - Profibus Variables | +| P_gPAmPDS_INBlock02_52 | Inputs | Byte | MIX - Profibus Variables | +| P_gPAmPDS_INBlock02_53 | Inputs | Byte | MIX - Profibus Variables | +| P_gPAmPDS_INBlock02_54 | Inputs | Byte | MIX - Profibus Variables | +| P_gPAmPDS_INBlock02_55 | Inputs | Byte | MIX - Profibus Variables | +| P_gPAmPDS_INBlock02_56 | Inputs | Byte | MIX - Profibus Variables | +| P_gPAmPDS_INBlock02_57 | Inputs | Byte | MIX - Profibus Variables | +| P_gPAmPDS_INBlock02_58 | Inputs | Byte | MIX - Profibus Variables | +| P_gPAmPDS_INBlock02_59 | Inputs | Byte | MIX - Profibus Variables | +| P_gPAmPDS_INBlock02_60 | Inputs | Byte | MIX - Profibus Variables | +| P_gPAmPDS_INBlock02_61 | Inputs | Byte | MIX - Profibus Variables | +| P_gPAmPDS_INBlock03_62 | Inputs | Byte | MIX - Profibus Variables | +| P_gPAmPDS_INBlock03_63 | Inputs | Byte | MIX - Profibus Variables | +| P_gPAmPDS_INBlock03_64 | Inputs | Byte | MIX - Profibus Variables | +| P_gPAmPDS_INBlock03_65 | Inputs | Byte | MIX - Profibus Variables | +| P_gPAmPDS_INBlock03_66 | Inputs | Byte | MIX - Profibus Variables | +| P_gPAmPDS_INBlock03_67 | Inputs | Byte | MIX - Profibus Variables | +| P_gPAmPDS_INBlock03_68 | Inputs | Byte | MIX - Profibus Variables | +| P_gPAmPDS_INBlock03_69 | Inputs | Byte | MIX - Profibus Variables | +| P_gPAmPDS_INBlock03_70 | Inputs | Byte | MIX - Profibus Variables | +| P_gPAmPDS_INBlock03_71 | Inputs | Byte | MIX - Profibus Variables | +| P_gPAmPDS_INBlock03_72 | Inputs | Byte | MIX - Profibus Variables | +| P_gPAmPDS_INBlock03_73 | Inputs | Byte | MIX - Profibus Variables | +| P_gPAmPDS_INBlock03_74 | Inputs | Byte | MIX - Profibus Variables | +| P_gPAmPDS_INBlock03_75 | Inputs | Byte | MIX - Profibus Variables | +| P_gPAmPDS_INBlock03_76 | Inputs | Byte | MIX - Profibus Variables | +| P_gPAmPDS_INBlock03_77 | Inputs | Byte | MIX - Profibus Variables | +| P_gPAmPDS_INBlock03_78 | Inputs | Byte | MIX - Profibus Variables | +| P_gPAmPDS_INBlock03_79 | Inputs | Byte | MIX - Profibus Variables | +| P_gPAmPDS_INBlock03_80 | Inputs | Byte | MIX - Profibus Variables | +| P_gPAmPDS_INBlock03_81 | Inputs | Byte | MIX - Profibus Variables | +| P_gPAmPDS_INBlock03_82 | Inputs | Byte | MIX - Profibus Variables | +| P_gPAmPDS_INBlock03_83 | Inputs | Byte | MIX - Profibus Variables | +| P_gPAmPDS_INBlock03_84 | Inputs | Byte | MIX - Profibus Variables | +| P_gPAmPDS_INBlock03_85 | Inputs | Byte | MIX - Profibus Variables | +| P_gPAmPDS_OUTBlock01_0 | Output | Byte | MIX - Profibus Variables | +| P_gPAmPDS_OUTBlock01_1 | Output | Byte | MIX - Profibus Variables | +| P_gPAmPDS_OUTBlock01_10 | Output | Byte | MIX - Profibus Variables | +| P_gPAmPDS_OUTBlock01_11 | Output | Byte | MIX - Profibus Variables | +| P_gPAmPDS_OUTBlock01_12 | Output | Byte | MIX - Profibus Variables | +| P_gPAmPDS_OUTBlock01_13 | Output | Byte | MIX - Profibus Variables | +| P_gPAmPDS_OUTBlock01_14 | Output | Byte | MIX - Profibus Variables | +| P_gPAmPDS_OUTBlock01_15 | Output | Byte | MIX - Profibus Variables | +| P_gPAmPDS_OUTBlock01_16 | Output | Byte | MIX - Profibus Variables | +| P_gPAmPDS_OUTBlock01_17 | Output | Byte | MIX - Profibus Variables | +| P_gPAmPDS_OUTBlock01_18 | Output | Byte | MIX - Profibus Variables | +| P_gPAmPDS_OUTBlock01_19 | Output | Byte | MIX - Profibus Variables | +| P_gPAmPDS_OUTBlock01_2 | Output | Byte | MIX - Profibus Variables | +| P_gPAmPDS_OUTBlock01_20 | Output | Byte | MIX - Profibus Variables | +| P_gPAmPDS_OUTBlock01_21 | Output | Byte | MIX - Profibus Variables | +| P_gPAmPDS_OUTBlock01_22 | Output | Byte | MIX - Profibus Variables | +| P_gPAmPDS_OUTBlock01_23 | Output | Byte | MIX - Profibus Variables | +| P_gPAmPDS_OUTBlock01_24 | Output | Byte | MIX - Profibus Variables | +| P_gPAmPDS_OUTBlock01_25 | Output | Byte | MIX - Profibus Variables | +| P_gPAmPDS_OUTBlock01_26 | Output | Byte | MIX - Profibus Variables | +| P_gPAmPDS_OUTBlock01_27 | Output | Byte | MIX - Profibus Variables | +| P_gPAmPDS_OUTBlock01_3 | Output | Byte | MIX - Profibus Variables | +| P_gPAmPDS_OUTBlock01_4 | Output | Byte | MIX - Profibus Variables | +| P_gPAmPDS_OUTBlock01_5 | Output | Byte | MIX - Profibus Variables | +| P_gPAmPDS_OUTBlock01_6 | Output | Byte | MIX - Profibus Variables | +| P_gPAmPDS_OUTBlock01_7 | Output | Byte | MIX - Profibus Variables | +| P_gPAmPDS_OUTBlock01_8 | Output | Byte | MIX - Profibus Variables | +| P_gPAmPDS_OUTBlock01_9 | Output | Byte | MIX - Profibus Variables | +| P_gPPM303_VFC_ActualValue | Inputs | Word | MIX - Product Pump - Profibus Variables | +| P_gPPM303_VFC_ControlWord | Output | Word | MIX - Product Pump - Profibus Variables | +| P_gPPM303_VFC_Refvalue | Output | Word | MIX - Product Pump - Profibus Variables | +| P_gPPM303_VFC_StatusWord | Inputs | Word | MIX - Product Pump - Profibus Variables | +| P_gPPM307_VFC_ActualVaule | Inputs | Int | MIX - ProductPump - Profibus Variables | +| P_gPPM307_VFC_ControlWord | Output | Word | | +| P_gPPM307_VFC_Refvalue | Output | Word | | +| P_gPPM307_VFC_StatusWord | Inputs | Word | | +| P_gPPN301_VFC_ActualValue | Inputs | Word | MIX - Water Pump - Profibus Variables | +| P_gPPN301_VFC_ControlWord | Output | Word | MIX - Product Pump - Profibus Variables | +| P_gPPN301_VFC_Refvalue | Output | Word | MIX - Product Pump - Profibus Variables | +| P_gPPN301_VFC_StatusWord | Inputs | Word | MIX - Water Pump - Profibus Variables | +| P_gPPP302_VFC_ActualValue | Inputs | Word | MIX - Syrup Pump - Profibus Variables | +| P_gPPP302_VFC_ControlWord | Output | Word | MIX - Product Pump - Profibus Variables | +| P_gPPP302_VFC_Refvalue | Output | Word | MIX - Product Pump - Profibus Variables | +| P_gPPP302_VFC_StatusWord | Inputs | Word | MIX - Syrup Pump - Profibus Variables | +| PPN301_SoftStart_Averia | Inputs | Bool | PPN301_SoftStart_Averia | +| Tag_24 | Inputs | Real | | +| DI_UPSsupply | Inputs | Bool | UPS supply OK | +| DI_PB_HornReset | Inputs | Bool | PB Horn Reset | +| DO_PB_HornReset | Output | Bool | DO PB horn Reset | +| DI_Flr1_PROD_ok | Inputs | Bool | From Filler Producion Filling Bottles | +| DI_Flr_RinseMode | Inputs | Bool | From FILLER Rinse Mode | +| DO_FlrProdMode | Output | Bool | T o Filler Production Mode | +| DO_Flr1_Productionmode | Output | Bool | To Filler 1 Production Mode | +| DO_Flr1_CIPMode | Output | Bool | To Filler CIP Mode | +| DO_ Flr_CIPRinseSending | Output | Bool | To Filler CIP/Rinse Sending solution | +| DO_Flr_RinseMode | Output | Bool | To Filler Rinse Mode | +| DO_SyRm_Fault | Output | Bool | To Syrup Room  Fault | +| DO_SyRm_ProdMode | Output | Bool | To Syrup Room Prod Mode | +| DO_SyRm_WaterRequest | Output | Bool | To syrup Room Water Request | +| DO_CIP_Fault | Output | Bool | To CIP Fault | +| DO_CIP_Empty | Output | Bool | To CIP Mixer filler empty | +| DO_CIP_RdyChmcl | Output | Bool | To CIP Ready to receive Chimical (dummy bottles in) | +| DO_CIP_Flpflp | Output | Bool | To CIP Drain Valves Flip Flop Done | +| DI_CIP_Fault | Inputs | Bool | From CIP Fault | +| DI_CIP_End | Inputs | Bool | From CIP End (Completed) | +| DI_CIP_FlpflpEn | Inputs | Bool | From CIP Flip flop Drain Valve Enable | +| DI_CIP_FirstRinsedone | Inputs | Bool | From CIP First Rinse Done (without dummy Bottles | +| DI_SYR_COUNTER_LT | Inputs | Word | DI_Syrup Room Liter Counter | +| DI_SyrRoom_SyrPump_Running | Inputs | Bool | From Syrup Room - Syrup Pump Running | +| DI_SYRUP_Runout | Inputs | Bool | | +| DO_Flr1_Fault | Output | Bool | To Filler 1  Fault | +| DO_Flr_ProdAvailable | Output | Int | To Filler Product Available liters | +| DI_Flr2_PROD_Request | Inputs | Bool | From FILLER 2 - Product Request | +| DI_Flr2_CIP/RinseFiller | Inputs | Bool | From FILLER 2 - Cip/Rinse | +| DO_Flr2_CIP/Rinse | Output | Bool | To Filler  2 CIP/Rinse | +| DO_Flr2_Fault | Output | Bool | To Filler 2 Fault | +| P_gPPM305_VFC_StatusWord | Inputs | Word | MIX - Product Pump 2 - Profibus Variables | +| P_gPPM305_VFC_ActualValue | Inputs | Word | MIX - Product Pump 2 - Profibus Variables | +| P_gPPM305_VFC_ControlWord | Output | Word | MIX - Product Pump 2 - Profibus Variables | +| P_gPPM305_VFC_Refvalue | Output | Word | MIX - Product Pump 2 - Profibus Variables | +| DO_AVM363 | Output | Bool | MIX - Blender to filler 1 | +| DO_RVM301 | Output | Bool | MIX - Deaireator  Level Control | +| DO_AVP317_1 | Output | Bool | MIX - CIP To Syrup | +| DO_AVM353 | Output | Bool | MIX - Blender to filler 2 Drain | +| DO_Blu_Lamp | Output | Bool | DO_Blu_Lamp | +| P_AO_RVN305 | Output | Word | | +| DI_PPN301_SoftStart_Ovrld | Inputs | Bool | PPN301 - Water_Pump_SoftStart_Ovrld | +| DI_PPM306_Contactor | Inputs | Bool | PPM306 - Recirculating Pump Feedback | +| DI_Ammonia_CompressorReady | Inputs | Bool | Cooler Power Supply | +| DI_Flr2_CIP_DrainComplete | Inputs | Bool | From FILLER 2 - Cip Drain Complete | +| DI_PPM306_Ovrld | Inputs | Bool | PPM306 - Recirculating Pump Overload | +| DI_Flr1_WaterRequest | Inputs | Bool | From FILLER - Water Request | +| DO_Flr1_Spare0 | Output | Bool | Spare | +| DO_CIP_Spare | Output | Bool | Spare | +| DO_SyrupValve_Enable | Output | Bool | Valve Power Enable (Power Supply Analog Signal) | +| DO_AVM382 | Output | Bool | Mix  - Product Recirculation though chiller | +| DO_AVP355 | Output | Bool | CIP | +| DO_AVN350 | Output | Bool | | +| P_AI_CIPHeaterTemperature | Inputs | Word | TTS305 - Local Cip Heating Temperature | +| P_AI_FTM305 | Inputs | Word | FTM305 - Storage Tank Baialage Flow | +| P_AI_PTM308 | Inputs | Word | PTM308 - PCM306 Infeed Pressure | +| P_AI_CTS302 | Inputs | Word | CTS302 - Local Cip Delivery Conductivity | +| P_AI_CTS301 | Inputs | Word | CTS301 - Local Cip Return Conductivity | +| P_AI_CIPReturnTemperature | Inputs | Word | TTS305_1 - Local Cip Return Temperature | +| P_AI_FillerLevel | Inputs | Word | Filler level | +| P_AI_CTM304 | Inputs | Word | CTM304 - Product Conductivity | +| P_AI_PTN313 | Inputs | Word | PTN313 - Deaireator Pressure (vacuostato) | +| P_AI_RVN305 | Inputs | Word | RVN305 - Deaireation Valve | +| P_AI_ProductO2 | Inputs | Word | Product Analizer - Product O2 | +| DO_HMIPowerSupply | Output | Bool | Cut Power to PC | +| DO_PPM306_Run | Output | Bool | DO_PPM306_Run | +| DI_HVP301_Sensor | Inputs | Bool | GCP301 - Manual Syrup Valve Closed (NO) | +| DI_AVM346_Close | Inputs | Bool | AVM346 - Feedback OFF | +| DI_AVM346_Open | Inputs | Bool | AVM346 - Feedback ON | +| DI_UPSAlarm | Inputs | Bool | UPS Alarm | +| E0.7 | Inputs | Bool | Spare | +| E3.1 | Inputs | Bool | Spare | +| DO_RVM301_Discharge | Output | Bool | DO_RVM301_Discharge | +| DO_SyrupRoom_Aux2 | Output | Bool | | +| DO_Glycol_LineEnabled | Output | Bool | Glycol Line Enabled | +| DO_Glycol_ColdRequest | Output | Bool | Glycol Cold Request | +| DO_Glycol_LineCIP | Output | Bool | Glycol Line CIP | +| DO_EV1_SubCarb | Output | Bool | EV1 Sub Carbo Customer | +| DO_EV2_SubCarb | Output | Bool | EV2 Sub Carbo Customer | +| DO_EV3_SubCarb | Output | Bool | EV3 Sub Carbo Customer | +| DO_EV4_SubCarb | Output | Bool | EV4 Sub Carbo Customer | +| DO_BoosterPump_SubCarb | Output | Bool | Booster Pump Sub Carbo Customer | +| DO_200V26 | Output | Bool | Spare | +| DO_EV100_WaterInlet | Output | Bool | Spare | +| DO_200V28 | Output | Bool | Spare | +| DO_AVM340 | Output | Bool | MIX - Still Water By-Pass Product Intercept | +| DO_AVM339 | Output | Bool | MIX - Still Water By-Pass Deaireator Tank | +| DO_AVM341 | Output | Bool | MIX - CO2 Inlet | +| DO_AVM342 | Output | Bool | MIX - N2 Inlet | +| DO_AVM346 | Output | Bool | MIX - Filler CO2 | +| DO_AVM380 | Output | Bool | MIX - Product Recirculation Without Chiller | +| DO_EV102_Syrup And CIP Inlet | Output | Bool | Spare | +| DO_EV103_WaterInterception | Output | Bool | Spare | +| DO_WaterBypass1 | Output | Bool | Spare | +| DO_EV105_WaterBypass | Output | Bool | Spare | +| CARLOS_TESTE | Inputs | Bool | | +| DI_PPM303_Contactor | Inputs | Bool | PPM303 - Product Pump Feedback | +| DI_SyrRoom_Alarm_Reset | Inputs | Bool | From Syrup Room - Alarm Reset | +| DO_Analayzer_Enable | Output | Bool | To Analayzer ENABLE | + + + diff --git a/04-SIDEL/00 - MASTER/adjuntos/H1002261 RG Brands Network layout rev02.png b/04-SIDEL/00 - MASTER/adjuntos/H1002261 RG Brands Network layout rev02.png new file mode 100644 index 0000000..c14d23b Binary files /dev/null and b/04-SIDEL/00 - MASTER/adjuntos/H1002261 RG Brands Network layout rev02.png differ diff --git a/04-SIDEL/04 - E5.007299 - Modifica O&U - RNF032/Reporte/E5.007299 - Modifica O&U - RNF032 - NOTES.md b/04-SIDEL/04 - E5.007299 - Modifica O&U - RNF032/E5.007299 - Modifica O&U - RNF032 - NOTES.md similarity index 100% rename from 04-SIDEL/04 - E5.007299 - Modifica O&U - RNF032/Reporte/E5.007299 - Modifica O&U - RNF032 - NOTES.md rename to 04-SIDEL/04 - E5.007299 - Modifica O&U - RNF032/E5.007299 - Modifica O&U - RNF032 - NOTES.md diff --git a/cronologiaI-93040-3074-ALPLA-BG-open-points.md b/04-SIDEL/04 - E5.007299 - Modifica O&U - RNF032/E5.007299 - RNF032 - FDM.md similarity index 100% rename from cronologiaI-93040-3074-ALPLA-BG-open-points.md rename to 04-SIDEL/04 - E5.007299 - Modifica O&U - RNF032/E5.007299 - RNF032 - FDM.md diff --git a/04-SIDEL/04 - E5.007299 - Modifica O&U - RNF032/FDM RNF032 E5.007299.md b/04-SIDEL/04 - E5.007299 - Modifica O&U - RNF032/FDM RNF032 E5.007299.md new file mode 100644 index 0000000..426cd72 --- /dev/null +++ b/04-SIDEL/04 - E5.007299 - Modifica O&U - RNF032/FDM RNF032 E5.007299.md @@ -0,0 +1,416 @@ +# Índice de Contenido + +- [Foglio di Modifica](#foglio-di-modifica) + +--- + + + +## Foglio di Modifica + +*Origen: FDM RNF032 E5.007299 - mv.htm* + +**FDM Name****** | CIP RETURN PUMP | | +---|---|---|--- +**FDM Number****** | 0001 | **Date****** | 16/01/2025 +**Affaire****** | RNF0032, E5.007299-EXMU01UF, EQPT24542 | | +**Master****** | _Eplan5 - > Eplan2.8 Creata revisione 02 di schema el._ | | +**Author****** | Santini Paolo | | + +**** + +BOM MODIFICATION | +---|--- +**Numero**** modifica lancio****** | 816479 +**Pilota Generale****** | EQPT24542**** +**Pilota Elettrico (****NFT)****** | 43756949 +**Materiale**** Elettrico ****(NFT)****** | 43756950 +**Materiale test/programmazione E5.00 xxxx (****NFT)****** | 43756951 +**Etichetta**** Elettrica ****(NFT)****** | 43756953 +**Schema Elettrico ****(PEA)****** | 43756955 +**Pilota Originale Macchina 04260779401** | +**Numero**** Modifica Aggiornamento Pilota** | 816494 + +EPLAN P5 -> EPLAN 2.8 Codici Archiviazione Revisioni | +---|--- +**Numero**** modifica creazione versione 01.****** | 815955 +**Disegno elettrico numero.****** | **43756137** +**Numero**** modifica creazione versione 02.****** | +**Numero**** modifica creazione versione 03.****** | +**Numero**** modifica creazione versione 04.****** | +**Numero**** modifica creazione versione 05.****** | +**Numero modifica creazione versione 06 XX****** | + +**** + + + + +FDM DESCRIPTION + + + + + +**1- ****Pag.54 – Nuova pagina – Pompa CIP.** + +**** + +**** + +**** + +**2- ****Pag.58 – Rimando per 0V.** + +**** + +**** + +**** + +**** + +**** + +**** + +**3- ****Pag.283 – Inserite schede AI.** + +**** + +**** + +**** + +**4- ****Pag.285 – Inserite schede DI e AI per nuove utenze.** + +**** + +**** + +**** + +**** + +**** + +**** + +**5- ****Pag.321 – Allineata isola pneumatica a disegno pneumatico.** + +**** + +**** + +**** + +**** + +**** + +**** + +**6- ****Pag.327 – Inserito nuovo inverter su rete profibus.** + +**** + +**** + +**** + +**7- ****Pag.356 – Segnale di set per conduttivimetro.** + +**** + +**** + +**** + +**8- ****Pag.380 – Nuove morsettiere per 24V safety emergenze.** + +**** + +**** + +**** + +**** + +**** + +**** + +**9- ****Pag.400 – Segnali da flussimetro e conduttivimetro.** + +**** + +**** + +**** + +**** + +**10- ****Pag.657 – Nuova pagina – Sensori pressione e temperatura ritorno CIP.** + +**** + +**** + +**** + +**** + +**** + +**11- ****Pag.418 – Nuova pagina – Gestione flussimetro e conduttivimetro.** + +**** + +**** + +**** + +**12- ****Pag.657 – Pressostato e temperatura ritorno CIP.** + +**** + +**** + +**** + +**** + +**** + +**** + +**13- ****Pag.659 – Flowswitch ritorno CIP.** + +**** + +**** + +**** + +**** + +**** + +**** + +**14- ****Pag.660 – Nuova pagina – Feedback valvole drenaggio.** + +**** + +**** + +**** + +**** + +-Nota per il tecnico cablatore : Controllare sempre il materiale evaso in distinta ( sotto allegata ) e + +portare con se il materiale di consumo e l’attrezzatura necessaria per + +**** la corretta realizzazione dell’Upgrade. + +-Note for the cabling technician : Always check the processed material in the list ( attached below ) + +and bring with you the consumables and equipment necessary for + +the correct implementation of the Upgrade. + +**** + +__In caso di sotituzione inverter ripetere tutte le prove di arresto in emergenza (con verifica rampe) e nel caso motore macchina anche di marcia jog con porte chiuse e porte aperte.__ + +**** + +__If the inverter is replaced, repeat all the emergency stop test (whit ramp check) and, in the case of the machine motor, also the jog running tests whit doors closed and doors open.__**** + +**** + + + +**** + +**** + +**** + +**** + +**15. Simatic S7 Software:** + +**** + +· Aggiunto FC136, FB136, DB288, modificato OB1 Segmento 11 per chiamare FC136 + +· Modificato in FB136 DB160 per DB120. Aggiunto UDT80, UDT 82, UDT 84, UDT 85 + +· Aggiunto al hardware Danfoss 54U2 - Nodo 16 + +· Programmato VLT con rampa a 3s + +**** + +******** + +**** + +· Nodo 16: + +**** + + + +· Nodo 3: + + + +· Nodo 18: + + + +· Aggiunto nodo profibus 16 – PEW 640-647 / PAW 640-647 + +**** + +******** + +· Chiamata a FC136 – CIP Return Pump Control -> FC136 chiama a FB136 + + + +· Aggiornati PEW/PAW per il VLT + +**** + +**** + +**** + +**** + +**** + +**** + +**** + +**** + +**** + +**** + +**** + +**** + +**** + +**** + +**** + +**** + +**** + +**** + +**** + +**** + +**** + +**** + +**** + +**** + +**** + +**** + +**** + +**** + +**** + +**** + +**** + +**** + +**** + +** +** + +**** + +**** + +**** + + +## Imágenes Asociadas + +![[image001.png]] + +![[image002.png]] + +![[image003.png]] + +![[image004.png]] + +![[image005.png]] + +![[image006.png]] + +![[image007.png]] + +![[image008.png]] + +![[image009.png]] + +![[image010.png]] + +![[image011.png]] + +![[image012.png]] + +![[image013.png]] + +![[image014.png]] + +![[image015.png]] + +![[image016.png]] + +![[image017.png]] + +![[image018.png]] + +![[image019.png]] + +![[image020.png]] + +![[image021.png]] + +![[image022.png]] + +![[image023.png]] + +![[image024.png]] + +![[image025.png]] + +--- + diff --git a/04-SIDEL/04 - E5.007299 - Modifica O&U - RNF032/Reporte/adjuntos/Pasted image 20250321152823.png b/04-SIDEL/04 - E5.007299 - Modifica O&U - RNF032/adjuntos/Pasted image 20250321152823.png similarity index 100% rename from 04-SIDEL/04 - E5.007299 - Modifica O&U - RNF032/Reporte/adjuntos/Pasted image 20250321152823.png rename to 04-SIDEL/04 - E5.007299 - Modifica O&U - RNF032/adjuntos/Pasted image 20250321152823.png diff --git a/04-SIDEL/04 - E5.007299 - Modifica O&U - RNF032/adjuntos/image001.png b/04-SIDEL/04 - E5.007299 - Modifica O&U - RNF032/adjuntos/image001.png new file mode 100644 index 0000000..1326528 Binary files /dev/null and b/04-SIDEL/04 - E5.007299 - Modifica O&U - RNF032/adjuntos/image001.png differ diff --git a/04-SIDEL/04 - E5.007299 - Modifica O&U - RNF032/adjuntos/image002.png b/04-SIDEL/04 - E5.007299 - Modifica O&U - RNF032/adjuntos/image002.png new file mode 100644 index 0000000..d589ce2 Binary files /dev/null and b/04-SIDEL/04 - E5.007299 - Modifica O&U - RNF032/adjuntos/image002.png differ diff --git a/04-SIDEL/04 - E5.007299 - Modifica O&U - RNF032/adjuntos/image003.png b/04-SIDEL/04 - E5.007299 - Modifica O&U - RNF032/adjuntos/image003.png new file mode 100644 index 0000000..6cfec7d Binary files /dev/null and b/04-SIDEL/04 - E5.007299 - Modifica O&U - RNF032/adjuntos/image003.png differ diff --git a/04-SIDEL/04 - E5.007299 - Modifica O&U - RNF032/adjuntos/image004.png b/04-SIDEL/04 - E5.007299 - Modifica O&U - RNF032/adjuntos/image004.png new file mode 100644 index 0000000..71206ba Binary files /dev/null and b/04-SIDEL/04 - E5.007299 - Modifica O&U - RNF032/adjuntos/image004.png differ diff --git a/04-SIDEL/04 - E5.007299 - Modifica O&U - RNF032/adjuntos/image005.png b/04-SIDEL/04 - E5.007299 - Modifica O&U - RNF032/adjuntos/image005.png new file mode 100644 index 0000000..33e4414 Binary files /dev/null and b/04-SIDEL/04 - E5.007299 - Modifica O&U - RNF032/adjuntos/image005.png differ diff --git a/04-SIDEL/04 - E5.007299 - Modifica O&U - RNF032/adjuntos/image006.png b/04-SIDEL/04 - E5.007299 - Modifica O&U - RNF032/adjuntos/image006.png new file mode 100644 index 0000000..acc91c4 Binary files /dev/null and b/04-SIDEL/04 - E5.007299 - Modifica O&U - RNF032/adjuntos/image006.png differ diff --git a/04-SIDEL/04 - E5.007299 - Modifica O&U - RNF032/adjuntos/image007.png b/04-SIDEL/04 - E5.007299 - Modifica O&U - RNF032/adjuntos/image007.png new file mode 100644 index 0000000..a4056a4 Binary files /dev/null and b/04-SIDEL/04 - E5.007299 - Modifica O&U - RNF032/adjuntos/image007.png differ diff --git a/04-SIDEL/04 - E5.007299 - Modifica O&U - RNF032/adjuntos/image008.png b/04-SIDEL/04 - E5.007299 - Modifica O&U - RNF032/adjuntos/image008.png new file mode 100644 index 0000000..07ad32b Binary files /dev/null and b/04-SIDEL/04 - E5.007299 - Modifica O&U - RNF032/adjuntos/image008.png differ diff --git a/04-SIDEL/04 - E5.007299 - Modifica O&U - RNF032/adjuntos/image009.png b/04-SIDEL/04 - E5.007299 - Modifica O&U - RNF032/adjuntos/image009.png new file mode 100644 index 0000000..7920830 Binary files /dev/null and b/04-SIDEL/04 - E5.007299 - Modifica O&U - RNF032/adjuntos/image009.png differ diff --git a/04-SIDEL/04 - E5.007299 - Modifica O&U - RNF032/adjuntos/image010.png b/04-SIDEL/04 - E5.007299 - Modifica O&U - RNF032/adjuntos/image010.png new file mode 100644 index 0000000..5601147 Binary files /dev/null and b/04-SIDEL/04 - E5.007299 - Modifica O&U - RNF032/adjuntos/image010.png differ diff --git a/04-SIDEL/04 - E5.007299 - Modifica O&U - RNF032/adjuntos/image011.png b/04-SIDEL/04 - E5.007299 - Modifica O&U - RNF032/adjuntos/image011.png new file mode 100644 index 0000000..c09ad53 Binary files /dev/null and b/04-SIDEL/04 - E5.007299 - Modifica O&U - RNF032/adjuntos/image011.png differ diff --git a/04-SIDEL/04 - E5.007299 - Modifica O&U - RNF032/adjuntos/image012.png b/04-SIDEL/04 - E5.007299 - Modifica O&U - RNF032/adjuntos/image012.png new file mode 100644 index 0000000..c228cba Binary files /dev/null and b/04-SIDEL/04 - E5.007299 - Modifica O&U - RNF032/adjuntos/image012.png differ diff --git a/04-SIDEL/04 - E5.007299 - Modifica O&U - RNF032/adjuntos/image013.png b/04-SIDEL/04 - E5.007299 - Modifica O&U - RNF032/adjuntos/image013.png new file mode 100644 index 0000000..9589a14 Binary files /dev/null and b/04-SIDEL/04 - E5.007299 - Modifica O&U - RNF032/adjuntos/image013.png differ diff --git a/04-SIDEL/04 - E5.007299 - Modifica O&U - RNF032/adjuntos/image014.png b/04-SIDEL/04 - E5.007299 - Modifica O&U - RNF032/adjuntos/image014.png new file mode 100644 index 0000000..7c7698e Binary files /dev/null and b/04-SIDEL/04 - E5.007299 - Modifica O&U - RNF032/adjuntos/image014.png differ diff --git a/04-SIDEL/04 - E5.007299 - Modifica O&U - RNF032/adjuntos/image015.png b/04-SIDEL/04 - E5.007299 - Modifica O&U - RNF032/adjuntos/image015.png new file mode 100644 index 0000000..8728eb8 Binary files /dev/null and b/04-SIDEL/04 - E5.007299 - Modifica O&U - RNF032/adjuntos/image015.png differ diff --git a/04-SIDEL/04 - E5.007299 - Modifica O&U - RNF032/adjuntos/image016.png b/04-SIDEL/04 - E5.007299 - Modifica O&U - RNF032/adjuntos/image016.png new file mode 100644 index 0000000..08c4447 Binary files /dev/null and b/04-SIDEL/04 - E5.007299 - Modifica O&U - RNF032/adjuntos/image016.png differ diff --git a/04-SIDEL/04 - E5.007299 - Modifica O&U - RNF032/adjuntos/image017.png b/04-SIDEL/04 - E5.007299 - Modifica O&U - RNF032/adjuntos/image017.png new file mode 100644 index 0000000..a35018f Binary files /dev/null and b/04-SIDEL/04 - E5.007299 - Modifica O&U - RNF032/adjuntos/image017.png differ diff --git a/04-SIDEL/04 - E5.007299 - Modifica O&U - RNF032/adjuntos/image018.png b/04-SIDEL/04 - E5.007299 - Modifica O&U - RNF032/adjuntos/image018.png new file mode 100644 index 0000000..5825ef8 Binary files /dev/null and b/04-SIDEL/04 - E5.007299 - Modifica O&U - RNF032/adjuntos/image018.png differ diff --git a/04-SIDEL/04 - E5.007299 - Modifica O&U - RNF032/adjuntos/image019.png b/04-SIDEL/04 - E5.007299 - Modifica O&U - RNF032/adjuntos/image019.png new file mode 100644 index 0000000..3990fd9 Binary files /dev/null and b/04-SIDEL/04 - E5.007299 - Modifica O&U - RNF032/adjuntos/image019.png differ diff --git a/04-SIDEL/04 - E5.007299 - Modifica O&U - RNF032/adjuntos/image020.png b/04-SIDEL/04 - E5.007299 - Modifica O&U - RNF032/adjuntos/image020.png new file mode 100644 index 0000000..f8e18bd Binary files /dev/null and b/04-SIDEL/04 - E5.007299 - Modifica O&U - RNF032/adjuntos/image020.png differ diff --git a/04-SIDEL/04 - E5.007299 - Modifica O&U - RNF032/adjuntos/image021.png b/04-SIDEL/04 - E5.007299 - Modifica O&U - RNF032/adjuntos/image021.png new file mode 100644 index 0000000..9e0f748 Binary files /dev/null and b/04-SIDEL/04 - E5.007299 - Modifica O&U - RNF032/adjuntos/image021.png differ diff --git a/04-SIDEL/04 - E5.007299 - Modifica O&U - RNF032/adjuntos/image022.png b/04-SIDEL/04 - E5.007299 - Modifica O&U - RNF032/adjuntos/image022.png new file mode 100644 index 0000000..261b9e6 Binary files /dev/null and b/04-SIDEL/04 - E5.007299 - Modifica O&U - RNF032/adjuntos/image022.png differ diff --git a/04-SIDEL/04 - E5.007299 - Modifica O&U - RNF032/adjuntos/image023.png b/04-SIDEL/04 - E5.007299 - Modifica O&U - RNF032/adjuntos/image023.png new file mode 100644 index 0000000..21323ae Binary files /dev/null and b/04-SIDEL/04 - E5.007299 - Modifica O&U - RNF032/adjuntos/image023.png differ diff --git a/04-SIDEL/04 - E5.007299 - Modifica O&U - RNF032/adjuntos/image024.png b/04-SIDEL/04 - E5.007299 - Modifica O&U - RNF032/adjuntos/image024.png new file mode 100644 index 0000000..4f6231f Binary files /dev/null and b/04-SIDEL/04 - E5.007299 - Modifica O&U - RNF032/adjuntos/image024.png differ diff --git a/04-SIDEL/04 - E5.007299 - Modifica O&U - RNF032/adjuntos/image025.png b/04-SIDEL/04 - E5.007299 - Modifica O&U - RNF032/adjuntos/image025.png new file mode 100644 index 0000000..28fb092 Binary files /dev/null and b/04-SIDEL/04 - E5.007299 - Modifica O&U - RNF032/adjuntos/image025.png differ diff --git a/04-SIDEL/04 - E5.007299 - Modifica O&U - RNF032/contenidoImportado.md b/04-SIDEL/04 - E5.007299 - Modifica O&U - RNF032/contenidoImportado.md new file mode 100644 index 0000000..8d07d81 --- /dev/null +++ b/04-SIDEL/04 - E5.007299 - Modifica O&U - RNF032/contenidoImportado.md @@ -0,0 +1,243 @@ +# Índice de Contenido + +- [Foglio di Modifica](#foglio-di-modifica) + +--- + + + +## Foglio di Modifica + +*Origen: FDM RNF032 E5.007299 - mv.htm* + +FDM Name | CIP RETURN PUMP | | +- | | | +**FDM Number | 0001 | Date | 16/01/2025 +**Affaire | RNF0032, E5.007299-EXMU01UF, EQPT24542 | | +**Master | _Eplan5 - > Eplan2.8 Creata revisione 02 di schema el._ | | +**Author | Santini Paolo | | + +--- + +BOM MODIFICATION | +- | +**Numero modifica lancio | 816479 +**Pilota Generale | EQPT24542 +**Pilota Elettrico ( NFT) | 43756949 +**Materiale Elettrico (NFT) | 43756950 +**Materiale test/programmazione E5.00 xxxx ( NFT) | 43756951 +**Etichetta Elettrica (NFT) | 43756953 +**Schema Elettrico (PEA) | 43756955 +**Pilota Originale Macchina 04260779401 | +**Numero Modifica Aggiornamento Pilota | 816494 + +EPLAN P5 -> EPLAN 2.8 Codici Archiviazione Revisioni | +- | +**Numero modifica creazione versione 01. | 815955 +**Disegno elettrico numero. | 43756137 +**Numero modifica creazione versione 02. | +**Numero modifica creazione versione 03. | +**Numero modifica creazione versione 04. | +**Numero modifica creazione versione 05. | +**Numero modifica creazione versione 06 XX | + +--- + + + + +FDM DESCRIPTION + + + + + +**1- Pag.54 – Nuova pagina – Pompa CIP.** + +--- + + - +**2- Pag.58 – Rimando per 0V.** + +--- + + - +**3- Pag.283 – Inserite schede AI.** + +--- + + - +**4- Pag.285 – Inserite schede DI e AI per nuove utenze.** + +--- + + - +**5- Pag.321 – Allineata isola pneumatica a disegno pneumatico.** + +--- + + - +**6- Pag.327 – Inserito nuovo inverter su rete profibus.** + +--- + + - +**7- Pag.356 – Segnale di set per conduttivimetro.** + +--- + + - +**8- Pag.380 – Nuove morsettiere per 24V safety emergenze.** + +--- + + - +**9- Pag.400 – Segnali da flussimetro e conduttivimetro.** + +--- + + - +**10- Pag.657 – Nuova pagina – Sensori pressione e temperatura ritorno CIP.** + +--- + + - +**11- Pag.418 – Nuova pagina – Gestione flussimetro e conduttivimetro.** + +--- + + - +**12- Pag.657 – Pressostato e temperatura ritorno CIP.** + +--- + + - +**13- Pag.659 – Flowswitch ritorno CIP.** + +--- + + - +**14- Pag.660 – Nuova pagina – Feedback valvole drenaggio.** + +--- + + - +-Nota per il tecnico cablatore : Controllare sempre il materiale evaso in distinta ( sotto allegata ) e + +portare con se il materiale di consumo e l’attrezzatura necessaria per + +- la corretta realizzazione dell’Upgrade. + +-Note for the cabling technician : Always check the processed material in the list ( attached below ) + +and bring with you the consumables and equipment necessary for + +the correct implementation of the Upgrade. + +--- + +__In caso di sotituzione inverter ripetere tutte le prove di arresto in emergenza (con verifica rampe) e nel caso motore macchina anche di marcia jog con porte chiuse e porte aperte.__ + +--- + +__If the inverter is replaced, repeat all the emergency stop test (whit ramp check) and, in the case of the machine motor, also the jog running tests whit doors closed and doors open.__ - + + + - + - +**15. Simatic S7 Software:** + +--- + +· Aggiunto FC136, FB136, DB288, modificato OB1 Segmento 11 per chiamare FC136 + +· Modificato in FB136 DB160 per DB120. Aggiunto UDT80, UDT 82, UDT 84, UDT 85 + +· Aggiunto al hardware Danfoss 54U2 - Nodo 16 + +· Programmato VLT con rampa a 3s + +--- + +** - +· Nodo 16: + +--- + + + +· Nodo 3: + + + +· Nodo 18: + + + +· Aggiunto nodo profibus 16 – PEW 640-647 / PAW 640-647 + +--- + +** - + +· Chiamata a FC136 – CIP Return Pump Control -> FC136 chiama a FB136 + + + +· Aggiornati PEW/PAW per il VLT + +--- + + +![[image001.png]] + +![[image002.png]] + +![[image003.png]] + +![[image004.png]] + +![[image005.png]] + +![[image006.png]] + +![[image007.png]] + +![[image008.png]] + +![[image009.png]] + +![[image010.png]] + +![[image011.png]] + +![[image012.png]] + +![[image013.png]] + +![[image014.png]] + +![[image015.png]] + +![[image016.png]] + +![[image017.png]] + +![[image018.png]] + +![[image019.png]] + +![[image020.png]] + +![[image021.png]] + +![[image022.png]] + +![[image023.png]] + +![[image024.png]] + +![[image025.png]] + +--- + diff --git a/04-SIDEL/04 - E5.007299 - Modifica O&U - RNF032/data.json b/04-SIDEL/04 - E5.007299 - Modifica O&U - RNF032/data.json new file mode 100644 index 0000000..9e26dfe --- /dev/null +++ b/04-SIDEL/04 - E5.007299 - Modifica O&U - RNF032/data.json @@ -0,0 +1 @@ +{} \ No newline at end of file diff --git a/04-SIDEL/05 - E5.007161 - Modifica O&U - SAE346/COMM - FILLER - MIXER/Comm - Mixer - Filler.md b/04-SIDEL/05 - E5.007161 - Modifica O&U - SAE346/COMM - FILLER - MIXER/Comm - Mixer - Filler.md new file mode 100644 index 0000000..2ae5135 --- /dev/null +++ b/04-SIDEL/05 - E5.007161 - Modifica O&U - SAE346/COMM - FILLER - MIXER/Comm - Mixer - Filler.md @@ -0,0 +1,16 @@ + + TIA Mixer : +![[Pasted image 20250403152457.png]] +Filler: +![[Pasted image 20250403152601.png]] + + + +![[Pasted image 20250403152526.png]] + +![[Pasted image 20250403152544.png]] + + + + +![[Pasted image 20250404152028.png]] \ No newline at end of file diff --git a/04-SIDEL/05 - E5.007161 - Modifica O&U - SAE346/COMM - FILLER - MIXER/adjuntos/Pasted image 20250403152457.png b/04-SIDEL/05 - E5.007161 - Modifica O&U - SAE346/COMM - FILLER - MIXER/adjuntos/Pasted image 20250403152457.png new file mode 100644 index 0000000..43e9e22 Binary files /dev/null and b/04-SIDEL/05 - E5.007161 - Modifica O&U - SAE346/COMM - FILLER - MIXER/adjuntos/Pasted image 20250403152457.png differ diff --git a/04-SIDEL/05 - E5.007161 - Modifica O&U - SAE346/COMM - FILLER - MIXER/adjuntos/Pasted image 20250403152514.png b/04-SIDEL/05 - E5.007161 - Modifica O&U - SAE346/COMM - FILLER - MIXER/adjuntos/Pasted image 20250403152514.png new file mode 100644 index 0000000..e69de29 diff --git a/04-SIDEL/05 - E5.007161 - Modifica O&U - SAE346/COMM - FILLER - MIXER/adjuntos/Pasted image 20250403152518.png b/04-SIDEL/05 - E5.007161 - Modifica O&U - SAE346/COMM - FILLER - MIXER/adjuntos/Pasted image 20250403152518.png new file mode 100644 index 0000000..e69de29 diff --git a/04-SIDEL/05 - E5.007161 - Modifica O&U - SAE346/COMM - FILLER - MIXER/adjuntos/Pasted image 20250403152526.png b/04-SIDEL/05 - E5.007161 - Modifica O&U - SAE346/COMM - FILLER - MIXER/adjuntos/Pasted image 20250403152526.png new file mode 100644 index 0000000..1aba8d6 Binary files /dev/null and b/04-SIDEL/05 - E5.007161 - Modifica O&U - SAE346/COMM - FILLER - MIXER/adjuntos/Pasted image 20250403152526.png differ diff --git a/04-SIDEL/05 - E5.007161 - Modifica O&U - SAE346/COMM - FILLER - MIXER/adjuntos/Pasted image 20250403152544.png b/04-SIDEL/05 - E5.007161 - Modifica O&U - SAE346/COMM - FILLER - MIXER/adjuntos/Pasted image 20250403152544.png new file mode 100644 index 0000000..60c7de3 Binary files /dev/null and b/04-SIDEL/05 - E5.007161 - Modifica O&U - SAE346/COMM - FILLER - MIXER/adjuntos/Pasted image 20250403152544.png differ diff --git a/04-SIDEL/05 - E5.007161 - Modifica O&U - SAE346/COMM - FILLER - MIXER/adjuntos/Pasted image 20250403152601.png b/04-SIDEL/05 - E5.007161 - Modifica O&U - SAE346/COMM - FILLER - MIXER/adjuntos/Pasted image 20250403152601.png new file mode 100644 index 0000000..61b3939 Binary files /dev/null and b/04-SIDEL/05 - E5.007161 - Modifica O&U - SAE346/COMM - FILLER - MIXER/adjuntos/Pasted image 20250403152601.png differ diff --git a/04-SIDEL/05 - E5.007161 - Modifica O&U - SAE346/COMM - FILLER - MIXER/adjuntos/Pasted image 20250404145622.png b/04-SIDEL/05 - E5.007161 - Modifica O&U - SAE346/COMM - FILLER - MIXER/adjuntos/Pasted image 20250404145622.png new file mode 100644 index 0000000..79ae988 Binary files /dev/null and b/04-SIDEL/05 - E5.007161 - Modifica O&U - SAE346/COMM - FILLER - MIXER/adjuntos/Pasted image 20250404145622.png differ diff --git a/04-SIDEL/05 - E5.007161 - Modifica O&U - SAE346/COMM - FILLER - MIXER/adjuntos/Pasted image 20250404150350.png b/04-SIDEL/05 - E5.007161 - Modifica O&U - SAE346/COMM - FILLER - MIXER/adjuntos/Pasted image 20250404150350.png new file mode 100644 index 0000000..df39384 Binary files /dev/null and b/04-SIDEL/05 - E5.007161 - Modifica O&U - SAE346/COMM - FILLER - MIXER/adjuntos/Pasted image 20250404150350.png differ diff --git a/04-SIDEL/05 - E5.007161 - Modifica O&U - SAE346/COMM - FILLER - MIXER/adjuntos/Pasted image 20250404152028.png b/04-SIDEL/05 - E5.007161 - Modifica O&U - SAE346/COMM - FILLER - MIXER/adjuntos/Pasted image 20250404152028.png new file mode 100644 index 0000000..9a28b30 Binary files /dev/null and b/04-SIDEL/05 - E5.007161 - Modifica O&U - SAE346/COMM - FILLER - MIXER/adjuntos/Pasted image 20250404152028.png differ diff --git a/04-SIDEL/05 - E5.007161 - Modifica O&U - SAE346/COMM - Filler - Mixer.md b/04-SIDEL/05 - E5.007161 - Modifica O&U - SAE346/COMM - Filler - Mixer.md new file mode 100644 index 0000000..757fd4a --- /dev/null +++ b/04-SIDEL/05 - E5.007161 - Modifica O&U - SAE346/COMM - Filler - Mixer.md @@ -0,0 +1,8 @@ + + + + +| Mixer | Local TSAP | Remote TSAP | | +| ------ | ---------- | ----------- | --- | +| Mixer | 2 | 1 | | +| Filler | 1 | 2 | | diff --git a/04-SIDEL/05 - E5.007161 - Modifica O&U - SAE346/Drawing 2025-03-26 13.28.27.excalidraw.md b/04-SIDEL/05 - E5.007161 - Modifica O&U - SAE346/Drawing 2025-03-26 13.28.27.excalidraw.md index 04dc2b8..41b00d2 100644 --- a/04-SIDEL/05 - E5.007161 - Modifica O&U - SAE346/Drawing 2025-03-26 13.28.27.excalidraw.md +++ b/04-SIDEL/05 - E5.007161 - Modifica O&U - SAE346/Drawing 2025-03-26 13.28.27.excalidraw.md @@ -10,8 +10,6 @@ tags: [excalidraw] # Excalidraw Data ## Text Elements -500 ^l6oej9lH - ## Embedded Files 12c4a92df27e232b436a203a090a3e2a0e21b789: [[04275224102000 P&ID SAE346.png]] @@ -22,16 +20,16 @@ N4KAkARALgngDgUwgLgAQQQDwMYEMA2AlgCYBOuA7hADTgQBuCpAzoQPYB2KqATLZMzYBXUtiRoIACyh 7Wb6sZ54kZnN+PjJ+YoSdW4R+oAGevr5yQRCZWluA8n67UvPr+/LvgLIazKYLcS7zZhQUhsaoIADCbHwbFI5Qh1mYcFwgSyKWKkE0uGw1WUkKEHGIcIRSIkKI4aIxmSg2JKADNCPh8JVYMCJJJ8RpAoyBBCoQgAOqnSTnMFC6EcmBc9CCDwCiDEp4ccI5NAjeZsdHYNSLLWfebE0nq5ia1AcIRssEIBDEbiNSZjeJjeaMFjsLhoRp/HEMJisTgAO -U4Ym42x4MzG9R49W1/wgQjgxFwUAd51j23iPHjzR4k3i80IzAAImkM460EyCGF5kThHAAJLES25AC6800wlJAFFghksu2u0miBxqtxrbax2wCZm0BChAh5izgq3yiMeNh6rhc8QmTwxghCzxNPVJs1cDxLpNcJd4pdcJMT/eTyNNGNGvFlcx3OJUHyHEwETYCRn+UcA0IUksHKe8IAKABfdoig6LAGQkGZPmVJlOCgSpCCMACb1XPCADFcH0VlDV +U4Ym42x4MzG9R49W1/wgQjgxFwUAd51j23iPHjzR4k3i80IzAAImkM460EyCGF5kThHAAJLES25AC6800wlJAFFghksu2u0miBxqtxrbax2wCZm0BChAh5izgq3yiMeNh6rhc8QmTwxghCzxNPVJs1cDxLpNcJd4pdcJMT/eTyNNGNGvFlcx3OJUHyHEwETYCRn+UcA0IUksHKe9lSZcgMg3NBp3wKV0yES0IEQUloOUZVsEhOApxtfACgAX3aIo -QOYkwzTAoAAQSIZQfXQYImQZD0mCgcwCBYx52OgXVlTKCR8GaNgEAAK3ifAAAllU6ADoHQ5Uhi1HgLlmeYaMvRpZl2As6IDE5iDONAVgSEYDj9HZLmM6M7geJ4MN4UySkBeVQSTcFIWhclEXKABiEYEHC8LlTxAlGxJMl4WCqlyBpdFMW4pM13ZTlVJ5bA+X6PzpVFcVJSKgKEFleUIEVMoTWENUNTKgNdXxA1zmNJNTWIc1LWnfA7QXVAtmaI4k +OiwBkJBmT4EM4KBKkIIwAJvVcWIAMVwfRWUNVA5iTDNMCgABBIhlB9dBgiZBkPSYKBzAIKTHlk6BdWVMoJHwZo2AQAAreJ8AACWVToAOgOjlSGLUeAuWZ5iEy9GlmXYCxEgMTmIM40BWBIRgOP0dkuTzozuB4nno3hvJKQF5VBJNwUhaFyURcoAGIRgQXLcuVPECUbEkyXhTKqXIGl0UxRSkzXdlOWsnlsD5foUulUVxUlDq0oQWV5QgRUyhNYQ1 -09YN2P9EoJu9MMOAjLVGkaEY/RjTzIBTNMqyzOMDjzSYXRmDbSnLSshtrfB6yTOKWzbPJIJKHt4oHdJ6RHeZx0nNB+s+udoWrVBLuugM9CyXBoKYDcfptAak0RR5oIIAAVdTMOwk1KFRxjyiwy5lXHBAFNc54tSSE7cCEKA2AAJXCQiAKXFck2g4hYIkXARgQ4pEPASCIFwOA4A5dMANQ6B7gycpWOedoGEIBAKAAIXxQluqCyl0BCpkdd1xkKhE +Q1HqA11fEDXOY0k1NYhzUtNC7QXVAtmaI4k09YNZO2gNdu9MMOAjLU/TGGM3Uc+YUzTKsswvGYRmdW9GhmYsk1LCtggexdSGXBtiRbNs8kgkoe1Kgd0npEd5nHSdULI+G52hatUFrfB6yTPQslwaCmBQq1kaTRFHmgggABVbIYpiTUoanxPKRjLmVccEDM6Lni1JJ4oBIQoDYAAlcJ2IApcVy+mD7PQXARgQpCECJtDKPASCIFwOA4A5dMAJo6B7 -dLmwzfQOQqjXQsiiLCpKbBDfpY30hV2L1cSzXoBS2l0v1u3SCNk2yNZbK5VU2rHTl33/fSM3hTFCyJTQaaDb9h2TZjmUcvKMOfftrJHf0GmGskXrmsgSPU/SAB5PV2qNXzbdzqB87I8jKOo7hPOTqP9BbrICKIyN67Lxv8+x5jWOEziMoblO87TqJSGYv22Aoe5cEB36Ci7iv9D7UkmOX1eQkBgXD5z2em5Ng/IQoZH4FU7r9b/SE2QADUjGNmm0 +gycppOedoGEIBAKAAIXxQlFoyyl0CypkXddxkKhEWrmwzfQOT6h3svyvL2pKbBPfpb30ht4r7fKx3oCq2lavdsPSC9n2eNZRq5Ws4bHTN1P0/SP3hTFPyJTQf1IELiOfZLmUmvKPOU/DrJI/0IWxskZbJur1uoHbgB5PVZqNZLQ/79ueN4/jBO4eKPbT2v0mnrI2I4yNx77pe259xnJOkzT5Lqied4HuuolISS07YCh7lwdHVoKRei/0PtSQkm+7 -RpLljOMVpmKtHgzQ5bP3hPgAAmh3QBIwkiXEaPUQBlwsKukaHLIwbADDcFQpAegBBlwgm0OBHmEcR4m0LvFEuEhH5yyJCQfuxEh4QDocQDkCA4Ad1oaQEgABZNgbM964E0MEQGwNmYlBYRbNAOCIBK3hCfUgyg8QAAptLul4OMagGj1GXFmAASmVHTZQNoMTlEUSowsoJeCTCsZYrRuiZgGKQqQi+6cEDVz4pwPqsM5ZMnIBkOmMFuEcGUNgpMmQ +5CdGNa/luz7t0/pCCglN4DWUWu7P8kI2QAA1hhvEaCMbQX4ZjNHevEeoMwPqTAOgIIi8J8AAE1IyXkSDGZoL08xjFvNGPBEAjBsAMNwGikB6AEGXCCJIlEC6Tx9p3UqPcJCQLNkSEg69OJbwgGI4gHIEAkTQAvGRABZNgxAEDv1wJoYI6NMbYxKDIgOaBWEQCtvCX+pBlB4gABSOXdLwcY1AHH2MuLMAAlMqEWygbQYnKJYmxhZQS8EmEEwJTjXE -hEiO4EzeY2AiAcMXKQZc8wOCUUZkk8RJRhBQEJtEjJzit52BkggbA2RKipLgHwgRqThEXTrJkgWpTCCMGRpg/AYSAwqSzmkJpnBlR23BAYO+XQYYzgDAiecoj6mfVCMxJpLS2lTlhkhcAyE6BrnCNg3miEgA +zA8Tw5+Nc16dWHipTgK0SbMkViLGCpB8IsKTJkLROjuAS3mNgIgCjUCFKTBwfi4sAaSymgLdmBSanRJKHYIyCBsDZEqJUuAqj1GaO0etPRtSAQdMIIwSmTD8DZIDFZJuaRRmcEIlhQW+gwFdCRjOAMCJ5y6LrMMyA+BQiSVGeMyZpE2SqzAFROga5wgsIoiACiQA ``` %% \ No newline at end of file diff --git a/04-SIDEL/05 - E5.007161 - Modifica O&U - SAE346/Drawing 2025-04-02 11.05.14.excalidraw.md b/04-SIDEL/05 - E5.007161 - Modifica O&U - SAE346/Drawing 2025-04-02 11.05.14.excalidraw.md new file mode 100644 index 0000000..0779660 --- /dev/null +++ b/04-SIDEL/05 - E5.007161 - Modifica O&U - SAE346/Drawing 2025-04-02 11.05.14.excalidraw.md @@ -0,0 +1,217 @@ +--- + +excalidraw-plugin: parsed +tags: [excalidraw] + +--- +==⚠ Switch to EXCALIDRAW VIEW in the MORE OPTIONS menu of this document. ⚠== You can decompress Drawing data with the command palette: 'Decompress current Excalidraw file'. For more info check in plugin settings under 'Saving' + + +# Excalidraw Data + +## Text Elements +0166M1 - DANFOSS 7.5KW ^2WS6h2sp + +P3 OVERPRESSURE PUMP ^kRndMZnC + +0169M2 - 169K8 ^mQBW5II4 + +RECYRCLE PUMP P6 ^u9CJsoog + +801U4 - WATER MOTOR VALVE +801U0 - PROMAG H300 (FTN301) ^QVGBoFht + +802U4 - SYRUP FLOWMETER +802U0 - PROMASS F300 (FTN302) ^5mC6EjGI + +801U4 - CO2 MOTOR VALVE +803U0 - PROMASS F300 (FTM303) ^GnvtHJHy + +805B1 CO2 TANK PRESSURE CONTROL ^ceduwcvF + +806U1 NORGREN VALVE Herion VP23 +CO2 FLOW REGULATION ^EJ3dKEq6 + +807B1 AIR VACUUM CO2 FLOW CONTROL ^aY9WFS3X + +802U0 - ANTON PAAR ^NNZGEOk6 + +0160M2 - 160K4 ^DAslJAjv + +WATER PUMP P1 - SOFTSTART ^ioAuVLXq + +0163M2 - 163K8 - 163U1 - 18.5KW ^4QZA5jRL + +SYRUP PUMP P2 ^2sKCeWbG + +## Embedded Files +1ab8bc830f8dd9e36c8d12702b9a902ce76832a9: [[motorS.svg]] + +%% +## Drawing +```compressed-json +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 +``` +%% \ No newline at end of file diff --git a/04-SIDEL/05 - E5.007161 - Modifica O&U - SAE346/HMI - Machine Configuration.md b/04-SIDEL/05 - E5.007161 - Modifica O&U - SAE346/HMI - Machine Configuration.md new file mode 100644 index 0000000..8f72430 --- /dev/null +++ b/04-SIDEL/05 - E5.007161 - Modifica O&U - SAE346/HMI - Machine Configuration.md @@ -0,0 +1,5 @@ + + +![[Pasted image 20250401163835.png]] + +![[Pasted image 20250401163951.png]] \ No newline at end of file diff --git a/04-SIDEL/05 - E5.007161 - Modifica O&U - SAE346/IO/IO - Adaptation.md b/04-SIDEL/05 - E5.007161 - Modifica O&U - SAE346/IO/IO - Adaptation.md new file mode 100644 index 0000000..f426192 --- /dev/null +++ b/04-SIDEL/05 - E5.007161 - Modifica O&U - SAE346/IO/IO - Adaptation.md @@ -0,0 +1,117 @@ +# Mapping SAE346-Master Tia18 + +## Inputs (DI → E) + +| Software Side | Software Address | Software Description | PLC Side | PLC Description | Coincidencia | Equival. | +| ----------------------------- | ---------------- | ---------------------------------------- | ----------------- | -------------------------------- | ------------ | -------- | +| DI_PPM303_Contactor | E2.5 | PPM303 - Product Pump Feedback | - | - | - | P3/303 | +| DI_Emergency_Pressed | M3005.3 | Electrical Panel Emergency Button | E5.0 | ==MAX TEMPERATURE ALARM== | | | +| DI_Emergency_Pilz_On | E0.0 | Pilz Emergency | E5.1 (0760K1) | AUXILIARY CIRC. ON | Alta | - | +| | | | E5.2 | ==EMERGENCY EMERGENZA== | | | +| DI_UPSBatteryReady | E1.4 | UPS Battery ready | E5.3 (0925A1/4) | BUFFER BATTERY READY | Alta | - | +| DI_UPSAlarm | E1.1 | UPS Alarm | E5.4 (0925A1/5) | UPS ALARM | Alta | - | +| DI_UPSsupply | E1.2 | UPS supply OK | E5.5 (0925A1/6) | BATTERY POWER SUPPLY | Alta | - | +| ==DI_PPN301_SoftStart_Ovrld== | E1.3 | PPN301 - Water_Pump_SoftStart_Ovrld | E10.0 (0160Q2) | P1 WATER PUMP OVERLOAD SWITCH | Alta | P1/301 | +| ==DI_PPN301_Ovrld== | E2.0 | PPN301 - Deaireator Pump Overload | E10.0 (0160Q2) | P1 WATER PUMP OVERLOAD SWITCH | Alta | P1/301 | +| DI_PPP302_Ovrld | E2.2 | PPP302 - Syrup Pump Overload | E10.1 (0163Q2) | SYRUP PUMP OVERLOAD | Alta | P2/302 | +| DI_PPM303_Ovrld | E2.4 | PPM303 - Product Pump Overload | E10.2 (0166Q2) | OVERPRESSURE PUMP THERMIC SWITCH | Alta | P3/303 | +| DI_PPM306_Ovrld | E2.6 | PPM306 - Recirculating Pump Overload | E10.3 (0169Q2) | RECIRCULATION PUMP OVERLOAD | Alta | P6/306 | +| DI_PPN301_Contactor | E2.1 | PPN301 - Deaireator Pump Feedback | E11.0 (0160K4) | P1 WATER PUMP FAULT / Feedback | Alta | P1/301 | +| DI_PPP302_Contactor | E2.3 | PPP302 - Syrup Pump Feedback | E11.1 (0163K8) | SYRUP PUMP FAULT / Feedback | Alta | P2/302 | +| DI_PPM306_Contactor | E2.7 | PPM306 - Recirculating Pump Feedback | E11.3 (0169K8) | PRODUCT RECYCLE PUMP | Alta | P6/306 | +| | | | E12.0 | ==SOFTSTART RUNNING== | | | +| | | | E12.1 | ==OVERLOAD ANTON PAAR== | | | +| DI_Air_InletPress_OK | E4.1 | Air Pressure Switch | E12.4 (0934S1) | AIR PRESSURE | Alta | - | +| DI_LSN301L | E0.6 | LSN301_L - Deaireator Tank Minimun Level | E12.5 (0934B3) | DEARETOR 1 MINIMUM LEVELPROBE | Alta | - | +| DI_LSM302L | E1.0 | LSM302_L - Product Tank Minimun Level | E12.6 (0934B6) | STORE TANK MIN LEVELPROBE | Alta | - | +| DI_CIP_CIP_Enable | E303.2 | From CIP Enable | E60.0 | CIP MODE | Alta | | +| DI_CIP_CIP_Rinse | E3.5 | From CIP Running | E60.1 | RINSE MODE | Media | | +| DI_CIP_Drain | E3.6 | From CIP Drain | E60.2 | CIP DRAINAGE REQUEST | Alta | | +| DI_CIP_End | E3.7 | From CIP End (Completed) | E60.3 | CIP COMPLETED | Alta | | +| DI_SyrRoom_SyrPump_Running | E3.0 | From Syrup Room - Syrup Pump Running | E68.0 (SYR.0) | SYRUPS ROOM PUMP RUN | Alta | | +| DI_SyrRoom_WatPumpReady | E3.2 | From Syrup Room - Water Pump Ready | E68.1 (SYR.1) | WATER PUMP SYRUP ROOM | Alta | | +| DI_AVM346_Open | E304.6 | AVM346 - Feedback ON | E102.2 (0951S6) | AVM346 OPEN | Alta | | +| DI_AVM362_Open | E304.4 | AVM362 - Feedback ON | E102.3 (0951S8) | AVM362 OPEN | Alta | | +| DI_AVM346_Close | E304.7 | AVM346 - Feedback OFF | E112.2 (0967A1/3) | AVM346 CLOSED | Alta | | +| DI_AVM362_Close | E304.5 | AVM362 - Feedback OFF | E112.3 (0967A1/4) | AVM362 CHIUSA | Alta | | +| DI_RMM301_Closed | E1.5 | RMM301 - Feedback OFF (VM1WATER) | E112.4 (0967A1/5) | CLOSED VALVE RMM301 | Alta | - | +| DI_RMP302_Closed | E1.6 | RMP302 - Feedback OFF (VM2 SYRUP) | E112.5 (0967A1/6) | CLOSED VALVE RMP302 | Alta | - | +| DI_RMM303_Closed | E1.7 | RMM303 - Feedback OFF (VM3 CO2) | E112.6 (0967A1/7) | CLOSED VALVE RMM303 | Alta | - | + +## Salidas Digitales (DO → A) + +| Software Side | Software Address | Software Description | PLC Side | PLC Description | Coincidencia | Equival. | +| ------------------------ | ---------------- | ----------------------------------------------- | -------------- | ------------------------------------------------------ | ------------ | -------- | +| DO_PPM303_Run | A2.6 | DO_PPM303_Run | - | - | - | P3/303 | +| DO_HMIPowerSupply | A2.7 | Cut Power to PC | A5.0 | HMI POWER SUPPLY RESTORE | Alta | - | +| | | | ==A5.1== | ==CONTROL CIRCUIT RUN== | | | +| DO_Yellow_Lamp | A2.3 | DO_Yellow_Lamp | A5.5 (1046H0) | YELLOW | Alta | - | +| DO_Horn | A2.0 | DO_Horn | A5.7 (1046H0) | ACOUSTIC ALARM | Alta | - | +| DO_PPN301_Run | A2.4 | DO_PPN301_SoftStartPower | A11.0 (1052K1) | WATER PUMP CONTROL | Alta | P1/301 | +| DO_PPP302_Run | A2.5 | DO_PPP302_Run | A11.1 | SYRUP PUMP CONTROL | Alta | P2/302 | +| DO_PPM306_Run | A0.7 | DO_PPM306_Run | A11.3 | RECIRCULATION PUMP CONTROL | Alta | P6/306 | +| DO_SyrupValve_Enable | A0.0 | Valve Power Enable (Power Supply Analog Signal) | A11.6 (1053K6) | SYRUP VALVE ENABLE | Alta | | +| DO_Flr1_CIP_DrainRequest | A1.4 | FILLER - Cip Drain Request | A60.0 (1055U0) | CIP REQUEST | Media | | +| DO_Flr1_CIP_CleaningEnd | A1.5 | FILLER - Cip Cleaning Ended | A60.1 (1055U2) | CIP DRAINAGE FINISHED | Media | | +| DO_SyRm_SyrupReques | A1.0 | To syrup Room Syrup Request | A68.0 (1062U0) | SIRUP REQUEST | Alta | | +| DO_SyRm_WaterRequest | A7.6 | To syrup Room Water Request | A68.1 (1062U2) | ==WATER REQUEST== | Alta | | +| DO_AVM311 | A16.0 | MIX - Product Tank Blow Off | A100.0 | SFIATO SATURATORE / CARBONATOR BLOW-OFF | Alta | | +| DO_AVM313 | A16.1 | MIX - Product Recirculation | A100.1 | RICIRCOLO PRODOTTO / PRODUCT RECYCLE | Alta | | +| DO_AVN314 | A16.2 | MIX - Deaireator Drain | A100.2 | SCARICO DEAREATORE / DEAREATOR BLOW-OFF | Alta | | +| DO_AVM315 | A16.3 | MIX - Product Tank Drain | A100.3 | SCARICO SATURATORE / CARBONATOR DISCHARGE | Alta | | +| DO_AVP316 | A16.4 | MIX - Syrup Tank Drain | A100.4 | SCARICO SCIROPPO / SYRUP BLOW-OFF | Alta | | +| DO_AVM317 | A16.5 | MIX - Product Tank Spray Ball | A100.5 | DIVOSFERA SATURATORE / CARBONATOR SPRAY BALL | Alta | | +| DO_AVN318 | A16.6 | MIX - Deaireator Over Fill | A100.6 | PIENO TROPPO DEAREATORE / DEAREATOR OVERLOAD | Alta | | +| DO_AVM321 | A16.7 | MIX - Product Tank Over Fill | A100.7 | TROPPO PIENO SATURATORE / CARBONATOR OERLOAD | Alta | | +| DO_AVM322 | A17.0 | MIX - Water Pump PPN301 Priming | A101.0 | SFIATO ARIA POMPA PRODOTTO / PRODUCT PUMP AIR BLOW-OFF | Media | | +| DO_AVM326 | A17.3 | MIX - CO2 Injection Shut Off | A101.3 | INTERCETTAZIONE INIETT.CO2 / CO2 INJECTOR INTERCEPTION | Alta | | +| DO_AVN327 | A17.4 | MIX - Deaireator Tank Spray Ball | A101.4 | DEAREATORE DIVOSFERA / DEAREATOR SPRAY BALL | Alta | | +| DO_AVP344 | A17.6 | MIX - Syrup Line Drain | A101.6 | SCARICO TUBO SCIROPPO / SYRUP PIPE BLOW-OFF | Alta | | +| DO_AVM345 | A17.7 | MIX - Product Chiller Drain | A101.7 | SCARICO SCAMBIATORE / EXCHANGER R DISCHARGE | Media | | +| DO_AVM362 | A18.1 | MIX - Product Outlet | A102.1 | USCITA PRODOTTO / PRODUCT OUTLET | Alta | | +| DO_AVM381 | A18.3 | MIX - Product Recirculation With Chiller | A102.3 | RICIRCOLO PRODOTTO / PRODUCT RECYCLE | Alta | | +| DO_AVP361 | A18.0 | MIX - Syrup Tank Spray Ball | A102.6 | DIVOSFERA SCIROPPO / SYRUP SPRAY BALL | Alta | | +| DO_RVN302 | A19.0 | MIX - Deaireator Floater | A103.4 | GALLEGGIANTE DEAREATORE / DEAREATOR FLOATER | Alta | | +| DO_RVN302_1 | A19.1 | MIX - Deaireator 2 Fill Up | A103.5 | INVASAMENTO DEAREATORE / DEAREATOR MAX. FILL | Media | | + +## Analog Inputs (AI → IW) + +| Software Side | Software Address | Software Description | PLC Side | PLC Description | Coincidencia | +| ------------- | ---------------- | ------------------------------------ | --------------------- | ------------------------------------------- | ------------ | +| P_AI_TTN321 | EW112 | TTN321 - Deaireator Temperature | IW800 (990U2 - 990B2) | H2O DEAREATOR TEMP | Alta | +| P_AI_LTM302 | EW100 | LTM302 - Product Tank Level | IW804 (991B2) | STORAGE TANK LEVEL | Alta | +| P_AI_PTM304 | EW102 | PTM304 - Product Tank Pressure | IW806 (991B6) | STORAGE TANK PRESSURE SENSOR | Alta | +| P_AI_LTP303 | EW110 | LTP303 - Syrup Tank Level | IW808 (992B2) | SYROP TANK LEVEL | Alta | +| P_AI_PTF203 | EW118 | PTF203 - Differential Pressure | IW810 (992B6) | DIFFERENTIAL PRESSURE GAUGE | Alta | +| P_AI_TTM306 | EW108 | TTM306 - Chiller Temperature | IW812 (993U2 - 993B2) | PRODUCT TEMPERATURE SENSOR | Media | +| P_AI_PTP338 | P_AI_PTP338 | PTP338 - Syrup Inlet Pressure | IW816 (994B3) | INLET SYRUP PRESSURE SENSOR | Baja | +| P_AI_RVN304 | EW104 | RVN304 - Deaireation Valve | IW820 | AIR VACUUM CO2 FLOW CONTROL | Baja | +| P_AI_PCM306 | EW114 | PCM306 - Gas Pressure Injection | IW824 | NORGREN (PV) VALVE ANALOG OUTPUT CO2 PCM306 | Baja | +| P_AI_RVM301 | EW106 | RVM301 - Product Tank Pressure Valve | IW826 | ==CO2 TANK PRESSURE CONTROL== | | + +NORGREN Gasatura Produtto CO2 + +## Analog Outputs (AO → AW) + +| Software Side | Software Address | Software Description | PLC Side | PLC Description | Coincidencia | +| ------------- | ---------------- | --------------------------------------- | -------- | ---------------------------------- | ------------ | +| P_AO_RMM301 | AW100 | RMM301 - Water Flow Control | AW800 | WATER MOTOR VALVE | Alta | +| P_AO_RMM303 | AW104 | RMM303 - Gas Flow Control | AW802 | CO2 MOTOR VALVE | Alta | +| P_AO_RMP302 | AW102 | RMP302 - Syrup Flow Control | AW804 | SYRUP MOTOR VALVE | Alta | +| P_AO_RVP303 | AW112 | RVP303 - Syrup Tank Level Valve | AW806 | SYRUP INFEED VALVE | Media | +| P_AO_RVM319 | AW110 | RVM319 - Chiller Temperature control | AW812 | PRODUCT TEMPERATURE | Alta | +| P_AO_RVN304 | AW108 | RVN304 - Deaireation Valve | AW820 | AIR VACUUM CO2 FLOW CONTROL | Media | +| P_AO_RVM301 | AW106 | RVM301 - Product Tank Pressure Valve | AW826 | CO2 TANK PRESSURE CONTROL | Media | +| P_AO_PCM306 | AW114 | PCM306 - Gas Injection Pressure Control | AW824 | NOGREN VALVE ANALOGICAL INPUT (SP) | Alta | + +## Legend of equivalences + +- ___K_ : COMMAND RELAY - FEEDBACK SIGNAL (Señales de retroalimentación) +- ___Q_ : TERMIC OVERLOAD SIGNAL (Señales de sobrecarga térmica) +- P1 = WATER PUMP = SOFTSTART = 301 (160Q2:E10.0 = 160K4:E11.0) +- P2 = SYRUP PUMP = 302 (163Q2:E10.1 = 163K8:E11.1) +- P3 = OVERPRESSURE PRODUCT PUMP = 303 (166Q2:E10.2) +- P6 = RECYCLE PUMP = 306 (169Q2:E10.3 = 169K8:E11.3) + +* Anton Paar = Analizatore + diff --git a/04-SIDEL/05 - E5.007161 - Modifica O&U - SAE346/IO/IO - PLC - Software.md b/04-SIDEL/05 - E5.007161 - Modifica O&U - SAE346/IO/IO - PLC - Software.md new file mode 100644 index 0000000..aec2745 --- /dev/null +++ b/04-SIDEL/05 - E5.007161 - Modifica O&U - SAE346/IO/IO - PLC - Software.md @@ -0,0 +1,93 @@ + +### PLC +*** + +| IO | Tag | Descripcion | Descripcion | +| ------ | ------------- | ---------------------------------- | ---------------------------- | +| E5.0 | | MAX TEMPERATURE ALARM | | +| E5.1 | 0760K1 | AUXILIARY CIRC. ON | | +| E5.2 | 0760S4 | EMERGENCY EMERGENZA | | +| E5.3 | 0925A1/4 | BUFFER BATTERY READY | | +| E5.4 | 0925A1/5 | UPS ALARM | | +| E5.5 | 0925A1/6 | BATTERY POWER SUPPLY | | +| E10.0 | 0160Q2 | P1 WATER PUMP OVERLOAD SWITCH | | +| E10.1 | 0163Q2 | SYRUP PUMP OVERLOAD | | +| E10.2 | 0166Q2 | OVERPRESSURE PUMP THERMIC SWITCH | | +| E10.3 | 0169Q2 | RECIRCULATION PUMP OVERLOAD | | +| E11.0 | 0160K4 | P1 WATER PUMP FAULT / Feedback | | +| E11.1 | 0163K8 | SYRUP PUMP FAULT / Feedback | | +| E11.3 | 0169K8 | PRODUCT RECYCLE PUMP | | +| E12.0 | | SOFTSTART RUNNING | | +| E12.1 | 0820F8 | OVERLOAD ANTON PAAR | | +| E12.4 | 0934S1 | AIR PRESSURE | | +| E12.5 | 0934B3 | DEARETOR 1 MINIMUM LEVELPROBE | | +| E12.6 | 0934B6 | STORE TANK MIN LEVELPROBE | | +| E60.0 | | CIP MODE | | +| E60.1 | | RINSE MODE | | +| E60.2 | | CIP DRAINAGE REQUEST | | +| E60.3 | | CIP COMPLETED | | +| E68.0 | SYR.0 | SYRUPS ROOM PUMP RUN | | +| E68.1 | SYR.1 | WATER PUMP SYRUP ROOM | | +| E102.3 | 0951S8 | AVM362 OPEN | | +| E102.2 | 0951S6 | AVM346 OPEN | | +| E112.2 | 0967A1/3 | AVM346 CLOSED | | +| E112.3 | 0967A1/4 | AVM362 CHIUSA | | +| E112.4 | 0967A1/5 | CLOSED VALVE RMM301 | | +| E112.5 | 0967A1/6 | CLOSED VALVE RMP302 | | +| E112.6 | 0967A1/7 | CLOSED VALVE RMM303 | | +| | | | | +| IW800 | 990U2 - 990B2 | H2O DEAREATOR TEMP | | +| IW804 | 991B2 | STORAGE TANK LEVEL | | +| IW806 | 991B6 | STORAGE TANK PRESSURE SENSOR | | +| IW808 | 992B2 | SYROP TANK LEVEL | | +| IW810 | 992B6 | DIFFERENTIAL PRESSURE GAUGE | | +| IW812 | 993U2 - 993B2 | PRODUCT TEMPERATURE SENSOR | | +| IW816 | 994B3 | INLET SYRUP PRESSURE SENSOR | | +| IW820 | | AIR VACUUM CO2 FLOW CONTROL | | +| IW824 | | NORGREN (PV) VALVE ANALOG OUTPUT | | +| IW826 | 805B1 | CO2 TANK PRESSURE CONTROL | | +| | | | | +| AW800 | | WATER MOTOR VALVE | | +| AW802 | | CO2 MOTOR VALVE | | +| AW804 | | SYRUP MOTOR VALVE | | +| AW806 | | SYRUP INFEED VALVE | | +| AW812 | | PRODUCT TEMPERATURE | | +| AW820 | | AIR VACUUM CO2 FLOW CONTROL | | +| AW824 | | NOGREN VALVE ANALOGICAL INPUT (SP) | | +| AW826 | | CO2 TANK PRESSURE CONTROL | | +| A5.0 | | HMI POWER SUPPLY RESTORE | | +| A5.1 | | CONTROL CIRCUIT RUN | | +| A5.5 | 1046H0 | YELLOW | | +| A5.7 | 1046H0 | ACOUSTIC ALARM | | +| A11.0 | 1052K1 | WATER PUMP CONTROL | | +| A11.1 | | SYRUP PUMP CONTROL | | +| A11.3 | | RECIRCULATION PUMP CONTROL | | +| A11.6 | 1053K6 | SYRUP VALVE ENABLE | | +| A60.0 | 1055U0 | CIP REQUEST | | +| A60.1 | 1055U2 | CIP DRAINAGE FINISHED | | +| A68.0 | 1062U0 | SIRUP REQUEST | | +| A68.1 | 1062U2 | WATER REQUEST | | +| | | | | +| A100.0 | | SFIATO SATURATORE | CARBONATOR BLOW-OFF | +| A100.1 | | RICIRCOLO PRODOTTO | PRODUCT RECYCLE | +| A100.2 | | SCARICO DEAREATORE | DEAREATOR BLOW-OFF | +| A100.3 | | SCARICO SATURATORE | CARBONATOR DISCHARGE | +| A100.4 | | SCARICO SCIROPPO | SYRUP BLOW-OFF | +| A100.5 | | DIVOSFERA SATURATORE | CARBONATOR SPRAY BALL | +| A100.6 | | PIENO TROPPO DEAREATORE | DEAREATOR OVERLOAD | +| A100.7 | | TROPPO PIENO SATURATORE | CARBONATOR OERLOAD | +| A101.0 | | SFIATO ARIA POMPA PRODOTTO | PRODUCT PUMP AIR BLOW-OFF | +| A101.1 | | SCARICO SERPENTINA | TUBULAR EL. BLOW-OFF | +| A101.2 | | RICICLO SCIROPPO START-UP | SYRUP RECIRCULATING START-UP | +| A101.3 | | INTERCETTAZIONE INIETT.CO2 | CO2 INJECTOR INTERCEPTION | +| A101.4 | | DEAREATORE DIVOSFERA | DEAREATOR SPRAY BALL | +| A101.5 | | DEAREAZ. ACOUA IN RISCIACOUO | DEAREATOR RINSING WATER | +| A101.6 | | SCARICO TUBO SCIROPPO | SYRUP PIPE BLOW-OFF | +| A101.7 | | SCARICO SCAMBIATORE | EXCHANGER R DISCHARGE | +| A102.1 | | USCITA PRODOTTO | PRODUCT OUTLET | +| A102.3 | | RICIRCOLO PRODOTTO | PRODUCT RECYCLE | +| A102.4 | | SANIFICAZIONE | SANITIZING | +| A102.5 | | DRENAGGIO TUB. SANIFIC. | SANITIZING PIPE DRAINAGE | +| A102.6 | | DIVOSFERA SCIROPPO | SYRUP SPRAY BALL | +| A103.4 | | GALLEGGIANTE DEAREATORE | DEAREATOR FLOATER | +| A103.5 | | INVASAMENTO DEAREATORE | DEAREATOR MAX. FILL | diff --git a/04-SIDEL/05 - E5.007161 - Modifica O&U - SAE346/adjuntos/Pasted image 20250401163835.png b/04-SIDEL/05 - E5.007161 - Modifica O&U - SAE346/adjuntos/Pasted image 20250401163835.png new file mode 100644 index 0000000..5f2e2f6 Binary files /dev/null and b/04-SIDEL/05 - E5.007161 - Modifica O&U - SAE346/adjuntos/Pasted image 20250401163835.png differ diff --git a/04-SIDEL/05 - E5.007161 - Modifica O&U - SAE346/adjuntos/Pasted image 20250401163951.png b/04-SIDEL/05 - E5.007161 - Modifica O&U - SAE346/adjuntos/Pasted image 20250401163951.png new file mode 100644 index 0000000..051042e Binary files /dev/null and b/04-SIDEL/05 - E5.007161 - Modifica O&U - SAE346/adjuntos/Pasted image 20250401163951.png differ diff --git a/04-SIDEL/05 - E5.007161 - Modifica O&U - SAE346/adjuntos/motorS.svg b/04-SIDEL/05 - E5.007161 - Modifica O&U - SAE346/adjuntos/motorS.svg new file mode 100644 index 0000000..5121e6a --- /dev/null +++ b/04-SIDEL/05 - E5.007161 - Modifica O&U - SAE346/adjuntos/motorS.svg @@ -0,0 +1,11 @@ + + + + + + + + + + + diff --git a/05-COMS/01 - T300881 - Nestle SudAfrica/T300881 - Notes.md b/05-COMS/01 - T300881 - Nestle SudAfrica/T300881 - Notes.md index b9978cd..2da299e 100644 --- a/05-COMS/01 - T300881 - Nestle SudAfrica/T300881 - Notes.md +++ b/05-COMS/01 - T300881 - Nestle SudAfrica/T300881 - Notes.md @@ -6,41 +6,43 @@ ### IP Base: 10.146.76. -| Device | | Name | IP | | MAC | -| :--------------: | :----------: | :----------------: | :----------: | ---- | ----------------- | -| PLC 1756-A4 5580 | plc_conveyor | 1-EN2T Conveyor | 10.146.76. | .1 | 08:61:95:E4:B8:87 | -| PLC | | 2-EN2T LineMachine | 172.16.100.1 | | | -| IM | | 5069_51A1 | 10.146.76. | .2 | BC:F4:99:10:9D:CB | -| IM | | 795A1 | 10.146.76. | .83 | BC:F4:99:10:3C:5F | -| IM | | 910A1 | 10.146.76. | .87 | BC:F4:99:0F:2D:7D | -| HMI | | | | | | -| | | | | | | -| M33 | | | 10.146.76. | .43 | 00:0F:69:6C:AE:50 | -| M35 | | | 10.146.76. | .45 | 00:0F:69:6B:9E:D9 | -| M36 | | | 10.146.76. | .46 | 00:0F:69:6B:7B:A8 | -| M37 | Table_1 | | 10.146.76. | .47 | 00:0F:69:6C:8D:E0 | -| M38 | Table_1 | | 10.146.76. | .48 | 00:0F:69:6B:7B:A2 | -| M39 | Table_1 | | 10.146.76. | .49 | 00:0F:69:6C:8D:DA | -| M40 | Table_2 | | 10.146.76. | .50 | 00:0F:69:6B:7B:FF | -| M41 | Table_1 | | 10.146.76. | .51 | 00:0F:69:6B:7B:75 | -| M42 | Table_2 | | 10.146.76. | .52 | 00:0F:69:6B:7B:96 | -| M43 | Table_2 | | 10.146.76. | .53 | 00:0F:69:6C:8D:D4 | -| M44 | | | 10.146.76. | .54 | 00:0F:69:6B:7B:78 | -| M45 | | | 10.146.76. | .55 | 00:0F:69:6B:9E:E5 | -| M46 | | | 10.146.76. | .56 | 00:0F:69:6B:7B:6F | -| M47:M10 | | | 10.146.76. | .57 | 00:0F:69:6B:7B:39 | -| | | | | | 00:0F:69:6B:7B:39 | -| | | | | | 00:06:77:63:64:C2 | -| | | | | | 02:1B:1B:35:6E:01 | -| | | | | | | -| PILZ CPU | | | 10.146.76. | .100 | | -| PILZ | | | 10.146.76. | .101 | | -| PILZ | | | 10.146.76. | .102 | | -| PILZ | | | 10.146.76. | .103 | | -| PILZ | | | 10.146.76. | .104 | | -| PILZ | | | 10.146.76. | .105 | | -| | | | | | | -| DIVIDER | | 255.240.0.07 | 10.146.76. | 201 | | +| Device | | Name | IP | | MAC | user | password | +| :--------------: | :----------: | :----------------: | :----------: | ---- | ----------------- | ----- | -------- | +| PLC 1756-A4 5580 | plc_conveyor | 1-EN2T Conveyor | 10.146.76. | .1 | 08:61:95:E4:B8:87 | | | +| PLC | | 2-EN2T LineMachine | 172.16.100.1 | | | | | +| IM | | 5069_51A1 | 10.146.76. | .2 | BC:F4:99:10:9D:CB | | | +| IM | | 795A1 | 10.146.76. | .83 | BC:F4:99:10:3C:5F | | | +| IM | | 910A1 | 10.146.76. | .87 | BC:F4:99:0F:2D:7D | | | +| HMI | | 618A1 | 10.146.76. | 11 | | admin | Tss25001 | +| HMI | | 988A1 | 10.146.76. | 12 | | admin | Tss25001 | +| HMI | | 608A1 | 10.146.76. | 13 | | admin | Tss25001 | +| | | | | | | | | +| M33 | | | 10.146.76. | .43 | 00:0F:69:6C:AE:50 | | | +| M35 | | | 10.146.76. | .45 | 00:0F:69:6B:9E:D9 | | | +| M36 | | | 10.146.76. | .46 | 00:0F:69:6B:7B:A8 | | | +| M37 | Table_1 | | 10.146.76. | .47 | 00:0F:69:6C:8D:E0 | | | +| M38 | Table_1 | | 10.146.76. | .48 | 00:0F:69:6B:7B:A2 | | | +| M39 | Table_1 | | 10.146.76. | .49 | 00:0F:69:6C:8D:DA | | | +| M40 | Table_2 | | 10.146.76. | .50 | 00:0F:69:6B:7B:FF | | | +| M41 | Table_1 | | 10.146.76. | .51 | 00:0F:69:6B:7B:75 | | | +| M42 | Table_2 | | 10.146.76. | .52 | 00:0F:69:6B:7B:96 | | | +| M43 | Table_2 | | 10.146.76. | .53 | 00:0F:69:6C:8D:D4 | | | +| M44 | | | 10.146.76. | .54 | 00:0F:69:6B:7B:78 | | | +| M45 | | | 10.146.76. | .55 | 00:0F:69:6B:9E:E5 | | | +| M46 | | | 10.146.76. | .56 | 00:0F:69:6B:7B:6F | | | +| M47:M10 | | | 10.146.76. | .57 | 00:0F:69:6B:7B:39 | | | +| | | | | | 00:0F:69:6B:7B:39 | | | +| | | | | | 00:06:77:63:64:C2 | | | +| | | | | | 02:1B:1B:35:6E:01 | | | +| | | | | | | | | +| PILZ CPU | | | 10.146.76. | .100 | | | | +| PILZ | | | 10.146.76. | .101 | | | | +| PILZ | | | 10.146.76. | .102 | | | | +| PILZ | | | 10.146.76. | .103 | | | | +| PILZ | | | 10.146.76. | .104 | | | | +| PILZ | | | 10.146.76. | .105 | | | | +| | | | | | | | | +| DIVIDER | | 255.240.0.07 | 10.146.76. | 201 | | | | ![[Pasted image 20250312103939.png]] diff --git a/07 - Desarrolo de Proyectos - Scripts - Visual Studio/Proyectos Visual Studio/Como usar PublicApiGenerator - Nuget - Documentator.md b/07 - Desarrolo de Proyectos - Scripts - Visual Studio/Proyectos Visual Studio/Como usar PublicApiGenerator - Nuget - Documentator.md index 0cb5247..77484f6 100644 --- a/07 - Desarrolo de Proyectos - Scripts - Visual Studio/Proyectos Visual Studio/Como usar PublicApiGenerator - Nuget - Documentator.md +++ b/07 - Desarrolo de Proyectos - Scripts - Visual Studio/Proyectos Visual Studio/Como usar PublicApiGenerator - Nuget - Documentator.md @@ -9,3 +9,32 @@ generate-public-api --assembly "D:\Proyectos\VisualStudio\S7Explorer\bin\Debug\n ``` generate-public-api --assembly "C:\Users\migue\.nuget\packages\paddleocrsharp\4.5.0.1\lib\net8.0\PaddleOCRSharp.dll" --target-frameworks "net8.0-windows" > PaddleOCRSharpAPI.txt ``` + + +``` +generate-public-api --package Extended.Wpf.Toolkit --package-version 4.7.25104.5739 --target-frameworks "net5.0-windows" > Xceed.Wpf.Toolkit.txt --verbose +``` + +``` +PublicApiGenerator.Tool: + Public API generator tool that is useful for semantic versioning + +Usage: + PublicApiGenerator.Tool [options] + +Options: + --target-frameworks Target frameworks to use to restore packages in. Must be a suitable target framework for executables like netcoreapp2.1. It is possible to specify multiple target frameworks like netcoreapp2.1;net461 + --assembly The assembly name including the extension (i.ex. PublicApiGenerator.dll) to generate a public API from in case in differs from the package name. + --project-path The path to the csproj that should be used to build the public API. + --package The package name from which a public API should be created. The tool assumes the package name equals the assembly name. If the assembly name is different specify + --package-version The version of the package defined in to be used. + --package-source Package source or feed to use (multiple allowed). + --generator-version The version of the PublicApiGenerator package to use. + --working-directory The working directory to be used for temporary work artifacts. A temporary directory will be created inside the working directory and deleted once the process is done. If no working directory is specified the users temp directory is used. + --output-directory The output directory where the generated public APIs should be moved. + --verbose + --leave-artifacts Instructs to leave the temporary artifacts around for debugging and troubleshooting purposes. + --wait-time-in-seconds The number of seconds to wait for the API generation process to end. If multiple target frameworks are used the wait time is applied per target framework. + --version Display version information +``` + diff --git a/Excalidraw/Drawing 2025-01-27 16.50.21.excalidraw.md b/Excalidraw/Drawing 2025-01-27 16.50.21.excalidraw.md deleted file mode 100644 index 1509331..0000000 --- a/Excalidraw/Drawing 2025-01-27 16.50.21.excalidraw.md +++ /dev/null @@ -1,14 +0,0 @@ ---- - -excalidraw-plugin: parsed -tags: [excalidraw] - ---- -==⚠ Switch to EXCALIDRAW VIEW in the MORE OPTIONS menu of this document. ⚠== You can decompress Drawing data with the command palette: 'Decompress current Excalidraw file'. For more info check in plugin settings under 'Saving' - - -## Drawing -```compressed-json -N4IgLgngDgpiBcIYA8DGBDANgSwCYCd0B3EAGhADcZ8BnbAewDsEAmcm+gV31TkQAswYKDXgB6MQHNsYfpwBGAOlT0AtmIBeNCtlQbs6RmPry6uA4wC0KDDgLFLUTJ2lH8MTDHQ0YNMWHRJMRZFAHZFAFYyJE9VGEYwGgQAbQBdcnQoKABlALA+UEl8PGzsDT5GTkxMch0YIgAhdFQAayKuRlwAYXpMenwEEABiADMx8ZAAX0mgA -``` -%% \ No newline at end of file diff --git a/TODY - Punti da vedere.md b/TODY - Punti da vedere.md index 27834c8..7be6366 100644 --- a/TODY - Punti da vedere.md +++ b/TODY - Punti da vedere.md @@ -2,9 +2,9 @@ - [x] HENKEL - NEXT + 1 ✅ 2025-02-20\ - [x] 94102 - ALPLA - USA ✅ 2025-02-20 - [x] Orientatore Henkel ✅ 2025-02-20 -- [ ] Shibuya -- [ ] Tavolo -- [ ] Tilter +- [x] Shibuya ✅ 2025-04-05 +- [x] Tavolo ✅ 2025-04-05 +- [x] Tilter ✅ 2025-04-05 - [ ] Tilter AB diff --git a/Temporales/Drawing 2024-10-13 20.08.30.excalidraw.md b/Temporales/Drawing 2024-10-13 20.08.30.excalidraw.md deleted file mode 100644 index 7c95d10..0000000 --- a/Temporales/Drawing 2024-10-13 20.08.30.excalidraw.md +++ /dev/null @@ -1,33 +0,0 @@ ---- - -excalidraw-plugin: parsed -tags: [excalidraw] - ---- -==⚠ Switch to EXCALIDRAW VIEW in the MORE OPTIONS menu of this document. ⚠== You can decompress Drawing data with the command palette: 'Decompress current Excalidraw file'. For more info check in plugin settings under 'Saving' - - -# Excalidraw Data -## Text Elements -%% -## Drawing -```compressed-json -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 -``` -%% \ No newline at end of file diff --git a/Temporales/NAT - Switch.md b/Temporales/NAT - Switch.md deleted file mode 100644 index c7def16..0000000 --- a/Temporales/NAT - Switch.md +++ /dev/null @@ -1,153 +0,0 @@ ---- - -excalidraw-plugin: parsed -tags: [excalidraw] - ---- -==⚠ Switch to EXCALIDRAW VIEW in the MORE OPTIONS menu of this document. ⚠== You can decompress Drawing data with the command palette: 'Decompress current Excalidraw file'. For more info check in plugin settings under 'Saving' - - -# Excalidraw Data -## Text Elements -NAT ^BKSCLkRA - -PLC ^mTZwNPFo - -10.1.30.11 ^l7F8t4Wt - -192.168.5.11 ^fU0EKNzn - -10.1.30.11 ^ZBGfAZXN - -Supervisore ^tOmTvful - -192.168.5.1 ^Tz0HUo7F - -Machines ^JTWbLq5D - -10.1.30.121 ^bGobUIBw - -sacomea ^B6bE3HFS - -Switch ^NQO23WCH - -192.168.5.12 ^V7pLUarO - -192.168.5.13 ^UgPSjnZx - -Internet ^aFZq5asP - -Machines ^BLg1zbqJ - -%% -## Drawing -```compressed-json -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 - -8EWCAA== -``` -%% \ No newline at end of file diff --git a/Temporales/adjuntos/image.png b/Temporales/adjuntos/image.png deleted file mode 100644 index 2508ce5..0000000 Binary files a/Temporales/adjuntos/image.png and /dev/null differ diff --git a/Temporales/adjuntos/image_0.png b/Temporales/adjuntos/image_0.png deleted file mode 100644 index ac31c08..0000000 Binary files a/Temporales/adjuntos/image_0.png and /dev/null differ diff --git a/Temporales/adjuntos/image_1.png b/Temporales/adjuntos/image_1.png deleted file mode 100644 index 6fe9654..0000000 Binary files a/Temporales/adjuntos/image_1.png and /dev/null differ