@cravern/bpmn-flow-designer 1.0.8 → 1.0.10

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.umd.js CHANGED
@@ -1,6 +1,4 @@
1
- (function(Y2,M0){typeof exports=="object"&&typeof module<"u"?M0(exports,require("react")):typeof define=="function"&&define.amd?define(["exports","react"],M0):(Y2=typeof globalThis<"u"?globalThis:Y2||self,M0(Y2.BpmnFlowDesigner={},Y2.React))})(this,(function(Y2,M0){"use strict";var bn=document.createElement("style");bn.textContent=`@charset "UTF-8";@import"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap";.djs-parent{--color-grey-225-10-15: hsl(225, 10%, 15%);--color-grey-225-10-35: hsl(225, 10%, 35%);--color-grey-225-10-55: hsl(225, 10%, 55%);--color-grey-225-10-75: hsl(225, 10%, 75%);--color-grey-225-10-80: hsl(225, 10%, 80%);--color-grey-225-10-85: hsl(225, 10%, 85%);--color-grey-225-10-90: hsl(225, 10%, 90%);--color-grey-225-10-95: hsl(225, 10%, 95%);--color-grey-225-10-97: hsl(225, 10%, 97%);--color-blue-205-100-45: hsl(205, 100%, 45%);--color-blue-205-100-45-opacity-30: hsla(205, 100%, 45%, 30%);--color-blue-205-100-50: hsl(205, 100%, 50%);--color-blue-205-100-50-opacity-15: hsla(205, 100%, 50%, 15%);--color-blue-205-100-70: hsl(205, 100%, 75%);--color-blue-205-100-95: hsl(205, 100%, 95%);--color-green-150-86-44: hsl(150, 86%, 44%);--color-red-360-100-40: hsl(360, 100%, 40%);--color-red-360-100-45: hsl(360, 100%, 45%);--color-red-360-100-92: hsl(360, 100%, 92%);--color-red-360-100-97: hsl(360, 100%, 97%);--color-white: hsl(0, 0%, 100%);--color-black: hsl(0, 0%, 0%);--color-black-opacity-10: hsla(0, 0%, 0%, 10%);--color-black-opacity-30: hsla(0, 0%, 0%, 30%);--canvas-fill-color: var(--color-white);--bendpoint-fill-color: var(--color-blue-205-100-45);--bendpoint-stroke-color: var(--canvas-fill-color);--context-pad-entry-background-color: var(--color-white);--context-pad-entry-hover-background-color: var(--color-grey-225-10-95);--element-dragger-color: var(--color-blue-205-100-50);--element-dragging-color: var(--color-grey-225-10-75);--element-hover-outline-fill-color: var(--color-blue-205-100-45);--element-selected-outline-stroke-color: var(--color-blue-205-100-50);--element-selected-outline-secondary-stroke-color: var(--color-blue-205-100-70);--lasso-fill-color: var(--color-blue-205-100-50-opacity-15);--lasso-stroke-color: var(--element-selected-outline-stroke-color);--palette-entry-color: var(--color-grey-225-10-15);--palette-entry-hover-color: var(--color-blue-205-100-45);--palette-entry-selected-color: var(--color-blue-205-100-50);--palette-separator-color: var(--color-grey-225-10-75);--palette-toggle-hover-background-color: var(--color-grey-225-10-55);--palette-background-color: var(--color-grey-225-10-97);--palette-border-color: var(--color-grey-225-10-75);--popup-font-size: 14px;--popup-header-entry-selected-color: var(--color-blue-205-100-50);--popup-header-font-weight: bolder;--popup-background-color: var(--color-white);--popup-border-color: transparent;--popup-shadow-color: var(--color-black-opacity-30);--popup-description-color: var(--color-grey-225-10-55);--popup-no-results-color: var(--color-grey-225-10-55);--popup-entry-title-color: var(--color-grey-225-10-55);--popup-entry-hover-color: var(--color-grey-225-10-95);--popup-search-border-color: var(--color-grey-225-10-75);--popup-search-focus-border-color: var(--color-blue-205-100-50);--popup-search-focus-background-color: var(--color-blue-205-100-95);--resizer-fill-color: var(--color-blue-205-100-45);--resizer-stroke-color: var(--canvas-fill-color);--search-container-background-color: var(--color-grey-225-10-97);--search-container-border-color: var(--color-blue-205-100-50);--search-container-box-shadow-color: var(--color-blue-205-100-95);--search-container-box-shadow-inset-color: var(--color-grey-225-10-80);--search-input-border-color: var(--color-grey-225-10-75);--search-result-border-color: var(--color-grey-225-10-75);--search-result-highlight-color: var(--color-black);--search-result-selected-color: var(--color-blue-205-100-45-opacity-30);--shape-attach-allowed-stroke-color: var(--color-blue-205-100-50);--shape-connect-allowed-fill-color: var(--color-grey-225-10-97);--shape-drop-allowed-fill-color: var(--color-grey-225-10-97);--shape-drop-not-allowed-fill-color: var(--color-red-360-100-97);--shape-resize-preview-stroke-color: var(--color-blue-205-100-50);--snap-line-stroke-color: var(--color-blue-205-100-45-opacity-30);--space-tool-crosshair-stroke-color: var(--color-black);--tooltip-error-background-color: var(--color-red-360-100-97);--tooltip-error-border-color: var(--color-red-360-100-45);--tooltip-error-color: var(--color-red-360-100-45)}.djs-outline,.djs-selection-outline{fill:none;shape-rendering:geometricPrecision;stroke-width:2px}.djs-outline{visibility:hidden}.djs-selection-outline{stroke:var(--element-selected-outline-stroke-color)}.djs-element.selected .djs-outline{visibility:visible;stroke:var(--element-selected-outline-stroke-color)}.djs-multi-select .djs-element.selected .djs-outline{stroke:var(--element-selected-outline-secondary-stroke-color)}.djs-shape.connect-ok .djs-visual>:nth-child(1){fill:var(--shape-connect-allowed-fill-color)!important}.djs-shape.connect-not-ok .djs-visual>:nth-child(1),.djs-shape.drop-not-ok .djs-visual>:nth-child(1){fill:var(--shape-drop-not-allowed-fill-color)!important}.djs-shape.new-parent .djs-visual>:nth-child(1){fill:var(--shape-drop-allowed-fill-color)!important}svg.drop-not-ok{background:var(--shape-drop-not-allowed-fill-color)!important}svg.new-parent{background:var(--shape-drop-allowed-fill-color)!important}.drop-not-ok,.connect-not-ok,.drop-not-ok *,.connect-not-ok *{cursor:not-allowed!important}.drop-ok,.connect-ok,.drop-ok *,.connect-ok *{cursor:default!important}.djs-element.attach-ok .djs-visual>:nth-child(1){stroke-width:5px!important;stroke:var(--shape-attach-allowed-stroke-color)!important}.djs-frame.connect-not-ok .djs-visual>:nth-child(1),.djs-frame.drop-not-ok .djs-visual>:nth-child(1){stroke-width:3px!important;stroke:var(--shape-drop-not-allowed-fill-color)!important;fill:none!important}.djs-lasso-overlay{fill:var(--lasso-fill-color);stroke:var(--lasso-stroke-color);stroke-width:2px;shape-rendering:geometricPrecision;pointer-events:none}.djs-resize-overlay{fill:none;stroke-dasharray:5 1 3 1;stroke:var(--shape-resize-preview-stroke-color);pointer-events:none}.djs-resizer-hit{fill:none;pointer-events:all}.djs-resizer-visual{fill:var(--resizer-fill-color);stroke-width:1px;stroke:var(--resizer-stroke-color);shape-rendering:geometricPrecision}.djs-resizer:hover .djs-resizer-visual{stroke:var(--resizer-stroke-color);stroke-opacity:1}.djs-cursor-resize-ns,.djs-resizer-n,.djs-resizer-s{cursor:ns-resize}.djs-cursor-resize-ew,.djs-resizer-e,.djs-resizer-w{cursor:ew-resize}.djs-cursor-resize-nwse,.djs-resizer-nw,.djs-resizer-se{cursor:nwse-resize}.djs-cursor-resize-nesw,.djs-resizer-ne,.djs-resizer-sw{cursor:nesw-resize}.djs-shape.djs-resizing>.djs-outline{visibility:hidden!important}.djs-shape.djs-resizing>.djs-resizer{visibility:hidden}.djs-dragger>.djs-resizer{visibility:hidden}.djs-dragger *{fill:none!important;stroke:var(--element-dragger-color)!important}.djs-dragger tspan,.djs-dragger text{fill:var(--element-dragger-color)!important;stroke:none!important}marker.djs-dragger circle,marker.djs-dragger path,marker.djs-dragger polygon,marker.djs-dragger polyline,marker.djs-dragger rect{fill:var(--element-dragger-color)!important;stroke:none!important}marker.djs-dragger text,marker.djs-dragger tspan{fill:none!important;stroke:var(--element-dragger-color)!important}.djs-dragging,.djs-dragging>*{pointer-events:none!important}.djs-dragging .djs-context-pad,.djs-dragging .djs-outline{display:none!important}.djs-dragging *{fill:none!important;stroke:var(--element-dragging-color)!important}.djs-dragging tspan,.djs-dragging text{fill:var(--element-dragging-color)!important;stroke:none!important}marker.djs-dragging circle,marker.djs-dragging path,marker.djs-dragging polygon,marker.djs-dragging polyline,marker.djs-dragging rect{fill:var(--element-dragging-color)!important;stroke:none!important}marker.djs-dragging text,marker.djs-dragging tspan{fill:none!important;stroke:var(--element-dragging-color)!important}.djs-visual,.djs-outline{pointer-events:none}.djs-element.attach-ok .djs-hit{stroke-width:60px!important}.djs-element>.djs-hit-all,.djs-element>.djs-hit-no-move{pointer-events:all}.djs-element>.djs-hit-stroke,.djs-element>.djs-hit-click-stroke{pointer-events:stroke}.djs-connection .djs-visual{stroke-width:2px;fill:none}.djs-cursor-grab{cursor:grab}.djs-cursor-grabbing{cursor:grabbing}.djs-cursor-crosshair{cursor:crosshair}.djs-cursor-move{cursor:move}.djs-cursor-resize-ns{cursor:ns-resize}.djs-cursor-resize-ew{cursor:ew-resize}.djs-snap-line{stroke:var(--snap-line-stroke-color);stroke-linecap:round;stroke-width:2px;pointer-events:none}.djs-crosshair{stroke:var(--space-tool-crosshair-stroke-color);stroke-linecap:round;stroke-width:1px;pointer-events:none;shape-rendering:geometricPrecision;stroke-dasharray:5,5}.djs-palette{position:absolute;left:20px;top:20px;box-sizing:border-box;width:48px}.djs-palette .separator{margin:5px;padding-top:5px;border:none;border-bottom:solid 1px var(--palette-separator-color);clear:both}.djs-palette .entry:before{vertical-align:initial}.djs-palette .djs-palette-toggle{cursor:pointer}.djs-palette .entry,.djs-palette .djs-palette-toggle{color:var(--palette-entry-color);font-size:30px;text-align:center}.djs-palette .entry{float:left}.djs-palette .entry img{max-width:100%}.djs-palette .djs-palette-entries:after{content:"";display:table;clear:both}.djs-palette .djs-palette-toggle:hover{background:var(--palette-toggle-hover-background-color)}.djs-palette .entry:hover{color:var(--palette-entry-hover-color)}.djs-palette .highlighted-entry{color:var(--palette-entry-selected-color)!important}.djs-palette .entry,.djs-palette .djs-palette-toggle{width:46px;height:46px;line-height:46px;cursor:default}.djs-palette.two-column.open{width:94px}.djs-palette:not(.open) .djs-palette-entries{display:none}.djs-palette:not(.open){overflow:hidden}.djs-palette.open .djs-palette-toggle{display:none}.djs-overlay-context-pad{width:72px;z-index:100}.djs-context-pad{position:absolute;display:none;pointer-events:none;line-height:1}.djs-context-pad .entry{width:22px;height:22px;text-align:center;display:inline-block;font-size:22px;margin:0 2px 2px 0;border-radius:3px;cursor:default;background-color:var(--context-pad-entry-background-color);box-shadow:0 0 2px 1px var(--context-pad-entry-background-color);pointer-events:all;vertical-align:middle}.djs-context-pad .entry:hover{background:var(--context-pad-entry-hover-background-color)}.djs-context-pad.open{display:block}.djs-popup-backdrop{position:fixed;width:100vw;height:100vh;top:0;left:0;z-index:200;line-height:1;font-family:IBM Plex Sans,sans-serif}.djs-popup{box-sizing:border-box;width:-moz-min-content;width:min-content;background:var(--popup-background-color);overflow:hidden;position:absolute;box-shadow:0 2px 6px var(--popup-shadow-color);border:solid 1px var(--popup-border-color);min-width:120px;outline:none;font-size:var(--popup-font-size)}.djs-popup-search input{width:100%;box-sizing:border-box;font-size:var(--popup-font-size);padding:3px 6px;border-radius:2px;border:solid 1px var(--popup-search-border-color);line-height:21px}.djs-popup-search input:focus{background-color:var(--popup-search-focus-background-color);border:solid 1px var(--popup-search-focus-border-color);outline:none}.djs-popup-header{display:flex;align-items:stretch;line-height:20px;margin:10px 12px}.djs-popup-header .entry{border-radius:2px}.djs-popup-header .entry.active{color:var(--popup-header-entry-selected-color)}.djs-popup-header .entry.disabled{color:inherit}.djs-popup-search{margin:10px 12px}.djs-popup-title{font-size:var(--popup-font-size);font-weight:var(--popup-header-font-weight);flex:1;margin:0}.djs-popup-search{position:relative;width:auto}.djs-popup-search-icon{position:absolute;left:8px;top:7px}.djs-popup-search input{padding-left:25px}.djs-popup-results{margin:7px 3px 7px 12px;list-style:none;max-height:280px;overflow:auto;padding-right:9px}.djs-popup-group{margin:0;padding:0;width:100%}.djs-popup-body .entry,.djs-popup-body .entry-header{padding:5px 7px;cursor:default;border-radius:4px}.djs-popup-body .entry-header{font-weight:var(--popup-header-font-weight);color:var(--popup-entry-title-color);padding-left:0}.djs-popup [class*=icon] .djs-popup-label,.djs-popup-label:not(:first-child){margin-left:.5em}.djs-popup [class*=icon]:before,.djs-popup-entry-icon{width:1em;height:1em;display:inline-block;font-size:1.4em;vertical-align:middle}.djs-popup-body .entry-header:not(:first-child){margin-top:8px;margin-bottom:2px}.djs-popup-body .entry{display:flex;flex-direction:row;align-items:stretch;height:-moz-min-content;height:min-content}.djs-popup .entry.selected{background-color:var(--popup-entry-hover-color)}.djs-popup-body .entry:not(:first-child){margin-top:2px}.djs-popup-entry-content{display:flex;flex-direction:column;flex:1;overflow:hidden}.djs-popup-entry-description{color:var(--popup-description-color)}.djs-popup-label,.djs-popup-entry-description{line-height:1.4em}.djs-popup-title,.djs-popup-label,.djs-popup-entry-description,.djs-popup .entry-header{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.djs-popup-entry-name{display:flex}.entry-content{display:flex;flex-direction:column;flex:1;overflow:hidden}.djs-popup-body{flex-direction:column;width:auto}.djs-popup *::-webkit-scrollbar{width:6px}.djs-popup *::-webkit-scrollbar-thumb{border-radius:3px;background-color:#0003}.djs-popup *::-webkit-scrollbar-track{box-shadow:none;background:transparent;margin:0;padding:5px}.djs-popup-no-results{padding:0 12px 12px;color:var(--popup-no-results-color)}.djs-popup-entry-docs{flex:0;flex-direction:row;align-items:center;padding-left:5px;display:none}.djs-popup-body .entry:hover .djs-popup-entry-docs{display:flex}.djs-popup-entry-docs svg{vertical-align:middle;margin:auto 2px auto 5px}.djs-palette{background:var(--palette-background-color);border:solid 1px var(--palette-border-color);border-radius:2px}.djs-shape,.djs-connection{touch-action:none}.djs-segment-dragger,.djs-bendpoint{display:none}.djs-segment-dragger .djs-visual{display:none;fill:var(--bendpoint-fill-color);stroke:var(--bendpoint-stroke-color);stroke-width:1px;stroke-opacity:1}.djs-segment-dragger:hover .djs-visual{display:block}.djs-bendpoint .djs-visual{fill:var(--bendpoint-fill-color);stroke:var(--bendpoint-stroke-color);stroke-width:1px}.djs-segment-dragger:hover,.djs-bendpoints.hover .djs-segment-dragger,.djs-bendpoints.selected .djs-segment-dragger,.djs-bendpoint:hover,.djs-bendpoints.hover .djs-bendpoint,.djs-bendpoints.selected .djs-bendpoint{display:block}.djs-drag-active .djs-bendpoints *{display:none}.djs-bendpoints:not(.hover) .floating{display:none}.djs-segment-dragger:hover .djs-visual,.djs-segment-dragger.djs-dragging .djs-visual,.djs-bendpoint:hover .djs-visual,.djs-bendpoint.floating .djs-visual{fill:var(--bendpoint-fill-color);stroke:var(--bendpoint-stroke-color);stroke-opacity:1}.djs-bendpoint.floating .djs-hit{pointer-events:none}.djs-segment-dragger .djs-hit,.djs-bendpoint .djs-hit{fill:none;pointer-events:all}.djs-segment-dragger.horizontal .djs-hit{cursor:ns-resize}.djs-segment-dragger.vertical .djs-hit{cursor:ew-resize}.djs-segment-dragger.djs-dragging .djs-hit{pointer-events:none}.djs-updating,.djs-updating>*{pointer-events:none!important}.djs-updating .djs-context-pad,.djs-updating .djs-outline,.djs-updating .djs-bendpoint,.djs-multi-select .djs-bendpoint,.djs-multi-select .djs-segment-dragger,.connect-ok .djs-bendpoint,.connect-not-ok .djs-bendpoint,.drop-ok .djs-bendpoint,.drop-not-ok .djs-bendpoint{display:none!important}.djs-segment-dragger.djs-dragging,.djs-bendpoint.djs-dragging{display:block;opacity:1}.djs-tooltip-error{width:160px;padding:6px;background:var(--tooltip-error-background-color);border:solid 1px var(--tooltip-error-border-color);border-radius:2px;color:var(--tooltip-error-color);font-size:12px;line-height:16px;opacity:.75}.djs-tooltip-error:hover{opacity:1}.djs-search-container{position:absolute;top:20px;left:0;right:0;margin-left:auto;margin-right:auto;width:25%;min-width:300px;max-width:400px;z-index:10;font-size:1.05em;opacity:.9;background:var(--search-container-background-color);border:solid 1px var(--search-container-border-color);border-radius:2px;box-shadow:0 0 0 2px var(--search-container-box-shadow-color),0 0 0 1px var(--search-container-box-shadow-inset-color) inset}.djs-search-container:not(.open){display:none}.djs-search-input input{font-size:1.05em;width:100%;padding:6px 10px;border:1px solid var(--search-input-border-color);box-sizing:border-box}.djs-search-input input:focus{outline:none;border-color:var(--search-input-border-color)}.djs-search-results{position:relative;overflow-y:auto;max-height:200px}.djs-search-results:hover{cursor:pointer}.djs-search-result{width:100%;padding:6px 10px;background:#fff;border-bottom:solid 1px var(--search-result-border-color);border-radius:1px}.djs-search-highlight{color:var(--search-result-highlight-color)}.djs-search-result-primary{margin:0 0 10px}.djs-search-result-secondary{font-family:monospace;margin:0}.djs-search-result:hover,.djs-search-result-selected,.djs-search-result-selected:hover,.djs-search-overlay{background:var(--search-result-selected-color)}.djs-element-hidden,.djs-element-hidden .djs-hit,.djs-element-hidden .djs-outline,.djs-label-hidden .djs-label{display:none!important}.djs-element .djs-hit-stroke,.djs-element .djs-hit-click-stroke,.djs-element .djs-hit-all{cursor:move}@font-face{font-family:bpmn;src:url(data:application/vnd.ms-fontobject;base64,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AADoCwAAAAkAAOgMAADoDAAAAAoAAOgNAADoDQAAAAsAAOgOAADoDgAAAAwAAOgPAADoDwAAAA0AAOgRAADoEQAAAA4AAOgSAADoEgAAAA8AAOgTAADoEwAAABAAAOgUAADoFAAAABEAAOgVAADoFQAAABIAAOgWAADoFgAAABMAAOgXAADoFwAAABQAAOgYAADoGAAAABUAAOgZAADoGQAAABYAAOgaAADoGgAAABcAAOgbAADoGwAAABgAAOgcAADoHAAAABkAAOgdAADoHQAAABoAAOgeAADoHgAAABsAAOgfAADoHwAAABwAAOggAADoIAAAAB0AAOghAADoIQAAAB4AAOgiAADoIgAAAB8AAOgjAADoIwAAACAAAOgkAADoJAAAACEAAOglAADoJQAAACIAAOgmAADoJgAAACMAAOgnAADoJwAAACQAAOgoAADoKAAAACUAAOgpAADoKQAAACYAAOgqAADoKgAAACcAAOgrAADoKwAAACgAAOgsAADoLAAAACkAAOgtAADoLQAAACoAAOguAADoLgAAACsAAOgvAADoLwAAACwAAOgxAADoMQAAAC0AAOgyAADoMgAAAC4AAOgzAADoMwAAAC8AAOg0AADoNAAAADAAAOg1AADoNQAAADEAAOg2AADoNgAAADIAAOg3AADoNwAAADMAAOg4AADoOAAAADQAAOg5AADoOQAAADUAAOg6AADoOgAAADYAAOg7AADoOwAAADcAAOg8AADoPAAAADgAAOg9AADoPQAAADkAAOg+AADoPgAAADoAAOg/AADoPwAAADsAAOhAAADoQAAAADwAAOhBAADoQQAAAD0AAOhCAADoQgAAAD4AAOhDAADoQwAAAD8AAOhEAADoRAAAAEAAAOhFAADoRQAAAEEAAOhGAADoRgAAAEIAAOhHAADoRwAAAEMAAOhIAADoSAAAAEQAAOhJAADoSQAAAEUAAOhKAADoSgAAAEYAAOhLAADoSwAAAEcAAOhMAADoTAAAAEgAAOhNAADoTQAAAEkAAOhOAADoTgAAAEoAAOhPAADoTwAAAEsAAOhQAADoUAAAAEwAAOhRAADoUQAAAE0AAOhSAADoUgAAAE4AAOhTAADoUwAAAE8AAOhUAADoVAAAAFAAAOhVAADoVQAAAFEAAOhWAADoVgAAAFIAAOhXAADoVwAAAFMAAOhY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AgcCAwUCBAECAwwKAwQCBAEBBAMEBAkIBQcDDwIBBgUIAQEBBgECAQIBAgICCQECAgMECP2tBAgEAwICAgUGDAYBDAEGBwMBAwMBBwcDAQcHAQMBAwQIBAQMBAQEBAkEBAQFAgEBBAQDFQMECgcZAwoCAwMDAwMDAwIGAwIDAgMCCAGcBQQEAQcKHAsHEgQLBAcEBAcECAQQCAQDAgIBBAQDBAUMBQ0EBQQFCAUmBAkEBAQEBAQBBAMBAwEDBAQIBAkEAgIBAgYDBAX+RAQFBAYCAgECAwMFBAEEDQkBDQEEBQUEAQQFBQoFGQEEARQGBQUFCwoJBQQEAwQBAgMDBAcTBQQFBQQFBQQlHggEBAkMAw0CEgUEBQMBFAQECQgWLAUFBAUFBQQFGwQGBAEBAgMDBAQECQMGBQsFBQUGFAEeBQoFBQQBBAEEBRwNBAEEBQMCAQICAwQIAfr+yAE4MVo+urp9AfIBAQEBBwICBAMEBAQJBAUGAwIJAgEBAQEBAQIFAQIDAwgEBQQJAwMDBwEBAQFTAQICBAcJCQoBCQcGBwMEAwQDBAcIBxQEDQQEIAMDAgICAgMDCAkFBgUFBAEEAQQFHA0EAQgEAQQEBAgBAwEDAQMECAMBAwQDAQYEBwgBBAQBAwQDAQMMAwEDAQMBCAQEBAEEBAQBBA0XBQUEAQQBCQUKBQwEBQQEAwQBAgUHDB4IBAkEFAcIBwQDBAMEAwcGBAMHBQQECQQEAwQBAgIFDAUJBAMGAgEBAQEBAgIHAgIDAgICAQIDAwgFCQgDBQIBAgECAQICAgkCAQEBJwIDBQIEAQIPAwIBAgkMCQEJBAMDAQMDAQMLBwcJCQQDBAQBAQQDDAMEBgMDAgMDAwMDAwIDAwIDAgMCAwIDBAMWAwMICQkHAwQ7AQIDAwQNBQsCAwMDAwMDAgMDCiMDBwMHBA4LAwcDCAMDAgEBAwIECAkEAgQJBAQEBAQFAwEDAQMEAQMQBAMBAwgDAQoBAwMBAwMBAwMBBgQJAQMCAwOpAQQEAwQIBAQJBQQJDQQbBQ0JBAQJBAEEIgQFAQQEAwMCAQICAwQICQUEEgQLBAcEBAcECAQeBAgEBwQEBwQECQQEBAMELQEECAQEBAQeBQoFBQUFCQUnBQQFCQoEMgQFBAgEBgICBggKBRkBBAEUBgUFBQsGJgUGBQsGCwYWBgkI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AwYEBQkEBAQDBAIBEgECAQIBAgICBwIBAQEBAgcDBQSUBQQGAgIBAgMDBQQBBA0JAQ0BBAUFBAEEBQUKBRkBBAEUBgUFBQsKCQUEBAMEAQIDAwQHEwUEBQUEBQUEJR4IBAQJDAMNDQIaBAUDARQEBAkIFiwFBQQFBQUEBRsEBgQBAQIDAwQEBAkDBgULBQUFBhQBHgUKBQUEAQQBBAUcDQQBBAUDAgECAgMECAQCNAFLOzmAWR4VFW1APnEaFScBIj1JTD8oBxo4TVEhJSwyEiM2AQ8RAwMBBhkiRAjtAQICBQwFCQQDBgIBAQEBAQICBwICAwICAgECAwMIBQkIAwUCAQIBAgECAgIJAgEBAScBAQMFAgQBAg8DAgECCQwJAQkEAwMBAwMBAwsHBwkJBAMEBAEBBAMMAwQGAwMCAwMDAwMDAgMDAgMCAwIDAgMEAxYDAwgJCQcDBDwBAQMDBA0FCwIDAwMDAwMCAwMKIwMHAwcEDgsDBwMIAwMCAQEDAgQICQQCBAkEBAQEBAUDAQMBAwQBAxAEAwEDCAMBCgEDAwEDAwEDAwEGBAkBAwIDAwKrAQQEAwQIBAQJBQQJDQQbBQ0JBAQJBAEEIgQFAQQEAwMCAQICAwQICQUEEgQLBAcEBAcECAQeBAgEBwQEBwQECQQEBAMEAXcBAgMDCAcEBwQaAwsLBwYEAwcUDwMHAQgFBAUIAwMCAgICBwEDFQEDCwEHEAQEDAQEBAQEBAkEJgUFCAQEAwShAgIDAwQJCQkGAQwBBgwGBQMDAgEEAQQBAgUEAgIBAQEEAQEBBgEBAQIBAQIDBwUEBQQIAwMJAgEGAxADBgMCAwIDAgMCAwYCAwMDAwMHA00BAgEDBgwDAwUDAgEBAQQDAwQJBQQIAwMCAQEBAQIJAgICAQIBAgEBAQICAgEBAQQBAQEFBAMFBAUICAMCAQLOAQEBAQcCAgQDBAQECQQFBgMCCQIBAQEBAQECBQECAwMIBAUECQMDAwcBAQEBUwECAgQHCQkKAQkHBgcDBAMEAwQHCAcUBA0EBCADAwICAgIDAwgJBQYFBQQBBAEEBRwNBAEIBAEEBAQIAQMBAwEDBAgDAQMEAwEGBAcCCgEEBAEDBAMBAwwDAQMBAwEIBAQEAQQEBAEEDRcFBQQBBAEJBQoFDAQFBAQDBAECBQcMHggECQQUBwgHBAMEAwQDBwYEAwcFBAQJBAQDBP7FAQQIBAQEBB4FCgUFBQUJBScFBAUJCgQyBAUECAQGAgIGCAoFGQEEARQGBQUFCwYmBQYFCwYLBhYGCQgDAwQQAQEGCAgJBhEFBgUGCwUhBgsFBQoGDwEEARkFCgEEBgIBAQMCBAgJCAEpBAUFBAUFCQUiBQkFBQUFCgUXBQQHAgL+sgEDBgQJBQQEBAIFAwQJAQYJAwIBAgMCAQIDBAMKAggBAgECAgMBAgMDCAUECQQDAwMEAgECAQIBAgEQEAYCAwUJAwoDAwECAgIPAgMFBgwUAQIBAgECAQIGAgYJBAUEBAQDAwIBAQECAgIBAgEIDAMEAwIBAgMCAQISAQkEAwUEBAQFCQQDAwQABgAA/5UDvgMkABsAMQBJAGAAbQB6AAABJgcGBwYHBhYXFhceATc+Ajc2Jy4BJyYnIyYHNhcWFxYXFgYHDgEmJy4CNzY3PgEXJgcGBwYHBhcWFxYXFjY3PgInJicuAQc2FxYXFgcWBgcGBwYmJyYnJjY3Njc2FxQVIxUzFTM1MzUjNQcyMxUzFSMVIzUjNTMB82xlYUFCCww3PD1TT7dWWIRPBgYeHHdPUFcDFRBjXVk6PAgJPT5AprRNUGQgFRc5OKJfW1VRMjUBBCQkQURSTZ4/QUUEHiA8MHxCUEpHKywBAUg+QEtHjDM2FBUUJyc9Shifn3qfn2ElJJ+fSaCgAyICNjVaXWxctklKKCgLHB13pFlbU1OGKCkFAjEDMTBTVmNYrEBDOxArLI+zVVlCRE4rAzAvT1JbU1BONjgQECUwMoyiSUwyKzAwAiwqRkpQS4ssLwcJMTM1RUKQOz0iK11OTnycnHycGJ1KnZ1KAAAHAAD/lQO+AyQAGwAxAEkAYABpAG0AcwAAASYHBgcGBwYWFxYXHgE3PgI3NicuAScmJyMmBzYXFhcWFxYGBw4BJicuAjc2Nz4BFyYHBgcGBwYXFhcWFxY2Nz4CJyYnLgEHNhcWFxYHFgYHBgcGJicmJyY2NzY3NhcGDwEXNRcRBycUFSclFBUnJicB82xlYUFCCww3PD1TT7dWWIRPBgYeHHdPUFcDFRBjXVk6PAgJPT5AprRNUGQgFRc5OKJfW1VRMjUBBCQkQURSTZ4/QUUEHiA8MHxCUEpHKywBAUg+QEtHjDM2FBUUJyc9SkU2bC/RysoYjwFZKkMiAyICNjVaXWxctklKKCgLHB13pFlbU1OGKCkFAjEDMTBTVmNYrEBDOxArLI+zVVlCRE4rAzAvT1JbU1BONjgQECUwMoyiSUwyKzAwAiwqRkpQS4ssLwcJMTM1RUKQOz0iK6MmTSGUj48BKI9gZGVkZWVlHjAXAAMAAP+aA7gDIgAQABQAQgAAASIHAQYUFwEWMjcBNjQnASYHCQI3Ig8EHwIPAh8EPwIfAj8ELwI/Ai8EDwInNScB9A8L/mEKCgGfCx8KAZ8LC/5hCw8Bhv56/nr0AgIEDwMBAQOJiQMBAQMPBAQFBImJBAUEBA8DAQEDiYkDAQEDDwQEBQSJiQQDIgv+YQofC/5hCgoBnwsfCgGfCz7+ev56AYatAQMPBAQFBImJBAUEBA8DAQEDiYkDAQEDDwQEBQSJiQQFBAQPAwEBA4mJAQIAAAAAAwAA/5YDvwMiABsAMgBLAAABIgcGBwYHBhYXFhceATc2Nz4BNzYnLgEnJicmBzYXFhcWFxYGBwYHBiYnLgE2NzY3PgEHBgcXBgcWFzcXNjcnJic3NjcmJwYPASYnAetsY2A/QAoLOT0+VE60U1dAQ1AIBx0beVFTWQ0PT0hHKywBA0A5PEhGkDc5MhAmKEAjUkcdOnA4NiosbnE6HiYyGSUxGCosGTAlGTIDIjc2W11rXLdHSicmCxwdOzmhWFtTVYspKgQBjgIpKEVHT0mJLjEMDikwMYeXPkEjFRZuHjpxNjgsKm5wOh0mMhklMBksKhgxJRkyAAAKAAD/kgPBAyMAHAA3AFEAagBvAHMAdwB7AH8AgwAAASIjIgcGBwYHBhYXFhceATc2Nz4BNzYuAScmJyYHMjM2FxYXFhcWBgcGBw4BJyYnJicmNzY3PgEXIiMiBwYHBgcGFhcWFxY2NzY3PgEnJicuAQcyMzIXFhcWFxYGBwYHBi4BJy4BNzY3PgEHFREhEQUzESMTFTM1BxUzNQcVMzUHFTM1AfMBAmNeW0BCFhUeLi9ISLJZXEtKaBUWG15ISVY4OwUFXFZUOToPECo0NUpMtFNVOz0dHAkKLjW4bgUFVE9LMjQJCzY4OkxInUVGLTAeFBU2M45PAwNLRUMrLAYINzU4RUSPdiAiAh8hOihjZAEu/ur+/hrKysrKysrKAyIuLU5QYVazTU4zNSoODzAukVZXrZs2NxQOMQEtK0xNW1KoREYnKgogIUA/V1RZW0pXaSsrKkhJVE+dOzwbGw0lJj9Ao09SOzpDMCcmQEFLR4syNBIUG1U+QJZCRSsfInkM/pABfBj+tAEnGRlKGBhVGBhNGBgAAAAQAAD/owO4AyIACwAXAFoAsgEIAUsBoAH9AkgCigLOAxEDaAO1BAEESwAAARUjFTMVMzUzNSM1BzMVMxUjFSM1IzUzEzEjByMHIxUjByMPBxUfBDM3MzczNzM3MzczFzMXMxczFzMXMz8FNS8FIycjNSMnIycXIw8FHxk/BDUvAyMnNSc1JyMvASMvATUnIyc1LwEjLwE1JzUnIzUnIycjLwE1LwEjJzUnIy8BBSMPAhUHIw8BFQ8CFQcVBxUPASMPARUPAhUPASMPASMPARUHFQ8BIw8CFR8FMz8ZNS8EITEjFSMPAxUfBDM3MzczFzMXMxczFzMXMx8GMz8FNS8CIy8JIycjJyMnIzUHIw8CIw8BFQcjDwEjBxUHIwcjByMHFQ8DIxUPARUPAiMPAR8FMz8dMz8DLwMFDwUfFhUfBDM/BDUnNS8INSc1LwQjJyMnNS8BIyc1JzUvATUjLwE1JyMnNS8CNS8DBSMPBRUjFQcVBxUjFQcVFxUzFRcVFxUXFR8JMz8ENS8CNSc1JzUnNSc1JzU3NTc1NzU3NTc1LwQFIw8DFQcXFQcVBxUHFQcVDwgVHwMzPwY1NzU/BzU3NTM1NzU3NSc1LwMFIw8DFRcVFxUXFRcVHwcVFxUfAjMVHwMzPwQ1Lws1JzUnNSc1JzUvBAUjDwUVBxUPDxUfBT8CNT8BNTczNzU/AjM/CjU3LwQFDwUfAhUXFRczFzMfAjMfATMVFxUXFRczHwEzFzMXFRcVHwEVHwIVHwIzPwU1LxwFIw8IIwcjByMHIwcjByMPBBUfBTM3MzczNzM3Mz8LMzczPwE1PwE1NzU/BDUvBAUPBRUfBTMfARUXMxczHwEVHwEzFxUfBDMXMx8GMz8FNS8WISMPFxUfBjM/CDM/BDU3MzczNzU/ATU/ATM/BDUvBAGufX2MfX11Xn19Xn19LwsGCwUMBQUGJgYKCAQCAwEBAgYECQQrBQkFBQUFCgUeBQoFBQUFCgQYCQUEAwQEAQEEAwQHJgUGBQsGCwb0BQQFAwQEAgIIAgwHCAcEAwQDBAMHBgcPAgkCAxEEAwQJCQQEAwQBAgMCAQIDAgECEgEJBAYBAwQDAQMIBAMBAwEDAQgEBAQBBAgBBAr98QUECAUEAQQEBAwEBAQIAwEDBAMEAwQJAQ8CAQIDAwUCAQQDAwECAwMIBAkFBwUFEAYCBgIPBwYHAwQDBAMEBwgEBAcCAQICAwQIAQQSDQoFBwYCAgMICAQBCAQmBAgDBAQEBwQIAxoDCAcHAwkFBAQEAwQBBAMHAQMFBAQEBAQJBCYECQUEBAUNrQQIBgcBAwgDARUDAQMDAQkBDAEJCQMDAgECAwMIBAEEAgICAwMIBAUECQMIAwIEAwIDAgMCAwIDAwMCAwMDAwMDAwMGAyMCAwQEAgIFBAgBhAUIBAMDAwEGAwMCAwIDAgMCAwcWAQQBBAEGAwICBAQDBAUJBAQEAwQBAgICAQIBAgECAgIBAQEIAQEBAgIEAQIHAwIBAgMCAQIGAwkDAwME/cMFBAgDAwICAQIBAQEBAQECAQgCAQEBAwMEBAQFCQQDAwQBAgUDAgEBAQEBAQIBAQIDAwkC7gUECAYCAQEBAQECCAIBAgIEARYBAQQDDAUJBAYFBAMKAggBAgECAgIHAQEBAQEEAwQI/KcFCAgEAgEBAQIGAgICAQQBBgIKAwQBAwYEBQkEBAQDBAIBEgECAQIBAgICBwIBAQEBAgcDBQLwBAUEBAMEAgIHAgMFAgQBAgMMCgMEAgQBAQQDBAQJCAUHAw8CAQYFCAEBAQYBAgECAQICAgkBAgIDBAj9rQQIBAMCAgIFBgwGAQwBBgcDAQMDAQcHAwEHBwEDAQMECAQEDAQEBAQJBAQEBQIBAQQEAxUDBAoHGQMKAgMDAwMDAwMCBgMCAwIDAggBnAUEBAEHChwLBxIECwQHBAQHBAgEEAgEAwICAQQEAwQFDAUNBAUEBQgFJgQJBAQEBAQEAQQDAQMBAwQECAQJBAICAQIGAwQF/kQEBQQGAgIBAgMDBQQBBA0JAQ0BBAUFBAEEBQUKBRkBBAEUBgUFBQsKCQUEBAMEAQIDAwQHEwUEBQUEBQUEJR4IBAQJDAMNAhIFBAUDARQEBAkIFiwFBQQFBQUEBRsEBgQBAQIDAwQEBAkDBgULBQUFBhQBHgUKBQUEAQQBBAUcDQQBBAUDAgECAgMECAIhfYx9fYx9F31efX5dAZUBAQEBBwICBAMEBAQJBAUGAwIJAgEBAQEBAQIFAQIDAwgEBQQJAwMDBwEBAQFTAQICBAcJCQoBCQcGBwMEAwQDBAcIBxQEDQQEIAMDAgICAgMDCAkFBgUFBAEEAQQFHA0EAQgEAQQEBAgBAwEDAQMECAMBAwQDAQYEBwgBBAQBAwQDAQMMAwEDAQMBCAQEBAEEBAQBBA0XBQUEAQQBCQUKBQwEBQQEAwQBAgUHDB4IBAkEFAcIBwQDBAMEAwcGBAMHBQQECQQEAwQBAgIFDAUJBAMGAgEBAQEBAgIHAgIDAgICAQIDAwgFCQgDBQIBAgECAQICAgkCAQEBJwIDBQIEAQIPAwIBAgkMCQEJBAMDAQMDAQMLBwcJCQQDBAQBAQQDDAMEBgMDAgMDAwMDAwIDAwIDAgMCAwIDBAMWAwMICQkHAwQ7AQIDAwQNBQsCAwMDAwMDAgMDCiMDBwMHBA4LAwcDCAMDAgEBAwIECAkEAgQJBAQEBAQFAwEDAQMEAQMQBAMBAwgDAQoBAwMBAwMBAwMBBgQJAQMCAwOpAQQEAwQIBAQJBQQJDQQbBQ0JBAQJBAEEIgQFAQQEAwMCAQICAwQICQUEEgQLBAcEBAcECAQeBAgEBwQEBwQECQQEBAMELQEECAQEBAQeBQoFBQUFCQUnBQQFCQoEMgQFBAgEBgICBggKBRkBBAEUBgUFBQsGJgUGBQsGCwYWBgkIAwMEEAIGCAgJBhEFBgUGCwUhBgsFBQoGDwEEARkFCgEEBgIBAQMCBAgJCAEpBAUFBAUFCQUiBQkFBQUFCgUXBQQHAgI5AQIDAwgHBAcEGgMLCwcGBAMHFA8DBwEIBQQFCAMDAgICAgcBAxUBAwsBBxAEBAwEBAQEBAQJBCYFBQgEBAMEoAEEAwMECQkJBgEMAQYMBgUDAwIBBAEEAQIFBAICAQEBBAEBAQYBAQECAQECAwcFBAUECAMDCQIBBgMQAwYDAgMCAwIDAgMGAgMDAwMDB0oBAgEDBgwDAwUDAgEBAQQDAwQJBQQIAwMCAQEBAQIJAgICAQIBAgEBAQICAgEBAQQBAQEFBAMFBAUICAMCAScBAQMGBAkFBAQEAgUDBAkBBgkDAgECAwIBAgMEAwoCCAECAQICAwECAwMIBQQJBAMDAwQCAQIBAgECARAQBgIDBQkDCgECAgIPAgMFBgwUAQIBAgECAQIGAgYJBAUEBAQDAwIBAQECAgIBAgEIDAMEAwIBAgMCAQISAQkEAwUEBAQFCQQDAwQAAAAACAAA/5oDuAMiABQAKQAuADIANgA6AD4AQgAAASIHBgcGFBcWFxYyNzY3NjQnJicmBzIXFhcWFAcGBwYiJyYnJjQ3Njc2BxURIREFMxEjExUzNQcVMzUHFTM1BxUzNQH0empmPD4+PGZq9GpmPD4+PGZqem5eWzU3NzVbXtxeWzU3NzVbXikBLv7q/v4aysrKysrKygMiPjxmavRqZjw+PjxmavRqZjw+MTc1W17cXls1Nzc1W17cXls1N9UM/pABfBj+tAEnGRlKGBhVGBhNGBgAAAAKAAD/ogO4AyAADwAfADEAbADVAV4BuwICAkwCuAAAASYGBwYeAjc+ATc2JicmBzYeAg4DLgI2Nz4BFwYPAQ4BFhcWPgE7ATUjNjcmAysBByMHIwcVDwUVHwUzPwMzNzM3MzczFzMXMxczHwEzPwM1LwQjNSMnIycXDwYVHwozHwYVHwIzHw0zPwQ1LwE1JyMvBiMvATUjLwsjLwEjLwcjNSc1LwQjBQ8BIw8EFQ8EFQcjBxUPAyMVBxUHIxUPBBUHIw8BFQ8CFQ8CIw8DFQ8DFQcVDwoVBxUfBD8EMz8ENT8mNS8DAQ8FFRcVBxUHFQcVBxUHFQcVBxUHFQcVBxUHFQ8HFR8EPwUzPwEzPwE1PwEzNzM3NTc1MzU3NTc1NzU3NTc1NzU3NTc1JzUvBAUPBRUXFRcVFzMfBTMfARUXFRcVFxUzFxUXFR8EPwQ1Lw01JzUnNSc1LwMBDxcfBD8EMz8DMzczNzM3MzczNzU3Mzc1NzM/AjM3MzU/AzUvBAUPBRUfAxUfATMfAjMfAhUfATMfARUfATMXMxczFzMfAjMXMxcVMx8HMxcVFzMVMxczPwQ1LwQjJyMnIycjLwojLwQjLwUjAfRAbxcZGFZ+Oj1RAQREOSsyJkgzEw4rQVBLOBoJFhhQYwkUHQkJBAgECQ0EWVkSJg47Bw0GDQ0HJw0OBAMDBAECAwMJBAUGDAYXBgsGBgYGKQYGBgYGBR8EBQwDAwICBgMKJwYHBg0H6QUEBAMDAQICAgYCAgMGBQQDCAEOAggCBgIEAQICAQIDAgMFBAMEAwoFBgMJBAkEBAMEAgQGAQQDAgMCAwIBAggBBQMEAgQCAgUCBwICAQIJAQICAwcDAgMCAQIDAgYCCgX98wUHAQIDAgMCAwIDAgMEAQICAwIEAQQEAQICAgICAgECAgIEAgIEAQEBAgMCAgoBAgICAQQBAgECAQIBAgIBBAQDDgQIBAMBAQIDAQICAgECAQIBAgECAgMCAQIIAgECAgIBBAIEAQYCCgIGAwoDBgMFAwIBBAYIBQKyBAUDBgIBAQEBAQEBAQIBAwUDBQMEAwIGAwECAwYECQkEBAMCAQEDAgECAwMCAQUBDAMBAgEBAQEBAQEBBAMEBAj8pgQFAwQEAQEDAgEDAgEEAQoBBAMCAwIBAgMBAgQHCQkEBAMEAgQCAwIHBAEGAQIBAggBAQEBBQgIArEEBAkEBQoEDwUFCw8GBQsFIQYLEAgEBQICBAMEDQkGBhQFARIGBwUBBQEFAQUBHAELBQEFBQEFCw8BBAEDAwIBBAMEBAj93gQEBAMCAgECAwQNAgECAwIBAgMDCwIBCAMDBQECAQIBAgECAwMBAgECAQIEAwYDDQMdAgMNBAMNCQUIBQIBBAMEBAMECAMUAhEDCQURAgYFAwUFBQIBDwIFAgIBBAMEEQQEBQI0AUs7OYBZHhUVbUA+cRoVJwEiPUlMPygHGjhNUSElLDISIzYBDxEDAwEGGSJECAFIAQIGAQIEAgMECAkFBAQDBAECAgIEAgEBAQEBBQEGBAMJBQgIAgQGAQEBTwEBAwMEBAQFCQQGAQIBBgMEAggOAwgDBgMEAQICAwQDBAMHBwMIAxIKCAIEAgIDAwgKBwcBDAgEBAQEBAQECwEHAwYCBgIDBQMHAwIDCQMCAgcCAgICAQEBAgIEAgUMAQQCAgICAgECAgICAgEEAgECAgMEAQQBBAECAwIDAgECAwIBAgYCAQIGAwMCBQIBAg8DAgECAQIDBgMDAwMDAwMDAQQJBQgDAwMBBAMDBAYFAwIFAQIDAgMCAwIDAwIFAgMCDAIDAgMCAwQDBAMGAwoDBgIKAQYCBQQEBAkJBgQB/sYBAgIIBAQEBDMDCQMGAgYDAwMDAwMGAgMDCQIOAwgBDQULBQYKBwQFCQQGAgICAgMDAwMGBgYFAQUHDyYDCgMDBwMDBAMDBAMDBAMHAw4DLAUJCAQCAwITAQIDAwgEGwYHEwcNEwYHDQYfDQUBBQEFAQUBBQEFAQEEBAQCAgIDAwkJCAYGBQYQCwYRBQYGBS8GBQYGDAYHBQcGAv6yAQIGBAQGBAkEAwUJAgME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BCYECQUEBAUNrQQIBgcBAwgDARUDAQMDAQkBDAEJCQMDAgECAwMIBAEEAgICAwMIBAUECQMIAwIEAwIDAgMCAwIDAwMCAwMDAwMDAwMGAyMCAwQEAgIFBAgBhAUIBAMDAwEGAwMCAwIDAgMCAwcWAQQBBAEGAwICBAQDBAUJBAQEAwQBAgICAQIBAgECAgIBAQEIAQEBAgIEAQIHAwIBAgMCAQIGAwkDAwME/cMFBAgDAwICAQIBAQEBAQECAQgCAQEBAwMEBAQFCQQDAwQBAgUDAgEBAQEBAQIBAQIDAwkC7gUECAYCAQEBAQECCAIBAgIEARYBAQQDDAUJBAYFBAMKAggBAgECAgIHAQEBAQEEAwQI/KcFCAgEAgEBAQIGAgICAQQBBgIKAwQBAwYEBQkEBAQDBAIBEgECAQIBAgICBwIBAQEBAgcDBQLwBAUEBAMEAgIHAgMFAgQBAgMMCgMEAgQBAQQDBAQJCAUHAw8CAQYFCAEBAQYBAgECAQICAgkBAgIDBAj9rQQIBAMCAgIFBgwGAQwBBgcDAQMDAQcHAwEHBwEDAQMECAQEDAQEBAQJBAQEBQIBAQQEAxUDBAoHGQMKAgMDAwMDAwMCBgMCAwIDAggBnAUEBAEHChwLBxIECwQHBAQHBAgEEAgEAwICAQQEAwQFDAUNBAUEBQgFJgQJBAQEBAQEAQQDAQMBAwQECAQJBAICAQIGAwQF/kQEBQQGAgIBAgMDBQQBBA0JAQ0BBAUFBAEEBQUKBRkBBAEUBgUFBQsKCQUEBAMEAQIDAwQHEwUEBQUEBQUEJR4IBAQJDAMNAhIFBAUDARQEBAkIFiwFBQQFBQUEBRsEBgQBAQIDAwQEBAkDBgULBQUFBhQBHgUKBQUEAQQBBAUcDQQBBAUDAgECAgMECAIcDP6QAXwY/rQBJxkZShgYVRgYTRgYAi8BAQEBBwICBAMEBAQJBAUGAwIJAgEBAQEBAQIFAQIDAwgEBQQJAwMDBwEBAQFTAQICBAcJCQoBCQcGBwMEAwQDBAcIBxQEDQQEIAMDAgICAgMDCAkFBgUFBAEEAQQFHA0EAQgEAQQEBAgBAwEDAQMECAMBAwQDAQYEBwgBBAQBAwQDAQMMAwEDAQMBCAQEBAEEBAQBBA0XBQUEAQQBCQUKBQwEBQQEAwQBAgUHDB4IBAkEFAcIBwQDBAMEAwcG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dmVudC1jYXRjaC1jb25kaXRpb247aW50ZXJtZWRpYXRlLWV2ZW50LWNhdGNoLW5vbi1pbnRlcnJ1cHRpbmctcGFyYWxsZWwtbXVsdGlwbGUVc3RhcnQtZXZlbnQtY29uZGl0aW9uInN0YXJ0LWV2ZW50LW5vbi1pbnRlcnJ1cHRpbmctdGltZXIUc2VxdWVudGlhbC1taS1tYXJrZXIJdXNlci10YXNrDWJ1c2luZXNzLXJ1bGUSc3ViLXByb2Nlc3MtbWFya2VyHXN0YXJ0LWV2ZW50LXBhcmFsbGVsLW11bHRpcGxlEXN0YXJ0LWV2ZW50LWVycm9yH2ludGVybWVkaWF0ZS1ldmVudC1jYXRjaC1zaWduYWweaW50ZXJtZWRpYXRlLWV2ZW50LWNhdGNoLWVycm9yFmVuZC1ldmVudC1jb21wZW5zYXRpb24Uc3VicHJvY2Vzcy1jb2xsYXBzZWQTc3VicHJvY2Vzcy1leHBhbmRlZAR0YXNrD2VuZC1ldmVudC1lcnJvciNpbnRlcm1lZGlhdGUtZXZlbnQtY2F0Y2gtZXNjYWxhdGlvbh5pbnRlcm1lZGlhdGUtZXZlbnQtY2F0Y2gtdGltZXIWc3RhcnQtZXZlbnQtZXNjYWxhdGlvbhJzdGFydC1ldmVudC1zaWduYWwSYnVzaW5lc3MtcnVsZS10YXNrBm1hbnVhbAdyZWNlaXZlDWNhbGwtYWN0aXZpdHkRc3RhcnQtZXZlbnQtdGltZXITc3RhcnQtZXZlbnQtbWVzc2FnZRdpbnRlcm1lZGlhdGUtZXZlbnQtbm9uZR1pbnRlcm1lZGlhdGUtZXZlbnQtY2F0Y2gtbGluaxRlbmQtZXZlbnQtZXNjYWxhdGlvbgdicG1uLWlvD2dhdGV3YXktY29tcGxleBJnYXRld2F5LWV2ZW50YmFzZWQMZ2F0ZXdheS1ub25lCmdhdGV3YXktb3ITZW5kLWV2ZW50LXRlcm1pbmF0ZRBlbmQtZXZlbnQtc2lnbmFsDmVuZC1ldmVudC1ub25lEmVuZC1ldmVudC1tdWx0aXBsZRFlbmQtZXZlbnQtbWVzc2FnZQ5lbmQtZXZlbnQtbGluayBpbnRlcm1lZGlhdGUtZXZlbnQtY2F0Y2gtbWVzc2FnZSVpbnRlcm1lZGlhdGUtZXZlbnQtdGhyb3ctY29tcGVuc2F0aW9uFHN0YXJ0LWV2ZW50LW11bHRpcGxlBnNjcmlwdAttYW51YWwtdGFzawRzZW5kB3NlcnZpY2UMcmVjZWl2ZS10YXNrBHVzZXIQc3RhcnQtZXZlbnQtbm9uZSNpbnRlcm1lZGlhdGUtZXZlbnQtdGhyb3ctZXNjYWxhdGlvbiFpbnRlcm1lZGlhdGUtZXZlbnQtY2F0Y2gtbXVsdGlwbGU0aW50ZXJtZWRpYXRlLWV2ZW50LWNhdGNoLW5vbi1pbnRlcnJ1cHRpbmctZXNjYWxhdGlvbh1pbnRlcm1lZGlhdGUtZXZlbnQtdGhyb3ctbGluayZzdGFydC1ldmVudC1ub24taW50ZXJydXB0aW5nLWNvbmRpdGlvbgtkYXRhLW9iamVjdAtzY3JpcHQtdGFzawlzZW5kLXRhc2sKZGF0YS1zdG9yZSdzdGFydC1ldmVudC1ub24taW50ZXJydXB0aW5nLWVzY2FsYXRpb24gaW50ZXJtZWRpYXRlLWV2ZW50LXRocm93LW1lc3NhZ2UyaW50ZXJtZWRpYXRlLWV2ZW50LWNhdGNoLW5vbi1pbnRlcnJ1cHRpbmctbXVsdGlwbGUwaW50ZXJtZWRpYXRlLWV2ZW50LWNhdGNoLW5vbi1pbnRlcnJ1cHRpbmctc2lnbmFsIWludGVybWVkaWF0ZS1ldmVudC10aHJvdy1tdWx0aXBsZSRzdGFydC1ldmVudC1ub24taW50ZXJydXB0aW5nLW1lc3NhZ2UNYWQtaG9jLW1hcmtlcgxzZXJ2aWNlLXRhc2sJdGFzay1ub25lE2NvbXBlbnNhdGlvbi1tYXJrZXIlc3RhcnQtZXZlbnQtbm9uLWludGVycnVwdGluZy1tdWx0aXBsZR9pbnRlcm1lZGlhdGUtZXZlbnQtdGhyb3ctc2lnbmFsM2ludGVybWVkaWF0ZS1ldmVudC1jYXRjaC1ub24taW50ZXJydXB0aW5nLWNvbmRpdGlvbgtwYXJ0aWNpcGFudBlldmVudC1zdWJwcm9jZXNzLWV4cGFuZGVkEWxhbmUtaW5zZXJ0LWJlbG93CnNwYWNlLXRvb2wQY29ubmVjdGlvbi1tdWx0aQRsYW5lCmxhc3NvLXRvb2wRbGFuZS1pbnNlcnQtYWJvdmURbGFuZS1kaXZpZGUtdGhyZWUPbGFuZS1kaXZpZGUtdHdvCmRhdGEtaW5wdXQLZGF0YS1vdXRwdXQJaGFuZC10b29sBWdyb3VwD3RleHQtYW5ub3RhdGlvbgt0cmFuc2FjdGlvbgxzY3Jldy13cmVuY2gKY29ubmVjdGlvbhBjb25kaXRpb25hbC1mbG93DGRlZmF1bHQtZmxvdwAA);src:url(data:application/vnd.ms-fontobject;base64,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AADoCwAAAAkAAOgMAADoDAAAAAoAAOgNAADoDQAAAAsAAOgOAADoDgAAAAwAAOgPAADoDwAAAA0AAOgRAADoEQAAAA4AAOgSAADoEgAAAA8AAOgTAADoEwAAABAAAOgUAADoFAAAABEAAOgVAADoFQAAABIAAOgWAADoFgAAABMAAOgXAADoFwAAABQAAOgYAADoGAAAABUAAOgZAADoGQAAABYAAOgaAADoGgAAABcAAOgbAADoGwAAABgAAOgcAADoHAAAABkAAOgdAADoHQAAABoAAOgeAADoHgAAABsAAOgfAADoHwAAABwAAOggAADoIAAAAB0AAOghAADoIQAAAB4AAOgiAADoIgAAAB8AAOgjAADoIwAAACAAAOgkAADoJAAAACEAAOglAADoJQAAACIAAOgmAADoJgAAACMAAOgnAADoJwAAACQAAOgoAADoKAAAACUAAOgpAADoKQAAACYAAOgqAADoKgAAACcAAOgrAADoKwAAACgAAOgsAADoLAAAACkAAOgtAADoLQAAACoAAOguAADoLgAAACsAAOgvAADoLwAAACwAAOgxAADoMQAAAC0AAOgyAADoMgAAAC4AAOgzAADoMwAAAC8AAOg0AADoNAAAADAAAOg1AADoNQAAADEAAOg2AADoNgAAADIAAOg3AADoNwAAADMAAOg4AADoOAAAADQAAOg5AADoOQAAADUAAOg6AADoOgAAADYAAOg7AADoOwAAADcAAOg8AADoPAAAADgAAOg9AADoPQAAADkAAOg+AADoPgAAADoAAOg/AADoPwAAADsAAOhAAADoQAAAADwAAOhBAADoQQAAAD0AAOhCAADoQgAAAD4AAOhDAADoQwAAAD8AAOhEAADoRAAAAEAAAOhFAADoRQAAAEEAAOhGAADoRgAAAEIAAOhHAADoRwAAAEMAAOhIAADoSAAAAEQAAOhJAADoSQAAAEUAAOhKAADoSgAAAEYAAOhLAADoSwAAAEcAAOhMAADoTAAAAEgAAOhNAADoTQAAAEkAAOhOAADoTgAAAEoAAOhPAADoTwAAAEsAAOhQAADoUAAAAEwAAOhRAADoUQAAAE0AAOhSAADoUgAAAE4AAOhTAADoUwAAAE8AAOhUAADoVAAAAFAAAOhVAADoVQAAAFEAAOhWAADoVgAAAFIAAOhXAADoVwAAAFMAAOhY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AgcCAwUCBAECAwwKAwQCBAEBBAMEBAkIBQcDDwIBBgUIAQEBBgECAQIBAgICCQECAgMECP2tBAgEAwICAgUGDAYBDAEGBwMBAwMBBwcDAQcHAQMBAwQIBAQMBAQEBAkEBAQFAgEBBAQDFQMECgcZAwoCAwMDAwMDAwIGAwIDAgMCCAGcBQQEAQcKHAsHEgQLBAcEBAcECAQQCAQDAgIBBAQDBAUMBQ0EBQQFCAUmBAkEBAQEBAQBBAMBAwEDBAQIBAkEAgIBAgYDBAX+RAQFBAYCAgECAwMFBAEEDQkBDQEEBQUEAQQFBQoFGQEEARQGBQUFCwoJBQQEAwQBAgMDBAcTBQQFBQQFBQQlHggEBAkMAw0CEgUEBQMBFAQECQgWLAUFBAUFBQQFGwQGBAEBAgMDBAQECQMGBQsFBQUGFAEeBQoFBQQBBAEEBRwNBAEEBQMCAQICAwQIAfr+yAE4MVo+urp9AfIBAQEBBwICBAMEBAQJBAUGAwIJAgEBAQEBAQIFAQIDAwgEBQQJAwMDBwEBAQFTAQICBAcJCQoBCQcGBwMEAwQDBAcIBxQEDQQEIAMDAgICAgMDCAkFBgUFBAEEAQQFHA0EAQgEAQQEBAgBAwEDAQMECAMBAwQDAQYEBwgBBAQBAwQDAQMMAwEDAQMBCAQEBAEEBAQBBA0XBQUEAQQBCQUKBQwEBQQEAwQBAgUHDB4IBAkEFAcIBwQDBAMEAwcGBAMHBQQECQQEAwQBAgIFDAUJBAMGAgEBAQEBAgIHAgIDAgICAQIDAwgFCQgDBQIBAgECAQICAgkCAQEBJwIDBQIEAQIPAwIBAgkMCQEJBAMDAQMDAQMLBwcJCQQDBAQBAQQDDAMEBgMDAgMDAwMDAwIDAwIDAgMCAwIDBAMWAwMICQkHAwQ7AQIDAwQNBQsCAwMDAwMDAgMDCiMDBwMHBA4LAwcDCAMDAgEBAwIECAkEAgQJBAQEBAQFAwEDAQMEAQMQBAMBAwgDAQoBAwMBAwMBAwMBBgQJAQMCAwOpAQQEAwQIBAQJBQQJDQQbBQ0JBAQJBAEEIgQFAQQEAwMCAQICAwQICQUEEgQLBAcEBAcECAQeBAgEBwQEBwQECQQEBAMELQEECAQEBAQeBQoFBQUFCQUnBQQFCQoEMgQFBAgEBgICBggKBRkBBAEUBgUFBQsGJgUGBQsGCwYWBgkI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AwYEBQkEBAQDBAIBEgECAQIBAgICBwIBAQEBAgcDBQSUBQQGAgIBAgMDBQQBBA0JAQ0BBAUFBAEEBQUKBRkBBAEUBgUFBQsKCQUEBAMEAQIDAwQHEwUEBQUEBQUEJR4IBAQJDAMNDQIaBAUDARQEBAkIFiwFBQQFBQUEBRsEBgQBAQIDAwQEBAkDBgULBQUFBhQBHgUKBQUEAQQBBAUcDQQBBAUDAgECAgMECAQCNAFLOzmAWR4VFW1APnEaFScBIj1JTD8oBxo4TVEhJSwyEiM2AQ8RAwMBBhkiRAjtAQICBQwFCQQDBgIBAQEBAQICBwICAwICAgECAwMIBQkIAwUCAQIBAgECAgIJAgEBAScBAQMFAgQBAg8DAgECCQwJAQkEAwMBAwMBAwsHBwkJBAMEBAEBBAMMAwQGAwMCAwMDAwMDAgMDAgMCAwIDAgMEAxYDAwgJCQcDBDwBAQMDBA0FCwIDAwMDAwMCAwMKIwMHAwcEDgsDBwMIAwMCAQEDAgQICQQCBAkEBAQEBAUDAQMBAwQBAxAEAwEDCAMBCgEDAwEDAwEDAwEGBAkBAwIDAwKrAQQEAwQIBAQJBQQJDQQbBQ0JBAQJBAEEIgQFAQQEAwMCAQICAwQICQUEEgQLBAcEBAcECAQeBAgEBwQEBwQECQQEBAMEAXcBAgMDCAcEBwQaAwsLBwYEAwcUDwMHAQgFBAUIAwMCAgICBwEDFQEDCwEHEAQEDAQEBAQEBAkEJgUFCAQEAwShAgIDAwQJCQkGAQwBBgwGBQMDAgEEAQQBAgUEAgIBAQEEAQEBBgEBAQIBAQIDBwUEBQQIAwMJAgEGAxADBgMCAwIDAgMCAwYCAwMDAwMHA00BAgEDBgwDAwUDAgEBAQQDAwQJBQQIAwMCAQEBAQIJAgICAQIBAgEBAQICAgEBAQQBAQEFBAMFBAUICAMCAQLOAQEBAQcCAgQDBAQECQQFBgMCCQIBAQEBAQECBQECAwMIBAUECQMDAwcBAQEBUwECAgQHCQkKAQkHBgcDBAMEAwQHCAcUBA0EBCADAwICAgIDAwgJBQYFBQQBBAEEBRwNBAEIBAEEBAQIAQMBAwEDBAgDAQMEAwEGBAcCCgEEBAEDBAMBAwwDAQMBAwEIBAQEAQQEBAEEDRcFBQQBBAEJBQoFDAQFBAQDBAECBQcMHggECQQUBwgHBAME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AQIDAgECEgEJBAYBAwQDAQMIBAMBAwEDAQgEBAQBBAgBBAr98QUECAUEAQQEBAwEBAQIAwEDBAMEAwQJAQ8CAQIDAwUCAQQDAwECAwMIBAkFBwUFEAYCBgIPBwYHAwQDBAMEBwgEBAcCAQICAwQIAQQSDQoFBwYCAgMICAQBCAQmBAgDBAQEBwQIAxoDCAcHAwkFBAQEAwQBBAMHAQMFBAQEBAQJBCYECQUEBAUNrQQIBgcBAwgDARUDAQMDAQkBDAEJCQMDAgECAwMIBAEEAgICAwMIBAUECQMIAwIEAwIDAgMCAwIDAwMCAwMDAwMDAwMGAyMCAwQEAgIFBAgBhAUIBAMDAwEGAwMCAwIDAgMCAwcWAQQBBAEGAwICBAQDBAUJBAQEAwQBAgICAQIBAgECAgIBAQEIAQEBAgIEAQIHAwIBAgMCAQIGAwkDAwME/cMFBAgDAwICAQIBAQEBAQECAQgCAQEBAwMEBAQFCQQDAwQBAgUDAgEBAQEBAQIBAQIDAwkC7gUECAYCAQEBAQECCAIBAgIEARYBAQQDDAUJBAYFBAMKAggBAgECAgIHAQEBAQEEAwQI/KcFCAgEAgEBAQIGAgICAQQBBgIKAwQBAwYEBQkEBAQDBAIBEgECAQIBAgICBwIBAQEBAgcDBQLwBAUEBAMEAgIHAgMFAgQBAgMMCgMEAgQBAQQDBAQJCAUHAw8CAQYFCAEBAQYBAgECAQICAgkBAgIDBAj9rQQIBAMCAgIFBgwGAQwBBgcDAQMDAQcHAwEHBwEDAQMECAQEDAQEBAQJBAQEBQIBAQQEAxUDBAoHGQMKAgMDAwMDAwMCBgMCAwIDAggBnAUEBAEHChwLBxIECwQHBAQHBAgEEAgEAwICAQQEAwQFDAUNBAUEBQgFJgQJBAQEBAQEAQQDAQMBAwQECAQJBAICAQIGAwQF/kQEBQQGAgIBAgMDBQQBBA0JAQ0BBAUFBAEEBQUKBRkBBAEUBgUFBQsKCQUEBAMEAQIDAwQHEwUEBQUEBQUEJR4IBAQJDAMNAhIFBAUDARQEBAkIFiwFBQQFBQUEBRsEBgQBAQIDAwQEBAkDBgULBQUFBhQBHgUKBQUEAQQBBAUcDQQBBAUDAgECAgMECAIhfYx9fYx9F31efX5dAZUBAQEBBwICBAMEBAQJBAUGAwIJAgEBAQEBAQIFAQIDAwgEBQQJAwMDBwEBAQFTAQICBAcJCQoBCQcGBwMEAwQDBAcIBxQEDQQEIAMDAgICAgMDCAkFBgUFBAEEAQQFHA0EAQgEAQQEBAgBAwEDAQMECAMBAwQDAQYEBwgBBAQBAwQDAQMMAwEDAQMBCAQEBAEEBAQBBA0XBQUEAQQBCQUKBQwEBQQEAwQBAgUHDB4IBAkEFAcIBwQDBAMEAwcGBAMHBQQECQQEAwQBAgIFDAUJBAMGAgEBAQEBAgIHAgIDAgICAQIDAwgFCQgDBQIBAgECAQICAgkCAQEBJwIDBQIEAQIPAwIBAgkMCQEJBAMDAQMDAQMLBwcJCQQDBAQBAQQDDAMEBgMDAgMDAwMDAwIDAwIDAgMCAwIDBAMWAwMICQkHAwQ7AQIDAwQNBQsCAwMDAwMDAgMDCiMDBwMHBA4LAwcDCAMDAgEBAwIECAkEAgQJBAQEBAQFAwEDAQMEAQMQBAMBAwgDAQoBAwMBAwMBAwMBBgQJAQMCAwOpAQQEAwQIBAQJBQQJDQQbBQ0JBAQJBAEEIgQFAQQEAwMCAQICAwQICQUEEgQLBAcEBAcECAQeBAgEBwQEBwQECQQEBAMELQEECAQEBAQeBQoFBQUFCQUnBQQFCQoEMgQFBAgEBgICBggKBRkBBAEUBgUFBQsGJgUGBQsGCwYWBgkIAwMEEAIGCAgJBhEFBgUGCwUhBgsFBQoGDwEEARkFCgEEBgIBAQMCBAgJCAEpBAUFBAUFCQUiBQkFBQUFCgUXBQQHAgI5AQIDAwgHBAcEGgMLCwcGBAMHFA8DBwEIBQQFCAMDAgICAgcBAxUBAwsBBxAEBAwEBAQEBAQJBCYFBQgEBAMEoAEEAwMECQkJBgEMAQYMBgUDAwIBBAEEAQIFBAICAQEBBAEBAQYBAQECAQECAwcFBAUECAMDCQIBBgMQAwYDAgMCAwIDAgMGAgMDAwMDB0oBAgEDBgwDAwUDAgEBAQQDAwQJBQQIAwMCAQEBAQIJAgICAQIBAgEBAQICAgEBAQQBAQEFBAMFBAUICAMCAScBAQMGBAkFBAQEAgUDBAkBBgkDAgECAwIBAgMEAwoCCAECAQICAwECAwMIBQQJBAMDAwQCAQIBAgECARAQBgIDBQkDCgECAgIPAgMFBgwUAQIBAgECAQIGAgYJBAUEBAQDAwIBAQECAgIBAgEIDAMEAwIBAgMCAQISAQkEAwUEBAQFCQQDAwQAAAAACAAA/5oDuAMiABQAKQAuADIANgA6AD4AQgAAASIHBgcGFBcWFxYyNzY3NjQnJicmBzIXFhcWFAcGBwYiJyYnJjQ3Njc2BxURIREFMxEjExUzNQcVMzUHFTM1BxUzNQH0empmPD4+PGZq9GpmPD4+PGZqem5eWzU3NzVbXtxeWzU3NzVbXikBLv7q/v4aysrKysrKygMiPjxmavRqZjw+PjxmavRqZjw+MTc1W17cXls1Nzc1W17cXls1N9UM/pABfBj+tAEnGRlKGBhVGBhNGBgAAAAKAAD/ogO4AyAADwAfADEAbADVAV4BuwICAkwCuAAAASYGBwYeAjc+ATc2JicmBzYeAg4DLgI2Nz4BFwYPAQ4BFhcWPgE7ATUjNjcmAysBByMHIwcVDwUVHwUzPwMzNzM3MzczFzMXMxczHwEzPwM1LwQjNSMnIycXDwYVHwozHwYVHwIzHw0zPwQ1LwE1JyMvBiMvATUjLwsjLwEjLwcjNSc1LwQjBQ8BIw8EFQ8EFQcjBxUPAyMVBxUHIxUPBBUHIw8BFQ8CFQ8CIw8DFQ8DFQcVDwoVBxUfBD8EMz8ENT8mNS8DAQ8FFRcVBxUHFQcVBxUHFQcVBxUHFQcVBxUHFQ8HFR8EPwUzPwEzPwE1PwEzNzM3NTc1MzU3NTc1NzU3NTc1NzU3NTc1JzUvBAUPBRUXFRcVFzMfBTMfARUXFRcVFxUzFxUXFR8EPwQ1Lw01JzUnNSc1LwMBDxcfBD8EMz8DMzczNzM3MzczNzU3Mzc1NzM/AjM3MzU/AzUvBAUPBRUfAxUfATMfAjMfAhUfATMfARUfATMXMxczFzMfAjMXMxcVMx8HMxcVFzMVMxczPwQ1LwQjJyMnIycjLwojLwQjLwUjAfRAbxcZGFZ+Oj1RAQREOSsyJkgzEw4rQVBLOBoJFhhQYwkUHQkJBAgECQ0EWVkSJg47Bw0GDQ0HJw0OBAMDBAECAwMJBAUGDAYXBgsGBgYGKQYGBgYGBR8EBQwDAwICBgMKJwYHBg0H6QUEBAMDAQICAgYCAgMGBQQDCAEOAggCBgIEAQICAQIDAgMFBAMEAwoFBgMJBAkEBAMEAgQGAQQDAgMCAwIBAggBBQMEAgQCAgUCBwICAQIJAQICAwcDAgMCAQIDAgYCCgX98wUHAQIDAgMCAwIDAgMEAQICAwIEAQQEAQICAgICAgECAgIEAgIEAQEBAgMCAgoBAgICAQQBAgECAQIBAgIBBAQDDgQIBAMBAQIDAQICAgECAQIBAgECAgMCAQIIAgECAgIBBAIEAQYCCgIGAwoDBgMFAwIBBAYIBQKyBAUDBgIBAQEBAQEBAQIBAwUDBQMEAwIGAwECAwYECQkEBAMCAQEDAgECAwMCAQUBDAMBAgEBAQEBAQEBBAMEBAj8pgQFAwQEAQEDAgEDAgEEAQoBBAMCAwIBAgMBAgQHCQkEBAMEAgQCAwIHBAEGAQIBAggBAQEBBQgIArEEBAkEBQoEDwUFCw8GBQsFIQYLEAgEBQICBAMEDQkGBhQFARIGBwUBBQEFAQUBHAELBQEFBQEFCw8BBAEDAwIBBAMEBAj93gQEBAMCAgECAwQNAgECAwIBAgMDCwIBCAMDBQECAQIBAgECAwMBAgECAQIEAwYDDQMdAgMNBAMNCQUIBQIBBAMEBAMECAMUAhEDCQURAgYFAwUFBQIBDwIFAgIBBAMEEQQEBQI0AUs7OYBZHhUVbUA+cRoVJwEiPUlMPygHGjhNUSElLDISIzYBDxEDAwEGGSJECAFIAQIGAQIEAgMECAkFBAQDBAECAgIEAgEBAQEBBQEGBAMJBQgIAgQGAQEBTwEBAwMEBAQFCQQGAQIBBgMEAggOAwgDBgMEAQICAwQDBAMHBwMIAxIKCAIEAgIDAwgKBwcBDAgEBAQEBAQECwEHAwYCBgIDBQMHAwIDCQMCAgcCAgICAQEBAgIEAgUMAQQCAgICAgECAgICAgEEAgECAgMEAQQBBAECAwIDAgECAwIBAgYCAQIGAwMCBQIBAg8DAgECAQIDBgMDAwMDAwMDAQQJBQgDAwMBBAMDBAYFAwIFAQIDAgMCAwIDAwIFAgMCDAIDAgMCAwQDBAMGAwoDBgIKAQYCBQQEBAkJBgQB/sYBAgIIBAQEBDMDCQMGAgYDAwMDAwMGAgMDCQIOAwgBDQULBQYKBwQFCQQGAgICAgMDAwMGBgYFAQUHDyYDCgMDBwMDBAMDBAMDBAMHAw4DLAUJCAQCAwITAQIDAwgEGwYHEwcNEwYHDQYfDQUBBQEFAQUBBQEFAQEEBAQCAgIDAwkJCAYGBQYQCwYRBQYGBS8GBQYGDAYHBQcGAv6yAQIGBAQGBAkEAwUJAgME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BCYECQUEBAUNrQQIBgcBAwgDARUDAQMDAQkBDAEJCQMDAgECAwMIBAEEAgICAwMIBAUECQMIAwIEAwIDAgMCAwIDAwMCAwMDAwMDAwMGAyMCAwQEAgIFBAgBhAUIBAMDAwEGAwMCAwIDAgMCAwcWAQQBBAEGAwICBAQDBAUJBAQEAwQBAgICAQIBAgECAgIBAQEIAQEBAgIEAQIHAwIBAgMCAQIGAwkDAwME/cMFBAgDAwICAQIBAQEBAQECAQgCAQEBAwMEBAQFCQQDAwQBAgUDAgEBAQEBAQIBAQIDAwkC7gUECAYCAQEBAQECCAIBAgIEARYBAQQDDAUJBAYFBAMKAggBAgECAgIHAQEBAQEEAwQI/KcFCAgEAgEBAQIGAgICAQQBBgIKAwQBAwYEBQkEBAQDBAIBEgECAQIBAgICBwIBAQEBAgcDBQLwBAUEBAMEAgIHAgMFAgQBAgMMCgMEAgQBAQQDBAQJCAUHAw8CAQYFCAEBAQYBAgECAQICAgkBAgIDBAj9rQQIBAMCAgIFBgwGAQwBBgcDAQMDAQcHAwEHBwEDAQMECAQEDAQEBAQJBAQEBQIBAQQEAxUDBAoHGQMKAgMDAwMDAwMCBgMCAwIDAggBnAUEBAEHChwLBxIECwQHBAQHBAgEEAgEAwICAQQEAwQFDAUNBAUEBQgFJgQJBAQEBAQEAQQDAQMBAwQECAQJBAICAQIGAwQF/kQEBQQGAgIBAgMDBQQBBA0JAQ0BBAUFBAEEBQUKBRkBBAEUBgUFBQsKCQUEBAMEAQIDAwQHEwUEBQUEBQUEJR4IBAQJDAMNAhIFBAUDARQEBAkIFiwFBQQFBQUEBRsEBgQBAQIDAwQEBAkDBgULBQUFBhQBHgUKBQUEAQQBBAUcDQQBBAUDAgECAgMECAIcDP6QAXwY/rQBJxkZShgYVRgYTRgYAi8BAQEBBwICBAMEBAQJBAUGAwIJAgEBAQEBAQIFAQIDAwgEBQQJAwMDBwEBAQFTAQICBAcJCQoBCQcGBwMEAwQDBAcIBxQEDQQEIAMDAgICAgMDCAkFBgUFBAEEAQQFHA0EAQgEAQQEBAgBAwEDAQMECAMBAwQDAQYEBwgBBAQBAwQDAQMMAwEDAQMBCAQEBAEEBAQBBA0XBQUEAQQBCQUKBQwEBQQEAwQBAgUHDB4IBAkEFAcIBwQDBAMEAwcG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dmVudC1jYXRjaC1jb25kaXRpb247aW50ZXJtZWRpYXRlLWV2ZW50LWNhdGNoLW5vbi1pbnRlcnJ1cHRpbmctcGFyYWxsZWwtbXVsdGlwbGUVc3RhcnQtZXZlbnQtY29uZGl0aW9uInN0YXJ0LWV2ZW50LW5vbi1pbnRlcnJ1cHRpbmctdGltZXIUc2VxdWVudGlhbC1taS1tYXJrZXIJdXNlci10YXNrDWJ1c2luZXNzLXJ1bGUSc3ViLXByb2Nlc3MtbWFya2VyHXN0YXJ0LWV2ZW50LXBhcmFsbGVsLW11bHRpcGxlEXN0YXJ0LWV2ZW50LWVycm9yH2ludGVybWVkaWF0ZS1ldmVudC1jYXRjaC1zaWduYWweaW50ZXJtZWRpYXRlLWV2ZW50LWNhdGNoLWVycm9yFmVuZC1ldmVudC1jb21wZW5zYXRpb24Uc3VicHJvY2Vzcy1jb2xsYXBzZWQTc3VicHJvY2Vzcy1leHBhbmRlZAR0YXNrD2VuZC1ldmVudC1lcnJvciNpbnRlcm1lZGlhdGUtZXZlbnQtY2F0Y2gtZXNjYWxhdGlvbh5pbnRlcm1lZGlhdGUtZXZlbnQtY2F0Y2gtdGltZXIWc3RhcnQtZXZlbnQtZXNjYWxhdGlvbhJzdGFydC1ldmVudC1zaWduYWwSYnVzaW5lc3MtcnVsZS10YXNrBm1hbnVhbAdyZWNlaXZlDWNhbGwtYWN0aXZpdHkRc3RhcnQtZXZlbnQtdGltZXITc3RhcnQtZXZlbnQtbWVzc2FnZRdpbnRlcm1lZGlhdGUtZXZlbnQtbm9uZR1pbnRlcm1lZGlhdGUtZXZlbnQtY2F0Y2gtbGluaxRlbmQtZXZlbnQtZXNjYWxhdGlvbgdicG1uLWlvD2dhdGV3YXktY29tcGxleBJnYXRld2F5LWV2ZW50YmFzZWQMZ2F0ZXdheS1ub25lCmdhdGV3YXktb3ITZW5kLWV2ZW50LXRlcm1pbmF0ZRBlbmQtZXZlbnQtc2lnbmFsDmVuZC1ldmVudC1ub25lEmVuZC1ldmVudC1tdWx0aXBsZRFlbmQtZXZlbnQtbWVzc2FnZQ5lbmQtZXZlbnQtbGluayBpbnRlcm1lZGlhdGUtZXZlbnQtY2F0Y2gtbWVzc2FnZSVpbnRlcm1lZGlhdGUtZXZlbnQtdGhyb3ctY29tcGVuc2F0aW9uFHN0YXJ0LWV2ZW50LW11bHRpcGxlBnNjcmlwdAttYW51YWwtdGFzawRzZW5kB3NlcnZpY2UMcmVjZWl2ZS10YXNrBHVzZXIQc3RhcnQtZXZlbnQtbm9uZSNpbnRlcm1lZGlhdGUtZXZlbnQtdGhyb3ctZXNjYWxhdGlvbiFpbnRlcm1lZGlhdGUtZXZlbnQtY2F0Y2gtbXVsdGlwbGU0aW50ZXJtZWRpYXRlLWV2ZW50LWNhdGNoLW5vbi1pbnRlcnJ1cHRpbmctZXNjYWxhdGlvbh1pbnRlcm1lZGlhdGUtZXZlbnQtdGhyb3ctbGluayZzdGFydC1ldmVudC1ub24taW50ZXJydXB0aW5nLWNvbmRpdGlvbgtkYXRhLW9iamVjdAtzY3JpcHQtdGFzawlzZW5kLXRhc2sKZGF0YS1zdG9yZSdzdGFydC1ldmVudC1ub24taW50ZXJydXB0aW5nLWVzY2FsYXRpb24gaW50ZXJtZWRpYXRlLWV2ZW50LXRocm93LW1lc3NhZ2UyaW50ZXJtZWRpYXRlLWV2ZW50LWNhdGNoLW5vbi1pbnRlcnJ1cHRpbmctbXVsdGlwbGUwaW50ZXJtZWRpYXRlLWV2ZW50LWNhdGNoLW5vbi1pbnRlcnJ1cHRpbmctc2lnbmFsIWludGVybWVkaWF0ZS1ldmVudC10aHJvdy1tdWx0aXBsZSRzdGFydC1ldmVudC1ub24taW50ZXJydXB0aW5nLW1lc3NhZ2UNYWQtaG9jLW1hcmtlcgxzZXJ2aWNlLXRhc2sJdGFzay1ub25lE2NvbXBlbnNhdGlvbi1tYXJrZXIlc3RhcnQtZXZlbnQtbm9uLWludGVycnVwdGluZy1tdWx0aXBsZR9pbnRlcm1lZGlhdGUtZXZlbnQtdGhyb3ctc2lnbmFsM2ludGVybWVkaWF0ZS1ldmVudC1jYXRjaC1ub24taW50ZXJydXB0aW5nLWNvbmRpdGlvbgtwYXJ0aWNpcGFudBlldmVudC1zdWJwcm9jZXNzLWV4cGFuZGVkEWxhbmUtaW5zZXJ0LWJlbG93CnNwYWNlLXRvb2wQY29ubmVjdGlvbi1tdWx0aQRsYW5lCmxhc3NvLXRvb2wRbGFuZS1pbnNlcnQtYWJvdmURbGFuZS1kaXZpZGUtdGhyZWUPbGFuZS1kaXZpZGUtdHdvCmRhdGEtaW5wdXQLZGF0YS1vdXRwdXQJaGFuZC10b29sBWdyb3VwD3RleHQtYW5ub3RhdGlvbgt0cmFuc2FjdGlvbgxzY3Jldy13cmVuY2gKY29ubmVjdGlvbhBjb25kaXRpb25hbC1mbG93DGRlZmF1bHQtZmxvdwAA) format("embedded-opentype"),url(data:font/woff2;base64,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) format("woff2"),url(data:font/woff;base64,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) format("woff"),url(data:font/ttf;base64,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AADoGQAA6BkAAAAWAADoGgAA6BoAAAAXAADoGwAA6BsAAAAYAADoHAAA6BwAAAAZAADoHQAA6B0AAAAaAADoHgAA6B4AAAAbAADoHwAA6B8AAAAcAADoIAAA6CAAAAAdAADoIQAA6CEAAAAeAADoIgAA6CIAAAAfAADoIwAA6CMAAAAgAADoJAAA6CQAAAAhAADoJQAA6CUAAAAiAADoJgAA6CYAAAAjAADoJwAA6CcAAAAkAADoKAAA6CgAAAAlAADoKQAA6CkAAAAmAADoKgAA6CoAAAAnAADoKwAA6CsAAAAoAADoLAAA6CwAAAApAADoLQAA6C0AAAAqAADoLgAA6C4AAAArAADoLwAA6C8AAAAsAADoMQAA6DEAAAAtAADoMgAA6DIAAAAuAADoMwAA6DMAAAAvAADoNAAA6DQAAAAwAADoNQAA6DUAAAAxAADoNgAA6DYAAAAyAADoNwAA6DcAAAAzAADoOAAA6DgAAAA0AADoOQAA6DkAAAA1AADoOgAA6DoAAAA2AADoOwAA6DsAAAA3AADoPAAA6DwAAAA4AADoPQAA6D0AAAA5AADoPgAA6D4AAAA6AADoPwAA6D8AAAA7AADoQAAA6EAAAAA8AADoQQAA6EEAAAA9AADoQgAA6EIAAAA+AADoQwAA6EMAAAA/AADoRAAA6EQAAABAAADoRQAA6EUAAABBAADoRgAA6EYAAABCAADoRwAA6EcAAABDAADoSAAA6EgAAABEAADoSQAA6EkAAABFAADoSgAA6EoAAABGAADoSwAA6EsAAABHAADoTAAA6EwAAABIAADoTQAA6E0AAABJAADoTgAA6E4AAABKAADoTwAA6E8AAABLAADoUAAA6FAAAABMAADoUQAA6FEAAABNAADoUgAA6FIAAABOAADoUwAA6FMAAABPAADoVAAA6FQAAABQAADoVQAA6FUAAABRAADoVgAA6FYAAABSAADoVwAA6FcAAABTAADoWAAA6FgAAABUAADoWQAA6FkAAABVAADoWgAA6FoAAABWAADoWwAA6FsAAABXAADoXAAA6FwAAABYAADoXQAA6F0AAABZAADoXgAA6F4AAABaAADoXwAA6F8AAABbAADoYAAA6GAAAABcAADoYQAA6GEAAABdAADoYgAA6GIAAABeAADoYwAA6GMAAABfAADoZAAA6GQAAABgAADoZQAA6GUAAABhAADoZgAA6GYAAABiAADoZwAA6GcAAABjAADoaAAA6GgAAABkAADoaQAA6GkAAABlAADoawAA6GsAAABmAADoxAAA6MQAAABnAADo2wAA6NsAAABoAADo3AAA6NwAAABpAADo4AAA6OAAAABqAADo4QAA6OEAAABrAAAAAAB+AOIBvgbaB0oKcArECt4L0BEmEd4SlhMAE3wUSBlsGdYdKh1EHh4eRB5qHtofTB/4ILYhGiF0IcQiAiJoIywkHiSYJPolXCY+JlwmlCckJ5YoMijkKUwpjCoqKmoqlirqK2QrwCwULHYs3i0+Lfguoi8QL6QwojC6MZox7jKeMvIzoDRWNeI2iDm4Odw6nDroO6Q8kD0+PrxAMEDaQb5CDEMeQ1xDqESGRShKVkpwS6ZL7kwWTERMWkyaTOJNPE12TahN0E8iT7hP6lBUUIpQsFDaUPYAAAAFAAD/wAM7AucAGwAsADEAQABNAAABBiIHDgEdAQcOARYzITI2Ji8BNTQmJyYjIicjBSIGFxMeATMhMjY3EzYmIyEFKQEDIRMiIw4BFxMeAT4BJwMuASUiBgcDBh4BNjcTNiYBrQslBgoHrAoHBwoCcAkHBwmoBQkGFRIMR/7iCg8BMgENCgHJCg0CQAEOC/7i/v0BAwEDO/5iSwECDA8CLAISFg0CLAINAQ4KEAEsAg0XEQIsAg8C5wECAxUZCTgCDw0NDwI3ChoUAwIBzA8L/dUJDQwKAioLEDH+BwGwARIM/sALDgIUCwE/Cg0BDgr+wQsUAg4LAUAMEgADAAD/mgO4AyIAEAAUAEEAAAEiBwEGFBcBFjI3ATY0JwEmBwkCJSIPAxUjDwMVHwMzFR8DMz8DNTM/AzUvAyM1LwMB9A8L/mEKCgGfCx8KAZ8LC/5hCw8Bhv56/noBewICBAMBwgQEAwEBAwQEwgEDBAQWBAQDAcIEBAMBAQMEBMIBAwQEAyIL/mEKHwv+YQoKAZ8LHwoBnws+/nr+egGG5QEDBATCAQMEBBUFBAMBwgQEAwEBAwQEwgEDBAQWBAQDAcIEBAMBAAYAAP+VA74DJAAbADEASQBgAHkAigAAASYHBgcGBwYWFxYXHgE3PgI3NicuAScmJyMmBzYXFhcWFxYGBw4BJicuAjc2Nz4BFyYHBgcGBwYXFhcWFxY2Nz4CJyYnLgEHNhcWFxYHFgYHBgcGJicmJyY2NzY3NgcGBxcGBxYXNxc2NycmJzc2NyYnBg8BJi8BFhc3FwcXBycGByc2NycmJwHzbGVhQUILDDc8PVNPt1ZYhE8GBh4cd09QVwMVEGNdWTo8CAk9PkCmtE1QZCAVFzk4ol9bVVEyNQEEJCRBRFJNnj9BRQQeIDwwfEJQSkcrLAEBSD5AS0eMMzYUFRQnJz1KGx06cDg2KixucToeJjIZJTEYKiwZMCUZMiY5OG40b3E1cSRKNEolJjIZAyICNjVaXWxctklKKCgLHB13pFlbU1OGKCkFAjEDMTBTVmNYrEBDOxArLI+zVVlCRE4rAzAvT1JbU1BONjgQECUwMoyiSUwyKzAwAiwqRkpQS4ssLwcJMTM1RUKQOz0iK28eOnE2OCwqbnA6HSYyGSUwGSwqGDElGTIDODlvNG5xNXElSjRKJCYyGQAAEQAA/6MDuAMiAAMABgALAE4ApgD8AT8BlAHxAjwCfgLCAwUDXAOpA/UEPwAAAREhEQUzBzcVITUXETEjByMHIxUjByMPBxUfBDM3MzczNzM3MzczFzMXMxczFzMXMz8FNS8FIycjNSMnIycXIw8FHxk/BDUvAyMnNSc1JyMvASMvATUnIyc1LwEjLwE1JzUnIzUnIycjLwE1LwEjJzUnIy8BBSMPAhUHIw8BFQ8CFQcVBxUPASMPARUPAhUPASMPASMPARUHFQ8BIw8CFR8FMz8ZNS8EITEjFSMPAxUfBDM3MzczFzMXMxczFzMXMx8GMz8FNS8CIy8JIycjJyMnIzUHIw8CIw8BFQcjDwEjBxUHIwcjByMHFQ8DIxUPARUPAiMPAR8FMz8dMz8DLwMFDwUfFhUfBDM/BDUnNS8INSc1LwQjJyMnNS8BIyc1JzUvATUjLwE1JyMnNS8CNS8DBSMPBRUjFQcVBxUjFQcVFxUzFRcVFxUXFR8JMz8ENS8CNSc1JzUnNSc1JzU3NTc1NzU3NTc1LwQFIw8DFQcXFQcVBxUHFQcVDwgVHwMzPwY1NzU/BzU3NTM1NzU3NSc1LwMFIw8DFRcVFxUXFRcVHwcVFxUfAjMVHwMzPwQ1Lws1JzUnNSc1JzUvBAUjDwUVBxUPDxUfBT8CNT8BNTczNzU/AjM/CjU3LwQFDwUfAhUXFRczFzMfAjMfATMVFxUXFRczHwEzFzMXFRcVHwEVHwIVHwIzPwU1LxwFIw8IIwcjByMHIwcjByMPBBUfBTM3MzczNzM3Mz8LMzczPwE1PwE1NzU/BDUvBAUPBRUfBTMfARUXMxczHwEVHwEzFxUfBDMXMx8GMz8FNS8WISMPFxUfBjM/CDM/BDU3MzczNzU/ATU/ATM/BDUvBAEnAZr+weRynP7InAsGCwUMBQUGJgYKCAQCAwEBAgYECQQrBQkFBQUFCgUeBQoFBQUFCgQYCQUEAwQEAQEEAwQHJgUGBQsGCwb0BQQFAwQEAgIIAgwHCAcEAwQDBAMHBgcPAgkCAxEEAwQJCQQEAwQBAgMCAQIDAgECEgEJBAYBAwQDAQMIBAMBAwEDAQgEBAQBBAgBBAr98QUECAUEAQQEBAwEBAQIAwEDBAMEAwQJAQ8CAQIDAwUCAQQDAwECAwMIBAkFBwUFEAYCBgIPBwYHAwQDBAMEBwgEBAcCAQICAwQIAQQSDQoFBwYCAgMICAQBCAQmBAgDBAQEBwQIAxoDCAcHAwkFBAQEAwQBBAMHAQMFBAQEBAQJBCYECQUEBAUNrQQIBgcBAwgDARUDAQMDAQkBDAEJCQMDAgECAwMIBAEEAgICAwMIBAUECQMIAwIEAwIDAgMCAwIDAwMCAwMDAwMDAwMGAyMCAwQEAgIFBAgBhAUIBAMDAwEGAwMCAwIDAgMCAwcWAQQBBAEGAwICBAQDBAUJBAQEAwQBAgICAQIBAgECAgIBAQEIAQEBAgIEAQIHAwIBAgMCAQIGAwkDAwME/cMFBAgDAwICAQIBAQEBAQECAQgCAQEBAwMEBAQFCQQDAwQBAgUDAgEBAQEBAQIBAQIDAwkC7gUECAYCAQEBAQECCAIBAgIEARYBAQQDDAUJBAYFBAMKAggBAgECAgIHAQEBAQEEAwQI/KcFCAgEAgEBAQIGAgICAQQBBgIKAwQBAwYEBQkEBAQDBAIBEgECAQIBAgICBwIBAQEBAgcDBQLwBAUEBAMEAgIHAgMFAgQBAgMMCgMEAgQBAQQDBAQJCAUHAw8CAQYFCAEBAQYBAgECAQICAgkBAgIDBAj9rQQIBAMCAgIFBgwGAQwBBgcDAQMDAQcHAwEHBwEDAQMECAQEDAQEBAQJBAQEBQIBAQQEAxUDBAoHGQMKAgMDAwMDAwMCBgMCAwIDAggBnAUEBAEHChwLBxIECwQHBAQHBAgEEAgEAwICAQQEAwQFDAUNBAUEBQgFJgQJBAQEBAQEAQQDAQMBAwQECAQJBAICAQIGAwQF/kQEBQQGAgIBAgMDBQQBBA0JAQ0BBAUFBAEEBQUKBRkBBAEUBgUFBQsKCQUEBAMEAQIDAwQHEwUEBQUEBQUEJR4IBAQJDAMNAhIFBAUDARQEBAkIFiwFBQQFBQUEBRsEBgQBAQIDAwQEBAkDBgULBQUFBhQBHgUKBQUEAQQBBAUcDQQBBAUDAgECAgMECAH6/sgBODFaPrq6fQHyAQEBAQcCAgQDBAQECQQFBgMCCQIBAQEBAQECBQECAwMIBAUECQMDAwcBAQEBUwECAgQHCQkKAQkHBgcDBAMEAwQHCAcUBA0EBCADAwICAgIDAwgJBQYFBQQBBAEEBRwNBAEIBAEEBAQIAQMBAwEDBAgDAQMEAwEGBAcIAQQEAQMEAwEDDAMBAwEDAQgEBAQBBAQEAQQNFwUFBAEEAQkFCgUMBAUEBAMEAQIFBwweCAQJBBQHCAcEAwQDBAMHBgQDBwUEBAkEBAMEAQICBQwFCQQDBgIBAQEBAQICBwICAwICAgECAwMIBQkIAwUCAQIBAgECAgIJAgEBAScCAwUCBAECDwMCAQIJDAkBCQQDAwEDAwEDCwcHCQkEAwQEAQEEAwwDBAYDAwIDAwMDAwMCAwMCAwIDAgMCAwQDFgMDCAkJBwMEOwECAwMEDQULAgMDAwMDAwIDAwojAwcDBwQOCwMHAwgDAwIBAQMCBAgJBAIECQQEBAQEBQMBAwEDBAEDEAQDAQMIAwEKAQMDAQMDAQMDAQYECQEDAgMDqQEEBAMECAQECQUECQ0EGwUNCQQECQQBBCIEBQEEBAMDAgECAgMECAkFBBIECwQHBAQHBAgEHgQIBAcEBAcEBAkEBAQDBC0BBAgEBAQEHgUKBQUFBQkFJwUEBQkKBDIEBQQIBAYCAgYICgUZAQQBFAYFBQULBiYFBgULBgsGFgYJCAMDBBACBggICQYRBQYFBgsFIQYLBQUKBg8BBAEZBQoBBAYCAQEDAgQICQgBKQQFBQQFBQkFIgUJBQUFBQoFFwUEBwICOQECAwMIBwQHBBoDCwsHBgQDBxQPAwcBCAUEBQgDAwICAgIHAQMVAQMLAQcQBAQMBAQEBAQECQQmBQUIBAQDBKABBAMDBAkJCQYBDAEGDAYFAwMCAQQBBAECBQQCAgEBAQQBAQEGAQEBAgEBAgMHBQQFBAgDAwkCAQYDEAMGAwIDAgMCAwIDBgIDAwMDAwdKAQIBAwYMAwMFAwIBAQEEAwMECQUECAMDAgEBAQECCQICAgECAQIBAQECAgIBAQEEAQEBBQQDBQQFCAgDAgEnAQEDBgQJBQQEBAIFAwQJAQYJAwIBAgMCAQIDBAMKAggBAgECAgMBAgMDCAUECQQDAwMEAgECAQIBAgEQEAYCAwUJAwoBAgICDwIDBQYMFAECAQIBAgECBgIGCQQFBAQEAwMCAQEBAgICAQIBCAwDBAMCAQIDAgECEgEJBAMFBAQEBQkEAwMEAAAABQAA/5YDvQMjABYAMQA6AD4ARAAAASYOAxYXHgI3PgE3Njc2Jy4BJyYHNhcWFxYXFgYHBgcGBwYnJicmJyYnJjc+AhMGDwEXNRcRBycUFSclFBUnJicB9FimgUQBQD07obBRVIYnKQMGHh52Tl5rVlJQOjsXFxcrLERGWlhWWENDJyYDAyMecpQ/Nmwv0crKGI8BWSpDIgMiAUZ+obOmPj9JCR4delFTWFdVU4cmLzEBJiVDRFRPp0hKLzQQDxYWOTZQT1daTklwPv8AJk0hlI+PASiPYGRlZGVlZR4wFwAJAAD/ogO4AyAACwAXAFIAuwFEAaEB6AIyAp4AAAEVIxUzFTM1MzUjNQczFTMVIxUjNSM1MxMrAQcjByMHFQ8FFR8FMz8DMzczNzM3MxczFzMXMx8BMz8DNS8EIzUjJyMnFw8GFR8KMx8GFR8CMx8NMz8ENS8BNScjLwYjLwE1Iy8LIy8BIy8HIzUnNS8EIwUPASMPBBUPBBUHIwcVDwMjFQcVByMVDwQVByMPARUPAhUPAiMPAxUPAxUHFQ8KFQcVHwQ/BDM/BDU/JjUvAwEPBRUXFQcVBxUHFQcVBxUHFQcVBxUHFQcVBxUPBxUfBD8FMz8BMz8BNT8BMzczNzU3NTM1NzU3NTc1NzU3NTc1NzU3NSc1LwQFDwUVFxUXFRczHwUzHwEVFxUXFRcVMxcVFxUfBD8ENS8NNSc1JzUnNS8DAQ8XHwQ/BDM/AzM3MzczNzM3Mzc1NzM3NTczPwIzNzM1PwM1LwQFDwUVHwMVHwEzHwIzHwIVHwEzHwEVHwEzFzMXMxczHwIzFzMXFTMfBzMXFRczFTMXMz8ENS8EIycjJyMnIy8KIy8EIy8FIwGufX2MfX11Xn19Xn19MwcNBg0NBycNDgQDAwQBAgMDCQQFBgwGFwYLBgYGBikGBgYGBgUfBAUMAwMCAgYDCicGBwYNB+kFBAQDAwECAgIGAgIDBgUEAwgBDgIIAgYCBAECAgECAwIDBQQDBAMKBQYDCQQJBAQDBAIEBgEEAwIDAgMCAQIIAQUDBAIEAgIFAgcCAgECCQECAgMHAwIDAgECAwIGAgoF/fMFBwECAwIDAgMCAwIDBAECAgMCBAEEBAECAgICAgIBAgICBAICBAEBAQIDAgIKAQICAgEEAQIBAgECAQICAQQEAw4ECAQDAQECAwECAgIBAgECAQIBAgIDAgECCAIBAgICAQQCBAEGAgoCBgMKAwYDBQMCAQQGCAUCsgQFAwYCAQEBAQEBAQECAQMFAwUDBAMCBgMBAgMGBAkJBAQDAgEBAwIBAgMDAgEFAQwDAQIBAQEBAQEBAQQDBAQI/KYEBQMEBAEBAwIBAwIBBAEKAQQDAgMCAQIDAQIEBwkJBAQDBAIEAgMCBwQBBgECAQIIAQEBAQUICAKxBAQJBAUKBA8FBQsPBgULBSEGCxAIBAUCAgQDBA0JBgYUBQESBgcFAQUBBQEFARwBCwUBBQUBBQsPAQQBAwMCAQQDBAQI/d4EBAQDAgIBAgMEDQIBAgMCAQIDAwsCAQgDAwUBAgECAQIBAgMDAQIBAgECBAMGAw0DHQIDDQQDDQkFCAUCAQQDBAQDBAgDFAIRAwkFEQIGBQMFBQUCAQ8CBQICAQQDBBEEBAUCIX2MfX2MfRd9Xn1+XQGTAQIGAQIEAgMECAkFBAQDBAECAgIEAgEBAQEBBQEGBAMJBQgIAgQGAQEBTwEBAwMEBAQFCQQGAQIBBgMEAggOAwgDBgMEAQICAwQDBAMHBwMIAxIKCAIEAgIDAwgKBwcBDAgEBAQEBAQECwEHAwYCBgIDBQMHAwIDCQMCAgcCAgICAQEBAgIEAgUMAQQCAgICAgECAgICAgEEAgECAgMEAQQBBAECAwIDAgECAwIBAgYCAQIGAwMCBQIBAg8DAgECAQIDBgMDAwMDAwMDAQQJBQgDAwMBBAMDBAYFAwIFAQIDAgMCAwIDAwIFAgMCDAIDAgMCAwQDBAMGAwoDBgIKAQYCBQQEBAkJBgQB/sYBAgIIBAQEBDMDCQMG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BAQDBAEEAwcBAwUEBAQEBAkEJgQJBQQEBQ2xBQMGBwEDCAMBFQMBAwMBCQEMAQkJAwMCAQIDAwgEAQQCAgIDAwgEBQQJAwgDAgQDAgMCAwIDAgMDAwIDAwMDAwMDAwYDIwIDBAQCAgUECAUBhAQEBAMDAwEGAwMCAwIDAgMCAwcWAQQBBAEGAwICBAQDBAUJBAQEAwQBAgICAQIBAgECAgIBAQEIAQEBAgIEAQIHAwIBAgMCAQIGAwkDAwMECf3HBAgDAwICAQIBAQEBAQECAQgCAQEBAwMEBAQFCQQDAwQBAgUDAgEBAQEBAQIBAQIDAwkEAo0FBAQDBAICBwIDBQIEAQIDDAoDBAIEAQEEAwQECQgFBwMPAgEGBQgBAQEGAQIBAgECAgIJAQICAwQIBf2uBAQEAwICAgUGDAYBDAEGBwMBAwMBBwcDAQcHAQMBAwQIBAQMBAQEBAkEBAQFAgEBBAQDFQMECgcZAwoCAwMDAwMDAwIGAwIDAgMCCA4BpQQEAQcKHAsHEgQLBAcEBAcECAQQCAQDAgIBBAQDBAURDQQFBAUIBSYECQQEBAQEBAEEAwEDAQMEBAgECQQCAgECBgMEBQSnBQYGCwUMBQUGJgYKCAQCAwEBAgYECQQrBQkFBQUFCgUeBQoFBQUFCgQYCQUEAwQEAQEEAwQHJgUGBQsGCwbvBAUDBAQCAggCDAcIBwQDBAMEAwcGBw8CCQIDEQQDBAkJBAQDBAECAwIBAgMCAQISAQkEBgEDBAMBAwgEAwEDAQMBCAQEBAEECAEECgj99AQIBQQBBAQEDAQEBAgDAQMEAwQDBAkBDwIBAgMDBQIBBAMDAQIDAwgECQUHBQUQBgIGAg8HBgcDBAMEAwQHCAQEBwIBAgIDBAgEAq8ECAYCAQEBAQECCAIBAgIEARYBAQQDDAUJBAYFBAMKAggBAgECAgIHAQEBAQEEAwQIBPymBAQIBAIBAQECBgICAgEEAQYCCgMEAQMGBAUJBAQEAwQCARIBAgECAQICAgcCAQEBAQIHAwUElAUEBgICAQIDAwUEAQQNCQENAQQFBQQBBAUFCgUZAQQBFAYFBQULCgkFBAQDBAECAwMEBxMFBAUFBAUFBCUeCAQECQwDDQ0CGgQFAwEUBAQJCBYsBQUEBQUFBAUbBAYEAQECAwMEBAQJAwYFCwUFBQYUAR4FCgUFBAEEAQQFHA0EAQQFAwIBAgIDBAgEAjQBSzs5gFkeFRVtQD5xGhUnASI9SUw/KAcaOE1RISUsMhIjNgEPEQMDAQYZIkQI7QECAgUMBQkEAwYCAQEBAQECAgcCAgMCAgIBAgMDCAUJCAMFAgECAQIBAgICCQIBAQEnAQEDBQIEAQIPAwIBAgkMCQEJBAMDAQMDAQMLBwcJCQQDBAQBAQQDDAMEBgMDAgMDAwMDAwIDAwIDAgMCAwIDBAMWAwMICQkHAwQ8AQEDAwQNBQsCAwMDAwMDAgMDCiMDBwMHBA4LAwcDCAMDAgEBAwIECAkEAgQJBAQEBAQFAwEDAQMEAQMQBAMBAwgDAQoBAwMBAwMBAwMBBgQJAQMCAwMCqwEEBAMECAQECQUECQ0EGwUNCQQECQQBBCIEBQEEBAMDAgECAgMECAkFBBIECwQHBAQHBAgEHgQIBAcEBAcEBAkEBAQDBAF3AQIDAwgHBAcEGgMLCwcGBAMHFA8DBwEIBQQFCAMDAgICAgcBAxUBAwsBBxAEBAwEBAQEBAQJBCYFBQgEBAMEoQICAwMECQkJBgEMAQYMBgUDAwIBBAEEAQIFBAICAQEBBAEBAQYBAQECAQECAwcFBAUECAMDCQIBBgMQAwYDAgMCAwIDAgMGAgMDAwMDBwNNAQIBAwYMAwMFAwIBAQEEAwMECQUECAMDAgEBAQECCQICAgECAQIBAQECAgIBAQEEAQEBBQQDBQQFCAgDAgECzgEBAQEHAgIEAwQEBAkEBQYDAgkCAQEBAQEBAgUBAgMDCAQFBAkDAwMHAQEBAVMBAgIEBwkJCgEJBwYHAwQDBAMEBwgHFAQNBAQgAwMCAgICAwMICQUGBQUEAQQBBAUcDQQBCAQBBAQECAEDAQMBAwQIAwEDBAMBBgQHAgoBBAQBAwQDAQMMAwEDAQMBCAQEBAEEBAQBBA0XBQUEAQQBCQUKBQwEBQQEAwQBAgUHDB4IBAkEFAcIBwQDBAMEAwcGBAMHBQQECQQEAwT+xQEECAQEBAQeBQoFBQUFCQUnBQQFCQoEMgQFBAgEBgICBggKBRkBBAEUBgUFBQsGJgUGBQsGCwYWBgkIAwMEEAEBBggICQYRBQYFBgsFIQYLBQUKBg8BBAEZBQoBBAYCAQEDAgQICQgBKQQFBQQFBQkFIgUJBQUFBQoFFwUEBwIC/rIBAwYE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AQQDBwEDBQQEBAQECQQmBAkFBAQFDa0ECAYHAQMIAwEVAwEDAwEJAQwBCQkDAwIBAgMDCAQBBAICAgMDCAQFBAkDCAMCBAMCAwIDAgMCAwMDAgMDAwMDAwMDBgMjAgMEBAICBQQIAYQFCAQDAwMBBgMDAgMCAwIDAgMHFgEEAQQBBgMCAgQEAwQFCQQEBAMEAQICAgECAQIBAgICAQEBCAEBAQICBAECBwMCAQIDAgECBgMJAwMDBP3DBQQIAwMCAgECAQEBAQEBAgEIAgEBAQMDBAQEBQkEAwMEAQIFAwIBAQEBAQECAQECAwMJAu4FBAgGAgEBAQEBAggCAQICBAEWAQEEAwwFCQQGBQQDCgIIAQIBAgICBwEBAQEBBAMECPynBQgIBAIBAQECBgICAgEEAQYCCgMEAQMGBAUJBAQEAwQCARIBAgECAQICAgcCAQEBAQIHAwUC8AQFBAQDBAICBwIDBQIEAQIDDAoDBAIEAQEEAwQECQgFBwMPAgEGBQgBAQEGAQIBAgECAgIJAQICAwQI/a0ECAQDAgICBQYMBgEMAQYHAwEDAwEHBwMBBwcBAwEDBAgEBAwEBAQECQQEBAUCAQEEBAMVAwQKBxkDCgIDAwMDAwMDAgYDAgMCAwIIAZwFBAQBBwocCwcSBAsEBwQEBwQIBBAIBAMCAgEEBAMEBQwFDQQFBAUIBSYECQQEBAQEBAEEAwEDAQMEBAgECQQCAgECBgMEBf5EBAUEBgICAQIDAwUEAQQNCQENAQQFBQQBBAUFCgUZAQQBFAYFBQULCgkFBAQDBAECAwMEBxMFBAUFBAUFBCUeCAQECQwDDQISBQQFAwEUBAQJCBYsBQUEBQUFBAUbBAYEAQECAwMEBAQJAwYFCwUFBQYUAR4FCgUFBAEEAQQFHA0EAQQFAwIBAgIDBAgCIX2MfX2MfRd9Xn1+XQGVAQEBAQcCAgQDBAQECQQFBgMCCQIBAQEBAQECBQECAwMIBAUECQMDAwcBAQEBUwECAgQHCQkKAQkHBgcDBAMEAwQHCAcUBA0EBCADAwICAgIDAwgJBQYFBQQBBAEEBRwNBAEIBAEEBAQIAQMBAwEDBAgDAQMEAwEGBAcIAQQEAQMEAwEDDAMBAwEDAQgEBAQBBAQEAQQNFwUFBAEEAQkFCgUMBAUEBAMEAQIFBwweCAQJBBQHCAcEAwQD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AwIBAgMDAgEFAQwDAQIBAQEBAQEBAQQDBAQI/KYEBQMEBAEBAwIBAwIBBAEKAQQDAgMCAQIDAQIEBwkJBAQDBAIEAgMCBwQBBgECAQIIAQEBAQUICAKxBAQJBAUKBA8FBQsPBgULBSEGCxAIBAUCAgQDBA0JBgYUBQESBgcFAQUBBQEFARwBCwUBBQUBBQsPAQQBAwMCAQQDBAQI/d4EBAQDAgIBAgMEDQIBAgMCAQIDAwsCAQgDAwUBAgECAQIBAgMDAQIBAgECBAMGAw0DHQIDDQQDDQkFCAUCAQQDBAQDBAgDFAIRAwkFEQIGBQMFBQUCAQ8CBQICAQQDBBEEBAUCNAFLOzmAWR4VFW1APnEaFScBIj1JTD8oBxo4TVEhJSwyEiM2AQ8RAwMBBhkiRAgBSAECBgECBAIDBAgJBQQEAwQBAgICBAIBAQEBAQUBBgQDCQUICAIEBgEBAU8BAQMDBAQEBQkEBgECAQYDBAIIDgMIAwYDBAECAgMEAwQDBwcDCAMSCggCBAICAwMICgcHAQwIBAQEBAQEBAsBBwMGAgYCAwUDBwMCAwkDAgIHAgICAgEBAQICBAIFDAEEAgICAgIBAgICAgIBBAIBAgIDBAEEAQQBAgMCAwIBAgMCAQIGAgECBgMDAgUCAQIPAwIBAgECAwYDAwMDAwMDAwEECQUIAwMDAQQDAwQGBQMCBQECAwIDAgMCAwMCBQIDAgwCAwIDAgMEAwQDBgMKAwYCCgEGAgUEBAQJCQYEAf7GAQICCAQEBAQzAwkDBgIGAwMDAwMDBgIDAwkCDgMIAQ0FCwUGCgcEBQkEBgICAgIDAwMDBgYGBQEFBw8mAwoDAwcDAwQDAwQDAwQDBwMOAywFCQgEAgMCEwECAwMIBBsGBxMHDRMGBw0GHw0FAQUBBQEFAQUBBQEBBAQEAgICAwMJCQgGBgUGEAsGEQUGBgUvBgUGBgwGBwUHBgL+sgECBgQEBgQJBAMFCQIDBAMMAQQDBAMHCQkIAwMDAgIBBgIGAwIDAgMDDwYBAwMBAwQHDAQBAwQEBAkIBAMCAgIBAwIEBAkEBQQEAwEKAgICAgICAQEHAgUBAQEDAgIBAgECAQEBAQECAgIEAgkBAQQBBAEEBwUECQgEAgMBAwcGAwMGAgIDAQMCAwIJAgMCAQQBBA0BAgAAAwAAAAADIAJYAAMABwALAAATFSE1BRUhNQUVITXIAlj9qAJY/agCWAJYZGTIZGTIZGQAAAUAAP/TA9QC6QAcAFYAdgCKAJ4AAAEiBgc5ARQXFhcGBwYPARUhNScmJyYnNjU5ATQmBzIzFxYXFh8BFhcWMzEyPwEWFRQHBgcXFhcWFRYVFA8BDgEiJi8BJjU0NzQ3Nj8BJy4BNTQ3MjczNgcwMQYXFhceATI2NzY3NicwMRYXFSM1IxUjNSMVIzU2EyIOARURFB4BMyEyPgE1ETQuASMFITIeARURFA4BIyEiLgE1ETQ+AQFIJTIBCgYJIhceDwEBTAEPHhchFzFJAgIEDwkGBgIFAwYKDAoEBgUGEgIGCgIBAQEJHiQeCQEBAQIKBQIECg4IAwECCSICAQIGDCYqJgwGAgECMhIwFJwVLxMONVk1NVk1Ajo1WjQ0WjX9xgI6JT4kJD4l/cYlPiQkPgJjMSMSFg4LDA8UHAKFhQIcFA8MFyojMS8BAQICBAEEAQIFAwwPFg0PCxIBBAYGBAkCAgEKCgoKAQICCQQGBgQBFAMIIg4REAEDggwGDAUNDQ0NBQwGDBYgbExMTExsIgFLNFk1/m41WTQ0WTUBkjVZNDwkPSX+biU9JCQ9JQGSJT0kAAAFAAAAAAOPApMAAwAHAAsADwATAAATESERBTMVIzchFSEHMxUjNyEVIVkDNvztn5/CAi790sKfn8ICLv3SApP9lwJp0a2trSOlpaUAAwAAAAADUgK8AAQACAAUAAATFREhEQUhESEBFSMVMxUzNTM1IzWWArz9cAJk/ZwBBZubWpubArwZ/V0CvCz9nAH6m1qbm1qbAAAAAAQAAP+WA70DIgAXADMAPwBLAAABIg4DFhceAjc+ATc2NzYnLgEnJiMXMhcWFxYXFgYHBgcGBwYnJicmJyYnJjc+AhcHFSMVMxUzNTM1IzUHMxUzFSMVIzUjNTMB8Felf0QBQD07obBRVIYnKQMGHh52Tl5rCFVQTjk6FhcXKyxERlpYVlhDQycmAwMjHnKUT0Z9fYx9fXVefX1efX0DIkZ9obOmPj9JCR4delFTWFdVU4cmLzEnJkJEUk+nSEovNBAPFhY5NVFPV1pOSXA+AdB9jH19jH0XfV59fl0AAAAABAAA/5YDvQMjABYAMQA7AEQAAAEmDgMWFx4CNz4BNzY3NicuAScmBzYXFhcWFxYGBwYHBgcGJyYnJicmJyY3PgIXBg8BJwM3NjcXAxYXFhc3BycHAfRYpoFEAUA9O6GwUVSGJykDBh4edk5ea1ZSUDo7FxcXKyxERlpYVlhDQycmAwMjHnKU/BEiM4B0F0gjhokHDkMiHh18MgMiAUZ+obOmPj9JCR4delFTWFdVU4cmLzEBJiVDRFRPp0hKLzQQDxYWOTZQT1daTklwPtMjRWmm/qoeWy6aAQYJElUqQ3SRTQAABgAA/5UDvgMkABsAMQBJAGAAZABpAAABJgcGBwYHBhYXFhceATc+Ajc2Jy4BJyYnIyYHNhcWFxYXFgYHDgEmJy4CNzY3PgEXJgcGBwYHBhcWFxYXFjY3PgInJicuAQc2FxYXFgcWBgcGBwYmJyYnJjY3Njc2FwYHIQMWFyE2AfNsZWFBQgsMNzw9U0+3VliETwYGHhx3T1BXAxUQY11ZOjwICT0+QKa0TVBkIBUXOTiiX1tVUTI1AQQkJEFEUk2eP0FFBB4gPDB8QlBKRyssAQFIPkBLR4wzNhQVFCcnPUpVYGABgMBkM/7SMwMiAjY1Wl1sXLZJSigoCxwdd6RZW1NThigpBQIxAzEwU1ZjWKxAQzsQKyyPs1VZQkROKwMwL09SW1NQTjY4EBAlMDKMoklMMiswMAIsKkZKUEuLLC8HCTEzNUVCkDs9IitjrK0BJrRaWgAAAAAGAAD/lQO+AyQAGwAxAEkAYABqAHUAAAEmBwYHBgcGFhcWFx4BNz4CNzYnLgEnJicjJgc2FxYXFhcWBgcOASYnLgI3Njc+ARcmBwYHBgcGFxYXFhcWNjc+AicmJy4BBzYXFhcWBxYGBwYHBiYnJicmNjc2NzYFBg8BJwM3NjcXAxYXFhc3BycHBgcB82xlYUFCCww3PD1TT7dWWIRPBgYeHHdPUFcDFRBjXVk6PAgJPT5AprRNUGQgFRc5OKJfW1VRMjUBBCQkQURSTZ4/QUUEHiA8MHxCUEpHKywBAUg+QEtHjDM2FBUUJyc9SgECESIzgHQXSCOGiQcOQyIeHXwOGQsDIgI2NVpdbFy2SUooKAscHXekWVtTU4YoKQUCMQMxMFNWY1isQEM7ECssj7NVWUJETisDMC9PUltTUE42OBAQJTAyjKJJTDIrMDACLCpGSlBLiywvBwkxMzVFQpA7PSIrdiNFaab+qh5bLpoBBgkSVSpDdJEWJBMAAAMAAP+WA78DIgAbADIAOwAAASIHBgcGBwYWFxYXHgE3Njc+ATc2Jy4BJyYnJgc2FxYXFhcWBgcGBwYmJy4BNjc2Nz4BFwYPARc1FxEHAetsY2A/QAoLOT0+VE60U1dAQ1AIBx0beVFTWQ0PT0hHKywBA0A5PEhGkDc5MhAmKEAjUhk2bC/RysoDIjc2W11rXLdHSicmCxwdOzmhWFtTVYspKgQBjgIpKEVHT0mJLjEMDikwMYeXPkEjFRaiJk0hlI+PASiPAAAABAAA//ADqwLMABMAKwAvADwAABMiDgEVERQeATMhMj4BNRE0LgEjBSEyHgEVERQOASsBESERIyIuATURND4BEyERITcdASMVMxUzNTM1IzXYKkcqKkcqAjkqRykpRyr9xwI5HTEcHDEddP6ucx0xHBwxrwEU/uxzTU0uTU0CzClHKv5YKkcpKUcqAagqRykwHDEd/lgdMRwBNP7MHDEdAagdMRz+mf7s7Rc2Lk1NLk0AAAAABAAA//ADqwLMABMAKwAvADMAABMiDgEVERQeATMhMj4BNRE0LgEjBSEyHgEVERQOASsBESERIyIuATURND4BEyERITcVMzXXKkcpKUcqAjoqRykpRyr9xgI6HTEcHDEddP6udB0wHBwwsAEU/uwlywLMKUcq/lgqRykpRyoBqCpHKTAcMR3+WB0xHAE0/swcMR0BqB0xHP6Z/uunLy8AAAIAAP/wA6sCzAATACcAABMiDgEVERQeATMhMj4BNRE0LgEjBSEyHgEVERQOASMhIi4BNRE0PgHXKkcpKUcqAjoqRykpRyr9xgI6HTEcHDEd/cYdMBwcMALMKUcq/lgqRykpRyoBqCpHKTAcMR3+WB0xHBwxHQGoHTEcAAADAAD/lgO/AyIAGwAyADwAAAEiBwYHBgcGFhcWFx4BNzY3PgE3NicuAScmJyYHNhcWFxYXFgYHBgcGJicuATY3Njc+ARcGDwEnAzc2NxcB62xjYD9ACgs5PT5UTrRTV0BDUAgHHRt5UVNZDQ9PSEcrLAEDQDk8SEaQNzkyECYoQCNS1hEiM4B0F0gjhgMiNzZbXWtct0dKJyYLHB07OaFYW1NViykqBAGOAikoRUdPSYkuMQwOKTAxh5c+QSMVFnUjRWmm/qoeWy6aAAAGAAD/lQO+AyQAGwAxAEkAYABrAHkAAAEmBwYHBgcGFhcWFx4BNz4CNzYnLgEnJicjJgc2FxYXFhcWBgcOASYnLgI3Njc+ARcmBwYHBgcGFxYXFhcWNjc+AicmJy4BBzYXFhcWBxYGBwYHBiYnJicmNjc2NzYXBgIHNjc2NxcmLwEWHwEnBgcGBwY3Njc2AfNsZWFBQgsMNzw9U0+3VliETwYGHhx3T1BXAxUQY11ZOjwICT0+QKa0TVBkIBUXOTiiX1tVUTI1AQQkJEFEUk2eP0FFBB4gPDB8QlBKRyssAQFIPkBLR4wzNhQVFCcnPUpVGE0XFyonFH0ZMTIMFiJECBkSBgoBCxQWAyICNjVaXWxctklKKCgLHB13pFlbU1OGKCkFAjEDMTBTVmNYrEBDOxArLI+zVVlCRE4rAzAvT1JbU1BONjgQECUwMoyiSUwyKzAwAiwqRkpQS4ssLwcJMTM1RUKQOz0iK29C/vNBFzArFYdOnlEkSW5KBx0UBwsGIUNMAAAAAAcAAP+SA8EDIwAcADcAUQBqAHsAjACeAAABIiMiBwYHBgcGFhcWFx4BNzY3PgE3Ni4BJyYnJgcyMzYXFhcWFxYGBwYHDgEnJicmJyY3Njc+ARciIyIHBgcGBwYWFxYXFjY3Njc+AScmJy4BBzIzMhcWFxYXFgYHBgcGLgEnLgE3Njc+ARciBgcGHgI3PgE3NiYnJiMXMh4CDgMuAjY3PgEfAQYPAQ4BFhcWPgE7ATUjNjcmAfMBAmNeW0BCFhUeLi9ISLJZXEtKaBUWG15ISVY4OwUFXFZUOToPECo0NUpMtFNVOz0dHAkKLjW4bgUFVE9LMjQJCzY4OkxInUVGLTAeFBU2M45PAwNLRUMrLAYINzU4RUSPdiAiAh8hOihjLz9sFxkYVn46PVEBBEQ5KzIEJUYyEw4rQVBLOBoJFhhQLDcJFB0JCQQIBAkNBFlZEiYOAyIuLU5QYVazTU4zNSoODzAukVZXrZs2NxQOMQEtK0xNW1KoREYnKgogIUA/V1RZW0pXaSsrKkhJVE+dOzwbGw0lJj9Ao09SOzpDMCcmQEFLR4syNBIUG1U+QJZCRSsfImFKOzmAWR4VFW1APnEaFScjPEhMPygHGjhNUSElLAExEiM2AQ8RAwMBBhkiRAgAAAAEAAD/lgO9AyMAFgAxADwASgAAASYOAxYXHgI3PgE3Njc2Jy4BJyYHNhcWFxYXFgYHBgcGBwYnJicmJyYnJjc+AhcGAgc2NzY3FyYvARYfAScGBwYHBjc2NzYB9FimgUQBQD07obBRVIYnKQMGHh52Tl5rVlJQOjsXFxcrLERGWlhWWENDJyYDAyMecpRPGE0XFyonFH0ZMTIMFiJECBkSBgoBCxQWAyIBRn6hs6Y+P0kJHh16UVNYV1VThyYvMQEmJUNEVE+nSEovNBAPFhY5NlBPV1pOSXA+zEL+80EXMCsVh06eUSRJbkoHHRQHCwYhQ0wABAAA/5YDvQMjABYAMQA1ADoAAAEmDgMWFx4CNz4BNzY3NicuAScmBzYXFhcWFxYGBwYHBgcGJyYnJicmJyY3PgIXBgchAxYXITYB9FimgUQBQD07obBRVIYnKQMGHh52Tl5rVlJQOjsXFxcrLERGWlhWWENDJyYDAyMecpRPYGABgMBkM/7SMwMiAUZ+obOmPj9JCR4delFTWFdVU4cmLzEBJiVDRFRPp0hKLzQQDxYWOTZQT1daTklwPsCsrQEmtFpaAAcAAP/TA9QC6QATACcAKwAzADcAOwA/AAATIg4BFREUHgEzITI+ATURNC4BIwUhMh4BFREUDgEjISIuATURND4BFxEhEQUhFSE1IxUjFTMVIzchFSEDFSE11zVZNTVZNQI6NVo0NFo1/cYCOiU+JCQ+Jf3GJT4kJD4BAfr+GwHP/qkWYmJieAFX/ql2Ac0C6TRZNf5uNVk0NFk1AZI1WTQ8JD0l/m4lPSQkPSUBkiU9JEj+hAF8g2hnZxVmZmYBTmxsAAACAAAAAAN9ApMASgCzAAABIgc5AQYHOQEGBzkBBgcGHQEUFzAxFhcWMxY3OQEyNjU0JzMyNzY3MTYnPgE0Jy4BKwE2NTkBNCcuASMFNzY/ATY3PgEnLgEvATEHMDIVMhc5ARYGBzkBBg8BDgEVFBcxHgEXFjsBFjczMhYXFhQHBisBFSEyFhcWFTEUBiMhFSEyFhcWBzkBDgEjIRUzMhYXFhU5ARQHDgEjBic5ASInJic1Jj0BNDc2NzY3MTY3MTYzNDMBzA0SPbgvEwgCAQgQLShB3NsaHQUQGg4NBgYMGxsOCBgOFQYPCBgO/sMFBgQOEwYPBA0GEgoFAQEFBQUCBwgdDBYKAgIFBwMCDEuWcQYIBAgHBA/yAT4GCAQHCg/+wgEPBwkECAMDCwv+8c0FBgMGBgIGBtvbOR4hDQcBAgYRJMMxBwQBApMKKIAgPxggEyQNMSJBHhoBASMcDxEOCxgeFwMhOxQKDQ4RHRMLDAEFBwMOFQcTLhIKDAIBIwEIBxoJCh0MFQ0GAwYFBgEBAQEEBQwfCQYjBAUKEhMMIwYGDRUMCSMDBAgRDwgDAgEBFBY0AR4sCiQSHRUzGYcgBAEAAAMAAAAAA4oCagADAAYACwAAExEhEQUhBSUFJREhXwMr/SgChP6+/o4BcgFz/RsCav3pAhcj1Mr09P45AAIAAP/TA9QC6QATACMAABMiDgEVERQeATMhMj4BNRE0LgEjBSEyFhURFAYjISImNRE0Nuc5YTk5YTkCGjlhOTlhOf3mAhorOjor/eYrOjoC6ThfOf6KOV84OF85AXY5XzhuOSn+iik5OSkBdik5AAAFAAD/mgO4AyIAFAApADoASwBdAAABIgcGBwYUFxYXFjI3Njc2NCcmJyYHMhcWFxYUBwYHBiInJicmNDc2NzYXIgYHBh4CNz4BNzYmJyYjFzIeAg4DLgI2Nz4BHwEGDwEOARYXFj4BOwE1IzY3JgH0empmPD4+PGZq9GpmPD4+PGZqem5eWzU3NzVbXtxeWzU3NzVbXmo/bBcZGFZ+Oj1RAQREOSsyBCVGMhMOK0FQSzgaCRYYUCw3CRQdCQkECAQJDQRZWRImDgMiPjxmavRqZjw+PjxmavRqZjw+MTc1W17cXls1Nzc1W17cXls1N71KOzmAWR4VFW1APnEaFScjPEhMPygHGjhNUSElLAExEiM2AQ8RAwMBBhkiRAgAAAAFAAD/lgO9AyMAFgAxADYAQABGAAABJg4DFhceAjc+ATc2NzYnLgEnJgc2FxYXFhcWBgcGBwYHBicmJyYnJicmNz4CBxQVIREFMjMGBwYHBgcmNxQVITUXAfRYpoFEAUA9O6GwUVSGJykDBh4edk5ea1ZSUDo7FxcXKyxERlpYVlhDQycmAwMjHnKUfgGa/sFycg8gGA0VEEDj/sicAyIBRn6hs6Y+P0kJHh16UVNYV1VThyYvMQEmJUNEVE+nSEovNBAPFhY5NlBPV1pOSXA++JycATgxCRwWCQ8CNAVdXbp9AAAEAAD/lQO+AyMAGwAzAEoAYQAAASYHBgcGBwYWFxYXHgE3PgI3NicuAScmJyMmBzYXFhcWFxYGBwYHBiYnJicuATc2Nz4BFyIHBgcGFQYWFxYXFjY3PgInJicuAQcyFxYXFgcUBgcGBwYmJyYnJjY3Njc2AfBsZGE/QgsMNzw9U0+3VliETwYGHhx1Tk9WAxsFY1tYODoGCEFAQlRRsUxOMDMgFhY6OqdNW1JQMTICTEJFUkybPkBEBB8gPDKANVFJRykqA0k9QEpHjDM2FBUUJyg9TQMiATY1Wl1rXLZJSigoCxwdd6RZW1NShigpBgIxATMyVFdjWKtAQRscEyosR0ezVllCRk4uMjBQU1tTmzU3Dg8nMDGMoklMMiwvMS0rSEpRSocsLQcJMTM1RUKQOz4hLQAAAAAGAAD/lQO+AyQAGwAxAEkAYABoAHEAAAEmBwYHBgcGFhcWFx4BNz4CNzYnLgEnJicjJgc2FxYXFhcWBgcOASYnLgI3Njc+ARcmBwYHBgcGFxYXFhcWNjc+AicmJy4BBzYXFhcWBxYGBwYHBiYnJicmNjc2NzYXFBUjFTMVNycWHwEHNSM1MwHzbGVhQUILDDc8PVNPt1ZYhE8GBh4cd09QVwMVEGNdWTo8CAk9PkCmtE1QZCAVFzk4ol9bVVEyNQEEJCRBRFJNnj9BRQQeIDwwfEJQSkcrLAEBSD5AS0eMMzYUFRQnJz1Kh+LipYkRIjNm398DIgI2NVpdbFy2SUooKAscHXekWVtTU4YoKQUCMQMxMFNWY1isQEM7ECssj7NVWUJETisDMC9PUltTUE42OBAQJTAyjKJJTDIrMDACLCpGSlBLiywvBwkxMzVFQpA7PSIrdDIyvmTDehQoPXk2hQAAAAMAAP+WA78DIgAbADIAPQAAASIHBgcGBwYWFxYXHgE3Njc+ATc2Jy4BJyYnJgc2FxYXFhcWBgcGBwYmJy4BNjc2Nz4BFwYCBzY3NjcXJicB62xjYD9ACgs5PT5UTrRTV0BDUAgHHRt5UVNZDQ9PSEcrLAEDQDk8SEaQNzkyECYoQCNSKRhNFxcqJxR9GTEDIjc2W11rXLdHSicmCxwdOzmhWFtTVYspKgQBjgIpKEVHT0mJLjEMDikwMYeXPkEjFRZuQv7zQRcwKxWHTp4AAAAEAAD/agKiA1IAAwAUAB4AKQAAJSEVIQERMzI2PQE0Jz4BPQE0JyYjBzMyFh0BFAYrAQczMhcWHQEUBisBAqL+pAFc/qSwVVZRIyAmKFQ5OR8aICIwBTUlEBIcHUMpvwPo/TZUUjp7IhJGNxxQKCpkJCgmKSNuEhQwPiYhAAAAAAQAAP+aA7gDIgAQABQAagBvAAABIgcBBhQXARYyNwE2NCcBJgcJAiUxDwMVLwIPBB8CIw8DFR8DMw8CHwQ/AhUfAzM/AzUfAj8ELwIzPwI1LwIjPwIvBA8CNS8CBzA5ATAB9A8L/mEKCgGfCx8KAZ8LC/5hCw8Bhv56/noBfQQEAgFjAwQEBA0CAQECY4wEAwIBAQIDBIxjAgEBAg0EBAQDYwECBAQSBAQCAWMDBAQEDQIBAQJjjAQDAwMDBIxjAgEBAg0EBAQDYwECBIsDIgv+YQofC/5hCgoBnwsfCgGfCz7+ev56AYbGAQIDBIxjAgEBAg0EBAQDYwECBAQSBAQCAWMDBAQEDQIBAQJjjAQDAgEBAgMEjGMCAQECDQQEBARiAQIEGgQCAWMDBAQEDQIBAQJjjAQDAzAAAAAEAAD/mgO4AyIAEAAUABoAHwAAASIHAQYUFwEWMjcBNjQnASYHCQIlDwEXITcnFwcjJwH0Dwv+YQoKAZ8LHwoBnwsL/mELDwGG/nr+egGGB9BSAQpS17tI5kgDIgv+YQofC/5hCgoBnwsfCgGfCz7+ev56AYbgBZf9/X6H3NwAAAIAAP+aA7gDIgAPABMAABMGFBcBFjI3ATY0JwEmIgcJAzsKCgGfCx8KAZ8LC/5hCh8L/pQBhgGG/noBeAofC/5hCgoBnwsfCgGfCwv+RwGG/nr+egAAAAAEAAD/mgO4AyIAEAAUACEALgAAASIHAQYUFwEWMjcBNjQnASYHCQIlIg4BFB4BMj4BNC4BBzIeARQOASIuATQ+AQH0Dwv+YQoKAZ8LHwoBnwsL/mELDwGG/nr+egGGOWE4OGFyYTg4YTkzVjIyVmZWMjJWAyIL/mEKHwv+YQoKAZ8LHwoBnws+/nr+egGG0jhhcmE4OGFyYTgXMlZmVjIyVmZWMgAAAAADAAD/lgO/AyIAGwAyAEoAAAEiBwYHBgcGFhcWFx4BNzY3PgE3NicuAScmJyYHNhcWFxYXFgYHBgcGJicuATY3Njc+ARcmBw4BBwYXFhceATc2NzY3PgEnJicuAQHrbGNgP0AKCzk9PlROtFNXQENQCAcdG3lRU1kND09IRyssAQNAOTxIRpA3OTIQJihAI1IpNjIvQgkLEg4oJWk1OCwuGhkEFhYsHksDIjc2W11rXLdHSicmCxwdOzmhWFtTVYspKgQBjgIpKEVHT0mJLjEMDikwMYeXPkEjFRZRAhoZWTQ4MzQoJSUGByAdMi9vMDQgGBoAAwAA/5YDvwMiABsAMgA2AAABIgcGBwYHBhYXFhceATc2Nz4BNzYnLgEnJicmBzYXFhcWFxYGBwYHBiYnLgE2NzY3PgEXBgchAetsY2A/QAoLOT0+VE60U1dAQ1AIBx0beVFTWQ0PT0hHKywBA0A5PEhGkDc5MhAmKEAjUilgYAGAAyI3Nltda1y3R0onJgscHTs5oVhbU1WLKSoEAY4CKShFR09JiS4xDA4pMDGHlz5BIxUWYqytAAIAAP+SA8EDIwAaADEAAAEiBwYHBgcGHgEXHgE3Njc+ATc2Jy4BJyYnJgcyFxYXFhcWBgcOASYnJicuATc2Nz4BAfBkXltBQhUUIGBJR69YWklKaRYXDg1iSkxZNCdKREErLQcJMDM0hpA8PiImBx8gPCpmAyIvLVBRYlazmzIzKA4PLy2RVVhWWp42OBILjiUkPj9JRoszNSsUJyg9QJpFSCwgIQAAAAMAAP+WA78DIgAaAC8AOQAAASIHBgcGBwYWFxYXHgE3Njc+ATc2Jy4BJyYnBzYXFhcWFxYGBw4BJicuATY3Njc2FwYPARchNj8BJgHrbGNgP0AKCzk8PlRPtFNXQENQCAcdG3lRU1kcT0hHKywBA0A6O46QNzkyDycoQEhWJEdsUgEKFysQRwMiODZaXmtctkdKJyYLHBw7OqFYW1NViykqBI0CKShFR09JiS8wGikwMYeWP0EjK1YaNE79RIgxNAAAAAAEAAD/lgO/AyIAGwAyADcAPQAAASIHBgcGBwYWFxYXHgE3Njc+ATc2Jy4BJyYnJgc2FxYXFhcWBgcGBwYmJy4BNjc2Nz4BBxYXNjcFFBUhEQcB62xjYD9ACgs5PT5UTrRTV0BDUAgHHRt5UVNZDQ9PSEcrLAEDQDk8SEaQNzkyECYoQCNSflZVOHL+hQGayQMiNzZbXWtct0dKJyYLHB07OaFYW1NViykqBAGOAikoRUdPSYkuMQwOKTAxh5c+QSMVFppFRS5cIIyMARKjAAAAAwAA/5YDvwMiABsAMgA6AAABIgcGBwYHBhYXFhceATc2Nz4BNzYnLgEnJicmBzYXFhcWFxYGBwYHBiYnLgE2NzY3PgEXFBUjFTMVNwHrbGNgP0AKCzk9PlROtFNXQENQCAcdG3lRU1kND09IRyssAQNAOTxIRpA3OTIQJihAI1Jb4uKlAyI3Nltda1y3R0onJgscHTs5oVhbU1WLKSoEAY4CKShFR09JiS4xDA4pMDGHlz5BIxUWczIyvmTDAAAABwAA/5UDvgMkABsAMQBJAGAAZQBvAHUAAAEmBwYHBgcGFhcWFx4BNz4CNzYnLgEnJicjJgc2FxYXFhcWBgcOASYnLgI3Njc+ARcmBwYHBgcGFxYXFhcWNjc+AicmJy4BBzYXFhcWBxYGBwYHBiYnJicmNjc2NzYHFBUhEQUyMwYHBgcGByY3FBUhNRcB82xlYUFCCww3PD1TT7dWWIRPBgYeHHdPUFcDFRBjXVk6PAgJPT5AprRNUGQgFRc5OKJfW1VRMjUBBCQkQURSTZ4/QUUEHiA8MHxCUEpHKywBAUg+QEtHjDM2FBUUJyc9SngBmv7BcnIPIBgNFRBA4/7InAMiAjY1Wl1sXLZJSigoCxwdd6RZW1NThigpBQIxAzEwU1ZjWKxAQzsQKyyPs1VZQkROKwMwL09SW1NQTjY4EBAlMDKMoklMMiswMAIsKkZKUEuLLC8HCTEzNUVCkDs9IiubnJwBODEJHBYJDwI0BV1dun0ABQAA/5UDvgMkABsAMQBJAGAAaQAAASYHBgcGBwYWFxYXHgE3PgI3NicuAScmJyMmBzYXFhcWFxYGBw4BJicuAjc2Nz4BFyYHBgcGBwYXFhcWFxY2Nz4CJyYnLgEHNhcWFxYHFgYHBgcGJicmJyY2NzY3NhcGDwEXNRcRBwHzbGVhQUILDDc8PVNPt1ZYhE8GBh4cd09QVwMVEGNdWTo8CAk9PkCmtE1QZCAVFzk4ol9bVVEyNQEEJCRBRFJNnj9BRQQeIDwwfEJQSkcrLAEBSD5AS0eMMzYUFRQnJz1KRTZsL9HKygMiAjY1Wl1sXLZJSigoCxwdd6RZW1NThigpBQIxAzEwU1ZjWKxAQzsQKyyPs1VZQkROKwMwL09SW1NQTjY4EBAlMDKMoklMMiswMAIsKkZKUEuLLC8HCTEzNUVCkDs9IiujJk0hlI+PASiPAAAAAAQAAP+WA70DIwAWADEAOwBCAAABJg4DFhceAjc+ATc2NzYnLgEnJgc2FxYXFhcWBgcGBwYHBicmJyYnJicmNz4CFwYPARchNj8BJicWFwcjJzYB9FimgUQBQD07obBRVIYnKQMGHh52Tl5rVlJQOjsXFxcrLERGWlhWWENDJyYDAyMecpRPJEdsUgEKFysQR5B8P0jmSD8DIgFGfqGzpj4/SQkeHXpRU1hXVVOHJi8xASYlQ0RUT6dISi80EA8WFjk2UE9XWk5JcD60GjRO/USIMTRKWi3c3C0AAAAGAAAAAANFApUAKQBPAFMAVwBbAF8AAAEPAQYHBgcUFxYXMRYXFhcWBgcGDwEhNzM+AScmJyYvASYnJjU0NzY/AQUhBgcGFQYXFhcxFhcWFxYHBgcGByE2NzYnJicmLwEmJyY3NDc2FxUzNQcVMzUHFTM1BxUzNQF8BAJUKSYCGxAoJBAXAwEJDBtISgHKBQFNRQUEFw8jDSIQFB0kTUn+RAEaJxUnARsQKCQQFwMBBAQNGUX+5R8QIwUEGA8kDCIPFQEcIQrc5eV93b7lApUCATIwLi4oKBgpJRUeFQ0ZECMrKwMtVy0hIhQkDiIXHhkdISouKy4dGi4uKCgYKSUVHhUNDA4PISkXFiwsIiIUJQwjFh4ZHSEnIhUVcxYWdBUVcxYWAAAAAAQAAP/TA9QC6QATACcAawDIAAATIg4BFREUHgEzITI+ATURNC4BIwUhMh4BFREUDgEjISIuATURND4BFyIHOQEGDwEGBzkBBgcGHQExFBcwMR4BMxY3OQEyNjU0JzMyNjcwMTYnPgE3NjQmKwE2NTkBNCcuASsBNzY3PgEnJicHMDEyFzkBFgYHOQEGDwEGFzEWHwEzFjczMhcWFAcGIyInFRYzMhYVMRQHDgErARUzMhYHOQEOASsBFTMxMhYVOQEUBwYHITEmJyYnOQEmNTE0NzY3Nj8BNj8BNjPXNVk1NVk1Ajo1WjQ0WjX9xgI6JT4kJD4l/cYlPiQkPqoKCBdpGR0NBQEBBQs0KYmJEREDChARBAMHCA4ECBMTDgUKBBAIxgkUBQkCBwoMAwQDAwIEAhUZBAMCBwICMWRECQIFBQMIZjNDhQcJBAMEBcirBwsDAQcHq4IGBgMDBv7uIhMWBwUBAQQLFkFIDwIEAQLpNFk1/m41WTQ0WTUBkjVZNDwkPSX+biU9JCQ9JQGSJT0kKAYPSBEVJw8UDBcHHBgrKgICFhAKCREPFA4BCQYMJRwMDBILBgcJFAYMHQsOARYFBQ8GAxUZBgcHAQEBAQUFFwUGARYBDQsLCAMDFhAOBwcWBwwHBgMBAhATIBUaGQwUDiAQLDIKAQEAAAACAAAAAAOGAmAAAgAHAAATBSUFESERBWMBkQGR/N8DIv5uAmDj41T+QAHA4AAAAAAFAAAAAAMsAncAJgBOAIYAjwCYAAABFBUGBycHFwYHIxUzFhc1BzUzNzY/ASc3Fzc2PwE1MxUzJicmJzUHFQYHJwcXBgcjFTcWFwcXNxYXFTM1NjcXNyc2NzM1IyYnNycHJic3BzMHFxYfATcXBxcWHwEzFQ8BBg8BFwcnBwYPARUjNScmLwEHJzcnJi8BBzUzNzY/ASc3Fzc2PwEXIgYUFjI2NCYHMhYUBiImNDYBnRYWKEooDAY4OAgUMTEDBhEIIhkiDBogDiReBhYRDgYbEShKJwsGOTkHCyhLKRMZaRkTKUopDAY4OAgLJ0snFhYBRyQBDx4cCyIZIQgSBgMxMQMGEQgkGiMMGx8OIw8fGwskGiQIEgYDMjIDBhEIIxkjDBgiDhIgLy9ALy8gExkZJRoaAnccHAYMJ0ooExhqGR5bASQOHxoMIxkiCBAIAzAwBwkIBDdlNwgLKEsoFBdqARUXKEooDAY5OgYMKEsoFhZpGRInSicMBjcjMAMGEQgiGSIMGx4OIwEOHxoMIxokCBIGAzMyAwYSCCQZIwwbHw4BJA4eHAwiGSIIEAgDUC9BLi5BLyMaJRkZJRoAAAAABQAA/9MD1ALpABMAJwArAC4AMwAAEyIOARURFB4BMyEyPgE1ETQuASMFITIeARURFA4BIyEiLgE1ETQ+AQcRIREFIQcnFzcRIdc1WTU1WTUCOjVaNDRaNf3GAjolPiQkPiX9xiU+JCQ+AQIO/igBotHw8PH+HwLpNFk1/m41WTQ0WTUBkjVZNDwkPSX+biU9JCQ9JQGSJT0kU/6lAVsXiYOenv7ZAAAAAwAAAAADEQKdACAAWAB7AAABIgcOARU5ARQXFhcGBwYPARUhNScmJyYnNjU5ATQmJyYHMhcWFxYfARYXFhcxNj8BNjcWFRQHBgcfAhYVBg8BDgEiJi8BJic0PwMmJy4BJyY1ND8BNgcwFQYXFhcWFxYyNzY3Njc2NzYnNRYXFSM1IxUhNSMVIzU2AfArJCInEAsQOyg1GgICQgIZNCg6KCciJGgJBRoQDAkECAYKEBkOAgQCCgkMHgQcBAEBAQEQNzo3EAEBAQEEGwMEAwcQBg0PBgw0AwICCxYiIEggIhYHAwIBAwRWIFMj/vAjUyACnBUTRCYiJRoRFBojMQTn5wQwIxoUKUomRBMVUwEBBQQGAgYCAwEBCAICARQaJxYbEiAJFAgPBAQCEBISEAIEBA8IFAkiBAIFFw0fGh8ZAgXhAQwSFAsWDAsLDBYGCQYKDREBJjm7hISEhLs5AAAAAAIAAP+WA70DIgAXADMAAAEiDgMWFx4CNz4BNzY3NicuAScmIxcyFxYXFhcWBgcGBwYHBicmJyYnJicmNz4CFwHwV6V/RAFAPTuhsFFUhicpAwYeHnZOXmsIVVBOOToWFxcrLERGWlhWWENDJyYDAyMecpRPAyJGfaGzpj4/SQkeHXpRU1hXVVOHJi8xJyZCRFJPp0hKLzQQDxYWOTZQT1daTklwPgEAAAUAAP+VA74DJAAbADEASQBgAGsAAAEmBwYHBgcGFhcWFx4BNz4CNzYnLgEnJicjJgc2FxYXFhcWBgcOASYnLgI3Njc+ARcmBwYHBgcGFxYXFhcWNjc+AicmJy4BBzYXFhcWBxYGBwYHBiYnJicmNjc2NzYXBgIHNjc2NxcmJwHzbGVhQUILDDc8PVNPt1ZYhE8GBh4cd09QVwMVEGNdWTo8CAk9PkCmtE1QZCAVFzk4ol9bVVEyNQEEJCRBRFJNnj9BRQQeIDwwfEJQSkcrLAEBSD5AS0eMMzYUFRQnJz1KVRhNFxcqJxR9GTEDIgI2NVpdbFy2SUooKAscHXekWVtTU4YoKQUCMQMxMFNWY1isQEM7ECssj7NVWUJETisDMC9PUltTUE42OBAQJTAyjKJJTDIrMDACLCpGSlBLiywvBwkxMzVFQpA7PSIrb0L+80EXMCsVh06eAAAAAAYAAP+VA74DJAAbADEASQBgAGoAcQAAASYHBgcGBwYWFxYXHgE3PgI3NicuAScmJyMmBzYXFhcWFxYGBw4BJicuAjc2Nz4BFyYHBgcGBwYXFhcWFxY2Nz4CJyYnLgEHNhcWFxYHFgYHBgcGJicmJyY2NzY3NhcGDwEXITY/ASYnFhcHIyc2AfNsZWFBQgsMNzw9U0+3VliETwYGHhx3T1BXAxUQY11ZOjwICT0+QKa0TVBkIBUXOTiiX1tVUTI1AQQkJEFEUk2eP0FFBB4gPDB8QlBKRyssAQFIPkBLR4wzNhQVFCcnPUpVJEdsUgEKFysQR5B8P0jmSD8DIgI2NVpdbFy2SUooKAscHXekWVtTU4YoKQUCMQMxMFNWY1isQEM7ECssj7NVWUJETisDMC9PUltTUE42OBAQJTAyjKJJTDIrMDACLCpGSlBLiywvBwkxMzVFQpA7PSIrVxo0Tv1EiDE0Slot3NwtAAAQAAD/oAO7AyIACgAYACYANQBHAFgAaQB3AIQAkwChALEAvwDSAOEA9gAAAQYCBzY3NjcXJi8BFh8BJwYHBgcGNzY3NhMGBw4BFjc2FxY2JicmFyYGFhcWFxY+AScuAScmBQYHBgcGBwYHBhYyNzY3Ni4BMyIHIgcOAR4BNzYXFjY0JyYHBgcGDwEGBwYeATc2NzY0JgUmBhYXFhcWMjYnJicmBSYHBhceATYnJjc2JgUmBhcWBwYeATc+AScuAQUmBhcWFxY+AScmNy4BBSYHBgcGBwYeATc+ATcuAQUiBhYXFhcWNiYnJicmBQ4BBwYHBg8BDgEWNz4BNz4BJgUiBhYXHgEXFjYmJyYnJgUGBwYHBgcGBwYHDgEWNz4BNzYuAQH0GE0XFyonFH0ZMTIMFiJECBkSBgoBCxQWDEovDAETDF5mDA4FDDHKDA8DC0wtBxkPBBhJLgT99QsKBgsIBUEhBBEYBylRBgEN/wQKEgcNCQkUCU5HDBILQuoNDgkQCj0ZBREZBilQCA4BfwwOAgo0GQcZEAQaRAT9wxkFCxsGGBICGhABDgLpDw0DATAEEBgHHRsEAg78pA8OAwIxBxkPBS8CAQ0C7A8HBQENMgYPGQgdJgYBDf2oCwwCCD9UDBEBC083BgGfDCsLExkPHhEMBQ8ML1snCAEN/j0LDQMKK2M0DA4FDGRPBgIYCQkFCg4IHiYfKgsCEQ02ZSkHAg0CJkL+80EXMCsVh06eUSRJbkoHHRQHCwYhQ0wBdAIQBhkRBBkWARMZBAxTARMYBThbCgETDDJYIAIKAQcFCwgEPlAMEgtdQAcTDgECBBURCAMGHwQRGQYfJwIIBQwHMDAMEwELQC4HEw87ARIXBjVUCxMMXUEDqQIrVk0LAxEMUFQKDi0BGg5lXgwSAQo2eT4IChABGg5rWgoCEwxbZggLOAENChE/QwwUAwsmVy0JDqARFgZJHQMSGAYeQgZNAxUDBwQDAwIEGBQBARkYBxUPJxMWBSIvCgEUGAQVQgMDAQUDCQsDFA8MCgYZEgMLMSMHEw4AAAAFAAD/lQO+AyQAGwAxAEkAYABoAAABJgcGBwYHBhYXFhceATc+Ajc2Jy4BJyYnIyYHNhcWFxYXFgYHDgEmJy4CNzY3PgEXJgcGBwYHBhcWFxYXFjY3PgInJicuAQc2FxYXFgcWBgcGBwYmJyYnJjY3Njc2FxQVIxUzFTcB82xlYUFCCww3PD1TT7dWWIRPBgYeHHdPUFcDFRBjXVk6PAgJPT5AprRNUGQgFRc5OKJfW1VRMjUBBCQkQURSTZ4/QUUEHiA8MHxCUEpHKywBAUg+QEtHjDM2FBUUJyc9Sofi4qUDIgI2NVpdbFy2SUooKAscHXekWVtTU4YoKQUCMQMxMFNWY1isQEM7ECssj7NVWUJETisDMC9PUltTUE42OBAQJTAyjKJJTDIrMDACLCpGSlBLiywvBwkxMzVFQpA7PSIrdDIyvmTDAAAAAA0AAP+iA7gDIAAEAAgADAAQABQAGABTALwBRQGiAekCMwKfAAABFREhEQUzESMTFTM1BxUzNQcVMzUHFTM1AysBByMHIwcVDwUVHwUzPwMzNzM3MzczFzMXMxczHwEzPwM1LwQjNSMnIycXDwYVHwozHwYVHwIzHw0zPwQ1LwE1JyMvBiMvATUjLwsjLwEjLwcjNSc1LwQjBQ8BIw8EFQ8EFQcjBxUPAyMVBxUHIxUPBBUHIw8BFQ8CFQ8CIw8DFQ8DFQcVDwoVBxUfBD8EMz8ENT8mNS8DAQ8FFRcVBxUHFQcVBxUHFQcVBxUHFQcVBxUHFQ8HFR8EPwUzPwEzPwE1PwEzNzM3NTc1MzU3NTc1NzU3NTc1NzU3NTc1JzUvBAUPBRUXFRcVFzMfBTMfARUXFRcVFxUzFxUXFR8EPwQ1Lw01JzUnNSc1LwMBDxcfBD8EMz8DMzczNzM3MzczNzU3Mzc1NzM/AjM3MzU/AzUvBAUPBRUfAxUfATMfAjMfAhUfATMfARUfATMXMxczFzMfAjMXMxcVMx8HMxcVFzMVMxczPwQ1LwQjJyMnIycjLwojLwQjLwUjAV0BLv7q/v4aysrKysrKymEHDQYNDQcnDQ4EAwMEAQIDAwkEBQYMBhcGCwYGBgYpBgYGBgYFHwQFDAMDAgIGAwonBgcGDQfpBQQEAwMBAgICBgICAwYFBAMIAQ4CCAIGAgQBAgIBAgMCAwUEAwQDCgUGAwkECQQEAwQCBAYBBAMCAwIDAgECCAEFAwQCBAICBQIHAgIBAgkBAgIDBwMCAwIBAgMCBgIKBf3zBQcBAgMCAwIDAgMCAwQBAgIDAgQBBAQBAgICAgICAQICAgQCAgQBAQECAwICCgECAgIBBAECAQIBAgECAgEEBAMOBAgEAwEBAgMBAgICAQIBAgECAQICAwIBAggCAQICAgEEAgQBBgIKAgYDCgMGAwUDAgEEBggFArIEBQMGAgEBAQEBAQEBAgEDBQMFAwQDAgYDAQIDBgQJCQQEAwIBAQMCAQIDAwIBBQEMAwECAQEBAQEBAQEEAwQECPymBAUDBAQBAQMCAQMCAQQBCgEEAwIDAgECAwECBAcJCQQEAwQCBAIDAgcEAQYBAgECCAEBAQEFCAgCsQQECQQFCgQPBQULDwYFCwUhBgsQCAQFAgIEAwQNCQYGFAUBEgYHBQEFAQUBBQEcAQsFAQUFAQULDwEEAQMDAgEEAwQECP3eBAQEAwICAQIDBA0CAQIDAgECAwMLAgEIAwMFAQIBAgECAQIDAwECAQIBAgQDBgMNAx0CAw0EAw0JBQgFAgEEAwQEAwQIAxQCEQMJBRECBgUDBQUFAgEPAgUCAgEEAwQRBAQFAhwM/pABfBj+tAEnGRlKGBhVGBhNGBgCLQECBgECBAIDBAgJBQQEAwQBAgICBAIBAQEBAQUBBgQDCQUICAIEBgEBAU8BAQMDBAQEBQkEBgECAQYDBAIIDgMIAwYDBAECAgMEAwQDBwcDCAMSCggCBAICAwMICgcHAQwIBAQEBAQEBAsBBwMGAgYCAwUDBwMCAwkDAgIHAgICAgEBAQICBAIFDAEEAgICAgIBAgICAgIBBAIBAgIDBAEEAQQBAgMCAwIBAgMCAQIGAgECBgMDAgUCAQIPAwIBAgECAwYDAwMDAwMDAwEECQUIAwMDAQQDAwQGBQMCBQECAwIDAgMCAwMCBQIDAgwCAwIDAgMEAwQDBgMKAwYCCgEGAgUEBAQJCQYEAf7GAQICCAQEBAQzAwkDBgIGAwMDAwMDBgIDAwkCDgMIAQ0FCwUGCgcEBQkEBgICAgIDAwMDBgYGBQEFBw8mAwoDAwcDAwQDAwQDAwQDBwMOAywFCQgEAgMCEwECAwMIBBsGBxMHDRMGBw0GHw0FAQUBBQEFAQUBBQEBBAQEAgICAwMJCQgGBgUGEAsGEQUGBgUvBgUGBgwGBwUHBgL+sgECBgQEBgQJBAMFCQIDBAMMAQQDBAMHCQkIAwMDAgIBBgIGAwIDAgMDDwYBAwMBAwQHDAQBAwQEBAkIBAMCAgIBAwIEBAkEBQQEAwEKAgICAgICAQEHAgUBAQEDAgIBAgECAQEBAQECAgIEAgkBAQQBBAEEBwUECQgEAgMBAwcGAwMGAgIDAQMCAwIJAgMCAQQBBA0BAgAAAAMAAP/SAyMC6gAFAAwAEQAAASIjESERJxQVMxEhEQUWHwEjAnLW1wJe5bj9/AF5FSo+fQLq/OgCYoldXf38Ar4MFStBAAAAAAgAAP/TA9QC6QATACcATgByAHYAegB+AIIAABMiDgEVERQeATMhMj4BNRE0LgEjBSEyHgEVERQOASMhIi4BNRE0PgEXByMOARQXFhcxFhcWFxYHBg8BITc2NzYnJicmLwEmJyY1NDc2PwEHMwYHBhUUFxYfARYXFhcWBwYHIzY3NicmJyYvASYnJjU0NzYXFTM1BxUzNQcVMzUHFTM11zVZNTVZNQI6NVo0NFo1/cYCOiU+JCQ+Jf3GJT4kJD5/AwEwLA8IFxUJDQECDRMlKQEBAy4QFAMCDQgUCBMIDBARLyn5nhYLFw4JFgIUCQ0BAg0OJ54TBxMCAg4IFQYTCQsQFAR7gIBGfGqAAuk0WTX+bjVZNDRZNQGSNVk0PCQ9Jf5uJT0kJD0lAZIlPSRcAhw2LxYNGBULEQwPDxYVGQIcFhkYEhMLFQgUDBENEBMVHRgaEQ4aGRYWDRcCFAwRDA8PExcQChcaExMLFQcTDRENEBMXFAwMQAwMQQwMQQwMAAQAAP/TA9QC6QATACcAKgAvAAATIg4BFREUHgEzITI+ATURNC4BIwUhMh4BFREUDgEjISIuATURND4BBxc3BREhEQfXNVk1NVk1Ajo1WjQ0WjX9xgI6JT4kJD4l/cYlPiQkPgX6+v4NAfT7Auk0WTX+bjVZNDRZNQGSNVk0PCQ9Jf5uJT0kJD0lAZIlPSRfjY00/ukBF4wABQAAAAADSAKpABsAMgBKAGIAegAAASIHBgcGDwERFhcWFxYgNzY3NjcRNCcmJyYnJgcyFxYXFhcGBwYHBiInJicmJzY3Njc2BzIfARYXFjI3Nj8BFQYHBgcGIicmJyYnFTIfARYXFjI3Nj8BFQYHBgcGIicmJyYnFTIfARYXFiA3Nj8BFQYHBgcGIicmJyYnAfR9XjAfIgcBBiQgL1cBCFcvICMHAQciHzBefXtZKxoRBgYRGSxc8FwsGREGBhEaK1m2AQMDGzRe+l40GwcEFBksXPBcLBkUBAEDAxs0XvpeNBsHBBQZLFzwXCwZFAQBAwMbNFcBCFc0GwcEFBksVf5VLBkUBAKpFAsQERoE/iUaFBEJFBQJERMbAdsDARoREAsUIxQJDQkKCgkOCRMTCQ4JCgoJDQkUawICDgwUFAwOBCkLCg4JExMJDgsKMAICDgwUFAwOBCkLCg4JExMJDgsKMAICDgwUFAwOBPMLCg4JExMJDgsKAAkAAP+fA70DIAAKABgAJgA2AEwAXABqAHwAkAAAAQYCBzY3NjcXJi8BFh8BJwYHBgcGNzY3NhMGBw4BFjc2FxY2JicmFyYGFhcWFxYXFj4BJyYnJgUGBwYPAQYHBgcGFjY3Njc+ATc2NCYBJgYXFgYHBh4BNz4BJy4BBSYGFxYXFj4BJyYnLgEBBgcGBwYHBgcOARY3Njc2LgEFIgYWFxYfARYzMjYmJyYvASYnJgH0GE0XFyonFH0ZMTIMFiJECBkSBgoBCxQWEFAvCwESDGFjDQ4GDCvFDA8ECyUgGxoJGA0GOFME/fAKCwYLCy8pCQIDGRkEJS0EFgQIDQKtDw0DAxgZBA8ZBx8aBwIN/KQPDgMFLwcZDwQtAgENAq4JCQYKDQg2VgwBEgxuVQcCDf3ZCw0DCkNgBhIIDw0RDmE7AwYEBgImQv7zQRcwKxWHTp5RJEluSgcdFAcLBiFDTAFyAg8GGRIEGBQBFBgEC08BExgFGiohMAoFFQtrOwMLAQgECwsuSw8LDxEPD0QvBREFCBMO/sgBGw8yZC0MEwEKNn0+BwkSARoPaFwKARMMW2cIC/6zAQYDCQoEJBcGGBIDGUgHEw4BEhcFORoCBRkYARgxAwUCBAAGAAD/lQO+AyQAGwAxAEkAYABlAGsAAAEmBwYHBgcGFhcWFx4BNz4CNzYnLgEnJicjJgc2FxYXFhcWBgcOASYnLgI3Njc+ARcmBwYHBgcGFxYXFhcWNjc+AicmJy4BBzYXFhcWBxYGBwYHBiYnJicmNjc2NzYHFhc2NwUUFSERBwHzbGVhQUILDDc8PVNPt1ZYhE8GBh4cd09QVwMVEGNdWTo8CAk9PkCmtE1QZCAVFzk4ol9bVVEyNQEEJCRBRFJNnj9BRQQeIDwwfEJQSkcrLAEBSD5AS0eMMzYUFRQnJz1KUlZVOHL+hQGayQMiAjY1Wl1sXLZJSigoCxwdd6RZW1NThigpBQIxAzEwU1ZjWKxAQzsQKyyPs1VZQkROKwMwL09SW1NQTjY4EBAlMDKMoklMMiswMAIsKkZKUEuLLC8HCTEzNUVCkDs9IiubRUUuXCCMjAESowAAAAAQAAD/oAO7AyIABwAPAB0ALAA+AE8AYABuAHsAigCYAKgAtgDJANgA7QAAASYnBxchNjcnBgcjJzY3FgMGBw4BFjc2FxY2JicmFyYGFhcWFxY+AScuAScmBQYHBgcGBwYHBhYyNzY3Ni4BMyIHIgcOAR4BNzYXFjY0JyYHBgcGDwEGBwYeATc2NzY0JgUmBhYXFhcWMjYnJicmBSYHBhceATYnJjc2JgUmBhcWBwYeATc+AScuAQUmBhcWFxY+AScmNy4BBSYHBgcGBwYeATc+ATcuAQUiBhYXFhcWNiYnJicmBQ4BBwYHBg8BDgEWNz4BNz4BJgUiBhYXHgEXFjYmJyYnJgUGBwYHBgcGBwYHDgEWNz4BNzYuAQLLR5DXUgEKFysMGDDmSD98fHxKLwwBEwxeZgwOBQwxygwPAwtMLQcZDwQYSS4E/fULCgYLCAVBIQQRGAcpUQYBDf8EChIHDQkJFAlORwwSC0LqDQ4JEAo9GQURGQYpUAgOAX8MDgIKNBkHGRAEGkQE/cMZBQsbBhgSAhoQAQ4C6Q8NAwEwBBAYBx0bBAIO/KQPDgMCMQcZDwUvAgENAuwPBwUBDTIGDxkIHSYGAQ39qAsMAgg/VAwRAQtPNwYBnwwrCxMZDx4RDAUPDC9bJwgBDf49Cw0DCitjNAwOBQxkTwYCGAkJBQoOCB4mHyoLAhENNmUpBwINAaI0aJz9RIgoSpLcLVpaAVwCEAYZEQQZFgETGQQMUwETGAU4WwoBEwwyWCACCgEHBQsIBD5QDBILXUAHEw4BAgQVEQgDBh8EERkGHycCCAUMBzAwDBMBC0AuBxMPOwESFwY1VAsTDF1BA6kCK1ZNCwMRDFBUCg4tARoOZV4MEgEKNnk+CAoQARoOa1oKAhMMW2YICzgBDQoRP0MMFAMLJlctCQ6gERYGSR0DEhgGHkIGTQMVAwcEAwMCBBgUAQEZGAcVDycTFgUiLwoBFBgEFUIDAwEFAwkLAxQPDAoGGRIDCzEjBxMOAAAAABAAAP+gA7sDIgADAAgAFgAlADcASABZAGcAdACDAJEAoQCvAMIA0QDmAAABBgchAxYXITYTBgcOARY3NhcWNiYnJhcmBhYXFhcWPgEnLgEnJgUGBwYHBgcGBwYWMjc2NzYuATMiByIHDgEeATc2FxY2NCcmBwYHBg8BBgcGHgE3Njc2NCYFJgYWFxYXFjI2JyYnJgUmBwYXHgE2JyY3NiYFJgYXFgcGHgE3PgEnLgEFJgYXFhcWPgEnJjcuAQUmBwYHBgcGHgE3PgE3LgEFIgYWFxYXFjYmJyYnJgUOAQcGBwYPAQ4BFjc+ATc+ASYFIgYWFx4BFxY2JicmJyYFBgcGBwYHBgcGBw4BFjc+ATc2LgEB9GBgAYDAZDP+0jNkSi8MARMMXmYMDgUMMcoMDwMLTC0HGQ8EGEkuBP31CwoGCwgFQSEEERgHKVEGAQ3/BAoSBw0JCRQJTkcMEgtC6g0OCRAKPRkFERkGKVAIDgF/DA4CCjQZBxkQBBpEBP3DGQULGwYYEgIaEAEOAukPDQMBMAQQGAcdGwQCDvykDw4DAjEHGQ8FLwIBDQLsDwcFAQ0yBg8ZCB0mBgEN/agLDAIIP1QMEQELTzcGAZ8MKwsTGQ8eEQwFDwwvWycIAQ3+PQsNAworYzQMDgUMZE8GAhgJCQUKDggeJh8qCwIRDTZlKQcCDQIyrK0BJrRaWgHXAhAGGREEGRYBExkEDFMBExgFOFsKARMMMlggAgoBBwULCAQ+UAwSC11ABxMOAQIEFREIAwYfBBEZBh8nAggFDAcwMAwTAQtALgcTDzsBEhcGNVQLEwxdQQOpAitWTQsDEQxQVAoOLQEaDmVeDBIBCjZ5PggKEAEaDmtaCgITDFtmCAs4AQ0KET9DDBQDCyZXLQkOoBEWBkkdAxIYBh5CBk0DFQMHBAMDAgQYFAEBGRgHFQ8nExYFIi8KARQYBBVCAwMBBQMJCwMUDwwKBhkSAwsxIwcTDgAAAAUAAP+VA74DJAAbADEASQBgAGkAAAEmBwYHBgcGFhcWFx4BNz4CNzYnLgEnJicjJgc2FxYXFhcWBgcOASYnLgI3Njc+ARcmBwYHBgcGFxYXFhcWNjc+AicmJy4BBzYXFhcWBxYGBwYHBiYnJicmNjc2NzYXBgcXITY/ASYB82xlYUFCCww3PD1TT7dWWIRPBgYeHHdPUFcDFRBjXVk6PAgJPT5AprRNUGQgFRc5OKJfW1VRMjUBBCQkQURSTZ4/QUUEHiA8MHxCUEpHKywBAUg+QEtHjDM2FBUUJyc9SlWQR1IBChcrEEcDIgI2NVpdbFy2SUooKAscHXekWVtTU4YoKQUCMQMxMFNWY1isQEM7ECssj7NVWUJETisDMC9PUltTUE42OBAQJTAyjKJJTDIrMDACLCpGSlBLiywvBwkxMzVFQpA7PSIrV2g0/USIMTQAAAAKAAD/nwO9AyAABAAOABQAIgAyAEgAWABmAHgAjAAAARQVIREFMjMGBwYHBgcmNxQVITUXEwYHDgEWNzYXFjYmJyYXJgYWFxYXFhcWPgEnJicmBQYHBg8BBgcGBwYWNjc2Nz4BNzY0JgEmBhcWBgcGHgE3PgEnLgEFJgYXFhcWPgEnJicuAQEGBwYHBgcGBw4BFjc2NzYuAQUiBhYXFh8BFjMyNiYnJi8BJicmAScBmv7BcnIPIBgNFRBA4/7InARQLwsBEgxhYw0OBgwrxQwPBAslIBsaCRgNBjhTBP3wCgsGCwsvKQkCAxkZBCUtBBYECA0CrQ8NAwMYGQQPGQcfGgcCDfykDw4DBS8HGQ8ELQIBDQKuCQkGCg0INlYMARIMblUHAg392QsNAwpDYAYSCA8NEQ5hOwMGBAYB+pycATgxCRwWCQ8CNAVdXbp9AfACDwYZEgQYFAEUGAQLTwETGAUaKiEwCgUVC2s7AwsBCAQLCy5LDwsPEQ8PRC8FEQUIEw7+yAEbDzJkLQwTAQo2fT4HCRIBGg9oXAoBEwxbZwgL/rMBBgMJCgQkFwYYEgMZSAcTDgESFwU5GgIFGRgBGDEDBQIEAAABAAAAAANTAhMALgAAEzY3Njc2FxYXFhcWFxYXFjc2PwE2NzY3FQYHBgcGJyYnJicmJy4BBgcGBwYHBgeWGhsjLSItJiYYGxAgOyEdJCEYFR8NFwscGiQrJisoIxwyIRIdNjwVGxkPGxAIAUo+JzQbFAcGGA8VDhs0FREKCRsYIhIeHaU3Ii0UEAgHGRMuHw4YGwcUGCQXLhwOAAAHAAD/0wPUAukAEwAnAE0AdQCtALYAvwAAEyIOARURFB4BMyEyPgE1ETQuASMFITIeARURFA4BIyEiLgE1ETQ+ARcUFQYHJwcXBgcjFTMWFzUjNTM3Nj8BJzcXNzY/ATUzFTMuASc1BxUGBycHFwYHIxUzFhcHFzcWFxUzNTY3FzcnNj8BNQcmJzcnByYnNQczFRcWHwE3FwcXFh8BNxUjBwYPARcHJwcGDwEVIzUnJi8BByc3JyYvASM1Mzc2PwEnNxc3Nj8BFyIGFBYyNjQmBzIWFAYiJjQ21zVZNTVZNQI6NVo0NFo1/cYCOiU+JCQ+Jf3GJT4kJD5JDQ4ZLhgIAyMkAw4fHwIDCwUVDxYIDxUIFzsEGgcEDg4YLxkIAyQkBQcaLxoMD0INDxkvGggEIiMDCBgvGAoSLBYJFBAIFRAVBQsEAh4eAgMMBRcQFggQFAkWCRMRCBYQFwYKBQIfHwIFCgUWEBYHERMJCxQdHSkdHRUMEBAXEBAC6TRZNf5uNVk0NFk1AZI1WTQ8JD0l/m4lPSQkPSUBkiU9JDIREgQIGS8YEgpCDRY5FgkSEggVEBYFCwUBHx4ECwIjQCIECBkvGQ0OQg8MGS8aBwUkJQMIGS8ZDg0BQgEKEhguGAYFIhUfAQQLBRUPFgcQFAkBFwkUEAcWEBYFCgUCICACAwwEFhAWCBATCRYJFBAIFRAWBQwDAjIdKB4eKB0WEBcQEBcQAAIAAP/TA9QC6QATACcAABMiDgEVERQeATMhMj4BNRE0LgEjBSEyHgEVERQOASMhIi4BNRE0PgHXNVk1NVk1Ajo1WjQ0WjX9xgI6JT4kJD4l/cYlPiQkPgLpNFk1/m41WTQ0WTUBkjVZNDwkPSX+biU9JCQ9JQGSJT0kAAADAAAAAANeAk8AIgAmACwAAAEGBw4BDwEGBwYWFwUWPgEnNRYXFj4BJxE0JiIHBTwBJy4BBxQVJyUUFSYnNgH2CQoFFgVGjEYNBg8BNQoXDgKDmAoWDgITGAj+7AECEiflAixqe3sCTgEGAxADL14vCiMHzwYGFAufWmQGBhQLAaIMDwi6HXEcCw5XmpqampqaSVFRAAAAAAkAAP+fA70DIAAHAA8AHQAtAEMAUwBhAHMAhwAAASYnBxchNjcnBgcjJzY3FgMGBw4BFjc2FxY2JicmFyYGFhcWFxYXFj4BJyYnJgUGBwYPAQYHBgcGFjY3Njc+ATc2NCYBJgYXFgYHBh4BNz4BJy4BBSYGFxYXFj4BJyYnLgEBBgcGBwYHBgcOARY3Njc2LgEFIgYWFxYfARYzMjYmJyYvASYnJgLLR5DXUgEKFysMGDDmSD98fHhQLwsBEgxhYw0OBgwrxQwPBAslIBsaCRgNBjhTBP3wCgsGCwsvKQkCAxkZBCUtBBYECA0CrQ8NAwMYGQQPGQcfGgcCDfykDw4DBS8HGQ8ELQIBDQKuCQkGCg0INlYMARIMblUHAg392QsNAwpDYAYSCA8NEQ5hOwMGBAYBojRonP1EiChKktwtWloBWgIPBhkSBBgUARQYBAtPARMYBRoqITAKBRULazsDCwEIBAsLLksPCw8RDw9ELwURBQgTDv7IARsPMmQtDBMBCjZ9PgcJEgEaD2hcCgETDFtnCAv+swEGAwkKBCQXBhgSAxlIBxMOARIXBTkaAgUZGAEYMQMFAgQAAAUAAP+VA74DJAAbADEASQBgAGQAAAEmBwYHBgcGFhcWFx4BNz4CNzYnLgEnJicjJgc2FxYXFhcWBgcOASYnLgI3Njc+ARcmBwYHBgcGFxYXFhcWNjc+AicmJy4BBzYXFhcWBxYGBwYHBiYnJicmNjc2NzYXBgchAfNsZWFBQgsMNzw9U0+3VliETwYGHhx3T1BXAxUQY11ZOjwICT0+QKa0TVBkIBUXOTiiX1tVUTI1AQQkJEFEUk2eP0FFBB4gPDB8QlBKRyssAQFIPkBLR4wzNhQVFCcnPUpVYGABgAMiAjY1Wl1sXLZJSigoCxwdd6RZW1NThigpBQIxAzEwU1ZjWKxAQzsQKyyPs1VZQkROKwMwL09SW1NQTjY4EBAlMDKMoklMMiswMAIsKkZKUEuLLC8HCTEzNUVCkDs9IitjrK0AABQAAP+jA7gDIgAEAAgADAAQABQAGABbALMBCQFMAaEB/gJJAosCzwMSA2kDtgQCBEwAAAEVESERBTMRIxMVMzUHFTM1BxUzNQcVMzUDMSMHIwcjFSMHIw8HFR8EMzczNzM3MzczNzMXMxczFzMXMxczPwU1LwUjJyM1IycjJxcjDwUfGT8ENS8DIyc1JzUnIy8BIy8BNScjJzUvASMvATUnNScjNScjJyMvATUvASMnNScjLwEFIw8CFQcjDwEVDwIVBxUHFQ8BIw8BFQ8CFQ8BIw8BIw8BFQcVDwEjDwIVHwUzPxk1LwQhMSMVIw8DFR8EMzczNzMXMxczFzMXMxczHwYzPwU1LwIjLwkjJyMnIycjNQcjDwIjDwEVByMPASMHFQcjByMHIwcVDwMjFQ8BFQ8CIw8BHwUzPx0zPwMvAwUPBR8WFR8EMz8ENSc1Lwg1JzUvBCMnIyc1LwEjJzUnNS8BNSMvATUnIyc1LwI1LwMFIw8FFSMVBxUHFSMVBxUXFTMVFxUXFRcVHwkzPwQ1LwI1JzUnNSc1JzUnNTc1NzU3NTc1NzUvBAUjDwMVBxcVBxUHFQcVBxUPCBUfAzM/BjU3NT8HNTc1MzU3NTc1JzUvAwUjDwMVFxUXFRcVFxUfBxUXFR8CMxUfAzM/BDUvCzUnNSc1JzUnNS8EBSMPBRUHFQ8PFR8FPwI1PwE1NzM3NT8CMz8KNTcvBAUPBR8CFRcVFzMXMx8CMx8BMxUXFRcVFzMfATMXMxcVFxUfARUfAhUfAjM/BTUvHAUjDwgjByMHIwcjByMHIw8EFR8FMzczNzM3MzczPwszNzM/ATU/ATU3NT8ENS8EBQ8FFR8FMx8BFRczFzMfARUfATMXFR8EMxczHwYzPwU1LxYhIw8XFR8GMz8IMz8ENTczNzM3NT8BNT8BMz8ENS8EAV0BLv7q/v4aysrKysrKymULBgsFDAUFBiYGCggEAgMBAQIGBAkEKwUJBQUFBQoFHgUKBQUFBQoEGAkFBAMEBAEBBAMEByYFBgULBgsG9AUEBQMEBAICCAIMBwgHBAMEAwQDBwYHDwIJAgMRBAMECQkEBAMEAQIDAgECAwIBAhIBCQQGAQMEAwEDCAQDAQMBAwEIBAQEAQQIAQQK/fEFBAgFBAEEBAQMBAQECAMBAwQDBAMECQEPAgECAwMFAgEEAwMBAgMDCAQJBQcFBRAGAgYCDwcGBwMEAwQDBAcIBAQHAgECAgMECAEEEg0KBQcGAgIDCAgEAQgEJgQIAwQEBAcECAMaAwgHBwMJBQQEBAMEAQQDBwEDBQQEBAQECQQmBAkFBAQFDa0ECAYHAQMIAwEVAwEDAwEJAQwBCQkDAwIBAgMDCAQBBAICAgMDCAQFBAkDCAMCBAMCAwIDAgMCAwMDAgMDAwMDAwMDBgMjAgMEBAICBQQIAYQFCAQDAwMBBgMDAgMCAwIDAgMHFgEEAQQBBgMCAgQEAwQFCQQEBAMEAQICAgECAQIBAgICAQEBCAEBAQICBAECBwMCAQIDAgECBgMJAwMDBP3DBQQIAwMCAgECAQEBAQEBAgEIAgEBAQMDBAQEBQkEAwMEAQIFAwIBAQEBAQECAQECAwMJAu4FBAgGAgEBAQEBAggCAQICBAEWAQEEAwwFCQQGBQQDCgIIAQIBAgICBwEBAQEBBAMECPynBQgIBAIBAQECBgICAgEEAQYCCgMEAQMGBAUJBAQEAwQCARIBAgECAQICAgcCAQEBAQIHAwUC8AQFBAQDBAICBwIDBQIEAQIDDAoDBAIEAQEEAwQECQgFBwMPAgEGBQgBAQEGAQIBAgECAgIJAQICAwQI/a0ECAQDAgICBQYMBgEMAQYHAwEDAwEHBwMBBwcBAwEDBAgEBAwEBAQECQQEBAUCAQEEBAMVAwQKBxkDCgIDAwMDAwMDAgYDAgMCAwIIAZwFBAQBBwocCwcSBAsEBwQEBwQIBBAIBAMCAgEEBAMEBQwFDQQFBAUIBSYECQQEBAQEBAEEAwEDAQMEBAgECQQCAgECBgMEBf5EBAUEBgICAQIDAwUEAQQNCQENAQQFBQQBBAUFCgUZAQQBFAYFBQULCgkFBAQDBAECAwMEBxMFBAUFBAUFBCUeCAQECQwDDQISBQQFAwEUBAQJCBYsBQUEBQUFBAUbBAYEAQECAwMEBAQJAwYFCwUFBQYUAR4FCgUFBAEEAQQFHA0EAQQFAwIBAgIDBAgCHAz+kAF8GP60AScZGUoYGFUYGE0YGAIvAQEBAQcCAgQDBAQECQQFBgMCCQIBAQEBAQECBQECAwMIBAUECQMDAwcBAQEBUwECAgQHCQkKAQkHBgcDBAMEAwQHCAcUBA0EBCADAwICAgIDAwgJBQYFBQQBBAEEBRwNBAEIBAEEBAQIAQMBAwEDBAgDAQMEAwEGBAcIAQQEAQMEAwEDDAMBAwEDAQgEBAQBBAQEAQQNFwUFBAEEAQkFCgUMBAUEBAMEAQIFBwweCAQJBBQHCAcEAwQDBAMHBgQDBwUEBAkEBAMEAQICBQwFCQQDBgIBAQEBAQICBwICAwICAgECAwMIBQkIAwUCAQIBAgECAgIJAgEBAScCAwUCBAECDwMCAQIJDAkBCQQDAwEDAwEDCwcHCQkEAwQEAQEEAwwDBAYDAwIDAwMDAwMCAwMCAwIDAgMCAwQDFgMDCAkJBwMEOwECAwMEDQULAgMDAwMDAwID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bwBtACAARgBvAG4AdABlAGwAbABvACAAcAByAG8AagBlAGMAdAAuAGgAdAB0AHAAOgAvAC8AZgBvAG4AdABlAGwAbABvAC4AYwBvAG0AAAAAAgAAAAAAAAAKAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABsAQIBAwEEAQUBBgEHAQgBCQEKAQsBDAENAQ4BDwEQAREBEgETARQBFQEWARcBGAEZARoBGwEcAR0BHgEfASABIQEiASMBJAElASYBJwEoASkBKgErASwBLQEuAS8BMAExATIBMwE0ATUBNgE3ATgBOQE6ATsBPAE9AT4BPwFAAUEBQgFDAUQBRQFGAUcBSAFJAUoBSwFMAU0BTgFPAVABUQFSAVMBVAFVAVYBVwFYAVkBWgFbAVwBXQFeAV8BYAFhAWIBYwFkAWUBZgFnAWgBaQFqAWsBbAFtAAV0cmFzaBBnYXRld2F5LXBhcmFsbGVsH2ludGVybWVkaWF0ZS1ldmVudC1jYXRjaC1jYW5jZWwxaW50ZXJtZWRpYXRlLWV2ZW50LWNhdGNoLW5vbi1pbnRlcnJ1cHRpbmctbWVzc2FnZRhzdGFydC1ldmVudC1jb21wZW5zYXRpb24uc3RhcnQtZXZlbnQtbm9uLWludGVycnVwdGluZy1wYXJhbGxlbC1tdWx0aXBsZQtsb29wLW1hcmtlchJwYXJhbGxlbC1taS1tYXJrZXIjc3RhcnQtZXZlbnQtbm9uLWludGVycnVwdGluZy1zaWduYWwvaW50ZXJtZWRpYXRlLWV2ZW50LWNhdGNoLW5vbi1pbnRlcnJ1cHRpbmctdGltZXIqaW50ZXJtZWRpYXRlLWV2ZW50LWNhdGNoLXBhcmFsbGVsLW11bHRpcGxlJWludGVybWVkaWF0ZS1ldmVudC1jYXRjaC1jb21wZW5zYXRpb24LZ2F0ZXdheS14b3IQZW5kLWV2ZW50LWNhbmNlbCJpbnRlcm1lZGlhdGUtZXZlbnQtY2F0Y2gtY29uZGl0aW9uO2ludGVybWVkaWF0ZS1ldmVudC1jYXRjaC1ub24taW50ZXJydXB0aW5nLXBhcmFsbGVsLW11bHRpcGxlFXN0YXJ0LWV2ZW50LWNvbmRpdGlvbiJzdGFydC1ldmVudC1ub24taW50ZXJydXB0aW5nLXRpbWVyFHNlcXVlbnRpYWwtbWktbWFya2VyCXVzZXItdGFzaw1idXNpbmVzcy1ydWxlEnN1Yi1wcm9jZXNzLW1hcmtlch1zdGFydC1ldmVudC1wYXJhbGxlbC1tdWx0aXBsZRFzdGFydC1ldmVudC1lcnJvch9pbnRlcm1lZGlhdGUtZXZlbnQtY2F0Y2gtc2lnbmFsHmludGVybWVkaWF0ZS1ldmVudC1jYXRjaC1lcnJvchZlbmQtZXZlbnQtY29tcGVuc2F0aW9uFHN1YnByb2Nlc3MtY29sbGFwc2VkE3N1YnByb2Nlc3MtZXhwYW5kZWQEdGFzaw9lbmQtZXZlbnQtZXJyb3IjaW50ZXJtZWRpYXRlLWV2ZW50LWNhdGNoLWVzY2FsYXRpb24eaW50ZXJtZWRpYXRlLWV2ZW50LWNhdGNoLXRpbWVyFnN0YXJ0LWV2ZW50LWVzY2FsYXRpb24Sc3RhcnQtZXZlbnQtc2lnbmFsEmJ1c2luZXNzLXJ1bGUtdGFzawZtYW51YWwHcmVjZWl2ZQ1jYWxsLWFjdGl2aXR5EXN0YXJ0LWV2ZW50LXRpbWVyE3N0YXJ0LWV2ZW50LW1lc3NhZ2UXaW50ZXJtZWRpYXRlLWV2ZW50LW5vbmUdaW50ZXJtZWRpYXRlLWV2ZW50LWNhdGNoLWxpbmsUZW5kLWV2ZW50LWVzY2FsYXRpb24HYnBtbi1pbw9nYXRld2F5LWNvbXBsZXgSZ2F0ZXdheS1ldmVudGJhc2VkDGdhdGV3YXktbm9uZQpnYXRld2F5LW9yE2VuZC1ldmVudC10ZXJtaW5hdGUQZW5kLWV2ZW50LXNpZ25hbA5lbmQtZXZlbnQtbm9uZRJlbmQtZXZlbnQtbXVsdGlwbGURZW5kLWV2ZW50LW1lc3NhZ2UOZW5kLWV2ZW50LWxpbmsgaW50ZXJtZWRpYXRlLWV2ZW50LWNhdGNoLW1lc3NhZ2UlaW50ZXJtZWRpYXRlLWV2ZW50LXRocm93LWNvbXBlbnNhdGlvbhRzdGFydC1ldmVudC1tdWx0aXBsZQZzY3JpcHQLbWFudWFsLXRhc2sEc2VuZAdzZXJ2aWNlDHJlY2VpdmUtdGFzawR1c2VyEHN0YXJ0LWV2ZW50LW5vbmUjaW50ZXJtZWRpYXRlLWV2ZW50LXRocm93LWVzY2FsYXRpb24haW50ZXJtZWRpYXRlLWV2ZW50LWNhdGNoLW11bHRpcGxlNGludGVybWVkaWF0ZS1ldmVudC1jYXRjaC1ub24taW50ZXJydXB0aW5nLWVzY2FsYXRpb24daW50ZXJtZWRpYXRlLWV2ZW50LXRocm93LWxpbmsmc3RhcnQtZXZlbnQtbm9uLWludGVycnVwdGluZy1jb25kaXRpb24LZGF0YS1vYmplY3QLc2NyaXB0LXRhc2sJc2VuZC10YXNrCmRhdGEtc3RvcmUnc3RhcnQtZXZlbnQtbm9uLWludGVycnVwdGluZy1lc2NhbGF0aW9uIGludGVybWVkaWF0ZS1ldmVudC10aHJvdy1tZXNzYWdlMmludGVybWVkaWF0ZS1ldmVudC1jYXRjaC1ub24taW50ZXJydXB0aW5nLW11bHRpcGxlMGludGVybWVkaWF0ZS1ldmVudC1jYXRjaC1ub24taW50ZXJydXB0aW5nLXNpZ25hbCFpbnRlcm1lZGlhdGUtZXZlbnQtdGhyb3ctbXVsdGlwbGUkc3RhcnQtZXZlbnQtbm9uLWludGVycnVwdGluZy1tZXNzYWdlDWFkLWhvYy1tYXJrZXIMc2VydmljZS10YXNrCXRhc2stbm9uZRNjb21wZW5zYXRpb24tbWFya2VyJXN0YXJ0LWV2ZW50LW5vbi1pbnRlcnJ1cHRpbmctbXVsdGlwbGUfaW50ZXJtZWRpYXRlLWV2ZW50LXRocm93LXNpZ25hbDNpbnRlcm1lZGlhdGUtZXZlbnQtY2F0Y2gtbm9uLWludGVycnVwdGluZy1jb25kaXRpb24LcGFydGljaXBhbnQZZXZlbnQtc3VicHJvY2Vzcy1leHBhbmRlZBFsYW5lLWluc2VydC1iZWxvdwpzcGFjZS10b29sEGNvbm5lY3Rpb24tbXVsdGkEbGFuZQpsYXNzby10b29sEWxhbmUtaW5zZXJ0LWFib3ZlEWxhbmUtZGl2aWRlLXRocmVlD2xhbmUtZGl2aWRlLXR3bwpkYXRhLWlucHV0C2RhdGEtb3V0cHV0CWhhbmQtdG9vbAVncm91cA90ZXh0LWFubm90YXRpb24LdHJhbnNhY3Rpb24Mc2NyZXctd3JlbmNoCmNvbm5lY3Rpb24QY29uZGl0aW9uYWwtZmxvdwxkZWZhdWx0LWZsb3cAAA==) format("truetype"),url("data:image/svg+xml,%3c?xml%20version='1.0'%20standalone='no'?%3e%3c!DOCTYPE%20svg%20PUBLIC%20'-//W3C//DTD%20SVG%201.1//EN'%20'http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd'%3e%3csvg%20xmlns='http://www.w3.org/2000/svg'%3e%3cmetadata%3ecamunda%20Services%20GmbH%3c/metadata%3e%3cdefs%3e%3cfont%20id='bpmn'%20horiz-adv-x='1000'%20%3e%3cfont-face%20font-family='bpmn'%20font-weight='400'%20font-stretch='normal'%20units-per-em='1000'%20ascent='850'%20descent='-150'%20/%3e%3cmissing-glyph%20horiz-adv-x='1000'%20/%3e%3cglyph%20glyph-name='trash'%20unicode='&%23xe801;'%20d='M429%20743c-58-4-70%2011-71-52l0-9-172-56c-20-5-20-29%200-30l624%200c19%200%2019%2025%200%2030l-168%2055%200%2010c0%2062-7%2048-71%2052l-71%200z%20m-215-204c-14%200-25-12-24-26l50-555c1-12%2011-22%2024-22l457%200c13%200%2023%209%2025%2022l64%20554c2%2015-9%2027-24%2027l-143%200-143%200z%20m27-49l259%200%20259%200-59-505-414%200z%20m120-73c-1%200-2%200-3%200-16-1-28-15-25-31l44-320c2-15%2016-26%2031-24%2015%202%2025%2017%2022%2032l-44%20319c-2%2013-12%2023-25%2024z%20m280%200c-13%200-25-10-27-24l-44-319c-3-15%207-30%2022-32%2016-2%2029%209%2031%2024l44%20320c3%2016-9%2030-26%2031z'%20horiz-adv-x='1000'%20/%3e%3cglyph%20glyph-name='gateway-parallel'%20unicode='&%23xe804;'%20d='M500%20802c-9%200-19-4-26-11l-415-415c-14-14-14-38%200-52l415-415c14-14%2038-14%2052%200l415%20415c14%2014%2014%2038%200%2052l-415%20415c-7%207-17%2011-26%2011z%20m0-62l390-390-390-390-390%20390%20390%20390z%20m-11-161c0%200-4-1-4-1%200%200-4-3-4-3%200%200-3-4-3-4%200%200-1-4-1-4l0-194-194%200%200%200c0%200-4-1-4-1%200%200-4-3-4-3l0%200c0%200-3-4-3-4%200%200-1-4-1-4l0-21c0%200%201-5%201-5%200%200%203-4%203-4%200%200%204-3%204-3%200%200%204-1%204-1l194%200%200-194%200%200c0%200%201-4%201-4%200%200%203-4%203-4%200%200%204-3%204-3%200%200%204-1%204-1l22%200c0%200%204%201%204%201%200%200%204%203%204%203%200%200%203%204%203%204%200%200%201%204%201%204l0%20194%20194%200c0%200%204%201%204%201%200%200%204%203%204%203%200%200%203%204%203%204%200%200%201%204%201%204l0%2022c0%200-1%204-1%204%200%200-3%204-3%204%200%200-4%203-4%203%200%200-4%201-4%201l-194%200%200%20194c0%200-1%204-1%204%200%200-3%204-3%204%200%200-4%203-4%203%200%200-4%201-4%201l-22%200z'%20horiz-adv-x='1000'%20/%3e%3cglyph%20glyph-name='intermediate-event-catch-cancel'%20unicode='&%23xe805;'%20d='M499%20802c-220%204-425-177-448-396-24-185%2078-380%20247-461%20160-80%20368-56%20501%2066%20134%20118%20190%20318%20128%20486-57%20167-217%20293-393%20303-12%201-23%202-35%202z%20m-5-49c202%207%20391-161%20407-362%2019-178-92-361-262-420-166-61-368-2-468%20145-103%20144-99%20356%2018%20490%2074%2090%20188%20146%20305%20147z%20m8-44c-186%206-358-158-361-344-9-169%20116-334%20283-367%20155-33%20328%2046%20397%20190%2071%20140%2039%20327-83%20430-64%2057-150%2091-236%2091z%20m-2-48c164%204%20314-144%20311-308%203-152-119-297-272-312-143-19-295%2073-336%20213-43%20134%2014%20295%20138%20364%2048%2028%20103%2043%20159%2043z%20m-112-111c-29-30-58-59-87-88%2037-38%2075-75%20112-113-37-36-74-73-110-110%2028-29%2057-58%2086-86%2037%2037%2073%2073%20110%20110%2038-37%2075-75%20113-112%2029%2029%2058%2058%2088%2087-38%2038-76%2075-113%20113%2037%2037%2074%2073%20110%20110-28%2029-57%2058-86%2086-37-36-73-73-110-110-38%2037-75%2075-113%20113z%20m0-35c38-38%2075-75%20113-113%2037%2037%2073%2074%20110%20111%2017-17%2035-35%2052-52-37-37-74-73-111-110%2038-38%2075-75%20113-113-18-18-35-35-53-53-38%2038-75%2075-113%20113-36-37-73-74-110-111-17%2017-35%2035-52%2052%2037%2037%2074%2074%20111%20110-38%2038-75%2076-113%20113%2018%2018%2035%2035%2053%2053z'%20horiz-adv-x='1000'%20/%3e%3cglyph%20glyph-name='intermediate-event-catch-non-interrupting-message'%20unicode='&%23xe806;'%20d='M295%20506l0-312%20410%200%200%20312-410%200z%20m91-49l228%200c-38-30-76-60-114-90-38%2030-76%2060-114%2090z%20m270-28l0-186-312%200%200%20186c52-42%20104-83%20156-125%2052%2042%20104%2083%20156%20125z%20m-156%20373l0%200-5%200-1%200%200%200-5%200%200%200%200%200-6-1%200%200%200%200-5%200%200%200%200%200-6%200%200%200%200%200-5-1%200%200-1%200-5%200%200%200%200%200-5%200-1%200%200-1-5%200%200%200%200%200-5-1-1%200%200%200-5%200%200%200%200%200-5-1-1%200%200%200-5-1%200%200%200%200-5-1-1%200%200%200-5-1%200%200%200%200-5-1%200%200-1%200-5-1%200%200%200%200-5-1%200%200%200%200-6-2%200%200%200%200-5-1%200%200%200%200-5-1-4-2-4-2-4-3-2-4-3-4-1-4%200-5%200-4%201-4%202-5%203-3%203-3%204-3%204-1%205-1%204%200%204%201%205%201%205%201%204%201%205%201%205%201%205%201%205%201%205%201%205%200%204%201%205%201%205%200%205%201%205%200%205%201%205%200%205%200%205%201%205%200%205%200%205%200%205%200%205%200%205%200%205-1%205%200%205%200%205-1%205%200%205-1%205%200%205-1%205-1%204%200%205-1%205-1%205-1%205-1%204-1%205%200%204%200%205%201%204%202%203%203%204%203%202%204%202%204%201%204%200%205-1%204-2%205-2%204-3%203-4%203-4%202-3%201-5%201%200%200%200%200-5%201%200%200-1%200-5%201%200%200%200%200-5%201%200%200%200%200-6%201%200%200%200%200-5%201%200%200%200%200-6%201%200%200%200%200-5%200%200%200%200%200-6%201%200%200%200%200-5%200%200%201%200%200-6%200%200%200%200%200-5%200%200%200-1%200-5%201%200%200%200%200-5%200-1%200%200%200-5%200%200%200%200%200-6%201%200%200%200%200-5%200%200%200%200%200-6%200%200%200z%20m255-83l-5%200-4-1-5-2-3-2-4-4-2-3-2-4-1-5-1-4%201-5%201-4%203-4%203-4%202-2%202-1%204-3%204-3%204-3%203-3%204-4%204-3%204-3%203-3%204-4%204-3%203-4%204-3%203-4%204-3%203-4%204-4%203-3%203-4%203-4%204-4%203-3%203-4%203-4%203-4%203-4%203-4%202-4%203-4%203-5%203-4%202-4%203-4%202-4%203-5%202-4%202-4%203-5%202-4%201-2%202-4%204-3%203-3%204-2%205-1%204-1%205%201%204%201%204%202%204%203%203%203%202%204%202%204%200%205%200%204-1%205-1%203-1%203%200%200%200%200-3%205%200%200%200%200-2%205%200%200-1%200-2%204%200%201%200%200-3%204%200%200%200%201-2%204-1%200%200%200-2%205%200%200%200%200-3%205%200%200%200%200-3%204%200%200%200%200-3%205%200%200%200%200-3%205%200%200%200%200-3%204%200%200%200%200-3%205%200%200-1%200-3%204%200%200%200%200-3%205%200%200%200%200-3%204%200%200%200%200-4%204%200%201%200%200-3%204%200%200%200%200-3%204-1%200%200%200-3%204%200%201%200%200-4%204%200%200%200%200-3%204%200%200-1%200-3%204%200%200%200%200-4%204%200%200%200%200-4%204%200%200%200%201-4%203%200%200%200%201-3%203-1%200%200%201-3%203-1%200%200%200-3%204-1%200%200%200-4%204%200%200%200%200-4%204%200%200%200%200-4%203%200%201%200%200-4%203%200%200%200%200-4%204%200%200-1%200-4%203%200%200%200%201-4%203%200%200%200%200-4%203%200%200-1%200-4%204%200%200%200%200-4%203%200%200%200%200-2%201-4%203-4%201-4%201z%20m-519-10l-5%200-4-1-4-2-4-2-1-1%200%200%200%200-4-3%200-1%200%200-4-3%200%200-1%200-4-4%200%200%200%200-4-3%200%200%200-1-4-3%200%200%200%200-4-4%200%200%200%200-4-4%200%200%200%200-4-4%200%200%200%200-4-3%200-1%200%200-4-3%200-1%200%200-4-3%200-1%200%200-4-4%200%200%200%200-4-4%200%200%200%200-3-4%200%200-1%200-3-4%200%200%200%200-4-4%200%200%200-1-3-4%200%200%200%200-4-4%200%200%200%200-3-4%200%200%200-1-4-4%200%200%200%200-3-4%200%200%200%200-3-5%200%200%200%200-3-4%200%200-1%200-3-5%200%200%200%200-3-4%200%200%200%200-3-5%200%200%200%200-3-5%200%200%200%200-3-4%200%200%200%200-2-5-1%200%200%200-2-5%200%200%200%200-3-4%200-1%200%200-3-4%200%200%200-1-2-4%200%200%200%200-3-5%200%200%200%200-2-5%200%200-1%200-2-5%200%200%200%200-2-5%200%200%200%200-3-5%200%200%200%200-1-3-1-4-1-5%200-4%201-5%202-4%203-4%203-3%204-2%204-2%204-1%205%200%204%200%205%202%203%202%204%203%203%204%202%203%201%203%202%204%202%205%202%204%202%204%203%205%202%204%202%204%203%205%202%204%203%204%203%204%202%204%203%205%203%204%202%204%203%204%203%204%203%204%203%204%203%204%203%203%204%204%203%204%203%204%203%203%204%204%203%204%204%203%203%204%204%203%203%204%204%203%204%204%203%203%204%203%204%203%204%204%204%203%201%201%203%203%203%203%202%205%201%204%200%204-1%205-1%204-2%204-3%204-4%203-4%202-4%202-4%200z%20m264%200l0%200-4%200%200%200-1%200-4%200%200%200%200%200-4%200%200%200%200%200-5%200%200-1%200%200-4%200%200%200%200%200-4%200-1%200%200%200-4%200%200%200%200%200-4-1%200%200-1%200-1%200-4-1-5-2-3-2-4-3-2-4-2-4-2-4%200-5%201-4%201-5%202-4%203-3%204-3%204-3%204-1%204-1%204%200%201%201%204%200%204%200%204%201%204%200%203%200%204%200%204%200%204%200%204%200%204%200%204%200%203%200%204%200%204-1%204%200%204%200%203-1%204%200%204-1%204%200%204-1%203-1%204%200%204-1%204-1%203%200%204-1%204-1%203-1%204-1%204-1%203-1%204-1%203-2%204-1%204-1%203-1%204-2%203-1%204-1%203-2%200%200%200%200%204-1%205-1%205%200%204%201%204%202%204%203%203%203%202%204%202%204%201%205%200%204%200%205-2%204-2%204-3%203-4%203-3%202%200%200-1%200%200%200-3%202-1%200%200%200-4%201%200%200%200%200-4%202%200%200%200%200-4%201%200%200%200%200-4%202%200%200%200%200-4%201%200%200%200%200-4%202%200%200%200%200-4%201%200%200-1%200-3%201-1%200%200%200-4%202%200%200%200%200-4%201%200%200%200%200-4%201%200%200%200%200-4%201%200%200-1%200-4%201%200%200%200%200-4%201%200%200%200%200-4%201%200%200%200%200-4%201-1%200%200%200-4%201%200%200%200%200-4%201%200%200%200%200-4%200-1%200%200%200-4%201%200%200%200%200-4%201%200%200%200%200-5%200%200%200%200%200-4%201%200%200%200%200-4%200%200%200-1%200-4%201%200%200%200%200-4%200%200%200%200%200-5%200%200%200%200%200-4%200%200%200%200%201-4%200-1%200%200%200-4%200%200%200%200%200-4%200%200%200-1%200-4%200%200%200z%20m-155-39l-4%200-5-1-3-1-2-1%200%200%200%200-4-2%200%200%200%200-3-2-1-1%200%200-3-2%200%200-1%200-3-2%200%200%200%200-4-2%200%200%200%200-4-2%200-1%200%200-3-2%200%200-1%200-3-2%200%200%200%200-4-3%200%200%200%200-3-2%200%200%200%200-4-3%200%200%200%200-3-2%200%200-1-1-3-2%200%200%200%200-3-3%200%200-1%200-3-2%200-1%200%200-3-2%200%200-1%200-3-3%200%200%200%200-3-3%200%200%200%200-3-3-1%200%200%200-3-3%200%200%200%200-3-3%200%200%200%200-3-3%200%200%200%200-3-3-1%200%200%200-3-3%200%200%200%200-3-3%200%200%200%200-3-3%200-1%200%200-3-3%200%200%200%200-3-3%200%200%200%200-3-3%200%200%200%200-3-4%200%200%200%200-3-3%200%200%200%200-2-3-1%200%200-1-2-3%200%200%200%200-3-3%200%200%200-1-3-3%200%200%200%200-2-3%200%200-1-1-2-3%200%200%200%200-2-3-1-1%200%200-2-3%200%200%200%200-2-4-1%200%200%200-2-3-2-4-1-4-1-5%201-4%201-5%202-4%203-3%203-4%204-2%204-2%204-1%205%200%204%201%205%202%204%202%203%203%202%203%202%203%202%203%202%203%203%203%202%204%202%203%202%203%203%203%202%203%203%202%202%203%203%203%202%203%203%203%202%203%203%203%203%202%203%203%202%203%203%202%203%203%203%202%203%203%203%202%203%203%203%202%203%203%203%202%203%202%203%203%203%202%203%202%203%202%203%202%203%202%204%202%203%202%203%202%203%202%204%202%203%202%202%200%203%203%204%203%202%204%202%204%201%204%201%205-1%204-1%205-3%204-2%203-4%203-4%202-4%202-5%200z%20m393-59l-5-1-4-1-4-1-4-3-3-3-3-4-1-4-1-5-1-4%201-5%202-4%202-4%202-3%203-2%203-3%202-3%203-3%202-3%203-3%202-3%203-2%202-3%203-3%202-3%202-3%203-4%202-3%202-3%202-3%202-3%202-3%202-4%202-3%202-3%202-3%202-4%202-3%201-3%202-4%202-3%201-3%202-4%202-3%201-4%201-3%202-4%201-3%202-4%201-3%201-4%201-4%202-3%201-4%201-3%200-3%202-4%202-4%204-3%203-3%204-2%205-1%204%200%205%200%204%201%204%203%204%202%203%204%202%204%202%204%200%205%200%204-1%204%200%202%200%200%200%200-2%204%200%200%200%201-1%203%200%201%200%200-1%204%200%200%200%200-2%204%200%200%200%200-1%204%200%200%200%200-2%204%200%200%200%200-1%204%200%200%200%200-2%204%200%200%200%200-1%204%200%200%200%201-2%203%200%200%200%201-2%203%200%200%200%201-2%203%200%200%200%201-1%203%200%200-1%201-1%203%200%200%200%200-2%204%200%200%200%200-2%204%200%200%200%200-2%204%200%200%200%200-2%204%200%200-1%200-1%204-1%200%200%200-2%203%200%201%200%200-2%203%200%200%200%200-2%204%200%200%200%200-2%204-1%200%200%200-2%203%200%200%200%201-2%203%200%200%200%200-3%204%200%200%200%200-2%203%200%200%200%201-3%203%200%200%200%200-2%203%200%201-1%200-2%203%200%200%200%200-3%203%200%201%200%200-2%203-1%200%200%200-2%203%200%201%200%200-3%203%200%200%200%200-3%203%200%200%200%200-3%204%200%200%200%200-3%203%200%200%200%200-3%203%200%200%200%200-3%203%200%200%200%201-3%203%200%200%200%200-3%202-3%203-4%203-5%201-4%201z%20m-564-171l-5%200-4-1-4-2-4-2-3-4-3-3-2-4-1-4-1-4%200%200%200%200%200-4%200%200-1%200%200-4%200-1%200%200-1-4%200%200%200%200-1-4%200%200%200%200%200-5%200%200%200%200-1-4%200%200%200%200%200-4%200%200%200-1%200-4%200%200-1%200%200-4%200%200%200%200%200-5%200%200%200%200%200-4%200%200%200%200-1-4%200-1%200%200%200-4%200%200%200%200%200-4%200%200%200-1%200-4%200%200%200%200%200-4%200%200%200-1%200-4%200%200%200%200%200-4%200%200%200%200%201-5%200%200%200%200%200-4%200%200%200%200%200-4%200-1%200%200%200-4%201%200%200%200%200-4%200%200%200-1%200-4%200%200%200%200%201-4%200%200%200%200%200-4%200-1%200%200%201-4%200%200%200%200%201-4%200%200%200%200%200-4%201-1%200%200%200-4%200%200%200%200%201-4%200%200%200%200%201-4%200-1%200%200%201-4%200%200%200%200%201-4%200%200%200%200%201-4%200%200%200-1%201-4%200%200%200%200%201-4%200%200%200%200%201-4%200%200%200%200%202-4%200%200%200%200%201-4%200-1%200%200%201-1%201-4%203-4%203-3%204-3%204-2%204-1%205%200%204%201%205%201%204%202%203%203%203%204%202%204%202%204%200%205%200%204-1%204%200%201-2%204-1%204-1%203-1%204-1%203-1%204%200%204-1%204-1%203-1%204%200%204-1%204-1%203%200%204-1%204%200%204%200%203-1%204%200%204%200%204-1%204%200%204%200%203%200%204%200%204%200%204%200%204%200%204%200%203%201%204%200%204%200%204%201%204%200%203%200%204%201%204%200%204%201%204%201%203%200%204%201%204%200%204%200%205-1%204-2%204-3%204-3%203-4%202-5%202-4%201z%20m754-46l-5%200-4-1-4-2-4-2-3-4-3-4-2-4%200-4-1-4%201-4%200-5%200-5%200-5%200-5%200-5%200-5-1-5%200-5%200-5-1-5%200-5-1-5%200-5-1-5-1-4%200-5-1-5-1-5-1-5-1-5-1-5-1-4-1-5-1-5-2-5-1-4-2-5-1-5-1-4-2-5-2-5-1-4-2-5-2-4-2-5-2-5-2-4-2-5-2-4-2-4-2-5-2-4-2-5-1-4%200-5%201-4%202-4%202-4%203-4%204-2%204-2%204-2%205%200%204%201%205%201%204%202%203%203%203%203%202%203%203%205%200%200%200%200%202%205%200%200%200%200%202%205%200%200%200%200%203%205%200%200%200%200%202%205%200%200%200%200%202%205%200%200%200%200%202%205%200%200%200%200%202%205%200%200%200%200%202%205%200%200%200%201%202%204%200%201%200%200%202%205%200%200%200%200%202%205%200%200%200%200%202%205%200%200%200%200%202%205%200%200%200%201%201%205%200%200%200%200%202%205%200%200%200%200%201%205%200%200%200%200%202%205%200%201%200%200%201%205%200%200%200%200%201%205%200%200%200%200%202%206%200%200%200%200%201%205%200%200%200%200%201%205%200%201%200%200%201%205%200%200%200%200%201%205%200%200%200%201%201%205%200%200%200%200%201%205%200%200%200%201%201%205%200%200%200%200%200%205%200%200%200%201%201%205%200%200%200%200%200%205%201%200%200%201%200%205%200%200%200%200%200%205%200%201%200%200%201%205%200%200%200%200%200%206%200%200%200%200%200%205%200%200%200%200%201%206%200%200%200%200%200%205%200%200%200%201%200%205%200%200%200%200%200%206%200%200%200%200%200%205%200%200%200%200-1%206%200%200%200%200%200%204%200%205-2%204-2%204-3%203-4%203-4%202-4%202-4%200z%20m-853-16l-5%200-4-1-4-1-4-3-4-3-2-4-2-4-1-4-1-4%200-4%200%200%200%200%200-5%200-1%200%200%201-5%200%200%200%200%200-6%200%200%200%200%200-5%200%200%200%200%200-6%200%200%200%200%201-5%200%200%200-1%200-5%200%200%200%200%201-5%200-1%200%200%200-5%200%200%200%200%201-5%200-1%200%200%201-5%200%200%200%200%200-5%200-1%200%200%201-5%200%200%200%200%201-5%200-1%200%200%201-5%200%200%200%200%201-5%200%200%200-1%201-5%200%200%200%200%201-5%200%200%200%200%202-6%200%200%200%200%201-5%200%200%200%200%201-5%200%200%200-1%202-5%200%200%200%200%201-5%200%200%200%200%202-5%200%200%200%200%202-5%200-1%200%200%201-5%200%200%200%200%202-5%200%200%200%200%202-5%200%200%200%200%202-5%200%200%200-1%202-4%200-1%200%200%202-5%200%200%200%200%202-5%200%200%200%200%202-5%200%200%200%200%202-5%200%200%200%200%202-5%200%200%200%200%203-5%200%200%200%200%202-5%200%200%200%200%202-5%201%200%200%200%200-1%203-4%203-3%203-3%204-2%205-1%204%200%205%200%204%201%204%203%204%202%203%204%202%204%202%204%200%205%200%204-1%205-1%203-1%201-2%205-2%204-2%204-2%205-2%204-2%205-2%205-2%204-2%205-1%204-2%205-1%205-2%204-1%205-2%205-1%204-1%205-2%205-1%205-1%204-1%205-1%205-1%205-1%205-1%205%200%205-1%204-1%205%200%205-1%205%200%205-1%205%200%205%200%205-1%205%200%205%200%205%200%205%200%204%200%204-1%205-2%204-3%203-4%204-3%202-5%202-4%200z%20m756-57l-4%200-5-1-4-2-4-3-3-3-2-4-2-4-1-3%200%200%200%200%200%200%200%200-1-4%200-4-1-4-1-3%200-4-1-4-1-4-1-3-1-4-1-3-1-4-1-4-2-3-1-4-1-3-1-4-2-4-1-3-2-4-1-3-1-4-2-3-2-3-1-4-2-3-2-4-1-3-2-3-2-4-2-3-2-3-2-3-2-4-2-3-2-3-2-3-2-3-2-3-3-3-2-3-2-4-2-1-2-4-2-4-1-5%200-4%201-5%202-4%202-4%203-3%204-3%204-2%204-1%205-1%204%201%204%201%205%202%203%203%203%203%201%201%200%201%200%200%203%203%200%200%200%200%202%203%201%201%200%200%202%203%200%200%200%200%203%204%200%200%200%200%202%203%200%200%200%200%203%204%200%200%200%200%202%203%200%201%200%200%202%203%200%200%201%200%202%204%200%200%200%200%202%204%200%200%200%200%202%203%200%201%200%200%202%203%200%200%201%201%202%203%200%200%200%200%202%204%200%200%200%200%202%204%200%200%200%200%202%204%200%200%200%200%202%204%200%200%200%200%201%204%201%200%200%200%201%204%200%200%200%200%202%204%200%200%200%200%202%204%200%200%200%200%202%204%200%200%200%200%201%204%200%200%200%200%202%204%200%200%200%200%201%204%200%200%200%200%202%204%200%200%200%200%201%204%200%200%200%200%202%204%200%200%200%200%201%204%200%200%200%201%201%204%200%200%200%200%202%204%200%200%200%200%201%204%200%200%200%200%201%204%200%200%200%200%201%204%200%201%200%200%201%204%200%200%200%200%201%204%200%200%200%200%201%204%200%200%200%201%201%204%200%200%200%200%201%204%200%200%200%200%201%204%200%200%200%201%200%204%200%200%200%200%200%200%201%205-1%204-1%204-2%204-3%204-4%203-4%202-4%202-5%200z%20m-590-160l-4-1-4-2-4-2-4-3-3-3-2-4-1-5-1-4%201-5%201-4%202-4%202-3%201-2%200%200%200%200%203-3%200%200%200%200%203-3%200-1%200%200%203-3%200%200%200%200%203-3%200%200%200%200%203-3%200%200%200%200%203-3%200-1%200%200%203-3%200%200%200%200%203-3%200%200%201%200%203-3%200%200%200%200%203-3%200%200%200%200%203-3%200%200%200%200%203-3%200%200%201%200%203-3%200%200%200%200%203-3%200%200%200%200%203-2%201-1%200%200%203-2%200%200%200%200%203-3%201%200%200%200%203-3%200%200%200%200%203-2%201%200%200-1%203-2%200%200%200%200%204-2%200-1%200%200%203-2%200%200%200%200%204-2%200-1%200%200%203-2%201%200%200%200%203-2%200%200%200%200%204-3%200%200%200%200%204-2%200%200%200%200%203-2%201%200%200%200%203-2%200%200%201%200%203-2%200%200%200-1%204-1%200-1%200%200%204-2%200%200%200%200%204-2%200%200%200%200%204-1%200-1%200%200%204-1%200%200%200%200%204-2%200%200%200%200%204-2%200%200%200%200%204-2%200%200%200%200%204-1%200-1%200%200%204-1%200%200%200%200%204-2%204-1%204%200%205%200%204%201%204%202%204%203%203%204%202%203%202%205%201%204%200%205-1%204-2%204-2%204-4%203-3%203-4%202-3%201-4%202-3%201-4%202-3%201-3%202-4%201-3%202-4%202-3%202-3%201-4%202-3%202-3%202-3%202-4%202-3%202-3%202-3%202-3%202-3%203-3%202-4%202-3%202-2%203-3%202-3%203-3%202-3%203-3%202-3%203-3%202-2%203-3%203-3%203-3%202-2%203-3%203-2%203-3%203-2%203-1%201-4%203-3%203-5%201-4%201-5%201z%20m426-77l-5%200-4-1-4-2-1-1-4-2-3-1-3-2-4-2-3-2-3-1-4-2-3-1-4-2-3-1-4-2-3-1-4-2-3-1-4-1-4-1-3-1-4-2-3-1-4-1-4-1-3-1-4-1-4%200-3-1-4-1-4-1-4%200-3-1-4-1-4%200-4-1-3%200-4%200-4-1-4%200-4%200-4-1-3%200-4%200-4%200-5%200-4-2-4-2-4-3-3-3-2-4-1-4-1-5%200-5%201-4%202-4%202-4%204-3%203-3%204-2%205-1%204%200%204%200%200%200%200%200%204%200%200%200%201%200%204%201%200%200%200%200%204%200%200%200%200%200%205%200%200%200%200%200%204%200%200%200%200%200%204%201%201%200%200%200%204%200%200%200%200%200%204%201%200%200%200%200%205%200%200%200%200%200%204%201%200%200%200%200%204%201%200%200%201%200%204%200%200%200%200%200%204%201%200%200%200%200%204%201%200%200%201%200%204%201%200%200%200%200%204%201%200%200%200%200%204%201%200%200%200%200%204%201%201%200%200%200%204%201%200%200%200%200%204%201%200%200%200%200%204%201%200%200%200%200%204%202%200%200%201%200%203%201%201%200%200%200%204%201%200%200%200%200%204%202%200%200%200%200%204%201%200%200%200%200%204%202%200%200%200%200%204%201%200%200%200%200%204%202%200%200%200%200%204%201%200%200%201%201%203%201%200%200%201%200%203%202%200%200%201%200%203%202%200%200%201%200%203%202%200%200%201%200%203%201%200%200%200%201%204%201%200%200%200%200%204%202%200%200%200%200%204%202%200%200%200%201%204%201%200%201%200%200%204%202%200%200%200%200%202%201%203%202%204%204%202%203%202%205%201%204%200%205-1%204-1%204-3%204-3%204-3%203-4%202-5%201-4%200z%20m-440-39l-4-1-5-1-4-3-3-3-3-3-2-4-1-5-1-4%200-5%201-4%202-4%203-4%203-2%201-1%200%200%200%200%204-4%200%200%200%200%204-3%200%200%201%200%204-4%200%200%200%200%204-3%200%200%200%200%205-3%200%200%200%200%204-3%200-1%200%200%205-3%200%200%200%200%204-3%200%200%201%200%204-3%200%200%200%200%205-3%200%200%200%200%204-3%200%200%201%200%204-3%200%200%200%200%205-2%200%200%200-1%205-2%200%200%200%200%204-3%201%200%200%200%204-2%200%200%200-1%205-2%200%200%200%200%205-3%200%200%200%200%205-2%200%200%200%200%205-2%200%200%200%200%205-3%200%200%200%200%205-2%200%200%200%200%205-2%200%200%200%200%205-2%200%200%200%200%205-2%200%200%200%200%205-2%200%200%201%200%204-2%201%200%200%200%205-2%200%200%200%200%205-2%200%200%200%200%205-2%200%200%200%200%205-2%200%200%201%200%205-1%200%200%200%200%205-2%200%200%200%200%205-1%200%200%200%200%205-2%201%200%200%200%205-1%200%200%200%200%205-1%200%200%200%200%206-2%200%200%200%200%204-1%205%200%204%200%205%201%204%202%204%203%203%203%202%204%202%204%201%205%200%204-1%205-1%204-3%204-3%203-4%203-4%202-3%201-5%201-4%201-5%201-5%201-5%202-4%201-5%202-5%201-4%202-5%201-5%202-4%201-5%202-5%202-4%202-5%202-4%202-5%202-4%202-5%202-4%202-4%202-5%203-4%202-4%202-5%203-4%202-4%203-4%203-4%202-4%203-5%203-4%202-4%203-4%203-4%203-3%203-4%203-4%203-1%201-4%203-4%201-4%201-5%201z%20m543-3l-5%200-4-1-5-2-3-2-1-2-4-3-4-3-4-3-4-3-4-3-4-2-4-3-5-3-4-2-4-3-4-3-4-2-5-3-4-2-4-2-5-3-4-2-4-2-5-2-4-2-5-2-4-2-5-2-4-2-5-2-4-2-5-1-5-2-4-1-5-2-5-1-5-2-4-1-5-2-5-1-5-1-4-1-5-1-3-1-5-1-4-2-3-3-3-3-2-4-2-5-1-4%200-5%201-4%202-4%203-4%203-3%204-3%204-2%204-1%205%200%204%200%203%201%200%200%200%200%205%201%200%200%201%200%205%202%200%200%200%200%205%201%200%200%200%200%205%201%200%200%201%200%205%202%200%200%200%200%205%201%200%200%200%200%205%202%200%200%201%200%205%201%200%200%200%200%205%202%200%200%200%200%205%202%200%200%200%200%205%202%200%200%200%200%205%202%201%200%200%200%205%202%200%200%200%200%205%202%200%200%200%200%205%202%200%200%200%200%205%202%200%200%200%200%205%202%200%200%200%200%205%202%200%200%200%200%205%203%200%200%200%200%205%202%200%200%200%200%205%202%200%200%200%200%205%203%200%200%200%200%205%202%200%201%200%200%204%202%201%200%200%200%204%203%200%200%201%200%204%202%200%201%200%200%205%202%200%200%200%200%205%203%200%200%200%200%204%203%200%200%200%200%205%203%200%200%200%200%205%203%200%200%200%200%204%203%200%200%200%200%205%203%200%200%200%201%204%203%200%200%200%200%205%203%200%200%200%200%204%203%200%200%200%200%204%204%201%200%200%200%204%203%200%200%200%200%202%202%203%203%203%204%202%204%201%204%200%205-1%204-1%205-2%204-3%203-4%203-4%202-4%202-4%200z'%20horiz-adv-x='1000'%20/%3e%3cglyph%20glyph-name='start-event-compensation'%20unicode='&%23xe807;'%20d='M500%20802c-178%202-349-112-416-276-70-161-34-362%2089-487%20119-128%20314-175%20477-115%20169%2058%20294%20224%20301%20403%2012%20176-92%20351-250%20428-62%2031-132%2047-201%2047z%20m0-49c175%203%20342-123%20388-293%2047-159-17-344-155-439-143-105-354-97-489%2018-136%20109-185%20309-115%20468%2060%20147%20212%20248%20371%20246z%20m-16-255c-70-49-140-99-209-148%2070-49%20139-99%20209-148%200%2048%200%2095%200%20143%2067-48%20135-95%20202-143%200%2099%200%20197%200%20296-67-48-135-95-202-143%200%2048%200%2095%200%20143z%20m-24-47c0-67%200-134%200-201-48%2033-95%2067-143%20100%2048%2034%2095%2067%20143%20101z%20m202%200c0-67%200-134%200-202-48%2034-95%2068-143%20101%2048%2034%2095%2067%20143%20101z'%20horiz-adv-x='1000'%20/%3e%3cglyph%20glyph-name='start-event-non-interrupting-parallel-multiple'%20unicode='&%23xe808;'%20d='M430%20545l0-125-125%200%200-140%20125%200%200-125%20140%200%200%20125%20125%200%200%20140-125%200%200%20125z%20m23-23l94%200%200-125%20125%200%200-94-125%200%200-125-94%200%200%20126-125%200%200%2093%20125%200z%20m51%20278l-7%200%200%200%200%200-6%200%200%200%200%200-7%200%200%200%200%200-6-1%200%200-1%200-6%200%200%200%200%200-6%200-1%200%200%200-6-1%200%200%200%200-6-1-1%200%200%200-6%200%200%200%200%200-6-1-1%200%200%200-6-1%200%200%200%200-6-1-1%200%200%200-6-1%200%200%200%200-6-1-1%200%200%200-6-1%200-1%200%200-6-1%200%200-1%200-6-1%200%200%200%200-6-2%200%200%200%200-4-1-4-1-4-2-3-3-3-4-2-4-2-4%200-5%200-4%201-5%202-4%203-4%203-3%204-2%205-2%204-1%205%200%203%201%203%201%206%201%206%201%206%202%205%201%206%201%206%201%206%201%206%200%206%201%205%201%206%200%206%201%206%200%206%201%206%200%206%200%206%200%206%200%206%200%205%200%206%200%206-1%206%200%206-1%206%200%206-1%205%200%206-1%206-1%206-1%206-1%205-1%202%200%204-1%205%200%204%202%204%202%204%202%203%204%203%203%201%205%201%204%200%205-1%204-1%204-3%204-3%204-3%202-5%202-3%201-2%201%200%200%200%200-6%201%200%200-1%200-6%201%200%200%200%200-6%201%200%200-1%200-6%201%200%200%200%200-6%201%200%200%200%200-7%201%200%200%200%200-6%200%200%201-1%200-6%200%200%200%200%200-6%201%200%200-1%200-6%200%200%200%200%200-6%200-1%200%200%200-6%201%200%200%200%200-6%200-1%200%200%200-6%200%200%200z%20m246-79l-5-1-4-1-4-3-3-3-3-4-1-4-2-4%200-5%201-4%201-5%202-4%203-3%203-3%202-1%200%200%202-2%200%200%203-1%200%200%202-2%200%200%202-2%202-2%200%200%203-2%200%200%202-1%202-2%200%200%202-2%203-2%200%200%202-2%202-2%200%200%202-2%202-2%201%200%202-2%202-2%202-2%200%200%202-2%200%200%202-2%200%200%202-2%202-2%200%200%202-3%200%200%202-2%202-2%200%200%202-2%202-2%200%200%202-3%200%200%202-2%202-2%202-2%200%200%202-3%202-2%202-2%200-1%201-2%200%200%202-2%200%200%202-3%200%200%201%200%202-4%203-3%202-4%203-3%202-3%203-4%202-3%202-4%200%200%203-3%202-4%202-4%203-3%202-4%202-3%202-4%202-4%202-3%202-4%202-4%201-2%203-4%203-4%203-2%204-2%205-2%204%200%205%201%204%201%204%202%204%203%203%203%202%204%202%204%200%205%200%205-1%204-1%203-2%203%200%200%200%200-2%204%200%200%200%201-2%204%200%200%200%200-2%204%200%200%200%200-2%204-1%200%200%200-2%204%200%200%200%200-2%204%200%200%200%200-3%204%200%200%200%200-2%204%200%200%200%200-3%204%200%200%200%200-2%204%200%200%200%200-3%204%200%200%200%200-2%204%200%200-1%200-2%204%200%200%200%200-3%204%200%200%200%200-3%204%200%200%200%200-2%203%200%201-1%200-2%203%200%200%200%200-3%204%200%200%200%200-3%203-2%203%200%200%200%200-2%203%200%200%200%200-2%202%200%200%200%200-2%203%200%200%200%200-2%203%200%200%200%200-2%202%200%200%200%200-2%203%200%200%200%200-3%203%200%200%200%200-2%202%200%200%200%200-2%203%200%200%200%200-2%202%200%200%200%200-3%203%200%200%200%200-2%202%200%200%200%200-2%203%200%200%200%200-2%202-1%200%200%200-2%203%200%200%200%200-2%202%200%200%200%200-3%203%200%200%200%200-2%202%200%200%200%200-2%202%200%200-1%200-2%203%200%200%200%200-2%202%200%200%200%200-3%202%200%200%200%200-2%202%200%200%200%200-3%203%200%200%200%200-2%202%200%200%200%200-3%202%200%200%200%200-2%202%200%200%200%200-3%202%200%200%200%200-2%202-1%200%200%201-2%201%200%201%200%200-3%202%200%200%200%200-2%202%200%200%200%200-3%202%200%200%200%200-3%202%200%200%200%200-2%202%200%200%200%200-2%201-4%202-4%202-5%200z%20m-521-12l-5-1-4-2-3-2%200%200%200%200-1%200-2-2%200%200%200%200-3-2%200%200%200%200-2-2%200%200%200%200-3-2%200%200%200%200-2-2%200%200%200-1-3-2%200%200%200%200-2-2%200%200%200%200-3-2%200%200%200%200-2-2%200%200%200%200-3-2%200-1%200%200-2-2%200%200%200%200-2-2%200%200-1%200-2-2%200%200%200-1-2-2%200%200%200%200-3-2%200%200%200%200-2-3%200%200%200%200-2-2%200%200%200%200-2-2-1%200%200-1-2-2%200%200%200%200-2-2%200%200%200-1-2-2%200%200%200%200-2-2-1%200%200-1-2-2%200%200%200%200-2-3%200%200%200%200-2-2%200%200%200%200-2-3%200%200%200%200-2-2%200%200%200-1-2-2-1%200%200%200-2-3%200%200%200%200-2-2%200%200%200-1-2-2%200%200%200%200-2-3%200%200%200%200-2-3%200%200%200%200-2-2%200-1%200%200-2-2%200%200%200%200-2-3%200%200%200%200-2-3%200%200%200%200-1-3%200%200-1%200-1-3%200%200%200%200-2-2-1-2%200%200%200%200-2-3%200%200%200%200-2-2%200-1%200%200-2-2%200%200%200%200-2-3%200%200%200%200-2-3%200%200%200%200-2-3%200%200%200%200-2-3%200%200%200%200-2-3%200%200%200%200-1-3%200%200%200%200-2-2%200-1%200%200-2-2%200%200%200-1-2-2%200%200%200%200-1-3%200%200%200%200-2-3%200%200%200%200-2-3%200%200%200%200-1-3%200%200%200%200-2-3%200%200%200%200-1-3%200%200%200%200-2-3%200%200%200%200-1-3%200%200%200%200-2-3%200%200%200%200-1-3%200%200%200%200-2-3%200%200%200%200%200-1-2-4%200-5%200-4%201-5%202-4%202-4%204-3%203-3%205-1%204-1%205-1%204%201%204%202%204%202%204%203%203%203%201%204%201%200%201%203%201%203%200%200%201%202%200%200%202%203%201%203%200%200%202%202%200%200%201%203%201%202%200%201%202%202%201%203%200%200%202%202%200%200%201%203%202%202%200%200%201%203%202%202%201%203%200%200%202%203%200%200%202%202%200%200%201%202%202%203%202%202%200%200%201%203%202%202%202%203%201%201%200%200%202%203%201%202%200%200%202%203%202%202%200%200%201%203%202%202%200%200%202%203%200%200%202%202%201%203%202%202%200%200%202%202%202%203%202%202%200%200%202%202%201%203%202%202%200%200%202%202%202%202%200%200%202%203%200%200%202%202%200%200%202%202%200%200%202%202%202%202%200%200%202%202%200%200%202%203%200%200%202%202%202%202%200%200%202%202%203%202%200%200%202%202%202%202%200%200%202%202%200%200%202%202%200%200%202%202%200%200%203%201%200%200%202%202%200%200%202%202%200%200%202%202%203%202%200%200%202%202%200%200%200%200%203%203%203%204%202%204%201%204%200%205%200%204-2%205-2%204-3%203-3%203-4%202-4%202-5%201z%20m694-313l-4-1-5-2-3-2-3-4-3-4-2-4-1-4%200-4%201-4%200-4%200-4%200-5%200-4%200%200%200-1%200-3%200-3%200%200%200-3%200%200%200-3%200-3%200%200%200-3%200%200%200-3%200-3%200-3%200-3%200-3-1-3%200-3%200%200%200-3%200%200%200-3-1-3%200-3%200-3-1-2%200-1%200-3%200%200%200-2-1-3%200-3%200%200-1-3%200-3-1-3%200%200%200-3-1-3-1-3%200%200%200-2-1-3%200%200%200-3-1-3%200%200-1-3-1-3%200%200%200-2%200%200-1-3%200%200-1-3%200%200-1-3%200%200-1-3-1-2%200%200%200-3-1-3%200%200-1-3%200%200-1-2%200-1-1-2%200%200-1-3%200%200-1-3-1-2%200%200-1-3-3-5-2-6-2-5-3-5-2-6-3-5-3-5-1-3-2-4-1-4%200-5%201-4%201-5%203-4%203-3%203-3%204-2%205-1%204-1%205%201%204%201%204%202%204%203%203%203%202%203%201%203%201%200%200%200%203%206%200%200%200%200%202%206%201%200%200%200%202%206%200%200%200%200%203%205%200%201%200%200%203%205%200%201%200%200%202%206%200%200%201%200%202%206%200%200%200%200%201%203%200%200%200%200%201%203%200%200%200%200%201%203%200%200%201%200%201%203%200%200%200%200%201%203%200%200%200%200%201%203%200%200%200%200%201%203%200%200%200%201%201%203%200%200%200%200%201%203%200%200%200%200%201%203%200%200%200%200%201%203%200%200%200%200%201%203%200%200%200%200%201%203%200%200%200%201%201%203%200%200%200%200%201%203%200%200%200%200%200%203%200%200%200%200%201%203%200%200%200%200%201%203%200%201%200%200%201%203%200%200%200%200%200%203%200%200%201%200%200%203%200%200%200%200%201%203%200%201%200%200%201%203%200%200%200%200%200%203%200%200%200%200%201%203%200%200%200%200%200%204%200%200%200%200%201%203%200%200%200%200%200%203%200%200%200%200%201%204%200%200%200%200%200%203%200%200%200%200%201%203%200%200%200%200%200%204%200%200%200%200%201%203%200%200%200%200%200%203%200%200%200%200%200%204%200%200%200%200%201%203%200%200%200%200%200%203%200%200%200%201%200%203%200%200%200%200%200%203%200%200%200%200%200%204%200%200%200%200%201%203%200%200%200%200%200%203%200%200%200%201%200%203%200%200%200%200%200%203%200%200%200%200%200%204%200%200%200%200%200%203%200%200%200%200%200%204%200%200%200%200%200%203%200%200%200%200%200%203%200%201%200%200%200%203%200%204%200%200%200%200%200%204%200%200%200%201%200%204%200%200%200%200-1%205%200%200%200%200%200%204%200%205-2%204-2%204-3%204-4%202-4%203-4%201-4%201z%20m-853-18l-4-1-5-2-3-3-4-3-2-4-2-4-1-4%200-4%200-3%200%200%200%200%200-7%200%200%200%200%200-6%200%200%200%200%200-7%200%200%200%200%201-6%200%200%200-1%200-6%200%200%200%200%201-6%200%200%200-1%201-6%200%200%200%200%201-6%200%200%200-1%200-6%200%200%200%200%201-6%200%200%200-1%201-6%201%200%200%200%201-6%200%200%200-1%201-6%200%200%200%200%201-6%200%200%200%200%202-6%200-1%200%200%201-6%200%200%200%200%202-6%200%200%200-1%202-6%200%200%200%200%201-6%200%200%200%200%202-6%200%200%200%200%202-6%200-1%200%200%202-6%200%200%200%200%202-6%200%200%200%200%202-6%201%200%200%200%202-6%200%200%200%200%202-6%200%200%200-1%203-5%200-1%200%200%202-5%200-1%200%200%203-5%200-1%200%200%202-5%200-1%201%200%202-5%200-1%200%200%203-5%200%200%200-1%201-1%202-4%204-4%203-2%204-2%205-1%204-1%205%201%204%201%204%202%204%203%203%203%202%204%202%205%200%204%200%205-1%204-1%204-1%201-3%205-2%206-3%205-2%206-2%205-2%205-3%206-2%206-2%205-1%206-2%205-2%206-2%206-1%205-2%206-1%206-2%205-1%206-1%206-1%206-1%206-1%205-1%206-1%206-1%206%200%206-1%205%200%206-1%206%200%206%200%206-1%206%200%203%200%204-1%205-3%204-2%203-4%203-4%203-4%201-4%201z%20m694-334l-4-1-4-2-4-3%200%200-5-3-4-4-5-4-5-3-5-3-4-4-5-3-5-3-5-3-5-4-5-3-6-3-5-2-5-3-5-3-5-3-6-2-5-3-5-2-6-2-5-3-6-2-5-2-6-2-5-2-6-2-5-2-6-1-5-2-6-2-6-1-5-1-5-1-4-2-4-2-4-3-2-3-3-4-1-5-1-4%201-5%201-4%202-4%202-4%203-3%204-3%204-1%205-1%204-1%204%201%205%201%200%200%200%200%206%202%200%200%200%200%206%201%201%200%200%200%206%202%200%200%200%200%206%202%200%200%200%200%206%202%200%200%201%200%205%202%201%200%200%200%206%202%200%200%200%200%206%202%200%200%200%200%206%202%200%200%200%200%206%203%200%200%200%200%206%202%200%200%201%200%205%203%200%200%201%200%205%202%200%200%201%200%205%203%200%200%201%200%205%203%200%200%201%200%205%203%200%200%200%200%206%203%200%200%200%200%206%203%200%200%200%200%206%203%200%200%200%200%205%203%200%200%201%200%205%203%200%200%200%200%206%203%200%201%200%200%205%203%200%200%201%200%205%203%200%200%200%201%205%203%200%200%201%200%205%204%200%200%200%200%205%203%200%200%200%200%206%204%200%200%200%200%205%204%200%200%200%200%205%204%200%200%200%200%205%204%200%200%201%200%204%204%201%200%200%200%200%201%203%203%203%204%202%204%201%204%200%205%200%204-2%204-2%204-3%204-4%203-4%202-4%201-4%201z%20m-541-2l-4-1-4-3-4-2-3-4-2-4-1-4-1-5%200-4%201-5%202-4%203-4%203-2%201-1%200-1%200%200%205-4%200%200%200%200%205-4%200%200%200%200%203-2%200%200%200%200%202-2%201%200%200%200%202-2%200%200%200%200%203-2%200%200%200%200%202-2%201%200%200%200%202-2%200%200%200%200%203-2%200%200%200%200%203-1%200-1%200%200%202-1%200%200%200%200%203-2%200%200%200%200%203-2%200%200%200%200%203-2%200%200%200%200%202-2%200%200%201%200%202-1%200%200%200%200%203-2%200%200%200%200%203-2%200%200%200%200%203-1%200%200%200-1%203-1%200%200%200%200%203-2%200%200%200%200%202-1%201%200%200%200%202-2%201%200%200%200%202-2%200%200%201%200%202-1%200%200%201%200%202-2%200%200%200%200%203-1%200%200%200%200%203-2%200%200%201%200%202-1%200%200%201%200%202-1%200-1%201%200%202-1%201%200%200%200%203-1%200%200%200%200%203-2%200%200%200%200%203-1%200%200%200%200%203-1%200%200%200%200%203-2%200%200%200%200%203-1%200%200%200%200%203-1%200%200%200%200%203-1%201%200%200%200%203-1%200%200%200%200%203-2%200%200%200%200%203-1%200%200%200%200%203-1%200%200%201%200%203-1%200%200%200%200%203-1%200%200%200%200%203-1%200%200%200%200%203-1%200%200%201%200%203-1%200%200%200%200%203-1%200%200%200%200%203-1%202%200%200%200%200%200%203-1%200%200%200-1%203-1%201%200%200%200%203-1%200%200%200%200%203-1%200%200%200%200%203-1%200%200%200%200%204%200%200-1%200%200%203%200%200%200%200%200%203-1%200%200%200%200%203-1%201%200%200%200%203-1%200%200%200%200%203-1%200%200%200%200%200%200%205%200%204%200%205%201%204%202%204%202%203%204%202%203%202%205%201%204%200%205%200%204-2%204-2%204-3%204-4%202-4%203-3%201%200%200-1%200-3%200-2%201%200%200-3%201%200%200-3%201%200%200-3%200%200%200-3%201-3%201-3%201%200%200-3%201-2%201-3%201-3%201-1%200-1%200-3%201-3%201-3%201%200%200-2%201-3%201-3%201-3%200-3%201%200%200-3%201-3%201-2%201%200%200-3%202-3%201%200%200-3%201%200%200-2%201-3%201%200%200-3%201-3%201-2%202-3%201%200%200-3%201-2%201-3%202-3%201-2%201%200%200-3%202-2%201%200%200-3%201%200%200-3%202%200%200-2%201-2%202-1%200-2%201%200%200-3%202-2%201%200%200-3%202-2%201%200%200-3%202%200%200-2%202%200%200-2%201-3%202%200%200-2%202-2%201-1%200-2%202%200%200-2%202-3%201%200%200-2%202%200%200-2%202%200%200-3%202-4%203-5%204-1%201-4%203-4%201-4%202-5%200z'%20horiz-adv-x='1000'%20/%3e%3cglyph%20glyph-name='loop-marker'%20unicode='&%23xe809;'%20d='M529%20645c-126%201-247-86-283-207-28-87-12-187%2042-260-44%208-89%2017-134%2026-4-20-8-40-12-59%2081-16%20162-32%20242-47%2016%2080%2032%20160%2047%20240-19%204-39%208-59%2011-9-48-19-97-28-145-69%2082-68%20214%202%20295%2069%2086%20200%20111%20295%2057%2092-47%20143-159%20118-259-22-104-124-184-230-182-28%202-42-38-19-53%2020-13%2045-4%2067-3%20124%2019%20229%20125%20245%20250%2019%20119-46%20244-152%20300-43%2023-92%2036-141%2036z'%20horiz-adv-x='1000'%20/%3e%3cglyph%20glyph-name='parallel-mi-marker'%20unicode='&%23xe80a;'%20d='M250%20650l0-600%20100%200%200%20600-100%200z%20m200%200l0-600%20100%200%200%20600-100%200z%20m200%200l0-600%20100%200%200%20600-100%200z'%20horiz-adv-x='1000'%20/%3e%3cglyph%20glyph-name='start-event-non-interrupting-signal'%20unicode='&%23xe80b;'%20d='M500%20562c-64-115-128-230-192-345%20128%200%20256%200%20384%200-64%20115-128%20230-192%20345z%20m0-51c50-90%20100-180%20151-270-101%200-201%200-302%200%2051%2090%20101%20180%20151%20270z%20m4%20289c-45-7-119%208-139-39%2018-48%2078-2%20116-10%2040%203%2080-6%20119-8%2049%2046-38%2058-72%2056-8%201-16%201-24%201z%20m250-79c-62-19%2012-63%2034-87%2030-33%2055-70%2076-109%2042-29%2052%2035%2023%2057-33%2054-74%20105-127%20138l-6%201%200%200z%20m-521-11c-51-21-82-73-113-115-22-23-63-104%200-91%2032%2041%2053%2093%2092%20130%2019%2020%2077%2057%2021%2076z%20m695-313c-47-13-14-76-28-111-7-43-22-86-43-125-6-47%2057-33%2057%206%2031%2066%2044%20141%2036%20213-3%2010-13%2016-22%2017z%20m-853-19c-48-11-18-76-18-110%2011-46%2023-94%2051-133%2067-9%2016%2067%208%2099-12%2040-19%2082-19%20124-2%2011-12%2019-22%2020z%20m694-334c-50-24-94-64-149-78-33%200-87-36-38-60%2075%2013%20146%2049%20204%2098%2014%2014%202%2040-17%2040z%20m-542-1c-56-22%2012-68%2041-83%2045-25%2095-46%20147-53%2050%2023-6%2059-38%2059-50%2015-97%2039-136%2073l-6%203-8%201%200%200z'%20horiz-adv-x='1000'%20/%3e%3cglyph%20glyph-name='intermediate-event-catch-non-interrupting-timer'%20unicode='&%23xe80c;'%20d='M500%20564c-85%202-167-54-198-133-33-76-15-170%2043-229%2056-60%20149-82%20226-54%2081%2028%20141%20108%20143%20194%205%2083-46%20166-121%20201-29%2014-61%2021-93%2021z%20m0-39c78%202%20152-55%20170-131%2020-73-14-156-79-194-67-42-160-31-215%2026-58%2056-68%20152-24%20219%2032%2049%2089%2081%20148%2080z%20m55-49c-19-36-39-71-58-107-18-2-23-29-6-36%2011-8%2020%205%2030%204%2030%200%2059%200%2089%200%200%208%200%2017%200%2025-30%200-60%200-89%200%2018%2034%2037%2068%2056%20102-7%204-14%208-22%2012z%20m-55%20233l-4%200%200%200-1%200-4%200%200%200%200%200-4%200%200%200%200%200-5%200%200-1%200%200-4%200%200%200%200%200-4%200-1%200%200%200-4%200%200%200%200%200-4-1%200%200-1%200-1%200-4-1-5-2-3-2-4-3-2-4-2-4-2-4%200-5%201-4%201-5%202-4%203-3%204-3%204-3%204-1%204-1%204%200%201%201%204%200%204%200%204%201%204%200%203%200%204%200%204%200%204%200%204%200%204%200%204%200%203%200%204%200%204-1%204%200%204%200%203-1%204%200%204-1%204%200%204-1%203-1%204%200%204-1%204-1%203%200%204-1%204-1%203-1%204-1%204-1%203-1%204-1%203-2%204-1%204-1%203-1%204-2%203-1%204-1%203-2%200%200%200%200%204-1%205-1%205%200%204%201%204%202%204%203%203%203%202%204%202%204%201%205%200%204%200%205-2%204-2%204-3%203-4%203-3%202%200%200-1%200%200%200-3%202-1%200%200%200-4%201%200%200%200%200-4%202%200%200%200%200-4%201%200%200%200%200-4%202%200%200%200%200-4%201%200%200%200%200-4%202%200%200%200%200-4%201%200%200-1%200-3%201-1%200%200%200-4%202%200%200%200%200-4%201%200%200%200%200-4%201%200%200%200%200-4%201%200%200-1%200-4%201%200%200%200%200-4%201%200%200%200%200-4%201%200%200%200%200-4%201-1%200%200%200-4%201%200%200%200%200-4%201%200%200%200%200-4%200-1%200%200%200-4%201%200%200%200%200-4%201%200%200%200%200-5%200%200%200%200%200-4%201%200%200%200%200-4%200%200%200-1%200-4%201%200%200%200%200-4%200%200%200%200%200-5%200%200%200%200%200-4%200%200%200%200%201-4%200-1%200%200%200-4%200%200%200%200%200-4%200%200%200-1%200-4%200%200%200z%20m-159-39l-5-1-3-1-2-1%200%200%200%200-4-2%200%200%200%200-3-2-1-1%200%200-3-2%200%200-1%200-3-2%200%200%200%200-4-2%200%200%200%200-4-2%200-1%200%200-3-2%200%200-1%200-3-2%200%200%200%200-4-3%200%200%200%200-3-2%200%200%200%200-4-3%200%200%200%200-3-2%200%200-1-1-3-2%200%200%200%200-3-3%200%200-1%200-3-2%200-1%200%200-3-2%200%200-1%200-3-3%200%200%200%200-3-3%200%200%200%200-3-3-1%200%200%200-3-3%200%200%200%200-3-3%200%200%200%200-3-3%200%200%200%200-3-3-1%200%200%200-3-3%200%200%200%200-3-3%200%200%200%200-3-3%200-1%200%200-3-3%200%200%200%200-3-3%200%200%200%200-3-3%200%200%200%200-3-4%200%200%200%200-3-3%200%200%200%200-2-3-1%200%200-1-2-3%200%200%200%200-3-3%200%200%200-1-3-3%200%200%200%200-2-3%200%200-1-1-2-3%200%200%200%200-2-3-1-1%200%200-2-3%200%200%200%200-2-4-1%200%200%200-2-3-2-4-1-4-1-5%201-4%201-5%202-4%203-3%203-4%204-2%204-2%204-1%205%200%204%201%205%202%204%202%203%203%202%203%202%203%202%203%202%203%203%203%202%204%202%203%202%203%203%203%202%203%203%202%202%203%203%203%202%203%203%203%202%203%203%203%203%202%203%203%202%203%203%202%203%203%203%202%203%203%203%202%203%203%203%202%203%203%203%202%203%202%203%203%203%202%203%202%203%202%203%202%203%202%204%202%203%202%203%202%203%202%204%202%203%202%202%200%203%203%204%203%202%204%202%204%201%204%201%205-1%204-1%205-3%204-2%203-4%203-4%202-4%202-5%200z%20m392-60l-4-1-4-1-4-3-3-3-3-4-1-4-1-5-1-4%201-5%202-4%202-4%202-3%203-2%203-3%202-3%203-3%202-3%203-3%202-3%203-2%202-3%203-3%202-3%202-3%203-4%202-3%202-3%202-3%202-3%202-3%202-4%202-3%202-3%202-3%202-4%202-3%201-3%202-4%202-3%201-3%202-4%202-3%201-4%201-3%202-4%201-3%202-4%201-3%201-4%201-4%202-3%201-4%201-3%200-3%202-4%202-4%204-3%203-3%204-2%205-1%204%200%205%200%204%201%204%203%204%202%203%204%202%204%202%204%200%205%200%204-1%204%200%202%200%200%200%200-2%204%200%200%200%201-1%203%200%201%200%200-1%204%200%200%200%200-2%204%200%200%200%200-1%204%200%200%200%200-2%204%200%200%200%200-1%204%200%200%200%200-2%204%200%200%200%200-1%204%200%200%200%201-2%203%200%200%200%201-2%203%200%200%200%201-2%203%200%200%200%201-1%203%200%200-1%201-1%203%200%200%200%200-2%204%200%200%200%200-2%204%200%200%200%200-2%204%200%200%200%200-2%204%200%200-1%200-1%204-1%200%200%200-2%203%200%201%200%200-2%203%200%200%200%200-2%204%200%200%200%200-2%204-1%200%200%200-2%203%200%200%200%201-2%203%200%200%200%200-3%204%200%200%200%200-2%203%200%200%200%201-3%203%200%200%200%200-2%203%200%201-1%200-2%203%200%200%200%200-3%203%200%201%200%200-2%203-1%200%200%200-2%203%200%201%200%200-3%203%200%200%200%200-3%203%200%200%200%200-3%204%200%200%200%200-3%203%200%200%200%200-3%203%200%200%200%200-3%203%200%200%200%201-3%203%200%200%200%200-3%202-3%203-4%203-5%201-4%201z%20m-564-170l-4-1-4-2-4-2-3-4-3-3-2-4-1-4-1-4%200%200%200%200%200-4%200%200-1%200%200-4%200-1%200%200-1-4%200%200%200%200-1-4%200%200%200%200%200-5%200%200%200%200-1-4%200%200%200%200%200-4%200%200%200-1%200-4%200%200-1%200%200-4%200%200%200%200%200-5%200%200%200%200%200-4%200%200%200%200-1-4%200-1%200%200%200-4%200%200%200%200%200-4%200%200%200-1%200-4%200%200%200%200%200-4%200%200%200-1%200-4%200%200%200%200%200-4%200%200%200%200%201-5%200%200%200%200%200-4%200%200%200%200%200-4%200-1%200%200%200-4%201%200%200%200%200-4%200%200%200-1%200-4%200%200%200%200%201-4%200%200%200%200%200-4%200-1%200%200%201-4%200%200%200%200%201-4%200%200%200%200%200-4%201-1%200%200%200-4%200%200%200%200%201-4%200%200%200%200%201-4%200-1%200%200%201-4%200%200%200%200%201-4%200%200%200%200%201-4%200%200%200-1%201-4%200%200%200%200%201-4%200%200%200%200%201-4%200%200%200%200%202-4%200%200%200%200%201-4%200-1%200%200%201-1%201-4%203-4%203-3%204-3%204-2%204-1%205%200%204%201%205%201%204%202%203%203%203%204%202%204%202%204%200%205%200%204-1%204%200%201-2%204-1%204-1%203-1%204-1%203-1%204%200%204-1%204-1%203-1%204%200%204-1%204-1%203%200%204-1%204%200%204%200%203-1%204%200%204%200%204-1%204%200%204%200%203%200%204%200%204%200%204%200%204%200%204%200%203%201%204%200%204%200%204%201%204%200%203%200%204%201%204%200%204%201%204%201%203%200%204%201%204%200%204%200%205-1%204-2%204-3%204-3%203-4%202-5%202-4%201z%20m658-119l-5-1-4-2-4-3-3-3-2-4-2-4-1-3%200%200%200%200%200%200%200%200-1-4%200-4-1-4-1-3%200-4-1-4-1-4-1-3-1-4-1-3-1-4-1-4-2-3-1-4-1-3-1-4-2-4-1-3-2-4-1-3-1-4-2-3-2-3-1-4-2-3-2-4-1-3-2-3-2-4-2-3-2-3-2-3-2-4-2-3-2-3-2-3-2-3-2-3-3-3-2-3-2-4-2-1-2-4-2-4-1-5%200-4%201-5%202-4%202-4%203-3%204-3%204-2%204-1%205-1%204%201%204%201%205%202%203%203%203%203%201%201%200%201%200%200%203%203%200%200%200%200%202%203%201%201%200%200%202%203%200%200%200%200%203%204%200%200%200%200%202%203%200%200%200%200%203%204%200%200%200%200%202%203%200%201%200%200%202%203%200%200%201%200%202%204%200%200%200%200%202%204%200%200%200%200%202%203%200%201%200%200%202%203%200%200%201%201%202%203%200%200%200%200%202%204%200%200%200%200%202%204%200%200%200%200%202%204%200%200%200%200%202%204%200%200%200%200%201%204%201%200%200%200%201%204%200%200%200%200%202%204%200%200%200%200%202%204%200%200%200%200%202%204%200%200%200%200%201%204%200%200%200%200%202%204%200%200%200%200%201%204%200%200%200%200%202%204%200%200%200%200%201%204%200%200%200%200%202%204%200%200%200%200%201%204%200%200%200%201%201%204%200%200%200%200%202%204%200%200%200%200%201%204%200%200%200%200%201%204%200%200%200%200%201%204%200%201%200%200%201%204%200%200%200%200%201%204%200%200%200%200%201%204%200%200%200%201%201%204%200%200%200%200%201%204%200%200%200%200%201%204%200%200%200%201%200%204%200%200%200%200%200%200%201%205-1%204-1%204-2%204-3%204-4%203-4%202-4%202-5%200z%20m-590-161l-4-2-4-2-4-3-3-3-2-4-1-5-1-4%201-5%201-4%202-4%202-3%201-2%200%200%200%200%203-3%200%200%200%200%203-3%200-1%200%200%203-3%200%200%200%200%203-3%200%200%200%200%203-3%200%200%200%200%203-3%200-1%200%200%203-3%200%200%200%200%203-3%200%200%201%200%203-3%200%200%200%200%203-3%200%200%200%200%203-3%200%200%200%200%203-3%200%200%201%200%203-3%200%200%200%200%203-3%200%200%200%200%203-2%201-1%200%200%203-2%200%200%200%200%203-3%201%200%200%200%203-3%200%200%200%200%203-2%201%200%200-1%203-2%200%200%200%200%204-2%200-1%200%200%203-2%200%200%200%200%204-2%200-1%200%200%203-2%201%200%200%200%203-2%200%200%200%200%204-3%200%200%200%200%204-2%200%200%200%200%203-2%201%200%200%200%203-2%200%200%201%200%203-2%200%200%200-1%204-1%200-1%200%200%204-2%200%200%200%200%204-2%200%200%200%200%204-1%200-1%200%200%204-1%200%200%200%200%204-2%200%200%200%200%204-2%200%200%200%200%204-2%200%200%200%200%204-1%200-1%200%200%204-1%200%200%200%200%204-2%204-1%204%200%205%200%204%201%204%202%204%203%203%204%202%203%202%205%201%204%200%205-1%204-2%204-2%204-4%203-3%203-4%202-3%201-4%202-3%201-4%202-3%201-3%202-4%201-3%202-4%202-3%202-3%201-4%202-3%202-3%202-3%202-4%202-3%202-3%202-3%202-3%202-3%203-3%202-4%202-3%202-2%203-3%202-3%203-3%202-3%203-3%202-3%203-3%202-2%203-3%203-3%203-3%202-2%203-3%203-2%203-3%203-2%203-1%201-4%203-3%203-5%201-4%201-5%201z%20m425-76l-4-1-4-2-1-1-4-2-3-1-3-2-4-2-3-2-3-1-4-2-3-1-4-2-3-1-4-2-3-1-4-2-3-1-4-1-4-1-3-1-4-2-3-1-4-1-4-1-3-1-4-1-4%200-3-1-4-1-4-1-4%200-3-1-4-1-4%200-4-1-3%200-4%200-4-1-4%200-4%200-4-1-3%200-4%200-4%200-5%200-4-2-4-2-4-3-3-3-2-4-1-4-1-5%200-5%201-4%202-4%202-4%204-3%203-3%204-2%205-1%204%200%204%200%200%200%200%200%204%200%200%200%201%200%204%200%200%201%200%200%204%200%200%200%200%200%205%200%200%200%200%200%204%200%200%200%200%200%204%201%201%200%200%200%204%200%200%200%200%200%204%201%200%200%200%200%205%200%200%200%200%200%204%201%200%200%200%200%204%201%200%200%201%200%204%200%200%200%200%200%204%201%200%200%200%200%204%201%200%200%201%200%204%201%200%200%200%200%204%201%200%200%200%200%204%201%200%200%200%200%204%201%201%200%200%200%204%201%200%200%200%200%204%201%200%200%200%200%204%201%200%200%200%200%204%202%200%200%201%200%203%201%201%200%200%200%204%201%200%200%200%200%204%202%200%200%200%200%204%201%200%200%200%200%204%202%200%200%200%200%204%201%200%200%200%200%204%202%200%200%200%200%204%201%200%200%201%201%203%201%200%200%201%200%203%202%200%200%201%200%203%202%200%200%201%200%203%202%200%200%201%200%203%201%200%200%200%201%204%201%200%200%200%200%204%202%200%200%200%200%204%202%200%200%200%201%204%201%200%201%200%200%204%202%200%200%200%200%202%201%203%202%204%204%202%203%202%205%201%204%200%205-1%204-1%204-3%204-3%204-3%203-4%202-5%201-4%200z%20m-162%20718l-5%200-1%200%200%200-5%200%200%200%200%200-6-1%200%200%200%200-5%200%200%200%200%200-6%200%200%200%200%200-5-1%200%200-1%200-5%200%200%200%200%200-5%200-1%200%200-1-5%200%200%200%200%200-5-1-1%200%200%200-5%200%200%200%200%200-5-1-1%200%200%200-5-1%200%200%200%200-5-1-1%200%200%200-5-1%200%200%200%200-5-1%200%200-1%200-5-1%200%200%200%200-5-1%200%200%200%200-6-2%200%200%200%200-5-1%200%200%200%200-5-1-4-2-4-2-4-3-2-4-3-4-1-4%200-5%200-4%201-4%202-5%203-3%203-3%204-3%204-1%205-1%204%200%204%201%205%201%205%201%204%201%205%201%205%201%205%201%205%201%205%201%205%200%204%201%205%201%205%200%205%201%205%200%205%201%205%200%205%200%205%201%205%200%205%200%205%200%205%200%205%200%205%200%205-1%205%200%205%200%205-1%205%200%205-1%205%200%205-1%205-1%204%200%205-1%205-1%205-1%205-1%204-1%205%200%204%200%205%201%204%202%203%203%204%203%202%204%202%204%201%204%200%205-1%204-2%205-2%204-3%203-4%203-4%202-3%201-5%201%200%200%200%200-5%201%200%200-1%200-5%201%200%200%200%200-5%201%200%200%200%200-6%201%200%200%200%200-5%201%200%200%200%200-6%201%200%200%200%200-5%200%200%200%200%200-6%201%200%200%200%200-5%200%200%201%200%200-6%200%200%200%200%200-5%200%200%200-1%200-5%201%200%200%200%200-5%200-1%200%200%200-5%200%200%200%200%200-6%201%200%200%200%200-5%200%200%200%200%200-6%200%200%200z%20m250-83l-4-1-5-2-3-2-4-4-2-3-2-4-1-5-1-4%201-5%201-4%203-4%203-4%202-2%202-1%204-3%204-3%204-3%203-3%204-4%204-3%204-3%203-3%204-4%204-3%203-4%204-3%203-4%204-3%203-4%204-4%203-3%203-4%203-4%204-4%203-3%203-4%203-4%203-4%203-4%203-4%202-4%203-4%203-5%203-4%202-4%203-4%202-4%203-5%202-4%202-4%203-5%202-4%201-2%202-4%204-3%203-3%204-2%205-1%204-1%205%201%204%201%204%202%204%203%203%203%202%204%202%204%200%205%200%204-1%205-1%203-1%203%200%200%200%200-3%205%200%200%200%200-2%205%200%200-1%200-2%204%200%201%200%200-3%204%200%200%200%201-2%204-1%200%200%200-2%205%200%200%200%200-3%205%200%200%200%200-3%204%200%200%200%200-3%205%200%200%200%200-3%205%200%200%200%200-3%204%200%200%200%200-3%205%200%200-1%200-3%204%200%200%200%200-3%205%200%200%200%200-3%204%200%200%200%200-4%204%200%201%200%200-3%204%200%200%200%200-3%204-1%200%200%200-3%204%200%201%200%200-4%204%200%200%200%200-3%204%200%200-1%200-3%204%200%200%200%200-4%204%200%200%200%200-4%204%200%200%200%201-4%203%200%200%200%201-3%203-1%200%200%201-3%203-1%200%200%200-3%204-1%200%200%200-4%204%200%200%200%200-4%204%200%200%200%200-4%203%200%201%200%200-4%203%200%200%200%200-4%204%200%200-1%200-4%203%200%200%200%201-4%203%200%200%200%200-4%203%200%200-1%200-4%204%200%200%200%200-4%203%200%200%200%200-2%201-4%203-4%201-4%201z%20m-519-10l-4-1-4-2-4-2-1-1%200%200%200%200-4-3%200-1%200%200-4-3%200%200-1%200-4-4%200%200%200%200-4-3%200%200%200-1-4-3%200%200%200%200-4-4%200%200%200%200-4-4%200%200%200%200-4-4%200%200%200%200-4-3%200-1%200%200-4-3%200-1%200%200-4-3%200-1%200%200-4-4%200%200%200%200-4-4%200%200%200%200-3-4%200%200-1%200-3-4%200%200%200%200-4-4%200%200%200-1-3-4%200%200%200%200-4-4%200%200%200%200-3-4%200%200%200-1-4-4%200%200%200%200-3-4%200%200%200%200-3-5%200%200%200%200-3-4%200%200-1%200-3-5%200%200%200%200-3-4%200%200%200%200-3-5%200%200%200%200-3-5%200%200%200%200-3-4%200%200%200%200-2-5-1%200%200%200-2-5%200%200%200%200-3-4%200-1%200%200-3-4%200%200%200-1-2-4%200%200%200%200-3-5%200%200%200%200-2-5%200%200-1%200-2-5%200%200%200%200-2-5%200%200%200%200-3-5%200%200%200%200-1-3-1-4-1-5%200-4%201-5%202-4%203-4%203-3%204-2%204-2%204-1%205%200%204%200%205%202%203%202%204%203%203%204%202%203%201%203%202%204%202%205%202%204%202%204%203%205%202%204%202%204%203%205%202%204%203%204%203%204%202%204%203%205%203%204%202%204%203%204%203%204%203%204%203%204%203%204%203%203%204%204%203%204%203%204%203%203%204%204%203%204%204%203%203%204%204%203%203%204%204%203%204%204%203%203%204%203%204%203%204%204%204%203%201%201%203%203%203%203%202%205%201%204%200%204-1%205-1%204-2%204-3%204-4%203-4%202-4%202-4%200z%20m692-315l-4-1-4-2-4-2-3-4-3-4-2-4%200-4-1-4%201-4%200-5%200-5%200-5%200-5%200-5%200-5-1-5%200-5%200-5-1-5%200-5-1-5%200-5-1-5-1-4%200-5-1-5-1-5-1-5-1-5-1-5-1-4-1-5-1-5-2-5-1-4-2-5-1-5-1-4-2-5-2-5-1-4-2-5-2-4-2-5-2-5-2-4-2-5-2-4-2-4-2-5-2-4-2-5-1-4%200-5%201-4%202-4%202-4%203-4%204-2%204-2%204-2%205%200%204%201%205%201%204%202%203%203%203%203%202%203%203%205%200%200%200%200%202%205%200%200%200%200%202%205%200%200%200%200%203%205%200%200%200%200%202%205%200%200%200%200%202%205%200%200%200%200%202%205%200%200%200%200%202%205%200%200%200%200%202%205%200%200%200%201%202%204%200%201%200%200%202%205%200%200%200%200%202%205%200%200%200%200%202%205%200%200%200%200%202%205%200%200%200%201%201%205%200%200%200%200%202%205%200%200%200%200%201%205%200%200%200%200%202%205%200%201%200%200%201%205%200%200%200%200%201%205%200%200%200%200%202%206%200%200%200%200%201%205%200%200%200%200%201%205%200%201%200%200%201%205%200%200%200%200%201%205%200%200%200%201%201%205%200%200%200%200%201%205%200%200%200%201%201%205%200%200%200%200%200%205%200%200%200%201%201%205%200%200%200%200%200%205%201%200%200%201%200%205%200%200%200%200%200%205%200%201%200%200%201%205%200%200%200%200%200%206%200%200%200%200%200%205%200%200%200%200%201%206%200%200%200%200%200%205%200%200%200%201%200%205%200%200%200%200%200%206%200%200%200%200%200%205%200%200%200%200-1%206%200%200%200%200%200%204%200%205-2%204-2%204-3%203-4%203-4%202-4%202-4%200z%20m-853-16l-4-1-4-1-4-3-4-3-2-4-2-4-1-4-1-4%200-4%200%200%200%200%200-5%200-1%200%200%201-5%200%200%200%200%200-6%200%200%200%200%200-5%200%200%200%200%200-6%200%200%200%200%201-5%200%200%200-1%200-5%200%200%200%200%201-5%200-1%200%200%200-5%200%200%200%200%201-5%200-1%200%200%201-5%200%200%200%200%200-5%200-1%200%200%201-5%200%200%200%200%201-5%200-1%200%200%201-5%200%200%200%200%201-5%200%200%200-1%201-5%200%200%200%200%201-5%200%200%200%200%202-6%200%200%200%200%201-5%200%200%200%200%201-5%200%200%200-1%202-5%200%200%200%200%201-5%200%200%200%200%202-5%200%200%200%200%202-5%200-1%200%200%201-5%200%200%200%200%202-5%200%200%200%200%202-5%200%200%200%200%202-5%200%200%200-1%202-4%200-1%200%200%202-5%200%200%200%200%202-5%200%200%200%200%202-5%200%200%200%200%202-5%200%200%200%200%202-5%200%200%200%200%203-5%200%200%200%200%202-5%200%200%200%200%202-5%201%200%200%200%200-1%203-4%203-3%203-3%204-2%205-1%204%200%205%200%204%201%204%203%204%202%203%204%202%204%202%204%200%205%200%204-1%205-1%203-1%201-2%205-2%204-2%204-2%205-2%204-2%205-2%205-2%204-2%205-1%204-2%205-1%205-2%204-1%205-2%205-1%204-1%205-2%205-1%205-1%204-1%205-1%205-1%205-1%205-1%205%200%205-1%204-1%205%200%205-1%205%200%205-1%205%200%205%200%205-1%205%200%205%200%205%200%205%200%204%200%204-1%205-2%204-3%203-4%204-3%202-5%202-4%200z%20m153-334l-5-1-4-3-3-3-3-3-2-4-1-5-1-4%200-5%201-4%202-4%203-4%203-2%201-1%200%200%200%200%204-4%200%200%200%200%204-3%200%200%201%200%204-4%200%200%200%200%204-3%200%200%200%200%205-3%200%200%200%200%204-3%200-1%200%200%205-3%200%200%200%200%204-3%200%200%201%200%204-3%200%200%200%200%205-3%200%200%200%200%204-3%200%200%201%200%204-3%200%200%200%200%205-2%200%200%200-1%205-2%200%200%200%200%204-3%201%200%200%200%204-2%200%200%200-1%205-2%200%200%200%200%205-3%200%200%200%200%205-2%200%200%200%200%205-2%200%200%200%200%205-3%200%200%200%200%205-2%200%200%200%200%205-2%200%200%200%200%205-2%200%200%200%200%205-2%200%200%200%200%205-2%200%200%201%200%204-2%201%200%200%200%205-2%200%200%200%200%205-2%200%200%200%200%205-2%200%200%200%200%205-2%200%200%201%200%205-1%200%200%200%200%205-2%200%200%200%200%205-1%200%200%200%200%205-2%201%200%200%200%205-1%200%200%200%200%205-1%200%200%200%200%206-2%200%200%200%200%204-1%205%200%204%200%205%201%204%202%204%203%203%203%202%204%202%204%201%205%200%204-1%205-1%204-3%204-3%203-4%203-4%202-3%201-5%201-4%201-5%201-5%201-5%202-4%201-5%202-5%201-4%202-5%201-5%202-4%201-5%202-5%202-4%202-5%202-4%202-5%202-4%202-5%202-4%202-4%202-5%203-4%202-4%202-5%203-4%202-4%203-4%203-4%202-4%203-5%203-4%202-4%203-4%203-4%203-3%203-4%203-4%203-1%201-4%203-4%201-4%201-5%201z%20m542-2l-4-1-5-2-3-2-1-2-4-3-4-3-4-3-4-3-4-3-4-2-4-3-5-3-4-2-4-3-4-3-4-2-5-3-4-2-4-2-5-3-4-2-4-2-5-2-4-2-5-2-4-2-5-2-4-2-5-2-4-2-5-1-5-2-4-1-5-2-5-1-5-2-4-1-5-2-5-1-5-1-4-1-5-1-3-1-5-1-4-2-3-3-3-3-2-4-2-5-1-4%200-5%201-4%202-4%203-4%203-3%204-3%204-2%204-1%205%200%204%200%203%201%200%200%200%200%205%201%200%200%201%200%205%202%200%200%200%200%205%201%200%200%200%200%205%201%200%200%201%200%205%202%200%200%200%200%205%201%200%200%200%200%205%202%200%200%201%200%205%201%200%200%200%200%205%202%200%200%200%200%205%202%200%200%200%200%205%202%200%200%200%200%205%202%201%200%200%200%205%202%200%200%200%200%205%202%200%200%200%200%205%202%200%200%200%200%205%202%200%200%200%200%205%202%200%200%200%200%205%202%200%200%200%200%205%203%200%200%200%200%205%202%200%200%200%200%205%202%200%200%200%200%205%203%200%200%200%200%205%202%200%201%200%200%204%202%201%200%200%200%204%203%200%200%201%200%204%202%200%201%200%200%205%202%200%200%200%200%205%203%200%200%200%200%204%203%200%200%200%200%205%203%200%200%200%200%205%203%200%200%200%200%204%203%200%200%200%200%205%203%200%200%200%201%204%203%200%200%200%200%205%203%200%200%200%200%204%203%200%200%200%200%204%204%201%200%200%200%204%203%200%200%200%200%202%202%203%203%203%204%202%204%201%204%200%205-1%204-1%205-2%204-3%203-4%203-4%202-4%202-4%200z'%20horiz-adv-x='1000'%20/%3e%3cglyph%20glyph-name='intermediate-event-catch-parallel-multiple'%20unicode='&%23xe80d;'%20d='M499%20802c-220%204-425-177-448-396-24-185%2078-380%20247-461%20160-80%20368-56%20501%2066%20134%20118%20190%20318%20128%20486-57%20167-217%20293-393%20303-12%201-23%202-35%202z%20m-5-49c202%207%20391-161%20407-362%2019-178-92-361-262-420-166-61-368-2-468%20145-103%20144-99%20356%2018%20490%2074%2090%20188%20146%20305%20147z%20m8-44c-186%206-358-158-361-344-9-169%20116-334%20283-367%20155-33%20328%2046%20397%20190%2071%20140%2039%20327-83%20430-64%2057-150%2091-236%2091z%20m-2-48c164%204%20314-144%20311-308%203-152-119-297-272-312-143-19-295%2073-336%20213-43%20134%2014%20295%20138%20364%2048%2028%20103%2043%20159%2043z%20m-61-93c0-52%200-104%200-156-53%200-106%200-159%200%200-41%200-83%200-124%2053%200%20106%200%20159%200%200-52%200-104%200-156%2041%200%2081%200%20122%200%200%2052%200%20104%200%20156%2053%200%20106%200%20159%200%200%2041%200%2083%200%20124-53%200-106%200-159%200%200%2052%200%20104%200%20156-41%200-81%200-122%200z%20m25-24c24%200%2048%200%2073%200%200-52%200-104%200-157%2053%200%20106%200%20159%200%200-24%200-49%200-74-53%200-106%200-159%200%200-53%200-105%200-157-25%200-49%200-73%200%200%2052%200%20104%200%20157-54%200-107%200-160%200%200%2025%200%2050%200%2074%2053%200%20106%200%20160%200%200%2053%200%20105%200%20157z'%20horiz-adv-x='1000'%20/%3e%3cglyph%20glyph-name='intermediate-event-catch-compensation'%20unicode='&%23xe80e;'%20d='M499%20802c-220%204-425-177-448-396-24-185%2078-380%20247-461%20160-80%20368-56%20501%2066%20134%20118%20190%20318%20128%20486-57%20167-217%20293-393%20303-12%201-23%202-35%202z%20m-5-49c202%207%20391-161%20407-362%2019-178-92-361-262-420-166-61-368-2-468%20145-103%20144-99%20356%2018%20490%2074%2090%20188%20146%20305%20147z%20m8-44c-186%206-358-158-361-344-9-169%20116-334%20283-367%20155-33%20328%2046%20397%20190%2071%20140%2039%20327-83%20430-64%2057-150%2091-236%2091z%20m-2-48c164%204%20314-144%20311-308%203-152-119-297-272-312-143-19-295%2073-336%20213-43%20134%2014%20295%20138%20364%2048%2028%20103%2043%20159%2043z%20m-16-163c-70-49-140-99-209-148%2070-49%20139-99%20209-148%200%2048%200%2095%200%20143%2067-48%20135-95%20202-143%200%2099%200%20197%200%20296-67-48-135-95-202-143%200%2048%200%2095%200%20143z%20m-24-47c0-67%200-134%200-201-48%2033-95%2067-143%20100%2048%2034%2095%2067%20143%20101z%20m202%200c0-67%200-134%200-202-48%2034-95%2068-143%20101%2048%2034%2095%2067%20143%20101z'%20horiz-adv-x='1000'%20/%3e%3cglyph%20glyph-name='gateway-xor'%20unicode='&%23xe80f;'%20d='M500%20802c-9%200-19-4-26-11l-415-415c-14-14-14-38%200-52l415-415c14-14%2038-14%2052%200l415%20415c14%2014%2014%2038%200%2052l-415%20415c-7%207-17%2011-26%2011z%20m0-62l390-390-390-390-390%20390%20390%20390z%20m-146-217c0%200-4-1-4-1%200%200-4-3-4-3l-15-15c0%200-3-4-3-4%200%200-1-4-1-4%200%200%201-5%201-5%200%200%203-4%203-4l137-137-137-137%200%200c0%200-3-4-3-4%200%200-1-5-1-5%200%200%201-4%201-4%200%200%203-4%203-4l15-15c0%200%204-3%204-3%200%200%204-1%204-1%200%200%205%201%205%201%200%200%204%203%204%203l137%20137%20137-137c0%200%204-3%204-3%200%200%205-1%205-1%200%200%204%201%204%201%200%200%204%203%204%203l15%2015c0%200%203%204%203%204%200%200%201%204%201%204%200%200-1%205-1%205%200%200-3%204-3%204l-137%20137%20137%20137c0%200%203%204%203%204%200%200%201%205%201%205%200%200-1%204-1%204%200%200-3%204-3%204l-15%2015c0%200-4%203-4%203%200%200-4%201-4%201%200%200-5-1-5-1%200%200-4-3-4-3l-137-137-137%20137%200%201c0%200-4%202-4%202%200%200-5%201-5%201l0%200z'%20horiz-adv-x='1000'%20/%3e%3cglyph%20glyph-name='end-event-cancel'%20unicode='&%23xe811;'%20d='M491%20802c-219%200-420-183-440-400-22-186%2082-380%20253-459%20158-77%20361-53%20492%2067%20134%20115%20192%20312%20133%20480-55%20172-220%20303-401%20311-13%201-25%201-37%201z%20m9-142c161%205%20308-137%20310-298%207-147-103-292-250-317-142-28-300%2054-350%20192-53%20136%202%20309%20132%20380%2047%2028%20103%2043%20158%2043z%20m-112-110c-29-30-58-59-87-88%2037-38%2075-75%20112-113-37-36-74-73-110-110%2028-29%2057-58%2086-86%2037%2037%2073%2073%20110%20110%2038-37%2075-75%20113-112%2029%2029%2058%2058%2088%2087-38%2038-76%2075-113%20113%2037%2037%2074%2073%20110%20110-28%2029-57%2058-86%2086-37-36-73-73-110-110-38%2037-75%2075-113%20113z'%20horiz-adv-x='1000'%20/%3e%3cglyph%20glyph-name='intermediate-event-catch-condition'%20unicode='&%23xe812;'%20d='M499%20802c-1%200-2%200-3%200-202%201-391-150-436-346-42-173%2028-368%20174-471%20145-107%20354-116%20506-18%20149%2093%20235%20276%20207%20450-26%20176-164%20330-338%20371-36%209-73%2014-110%2014z%20m-5-49c3%200%207%200%2010%200%20187%202%20362-146%20392-331%2032-167-54-348-205-427-154-85-363-54-483%2077-124%20127-147%20338-53%20488%2071%20116%20203%20192%20339%20193z%20m8-44c-3%200-7%200-10%200-172%200-330-143-349-314-22-161%2079-328%20233-382%20145-55%20322-3%20413%20124%2098%20129%2092%20326-17%20447-67%2077-167%20125-270%20125z%20m-2-48c2%200%204%200%206%200%20153%200%20292-129%20304-281%2016-145-84-293-225-330-137-40-296%2027-361%20154-69%20129-33%20305%2086%20392%2054%2042%20122%2065%20190%2065z%20m-151-121l0-12%200-368%2050%200%20202%200%2050%200%200%20380-302%200z%20m24-24l254%200%200-332-26%200-202%200-26%200%200%20332z%20m26-37l0-25%20202%200%200%2025-202%200z%20m0-74l0-24%20202%200%200%2024-202%200z%20m0-85l0-24%20202%200%200%2024-202%200z%20m0-77l0-24%20202%200%200%2024-202%200z'%20horiz-adv-x='1000'%20/%3e%3cglyph%20glyph-name='intermediate-event-catch-non-interrupting-parallel-multiple'%20unicode='&%23xe813;'%20d='M430%20545l0-125-125%200%200-140%20125%200%200-125%20140%200%200%20125%20125%200%200%20140-125%200%200%20125z%20m23-23l94%200%200-125%20125%200%200-94-125%200%200-125-94%200%200%20126-125%200%200%2093%20125%200z%20m47%20280l0%200-5%200-1%200%200%200-5%200%200%200%200%200-6-1%200%200%200%200-5%200%200%200%200%200-6%200%200%200%200%200-5-1%200%200-1%200-5%200%200%200%200%200-5%200-1%200%200-1-5%200%200%200%200%200-5-1-1%200%200%200-5%200%200%200%200%200-5-1-1%200%200%200-5-1%200%200%200%200-5-1-1%200%200%200-5-1%200%200%200%200-5-1%200%200-1%200-5-1%200%200%200%200-5-1%200%200%200%200-6-2%200%200%200%200-5-1%200%200%200%200-5-1-4-2-4-2-4-3-2-4-3-4-1-4%200-5%200-4%201-4%202-5%203-3%203-3%204-3%204-1%205-1%204%200%204%201%205%201%205%201%204%201%205%201%205%201%205%201%205%201%205%201%205%200%204%201%205%201%205%200%205%201%205%200%205%201%205%200%205%200%205%201%205%200%205%200%205%200%205%200%205%200%205%200%205-1%205%200%205%200%205-1%205%200%205-1%205%200%205-1%205-1%204%200%205-1%205-1%205-1%205-1%204-1%205%200%204%200%205%201%204%202%203%203%204%203%202%204%202%204%201%204%200%205-1%204-2%205-2%204-3%203-4%203-4%202-3%201-5%201%200%200%200%200-5%201%200%200-1%200-5%201%200%200%200%200-5%201%200%200%200%200-6%201%200%200%200%200-5%201%200%200%200%200-6%201%200%200%200%200-5%200%200%200%200%200-6%201%200%200%200%200-5%200%200%201%200%200-6%200%200%200%200%200-5%200%200%200-1%200-5%201%200%200%200%200-5%200-1%200%200%200-5%200%200%200%200%200-6%201%200%200%200%200-5%200%200%200%200%200-6%200%200%200z%20m255-83l-5%200-4-1-5-2-3-2-4-4-2-3-2-4-1-5-1-4%201-5%201-4%203-4%203-4%202-2%202-1%204-3%204-3%204-3%203-3%204-4%204-3%204-3%203-3%204-4%204-3%203-4%204-3%203-4%204-3%203-4%204-4%203-3%203-4%203-4%204-4%203-3%203-4%203-4%203-4%203-4%203-4%202-4%203-4%203-5%203-4%202-4%203-4%202-4%203-5%202-4%202-4%203-5%202-4%201-2%202-4%204-3%203-3%204-2%205-1%204-1%205%201%204%201%204%202%204%203%203%203%202%204%202%204%200%205%200%204-1%205-1%203-1%203%200%200%200%200-3%205%200%200%200%200-2%205%200%200-1%200-2%204%200%201%200%200-3%204%200%200%200%201-2%204-1%200%200%200-2%205%200%200%200%200-3%205%200%200%200%200-3%204%200%200%200%200-3%205%200%200%200%200-3%205%200%200%200%200-3%204%200%200%200%200-3%205%200%200-1%200-3%204%200%200%200%200-3%205%200%200%200%200-3%204%200%200%200%200-4%204%200%201%200%200-3%204%200%200%200%200-3%204-1%200%200%200-3%204%200%201%200%200-4%204%200%200%200%200-3%204%200%200-1%200-3%204%200%200%200%200-4%204%200%200%200%200-4%204%200%200%200%201-4%203%200%200%200%201-3%203-1%200%200%201-3%203-1%200%200%200-3%204-1%200%200%200-4%204%200%200%200%200-4%204%200%200%200%200-4%203%200%201%200%200-4%203%200%200%200%200-4%204%200%200-1%200-4%203%200%200%200%201-4%203%200%200%200%200-4%203%200%200-1%200-4%204%200%200%200%200-4%203%200%200%200%200-2%201-4%203-4%201-4%201z%20m-519-10l-5%200-4-1-4-2-4-2-1-1%200%200%200%200-4-3%200-1%200%200-4-3%200%200-1%200-4-4%200%200%200%200-4-3%200%200%200-1-4-3%200%200%200%200-4-4%200%200%200%200-4-4%200%200%200%200-4-4%200%200%200%200-4-3%200-1%200%200-4-3%200-1%200%200-4-3%200-1%200%200-4-4%200%200%200%200-4-4%200%200%200%200-3-4%200%200-1%200-3-4%200%200%200%200-4-4%200%200%200-1-3-4%200%200%200%200-4-4%200%200%200%200-3-4%200%200%200-1-4-4%200%200%200%200-3-4%200%200%200%200-3-5%200%200%200%200-3-4%200%200-1%200-3-5%200%200%200%200-3-4%200%200%200%200-3-5%200%200%200%200-3-5%200%200%200%200-3-4%200%200%200%200-2-5-1%200%200%200-2-5%200%200%200%200-3-4%200-1%200%200-3-4%200%200%200-1-2-4%200%200%200%200-3-5%200%200%200%200-2-5%200%200-1%200-2-5%200%200%200%200-2-5%200%200%200%200-3-5%200%200%200%200-1-3-1-4-1-5%200-4%201-5%202-4%203-4%203-3%204-2%204-2%204-1%205%200%204%200%205%202%203%202%204%203%203%204%202%203%201%203%202%204%202%205%202%204%202%204%203%205%202%204%202%204%203%205%202%204%203%204%203%204%202%204%203%205%203%204%202%204%203%204%203%204%203%204%203%204%203%204%203%203%204%204%203%204%203%204%203%203%204%204%203%204%204%203%203%204%204%203%203%204%204%203%204%204%203%203%204%203%204%203%204%204%204%203%201%201%203%203%203%203%202%205%201%204%200%204-1%205-1%204-2%204-3%204-4%203-4%202-4%202-4%200z%20m264%200l0%200-4%200%200%200-1%200-4%200%200%200%200%200-4%200%200%200%200%200-5%200%200-1%200%200-4%200%200%200%200%200-4%200-1%200%200%200-4%200%200%200%200%200-4-1%200%200-1%200-1%200-4-1-5-2-3-2-4-3-2-4-2-4-2-4%200-5%201-4%201-5%202-4%203-3%204-3%204-3%204-1%204-1%204%200%201%201%204%200%204%200%204%201%204%200%203%200%204%200%204%200%204%200%204%200%204%200%204%200%203%200%204%200%204-1%204%200%204%200%203-1%204%200%204-1%204%200%204-1%203-1%204%200%204-1%204-1%203%200%204-1%204-1%203-1%204-1%204-1%203-1%204-1%203-2%204-1%204-1%203-1%204-2%203-1%204-1%203-2%200%200%200%200%204-1%205-1%205%200%204%201%204%202%204%203%203%203%202%204%202%204%201%205%200%204%200%205-2%204-2%204-3%203-4%203-3%202%200%200-1%200%200%200-3%202-1%200%200%200-4%201%200%200%200%200-4%202%200%200%200%200-4%201%200%200%200%200-4%202%200%200%200%200-4%201%200%200%200%200-4%202%200%200%200%200-4%201%200%200-1%200-3%201-1%200%200%200-4%202%200%200%200%200-4%201%200%200%200%200-4%201%200%200%200%200-4%201%200%200-1%200-4%201%200%200%200%200-4%201%200%200%200%200-4%201%200%200%200%200-4%201-1%200%200%200-4%201%200%200%200%200-4%201%200%200%200%200-4%200-1%200%200%200-4%201%200%200%200%200-4%201%200%200%200%200-5%200%200%200%200%200-4%201%200%200%200%200-4%200%200%200-1%200-4%201%200%200%200%200-4%200%200%200%200%200-5%200%200%200%200%200-4%200%200%200%200%201-4%200-1%200%200%200-4%200%200%200%200%200-4%200%200%200-1%200-4%200%200%200z%20m-155-39l-4%200-5-1-3-1-2-1%200%200%200%200-4-2%200%200%200%200-3-2-1-1%200%200-3-2%200%200-1%200-3-2%200%200%200%200-4-2%200%200%200%200-4-2%200-1%200%200-3-2%200%200-1%200-3-2%200%200%200%200-4-3%200%200%200%200-3-2%200%200%200%200-4-3%200%200%200%200-3-2%200%200-1-1-3-2%200%200%200%200-3-3%200%200-1%200-3-2%200-1%200%200-3-2%200%200-1%200-3-3%200%200%200%200-3-3%200%200%200%200-3-3-1%200%200%200-3-3%200%200%200%200-3-3%200%200%200%200-3-3%200%200%200%200-3-3-1%200%200%200-3-3%200%200%200%200-3-3%200%200%200%200-3-3%200-1%200%200-3-3%200%200%200%200-3-3%200%200%200%200-3-3%200%200%200%200-3-4%200%200%200%200-3-3%200%200%200%200-2-3-1%200%200-1-2-3%200%200%200%200-3-3%200%200%200-1-3-3%200%200%200%200-2-3%200%200-1-1-2-3%200%200%200%200-2-3-1-1%200%200-2-3%200%200%200%200-2-4-1%200%200%200-2-3-2-4-1-4-1-5%201-4%201-5%202-4%203-3%203-4%204-2%204-2%204-1%205%200%204%201%205%202%204%202%203%203%202%203%202%203%202%203%202%203%203%203%202%204%202%203%202%203%203%203%202%203%203%202%202%203%203%203%202%203%203%203%202%203%203%203%203%202%203%203%202%203%203%202%203%203%203%202%203%203%203%202%203%203%203%202%203%203%203%202%203%202%203%203%203%202%203%202%203%202%203%202%203%202%204%202%203%202%203%202%203%202%204%202%203%202%202%200%203%203%204%203%202%204%202%204%201%204%201%205-1%204-1%205-3%204-2%203-4%203-4%202-4%202-5%200z%20m393-59l-5-1-4-1-4-1-4-3-3-3-3-4-1-4-1-5-1-4%201-5%202-4%202-4%202-3%203-2%203-3%202-3%203-3%202-3%203-3%202-3%203-2%202-3%203-3%202-3%202-3%203-4%202-3%202-3%202-3%202-3%202-3%202-4%202-3%202-3%202-3%202-4%202-3%201-3%202-4%202-3%201-3%202-4%202-3%201-4%201-3%202-4%201-3%202-4%201-3%201-4%201-4%202-3%201-4%201-3%200-3%202-4%202-4%204-3%203-3%204-2%205-1%204%200%205%200%204%201%204%203%204%202%203%204%202%204%202%204%200%205%200%204-1%204%200%202%200%200%200%200-2%204%200%200%200%201-1%203%200%201%200%200-1%204%200%200%200%200-2%204%200%200%200%200-1%204%200%200%200%200-2%204%200%200%200%200-1%204%200%200%200%200-2%204%200%200%200%200-1%204%200%200%200%201-2%203%200%200%200%201-2%203%200%200%200%201-2%203%200%200%200%201-1%203%200%200-1%201-1%203%200%200%200%200-2%204%200%200%200%200-2%204%200%200%200%200-2%204%200%200%200%200-2%204%200%200-1%200-1%204-1%200%200%200-2%203%200%201%200%200-2%203%200%200%200%200-2%204%200%200%200%200-2%204-1%200%200%200-2%203%200%200%200%201-2%203%200%200%200%200-3%204%200%200%200%200-2%203%200%200%200%201-3%203%200%200%200%200-2%203%200%201-1%200-2%203%200%200%200%200-3%203%200%201%200%200-2%203-1%200%200%200-2%203%200%201%200%200-3%203%200%200%200%200-3%203%200%200%200%200-3%204%200%200%200%200-3%203%200%200%200%200-3%203%200%200%200%200-3%203%200%200%200%201-3%203%200%200%200%200-3%202-3%203-4%203-5%201-4%201z%20m-564-171l-5%200-4-1-4-2-4-2-3-4-3-3-2-4-1-4-1-4%200%200%200%200%200-4%200%200-1%200%200-4%200-1%200%200-1-4%200%200%200%200-1-4%200%200%200%200%200-5%200%200%200%200-1-4%200%200%200%200%200-4%200%200%200-1%200-4%200%200-1%200%200-4%200%200%200%200%200-5%200%200%200%200%200-4%200%200%200%200-1-4%200-1%200%200%200-4%200%200%200%200%200-4%200%200%200-1%200-4%200%200%200%200%200-4%200%200%200-1%200-4%200%200%200%200%200-4%200%200%200%200%201-5%200%200%200%200%200-4%200%200%200%200%200-4%200-1%200%200%200-4%201%200%200%200%200-4%200%200%200-1%200-4%200%200%200%200%201-4%200%200%200%200%200-4%200-1%200%200%201-4%200%200%200%200%201-4%200%200%200%200%200-4%201-1%200%200%200-4%200%200%200%200%201-4%200%200%200%200%201-4%200-1%200%200%201-4%200%200%200%200%201-4%200%200%200%200%201-4%200%200%200-1%201-4%200%200%200%200%201-4%200%200%200%200%201-4%200%200%200%200%202-4%200%200%200%200%201-4%200-1%200%200%201-1%201-4%203-4%203-3%204-3%204-2%204-1%205%200%204%201%205%201%204%202%203%203%203%204%202%204%202%204%200%205%200%204-1%204%200%201-2%204-1%204-1%203-1%204-1%203-1%204%200%204-1%204-1%203-1%204%200%204-1%204-1%203%200%204-1%204%200%204%200%203-1%204%200%204%200%204-1%204%200%204%200%203%200%204%200%204%200%204%200%204%200%204%200%203%201%204%200%204%200%204%201%204%200%203%200%204%201%204%200%204%201%204%201%203%200%204%201%204%200%204%200%205-1%204-2%204-3%204-3%203-4%202-5%202-4%201z%20m754-46l-5%200-4-1-4-2-4-2-3-4-3-4-2-4%200-4-1-4%201-4%200-5%200-5%200-5%200-5%200-5%200-5-1-5%200-5%200-5-1-5%200-5-1-5%200-5-1-5-1-4%200-5-1-5-1-5-1-5-1-5-1-5-1-4-1-5-1-5-2-5-1-4-2-5-1-5-1-4-2-5-2-5-1-4-2-5-2-4-2-5-2-5-2-4-2-5-2-4-2-4-2-5-2-4-2-5-1-4%200-5%201-4%202-4%202-4%203-4%204-2%204-2%204-2%205%200%204%201%205%201%204%202%203%203%203%203%202%203%203%205%200%200%200%200%202%205%200%200%200%200%202%205%200%200%200%200%203%205%200%200%200%200%202%205%200%200%200%200%202%205%200%200%200%200%202%205%200%200%200%200%202%205%200%200%200%200%202%205%200%200%200%201%202%204%200%201%200%200%202%205%200%200%200%200%202%205%200%200%200%200%202%205%200%200%200%200%202%205%200%200%200%201%201%205%200%200%200%200%202%205%200%200%200%200%201%205%200%200%200%200%202%205%200%201%200%200%201%205%200%200%200%200%201%205%200%200%200%200%202%206%200%200%200%200%201%205%200%200%200%200%201%205%200%201%200%200%201%205%200%200%200%200%201%205%200%200%200%201%201%205%200%200%200%200%201%205%200%200%200%201%201%205%200%200%200%200%200%205%200%200%200%201%201%205%200%200%200%200%200%205%201%200%200%201%200%205%200%200%200%200%200%205%200%201%200%200%201%205%200%200%200%200%200%206%200%200%200%200%200%205%200%200%200%200%201%206%200%200%200%200%200%205%200%200%200%201%200%205%200%200%200%200%200%206%200%200%200%200%200%205%200%200%200%200-1%206%200%200%200%200%200%204%200%205-2%204-2%204-3%203-4%203-4%202-4%202-4%200z%20m-853-16l-5%200-4-1-4-1-4-3-4-3-2-4-2-4-1-4-1-4%200-4%200%200%200%200%200-5%200-1%200%200%201-5%200%200%200%200%200-6%200%200%200%200%200-5%200%200%200%200%200-6%200%200%200%200%201-5%200%200%200-1%200-5%200%200%200%200%201-5%200-1%200%200%200-5%200%200%200%200%201-5%200-1%200%200%201-5%200%200%200%200%200-5%200-1%200%200%201-5%200%200%200%200%201-5%200-1%200%200%201-5%200%200%200%200%201-5%200%200%200-1%201-5%200%200%200%200%201-5%200%200%200%200%202-6%200%200%200%200%201-5%200%200%200%200%201-5%200%200%200-1%202-5%200%200%200%200%201-5%200%200%200%200%202-5%200%200%200%200%202-5%200-1%200%200%201-5%200%200%200%200%202-5%200%200%200%200%202-5%200%200%200%200%202-5%200%200%200-1%202-4%200-1%200%200%202-5%200%200%200%200%202-5%200%200%200%200%202-5%200%200%200%200%202-5%200%200%200%200%202-5%200%200%200%200%203-5%200%200%200%200%202-5%200%200%200%200%202-5%201%200%200%200%200-1%203-4%203-3%203-3%204-2%205-1%204%200%205%200%204%201%204%203%204%202%203%204%202%204%202%204%200%205%200%204-1%205-1%203-1%201-2%205-2%204-2%204-2%205-2%204-2%205-2%205-2%204-2%205-1%204-2%205-1%205-2%204-1%205-2%205-1%204-1%205-2%205-1%205-1%204-1%205-1%205-1%205-1%205-1%205%200%205-1%204-1%205%200%205-1%205%200%205-1%205%200%205%200%205-1%205%200%205%200%205%200%205%200%204%200%204-1%205-2%204-3%203-4%204-3%202-5%202-4%200z%20m756-57l-4%200-5-1-4-2-4-3-3-3-2-4-2-4-1-3%200%200%200%200%200%200%200%200-1-4%200-4-1-4-1-3%200-4-1-4-1-4-1-3-1-4-1-3-1-4-1-4-2-3-1-4-1-3-1-4-2-4-1-3-2-4-1-3-1-4-2-3-2-3-1-4-2-3-2-4-1-3-2-3-2-4-2-3-2-3-2-3-2-4-2-3-2-3-2-3-2-3-2-3-3-3-2-3-2-4-2-1-2-4-2-4-1-5%200-4%201-5%202-4%202-4%203-3%204-3%204-2%204-1%205-1%204%201%204%201%205%202%203%203%203%203%201%201%200%201%200%200%203%203%200%200%200%200%202%203%201%201%200%200%202%203%200%200%200%200%203%204%200%200%200%200%202%203%200%200%200%200%203%204%200%200%200%200%202%203%200%201%200%200%202%203%200%200%201%200%202%204%200%200%200%200%202%204%200%200%200%200%202%203%200%201%200%200%202%203%200%200%201%201%202%203%200%200%200%200%202%204%200%200%200%200%202%204%200%200%200%200%202%204%200%200%200%200%202%204%200%200%200%200%201%204%201%200%200%200%201%204%200%200%200%200%202%204%200%200%200%200%202%204%200%200%200%200%202%204%200%200%200%200%201%204%200%200%200%200%202%204%200%200%200%200%201%204%200%200%200%200%202%204%200%200%200%200%201%204%200%200%200%200%202%204%200%200%200%200%201%204%200%200%200%201%201%204%200%200%200%200%202%204%200%200%200%200%201%204%200%200%200%200%201%204%200%200%200%200%201%204%200%201%200%200%201%204%200%200%200%200%201%204%200%200%200%200%201%204%200%200%200%201%201%204%200%200%200%200%201%204%200%200%200%200%201%204%200%200%200%201%200%204%200%200%200%200%200%200%201%205-1%204-1%204-2%204-3%204-4%203-4%202-4%202-5%200z%20m-590-160l-4-1-4-2-4-2-4-3-3-3-2-4-1-5-1-4%201-5%201-4%202-4%202-3%201-2%200%200%200%200%203-3%200%200%200%200%203-3%200-1%200%200%203-3%200%200%200%200%203-3%200%200%200%200%203-3%200%200%200%200%203-3%200-1%200%200%203-3%200%200%200%200%203-3%200%200%201%200%203-3%200%200%200%200%203-3%200%200%200%200%203-3%200%200%200%200%203-3%200%200%201%200%203-3%200%200%200%200%203-3%200%200%200%200%203-2%201-1%200%200%203-2%200%200%200%200%203-3%201%200%200%200%203-3%200%200%200%200%203-2%201%200%200-1%203-2%200%200%200%200%204-2%200-1%200%200%203-2%200%200%200%200%204-2%200-1%200%200%203-2%201%200%200%200%203-2%200%200%200%200%204-3%200%200%200%200%204-2%200%200%200%200%203-2%201%200%200%200%203-2%200%200%201%200%203-2%200%200%200-1%204-1%200-1%200%200%204-2%200%200%200%200%204-2%200%200%200%200%204-1%200-1%200%200%204-1%200%200%200%200%204-2%200%200%200%200%204-2%200%200%200%200%204-2%200%200%200%200%204-1%200-1%200%200%204-1%200%200%200%200%204-2%204-1%204%200%205%200%204%201%204%202%204%203%203%204%202%203%202%205%201%204%200%205-1%204-2%204-2%204-4%203-3%203-4%202-3%201-4%202-3%201-4%202-3%201-3%202-4%201-3%202-4%202-3%202-3%201-4%202-3%202-3%202-3%202-4%202-3%202-3%202-3%202-3%202-3%203-3%202-4%202-3%202-2%203-3%202-3%203-3%202-3%203-3%202-3%203-3%202-2%203-3%203-3%203-3%202-2%203-3%203-2%203-3%203-2%203-1%201-4%203-3%203-5%201-4%201-5%201z%20m426-77l-5%200-4-1-4-2-1-1-4-2-3-1-3-2-4-2-3-2-3-1-4-2-3-1-4-2-3-1-4-2-3-1-4-2-3-1-4-1-4-1-3-1-4-2-3-1-4-1-4-1-3-1-4-1-4%200-3-1-4-1-4-1-4%200-3-1-4-1-4%200-4-1-3%200-4%200-4-1-4%200-4%200-4-1-3%200-4%200-4%200-5%200-4-2-4-2-4-3-3-3-2-4-1-4-1-5%200-5%201-4%202-4%202-4%204-3%203-3%204-2%205-1%204%200%204%200%200%200%200%200%204%200%200%200%201%200%204%201%200%200%200%200%204%200%200%200%200%200%205%200%200%200%200%200%204%200%200%200%200%200%204%201%201%200%200%200%204%200%200%200%200%200%204%201%200%200%200%200%205%200%200%200%200%200%204%201%200%200%200%200%204%201%200%200%201%200%204%200%200%200%200%200%204%201%200%200%200%200%204%201%200%200%201%200%204%201%200%200%200%200%204%201%200%200%200%200%204%201%200%200%200%200%204%201%201%200%200%200%204%201%200%200%200%200%204%201%200%200%200%200%204%201%200%200%200%200%204%202%200%200%201%200%203%201%201%200%200%200%204%201%200%200%200%200%204%202%200%200%200%200%204%201%200%200%200%200%204%202%200%200%200%200%204%201%200%200%200%200%204%202%200%200%200%200%204%201%200%200%201%201%203%201%200%200%201%200%203%202%200%200%201%200%203%202%200%200%201%200%203%202%200%200%201%200%203%201%200%200%200%201%204%201%200%200%200%200%204%202%200%200%200%200%204%202%200%200%200%201%204%201%200%201%200%200%204%202%200%200%200%200%202%201%203%202%204%204%202%203%202%205%201%204%200%205-1%204-1%204-3%204-3%204-3%203-4%202-5%201-4%200z%20m-440-39l-4-1-5-1-4-3-3-3-3-3-2-4-1-5-1-4%200-5%201-4%202-4%203-4%203-2%201-1%200%200%200%200%204-4%200%200%200%200%204-3%200%200%201%200%204-4%200%200%200%200%204-3%200%200%200%200%205-3%200%200%200%200%204-3%200-1%200%200%205-3%200%200%200%200%204-3%200%200%201%200%204-3%200%200%200%200%205-3%200%200%200%200%204-3%200%200%201%200%204-3%200%200%200%200%205-2%200%200%200-1%205-2%200%200%200%200%204-3%201%200%200%200%204-2%200%200%200-1%205-2%200%200%200%200%205-3%200%200%200%200%205-2%200%200%200%200%205-2%200%200%200%200%205-3%200%200%200%200%205-2%200%200%200%200%205-2%200%200%200%200%205-2%200%200%200%200%205-2%200%200%200%200%205-2%200%200%201%200%204-2%201%200%200%200%205-2%200%200%200%200%205-2%200%200%200%200%205-2%200%200%200%200%205-2%200%200%201%200%205-1%200%200%200%200%205-2%200%200%200%200%205-1%200%200%200%200%205-2%201%200%200%200%205-1%200%200%200%200%205-1%200%200%200%200%206-2%200%200%200%200%204-1%205%200%204%200%205%201%204%202%204%203%203%203%202%204%202%204%201%205%200%204-1%205-1%204-3%204-3%203-4%203-4%202-3%201-5%201-4%201-5%201-5%201-5%202-4%201-5%202-5%201-4%202-5%201-5%202-4%201-5%202-5%202-4%202-5%202-4%202-5%202-4%202-5%202-4%202-4%202-5%203-4%202-4%202-5%203-4%202-4%203-4%203-4%202-4%203-5%203-4%202-4%203-4%203-4%203-3%203-4%203-4%203-1%201-4%203-4%201-4%201-5%201z%20m543-3l-5%200-4-1-5-2-3-2-1-2-4-3-4-3-4-3-4-3-4-3-4-2-4-3-5-3-4-2-4-3-4-3-4-2-5-3-4-2-4-2-5-3-4-2-4-2-5-2-4-2-5-2-4-2-5-2-4-2-5-2-4-2-5-1-5-2-4-1-5-2-5-1-5-2-4-1-5-2-5-1-5-1-4-1-5-1-3-1-5-1-4-2-3-3-3-3-2-4-2-5-1-4%200-5%201-4%202-4%203-4%203-3%204-3%204-2%204-1%205%200%204%200%203%201%200%200%200%200%205%201%200%200%201%200%205%202%200%200%200%200%205%201%200%200%200%200%205%201%200%200%201%200%205%202%200%200%200%200%205%201%200%200%200%200%205%202%200%200%201%200%205%201%200%200%200%200%205%202%200%200%200%200%205%202%200%200%200%200%205%202%200%200%200%200%205%202%201%200%200%200%205%202%200%200%200%200%205%202%200%200%200%200%205%202%200%200%200%200%205%202%200%200%200%200%205%202%200%200%200%200%205%202%200%200%200%200%205%203%200%200%200%200%205%202%200%200%200%200%205%202%200%200%200%200%205%203%200%200%200%200%205%202%200%201%200%200%204%202%201%200%200%200%204%203%200%200%201%200%204%202%200%201%200%200%205%202%200%200%200%200%205%203%200%200%200%200%204%203%200%200%200%200%205%203%200%200%200%200%205%203%200%200%200%200%204%203%200%200%200%200%205%203%200%200%200%201%204%203%200%200%200%200%205%203%200%200%200%200%204%203%200%200%200%200%204%204%201%200%200%200%204%203%200%200%200%200%202%202%203%203%203%204%202%204%201%204%200%205-1%204-1%205-2%204-3%203-4%203-4%202-4%202-4%200z'%20horiz-adv-x='1000'%20/%3e%3cglyph%20glyph-name='start-event-condition'%20unicode='&%23xe814;'%20d='M500%20802c-249%200-452-203-452-452%200-249%20203-452%20452-452%20249%200%20452%20203%20452%20452%200%20249-203%20452-452%20452z%20m0-49c223%200%20403-180%20403-403%200-223-180-403-403-403-223%200-403%20180-403%20403%200%20223%20180%20403%20403%20403z%20m-151-213l0-12%200-368%2050%200%20202%200%2050%200%200%20380-302%200z%20m24-24l254%200%200-332-26%200-202%200-26%200%200%20332z%20m26-37l0-25%20202%200%200%2025-202%200z%20m0-74l0-24%20202%200%200%2024-202%200z%20m0-85l0-24%20202%200%200%2024-202%200z%20m0-77l0-24%20202%200%200%2024-202%200z'%20horiz-adv-x='1000'%20/%3e%3cglyph%20glyph-name='start-event-non-interrupting-timer'%20unicode='&%23xe815;'%20d='M500%20564c-85%202-167-54-198-133-33-76-15-170%2043-229%2056-60%20149-82%20226-54%2081%2028%20141%20108%20143%20194%205%2083-46%20166-121%20201-29%2014-61%2021-93%2021z%20m0-39c78%202%20152-55%20170-131%2020-73-14-156-79-194-67-42-160-31-215%2026-58%2056-68%20152-24%20219%2032%2049%2089%2081%20148%2080z%20m55-49c-19-36-39-71-58-107-18-2-23-29-6-36%2011-8%2020%205%2030%204%2030%200%2059%200%2089%200%200%208%200%2017%200%2025-30%200-60%200-89%200%2018%2034%2037%2068%2056%20102-7%204-14%208-22%2012z%20m-51%20324l-7%200%200%200%200%200-6%200%200%200%200%200-7%200%200%200%200%200-6-1%200%200-1%200-6%200%200%200%200%200-6%200-1%200%200%200-6-1%200%200%200%200-6-1-1%200%200%200-6%200%200%200%200%200-6-1-1%200%200%200-6-1%200%200%200%200-6-1-1%200%200%200-6-1%200%200%200%200-6-1-1%200%200%200-6-1%200-1%200%200-6-1%200%200-1%200-6-1%200%200%200%200-6-2%200%200%200%200-4-1-4-1-4-2-3-3-3-4-2-4-2-4%200-5%200-4%201-5%202-4%203-4%203-3%204-2%205-2%204-1%205%200%203%201%203%201%206%201%206%201%206%202%205%201%206%201%206%201%206%201%206%200%206%201%205%201%206%200%206%201%206%200%206%201%206%200%206%200%206%200%206%200%206%200%205%200%206%200%206-1%206%200%206-1%206%200%206-1%205%200%206-1%206-1%206-1%206-1%205-1%202%200%204-1%205%200%204%202%204%202%204%202%203%204%203%203%201%205%201%204%200%205-1%204-1%204-3%204-3%204-3%202-5%202-3%201-2%201%200%200%200%200-6%201%200%200-1%200-6%201%200%200%200%200-6%201%200%200-1%200-6%201%200%200%200%200-6%201%200%200%200%200-7%201%200%200%200%200-6%200%200%201-1%200-6%200%200%200%200%200-6%201%200%200-1%200-6%200%200%200%200%200-6%200-1%200%200%200-6%201%200%200%200%200-6%200-1%200%200%200-6%200%200%200z%20m246-79l-5-1-4-1-4-3-3-3-3-4-1-4-2-4%200-5%201-4%201-5%202-4%203-3%203-3%202-1%200%200%202-2%200%200%203-1%200%200%202-2%200%200%202-2%202-2%200%200%203-2%200%200%202-1%202-2%200%200%202-2%203-2%200%200%202-2%202-2%200%200%202-2%202-2%201%200%202-2%202-2%202-2%200%200%202-2%200%200%202-2%200%200%202-2%202-2%200%200%202-3%200%200%202-2%202-2%200%200%202-2%202-2%200%200%202-3%200%200%202-2%202-2%202-2%200%200%202-3%202-2%202-2%200-1%201-2%200%200%202-2%200%200%202-3%200%200%201%200%202-4%203-3%202-4%203-3%202-3%203-4%202-3%202-4%200%200%203-3%202-4%202-4%203-3%202-4%202-3%202-4%202-4%202-3%202-4%202-4%201-2%203-4%203-4%203-2%204-2%205-2%204%200%205%201%204%201%204%202%204%203%203%203%202%204%202%204%200%205%200%205-1%204-1%203-2%203%200%200%200%200-2%204%200%200%200%201-2%204%200%200%200%200-2%204%200%200%200%200-2%204-1%200%200%200-2%204%200%200%200%200-2%204%200%200%200%200-3%204%200%200%200%200-2%204%200%200%200%200-3%204%200%200%200%200-2%204%200%200%200%200-3%204%200%200%200%200-2%204%200%200-1%200-2%204%200%200%200%200-3%204%200%200%200%200-3%204%200%200%200%200-2%203%200%201-1%200-2%203%200%200%200%200-3%204%200%200%200%200-3%203-2%203%200%200%200%200-2%203%200%200%200%200-2%202%200%200%200%200-2%203%200%200%200%200-2%203%200%200%200%200-2%202%200%200%200%200-2%203%200%200%200%200-3%203%200%200%200%200-2%202%200%200%200%200-2%203%200%200%200%200-2%202%200%200%200%200-3%203%200%200%200%200-2%202%200%200%200%200-2%203%200%200%200%200-2%202-1%200%200%200-2%203%200%200%200%200-2%202%200%200%200%200-3%203%200%200%200%200-2%202%200%200%200%200-2%202%200%200-1%200-2%203%200%200%200%200-2%202%200%200%200%200-3%202%200%200%200%200-2%202%200%200%200%200-3%203%200%200%200%200-2%202%200%200%200%200-3%202%200%200%200%200-2%202%200%200%200%200-3%202%200%200%200%200-2%202-1%200%200%201-2%201%200%201%200%200-3%202%200%200%200%200-2%202%200%200%200%200-3%202%200%200%200%200-3%202%200%200%200%200-2%202%200%200%200%200-2%201-4%202-4%202-5%200z%20m-521-12l-5-1-4-2-3-2%200%200%200%200-1%200-2-2%200%200%200%200-3-2%200%200%200%200-2-2%200%200%200%200-3-2%200%200%200%200-2-2%200%200%200-1-3-2%200%200%200%200-2-2%200%200%200%200-3-2%200%200%200%200-2-2%200%200%200%200-3-2%200-1%200%200-2-2%200%200%200%200-2-2%200%200-1%200-2-2%200%200%200-1-2-2%200%200%200%200-3-2%200%200%200%200-2-3%200%200%200%200-2-2%200%200%200%200-2-2-1%200%200-1-2-2%200%200%200%200-2-2%200%200%200-1-2-2%200%200%200%200-2-2-1%200%200-1-2-2%200%200%200%200-2-3%200%200%200%200-2-2%200%200%200%200-2-3%200%200%200%200-2-2%200%200%200-1-2-2-1%200%200%200-2-3%200%200%200%200-2-2%200%200%200-1-2-2%200%200%200%200-2-3%200%200%200%200-2-3%200%200%200%200-2-2%200-1%200%200-2-2%200%200%200%200-2-3%200%200%200%200-2-3%200%200%200%200-1-3%200%200-1%200-1-3%200%200%200%200-2-2-1-2%200%200%200%200-2-3%200%200%200%200-2-2%200-1%200%200-2-2%200%200%200%200-2-3%200%200%200%200-2-3%200%200%200%200-2-3%200%200%200%200-2-3%200%200%200%200-2-3%200%200%200%200-1-3%200%200%200%200-2-2%200-1%200%200-2-2%200%200%200-1-2-2%200%200%200%200-1-3%200%200%200%200-2-3%200%200%200%200-2-3%200%200%200%200-1-3%200%200%200%200-2-3%200%200%200%200-1-3%200%200%200%200-2-3%200%200%200%200-1-3%200%200%200%200-2-3%200%200%200%200-1-3%200%200%200%200-2-3%200%200%200%200%200-1-2-4%200-5%200-4%201-5%202-4%202-4%204-3%203-3%205-1%204-1%205-1%204%201%204%202%204%202%204%203%203%203%201%204%201%200%201%203%201%203%200%200%201%202%200%200%202%203%201%203%200%200%202%202%200%200%201%203%201%202%200%201%202%202%201%203%200%200%202%202%200%200%201%203%202%202%200%200%201%203%202%202%201%203%200%200%202%203%200%200%202%202%200%200%201%202%202%203%202%202%200%200%201%203%202%202%202%203%201%201%200%200%202%203%201%202%200%200%202%203%202%202%200%200%201%203%202%202%200%200%202%203%200%200%202%202%201%203%202%202%200%200%202%202%202%203%202%202%200%200%202%202%201%203%202%202%200%200%202%202%202%202%200%200%202%203%200%200%202%202%200%200%202%202%200%200%202%202%202%202%200%200%202%202%200%200%202%203%200%200%202%202%202%202%200%200%202%202%203%202%200%200%202%202%202%202%200%200%202%202%200%200%202%202%200%200%202%202%200%200%203%201%200%200%202%202%200%200%202%202%200%200%202%202%203%202%200%200%202%202%200%200%200%200%203%203%203%204%202%204%201%204%200%205%200%204-2%205-2%204-3%203-3%203-4%202-4%202-5%201z%20m694-313l-4-1-5-2-3-2-3-4-3-4-2-4-1-4%200-4%201-4%200-4%200-4%200-5%200-4%200%200%200-1%200-3%200-3%200%200%200-3%200%200%200-3%200-3%200%200%200-3%200%200%200-3%200-3%200-3%200-3%200-3-1-3%200-3%200%200%200-3%200%200%200-3-1-3%200-3%200-3-1-2%200-1%200-3%200%200%200-2-1-3%200-3%200%200-1-3%200-3-1-3%200%200%200-3-1-3-1-3%200%200%200-2-1-3%200%200%200-3-1-3%200%200-1-3-1-3%200%200%200-2%200%200-1-3%200%200-1-3%200%200-1-3%200%200-1-3-1-2%200%200%200-3-1-3%200%200-1-3%200%200-1-2%200-1-1-2%200%200-1-3%200%200-1-3-1-2%200%200-1-3-3-5-2-6-2-5-3-5-2-6-3-5-3-5-1-3-2-4-1-4%200-5%201-4%201-5%203-4%203-3%203-3%204-2%205-1%204-1%205%201%204%201%204%202%204%203%203%203%202%203%201%203%201%200%200%200%203%206%200%200%200%200%202%206%201%200%200%200%202%206%200%200%200%200%203%205%200%201%200%200%203%205%200%201%200%200%202%206%200%200%201%200%202%206%200%200%200%200%201%203%200%200%200%200%201%203%200%200%200%200%201%203%200%200%201%200%201%203%200%200%200%200%201%203%200%200%200%200%201%203%200%200%200%200%201%203%200%200%200%201%201%203%200%200%200%200%201%203%200%200%200%200%201%203%200%200%200%200%201%203%200%200%200%200%201%203%200%200%200%200%201%203%200%200%200%201%201%203%200%200%200%200%201%203%200%200%200%200%200%203%200%200%200%200%201%203%200%200%200%200%201%203%200%201%200%200%201%203%200%200%200%200%200%203%200%200%201%200%200%203%200%200%200%200%201%203%200%201%200%200%201%203%200%200%200%200%200%203%200%200%200%200%201%203%200%200%200%200%200%204%200%200%200%200%201%203%200%200%200%200%200%203%200%200%200%200%201%204%200%200%200%200%200%203%200%200%200%200%201%203%200%200%200%200%200%204%200%200%200%200%201%203%200%200%200%200%200%203%200%200%200%200%200%204%200%200%200%200%201%203%200%200%200%200%200%203%200%200%200%201%200%203%200%200%200%200%200%203%200%200%200%200%200%204%200%200%200%200%201%203%200%200%200%200%200%203%200%200%200%201%200%203%200%200%200%200%200%203%200%200%200%200%200%204%200%200%200%200%200%203%200%200%200%200%200%204%200%200%200%200%200%203%200%200%200%200%200%203%200%201%200%200%200%203%200%204%200%200%200%200%200%204%200%200%200%201%200%204%200%200%200%200-1%205%200%200%200%200%200%204%200%205-2%204-2%204-3%204-4%202-4%203-4%201-4%201z%20m-853-18l-4-1-5-2-3-3-4-3-2-4-2-4-1-4%200-4%200-3%200%200%200%200%200-7%200%200%200%200%200-6%200%200%200%200%200-7%200%200%200%200%201-6%200%200%200-1%200-6%200%200%200%200%201-6%200%200%200-1%201-6%200%200%200%200%201-6%200%200%200-1%200-6%200%200%200%200%201-6%200%200%200-1%201-6%201%200%200%200%201-6%200%200%200-1%201-6%200%200%200%200%201-6%200%200%200%200%202-6%200-1%200%200%201-6%200%200%200%200%202-6%200%200%200-1%202-6%200%200%200%200%201-6%200%200%200%200%202-6%200%200%200%200%202-6%200-1%200%200%202-6%200%200%200%200%202-6%200%200%200%200%202-6%201%200%200%200%202-6%200%200%200%200%202-6%200%200%200-1%203-5%200-1%200%200%202-5%200-1%200%200%203-5%200-1%200%200%202-5%200-1%201%200%202-5%200-1%200%200%203-5%200%200%200-1%201-1%202-4%204-4%203-2%204-2%205-1%204-1%205%201%204%201%204%202%204%203%203%203%202%204%202%205%200%204%200%205-1%204-1%204-1%201-3%205-2%206-3%205-2%206-2%205-2%205-3%206-2%206-2%205-1%206-2%205-2%206-2%206-1%205-2%206-1%206-2%205-1%206-1%206-1%206-1%206-1%205-1%206-1%206-1%206%200%206-1%205%200%206-1%206%200%206%200%206-1%206%200%203%200%204-1%205-3%204-2%203-4%203-4%203-4%201-4%201z%20m694-334l-4-1-4-2-4-3%200%200-5-3-4-4-5-4-5-3-5-3-4-4-5-3-5-3-5-3-5-4-5-3-6-3-5-2-5-3-5-3-5-3-6-2-5-3-5-2-6-2-5-3-6-2-5-2-6-2-5-2-6-2-5-2-6-1-5-2-6-2-6-1-5-1-5-1-4-2-4-2-4-3-2-3-3-4-1-5-1-4%201-5%201-4%202-4%202-4%203-3%204-3%204-1%205-1%204-1%204%201%205%201%200%200%200%200%206%202%200%200%200%200%206%201%201%200%200%200%206%202%200%200%200%200%206%202%200%200%200%200%206%202%200%200%201%200%205%202%201%200%200%200%206%202%200%200%200%200%206%202%200%200%200%200%206%202%200%200%200%200%206%203%200%200%200%200%206%202%200%200%201%200%205%203%200%200%201%200%205%202%200%200%201%200%205%203%200%200%201%200%205%203%200%200%201%200%205%203%200%200%200%200%206%203%200%200%200%200%206%203%200%200%200%200%206%203%200%200%200%200%205%203%200%200%201%200%205%203%200%200%200%200%206%203%200%201%200%200%205%203%200%200%201%200%205%203%200%200%200%201%205%203%200%200%201%200%205%204%200%200%200%200%205%203%200%200%200%200%206%204%200%200%200%200%205%204%200%200%200%200%205%204%200%200%200%200%205%204%200%200%201%200%204%204%201%200%200%200%200%201%203%203%203%204%202%204%201%204%200%205%200%204-2%204-2%204-3%204-4%203-4%202-4%201-4%201z%20m-541-2l-4-1-4-3-4-2-3-4-2-4-1-4-1-5%200-4%201-5%202-4%203-4%203-2%201-1%200-1%200%200%205-4%200%200%200%200%205-4%200%200%200%200%203-2%200%200%200%200%202-2%201%200%200%200%202-2%200%200%200%200%203-2%200%200%200%200%202-2%201%200%200%200%202-2%200%200%200%200%203-2%200%200%200%200%203-1%200-1%200%200%202-1%200%200%200%200%203-2%200%200%200%200%203-2%200%200%200%200%203-2%200%200%200%200%202-2%200%200%201%200%202-1%200%200%200%200%203-2%200%200%200%200%203-2%200%200%200%200%203-1%200%200%200-1%203-1%200%200%200%200%203-2%200%200%200%200%202-1%201%200%200%200%202-2%201%200%200%200%202-2%200%200%201%200%202-1%200%200%201%200%202-2%200%200%200%200%203-1%200%200%200%200%203-2%200%200%201%200%202-1%200%200%201%200%202-1%200-1%201%200%202-1%201%200%200%200%203-1%200%200%200%200%203-2%200%200%200%200%203-1%200%200%200%200%203-1%200%200%200%200%203-2%200%200%200%200%203-1%200%200%200%200%203-1%200%200%200%200%203-1%201%200%200%200%203-1%200%200%200%200%203-2%200%200%200%200%203-1%200%200%200%200%203-1%200%200%201%200%203-1%200%200%200%200%203-1%200%200%200%200%203-1%200%200%200%200%203-1%200%200%201%200%203-1%200%200%200%200%203-1%200%200%200%200%203-1%202%200%200%200%200%200%203-1%200%200%200-1%203-1%201%200%200%200%203-1%200%200%200%200%203-1%200%200%200%200%203-1%200%200%200%200%204%200%200-1%200%200%203%200%200%200%200%200%203-1%200%200%200%200%203-1%201%200%200%200%203-1%200%200%200%200%203-1%200%200%200%200%200%200%205%200%204%200%205%201%204%202%204%202%203%204%202%203%202%205%201%204%200%205%200%204-2%204-2%204-3%204-4%202-4%203-3%201%200%200-1%200-3%200-2%201%200%200-3%201%200%200-3%201%200%200-3%200%200%200-3%201-3%201-3%201%200%200-3%201-2%201-3%201-3%201-1%200-1%200-3%201-3%201-3%201%200%200-2%201-3%201-3%201-3%200-3%201%200%200-3%201-3%201-2%201%200%200-3%202-3%201%200%200-3%201%200%200-2%201-3%201%200%200-3%201-3%201-2%202-3%201%200%200-3%201-2%201-3%202-3%201-2%201%200%200-3%202-2%201%200%200-3%201%200%200-3%202%200%200-2%201-2%202-1%200-2%201%200%200-3%202-2%201%200%200-3%202-2%201%200%200-3%202%200%200-2%202%200%200-2%201-3%202%200%200-2%202-2%201-1%200-2%202%200%200-2%202-3%201%200%200-2%202%200%200-2%202%200%200-3%202-4%203-5%204-1%201-4%203-4%201-4%202-5%200z'%20horiz-adv-x='1000'%20/%3e%3cglyph%20glyph-name='sequential-mi-marker'%20unicode='&%23xe816;'%20d='M200%20600l0-100%20600%200%200%20100-600%200z%20m0-200l0-100%20600%200%200%20100-600%200z%20m0-200l0-100%20600%200%200%20100-600%200z'%20horiz-adv-x='1000'%20/%3e%3cglyph%20glyph-name='user-task'%20unicode='&%23xe817;'%20d='M328%20611c-51%200-87-39-88-84l0%200%200%200c0-13%204-27%2010-40%204-10%209-18%2015-25-37-13-80-33-102-75l-1-2%200-133%20332%200%200%20133-1%202c-22%2041-64%2062-101%2075%2018%2018%2023%2041%2023%2065l0%200%200%200c0%2045-36%2084-87%2084z%20m-35-47c3%200%205-1%208-1%2023-1%2030-5%2036-9%206-4%2010-8%2026-8l0%200%200%200c12%200%2018%203%2022%205%201%201%203%202%204%203%204-8%206-17%206-27%200-27-4-45-29-61l2-18c6-1%2011-3%2016-5%201-3%202-7%202-12%201-4%201-9%201-13%200-3-2-5-2-5-12-13-34-20-57-20-23%200-45%207-57%2020%200%200-2%202-2%205%200%204%200%209%201%2013%200%205%201%209%202%2012%205%202%2010%204%2015%205l2%2020c-1%201-3%202-4%203-5%204-12%2013-17%2024-4%2010-7%2023-7%2032%200%2012%203%2023%208%2033%202%200%203%200%204%201%204%201%2010%203%2020%203z%20m-43-130c0%200%200%200%200%200-1-6-2-12-1-18%201-6%202-12%208-17%2017-18%2044-26%2071-26%2027%200%2054%208%2071%2026%206%205%207%2011%208%2017%201%206%200%2012-1%2018%200%200%200%200%200%200%2027-12%2054-29%2068-54l0-108-48%200%200%2076-20%200%200-76-156%200%200%2076-21%200%200-76-47%200%200%20108c14%2025%2041%2043%2068%2054z%20m-35%20311c-107%200-195-87-195-194l0-402c0-107%2088-194%20195-194l570%200c108%200%20195%2087%20195%20194l0%20402c0%20107-87%20194-195%20194l-570%200z%20m0-60l570%200c75%200%20135-59%20135-134l0-402c0-75-60-134-135-134l-570%200c-75%200-135%2059-135%20134l0%20402c0%2075%2060%20134%20135%20134z'%20horiz-adv-x='1000'%20/%3e%3cglyph%20glyph-name='business-rule'%20unicode='&%23xe818;'%20d='M89%20659l0-617%20822%200%200%20617-822%200z%20m35-209l159%200%200-173-159%200%200%20173z%20m194%200l558%200%200-173-558%200%200%20173z%20m-194-208l159%200%200-165-159%200%200%20165z%20m194%200l558%200%200-165-558%200%200%20165z'%20horiz-adv-x='1000'%20/%3e%3cglyph%20glyph-name='sub-process-marker'%20unicode='&%23xe819;'%20d='M150%20700l0-25%200-675%20700%200%200%20700z%20m44-44l612%200%200-612-612%200z%20m261-106l0-155-155%200%200-90%20155%200%200-155%2090%200%200%20155%20155%200%200%2090-155%200%200%20155z'%20horiz-adv-x='1000'%20/%3e%3cglyph%20glyph-name='start-event-parallel-multiple'%20unicode='&%23xe81a;'%20d='M496%20802c-176%200-345-113-412-276-70-161-34-362%2089-487%20119-128%20314-175%20477-115%20169%2058%20294%20224%20301%20403%2012%20176-92%20351-250%20428-62%2031-132%2047-201%2047-1%200-3%200-4%200z%20m12-49c173-1%20335-126%20380-293%2047-159-17-344-155-439-143-105-354-97-489%2018-136%20108-185%20309-115%20468%2060%20147%20212%20248%20371%20246%203%200%206%200%208%200z%20m-78-208l0-125-125%200%200-140%20125%200%200-125%20140%200%200%20125%20125%200%200%20140-125%200%200%20125-140%200z%20m23-23l94%200%200-125%20125%200%200-94-125%200%200-125-94%200%200%20126-125%200%200%2093%20125%200%200%20125z'%20horiz-adv-x='1000'%20/%3e%3cglyph%20glyph-name='start-event-error'%20unicode='&%23xe81b;'%20d='M500%20802c-178%202-349-112-416-276-70-161-34-362%2089-487%20119-128%20314-175%20477-115%20169%2058%20294%20224%20301%20403%2012%20176-92%20351-250%20428-62%2031-132%2047-201%2047z%20m0-49c175%203%20342-123%20388-293%2047-159-17-344-155-439-143-105-354-97-489%2018-136%20109-185%20309-115%20468%2060%20147%20212%20248%20371%20246z%20m173-210c-34-70-68-139-102-209-43%2056-86%20111-128%20166-39-114-77-228-116-342%2043%2055%2087%20111%20130%20167%2045-51%2089-103%20134-154%2027%20124%2055%20248%2082%20372z%20m-219-110c41-52%2081-103%20122-154%2010%2022%2020%2045%2030%2067-10-39-19-78-29-116-41%2048-83%2097-124%20145-17-26-34-52-50-77%2017%2045%2034%2090%2051%20135z'%20horiz-adv-x='1000'%20/%3e%3cglyph%20glyph-name='intermediate-event-catch-signal'%20unicode='&%23xe81c;'%20d='M499%20802c-220%204-425-177-448-396-24-185%2078-380%20247-461%20160-80%20368-56%20501%2066%20134%20118%20190%20318%20128%20486-57%20167-217%20293-393%20303-12%201-23%202-35%202z%20m-5-49c202%207%20391-161%20407-362%2019-178-92-361-262-420-166-61-368-2-468%20145-103%20144-99%20356%2018%20490%2074%2090%20188%20146%20305%20147z%20m8-44c-186%206-358-158-361-344-9-169%20116-334%20283-367%20155-33%20328%2046%20397%20190%2071%20140%2039%20327-83%20430-64%2057-150%2091-236%2091z%20m-2-48c164%204%20314-144%20311-308%203-152-119-297-272-312-143-19-295%2073-336%20213-43%20134%2014%20295%20138%20364%2048%2028%20103%2043%20159%2043z%20m0-99c-64-115-128-230-192-345%20128%200%20256%200%20384%200-64%20115-128%20230-192%20345z%20m0-51c50-90%20100-180%20151-270-101%200-201%200-302%200%2051%2090%20101%20180%20151%20270z'%20horiz-adv-x='1000'%20/%3e%3cglyph%20glyph-name='intermediate-event-catch-error'%20unicode='&%23xe81d;'%20d='M499%20802c-220%204-425-177-448-396-24-185%2078-380%20247-461%20160-80%20368-56%20501%2066%20134%20118%20190%20318%20128%20486-57%20167-217%20293-393%20303-12%201-23%202-35%202z%20m-5-49c202%207%20391-161%20407-362%2019-178-92-361-262-420-166-61-368-2-468%20145-103%20144-99%20356%2018%20490%2074%2090%20188%20146%20305%20147z%20m8-44c-186%206-358-158-361-344-9-169%20116-334%20283-367%20155-33%20328%2046%20397%20190%2071%20140%2039%20327-83%20430-64%2057-150%2091-236%2091z%20m-2-48c164%204%20314-144%20311-308%203-152-119-297-272-312-143-19-295%2073-336%20213-43%20134%2014%20295%20138%20364%2048%2028%20103%2043%20159%2043z%20m173-118c-34-70-68-139-102-209-43%2056-86%20111-128%20166-39-114-77-228-116-342%2043%2055%2087%20111%20130%20167%2045-51%2089-103%20134-154%2027%20124%2055%20248%2082%20372z%20m-219-110c41-52%2081-103%20122-154%2010%2022%2020%2045%2030%2067-10-39-19-78-29-116-41%2048-83%2097-124%20145-17-26-34-51-50-77%2017%2045%2034%2090%2051%20135z'%20horiz-adv-x='1000'%20/%3e%3cglyph%20glyph-name='end-event-compensation'%20unicode='&%23xe81e;'%20d='M491%20802c-219%200-420-183-440-400-22-186%2082-380%20253-459%20158-77%20361-53%20492%2067%20134%20115%20192%20312%20133%20480-55%20172-220%20303-401%20311-13%201-25%201-37%201z%20m9-142c161%205%20308-137%20310-298%207-147-103-292-250-317-142-28-300%2054-350%20192-53%20136%202%20309%20132%20380%2047%2028%20103%2043%20158%2043z%20m-16-162c-70-49-140-99-209-148%2070-49%20139-99%20209-148%200%2048%200%2095%200%20143%2067-48%20135-95%20202-143%200%2099%200%20197%200%20296-67-48-135-95-202-143%200%2048%200%2095%200%20143z'%20horiz-adv-x='1000'%20/%3e%3cglyph%20glyph-name='subprocess-collapsed'%20unicode='&%23xe81f;'%20d='M216%20716c-86%200-155-69-155-154l0-424c0-85%2069-154%20155-154l569%200c85%200%20154%2069%20154%20154l0%20424c0%2085-69%20154-154%20154l-569%200z%20m0-48l569%200c59%200%20106-47%20106-106l0-424c0-59-47-106-106-106l-116%200%200%20308-338%200%200-15%200-293-115%200c-60%200-106%2047-106%20106l0%20424c0%2059%2046%20106%20106%20106z%20m146-359l276%200%200-276-276%200%200%20276z%20m115-39l0-23%200-54-54%200-23%200%200-46%2023%200%2054%200%200-54%200-23%2046%200%200%2023%200%2054%2054%200%2023%200%200%2046-23%200-54%200%200%2054%200%2023-46%200z'%20horiz-adv-x='1000'%20/%3e%3cglyph%20glyph-name='subprocess-expanded'%20unicode='&%23xe820;'%20d='M215%20716c-85%200-154-69-154-154l0-424c0-85%2069-154%20154-154l570%200c85%200%20154%2069%20154%20154l0%20424c0%2085-69%20154-154%20154l-570%200z%20m0-48l570%200c59%200%20106-47%20106-106l0-424c0-59-47-106-106-106l-116%200%200%20292%200%2016-15%200-308%200-15%200%200-16%200-292-116%200c-59%200-105%2047-105%20106l0%20424c0%2059%2046%20106%20105%20106z%20m147-359l276%200%200-277-276%200%200%20277z%20m37-110l0-47%20203%200%200%2047-203%200z'%20horiz-adv-x='1000'%20/%3e%3cglyph%20glyph-name='task'%20unicode='&%23xe821;'%20d='M215%20716c-85%200-154-69-154-154l0-424c0-85%2069-154%20154-154l570%200c85%200%20154%2069%20154%20154l0%20424c0%2085-69%20154-154%20154l-570%200z%20m0-48l570%200c59%200%20106-47%20106-106l0-424c0-59-47-106-106-106l-570%200c-59%200-105%2047-105%20106l0%20424c0%2059%2046%20106%20105%20106z'%20horiz-adv-x='1000'%20/%3e%3cglyph%20glyph-name='end-event-error'%20unicode='&%23xe822;'%20d='M491%20802c-219%200-420-183-440-400-22-186%2082-380%20253-459%20158-77%20361-53%20492%2067%20134%20115%20192%20312%20133%20480-55%20172-220%20303-401%20311-13%201-25%201-37%201z%20m9-142c161%205%20308-137%20310-298%207-147-103-292-250-317-142-28-300%2054-350%20192-53%20136%202%20309%20132%20380%2047%2028%20103%2043%20158%2043z%20m173-117c-34-70-68-139-102-209-43%2056-86%20111-128%20166-39-114-77-228-116-342%2043%2055%2087%20111%20130%20167%2045-51%2089-103%20134-154%2027%20124%2055%20248%2082%20372z'%20horiz-adv-x='1000'%20/%3e%3cglyph%20glyph-name='intermediate-event-catch-escalation'%20unicode='&%23xe823;'%20d='M499%20802c-220%204-425-177-448-396-24-185%2078-380%20247-461%20160-80%20368-56%20501%2066%20134%20118%20190%20318%20128%20486-57%20167-217%20293-393%20303-12%201-23%202-35%202z%20m-5-49c202%207%20391-161%20407-362%2019-178-92-361-262-420-166-61-368-2-468%20145-103%20144-99%20356%2018%20490%2074%2090%20188%20146%20305%20147z%20m8-44c-186%206-358-158-361-344-9-169%20116-334%20283-367%20155-33%20328%2046%20397%20190%2071%20140%2039%20327-83%20430-64%2057-150%2091-236%2091z%20m-2-48c164%204%20314-144%20311-308%203-152-119-297-272-312-143-19-295%2073-336%20213-43%20134%2014%20295%20138%20364%2048%2028%20103%2043%20159%2043z%20m0-111c-47-131-77-268-124-400%2043%2043%2081%2091%20124%20135%2042-45%2083-90%20125-135-43%20133-83%20267-125%20400z%20m1-83c23-73%2045-146%2068-219-22%2024-45%2049-68%2074-19-17-69-82-66-68%2024%2070%2041%20143%2066%20213z'%20horiz-adv-x='1000'%20/%3e%3cglyph%20glyph-name='intermediate-event-catch-timer'%20unicode='&%23xe824;'%20d='M499%20802c-1%200-2%200-3%200-202%201-391-150-436-346-42-173%2028-368%20174-471%20145-107%20354-116%20506-18%20149%2093%20235%20276%20207%20450-26%20176-164%20330-338%20371-36%209-73%2014-110%2014z%20m-5-49c3%200%207%200%2010%200%20187%202%20362-146%20392-331%2032-167-54-348-205-427-154-85-363-54-483%2077-124%20127-147%20338-53%20488%2071%20116%20203%20192%20339%20193z%20m8-44c-3%200-7%200-10%200-172%200-330-143-349-314-22-161%2079-328%20233-382%20145-55%20322-3%20413%20124%2098%20129%2092%20326-17%20447-67%2077-167%20125-270%20125z%20m-2-48c2%200%204%200%206%200%20153%200%20292-129%20304-281%2016-145-84-293-225-330-137-40-296%2027-361%20154-69%20129-33%20305%2086%20392%2054%2042%20122%2065%20190%2065z%20m-4-97c-84%200-164-55-194-133-33-76-15-170%2043-229%2056-60%20149-82%20226-54%2081%2028%20141%20108%20143%20194%205%2083-46%20166-121%20201-29%2014-61%2021-93%2021-1%200-3%200-4%200z%20m8-39c76%200%20148-57%20166-131%2020-73-14-156-79-194-67-42-160-31-215%2026-58%2056-68%20152-24%20219%2032%2049%2089%2081%20148%2080%201%200%202%200%204%200z%20m51-49c-19-36-39-71-58-107-18-2-23-29-6-36%2011-8%2020%205%2030%204l89%200%200%2025-89%200c18%2034%2037%2068%2056%20102-7%204-14%208-22%2012z'%20horiz-adv-x='1000'%20/%3e%3cglyph%20glyph-name='start-event-escalation'%20unicode='&%23xe825;'%20d='M500%20802c-178%202-349-112-416-276-70-161-34-362%2089-487%20119-128%20314-175%20477-115%20169%2058%20294%20224%20301%20403%2012%20176-92%20351-250%20428-62%2031-132%2047-201%2047z%20m0-49c175%203%20342-123%20388-293%2047-159-17-344-155-439-143-105-354-97-489%2018-136%20109-185%20309-115%20468%2060%20147%20212%20248%20371%20246z%20m0-203c-47-131-77-268-124-400%2043%2043%2081%2091%20124%20135%2042-45%2083-90%20125-135-43%20133-83%20267-125%20400z%20m1-83c23-73%2045-146%2068-219-22%2024-45%2049-68%2074-19-17-69-82-66-68%2024%2070%2041%20143%2066%20213z'%20horiz-adv-x='1000'%20/%3e%3cglyph%20glyph-name='start-event-signal'%20unicode='&%23xe826;'%20d='M500%20802c-178%202-349-112-416-276-70-161-34-362%2089-487%20119-128%20314-175%20477-115%20169%2058%20294%20224%20301%20403%2012%20176-92%20351-250%20428-62%2031-132%2047-201%2047z%20m0-49c175%203%20342-123%20388-293%2047-159-17-344-155-439-143-105-354-97-489%2018-136%20109-185%20309-115%20468%2060%20147%20212%20248%20371%20246z%20m0-191c-64-115-128-230-192-345%20128%200%20256%200%20384%200-64%20115-128%20230-192%20345z%20m0-51c50-90%20100-180%20151-270-101%200-201%200-302%200%2051%2090%20101%20180%20151%20270z'%20horiz-adv-x='1000'%20/%3e%3cglyph%20glyph-name='business-rule-task'%20unicode='&%23xe827;'%20d='M215%20745c-107%200-195-87-195-194l0-402c0-107%2088-194%20195-194l570%200c108%200%20195%2087%20195%20194l0%20402c0%20107-87%20194-195%20194l-570%200z%20m0-60l570%200c75%200%20135-59%20135-134l0-402c0-75-60-134-135-134l-570%200c-75%200-135%2059-135%20134l0%20402c0%2075%2060%20134%20135%20134z%20m-36-72l0-380%20506%200%200%20380-506%200z%20m21-131l463%200%200-104-343%200%200%20103-22%200%200-103-98%200%200%20104z%20m0-125l98%200%200-102-98%200%200%20102z%20m120%200l343%200%200-102-343%200%200%20102z%20m-118%20232l0-108%20461%200%200%20108z'%20horiz-adv-x='1000'%20/%3e%3cglyph%20glyph-name='manual'%20unicode='&%23xe828;'%20d='M460%20659c-11%200-22-5-31-10l0%200%200%200c-47-31-209-143-245-168l0%200%200%200c-32-22-54-55-66-95l0%200%200%200c-13-41-11-86-11-124l0%200%200%200c0-28%201-53%208-83%200%200%200%200%200%200%2011-44%2031-75%2061-95%2029-19%2065-26%20105-26%20147-1%20293-1%20439%200l0%200%200%200c16%200%2031%206%2041%2018%2010%2012%2014%2028%2014%2045%200%2011-2%2022-5%2032l16%200c16%200%2030%204%2040%2014%2011%209%2016%2022%2019%2035l0%200c4%2019%202%2038-6%2053%2017%202%2031%208%2041%2019%2010%2013%2013%2029%2013%2047%200%2018-4%2035-14%2049-10%2013-27%2023-46%2023l0%200%200%200c-7%200-13%200-21%200%204%209%206%2019%206%2031l0%200%200%200c0%2017-5%2035-15%2048-10%2014-27%2023-46%2023-112%200-223-1-317-1%205%205%209%2010%2015%2015%2016%2017%2031%2032%2039%2042%2020%2025%2023%2059%206%2083-8%2013-21%2022-34%2024-2%200-4%201-5%201l0%200c-1%200-1%200-1%200z%20m0-35c0%200%201%200%201-1%203%200%206-1%2010-8l0%200%200%200c6-9%206-29-4-42l0%200%200%200c-4-5-21-23-37-39-16-16-32-31-39-40-8-9-5-16-3-21%202-5%204-10%2014-12%203-1%204-1%205-1%200%200%201%200%203%200%202%200%205%200%209%200%20113-1%20225%200%20338%200l0%200%200%200c9%200%2013-3%2018-9%204-6%208-16%208-28%200-12-3-19-7-24-3-4-8-6-19-6l-242%200%200-35%20242%200%200%200c34%200%2051%200%2076%200%209%200%2013-3%2018-9%204-6%207-16%207-28l0%200c0-13-2-21-5-24-3-4-8-7-20-7-4%200-34%200-47%200%200%200%200%200-1%200-90%200-180%200-270%200l0%200%200-35%200%200c0%200%20191%200%20271%200%2010%200%2015-4%2020-12%205-8%207-20%205-34l0%200%200%200c-2-9-5-14-8-17-3-2-7-4-17-4-90%200-181%200-271%200l0%200%200-35%200%200%20205%200%200%200c7%200%2010-2%2014-7%203-4%206-13%206-25l0%200%200%200c0-11-3-19-6-23-3-4-6-5-14-5-146-1-292-1-438%200l0%200%200%200c-37%200-66%206-87%2020-21%2014-37%2037-46%2074l0%201%200%200c-6%2026-7%2047-7%2074l0%200c0%2039-1%2080%209%20114%2011%2034%2028%2059%2053%2076l0%200c36%2025%20199%20138%20244%20167l0%200c5%203%208%204%2011%204%200%201%201%201%201%201z'%20horiz-adv-x='1000'%20/%3e%3cglyph%20glyph-name='receive'%20unicode='&%23xe829;'%20d='M95%20618l0-535%20811%200%200%20535-811%200z%20m83-35l644%200-322-212-322%20212z%20m-48-10l370-244%20371%20244%200-455-741%200%200%20455z'%20horiz-adv-x='1000'%20/%3e%3cglyph%20glyph-name='call-activity'%20unicode='&%23xe82a;'%20d='M231%20745c-116%200-211-93-211-208l0-374c0-115%2095-208%20211-208l538%200c116%200%20211%2093%20211%20208l0%20374c0%20115-95%20208-211%20208l-538%200z%20m0-110l538%200c58%200%20101-43%20101-98l0-374c0-55-43-98-101-98l-538%200c-58%200-101%2043-101%2098l0%20374c0%2055%2043%2098%20101%2098z'%20horiz-adv-x='1000'%20/%3e%3cglyph%20glyph-name='start-event-timer'%20unicode='&%23xe82b;'%20d='M500%20802c-249%200-452-203-452-452%200-249%20203-452%20452-452%20249%200%20452%20203%20452%20452%200%20249-203%20452-452%20452z%20m0-49c223%200%20403-180%20403-403%200-223-180-403-403-403-223%200-403%20180-403%20403%200%20223%20180%20403%20403%20403z%20m-4-189c-84%200-164-55-194-133-33-76-15-170%2043-229%2056-60%20149-82%20226-54%2081%2028%20141%20108%20143%20194%205%2083-46%20166-121%20201-29%2014-61%2021-93%2021-1%200-3%200-4%200z%20m8-39c76%200%20148-57%20166-131%2020-73-14-156-79-194-67-42-160-31-215%2026-58%2056-68%20152-24%20219%2032%2049%2089%2081%20148%2080%201%200%202%200%204%200z%20m51-49c-19-36-39-71-58-107-18-2-23-29-6-36%2011-8%2020%205%2030%204l89%200%200%2025-89%200c18%2034%2037%2068%2056%20102-7%204-14%208-22%2012z'%20horiz-adv-x='1000'%20/%3e%3cglyph%20glyph-name='start-event-message'%20unicode='&%23xe82c;'%20d='M500%20802c-178%202-349-112-416-276-70-161-34-362%2089-487%20119-128%20314-175%20477-115%20169%2058%20294%20224%20301%20403%2012%20176-92%20351-250%20428-62%2031-132%2047-201%2047z%20m0-49c175%203%20342-123%20388-293%2047-159-17-344-155-439-143-105-354-97-489%2018-136%20109-185%20309-115%20468%2060%20147%20212%20248%20371%20246z%20m-205-247c0-104%200-208%200-312%20137%200%20273%200%20410%200%200%20104%200%20208%200%20312-137%200-273%200-410%200z%20m91-49c76%200%20152%200%20228%200-40-24-81-79-121-85-36%2029-71%2057-107%2085z%20m270-28c0-62%200-124%200-186-104%200-208%200-312%200%200%2062%200%20124%200%20186%2052-42%20104-83%20156-125%2052%2042%20104%2083%20156%20125z'%20horiz-adv-x='1000'%20/%3e%3cglyph%20glyph-name='intermediate-event-none'%20unicode='&%23xe82d;'%20d='M496%20802c-219%202-422-178-445-396-24-185%2078-380%20247-461%20160-80%20368-56%20501%2066%20134%20118%20190%20318%20128%20486-57%20165-214%20291-388%20303-15%201-29%202-43%202z%20m8-49c201%203%20386-169%20398-370%2016-178-100-360-271-415-164-56-362%204-460%20148-103%20144-99%20357%2019%20491%2076%2092%20194%20149%20314%20146z%20m-12-44c-185%200-352-166-352-352-4-168%20124-331%20291-360%20153-30%20322%2049%20390%20191%2071%20141%2039%20329-84%20431-67%2059-156%2092-245%2090z%20m14-48c165%201%20312-150%20305-315%200-150-121-290-272-305-143-19-295%2073-336%20213-43%20134%2014%20296%20139%20364%2050%2029%20107%2044%20164%2043z'%20horiz-adv-x='1000'%20/%3e%3cglyph%20glyph-name='intermediate-event-catch-link'%20unicode='&%23xe82e;'%20d='M499%20802c-220%204-425-177-448-396-24-185%2078-380%20247-461%20160-80%20368-56%20501%2066%20134%20118%20190%20318%20128%20486-57%20167-217%20293-393%20303-12%201-23%202-35%202z%20m-5-49c202%207%20391-161%20407-362%2019-178-92-361-262-420-166-61-368-2-468%20145-103%20144-99%20356%2018%20490%2074%2090%20188%20146%20305%20147z%20m8-44c-186%206-358-158-361-344-9-169%20116-334%20283-367%20155-33%20328%2046%20397%20190%2071%20140%2039%20327-83%20430-64%2057-150%2091-236%2091z%20m-2-48c164%204%20314-144%20311-308%203-152-119-297-272-312-143-19-295%2073-336%20213-43%20134%2014%20295%20138%20364%2048%2028%20103%2043%20159%2043z%20m50-116c0-33%200-67%200-100-75%200-150%200-226%200%200-63%200-127%200-190%2076%200%20151%200%20226%200%200-33%200-67%200-100%2055%2065%20110%20130%20165%20195-55%2065-110%20130-165%20195z%20m28-73c34-40%2068-81%20102-121-34-40-68-81-102-121%200%2018%200%2036%200%2054-75%200-149%200-223%200%200%2044%200%2089%200%20133%2074%200%20148%200%20223%200%200%2018%200%2037%200%2055z'%20horiz-adv-x='1000'%20/%3e%3cglyph%20glyph-name='end-event-escalation'%20unicode='&%23xe82f;'%20d='M491%20802c-219%200-420-183-440-400-22-186%2082-380%20253-459%20158-77%20361-53%20492%2067%20134%20115%20192%20312%20133%20480-55%20172-220%20303-401%20311-13%201-25%201-37%201z%20m9-142c161%205%20308-137%20310-298%207-147-103-292-250-317-142-28-300%2054-350%20192-53%20136%202%20309%20132%20380%2047%2028%20103%2043%20158%2043z%20m0-110c-47-131-77-268-124-400%2043%2043%2081%2091%20124%20135%2042-45%2083-90%20125-135-43%20133-83%20267-125%20400z'%20horiz-adv-x='1000'%20/%3e%3cglyph%20glyph-name='bpmn-io'%20unicode='&%23xe831;'%20d='M674%2041h-348v-191h348z%20m-348%20809v-714h176c114%200%20171%2057%20171%20166v58c0%2076-23%20133-81%20157%2048%2024%2067%2071%2067%20143v28c0%20105-48%20162-162%20162z%20m114-100h57c43%200%2057-24%2057-76v-38c0-57-23-76-66-76h-48z%20m-5-300h53c47%200%2071-19%2071-86v-62c0-52-19-71-57-71h-67z'%20horiz-adv-x='1000'%20/%3e%3cglyph%20glyph-name='gateway-complex'%20unicode='&%23xe832;'%20d='M500%20802c-9%200-19-4-26-11l-415-415c-14-14-14-38%200-52l415-415c14-14%2038-14%2052%200l415%20415c14%2014%2014%2038%200%2052l-415%20415c-7%207-17%2011-26%2011z%20m0-62l390-390-390-390-390%20390%20390%20390z%20m-9-192l0%200c0%200-4-1-4-1%200%200-4-2-4-2%200%200-2-3-2-3%200%200-1-4-1-4l0-140-99%2099%200%200c0%200-3%202-3%202%200%200-4%201-4%201%200%200-4-1-4-1%200%200-4-2-4-2l-13-13c0%200-2-4-2-4%200%200-1-4-1-4%200%200%201-4%201-4%200%200%202-3%202-3l99-99-140%200%200%200c0%200-4-1-4-1%200%200-3-2-3-2l0%200c0%200-2-4-2-4%200%200-1-4-1-4l0-18c0%200%201-4%201-4%200%200%202-4%202-4%200%200%203-2%203-2%200%200%204-1%204-1l140%200-99-99%200%200c0%200-2-3-2-3%200%200-1-4-1-4%200%200%201-4%201-4%200%200%202-4%202-4l13-13c0%200%204-2%204-2%200%200%204-1%204-1%200%200%204%201%204%201%200%200%203%202%203%202l99%2099%200-140%200%200c0%200%201-4%201-4%200%200%202-3%202-3%200%200%204-2%204-2%200%200%204-1%204-1l18%200c0%200%204%201%204%201%200%200%204%202%204%202%200%200%202%203%202%203%200%200%201%204%201%204l0%20140%2099-99c0%200%203-2%203-2%200%200%204-1%204-1%200%200%204%201%204%201%200%200%204%202%204%202l13%2013c0%200%202%204%202%204%200%200%201%204%201%204%200%200-1%204-1%204%200%200-2%204-2%204l-99%2098%20140%200c0%200%204%201%204%201%200%200%203%202%203%202%200%200%203%204%203%204%200%200%200%204%200%204l0%2018c0%200%200%204%200%204%200%200-3%204-3%204%200%200-3%202-3%202%200%200-4%201-4%201l-140%200%2099%2099c0%200%202%203%202%203%200%200%201%204%201%204%200%200-1%204-1%204%200%200-2%204-2%204l-13%2013c0%200-4%202-4%202%200%200-4%201-4%201%200%200-4-1-4-1%200%200-3-2-3-2l-99-99%200%20140c0%200-1%204-1%204%200%200-2%203-2%203%200%200-4%203-4%203%200%200-4%200-4%200l-18%200z%20m-117-48c0%200%200%200%200%200l0%200c0%200%200%200%200%200z'%20horiz-adv-x='1000'%20/%3e%3cglyph%20glyph-name='gateway-eventbased'%20unicode='&%23xe833;'%20d='M500%20802c-9%200-19-4-26-11l-415-415c-14-14-14-38%200-52l415-415c14-14%2038-14%2052%200l415%20415c14%2014%2014%2038%200%2052l-415%20415c-7%207-17%2011-26%2011z%20m0-62l390-390-390-390-390%20390%20390%20390z%20m0-166l-7-5-208-151%2082-253%20266%200%2082%20253-215%20156z%20m0-30l187-135-72-220-230%200-72%20220%20187%20135z'%20horiz-adv-x='1000'%20/%3e%3cglyph%20glyph-name='gateway-none'%20unicode='&%23xe834;'%20d='M59%20376c-14-14-14-38%200-52l415-415c14-14%2038-14%2052%200l415%20415c14%2014%2014%2038%200%2052l-415%20415c-14%2014-38%2014-52%200l-415-415z%20m51-26l390%20390%20390-390-390-390-390%20390z'%20horiz-adv-x='1000'%20/%3e%3cglyph%20glyph-name='gateway-or'%20unicode='&%23xe835;'%20d='M500%20802c-9%200-19-4-26-11l-415-415c-14-14-14-38%200-52l415-415c14-14%2038-14%2052%200l415%20415c14%2014%2014%2038%200%2052l-415%20415c-7%207-17%2011-26%2011z%20m0-62l390-390-390-390-390%20390%20390%20390z%20m0-180c-116%200-210-94-210-210%200-116%2094-210%20210-210%20116%200%20210%2094%20210%20210%200%20116-94%20210-210%20210z%20m0-23c103%200%20187-84%20187-187%200-103-84-187-187-187-103%200-187%2084-187%20187%200%20103%2084%20187%20187%20187z'%20horiz-adv-x='1000'%20/%3e%3cglyph%20glyph-name='end-event-terminate'%20unicode='&%23xe836;'%20d='M491%20802c-219%200-420-183-440-400-22-186%2082-380%20253-459%20158-77%20361-53%20492%2067%20134%20115%20192%20312%20133%20480-55%20172-220%20303-401%20311-13%201-25%201-37%201z%20m9-142c161%205%20308-137%20310-298%207-147-103-292-250-317-142-28-300%2054-350%20192-53%20136%202%20309%20132%20380%2047%2028%20103%2043%20158%2043z%20m0-81c-149%206-268-156-219-297%2038-143%20229-210%20349-121%20126%2079%20133%20281%2013%20369-40%2032-92%2050-143%2049z'%20horiz-adv-x='1000'%20/%3e%3cglyph%20glyph-name='end-event-signal'%20unicode='&%23xe837;'%20d='M491%20802c-219%200-420-183-440-400-22-186%2082-380%20253-459%20158-77%20361-53%20492%2067%20134%20115%20192%20312%20133%20480-55%20172-220%20303-401%20311-13%201-25%201-37%201z%20m9-142c161%205%20308-137%20310-298%207-147-103-292-250-317-142-28-300%2054-350%20192-53%20136%202%20309%20132%20380%2047%2028%20103%2043%20158%2043z%20m0-98c-64-115-128-230-192-345%20128%200%20256%200%20384%200-64%20115-128%20230-192%20345z'%20horiz-adv-x='1000'%20/%3e%3cglyph%20glyph-name='end-event-none'%20unicode='&%23xe838;'%20d='M496%20802c-203%201-394-153-437-351-41-174%2033-368%20181-470%20143-103%20348-111%20497-15%20150%2091%20238%20275%20210%20449-26%20181-170%20339-350%20376-33%207-67%2011-101%2011z%20m10-142c150%201%20287-123%20302-271%2019-142-72-291-210-334-134-45-296%2013-366%20138-77%20129-45%20313%2078%20403%2056%2043%20126%2066%20196%2064z'%20horiz-adv-x='1000'%20/%3e%3cglyph%20glyph-name='end-event-multiple'%20unicode='&%23xe839;'%20d='M491%20802c-219-1-420-183-440-401-22-185%2082-379%20252-458%20159-77%20362-53%20493%2066%20134%20116%20192%20313%20133%20481-55%20171-220%20303-401%20311-13%200-25%201-37%201z%20m9-142c161%205%20308-137%20310-298%207-148-104-292-250-317-142-28-300%2054-350%20192-53%20136%201%20308%20132%20380%2047%2028%20102%2043%20158%2043z%20m0-86c-72-52-143-104-215-156%2027-84%2055-169%2082-253%2089%200%20177%200%20266%200%2028%2084%2055%20169%2082%20253-71%2052-143%20104-215%20156z'%20horiz-adv-x='1000'%20/%3e%3cglyph%20glyph-name='end-event-message'%20unicode='&%23xe83a;'%20d='M491%20802c-219%200-420-183-440-400-22-186%2082-380%20253-459%20158-77%20361-53%20492%2067%20134%20115%20192%20312%20133%20480-55%20172-220%20303-401%20311-13%201-25%201-37%201z%20m9-142c161%205%20308-137%20310-298%207-147-103-292-250-317-142-28-300%2054-350%20192-53%20136%202%20309%20132%20380%2047%2028%20103%2043%20158%2043z%20m-167-154c57-46%20114-92%20171-138%2056%2046%20113%2092%20170%20138-114%200-227%200-341%200z%20m-38-32c0-93%200-187%200-280%20137%200%20273%200%20410%200%200%2091%200%20183%200%20274-67-54-134-109-201-163-70%2056-139%20113-209%20169z'%20horiz-adv-x='1000'%20/%3e%3cglyph%20glyph-name='end-event-link'%20unicode='&%23xe83b;'%20d='M491%20802c-219%200-420-183-440-400-22-186%2082-380%20253-459%20158-77%20361-53%20492%2067%20134%20115%20192%20312%20133%20480-55%20172-220%20303-401%20311-13%201-25%201-37%201z%20m9-142c161%205%20308-137%20310-298%207-147-103-292-250-317-142-28-300%2054-350%20192-53%20136%202%20309%20132%20380%2047%2028%20103%2043%20158%2043z%20m50-115c0-33%200-67%200-100-75%200-150%200-226%200%200-63%200-127%200-190%2076%200%20151%200%20226%200%200-33%200-67%200-100%2055%2065%20110%20130%20165%20195-55%2065-110%20130-165%20195z'%20horiz-adv-x='1000'%20/%3e%3cglyph%20glyph-name='intermediate-event-catch-message'%20unicode='&%23xe83c;'%20d='M499%20802c-220%204-425-177-448-396-24-185%2078-380%20247-461%20160-80%20368-56%20501%2066%20134%20118%20190%20318%20128%20486-57%20167-217%20293-393%20303-12%201-23%202-35%202z%20m-5-49c202%207%20391-161%20407-362%2019-178-92-361-262-420-166-61-368-2-468%20145-103%20144-99%20356%2018%20490%2074%2090%20188%20146%20305%20147z%20m8-44c-186%206-358-158-361-344-9-169%20116-334%20283-367%20155-33%20328%2046%20397%20190%2071%20140%2039%20327-83%20430-64%2057-150%2091-236%2091z%20m-2-48c164%204%20314-144%20311-308%203-152-119-297-272-312-143-19-295%2073-336%20213-43%20134%2014%20295%20138%20364%2048%2028%20103%2043%20159%2043z%20m-205-155c0-104%200-208%200-312%20137%200%20273%200%20410%200%200%20104%200%20208%200%20312-137%200-273%200-410%200z%20m91-49c76%200%20152%200%20228%200-40-24-81-79-121-85-36%2029-71%2057-107%2085z%20m270-28c0-62%200-124%200-186-104%200-208%200-312%200%200%2062%200%20124%200%20186%2052-42%20104-83%20156-125%2052%2042%20104%2083%20156%20125z'%20horiz-adv-x='1000'%20/%3e%3cglyph%20glyph-name='intermediate-event-throw-compensation'%20unicode='&%23xe83d;'%20d='M499%20802c-220%204-425-177-448-396-24-185%2078-380%20247-461%20160-80%20368-56%20501%2066%20134%20118%20190%20318%20128%20486-57%20167-217%20293-393%20303-12%201-23%202-35%202z%20m-5-49c202%207%20391-161%20407-362%2019-178-92-361-262-420-166-61-368-2-468%20145-103%20144-99%20356%2018%20490%2074%2090%20188%20146%20305%20147z%20m8-44c-186%206-358-158-361-344-9-169%20116-334%20283-367%20155-33%20328%2046%20397%20190%2071%20140%2039%20327-83%20430-64%2057-150%2091-236%2091z%20m-2-48c164%204%20314-144%20311-308%203-152-119-297-272-312-143-19-295%2073-336%20213-43%20134%2014%20295%20138%20364%2048%2028%20103%2043%20159%2043z%20m-16-163c-70-49-140-99-209-148%2070-49%20139-99%20209-148%200%2048%200%2095%200%20143%2067-48%20135-95%20202-143%200%2099%200%20197%200%20296-67-48-135-95-202-143%200%2048%200%2095%200%20143z'%20horiz-adv-x='1000'%20/%3e%3cglyph%20glyph-name='start-event-multiple'%20unicode='&%23xe83e;'%20d='M500%20802c-178%202-349-112-416-276-70-161-34-362%2089-487%20119-128%20314-175%20477-115%20169%2058%20294%20224%20301%20403%2012%20176-92%20351-250%20428-62%2031-132%2047-201%2047z%20m0-49c175%203%20342-123%20388-293%2047-159-17-344-155-439-143-105-354-97-489%2018-136%20109-185%20309-115%20468%2060%20147%20212%20248%20371%20246z%20m0-179c-72-52-143-104-215-156%2027-84%2055-169%2082-253%2089%200%20177%200%20266%200%2028%2084%2055%20169%2082%20253-71%2052-143%20104-215%20156z%20m0-30c62-45%20124-90%20187-135-24-74-48-147-72-220-77%200-153%200-230%200-24%2073-48%20146-72%20220%2063%2045%20125%2090%20187%20135z'%20horiz-adv-x='1000'%20/%3e%3cglyph%20glyph-name='script'%20unicode='&%23xe83f;'%20d='M380%20661l-4-2-2-1c-58-35-98-67-125-98-26-31-39-62-40-92%200-60%2044-105%2083-145%2039-40%2074-78%2078-109%201-16-3-32-20-54-17-22-49-48-99-78l-74-43%20458%200%205%203%201%200c53%2031%2089%2060%20112%2089%2023%2029%2032%2059%2029%2088-6%2056-52%2097-90%20137-39%2039-70%2076-70%20112%200%2017%207%2037%2029%2062%2021%2025%2057%2055%20113%2088l0%200%2073%2043-457%200z%20m13-46l282%200c-25-19-45-37-60-55-26-31-39-62-39-92-1-60%2043-105%2082-145%2039-40%2074-78%2078-109%201-16-2-32-20-54-16-21-47-46-94-74l-283%200c20%2015%2036%2030%2047%2045%2023%2029%2033%2059%2030%2088-6%2056-52%2097-91%20137-38%2039-70%2076-69%20112%200%2017%207%2037%2028%2062%2021%2025%2056%2053%20109%2085z%20m-66-80l0-21%20220%200%200%2021-220%200z%20m-9-115l0-22%20229%200%200%2022-229%200z%20m104-116l0-21%20221%200%200%2021-221%200z%20m31-115l0-22%20229%200%200%2022-229%200z'%20horiz-adv-x='1000'%20/%3e%3cglyph%20glyph-name='manual-task'%20unicode='&%23xe840;'%20d='M215%20745c-107%200-195-87-195-194l0-402c0-107%2088-194%20195-194l570%200c108%200%20195%2087%20195%20194l0%20402c0%20107-87%20194-195%20194l-570%200z%20m0-60l570%200c75%200%20135-59%20135-134l0-402c0-75-60-134-135-134l-570%200c-75%200-135%2059-135%20134l0%20402c0%2075%2060%20134%20135%20134z%20m133-40c-7%200-13-2-18-6l0%200%200%200c-30-19-131-89-153-104l0%200%200%200c-20-14-34-35-42-60l0%200%200%200c-8-25-7-53-7-77l0%200%200%200c0-18%201-33%205-52%200%200%200%200%200%200%207-27%2019-49%2037-63%2018-15%2041-22%2067-22%2091-1%20183-1%20274%200l0%200%200%200c10%200%2019%203%2025%2011%206%207%209%2017%209%2027%200%207-1%2013-3%2019l10%200c10%200%2019%203%2025%209%207%207%2010%2015%2012%2023%200%200%200%200%200%200%202%2012%201%2024-4%2034%2011%201%2021%208%2026%2016%206%209%208%2020%208%2031%200%2011-3%2022-9%2031-6%209-16%2015-29%2015l0%200%200%200c-4%200-9%200-14%200%203%207%205%2015%205%2024l0%200%200%200c0%2011-3%2021-10%2029-6%208-17%2013-28%2013-68%200-127%200-192%200-3%200-4%200-6%200%203%203%206%206%209%209%2010%2010%2020%2020%2025%2026%2012%2016%2014%2037%204%2052-6%208-13%2014-22%2015-1%200-2%200-3%200%200%200-1%200-1%200z%20m1-22c0%200%200%200%200%200%202%200%204%200%207-5l0%200%200%200c4-6%203-18-3-26l0%200%200%200c-2-3-13-14-23-24-10-10-20-20-25-25-4-6-2-11-1-13%201-3%202-7%209-8%202-1%202-1%202-1%201%200%201%200%202%200%2073-1%20150%200%20217%200l0%200%200%200c6%200%209-1%2011-5%203-3%205-8%205-16%200-7-2-14-5-17-2-4-5-6-11-6-51%200-102%200-153%201l0-22c67-1%20133-1%20200-1%205%200%208-2%2011-6%203-4%205-11%205-18l0%200c0-8-2-15-4-19-3-4-5-6-12-6-69%200-136%200-200%200l0-22c57%200%20114%200%20171%200%206%200%209-3%2012-8%204-5%205-13%203-22l0%200%200%200c-1-5-3-9-5-11-2-2-4-3-10-3l-171%200c0-8%200-15%200-22%2043%200%2086%200%20130%200l0%200%200%200c5%200%207-1%209-4%202-2%203-7%203-15l0%200%200%200c0-7-2-11-3-13-2-2-4-3-9-4-91%200-183%200-274%200l0%200%200%200c-22%201-39%206-53%2018-13%2011-24%2028-29%2051l0%200%200%200c-4%2017-5%2030-5%2047l0%200c0%2024%200%2050%206%2071%207%2021%2018%2037%2033%2048l0%200c23%2015%20124%2086%20152%20104l0%200c3%201%205%202%207%202%200%200%200%200%201%200z'%20horiz-adv-x='1000'%20/%3e%3cglyph%20glyph-name='send'%20unicode='&%23xe841;'%20d='M99%20608l401-227%20401%20227-802%200z%20m1-84l0-448%20802%200%200%20448-402-224-400%20224z'%20horiz-adv-x='1000'%20/%3e%3cglyph%20glyph-name='service'%20unicode='&%23xe842;'%20d='M413%20631c0-19%200-37%200-56-16-4-30-10-44-18l-40%2039-74-74%2040-40c-8-13-14-28-18-43l-56%200%200-106%2056%200c6-20%2017-39%2028-55l0%2091-49-1%200%2036%2049%200%203%2014c4%2020%2012%2040%2023%2057l8%2012-34%2035%2025%2025%2034-34%2012%208c18%2011%2038%2019%2058%2024l14%203%200%2048%2036%200%200-48%2014%200%2080%200c-9%2010-46%2024-59%2028l0%2055c-39%200-70%200-106%200z%20m100-101l0-55c-16-5-31-11-44-19l-40%2040-74-75%2039-40c-7-13-13-28-17-43l-57%200%200-106%2057%201c5-16%2011-30%2018-44l-40-40%2075-74%2041%2040c13-8%2028-14%2044-18l0-57c36%200%2074%200%20105%200l0%2058c16%204%2031%2010%2044%2018l41-40%2074%2075-41%2040c8%2014%2014%2028%2018%2044l56%200%200%20105-56%200c-5%2016-11%2030-19%2043l39%2039-75%2074-39-39c-14%208-28%2014-44%2018l1%2055-106%200z%20m35-35l36%200-1-48%2015-3c20-4%2040-12%2058-23l11-8%2034%2034%2025-25-33-34%208-12c12-18%2020-37%2024-57l3-14%2049%200%200-35-49-1-3-14c-4-20-12-40-23-57l-8-12%2036-35-26-26-35%2036-12-8c-18-12-38-20-58-24l-14-3%200-51c-9%200-20%200-35%200l0%2050-15%203c-20%204-40%2012-58%2024l-11%208-36-36-26%2025%2036%2035-8%2012c-12%2018-20%2038-24%2058l-3%2014-50-1%200%2036%2050%200%203%2014c4%2021%2012%2040%2023%2058l8%2012-35%2034%2025%2025%2035-34%2012%208c18%2012%2037%2019%2058%2024l14%203%200%2048z%20m18-128c-43%200-79-36-79-79%200-44%2036-79%2079-79%2043%200%2079%2035%2079%2079%200%2043-36%2079-79%2079z%20m0-35c25%200%2044-20%2044-44%200-25-19-44-44-44-24%200-44%2019-44%2044%200%2024%2020%2044%2044%2044z'%20horiz-adv-x='1000'%20/%3e%3cglyph%20glyph-name='receive-task'%20unicode='&%23xe843;'%20d='M215%20745c-107%200-195-87-195-194l0-402c0-107%2088-194%20195-194l570%200c108%200%20195%2087%20195%20194l0%20402c0%20107-87%20194-195%20194l-570%200z%20m0-60l570%200c75%200%20135-59%20135-134l0-402c0-75-60-134-135-134l-570%200c-75%200-135%2059-135%20134l0%20402c0%2075%2060%20134%20135%20134z%20m-38-83l0-347%20526%200%200%20347-526%200z%20m54-23l418%200-209-137-209%20137z%20m-31-6l240-158%20241%20158%200-295-481%200%200%20295z'%20horiz-adv-x='1000'%20/%3e%3cglyph%20glyph-name='user'%20unicode='&%23xe844;'%20d='M496%20668c-89%200-152-69-152-146l0%200%200%200c0-24%206-48%2016-71%207-16%2016-31%2027-43-65-22-140-58-178-130l-2-4%200-231%20578%200%200%20231-2%204c-37%2071-111%20107-175%20129%2031%2032%2040%2073%2040%20115l0%200%200%200c0%2077-63%20146-152%20146z%20m-61-83c5%200%209%200%2014-1%2039-2%2053-9%2063-16%2010-6%2017-13%2044-14l0%200%200%200c21%201%2032%205%2039%209%203%202%205%204%208%205%207-14%2010-30%2010-46%200-47-8-80-51-106l4-32c9-3%2019-6%2028-9%201-5%203-13%204-20%201-8%201-16%201-23-1-6-3-9-3-10-22-21-61-34-100-34-39%200-78%2013-100%2034%200%201-2%204-3%2010%200%207%200%2015%201%2023%201%207%203%2015%204%2020%209%203%2019%206%2027%209l3%2034c-2%202-4%204-7%206-9%207-21%2023-29%2041-8%2019-13%2040-13%2057%200%2020%205%2039%2015%2056%202%201%204%201%206%202%207%203%2018%205%2035%205z%20m-75-225c0%200%200%200%200-1-2-9-2-20-1-30%201-11%204-22%2013-31%2031-31%2078-45%20124-45%2046%200%2093%2014%20124%2045%2010%209%2012%2020%2013%2031%202%2010%201%2021-1%2030%200%201%200%201%200%201%2048-21%2093-50%20118-95l0-187-83%200%200%20132-35%200%200-132-272%200%200%20132-35%200%200-132-83%200%200%20187c25%2045%2070%2074%20118%2095z'%20horiz-adv-x='1000'%20/%3e%3cglyph%20glyph-name='start-event-none'%20unicode='&%23xe845;'%20d='M496%20802c-176%200-345-113-412-276-70-161-34-362%2089-487%20119-128%20314-175%20477-115%20169%2058%20294%20224%20301%20403%2012%20176-92%20351-250%20428-62%2031-132%2047-201%2047-1%200-3%200-4%200z%20m12-49c173-1%20335-126%20380-293%2047-159-17-344-155-439-143-105-354-97-489%2018-136%20109-185%20309-115%20468%2060%20147%20212%20248%20371%20246%203%200%206%200%208%200z'%20horiz-adv-x='1000'%20/%3e%3cglyph%20glyph-name='intermediate-event-throw-escalation'%20unicode='&%23xe846;'%20d='M499%20802c-220%204-425-177-448-396-24-185%2078-380%20247-461%20160-80%20368-56%20501%2066%20134%20118%20190%20318%20128%20486-57%20167-217%20293-393%20303-12%201-23%202-35%202z%20m-5-49c202%207%20391-161%20407-362%2019-178-92-361-262-420-166-61-368-2-468%20145-103%20144-99%20356%2018%20490%2074%2090%20188%20146%20305%20147z%20m8-44c-186%206-358-158-361-344-9-169%20116-334%20283-367%20155-33%20328%2046%20397%20190%2071%20140%2039%20327-83%20430-64%2057-150%2091-236%2091z%20m-2-48c164%204%20314-144%20311-308%203-152-119-297-272-312-143-19-295%2073-336%20213-43%20134%2014%20295%20138%20364%2048%2028%20103%2043%20159%2043z%20m0-111c-47-131-77-268-124-400%2043%2043%2081%2091%20124%20135%2042-45%2083-90%20125-135-43%20133-83%20267-125%20400z'%20horiz-adv-x='1000'%20/%3e%3cglyph%20glyph-name='intermediate-event-catch-multiple'%20unicode='&%23xe847;'%20d='M499%20802c-220%204-425-177-448-396-24-185%2078-380%20247-461%20160-80%20368-56%20501%2066%20134%20118%20190%20318%20128%20486-57%20167-217%20293-393%20303-12%201-23%202-35%202z%20m-5-49c202%207%20391-161%20407-362%2019-178-92-361-262-420-166-61-368-2-468%20145-103%20144-99%20356%2018%20490%2074%2090%20188%20146%20305%20147z%20m8-44c-186%206-358-158-361-344-9-169%20116-334%20283-367%20155-33%20328%2046%20397%20190%2071%20140%2039%20327-83%20430-64%2057-150%2091-236%2091z%20m-2-48c164%204%20314-144%20311-308%203-152-119-297-272-312-143-19-295%2073-336%20213-43%20134%2014%20295%20138%20364%2048%2028%20103%2043%20159%2043z%20m0-87c-72-52-143-104-215-156%2027-84%2055-169%2082-253%2089%200%20177%200%20266%200%2028%2084%2055%20169%2082%20253-71%2052-143%20104-215%20156z%20m0-30c62-45%20124-90%20187-135-24-74-48-147-72-220-77%200-153%200-230%200-24%2073-48%20146-72%20220%2063%2045%20125%2090%20187%20135z'%20horiz-adv-x='1000'%20/%3e%3cglyph%20glyph-name='intermediate-event-catch-non-interrupting-escalation'%20unicode='&%23xe848;'%20d='M500%20550c-47-131-77-268-124-400%2043%2043%2081%2091%20124%20135%2042-45%2083-90%20125-135-43%20133-83%20267-125%20400z%20m1-83c23-73%2045-146%2068-219-22%2024-45%2049-68%2074-19-17-69-82-66-68%2024%2070%2041%20143%2066%20213z%20m-1%20335c-41-1-83-5-121-18-25-13-8-53%2018-44%2064%2017%20131%2017%20196%203%2026-3%2034%2038%209%2047-33%208-68%2012-102%2012z%20m255-83c-26%203-36-36-13-47%2052-38%2093-90%20121-147%2015-22%2052-3%2043%2022-32%2067-82%20127-143%20170-2%201-5%202-8%202z%20m-519-10c-22-2-35-23-51-36-42-40-76-89-98-142-8-26%2030-42%2044-19%2027%2061%2069%20115%20122%20157%2013%2014%202%2040-17%2040z%20m264%200c-20-2-48%204-57-18-8-21%2015-38%2034-32%2051%204%20103-5%20149-25%2026-8%2042%2031%2019%2044-45%2021-95%2031-145%2031z%20m-155-39c-23-4-43-21-62-34-34-27-66-58-86-96-10-26%2030-44%2043-21%2030%2047%2074%2083%20121%20110%2016%2014%205%2041-16%2041z%20m393-59c-25%202-35-33-14-46%2037-38%2062-87%2077-137%2014-24%2053-6%2044%2020-17%2060-49%20115-94%20158-4%203-8%204-13%205z%20m-564-171c-23%202-28-24-30-41-7-55-2-112%2016-163%2012-24%2051-11%2046%2015-17%2053-20%20110-10%20164%201%2013-10%2024-22%2025z%20m754-46c-21%201-29-22-25-39%201-68-16-135-47-195-9-25%2029-43%2043-21%2039%2072%2057%20155%2052%20237-3%2010-13%2018-23%2018z%20m-853-16c-22%202-30-22-26-39%201-69%2018-137%2051-197%2015-22%2052-2%2042%2023-30%2059-46%20126-45%20193-2%2011-11%2019-22%2020z%20m756-57c-22%202-27-22-28-39-10-48-34-91-63-130-12-25%2026-47%2042-24%2038%2049%2065%20108%2073%20170-1%2012-11%2023-24%2023z%20m-590-160c-22-1-30-32-13-45%2040-46%2090-82%20147-102%2026-6%2040%2033%2017%2045-52%2020-98%2053-134%2096-4%204-10%206-17%206z%20m426-77c-23-5-43-21-66-27-34-13-71-15-106-19-25-9-16-49%2010-47%2062%201%20124%2018%20177%2050%2017%2014%207%2044-15%2043z%20m-440-39c-23-1-31-35-11-46%2056-45%20123-78%20194-91%2026-2%2035%2039%209%2047-65%2014-127%2044-179%2087-4%202-8%203-13%203z%20m543-3c-22-2-36-24-55-32-43-29-92-45-141-57-24-12-10-52%2017-46%2071%2015%20140%2047%20196%2095%2014%2015%202%2040-17%2040z'%20horiz-adv-x='1000'%20/%3e%3cglyph%20glyph-name='intermediate-event-throw-link'%20unicode='&%23xe849;'%20d='M499%20802c-220%204-425-177-448-396-24-185%2078-380%20247-461%20160-80%20368-56%20501%2066%20134%20118%20190%20318%20128%20486-57%20167-217%20293-393%20303-12%201-23%202-35%202z%20m-5-49c202%207%20391-161%20407-362%2019-178-92-361-262-420-166-61-368-2-468%20145-103%20144-99%20356%2018%20490%2074%2090%20188%20146%20305%20147z%20m8-44c-186%206-358-158-361-344-9-169%20116-334%20283-367%20155-33%20328%2046%20397%20190%2071%20140%2039%20327-83%20430-64%2057-150%2091-236%2091z%20m-2-48c164%204%20314-144%20311-308%203-152-119-297-272-312-143-19-295%2073-336%20213-43%20134%2014%20295%20138%20364%2048%2028%20103%2043%20159%2043z%20m50-116c0-33%200-67%200-100-75%200-150%200-226%200%200-63%200-127%200-190%2076%200%20151%200%20226%200%200-33%200-67%200-100%2055%2065%20110%20130%20165%20195-55%2065-110%20130-165%20195z'%20horiz-adv-x='1000'%20/%3e%3cglyph%20glyph-name='start-event-non-interrupting-condition'%20unicode='&%23xe84a;'%20d='M349%20540l0-12%200-368%2050%200%20202%200%2050%200%200%20380-302%200z%20m24-24l254%200%200-332-26%200-202%200-26%200%200%20332z%20m26-37l0-25%20202%200%200%2025-202%200z%20m0-74l0-24%20202%200%200%2024-202%200z%20m0-85l0-24%20202%200%200%2024-202%200z%20m0-77l0-24%20202%200%200%2024-202%200z%20m105%20557l-7%200%200%200%200%200-6%200%200%200%200%200-7%200%200%200%200%200-6-1%200%200-1%200-6%200%200%200%200%200-6%200-1%200%200%200-6-1%200%200%200%200-6-1-1%200%200%200-6%200%200%200%200%200-6-1-1%200%200%200-6-1%200%200%200%200-6-1-1%200%200%200-6-1%200%200%200%200-6-1-1%200%200%200-6-1%200-1%200%200-6-1%200%200-1%200-6-1%200%200%200%200-6-2%200%200%200%200-4-1-4-1-4-2-3-3-3-4-2-4-2-4%200-5%200-4%201-5%202-4%203-4%203-3%204-2%205-2%204-1%205%200%203%201%203%201%206%201%206%201%206%202%205%201%206%201%206%201%206%201%206%200%206%201%205%201%206%200%206%201%206%200%206%201%206%200%206%200%206%200%206%200%206%200%205%200%206%200%206-1%206%200%206-1%206%200%206-1%205%200%206-1%206-1%206-1%206-1%205-1%202%200%204-1%205%200%204%202%204%202%204%202%203%204%203%203%201%205%201%204%200%205-1%204-1%204-3%204-3%204-3%202-5%202-3%201-2%201%200%200%200%200-6%201%200%200-1%200-6%201%200%200%200%200-6%201%200%200-1%200-6%201%200%200%200%200-6%201%200%200%200%200-7%201%200%200%200%200-6%200%200%201-1%200-6%200%200%200%200%200-6%201%200%200-1%200-6%200%200%200%200%200-6%200-1%200%200%200-6%201%200%200%200%200-6%200-1%200%200%200-6%200%200%200z%20m246-79l-5-1-4-1-4-3-3-3-3-4-1-4-2-4%200-5%201-4%201-5%202-4%203-3%203-3%202-1%200%200%202-2%200%200%203-1%200%200%202-2%200%200%202-2%202-2%200%200%203-2%200%200%202-1%202-2%200%200%202-2%203-2%200%200%202-2%202-2%200%200%202-2%202-2%201%200%202-2%202-2%202-2%200%200%202-2%200%200%202-2%200%200%202-2%202-2%200%200%202-3%200%200%202-2%202-2%200%200%202-2%202-2%200%200%202-3%200%200%202-2%202-2%202-2%200%200%202-3%202-2%202-2%200-1%201-2%200%200%202-2%200%200%202-3%200%200%201%200%202-4%203-3%202-4%203-3%202-3%203-4%202-3%202-4%200%200%203-3%202-4%202-4%203-3%202-4%202-3%202-4%202-4%202-3%202-4%202-4%201-2%203-4%203-4%203-2%204-2%205-2%204%200%205%201%204%201%204%202%204%203%203%203%202%204%202%204%200%205%200%205-1%204-1%203-2%203%200%200%200%200-2%204%200%200%200%201-2%204%200%200%200%200-2%204%200%200%200%200-2%204-1%200%200%200-2%204%200%200%200%200-2%204%200%200%200%200-3%204%200%200%200%200-2%204%200%200%200%200-3%204%200%200%200%200-2%204%200%200%200%200-3%204%200%200%200%200-2%204%200%200-1%200-2%204%200%200%200%200-3%204%200%200%200%200-3%204%200%200%200%200-2%203%200%201-1%200-2%203%200%200%200%200-3%204%200%200%200%200-3%203-2%203%200%200%200%200-2%203%200%200%200%200-2%202%200%200%200%200-2%203%200%200%200%200-2%203%200%200%200%200-2%202%200%200%200%200-2%203%200%200%200%200-3%203%200%200%200%200-2%202%200%200%200%200-2%203%200%200%200%200-2%202%200%200%200%200-3%203%200%200%200%200-2%202%200%200%200%200-2%203%200%200%200%200-2%202-1%200%200%200-2%203%200%200%200%200-2%202%200%200%200%200-3%203%200%200%200%200-2%202%200%200%200%200-2%202%200%200-1%200-2%203%200%200%200%200-2%202%200%200%200%200-3%202%200%200%200%200-2%202%200%200%200%200-3%203%200%200%200%200-2%202%200%200%200%200-3%202%200%200%200%200-2%202%200%200%200%200-3%202%200%200%200%200-2%202-1%200%200%201-2%201%200%201%200%200-3%202%200%200%200%200-2%202%200%200%200%200-3%202%200%200%200%200-3%202%200%200%200%200-2%202%200%200%200%200-2%201-4%202-4%202-5%200z%20m-521-12l-5-1-4-2-3-2%200%200%200%200-1%200-2-2%200%200%200%200-3-2%200%200%200%200-2-2%200%200%200%200-3-2%200%200%200%200-2-2%200%200%200-1-3-2%200%200%200%200-2-2%200%200%200%200-3-2%200%200%200%200-2-2%200%200%200%200-3-2%200-1%200%200-2-2%200%200%200%200-2-2%200%200-1%200-2-2%200%200%200-1-2-2%200%200%200%200-3-2%200%200%200%200-2-3%200%200%200%200-2-2%200%200%200%200-2-2-1%200%200-1-2-2%200%200%200%200-2-2%200%200%200-1-2-2%200%200%200%200-2-2-1%200%200-1-2-2%200%200%200%200-2-3%200%200%200%200-2-2%200%200%200%200-2-3%200%200%200%200-2-2%200%200%200-1-2-2-1%200%200%200-2-3%200%200%200%200-2-2%200%200%200-1-2-2%200%200%200%200-2-3%200%200%200%200-2-3%200%200%200%200-2-2%200-1%200%200-2-2%200%200%200%200-2-3%200%200%200%200-2-3%200%200%200%200-1-3%200%200-1%200-1-3%200%200%200%200-2-2-1-2%200%200%200%200-2-3%200%200%200%200-2-2%200-1%200%200-2-2%200%200%200%200-2-3%200%200%200%200-2-3%200%200%200%200-2-3%200%200%200%200-2-3%200%200%200%200-2-3%200%200%200%200-1-3%200%200%200%200-2-2%200-1%200%200-2-2%200%200%200-1-2-2%200%200%200%200-1-3%200%200%200%200-2-3%200%200%200%200-2-3%200%200%200%200-1-3%200%200%200%200-2-3%200%200%200%200-1-3%200%200%200%200-2-3%200%200%200%200-1-3%200%200%200%200-2-3%200%200%200%200-1-3%200%200%200%200-2-3%200%200%200%200%200-1-2-4%200-5%200-4%201-5%202-4%202-4%204-3%203-3%205-1%204-1%205-1%204%201%204%202%204%202%204%203%203%203%201%204%201%200%201%203%201%203%200%200%201%202%200%200%202%203%201%203%200%200%202%202%200%200%201%203%201%202%200%201%202%202%201%203%200%200%202%202%200%200%201%203%202%202%200%200%201%203%202%202%201%203%200%200%202%203%200%200%202%202%200%200%201%202%202%203%202%202%200%200%201%203%202%202%202%203%201%201%200%200%202%203%201%202%200%200%202%203%202%202%200%200%201%203%202%202%200%200%202%203%200%200%202%202%201%203%202%202%200%200%202%202%202%203%202%202%200%200%202%202%201%203%202%202%200%200%202%202%202%202%200%200%202%203%200%200%202%202%200%200%202%202%200%200%202%202%202%202%200%200%202%202%200%200%202%203%200%200%202%202%202%202%200%200%202%202%203%202%200%200%202%202%202%202%200%200%202%202%200%200%202%202%200%200%202%202%200%200%203%201%200%200%202%202%200%200%202%202%200%200%202%202%203%202%200%200%202%202%200%200%200%200%203%203%203%204%202%204%201%204%200%205%200%204-2%205-2%204-3%203-3%203-4%202-4%202-5%201z%20m694-313l-4-1-5-2-3-2-3-4-3-4-2-4-1-4%200-4%201-4%200-4%200-4%200-5%200-4%200%200%200-1%200-3%200-3%200%200%200-3%200%200%200-3%200-3%200%200%200-3%200%200%200-3%200-3%200-3%200-3%200-3-1-3%200-3%200%200%200-3%200%200%200-3-1-3%200-3%200-3-1-2%200-1%200-3%200%200%200-2-1-3%200-3%200%200-1-3%200-3-1-3%200%200%200-3-1-3-1-3%200%200%200-2-1-3%200%200%200-3-1-3%200%200-1-3-1-3%200%200%200-2%200%200-1-3%200%200-1-3%200%200-1-3%200%200-1-3-1-2%200%200%200-3-1-3%200%200-1-3%200%200-1-2%200-1-1-2%200%200-1-3%200%200-1-3-1-2%200%200-1-3-3-5-2-6-2-5-3-5-2-6-3-5-3-5-1-3-2-4-1-4%200-5%201-4%201-5%203-4%203-3%203-3%204-2%205-1%204-1%205%201%204%201%204%202%204%203%203%203%202%203%201%203%201%200%200%200%203%206%200%200%200%200%202%206%201%200%200%200%202%206%200%200%200%200%203%205%200%201%200%200%203%205%200%201%200%200%202%206%200%200%201%200%202%206%200%200%200%200%201%203%200%200%200%200%201%203%200%200%200%200%201%203%200%200%201%200%201%203%200%200%200%200%201%203%200%200%200%200%201%203%200%200%200%200%201%203%200%200%200%201%201%203%200%200%200%200%201%203%200%200%200%200%201%203%200%200%200%200%201%203%200%200%200%200%201%203%200%200%200%200%201%203%200%200%200%201%201%203%200%200%200%200%201%203%200%200%200%200%200%203%200%200%200%200%201%203%200%200%200%200%201%203%200%201%200%200%201%203%200%200%200%200%200%203%200%200%201%200%200%203%200%200%200%200%201%203%200%201%200%200%201%203%200%200%200%200%200%203%200%200%200%200%201%203%200%200%200%200%200%204%200%200%200%200%201%203%200%200%200%200%200%203%200%200%200%200%201%204%200%200%200%200%200%203%200%200%200%200%201%203%200%200%200%200%200%204%200%200%200%200%201%203%200%200%200%200%200%203%200%200%200%200%200%204%200%200%200%200%201%203%200%200%200%200%200%203%200%200%200%201%200%203%200%200%200%200%200%203%200%200%200%200%200%204%200%200%200%200%201%203%200%200%200%200%200%203%200%200%200%201%200%203%200%200%200%200%200%203%200%200%200%200%200%204%200%200%200%200%200%203%200%200%200%200%200%204%200%200%200%200%200%203%200%200%200%200%200%203%200%201%200%200%200%203%200%204%200%200%200%200%200%204%200%200%200%201%200%204%200%200%200%200-1%205%200%200%200%200%200%204%200%205-2%204-2%204-3%204-4%202-4%203-4%201-4%201z%20m-853-18l-4-1-5-2-3-3-4-3-2-4-2-4-1-4%200-4%200-3%200%200%200%200%200-7%200%200%200%200%200-6%200%200%200%200%200-7%200%200%200%200%201-6%200%200%200-1%200-6%200%200%200%200%201-6%200%200%200-1%201-6%200%200%200%200%201-6%200%200%200-1%200-6%200%200%200%200%201-6%200%200%200-1%201-6%201%200%200%200%201-6%200%200%200-1%201-6%200%200%200%200%201-6%200%200%200%200%202-6%200-1%200%200%201-6%200%200%200%200%202-6%200%200%200-1%202-6%200%200%200%200%201-6%200%200%200%200%202-6%200%200%200%200%202-6%200-1%200%200%202-6%200%200%200%200%202-6%200%200%200%200%202-6%201%200%200%200%202-6%200%200%200%200%202-6%200%200%200-1%203-5%200-1%200%200%202-5%200-1%200%200%203-5%200-1%200%200%202-5%200-1%201%200%202-5%200-1%200%200%203-5%200%200%200-1%201-1%202-4%204-4%203-2%204-2%205-1%204-1%205%201%204%201%204%202%204%203%203%203%202%204%202%205%200%204%200%205-1%204-1%204-1%201-3%205-2%206-3%205-2%206-2%205-2%205-3%206-2%206-2%205-1%206-2%205-2%206-2%206-1%205-2%206-1%206-2%205-1%206-1%206-1%206-1%206-1%205-1%206-1%206-1%206%200%206-1%205%200%206-1%206%200%206%200%206-1%206%200%203%200%204-1%205-3%204-2%203-4%203-4%203-4%201-4%201z%20m694-334l-4-1-4-2-4-3%200%200-5-3-4-4-5-4-5-3-5-3-4-4-5-3-5-3-5-3-5-4-5-3-6-3-5-2-5-3-5-3-5-3-6-2-5-3-5-2-6-2-5-3-6-2-5-2-6-2-5-2-6-2-5-2-6-1-5-2-6-2-6-1-5-1-5-1-4-2-4-2-4-3-2-3-3-4-1-5-1-4%201-5%201-4%202-4%202-4%203-3%204-3%204-1%205-1%204-1%204%201%205%201%200%200%200%200%206%202%200%200%200%200%206%201%201%200%200%200%206%202%200%200%200%200%206%202%200%200%200%200%206%202%200%200%201%200%205%202%201%200%200%200%206%202%200%200%200%200%206%202%200%200%200%200%206%202%200%200%200%200%206%203%200%200%200%200%206%202%200%200%201%200%205%203%200%200%201%200%205%202%200%200%201%200%205%203%200%200%201%200%205%203%200%200%201%200%205%203%200%200%200%200%206%203%200%200%200%200%206%203%200%200%200%200%206%203%200%200%200%200%205%203%200%200%201%200%205%203%200%200%200%200%206%203%200%201%200%200%205%203%200%200%201%200%205%203%200%200%200%201%205%203%200%200%201%200%205%204%200%200%200%200%205%203%200%200%200%200%206%204%200%200%200%200%205%204%200%200%200%200%205%204%200%200%200%200%205%204%200%200%201%200%204%204%201%200%200%200%200%201%203%203%203%204%202%204%201%204%200%205%200%204-2%204-2%204-3%204-4%203-4%202-4%201-4%201z%20m-541-2l-4-1-4-3-4-2-3-4-2-4-1-4-1-5%200-4%201-5%202-4%203-4%203-2%201-1%200-1%200%200%205-4%200%200%200%200%205-4%200%200%200%200%203-2%200%200%200%200%202-2%201%200%200%200%202-2%200%200%200%200%203-2%200%200%200%200%202-2%201%200%200%200%202-2%200%200%200%200%203-2%200%200%200%200%203-1%200-1%200%200%202-1%200%200%200%200%203-2%200%200%200%200%203-2%200%200%200%200%203-2%200%200%200%200%202-2%200%200%201%200%202-1%200%200%200%200%203-2%200%200%200%200%203-2%200%200%200%200%203-1%200%200%200-1%203-1%200%200%200%200%203-2%200%200%200%200%202-1%201%200%200%200%202-2%201%200%200%200%202-2%200%200%201%200%202-1%200%200%201%200%202-2%200%200%200%200%203-1%200%200%200%200%203-2%200%200%201%200%202-1%200%200%201%200%202-1%200-1%201%200%202-1%201%200%200%200%203-1%200%200%200%200%203-2%200%200%200%200%203-1%200%200%200%200%203-1%200%200%200%200%203-2%200%200%200%200%203-1%200%200%200%200%203-1%200%200%200%200%203-1%201%200%200%200%203-1%200%200%200%200%203-2%200%200%200%200%203-1%200%200%200%200%203-1%200%200%201%200%203-1%200%200%200%200%203-1%200%200%200%200%203-1%200%200%200%200%203-1%200%200%201%200%203-1%200%200%200%200%203-1%200%200%200%200%203-1%202%200%200%200%200%200%203-1%200%200%200-1%203-1%201%200%200%200%203-1%200%200%200%200%203-1%200%200%200%200%203-1%200%200%200%200%204%200%200-1%200%200%203%200%200%200%200%200%203-1%200%200%200%200%203-1%201%200%200%200%203-1%200%200%200%200%203-1%200%200%200%200%200%200%205%200%204%200%205%201%204%202%204%202%203%204%202%203%202%205%201%204%200%205%200%204-2%204-2%204-3%204-4%202-4%203-3%201%200%200-1%200-3%200-2%201%200%200-3%201%200%200-3%201%200%200-3%200%200%200-3%201-3%201-3%201%200%200-3%201-2%201-3%201-3%201-1%200-1%200-3%201-3%201-3%201%200%200-2%201-3%201-3%201-3%200-3%201%200%200-3%201-3%201-2%201%200%200-3%202-3%201%200%200-3%201%200%200-2%201-3%201%200%200-3%201-3%201-2%202-3%201%200%200-3%201-2%201-3%202-3%201-2%201%200%200-3%202-2%201%200%200-3%201%200%200-3%202%200%200-2%201-2%202-1%200-2%201%200%200-3%202-2%201%200%200-3%202-2%201%200%200-3%202%200%200-2%202%200%200-2%201-3%202%200%200-2%202-2%201-1%200-2%202%200%200-2%202-3%201%200%200-2%202%200%200-2%202%200%200-3%202-4%203-5%204-1%201-4%203-4%201-4%202-5%200z'%20horiz-adv-x='1000'%20/%3e%3cglyph%20glyph-name='data-object'%20unicode='&%23xe84b;'%20d='M626%20746c-143%200-286%200-429%200%200-264%200-528%200-792%20202%200%20404%200%20606%200%200%20203%200%20407%200%20610-59%2061-118%20121-177%20182z%20m-52-45c0-62%200-124%200-186%2061%200%20123%200%20184%200%200-172%200-344%200-516-172%200-344%200-516%200%200%20234%200%20468%200%20702%20110%200%20221%200%20332%200z%20m45-12c42-43%2083-86%20125-129-42%200-83%200-125%200%200%2043%200%2086%200%20129z'%20horiz-adv-x='1000'%20/%3e%3cglyph%20glyph-name='script-task'%20unicode='&%23xe84c;'%20d='M215%20745c-107%200-195-87-195-194l0-402c0-107%2088-194%20195-194l570%200c108%200%20195%2087%20195%20194l0%20402c0%20107-87%20194-195%20194l-570%200z%20m0-60l570%200c75%200%20135-59%20135-134l0-402c0-75-60-134-135-134l-570%200c-75%200-135%2059-135%20134l0%20402c0%2075%2060%20134%20135%20134z%20m90-92l-3-2-1%200c-32-19-55-37-70-55-14-17-22-34-22-51%200-34%2024-59%2046-82%2022-22%2042-43%2044-61%201-9-1-18-11-30-10-12-27-27-56-43l-41-25%20257%200%203%202%200%200c29%2018%2050%2034%2062%2050%2013%2016%2019%2033%2017%2049-3%2031-29%2054-51%2077-21%2022-39%2043-39%2062%200%2010%204%2021%2016%2035%2012%2015%2033%2031%2064%2050l0%200%2041%2024-256%200z%20m7-26l158%200c-14-11-25-21-33-31-15-17-23-34-23-51%200-34%2025-59%2047-82%2022-22%2041-43%2043-61%201-9-1-18-11-30-9-12-26-26-53-42l-158%200c11%209%2020%2017%2026%2026%2013%2016%2018%2033%2017%2049-4%2031-29%2054-51%2077-22%2022-39%2043-39%2062%200%2010%204%2021%2016%2035%2012%2014%2031%2030%2061%2048z%20m-37-45l0-12%20123%200%200%2012-123%200z%20m-5-64l0-12%20128%200%200%2012-128%200z%20m58-65l0-12%20124%200%200%2012-124%200z%20m18-65l0-12%20128%200%200%2012-128%200z'%20horiz-adv-x='1000'%20/%3e%3cglyph%20glyph-name='send-task'%20unicode='&%23xe84d;'%20d='M215%20745c-107%200-195-87-195-194l0-402c0-107%2088-194%20195-194l570%200c108%200%20195%2087%20195%20194l0%20402c0%20107-87%20194-195%20194l-570%200z%20m0-60l570%200c75%200%20135-59%20135-134l0-402c0-75-60-134-135-134l-570%200c-75%200-135%2059-135%20134l0%20402c0%2075%2060%20134%20135%20134z%20m-42-95l250-141%20250%20141-500%200z%20m1-52l0-279%20500%200%200%20279-251-140-249%20140z'%20horiz-adv-x='1000'%20/%3e%3cglyph%20glyph-name='data-store'%20unicode='&%23xe84e;'%20d='M500%20681c-79%200-158-7-219-20-31-7-58-16-79-27-20-10-36-24-41-43%200-1-1-3-1-4l0-2%200-2c0-158%200-307%200-469l0-2c5-21%2022-35%2042-46%2021-11%2048-20%2079-26%2061-14%20140-20%20219-20%2079%200%20158%206%20219%2020%2031%206%2058%2015%2079%2026%2021%2011%2037%2025%2042%2046l0%202c0%20154%200%20323%200%20470%200%201%200%201%200%202l0%201%200%200c0%201%200%203-1%204-5%2019-21%2033-41%2043-21%2011-48%2020-79%2027-61%2013-140%2020-219%2020z%20m0-35c77%200%20154-7%20212-20%2029-6%2053-14%2069-22%2013-7%2020-14%2023-19-3-5-10-12-23-19-16-9-40-17-69-23-58-12-135-19-212-19-77%200-154%207-212%2019-29%206-53%2014-69%2023-13%207-20%2014-23%2019%203%205%2010%2012%2023%2019%2016%208%2040%2016%2069%2022%2058%2013%20135%2020%20212%2020z%20m-305-107c2-1%205-3%207-4%2021-11%2048-19%2079-26%2061-13%20140-20%20219-20%2079%200%20158%207%20219%2020%2031%207%2058%2015%2079%2026%202%201%205%203%207%204l0-41c-2-5-8-13-24-21-16-9-40-17-69-23-58-12-135-19-212-19-77%200-154%207-212%2019-29%206-53%2014-69%2023-15%208-22%2016-24%2021z%20m0-89c2-1%205-3%207-4%2021-11%2048-19%2079-26%2061-13%20140-20%20219-20%2079%200%20158%207%20219%2020%2031%207%2058%2015%2079%2026%202%201%205%203%207%204l0-41c-2-5-8-13-24-21-16-9-40-17-69-23-58-12-135-19-212-19-77%200-154%207-212%2019-29%206-53%2014-69%2023-15%208-22%2016-24%2021z%20m0-89c2-1%205-3%207-4%2021-11%2048-19%2079-26%2061-14%20140-20%20219-20%2079%200%20158%206%20219%2020%2031%207%2058%2015%2079%2026%202%201%205%203%207%204l0-243c-2-5-8-13-24-21-16-9-40-17-69-23-58-13-135-19-212-19-77%200-154%206-212%2019-29%206-53%2014-69%2023-15%208-22%2016-24%2021z'%20horiz-adv-x='1000'%20/%3e%3cglyph%20glyph-name='start-event-non-interrupting-escalation'%20unicode='&%23xe84f;'%20d='M500%20550c-47-131-77-268-124-400%2043%2043%2081%2091%20124%20135%2042-45%2083-90%20125-135-43%20133-83%20267-125%20400z%20m1-83c23-73%2045-146%2068-219-22%2024-45%2049-68%2074-19-17-69-82-66-68%2024%2070%2041%20143%2066%20213z%20m3%20333c-43-1-87-4-127-17-24-13-8-53%2018-45%2064%2016%20132%2017%20196%204%2027-2%2035%2039%209%2047-31%208-64%2011-96%2011z%20m250-79c-26%203-35-36-12-47%2053-38%2091-93%20122-149%2018-21%2053%204%2040%2027-34%2065-80%20124-139%20166-3%202-7%203-11%203z%20m-521-11c-21-3-34-22-49-35-36-35-64-77-88-121-9-15-20-37-1-49%2017-13%2036%203%2041%2021%2022%2041%2049%2081%2082%20115%2013%2015%2037%2023%2038%2045%200%2012-10%2023-23%2024z%20m695-313c-22%201-29-24-25-41%204-68-13-136-46-195-9-25%2028-44%2043-22%2041%2072%2059%20158%2050%20241-3%2010-13%2016-22%2017z%20m-853-19c-22%201-30-22-26-40%203-68%2021-136%2052-196%2015-22%2052-3%2043%2022-30%2060-46%20127-47%20194-2%2011-12%2019-22%2020z%20m694-334c-22-3-36-24-55-33-42-28-91-46-140-59-25-12-9-52%2017-45%2072%2016%20139%2049%20195%2097%2014%2015%202%2040-17%2040z%20m-542-1c-24%200-31-35-11-46%2047-40%20104-67%20163-83%2017-5%2042-16%2053%205%2010%2018-6%2037-24%2038-56%2014-111%2036-156%2073-7%206-14%2014-25%2013z'%20horiz-adv-x='1000'%20/%3e%3cglyph%20glyph-name='intermediate-event-throw-message'%20unicode='&%23xe850;'%20d='M499%20802c-220%204-425-177-448-396-24-185%2078-380%20247-461%20160-80%20368-56%20501%2066%20134%20118%20190%20318%20128%20486-57%20167-217%20293-393%20303-12%201-23%202-35%202z%20m-5-49c202%207%20391-161%20407-362%2019-178-92-361-262-420-166-61-368-2-468%20145-103%20144-99%20356%2018%20490%2074%2090%20188%20146%20305%20147z%20m8-44c-186%206-358-158-361-344-9-169%20116-334%20283-367%20155-33%20328%2046%20397%20190%2071%20140%2039%20327-83%20430-64%2057-150%2091-236%2091z%20m-2-48c164%204%20314-144%20311-308%203-152-119-297-272-312-143-19-295%2073-336%20213-43%20134%2014%20295%20138%20364%2048%2028%20103%2043%20159%2043z%20m-167-155c57-46%20114-92%20171-138%2056%2046%20113%2092%20170%20138-114%200-227%200-341%200z%20m-38-32c0-93%200-187%200-280%20137%200%20273%200%20410%200%200%2091%200%20183%200%20274-67-54-134-109-201-163-70%2056-139%20113-209%20169z'%20horiz-adv-x='1000'%20/%3e%3cglyph%20glyph-name='intermediate-event-catch-non-interrupting-multiple'%20unicode='&%23xe851;'%20d='M715%20418c-71%2052-143%20104-215%20156-72-52-143-104-215-156%2027-84%2055-169%2082-253%2089%200%20177%200%20266%200%2028%2084%2055%20169%2082%20253z%20m-28-9c-24-74-48-147-72-220-77%200-153%200-230%200-24%2073-48%20146-72%20220%2063%2045%20125%2090%20187%20135%2062-45%20124-90%20187-135z%20m-187%20393c-41-1-83-5-121-18-25-13-8-53%2018-44%2064%2017%20131%2017%20196%203%2026-3%2034%2038%209%2047-33%208-68%2012-102%2012z%20m255-83c-26%203-36-36-13-47%2052-38%2093-90%20121-147%2015-22%2052-3%2043%2022-32%2067-82%20127-143%20170-2%201-5%202-8%202z%20m-519-10c-22-2-35-23-51-36-42-40-76-89-98-142-8-26%2030-42%2044-19%2027%2061%2069%20115%20122%20157%2013%2014%202%2040-17%2040z%20m264%200c-20-2-48%204-57-18-8-21%2015-38%2034-32%2051%204%20103-5%20149-25%2026-8%2042%2031%2019%2044-45%2021-95%2031-145%2031z%20m-155-39c-23-4-43-21-62-34-34-27-66-58-86-96-10-26%2030-44%2043-21%2030%2047%2074%2083%20121%20110%2016%2014%205%2041-16%2041z%20m393-59c-25%202-35-33-14-46%2037-38%2062-87%2077-137%2014-24%2053-6%2044%2020-17%2060-49%20115-94%20158-4%203-8%204-13%205z%20m-564-171c-23%202-28-24-30-41-7-55-2-112%2016-163%2012-24%2051-11%2046%2015-17%2053-20%20110-10%20164%201%2013-10%2024-22%2025z%20m754-46c-21%201-29-22-25-39%201-68-16-135-47-195-9-25%2029-43%2043-21%2039%2072%2057%20155%2052%20237-3%2010-13%2018-23%2018z%20m-853-16c-22%202-30-22-26-39%201-69%2018-137%2051-197%2015-22%2052-2%2042%2023-30%2059-46%20126-45%20193-2%2011-11%2019-22%2020z%20m756-57c-22%202-27-22-28-39-10-48-34-91-63-130-12-25%2026-47%2042-24%2038%2049%2065%20108%2073%20170-1%2012-11%2023-24%2023z%20m-590-160c-22-1-30-32-13-45%2040-46%2090-82%20147-102%2026-6%2040%2033%2017%2045-52%2020-98%2053-134%2096-4%204-10%206-17%206z%20m426-77c-23-5-43-21-66-27-34-13-71-15-106-19-25-9-16-49%2010-47%2062%201%20124%2018%20177%2050%2017%2014%207%2044-15%2043z%20m-440-39c-23-1-31-35-11-46%2056-45%20123-78%20194-91%2026-2%2035%2039%209%2047-65%2014-127%2044-179%2087-4%202-8%203-13%203z%20m543-3c-22-2-36-24-55-32-43-29-92-45-141-57-24-12-10-52%2017-46%2071%2015%20140%2047%20196%2095%2014%2015%202%2040-17%2040z'%20horiz-adv-x='1000'%20/%3e%3cglyph%20glyph-name='intermediate-event-catch-non-interrupting-signal'%20unicode='&%23xe852;'%20d='M500%20562c-64-115-128-230-192-345%20128%200%20256%200%20384%200-64%20115-128%20230-192%20345z%20m0-51c50-90%20100-180%20151-270-101%200-201%200-302%200%2051%2090%20101%20180%20151%20270z%20m0%20291c-41-1-83-5-121-18-25-13-8-53%2018-44%2064%2017%20131%2017%20196%203%2026-3%2034%2038%209%2047-33%208-68%2012-102%2012z%20m255-83c-26%203-36-36-13-47%2052-38%2093-90%20121-147%2015-22%2052-3%2043%2022-32%2067-82%20127-143%20170-2%201-5%202-8%202z%20m-519-10c-22-2-35-23-51-36-42-40-76-89-98-142-8-26%2030-42%2044-19%2027%2061%2069%20115%20122%20157%2013%2014%202%2040-17%2040z%20m264%200c-20-2-48%204-57-18-8-21%2015-38%2034-32%2051%204%20103-5%20149-25%2026-8%2042%2031%2019%2044-45%2021-95%2031-145%2031z%20m-155-39c-23-4-43-21-62-34-34-27-66-58-86-96-10-26%2030-44%2043-21%2030%2047%2074%2083%20121%20110%2016%2014%205%2041-16%2041z%20m393-59c-25%202-35-33-14-46%2037-38%2062-87%2077-137%2014-24%2053-6%2044%2020-17%2060-49%20115-94%20158-4%203-8%204-13%205z%20m-564-171c-23%202-28-24-30-41-7-55-2-112%2016-163%2012-24%2051-11%2046%2015-17%2053-20%20110-10%20164%201%2013-10%2024-22%2025z%20m754-46c-21%201-29-22-25-39%201-68-16-135-47-195-9-25%2029-43%2043-21%2039%2072%2057%20155%2052%20237-3%2010-13%2018-23%2018z%20m-853-16c-22%202-30-22-26-39%201-69%2018-137%2051-197%2015-22%2052-2%2042%2023-30%2059-46%20126-45%20193-2%2011-11%2019-22%2020z%20m756-57c-22%202-27-22-28-39-10-48-34-91-63-130-12-25%2026-47%2042-24%2038%2049%2065%20108%2073%20170-1%2012-11%2023-24%2023z%20m-590-160c-22-1-30-32-13-45%2040-46%2090-82%20147-102%2026-6%2040%2033%2017%2045-52%2020-98%2053-134%2096-4%204-10%206-17%206z%20m426-77c-23-5-43-21-66-27-34-13-71-15-106-19-25-9-16-49%2010-47%2062%201%20124%2018%20177%2050%2017%2014%207%2044-15%2043z%20m-440-39c-23-1-31-35-11-46%2056-45%20123-78%20194-91%2026-2%2035%2039%209%2047-65%2014-127%2044-179%2087-4%202-8%203-13%203z%20m543-3c-22-2-36-24-55-32-43-29-92-45-141-57-24-12-10-52%2017-46%2071%2015%20140%2047%20196%2095%2014%2015%202%2040-17%2040z'%20horiz-adv-x='1000'%20/%3e%3cglyph%20glyph-name='intermediate-event-throw-multiple'%20unicode='&%23xe853;'%20d='M499%20802c-220%204-425-177-448-396-24-185%2078-380%20247-461%20160-80%20368-56%20501%2066%20134%20118%20190%20318%20128%20486-57%20167-217%20293-393%20303-12%201-23%202-35%202z%20m-5-49c202%207%20391-161%20407-362%2019-178-92-361-262-420-166-61-368-2-468%20145-103%20144-99%20356%2018%20490%2074%2090%20188%20146%20305%20147z%20m8-44c-186%206-358-158-361-344-9-169%20116-334%20283-367%20155-33%20328%2046%20397%20190%2071%20140%2039%20327-83%20430-64%2057-150%2091-236%2091z%20m-2-48c164%204%20314-144%20311-308%203-152-119-297-272-312-143-19-295%2073-336%20213-43%20134%2014%20295%20138%20364%2048%2028%20103%2043%20159%2043z%20m0-87c-72-52-144-104-215-156%2027-84%2055-169%2082-253%2089%200%20177%200%20266%200%2028%2084%2055%20169%2082%20253-71%2052-143%20104-215%20156z'%20horiz-adv-x='1000'%20/%3e%3cglyph%20glyph-name='start-event-non-interrupting-message'%20unicode='&%23xe854;'%20d='M295%20506c0-104%200-208%200-312%20137%200%20273%200%20410%200%200%20104%200%20208%200%20312-137%200-273%200-410%200z%20m91-49c76%200%20152%200%20228%200-40-24-81-79-121-85-36%2029-71%2057-107%2085z%20m270-28c0-62%200-124%200-186-104%200-208%200-312%200%200%2062%200%20124%200%20186%2052-42%20104-83%20156-125%2052%2042%20104%2083%20156%20125z%20m-152%20371c-43-1-87-4-127-17-24-13-8-53%2018-45%2064%2016%20132%2017%20196%204%2027-2%2035%2039%209%2047-31%208-64%2011-96%2011z%20m250-79c-26%203-35-36-12-47%2053-38%2091-93%20122-149%2018-21%2053%204%2040%2027-34%2065-80%20124-139%20166-3%202-7%203-11%203z%20m-521-11c-21-3-34-22-49-35-36-35-64-77-88-121-9-15-20-37-1-49%2017-13%2036%203%2041%2021%2022%2041%2049%2081%2082%20115%2013%2015%2037%2023%2038%2045%200%2012-10%2023-23%2024z%20m695-313c-22%201-29-24-25-41%204-68-13-136-46-195-9-25%2028-44%2043-22%2041%2072%2059%20158%2050%20241-3%2010-13%2016-22%2017z%20m-853-19c-22%201-30-22-26-40%203-68%2021-136%2052-196%2015-22%2052-3%2043%2022-30%2060-46%20127-47%20194-2%2011-12%2019-22%2020z%20m694-334c-22-3-36-24-55-33-42-28-91-46-140-59-25-12-9-52%2017-45%2072%2016%20139%2049%20195%2097%2014%2015%202%2040-17%2040z%20m-542-1c-24%200-31-35-11-46%2047-40%20104-67%20163-83%2017-5%2042-16%2053%205%2010%2018-6%2037-24%2038-56%2014-111%2036-156%2073-7%206-14%2014-25%2013z'%20horiz-adv-x='1000'%20/%3e%3cglyph%20glyph-name='ad-hoc-marker'%20unicode='&%23xe855;'%20d='M150%20330c29%2069%2067%20141%20133%20180%2049%2029%20110%2011%20155-17%2069-43%20123-106%20191-150%2041-24%2092-4%20122%2029%2036%2042%2078%2082%2099%20135%200-55%200-110%200-165-31-61-70-124-133-154-52-22-112-8-156%2024-66%2044-114%20112-185%20147-35%2018-79%2014-108-13-52-46-82-112-118-171%200%2052%200%20103%200%20155z'%20horiz-adv-x='1000'%20/%3e%3cglyph%20glyph-name='service-task'%20unicode='&%23xe856;'%20d='M215%20745c-107%200-195-87-195-194l0-402c0-107%2088-194%20195-194l570%200c108%200%20195%2087%20195%20194l0%20402c0%20107-87%20194-195%20194l-570%200z%20m0-60l570%200c75%200%20135-59%20135-134l0-402c0-75-60-134-135-134l-570%200c-75%200-135%2059-135%20134l0%20402c0%2075%2060%20134%20135%20134z%20m36-50c0-12%200-24%200-35-9-3-18-7-27-12l-25%2025-46-47%2024-24c-4-9-8-18-11-28l-35%200%200-66%2036%200c3-13%2010-24%2017-35l0%2057-31%200%200%2022%2031%200%202%209c2%2013%207%2025%2014%2036l5%208-21%2021%2015%2016%2022-22%208%205c11%208%2023%2013%2036%2016l8%201%200%2031%2023%200%200-30%209%200%2050%200c-6%206-29%2015-37%2017l0%2035c-25%200-44%200-67%200z%20m63-64l0-34c-10-3-19-7-28-12l-24%2025-47-47%2025-25c-5-8-9-17-11-27l-36%200%200-66%2036%200c3-10%207-19%2012-27l-26-25%2047-47%2026%2026c8-5%2017-9%2027-12l0-36c23%200%2047%200%2066%200l0%2037c10%202%2019%206%2028%2011l25-25%2047%2047-26%2025c5%209%209%2018%2012%2027l34%201%200%2066-35-1c-3%2010-7%2019-11%2028l24%2024-47%2046-24-24c-9%205-18%208-28%2011l0%2034-66%200%200%200z%20m22-21l22%200%200-31%209-1c13-3%2025-8%2036-15l8-5%2021%2021%2016-15-21-22%205-7c7-11%2012-23%2015-36l2-9%2030%201%200-23-30%200-2-9c-2-12-7-25-15-36l-5-7%2023-22-16-16-22%2022-8-5c-11-7-23-12-36-15l-9-2%200-32c-6%200-12%200-22%200l0%2032-9%202c-13%202-25%207-36%2015l-8%204-22-22-16%2016%2023%2022-6%208c-7%2011-12%2023-15%2035l-2%209-31%200%200%2022%2031%200%202%209c3%2013%208%2025%2015%2036l5%208-22%2021%2016%2016%2022-22%207%205c11%208%2023%2013%2036%2015l9%202%200%2031z%20m11-81c-27%200-49-22-49-49%200-27%2022-50%2049-50%2028%200%2050%2023%2050%2050%200%2027-22%2049-50%2049z%20m0-22c16%200%2028-12%2028-27%200-16-12-28-28-28-15%200-27%2012-27%2028%200%2015%2012%2027%2027%2027z'%20horiz-adv-x='1000'%20/%3e%3cglyph%20glyph-name='task-none'%20unicode='&%23xe857;'%20d='M215%20745c-107%200-195-87-195-194l0-402c0-107%2088-194%20195-194l570%200c108%200%20195%2087%20195%20194l0%20402c0%20107-87%20194-195%20194l-570%200z%20m0-60l570%200c75%200%20135-59%20135-134l0-402c0-75-60-134-135-134l-570%200c-75%200-135%2059-135%20134l0%20402c0%2075%2060%20134%20135%20134z'%20horiz-adv-x='1000'%20/%3e%3cglyph%20glyph-name='compensation-marker'%20unicode='&%23xe858;'%20d='M502%20590c-20-3-34-19-51-29-94-63-187-125-280-188-18-14-12-43%208-52%20103-69%20206-138%20309-207%2021-13%2049%208%2045%2031%200%2053%200%20106%200%20159%2094-64%20188-127%20283-190%2021-13%2048%208%2044%2031%200%20139%200%20279%200%20418-1%2024-34%2036-51%2019-92-62-184-124-276-186-1%2057%200%20113-1%20170-3%2014-16%2025-30%2024z%20m-29-86c0-103%200-205%200-308-77%2052-153%20103-229%20154%2076%2051%20152%20102%20229%20154z%20m327%200c0-103%200-205%200-308-76%2052-152%20103-229%20154%2077%2051%20153%20102%20229%20154z'%20horiz-adv-x='1000'%20/%3e%3cglyph%20glyph-name='start-event-non-interrupting-multiple'%20unicode='&%23xe859;'%20d='M715%20418c-71%2052-143%20104-215%20156-72-52-143-104-215-156%2027-84%2055-169%2082-253%2089%200%20177%200%20266%200%2028%2084%2055%20169%2082%20253z%20m-28-9c-24-74-48-147-72-220-77%200-153%200-230%200-24%2073-48%20146-72%20220%2063%2045%20125%2090%20187%20135%2062-45%20124-90%20187-135z%20m-183%20391c-43-1-87-4-127-17-24-13-8-53%2018-45%2064%2016%20132%2017%20196%204%2027-2%2035%2039%209%2047-31%208-64%2011-96%2011z%20m250-79c-26%203-35-36-12-47%2053-38%2091-93%20122-149%2018-21%2053%204%2040%2027-34%2065-80%20124-139%20166-3%202-7%203-11%203z%20m-521-11c-21-3-34-22-49-35-36-35-64-77-88-121-9-15-20-37-1-49%2017-13%2036%203%2041%2021%2022%2041%2049%2081%2082%20115%2013%2015%2037%2023%2038%2045%200%2012-10%2023-23%2024z%20m695-313c-22%201-29-24-25-41%204-68-13-136-46-195-9-25%2028-44%2043-22%2041%2072%2059%20158%2050%20241-3%2010-13%2016-22%2017z%20m-853-19c-22%201-30-22-26-40%203-68%2021-136%2052-196%2015-22%2052-3%2043%2022-30%2060-46%20127-47%20194-2%2011-12%2019-22%2020z%20m694-334c-22-3-36-24-55-33-42-28-91-46-140-59-25-12-9-52%2017-45%2072%2016%20139%2049%20195%2097%2014%2015%202%2040-17%2040z%20m-542-1c-24%200-31-35-11-46%2047-40%20104-67%20163-83%2017-5%2042-16%2053%205%2010%2018-6%2037-24%2038-56%2014-111%2036-156%2073-7%206-14%2014-25%2013z'%20horiz-adv-x='1000'%20/%3e%3cglyph%20glyph-name='intermediate-event-throw-signal'%20unicode='&%23xe85a;'%20d='M499%20802c-220%204-425-177-448-396-24-185%2078-380%20247-461%20160-80%20368-56%20501%2066%20134%20118%20190%20318%20128%20486-57%20167-217%20293-393%20303-12%201-23%202-35%202z%20m-5-49c202%207%20391-161%20407-362%2019-178-92-361-262-420-166-61-368-2-468%20145-103%20144-99%20356%2018%20490%2074%2090%20188%20146%20305%20147z%20m8-44c-186%206-358-158-361-344-9-169%20116-334%20283-367%20155-33%20328%2046%20397%20190%2071%20140%2039%20327-83%20430-64%2057-150%2091-236%2091z%20m-2-48c164%204%20314-144%20311-308%203-152-119-297-272-312-143-19-295%2073-336%20213-43%20134%2014%20295%20138%20364%2048%2028%20103%2043%20159%2043z%20m0-99c-64-115-128-230-192-345%20128%200%20256%200%20384%200-64%20115-128%20230-192%20345z'%20horiz-adv-x='1000'%20/%3e%3cglyph%20glyph-name='intermediate-event-catch-non-interrupting-condition'%20unicode='&%23xe85b;'%20d='M349%20540l0-12%200-368%2050%200%20202%200%2050%200%200%20380-302%200z%20m24-24l254%200%200-332-26%200-202%200-26%200%200%20332z%20m26-37l0-25%20202%200%200%2025-202%200z%20m0-74l0-24%20202%200%200%2024-202%200z%20m0-85l0-24%20202%200%200%2024-202%200z%20m0-77l0-24%20202%200%200%2024-202%200z%20m101%20559l0%200-5%200-1%200%200%200-5%200%200%200%200%200-6-1%200%200%200%200-5%200%200%200%200%200-6%200%200%200%200%200-5-1%200%200-1%200-5%200%200%200%200%200-5%200-1%200%200-1-5%200%200%200%200%200-5-1-1%200%200%200-5%200%200%200%200%200-5-1-1%200%200%200-5-1%200%200%200%200-5-1-1%200%200%200-5-1%200%200%200%200-5-1%200%200-1%200-5-1%200%200%200%200-5-1%200%200%200%200-6-2%200%200%200%200-5-1%200%200%200%200-5-1-4-2-4-2-4-3-2-4-3-4-1-4%200-5%200-4%201-4%202-5%203-3%203-3%204-3%204-1%205-1%204%200%204%201%205%201%205%201%204%201%205%201%205%201%205%201%205%201%205%201%205%200%204%201%205%201%205%200%205%201%205%200%205%201%205%200%205%200%205%201%205%200%205%200%205%200%205%200%205%200%205%200%205-1%205%200%205%200%205-1%205%200%205-1%205%200%205-1%205-1%204%200%205-1%205-1%205-1%205-1%204-1%205%200%204%200%205%201%204%202%203%203%204%203%202%204%202%204%201%204%200%205-1%204-2%205-2%204-3%203-4%203-4%202-3%201-5%201%200%200%200%200-5%201%200%200-1%200-5%201%200%200%200%200-5%201%200%200%200%200-6%201%200%200%200%200-5%201%200%200%200%200-6%201%200%200%200%200-5%200%200%200%200%200-6%201%200%200%200%200-5%200%200%201%200%200-6%200%200%200%200%200-5%200%200%200-1%200-5%201%200%200%200%200-5%200-1%200%200%200-5%200%200%200%200%200-6%201%200%200%200%200-5%200%200%200%200%200-6%200%200%200z%20m255-83l-5%200-4-1-5-2-3-2-4-4-2-3-2-4-1-5-1-4%201-5%201-4%203-4%203-4%202-2%202-1%204-3%204-3%204-3%203-3%204-4%204-3%204-3%203-3%204-4%204-3%203-4%204-3%203-4%204-3%203-4%204-4%203-3%203-4%203-4%204-4%203-3%203-4%203-4%203-4%203-4%203-4%202-4%203-4%203-5%203-4%202-4%203-4%202-4%203-5%202-4%202-4%203-5%202-4%201-2%202-4%204-3%203-3%204-2%205-1%204-1%205%201%204%201%204%202%204%203%203%203%202%204%202%204%200%205%200%204-1%205-1%203-1%203%200%200%200%200-3%205%200%200%200%200-2%205%200%200-1%200-2%204%200%201%200%200-3%204%200%200%200%201-2%204-1%200%200%200-2%205%200%200%200%200-3%205%200%200%200%200-3%204%200%200%200%200-3%205%200%200%200%200-3%205%200%200%200%200-3%204%200%200%200%200-3%205%200%200-1%200-3%204%200%200%200%200-3%205%200%200%200%200-3%204%200%200%200%200-4%204%200%201%200%200-3%204%200%200%200%200-3%204-1%200%200%200-3%204%200%201%200%200-4%204%200%200%200%200-3%204%200%200-1%200-3%204%200%200%200%200-4%204%200%200%200%200-4%204%200%200%200%201-4%203%200%200%200%201-3%203-1%200%200%201-3%203-1%200%200%200-3%204-1%200%200%200-4%204%200%200%200%200-4%204%200%200%200%200-4%203%200%201%200%200-4%203%200%200%200%200-4%204%200%200-1%200-4%203%200%200%200%201-4%203%200%200%200%200-4%203%200%200-1%200-4%204%200%200%200%200-4%203%200%200%200%200-2%201-4%203-4%201-4%201z%20m-519-10l-5%200-4-1-4-2-4-2-1-1%200%200%200%200-4-3%200-1%200%200-4-3%200%200-1%200-4-4%200%200%200%200-4-3%200%200%200-1-4-3%200%200%200%200-4-4%200%200%200%200-4-4%200%200%200%200-4-4%200%200%200%200-4-3%200-1%200%200-4-3%200-1%200%200-4-3%200-1%200%200-4-4%200%200%200%200-4-4%200%200%200%200-3-4%200%200-1%200-3-4%200%200%200%200-4-4%200%200%200-1-3-4%200%200%200%200-4-4%200%200%200%200-3-4%200%200%200-1-4-4%200%200%200%200-3-4%200%200%200%200-3-5%200%200%200%200-3-4%200%200-1%200-3-5%200%200%200%200-3-4%200%200%200%200-3-5%200%200%200%200-3-5%200%200%200%200-3-4%200%200%200%200-2-5-1%200%200%200-2-5%200%200%200%200-3-4%200-1%200%200-3-4%200%200%200-1-2-4%200%200%200%200-3-5%200%200%200%200-2-5%200%200-1%200-2-5%200%200%200%200-2-5%200%200%200%200-3-5%200%200%200%200-1-3-1-4-1-5%200-4%201-5%202-4%203-4%203-3%204-2%204-2%204-1%205%200%204%200%205%202%203%202%204%203%203%204%202%203%201%203%202%204%202%205%202%204%202%204%203%205%202%204%202%204%203%205%202%204%203%204%203%204%202%204%203%205%203%204%202%204%203%204%203%204%203%204%203%204%203%204%203%203%204%204%203%204%203%204%203%203%204%204%203%204%204%203%203%204%204%203%203%204%204%203%204%204%203%203%204%203%204%203%204%204%204%203%201%201%203%203%203%203%202%205%201%204%200%204-1%205-1%204-2%204-3%204-4%203-4%202-4%202-4%200z%20m264%200l0%200-4%200%200%200-1%200-4%200%200%200%200%200-4%200%200%200%200%200-5%200%200-1%200%200-4%200%200%200%200%200-4%200-1%200%200%200-4%200%200%200%200%200-4-1%200%200-1%200-1%200-4-1-5-2-3-2-4-3-2-4-2-4-2-4%200-5%201-4%201-5%202-4%203-3%204-3%204-3%204-1%204-1%204%200%201%201%204%200%204%200%204%201%204%200%203%200%204%200%204%200%204%200%204%200%204%200%204%200%203%200%204%200%204-1%204%200%204%200%203-1%204%200%204-1%204%200%204-1%203-1%204%200%204-1%204-1%203%200%204-1%204-1%203-1%204-1%204-1%203-1%204-1%203-2%204-1%204-1%203-1%204-2%203-1%204-1%203-2%200%200%200%200%204-1%205-1%205%200%204%201%204%202%204%203%203%203%202%204%202%204%201%205%200%204%200%205-2%204-2%204-3%203-4%203-3%202%200%200-1%200%200%200-3%202-1%200%200%200-4%201%200%200%200%200-4%202%200%200%200%200-4%201%200%200%200%200-4%202%200%200%200%200-4%201%200%200%200%200-4%202%200%200%200%200-4%201%200%200-1%200-3%201-1%200%200%200-4%202%200%200%200%200-4%201%200%200%200%200-4%201%200%200%200%200-4%201%200%200-1%200-4%201%200%200%200%200-4%201%200%200%200%200-4%201%200%200%200%200-4%201-1%200%200%200-4%201%200%200%200%200-4%201%200%200%200%200-4%200-1%200%200%200-4%201%200%200%200%200-4%201%200%200%200%200-5%200%200%200%200%200-4%201%200%200%200%200-4%200%200%200-1%200-4%201%200%200%200%200-4%200%200%200%200%200-5%200%200%200%200%200-4%200%200%200%200%201-4%200-1%200%200%200-4%200%200%200%200%200-4%200%200%200-1%200-4%200%200%200z%20m-155-39l-4%200-5-1-3-1-2-1%200%200%200%200-4-2%200%200%200%200-3-2-1-1%200%200-3-2%200%200-1%200-3-2%200%200%200%200-4-2%200%200%200%200-4-2%200-1%200%200-3-2%200%200-1%200-3-2%200%200%200%200-4-3%200%200%200%200-3-2%200%200%200%200-4-3%200%200%200%200-3-2%200%200-1-1-3-2%200%200%200%200-3-3%200%200-1%200-3-2%200-1%200%200-3-2%200%200-1%200-3-3%200%200%200%200-3-3%200%200%200%200-3-3-1%200%200%200-3-3%200%200%200%200-3-3%200%200%200%200-3-3%200%200%200%200-3-3-1%200%200%200-3-3%200%200%200%200-3-3%200%200%200%200-3-3%200-1%200%200-3-3%200%200%200%200-3-3%200%200%200%200-3-3%200%200%200%200-3-4%200%200%200%200-3-3%200%200%200%200-2-3-1%200%200-1-2-3%200%200%200%200-3-3%200%200%200-1-3-3%200%200%200%200-2-3%200%200-1-1-2-3%200%200%200%200-2-3-1-1%200%200-2-3%200%200%200%200-2-4-1%200%200%200-2-3-2-4-1-4-1-5%201-4%201-5%202-4%203-3%203-4%204-2%204-2%204-1%205%200%204%201%205%202%204%202%203%203%202%203%202%203%202%203%202%203%203%203%202%204%202%203%202%203%203%203%202%203%203%202%202%203%203%203%202%203%203%203%202%203%203%203%203%202%203%203%202%203%203%202%203%203%203%202%203%203%203%202%203%203%203%202%203%203%203%202%203%202%203%203%203%202%203%202%203%202%203%202%203%202%204%202%203%202%203%202%203%202%204%202%203%202%202%200%203%203%204%203%202%204%202%204%201%204%201%205-1%204-1%205-3%204-2%203-4%203-4%202-4%202-5%200z%20m393-59l-5-1-4-1-4-1-4-3-3-3-3-4-1-4-1-5-1-4%201-5%202-4%202-4%202-3%203-2%203-3%202-3%203-3%202-3%203-3%202-3%203-2%202-3%203-3%202-3%202-3%203-4%202-3%202-3%202-3%202-3%202-3%202-4%202-3%202-3%202-3%202-4%202-3%201-3%202-4%202-3%201-3%202-4%202-3%201-4%201-3%202-4%201-3%202-4%201-3%201-4%201-4%202-3%201-4%201-3%200-3%202-4%202-4%204-3%203-3%204-2%205-1%204%200%205%200%204%201%204%203%204%202%203%204%202%204%202%204%200%205%200%204-1%204%200%202%200%200%200%200-2%204%200%200%200%201-1%203%200%201%200%200-1%204%200%200%200%200-2%204%200%200%200%200-1%204%200%200%200%200-2%204%200%200%200%200-1%204%200%200%200%200-2%204%200%200%200%200-1%204%200%200%200%201-2%203%200%200%200%201-2%203%200%200%200%201-2%203%200%200%200%201-1%203%200%200-1%201-1%203%200%200%200%200-2%204%200%200%200%200-2%204%200%200%200%200-2%204%200%200%200%200-2%204%200%200-1%200-1%204-1%200%200%200-2%203%200%201%200%200-2%203%200%200%200%200-2%204%200%200%200%200-2%204-1%200%200%200-2%203%200%200%200%201-2%203%200%200%200%200-3%204%200%200%200%200-2%203%200%200%200%201-3%203%200%200%200%200-2%203%200%201-1%200-2%203%200%200%200%200-3%203%200%201%200%200-2%203-1%200%200%200-2%203%200%201%200%200-3%203%200%200%200%200-3%203%200%200%200%200-3%204%200%200%200%200-3%203%200%200%200%200-3%203%200%200%200%200-3%203%200%200%200%201-3%203%200%200%200%200-3%202-3%203-4%203-5%201-4%201z%20m-564-171l-5%200-4-1-4-2-4-2-3-4-3-3-2-4-1-4-1-4%200%200%200%200%200-4%200%200-1%200%200-4%200-1%200%200-1-4%200%200%200%200-1-4%200%200%200%200%200-5%200%200%200%200-1-4%200%200%200%200%200-4%200%200%200-1%200-4%200%200-1%200%200-4%200%200%200%200%200-5%200%200%200%200%200-4%200%200%200%200-1-4%200-1%200%200%200-4%200%200%200%200%200-4%200%200%200-1%200-4%200%200%200%200%200-4%200%200%200-1%200-4%200%200%200%200%200-4%200%200%200%200%201-5%200%200%200%200%200-4%200%200%200%200%200-4%200-1%200%200%200-4%201%200%200%200%200-4%200%200%200-1%200-4%200%200%200%200%201-4%200%200%200%200%200-4%200-1%200%200%201-4%200%200%200%200%201-4%200%200%200%200%200-4%201-1%200%200%200-4%200%200%200%200%201-4%200%200%200%200%201-4%200-1%200%200%201-4%200%200%200%200%201-4%200%200%200%200%201-4%200%200%200-1%201-4%200%200%200%200%201-4%200%200%200%200%201-4%200%200%200%200%202-4%200%200%200%200%201-4%200-1%200%200%201-1%201-4%203-4%203-3%204-3%204-2%204-1%205%200%204%201%205%201%204%202%203%203%203%204%202%204%202%204%200%205%200%204-1%204%200%201-2%204-1%204-1%203-1%204-1%203-1%204%200%204-1%204-1%203-1%204%200%204-1%204-1%203%200%204-1%204%200%204%200%203-1%204%200%204%200%204-1%204%200%204%200%203%200%204%200%204%200%204%200%204%200%204%200%203%201%204%200%204%200%204%201%204%200%203%200%204%201%204%200%204%201%204%201%203%200%204%201%204%200%204%200%205-1%204-2%204-3%204-3%203-4%202-5%202-4%201z%20m754-46l-5%200-4-1-4-2-4-2-3-4-3-4-2-4%200-4-1-4%201-4%200-5%200-5%200-5%200-5%200-5%200-5-1-5%200-5%200-5-1-5%200-5-1-5%200-5-1-5-1-4%200-5-1-5-1-5-1-5-1-5-1-5-1-4-1-5-1-5-2-5-1-4-2-5-1-5-1-4-2-5-2-5-1-4-2-5-2-4-2-5-2-5-2-4-2-5-2-4-2-4-2-5-2-4-2-5-1-4%200-5%201-4%202-4%202-4%203-4%204-2%204-2%204-2%205%200%204%201%205%201%204%202%203%203%203%203%202%203%203%205%200%200%200%200%202%205%200%200%200%200%202%205%200%200%200%200%203%205%200%200%200%200%202%205%200%200%200%200%202%205%200%200%200%200%202%205%200%200%200%200%202%205%200%200%200%200%202%205%200%200%200%201%202%204%200%201%200%200%202%205%200%200%200%200%202%205%200%200%200%200%202%205%200%200%200%200%202%205%200%200%200%201%201%205%200%200%200%200%202%205%200%200%200%200%201%205%200%200%200%200%202%205%200%201%200%200%201%205%200%200%200%200%201%205%200%200%200%200%202%206%200%200%200%200%201%205%200%200%200%200%201%205%200%201%200%200%201%205%200%200%200%200%201%205%200%200%200%201%201%205%200%200%200%200%201%205%200%200%200%201%201%205%200%200%200%200%200%205%200%200%200%201%201%205%200%200%200%200%200%205%201%200%200%201%200%205%200%200%200%200%200%205%200%201%200%200%201%205%200%200%200%200%200%206%200%200%200%200%200%205%200%200%200%200%201%206%200%200%200%200%200%205%200%200%200%201%200%205%200%200%200%200%200%206%200%200%200%200%200%205%200%200%200%200-1%206%200%200%200%200%200%204%200%205-2%204-2%204-3%203-4%203-4%202-4%202-4%200z%20m-853-16l-5%200-4-1-4-1-4-3-4-3-2-4-2-4-1-4-1-4%200-4%200%200%200%200%200-5%200-1%200%200%201-5%200%200%200%200%200-6%200%200%200%200%200-5%200%200%200%200%200-6%200%200%200%200%201-5%200%200%200-1%200-5%200%200%200%200%201-5%200-1%200%200%200-5%200%200%200%200%201-5%200-1%200%200%201-5%200%200%200%200%200-5%200-1%200%200%201-5%200%200%200%200%201-5%200-1%200%200%201-5%200%200%200%200%201-5%200%200%200-1%201-5%200%200%200%200%201-5%200%200%200%200%202-6%200%200%200%200%201-5%200%200%200%200%201-5%200%200%200-1%202-5%200%200%200%200%201-5%200%200%200%200%202-5%200%200%200%200%202-5%200-1%200%200%201-5%200%200%200%200%202-5%200%200%200%200%202-5%200%200%200%200%202-5%200%200%200-1%202-4%200-1%200%200%202-5%200%200%200%200%202-5%200%200%200%200%202-5%200%200%200%200%202-5%200%200%200%200%202-5%200%200%200%200%203-5%200%200%200%200%202-5%200%200%200%200%202-5%201%200%200%200%200-1%203-4%203-3%203-3%204-2%205-1%204%200%205%200%204%201%204%203%204%202%203%204%202%204%202%204%200%205%200%204-1%205-1%203-1%201-2%205-2%204-2%204-2%205-2%204-2%205-2%205-2%204-2%205-1%204-2%205-1%205-2%204-1%205-2%205-1%204-1%205-2%205-1%205-1%204-1%205-1%205-1%205-1%205-1%205%200%205-1%204-1%205%200%205-1%205%200%205-1%205%200%205%200%205-1%205%200%205%200%205%200%205%200%204%200%204-1%205-2%204-3%203-4%204-3%202-5%202-4%200z%20m756-57l-4%200-5-1-4-2-4-3-3-3-2-4-2-4-1-3%200%200%200%200%200%200%200%200-1-4%200-4-1-4-1-3%200-4-1-4-1-4-1-3-1-4-1-3-1-4-1-4-2-3-1-4-1-3-1-4-2-4-1-3-2-4-1-3-1-4-2-3-2-3-1-4-2-3-2-4-1-3-2-3-2-4-2-3-2-3-2-3-2-4-2-3-2-3-2-3-2-3-2-3-3-3-2-3-2-4-2-1-2-4-2-4-1-5%200-4%201-5%202-4%202-4%203-3%204-3%204-2%204-1%205-1%204%201%204%201%205%202%203%203%203%203%201%201%200%201%200%200%203%203%200%200%200%200%202%203%201%201%200%200%202%203%200%200%200%200%203%204%200%200%200%200%202%203%200%200%200%200%203%204%200%200%200%200%202%203%200%201%200%200%202%203%200%200%201%200%202%204%200%200%200%200%202%204%200%200%200%200%202%203%200%201%200%200%202%203%200%200%201%201%202%203%200%200%200%200%202%204%200%200%200%200%202%204%200%200%200%200%202%204%200%200%200%200%202%204%200%200%200%200%201%204%201%200%200%200%201%204%200%200%200%200%202%204%200%200%200%200%202%204%200%200%200%200%202%204%200%200%200%200%201%204%200%200%200%200%202%204%200%200%200%200%201%204%200%200%200%200%202%204%200%200%200%200%201%204%200%200%200%200%202%204%200%200%200%200%201%204%200%200%200%201%201%204%200%200%200%200%202%204%200%200%200%200%201%204%200%200%200%200%201%204%200%200%200%200%201%204%200%201%200%200%201%204%200%200%200%200%201%204%200%200%200%200%201%204%200%200%200%201%201%204%200%200%200%200%201%204%200%200%200%200%201%204%200%200%200%201%200%204%200%200%200%200%200%200%201%205-1%204-1%204-2%204-3%204-4%203-4%202-4%202-5%200z%20m-590-160l-4-1-4-2-4-2-4-3-3-3-2-4-1-5-1-4%201-5%201-4%202-4%202-3%201-2%200%200%200%200%203-3%200%200%200%200%203-3%200-1%200%200%203-3%200%200%200%200%203-3%200%200%200%200%203-3%200%200%200%200%203-3%200-1%200%200%203-3%200%200%200%200%203-3%200%200%201%200%203-3%200%200%200%200%203-3%200%200%200%200%203-3%200%200%200%200%203-3%200%200%201%200%203-3%200%200%200%200%203-3%200%200%200%200%203-2%201-1%200%200%203-2%200%200%200%200%203-3%201%200%200%200%203-3%200%200%200%200%203-2%201%200%200-1%203-2%200%200%200%200%204-2%200-1%200%200%203-2%200%200%200%200%204-2%200-1%200%200%203-2%201%200%200%200%203-2%200%200%200%200%204-3%200%200%200%200%204-2%200%200%200%200%203-2%201%200%200%200%203-2%200%200%201%200%203-2%200%200%200-1%204-1%200-1%200%200%204-2%200%200%200%200%204-2%200%200%200%200%204-1%200-1%200%200%204-1%200%200%200%200%204-2%200%200%200%200%204-2%200%200%200%200%204-2%200%200%200%200%204-1%200-1%200%200%204-1%200%200%200%200%204-2%204-1%204%200%205%200%204%201%204%202%204%203%203%204%202%203%202%205%201%204%200%205-1%204-2%204-2%204-4%203-3%203-4%202-3%201-4%202-3%201-4%202-3%201-3%202-4%201-3%202-4%202-3%202-3%201-4%202-3%202-3%202-3%202-4%202-3%202-3%202-3%202-3%202-3%203-3%202-4%202-3%202-2%203-3%202-3%203-3%202-3%203-3%202-3%203-3%202-2%203-3%203-3%203-3%202-2%203-3%203-2%203-3%203-2%203-1%201-4%203-3%203-5%201-4%201-5%201z%20m426-77l-5%200-4-1-4-2-1-1-4-2-3-1-3-2-4-2-3-2-3-1-4-2-3-1-4-2-3-1-4-2-3-1-4-2-3-1-4-1-4-1-3-1-4-2-3-1-4-1-4-1-3-1-4-1-4%200-3-1-4-1-4-1-4%200-3-1-4-1-4%200-4-1-3%200-4%200-4-1-4%200-4%200-4-1-3%200-4%200-4%200-5%200-4-2-4-2-4-3-3-3-2-4-1-4-1-5%200-5%201-4%202-4%202-4%204-3%203-3%204-2%205-1%204%200%204%200%200%200%200%200%204%200%200%200%201%200%204%201%200%200%200%200%204%200%200%200%200%200%205%200%200%200%200%200%204%200%200%200%200%200%204%201%201%200%200%200%204%200%200%200%200%200%204%201%200%200%200%200%205%200%200%200%200%200%204%201%200%200%200%200%204%201%200%200%201%200%204%200%200%200%200%200%204%201%200%200%200%200%204%201%200%200%201%200%204%201%200%200%200%200%204%201%200%200%200%200%204%201%200%200%200%200%204%201%201%200%200%200%204%201%200%200%200%200%204%201%200%200%200%200%204%201%200%200%200%200%204%202%200%200%201%200%203%201%201%200%200%200%204%201%200%200%200%200%204%202%200%200%200%200%204%201%200%200%200%200%204%202%200%200%200%200%204%201%200%200%200%200%204%202%200%200%200%200%204%201%200%200%201%201%203%201%200%200%201%200%203%202%200%200%201%200%203%202%200%200%201%200%203%202%200%200%201%200%203%201%200%200%200%201%204%201%200%200%200%200%204%202%200%200%200%200%204%202%200%200%200%201%204%201%200%201%200%200%204%202%200%200%200%200%202%201%203%202%204%204%202%203%202%205%201%204%200%205-1%204-1%204-3%204-3%204-3%203-4%202-5%201-4%200z%20m-440-39l-4-1-5-1-4-3-3-3-3-3-2-4-1-5-1-4%200-5%201-4%202-4%203-4%203-2%201-1%200%200%200%200%204-4%200%200%200%200%204-3%200%200%201%200%204-4%200%200%200%200%204-3%200%200%200%200%205-3%200%200%200%200%204-3%200-1%200%200%205-3%200%200%200%200%204-3%200%200%201%200%204-3%200%200%200%200%205-3%200%200%200%200%204-3%200%200%201%200%204-3%200%200%200%200%205-2%200%200%200-1%205-2%200%200%200%200%204-3%201%200%200%200%204-2%200%200%200-1%205-2%200%200%200%200%205-3%200%200%200%200%205-2%200%200%200%200%205-2%200%200%200%200%205-3%200%200%200%200%205-2%200%200%200%200%205-2%200%200%200%200%205-2%200%200%200%200%205-2%200%200%200%200%205-2%200%200%201%200%204-2%201%200%200%200%205-2%200%200%200%200%205-2%200%200%200%200%205-2%200%200%200%200%205-2%200%200%201%200%205-1%200%200%200%200%205-2%200%200%200%200%205-1%200%200%200%200%205-2%201%200%200%200%205-1%200%200%200%200%205-1%200%200%200%200%206-2%200%200%200%200%204-1%205%200%204%200%205%201%204%202%204%203%203%203%202%204%202%204%201%205%200%204-1%205-1%204-3%204-3%203-4%203-4%202-3%201-5%201-4%201-5%201-5%201-5%202-4%201-5%202-5%201-4%202-5%201-5%202-4%201-5%202-5%202-4%202-5%202-4%202-5%202-4%202-5%202-4%202-4%202-5%203-4%202-4%202-5%203-4%202-4%203-4%203-4%202-4%203-5%203-4%202-4%203-4%203-4%203-3%203-4%203-4%203-1%201-4%203-4%201-4%201-5%201z%20m543-3l-5%200-4-1-5-2-3-2-1-2-4-3-4-3-4-3-4-3-4-3-4-2-4-3-5-3-4-2-4-3-4-3-4-2-5-3-4-2-4-2-5-3-4-2-4-2-5-2-4-2-5-2-4-2-5-2-4-2-5-2-4-2-5-1-5-2-4-1-5-2-5-1-5-2-4-1-5-2-5-1-5-1-4-1-5-1-3-1-5-1-4-2-3-3-3-3-2-4-2-5-1-4%200-5%201-4%202-4%203-4%203-3%204-3%204-2%204-1%205%200%204%200%203%201%200%200%200%200%205%201%200%200%201%200%205%202%200%200%200%200%205%201%200%200%200%200%205%201%200%200%201%200%205%202%200%200%200%200%205%201%200%200%200%200%205%202%200%200%201%200%205%201%200%200%200%200%205%202%200%200%200%200%205%202%200%200%200%200%205%202%200%200%200%200%205%202%201%200%200%200%205%202%200%200%200%200%205%202%200%200%200%200%205%202%200%200%200%200%205%202%200%200%200%200%205%202%200%200%200%200%205%202%200%200%200%200%205%203%200%200%200%200%205%202%200%200%200%200%205%202%200%200%200%200%205%203%200%200%200%200%205%202%200%201%200%200%204%202%201%200%200%200%204%203%200%200%201%200%204%202%200%201%200%200%205%202%200%200%200%200%205%203%200%200%200%200%204%203%200%200%200%200%205%203%200%200%200%200%205%203%200%200%200%200%204%203%200%200%200%200%205%203%200%200%200%201%204%203%200%200%200%200%205%203%200%200%200%200%204%203%200%200%200%200%204%204%201%200%200%200%204%203%200%200%200%200%202%202%203%203%203%204%202%204%201%204%200%205-1%204-1%205-2%204-3%203-4%203-4%202-4%202-4%200z'%20horiz-adv-x='1000'%20/%3e%3cglyph%20glyph-name='participant'%20unicode='&%23xe85c;'%20d='M47%20654l0-625%20906%200%200%20625z%20m857-48l0-533-670%200%200%20533%20670%200z%20m-810%200l94%200%200-533-94%200z'%20horiz-adv-x='1000'%20/%3e%3cglyph%20glyph-name='event-subprocess-expanded'%20unicode='&%23xe85d;'%20d='M261%20669c16%200%2033%200%2049%200%200%2016%200%2032%200%2049-16%200-33%200-49%200%200-17%200-33%200-49z%20m98%200c16%200%2032%200%2049%200%200%2016%200%2032%200%2049-17%200-33%200-49%200%200-17%200-33%200-49z%20m97%200c17%200%2033%200%2049%200%200%2016%200%2032%200%2049-16%200-32%200-49%200%200-17%200-33%200-49z%20m98%200c16%200%2033%200%2049%200%200%2016%200%2032%200%2049-16%200-33%200-49%200%200-17%200-33%200-49z%20m98%200c16%200%2032%200%2049%200%200%2016%200%2032%200%2049-17%200-33%200-49%200%200-17%200-33%200-49z%20m97%200c15%200%2031%201%2046-1%202%2016%204%2032%206%2048-17%203-34%201-52%202%200-17%200-33%200-49z%20m-531%2049c-8%200-17-1-25-3%203-16%206-32%209-48%2010%203%2026-3%2020%2013-2%2011%205%2034-4%2038z%20m614-63c12-6%2023-15%2031-25%2012%2011%2028%2021%2037%2032-13%2015-27%2027-44%2036-8-14-16-29-24-43z%20m-693%2040c-16-10-31-23-43-37%2013-9%2027-24%2039-30%209%2010%2018%2019%2030%2025-9%2014-16%2029-26%2042z%20m759-94c-15-1-15-9-10-22%204-6-3-23%207-23%2014%201%2031-1%2044%201%200%2019-3%2038-10%2056-10-4-20-8-31-12z%20m-830%204c-5-17-7-35-7-53%2016%200%2032%200%2049%200-1%2013%201%2027%205%2040-15%205-31%2010-46%2015l-1-2%200%200z%20m822-147c17%200%2033%200%2049%200%200%2017%200%2033%200%2049-16%200-32%200-49%200%200-16%200-32%200-49z%20m-829-4c16%200%2032%200%2049%200%200%2016%200%2033%200%2049-17%200-33%200-49%200%200-16%200-33%200-49z%20m829-93c17%200%2033%200%2049%200%200%2016%200%2032%200%2049-16%200-32%200-49%200%200-17%200-33%200-49z%20m-829-5c16%200%2032%200%2049%200%200%2017%200%2033%200%2049-17%200-33%200-49%200%200-16%200-32%200-49z%20m829-93c17%200%2033%200%2049%200%200%2016%200%2033%200%2049-16%200-32%200-49%200%200-16%200-33%200-49z%20m-829-4c16%200%2032%200%2049%200%200%2016%200%2032%200%2049-17%200-33%200-49%200%200-17%200-33%200-49z%20m829-94c17%200%2033%200%2049%200%200%2017%200%2033%200%2049-16%200-32%200-49%200%200-16%200-32%200-49z%20m-829-4c16%200%2032%200%2049%200%200%2016%200%2033%200%2049-17%200-33%200-49%200%200-16%200-33%200-49z%20m827-40c-3-13-7-25-14-37%2014-7%2028-19%2042-24%2010%2016%2017%2034%2020%2052-16%203-33%207-48%209z%20m-823-14c4-19%2012-37%2023-53%2013%209%2027%2018%2040%2027-7%2012-12%2024-15%2037-16-4-32-7-48-11z%20m780-54c-10-7-21-13-34-17%206-15%2011-31%2016-46%2018%205%2035%2014%2050%2026-10%2013-20%2026-30%2039l-2-2%200%200z%20m-718-40c16-11%2033-20%2052-25%204%2016%209%2032%2012%2047-12%204-24%2010-35%2018-10-14-19-27-29-40z%20m107-31c16%200%2032%200%2049%200%200%2017%200%2033%200%2049-17%200-33%200-49%200%200-16%200-32%200-49z%20m97%200c17%200%2033%200%2049%200%200%2017%200%2033%200%2049-16%200-32%200-49%200%200-16%200-32%200-49z%20m98%200c16%200%2033%200%2049%200%200%2017%200%2033%200%2049-16%200-33%200-49%200%200-16%200-32%200-49z%20m98%200c16%200%2032%200%2048%200%200%2017%200%2033%200%2049-16%200-32%200-48%200%200-16%200-32%200-49z%20m94%200c17%200%2033%200%2049%200%200%2017%200%2033%200%2049-16%200-32%200-49%200%200-16%200-32%200-49z%20m101%200c16%200%2033%200%2049%200%200%2017%200%2033%200%2049-16%200-33%200-49%200%200-16%200-32%200-49z%20m-53%2015c0%20114%200%20229%200%20343-113%200-225%200-338%200%200-114%200-229%200-343%20113%200%20225%200%20338%200z%20m-307%20312c92%200%20184%200%20276%200%200-92%200-184%200-277-92%200-184%200-276%200%200%2093%200%20185%200%20277z%20m37-110c0-16%200-31%200-47%2067%200%20135%200%20203%200%200%2016%200%2031%200%2047-68%200-136%200-203%200z'%20horiz-adv-x='1000'%20/%3e%3cglyph%20glyph-name='lane-insert-below'%20unicode='&%23xe85e;'%20d='M46-50l0%2089%2049%200%200-40%2016%200%200-49-65%200z%20m114%200l0%2049%2097%200%200-49-97%200z%20m146%200l0%2049%2098%200%200-49-98%200z%20m147%200l0%2049%2097%200%200-49-97%200z%20m146%200l0%2049%2098%200%200-49-98%200z%20m147%200l0%2049%2097%200%200-49-97%200z%20m145%200l0%2049%2013%200%200%2040%2049%200%200-64%200-25-25%200-37%200z%20m-845%20138l0%2092%2049%200%200-92-49%200z%20m858%200l0%2092%2049%200%200-92-49%200z%20m-857%20139l0%20527%20906%200%200-527-906%200z%20m857%2048l0%20435-810%200%200-435%20810%200z'%20horiz-adv-x='1000'%20/%3e%3cglyph%20glyph-name='space-tool'%20unicode='&%23xe85f;'%20d='M366%20800l0-900%2038%200%200%20900-38%200z%20m233%200l0-900%2038%200%200%20900-38%200z%20m-394-287l-164-163%20164-163%200%20111%2093%200%200%20105-93%200%200%20110z%20m595%200l0-108-94-1%200-106%2094%200%200-111%20163%20163-163%20163z'%20horiz-adv-x='1000'%20/%3e%3cglyph%20glyph-name='connection-multi'%20unicode='&%23xe860;'%20d='M917%20767l-413-162a3%203%200%200%201-1-5l96-95a5%205%200%200%200%200-6l-471-472a5%205%200%200%201%200-6l45-43a5%205%200%200%201%207%200l471%20470a5%205%200%200%200%207%200l89-90a3%203%200%200%201%205%201l167%20405a2%202%200%200%201-2%203z'%20horiz-adv-x='1000'%20/%3e%3cglyph%20glyph-name='lane'%20unicode='&%23xe861;'%20d='M47%20614l0-528%20906%200%200%20528z%20m47-483l0%20435%20810%200%200%200%200-435z'%20horiz-adv-x='1000'%20/%3e%3cglyph%20glyph-name='lasso-tool'%20unicode='&%23xe862;'%20d='M303%20798l0-218%20103%200%200%20218-103%200z%20m-248-246l0-103%20218%200%200%20103-218%200z%20m379%200l0-103%20219%200%200%20103-219%200z%20m349-30l0-40%20123%200%200-117%2040%200%200%20157-163%200z%20m-480-104l0-218%20103%200%200%20218-103%200z%20m603-159l0-77%2040%200%200%2077-40%200z%20m0-190l0-116-119%200%200-40%20159%200%200%20156-40%200z%20m-570-1l0-157%20159%200%200%2040-119%200%200%20117-40%200z%20m264-117l0-40%2082%200%200%2040-82%200z'%20horiz-adv-x='1000'%20/%3e%3cglyph%20glyph-name='lane-insert-above'%20unicode='&%23xe863;'%20d='M46%20754l0-89%2049%200%200%2041%2016%200%200%2048-65%200z%20m114%200l0-48%2097%200%200%2048-97%200z%20m146%200l0-48%2098%200%200%2048-98%200z%20m147%200l0-48%2097%200%200%2048-97%200z%20m146%200l0-48%2098%200%200%2048-98%200z%20m147%200l0-48%2097%200%200%2048-97%200z%20m145%200l0-48%2013%200%200-41%2049%200%200%2065%200%2024-25%200-37%200z%20m-845-137l0-92%2049%200%200%2092-49%200z%20m858%200l0-92%2049%200%200%2092-49%200z%20m-857-139l0-528%20906%200%200%20528-906%200z%20m857-48l0-435-810%200%200%20435%20810%200z'%20horiz-adv-x='1000'%20/%3e%3cglyph%20glyph-name='lane-divide-three'%20unicode='&%23xe864;'%20d='M47%20706l0-216%200-49%200-182%200-49%200-216%20906%200%200%20216%200%2024%200%2025%200%20182%200%2025%200%2024%200%20216-906%200z%20m47-44l810%200%200-172-12%200%200-49%2012%200%200-182-12%200%200-49%2012%200%200-169-810%200%200%20169%2017%200%200%2049-17%200%200%20182%2017%200%200%2049-17%200%200%20172z%20m66-172l0-49%2098%200%200%2049-98%200z%20m147%200l0-49%2097%200%200%2049-97%200z%20m146%200l0-49%2098%200%200%2049-98%200z%20m147%200l0-49%2097%200%200%2049-97%200z%20m146%200l0-49%2098%200%200%2049-98%200z%20m-586-231l0-49%2098%200%200%2049-98%200z%20m147%200l0-49%2097%200%200%2049-97%200z%20m146%200l0-49%2098%200%200%2049-98%200z%20m147%200l0-49%2097%200%200%2049-97%200z%20m146%200l0-49%2098%200%200%2049-98%200z'%20horiz-adv-x='1000'%20/%3e%3cglyph%20glyph-name='lane-divide-two'%20unicode='&%23xe865;'%20d='M47%20706l0-332%200-48%200-332%20906%200%200%20332%200%2024%200%2024%200%20332-906%200z%20m47-44l810%200%200-288-12%200%200-48%2012%200%200-285-810%200%200%20285%2017%200%200%2048-17%200%200%20288z%20m66-288l0-48%2098%200%200%2048-98%200z%20m147%200l0-48%2097%200%200%2048-97%200z%20m146%200l0-48%2098%200%200%2048-98%200z%20m147%200l0-48%2097%200%200%2048-97%200z%20m146%200l0-48%2098%200%200%2048-98%200z'%20horiz-adv-x='1000'%20/%3e%3cglyph%20glyph-name='data-input'%20unicode='&%23xe866;'%20d='M626%20746c-143%200-286%200-429%200l0-792%20606%200%200%20610c-59%2061-118%20121-177%20182z%20m-52-45l0-186%20184%200%200-516-516%200%200%20702c110%200%20221%200%20332%200z%20m45-12l125-129-125%200%200%20129z%20m-227-21l0-24%200-69-106%200%200-80%20106%200%200-92%20141%20132-141%20133z%20m20-47l92-86-92-86%200%2066-106%200%200%2040%20106%200%200%2066z'%20horiz-adv-x='1000'%20/%3e%3cglyph%20glyph-name='data-output'%20unicode='&%23xe867;'%20d='M626%20746c-143%200-286%200-429%200l0-792%20606%200%200%20610c-59%2061-118%20121-177%20182z%20m-52-45l0-186%20184%200%200-516-516%200%200%20702c110%200%20221%200%20332%200z%20m45-12l125-129-125%200z%20m-227-21l0-93-106%200%200-80%20106%200%200-92%20141%20132z'%20horiz-adv-x='1000'%20/%3e%3cglyph%20glyph-name='hand-tool'%20unicode='&%23xe868;'%20d='M498%20750c-19%200-36-11-45-26-8-15-12-33-14-53-5-40-1-88-1-131%200-22%200-45%200-67-6%2014-11%2028-15%2039l0%200%200%200c-16%2040-30%2081-50%20111-10%2015-21%2027-36%2034-16%208-34%207-52%200l0-1%200%200c-18-8-28-24-32-41-3-17%200-35%204-54%209-39%2026-84%2038-128%2010-35%2019-70%2027-100-12%2011-24%2023-38%2035-23%2020-49%2038-75%2048-27%2010-57%2011-80-9l0%200%200%200c-18-17-27-37-24-57%202-20%2013-38%2027-56%2029-36%2074-75%20118-128%2049-58%20102-152%20140-201l5-7%20332%200%203%2012c7%2021%2014%2062%2026%20114%2011%2051%2027%20112%2047%20165%2028%2071%2056%20138%2068%20191%206%2026%209%2049%204%2070-5%2020-22%2037-45%2041-20%204-39-5-52-19-14-13-24-31-33-52-8-15-14-33-21-50%200%2029%200%2036%200%2075-1%2043%202%2092-1%20131-2%2019-5%2037-12%2051-7%2014-22%2026-40%2025-17%201-32-7-41-19-10-13-16-28-20-44-9-34-13-74-19-107-3-16-6-32-9-47-2%2016-4%2033-6%2051-4%2040-6%2088-15%20128-4%2019-9%2037-19%2051-9%2015-25%2026-43%2025l1%200c0%200-1%200-2%200z%20m0-33c0%200%201%200%201%200l1%200%200%200c6%200%209-2%2014-10%205-8%2010-23%2014-40%208-36%2011-83%2015-125%209-90%2022-156%2022-156l33%201c0%200%2013%2075%2026%20149%206%2035%2011%2075%2018%20104%204%2014%209%2026%2014%2032%205%206%207%207%2014%207l1%200%201%200c6%200%205%200%209-7%204-7%207-21%208-39%203-35%201-83%201-128%200-84%201-160%201-160l32-7c19%2041%2035%2091%2052%20128%209%2019%2018%2034%2027%2043%208%208%2014%2010%2022%209l0%200%200%200c13-2%2016-6%2019-17%202-10%201-30-5-54-11-47-39-114-66-186-22-56-37-118-49-170-10-42-17-79-22-99l-289%200c-35%2047-86%20136-136%20196-46%2055-92%2095-117%20127-13%2016-20%2029-21%2038-1%2010%201%2017%2014%2029%2011%2010%2025%2010%2045%203%2020-8%2044-24%2065-43%2044-37%2080-82%2080-82l29%2015c0%200-21%2087-43%20167-13%2047-30%2092-38%20126-4%2017-5%2032-3%2041%201%209%204%2013%2012%2017%2011%205%2017%204%2023%201%207-3%2015-11%2023-23%2016-24%2031-64%2046-104l0%200c16-42%2047-117%2047-117l32%206c0%200%203%2083%202%20151-1%2044-4%2092%200%20128%202%2017%206%2031%2010%2039%205%208%208%2010%2016%2010z'%20horiz-adv-x='1000'%20/%3e%3cglyph%20glyph-name='group'%20unicode='&%23xe869;'%20d='M258%20735c-56%200-113-42-128-100-10-40-4-83-6-124v-70h50c0%2056-2%20112%201%20168%206%2046%2047%2080%2090%2077h216v49c-74%200-149%201-223%200z%20m315-49h47v49h-47z%20m139%200c30%202%2064-1%2087-25%2025-24%2029-61%2027-94v-152h50c-1%2064%201%20129-1%20193-4%2066-63%20123-126%20126-12%202-25%201-37%201%200-16%200-32%200-49z%20m-588-392h50v49h-50z%20m702-26h50v49h-50z%20m-702-163c0-53%2034-105%2080-127%2042-20%2089-11%20133-13%2011%203%2031-6%2035%204v45c-43%201-87-2-129%202-41%209-71%2049-69%2093v87h-50v-91z%20m702%202c1-47-37-91-82-92-47-2-94-1-141-1v-49c51%201%20102-2%20153%201%2061%207%20116%2064%20119%20129%202%2025%200%2050%201%2075h-50l0-63z%20m-362-142h46v49h-46z'%20horiz-adv-x='1000'%20/%3e%3cglyph%20glyph-name='text-annotation'%20unicode='&%23xe86b;'%20d='M618%20788l0-438%200-438%20263%200%2030%200%200%2060-30%200-204%200%200%20378%200%20378%20204%200%2030%200%200%2060-30%200-263%200z%20m-102-297l-61-62%2062-61%2061%2062-62%2061z%20m-122-123l-61-62%2062-61%2061%2062-62%2061z%20m-122-123l-61-62%2062-61%2061%2062-62%2061z%20m-122-123l-61-61%2062-62%2061%2062-62%2061z'%20horiz-adv-x='1000'%20/%3e%3cglyph%20glyph-name='transaction'%20unicode='&%23xe8c4;'%20d='M210%20716c-83%200-149-66-149-149l0-434c0-82%2066-149%20149-149l581%200c82%200%20149%2067%20149%20149l0%20434c0%2083-67%20149-149%20149l-581%200z%20m0-34l581%200c63%200%20114-51%20114-115l0-434c0-64-51-115-114-115l-581%200c-64%200-115%2051-115%20115l0%20434c0%2064%2051%20115%20115%20115z%20m29-49c-51%200-93-41-93-92l0-382c0-51%2042-92%2093-92l523%200c51%200%2092%2041%2092%2092l0%20382c0%2051-41%2092-92%2092l-523%200z%20m0-34l523%200c32%200%2058-26%2058-58l0-382c0-32-26-58-58-58l-523%200c-33%200-59%2026-59%2058l0%20382c0%2032%2026%2058%2059%2058z'%20horiz-adv-x='1000'%20/%3e%3cglyph%20glyph-name='screw-wrench'%20unicode='&%23xe8db;'%20d='M674%20755c-59-4-114-32-154-78-39-45-59-105-55-165%204-60%2032-116%2076-156%2045-39%20103-59%20163-55%2098%207%20180%2078%20203%20175l-158-55-130%2075%2058%20140%20166%2058c-45%2043-106%2065-169%2061z%20m-226-352l-357-365c-6-45%2053-106%20100-99l349%20356c-42%2024-74%2062-92%20108z'%20horiz-adv-x='1000'%20/%3e%3cglyph%20glyph-name='connection'%20unicode='&%23xe8dc;'%20d='M904%20753c0%200-286-146-432-214%2032-28%2062-61%2093-91-148-149-298-297-445-446%2010-11%2021-21%2032-32%20148%20150%20297%20298%20445%20447%2030-30%2058-58%2088-88%2078%20153%20219%20424%20219%20424z'%20horiz-adv-x='1000'%20/%3e%3cglyph%20glyph-name='conditional-flow'%20unicode='&%23xe8e0;'%20d='M906%20755c0%200-286-146-432-214%2032-28%2062-61%2092-91-141-143-79-79-202-204l-207-34-40-247%20247%2040%202%2015%2032%20197c122%20123%2060%2060%20201%20202%2030-30%2058-58%2088-88%2078%20153%20219%20424%20219%20424z%20m-552-553l-27-161-160-26%2026%20161%20161%2026z'%20horiz-adv-x='1000'%20/%3e%3cglyph%20glyph-name='default-flow'%20unicode='&%23xe8e1;'%20d='M906%20753l-431-214%2091-90-443-447%2032-32%20444%20448%2089-89z%20m-782-582v-43h362v43z'%20horiz-adv-x='1000'%20/%3e%3c/font%3e%3c/defs%3e%3c/svg%3e") format("svg");font-weight:400;font-style:normal}[class^=bpmn-icon-]:before,[class*=" bpmn-icon-"]:before{font-family:bpmn;font-style:normal;font-weight:400;speak:never;display:inline-block;text-decoration:inherit;width:1em;text-align:center;font-variant:normal;text-transform:none;line-height:1em;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.bpmn-icon-trash:before{content:""}.bpmn-icon-gateway-parallel:before{content:""}.bpmn-icon-intermediate-event-catch-cancel:before{content:""}.bpmn-icon-intermediate-event-catch-non-interrupting-message:before{content:""}.bpmn-icon-start-event-compensation:before{content:""}.bpmn-icon-start-event-non-interrupting-parallel-multiple:before{content:""}.bpmn-icon-loop-marker:before{content:""}.bpmn-icon-parallel-mi-marker:before{content:""}.bpmn-icon-start-event-non-interrupting-signal:before{content:""}.bpmn-icon-intermediate-event-catch-non-interrupting-timer:before{content:""}.bpmn-icon-intermediate-event-catch-parallel-multiple:before{content:""}.bpmn-icon-intermediate-event-catch-compensation:before{content:""}.bpmn-icon-gateway-xor:before{content:""}.bpmn-icon-end-event-cancel:before{content:""}.bpmn-icon-intermediate-event-catch-condition:before{content:""}.bpmn-icon-intermediate-event-catch-non-interrupting-parallel-multiple:before{content:""}.bpmn-icon-start-event-condition:before{content:""}.bpmn-icon-start-event-non-interrupting-timer:before{content:""}.bpmn-icon-sequential-mi-marker:before{content:""}.bpmn-icon-user-task:before{content:""}.bpmn-icon-business-rule:before{content:""}.bpmn-icon-sub-process-marker:before{content:""}.bpmn-icon-start-event-parallel-multiple:before{content:""}.bpmn-icon-start-event-error:before{content:""}.bpmn-icon-intermediate-event-catch-signal:before{content:""}.bpmn-icon-intermediate-event-catch-error:before{content:""}.bpmn-icon-end-event-compensation:before{content:""}.bpmn-icon-subprocess-collapsed:before{content:""}.bpmn-icon-subprocess-expanded:before{content:""}.bpmn-icon-task:before{content:""}.bpmn-icon-end-event-error:before{content:""}.bpmn-icon-intermediate-event-catch-escalation:before{content:""}.bpmn-icon-intermediate-event-catch-timer:before{content:""}.bpmn-icon-start-event-escalation:before{content:""}.bpmn-icon-start-event-signal:before{content:""}.bpmn-icon-business-rule-task:before{content:""}.bpmn-icon-manual:before{content:""}.bpmn-icon-receive:before{content:""}.bpmn-icon-call-activity:before{content:""}.bpmn-icon-start-event-timer:before{content:""}.bpmn-icon-start-event-message:before{content:""}.bpmn-icon-intermediate-event-none:before{content:""}.bpmn-icon-intermediate-event-catch-link:before{content:""}.bpmn-icon-end-event-escalation:before{content:""}.bpmn-icon-bpmn-io:before{content:""}.bpmn-icon-gateway-complex:before{content:""}.bpmn-icon-gateway-eventbased:before{content:""}.bpmn-icon-gateway-none:before{content:""}.bpmn-icon-gateway-or:before{content:""}.bpmn-icon-end-event-terminate:before{content:""}.bpmn-icon-end-event-signal:before{content:""}.bpmn-icon-end-event-none:before{content:""}.bpmn-icon-end-event-multiple:before{content:""}.bpmn-icon-end-event-message:before{content:""}.bpmn-icon-end-event-link:before{content:""}.bpmn-icon-intermediate-event-catch-message:before{content:""}.bpmn-icon-intermediate-event-throw-compensation:before{content:""}.bpmn-icon-start-event-multiple:before{content:""}.bpmn-icon-script:before{content:""}.bpmn-icon-manual-task:before{content:""}.bpmn-icon-send:before{content:""}.bpmn-icon-service:before{content:""}.bpmn-icon-receive-task:before{content:""}.bpmn-icon-user:before{content:""}.bpmn-icon-start-event-none:before{content:""}.bpmn-icon-intermediate-event-throw-escalation:before{content:""}.bpmn-icon-intermediate-event-catch-multiple:before{content:""}.bpmn-icon-intermediate-event-catch-non-interrupting-escalation:before{content:""}.bpmn-icon-intermediate-event-throw-link:before{content:""}.bpmn-icon-start-event-non-interrupting-condition:before{content:""}.bpmn-icon-data-object:before{content:""}.bpmn-icon-script-task:before{content:""}.bpmn-icon-send-task:before{content:""}.bpmn-icon-data-store:before{content:""}.bpmn-icon-start-event-non-interrupting-escalation:before{content:""}.bpmn-icon-intermediate-event-throw-message:before{content:""}.bpmn-icon-intermediate-event-catch-non-interrupting-multiple:before{content:""}.bpmn-icon-intermediate-event-catch-non-interrupting-signal:before{content:""}.bpmn-icon-intermediate-event-throw-multiple:before{content:""}.bpmn-icon-start-event-non-interrupting-message:before{content:""}.bpmn-icon-ad-hoc-marker:before{content:""}.bpmn-icon-service-task:before{content:""}.bpmn-icon-task-none:before{content:""}.bpmn-icon-compensation-marker:before{content:""}.bpmn-icon-start-event-non-interrupting-multiple:before{content:""}.bpmn-icon-intermediate-event-throw-signal:before{content:""}.bpmn-icon-intermediate-event-catch-non-interrupting-condition:before{content:""}.bpmn-icon-participant:before{content:""}.bpmn-icon-event-subprocess-expanded:before{content:""}.bpmn-icon-lane-insert-below:before{content:""}.bpmn-icon-space-tool:before{content:""}.bpmn-icon-connection-multi:before{content:""}.bpmn-icon-lane:before{content:""}.bpmn-icon-lasso-tool:before{content:""}.bpmn-icon-lane-insert-above:before{content:""}.bpmn-icon-lane-divide-three:before{content:""}.bpmn-icon-lane-divide-two:before{content:""}.bpmn-icon-data-input:before{content:""}.bpmn-icon-data-output:before{content:""}.bpmn-icon-hand-tool:before{content:""}.bpmn-icon-group:before{content:""}.bpmn-icon-text-annotation:before{content:""}.bpmn-icon-transaction:before{content:""}.bpmn-icon-screw-wrench:before{content:""}.bpmn-icon-connection:before{content:""}.bpmn-icon-conditional-flow:before{content:""}.bpmn-icon-default-flow:before{content:""}*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }/*! tailwindcss v3.4.19 | MIT License | https://tailwindcss.com
2
- */*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}body{font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-family:Inter,Inter Var,system-ui,sans-serif}.container{width:100%}@media(min-width:640px){.container{max-width:640px}}@media(min-width:768px){.container{max-width:768px}}@media(min-width:1024px){.container{max-width:1024px}}@media(min-width:1280px){.container{max-width:1280px}}@media(min-width:1536px){.container{max-width:1536px}}.bpmn-io-style .djs-palette{display:none!important}.bpmn-io-style .djs-container{background-color:transparent!important}.bjs-powered-by{display:none!important}.pointer-events-none{pointer-events:none}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.inset-0{top:0;right:0;bottom:0;left:0}.-right-4{right:-1rem}.top-0{top:0}.top-1\\/2{top:50%}.z-10{z-index:10}.z-20{z-index:20}.z-50{z-index:50}.mx-auto{margin-left:auto;margin-right:auto}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-8{margin-bottom:2rem}.mr-1{margin-right:.25rem}.mt-1{margin-top:.25rem}.mt-2{margin-top:.5rem}.mt-auto{margin-top:auto}.block{display:block}.flex{display:flex}.grid{display:grid}.contents{display:contents}.hidden{display:none}.h-14{height:3.5rem}.h-24{height:6rem}.h-3{height:.75rem}.h-5{height:1.25rem}.h-fit{height:-moz-fit-content;height:fit-content}.h-full{height:100%}.h-screen{height:100vh}.min-h-screen{min-height:100vh}.w-0{width:0px}.w-3{width:.75rem}.w-5{width:1.25rem}.w-80{width:20rem}.w-full{width:100%}.min-w-0{min-width:0px}.max-w-7xl{max-width:80rem}.flex-1{flex:1 1 0%}.-translate-y-1\\/2{--tw-translate-y: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.cursor-grab{cursor:grab}.cursor-pointer{cursor:pointer}.resize-none{resize:none}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-1{gap:.25rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-8{gap:2rem}.space-y-1>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.25rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.25rem * var(--tw-space-y-reverse))}.space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.75rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.75rem * var(--tw-space-y-reverse))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem * var(--tw-space-y-reverse))}.space-y-6>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.5rem * var(--tw-space-y-reverse))}.overflow-hidden{overflow:hidden}.overflow-y-auto{overflow-y:auto}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rounded{border-radius:.25rem}.rounded-2xl{border-radius:1rem}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.rounded-xl{border-radius:.75rem}.border{border-width:1px}.border-b{border-bottom-width:1px}.border-b-2{border-bottom-width:2px}.border-r{border-right-width:1px}.border-t{border-top-width:1px}.border-indigo-600{--tw-border-opacity: 1;border-color:rgb(79 70 229 / var(--tw-border-opacity, 1))}.border-slate-100{--tw-border-opacity: 1;border-color:rgb(241 245 249 / var(--tw-border-opacity, 1))}.border-slate-200{--tw-border-opacity: 1;border-color:rgb(226 232 240 / var(--tw-border-opacity, 1))}.border-slate-300{--tw-border-opacity: 1;border-color:rgb(203 213 225 / var(--tw-border-opacity, 1))}.border-transparent{border-color:transparent}.bg-blue-50{--tw-bg-opacity: 1;background-color:rgb(239 246 255 / var(--tw-bg-opacity, 1))}.bg-green-50{--tw-bg-opacity: 1;background-color:rgb(240 253 244 / var(--tw-bg-opacity, 1))}.bg-indigo-100{--tw-bg-opacity: 1;background-color:rgb(224 231 255 / var(--tw-bg-opacity, 1))}.bg-indigo-600{--tw-bg-opacity: 1;background-color:rgb(79 70 229 / var(--tw-bg-opacity, 1))}.bg-red-50{--tw-bg-opacity: 1;background-color:rgb(254 242 242 / var(--tw-bg-opacity, 1))}.bg-slate-100{--tw-bg-opacity: 1;background-color:rgb(241 245 249 / var(--tw-bg-opacity, 1))}.bg-slate-50{--tw-bg-opacity: 1;background-color:rgb(248 250 252 / var(--tw-bg-opacity, 1))}.bg-slate-50\\/50{background-color:#f8fafc80}.bg-white{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1))}.bg-white\\/80{background-color:#fffc}.bg-\\[radial-gradient\\(\\#e5e7eb_1px\\,transparent_1px\\)\\]{background-image:radial-gradient(#e5e7eb 1px,transparent 1px)}.p-1{padding:.25rem}.p-2{padding:.5rem}.p-3{padding:.75rem}.p-6{padding:1.5rem}.p-8{padding:2rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-4{padding-left:1rem;padding-right:1rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.px-8{padding-left:2rem;padding-right:2rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-4{padding-top:1rem;padding-bottom:1rem}.py-6{padding-top:1.5rem;padding-bottom:1.5rem}.pl-4{padding-left:1rem}.pt-6{padding-top:1.5rem}.text-center{text-align:center}.text-2xl{font-size:1.5rem;line-height:2rem}.text-\\[10px\\]{font-size:10px}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xs{font-size:.75rem;line-height:1rem}.font-bold{font-weight:700}.font-medium{font-weight:500}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.italic{font-style:italic}.tracking-tight{letter-spacing:-.025em}.tracking-tighter{letter-spacing:-.05em}.tracking-wider{letter-spacing:.05em}.tracking-widest{letter-spacing:.1em}.text-blue-600{--tw-text-opacity: 1;color:rgb(37 99 235 / var(--tw-text-opacity, 1))}.text-green-600{--tw-text-opacity: 1;color:rgb(22 163 74 / var(--tw-text-opacity, 1))}.text-indigo-400{--tw-text-opacity: 1;color:rgb(129 140 248 / var(--tw-text-opacity, 1))}.text-indigo-500{--tw-text-opacity: 1;color:rgb(99 102 241 / var(--tw-text-opacity, 1))}.text-indigo-600{--tw-text-opacity: 1;color:rgb(79 70 229 / var(--tw-text-opacity, 1))}.text-red-500{--tw-text-opacity: 1;color:rgb(239 68 68 / var(--tw-text-opacity, 1))}.text-red-600{--tw-text-opacity: 1;color:rgb(220 38 38 / var(--tw-text-opacity, 1))}.text-slate-300{--tw-text-opacity: 1;color:rgb(203 213 225 / var(--tw-text-opacity, 1))}.text-slate-400{--tw-text-opacity: 1;color:rgb(148 163 184 / var(--tw-text-opacity, 1))}.text-slate-500{--tw-text-opacity: 1;color:rgb(100 116 139 / var(--tw-text-opacity, 1))}.text-slate-600{--tw-text-opacity: 1;color:rgb(71 85 105 / var(--tw-text-opacity, 1))}.text-slate-800{--tw-text-opacity: 1;color:rgb(30 41 59 / var(--tw-text-opacity, 1))}.text-slate-900{--tw-text-opacity: 1;color:rgb(15 23 42 / var(--tw-text-opacity, 1))}.text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.opacity-0{opacity:0}.opacity-40{opacity:.4}.shadow-md{--tw-shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-sm{--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-xl{--tw-shadow: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1);--tw-shadow-colored: 0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.outline-none{outline:2px solid transparent;outline-offset:2px}.backdrop-blur-md{--tw-backdrop-blur: blur(12px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-300{transition-duration:.3s}.\\[background-size\\:24px_24px\\]{background-size:24px 24px}.hover\\:border-indigo-400:hover{--tw-border-opacity: 1;border-color:rgb(129 140 248 / var(--tw-border-opacity, 1))}.hover\\:bg-indigo-200:hover{--tw-bg-opacity: 1;background-color:rgb(199 210 254 / var(--tw-bg-opacity, 1))}.hover\\:bg-indigo-50\\/50:hover{background-color:#eef2ff80}.hover\\:bg-indigo-700:hover{--tw-bg-opacity: 1;background-color:rgb(67 56 202 / var(--tw-bg-opacity, 1))}.hover\\:bg-red-50:hover{--tw-bg-opacity: 1;background-color:rgb(254 242 242 / var(--tw-bg-opacity, 1))}.hover\\:bg-slate-200:hover{--tw-bg-opacity: 1;background-color:rgb(226 232 240 / var(--tw-bg-opacity, 1))}.hover\\:text-indigo-600:hover{--tw-text-opacity: 1;color:rgb(79 70 229 / var(--tw-text-opacity, 1))}.hover\\:text-slate-700:hover{--tw-text-opacity: 1;color:rgb(51 65 85 / var(--tw-text-opacity, 1))}.hover\\:shadow-sm:hover{--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.focus\\:ring-2:focus{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus\\:ring-indigo-500:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(99 102 241 / var(--tw-ring-opacity, 1))}.active\\:scale-95:active{--tw-scale-x: .95;--tw-scale-y: .95;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.disabled\\:bg-slate-300:disabled{--tw-bg-opacity: 1;background-color:rgb(203 213 225 / var(--tw-bg-opacity, 1))}.group:hover .group-hover\\:opacity-100{opacity:1}@media(min-width:1024px){.lg\\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}}
3
- /*$vite$:1*/`,document.head.appendChild(bn);function vr(n){return n&&n.__esModule&&Object.prototype.hasOwnProperty.call(n,"default")?n.default:n}var Je={exports:{}},Qe={};/**
1
+ (function(fe,Z){typeof exports=="object"&&typeof module<"u"?Z(exports,require("react")):typeof define=="function"&&define.amd?define(["exports","react"],Z):(fe=typeof globalThis<"u"?globalThis:fe||self,Z(fe.BPMNFlowDesigner={},fe.React))})(this,(function(fe,Z){"use strict";var Oe={exports:{}},De={};/**
4
2
  * @license React
5
3
  * react-jsx-runtime.production.js
6
4
  *
@@ -8,7 +6,7 @@
8
6
  *
9
7
  * This source code is licensed under the MIT license found in the
10
8
  * LICENSE file in the root directory of this source tree.
11
- */var Vn;function Ur(){if(Vn)return Qe;Vn=1;var n=Symbol.for("react.transitional.element"),e=Symbol.for("react.fragment");function t(A,i,o){var a=null;if(o!==void 0&&(a=""+o),i.key!==void 0&&(a=""+i.key),"key"in i){o={};for(var c in i)c!=="key"&&(o[c]=i[c])}else o=i;return i=o.ref,{$$typeof:n,type:A,key:a,ref:i!==void 0?i:null,props:o}}return Qe.Fragment=e,Qe.jsx=t,Qe.jsxs=t,Qe}var pe={};/**
9
+ */var Vt;function Ko(){if(Vt)return De;Vt=1;var o=Symbol.for("react.transitional.element"),e=Symbol.for("react.fragment");function t(n,i,l){var a=null;if(l!==void 0&&(a=""+l),i.key!==void 0&&(a=""+i.key),"key"in i){l={};for(var u in i)u!=="key"&&(l[u]=i[u])}else l=i;return i=l.ref,{$$typeof:o,type:n,key:a,ref:i!==void 0?i:null,props:l}}return De.Fragment=e,De.jsx=t,De.jsxs=t,De}var Le={};/**
12
10
  * @license React
13
11
  * react-jsx-runtime.development.js
14
12
  *
@@ -16,227 +14,199 @@
16
14
  *
17
15
  * This source code is licensed under the MIT license found in the
18
16
  * LICENSE file in the root directory of this source tree.
19
- */var Ln;function Yr(){return Ln||(Ln=1,process.env.NODE_ENV!=="production"&&(function(){function n(E){if(E==null)return null;if(typeof E=="function")return E.$$typeof===P?null:E.displayName||E.name||null;if(typeof E=="string")return E;switch(E){case R:return"Fragment";case M:return"Profiler";case S:return"StrictMode";case U:return"Suspense";case x:return"SuspenseList";case Y:return"Activity"}if(typeof E=="object")switch(typeof E.tag=="number"&&console.error("Received an unexpected object in getComponentNameFromType(). This is likely a bug in React. Please file an issue."),E.$$typeof){case F:return"Portal";case D:return E.displayName||"Context";case T:return(E._context.displayName||"Context")+".Consumer";case I:var h=E.render;return E=E.displayName,E||(E=h.displayName||h.name||"",E=E!==""?"ForwardRef("+E+")":"ForwardRef"),E;case v:return h=E.displayName||null,h!==null?h:n(E.type)||"Memo";case m:h=E._payload,E=E._init;try{return n(E(h))}catch{}}return null}function e(E){return""+E}function t(E){try{e(E);var h=!1}catch{h=!0}if(h){h=console;var p=h.error,C=typeof Symbol=="function"&&Symbol.toStringTag&&E[Symbol.toStringTag]||E.constructor.name||"Object";return p.call(h,"The provided key is an unsupported type %s. This value must be coerced to a string before using it here.",C),e(E)}}function A(E){if(E===R)return"<>";if(typeof E=="object"&&E!==null&&E.$$typeof===m)return"<...>";try{var h=n(E);return h?"<"+h+">":"<...>"}catch{return"<...>"}}function i(){var E=J.A;return E===null?null:E.getOwner()}function o(){return Error("react-stack-top-frame")}function a(E){if(H.call(E,"key")){var h=Object.getOwnPropertyDescriptor(E,"key").get;if(h&&h.isReactWarning)return!1}return E.key!==void 0}function c(E,h){function p(){l0||(l0=!0,console.error("%s: `key` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://react.dev/link/special-props)",h))}p.isReactWarning=!0,Object.defineProperty(E,"key",{get:p,configurable:!0})}function l(){var E=n(this.type);return n0[E]||(n0[E]=!0,console.error("Accessing element.ref was removed in React 19. ref is now a regular prop. It will be removed from the JSX Element type in a future release.")),E=this.props.ref,E!==void 0?E:null}function u(E,h,p,C,N,K){var e0=p.ref;return E={$$typeof:y,type:E,key:h,props:p,_owner:C},(e0!==void 0?e0:null)!==null?Object.defineProperty(E,"ref",{enumerable:!1,get:l}):Object.defineProperty(E,"ref",{enumerable:!1,value:null}),E._store={},Object.defineProperty(E._store,"validated",{configurable:!1,enumerable:!1,writable:!0,value:0}),Object.defineProperty(E,"_debugInfo",{configurable:!1,enumerable:!1,writable:!0,value:null}),Object.defineProperty(E,"_debugStack",{configurable:!1,enumerable:!1,writable:!0,value:N}),Object.defineProperty(E,"_debugTask",{configurable:!1,enumerable:!1,writable:!0,value:K}),Object.freeze&&(Object.freeze(E.props),Object.freeze(E)),E}function B(E,h,p,C,N,K){var e0=h.children;if(e0!==void 0)if(C)if(t0(e0)){for(C=0;C<e0.length;C++)d(e0[C]);Object.freeze&&Object.freeze(e0)}else console.error("React.jsx: Static children should always be an array. You are likely explicitly calling React.jsxs or React.jsxDEV. Use the Babel transform instead.");else d(e0);if(H.call(h,"key")){e0=n(E);var o0=Object.keys(h).filter(function(Q0){return Q0!=="key"});C=0<o0.length?"{key: someKey, "+o0.join(": ..., ")+": ...}":"{key: someKey}",g[e0+C]||(o0=0<o0.length?"{"+o0.join(": ..., ")+": ...}":"{}",console.error(`A props object containing a "key" prop is being spread into JSX:
17
+ */var Ft;function Xo(){return Ft||(Ft=1,process.env.NODE_ENV!=="production"&&(function(){function o(y){if(y==null)return null;if(typeof y=="function")return y.$$typeof===X?null:y.displayName||y.name||null;if(typeof y=="string")return y;switch(y){case E:return"Fragment";case _:return"Profiler";case M:return"StrictMode";case V:return"Suspense";case B:return"SuspenseList";case G:return"Activity"}if(typeof y=="object")switch(typeof y.tag=="number"&&console.error("Received an unexpected object in getComponentNameFromType(). This is likely a bug in React. Please file an issue."),y.$$typeof){case v:return"Portal";case R:return y.displayName||"Context";case A:return(y._context.displayName||"Context")+".Consumer";case k:var F=y.render;return y=y.displayName,y||(y=F.displayName||F.name||"",y=y!==""?"ForwardRef("+y+")":"ForwardRef"),y;case J:return F=y.displayName||null,F!==null?F:o(y.type)||"Memo";case D:F=y._payload,y=y._init;try{return o(y(F))}catch{}}return null}function e(y){return""+y}function t(y){try{e(y);var F=!1}catch{F=!0}if(F){F=console;var O=F.error,W=typeof Symbol=="function"&&Symbol.toStringTag&&y[Symbol.toStringTag]||y.constructor.name||"Object";return O.call(F,"The provided key is an unsupported type %s. This value must be coerced to a string before using it here.",W),e(y)}}function n(y){if(y===E)return"<>";if(typeof y=="object"&&y!==null&&y.$$typeof===D)return"<...>";try{var F=o(y);return F?"<"+F+">":"<...>"}catch{return"<...>"}}function i(){var y=Ne.A;return y===null?null:y.getOwner()}function l(){return Error("react-stack-top-frame")}function a(y){if($e.call(y,"key")){var F=Object.getOwnPropertyDescriptor(y,"key").get;if(F&&F.isReactWarning)return!1}return y.key!==void 0}function u(y,F){function O(){Jo||(Jo=!0,console.error("%s: `key` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://react.dev/link/special-props)",F))}O.isReactWarning=!0,Object.defineProperty(y,"key",{get:O,configurable:!0})}function d(){var y=o(this.type);return Wo[y]||(Wo[y]=!0,console.error("Accessing element.ref was removed in React 19. ref is now a regular prop. It will be removed from the JSX Element type in a future release.")),y=this.props.ref,y!==void 0?y:null}function c(y,F,O,W,lt,Dt){var Y=O.ref;return y={$$typeof:g,type:y,key:F,props:O,_owner:W},(Y!==void 0?Y:null)!==null?Object.defineProperty(y,"ref",{enumerable:!1,get:d}):Object.defineProperty(y,"ref",{enumerable:!1,value:null}),y._store={},Object.defineProperty(y._store,"validated",{configurable:!1,enumerable:!1,writable:!0,value:0}),Object.defineProperty(y,"_debugInfo",{configurable:!1,enumerable:!1,writable:!0,value:null}),Object.defineProperty(y,"_debugStack",{configurable:!1,enumerable:!1,writable:!0,value:lt}),Object.defineProperty(y,"_debugTask",{configurable:!1,enumerable:!1,writable:!0,value:Dt}),Object.freeze&&(Object.freeze(y.props),Object.freeze(y)),y}function f(y,F,O,W,lt,Dt){var Y=F.children;if(Y!==void 0)if(W)if(ne(Y)){for(W=0;W<Y.length;W++)p(Y[W]);Object.freeze&&Object.freeze(Y)}else console.error("React.jsx: Static children should always be an array. You are likely explicitly calling React.jsxs or React.jsxDEV. Use the Babel transform instead.");else p(Y);if($e.call(F,"key")){Y=o(y);var ke=Object.keys(F).filter(function(Hf){return Hf!=="key"});W=0<ke.length?"{key: someKey, "+ke.join(": ..., ")+": ...}":"{key: someKey}",zo[Y+W]||(ke=0<ke.length?"{"+ke.join(": ..., ")+": ...}":"{}",console.error(`A props object containing a "key" prop is being spread into JSX:
20
18
  let props = %s;
21
19
  <%s {...props} />
22
20
  React keys must be passed directly to JSX without using spread:
23
21
  let props = %s;
24
- <%s key={someKey} {...props} />`,C,e0,o0,e0),g[e0+C]=!0)}if(e0=null,p!==void 0&&(t(p),e0=""+p),a(h)&&(t(h.key),e0=""+h.key),"key"in h){p={};for(var D0 in h)D0!=="key"&&(p[D0]=h[D0])}else p=h;return e0&&c(p,typeof E=="function"?E.displayName||E.name||"Unknown":E),u(E,e0,p,i(),N,K)}function d(E){f(E)?E._store&&(E._store.validated=1):typeof E=="object"&&E!==null&&E.$$typeof===m&&(E._payload.status==="fulfilled"?f(E._payload.value)&&E._payload.value._store&&(E._payload.value._store.validated=1):E._store&&(E._store.validated=1))}function f(E){return typeof E=="object"&&E!==null&&E.$$typeof===y}var w=M0,y=Symbol.for("react.transitional.element"),F=Symbol.for("react.portal"),R=Symbol.for("react.fragment"),S=Symbol.for("react.strict_mode"),M=Symbol.for("react.profiler"),T=Symbol.for("react.consumer"),D=Symbol.for("react.context"),I=Symbol.for("react.forward_ref"),U=Symbol.for("react.suspense"),x=Symbol.for("react.suspense_list"),v=Symbol.for("react.memo"),m=Symbol.for("react.lazy"),Y=Symbol.for("react.activity"),P=Symbol.for("react.client.reference"),J=w.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,H=Object.prototype.hasOwnProperty,t0=Array.isArray,S0=console.createTask?console.createTask:function(){return null};w={react_stack_bottom_frame:function(E){return E()}};var l0,n0={},V0=w.react_stack_bottom_frame.bind(w,o)(),Q=S0(A(o)),g={};pe.Fragment=R,pe.jsx=function(E,h,p){var C=1e4>J.recentlyCreatedOwnerStacks++;return B(E,h,p,!1,C?Error("react-stack-top-frame"):V0,C?S0(A(E)):Q)},pe.jsxs=function(E,h,p){var C=1e4>J.recentlyCreatedOwnerStacks++;return B(E,h,p,!0,C?Error("react-stack-top-frame"):V0,C?S0(A(E)):Q)}})()),pe}var Wn;function Tr(){return Wn||(Wn=1,process.env.NODE_ENV==="production"?Je.exports=Ur():Je.exports=Yr()),Je.exports}var G=Tr();function e2(n,e){e&&(n.super_=e,n.prototype=Object.create(e.prototype,{constructor:{value:n,enumerable:!1,writable:!0,configurable:!0}}))}const he=Object.prototype.toString,Nr=Object.prototype.hasOwnProperty;function Nt(n){return n===void 0}function W2(n){return n!==void 0}function jn(n){return n==null}function X0(n){return he.call(n)==="[object Array]"}function T2(n){return he.call(n)==="[object Object]"}function f2(n){return he.call(n)==="[object Number]"}function Q2(n){const e=he.call(n);return e==="[object Function]"||e==="[object AsyncFunction]"||e==="[object GeneratorFunction]"||e==="[object AsyncGeneratorFunction]"||e==="[object Proxy]"}function t2(n){return he.call(n)==="[object String]"}function He(n,e){return!jn(n)&&Nr.call(n,e)}function O0(n,e){const t=Rt(e);let A;return V(n,function(i,o){if(t(i,o))return A=i,!1}),A}function Rr(n,e){const t=Rt(e);let A=X0(n)?-1:void 0;return V(n,function(i,o){if(t(i,o))return A=o,!1}),A}function j2(n,e){const t=Rt(e);let A=[];return V(n,function(i,o){t(i,o)&&A.push(i)}),A}function V(n,e){let t,A;if(Nt(n))return;const i=X0(n)?Gr:Sr;for(let o in n)if(He(n,o)&&(t=n[o],A=e(t,i(o)),A===!1))return t}function _2(n,e,t){return V(n,function(A,i){t=e(t,A,i)}),t}function _n(n,e){return!!_2(n,function(t,A,i){return t&&e(A,i)},!0)}function Xn(n,e){return!!O0(n,e)}function zr(n,e){let t=[];return V(n,function(A,i){t.push(e(A,i))}),t}function On(n){return function(e){return _n(n,function(t,A){return e[A]===t})}}function Rt(n){return Q2(n)?n:e=>e===n}function Sr(n){return n}function Gr(n){return Number(n)}function kr(n,e){let t,A,i,o;function a(d){let f=Date.now(),w=d?0:o+e-f;if(w>0)return c(w);n.apply(i,A),l()}function c(d){t=setTimeout(a,d)}function l(){t&&clearTimeout(t),t=o=A=i=void 0}function u(){t&&a(!0),l()}function B(...d){o=Date.now(),A=d,i=this,t||c(e)}return B.flush=u,B.cancel=l,B}function p2(n,e){return n.bind(e)}function _(n,...e){return Object.assign(n,...e)}function Pr(n,e,t){let A=n;return V(e,function(i,o){if(typeof i!="number"&&typeof i!="string")throw new Error("illegal key type: "+typeof i+". Key should be of type number or string.");if(i==="constructor")throw new Error("illegal key: constructor");if(i==="__proto__")throw new Error("illegal key: __proto__");let a=e[o+1],c=A[i];W2(a)&&jn(c)&&(c=A[i]=isNaN(+a)?{}:[]),Nt(a)?Nt(t)?delete A[i]:A[i]=t:A=c}),n}function Jr(n,e){let t={},A=Object(n);return V(e,function(i){i in A&&(t[i]=n[i])}),t}function Hr(n,e){let t={},A=Object(n);return V(A,function(i,o){e.indexOf(o)===-1&&(t[o]=i)}),t}var br=1e3;function c2(n,e){var t=this;e=e||br,n.on(["render.shape","render.connection"],e,function(A,i){var o=A.type,a=i.element,c=i.gfx,l=i.attrs;if(t.canRender(a))return o==="render.shape"?t.drawShape(c,a,l):t.drawConnection(c,a,l)}),n.on(["render.getShapePath","render.getConnectionPath"],e,function(A,i){if(t.canRender(i))return A.type==="render.getShapePath"?t.getShapePath(i):t.getConnectionPath(i)})}c2.prototype.canRender=function(n){},c2.prototype.drawShape=function(n,e){},c2.prototype.drawConnection=function(n,e){},c2.prototype.getShapePath=function(n){},c2.prototype.getConnectionPath=function(n){};function X(n,e){var t=p0(n);return t&&typeof t.$instanceOf=="function"&&t.$instanceOf(e)}function Vr(n,e){return Xn(e,function(t){return X(n,t)})}function p0(n){return n&&n.businessObject||n}function X2(n){return n&&n.di}function zt(n,e){return X(n,"bpmn:CallActivity")?!1:X(n,"bpmn:SubProcess")?(e=e||X2(n),e&&X(e,"bpmndi:BPMNPlane")?!0:e&&!!e.isExpanded):X(n,"bpmn:Participant")?!!p0(n).processRef:!0}function Lr(n){return n&&!!p0(n).triggeredByEvent}function Wr(n){return T2(n)&&He(n,"waypoints")}var be={width:90,height:20},Kn=15;function jr(n){return X(n,"bpmn:Event")||X(n,"bpmn:Gateway")||X(n,"bpmn:DataStoreReference")||X(n,"bpmn:DataObjectReference")||X(n,"bpmn:DataInput")||X(n,"bpmn:DataOutput")||X(n,"bpmn:SequenceFlow")||X(n,"bpmn:MessageFlow")||X(n,"bpmn:Group")}function _r(n){var e=n.length/2-1,t=n[Math.floor(e)],A=n[Math.ceil(e+.01)],i=Xr(n),o=Math.atan((A.y-t.y)/(A.x-t.x)),a=i.x,c=i.y;return Math.abs(o)<Math.PI/2?c-=Kn:a+=Kn,{x:a,y:c}}function Xr(n){var e=n.length/2-1,t=n[Math.floor(e)],A=n[Math.ceil(e+.01)];return{x:t.x+(A.x-t.x)/2,y:t.y+(A.y-t.y)/2}}function Or(n){return n.waypoints?_r(n.waypoints):X(n,"bpmn:Group")?{x:n.x+n.width/2,y:n.y+be.height/2}:{x:n.x+n.width/2,y:n.y+n.height+be.height/2}}function Kr(n,e){var t,A,i,o=n.label;return o&&o.bounds?(i=o.bounds,A={width:Math.max(be.width,i.width),height:i.height},t={x:i.x+i.width/2,y:i.y+i.height/2}):(t=Or(e),A=be),_({x:t.x-A.width/2,y:t.y-A.height/2},A)}function Zr(n){if(X(n,"bpmn:FlowElement")||X(n,"bpmn:Participant")||X(n,"bpmn:Lane")||X(n,"bpmn:SequenceFlow")||X(n,"bpmn:MessageFlow")||X(n,"bpmn:DataInput")||X(n,"bpmn:DataOutput"))return"name";if(X(n,"bpmn:TextAnnotation"))return"text";if(X(n,"bpmn:Group"))return"categoryValueRef"}function qr(n){var e=n.categoryValueRef;return e&&e.value||""}function Ve(n){var e=n.businessObject,t=Zr(e);if(t)return t==="categoryValueRef"?qr(e):e[t]||""}function $r(n,e){if(n.ownerDocument!==e.ownerDocument)try{return e.ownerDocument.importNode(n,!0)}catch{}return n}function es(n,e){return e.appendChild($r(n,e))}function h0(n,e){return es(e,n),n}var St=2,Zn={"alignment-baseline":1,"baseline-shift":1,clip:1,"clip-path":1,"clip-rule":1,color:1,"color-interpolation":1,"color-interpolation-filters":1,"color-profile":1,"color-rendering":1,cursor:1,direction:1,display:1,"dominant-baseline":1,"enable-background":1,fill:1,"fill-opacity":1,"fill-rule":1,filter:1,"flood-color":1,"flood-opacity":1,font:1,"font-family":1,"font-size":St,"font-size-adjust":1,"font-stretch":1,"font-style":1,"font-variant":1,"font-weight":1,"glyph-orientation-horizontal":1,"glyph-orientation-vertical":1,"image-rendering":1,kerning:1,"letter-spacing":1,"lighting-color":1,marker:1,"marker-end":1,"marker-mid":1,"marker-start":1,mask:1,opacity:1,overflow:1,"pointer-events":1,"shape-rendering":1,"stop-color":1,"stop-opacity":1,stroke:1,"stroke-dasharray":1,"stroke-dashoffset":1,"stroke-linecap":1,"stroke-linejoin":1,"stroke-miterlimit":1,"stroke-opacity":1,"stroke-width":St,"text-anchor":1,"text-decoration":1,"text-rendering":1,"unicode-bidi":1,visibility:1,"word-spacing":1,"writing-mode":1};function ts(n,e){return Zn[e]?n.style[e]:n.getAttributeNS(null,e)}function qn(n,e,t){var A=e.replace(/([a-z])([A-Z])/g,"$1-$2").toLowerCase(),i=Zn[A];i?(i===St&&typeof t=="number"&&(t=String(t)+"px"),n.style[A]=t):n.setAttributeNS(null,e,t)}function ns(n,e){var t=Object.keys(e),A,i;for(A=0,i;i=t[A];A++)qn(n,i,e[i])}function a0(n,e,t){if(typeof e=="string")if(t!==void 0)qn(n,e,t);else return ts(n,e);else ns(n,e);return n}const As=Object.prototype.toString;function P0(n){return new h2(n)}function h2(n){if(!n||!n.nodeType)throw new Error("A DOM element reference is required");this.el=n,this.list=n.classList}h2.prototype.add=function(n){return this.list.add(n),this},h2.prototype.remove=function(n){return As.call(n)=="[object RegExp]"?this.removeMatching(n):(this.list.remove(n),this)},h2.prototype.removeMatching=function(n){const e=this.array();for(let t=0;t<e.length;t++)n.test(e[t])&&this.remove(e[t]);return this},h2.prototype.toggle=function(n,e){return typeof e<"u"?e!==this.list.toggle(n,e)&&this.list.toggle(n):this.list.toggle(n),this},h2.prototype.array=function(){return Array.from(this.list)},h2.prototype.has=h2.prototype.contains=function(n){return this.list.contains(n)};function is(n){for(var e;e=n.firstChild;)n.removeChild(e);return n}var Gt={svg:"http://www.w3.org/2000/svg"},$n='<svg xmlns="'+Gt.svg+'"';function os(n){var e=!1;n.substring(0,4)==="<svg"?n.indexOf(Gt.svg)===-1&&(n=$n+n.substring(4)):(n=$n+">"+n+"</svg>",e=!0);var t=rs(n);if(!e)return t;for(var A=document.createDocumentFragment(),i=t.firstChild;i.firstChild;)A.appendChild(i.firstChild);return A}function rs(n){var e;return e=new DOMParser,e.async=!1,e.parseFromString(n,"text/xml")}function B0(n,e){var t;return n=n.trim(),n.charAt(0)==="<"?(t=os(n).firstChild,t=document.importNode(t,!0)):t=document.createElementNS(Gt.svg,n),e&&a0(t,e),t}var kt=null;function eA(){return kt===null&&(kt=B0("svg")),kt}function tA(n,e){var t,A,i=Object.keys(e);for(t=0;A=i[t];t++)n[A]=e[A];return n}function ss(n,e,t,A,i,o){var a=eA().createSVGMatrix();switch(arguments.length){case 0:return a;case 1:return tA(a,n);case 6:return tA(a,{a:n,b:e,c:t,d:A,e:i,f:o})}}function we(n){return eA().createSVGTransform()}var nA=/([&<>]{1})/g,as=/([&<>\n\r"]{1})/g,cs={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"'"};function Pt(n,e){function t(A,i){return cs[i]||i}return n.replace(e,t)}function AA(n,e){var t,A,i,o,a;switch(n.nodeType){case 3:e.push(Pt(n.textContent,nA));break;case 1:if(e.push("<",n.tagName),n.hasAttributes())for(i=n.attributes,t=0,A=i.length;t<A;++t)o=i.item(t),e.push(" ",o.name,'="',Pt(o.value,as),'"');if(n.hasChildNodes()){for(e.push(">"),a=n.childNodes,t=0,A=a.length;t<A;++t)AA(a.item(t),e);e.push("</",n.tagName,">")}else e.push("/>");break;case 8:e.push("<!--",Pt(n.nodeValue,nA),"-->");break;case 4:e.push("<![CDATA[",n.nodeValue,"]]>");break;default:throw new Error("unable to handle node "+n.nodeType)}return e}function ls(n){for(var e=n.firstChild,t=[];e;)AA(e,t),e=e.nextSibling;return t.join("")}function iA(n,e){return ls(n)}function me(n){var e=n.parentNode;return e&&e.removeChild(n),n}function us(n,e){return e instanceof SVGMatrix?n.createSVGTransformFromMatrix(e):e}function Bs(n,e){var t,A;for(n.clear(),t=0;A=e[t];t++)n.appendItem(us(n,A))}function Ce(n,e){var t=n.transform.baseVal;return e&&(Array.isArray(e)||(e=[e]),Bs(t,e)),t.consolidate()}function N2(n){return n.flat().join(",").replace(/,?([A-z]),?/g,"$1")}function gs(n){return["M",n.x,n.y]}function Jt(n){return["L",n.x,n.y]}function ds(n,e,t){return["C",n.x,n.y,e.x,e.y,t.x,t.y]}function Es(n,e){const t=n.length,A=[gs(n[0])];for(let i=1;i<t;i++){const o=n[i-1],a=n[i],c=n[i+1];if(!c||!e){A.push(Jt(a));continue}const l=Math.min(e,Ht(a.x-o.x,a.y-o.y),Ht(c.x-a.x,c.y-a.y));if(!l){A.push(Jt(a));continue}const u=Le(a,o,l),B=Le(a,o,l*.5),d=Le(a,c,l),f=Le(a,c,l*.5);A.push(Jt(u)),A.push(ds(B,f,d))}return A}function Le(n,e,t){const A=e.x-n.x,i=e.y-n.y,o=Ht(A,i),a=t/o;return{x:n.x+A*a,y:n.y+i*a}}function Ht(n,e){return Math.sqrt(Math.pow(n,2)+Math.pow(e,2))}function bt(n,e,t){f2(e)&&(t=e,e=null),e||(e={});const A=B0("path",e);return f2(t)&&(A.dataset.cornerRadius=String(t)),oA(A,n)}function oA(n,e){const t=parseInt(n.dataset.cornerRadius,10)||0;return a0(n,{d:N2(Es(e,t))}),n}var Me="hsl(225, 10%, 15%)";function n2(n,e){return Xn(n.eventDefinitions,function(t){return t.$type===e})}function fs(n){return n.$type==="bpmn:IntermediateThrowEvent"||n.$type==="bpmn:EndEvent"}function Qs(n){var e=n.dataObjectRef;return n.isCollection||e&&e.isCollection}function i0(n,e){var t=X2(n);return t.get("color:background-color")||t.get("bioc:fill")||e||"white"}function k(n,e){var t=X2(n);return t.get("color:border-color")||t.get("bioc:stroke")||e||Me}function ye(n,e,t){var A=X2(n),i=A.get("label");return i&&i.get("color:color")||e||k(n,t)}function ps(n){var e=n.x+n.width/2,t=n.y+n.height/2,A=n.width/2,i=[["M",e,t],["m",0,-A],["a",A,A,0,1,1,0,2*A],["a",A,A,0,1,1,0,-2*A],["z"]];return N2(i)}function hs(n,e){var t=n.x,A=n.y,i=n.width,o=n.height,a=[["M",t+e,A],["l",i-e*2,0],["a",e,e,0,0,1,e,e],["l",0,o-e*2],["a",e,e,0,0,1,-e,e],["l",e*2-i,0],["a",e,e,0,0,1,-e,-e],["l",0,e*2-o],["a",e,e,0,0,1,e,-e],["z"]];return N2(a)}function ws(n){var e=n.width,t=n.height,A=n.x,i=n.y,o=e/2,a=t/2,c=[["M",A+o,i],["l",o,a],["l",-o,a],["l",-o,-a],["z"]];return N2(c)}function ms(n){var e=n.x,t=n.y,A=n.width,i=n.height,o=[["M",e,t],["l",A,0],["l",0,i],["l",-A,0],["z"]];return N2(o)}function Cs(n,e){return e.forEach(function(t){t&&typeof t!="string"&&!Array.isArray(t)&&Object.keys(t).forEach(function(A){if(A!=="default"&&!(A in n)){var i=Object.getOwnPropertyDescriptor(t,A);Object.defineProperty(n,A,i.get?i:{enumerable:!0,get:function(){return t[A]}})}})}),Object.freeze(n)}const Ms=Object.prototype.toString,ys=Object.prototype.hasOwnProperty;function Is(n){return n===void 0}function Ds(n){return Ms.call(n)==="[object Array]"}function Fs(n,e){return ys.call(n,e)}function rA(n,e){let t,A;if(Is(n))return;const i=Ds(n)?vs:xs;for(let o in n)if(Fs(n,o)&&(t=n[o],A=e(t,i(o)),A===!1))return t}function xs(n){return n}function vs(n){return Number(n)}function G0(n,...e){const t=n.style;return rA(e,function(A){A&&rA(A,function(i,o){t[o]=i})}),n}function Us(n,e,t){return arguments.length==2?n.getAttribute(e):t===null?n.removeAttribute(e):(n.setAttribute(e,t),n)}const Ys=Object.prototype.toString;function We(n){return new w2(n)}function w2(n){if(!n||!n.nodeType)throw new Error("A DOM element reference is required");this.el=n,this.list=n.classList}w2.prototype.add=function(n){return this.list.add(n),this},w2.prototype.remove=function(n){return Ys.call(n)=="[object RegExp]"?this.removeMatching(n):(this.list.remove(n),this)},w2.prototype.removeMatching=function(n){const e=this.array();for(let t=0;t<e.length;t++)n.test(e[t])&&this.remove(e[t]);return this},w2.prototype.toggle=function(n,e){return typeof e<"u"?e!==this.list.toggle(n,e)&&this.list.toggle(n):this.list.toggle(n),this},w2.prototype.array=function(){return Array.from(this.list)},w2.prototype.has=w2.prototype.contains=function(n){return this.list.contains(n)};function sA(n){for(var e;e=n.firstChild;)n.removeChild(e);return n}function Ts(n,e,t){var A=t?n:n.parentNode;return A&&typeof A.closest=="function"&&A.closest(e)||null}var je={},_e,Vt,Lt;function aA(){_e=window.addEventListener?"addEventListener":"attachEvent",Vt=window.removeEventListener?"removeEventListener":"detachEvent",Lt=_e!=="addEventListener"?"on":""}var Ns=je.bind=function(n,e,t,A){return _e||aA(),n[_e](Lt+e,t,A||!1),t},Rs=je.unbind=function(n,e,t,A){return Vt||aA(),n[Vt](Lt+e,t,A||!1),t},Wt=Cs({__proto__:null,bind:Ns,unbind:Rs,default:je},[je]),cA=["focus","blur"];function zs(n,e,t,A,i){return cA.indexOf(t)!==-1&&(i=!0),Wt.bind(n,t,function(o){var a=o.target||o.srcElement;o.delegateTarget=Ts(a,e,!0),o.delegateTarget&&A.call(n,o)},i)}function Ss(n,e,t,A){return cA.indexOf(e)!==-1&&(A=!0),Wt.unbind(n,e,t,A)}var jt={bind:zs,unbind:Ss},Gs=ks,lA=!1,Xe;typeof document<"u"&&(Xe=document.createElement("div"),Xe.innerHTML=' <link/><table></table><a href="/a">a</a><input type="checkbox"/>',lA=!Xe.getElementsByTagName("link").length,Xe=void 0);var m0={legend:[1,"<fieldset>","</fieldset>"],tr:[2,"<table><tbody>","</tbody></table>"],col:[2,"<table><tbody></tbody><colgroup>","</colgroup></table>"],_default:lA?[1,"X<div>","</div>"]:[0,"",""]};m0.td=m0.th=[3,"<table><tbody><tr>","</tr></tbody></table>"],m0.option=m0.optgroup=[1,'<select multiple="multiple">',"</select>"],m0.thead=m0.tbody=m0.colgroup=m0.caption=m0.tfoot=[1,"<table>","</table>"],m0.polyline=m0.ellipse=m0.polygon=m0.circle=m0.text=m0.line=m0.path=m0.rect=m0.g=[1,'<svg xmlns="http://www.w3.org/2000/svg" version="1.1">',"</svg>"];function ks(n,e){if(typeof n!="string")throw new TypeError("String expected");e||(e=document);var t=/<([\w:]+)/.exec(n);if(!t)return e.createTextNode(n);n=n.replace(/^\s+|\s+$/g,"");var A=t[1];if(A=="body"){var l=e.createElement("html");return l.innerHTML=n,l.removeChild(l.lastChild)}var i=Object.prototype.hasOwnProperty.call(m0,A)?m0[A]:m0._default,o=i[0],a=i[1],c=i[2],l=e.createElement("div");for(l.innerHTML=a+n+c;o--;)l=l.lastChild;if(l.firstChild==l.lastChild)return l.removeChild(l.firstChild);for(var u=e.createDocumentFragment();l.firstChild;)u.appendChild(l.removeChild(l.firstChild));return u}var A2=Gs;function K0(n,e){return e=e||document,e.querySelector(n)}function Ps(n,e){return e=e||document,e.querySelectorAll(n)}function Oe(n){n.parentNode&&n.parentNode.removeChild(n)}function uA(n,e,t,A,i){var o=we();o.setTranslate(e,t);var a=we();a.setRotate(A||0,0,0);var c=we();c.setScale(1,1),Ce(n,[o,a,c])}function BA(n,e,t){var A=we();A.setTranslate(e,t),Ce(n,A)}function Js(n,e){var t=we();t.setRotate(e,0,0),Ce(n,t)}function Hs(n,e){return e={exports:{}},n(e,e.exports),e.exports}var bs=Hs(function(n){var e=n.exports=function(t,A){if(A||(A=16),t===void 0&&(t=128),t<=0)return"0";for(var i=Math.log(Math.pow(2,t))/Math.log(A),o=2;i===1/0;o*=2)i=Math.log(Math.pow(2,t/o))/Math.log(A)*o;for(var a=i-Math.floor(i),c="",o=0;o<Math.floor(i);o++){var l=Math.floor(Math.random()*A).toString(A);c=l+c}if(a){var u=Math.pow(A,a),l=Math.floor(Math.random()*u).toString(A);c=l+c}var B=parseInt(c,A);return B!==1/0&&B>=Math.pow(2,t)?e(t,A):c};e.rack=function(t,A,i){var o=function(c){var l=0;do{if(l++>10)if(i)t+=i;else throw new Error("too many ID collisions, use more bits");var u=e(t,A)}while(Object.hasOwnProperty.call(a,u));return a[u]=c,u},a=o.hats={};return o.get=function(c){return o.hats[c]},o.set=function(c,l){return o.hats[c]=l,o},o.bits=t||128,o.base=A||16,o}});function l2(n){if(!(this instanceof l2))return new l2(n);n=n||[128,36,1],this._seed=n.length?bs.rack(n[0],n[1],n[2]):n}l2.prototype.next=function(n){return this._seed(n||!0)},l2.prototype.nextPrefixed=function(n,e){var t;do t=n+this.next(!0);while(this.assigned(t));return this.claim(t,e),t},l2.prototype.claim=function(n,e){this._seed.set(n,e||!0)},l2.prototype.assigned=function(n){return this._seed.get(n)||!1},l2.prototype.unclaim=function(n){delete this._seed.hats[n]},l2.prototype.clear=function(){var n=this._seed.hats,e;for(e in n)this.unclaim(e)};var Vs=new l2,Ke=10,_t=3,O2=.95,Ls=.35,Ws=10;function R2(n,e,t,A,i,o,a){c2.call(this,e,a);var c=n&&n.defaultFillColor,l=n&&n.defaultStrokeColor,u=n&&n.defaultLabelColor,B=Vs.next(),d={};function f(Q){return t.computeStyle(Q,{strokeLinecap:"round",strokeLinejoin:"round",stroke:Me,strokeWidth:2,fill:"white"})}function w(Q){return t.computeStyle(Q,["no-fill"],{strokeLinecap:"round",strokeLinejoin:"round",stroke:Me,strokeWidth:2})}function y(Q,g){var{ref:E={x:0,y:0},scale:h=1,element:p}=g,C=B0("marker",{id:Q,viewBox:"0 0 20 20",refX:E.x,refY:E.y,markerWidth:20*h,markerHeight:20*h,orient:"auto"});h0(C,p);var N=K0("defs",i._svg);N||(N=B0("defs"),h0(i._svg,N)),h0(N,C),d[Q]=C}function F(Q){return Q.replace(/[^0-9a-zA-Z]+/g,"_")}function R(Q,g,E){var h=Q+"-"+F(g)+"-"+F(E)+"-"+B;return d[h]||S(h,Q,g,E),"url(#"+h+")"}function S(Q,g,E,h){if(g==="sequenceflow-end"){var p=B0("path",{d:"M 1 5 L 11 10 L 1 15 Z",...f({fill:h,stroke:h,strokeWidth:1})});y(Q,{element:p,ref:{x:11,y:10},scale:.5})}if(g==="messageflow-start"){var C=B0("circle",{cx:6,cy:6,r:3.5,...f({fill:E,stroke:h,strokeWidth:1,strokeDasharray:[1e4,1]})});y(Q,{element:C,ref:{x:6,y:6}})}if(g==="messageflow-end"){var N=B0("path",{d:"m 1 5 l 0 -3 l 7 3 l -7 3 z",...f({fill:E,stroke:h,strokeWidth:1,strokeDasharray:[1e4,1]})});y(Q,{element:N,ref:{x:8.5,y:5}})}if(g==="association-start"){var K=B0("path",{d:"M 11 5 L 1 10 L 11 15",...w({fill:"none",stroke:h,strokeWidth:1.5,strokeDasharray:[1e4,1]})});y(Q,{element:K,ref:{x:1,y:10},scale:.5})}if(g==="association-end"){var e0=B0("path",{d:"M 1 5 L 11 10 L 1 15",...w({fill:"none",stroke:h,strokeWidth:1.5,strokeDasharray:[1e4,1]})});y(Q,{element:e0,ref:{x:11,y:10},scale:.5})}if(g==="conditional-flow-marker"){var o0=B0("path",{d:"M 0 10 L 8 6 L 16 10 L 8 14 Z",...f({fill:E,stroke:h})});y(Q,{element:o0,ref:{x:-1,y:10},scale:.5})}if(g==="conditional-default-flow-marker"){var D0=B0("path",{d:"M 6 4 L 10 16",...f({stroke:h})});y(Q,{element:D0,ref:{x:0,y:10},scale:.5})}}function M(Q,g,E,h,p){T2(h)&&(p=h,h=0),h=h||0,p=f(p),p.fill==="none"&&delete p.fillOpacity;var C=g/2,N=E/2,K=B0("circle",{cx:C,cy:N,r:Math.round((g+E)/4-h),...p});return h0(Q,K),K}function T(Q,g,E,h,p,C){T2(p)&&(C=p,p=0),p=p||0,C=f(C);var N=B0("rect",{x:p,y:p,width:g-p*2,height:E-p*2,rx:h,ry:h,...C});return h0(Q,N),N}function D(Q,g,E,h){var p=g/2,C=E/2,N=[{x:p,y:0},{x:g,y:C},{x:p,y:E},{x:0,y:C}],K=N.map(function(o0){return o0.x+","+o0.y}).join(" ");h=f(h);var e0=B0("polygon",{...h,points:K});return h0(Q,e0),e0}function I(Q,g,E,h){E=w(E);var p=bt(g,E,h);return h0(Q,p),p}function U(Q,g,E){return I(Q,g,E,5)}function x(Q,g,E){E=w(E);var h=B0("path",{...E,d:g});return h0(Q,h),h}function v(Q,g,E,h){return x(g,E,_({"data-marker":Q},h))}function m(Q){return l0[Q]}function Y(Q){return function(g,E,h){return m(Q)(g,E,h)}}function P(Q,g){var E=p0(Q),h=fs(E);return E.eventDefinitions&&E.eventDefinitions.length>1?E.parallelMultiple?m("bpmn:ParallelMultipleEventDefinition")(g,Q,h):m("bpmn:MultipleEventDefinition")(g,Q,h):n2(E,"bpmn:MessageEventDefinition")?m("bpmn:MessageEventDefinition")(g,Q,h):n2(E,"bpmn:TimerEventDefinition")?m("bpmn:TimerEventDefinition")(g,Q,h):n2(E,"bpmn:ConditionalEventDefinition")?m("bpmn:ConditionalEventDefinition")(g,Q):n2(E,"bpmn:SignalEventDefinition")?m("bpmn:SignalEventDefinition")(g,Q,h):n2(E,"bpmn:EscalationEventDefinition")?m("bpmn:EscalationEventDefinition")(g,Q,h):n2(E,"bpmn:LinkEventDefinition")?m("bpmn:LinkEventDefinition")(g,Q,h):n2(E,"bpmn:ErrorEventDefinition")?m("bpmn:ErrorEventDefinition")(g,Q,h):n2(E,"bpmn:CancelEventDefinition")?m("bpmn:CancelEventDefinition")(g,Q,h):n2(E,"bpmn:CompensateEventDefinition")?m("bpmn:CompensateEventDefinition")(g,Q,h):n2(E,"bpmn:TerminateEventDefinition")?m("bpmn:TerminateEventDefinition")(g,Q,h):null}function J(Q,g,E){E=_({size:{width:100}},E);var h=o.createText(g||"",E);return P0(h).add("djs-label"),h0(Q,h),h}function H(Q,g,E){var h=p0(g);return J(Q,h.name,{box:g,align:E,padding:7,style:{fill:ye(g,u,l)}})}function t0(Q,g){var E={width:90,height:30,x:g.width/2+g.x,y:g.height/2+g.y};return J(Q,Ve(g),{box:E,fitBox:!0,style:_({},o.getExternalStyle(),{fill:ye(g,u,l)})})}function S0(Q,g,E){var h=J(Q,g,{box:{height:30,width:E.height},align:"center-middle",style:{fill:ye(E,u,l)}}),p=-1*E.height;uA(h,0,-p,270)}var l0=this.handlers={"bpmn:Event":function(Q,g,E){return"fillOpacity"in E||(E.fillOpacity=O2),M(Q,g.width,g.height,E)},"bpmn:StartEvent":function(Q,g,E){var h={fill:i0(g,c),stroke:k(g,l)},p=p0(g);p.isInterrupting||(h={strokeDasharray:"6",fill:i0(g,c),stroke:k(g,l)});var C=m("bpmn:Event")(Q,g,h);return(!E||E.renderIcon!==!1)&&P(g,Q),C},"bpmn:MessageEventDefinition":function(Q,g,E){var h=A.getScaledPath("EVENT_MESSAGE",{xScaleFactor:.9,yScaleFactor:.9,containerWidth:g.width,containerHeight:g.height,position:{mx:.235,my:.315}}),p=E?k(g,l):i0(g,c),C=E?i0(g,c):k(g,l),N=x(Q,h,{strokeWidth:1,fill:p,stroke:C});return N},"bpmn:TimerEventDefinition":function(Q,g){var E=M(Q,g.width,g.height,.2*g.height,{strokeWidth:2,fill:i0(g,c),stroke:k(g,l)}),h=A.getScaledPath("EVENT_TIMER_WH",{xScaleFactor:.75,yScaleFactor:.75,containerWidth:g.width,containerHeight:g.height,position:{mx:.5,my:.5}});x(Q,h,{strokeWidth:2,stroke:k(g,l)});for(var p=0;p<12;p++){var C=A.getScaledPath("EVENT_TIMER_LINE",{xScaleFactor:.75,yScaleFactor:.75,containerWidth:g.width,containerHeight:g.height,position:{mx:.5,my:.5}}),N=g.width/2,K=g.height/2;x(Q,C,{strokeWidth:1,transform:"rotate("+p*30+","+K+","+N+")",stroke:k(g,l)})}return E},"bpmn:EscalationEventDefinition":function(Q,g,E){var h=A.getScaledPath("EVENT_ESCALATION",{xScaleFactor:1,yScaleFactor:1,containerWidth:g.width,containerHeight:g.height,position:{mx:.5,my:.2}}),p=E?k(g,l):"none";return x(Q,h,{strokeWidth:1,fill:p,stroke:k(g,l)})},"bpmn:ConditionalEventDefinition":function(Q,g){var E=A.getScaledPath("EVENT_CONDITIONAL",{xScaleFactor:1,yScaleFactor:1,containerWidth:g.width,containerHeight:g.height,position:{mx:.5,my:.222}});return x(Q,E,{strokeWidth:1,stroke:k(g,l)})},"bpmn:LinkEventDefinition":function(Q,g,E){var h=A.getScaledPath("EVENT_LINK",{xScaleFactor:1,yScaleFactor:1,containerWidth:g.width,containerHeight:g.height,position:{mx:.57,my:.263}}),p=E?k(g,l):"none";return x(Q,h,{strokeWidth:1,fill:p,stroke:k(g,l)})},"bpmn:ErrorEventDefinition":function(Q,g,E){var h=A.getScaledPath("EVENT_ERROR",{xScaleFactor:1.1,yScaleFactor:1.1,containerWidth:g.width,containerHeight:g.height,position:{mx:.2,my:.722}}),p=E?k(g,l):"none";return x(Q,h,{strokeWidth:1,fill:p,stroke:k(g,l)})},"bpmn:CancelEventDefinition":function(Q,g,E){var h=A.getScaledPath("EVENT_CANCEL_45",{xScaleFactor:1,yScaleFactor:1,containerWidth:g.width,containerHeight:g.height,position:{mx:.638,my:-.055}}),p=E?k(g,l):"none",C=x(Q,h,{strokeWidth:1,fill:p,stroke:k(g,l)});return Js(C,45),C},"bpmn:CompensateEventDefinition":function(Q,g,E){var h=A.getScaledPath("EVENT_COMPENSATION",{xScaleFactor:1,yScaleFactor:1,containerWidth:g.width,containerHeight:g.height,position:{mx:.22,my:.5}}),p=E?k(g,l):"none";return x(Q,h,{strokeWidth:1,fill:p,stroke:k(g,l)})},"bpmn:SignalEventDefinition":function(Q,g,E){var h=A.getScaledPath("EVENT_SIGNAL",{xScaleFactor:.9,yScaleFactor:.9,containerWidth:g.width,containerHeight:g.height,position:{mx:.5,my:.2}}),p=E?k(g,l):"none";return x(Q,h,{strokeWidth:1,fill:p,stroke:k(g,l)})},"bpmn:MultipleEventDefinition":function(Q,g,E){var h=A.getScaledPath("EVENT_MULTIPLE",{xScaleFactor:1.1,yScaleFactor:1.1,containerWidth:g.width,containerHeight:g.height,position:{mx:.222,my:.36}}),p=E?k(g,l):"none";return x(Q,h,{strokeWidth:1,fill:p})},"bpmn:ParallelMultipleEventDefinition":function(Q,g){var E=A.getScaledPath("EVENT_PARALLEL_MULTIPLE",{xScaleFactor:1.2,yScaleFactor:1.2,containerWidth:g.width,containerHeight:g.height,position:{mx:.458,my:.194}});return x(Q,E,{strokeWidth:1,fill:k(g,l),stroke:k(g,l)})},"bpmn:EndEvent":function(Q,g,E){var h=m("bpmn:Event")(Q,g,{strokeWidth:4,fill:i0(g,c),stroke:k(g,l)});return(!E||E.renderIcon!==!1)&&P(g,Q),h},"bpmn:TerminateEventDefinition":function(Q,g){var E=M(Q,g.width,g.height,8,{strokeWidth:4,fill:k(g,l),stroke:k(g,l)});return E},"bpmn:IntermediateEvent":function(Q,g,E){var h=m("bpmn:Event")(Q,g,{strokeWidth:1.5,fill:i0(g,c),stroke:k(g,l)});return M(Q,g.width,g.height,_t,{strokeWidth:1.5,fill:i0(g,"none"),stroke:k(g,l)}),(!E||E.renderIcon!==!1)&&P(g,Q),h},"bpmn:IntermediateCatchEvent":Y("bpmn:IntermediateEvent"),"bpmn:IntermediateThrowEvent":Y("bpmn:IntermediateEvent"),"bpmn:Activity":function(Q,g,E){return E=E||{},"fillOpacity"in E||(E.fillOpacity=O2),T(Q,g.width,g.height,Ke,E)},"bpmn:Task":function(Q,g){var E={fill:i0(g,c),stroke:k(g,l)},h=m("bpmn:Activity")(Q,g,E);return H(Q,g,"center-middle"),n0(Q,g),h},"bpmn:ServiceTask":function(Q,g){var E=m("bpmn:Task")(Q,g),h=A.getScaledPath("TASK_TYPE_SERVICE",{abspos:{x:12,y:18}});x(Q,h,{strokeWidth:1,fill:i0(g,c),stroke:k(g,l)});var p=A.getScaledPath("TASK_TYPE_SERVICE_FILL",{abspos:{x:17.2,y:18}});x(Q,p,{strokeWidth:0,fill:i0(g,c)});var C=A.getScaledPath("TASK_TYPE_SERVICE",{abspos:{x:17,y:22}});return x(Q,C,{strokeWidth:1,fill:i0(g,c),stroke:k(g,l)}),E},"bpmn:UserTask":function(Q,g){var E=m("bpmn:Task")(Q,g),h=15,p=12,C=A.getScaledPath("TASK_TYPE_USER_1",{abspos:{x:h,y:p}});x(Q,C,{strokeWidth:.5,fill:i0(g,c),stroke:k(g,l)});var N=A.getScaledPath("TASK_TYPE_USER_2",{abspos:{x:h,y:p}});x(Q,N,{strokeWidth:.5,fill:i0(g,c),stroke:k(g,l)});var K=A.getScaledPath("TASK_TYPE_USER_3",{abspos:{x:h,y:p}});return x(Q,K,{strokeWidth:.5,fill:k(g,l),stroke:k(g,l)}),E},"bpmn:ManualTask":function(Q,g){var E=m("bpmn:Task")(Q,g),h=A.getScaledPath("TASK_TYPE_MANUAL",{abspos:{x:17,y:15}});return x(Q,h,{strokeWidth:.5,fill:i0(g,c),stroke:k(g,l)}),E},"bpmn:SendTask":function(Q,g){var E=m("bpmn:Task")(Q,g),h=A.getScaledPath("TASK_TYPE_SEND",{xScaleFactor:1,yScaleFactor:1,containerWidth:21,containerHeight:14,position:{mx:.285,my:.357}});return x(Q,h,{strokeWidth:1,fill:k(g,l),stroke:i0(g,c)}),E},"bpmn:ReceiveTask":function(Q,g){var E=p0(g),h=m("bpmn:Task")(Q,g),p;return E.instantiate?(M(Q,28,28,20*.22,{strokeWidth:1}),p=A.getScaledPath("TASK_TYPE_INSTANTIATING_SEND",{abspos:{x:7.77,y:9.52}})):p=A.getScaledPath("TASK_TYPE_SEND",{xScaleFactor:.9,yScaleFactor:.9,containerWidth:21,containerHeight:14,position:{mx:.3,my:.4}}),x(Q,p,{strokeWidth:1,fill:i0(g,c),stroke:k(g,l)}),h},"bpmn:ScriptTask":function(Q,g){var E=m("bpmn:Task")(Q,g),h=A.getScaledPath("TASK_TYPE_SCRIPT",{abspos:{x:15,y:20}});return x(Q,h,{strokeWidth:1,stroke:k(g,l)}),E},"bpmn:BusinessRuleTask":function(Q,g){var E=m("bpmn:Task")(Q,g),h=A.getScaledPath("TASK_TYPE_BUSINESS_RULE_HEADER",{abspos:{x:8,y:8}}),p=x(Q,h);a0(p,{strokeWidth:1,fill:i0(g,"#aaaaaa"),stroke:k(g,l)});var C=A.getScaledPath("TASK_TYPE_BUSINESS_RULE_MAIN",{abspos:{x:8,y:8}}),N=x(Q,C);return a0(N,{strokeWidth:1,stroke:k(g,l)}),E},"bpmn:SubProcess":function(Q,g,E){E={fill:i0(g,c),stroke:k(g,l),...E};var h=m("bpmn:Activity")(Q,g,E),p=zt(g);return Lr(g)&&a0(h,{strokeDasharray:"0, 5.5",strokeWidth:2.5}),H(Q,g,p?"center-top":"center-middle"),p?n0(Q,g):n0(Q,g,["SubProcessMarker"]),h},"bpmn:AdHocSubProcess":function(Q,g){return m("bpmn:SubProcess")(Q,g)},"bpmn:Transaction":function(Q,g){var E=m("bpmn:SubProcess")(Q,g,{strokeWidth:1.5}),h=t.style(["no-fill","no-events"],{stroke:k(g,l),strokeWidth:1.5});return T(Q,g.width,g.height,Ke-3,_t,h),E},"bpmn:CallActivity":function(Q,g){return m("bpmn:SubProcess")(Q,g,{strokeWidth:5})},"bpmn:Participant":function(Q,g){var E=1.5,h={fillOpacity:O2,fill:i0(g,c),stroke:k(g,l),strokeWidth:E},p=m("bpmn:Lane")(Q,g,h),C=zt(g);if(C){I(Q,[{x:30,y:0},{x:30,y:g.height}],{stroke:k(g,l),strokeWidth:E});var N=p0(g).name;S0(Q,N,g)}else{var K=p0(g).name;J(Q,K,{box:g,align:"center-middle",style:{fill:ye(g,u,l)}})}var e0=!!p0(g).participantMultiplicity;return e0&&m("ParticipantMultiplicityMarker")(Q,g),p},"bpmn:Lane":function(Q,g,E){var h=T(Q,g.width,g.height,0,{fill:i0(g,c),fillOpacity:Ls,stroke:k(g,l),strokeWidth:1.5,...E}),p=p0(g);if(p.$type==="bpmn:Lane"){var C=p.name;S0(Q,C,g)}return h},"bpmn:InclusiveGateway":function(Q,g){var E=m("bpmn:Gateway")(Q,g);return M(Q,g.width,g.height,g.height*.24,{strokeWidth:2.5,fill:i0(g,c),stroke:k(g,l)}),E},"bpmn:ExclusiveGateway":function(Q,g){var E=m("bpmn:Gateway")(Q,g),h=A.getScaledPath("GATEWAY_EXCLUSIVE",{xScaleFactor:.4,yScaleFactor:.4,containerWidth:g.width,containerHeight:g.height,position:{mx:.32,my:.3}});return X2(g).isMarkerVisible&&x(Q,h,{strokeWidth:1,fill:k(g,l),stroke:k(g,l)}),E},"bpmn:ComplexGateway":function(Q,g){var E=m("bpmn:Gateway")(Q,g),h=A.getScaledPath("GATEWAY_COMPLEX",{xScaleFactor:.5,yScaleFactor:.5,containerWidth:g.width,containerHeight:g.height,position:{mx:.46,my:.26}});return x(Q,h,{strokeWidth:1,fill:k(g,l),stroke:k(g,l)}),E},"bpmn:ParallelGateway":function(Q,g){var E=m("bpmn:Gateway")(Q,g),h=A.getScaledPath("GATEWAY_PARALLEL",{xScaleFactor:.6,yScaleFactor:.6,containerWidth:g.width,containerHeight:g.height,position:{mx:.46,my:.2}});return x(Q,h,{strokeWidth:1,fill:k(g,l),stroke:k(g,l)}),E},"bpmn:EventBasedGateway":function(Q,g){var E=p0(g),h=m("bpmn:Gateway")(Q,g);M(Q,g.width,g.height,g.height*.2,{strokeWidth:1,fill:"none",stroke:k(g,l)});var p=E.eventGatewayType,C=!!E.instantiate;function N(){var e0=A.getScaledPath("GATEWAY_EVENT_BASED",{xScaleFactor:.18,yScaleFactor:.18,containerWidth:g.width,containerHeight:g.height,position:{mx:.36,my:.44}});x(Q,e0,{strokeWidth:2,fill:i0(g,"none"),stroke:k(g,l)})}if(p==="Parallel"){var K=A.getScaledPath("GATEWAY_PARALLEL",{xScaleFactor:.4,yScaleFactor:.4,containerWidth:g.width,containerHeight:g.height,position:{mx:.474,my:.296}});x(Q,K,{strokeWidth:1,fill:"none"})}else p==="Exclusive"&&(C||M(Q,g.width,g.height,g.height*.26,{strokeWidth:1,fill:"none",stroke:k(g,l)}),N());return h},"bpmn:Gateway":function(Q,g){return D(Q,g.width,g.height,{fill:i0(g,c),fillOpacity:O2,stroke:k(g,l)})},"bpmn:SequenceFlow":function(Q,g){var E=i0(g,c),h=k(g,l),p=U(Q,g.waypoints,{markerEnd:R("sequenceflow-end",E,h),stroke:k(g,l)}),C=p0(g),N;return g.source&&(N=g.source.businessObject,C.conditionExpression&&N.$instanceOf("bpmn:Activity")&&a0(p,{markerStart:R("conditional-flow-marker",E,h)}),N.default&&(N.$instanceOf("bpmn:Gateway")||N.$instanceOf("bpmn:Activity"))&&N.default===C&&a0(p,{markerStart:R("conditional-default-flow-marker",E,h)})),p},"bpmn:Association":function(Q,g,E){var h=p0(g),p=i0(g,c),C=k(g,l);return E={strokeDasharray:"0, 5",stroke:k(g,l),...E},(h.associationDirection==="One"||h.associationDirection==="Both")&&(E.markerEnd=R("association-end",p,C)),h.associationDirection==="Both"&&(E.markerStart=R("association-start",p,C)),U(Q,g.waypoints,E)},"bpmn:DataInputAssociation":function(Q,g){var E=i0(g,c),h=k(g,l);return m("bpmn:Association")(Q,g,{markerEnd:R("association-end",E,h)})},"bpmn:DataOutputAssociation":function(Q,g){var E=i0(g,c),h=k(g,l);return m("bpmn:Association")(Q,g,{markerEnd:R("association-end",E,h)})},"bpmn:MessageFlow":function(Q,g){var E=p0(g),h=X2(g),p=i0(g,c),C=k(g,l),N=U(Q,g.waypoints,{markerEnd:R("messageflow-end",p,C),markerStart:R("messageflow-start",p,C),strokeDasharray:"10, 11",strokeWidth:1.5,stroke:k(g,l)});if(E.messageRef){var K=N.getPointAtLength(N.getTotalLength()/2),e0=A.getScaledPath("MESSAGE_FLOW_MARKER",{abspos:{x:K.x,y:K.y}}),o0={strokeWidth:1};h.messageVisibleKind==="initiating"?(o0.fill="white",o0.stroke=Me):(o0.fill="#888",o0.stroke="white");var D0=x(Q,e0,o0),Q0=E.messageRef.name,_0=J(Q,Q0,{align:"center-top",fitBox:!0,style:{fill:k(g,u)}}),q0=D0.getBBox(),d0=_0.getBBox(),F0=K.x-d0.width/2,E2=K.y+q0.height/2+Ws;uA(_0,F0,E2,0)}return N},"bpmn:DataObject":function(Q,g){var E=A.getScaledPath("DATA_OBJECT_PATH",{xScaleFactor:1,yScaleFactor:1,containerWidth:g.width,containerHeight:g.height,position:{mx:.474,my:.296}}),h=x(Q,E,{fill:i0(g,c),fillOpacity:O2,stroke:k(g,l)}),p=p0(g);return Qs(p)&&V0(Q,g),h},"bpmn:DataObjectReference":Y("bpmn:DataObject"),"bpmn:DataInput":function(Q,g){var E=A.getRawPath("DATA_ARROW"),h=m("bpmn:DataObject")(Q,g);return x(Q,E,{strokeWidth:1}),h},"bpmn:DataOutput":function(Q,g){var E=A.getRawPath("DATA_ARROW"),h=m("bpmn:DataObject")(Q,g);return x(Q,E,{strokeWidth:1,fill:Me}),h},"bpmn:DataStoreReference":function(Q,g){var E=A.getScaledPath("DATA_STORE",{xScaleFactor:1,yScaleFactor:1,containerWidth:g.width,containerHeight:g.height,position:{mx:0,my:.133}}),h=x(Q,E,{strokeWidth:2,fill:i0(g,c),fillOpacity:O2,stroke:k(g,l)});return h},"bpmn:BoundaryEvent":function(Q,g,E){var h=p0(g),p=h.cancelActivity,C={strokeWidth:1.5,fill:i0(g,c),stroke:k(g,l)};p||(C.strokeDasharray="6");var N={...C,fillOpacity:1},K={...C,fill:"none"},e0=m("bpmn:Event")(Q,g,N);return M(Q,g.width,g.height,_t,K),(!E||E.renderIcon!==!1)&&P(g,Q),e0},"bpmn:Group":function(Q,g){return T(Q,g.width,g.height,Ke,{stroke:k(g,l),strokeWidth:1.5,strokeDasharray:"10,6,0,6",fill:"none",pointerEvents:"none"})},label:function(Q,g){return t0(Q,g)},"bpmn:TextAnnotation":function(Q,g){var E=T(Q,g.width,g.height,0,0,{fill:"none",stroke:"none"}),h=A.getScaledPath("TEXT_ANNOTATION",{xScaleFactor:1,yScaleFactor:1,containerWidth:g.width,containerHeight:g.height,position:{mx:0,my:0}});x(Q,h,{stroke:k(g,l)});var p=p0(g).text||"";return J(Q,p,{box:g,align:"left-top",padding:7,style:{fill:ye(g,u,l)}}),E},ParticipantMultiplicityMarker:function(Q,g){var E=A.getScaledPath("MARKER_PARALLEL",{xScaleFactor:1,yScaleFactor:1,containerWidth:g.width,containerHeight:g.height,position:{mx:g.width/2/g.width,my:(g.height-15)/g.height}});v("participant-multiplicity",Q,E,{strokeWidth:2,fill:i0(g,c),stroke:k(g,l)})},SubProcessMarker:function(Q,g){var E=T(Q,14,14,0,{strokeWidth:1,fill:i0(g,c),stroke:k(g,l)});BA(E,g.width/2-7.5,g.height-20);var h=A.getScaledPath("MARKER_SUB_PROCESS",{xScaleFactor:1.5,yScaleFactor:1.5,containerWidth:g.width,containerHeight:g.height,position:{mx:(g.width/2-7.5)/g.width,my:(g.height-20)/g.height}});v("sub-process",Q,h,{fill:i0(g,c),stroke:k(g,l)})},ParallelMarker:function(Q,g,E){var h=A.getScaledPath("MARKER_PARALLEL",{xScaleFactor:1,yScaleFactor:1,containerWidth:g.width,containerHeight:g.height,position:{mx:(g.width/2+E.parallel)/g.width,my:(g.height-20)/g.height}});v("parallel",Q,h,{fill:i0(g,c),stroke:k(g,l)})},SequentialMarker:function(Q,g,E){var h=A.getScaledPath("MARKER_SEQUENTIAL",{xScaleFactor:1,yScaleFactor:1,containerWidth:g.width,containerHeight:g.height,position:{mx:(g.width/2+E.seq)/g.width,my:(g.height-19)/g.height}});v("sequential",Q,h,{fill:i0(g,c),stroke:k(g,l)})},CompensationMarker:function(Q,g,E){var h=A.getScaledPath("MARKER_COMPENSATION",{xScaleFactor:1,yScaleFactor:1,containerWidth:g.width,containerHeight:g.height,position:{mx:(g.width/2+E.compensation)/g.width,my:(g.height-13)/g.height}});v("compensation",Q,h,{strokeWidth:1,fill:i0(g,c),stroke:k(g,l)})},LoopMarker:function(Q,g,E){var h=A.getScaledPath("MARKER_LOOP",{xScaleFactor:1,yScaleFactor:1,containerWidth:g.width,containerHeight:g.height,position:{mx:(g.width/2+E.loop)/g.width,my:(g.height-7)/g.height}});v("loop",Q,h,{strokeWidth:1.5,fill:i0(g,c),stroke:k(g,l),strokeMiterlimit:.5})},AdhocMarker:function(Q,g,E){var h=A.getScaledPath("MARKER_ADHOC",{xScaleFactor:1,yScaleFactor:1,containerWidth:g.width,containerHeight:g.height,position:{mx:(g.width/2+E.adhoc)/g.width,my:(g.height-15)/g.height}});v("adhoc",Q,h,{strokeWidth:1,fill:k(g,l),stroke:k(g,l)})}};function n0(Q,g,E){var h=p0(g),p=E&&E.indexOf("SubProcessMarker")!==-1,C;p?C={seq:-21,parallel:-22,compensation:-42,loop:-18,adhoc:10}:C={seq:-3,parallel:-6,compensation:-27,loop:0,adhoc:10},V(E,function(e0){m(e0)(Q,g,C)}),h.isForCompensation&&m("CompensationMarker")(Q,g,C),h.$type==="bpmn:AdHocSubProcess"&&m("AdhocMarker")(Q,g,C);var N=h.loopCharacteristics,K=N&&N.isSequential;N&&(K===void 0&&m("LoopMarker")(Q,g,C),K===!1&&m("ParallelMarker")(Q,g,C),K===!0&&m("SequentialMarker")(Q,g,C))}function V0(Q,g){var E=(g.height-18)/g.height,h=A.getScaledPath("DATA_OBJECT_COLLECTION_PATH",{xScaleFactor:1,yScaleFactor:1,containerWidth:g.width,containerHeight:g.height,position:{mx:.33,my:E}});x(Q,h,{strokeWidth:2})}this._drawPath=x,this._renderer=m}e2(R2,c2),R2.$inject=["config.bpmnRenderer","eventBus","styles","pathMap","canvas","textRenderer"],R2.prototype.canRender=function(n){return X(n,"bpmn:BaseElement")},R2.prototype.drawShape=function(n,e){var t=e.type,A=this._renderer(t);return A(n,e)},R2.prototype.drawConnection=function(n,e){var t=e.type,A=this._renderer(t);return A(n,e)},R2.prototype.getShapePath=function(n){return X(n,"bpmn:Event")?ps(n):X(n,"bpmn:Activity")?hs(n,Ke):X(n,"bpmn:Gateway")?ws(n):ms(n)};var js=0,_s={width:150,height:50};function Xs(n){var e=n.split("-");return{horizontal:e[0]||"center",vertical:e[1]||"top"}}function Os(n){return T2(n)?_({top:0,left:0,right:0,bottom:0},n):{top:n,left:n,right:n,bottom:n}}function Ks(n,e){e.textContent=n;var t;try{var A,i=n==="";return e.textContent=i?"dummy":n,t=e.getBBox(),A={width:t.width+t.x*2,height:t.height},i&&(A.width=0),A}catch{return{width:0,height:0}}}function Zs(n,e,t){for(var A=n.shift(),i=A,o;;){if(o=Ks(i,t),o.width=i?o.width:0,i===" "||i===""||o.width<Math.round(e)||i.length<2)return qs(n,i,A,o);i=ea(i,o.width,e)}}function qs(n,e,t,A){if(e.length<t.length){var i=t.slice(e.length).trim();n.unshift(i)}return{width:A.width,height:A.height,text:e}}var gA="­";function $s(n,e){var t=n.split(/(\s|-|\u00AD)/g),A,i=[],o=0;if(t.length>1)for(;A=t.shift();)if(A.length+o<e)i.push(A),o+=A.length;else{(A==="-"||A===gA)&&i.pop();break}var a=i[i.length-1];return a&&a===gA&&(i[i.length-1]="-"),i.join("")}function ea(n,e,t){var A=Math.max(n.length*(t/e),1),i=$s(n,A);return i||(i=n.slice(0,Math.max(Math.round(A-1),1))),i}function ta(){var n=document.getElementById("helper-svg");return n||(n=B0("svg"),a0(n,{id:"helper-svg"}),G0(n,{visibility:"hidden",position:"fixed",width:0,height:0}),document.body.appendChild(n)),n}function Ze(n){this._config=_({},{size:_s,padding:js,style:{},align:"center-top"},n||{})}Ze.prototype.createText=function(n,e){return this.layoutText(n,e).element},Ze.prototype.getDimensions=function(n,e){return this.layoutText(n,e).dimensions},Ze.prototype.layoutText=function(n,e){var t=_({},this._config.size,e.box),A=_({},this._config.style,e.style),i=Xs(e.align||this._config.align),o=Os(e.padding!==void 0?e.padding:this._config.padding),a=e.fitBox||!1,c=na(A),l=n.split(/\u00AD?\r?\n/),u=[],B=t.width-o.left-o.right,d=B0("text");a0(d,{x:0,y:0}),a0(d,A);var f=ta();for(h0(f,d);l.length;)u.push(Zs(l,B,d));i.vertical==="middle"&&(o.top=o.bottom=0);var w=_2(u,function(M,T,D){return M+(c||T.height)},0)+o.top+o.bottom,y=_2(u,function(M,T,D){return T.width>M?T.width:M},0),F=o.top;i.vertical==="middle"&&(F+=(t.height-w)/2),F-=(c||u[0].height)/4;var R=B0("text");a0(R,A),V(u,function(M){var T;switch(F+=c||M.height,i.horizontal){case"left":T=o.left;break;case"right":T=(a?y:B)-o.right-M.width;break;default:T=Math.max(((a?y:B)-M.width)/2+o.left,0)}var D=B0("tspan");a0(D,{x:T,y:F}),D.textContent=M.text,h0(R,D)}),me(d);var S={width:y,height:w};return{dimensions:S,element:R}};function na(n){if("fontSize"in n&&"lineHeight"in n)return n.lineHeight*parseInt(n.fontSize,10)}var Aa=12,ia=1.2,oa=30;function dA(n){var e=_({fontFamily:"Arial, sans-serif",fontSize:Aa,fontWeight:"normal",lineHeight:ia},n&&n.defaultStyle||{}),t=parseInt(e.fontSize,10)-1,A=_({},e,{fontSize:t},n&&n.externalStyle||{}),i=new Ze({style:e});this.getExternalLabelBounds=function(o,a){var c=i.getDimensions(a,{box:{width:90,height:30},style:A});return{x:Math.round(o.x+o.width/2-c.width/2),y:Math.round(o.y),width:Math.ceil(c.width),height:Math.ceil(c.height)}},this.getTextAnnotationBounds=function(o,a){var c=i.getDimensions(a,{box:o,style:e,align:"left-top",padding:5});return{x:o.x,y:o.y,width:o.width,height:Math.max(oa,Math.round(c.height))}},this.createText=function(o,a){return i.createText(o,a||{})},this.getDefaultStyle=function(){return e},this.getExternalStyle=function(){return A}}dA.$inject=["config.textRenderer"];function ra(){this.pathMap={EVENT_MESSAGE:{d:"m {mx},{my} l 0,{e.y1} l {e.x1},0 l 0,-{e.y1} z l {e.x0},{e.y0} l {e.x0},-{e.y0}",height:36,width:36,heightElements:[6,14],widthElements:[10.5,21]},EVENT_SIGNAL:{d:"M {mx},{my} l {e.x0},{e.y0} l -{e.x1},0 Z",height:36,width:36,heightElements:[18],widthElements:[10,20]},EVENT_ESCALATION:{d:"M {mx},{my} l {e.x0},{e.y0} l -{e.x0},-{e.y1} l -{e.x0},{e.y1} Z",height:36,width:36,heightElements:[20,7],widthElements:[8]},EVENT_CONDITIONAL:{d:"M {e.x0},{e.y0} l {e.x1},0 l 0,{e.y2} l -{e.x1},0 Z M {e.x2},{e.y3} l {e.x0},0 M {e.x2},{e.y4} l {e.x0},0 M {e.x2},{e.y5} l {e.x0},0 M {e.x2},{e.y6} l {e.x0},0 M {e.x2},{e.y7} l {e.x0},0 M {e.x2},{e.y8} l {e.x0},0 ",height:36,width:36,heightElements:[8.5,14.5,18,11.5,14.5,17.5,20.5,23.5,26.5],widthElements:[10.5,14.5,12.5]},EVENT_LINK:{d:"m {mx},{my} 0,{e.y0} -{e.x1},0 0,{e.y1} {e.x1},0 0,{e.y0} {e.x0},-{e.y2} -{e.x0},-{e.y2} z",height:36,width:36,heightElements:[4.4375,6.75,7.8125],widthElements:[9.84375,13.5]},EVENT_ERROR:{d:"m {mx},{my} {e.x0},-{e.y0} {e.x1},-{e.y1} {e.x2},{e.y2} {e.x3},-{e.y3} -{e.x4},{e.y4} -{e.x5},-{e.y5} z",height:36,width:36,heightElements:[.023,8.737,8.151,16.564,10.591,8.714],widthElements:[.085,6.672,6.97,4.273,5.337,6.636]},EVENT_CANCEL_45:{d:"m {mx},{my} -{e.x1},0 0,{e.x0} {e.x1},0 0,{e.y1} {e.x0},0 0,-{e.y1} {e.x1},0 0,-{e.y0} -{e.x1},0 0,-{e.y1} -{e.x0},0 z",height:36,width:36,heightElements:[4.75,8.5],widthElements:[4.75,8.5]},EVENT_COMPENSATION:{d:"m {mx},{my} {e.x0},-{e.y0} 0,{e.y1} z m {e.x1},-{e.y2} {e.x2},-{e.y3} 0,{e.y1} -{e.x2},-{e.y3} z",height:36,width:36,heightElements:[6.5,13,.4,6.1],widthElements:[9,9.3,8.7]},EVENT_TIMER_WH:{d:"M {mx},{my} l {e.x0},-{e.y0} m -{e.x0},{e.y0} l {e.x1},{e.y1} ",height:36,width:36,heightElements:[10,2],widthElements:[3,7]},EVENT_TIMER_LINE:{d:"M {mx},{my} m {e.x0},{e.y0} l -{e.x1},{e.y1} ",height:36,width:36,heightElements:[10,3],widthElements:[0,0]},EVENT_MULTIPLE:{d:"m {mx},{my} {e.x1},-{e.y0} {e.x1},{e.y0} -{e.x0},{e.y1} -{e.x2},0 z",height:36,width:36,heightElements:[6.28099,12.56199],widthElements:[3.1405,9.42149,12.56198]},EVENT_PARALLEL_MULTIPLE:{d:"m {mx},{my} {e.x0},0 0,{e.y1} {e.x1},0 0,{e.y0} -{e.x1},0 0,{e.y1} -{e.x0},0 0,-{e.y1} -{e.x1},0 0,-{e.y0} {e.x1},0 z",height:36,width:36,heightElements:[2.56228,7.68683],widthElements:[2.56228,7.68683]},GATEWAY_EXCLUSIVE:{d:"m {mx},{my} {e.x0},{e.y0} {e.x1},{e.y0} {e.x2},0 {e.x4},{e.y2} {e.x4},{e.y1} {e.x2},0 {e.x1},{e.y3} {e.x0},{e.y3} {e.x3},0 {e.x5},{e.y1} {e.x5},{e.y2} {e.x3},0 z",height:17.5,width:17.5,heightElements:[8.5,6.5312,-6.5312,-8.5],widthElements:[6.5,-6.5,3,-3,5,-5]},GATEWAY_PARALLEL:{d:"m {mx},{my} 0,{e.y1} -{e.x1},0 0,{e.y0} {e.x1},0 0,{e.y1} {e.x0},0 0,-{e.y1} {e.x1},0 0,-{e.y0} -{e.x1},0 0,-{e.y1} -{e.x0},0 z",height:30,width:30,heightElements:[5,12.5],widthElements:[5,12.5]},GATEWAY_EVENT_BASED:{d:"m {mx},{my} {e.x0},{e.y0} {e.x0},{e.y1} {e.x1},{e.y2} {e.x2},0 z",height:11,width:11,heightElements:[-6,6,12,-12],widthElements:[9,-3,-12]},GATEWAY_COMPLEX:{d:"m {mx},{my} 0,{e.y0} -{e.x0},-{e.y1} -{e.x1},{e.y2} {e.x0},{e.y1} -{e.x2},0 0,{e.y3} {e.x2},0 -{e.x0},{e.y1} l {e.x1},{e.y2} {e.x0},-{e.y1} 0,{e.y0} {e.x3},0 0,-{e.y0} {e.x0},{e.y1} {e.x1},-{e.y2} -{e.x0},-{e.y1} {e.x2},0 0,-{e.y3} -{e.x2},0 {e.x0},-{e.y1} -{e.x1},-{e.y2} -{e.x0},{e.y1} 0,-{e.y0} -{e.x3},0 z",height:17.125,width:17.125,heightElements:[4.875,3.4375,2.125,3],widthElements:[3.4375,2.125,4.875,3]},DATA_OBJECT_PATH:{d:"m 0,0 {e.x1},0 {e.x0},{e.y0} 0,{e.y1} -{e.x2},0 0,-{e.y2} {e.x1},0 0,{e.y0} {e.x0},0",height:61,width:51,heightElements:[10,50,60],widthElements:[10,40,50,60]},DATA_OBJECT_COLLECTION_PATH:{d:"m{mx},{my} m 3,2 l 0,10 m 3,-10 l 0,10 m 3,-10 l 0,10",height:10,width:10,heightElements:[],widthElements:[]},DATA_ARROW:{d:"m 5,9 9,0 0,-3 5,5 -5,5 0,-3 -9,0 z",height:61,width:51,heightElements:[],widthElements:[]},DATA_STORE:{d:"m {mx},{my} l 0,{e.y2} c {e.x0},{e.y1} {e.x1},{e.y1} {e.x2},0 l 0,-{e.y2} c -{e.x0},-{e.y1} -{e.x1},-{e.y1} -{e.x2},0c {e.x0},{e.y1} {e.x1},{e.y1} {e.x2},0 m -{e.x2},{e.y0}c {e.x0},{e.y1} {e.x1},{e.y1} {e.x2},0m -{e.x2},{e.y0}c {e.x0},{e.y1} {e.x1},{e.y1} {e.x2},0",height:61,width:61,heightElements:[7,10,45],widthElements:[2,58,60]},TEXT_ANNOTATION:{d:"m {mx}, {my} m 10,0 l -10,0 l 0,{e.y0} l 10,0",height:30,width:10,heightElements:[30],widthElements:[10]},MARKER_SUB_PROCESS:{d:"m{mx},{my} m 7,2 l 0,10 m -5,-5 l 10,0",height:10,width:10,heightElements:[],widthElements:[]},MARKER_PARALLEL:{d:"m{mx},{my} m 3,2 l 0,10 m 3,-10 l 0,10 m 3,-10 l 0,10",height:10,width:10,heightElements:[],widthElements:[]},MARKER_SEQUENTIAL:{d:"m{mx},{my} m 0,3 l 10,0 m -10,3 l 10,0 m -10,3 l 10,0",height:10,width:10,heightElements:[],widthElements:[]},MARKER_COMPENSATION:{d:"m {mx},{my} 7,-5 0,10 z m 7.1,-0.3 6.9,-4.7 0,10 -6.9,-4.7 z",height:10,width:21,heightElements:[],widthElements:[]},MARKER_LOOP:{d:"m {mx},{my} c 3.526979,0 6.386161,-2.829858 6.386161,-6.320661 0,-3.490806 -2.859182,-6.320661 -6.386161,-6.320661 -3.526978,0 -6.38616,2.829855 -6.38616,6.320661 0,1.745402 0.714797,3.325567 1.870463,4.469381 0.577834,0.571908 1.265885,1.034728 2.029916,1.35457 l -0.718163,-3.909793 m 0.718163,3.909793 -3.885211,0.802902",height:13.9,width:13.7,heightElements:[],widthElements:[]},MARKER_ADHOC:{d:"m {mx},{my} m 0.84461,2.64411 c 1.05533,-1.23780996 2.64337,-2.07882 4.29653,-1.97997996 2.05163,0.0805 3.85579,1.15803 5.76082,1.79107 1.06385,0.34139996 2.24454,0.1438 3.18759,-0.43767 0.61743,-0.33642 1.2775,-0.64078 1.7542,-1.17511 0,0.56023 0,1.12046 0,1.6807 -0.98706,0.96237996 -2.29792,1.62393996 -3.6918,1.66181996 -1.24459,0.0927 -2.46671,-0.2491 -3.59505,-0.74812 -1.35789,-0.55965 -2.75133,-1.33436996 -4.27027,-1.18121996 -1.37741,0.14601 -2.41842,1.13685996 -3.44288,1.96782996 z",height:4,width:15,heightElements:[],widthElements:[]},TASK_TYPE_SEND:{d:"m {mx},{my} l 0,{e.y1} l {e.x1},0 l 0,-{e.y1} z l {e.x0},{e.y0} l {e.x0},-{e.y0}",height:14,width:21,heightElements:[6,14],widthElements:[10.5,21]},TASK_TYPE_SCRIPT:{d:"m {mx},{my} c 9.966553,-6.27276 -8.000926,-7.91932 2.968968,-14.938 l -8.802728,0 c -10.969894,7.01868 6.997585,8.66524 -2.968967,14.938 z m -7,-12 l 5,0 m -4.5,3 l 4.5,0 m -3,3 l 5,0m -4,3 l 5,0",height:15,width:12.6,heightElements:[6,14],widthElements:[10.5,21]},TASK_TYPE_USER_1:{d:"m {mx},{my} c 0.909,-0.845 1.594,-2.049 1.594,-3.385 0,-2.554 -1.805,-4.62199999 -4.357,-4.62199999 -2.55199998,0 -4.28799998,2.06799999 -4.28799998,4.62199999 0,1.348 0.974,2.562 1.89599998,3.405 -0.52899998,0.187 -5.669,2.097 -5.794,4.7560005 v 6.718 h 17 v -6.718 c 0,-2.2980005 -5.5279996,-4.5950005 -6.0509996,-4.7760005 zm -8,6 l 0,5.5 m 11,0 l 0,-5"},TASK_TYPE_USER_2:{d:"m {mx},{my} m 2.162,1.009 c 0,2.4470005 -2.158,4.4310005 -4.821,4.4310005 -2.66499998,0 -4.822,-1.981 -4.822,-4.4310005 "},TASK_TYPE_USER_3:{d:"m {mx},{my} m -6.9,-3.80 c 0,0 2.25099998,-2.358 4.27399998,-1.177 2.024,1.181 4.221,1.537 4.124,0.965 -0.098,-0.57 -0.117,-3.79099999 -4.191,-4.13599999 -3.57499998,0.001 -4.20799998,3.36699999 -4.20699998,4.34799999 z"},TASK_TYPE_MANUAL:{d:"m {mx},{my} c 0.234,-0.01 5.604,0.008 8.029,0.004 0.808,0 1.271,-0.172 1.417,-0.752 0.227,-0.898 -0.334,-1.314 -1.338,-1.316 -2.467,-0.01 -7.886,-0.004 -8.108,-0.004 -0.014,-0.079 0.016,-0.533 0,-0.61 0.195,-0.042 8.507,0.006 9.616,0.002 0.877,-0.007 1.35,-0.438 1.353,-1.208 0.003,-0.768 -0.479,-1.09 -1.35,-1.091 -2.968,-0.002 -9.619,-0.013 -9.619,-0.013 v -0.591 c 0,0 5.052,-0.016 7.225,-0.016 0.888,-0.002 1.354,-0.416 1.351,-1.193 -0.006,-0.761 -0.492,-1.196 -1.361,-1.196 -3.473,-0.005 -10.86,-0.003 -11.0829995,-0.003 -0.022,-0.047 -0.045,-0.094 -0.069,-0.139 0.3939995,-0.319 2.0409995,-1.626 2.4149995,-2.017 0.469,-0.4870005 0.519,-1.1650005 0.162,-1.6040005 -0.414,-0.511 -0.973,-0.5 -1.48,-0.236 -1.4609995,0.764 -6.5999995,3.6430005 -7.7329995,4.2710005 -0.9,0.499 -1.516,1.253 -1.882,2.19 -0.37000002,0.95 -0.17,2.01 -0.166,2.979 0.004,0.718 -0.27300002,1.345 -0.055,2.063 0.629,2.087 2.425,3.312 4.859,3.318 4.6179995,0.014 9.2379995,-0.139 13.8569995,-0.158 0.755,-0.004 1.171,-0.301 1.182,-1.033 0.012,-0.754 -0.423,-0.969 -1.183,-0.973 -1.778,-0.01 -5.824,-0.004 -6.04,-0.004 10e-4,-0.084 0.003,-0.586 10e-4,-0.67 z"},TASK_TYPE_INSTANTIATING_SEND:{d:"m {mx},{my} l 0,8.4 l 12.6,0 l 0,-8.4 z l 6.3,3.6 l 6.3,-3.6"},TASK_TYPE_SERVICE:{d:"m {mx},{my} v -1.71335 c 0.352326,-0.0705 0.703932,-0.17838 1.047628,-0.32133 0.344416,-0.14465 0.665822,-0.32133 0.966377,-0.52145 l 1.19431,1.18005 1.567487,-1.57688 -1.195028,-1.18014 c 0.403376,-0.61394 0.683079,-1.29908 0.825447,-2.01824 l 1.622133,-0.01 v -2.2196 l -1.636514,0.01 c -0.07333,-0.35153 -0.178319,-0.70024 -0.323564,-1.04372 -0.145244,-0.34406 -0.321407,-0.6644 -0.522735,-0.96217 l 1.131035,-1.13631 -1.583305,-1.56293 -1.129598,1.13589 c -0.614052,-0.40108 -1.302883,-0.68093 -2.022633,-0.82247 l 0.0093,-1.61852 h -2.241173 l 0.0042,1.63124 c -0.353763,0.0736 -0.705369,0.17977 -1.049785,0.32371 -0.344415,0.14437 -0.665102,0.32092 -0.9635006,0.52046 l -1.1698628,-1.15823 -1.5667691,1.5792 1.1684265,1.15669 c -0.4026573,0.61283 -0.68308,1.29797 -0.8247287,2.01713 l -1.6588041,0.003 v 2.22174 l 1.6724648,-0.006 c 0.073327,0.35077 0.1797598,0.70243 0.3242851,1.04472 0.1452428,0.34448 0.3214064,0.6644 0.5227339,0.96066 l -1.1993431,1.19723 1.5840256,1.56011 1.1964668,-1.19348 c 0.6140517,0.40346 1.3028827,0.68232 2.0233517,0.82331 l 7.19e-4,1.69892 h 2.226848 z m 0.221462,-3.9957 c -1.788948,0.7502 -3.8576,-0.0928 -4.6097055,-1.87438 -0.7521065,-1.78321 0.090598,-3.84627 1.8802645,-4.59604 1.78823,-0.74936 3.856881,0.0929 4.608987,1.87437 0.752106,1.78165 -0.0906,3.84612 -1.879546,4.59605 z"},TASK_TYPE_SERVICE_FILL:{d:"m {mx},{my} c -1.788948,0.7502 -3.8576,-0.0928 -4.6097055,-1.87438 -0.7521065,-1.78321 0.090598,-3.84627 1.8802645,-4.59604 1.78823,-0.74936 3.856881,0.0929 4.608987,1.87437 0.752106,1.78165 -0.0906,3.84612 -1.879546,4.59605 z"},TASK_TYPE_BUSINESS_RULE_HEADER:{d:"m {mx},{my} 0,4 20,0 0,-4 z"},TASK_TYPE_BUSINESS_RULE_MAIN:{d:"m {mx},{my} 0,12 20,0 0,-12 zm 0,8 l 20,0 m -13,-4 l 0,8"},MESSAGE_FLOW_MARKER:{d:"m {mx},{my} m -10.5 ,-7 l 0,14 l 21,0 l 0,-14 z l 10.5,6 l 10.5,-6"}},this.getRawPath=function(e){return this.pathMap[e].d},this.getScaledPath=function(e,t){var A=this.pathMap[e],i,o;t.abspos?(i=t.abspos.x,o=t.abspos.y):(i=t.containerWidth*t.position.mx,o=t.containerHeight*t.position.my);var a={};if(t.position){for(var c=t.containerHeight/A.height*t.yScaleFactor,l=t.containerWidth/A.width*t.xScaleFactor,u=0;u<A.heightElements.length;u++)a["y"+u]=A.heightElements[u]*c;for(var B=0;B<A.widthElements.length;B++)a["x"+B]=A.widthElements[B]*l}var d=la(A.d,{mx:i,my:o,e:a});return d}}var sa=/\{([^{}]+)\}/g,aa=/(?:(?:^|\.)(.+?)(?=\[|\.|$|\()|\[('|")(.+?)\2\])(\(\))?/g;function ca(n,e,t){var A=t;return e.replace(aa,function(i,o,a,c,l){o=o||c,A&&(o in A&&(A=A[o]),typeof A=="function"&&l&&(A=A()))}),A=(A==null||A==t?n:A)+"",A}function la(n,e){return String(n).replace(sa,function(t,A){return ca(t,A,e)})}const ua={__init__:["bpmnRenderer"],bpmnRenderer:["type",R2],textRenderer:["type",dA],pathMap:["type",ra]};function Ba(n,e){return e=e||{},n.replace(/{([^}]+)}/g,function(t,A){return e[A]||"{"+A+"}"})}const EA={translate:["value",Ba]};function ga(n){return{x:Math.round(n.x),y:Math.round(n.y)}}function Xt(n){return{top:n.y,right:n.x+(n.width||0),bottom:n.y+(n.height||0),left:n.x}}function da(n){return{x:n.left,y:n.top,width:n.right-n.left,height:n.bottom-n.top}}function Ea(n){return ga({x:n.x+(n.width||0)/2,y:n.y+(n.height||0)/2})}function fa(n){for(var e=n.waypoints,t=e.reduce(function(u,B,d){var f=e[d-1];if(f){var w=u[u.length-1],y=w&&w.endLength||0,F=Qa(f,B);u.push({start:f,end:B,startLength:y,endLength:y+F,length:F})}return u},[]),A=t.reduce(function(u,B){return u+B.length},0),i=A/2,o=0,a=t[o];a.endLength<i;)a=t[++o];var c=(i-a.startLength)/a.length,l={x:a.start.x+(a.end.x-a.start.x)*c,y:a.start.y+(a.end.y-a.start.y)*c};return l}function Ot(n){return Wr(n)?fa(n):Ea(n)}function Qa(n,e){return Math.sqrt(Math.pow(n.x-e.x,2)+Math.pow(n.y-e.y,2))}function x0(n){return n?"<"+n.$type+(n.id?' id="'+n.id:"")+'" />':"<null>"}function qe(n,e,t){return _({id:n.id,type:n.$type,businessObject:n,di:e},t)}function pa(n,e,t){var A=n.waypoint;return!A||A.length<2?[Ot(e),Ot(t)]:A.map(function(i){return{x:i.x,y:i.y}})}function fA(n,e,t,A){return new Error(n("element {element} referenced by {referenced}#{property} not yet drawn",{element:x0(t),referenced:x0(e),property:A}))}function u2(n,e,t,A,i,o){this._eventBus=n,this._canvas=e,this._elementFactory=t,this._elementRegistry=A,this._translate=i,this._textRenderer=o}u2.$inject=["eventBus","canvas","elementFactory","elementRegistry","translate","textRenderer"],u2.prototype.add=function(n,e,t){var A,i=this._translate,o,a;if(X(e,"bpmndi:BPMNPlane")){var c=X(n,"bpmn:SubProcess")?{id:n.id+"_plane"}:{};A=this._elementFactory.createRoot(qe(n,e,c)),this._canvas.addRootElement(A)}else if(X(e,"bpmndi:BPMNShape")){var l=!zt(n,e),u=wa(n);o=t&&(t.hidden||t.collapsed);var B=e.bounds;A=this._elementFactory.createShape(qe(n,e,{collapsed:l,hidden:o,x:Math.round(B.x),y:Math.round(B.y),width:Math.round(B.width),height:Math.round(B.height),isFrame:u})),X(n,"bpmn:BoundaryEvent")&&this._attachBoundary(n,A),X(n,"bpmn:Lane")&&(a=0),X(n,"bpmn:DataStoreReference")&&(ha(t,Ot(B))||(t=this._canvas.findRoot(t))),this._canvas.addShape(A,t,a)}else if(X(e,"bpmndi:BPMNEdge")){var d=this._getSource(n),f=this._getTarget(n);o=t&&(t.hidden||t.collapsed),A=this._elementFactory.createConnection(qe(n,e,{hidden:o,source:d,target:f,waypoints:pa(e,d,f)})),X(n,"bpmn:DataAssociation")&&(t=this._canvas.findRoot(t)),this._canvas.addConnection(A,t,a)}else throw new Error(i("unknown di {di} for element {semantic}",{di:x0(e),semantic:x0(n)}));return jr(n)&&Ve(A)&&this.addLabel(n,e,A),this._eventBus.fire("bpmnElement.added",{element:A}),A},u2.prototype._attachBoundary=function(n,e){var t=this._translate,A=n.attachedToRef;if(!A)throw new Error(t("missing {semantic}#attachedToRef",{semantic:x0(n)}));var i=this._elementRegistry.get(A.id),o=i&&i.attachers;if(!i)throw fA(t,n,A,"attachedToRef");e.host=i,o||(i.attachers=o=[]),o.indexOf(e)===-1&&o.push(e)},u2.prototype.addLabel=function(n,e,t){var A,i,o;return A=Kr(e,t),i=Ve(t),i&&(A=this._textRenderer.getExternalLabelBounds(A,i)),o=this._elementFactory.createLabel(qe(n,e,{id:n.id+"_label",labelTarget:t,type:"label",hidden:t.hidden||!Ve(t),x:Math.round(A.x),y:Math.round(A.y),width:Math.round(A.width),height:Math.round(A.height)})),this._canvas.addShape(o,t.parent)},u2.prototype._getConnectedElement=function(n,e){var t,A,i=n.$type,o=this._translate;if(A=n[e+"Ref"],e==="source"&&i==="bpmn:DataInputAssociation"&&(A=A&&A[0]),(e==="source"&&i==="bpmn:DataOutputAssociation"||e==="target"&&i==="bpmn:DataInputAssociation")&&(A=n.$parent),t=A&&this._getElement(A),t)return t;throw A?fA(o,n,A,e+"Ref"):new Error(o("{semantic}#{side} Ref not specified",{semantic:x0(n),side:e}))},u2.prototype._getSource=function(n){return this._getConnectedElement(n,"source")},u2.prototype._getTarget=function(n){return this._getConnectedElement(n,"target")},u2.prototype._getElement=function(n){return this._elementRegistry.get(n.id)};function ha(n,e){var t=e.x,A=e.y;return t>=n.x&&t<=n.x+n.width&&A>=n.y&&A<=n.y+n.height}function wa(n){return X(n,"bpmn:Group")}const ma={__depends__:[ua,{__depends__:[EA],bpmnImporter:["type",u2]}]};function Kt(n){return n.originalEvent||n.srcEvent}function Ca(){return/mac/i.test(navigator.platform)}function QA(n,e){return(Kt(n)||n).button===e}function Ie(n){return QA(n,0)}function Ma(n){return QA(n,1)}function ya(n){var e=Kt(n)||n;return Ie(n)?Ca()?e.metaKey:e.ctrlKey:!1}function Ia(n){var e=Kt(n)||n;return Ie(n)&&e.shiftKey}function Da(n){return!0}function $e(n){return Ie(n)||Ma(n)}var pA=500;function hA(n,e,t){var A=this;function i(v,m,Y){if(!c(v,m)){var P,J,H;Y?J=e.getGraphics(Y):(P=m.delegateTarget||m.target,P&&(J=P,Y=e.get(J))),!(!J||!Y)&&(H=n.fire(v,{element:Y,gfx:J,originalEvent:m}),H===!1&&(m.stopPropagation(),m.preventDefault()))}}var o={};function a(v){return o[v]}function c(v,m){var Y=u[v]||Ie;return!Y(m)}var l={click:"element.click",contextmenu:"element.contextmenu",dblclick:"element.dblclick",mousedown:"element.mousedown",mousemove:"element.mousemove",mouseover:"element.hover",mouseout:"element.out",mouseup:"element.mouseup"},u={"element.contextmenu":Da,"element.mousedown":$e,"element.mouseup":$e,"element.click":$e,"element.dblclick":$e};function B(v,m,Y){var P=l[v];if(!P)throw new Error("unmapped DOM event name <"+v+">");return i(P,m,Y)}var d="svg, .djs-element";function f(v,m,Y,P){var J=o[Y]=function(H){i(Y,H)};P&&(u[Y]=P),J.$delegate=jt.bind(v,d,m,J)}function w(v,m,Y){var P=a(Y);P&&jt.unbind(v,m,P.$delegate)}function y(v){V(l,function(m,Y){f(v,Y,m)})}function F(v){V(l,function(m,Y){w(v,Y,m)})}n.on("canvas.destroy",function(v){F(v.svg)}),n.on("canvas.init",function(v){y(v.svg)}),n.on(["shape.added","connection.added"],function(v){var m=v.element,Y=v.gfx;n.fire("interactionEvents.createHit",{element:m,gfx:Y})}),n.on(["shape.changed","connection.changed"],pA,function(v){var m=v.element,Y=v.gfx;n.fire("interactionEvents.updateHit",{element:m,gfx:Y})}),n.on("interactionEvents.createHit",pA,function(v){var m=v.element,Y=v.gfx;A.createDefaultHit(m,Y)}),n.on("interactionEvents.updateHit",function(v){var m=v.element,Y=v.gfx;A.updateDefaultHit(m,Y)});var R=I("djs-hit djs-hit-stroke"),S=I("djs-hit djs-hit-click-stroke"),M=I("djs-hit djs-hit-all"),T=I("djs-hit djs-hit-no-move"),D={all:M,"click-stroke":S,stroke:R,"no-move":T};function I(v,m){return m=_({stroke:"white",strokeWidth:15},m||{}),t.cls(v,["no-fill","no-border"],m)}function U(v,m){var Y=D[m];if(!Y)throw new Error("invalid hit type <"+m+">");return a0(v,Y),v}function x(v,m){h0(v,m)}this.removeHits=function(v){var m=Ps(".djs-hit",v);V(m,me)},this.createDefaultHit=function(v,m){var Y=v.waypoints,P=v.isFrame,J;return Y?this.createWaypointsHit(m,Y):(J=P?"stroke":"all",this.createBoxHit(m,J,{width:v.width,height:v.height}))},this.createWaypointsHit=function(v,m){var Y=bt(m);return U(Y,"stroke"),x(v,Y),Y},this.createBoxHit=function(v,m,Y){Y=_({x:0,y:0},Y);var P=B0("rect");return U(P,m),a0(P,Y),x(v,P),P},this.updateDefaultHit=function(v,m){var Y=K0(".djs-hit",m);if(Y)return v.waypoints?oA(Y,v.waypoints):a0(Y,{width:v.width,height:v.height}),Y},this.fire=i,this.triggerMouseEvent=B,this.mouseHandler=a,this.registerEvent=f,this.unregisterEvent=w}hA.$inject=["eventBus","elementRegistry","styles"];const Fa={__init__:["interactionEvents"],interactionEvents:["type",hA]};function z2(n,e){e=!!e,X0(n)||(n=[n]);var t,A,i,o;return V(n,function(a){var c=a;a.waypoints&&!e&&(c=z2(a.waypoints,!0));var l=c.x,u=c.y,B=c.height||0,d=c.width||0;(l<t||t===void 0)&&(t=l),(u<A||A===void 0)&&(A=u),(l+d>i||i===void 0)&&(i=l+d),(u+B>o||o===void 0)&&(o=u+B)}),{x:t,y:A,height:o-A,width:i-t}}function wA(n){return"waypoints"in n?"connection":"x"in n?"shape":"root"}function mA(n){return!!(n&&n.isFrame)}var xa=500,va=1e3;function S2(n,e){this._eventBus=n,this.offset=5;var t=e.cls("djs-outline",["no-fill"]),A=this;function i(o){var a=B0("rect");return a0(a,_({x:0,y:0,rx:4,width:100,height:100},t)),a}n.on(["shape.added","shape.changed"],xa,function(o){var a=o.element,c=o.gfx,l=K0(".djs-outline",c);l||(l=A.getOutline(a)||i(),h0(c,l)),A.updateShapeOutline(l,a)}),n.on(["connection.added","connection.changed"],function(o){var a=o.element,c=o.gfx,l=K0(".djs-outline",c);l||(l=i(),h0(c,l)),A.updateConnectionOutline(l,a)})}S2.prototype.updateShapeOutline=function(n,e){var t=!1,A=this._getProviders();A.length&&V(A,function(i){t=t||i.updateOutline(e,n)}),t||a0(n,{x:-this.offset,y:-this.offset,width:e.width+this.offset*2,height:e.height+this.offset*2})},S2.prototype.updateConnectionOutline=function(n,e){var t=z2(e);a0(n,{x:t.x-this.offset,y:t.y-this.offset,width:t.width+this.offset*2,height:t.height+this.offset*2})},S2.prototype.registerProvider=function(n,e){e||(e=n,n=va),this._eventBus.on("outline.getProviders",n,function(t){t.providers.push(e)})},S2.prototype._getProviders=function(){var n=this._eventBus.createEvent({type:"outline.getProviders",providers:[]});return this._eventBus.fire(n),n.providers},S2.prototype.getOutline=function(n){var e,t=this._getProviders();return V(t,function(A){Q2(A.getOutline)&&(e=e||A.getOutline(n))}),e},S2.$inject=["eventBus","styles","elementRegistry"];const Ua={__init__:["outline"],outline:["type",S2]};function K2(n,e){this._eventBus=n,this._canvas=e,this._selectedElements=[];var t=this;n.on(["shape.remove","connection.remove"],function(A){var i=A.element;t.deselect(i)}),n.on(["diagram.clear","root.set"],function(A){t.select(null)})}K2.$inject=["eventBus","canvas"],K2.prototype.deselect=function(n){var e=this._selectedElements,t=e.indexOf(n);if(t!==-1){var A=e.slice();e.splice(t,1),this._eventBus.fire("selection.changed",{oldSelection:A,newSelection:e})}},K2.prototype.get=function(){return this._selectedElements},K2.prototype.isSelected=function(n){return this._selectedElements.indexOf(n)!==-1},K2.prototype.select=function(n,e){var t=this._selectedElements,A=t.slice();X0(n)||(n=n?[n]:[]);var i=this._canvas,o=i.getRootElement();n=n.filter(function(a){var c=i.findRoot(a);return o===c}),e?V(n,function(a){t.indexOf(a)===-1&&t.push(a)}):this._selectedElements=t=n.slice(),this._eventBus.fire("selection.changed",{oldSelection:A,newSelection:t})};var CA="hover",MA="selected",et=6;function Zt(n,e,t){this._canvas=n;var A=this;this._multiSelectionBox=null;function i(a,c){n.addMarker(a,c)}function o(a,c){n.removeMarker(a,c)}e.on("element.hover",function(a){i(a.element,CA)}),e.on("element.out",function(a){o(a.element,CA)}),e.on("selection.changed",function(a){function c(d){o(d,MA)}function l(d){i(d,MA)}var u=a.oldSelection,B=a.newSelection;V(u,function(d){B.indexOf(d)===-1&&c(d)}),V(B,function(d){u.indexOf(d)===-1&&l(d)}),A._updateSelectionOutline(B)}),e.on("element.changed",function(a){t.isSelected(a.element)&&A._updateSelectionOutline(t.get())})}Zt.$inject=["canvas","eventBus","selection"],Zt.prototype._updateSelectionOutline=function(n){var e=this._canvas.getLayer("selectionOutline");is(e);var t=n.length>1,A=this._canvas.getContainer();if(P0(A)[t?"add":"remove"]("djs-multi-select"),!!t){var i=Ya(z2(n)),o=B0("rect");a0(o,_({rx:3},i)),P0(o).add("djs-selection-outline"),h0(e,o)}};function Ya(n){return{x:n.x-et,y:n.y-et,width:n.width+et*2,height:n.height+et*2}}function yA(n,e,t,A){n.on("create.end",500,function(i){var o=i.context,a=o.canExecute,c=o.elements,l=o.hints||{},u=l.autoSelect;if(a){if(u===!1)return;X0(u)?e.select(u):e.select(c.filter(Ta))}}),n.on("connect.end",500,function(i){var o=i.context,a=o.connection;a&&e.select(a)}),n.on("shape.move.end",500,function(i){var o=i.previousSelection||[],a=A.get(i.context.shape.id),c=O0(o,function(l){return a.id===l.id});c||e.select(a)}),n.on("element.click",function(i){if(Ie(i)){var o=i.element;o===t.getRootElement()&&(o=null);var a=e.isSelected(o),c=e.get().length>1,l=ya(i)||Ia(i);if(a&&c)return l?e.deselect(o):e.select(o);a?e.deselect(o):e.select(o,l)}})}yA.$inject=["eventBus","selection","canvas","elementRegistry"];function Ta(n){return!n.hidden}const Na={__init__:["selectionVisuals","selectionBehavior"],__depends__:[Fa,Ua],selection:["type",K2],selectionVisuals:["type",Zt],selectionBehavior:["type",yA]};function IA(n){this._counter=0,this._prefix=(n?n+"-":"")+Math.floor(Math.random()*1e9)+"-"}IA.prototype.next=function(){return this._prefix+ ++this._counter};var Ra=new IA("ov"),za=500;function I0(n,e,t,A){this._eventBus=e,this._canvas=t,this._elementRegistry=A,this._ids=Ra,this._overlayDefaults=_({show:null,scale:!0},n&&n.defaults),this._overlays={},this._overlayContainers=[],this._overlayRoot=Sa(t.getContainer()),this._init()}I0.$inject=["config.overlays","eventBus","canvas","elementRegistry"],I0.prototype.get=function(n){if(t2(n)&&(n={id:n}),t2(n.element)&&(n.element=this._elementRegistry.get(n.element)),n.element){var e=this._getOverlayContainer(n.element,!0);return e?n.type?j2(e.overlays,On({type:n.type})):e.overlays.slice():[]}else return n.type?j2(this._overlays,On({type:n.type})):n.id?this._overlays[n.id]:null},I0.prototype.add=function(n,e,t){if(T2(e)&&(t=e,e=null),n.id||(n=this._elementRegistry.get(n)),!t.position)throw new Error("must specifiy overlay position");if(!t.html)throw new Error("must specifiy overlay html");if(!n)throw new Error("invalid element specified");var A=this._ids.next();return t=_({},this._overlayDefaults,t,{id:A,type:e,element:n,html:t.html}),this._addOverlay(t),A},I0.prototype.remove=function(n){var e=this.get(n)||[];X0(e)||(e=[e]);var t=this;V(e,function(A){var i=t._getOverlayContainer(A.element,!0);if(A&&(Oe(A.html),Oe(A.htmlContainer),delete A.htmlContainer,delete A.element,delete t._overlays[A.id]),i){var o=i.overlays.indexOf(A);o!==-1&&i.overlays.splice(o,1)}})},I0.prototype.isShown=function(){return this._overlayRoot.style.display!=="none"},I0.prototype.show=function(){tt(this._overlayRoot)},I0.prototype.hide=function(){tt(this._overlayRoot,!1)},I0.prototype.clear=function(){this._overlays={},this._overlayContainers=[],sA(this._overlayRoot)},I0.prototype._updateOverlayContainer=function(n){var e=n.element,t=n.html,A=e.x,i=e.y;if(e.waypoints){var o=z2(e);A=o.x,i=o.y}DA(t,A,i),Us(n.html,"data-container-id",e.id)},I0.prototype._updateOverlay=function(n){var e=n.position,t=n.htmlContainer,A=n.element,i=e.left,o=e.top;if(e.right!==void 0){var a;A.waypoints?a=z2(A).width:a=A.width,i=e.right*-1+a}if(e.bottom!==void 0){var c;A.waypoints?c=z2(A).height:c=A.height,o=e.bottom*-1+c}DA(t,i||0,o||0),this._updateOverlayVisibilty(n,this._canvas.viewbox())},I0.prototype._createOverlayContainer=function(n){var e=A2('<div class="djs-overlays" />');G0(e,{position:"absolute"}),this._overlayRoot.appendChild(e);var t={html:e,element:n,overlays:[]};return this._updateOverlayContainer(t),this._overlayContainers.push(t),t},I0.prototype._updateRoot=function(n){var e=n.scale||1,t="matrix("+[e,0,0,e,-1*n.x*e,-1*n.y*e].join(",")+")";FA(this._overlayRoot,t)},I0.prototype._getOverlayContainer=function(n,e){var t=O0(this._overlayContainers,function(A){return A.element===n});return!t&&!e?this._createOverlayContainer(n):t},I0.prototype._addOverlay=function(n){var e=n.id,t=n.element,A=n.html,i,o;A.get&&A.constructor.prototype.jquery&&(A=A.get(0)),t2(A)&&(A=A2(A)),o=this._getOverlayContainer(t),i=A2('<div class="djs-overlay" data-overlay-id="'+e+'">'),G0(i,{position:"absolute"}),i.appendChild(A),n.type&&We(i).add("djs-overlay-"+n.type);var a=this._canvas.findRoot(t),c=this._canvas.getRootElement();tt(i,a===c),n.htmlContainer=i,o.overlays.push(n),o.html.appendChild(i),this._overlays[e]=n,this._updateOverlay(n),this._updateOverlayVisibilty(n,this._canvas.viewbox())},I0.prototype._updateOverlayVisibilty=function(n,e){var t=n.show,A=this._canvas.findRoot(n.element),i=t&&t.minZoom,o=t&&t.maxZoom,a=n.htmlContainer,c=this._canvas.getRootElement(),l=!0;(A!==c||t&&(W2(i)&&i>e.scale||W2(o)&&o<e.scale))&&(l=!1),tt(a,l),this._updateOverlayScale(n,e)},I0.prototype._updateOverlayScale=function(n,e){var t=n.scale,A,i,o=n.htmlContainer,a,c="";t!==!0&&(t===!1?(A=1,i=1):(A=t.min,i=t.max),W2(A)&&e.scale<A&&(a=(1/e.scale||1)*A),W2(i)&&e.scale>i&&(a=(1/e.scale||1)*i)),W2(a)&&(c="scale("+a+","+a+")"),FA(o,c)},I0.prototype._updateOverlaysVisibilty=function(n){var e=this;V(this._overlays,function(t){e._updateOverlayVisibilty(t,n)})},I0.prototype._init=function(){var n=this._eventBus,e=this;function t(A){e._updateRoot(A),e._updateOverlaysVisibilty(A),e.show()}n.on("canvas.viewbox.changing",function(A){e.hide()}),n.on("canvas.viewbox.changed",function(A){t(A.viewbox)}),n.on(["shape.remove","connection.remove"],function(A){var i=A.element,o=e.get({element:i});V(o,function(l){e.remove(l.id)});var a=e._getOverlayContainer(i);if(a){Oe(a.html);var c=e._overlayContainers.indexOf(a);c!==-1&&e._overlayContainers.splice(c,1)}}),n.on("element.changed",za,function(A){var i=A.element,o=e._getOverlayContainer(i,!0);o&&(V(o.overlays,function(a){e._updateOverlay(a)}),e._updateOverlayContainer(o))}),n.on("element.marker.update",function(A){var i=e._getOverlayContainer(A.element,!0);i&&We(i.html)[A.add?"add":"remove"](A.marker)}),n.on("root.set",function(){e._updateOverlaysVisibilty(e._canvas.viewbox())}),n.on("diagram.clear",this.clear,this)};function Sa(n){var e=A2('<div class="djs-overlay-container" />');return G0(e,{position:"absolute",width:0,height:0}),n.insertBefore(e,n.firstChild),e}function DA(n,e,t){G0(n,{left:e+"px",top:t+"px"})}function tt(n,e){n.style.display=e===!1?"none":""}function FA(n,e){n.style["transform-origin"]="top left",["","-ms-","-webkit-"].forEach(function(t){n.style[t+"transform"]=e})}const xA={__init__:["overlays"],overlays:["type",I0]};function vA(n,e,t,A){n.on("element.changed",function(i){var o=i.element;(o.parent||o===e.getRootElement())&&(i.gfx=t.getGraphics(o)),i.gfx&&n.fire(wA(o)+".changed",i)}),n.on("elements.changed",function(i){var o=i.elements;o.forEach(function(a){n.fire("element.changed",{element:a})}),A.updateContainments(o)}),n.on("shape.changed",function(i){A.update("shape",i.element,i.gfx)}),n.on("connection.changed",function(i){A.update("connection",i.element,i.gfx)})}vA.$inject=["eventBus","canvas","elementRegistry","graphicsFactory"];const Ga={__init__:["changeSupport"],changeSupport:["type",vA]};var ka=1e3;function Y0(n){this._eventBus=n}Y0.$inject=["eventBus"];function Pa(n,e){return function(t){return n.call(e||null,t.context,t.command,t)}}Y0.prototype.on=function(n,e,t,A,i,o){if((Q2(e)||f2(e))&&(o=i,i=A,A=t,t=e,e=null),Q2(t)&&(o=i,i=A,A=t,t=ka),T2(i)&&(o=i,i=!1),!Q2(A))throw new Error("handlerFn must be a function");X0(n)||(n=[n]);var a=this._eventBus;V(n,function(c){var l=["commandStack",c,e].filter(function(u){return u}).join(".");a.on(l,t,i?Pa(A,o):A,o)})},Y0.prototype.canExecute=B2("canExecute"),Y0.prototype.preExecute=B2("preExecute"),Y0.prototype.preExecuted=B2("preExecuted"),Y0.prototype.execute=B2("execute"),Y0.prototype.executed=B2("executed"),Y0.prototype.postExecute=B2("postExecute"),Y0.prototype.postExecuted=B2("postExecuted"),Y0.prototype.revert=B2("revert"),Y0.prototype.reverted=B2("reverted");function B2(n){return function(t,A,i,o,a){(Q2(t)||f2(t))&&(a=o,o=i,i=A,A=t,t=null),this.on(t,n,A,i,o,a)}}function qt(n,e){e.invoke(Y0,this),this.executed(function(t){var A=t.context;A.rootElement?n.setRootElement(A.rootElement):A.rootElement=n.getRootElement()}),this.revert(function(t){var A=t.context;A.rootElement&&n.setRootElement(A.rootElement)})}e2(qt,Y0),qt.$inject=["canvas","injector"];const Ja={__init__:["rootElementsBehavior"],rootElementsBehavior:["type",qt]};var Ha={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#39;"};function ba(n){return n=""+n,n&&n.replace(/[&<>"']/g,function(e){return Ha[e]})}var Va="_plane";function $t(n){var e=n.id;return X(n,"bpmn:SubProcess")?La(e):e}function La(n){return n+Va}var Wa="bjs-breadcrumbs-shown";function UA(n,e,t){var A=A2('<ul class="bjs-breadcrumbs"></ul>'),i=t.getContainer(),o=We(i);i.appendChild(A);var a=[];n.on("element.changed",function(l){var u=l.element,B=p0(u),d=O0(a,function(f){return f===B});d&&c()});function c(l){l&&(a=ja(l));var u=a.map(function(d){var f=ba(d.name||d.id),w=A2('<li><span class="bjs-crumb"><a title="'+f+'">'+f+"</a></span></li>"),y=t.findRoot($t(d))||t.findRoot(d.id);if(!y&&X(d,"bpmn:Process")){var F=e.find(function(R){var S=p0(R);return S&&S.get("processRef")&&S.get("processRef")===d});y=t.findRoot(F.id)}return w.addEventListener("click",function(){t.setRootElement(y)}),w});A.innerHTML="";var B=u.length>1;o.toggle(Wa,B),u.forEach(function(d){A.appendChild(d)})}n.on("root.set",function(l){c(l.element)})}UA.$inject=["eventBus","elementRegistry","canvas"];function ja(n){for(var e=p0(n),t=[],A=e;A;A=A.$parent)(X(A,"bpmn:SubProcess")||X(A,"bpmn:Process"))&&t.push(A);return t.reverse()}function YA(n,e){var t=null,A=new _a;n.on("root.set",function(i){var o=i.element,a=e.viewbox(),c=A.get(o);if(A.set(t,{x:a.x,y:a.y,zoom:a.scale}),t=o,!(X(o,"bpmn:Collaboration")&&!c)){c=c||{x:0,y:0,zoom:1};var l=(a.x-c.x)*a.scale,u=(a.y-c.y)*a.scale;(l!==0||u!==0)&&e.scroll({dx:l,dy:u}),c.zoom!==a.scale&&e.zoom(c.zoom,{x:0,y:0})}}),n.on("diagram.clear",function(){A.clear(),t=null})}YA.$inject=["eventBus","canvas"];function _a(){this._entries=[],this.set=function(n,e){var t=!1;for(var A in this._entries)if(this._entries[A][0]===n){this._entries[A][1]=e,t=!0;break}t||this._entries.push([n,e])},this.get=function(n){for(var e in this._entries)if(this._entries[e][0]===n)return this._entries[e][1];return null},this.clear=function(){this._entries.length=0},this.remove=function(n){var e=-1;for(var t in this._entries)if(this._entries[t][0]===n){e=t;break}e!==-1&&this._entries.splice(e,1)}}var TA={x:180,y:160};function G2(n,e){this._eventBus=n,this._moddle=e;var t=this;n.on("import.render.start",1500,function(A,i){t._handleImport(i.definitions)})}G2.prototype._handleImport=function(n){if(n.diagrams){var e=this;this._definitions=n,this._processToDiagramMap={},n.diagrams.forEach(function(A){!A.plane||!A.plane.bpmnElement||(e._processToDiagramMap[A.plane.bpmnElement.id]=A)});var t=[];n.diagrams.forEach(function(A){var i=e._createNewDiagrams(A.plane);Array.prototype.push.apply(t,i)}),t.forEach(function(A){e._movePlaneElementsToOrigin(A.plane)})}},G2.prototype._createNewDiagrams=function(n){var e=this,t=[],A=[];n.get("planeElement").forEach(function(o){var a=o.bpmnElement;if(a){var c=a.$parent;X(a,"bpmn:SubProcess")&&!o.isExpanded&&t.push(a),Oa(a,n)&&A.push({diElement:o,parent:c})}});var i=[];return t.forEach(function(o){if(!e._processToDiagramMap[o.id]){var a=e._createDiagram(o);e._processToDiagramMap[o.id]=a,i.push(a)}}),A.forEach(function(o){for(var a=o.diElement,c=o.parent;c&&t.indexOf(c)===-1;)c=c.$parent;if(c){var l=e._processToDiagramMap[c.id];e._moveToDiPlane(a,l.plane)}}),i},G2.prototype._movePlaneElementsToOrigin=function(n){var e=n.get("planeElement"),t=Xa(n),A={x:t.x-TA.x,y:t.y-TA.y};e.forEach(function(i){i.waypoint?i.waypoint.forEach(function(o){o.x=o.x-A.x,o.y=o.y-A.y}):i.bounds&&(i.bounds.x=i.bounds.x-A.x,i.bounds.y=i.bounds.y-A.y)})},G2.prototype._moveToDiPlane=function(n,e){var t=NA(n),A=t.plane.get("planeElement");A.splice(A.indexOf(n),1),e.get("planeElement").push(n)},G2.prototype._createDiagram=function(n){var e=this._moddle.create("bpmndi:BPMNPlane",{bpmnElement:n}),t=this._moddle.create("bpmndi:BPMNDiagram",{plane:e});return e.$parent=t,e.bpmnElement=n,t.$parent=this._definitions,this._definitions.diagrams.push(t),t},G2.$inject=["eventBus","moddle"];function NA(n){return X(n,"bpmndi:BPMNDiagram")?n:NA(n.$parent)}function Xa(n){var e={top:1/0,right:-1/0,bottom:-1/0,left:1/0};return n.planeElement.forEach(function(t){if(t.bounds){var A=Xt(t.bounds);e.top=Math.min(A.top,e.top),e.left=Math.min(A.left,e.left)}}),da(e)}function Oa(n,e){var t=n.$parent;return!(!X(t,"bpmn:SubProcess")||t===e.bpmnElement||Vr(n,["bpmn:DataInputAssociation","bpmn:DataOutputAssociation"]))}var nt=250,Ka='<svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 16 16"><path fill-rule="evenodd" d="M4.81801948,3.50735931 L10.4996894,9.1896894 L10.5,4 L12,4 L12,12 L4,12 L4,10.5 L9.6896894,10.4996894 L3.75735931,4.56801948 C3.46446609,4.27512627 3.46446609,3.80025253 3.75735931,3.50735931 C4.05025253,3.21446609 4.52512627,3.21446609 4.81801948,3.50735931 Z"/></svg>',Za="bjs-drilldown-empty";function m2(n,e,t,A){Y0.call(this,e),this._canvas=n,this._eventBus=e,this._elementRegistry=t,this._overlays=A;var i=this;this.executed("shape.toggleCollapse",nt,function(o){var a=o.shape;i._canDrillDown(a)?i._addOverlay(a):i._removeOverlay(a)},!0),this.reverted("shape.toggleCollapse",nt,function(o){var a=o.shape;i._canDrillDown(a)?i._addOverlay(a):i._removeOverlay(a)},!0),this.executed(["shape.create","shape.move","shape.delete"],nt,function(o){var a=o.oldParent,c=o.newParent||o.parent,l=o.shape;i._canDrillDown(l)&&i._addOverlay(l),i._updateDrilldownOverlay(a),i._updateDrilldownOverlay(c),i._updateDrilldownOverlay(l)},!0),this.reverted(["shape.create","shape.move","shape.delete"],nt,function(o){var a=o.oldParent,c=o.newParent||o.parent,l=o.shape;i._canDrillDown(l)&&i._addOverlay(l),i._updateDrilldownOverlay(a),i._updateDrilldownOverlay(c),i._updateDrilldownOverlay(l)},!0),e.on("import.render.complete",function(){t.filter(function(o){return i._canDrillDown(o)}).map(function(o){i._addOverlay(o)})})}e2(m2,Y0),m2.prototype._updateDrilldownOverlay=function(n){var e=this._canvas;if(n){var t=e.findRoot(n);t&&this._updateOverlayVisibility(t)}},m2.prototype._canDrillDown=function(n){var e=this._canvas;return X(n,"bpmn:SubProcess")&&e.findRoot($t(n))},m2.prototype._updateOverlayVisibility=function(n){var e=this._overlays,t=p0(n),A=e.get({element:t.id,type:"drilldown"})[0];if(A){var i=t&&t.get("flowElements")&&t.get("flowElements").length;We(A.html).toggle(Za,!i)}},m2.prototype._addOverlay=function(n){var e=this._canvas,t=this._overlays,A=t.get({element:n,type:"drilldown"});A.length&&this._removeOverlay(n);var i=A2('<button class="bjs-drilldown">'+Ka+"</button>");i.addEventListener("click",function(){e.setRootElement(e.findRoot($t(n)))}),t.add(n,"drilldown",{position:{bottom:-7,right:-8},html:i}),this._updateOverlayVisibility(n)},m2.prototype._removeOverlay=function(n){var e=this._overlays;e.remove({element:n,type:"drilldown"})},m2.$inject=["canvas","eventBus","elementRegistry","overlays"];const qa={__depends__:[xA,Ga,Ja],__init__:["drilldownBreadcrumbs","drilldownOverlayBehavior","drilldownCentering","subprocessCompatibility"],drilldownBreadcrumbs:["type",UA],drilldownCentering:["type",YA],drilldownOverlayBehavior:["type",m2],subprocessCompatibility:["type",G2]},$a=/^class[ {]/;function ec(n){return $a.test(n.toString())}function en(n){return Array.isArray(n)}function tn(n,e){return Object.prototype.hasOwnProperty.call(n,e)}function At(...n){n.length===1&&en(n[0])&&(n=n[0]),n=[...n];const e=n.pop();return e.$inject=n,e}const tc=/constructor\s*[^(]*\(\s*([^)]*)\)/m,nc=/^(?:async\s+)?(?:function\s*[^(]*)?(?:\(\s*([^)]*)\)|(\w+))/m,Ac=/\/\*([^*]*)\*\//m;function ic(n){if(typeof n!="function")throw new Error(`Cannot annotate "${n}". Expected a function!`);const e=n.toString().match(ec(n)?tc:nc);if(!e)return[];const t=e[1]||e[2];return t&&t.split(",").map(A=>{const i=A.match(Ac);return(i&&i[1]||A).trim()})||[]}function RA(n,e){e=e||{get:function(M,T){if(t.push(M),T===!1)return null;throw a(`No provider for "${M}"!`)}};const t=[],A=this._providers=Object.create(e._providers||null),i=this._instances=Object.create(null),o=i.injector=this,a=function(M){const T=t.join(" -> ");return t.length=0,new Error(T?`${M} (Resolving: ${T})`:M)};function c(M,T){if(!A[M]&&M.indexOf(".")!==-1){const D=M.split(".");let I=c(D.shift());for(;D.length;)I=I[D.shift()];return I}if(tn(i,M))return i[M];if(tn(A,M)){if(t.indexOf(M)!==-1)throw t.push(M),a("Cannot resolve circular dependency!");return t.push(M),i[M]=A[M][0](A[M][1]),t.pop(),i[M]}return e.get(M,T)}function l(M,T){if(typeof T>"u"&&(T={}),typeof M!="function")if(en(M))M=At(M.slice());else throw a(`Cannot invoke "${M}". Expected a function!`);const I=(M.$inject||ic(M)).map(U=>tn(T,U)?T[U]:c(U));return{fn:M,dependencies:I}}function u(M){const{fn:T,dependencies:D}=l(M),I=Function.prototype.bind.apply(T,[null].concat(D));return new I}function B(M,T,D){const{fn:I,dependencies:U}=l(M,D);return I.apply(T,U)}function d(M){return At(T=>M.get(T))}function f(M,T){if(T&&T.length){const D=Object.create(null),I=Object.create(null),U=[],x=[],v=[];let m,Y,P,J;for(let H in A)m=A[H],T.indexOf(H)!==-1&&(m[2]==="private"?(Y=U.indexOf(m[3]),Y===-1?(P=m[3].createChild([],T),J=d(P),U.push(m[3]),x.push(P),v.push(J),D[H]=[J,H,"private",P]):D[H]=[v[Y],H,"private",x[Y]]):D[H]=[m[2],m[1]],I[H]=!0),(m[2]==="factory"||m[2]==="type")&&m[1].$scope&&T.forEach(t0=>{m[1].$scope.indexOf(t0)!==-1&&(D[H]=[m[2],m[1]],I[t0]=!0)});T.forEach(H=>{if(!I[H])throw new Error('No provider for "'+H+'". Cannot use provider from the parent!')}),M.unshift(D)}return new RA(M,o)}const w={factory:B,type:u,value:function(M){return M}};function y(M,T){const D=M.__init__||[];return function(){D.forEach(I=>{typeof I=="string"?T.get(I):T.invoke(I)})}}function F(M){const T=M.__exports__;if(T){const D=M.__modules__,I=Object.keys(M).reduce((Y,P)=>(P!=="__exports__"&&P!=="__modules__"&&P!=="__init__"&&P!=="__depends__"&&(Y[P]=M[P]),Y),Object.create(null)),U=(D||[]).concat(I),x=f(U),v=At(function(Y){return x.get(Y)});T.forEach(function(Y){A[Y]=[v,Y,"private",x]});const m=(M.__init__||[]).slice();return m.unshift(function(){x.init()}),M=Object.assign({},M,{__init__:m}),y(M,x)}return Object.keys(M).forEach(function(D){if(D==="__init__"||D==="__depends__")return;if(M[D][2]==="private"){A[D]=M[D];return}const I=M[D][0],U=M[D][1];A[D]=[w[I],oc(I,U),I]}),y(M,o)}function R(M,T){return M.indexOf(T)!==-1||(M=(T.__depends__||[]).reduce(R,M),M.indexOf(T)!==-1)?M:M.concat(T)}function S(M){const T=M.reduce(R,[]).map(F);let D=!1;return function(){D||(D=!0,T.forEach(I=>I()))}}this.get=c,this.invoke=B,this.instantiate=u,this.createChild=f,this.init=S(n)}function oc(n,e){return n!=="value"&&en(e)&&(e=At(e.slice())),e}var rc=1;function C2(n,e){c2.call(this,n,rc),this.CONNECTION_STYLE=e.style(["no-fill"],{strokeWidth:5,stroke:"fuchsia"}),this.SHAPE_STYLE=e.style({fill:"white",stroke:"fuchsia",strokeWidth:2}),this.FRAME_STYLE=e.style(["no-fill"],{stroke:"fuchsia",strokeDasharray:4,strokeWidth:2})}e2(C2,c2),C2.prototype.canRender=function(){return!0},C2.prototype.drawShape=function(e,t,A){var i=B0("rect");return a0(i,{x:0,y:0,width:t.width||0,height:t.height||0}),mA(t)?a0(i,_({},this.FRAME_STYLE,A||{})):a0(i,_({},this.SHAPE_STYLE,A||{})),h0(e,i),i},C2.prototype.drawConnection=function(e,t,A){var i=bt(t.waypoints,_({},this.CONNECTION_STYLE,A||{}));return h0(e,i),i},C2.prototype.getShapePath=function(e){var t=e.x,A=e.y,i=e.width,o=e.height,a=[["M",t,A],["l",i,0],["l",0,o],["l",-i,0],["z"]];return N2(a)},C2.prototype.getConnectionPath=function(e){var t=e.waypoints,A,i,o=[];for(A=0;i=t[A];A++)i=i.original||i,o.push([A===0?"M":"L",i.x,i.y]);return N2(o)},C2.$inject=["eventBus","styles"];function sc(){var n={"no-fill":{fill:"none"},"no-border":{strokeOpacity:0},"no-events":{pointerEvents:"none"}},e=this;this.cls=function(t,A,i){var o=this.style(A,i);return _(o,{class:t})},this.style=function(t,A){!X0(t)&&!A&&(A=t,t=[]);var i=_2(t,function(o,a){return _(o,n[a]||{})},{});return A?_(i,A):i},this.computeStyle=function(t,A,i){return X0(A)||(i=A,A=[]),e.style(A||[],_({},i,t||{}))}}const ac={__init__:["defaultRenderer"],defaultRenderer:["type",C2],styles:["type",sc]};function cc(n,e){if(!n||!e)return-1;var t=n.indexOf(e);return t!==-1&&n.splice(t,1),t}function lc(n,e,t){if(!(!n||!e)){typeof t!="number"&&(t=-1);var A=n.indexOf(e);if(A!==-1){if(A===t)return;if(t!==-1)n.splice(A,1);else return}t!==-1?n.splice(t,0,e):n.push(e)}}function it(n,e){return Math.round(n*e)/e}function zA(n){return f2(n)?n+"px":n}function uc(n){for(;n.parent;)n=n.parent;return n}function Bc(n){n=_({},{width:"100%",height:"100%"},n);const e=n.container||document.body,t=document.createElement("div");return t.setAttribute("class","djs-container djs-parent"),G0(t,{position:"relative",overflow:"hidden",width:zA(n.width),height:zA(n.height)}),e.appendChild(t),t}function SA(n,e,t){const A=B0("g");P0(A).add(e);const i=t!==void 0?t:n.childNodes.length-1;return n.insertBefore(A,n.childNodes[i]||null),A}const gc="base",GA=0,dc=1,Ec={shape:["x","y","width","height"],connection:["waypoints"]};function O(n,e,t,A){this._eventBus=e,this._elementRegistry=A,this._graphicsFactory=t,this._rootsIdx=0,this._layers={},this._planes=[],this._rootElement=null,this._init(n||{})}O.$inject=["config.canvas","eventBus","graphicsFactory","elementRegistry"],O.prototype._init=function(n){const e=this._eventBus,t=this._container=Bc(n),A=this._svg=B0("svg");a0(A,{width:"100%",height:"100%"}),h0(t,A);const i=this._viewport=SA(A,"viewport");n.deferUpdate&&(this._viewboxChanged=kr(p2(this._viewboxChanged,this),300)),e.on("diagram.init",()=>{e.fire("canvas.init",{svg:A,viewport:i})}),e.on(["shape.added","connection.added","shape.removed","connection.removed","elements.changed","root.set"],()=>{delete this._cachedViewbox}),e.on("diagram.destroy",500,this._destroy,this),e.on("diagram.clear",500,this._clear,this)},O.prototype._destroy=function(){this._eventBus.fire("canvas.destroy",{svg:this._svg,viewport:this._viewport});const n=this._container.parentNode;n&&n.removeChild(this._container),delete this._svg,delete this._container,delete this._layers,delete this._planes,delete this._rootElement,delete this._viewport},O.prototype._clear=function(){this._elementRegistry.getAll().forEach(e=>{const t=wA(e);t==="root"?this.removeRootElement(e):this._removeElement(e,t)}),this._planes=[],this._rootElement=null,delete this._cachedViewbox},O.prototype.getDefaultLayer=function(){return this.getLayer(gc,GA)},O.prototype.getLayer=function(n,e){if(!n)throw new Error("must specify a name");let t=this._layers[n];if(t||(t=this._layers[n]=this._createLayer(n,e)),typeof e<"u"&&t.index!==e)throw new Error("layer <"+n+"> already created at index <"+e+">");return t.group},O.prototype._getChildIndex=function(n){return _2(this._layers,function(e,t){return t.visible&&n>=t.index&&e++,e},0)},O.prototype._createLayer=function(n,e){typeof e>"u"&&(e=dc);const t=this._getChildIndex(e);return{group:SA(this._viewport,"layer-"+n,t),index:e,visible:!0}},O.prototype.showLayer=function(n){if(!n)throw new Error("must specify a name");const e=this._layers[n];if(!e)throw new Error("layer <"+n+"> does not exist");const t=this._viewport,A=e.group,i=e.index;if(e.visible)return A;const o=this._getChildIndex(i);return t.insertBefore(A,t.childNodes[o]||null),e.visible=!0,A},O.prototype.hideLayer=function(n){if(!n)throw new Error("must specify a name");const e=this._layers[n];if(!e)throw new Error("layer <"+n+"> does not exist");const t=e.group;return e.visible&&(me(t),e.visible=!1),t},O.prototype._removeLayer=function(n){const e=this._layers[n];e&&(delete this._layers[n],me(e.group))},O.prototype.getActiveLayer=function(){const n=this._findPlaneForRoot(this.getRootElement());return n?n.layer:null},O.prototype.findRoot=function(n){return typeof n=="string"&&(n=this._elementRegistry.get(n)),n?(this._findPlaneForRoot(uc(n))||{}).rootElement:void 0},O.prototype.getRootElements=function(){return this._planes.map(function(n){return n.rootElement})},O.prototype._findPlaneForRoot=function(n){return O0(this._planes,function(e){return e.rootElement===n})},O.prototype.getContainer=function(){return this._container},O.prototype._updateMarker=function(n,e,t){let A;n.id||(n=this._elementRegistry.get(n)),A=this._elementRegistry._elements[n.id],A&&(V([A.gfx,A.secondaryGfx],function(i){i&&(t?P0(i).add(e):P0(i).remove(e))}),this._eventBus.fire("element.marker.update",{element:n,gfx:A.gfx,marker:e,add:!!t}))},O.prototype.addMarker=function(n,e){this._updateMarker(n,e,!0)},O.prototype.removeMarker=function(n,e){this._updateMarker(n,e,!1)},O.prototype.hasMarker=function(n,e){n.id||(n=this._elementRegistry.get(n));const t=this.getGraphics(n);return P0(t).has(e)},O.prototype.toggleMarker=function(n,e){this.hasMarker(n,e)?this.removeMarker(n,e):this.addMarker(n,e)},O.prototype.getRootElement=function(){const n=this._rootElement;return n||this._planes.length?n:this.setRootElement(this.addRootElement(null))},O.prototype.addRootElement=function(n){const e=this._rootsIdx++;n||(n={id:"__implicitroot_"+e,children:[],isImplicit:!0});const t=n.layer="root-"+e;this._ensureValid("root",n);const A=this.getLayer(t,GA);return this.hideLayer(t),this._addRoot(n,A),this._planes.push({rootElement:n,layer:A}),n},O.prototype.removeRootElement=function(n){if(typeof n=="string"&&(n=this._elementRegistry.get(n)),!!this._findPlaneForRoot(n))return this._removeRoot(n),this._removeLayer(n.layer),this._planes=this._planes.filter(function(t){return t.rootElement!==n}),this._rootElement===n&&(this._rootElement=null),n},O.prototype.setRootElement=function(n){if(n===this._rootElement)return;let e;if(!n)throw new Error("rootElement required");return e=this._findPlaneForRoot(n),e||(n=this.addRootElement(n)),this._setRoot(n),n},O.prototype._removeRoot=function(n){const e=this._elementRegistry,t=this._eventBus;t.fire("root.remove",{element:n}),t.fire("root.removed",{element:n}),e.remove(n)},O.prototype._addRoot=function(n,e){const t=this._elementRegistry,A=this._eventBus;A.fire("root.add",{element:n}),t.add(n,e),A.fire("root.added",{element:n,gfx:e})},O.prototype._setRoot=function(n,e){const t=this._rootElement;t&&(this._elementRegistry.updateGraphics(t,null,!0),this.hideLayer(t.layer)),n&&(e||(e=this._findPlaneForRoot(n).layer),this._elementRegistry.updateGraphics(n,this._svg,!0),this.showLayer(n.layer)),this._rootElement=n,this._eventBus.fire("root.set",{element:n})},O.prototype._ensureValid=function(n,e){if(!e.id)throw new Error("element must have an id");if(this._elementRegistry.get(e.id))throw new Error("element <"+e.id+"> already exists");const t=Ec[n];if(!_n(t,function(i){return typeof e[i]<"u"}))throw new Error("must supply { "+t.join(", ")+" } with "+n)},O.prototype._setParent=function(n,e,t){lc(e.children,n,t),n.parent=e},O.prototype._addElement=function(n,e,t,A){t=t||this.getRootElement();const i=this._eventBus,o=this._graphicsFactory;this._ensureValid(n,e),i.fire(n+".add",{element:e,parent:t}),this._setParent(e,t,A);const a=o.create(n,e,A);return this._elementRegistry.add(e,a),o.update(n,e,a),i.fire(n+".added",{element:e,gfx:a}),e},O.prototype.addShape=function(n,e,t){return this._addElement("shape",n,e,t)},O.prototype.addConnection=function(n,e,t){return this._addElement("connection",n,e,t)},O.prototype._removeElement=function(n,e){const t=this._elementRegistry,A=this._graphicsFactory,i=this._eventBus;if(n=t.get(n.id||n),!!n)return i.fire(e+".remove",{element:n}),A.remove(n),cc(n.parent&&n.parent.children,n),n.parent=null,i.fire(e+".removed",{element:n}),t.remove(n),n},O.prototype.removeShape=function(n){return this._removeElement(n,"shape")},O.prototype.removeConnection=function(n){return this._removeElement(n,"connection")},O.prototype.getGraphics=function(n,e){return this._elementRegistry.getGraphics(n,e)},O.prototype._changeViewbox=function(n){this._eventBus.fire("canvas.viewbox.changing"),n.apply(this),this._cachedViewbox=null,this._viewboxChanged()},O.prototype._viewboxChanged=function(){this._eventBus.fire("canvas.viewbox.changed",{viewbox:this.viewbox()})},O.prototype.viewbox=function(n){if(n===void 0&&this._cachedViewbox)return this._cachedViewbox;const e=this._viewport,t=this.getSize();let A,i,o,a,c,l,u;if(n)this._changeViewbox(function(){c=Math.min(t.width/n.width,t.height/n.height);const B=this._svg.createSVGMatrix().scale(c).translate(-n.x,-n.y);Ce(e,B)});else return o=this._rootElement?this.getActiveLayer():null,A=o&&o.getBBox()||{},a=Ce(e),i=a?a.matrix:ss(),c=it(i.a,1e3),l=it(-i.e||0,1e3),u=it(-i.f||0,1e3),n=this._cachedViewbox={x:l?l/c:0,y:u?u/c:0,width:t.width/c,height:t.height/c,scale:c,inner:{width:A.width||0,height:A.height||0,x:A.x||0,y:A.y||0},outer:t},n;return n},O.prototype.scroll=function(n){const e=this._viewport;let t=e.getCTM();return n&&this._changeViewbox(function(){n=_({dx:0,dy:0},n||{}),t=this._svg.createSVGMatrix().translate(n.dx,n.dy).multiply(t),kA(e,t)}),{x:t.e,y:t.f}},O.prototype.scrollToElement=function(n,e){let t=100;typeof n=="string"&&(n=this._elementRegistry.get(n));const A=this.findRoot(n);if(A!==this.getRootElement()&&this.setRootElement(A),A===n)return;e||(e={}),typeof e=="number"&&(t=e),e={top:e.top||t,right:e.right||t,bottom:e.bottom||t,left:e.left||t};const i=z2(n),o=Xt(i),a=this.viewbox(),c=this.zoom();let l,u;a.y+=e.top/c,a.x+=e.left/c,a.width-=(e.right+e.left)/c,a.height-=(e.bottom+e.top)/c;const B=Xt(a);if(!(i.width<a.width&&i.height<a.height))l=i.x-a.x,u=i.y-a.y;else{const f=Math.max(0,o.right-B.right),w=Math.min(0,o.left-B.left),y=Math.max(0,o.bottom-B.bottom),F=Math.min(0,o.top-B.top);l=f||w,u=y||F}this.scroll({dx:-l*c,dy:-u*c})},O.prototype.zoom=function(n,e){if(!n)return this.viewbox(n).scale;if(n==="fit-viewport")return this._fitViewport(e);let t,A;return this._changeViewbox(function(){typeof e!="object"&&(t=this.viewbox().outer,e={x:t.width/2,y:t.height/2}),A=this._setZoom(n,e)}),it(A.a,1e3)};function kA(n,e){const t="matrix("+e.a+","+e.b+","+e.c+","+e.d+","+e.e+","+e.f+")";n.setAttribute("transform",t)}O.prototype._fitViewport=function(n){const e=this.viewbox(),t=e.outer,A=e.inner;let i,o;return A.x>=0&&A.y>=0&&A.x+A.width<=t.width&&A.y+A.height<=t.height&&!n?o={x:0,y:0,width:Math.max(A.width+A.x,t.width),height:Math.max(A.height+A.y,t.height)}:(i=Math.min(1,t.width/A.width,t.height/A.height),o={x:A.x+(n?A.width/2-t.width/i/2:0),y:A.y+(n?A.height/2-t.height/i/2:0),width:t.width/i,height:t.height/i}),this.viewbox(o),this.viewbox(!1).scale},O.prototype._setZoom=function(n,e){const t=this._svg,A=this._viewport,i=t.createSVGMatrix(),o=t.createSVGPoint();let a,c,l,u,B;l=A.getCTM();const d=l.a;return e?(a=_(o,e),c=a.matrixTransform(l.inverse()),u=i.translate(c.x,c.y).scale(1/d*n).translate(-c.x,-c.y),B=l.multiply(u)):B=i.scale(n),kA(this._viewport,B),B},O.prototype.getSize=function(){return{width:this._container.clientWidth,height:this._container.clientHeight}},O.prototype.getAbsoluteBBox=function(n){const e=this.viewbox();let t;n.waypoints?t=this.getGraphics(n).getBBox():t=n;const A=t.x*e.scale-e.x*e.scale,i=t.y*e.scale-e.y*e.scale,o=t.width*e.scale,a=t.height*e.scale;return{x:A,y:i,width:o,height:a}},O.prototype.resized=function(){delete this._cachedViewbox,this._eventBus.fire("canvas.resized")};var Z2="data-element-id";function J0(n){this._elements={},this._eventBus=n}J0.$inject=["eventBus"],J0.prototype.add=function(n,e,t){var A=n.id;this._validateId(A),a0(e,Z2,A),t&&a0(t,Z2,A),this._elements[A]={element:n,gfx:e,secondaryGfx:t}},J0.prototype.remove=function(n){var e=this._elements,t=n.id||n,A=t&&e[t];A&&(a0(A.gfx,Z2,""),A.secondaryGfx&&a0(A.secondaryGfx,Z2,""),delete e[t])},J0.prototype.updateId=function(n,e){this._validateId(e),typeof n=="string"&&(n=this.get(n)),this._eventBus.fire("element.updateId",{element:n,newId:e});var t=this.getGraphics(n),A=this.getGraphics(n,!0);this.remove(n),n.id=e,this.add(n,t,A)},J0.prototype.updateGraphics=function(n,e,t){var A=n.id||n,i=this._elements[A];return t?i.secondaryGfx=e:i.gfx=e,e&&a0(e,Z2,A),e},J0.prototype.get=function(n){var e;typeof n=="string"?e=n:e=n&&a0(n,Z2);var t=this._elements[e];return t&&t.element},J0.prototype.filter=function(n){var e=[];return this.forEach(function(t,A){n(t,A)&&e.push(t)}),e},J0.prototype.find=function(n){for(var e=this._elements,t=Object.keys(e),A=0;A<t.length;A++){var i=t[A],o=e[i],a=o.element,c=o.gfx;if(n(a,c))return a}},J0.prototype.getAll=function(){return this.filter(function(n){return n})},J0.prototype.forEach=function(n){var e=this._elements;Object.keys(e).forEach(function(t){var A=e[t],i=A.element,o=A.gfx;return n(i,o)})},J0.prototype.getGraphics=function(n,e){var t=n.id||n,A=this._elements[t];return A&&(e?A.secondaryGfx:A.gfx)},J0.prototype._validateId=function(n){if(!n)throw new Error("element must have an id");if(this._elements[n])throw new Error("element with id "+n+" already added")};var ot={exports:{}},rt={},PA;function JA(){if(PA)return rt;PA=1;function n(t,A,i,o){var a=i.inverse;return Object.defineProperty(t,"remove",{value:function(c){var l=this.indexOf(c);return l!==-1&&(this.splice(l,1),A.unset(c,a,o)),c}}),Object.defineProperty(t,"contains",{value:function(c){return this.indexOf(c)!==-1}}),Object.defineProperty(t,"add",{value:function(c,l){var u=this.indexOf(c);if(typeof l>"u"){if(u!==-1)return;l=this.length}u!==-1&&this.splice(u,1),this.splice(l,0,c),u===-1&&A.set(c,a,o)}}),Object.defineProperty(t,"__refs_collection",{value:!0}),t}function e(t){return t.__refs_collection===!0}return rt.extend=n,rt.isExtended=e,rt}var nn,HA;function fc(){if(HA)return nn;HA=1;var n=JA();function e(o,a){return Object.prototype.hasOwnProperty.call(o,a.name||a)}function t(o,a,c){var l=n.extend(c[a.name]||[],o,a,c);Object.defineProperty(c,a.name,{enumerable:a.enumerable,value:l}),l.length&&l.forEach(function(u){o.set(u,a.inverse,c)})}function A(o,a,c){var l=a.inverse,u=c[a.name];Object.defineProperty(c,a.name,{configurable:a.configurable,enumerable:a.enumerable,get:function(){return u},set:function(B){if(B!==u){var d=u;u=null,d&&o.unset(d,l,c),u=B,o.set(u,l,c)}}})}function i(o,a){if(!(this instanceof i))return new i(o,a);o.inverse=a,a.inverse=o,this.props={},this.props[o.name]=o,this.props[a.name]=a}return i.prototype.bind=function(o,a){if(typeof a=="string"){if(!this.props[a])throw new Error("no property <"+a+"> in ref");a=this.props[a]}a.collection?t(this,a,o):A(this,a,o)},i.prototype.ensureRefsCollection=function(o,a){var c=o[a.name];return n.isExtended(c)||t(this,a,o),c},i.prototype.ensureBound=function(o,a){e(o,a)||this.bind(o,a)},i.prototype.unset=function(o,a,c){o&&(this.ensureBound(o,a),a.collection?this.ensureRefsCollection(o,a).remove(c):o[a.name]=void 0)},i.prototype.set=function(o,a,c){o&&(this.ensureBound(o,a),a.collection?this.ensureRefsCollection(o,a).add(c):o[a.name]=c)},nn=i,nn}var bA;function Qc(){return bA||(bA=1,ot.exports=fc(),ot.exports.Collection=JA()),ot.exports}var pc=Qc();const De=vr(pc);var An=new De({name:"children",enumerable:!0,collection:!0},{name:"parent"}),VA=new De({name:"labels",enumerable:!0,collection:!0},{name:"labelTarget"}),LA=new De({name:"attachers",collection:!0},{name:"host"}),WA=new De({name:"outgoing",collection:!0},{name:"source"}),jA=new De({name:"incoming",collection:!0},{name:"target"});function Fe(){Object.defineProperty(this,"businessObject",{writable:!0}),Object.defineProperty(this,"label",{get:function(){return this.labels[0]},set:function(n){var e=this.label,t=this.labels;!n&&e?t.remove(e):t.add(n,0)}}),An.bind(this,"parent"),VA.bind(this,"labels"),WA.bind(this,"outgoing"),jA.bind(this,"incoming")}function xe(){Fe.call(this),An.bind(this,"children"),LA.bind(this,"host"),LA.bind(this,"attachers")}e2(xe,Fe);function _A(){Fe.call(this),An.bind(this,"children")}e2(_A,xe);function XA(){xe.call(this),VA.bind(this,"labelTarget")}e2(XA,xe);function OA(){Fe.call(this),WA.bind(this,"source"),jA.bind(this,"target")}e2(OA,Fe);var hc={connection:OA,shape:xe,label:XA,root:_A};function wc(n,e){var t=hc[n];if(!t)throw new Error("unknown type: <"+n+">");return _(new t,e)}function q2(){this._uid=12}q2.prototype.createRoot=function(n){return this.create("root",n)},q2.prototype.createLabel=function(n){return this.create("label",n)},q2.prototype.createShape=function(n){return this.create("shape",n)},q2.prototype.createConnection=function(n){return this.create("connection",n)},q2.prototype.create=function(n,e){return e=_({},e||{}),e.id||(e.id=n+"_"+this._uid++),wc(n,e)};var st="__fn",KA=1e3,mc=Array.prototype.slice;function k0(){this._listeners={},this.on("diagram.destroy",1,this._destroy,this)}k0.prototype.on=function(n,e,t,A){if(n=X0(n)?n:[n],Q2(e)&&(A=t,t=e,e=KA),!f2(e))throw new Error("priority must be a number");var i=t;A&&(i=p2(t,A),i[st]=t[st]||t);var o=this;n.forEach(function(a){o._addListener(a,{priority:e,callback:i,next:null})})},k0.prototype.once=function(n,e,t,A){var i=this;if(Q2(e)&&(A=t,t=e,e=KA),!f2(e))throw new Error("priority must be a number");function o(){o.__isTomb=!0;var a=t.apply(A,arguments);return i.off(n,o),a}o[st]=t,this.on(n,e,o)},k0.prototype.off=function(n,e){n=X0(n)?n:[n];var t=this;n.forEach(function(A){t._removeListener(A,e)})},k0.prototype.createEvent=function(n){var e=new ve;return e.init(n),e},k0.prototype.fire=function(n,e){var t,A,i,o;if(o=mc.call(arguments),typeof n=="object"&&(e=n,n=e.type),!n)throw new Error("no event type specified");if(A=this._listeners[n],!!A){e instanceof ve?t=e:t=this.createEvent(e),o[0]=t;var a=t.type;n!==a&&(t.type=n);try{i=this._invokeListeners(t,o,A)}finally{n!==a&&(t.type=a)}return i===void 0&&t.defaultPrevented&&(i=!1),i}},k0.prototype.handleError=function(n){return this.fire("error",{error:n})===!1},k0.prototype._destroy=function(){this._listeners={}},k0.prototype._invokeListeners=function(n,e,t){for(var A;t&&!n.cancelBubble;)A=this._invokeListener(n,e,t),t=t.next;return A},k0.prototype._invokeListener=function(n,e,t){var A;if(t.callback.__isTomb)return A;try{A=Cc(t.callback,e),A!==void 0&&(n.returnValue=A,n.stopPropagation()),A===!1&&n.preventDefault()}catch(i){if(!this.handleError(i))throw console.error("unhandled error in event listener",i),i}return A},k0.prototype._addListener=function(n,e){var t=this._getListeners(n),A;if(!t){this._setListeners(n,e);return}for(;t;){if(t.priority<e.priority){e.next=t,A?A.next=e:this._setListeners(n,e);return}A=t,t=t.next}A.next=e},k0.prototype._getListeners=function(n){return this._listeners[n]},k0.prototype._setListeners=function(n,e){this._listeners[n]=e},k0.prototype._removeListener=function(n,e){var t=this._getListeners(n),A,i,o;if(!e){this._setListeners(n,null);return}for(;t;)A=t.next,o=t.callback,(o===e||o[st]===e)&&(i?i.next=A:this._setListeners(n,A)),i=t,t=A};function ve(){}ve.prototype.stopPropagation=function(){this.cancelBubble=!0},ve.prototype.preventDefault=function(){this.defaultPrevented=!0},ve.prototype.init=function(n){_(this,n||{})};function Cc(n,e){return n.apply(null,e)}function Mc(n){return n.childNodes[0]}function yc(n){return n.parentNode.childNodes[1]}function H0(n,e){this._eventBus=n,this._elementRegistry=e}H0.$inject=["eventBus","elementRegistry"],H0.prototype._getChildrenContainer=function(n){var e=this._elementRegistry.getGraphics(n),t;return n.parent?(t=yc(e),t||(t=B0("g"),P0(t).add("djs-children"),h0(e.parentNode,t))):t=e,t},H0.prototype._clear=function(n){var e=Mc(n);return sA(e),e},H0.prototype._createContainer=function(n,e,t,A){var i=B0("g");P0(i).add("djs-group"),typeof t<"u"?ZA(i,e,e.childNodes[t]):h0(e,i);var o=B0("g");P0(o).add("djs-element"),P0(o).add("djs-"+n),A&&P0(o).add("djs-frame"),h0(i,o);var a=B0("g");return P0(a).add("djs-visual"),h0(o,a),o},H0.prototype.create=function(n,e,t){var A=this._getChildrenContainer(e.parent);return this._createContainer(n,A,t,mA(e))},H0.prototype.updateContainments=function(n){var e=this,t=this._elementRegistry,A;A=_2(n,function(i,o){return o.parent&&(i[o.parent.id]=o.parent),i},{}),V(A,function(i){var o=i.children;if(o){var a=e._getChildrenContainer(i);V(o.slice().reverse(),function(c){var l=t.getGraphics(c);ZA(l.parentNode,a)})}})},H0.prototype.drawShape=function(n,e,t={}){var A=this._eventBus;return A.fire("render.shape",{gfx:n,element:e,attrs:t})},H0.prototype.getShapePath=function(n){var e=this._eventBus;return e.fire("render.getShapePath",n)},H0.prototype.drawConnection=function(n,e,t={}){var A=this._eventBus;return A.fire("render.connection",{gfx:n,element:e,attrs:t})},H0.prototype.getConnectionPath=function(n){var e=this._eventBus;return e.fire("render.getConnectionPath",n)},H0.prototype.update=function(n,e,t){if(e.parent){var A=this._clear(t);if(n==="shape")this.drawShape(A,e),BA(t,e.x,e.y);else if(n==="connection")this.drawConnection(A,e);else throw new Error("unknown type: "+n);e.hidden?a0(t,"display","none"):a0(t,"display","block")}},H0.prototype.remove=function(n){var e=this._elementRegistry.getGraphics(n);me(e.parentNode)};function ZA(n,e,t){var A=t||e.firstChild;n!==A&&e.insertBefore(n,A)}const Ic={__depends__:[ac],__init__:["canvas"],canvas:["type",O],elementRegistry:["type",J0],elementFactory:["type",q2],eventBus:["type",k0],graphicsFactory:["type",H0]};function Dc(n){var e=new RA(n);return e.init(),e}function Fc(n){n=n||{};var e={config:["value",n]},t=[e,Ic].concat(n.modules||[]);return Dc(t)}function $2(n,e){this._injector=e=e||Fc(n),this.get=e.get,this.invoke=e.invoke,this.get("eventBus").fire("diagram.init")}$2.prototype.destroy=function(){this.get("eventBus").fire("diagram.destroy")},$2.prototype.clear=function(){this.get("eventBus").fire("diagram.clear")};function on(){}on.prototype.get=function(n){return this.$model.properties.get(this,n)},on.prototype.set=function(n,e){this.$model.properties.set(this,n,e)};function qA(n,e){this.model=n,this.properties=e}qA.prototype.createType=function(n){var e=this.model,t=this.properties,A=Object.create(on.prototype);V(n.properties,function(a){!a.isMany&&a.default!==void 0&&(A[a.name]=a.default)}),t.defineModel(A,e),t.defineDescriptor(A,n);var i=n.ns.name;function o(a){t.define(this,"$type",{value:i,enumerable:!0}),t.define(this,"$attrs",{value:{}}),t.define(this,"$parent",{writable:!0}),V(a,p2(function(c,l){this.set(l,c)},this))}return o.prototype=A,o.hasType=A.$instanceOf=this.model.hasType,t.defineModel(o,e),t.defineDescriptor(o,n),o};var xc={String:!0,Boolean:!0,Integer:!0,Real:!0,Element:!0},$A={String:function(n){return n},Boolean:function(n){return n==="true"},Integer:function(n){return parseInt(n,10)},Real:function(n){return parseFloat(n)}};function rn(n,e){var t=$A[n];return t?t(e):e}function sn(n){return!!xc[n]}function ei(n){return!!$A[n]}function v0(n,e){var t=n.split(/:/),A,i;if(t.length===1)A=n,i=e;else if(t.length===2)A=t[1],i=t[0];else throw new Error("expected <prefix:localName> or <localName>, got "+n);return n=(i?i+":":"")+A,{name:n,prefix:i,localName:A}}function b0(n){this.ns=n,this.name=n.name,this.allTypes=[],this.allTypesByName={},this.properties=[],this.propertiesByName={}}b0.prototype.build=function(){return Jr(this,["ns","name","allTypes","allTypesByName","properties","propertiesByName","bodyProperty","idProperty"])},b0.prototype.addProperty=function(n,e,t){typeof e=="boolean"&&(t=e,e=void 0),this.addNamedProperty(n,t!==!1);var A=this.properties;e!==void 0?A.splice(e,0,n):A.push(n)},b0.prototype.replaceProperty=function(n,e,t){var A=n.ns,i=this.properties,o=this.propertiesByName,a=n.name!==e.name;if(n.isId){if(!e.isId)throw new Error("property <"+e.ns.name+"> must be id property to refine <"+n.ns.name+">");this.setIdProperty(e,!1)}if(n.isBody){if(!e.isBody)throw new Error("property <"+e.ns.name+"> must be body property to refine <"+n.ns.name+">");this.setBodyProperty(e,!1)}var c=i.indexOf(n);if(c===-1)throw new Error("property <"+A.name+"> not found in property list");i.splice(c,1),this.addProperty(e,t?void 0:c,a),o[A.name]=o[A.localName]=e},b0.prototype.redefineProperty=function(n,e,t){var A=n.ns.prefix,i=e.split("#"),o=v0(i[0],A),a=v0(i[1],o.prefix).name,c=this.propertiesByName[a];if(c)this.replaceProperty(c,n,t);else throw new Error("refined property <"+a+"> not found");delete n.redefines},b0.prototype.addNamedProperty=function(n,e){var t=n.ns,A=this.propertiesByName;e&&(this.assertNotDefined(n,t.name),this.assertNotDefined(n,t.localName)),A[t.name]=A[t.localName]=n},b0.prototype.removeNamedProperty=function(n){var e=n.ns,t=this.propertiesByName;delete t[e.name],delete t[e.localName]},b0.prototype.setBodyProperty=function(n,e){if(e&&this.bodyProperty)throw new Error("body property defined multiple times (<"+this.bodyProperty.ns.name+">, <"+n.ns.name+">)");this.bodyProperty=n},b0.prototype.setIdProperty=function(n,e){if(e&&this.idProperty)throw new Error("id property defined multiple times (<"+this.idProperty.ns.name+">, <"+n.ns.name+">)");this.idProperty=n},b0.prototype.assertNotTrait=function(n){if((n.extends||[]).length)throw new Error(`cannot create <${n.name}> extending <${n.extends}>`)},b0.prototype.assertNotDefined=function(n,e){var t=n.name,A=this.propertiesByName[t];if(A)throw new Error("property <"+t+"> already defined; override of <"+A.definedBy.ns.name+"#"+A.ns.name+"> by <"+n.definedBy.ns.name+"#"+n.ns.name+"> not allowed without redefines")},b0.prototype.hasProperty=function(n){return this.propertiesByName[n]},b0.prototype.addTrait=function(n,e){e&&this.assertNotTrait(n);var t=this.allTypesByName,A=this.allTypes,i=n.name;i in t||(V(n.properties,p2(function(o){o=_({},o,{name:o.ns.localName,inherited:e}),Object.defineProperty(o,"definedBy",{value:n});var a=o.replaces,c=o.redefines;a||c?this.redefineProperty(o,a||c,a):(o.isBody&&this.setBodyProperty(o),o.isId&&this.setIdProperty(o),this.addProperty(o))},this)),A.push(n),t[i]=n)};function M2(n,e){this.packageMap={},this.typeMap={},this.packages=[],this.properties=e,V(n,p2(this.registerPackage,this))}M2.prototype.getPackage=function(n){return this.packageMap[n]},M2.prototype.getPackages=function(){return this.packages},M2.prototype.registerPackage=function(n){n=_({},n);var e=this.packageMap;ti(e,n,"prefix"),ti(e,n,"uri"),V(n.types,p2(function(t){this.registerType(t,n)},this)),e[n.uri]=e[n.prefix]=n,this.packages.push(n)},M2.prototype.registerType=function(n,e){n=_({},n,{superClass:(n.superClass||[]).slice(),extends:(n.extends||[]).slice(),properties:(n.properties||[]).slice(),meta:_(n.meta||{})});var t=v0(n.name,e.prefix),A=t.name,i={};V(n.properties,p2(function(o){var a=v0(o.name,t.prefix),c=a.name;sn(o.type)||(o.type=v0(o.type,a.prefix).name),_(o,{ns:a,name:c}),i[c]=o},this)),_(n,{ns:t,name:A,propertiesByName:i}),V(n.extends,p2(function(o){var a=v0(o,t.prefix),c=this.typeMap[a.name];c.traits=c.traits||[],c.traits.push(A)},this)),this.definePackage(n,e),this.typeMap[A]=n},M2.prototype.mapTypes=function(n,e,t){var A=sn(n.name)?{name:n.name}:this.typeMap[n.name],i=this;function o(l,u){var B=v0(l,sn(l)?"":n.prefix);i.mapTypes(B,e,u)}function a(l){return o(l,!0)}function c(l){return o(l,!1)}if(!A)throw new Error("unknown type <"+n.name+">");V(A.superClass,t?a:c),e(A,!t),V(A.traits,a)},M2.prototype.getEffectiveDescriptor=function(n){var e=v0(n),t=new b0(e);this.mapTypes(e,function(i,o){t.addTrait(i,o)});var A=t.build();return this.definePackage(A,A.allTypes[A.allTypes.length-1].$pkg),A},M2.prototype.definePackage=function(n,e){this.properties.define(n,"$pkg",{value:e})};function ti(n,e,t){var A=e[t];if(A in n)throw new Error("package with "+t+" <"+A+"> already defined")}function k2(n){this.model=n}k2.prototype.set=function(n,e,t){if(!t2(e)||!e.length)throw new TypeError("property name must be a non-empty string");var A=this.getProperty(n,e),i=A&&A.name;vc(t)?A?delete n[i]:delete n.$attrs[an(e)]:A?i in n?n[i]=t:ni(n,A,t):n.$attrs[an(e)]=t},k2.prototype.get=function(n,e){var t=this.getProperty(n,e);if(!t)return n.$attrs[an(e)];var A=t.name;return!n[A]&&t.isMany&&ni(n,t,[]),n[A]},k2.prototype.define=function(n,e,t){if(!t.writable){var A=t.value;t=_({},t,{get:function(){return A}}),delete t.value}Object.defineProperty(n,e,t)},k2.prototype.defineDescriptor=function(n,e){this.define(n,"$descriptor",{value:e})},k2.prototype.defineModel=function(n,e){this.define(n,"$model",{value:e})},k2.prototype.getProperty=function(n,e){var t=this.model,A=t.getPropertyDescriptor(n,e);if(A)return A;if(e.includes(":"))return null;const i=t.config.strict;if(typeof i<"u"){const o=new TypeError(`unknown property <${e}> on <${n.$type}>`);if(i)throw o;typeof console<"u"&&console.warn(o)}return null};function vc(n){return typeof n>"u"}function ni(n,e,t){Object.defineProperty(n,e.name,{enumerable:!e.isReference,writable:!0,value:t,configurable:!0})}function an(n){return n.replace(/^:/,"")}function L0(n,e={}){this.properties=new k2(this),this.factory=new qA(this,this.properties),this.registry=new M2(n,this.properties),this.typeCache={},this.config=e}L0.prototype.create=function(n,e){var t=this.getType(n);if(!t)throw new Error("unknown type <"+n+">");return new t(e)},L0.prototype.getType=function(n){var e=this.typeCache,t=t2(n)?n:n.ns.name,A=e[t];return A||(n=this.registry.getEffectiveDescriptor(t),A=e[t]=this.factory.createType(n)),A},L0.prototype.createAny=function(n,e,t){var A=v0(n),i={$type:n,$instanceOf:function(a){return a===this.$type},get:function(a){return this[a]},set:function(a,c){Pr(this,[a],c)}},o={name:n,isGeneric:!0,ns:{prefix:A.prefix,localName:A.localName,uri:e}};return this.properties.defineDescriptor(i,o),this.properties.defineModel(i,this),this.properties.define(i,"get",{enumerable:!1,writable:!0}),this.properties.define(i,"set",{enumerable:!1,writable:!0}),this.properties.define(i,"$parent",{enumerable:!1,writable:!0}),this.properties.define(i,"$instanceOf",{enumerable:!1,writable:!0}),V(t,function(a,c){T2(a)&&a.value!==void 0?i[a.name]=a.value:i[c]=a}),i},L0.prototype.getPackage=function(n){return this.registry.getPackage(n)},L0.prototype.getPackages=function(){return this.registry.getPackages()},L0.prototype.getElementDescriptor=function(n){return n.$descriptor},L0.prototype.hasType=function(n,e){e===void 0&&(e=n,n=this);var t=n.$model.getElementDescriptor(n);return e in t.allTypesByName},L0.prototype.getPropertyDescriptor=function(n,e){return this.getElementDescriptor(n).propertiesByName[e]},L0.prototype.getTypeDescriptor=function(n){return this.registry.typeMap[n]};var Ai=String.fromCharCode,Uc=Object.prototype.hasOwnProperty,Yc=/&#(\d+);|&#x([0-9a-f]+);|&(\w+);/ig,Ue={amp:"&",apos:"'",gt:">",lt:"<",quot:'"'};Object.keys(Ue).forEach(function(n){Ue[n.toUpperCase()]=Ue[n]});function Tc(n,e,t,A){return A?Uc.call(Ue,A)?Ue[A]:"&"+A+";":Ai(e||parseInt(t,16))}function P2(n){return n.length>3&&n.indexOf("&")!==-1?n.replace(Yc,Tc):n}var Nc="http://www.w3.org/2001/XMLSchema-instance",Rc="xsi",ii="xsi:type",oi="non-whitespace outside of root node";function ee(n){return new Error(n)}function ri(n){return"missing namespace for prefix <"+n+">"}function at(n){return{get:n,enumerable:!0}}function zc(n){var e={},t;for(t in n)e[t]=n[t];return e}function cn(n){return n+"$uri"}function Sc(n){var e={},t,A;for(t in n)A=n[t],e[A]=A,e[cn(A)]=t;return e}function si(){return{line:0,column:0}}function Gc(n){throw n}function ai(n){if(!this)return new ai(n);var e=n&&n.proxy,t,A,i,o,a=Gc,c,l,u,B,d=si,f=!1,w=!1,y=null,F=!1,R;function S(D){D instanceof Error||(D=ee(D)),y=D,a(D,d)}function M(D){c&&(D instanceof Error||(D=ee(D)),c(D,d))}this.on=function(D,I){if(typeof I!="function")throw ee("required args <name, cb>");switch(D){case"openTag":A=I;break;case"text":t=I;break;case"closeTag":i=I;break;case"error":a=I;break;case"warn":c=I;break;case"cdata":o=I;break;case"attention":B=I;break;case"question":u=I;break;case"comment":l=I;break;default:throw ee("unsupported event: "+D)}return this},this.ns=function(D){if(typeof D>"u"&&(D={}),typeof D!="object")throw ee("required args <nsMap={}>");var I={},U;for(U in D)I[U]=D[U];return I[Nc]=Rc,w=!0,R=I,this},this.parse=function(D){if(typeof D!="string")throw ee("required args <xml=string>");return y=null,T(D),d=si,F=!1,y},this.stop=function(){F=!0};function T(D){var I=w?[]:null,U=w?Sc(R):null,x,v=[],m=0,Y=!1,P=!1,J=0,H=0,t0,S0,l0,n0,V0,Q,g,E,h,p="",C=0,N;function K(){if(N!==null)return N;var o0,D0,Q0,_0=w&&U.xmlns,q0=w&&f?[]:null,d0=C,F0=p,E2=F0.length,Fr,U2,C0,a2,u0,fe={},xr={},$0,j,c0;e:for(;d0<E2;d0++)if($0=!1,j=F0.charCodeAt(d0),!(j===32||j<14&&j>8)){for((j<65||j>122||j>90&&j<97)&&j!==95&&j!==58&&(M("illegal first char attribute name"),$0=!0),c0=d0+1;c0<E2;c0++)if(j=F0.charCodeAt(c0),!(j>96&&j<123||j>64&&j<91||j>47&&j<59||j===46||j===45||j===95)){if(j===32||j<14&&j>8){M("missing attribute value"),d0=c0;continue e}if(j===61)break;M("illegal attribute name char"),$0=!0}if(u0=F0.substring(d0,c0),u0==="xmlns:xmlns"&&(M("illegal declaration of xmlns"),$0=!0),j=F0.charCodeAt(c0+1),j===34)c0=F0.indexOf('"',d0=c0+2),c0===-1&&(c0=F0.indexOf("'",d0),c0!==-1&&(M("attribute value quote missmatch"),$0=!0));else if(j===39)c0=F0.indexOf("'",d0=c0+2),c0===-1&&(c0=F0.indexOf('"',d0),c0!==-1&&(M("attribute value quote missmatch"),$0=!0));else for(M("missing attribute value quotes"),$0=!0,c0=c0+1;c0<E2&&(j=F0.charCodeAt(c0+1),!(j===32||j<14&&j>8));c0++);for(c0===-1&&(M("missing closing quotes"),c0=E2,$0=!0),$0||(C0=F0.substring(d0,c0)),d0=c0;c0+1<E2&&(j=F0.charCodeAt(c0+1),!(j===32||j<14&&j>8));c0++)d0===c0&&(M("illegal character after attribute end"),$0=!0);if(d0=c0+1,$0)continue e;if(u0 in xr){M("attribute <"+u0+"> already defined");continue}if(xr[u0]=!0,!w){fe[u0]=C0;continue}if(f){if(U2=u0==="xmlns"?"xmlns":u0.charCodeAt(0)===120&&u0.substr(0,6)==="xmlns:"?u0.substr(6):null,U2!==null){if(o0=P2(C0),D0=cn(U2),a2=R[o0],!a2){if(U2==="xmlns"||D0 in U&&U[D0]!==o0)do a2="ns"+m++;while(typeof U[a2]<"u");else a2=U2;R[o0]=a2}U[U2]!==a2&&(Fr||(U=zc(U),Fr=!0),U[U2]=a2,U2==="xmlns"&&(U[cn(a2)]=o0,_0=a2),U[D0]=o0),fe[u0]=C0;continue}q0.push(u0,C0);continue}if(j=u0.indexOf(":"),j===-1){fe[u0]=C0;continue}if(!(Q0=U[u0.substring(0,j)])){M(ri(u0.substring(0,j)));continue}u0=_0===Q0?u0.substr(j+1):Q0+u0.substr(j),u0===ii&&(j=C0.indexOf(":"),j!==-1?(Q0=C0.substring(0,j),Q0=U[Q0]||Q0,C0=Q0+C0.substring(j)):C0=_0+":"+C0),fe[u0]=C0}if(f)for(d0=0,E2=q0.length;d0<E2;d0++){if(u0=q0[d0++],C0=q0[d0],j=u0.indexOf(":"),j!==-1){if(!(Q0=U[u0.substring(0,j)])){M(ri(u0.substring(0,j)));continue}u0=_0===Q0?u0.substr(j+1):Q0+u0.substr(j),u0===ii&&(j=C0.indexOf(":"),j!==-1?(Q0=C0.substring(0,j),Q0=U[Q0]||Q0,C0=Q0+C0.substring(j)):C0=_0+":"+C0)}fe[u0]=C0}return N=fe}function e0(){for(var o0=/(\r\n|\r|\n)/g,D0=0,Q0=0,_0=0,q0=H,d0,F0;J>=_0&&(d0=o0.exec(D),!(!d0||(q0=d0[0].length+d0.index,q0>J)));)D0+=1,_0=q0;return J==-1?(Q0=q0,F0=D.substring(H)):H===0?F0=D.substring(H,J):(Q0=J-_0,F0=H==-1?D.substring(J):D.substring(J,H+1)),{data:F0,line:D0,column:Q0}}for(d=e0,e&&(h=Object.create({},{name:at(function(){return g}),originalName:at(function(){return E}),attrs:at(K),ns:at(function(){return U})}));H!==-1;){if(D.charCodeAt(H)===60?J=H:J=D.indexOf("<",H),J===-1){if(v.length)return S("unexpected end of file");if(H===0)return S("missing start tag");H<D.length&&D.substring(H).trim()&&M(oi);return}if(H!==J){if(v.length){if(t&&(t(D.substring(H,J),P2,d),F))return}else if(D.substring(H,J).trim()&&(M(oi),F))return}if(n0=D.charCodeAt(J+1),n0===33){if(l0=D.charCodeAt(J+2),l0===91&&D.substr(J+3,6)==="CDATA["){if(H=D.indexOf("]]>",J),H===-1)return S("unclosed cdata");if(o&&(o(D.substring(J+9,H),d),F))return;H+=3;continue}if(l0===45&&D.charCodeAt(J+3)===45){if(H=D.indexOf("-->",J),H===-1)return S("unclosed comment");if(l&&(l(D.substring(J+4,H),P2,d),F))return;H+=3;continue}}if(n0===63){if(H=D.indexOf("?>",J),H===-1)return S("unclosed question");if(u&&(u(D.substring(J,H+2),d),F))return;H+=2;continue}for(t0=J+1;;t0++){if(V0=D.charCodeAt(t0),isNaN(V0))return H=-1,S("unclosed tag");if(V0===34)l0=D.indexOf('"',t0+1),t0=l0!==-1?l0:t0;else if(V0===39)l0=D.indexOf("'",t0+1),t0=l0!==-1?l0:t0;else if(V0===62){H=t0;break}}if(n0===33){if(B&&(B(D.substring(J,H+1),P2,d),F))return;H+=1;continue}if(N={},n0===47){if(Y=!1,P=!0,!v.length)return S("missing open tag");if(t0=g=v.pop(),l0=J+2+t0.length,D.substring(J+2,l0)!==t0)return S("closing tag mismatch");for(;l0<H;l0++)if(n0=D.charCodeAt(l0),!(n0===32||n0>8&&n0<14))return S("close tag")}else{if(D.charCodeAt(H-1)===47?(t0=g=D.substring(J+1,H-1),Y=!0,P=!0):(t0=g=D.substring(J+1,H),Y=!0,P=!1),!(n0>96&&n0<123||n0>64&&n0<91||n0===95||n0===58))return S("illegal first char nodeName");for(l0=1,S0=t0.length;l0<S0;l0++)if(n0=t0.charCodeAt(l0),!(n0>96&&n0<123||n0>64&&n0<91||n0>47&&n0<59||n0===45||n0===95||n0==46)){if(n0===32||n0<14&&n0>8){g=t0.substring(0,l0),N=null;break}return S("invalid nodeName")}P||v.push(g)}if(w){if(x=U,Y&&(P||I.push(x),N===null&&(f=t0.indexOf("xmlns",l0)!==-1)&&(C=l0,p=t0,K(),f=!1)),E=g,n0=g.indexOf(":"),n0!==-1){if(Q=U[g.substring(0,n0)],!Q)return S("missing namespace on <"+E+">");g=g.substr(n0+1)}else Q=U.xmlns;Q&&(g=Q+":"+g)}if(Y&&(C=l0,p=t0,A&&(e?A(h,P2,P,d):A(g,K,P2,P,d),F)))return;if(P){if(i&&(i(e?h:g,P2,Y,d),F))return;w&&(Y?U=x:U=I.pop())}H+=1}}}function ci(n){return n.xml&&n.xml.tagAlias==="lowerCase"}var kc={xsi:"http://www.w3.org/2001/XMLSchema-instance",xml:"http://www.w3.org/XML/1998/namespace"},ct="xsi:type";function li(n){return n.xml&&n.xml.serialize}function ui(n){return li(n)===ct}function Pc(n){return li(n)==="property"}function Jc(n){return n.charAt(0).toUpperCase()+n.slice(1)}function Bi(n,e){return ci(e)?n.prefix+":"+Jc(n.localName):n.name}function Hc(n,e){var t=n.name,A=n.localName,i=e.xml&&e.xml.typePrefix;return i&&A.indexOf(i)===0?n.prefix+":"+A.slice(i.length):t}function bc(n,e){var t=v0(n),A=e.getPackage(t.prefix);return Hc(t,A)}function y2(n){return new Error(n)}function g2(n){return n.$descriptor}function Vc(n){_(this,n),this.elementsById={},this.references=[],this.warnings=[],this.addReference=function(e){this.references.push(e)},this.addElement=function(e){if(!e)throw y2("expected element");var t=this.elementsById,A=g2(e),i=A.idProperty,o;if(i&&(o=e.get(i.name),o)){if(!/^([a-z][\w-.]*:)?[a-z_][\w-.]*$/i.test(o))throw new Error("illegal ID <"+o+">");if(t[o])throw y2("duplicate ID <"+o+">");t[o]=e}},this.addWarning=function(e){this.warnings.push(e)}}function Ye(){}Ye.prototype.handleEnd=function(){},Ye.prototype.handleText=function(){},Ye.prototype.handleNode=function(){};function ln(){}ln.prototype=Object.create(Ye.prototype),ln.prototype.handleNode=function(){return this};function te(){}te.prototype=Object.create(Ye.prototype),te.prototype.handleText=function(n){this.body=(this.body||"")+n};function Te(n,e){this.property=n,this.context=e}Te.prototype=Object.create(te.prototype),Te.prototype.handleNode=function(n){if(this.element)throw y2("expected no sub nodes");return this.element=this.createReference(n),this},Te.prototype.handleEnd=function(){this.element.id=this.body},Te.prototype.createReference=function(n){return{property:this.property.ns.name,id:""}};function un(n,e){this.element=e,this.propertyDesc=n}un.prototype=Object.create(te.prototype),un.prototype.handleEnd=function(){var n=this.body||"",e=this.element,t=this.propertyDesc;n=rn(t.type,n),t.isMany?e.get(t.name).push(n):e.set(t.name,n)};function lt(){}lt.prototype=Object.create(te.prototype),lt.prototype.handleNode=function(n){var e=this,t=this.element;return t?e=this.handleChild(n):(t=this.element=this.createElement(n),this.context.addElement(t)),e};function U0(n,e,t){this.model=n,this.type=n.getType(e),this.context=t}U0.prototype=Object.create(lt.prototype),U0.prototype.addReference=function(n){this.context.addReference(n)},U0.prototype.handleText=function(n){var e=this.element,t=g2(e),A=t.bodyProperty;if(!A)throw y2("unexpected body text <"+n+">");te.prototype.handleText.call(this,n)},U0.prototype.handleEnd=function(){var n=this.body,e=this.element,t=g2(e),A=t.bodyProperty;A&&n!==void 0&&(n=rn(A.type,n),e.set(A.name,n))},U0.prototype.createElement=function(n){var e=n.attributes,t=this.type,A=g2(t),i=this.context,o=new t({}),a=this.model,c;return V(e,function(l,u){var B=A.propertiesByName[u],d;B&&B.isReference?B.isMany?(d=l.split(" "),V(d,function(f){i.addReference({element:o,property:B.ns.name,id:f})})):i.addReference({element:o,property:B.ns.name,id:l}):(B?l=rn(B.type,l):u!=="xmlns"&&(c=v0(u,A.ns.prefix),a.getPackage(c.prefix)&&i.addWarning({message:"unknown attribute <"+u+">",element:o,property:u,value:l})),o.set(u,l))}),o},U0.prototype.getPropertyForNode=function(n){var e=n.name,t=v0(e),A=this.type,i=this.model,o=g2(A),a=t.name,c=o.propertiesByName[a],l,u;if(c&&!c.isAttr)return ui(c)&&(l=n.attributes[ct],l)?(l=bc(l,i),u=i.getType(l),_({},c,{effectiveType:g2(u).name})):c;var B=i.getPackage(t.prefix);if(B){if(l=Bi(t,B),u=i.getType(l),c=O0(o.properties,function(d){return!d.isVirtual&&!d.isReference&&!d.isAttribute&&u.hasType(d.type)}),c)return _({},c,{effectiveType:g2(u).name})}else if(c=O0(o.properties,function(d){return!d.isReference&&!d.isAttribute&&d.type==="Element"}),c)return c;throw y2("unrecognized element <"+t.name+">")},U0.prototype.toString=function(){return"ElementDescriptor["+g2(this.type).name+"]"},U0.prototype.valueHandler=function(n,e){return new un(n,e)},U0.prototype.referenceHandler=function(n){return new Te(n,this.context)},U0.prototype.handler=function(n){return n==="Element"?new ne(this.model,n,this.context):new U0(this.model,n,this.context)},U0.prototype.handleChild=function(n){var e,t,A,i;if(e=this.getPropertyForNode(n),A=this.element,t=e.effectiveType||e.type,ei(t))return this.valueHandler(e,A);e.isReference?i=this.referenceHandler(e).handleNode(n):i=this.handler(t).handleNode(n);var o=i.element;return o!==void 0&&(e.isMany?A.get(e.name).push(o):A.set(e.name,o),e.isReference?(_(o,{element:A}),this.context.addReference(o)):o.$parent=A),i};function Bn(n,e,t){U0.call(this,n,e,t)}Bn.prototype=Object.create(U0.prototype),Bn.prototype.createElement=function(n){var e=n.name,t=v0(e),A=this.model,i=this.type,o=A.getPackage(t.prefix),a=o&&Bi(t,o)||e;if(!i.hasType(a))throw y2("unexpected element <"+n.originalName+">");return U0.prototype.createElement.call(this,n)};function ne(n,e,t){this.model=n,this.context=t}ne.prototype=Object.create(lt.prototype),ne.prototype.createElement=function(n){var e=n.name,t=v0(e),A=t.prefix,i=n.ns[A+"$uri"],o=n.attributes;return this.model.createAny(e,i,o)},ne.prototype.handleChild=function(n){var e=new ne(this.model,"Element",this.context).handleNode(n),t=this.element,A=e.element,i;return A!==void 0&&(i=t.$children=t.$children||[],i.push(A),A.$parent=t),e},ne.prototype.handleEnd=function(){this.body&&(this.element.$body=this.body)};function gn(n){n instanceof L0&&(n={model:n}),_(this,{lax:!1},n)}gn.prototype.fromXML=function(n,e,t){var A=e.rootHandler;e instanceof U0?(A=e,e={}):typeof e=="string"?(A=this.handler(e),e={}):typeof A=="string"&&(A=this.handler(A));var i=this.model,o=this.lax,a=new Vc(_({},e,{rootHandler:A})),c=new ai({proxy:!0}),l=Lc();A.context=a,l.push(A);function u(I,U,x){var v=U(),m=v.line,Y=v.column,P=v.data;P.charAt(0)==="<"&&P.indexOf(" ")!==-1&&(P=P.slice(0,P.indexOf(" "))+">");var J="unparsable content "+(P?P+" ":"")+`detected
25
- line: `+m+`
26
- column: `+Y+`
27
- nested error: `+I.message;if(x)return a.addWarning({message:J,error:I}),!0;throw y2(J)}function B(I,U){return u(I,U,!0)}function d(){var I=a.elementsById,U=a.references,x,v;for(x=0;v=U[x];x++){var m=v.element,Y=I[v.id],P=g2(m).propertiesByName[v.property];if(Y||a.addWarning({message:"unresolved reference <"+v.id+">",element:v.element,property:v.property,value:v.id}),P.isMany){var J=m.get(P.name),H=J.indexOf(v);H===-1&&(H=J.length),Y?J[H]=Y:J.splice(H,1)}else m.set(P.name,Y)}}function f(){l.pop().handleEnd()}var w=/^<\?xml /i,y=/ encoding="([^"]+)"/i,F=/^utf-8$/i;function R(I){if(w.test(I)){var U=y.exec(I),x=U&&U[1];!x||F.test(x)||a.addWarning({message:"unsupported document encoding <"+x+">, falling back to UTF-8"})}}function S(I,U){var x=l.peek();try{l.push(x.handleNode(I))}catch(v){u(v,U,o)&&l.push(new ln)}}function M(I,U){try{l.peek().handleText(I)}catch(x){B(x,U)}}function T(I,U){I.trim()&&M(I,U)}var D=i.getPackages().reduce(function(I,U){return I[U.uri]=U.prefix,I},{"http://www.w3.org/XML/1998/namespace":"xml"});return c.ns(D).on("openTag",function(I,U,x,v){var m=I.attrs||{},Y=Object.keys(m).reduce(function(J,H){var t0=U(m[H]);return J[H]=t0,J},{}),P={name:I.name,originalName:I.originalName,attributes:Y,ns:I.ns};S(P,v)}).on("question",R).on("closeTag",f).on("cdata",M).on("text",function(I,U,x){T(U(I),x)}).on("error",u).on("warn",B),new Promise(function(I,U){var x;try{c.parse(n),d()}catch(J){x=J}var v=A.element;!x&&!v&&(x=y2("failed to parse document as <"+A.type.$descriptor.name+">"));var m=a.warnings,Y=a.references,P=a.elementsById;return x?(x.warnings=m,U(x)):I({rootElement:v,elementsById:P,references:Y,warnings:m})})},gn.prototype.handler=function(n){return new Bn(this.model,n)};function Lc(){var n=[];return Object.defineProperty(n,"peek",{value:function(){return this[this.length-1]}}),n}var Wc=`<?xml version="1.0" encoding="UTF-8"?>
28
- `,jc=/<|>|'|"|&|\n\r|\n/g,gi=/<|>|&/g;function _c(n){var e={},t={},A={},i=[],o=[];this.byUri=function(a){return t[a]||n&&n.byUri(a)},this.add=function(a,c){t[a.uri]=a,c?i.push(a):o.push(a),this.mapPrefix(a.prefix,a.uri)},this.uriByPrefix=function(a){return e[a||"xmlns"]},this.mapPrefix=function(a,c){e[a||"xmlns"]=c},this.getNSKey=function(a){return a.prefix!==void 0?a.uri+"|"+a.prefix:a.uri},this.logUsed=function(a){var c=a.uri,l=this.getNSKey(a);A[l]=this.byUri(c),n&&n.logUsed(a)},this.getUsed=function(a){function c(B){var d=l.getNSKey(B);return A[d]}var l=this,u=[].concat(i,o);return u.filter(c)}}function Xc(n){return n.charAt(0).toLowerCase()+n.slice(1)}function Oc(n,e){return ci(e)?Xc(n):n}function di(n,e){n.super_=e,n.prototype=Object.create(e.prototype,{constructor:{value:n,enumerable:!1,writable:!0,configurable:!0}})}function Ei(n){return t2(n)?n:(n.prefix?n.prefix+":":"")+n.localName}function Kc(n){return n.getUsed().filter(function(e){return e.prefix!=="xml"}).map(function(e){var t="xmlns"+(e.prefix?":"+e.prefix:"");return{name:t,value:e.uri}})}function Zc(n,e){return e.isGeneric?_({localName:e.ns.localName},n):_({localName:Oc(e.ns.localName,e.$pkg)},n)}function qc(n,e){return _({localName:e.ns.localName},n)}function $c(n){var e=n.$descriptor;return j2(e.properties,function(t){var A=t.name;if(t.isVirtual||!He(n,A))return!1;var i=n[A];return i===t.default||i===null?!1:t.isMany?i.length:!0})}var el={"\n":"#10","\n\r":"#10",'"':"#34","'":"#39","<":"#60",">":"#62","&":"#38"},tl={"<":"lt",">":"gt","&":"amp"};function fi(n,e,t){return n=t2(n)?n:""+n,n.replace(e,function(A){return"&"+t[A]+";"})}function nl(n){return fi(n,jc,el)}function Al(n){return fi(n,gi,tl)}function il(n){return j2(n,function(e){return e.isAttr})}function ol(n){return j2(n,function(e){return!e.isAttr})}function dn(n){this.tagName=n}dn.prototype.build=function(n){return this.element=n,this},dn.prototype.serializeTo=function(n){n.appendIndent().append("<"+this.tagName+">"+this.element.id+"</"+this.tagName+">").appendNewLine()};function J2(){}J2.prototype.serializeValue=J2.prototype.serializeTo=function(n){n.append(this.escape?Al(this.value):this.value)},J2.prototype.build=function(n,e){return this.value=e,n.type==="String"&&e.search(gi)!==-1&&(this.escape=!0),this};function En(n){this.tagName=n}di(En,J2),En.prototype.serializeTo=function(n){n.appendIndent().append("<"+this.tagName+">"),this.serializeValue(n),n.append("</"+this.tagName+">").appendNewLine()};function E0(n,e){this.body=[],this.attrs=[],this.parent=n,this.propertyDescriptor=e}E0.prototype.build=function(n){this.element=n;var e=n.$descriptor,t=this.propertyDescriptor,A,i,o=e.isGeneric;return o?A=this.parseGeneric(n):A=this.parseNsAttributes(n),t?this.ns=this.nsPropertyTagName(t):this.ns=this.nsTagName(e),this.tagName=this.addTagName(this.ns),o||(i=$c(n),this.parseAttributes(il(i)),this.parseContainments(ol(i))),this.parseGenericAttributes(n,A),this},E0.prototype.nsTagName=function(n){var e=this.logNamespaceUsed(n.ns);return Zc(e,n)},E0.prototype.nsPropertyTagName=function(n){var e=this.logNamespaceUsed(n.ns);return qc(e,n)},E0.prototype.isLocalNs=function(n){return n.uri===this.ns.uri},E0.prototype.nsAttributeName=function(n){var e;if(t2(n)?e=v0(n):e=n.ns,n.inherited)return{localName:e.localName};var t=this.logNamespaceUsed(e);return this.getNamespaces().logUsed(t),this.isLocalNs(t)?{localName:e.localName}:_({localName:e.localName},t)},E0.prototype.parseGeneric=function(n){var e=this,t=this.body,A=[];return V(n,function(i,o){var a;o==="$body"?t.push(new J2().build({type:"String"},i)):o==="$children"?V(i,function(c){t.push(new E0(e).build(c))}):o.indexOf("$")!==0&&(a=e.parseNsAttribute(n,o,i),a&&A.push({name:o,value:i}))}),A},E0.prototype.parseNsAttribute=function(n,e,t){var A=n.$model,i=v0(e),o;if(i.prefix==="xmlns"&&(o={prefix:i.localName,uri:t}),!i.prefix&&i.localName==="xmlns"&&(o={uri:t}),!o)return{name:e,value:t};if(A&&A.getPackage(t))this.logNamespace(o,!0,!0);else{var a=this.logNamespaceUsed(o,!0);this.getNamespaces().logUsed(a)}},E0.prototype.parseNsAttributes=function(n,e){var t=this,A=n.$attrs,i=[];return V(A,function(o,a){var c=t.parseNsAttribute(n,a,o);c&&i.push(c)}),i},E0.prototype.parseGenericAttributes=function(n,e){var t=this;V(e,function(A){if(A.name!==ct)try{t.addAttribute(t.nsAttributeName(A.name),A.value)}catch(i){console.warn("missing namespace information for ",A.name,"=",A.value,"on",n,i)}})},E0.prototype.parseContainments=function(n){var e=this,t=this.body,A=this.element;V(n,function(i){var o=A.get(i.name),a=i.isReference,c=i.isMany;if(c||(o=[o]),i.isBody)t.push(new J2().build(i,o[0]));else if(ei(i.type))V(o,function(B){t.push(new En(e.addTagName(e.nsPropertyTagName(i))).build(i,B))});else if(a)V(o,function(B){t.push(new dn(e.addTagName(e.nsPropertyTagName(i))).build(B))});else{var l=ui(i),u=Pc(i);V(o,function(B){var d;l?d=new ut(e,i):u?d=new E0(e,i):d=new E0(e),t.push(d.build(B))})}})},E0.prototype.getNamespaces=function(n){var e=this.namespaces,t=this.parent,A;return e||(A=t&&t.getNamespaces(),n||!A?this.namespaces=e=new _c(A):e=A),e},E0.prototype.logNamespace=function(n,e,t){var A=this.getNamespaces(t),i=n.uri,o=n.prefix,a=A.byUri(i);return(!a||t)&&A.add(n,e),A.mapPrefix(o,i),n},E0.prototype.logNamespaceUsed=function(n,e){var t=this.element,A=t.$model,i=this.getNamespaces(e),o=n.prefix,a=n.uri,c,l,u;if(!o&&!a)return{localName:n.localName};if(u=kc[o]||A&&(A.getPackage(o)||{}).uri,a=a||u||i.uriByPrefix(o),!a)throw new Error("no namespace uri given for prefix <"+o+">");if(n=i.byUri(a),!n){for(c=o,l=1;i.uriByPrefix(c);)c=o+"_"+l++;n=this.logNamespace({prefix:c,uri:a},u===a)}return o&&i.mapPrefix(o,a),n},E0.prototype.parseAttributes=function(n){var e=this,t=this.element;V(n,function(A){var i=t.get(A.name);if(A.isReference)if(!A.isMany)i=i.id;else{var o=[];V(i,function(a){o.push(a.id)}),i=o.join(" ")}e.addAttribute(e.nsAttributeName(A),i)})},E0.prototype.addTagName=function(n){var e=this.logNamespaceUsed(n);return this.getNamespaces().logUsed(e),Ei(n)},E0.prototype.addAttribute=function(n,e){var t=this.attrs;t2(e)&&(e=nl(e));var A=Rr(t,function(o){return o.name.localName===n.localName&&o.name.uri===n.uri&&o.name.prefix===n.prefix}),i={name:n,value:e};A!==-1?t.splice(A,1,i):t.push(i)},E0.prototype.serializeAttributes=function(n){var e=this.attrs,t=this.namespaces;t&&(e=Kc(t).concat(e)),V(e,function(A){n.append(" ").append(Ei(A.name)).append('="').append(A.value).append('"')})},E0.prototype.serializeTo=function(n){var e=this.body[0],t=e&&e.constructor!==J2;n.appendIndent().append("<"+this.tagName),this.serializeAttributes(n),n.append(e?">":" />"),e&&(t&&n.appendNewLine().indent(),V(this.body,function(A){A.serializeTo(n)}),t&&n.unindent().appendIndent(),n.append("</"+this.tagName+">")),n.appendNewLine()};function ut(n,e){E0.call(this,n,e)}di(ut,E0),ut.prototype.parseNsAttributes=function(n){var e=E0.prototype.parseNsAttributes.call(this,n),t=n.$descriptor;if(t.name===this.propertyDescriptor.type)return e;var A=this.typeNs=this.nsTagName(t);this.getNamespaces().logUsed(this.typeNs);var i=n.$model.getPackage(A.uri),o=i.xml&&i.xml.typePrefix||"";return this.addAttribute(this.nsAttributeName(ct),(A.prefix?A.prefix+":":"")+o+t.ns.localName),e},ut.prototype.isLocalNs=function(n){return n.uri===(this.typeNs||this.ns).uri};function rl(){this.value="",this.write=function(n){this.value+=n}}function sl(n,e){var t=[""];this.append=function(A){return n.write(A),this},this.appendNewLine=function(){return e&&n.write(`
29
- `),this},this.appendIndent=function(){return e&&n.write(t.join(" ")),this},this.indent=function(){return t.push(""),this},this.unindent=function(){return t.pop(),this}}function al(n){n=_({format:!1,preamble:!0},n||{});function e(t,A){var i=A||new rl,o=new sl(i,n.format);if(n.preamble&&o.append(Wc),new E0().build(t).serializeTo(o),!A)return i.value}return{toXML:e}}function Bt(n,e){L0.call(this,n,e)}Bt.prototype=Object.create(L0.prototype),Bt.prototype.fromXML=function(n,e,t){t2(e)||(t=e,e="bpmn:Definitions");var A=new gn(_({model:this,lax:!0},t)),i=A.handler(e);return A.fromXML(n,i)},Bt.prototype.toXML=function(n,e){var t=new al(e);return new Promise(function(A,i){try{var o=t.toXML(n);return A({xml:o})}catch(a){return i(a)}})};var cl="BPMN20",ll="http://www.omg.org/spec/BPMN/20100524/MODEL",ul="bpmn",Bl=[],gl=[{name:"Interface",superClass:["RootElement"],properties:[{name:"name",isAttr:!0,type:"String"},{name:"operations",type:"Operation",isMany:!0},{name:"implementationRef",isAttr:!0,type:"String"}]},{name:"Operation",superClass:["BaseElement"],properties:[{name:"name",isAttr:!0,type:"String"},{name:"inMessageRef",type:"Message",isReference:!0},{name:"outMessageRef",type:"Message",isReference:!0},{name:"errorRef",type:"Error",isMany:!0,isReference:!0},{name:"implementationRef",isAttr:!0,type:"String"}]},{name:"EndPoint",superClass:["RootElement"]},{name:"Auditing",superClass:["BaseElement"]},{name:"GlobalTask",superClass:["CallableElement"],properties:[{name:"resources",type:"ResourceRole",isMany:!0}]},{name:"Monitoring",superClass:["BaseElement"]},{name:"Performer",superClass:["ResourceRole"]},{name:"Process",superClass:["FlowElementsContainer","CallableElement"],properties:[{name:"processType",type:"ProcessType",isAttr:!0},{name:"isClosed",isAttr:!0,type:"Boolean"},{name:"auditing",type:"Auditing"},{name:"monitoring",type:"Monitoring"},{name:"properties",type:"Property",isMany:!0},{name:"laneSets",isMany:!0,replaces:"FlowElementsContainer#laneSets",type:"LaneSet"},{name:"flowElements",isMany:!0,replaces:"FlowElementsContainer#flowElements",type:"FlowElement"},{name:"artifacts",type:"Artifact",isMany:!0},{name:"resources",type:"ResourceRole",isMany:!0},{name:"correlationSubscriptions",type:"CorrelationSubscription",isMany:!0},{name:"supports",type:"Process",isMany:!0,isReference:!0},{name:"definitionalCollaborationRef",type:"Collaboration",isAttr:!0,isReference:!0},{name:"isExecutable",isAttr:!0,type:"Boolean"}]},{name:"LaneSet",superClass:["BaseElement"],properties:[{name:"lanes",type:"Lane",isMany:!0},{name:"name",isAttr:!0,type:"String"}]},{name:"Lane",superClass:["BaseElement"],properties:[{name:"name",isAttr:!0,type:"String"},{name:"partitionElementRef",type:"BaseElement",isAttr:!0,isReference:!0},{name:"partitionElement",type:"BaseElement"},{name:"flowNodeRef",type:"FlowNode",isMany:!0,isReference:!0},{name:"childLaneSet",type:"LaneSet",xml:{serialize:"xsi:type"}}]},{name:"GlobalManualTask",superClass:["GlobalTask"]},{name:"ManualTask",superClass:["Task"]},{name:"UserTask",superClass:["Task"],properties:[{name:"renderings",type:"Rendering",isMany:!0},{name:"implementation",isAttr:!0,type:"String"}]},{name:"Rendering",superClass:["BaseElement"]},{name:"HumanPerformer",superClass:["Performer"]},{name:"PotentialOwner",superClass:["HumanPerformer"]},{name:"GlobalUserTask",superClass:["GlobalTask"],properties:[{name:"implementation",isAttr:!0,type:"String"},{name:"renderings",type:"Rendering",isMany:!0}]},{name:"Gateway",isAbstract:!0,superClass:["FlowNode"],properties:[{name:"gatewayDirection",type:"GatewayDirection",default:"Unspecified",isAttr:!0}]},{name:"EventBasedGateway",superClass:["Gateway"],properties:[{name:"instantiate",default:!1,isAttr:!0,type:"Boolean"},{name:"eventGatewayType",type:"EventBasedGatewayType",isAttr:!0,default:"Exclusive"}]},{name:"ComplexGateway",superClass:["Gateway"],properties:[{name:"activationCondition",type:"Expression",xml:{serialize:"xsi:type"}},{name:"default",type:"SequenceFlow",isAttr:!0,isReference:!0}]},{name:"ExclusiveGateway",superClass:["Gateway"],properties:[{name:"default",type:"SequenceFlow",isAttr:!0,isReference:!0}]},{name:"InclusiveGateway",superClass:["Gateway"],properties:[{name:"default",type:"SequenceFlow",isAttr:!0,isReference:!0}]},{name:"ParallelGateway",superClass:["Gateway"]},{name:"RootElement",isAbstract:!0,superClass:["BaseElement"]},{name:"Relationship",superClass:["BaseElement"],properties:[{name:"type",isAttr:!0,type:"String"},{name:"direction",type:"RelationshipDirection",isAttr:!0},{name:"source",isMany:!0,isReference:!0,type:"Element"},{name:"target",isMany:!0,isReference:!0,type:"Element"}]},{name:"BaseElement",isAbstract:!0,properties:[{name:"id",isAttr:!0,type:"String",isId:!0},{name:"documentation",type:"Documentation",isMany:!0},{name:"extensionDefinitions",type:"ExtensionDefinition",isMany:!0,isReference:!0},{name:"extensionElements",type:"ExtensionElements"}]},{name:"Extension",properties:[{name:"mustUnderstand",default:!1,isAttr:!0,type:"Boolean"},{name:"definition",type:"ExtensionDefinition",isAttr:!0,isReference:!0}]},{name:"ExtensionDefinition",properties:[{name:"name",isAttr:!0,type:"String"},{name:"extensionAttributeDefinitions",type:"ExtensionAttributeDefinition",isMany:!0}]},{name:"ExtensionAttributeDefinition",properties:[{name:"name",isAttr:!0,type:"String"},{name:"type",isAttr:!0,type:"String"},{name:"isReference",default:!1,isAttr:!0,type:"Boolean"},{name:"extensionDefinition",type:"ExtensionDefinition",isAttr:!0,isReference:!0}]},{name:"ExtensionElements",properties:[{name:"valueRef",isAttr:!0,isReference:!0,type:"Element"},{name:"values",type:"Element",isMany:!0},{name:"extensionAttributeDefinition",type:"ExtensionAttributeDefinition",isAttr:!0,isReference:!0}]},{name:"Documentation",superClass:["BaseElement"],properties:[{name:"text",type:"String",isBody:!0},{name:"textFormat",default:"text/plain",isAttr:!0,type:"String"}]},{name:"Event",isAbstract:!0,superClass:["FlowNode","InteractionNode"],properties:[{name:"properties",type:"Property",isMany:!0}]},{name:"IntermediateCatchEvent",superClass:["CatchEvent"]},{name:"IntermediateThrowEvent",superClass:["ThrowEvent"]},{name:"EndEvent",superClass:["ThrowEvent"]},{name:"StartEvent",superClass:["CatchEvent"],properties:[{name:"isInterrupting",default:!0,isAttr:!0,type:"Boolean"}]},{name:"ThrowEvent",isAbstract:!0,superClass:["Event"],properties:[{name:"dataInputs",type:"DataInput",isMany:!0},{name:"dataInputAssociations",type:"DataInputAssociation",isMany:!0},{name:"inputSet",type:"InputSet"},{name:"eventDefinitions",type:"EventDefinition",isMany:!0},{name:"eventDefinitionRef",type:"EventDefinition",isMany:!0,isReference:!0}]},{name:"CatchEvent",isAbstract:!0,superClass:["Event"],properties:[{name:"parallelMultiple",isAttr:!0,type:"Boolean",default:!1},{name:"dataOutputs",type:"DataOutput",isMany:!0},{name:"dataOutputAssociations",type:"DataOutputAssociation",isMany:!0},{name:"outputSet",type:"OutputSet"},{name:"eventDefinitions",type:"EventDefinition",isMany:!0},{name:"eventDefinitionRef",type:"EventDefinition",isMany:!0,isReference:!0}]},{name:"BoundaryEvent",superClass:["CatchEvent"],properties:[{name:"cancelActivity",default:!0,isAttr:!0,type:"Boolean"},{name:"attachedToRef",type:"Activity",isAttr:!0,isReference:!0}]},{name:"EventDefinition",isAbstract:!0,superClass:["RootElement"]},{name:"CancelEventDefinition",superClass:["EventDefinition"]},{name:"ErrorEventDefinition",superClass:["EventDefinition"],properties:[{name:"errorRef",type:"Error",isAttr:!0,isReference:!0}]},{name:"TerminateEventDefinition",superClass:["EventDefinition"]},{name:"EscalationEventDefinition",superClass:["EventDefinition"],properties:[{name:"escalationRef",type:"Escalation",isAttr:!0,isReference:!0}]},{name:"Escalation",properties:[{name:"structureRef",type:"ItemDefinition",isAttr:!0,isReference:!0},{name:"name",isAttr:!0,type:"String"},{name:"escalationCode",isAttr:!0,type:"String"}],superClass:["RootElement"]},{name:"CompensateEventDefinition",superClass:["EventDefinition"],properties:[{name:"waitForCompletion",isAttr:!0,type:"Boolean",default:!0},{name:"activityRef",type:"Activity",isAttr:!0,isReference:!0}]},{name:"TimerEventDefinition",superClass:["EventDefinition"],properties:[{name:"timeDate",type:"Expression",xml:{serialize:"xsi:type"}},{name:"timeCycle",type:"Expression",xml:{serialize:"xsi:type"}},{name:"timeDuration",type:"Expression",xml:{serialize:"xsi:type"}}]},{name:"LinkEventDefinition",superClass:["EventDefinition"],properties:[{name:"name",isAttr:!0,type:"String"},{name:"target",type:"LinkEventDefinition",isReference:!0},{name:"source",type:"LinkEventDefinition",isMany:!0,isReference:!0}]},{name:"MessageEventDefinition",superClass:["EventDefinition"],properties:[{name:"messageRef",type:"Message",isAttr:!0,isReference:!0},{name:"operationRef",type:"Operation",isAttr:!0,isReference:!0}]},{name:"ConditionalEventDefinition",superClass:["EventDefinition"],properties:[{name:"condition",type:"Expression",xml:{serialize:"xsi:type"}}]},{name:"SignalEventDefinition",superClass:["EventDefinition"],properties:[{name:"signalRef",type:"Signal",isAttr:!0,isReference:!0}]},{name:"Signal",superClass:["RootElement"],properties:[{name:"structureRef",type:"ItemDefinition",isAttr:!0,isReference:!0},{name:"name",isAttr:!0,type:"String"}]},{name:"ImplicitThrowEvent",superClass:["ThrowEvent"]},{name:"DataState",superClass:["BaseElement"],properties:[{name:"name",isAttr:!0,type:"String"}]},{name:"ItemAwareElement",superClass:["BaseElement"],properties:[{name:"itemSubjectRef",type:"ItemDefinition",isAttr:!0,isReference:!0},{name:"dataState",type:"DataState"}]},{name:"DataAssociation",superClass:["BaseElement"],properties:[{name:"sourceRef",type:"ItemAwareElement",isMany:!0,isReference:!0},{name:"targetRef",type:"ItemAwareElement",isReference:!0},{name:"transformation",type:"FormalExpression",xml:{serialize:"property"}},{name:"assignment",type:"Assignment",isMany:!0}]},{name:"DataInput",superClass:["ItemAwareElement"],properties:[{name:"name",isAttr:!0,type:"String"},{name:"isCollection",default:!1,isAttr:!0,type:"Boolean"},{name:"inputSetRef",type:"InputSet",isMany:!0,isVirtual:!0,isReference:!0},{name:"inputSetWithOptional",type:"InputSet",isMany:!0,isVirtual:!0,isReference:!0},{name:"inputSetWithWhileExecuting",type:"InputSet",isMany:!0,isVirtual:!0,isReference:!0}]},{name:"DataOutput",superClass:["ItemAwareElement"],properties:[{name:"name",isAttr:!0,type:"String"},{name:"isCollection",default:!1,isAttr:!0,type:"Boolean"},{name:"outputSetRef",type:"OutputSet",isMany:!0,isVirtual:!0,isReference:!0},{name:"outputSetWithOptional",type:"OutputSet",isMany:!0,isVirtual:!0,isReference:!0},{name:"outputSetWithWhileExecuting",type:"OutputSet",isMany:!0,isVirtual:!0,isReference:!0}]},{name:"InputSet",superClass:["BaseElement"],properties:[{name:"name",isAttr:!0,type:"String"},{name:"dataInputRefs",type:"DataInput",isMany:!0,isReference:!0},{name:"optionalInputRefs",type:"DataInput",isMany:!0,isReference:!0},{name:"whileExecutingInputRefs",type:"DataInput",isMany:!0,isReference:!0},{name:"outputSetRefs",type:"OutputSet",isMany:!0,isReference:!0}]},{name:"OutputSet",superClass:["BaseElement"],properties:[{name:"dataOutputRefs",type:"DataOutput",isMany:!0,isReference:!0},{name:"name",isAttr:!0,type:"String"},{name:"inputSetRefs",type:"InputSet",isMany:!0,isReference:!0},{name:"optionalOutputRefs",type:"DataOutput",isMany:!0,isReference:!0},{name:"whileExecutingOutputRefs",type:"DataOutput",isMany:!0,isReference:!0}]},{name:"Property",superClass:["ItemAwareElement"],properties:[{name:"name",isAttr:!0,type:"String"}]},{name:"DataInputAssociation",superClass:["DataAssociation"]},{name:"DataOutputAssociation",superClass:["DataAssociation"]},{name:"InputOutputSpecification",superClass:["BaseElement"],properties:[{name:"dataInputs",type:"DataInput",isMany:!0},{name:"dataOutputs",type:"DataOutput",isMany:!0},{name:"inputSets",type:"InputSet",isMany:!0},{name:"outputSets",type:"OutputSet",isMany:!0}]},{name:"DataObject",superClass:["FlowElement","ItemAwareElement"],properties:[{name:"isCollection",default:!1,isAttr:!0,type:"Boolean"}]},{name:"InputOutputBinding",properties:[{name:"inputDataRef",type:"InputSet",isAttr:!0,isReference:!0},{name:"outputDataRef",type:"OutputSet",isAttr:!0,isReference:!0},{name:"operationRef",type:"Operation",isAttr:!0,isReference:!0}]},{name:"Assignment",superClass:["BaseElement"],properties:[{name:"from",type:"Expression",xml:{serialize:"xsi:type"}},{name:"to",type:"Expression",xml:{serialize:"xsi:type"}}]},{name:"DataStore",superClass:["RootElement","ItemAwareElement"],properties:[{name:"name",isAttr:!0,type:"String"},{name:"capacity",isAttr:!0,type:"Integer"},{name:"isUnlimited",default:!0,isAttr:!0,type:"Boolean"}]},{name:"DataStoreReference",superClass:["ItemAwareElement","FlowElement"],properties:[{name:"dataStoreRef",type:"DataStore",isAttr:!0,isReference:!0}]},{name:"DataObjectReference",superClass:["ItemAwareElement","FlowElement"],properties:[{name:"dataObjectRef",type:"DataObject",isAttr:!0,isReference:!0}]},{name:"ConversationLink",superClass:["BaseElement"],properties:[{name:"sourceRef",type:"InteractionNode",isAttr:!0,isReference:!0},{name:"targetRef",type:"InteractionNode",isAttr:!0,isReference:!0},{name:"name",isAttr:!0,type:"String"}]},{name:"ConversationAssociation",superClass:["BaseElement"],properties:[{name:"innerConversationNodeRef",type:"ConversationNode",isAttr:!0,isReference:!0},{name:"outerConversationNodeRef",type:"ConversationNode",isAttr:!0,isReference:!0}]},{name:"CallConversation",superClass:["ConversationNode"],properties:[{name:"calledCollaborationRef",type:"Collaboration",isAttr:!0,isReference:!0},{name:"participantAssociations",type:"ParticipantAssociation",isMany:!0}]},{name:"Conversation",superClass:["ConversationNode"]},{name:"SubConversation",superClass:["ConversationNode"],properties:[{name:"conversationNodes",type:"ConversationNode",isMany:!0}]},{name:"ConversationNode",isAbstract:!0,superClass:["InteractionNode","BaseElement"],properties:[{name:"name",isAttr:!0,type:"String"},{name:"participantRef",type:"Participant",isMany:!0,isReference:!0},{name:"messageFlowRefs",type:"MessageFlow",isMany:!0,isReference:!0},{name:"correlationKeys",type:"CorrelationKey",isMany:!0}]},{name:"GlobalConversation",superClass:["Collaboration"]},{name:"PartnerEntity",superClass:["RootElement"],properties:[{name:"name",isAttr:!0,type:"String"},{name:"participantRef",type:"Participant",isMany:!0,isReference:!0}]},{name:"PartnerRole",superClass:["RootElement"],properties:[{name:"name",isAttr:!0,type:"String"},{name:"participantRef",type:"Participant",isMany:!0,isReference:!0}]},{name:"CorrelationProperty",superClass:["RootElement"],properties:[{name:"correlationPropertyRetrievalExpression",type:"CorrelationPropertyRetrievalExpression",isMany:!0},{name:"name",isAttr:!0,type:"String"},{name:"type",type:"ItemDefinition",isAttr:!0,isReference:!0}]},{name:"Error",superClass:["RootElement"],properties:[{name:"structureRef",type:"ItemDefinition",isAttr:!0,isReference:!0},{name:"name",isAttr:!0,type:"String"},{name:"errorCode",isAttr:!0,type:"String"}]},{name:"CorrelationKey",superClass:["BaseElement"],properties:[{name:"correlationPropertyRef",type:"CorrelationProperty",isMany:!0,isReference:!0},{name:"name",isAttr:!0,type:"String"}]},{name:"Expression",superClass:["BaseElement"],isAbstract:!1,properties:[{name:"body",isBody:!0,type:"String"}]},{name:"FormalExpression",superClass:["Expression"],properties:[{name:"language",isAttr:!0,type:"String"},{name:"evaluatesToTypeRef",type:"ItemDefinition",isAttr:!0,isReference:!0}]},{name:"Message",superClass:["RootElement"],properties:[{name:"name",isAttr:!0,type:"String"},{name:"itemRef",type:"ItemDefinition",isAttr:!0,isReference:!0}]},{name:"ItemDefinition",superClass:["RootElement"],properties:[{name:"itemKind",type:"ItemKind",isAttr:!0},{name:"structureRef",isAttr:!0,type:"String"},{name:"isCollection",default:!1,isAttr:!0,type:"Boolean"},{name:"import",type:"Import",isAttr:!0,isReference:!0}]},{name:"FlowElement",isAbstract:!0,superClass:["BaseElement"],properties:[{name:"name",isAttr:!0,type:"String"},{name:"auditing",type:"Auditing"},{name:"monitoring",type:"Monitoring"},{name:"categoryValueRef",type:"CategoryValue",isMany:!0,isReference:!0}]},{name:"SequenceFlow",superClass:["FlowElement"],properties:[{name:"isImmediate",isAttr:!0,type:"Boolean"},{name:"conditionExpression",type:"Expression",xml:{serialize:"xsi:type"}},{name:"sourceRef",type:"FlowNode",isAttr:!0,isReference:!0},{name:"targetRef",type:"FlowNode",isAttr:!0,isReference:!0}]},{name:"FlowElementsContainer",isAbstract:!0,superClass:["BaseElement"],properties:[{name:"laneSets",type:"LaneSet",isMany:!0},{name:"flowElements",type:"FlowElement",isMany:!0}]},{name:"CallableElement",isAbstract:!0,superClass:["RootElement"],properties:[{name:"name",isAttr:!0,type:"String"},{name:"ioSpecification",type:"InputOutputSpecification",xml:{serialize:"property"}},{name:"supportedInterfaceRef",type:"Interface",isMany:!0,isReference:!0},{name:"ioBinding",type:"InputOutputBinding",isMany:!0,xml:{serialize:"property"}}]},{name:"FlowNode",isAbstract:!0,superClass:["FlowElement"],properties:[{name:"incoming",type:"SequenceFlow",isMany:!0,isReference:!0},{name:"outgoing",type:"SequenceFlow",isMany:!0,isReference:!0},{name:"lanes",type:"Lane",isMany:!0,isVirtual:!0,isReference:!0}]},{name:"CorrelationPropertyRetrievalExpression",superClass:["BaseElement"],properties:[{name:"messagePath",type:"FormalExpression"},{name:"messageRef",type:"Message",isAttr:!0,isReference:!0}]},{name:"CorrelationPropertyBinding",superClass:["BaseElement"],properties:[{name:"dataPath",type:"FormalExpression"},{name:"correlationPropertyRef",type:"CorrelationProperty",isAttr:!0,isReference:!0}]},{name:"Resource",superClass:["RootElement"],properties:[{name:"name",isAttr:!0,type:"String"},{name:"resourceParameters",type:"ResourceParameter",isMany:!0}]},{name:"ResourceParameter",superClass:["BaseElement"],properties:[{name:"name",isAttr:!0,type:"String"},{name:"isRequired",isAttr:!0,type:"Boolean"},{name:"type",type:"ItemDefinition",isAttr:!0,isReference:!0}]},{name:"CorrelationSubscription",superClass:["BaseElement"],properties:[{name:"correlationKeyRef",type:"CorrelationKey",isAttr:!0,isReference:!0},{name:"correlationPropertyBinding",type:"CorrelationPropertyBinding",isMany:!0}]},{name:"MessageFlow",superClass:["BaseElement"],properties:[{name:"name",isAttr:!0,type:"String"},{name:"sourceRef",type:"InteractionNode",isAttr:!0,isReference:!0},{name:"targetRef",type:"InteractionNode",isAttr:!0,isReference:!0},{name:"messageRef",type:"Message",isAttr:!0,isReference:!0}]},{name:"MessageFlowAssociation",superClass:["BaseElement"],properties:[{name:"innerMessageFlowRef",type:"MessageFlow",isAttr:!0,isReference:!0},{name:"outerMessageFlowRef",type:"MessageFlow",isAttr:!0,isReference:!0}]},{name:"InteractionNode",isAbstract:!0,properties:[{name:"incomingConversationLinks",type:"ConversationLink",isMany:!0,isVirtual:!0,isReference:!0},{name:"outgoingConversationLinks",type:"ConversationLink",isMany:!0,isVirtual:!0,isReference:!0}]},{name:"Participant",superClass:["InteractionNode","BaseElement"],properties:[{name:"name",isAttr:!0,type:"String"},{name:"interfaceRef",type:"Interface",isMany:!0,isReference:!0},{name:"participantMultiplicity",type:"ParticipantMultiplicity"},{name:"endPointRefs",type:"EndPoint",isMany:!0,isReference:!0},{name:"processRef",type:"Process",isAttr:!0,isReference:!0}]},{name:"ParticipantAssociation",superClass:["BaseElement"],properties:[{name:"innerParticipantRef",type:"Participant",isAttr:!0,isReference:!0},{name:"outerParticipantRef",type:"Participant",isAttr:!0,isReference:!0}]},{name:"ParticipantMultiplicity",properties:[{name:"minimum",default:0,isAttr:!0,type:"Integer"},{name:"maximum",default:1,isAttr:!0,type:"Integer"}],superClass:["BaseElement"]},{name:"Collaboration",superClass:["RootElement"],properties:[{name:"name",isAttr:!0,type:"String"},{name:"isClosed",isAttr:!0,type:"Boolean"},{name:"participants",type:"Participant",isMany:!0},{name:"messageFlows",type:"MessageFlow",isMany:!0},{name:"artifacts",type:"Artifact",isMany:!0},{name:"conversations",type:"ConversationNode",isMany:!0},{name:"conversationAssociations",type:"ConversationAssociation"},{name:"participantAssociations",type:"ParticipantAssociation",isMany:!0},{name:"messageFlowAssociations",type:"MessageFlowAssociation",isMany:!0},{name:"correlationKeys",type:"CorrelationKey",isMany:!0},{name:"choreographyRef",type:"Choreography",isMany:!0,isReference:!0},{name:"conversationLinks",type:"ConversationLink",isMany:!0}]},{name:"ChoreographyActivity",isAbstract:!0,superClass:["FlowNode"],properties:[{name:"participantRef",type:"Participant",isMany:!0,isReference:!0},{name:"initiatingParticipantRef",type:"Participant",isAttr:!0,isReference:!0},{name:"correlationKeys",type:"CorrelationKey",isMany:!0},{name:"loopType",type:"ChoreographyLoopType",default:"None",isAttr:!0}]},{name:"CallChoreography",superClass:["ChoreographyActivity"],properties:[{name:"calledChoreographyRef",type:"Choreography",isAttr:!0,isReference:!0},{name:"participantAssociations",type:"ParticipantAssociation",isMany:!0}]},{name:"SubChoreography",superClass:["ChoreographyActivity","FlowElementsContainer"],properties:[{name:"artifacts",type:"Artifact",isMany:!0}]},{name:"ChoreographyTask",superClass:["ChoreographyActivity"],properties:[{name:"messageFlowRef",type:"MessageFlow",isMany:!0,isReference:!0}]},{name:"Choreography",superClass:["Collaboration","FlowElementsContainer"]},{name:"GlobalChoreographyTask",superClass:["Choreography"],properties:[{name:"initiatingParticipantRef",type:"Participant",isAttr:!0,isReference:!0}]},{name:"TextAnnotation",superClass:["Artifact"],properties:[{name:"text",type:"String"},{name:"textFormat",default:"text/plain",isAttr:!0,type:"String"}]},{name:"Group",superClass:["Artifact"],properties:[{name:"categoryValueRef",type:"CategoryValue",isAttr:!0,isReference:!0}]},{name:"Association",superClass:["Artifact"],properties:[{name:"associationDirection",type:"AssociationDirection",isAttr:!0},{name:"sourceRef",type:"BaseElement",isAttr:!0,isReference:!0},{name:"targetRef",type:"BaseElement",isAttr:!0,isReference:!0}]},{name:"Category",superClass:["RootElement"],properties:[{name:"categoryValue",type:"CategoryValue",isMany:!0},{name:"name",isAttr:!0,type:"String"}]},{name:"Artifact",isAbstract:!0,superClass:["BaseElement"]},{name:"CategoryValue",superClass:["BaseElement"],properties:[{name:"categorizedFlowElements",type:"FlowElement",isMany:!0,isVirtual:!0,isReference:!0},{name:"value",isAttr:!0,type:"String"}]},{name:"Activity",isAbstract:!0,superClass:["FlowNode"],properties:[{name:"isForCompensation",default:!1,isAttr:!0,type:"Boolean"},{name:"default",type:"SequenceFlow",isAttr:!0,isReference:!0},{name:"ioSpecification",type:"InputOutputSpecification",xml:{serialize:"property"}},{name:"boundaryEventRefs",type:"BoundaryEvent",isMany:!0,isReference:!0},{name:"properties",type:"Property",isMany:!0},{name:"dataInputAssociations",type:"DataInputAssociation",isMany:!0},{name:"dataOutputAssociations",type:"DataOutputAssociation",isMany:!0},{name:"startQuantity",default:1,isAttr:!0,type:"Integer"},{name:"resources",type:"ResourceRole",isMany:!0},{name:"completionQuantity",default:1,isAttr:!0,type:"Integer"},{name:"loopCharacteristics",type:"LoopCharacteristics"}]},{name:"ServiceTask",superClass:["Task"],properties:[{name:"implementation",isAttr:!0,type:"String"},{name:"operationRef",type:"Operation",isAttr:!0,isReference:!0}]},{name:"SubProcess",superClass:["Activity","FlowElementsContainer","InteractionNode"],properties:[{name:"triggeredByEvent",default:!1,isAttr:!0,type:"Boolean"},{name:"artifacts",type:"Artifact",isMany:!0}]},{name:"LoopCharacteristics",isAbstract:!0,superClass:["BaseElement"]},{name:"MultiInstanceLoopCharacteristics",superClass:["LoopCharacteristics"],properties:[{name:"isSequential",default:!1,isAttr:!0,type:"Boolean"},{name:"behavior",type:"MultiInstanceBehavior",default:"All",isAttr:!0},{name:"loopCardinality",type:"Expression",xml:{serialize:"xsi:type"}},{name:"loopDataInputRef",type:"ItemAwareElement",isReference:!0},{name:"loopDataOutputRef",type:"ItemAwareElement",isReference:!0},{name:"inputDataItem",type:"DataInput",xml:{serialize:"property"}},{name:"outputDataItem",type:"DataOutput",xml:{serialize:"property"}},{name:"complexBehaviorDefinition",type:"ComplexBehaviorDefinition",isMany:!0},{name:"completionCondition",type:"Expression",xml:{serialize:"xsi:type"}},{name:"oneBehaviorEventRef",type:"EventDefinition",isAttr:!0,isReference:!0},{name:"noneBehaviorEventRef",type:"EventDefinition",isAttr:!0,isReference:!0}]},{name:"StandardLoopCharacteristics",superClass:["LoopCharacteristics"],properties:[{name:"testBefore",default:!1,isAttr:!0,type:"Boolean"},{name:"loopCondition",type:"Expression",xml:{serialize:"xsi:type"}},{name:"loopMaximum",type:"Integer",isAttr:!0}]},{name:"CallActivity",superClass:["Activity","InteractionNode"],properties:[{name:"calledElement",type:"String",isAttr:!0}]},{name:"Task",superClass:["Activity","InteractionNode"]},{name:"SendTask",superClass:["Task"],properties:[{name:"implementation",isAttr:!0,type:"String"},{name:"operationRef",type:"Operation",isAttr:!0,isReference:!0},{name:"messageRef",type:"Message",isAttr:!0,isReference:!0}]},{name:"ReceiveTask",superClass:["Task"],properties:[{name:"implementation",isAttr:!0,type:"String"},{name:"instantiate",default:!1,isAttr:!0,type:"Boolean"},{name:"operationRef",type:"Operation",isAttr:!0,isReference:!0},{name:"messageRef",type:"Message",isAttr:!0,isReference:!0}]},{name:"ScriptTask",superClass:["Task"],properties:[{name:"scriptFormat",isAttr:!0,type:"String"},{name:"script",type:"String"}]},{name:"BusinessRuleTask",superClass:["Task"],properties:[{name:"implementation",isAttr:!0,type:"String"}]},{name:"AdHocSubProcess",superClass:["SubProcess"],properties:[{name:"completionCondition",type:"Expression",xml:{serialize:"xsi:type"}},{name:"ordering",type:"AdHocOrdering",isAttr:!0},{name:"cancelRemainingInstances",default:!0,isAttr:!0,type:"Boolean"}]},{name:"Transaction",superClass:["SubProcess"],properties:[{name:"protocol",isAttr:!0,type:"String"},{name:"method",isAttr:!0,type:"String"}]},{name:"GlobalScriptTask",superClass:["GlobalTask"],properties:[{name:"scriptLanguage",isAttr:!0,type:"String"},{name:"script",isAttr:!0,type:"String"}]},{name:"GlobalBusinessRuleTask",superClass:["GlobalTask"],properties:[{name:"implementation",isAttr:!0,type:"String"}]},{name:"ComplexBehaviorDefinition",superClass:["BaseElement"],properties:[{name:"condition",type:"FormalExpression"},{name:"event",type:"ImplicitThrowEvent"}]},{name:"ResourceRole",superClass:["BaseElement"],properties:[{name:"resourceRef",type:"Resource",isReference:!0},{name:"resourceParameterBindings",type:"ResourceParameterBinding",isMany:!0},{name:"resourceAssignmentExpression",type:"ResourceAssignmentExpression"},{name:"name",isAttr:!0,type:"String"}]},{name:"ResourceParameterBinding",properties:[{name:"expression",type:"Expression",xml:{serialize:"xsi:type"}},{name:"parameterRef",type:"ResourceParameter",isAttr:!0,isReference:!0}],superClass:["BaseElement"]},{name:"ResourceAssignmentExpression",properties:[{name:"expression",type:"Expression",xml:{serialize:"xsi:type"}}],superClass:["BaseElement"]},{name:"Import",properties:[{name:"importType",isAttr:!0,type:"String"},{name:"location",isAttr:!0,type:"String"},{name:"namespace",isAttr:!0,type:"String"}]},{name:"Definitions",superClass:["BaseElement"],properties:[{name:"name",isAttr:!0,type:"String"},{name:"targetNamespace",isAttr:!0,type:"String"},{name:"expressionLanguage",default:"http://www.w3.org/1999/XPath",isAttr:!0,type:"String"},{name:"typeLanguage",default:"http://www.w3.org/2001/XMLSchema",isAttr:!0,type:"String"},{name:"imports",type:"Import",isMany:!0},{name:"extensions",type:"Extension",isMany:!0},{name:"rootElements",type:"RootElement",isMany:!0},{name:"diagrams",isMany:!0,type:"bpmndi:BPMNDiagram"},{name:"exporter",isAttr:!0,type:"String"},{name:"relationships",type:"Relationship",isMany:!0},{name:"exporterVersion",isAttr:!0,type:"String"}]}],dl=[{name:"ProcessType",literalValues:[{name:"None"},{name:"Public"},{name:"Private"}]},{name:"GatewayDirection",literalValues:[{name:"Unspecified"},{name:"Converging"},{name:"Diverging"},{name:"Mixed"}]},{name:"EventBasedGatewayType",literalValues:[{name:"Parallel"},{name:"Exclusive"}]},{name:"RelationshipDirection",literalValues:[{name:"None"},{name:"Forward"},{name:"Backward"},{name:"Both"}]},{name:"ItemKind",literalValues:[{name:"Physical"},{name:"Information"}]},{name:"ChoreographyLoopType",literalValues:[{name:"None"},{name:"Standard"},{name:"MultiInstanceSequential"},{name:"MultiInstanceParallel"}]},{name:"AssociationDirection",literalValues:[{name:"None"},{name:"One"},{name:"Both"}]},{name:"MultiInstanceBehavior",literalValues:[{name:"None"},{name:"One"},{name:"All"},{name:"Complex"}]},{name:"AdHocOrdering",literalValues:[{name:"Parallel"},{name:"Sequential"}]}],El={tagAlias:"lowerCase",typePrefix:"t"},fl={name:cl,uri:ll,prefix:ul,associations:Bl,types:gl,enumerations:dl,xml:El},Ql="BPMNDI",pl="http://www.omg.org/spec/BPMN/20100524/DI",hl="bpmndi",wl=[{name:"BPMNDiagram",properties:[{name:"plane",type:"BPMNPlane",redefines:"di:Diagram#rootElement"},{name:"labelStyle",type:"BPMNLabelStyle",isMany:!0}],superClass:["di:Diagram"]},{name:"BPMNPlane",properties:[{name:"bpmnElement",isAttr:!0,isReference:!0,type:"bpmn:BaseElement",redefines:"di:DiagramElement#modelElement"}],superClass:["di:Plane"]},{name:"BPMNShape",properties:[{name:"bpmnElement",isAttr:!0,isReference:!0,type:"bpmn:BaseElement",redefines:"di:DiagramElement#modelElement"},{name:"isHorizontal",isAttr:!0,type:"Boolean"},{name:"isExpanded",isAttr:!0,type:"Boolean"},{name:"isMarkerVisible",isAttr:!0,type:"Boolean"},{name:"label",type:"BPMNLabel"},{name:"isMessageVisible",isAttr:!0,type:"Boolean"},{name:"participantBandKind",type:"ParticipantBandKind",isAttr:!0},{name:"choreographyActivityShape",type:"BPMNShape",isAttr:!0,isReference:!0}],superClass:["di:LabeledShape"]},{name:"BPMNEdge",properties:[{name:"label",type:"BPMNLabel"},{name:"bpmnElement",isAttr:!0,isReference:!0,type:"bpmn:BaseElement",redefines:"di:DiagramElement#modelElement"},{name:"sourceElement",isAttr:!0,isReference:!0,type:"di:DiagramElement",redefines:"di:Edge#source"},{name:"targetElement",isAttr:!0,isReference:!0,type:"di:DiagramElement",redefines:"di:Edge#target"},{name:"messageVisibleKind",type:"MessageVisibleKind",isAttr:!0,default:"initiating"}],superClass:["di:LabeledEdge"]},{name:"BPMNLabel",properties:[{name:"labelStyle",type:"BPMNLabelStyle",isAttr:!0,isReference:!0,redefines:"di:DiagramElement#style"}],superClass:["di:Label"]},{name:"BPMNLabelStyle",properties:[{name:"font",type:"dc:Font"}],superClass:["di:Style"]}],ml=[{name:"ParticipantBandKind",literalValues:[{name:"top_initiating"},{name:"middle_initiating"},{name:"bottom_initiating"},{name:"top_non_initiating"},{name:"middle_non_initiating"},{name:"bottom_non_initiating"}]},{name:"MessageVisibleKind",literalValues:[{name:"initiating"},{name:"non_initiating"}]}],Cl=[],Ml={name:Ql,uri:pl,prefix:hl,types:wl,enumerations:ml,associations:Cl},yl="DC",Il="http://www.omg.org/spec/DD/20100524/DC",Dl="dc",Fl=[{name:"Boolean"},{name:"Integer"},{name:"Real"},{name:"String"},{name:"Font",properties:[{name:"name",type:"String",isAttr:!0},{name:"size",type:"Real",isAttr:!0},{name:"isBold",type:"Boolean",isAttr:!0},{name:"isItalic",type:"Boolean",isAttr:!0},{name:"isUnderline",type:"Boolean",isAttr:!0},{name:"isStrikeThrough",type:"Boolean",isAttr:!0}]},{name:"Point",properties:[{name:"x",type:"Real",default:"0",isAttr:!0},{name:"y",type:"Real",default:"0",isAttr:!0}]},{name:"Bounds",properties:[{name:"x",type:"Real",default:"0",isAttr:!0},{name:"y",type:"Real",default:"0",isAttr:!0},{name:"width",type:"Real",isAttr:!0},{name:"height",type:"Real",isAttr:!0}]}],xl=[],vl={name:yl,uri:Il,prefix:Dl,types:Fl,associations:xl},Ul="DI",Yl="http://www.omg.org/spec/DD/20100524/DI",Tl="di",Nl=[{name:"DiagramElement",isAbstract:!0,properties:[{name:"id",isAttr:!0,isId:!0,type:"String"},{name:"extension",type:"Extension"},{name:"owningDiagram",type:"Diagram",isReadOnly:!0,isVirtual:!0,isReference:!0},{name:"owningElement",type:"DiagramElement",isReadOnly:!0,isVirtual:!0,isReference:!0},{name:"modelElement",isReadOnly:!0,isVirtual:!0,isReference:!0,type:"Element"},{name:"style",type:"Style",isReadOnly:!0,isVirtual:!0,isReference:!0},{name:"ownedElement",type:"DiagramElement",isReadOnly:!0,isMany:!0,isVirtual:!0}]},{name:"Node",isAbstract:!0,superClass:["DiagramElement"]},{name:"Edge",isAbstract:!0,superClass:["DiagramElement"],properties:[{name:"source",type:"DiagramElement",isReadOnly:!0,isVirtual:!0,isReference:!0},{name:"target",type:"DiagramElement",isReadOnly:!0,isVirtual:!0,isReference:!0},{name:"waypoint",isUnique:!1,isMany:!0,type:"dc:Point",xml:{serialize:"xsi:type"}}]},{name:"Diagram",isAbstract:!0,properties:[{name:"id",isAttr:!0,isId:!0,type:"String"},{name:"rootElement",type:"DiagramElement",isReadOnly:!0,isVirtual:!0},{name:"name",isAttr:!0,type:"String"},{name:"documentation",isAttr:!0,type:"String"},{name:"resolution",isAttr:!0,type:"Real"},{name:"ownedStyle",type:"Style",isReadOnly:!0,isMany:!0,isVirtual:!0}]},{name:"Shape",isAbstract:!0,superClass:["Node"],properties:[{name:"bounds",type:"dc:Bounds"}]},{name:"Plane",isAbstract:!0,superClass:["Node"],properties:[{name:"planeElement",type:"DiagramElement",subsettedProperty:"DiagramElement-ownedElement",isMany:!0}]},{name:"LabeledEdge",isAbstract:!0,superClass:["Edge"],properties:[{name:"ownedLabel",type:"Label",isReadOnly:!0,subsettedProperty:"DiagramElement-ownedElement",isMany:!0,isVirtual:!0}]},{name:"LabeledShape",isAbstract:!0,superClass:["Shape"],properties:[{name:"ownedLabel",type:"Label",isReadOnly:!0,subsettedProperty:"DiagramElement-ownedElement",isMany:!0,isVirtual:!0}]},{name:"Label",isAbstract:!0,superClass:["Node"],properties:[{name:"bounds",type:"dc:Bounds"}]},{name:"Style",isAbstract:!0,properties:[{name:"id",isAttr:!0,isId:!0,type:"String"}]},{name:"Extension",properties:[{name:"values",isMany:!0,type:"Element"}]}],Rl=[],zl={tagAlias:"lowerCase"},Sl={name:Ul,uri:Yl,prefix:Tl,types:Nl,associations:Rl,xml:zl},Gl="bpmn.io colors for BPMN",kl="http://bpmn.io/schema/bpmn/biocolor/1.0",Pl="bioc",Jl=[{name:"ColoredShape",extends:["bpmndi:BPMNShape"],properties:[{name:"stroke",isAttr:!0,type:"String"},{name:"fill",isAttr:!0,type:"String"}]},{name:"ColoredEdge",extends:["bpmndi:BPMNEdge"],properties:[{name:"stroke",isAttr:!0,type:"String"},{name:"fill",isAttr:!0,type:"String"}]}],Hl=[],bl=[],Vl={name:Gl,uri:kl,prefix:Pl,types:Jl,enumerations:Hl,associations:bl},Ll="BPMN in Color",Wl="http://www.omg.org/spec/BPMN/non-normative/color/1.0",jl="color",_l=[{name:"ColoredLabel",extends:["bpmndi:BPMNLabel"],properties:[{name:"color",isAttr:!0,type:"String"}]},{name:"ColoredShape",extends:["bpmndi:BPMNShape"],properties:[{name:"background-color",isAttr:!0,type:"String"},{name:"border-color",isAttr:!0,type:"String"}]},{name:"ColoredEdge",extends:["bpmndi:BPMNEdge"],properties:[{name:"border-color",isAttr:!0,type:"String"}]}],Xl=[],Ol=[],Kl={name:Ll,uri:Wl,prefix:jl,types:_l,enumerations:Xl,associations:Ol},Zl={bpmn:fl,bpmndi:Ml,dc:vl,di:Sl,bioc:Vl,color:Kl};function ql(n,e){var t=_({},Zl,n);return new Bt(t,e)}var $l="Tried to access di from the businessObject. The di is available through the diagram element only. For more information, see https://github.com/bpmn-io/bpmn-js/issues/1472";function e1(n){He(n,"di")||Object.defineProperty(n,"di",{enumerable:!1,get:function(){throw new Error($l)}})}function T0(n,e){return n.$instanceOf(e)}function t1(n){return O0(n.rootElements,function(e){return T0(e,"bpmn:Process")||T0(e,"bpmn:Collaboration")})}function n1(n,e){var t={},A=[],i={};function o(p,C){return function(N){p(N,C)}}function a(p){t[p.id]=p}function c(p){return t[p.id]}function l(p,C){var N=p.gfx;if(N)throw new Error(e("already rendered {element}",{element:x0(p)}));return n.element(p,i[p.id],C)}function u(p,C){return n.root(p,i[p.id],C)}function B(p,C){try{var N=i[p.id]&&l(p,C);return a(p),N}catch(K){d(K.message,{element:p,error:K}),console.error(e("failed to import {element}",{element:x0(p)})),console.error(K)}}function d(p,C){n.error(p,C)}var f=this.registerDi=function(C){var N=C.bpmnElement;N?i[N.id]?d(e("multiple DI elements defined for {element}",{element:x0(N)}),{element:N}):(i[N.id]=C,e1(N)):d(e("no bpmnElement referenced in {element}",{element:x0(C)}),{element:C})};function w(p){y(p.plane)}function y(p){f(p),V(p.planeElement,F)}function F(p){f(p)}this.handleDefinitions=function(C,N){var K=C.diagrams;if(N&&K.indexOf(N)===-1)throw new Error(e("diagram not part of bpmn:Definitions"));if(!N&&K&&K.length&&(N=K[0]),!N)throw new Error(e("no diagram to display"));i={},w(N);var e0=N.plane;if(!e0)throw new Error(e("no plane for {element}",{element:x0(N)}));var o0=e0.bpmnElement;if(!o0)if(o0=t1(C),o0)d(e("correcting missing bpmnElement on {plane} to {rootElement}",{plane:x0(e0),rootElement:x0(o0)})),e0.bpmnElement=o0,f(e0);else throw new Error(e("no process or collaboration to display"));var D0=u(o0,e0);if(T0(o0,"bpmn:Process")||T0(o0,"bpmn:SubProcess"))S(o0,D0);else if(T0(o0,"bpmn:Collaboration"))E(o0,D0),M(C.rootElements,D0);else throw new Error(e("unsupported bpmnElement for {plane}: {rootElement}",{plane:x0(e0),rootElement:x0(o0)}));R(A)};var R=this.handleDeferred=function(){for(var C;A.length;)C=A.shift(),C()};function S(p,C){V0(p,C),Y(p.ioSpecification,C),m(p.artifacts,C),a(p)}function M(p,C){var N=j2(p,function(K){return!c(K)&&T0(K,"bpmn:Process")&&K.laneSets});N.forEach(o(S,C))}function T(p,C){B(p,C)}function D(p,C){V(p,o(T,C))}function I(p,C){B(p,C)}function U(p,C){B(p,C)}function x(p,C){B(p,C)}function v(p,C){B(p,C)}function m(p,C){V(p,function(N){T0(N,"bpmn:Association")?A.push(function(){v(N,C)}):v(N,C)})}function Y(p,C){p&&(V(p.dataInputs,o(U,C)),V(p.dataOutputs,o(x,C)))}var P=this.handleSubProcess=function(C,N){V0(C,N),m(C.artifacts,N)};function J(p,C){var N=B(p,C);T0(p,"bpmn:SubProcess")&&P(p,N||C),T0(p,"bpmn:Activity")&&Y(p.ioSpecification,C),A.push(function(){V(p.dataInputAssociations,o(I,C)),V(p.dataOutputAssociations,o(I,C))})}function H(p,C){B(p,C)}function t0(p,C){B(p,C)}function S0(p,C){A.push(function(){var N=B(p,C);p.childLaneSet&&l0(p.childLaneSet,N||C),h(p)})}function l0(p,C){V(p.lanes,o(S0,C))}function n0(p,C){V(p,o(l0,C))}function V0(p,C){Q(p.flowElements,C),p.laneSets&&n0(p.laneSets,C)}function Q(p,C){V(p,function(N){T0(N,"bpmn:SequenceFlow")?A.push(function(){H(N,C)}):T0(N,"bpmn:BoundaryEvent")?A.unshift(function(){J(N,C)}):T0(N,"bpmn:FlowNode")?J(N,C):T0(N,"bpmn:DataObject")||(T0(N,"bpmn:DataStoreReference")||T0(N,"bpmn:DataObjectReference")?t0(N,C):d(e("unrecognized flowElement {element} in context {context}",{element:x0(N),context:C?x0(C.businessObject):"null"}),{element:N,context:C}))})}function g(p,C){var N=B(p,C),K=p.processRef;K&&S(K,N||C)}function E(p,C){V(p.participants,o(g,C)),m(p.artifacts,C),A.push(function(){D(p.messageFlows,C)})}function h(p){V(p.flowNodeRef,function(C){var N=C.get("lanes");N&&N.push(p)})}}function A1(n,e,t){var A,i,o,a,c,l=[];function u(B,d){var f={root:function(R,S){return A.add(R,S)},element:function(R,S,M){return A.add(R,S,M)},error:function(R,S){l.push({message:R,context:S})}},w=new n1(f,o);d=d||B.diagrams&&B.diagrams[0];var y=i1(B,d);if(!y)throw new Error(o("no diagram to display"));V(y,function(R){w.handleDefinitions(B,R)});var F=d.plane.bpmnElement.id;a.setRootElement(a.findRoot(F+"_plane")||a.findRoot(F))}return new Promise(function(B,d){try{return A=n.get("bpmnImporter"),i=n.get("eventBus"),o=n.get("translate"),a=n.get("canvas"),i.fire("import.render.start",{definitions:e}),u(e,t),i.fire("import.render.complete",{error:c,warnings:l}),B({warnings:l})}catch(f){return f.warnings=l,d(f)}})}function i1(n,e){if(e){var t=e.plane.bpmnElement,A=t;!X(t,"bpmn:Process")&&!X(t,"bpmn:Collaboration")&&(A=o1(t));var i;X(A,"bpmn:Collaboration")?i=A:i=O0(n.rootElements,function(u){if(X(u,"bpmn:Collaboration"))return O0(u.participants,function(B){return B.processRef===A})});var o=[A];i&&(o=zr(i.participants,function(u){return u.processRef}),o.push(i));var a=Qi(o),c=[e],l=[t];return V(n.diagrams,function(u){var B=u.plane.bpmnElement;a.indexOf(B)!==-1&&l.indexOf(B)===-1&&(c.push(u),l.push(B))}),c}}function Qi(n){var e=[];return V(n,function(t){t&&(e.push(t),e=e.concat(Qi(t.flowElements)))}),e}function o1(n){for(var e=n;e;){if(X(e,"bpmn:Process"))return e;e=e.$parent}}var r1='<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 14.02 5.57" width="53" height="21"><path fill="currentColor" d="M1.88.92v.14c0 .41-.13.68-.4.8.33.14.46.44.46.86v.33c0 .61-.33.95-.95.95H0V0h.95c.65 0 .93.3.93.92zM.63.57v1.06h.24c.24 0 .38-.1.38-.43V.98c0-.28-.1-.4-.32-.4zm0 1.63v1.22h.36c.2 0 .32-.1.32-.39v-.35c0-.37-.12-.48-.4-.48H.63zM4.18.99v.52c0 .64-.31.98-.94.98h-.3V4h-.62V0h.92c.63 0 .94.35.94.99zM2.94.57v1.35h.3c.2 0 .3-.09.3-.37v-.6c0-.29-.1-.38-.3-.38h-.3zm2.89 2.27L6.25 0h.88v4h-.6V1.12L6.1 3.99h-.6l-.46-2.82v2.82h-.55V0h.87zM8.14 1.1V4h-.56V0h.79L9 2.4V0h.56v4h-.64zm2.49 2.29v.6h-.6v-.6zM12.12 1c0-.63.33-1 .95-1 .61 0 .95.37.95 1v2.04c0 .64-.34 1-.95 1-.62 0-.95-.37-.95-1zm.62 2.08c0 .28.13.39.33.39s.32-.1.32-.4V.98c0-.29-.12-.4-.32-.4s-.33.11-.33.4z"/><path fill="currentColor" d="M0 4.53h14.02v1.04H0zM11.08 0h.63v.62h-.63zm.63 4V1h-.63v2.98z"/></svg>',pi=r1,hi={verticalAlign:"middle"},wi={color:"#404040"},s1={zIndex:"1001",position:"fixed",top:"0",left:"0",right:"0",bottom:"0"},a1={width:"100%",height:"100%",background:"rgba(40,40,40,0.2)"},c1={position:"absolute",left:"50%",top:"40%",transform:"translate(-50%)",width:"260px",padding:"10px",background:"white",boxShadow:"0 1px 4px rgba(0,0,0,0.3)",fontFamily:"Helvetica, Arial, sans-serif",fontSize:"14px",display:"flex",lineHeight:"1.3"},l1='<div class="bjs-powered-by-lightbox"><div class="backdrop"></div><div class="notice"><a href="https://bpmn.io" target="_blank" rel="noopener" class="link">'+pi+'</a><span>Web-based tooling for BPMN, DMN and forms powered by <a href="https://bpmn.io" target="_blank" rel="noopener">bpmn.io</a>.</span></div></div>',i2;function u1(){i2=A2(l1),G0(i2,s1),G0(K0("svg",i2),hi),G0(K0(".backdrop",i2),a1),G0(K0(".notice",i2),c1),G0(K0(".link",i2),wi,{margin:"15px 20px 15px 10px",alignSelf:"center"})}function B1(){i2||(u1(),jt.bind(i2,".backdrop","click",function(n){document.body.removeChild(i2)})),document.body.appendChild(i2)}function w0(n){n=_({},d1,n),this._moddle=this._createModdle(n),this._container=this._createContainer(n),f1(this._container),this._init(this._container,this._moddle,n)}e2(w0,$2),w0.prototype.importXML=async function(e,t){const A=this;function i(a){return A.get("eventBus").createEvent(a)}let o=[];try{e=this._emit("import.parse.start",{xml:e})||e;let a;try{a=await this._moddle.fromXML(e,"bpmn:Definitions")}catch(f){throw this._emit("import.parse.complete",{error:f}),f}let c=a.rootElement;const l=a.references,u=a.warnings,B=a.elementsById;o=o.concat(u),c=this._emit("import.parse.complete",i({error:null,definitions:c,elementsById:B,references:l,warnings:o}))||c;const d=await this.importDefinitions(c,t);return o=o.concat(d.warnings),this._emit("import.done",{error:null,warnings:o}),{warnings:o}}catch(a){let c=a;throw o=o.concat(c.warnings||[]),gt(c,o),c=g1(c),this._emit("import.done",{error:c,warnings:c.warnings}),c}},w0.prototype.importDefinitions=async function(e,t){return this._setDefinitions(e),{warnings:(await this.open(t)).warnings}},w0.prototype.open=async function(e){const t=this._definitions;let A=e;if(!t){const o=new Error("no XML imported");throw gt(o,[]),o}if(typeof e=="string"&&(A=E1(t,e),!A)){const o=new Error("BPMNDiagram <"+e+"> not found");throw gt(o,[]),o}try{this.clear()}catch(o){throw gt(o,[]),o}const{warnings:i}=await A1(this,t,A);return{warnings:i}},w0.prototype.saveXML=async function(e){e=e||{};let t=this._definitions,A,i;try{if(!t)throw new Error("no definitions loaded");t=this._emit("saveXML.start",{definitions:t})||t,i=(await this._moddle.toXML(t,e)).xml,i=this._emit("saveXML.serialized",{xml:i})||i}catch(a){A=a}const o=A?{error:A}:{xml:i};if(this._emit("saveXML.done",o),A)throw A;return o},w0.prototype.saveSVG=async function(){this._emit("saveSVG.start");let e,t;try{const A=this.get("canvas"),i=A.getActiveLayer(),o=K0("defs",A._svg),a=iA(i),c=o?"<defs>"+iA(o)+"</defs>":"",l=i.getBBox();e=`<?xml version="1.0" encoding="utf-8"?>
30
- <!-- created with bpmn-js / http://bpmn.io -->
31
- <!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
32
- <svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="`+l.width+'" height="'+l.height+'" viewBox="'+l.x+" "+l.y+" "+l.width+" "+l.height+'" version="1.1">'+c+a+"</svg>"}catch(A){t=A}if(this._emit("saveSVG.done",{error:t,svg:e}),t)throw t;return{svg:e}},w0.prototype._setDefinitions=function(n){this._definitions=n},w0.prototype.getModules=function(){return this._modules},w0.prototype.clear=function(){this.getDefinitions()&&$2.prototype.clear.call(this)},w0.prototype.destroy=function(){$2.prototype.destroy.call(this),Oe(this._container)},w0.prototype.on=function(n,e,t,A){return this.get("eventBus").on(n,e,t,A)},w0.prototype.off=function(n,e){this.get("eventBus").off(n,e)},w0.prototype.attachTo=function(n){if(!n)throw new Error("parentNode required");this.detach(),n.get&&n.constructor.prototype.jquery&&(n=n.get(0)),typeof n=="string"&&(n=K0(n)),n.appendChild(this._container),this._emit("attach",{}),this.get("canvas").resized()},w0.prototype.getDefinitions=function(){return this._definitions},w0.prototype.detach=function(){const n=this._container,e=n.parentNode;e&&(this._emit("detach",{}),e.removeChild(n))},w0.prototype._init=function(n,e,t){const A=t.modules||this.getModules(t),i=t.additionalModules||[],o=[{bpmnjs:["value",this],moddle:["value",e]}],a=[].concat(o,A,i),c=_(Hr(t,["additionalModules"]),{canvas:_({},t.canvas,{container:n}),modules:a});$2.call(this,c),t&&t.container&&this.attachTo(t.container)},w0.prototype._emit=function(n,e){return this.get("eventBus").fire(n,e)},w0.prototype._createContainer=function(n){const e=A2('<div class="bjs-container"></div>');return G0(e,{width:mi(n.width),height:mi(n.height),position:n.position}),e},w0.prototype._createModdle=function(n){const e=_({},this._moddleExtensions,n.moddleExtensions);return new ql(e)},w0.prototype._modules=[];function gt(n,e){return n.warnings=e,n}function g1(n){const t=/unparsable content <([^>]+)> detected([\s\S]*)$/.exec(n.message);return t&&(n.message="unparsable content <"+t[1]+"> detected; this may indicate an invalid BPMN 2.0 diagram file"+t[2]),n}const d1={width:"100%",height:"100%",position:"relative"};function mi(n){return n+(f2(n)?"px":"")}function E1(n,e){return e&&O0(n.diagrams,function(t){return t.id===e})||null}function f1(n){const t='<a href="http://bpmn.io" target="_blank" class="bjs-powered-by" title="Powered by bpmn.io" >'+pi+"</a>",A=A2(t);G0(K0("svg",A),hi),G0(A,wi,{position:"absolute",bottom:"15px",right:"15px",zIndex:"100"}),n.appendChild(A),Wt.bind(A,"click",function(i){B1(),i.preventDefault()})}function dt(n){w0.call(this,n)}e2(dt,w0),dt.prototype._modules=[ma,EA,Na,xA,qa],dt.prototype._moddleExtensions={};/**
22
+ <%s key={someKey} {...props} />`,W,Y,ke,Y),zo[Y+W]=!0)}if(Y=null,O!==void 0&&(t(O),Y=""+O),a(F)&&(t(F.key),Y=""+F.key),"key"in F){O={};for(var Lt in F)Lt!=="key"&&(O[Lt]=F[Lt])}else O=F;return Y&&u(O,typeof y=="function"?y.displayName||y.name||"Unknown":y),c(y,Y,O,i(),lt,Dt)}function p(y){m(y)?y._store&&(y._store.validated=1):typeof y=="object"&&y!==null&&y.$$typeof===D&&(y._payload.status==="fulfilled"?m(y._payload.value)&&y._payload.value._store&&(y._payload.value._store.validated=1):y._store&&(y._store.validated=1))}function m(y){return typeof y=="object"&&y!==null&&y.$$typeof===g}var h=Z,g=Symbol.for("react.transitional.element"),v=Symbol.for("react.portal"),E=Symbol.for("react.fragment"),M=Symbol.for("react.strict_mode"),_=Symbol.for("react.profiler"),A=Symbol.for("react.consumer"),R=Symbol.for("react.context"),k=Symbol.for("react.forward_ref"),V=Symbol.for("react.suspense"),B=Symbol.for("react.suspense_list"),J=Symbol.for("react.memo"),D=Symbol.for("react.lazy"),G=Symbol.for("react.activity"),X=Symbol.for("react.client.reference"),Ne=h.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,$e=Object.prototype.hasOwnProperty,ne=Array.isArray,ye=console.createTask?console.createTask:function(){return null};h={react_stack_bottom_frame:function(y){return y()}};var Jo,Wo={},Yo=h.react_stack_bottom_frame.bind(h,l)(),Zo=ye(n(l)),zo={};Le.Fragment=E,Le.jsx=function(y,F,O){var W=1e4>Ne.recentlyCreatedOwnerStacks++;return f(y,F,O,!1,W?Error("react-stack-top-frame"):Yo,W?ye(n(y)):Zo)},Le.jsxs=function(y,F,O){var W=1e4>Ne.recentlyCreatedOwnerStacks++;return f(y,F,O,!0,W?Error("react-stack-top-frame"):Yo,W?ye(n(y)):Zo)}})()),Le}var Ut;function Qo(){return Ut||(Ut=1,process.env.NODE_ENV==="production"?Oe.exports=Ko():Oe.exports=Xo()),Oe.exports}var w=Qo();/**
33
23
  * @license lucide-react v0.460.0 - ISC
34
24
  *
35
25
  * This source code is licensed under the ISC license.
36
26
  * See the LICENSE file in the root directory of this source tree.
37
- */const Q1=n=>n.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase(),Ci=(...n)=>n.filter((e,t,A)=>!!e&&e.trim()!==""&&A.indexOf(e)===t).join(" ").trim();/**
27
+ */const jo=o=>o.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase(),bt=(...o)=>o.filter((e,t,n)=>!!e&&e.trim()!==""&&n.indexOf(e)===t).join(" ").trim();/**
38
28
  * @license lucide-react v0.460.0 - ISC
39
29
  *
40
30
  * This source code is licensed under the ISC license.
41
31
  * See the LICENSE file in the root directory of this source tree.
42
- */var p1={xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"};/**
32
+ */var ei={xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"};/**
43
33
  * @license lucide-react v0.460.0 - ISC
44
34
  *
45
35
  * This source code is licensed under the ISC license.
46
36
  * See the LICENSE file in the root directory of this source tree.
47
- */const h1=M0.forwardRef(({color:n="currentColor",size:e=24,strokeWidth:t=2,absoluteStrokeWidth:A,className:i="",children:o,iconNode:a,...c},l)=>M0.createElement("svg",{ref:l,...p1,width:e,height:e,stroke:n,strokeWidth:A?Number(t)*24/Number(e):t,className:Ci("lucide",i),...c},[...a.map(([u,B])=>M0.createElement(u,B)),...Array.isArray(o)?o:[o]]));/**
37
+ */const ti=Z.forwardRef(({color:o="currentColor",size:e=24,strokeWidth:t=2,absoluteStrokeWidth:n,className:i="",children:l,iconNode:a,...u},d)=>Z.createElement("svg",{ref:d,...ei,width:e,height:e,stroke:o,strokeWidth:n?Number(t)*24/Number(e):t,className:bt("lucide",i),...u},[...a.map(([c,f])=>Z.createElement(c,f)),...Array.isArray(l)?l:[l]]));/**
48
38
  * @license lucide-react v0.460.0 - ISC
49
39
  *
50
40
  * This source code is licensed under the ISC license.
51
41
  * See the LICENSE file in the root directory of this source tree.
52
- */const N0=(n,e)=>{const t=M0.forwardRef(({className:A,...i},o)=>M0.createElement(h1,{ref:o,iconNode:e,className:Ci(`lucide-${Q1(n)}`,A),...i}));return t.displayName=`${n}`,t};/**
42
+ */const ee=(o,e)=>{const t=Z.forwardRef(({className:n,...i},l)=>Z.createElement(ti,{ref:l,iconNode:e,className:bt(`lucide-${jo(o)}`,n),...i}));return t.displayName=`${o}`,t};/**
53
43
  * @license lucide-react v0.460.0 - ISC
54
44
  *
55
45
  * This source code is licensed under the ISC license.
56
46
  * See the LICENSE file in the root directory of this source tree.
57
- */const w1=N0("ArrowLeft",[["path",{d:"m12 19-7-7 7-7",key:"1l729n"}],["path",{d:"M19 12H5",key:"x3x0zl"}]]);/**
47
+ */const ni=ee("ArrowLeft",[["path",{d:"m12 19-7-7 7-7",key:"1l729n"}],["path",{d:"M19 12H5",key:"x3x0zl"}]]);/**
58
48
  * @license lucide-react v0.460.0 - ISC
59
49
  *
60
50
  * This source code is licensed under the ISC license.
61
51
  * See the LICENSE file in the root directory of this source tree.
62
- */const m1=N0("Briefcase",[["path",{d:"M16 20V4a2 2 0 0 0-2-2h-4a2 2 0 0 0-2 2v16",key:"jecpp"}],["rect",{width:"20",height:"14",x:"2",y:"6",rx:"2",key:"i6l2r4"}]]);/**
52
+ */const oi=ee("ChevronLeft",[["path",{d:"m15 18-6-6 6-6",key:"1wnfg3"}]]);/**
63
53
  * @license lucide-react v0.460.0 - ISC
64
54
  *
65
55
  * This source code is licensed under the ISC license.
66
56
  * See the LICENSE file in the root directory of this source tree.
67
- */const C1=N0("ChevronLeft",[["path",{d:"m15 18-6-6 6-6",key:"1wnfg3"}]]);/**
57
+ */const Gt=ee("ChevronRight",[["path",{d:"m9 18 6-6-6-6",key:"mthhwq"}]]);/**
68
58
  * @license lucide-react v0.460.0 - ISC
69
59
  *
70
60
  * This source code is licensed under the ISC license.
71
61
  * See the LICENSE file in the root directory of this source tree.
72
- */const Et=N0("ChevronRight",[["path",{d:"m9 18 6-6-6-6",key:"mthhwq"}]]);/**
62
+ */const ii=ee("CircleX",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"m15 9-6 6",key:"1uzhvr"}],["path",{d:"m9 9 6 6",key:"z0biqf"}]]);/**
73
63
  * @license lucide-react v0.460.0 - ISC
74
64
  *
75
65
  * This source code is licensed under the ISC license.
76
66
  * See the LICENSE file in the root directory of this source tree.
77
- */const M1=N0("CircleX",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"m15 9-6 6",key:"1uzhvr"}],["path",{d:"m9 9 6 6",key:"z0biqf"}]]);/**
67
+ */const ri=ee("Circle",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}]]);/**
78
68
  * @license lucide-react v0.460.0 - ISC
79
69
  *
80
70
  * This source code is licensed under the ISC license.
81
71
  * See the LICENSE file in the root directory of this source tree.
82
- */const y1=N0("Circle",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}]]);/**
72
+ */const si=ee("Download",[["path",{d:"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4",key:"ih7n3h"}],["polyline",{points:"7 10 12 15 17 10",key:"2ggqvy"}],["line",{x1:"12",x2:"12",y1:"15",y2:"3",key:"1vk2je"}]]);/**
83
73
  * @license lucide-react v0.460.0 - ISC
84
74
  *
85
75
  * This source code is licensed under the ISC license.
86
76
  * See the LICENSE file in the root directory of this source tree.
87
- */const I1=N0("Download",[["path",{d:"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4",key:"ih7n3h"}],["polyline",{points:"7 10 12 15 17 10",key:"2ggqvy"}],["line",{x1:"12",x2:"12",y1:"15",y2:"3",key:"1vk2je"}]]);/**
77
+ */const li=ee("MessageCircle",[["path",{d:"M7.9 20A9 9 0 1 0 4 16.1L2 22Z",key:"vv11sd"}]]);/**
88
78
  * @license lucide-react v0.460.0 - ISC
89
79
  *
90
80
  * This source code is licensed under the ISC license.
91
81
  * See the LICENSE file in the root directory of this source tree.
92
- */const D1=N0("GitCommitHorizontal",[["circle",{cx:"12",cy:"12",r:"3",key:"1v7zrd"}],["line",{x1:"3",x2:"9",y1:"12",y2:"12",key:"1dyftd"}],["line",{x1:"15",x2:"21",y1:"12",y2:"12",key:"oup4p8"}]]);/**
82
+ */const ai=ee("RefreshCw",[["path",{d:"M3 12a9 9 0 0 1 9-9 9.75 9.75 0 0 1 6.74 2.74L21 8",key:"v9h5vc"}],["path",{d:"M21 3v5h-5",key:"1q7to0"}],["path",{d:"M21 12a9 9 0 0 1-9 9 9.75 9.75 0 0 1-6.74-2.74L3 16",key:"3uifl3"}],["path",{d:"M8 16H3v5",key:"1cv678"}]]);/**
93
83
  * @license lucide-react v0.460.0 - ISC
94
84
  *
95
85
  * This source code is licensed under the ISC license.
96
86
  * See the LICENSE file in the root directory of this source tree.
97
- */const F1=N0("MessageCircle",[["path",{d:"M7.9 20A9 9 0 1 0 4 16.1L2 22Z",key:"vv11sd"}]]);/**
87
+ */const Bt=ee("Sparkles",[["path",{d:"M9.937 15.5A2 2 0 0 0 8.5 14.063l-6.135-1.582a.5.5 0 0 1 0-.962L8.5 9.936A2 2 0 0 0 9.937 8.5l1.582-6.135a.5.5 0 0 1 .963 0L14.063 8.5A2 2 0 0 0 15.5 9.937l6.135 1.581a.5.5 0 0 1 0 .964L15.5 14.063a2 2 0 0 0-1.437 1.437l-1.582 6.135a.5.5 0 0 1-.963 0z",key:"4pj2yx"}],["path",{d:"M20 3v4",key:"1olli1"}],["path",{d:"M22 5h-4",key:"1gvqau"}],["path",{d:"M4 17v2",key:"vumght"}],["path",{d:"M5 18H3",key:"zchphs"}]]);/**
98
88
  * @license lucide-react v0.460.0 - ISC
99
89
  *
100
90
  * This source code is licensed under the ISC license.
101
91
  * See the LICENSE file in the root directory of this source tree.
102
- */const x1=N0("Plus",[["path",{d:"M5 12h14",key:"1ays0h"}],["path",{d:"M12 5v14",key:"s699le"}]]);/**
92
+ */const ui=ee("Square",[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}]]);/**
103
93
  * @license lucide-react v0.460.0 - ISC
104
94
  *
105
95
  * This source code is licensed under the ISC license.
106
96
  * See the LICENSE file in the root directory of this source tree.
107
- */const Mi=N0("RefreshCw",[["path",{d:"M3 12a9 9 0 0 1 9-9 9.75 9.75 0 0 1 6.74 2.74L21 8",key:"v9h5vc"}],["path",{d:"M21 3v5h-5",key:"1q7to0"}],["path",{d:"M21 12a9 9 0 0 1-9 9 9.75 9.75 0 0 1-6.74-2.74L3 16",key:"3uifl3"}],["path",{d:"M8 16H3v5",key:"1cv678"}]]);/**
108
- * @license lucide-react v0.460.0 - ISC
109
- *
110
- * This source code is licensed under the ISC license.
111
- * See the LICENSE file in the root directory of this source tree.
112
- */const v1=N0("Sparkles",[["path",{d:"M9.937 15.5A2 2 0 0 0 8.5 14.063l-6.135-1.582a.5.5 0 0 1 0-.962L8.5 9.936A2 2 0 0 0 9.937 8.5l1.582-6.135a.5.5 0 0 1 .963 0L14.063 8.5A2 2 0 0 0 15.5 9.937l6.135 1.581a.5.5 0 0 1 0 .964L15.5 14.063a2 2 0 0 0-1.437 1.437l-1.582 6.135a.5.5 0 0 1-.963 0z",key:"4pj2yx"}],["path",{d:"M20 3v4",key:"1olli1"}],["path",{d:"M22 5h-4",key:"1gvqau"}],["path",{d:"M4 17v2",key:"vumght"}],["path",{d:"M5 18H3",key:"zchphs"}]]);/**
113
- * @license lucide-react v0.460.0 - ISC
114
- *
115
- * This source code is licensed under the ISC license.
116
- * See the LICENSE file in the root directory of this source tree.
117
- */const U1=N0("Square",[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}]]);/**
118
- * @license lucide-react v0.460.0 - ISC
119
- *
120
- * This source code is licensed under the ISC license.
121
- * See the LICENSE file in the root directory of this source tree.
122
- */const Y1=N0("Target",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["circle",{cx:"12",cy:"12",r:"6",key:"1vlfrh"}],["circle",{cx:"12",cy:"12",r:"2",key:"1c9p78"}]]);/**
123
- * @license lucide-react v0.460.0 - ISC
124
- *
125
- * This source code is licensed under the ISC license.
126
- * See the LICENSE file in the root directory of this source tree.
127
- */const T1=N0("Trash2",[["path",{d:"M3 6h18",key:"d0wm0j"}],["path",{d:"M19 6v14c0 1-1 2-2 2H7c-1 0-2-1-2-2V6",key:"4alrt4"}],["path",{d:"M8 6V4c0-1 1-2 2-2h4c1 0 2 1 2 2v2",key:"v07s0e"}],["line",{x1:"10",x2:"10",y1:"11",y2:"17",key:"1uufr5"}],["line",{x1:"14",x2:"14",y1:"11",y2:"17",key:"xtxkd"}]]);var s0;(function(n){n.assertEqual=i=>{};function e(i){}n.assertIs=e;function t(i){throw new Error}n.assertNever=t,n.arrayToEnum=i=>{const o={};for(const a of i)o[a]=a;return o},n.getValidEnumValues=i=>{const o=n.objectKeys(i).filter(c=>typeof i[i[c]]!="number"),a={};for(const c of o)a[c]=i[c];return n.objectValues(a)},n.objectValues=i=>n.objectKeys(i).map(function(o){return i[o]}),n.objectKeys=typeof Object.keys=="function"?i=>Object.keys(i):i=>{const o=[];for(const a in i)Object.prototype.hasOwnProperty.call(i,a)&&o.push(a);return o},n.find=(i,o)=>{for(const a of i)if(o(a))return a},n.isInteger=typeof Number.isInteger=="function"?i=>Number.isInteger(i):i=>typeof i=="number"&&Number.isFinite(i)&&Math.floor(i)===i;function A(i,o=" | "){return i.map(a=>typeof a=="string"?`'${a}'`:a).join(o)}n.joinValues=A,n.jsonStringifyReplacer=(i,o)=>typeof o=="bigint"?o.toString():o})(s0||(s0={}));var yi;(function(n){n.mergeShapes=(e,t)=>({...e,...t})})(yi||(yi={}));const L=s0.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]),I2=n=>{switch(typeof n){case"undefined":return L.undefined;case"string":return L.string;case"number":return Number.isNaN(n)?L.nan:L.number;case"boolean":return L.boolean;case"function":return L.function;case"bigint":return L.bigint;case"symbol":return L.symbol;case"object":return Array.isArray(n)?L.array:n===null?L.null:n.then&&typeof n.then=="function"&&n.catch&&typeof n.catch=="function"?L.promise:typeof Map<"u"&&n instanceof Map?L.map:typeof Set<"u"&&n instanceof Set?L.set:typeof Date<"u"&&n instanceof Date?L.date:L.object;default:return L.unknown}},z=s0.arrayToEnum(["invalid_type","invalid_literal","custom","invalid_union","invalid_union_discriminator","invalid_enum_value","unrecognized_keys","invalid_arguments","invalid_return_type","invalid_date","invalid_string","too_small","too_big","invalid_intersection_types","not_multiple_of","not_finite"]);class d2 extends Error{get errors(){return this.issues}constructor(e){super(),this.issues=[],this.addIssue=A=>{this.issues=[...this.issues,A]},this.addIssues=(A=[])=>{this.issues=[...this.issues,...A]};const t=new.target.prototype;Object.setPrototypeOf?Object.setPrototypeOf(this,t):this.__proto__=t,this.name="ZodError",this.issues=e}format(e){const t=e||function(o){return o.message},A={_errors:[]},i=o=>{for(const a of o.issues)if(a.code==="invalid_union")a.unionErrors.map(i);else if(a.code==="invalid_return_type")i(a.returnTypeError);else if(a.code==="invalid_arguments")i(a.argumentsError);else if(a.path.length===0)A._errors.push(t(a));else{let c=A,l=0;for(;l<a.path.length;){const u=a.path[l];l===a.path.length-1?(c[u]=c[u]||{_errors:[]},c[u]._errors.push(t(a))):c[u]=c[u]||{_errors:[]},c=c[u],l++}}};return i(this),A}static assert(e){if(!(e instanceof d2))throw new Error(`Not a ZodError: ${e}`)}toString(){return this.message}get message(){return JSON.stringify(this.issues,s0.jsonStringifyReplacer,2)}get isEmpty(){return this.issues.length===0}flatten(e=t=>t.message){const t={},A=[];for(const i of this.issues)if(i.path.length>0){const o=i.path[0];t[o]=t[o]||[],t[o].push(e(i))}else A.push(e(i));return{formErrors:A,fieldErrors:t}}get formErrors(){return this.flatten()}}d2.create=n=>new d2(n);const fn=(n,e)=>{let t;switch(n.code){case z.invalid_type:n.received===L.undefined?t="Required":t=`Expected ${n.expected}, received ${n.received}`;break;case z.invalid_literal:t=`Invalid literal value, expected ${JSON.stringify(n.expected,s0.jsonStringifyReplacer)}`;break;case z.unrecognized_keys:t=`Unrecognized key(s) in object: ${s0.joinValues(n.keys,", ")}`;break;case z.invalid_union:t="Invalid input";break;case z.invalid_union_discriminator:t=`Invalid discriminator value. Expected ${s0.joinValues(n.options)}`;break;case z.invalid_enum_value:t=`Invalid enum value. Expected ${s0.joinValues(n.options)}, received '${n.received}'`;break;case z.invalid_arguments:t="Invalid function arguments";break;case z.invalid_return_type:t="Invalid function return type";break;case z.invalid_date:t="Invalid date";break;case z.invalid_string:typeof n.validation=="object"?"includes"in n.validation?(t=`Invalid input: must include "${n.validation.includes}"`,typeof n.validation.position=="number"&&(t=`${t} at one or more positions greater than or equal to ${n.validation.position}`)):"startsWith"in n.validation?t=`Invalid input: must start with "${n.validation.startsWith}"`:"endsWith"in n.validation?t=`Invalid input: must end with "${n.validation.endsWith}"`:s0.assertNever(n.validation):n.validation!=="regex"?t=`Invalid ${n.validation}`:t="Invalid";break;case z.too_small:n.type==="array"?t=`Array must contain ${n.exact?"exactly":n.inclusive?"at least":"more than"} ${n.minimum} element(s)`:n.type==="string"?t=`String must contain ${n.exact?"exactly":n.inclusive?"at least":"over"} ${n.minimum} character(s)`:n.type==="number"?t=`Number must be ${n.exact?"exactly equal to ":n.inclusive?"greater than or equal to ":"greater than "}${n.minimum}`:n.type==="bigint"?t=`Number must be ${n.exact?"exactly equal to ":n.inclusive?"greater than or equal to ":"greater than "}${n.minimum}`:n.type==="date"?t=`Date must be ${n.exact?"exactly equal to ":n.inclusive?"greater than or equal to ":"greater than "}${new Date(Number(n.minimum))}`:t="Invalid input";break;case z.too_big:n.type==="array"?t=`Array must contain ${n.exact?"exactly":n.inclusive?"at most":"less than"} ${n.maximum} element(s)`:n.type==="string"?t=`String must contain ${n.exact?"exactly":n.inclusive?"at most":"under"} ${n.maximum} character(s)`:n.type==="number"?t=`Number must be ${n.exact?"exactly":n.inclusive?"less than or equal to":"less than"} ${n.maximum}`:n.type==="bigint"?t=`BigInt must be ${n.exact?"exactly":n.inclusive?"less than or equal to":"less than"} ${n.maximum}`:n.type==="date"?t=`Date must be ${n.exact?"exactly":n.inclusive?"smaller than or equal to":"smaller than"} ${new Date(Number(n.maximum))}`:t="Invalid input";break;case z.custom:t="Invalid input";break;case z.invalid_intersection_types:t="Intersection results could not be merged";break;case z.not_multiple_of:t=`Number must be a multiple of ${n.multipleOf}`;break;case z.not_finite:t="Number must be finite";break;default:t=e.defaultError,s0.assertNever(n)}return{message:t}};let N1=fn;function R1(){return N1}const z1=n=>{const{data:e,path:t,errorMaps:A,issueData:i}=n,o=[...t,...i.path||[]],a={...i,path:o};if(i.message!==void 0)return{...i,path:o,message:i.message};let c="";const l=A.filter(u=>!!u).slice().reverse();for(const u of l)c=u(a,{data:e,defaultError:c}).message;return{...i,path:o,message:c}};function b(n,e){const t=R1(),A=z1({issueData:e,data:n.data,path:n.path,errorMaps:[n.common.contextualErrorMap,n.schemaErrorMap,t,t===fn?void 0:fn].filter(i=>!!i)});n.common.issues.push(A)}class R0{constructor(){this.value="valid"}dirty(){this.value==="valid"&&(this.value="dirty")}abort(){this.value!=="aborted"&&(this.value="aborted")}static mergeArray(e,t){const A=[];for(const i of t){if(i.status==="aborted")return $;i.status==="dirty"&&e.dirty(),A.push(i.value)}return{status:e.value,value:A}}static async mergeObjectAsync(e,t){const A=[];for(const i of t){const o=await i.key,a=await i.value;A.push({key:o,value:a})}return R0.mergeObjectSync(e,A)}static mergeObjectSync(e,t){const A={};for(const i of t){const{key:o,value:a}=i;if(o.status==="aborted"||a.status==="aborted")return $;o.status==="dirty"&&e.dirty(),a.status==="dirty"&&e.dirty(),o.value!=="__proto__"&&(typeof a.value<"u"||i.alwaysSet)&&(A[o.value]=a.value)}return{status:e.value,value:A}}}const $=Object.freeze({status:"aborted"}),Ne=n=>({status:"dirty",value:n}),W0=n=>({status:"valid",value:n}),Ii=n=>n.status==="aborted",Di=n=>n.status==="dirty",Ae=n=>n.status==="valid",ft=n=>typeof Promise<"u"&&n instanceof Promise;var W;(function(n){n.errToObj=e=>typeof e=="string"?{message:e}:e||{},n.toString=e=>typeof e=="string"?e:e==null?void 0:e.message})(W||(W={}));class o2{constructor(e,t,A,i){this._cachedPath=[],this.parent=e,this.data=t,this._path=A,this._key=i}get path(){return this._cachedPath.length||(Array.isArray(this._key)?this._cachedPath.push(...this._path,...this._key):this._cachedPath.push(...this._path,this._key)),this._cachedPath}}const Fi=(n,e)=>{if(Ae(e))return{success:!0,data:e.value};if(!n.common.issues.length)throw new Error("Validation failed but no issues detected.");return{success:!1,get error(){if(this._error)return this._error;const t=new d2(n.common.issues);return this._error=t,this._error}}};function A0(n){if(!n)return{};const{errorMap:e,invalid_type_error:t,required_error:A,description:i}=n;if(e&&(t||A))throw new Error(`Can't use "invalid_type_error" or "required_error" in conjunction with custom error map.`);return e?{errorMap:e,description:i}:{errorMap:(a,c)=>{const{message:l}=n;return a.code==="invalid_enum_value"?{message:l??c.defaultError}:typeof c.data>"u"?{message:l??A??c.defaultError}:a.code!=="invalid_type"?{message:c.defaultError}:{message:l??t??c.defaultError}},description:i}}class r0{get description(){return this._def.description}_getType(e){return I2(e.data)}_getOrReturnCtx(e,t){return t||{common:e.parent.common,data:e.data,parsedType:I2(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}_processInputParams(e){return{status:new R0,ctx:{common:e.parent.common,data:e.data,parsedType:I2(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}}_parseSync(e){const t=this._parse(e);if(ft(t))throw new Error("Synchronous parse encountered promise.");return t}_parseAsync(e){const t=this._parse(e);return Promise.resolve(t)}parse(e,t){const A=this.safeParse(e,t);if(A.success)return A.data;throw A.error}safeParse(e,t){const A={common:{issues:[],async:(t==null?void 0:t.async)??!1,contextualErrorMap:t==null?void 0:t.errorMap},path:(t==null?void 0:t.path)||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:I2(e)},i=this._parseSync({data:e,path:A.path,parent:A});return Fi(A,i)}"~validate"(e){var A,i;const t={common:{issues:[],async:!!this["~standard"].async},path:[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:I2(e)};if(!this["~standard"].async)try{const o=this._parseSync({data:e,path:[],parent:t});return Ae(o)?{value:o.value}:{issues:t.common.issues}}catch(o){(i=(A=o==null?void 0:o.message)==null?void 0:A.toLowerCase())!=null&&i.includes("encountered")&&(this["~standard"].async=!0),t.common={issues:[],async:!0}}return this._parseAsync({data:e,path:[],parent:t}).then(o=>Ae(o)?{value:o.value}:{issues:t.common.issues})}async parseAsync(e,t){const A=await this.safeParseAsync(e,t);if(A.success)return A.data;throw A.error}async safeParseAsync(e,t){const A={common:{issues:[],contextualErrorMap:t==null?void 0:t.errorMap,async:!0},path:(t==null?void 0:t.path)||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:I2(e)},i=this._parse({data:e,path:A.path,parent:A}),o=await(ft(i)?i:Promise.resolve(i));return Fi(A,o)}refine(e,t){const A=i=>typeof t=="string"||typeof t>"u"?{message:t}:typeof t=="function"?t(i):t;return this._refinement((i,o)=>{const a=e(i),c=()=>o.addIssue({code:z.custom,...A(i)});return typeof Promise<"u"&&a instanceof Promise?a.then(l=>l?!0:(c(),!1)):a?!0:(c(),!1)})}refinement(e,t){return this._refinement((A,i)=>e(A)?!0:(i.addIssue(typeof t=="function"?t(A,i):t),!1))}_refinement(e){return new se({schema:this,typeName:q.ZodEffects,effect:{type:"refinement",refinement:e}})}superRefine(e){return this._refinement(e)}constructor(e){this.spa=this.safeParseAsync,this._def=e,this.parse=this.parse.bind(this),this.safeParse=this.safeParse.bind(this),this.parseAsync=this.parseAsync.bind(this),this.safeParseAsync=this.safeParseAsync.bind(this),this.spa=this.spa.bind(this),this.refine=this.refine.bind(this),this.refinement=this.refinement.bind(this),this.superRefine=this.superRefine.bind(this),this.optional=this.optional.bind(this),this.nullable=this.nullable.bind(this),this.nullish=this.nullish.bind(this),this.array=this.array.bind(this),this.promise=this.promise.bind(this),this.or=this.or.bind(this),this.and=this.and.bind(this),this.transform=this.transform.bind(this),this.brand=this.brand.bind(this),this.default=this.default.bind(this),this.catch=this.catch.bind(this),this.describe=this.describe.bind(this),this.pipe=this.pipe.bind(this),this.readonly=this.readonly.bind(this),this.isNullable=this.isNullable.bind(this),this.isOptional=this.isOptional.bind(this),this["~standard"]={version:1,vendor:"zod",validate:t=>this["~validate"](t)}}optional(){return F2.create(this,this._def)}nullable(){return ae.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return s2.create(this)}promise(){return mt.create(this,this._def)}or(e){return pt.create([this,e],this._def)}and(e){return ht.create(this,e,this._def)}transform(e){return new se({...A0(this._def),schema:this,typeName:q.ZodEffects,effect:{type:"transform",transform:e}})}default(e){const t=typeof e=="function"?e:()=>e;return new mn({...A0(this._def),innerType:this,defaultValue:t,typeName:q.ZodDefault})}brand(){return new iu({typeName:q.ZodBranded,type:this,...A0(this._def)})}catch(e){const t=typeof e=="function"?e:()=>e;return new Cn({...A0(this._def),innerType:this,catchValue:t,typeName:q.ZodCatch})}describe(e){const t=this.constructor;return new t({...this._def,description:e})}pipe(e){return Mn.create(this,e)}readonly(){return yn.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}}const S1=/^c[^\s-]{8,}$/i,G1=/^[0-9a-z]+$/,k1=/^[0-9A-HJKMNP-TV-Z]{26}$/i,P1=/^[0-9a-fA-F]{8}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{12}$/i,J1=/^[a-z0-9_-]{21}$/i,H1=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,b1=/^[-+]?P(?!$)(?:(?:[-+]?\d+Y)|(?:[-+]?\d+[.,]\d+Y$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:(?:[-+]?\d+W)|(?:[-+]?\d+[.,]\d+W$))?(?:(?:[-+]?\d+D)|(?:[-+]?\d+[.,]\d+D$))?(?:T(?=[\d+-])(?:(?:[-+]?\d+H)|(?:[-+]?\d+[.,]\d+H$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:[-+]?\d+(?:[.,]\d+)?S)?)??$/,V1=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,L1="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$";let Qn;const W1=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,j1=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/(3[0-2]|[12]?[0-9])$/,_1=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))$/,X1=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,O1=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,K1=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,xi="((\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-((0[13578]|1[02])-(0[1-9]|[12]\\d|3[01])|(0[469]|11)-(0[1-9]|[12]\\d|30)|(02)-(0[1-9]|1\\d|2[0-8])))",Z1=new RegExp(`^${xi}$`);function vi(n){let e="[0-5]\\d";n.precision?e=`${e}\\.\\d{${n.precision}}`:n.precision==null&&(e=`${e}(\\.\\d+)?`);const t=n.precision?"+":"?";return`([01]\\d|2[0-3]):[0-5]\\d(:${e})${t}`}function q1(n){return new RegExp(`^${vi(n)}$`)}function $1(n){let e=`${xi}T${vi(n)}`;const t=[];return t.push(n.local?"Z?":"Z"),n.offset&&t.push("([+-]\\d{2}:?\\d{2})"),e=`${e}(${t.join("|")})`,new RegExp(`^${e}$`)}function eu(n,e){return!!((e==="v4"||!e)&&W1.test(n)||(e==="v6"||!e)&&_1.test(n))}function tu(n,e){if(!H1.test(n))return!1;try{const[t]=n.split(".");if(!t)return!1;const A=t.replace(/-/g,"+").replace(/_/g,"/").padEnd(t.length+(4-t.length%4)%4,"="),i=JSON.parse(atob(A));return!(typeof i!="object"||i===null||"typ"in i&&(i==null?void 0:i.typ)!=="JWT"||!i.alg||e&&i.alg!==e)}catch{return!1}}function nu(n,e){return!!((e==="v4"||!e)&&j1.test(n)||(e==="v6"||!e)&&X1.test(n))}class r2 extends r0{_parse(e){if(this._def.coerce&&(e.data=String(e.data)),this._getType(e)!==L.string){const o=this._getOrReturnCtx(e);return b(o,{code:z.invalid_type,expected:L.string,received:o.parsedType}),$}const A=new R0;let i;for(const o of this._def.checks)if(o.kind==="min")e.data.length<o.value&&(i=this._getOrReturnCtx(e,i),b(i,{code:z.too_small,minimum:o.value,type:"string",inclusive:!0,exact:!1,message:o.message}),A.dirty());else if(o.kind==="max")e.data.length>o.value&&(i=this._getOrReturnCtx(e,i),b(i,{code:z.too_big,maximum:o.value,type:"string",inclusive:!0,exact:!1,message:o.message}),A.dirty());else if(o.kind==="length"){const a=e.data.length>o.value,c=e.data.length<o.value;(a||c)&&(i=this._getOrReturnCtx(e,i),a?b(i,{code:z.too_big,maximum:o.value,type:"string",inclusive:!0,exact:!0,message:o.message}):c&&b(i,{code:z.too_small,minimum:o.value,type:"string",inclusive:!0,exact:!0,message:o.message}),A.dirty())}else if(o.kind==="email")V1.test(e.data)||(i=this._getOrReturnCtx(e,i),b(i,{validation:"email",code:z.invalid_string,message:o.message}),A.dirty());else if(o.kind==="emoji")Qn||(Qn=new RegExp(L1,"u")),Qn.test(e.data)||(i=this._getOrReturnCtx(e,i),b(i,{validation:"emoji",code:z.invalid_string,message:o.message}),A.dirty());else if(o.kind==="uuid")P1.test(e.data)||(i=this._getOrReturnCtx(e,i),b(i,{validation:"uuid",code:z.invalid_string,message:o.message}),A.dirty());else if(o.kind==="nanoid")J1.test(e.data)||(i=this._getOrReturnCtx(e,i),b(i,{validation:"nanoid",code:z.invalid_string,message:o.message}),A.dirty());else if(o.kind==="cuid")S1.test(e.data)||(i=this._getOrReturnCtx(e,i),b(i,{validation:"cuid",code:z.invalid_string,message:o.message}),A.dirty());else if(o.kind==="cuid2")G1.test(e.data)||(i=this._getOrReturnCtx(e,i),b(i,{validation:"cuid2",code:z.invalid_string,message:o.message}),A.dirty());else if(o.kind==="ulid")k1.test(e.data)||(i=this._getOrReturnCtx(e,i),b(i,{validation:"ulid",code:z.invalid_string,message:o.message}),A.dirty());else if(o.kind==="url")try{new URL(e.data)}catch{i=this._getOrReturnCtx(e,i),b(i,{validation:"url",code:z.invalid_string,message:o.message}),A.dirty()}else o.kind==="regex"?(o.regex.lastIndex=0,o.regex.test(e.data)||(i=this._getOrReturnCtx(e,i),b(i,{validation:"regex",code:z.invalid_string,message:o.message}),A.dirty())):o.kind==="trim"?e.data=e.data.trim():o.kind==="includes"?e.data.includes(o.value,o.position)||(i=this._getOrReturnCtx(e,i),b(i,{code:z.invalid_string,validation:{includes:o.value,position:o.position},message:o.message}),A.dirty()):o.kind==="toLowerCase"?e.data=e.data.toLowerCase():o.kind==="toUpperCase"?e.data=e.data.toUpperCase():o.kind==="startsWith"?e.data.startsWith(o.value)||(i=this._getOrReturnCtx(e,i),b(i,{code:z.invalid_string,validation:{startsWith:o.value},message:o.message}),A.dirty()):o.kind==="endsWith"?e.data.endsWith(o.value)||(i=this._getOrReturnCtx(e,i),b(i,{code:z.invalid_string,validation:{endsWith:o.value},message:o.message}),A.dirty()):o.kind==="datetime"?$1(o).test(e.data)||(i=this._getOrReturnCtx(e,i),b(i,{code:z.invalid_string,validation:"datetime",message:o.message}),A.dirty()):o.kind==="date"?Z1.test(e.data)||(i=this._getOrReturnCtx(e,i),b(i,{code:z.invalid_string,validation:"date",message:o.message}),A.dirty()):o.kind==="time"?q1(o).test(e.data)||(i=this._getOrReturnCtx(e,i),b(i,{code:z.invalid_string,validation:"time",message:o.message}),A.dirty()):o.kind==="duration"?b1.test(e.data)||(i=this._getOrReturnCtx(e,i),b(i,{validation:"duration",code:z.invalid_string,message:o.message}),A.dirty()):o.kind==="ip"?eu(e.data,o.version)||(i=this._getOrReturnCtx(e,i),b(i,{validation:"ip",code:z.invalid_string,message:o.message}),A.dirty()):o.kind==="jwt"?tu(e.data,o.alg)||(i=this._getOrReturnCtx(e,i),b(i,{validation:"jwt",code:z.invalid_string,message:o.message}),A.dirty()):o.kind==="cidr"?nu(e.data,o.version)||(i=this._getOrReturnCtx(e,i),b(i,{validation:"cidr",code:z.invalid_string,message:o.message}),A.dirty()):o.kind==="base64"?O1.test(e.data)||(i=this._getOrReturnCtx(e,i),b(i,{validation:"base64",code:z.invalid_string,message:o.message}),A.dirty()):o.kind==="base64url"?K1.test(e.data)||(i=this._getOrReturnCtx(e,i),b(i,{validation:"base64url",code:z.invalid_string,message:o.message}),A.dirty()):s0.assertNever(o);return{status:A.value,value:e.data}}_regex(e,t,A){return this.refinement(i=>e.test(i),{validation:t,code:z.invalid_string,...W.errToObj(A)})}_addCheck(e){return new r2({...this._def,checks:[...this._def.checks,e]})}email(e){return this._addCheck({kind:"email",...W.errToObj(e)})}url(e){return this._addCheck({kind:"url",...W.errToObj(e)})}emoji(e){return this._addCheck({kind:"emoji",...W.errToObj(e)})}uuid(e){return this._addCheck({kind:"uuid",...W.errToObj(e)})}nanoid(e){return this._addCheck({kind:"nanoid",...W.errToObj(e)})}cuid(e){return this._addCheck({kind:"cuid",...W.errToObj(e)})}cuid2(e){return this._addCheck({kind:"cuid2",...W.errToObj(e)})}ulid(e){return this._addCheck({kind:"ulid",...W.errToObj(e)})}base64(e){return this._addCheck({kind:"base64",...W.errToObj(e)})}base64url(e){return this._addCheck({kind:"base64url",...W.errToObj(e)})}jwt(e){return this._addCheck({kind:"jwt",...W.errToObj(e)})}ip(e){return this._addCheck({kind:"ip",...W.errToObj(e)})}cidr(e){return this._addCheck({kind:"cidr",...W.errToObj(e)})}datetime(e){return typeof e=="string"?this._addCheck({kind:"datetime",precision:null,offset:!1,local:!1,message:e}):this._addCheck({kind:"datetime",precision:typeof(e==null?void 0:e.precision)>"u"?null:e==null?void 0:e.precision,offset:(e==null?void 0:e.offset)??!1,local:(e==null?void 0:e.local)??!1,...W.errToObj(e==null?void 0:e.message)})}date(e){return this._addCheck({kind:"date",message:e})}time(e){return typeof e=="string"?this._addCheck({kind:"time",precision:null,message:e}):this._addCheck({kind:"time",precision:typeof(e==null?void 0:e.precision)>"u"?null:e==null?void 0:e.precision,...W.errToObj(e==null?void 0:e.message)})}duration(e){return this._addCheck({kind:"duration",...W.errToObj(e)})}regex(e,t){return this._addCheck({kind:"regex",regex:e,...W.errToObj(t)})}includes(e,t){return this._addCheck({kind:"includes",value:e,position:t==null?void 0:t.position,...W.errToObj(t==null?void 0:t.message)})}startsWith(e,t){return this._addCheck({kind:"startsWith",value:e,...W.errToObj(t)})}endsWith(e,t){return this._addCheck({kind:"endsWith",value:e,...W.errToObj(t)})}min(e,t){return this._addCheck({kind:"min",value:e,...W.errToObj(t)})}max(e,t){return this._addCheck({kind:"max",value:e,...W.errToObj(t)})}length(e,t){return this._addCheck({kind:"length",value:e,...W.errToObj(t)})}nonempty(e){return this.min(1,W.errToObj(e))}trim(){return new r2({...this._def,checks:[...this._def.checks,{kind:"trim"}]})}toLowerCase(){return new r2({...this._def,checks:[...this._def.checks,{kind:"toLowerCase"}]})}toUpperCase(){return new r2({...this._def,checks:[...this._def.checks,{kind:"toUpperCase"}]})}get isDatetime(){return!!this._def.checks.find(e=>e.kind==="datetime")}get isDate(){return!!this._def.checks.find(e=>e.kind==="date")}get isTime(){return!!this._def.checks.find(e=>e.kind==="time")}get isDuration(){return!!this._def.checks.find(e=>e.kind==="duration")}get isEmail(){return!!this._def.checks.find(e=>e.kind==="email")}get isURL(){return!!this._def.checks.find(e=>e.kind==="url")}get isEmoji(){return!!this._def.checks.find(e=>e.kind==="emoji")}get isUUID(){return!!this._def.checks.find(e=>e.kind==="uuid")}get isNANOID(){return!!this._def.checks.find(e=>e.kind==="nanoid")}get isCUID(){return!!this._def.checks.find(e=>e.kind==="cuid")}get isCUID2(){return!!this._def.checks.find(e=>e.kind==="cuid2")}get isULID(){return!!this._def.checks.find(e=>e.kind==="ulid")}get isIP(){return!!this._def.checks.find(e=>e.kind==="ip")}get isCIDR(){return!!this._def.checks.find(e=>e.kind==="cidr")}get isBase64(){return!!this._def.checks.find(e=>e.kind==="base64")}get isBase64url(){return!!this._def.checks.find(e=>e.kind==="base64url")}get minLength(){let e=null;for(const t of this._def.checks)t.kind==="min"&&(e===null||t.value>e)&&(e=t.value);return e}get maxLength(){let e=null;for(const t of this._def.checks)t.kind==="max"&&(e===null||t.value<e)&&(e=t.value);return e}}r2.create=n=>new r2({checks:[],typeName:q.ZodString,coerce:(n==null?void 0:n.coerce)??!1,...A0(n)});function Au(n,e){const t=(n.toString().split(".")[1]||"").length,A=(e.toString().split(".")[1]||"").length,i=t>A?t:A,o=Number.parseInt(n.toFixed(i).replace(".","")),a=Number.parseInt(e.toFixed(i).replace(".",""));return o%a/10**i}class H2 extends r0{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte,this.step=this.multipleOf}_parse(e){if(this._def.coerce&&(e.data=Number(e.data)),this._getType(e)!==L.number){const o=this._getOrReturnCtx(e);return b(o,{code:z.invalid_type,expected:L.number,received:o.parsedType}),$}let A;const i=new R0;for(const o of this._def.checks)o.kind==="int"?s0.isInteger(e.data)||(A=this._getOrReturnCtx(e,A),b(A,{code:z.invalid_type,expected:"integer",received:"float",message:o.message}),i.dirty()):o.kind==="min"?(o.inclusive?e.data<o.value:e.data<=o.value)&&(A=this._getOrReturnCtx(e,A),b(A,{code:z.too_small,minimum:o.value,type:"number",inclusive:o.inclusive,exact:!1,message:o.message}),i.dirty()):o.kind==="max"?(o.inclusive?e.data>o.value:e.data>=o.value)&&(A=this._getOrReturnCtx(e,A),b(A,{code:z.too_big,maximum:o.value,type:"number",inclusive:o.inclusive,exact:!1,message:o.message}),i.dirty()):o.kind==="multipleOf"?Au(e.data,o.value)!==0&&(A=this._getOrReturnCtx(e,A),b(A,{code:z.not_multiple_of,multipleOf:o.value,message:o.message}),i.dirty()):o.kind==="finite"?Number.isFinite(e.data)||(A=this._getOrReturnCtx(e,A),b(A,{code:z.not_finite,message:o.message}),i.dirty()):s0.assertNever(o);return{status:i.value,value:e.data}}gte(e,t){return this.setLimit("min",e,!0,W.toString(t))}gt(e,t){return this.setLimit("min",e,!1,W.toString(t))}lte(e,t){return this.setLimit("max",e,!0,W.toString(t))}lt(e,t){return this.setLimit("max",e,!1,W.toString(t))}setLimit(e,t,A,i){return new H2({...this._def,checks:[...this._def.checks,{kind:e,value:t,inclusive:A,message:W.toString(i)}]})}_addCheck(e){return new H2({...this._def,checks:[...this._def.checks,e]})}int(e){return this._addCheck({kind:"int",message:W.toString(e)})}positive(e){return this._addCheck({kind:"min",value:0,inclusive:!1,message:W.toString(e)})}negative(e){return this._addCheck({kind:"max",value:0,inclusive:!1,message:W.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:0,inclusive:!0,message:W.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:0,inclusive:!0,message:W.toString(e)})}multipleOf(e,t){return this._addCheck({kind:"multipleOf",value:e,message:W.toString(t)})}finite(e){return this._addCheck({kind:"finite",message:W.toString(e)})}safe(e){return this._addCheck({kind:"min",inclusive:!0,value:Number.MIN_SAFE_INTEGER,message:W.toString(e)})._addCheck({kind:"max",inclusive:!0,value:Number.MAX_SAFE_INTEGER,message:W.toString(e)})}get minValue(){let e=null;for(const t of this._def.checks)t.kind==="min"&&(e===null||t.value>e)&&(e=t.value);return e}get maxValue(){let e=null;for(const t of this._def.checks)t.kind==="max"&&(e===null||t.value<e)&&(e=t.value);return e}get isInt(){return!!this._def.checks.find(e=>e.kind==="int"||e.kind==="multipleOf"&&s0.isInteger(e.value))}get isFinite(){let e=null,t=null;for(const A of this._def.checks){if(A.kind==="finite"||A.kind==="int"||A.kind==="multipleOf")return!0;A.kind==="min"?(t===null||A.value>t)&&(t=A.value):A.kind==="max"&&(e===null||A.value<e)&&(e=A.value)}return Number.isFinite(t)&&Number.isFinite(e)}}H2.create=n=>new H2({checks:[],typeName:q.ZodNumber,coerce:(n==null?void 0:n.coerce)||!1,...A0(n)});class b2 extends r0{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte}_parse(e){if(this._def.coerce)try{e.data=BigInt(e.data)}catch{return this._getInvalidInput(e)}if(this._getType(e)!==L.bigint)return this._getInvalidInput(e);let A;const i=new R0;for(const o of this._def.checks)o.kind==="min"?(o.inclusive?e.data<o.value:e.data<=o.value)&&(A=this._getOrReturnCtx(e,A),b(A,{code:z.too_small,type:"bigint",minimum:o.value,inclusive:o.inclusive,message:o.message}),i.dirty()):o.kind==="max"?(o.inclusive?e.data>o.value:e.data>=o.value)&&(A=this._getOrReturnCtx(e,A),b(A,{code:z.too_big,type:"bigint",maximum:o.value,inclusive:o.inclusive,message:o.message}),i.dirty()):o.kind==="multipleOf"?e.data%o.value!==BigInt(0)&&(A=this._getOrReturnCtx(e,A),b(A,{code:z.not_multiple_of,multipleOf:o.value,message:o.message}),i.dirty()):s0.assertNever(o);return{status:i.value,value:e.data}}_getInvalidInput(e){const t=this._getOrReturnCtx(e);return b(t,{code:z.invalid_type,expected:L.bigint,received:t.parsedType}),$}gte(e,t){return this.setLimit("min",e,!0,W.toString(t))}gt(e,t){return this.setLimit("min",e,!1,W.toString(t))}lte(e,t){return this.setLimit("max",e,!0,W.toString(t))}lt(e,t){return this.setLimit("max",e,!1,W.toString(t))}setLimit(e,t,A,i){return new b2({...this._def,checks:[...this._def.checks,{kind:e,value:t,inclusive:A,message:W.toString(i)}]})}_addCheck(e){return new b2({...this._def,checks:[...this._def.checks,e]})}positive(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!1,message:W.toString(e)})}negative(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!1,message:W.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!0,message:W.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!0,message:W.toString(e)})}multipleOf(e,t){return this._addCheck({kind:"multipleOf",value:e,message:W.toString(t)})}get minValue(){let e=null;for(const t of this._def.checks)t.kind==="min"&&(e===null||t.value>e)&&(e=t.value);return e}get maxValue(){let e=null;for(const t of this._def.checks)t.kind==="max"&&(e===null||t.value<e)&&(e=t.value);return e}}b2.create=n=>new b2({checks:[],typeName:q.ZodBigInt,coerce:(n==null?void 0:n.coerce)??!1,...A0(n)});class Qt extends r0{_parse(e){if(this._def.coerce&&(e.data=!!e.data),this._getType(e)!==L.boolean){const A=this._getOrReturnCtx(e);return b(A,{code:z.invalid_type,expected:L.boolean,received:A.parsedType}),$}return W0(e.data)}}Qt.create=n=>new Qt({typeName:q.ZodBoolean,coerce:(n==null?void 0:n.coerce)||!1,...A0(n)});class ie extends r0{_parse(e){if(this._def.coerce&&(e.data=new Date(e.data)),this._getType(e)!==L.date){const o=this._getOrReturnCtx(e);return b(o,{code:z.invalid_type,expected:L.date,received:o.parsedType}),$}if(Number.isNaN(e.data.getTime())){const o=this._getOrReturnCtx(e);return b(o,{code:z.invalid_date}),$}const A=new R0;let i;for(const o of this._def.checks)o.kind==="min"?e.data.getTime()<o.value&&(i=this._getOrReturnCtx(e,i),b(i,{code:z.too_small,message:o.message,inclusive:!0,exact:!1,minimum:o.value,type:"date"}),A.dirty()):o.kind==="max"?e.data.getTime()>o.value&&(i=this._getOrReturnCtx(e,i),b(i,{code:z.too_big,message:o.message,inclusive:!0,exact:!1,maximum:o.value,type:"date"}),A.dirty()):s0.assertNever(o);return{status:A.value,value:new Date(e.data.getTime())}}_addCheck(e){return new ie({...this._def,checks:[...this._def.checks,e]})}min(e,t){return this._addCheck({kind:"min",value:e.getTime(),message:W.toString(t)})}max(e,t){return this._addCheck({kind:"max",value:e.getTime(),message:W.toString(t)})}get minDate(){let e=null;for(const t of this._def.checks)t.kind==="min"&&(e===null||t.value>e)&&(e=t.value);return e!=null?new Date(e):null}get maxDate(){let e=null;for(const t of this._def.checks)t.kind==="max"&&(e===null||t.value<e)&&(e=t.value);return e!=null?new Date(e):null}}ie.create=n=>new ie({checks:[],coerce:(n==null?void 0:n.coerce)||!1,typeName:q.ZodDate,...A0(n)});class Ui extends r0{_parse(e){if(this._getType(e)!==L.symbol){const A=this._getOrReturnCtx(e);return b(A,{code:z.invalid_type,expected:L.symbol,received:A.parsedType}),$}return W0(e.data)}}Ui.create=n=>new Ui({typeName:q.ZodSymbol,...A0(n)});class Yi extends r0{_parse(e){if(this._getType(e)!==L.undefined){const A=this._getOrReturnCtx(e);return b(A,{code:z.invalid_type,expected:L.undefined,received:A.parsedType}),$}return W0(e.data)}}Yi.create=n=>new Yi({typeName:q.ZodUndefined,...A0(n)});class Ti extends r0{_parse(e){if(this._getType(e)!==L.null){const A=this._getOrReturnCtx(e);return b(A,{code:z.invalid_type,expected:L.null,received:A.parsedType}),$}return W0(e.data)}}Ti.create=n=>new Ti({typeName:q.ZodNull,...A0(n)});class Ni extends r0{constructor(){super(...arguments),this._any=!0}_parse(e){return W0(e.data)}}Ni.create=n=>new Ni({typeName:q.ZodAny,...A0(n)});class pn extends r0{constructor(){super(...arguments),this._unknown=!0}_parse(e){return W0(e.data)}}pn.create=n=>new pn({typeName:q.ZodUnknown,...A0(n)});class D2 extends r0{_parse(e){const t=this._getOrReturnCtx(e);return b(t,{code:z.invalid_type,expected:L.never,received:t.parsedType}),$}}D2.create=n=>new D2({typeName:q.ZodNever,...A0(n)});class Ri extends r0{_parse(e){if(this._getType(e)!==L.undefined){const A=this._getOrReturnCtx(e);return b(A,{code:z.invalid_type,expected:L.void,received:A.parsedType}),$}return W0(e.data)}}Ri.create=n=>new Ri({typeName:q.ZodVoid,...A0(n)});class s2 extends r0{_parse(e){const{ctx:t,status:A}=this._processInputParams(e),i=this._def;if(t.parsedType!==L.array)return b(t,{code:z.invalid_type,expected:L.array,received:t.parsedType}),$;if(i.exactLength!==null){const a=t.data.length>i.exactLength.value,c=t.data.length<i.exactLength.value;(a||c)&&(b(t,{code:a?z.too_big:z.too_small,minimum:c?i.exactLength.value:void 0,maximum:a?i.exactLength.value:void 0,type:"array",inclusive:!0,exact:!0,message:i.exactLength.message}),A.dirty())}if(i.minLength!==null&&t.data.length<i.minLength.value&&(b(t,{code:z.too_small,minimum:i.minLength.value,type:"array",inclusive:!0,exact:!1,message:i.minLength.message}),A.dirty()),i.maxLength!==null&&t.data.length>i.maxLength.value&&(b(t,{code:z.too_big,maximum:i.maxLength.value,type:"array",inclusive:!0,exact:!1,message:i.maxLength.message}),A.dirty()),t.common.async)return Promise.all([...t.data].map((a,c)=>i.type._parseAsync(new o2(t,a,t.path,c)))).then(a=>R0.mergeArray(A,a));const o=[...t.data].map((a,c)=>i.type._parseSync(new o2(t,a,t.path,c)));return R0.mergeArray(A,o)}get element(){return this._def.type}min(e,t){return new s2({...this._def,minLength:{value:e,message:W.toString(t)}})}max(e,t){return new s2({...this._def,maxLength:{value:e,message:W.toString(t)}})}length(e,t){return new s2({...this._def,exactLength:{value:e,message:W.toString(t)}})}nonempty(e){return this.min(1,e)}}s2.create=(n,e)=>new s2({type:n,minLength:null,maxLength:null,exactLength:null,typeName:q.ZodArray,...A0(e)});function oe(n){if(n instanceof y0){const e={};for(const t in n.shape){const A=n.shape[t];e[t]=F2.create(oe(A))}return new y0({...n._def,shape:()=>e})}else return n instanceof s2?new s2({...n._def,type:oe(n.element)}):n instanceof F2?F2.create(oe(n.unwrap())):n instanceof ae?ae.create(oe(n.unwrap())):n instanceof V2?V2.create(n.items.map(e=>oe(e))):n}class y0 extends r0{constructor(){super(...arguments),this._cached=null,this.nonstrict=this.passthrough,this.augment=this.extend}_getCached(){if(this._cached!==null)return this._cached;const e=this._def.shape(),t=s0.objectKeys(e);return this._cached={shape:e,keys:t},this._cached}_parse(e){if(this._getType(e)!==L.object){const u=this._getOrReturnCtx(e);return b(u,{code:z.invalid_type,expected:L.object,received:u.parsedType}),$}const{status:A,ctx:i}=this._processInputParams(e),{shape:o,keys:a}=this._getCached(),c=[];if(!(this._def.catchall instanceof D2&&this._def.unknownKeys==="strip"))for(const u in i.data)a.includes(u)||c.push(u);const l=[];for(const u of a){const B=o[u],d=i.data[u];l.push({key:{status:"valid",value:u},value:B._parse(new o2(i,d,i.path,u)),alwaysSet:u in i.data})}if(this._def.catchall instanceof D2){const u=this._def.unknownKeys;if(u==="passthrough")for(const B of c)l.push({key:{status:"valid",value:B},value:{status:"valid",value:i.data[B]}});else if(u==="strict")c.length>0&&(b(i,{code:z.unrecognized_keys,keys:c}),A.dirty());else if(u!=="strip")throw new Error("Internal ZodObject error: invalid unknownKeys value.")}else{const u=this._def.catchall;for(const B of c){const d=i.data[B];l.push({key:{status:"valid",value:B},value:u._parse(new o2(i,d,i.path,B)),alwaysSet:B in i.data})}}return i.common.async?Promise.resolve().then(async()=>{const u=[];for(const B of l){const d=await B.key,f=await B.value;u.push({key:d,value:f,alwaysSet:B.alwaysSet})}return u}).then(u=>R0.mergeObjectSync(A,u)):R0.mergeObjectSync(A,l)}get shape(){return this._def.shape()}strict(e){return W.errToObj,new y0({...this._def,unknownKeys:"strict",...e!==void 0?{errorMap:(t,A)=>{var o,a;const i=((a=(o=this._def).errorMap)==null?void 0:a.call(o,t,A).message)??A.defaultError;return t.code==="unrecognized_keys"?{message:W.errToObj(e).message??i}:{message:i}}}:{}})}strip(){return new y0({...this._def,unknownKeys:"strip"})}passthrough(){return new y0({...this._def,unknownKeys:"passthrough"})}extend(e){return new y0({...this._def,shape:()=>({...this._def.shape(),...e})})}merge(e){return new y0({unknownKeys:e._def.unknownKeys,catchall:e._def.catchall,shape:()=>({...this._def.shape(),...e._def.shape()}),typeName:q.ZodObject})}setKey(e,t){return this.augment({[e]:t})}catchall(e){return new y0({...this._def,catchall:e})}pick(e){const t={};for(const A of s0.objectKeys(e))e[A]&&this.shape[A]&&(t[A]=this.shape[A]);return new y0({...this._def,shape:()=>t})}omit(e){const t={};for(const A of s0.objectKeys(this.shape))e[A]||(t[A]=this.shape[A]);return new y0({...this._def,shape:()=>t})}deepPartial(){return oe(this)}partial(e){const t={};for(const A of s0.objectKeys(this.shape)){const i=this.shape[A];e&&!e[A]?t[A]=i:t[A]=i.optional()}return new y0({...this._def,shape:()=>t})}required(e){const t={};for(const A of s0.objectKeys(this.shape))if(e&&!e[A])t[A]=this.shape[A];else{let o=this.shape[A];for(;o instanceof F2;)o=o._def.innerType;t[A]=o}return new y0({...this._def,shape:()=>t})}keyof(){return Gi(s0.objectKeys(this.shape))}}y0.create=(n,e)=>new y0({shape:()=>n,unknownKeys:"strip",catchall:D2.create(),typeName:q.ZodObject,...A0(e)}),y0.strictCreate=(n,e)=>new y0({shape:()=>n,unknownKeys:"strict",catchall:D2.create(),typeName:q.ZodObject,...A0(e)}),y0.lazycreate=(n,e)=>new y0({shape:n,unknownKeys:"strip",catchall:D2.create(),typeName:q.ZodObject,...A0(e)});class pt extends r0{_parse(e){const{ctx:t}=this._processInputParams(e),A=this._def.options;function i(o){for(const c of o)if(c.result.status==="valid")return c.result;for(const c of o)if(c.result.status==="dirty")return t.common.issues.push(...c.ctx.common.issues),c.result;const a=o.map(c=>new d2(c.ctx.common.issues));return b(t,{code:z.invalid_union,unionErrors:a}),$}if(t.common.async)return Promise.all(A.map(async o=>{const a={...t,common:{...t.common,issues:[]},parent:null};return{result:await o._parseAsync({data:t.data,path:t.path,parent:a}),ctx:a}})).then(i);{let o;const a=[];for(const l of A){const u={...t,common:{...t.common,issues:[]},parent:null},B=l._parseSync({data:t.data,path:t.path,parent:u});if(B.status==="valid")return B;B.status==="dirty"&&!o&&(o={result:B,ctx:u}),u.common.issues.length&&a.push(u.common.issues)}if(o)return t.common.issues.push(...o.ctx.common.issues),o.result;const c=a.map(l=>new d2(l));return b(t,{code:z.invalid_union,unionErrors:c}),$}}get options(){return this._def.options}}pt.create=(n,e)=>new pt({options:n,typeName:q.ZodUnion,...A0(e)});function hn(n,e){const t=I2(n),A=I2(e);if(n===e)return{valid:!0,data:n};if(t===L.object&&A===L.object){const i=s0.objectKeys(e),o=s0.objectKeys(n).filter(c=>i.indexOf(c)!==-1),a={...n,...e};for(const c of o){const l=hn(n[c],e[c]);if(!l.valid)return{valid:!1};a[c]=l.data}return{valid:!0,data:a}}else if(t===L.array&&A===L.array){if(n.length!==e.length)return{valid:!1};const i=[];for(let o=0;o<n.length;o++){const a=n[o],c=e[o],l=hn(a,c);if(!l.valid)return{valid:!1};i.push(l.data)}return{valid:!0,data:i}}else return t===L.date&&A===L.date&&+n==+e?{valid:!0,data:n}:{valid:!1}}class ht extends r0{_parse(e){const{status:t,ctx:A}=this._processInputParams(e),i=(o,a)=>{if(Ii(o)||Ii(a))return $;const c=hn(o.value,a.value);return c.valid?((Di(o)||Di(a))&&t.dirty(),{status:t.value,value:c.data}):(b(A,{code:z.invalid_intersection_types}),$)};return A.common.async?Promise.all([this._def.left._parseAsync({data:A.data,path:A.path,parent:A}),this._def.right._parseAsync({data:A.data,path:A.path,parent:A})]).then(([o,a])=>i(o,a)):i(this._def.left._parseSync({data:A.data,path:A.path,parent:A}),this._def.right._parseSync({data:A.data,path:A.path,parent:A}))}}ht.create=(n,e,t)=>new ht({left:n,right:e,typeName:q.ZodIntersection,...A0(t)});class V2 extends r0{_parse(e){const{status:t,ctx:A}=this._processInputParams(e);if(A.parsedType!==L.array)return b(A,{code:z.invalid_type,expected:L.array,received:A.parsedType}),$;if(A.data.length<this._def.items.length)return b(A,{code:z.too_small,minimum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),$;!this._def.rest&&A.data.length>this._def.items.length&&(b(A,{code:z.too_big,maximum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),t.dirty());const o=[...A.data].map((a,c)=>{const l=this._def.items[c]||this._def.rest;return l?l._parse(new o2(A,a,A.path,c)):null}).filter(a=>!!a);return A.common.async?Promise.all(o).then(a=>R0.mergeArray(t,a)):R0.mergeArray(t,o)}get items(){return this._def.items}rest(e){return new V2({...this._def,rest:e})}}V2.create=(n,e)=>{if(!Array.isArray(n))throw new Error("You must pass an array of schemas to z.tuple([ ... ])");return new V2({items:n,typeName:q.ZodTuple,rest:null,...A0(e)})};class wt extends r0{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){const{status:t,ctx:A}=this._processInputParams(e);if(A.parsedType!==L.object)return b(A,{code:z.invalid_type,expected:L.object,received:A.parsedType}),$;const i=[],o=this._def.keyType,a=this._def.valueType;for(const c in A.data)i.push({key:o._parse(new o2(A,c,A.path,c)),value:a._parse(new o2(A,A.data[c],A.path,c)),alwaysSet:c in A.data});return A.common.async?R0.mergeObjectAsync(t,i):R0.mergeObjectSync(t,i)}get element(){return this._def.valueType}static create(e,t,A){return t instanceof r0?new wt({keyType:e,valueType:t,typeName:q.ZodRecord,...A0(A)}):new wt({keyType:r2.create(),valueType:e,typeName:q.ZodRecord,...A0(t)})}}class zi extends r0{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){const{status:t,ctx:A}=this._processInputParams(e);if(A.parsedType!==L.map)return b(A,{code:z.invalid_type,expected:L.map,received:A.parsedType}),$;const i=this._def.keyType,o=this._def.valueType,a=[...A.data.entries()].map(([c,l],u)=>({key:i._parse(new o2(A,c,A.path,[u,"key"])),value:o._parse(new o2(A,l,A.path,[u,"value"]))}));if(A.common.async){const c=new Map;return Promise.resolve().then(async()=>{for(const l of a){const u=await l.key,B=await l.value;if(u.status==="aborted"||B.status==="aborted")return $;(u.status==="dirty"||B.status==="dirty")&&t.dirty(),c.set(u.value,B.value)}return{status:t.value,value:c}})}else{const c=new Map;for(const l of a){const u=l.key,B=l.value;if(u.status==="aborted"||B.status==="aborted")return $;(u.status==="dirty"||B.status==="dirty")&&t.dirty(),c.set(u.value,B.value)}return{status:t.value,value:c}}}}zi.create=(n,e,t)=>new zi({valueType:e,keyType:n,typeName:q.ZodMap,...A0(t)});class Re extends r0{_parse(e){const{status:t,ctx:A}=this._processInputParams(e);if(A.parsedType!==L.set)return b(A,{code:z.invalid_type,expected:L.set,received:A.parsedType}),$;const i=this._def;i.minSize!==null&&A.data.size<i.minSize.value&&(b(A,{code:z.too_small,minimum:i.minSize.value,type:"set",inclusive:!0,exact:!1,message:i.minSize.message}),t.dirty()),i.maxSize!==null&&A.data.size>i.maxSize.value&&(b(A,{code:z.too_big,maximum:i.maxSize.value,type:"set",inclusive:!0,exact:!1,message:i.maxSize.message}),t.dirty());const o=this._def.valueType;function a(l){const u=new Set;for(const B of l){if(B.status==="aborted")return $;B.status==="dirty"&&t.dirty(),u.add(B.value)}return{status:t.value,value:u}}const c=[...A.data.values()].map((l,u)=>o._parse(new o2(A,l,A.path,u)));return A.common.async?Promise.all(c).then(l=>a(l)):a(c)}min(e,t){return new Re({...this._def,minSize:{value:e,message:W.toString(t)}})}max(e,t){return new Re({...this._def,maxSize:{value:e,message:W.toString(t)}})}size(e,t){return this.min(e,t).max(e,t)}nonempty(e){return this.min(1,e)}}Re.create=(n,e)=>new Re({valueType:n,minSize:null,maxSize:null,typeName:q.ZodSet,...A0(e)});class wn extends r0{get schema(){return this._def.getter()}_parse(e){const{ctx:t}=this._processInputParams(e);return this._def.getter()._parse({data:t.data,path:t.path,parent:t})}}wn.create=(n,e)=>new wn({getter:n,typeName:q.ZodLazy,...A0(e)});class Si extends r0{_parse(e){if(e.data!==this._def.value){const t=this._getOrReturnCtx(e);return b(t,{received:t.data,code:z.invalid_literal,expected:this._def.value}),$}return{status:"valid",value:e.data}}get value(){return this._def.value}}Si.create=(n,e)=>new Si({value:n,typeName:q.ZodLiteral,...A0(e)});function Gi(n,e){return new re({values:n,typeName:q.ZodEnum,...A0(e)})}class re extends r0{_parse(e){if(typeof e.data!="string"){const t=this._getOrReturnCtx(e),A=this._def.values;return b(t,{expected:s0.joinValues(A),received:t.parsedType,code:z.invalid_type}),$}if(this._cache||(this._cache=new Set(this._def.values)),!this._cache.has(e.data)){const t=this._getOrReturnCtx(e),A=this._def.values;return b(t,{received:t.data,code:z.invalid_enum_value,options:A}),$}return W0(e.data)}get options(){return this._def.values}get enum(){const e={};for(const t of this._def.values)e[t]=t;return e}get Values(){const e={};for(const t of this._def.values)e[t]=t;return e}get Enum(){const e={};for(const t of this._def.values)e[t]=t;return e}extract(e,t=this._def){return re.create(e,{...this._def,...t})}exclude(e,t=this._def){return re.create(this.options.filter(A=>!e.includes(A)),{...this._def,...t})}}re.create=Gi;class ki extends r0{_parse(e){const t=s0.getValidEnumValues(this._def.values),A=this._getOrReturnCtx(e);if(A.parsedType!==L.string&&A.parsedType!==L.number){const i=s0.objectValues(t);return b(A,{expected:s0.joinValues(i),received:A.parsedType,code:z.invalid_type}),$}if(this._cache||(this._cache=new Set(s0.getValidEnumValues(this._def.values))),!this._cache.has(e.data)){const i=s0.objectValues(t);return b(A,{received:A.data,code:z.invalid_enum_value,options:i}),$}return W0(e.data)}get enum(){return this._def.values}}ki.create=(n,e)=>new ki({values:n,typeName:q.ZodNativeEnum,...A0(e)});class mt extends r0{unwrap(){return this._def.type}_parse(e){const{ctx:t}=this._processInputParams(e);if(t.parsedType!==L.promise&&t.common.async===!1)return b(t,{code:z.invalid_type,expected:L.promise,received:t.parsedType}),$;const A=t.parsedType===L.promise?t.data:Promise.resolve(t.data);return W0(A.then(i=>this._def.type.parseAsync(i,{path:t.path,errorMap:t.common.contextualErrorMap})))}}mt.create=(n,e)=>new mt({type:n,typeName:q.ZodPromise,...A0(e)});class se extends r0{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===q.ZodEffects?this._def.schema.sourceType():this._def.schema}_parse(e){const{status:t,ctx:A}=this._processInputParams(e),i=this._def.effect||null,o={addIssue:a=>{b(A,a),a.fatal?t.abort():t.dirty()},get path(){return A.path}};if(o.addIssue=o.addIssue.bind(o),i.type==="preprocess"){const a=i.transform(A.data,o);if(A.common.async)return Promise.resolve(a).then(async c=>{if(t.value==="aborted")return $;const l=await this._def.schema._parseAsync({data:c,path:A.path,parent:A});return l.status==="aborted"?$:l.status==="dirty"||t.value==="dirty"?Ne(l.value):l});{if(t.value==="aborted")return $;const c=this._def.schema._parseSync({data:a,path:A.path,parent:A});return c.status==="aborted"?$:c.status==="dirty"||t.value==="dirty"?Ne(c.value):c}}if(i.type==="refinement"){const a=c=>{const l=i.refinement(c,o);if(A.common.async)return Promise.resolve(l);if(l instanceof Promise)throw new Error("Async refinement encountered during synchronous parse operation. Use .parseAsync instead.");return c};if(A.common.async===!1){const c=this._def.schema._parseSync({data:A.data,path:A.path,parent:A});return c.status==="aborted"?$:(c.status==="dirty"&&t.dirty(),a(c.value),{status:t.value,value:c.value})}else return this._def.schema._parseAsync({data:A.data,path:A.path,parent:A}).then(c=>c.status==="aborted"?$:(c.status==="dirty"&&t.dirty(),a(c.value).then(()=>({status:t.value,value:c.value}))))}if(i.type==="transform")if(A.common.async===!1){const a=this._def.schema._parseSync({data:A.data,path:A.path,parent:A});if(!Ae(a))return $;const c=i.transform(a.value,o);if(c instanceof Promise)throw new Error("Asynchronous transform encountered during synchronous parse operation. Use .parseAsync instead.");return{status:t.value,value:c}}else return this._def.schema._parseAsync({data:A.data,path:A.path,parent:A}).then(a=>Ae(a)?Promise.resolve(i.transform(a.value,o)).then(c=>({status:t.value,value:c})):$);s0.assertNever(i)}}se.create=(n,e,t)=>new se({schema:n,typeName:q.ZodEffects,effect:e,...A0(t)}),se.createWithPreprocess=(n,e,t)=>new se({schema:e,effect:{type:"preprocess",transform:n},typeName:q.ZodEffects,...A0(t)});class F2 extends r0{_parse(e){return this._getType(e)===L.undefined?W0(void 0):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}}F2.create=(n,e)=>new F2({innerType:n,typeName:q.ZodOptional,...A0(e)});class ae extends r0{_parse(e){return this._getType(e)===L.null?W0(null):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}}ae.create=(n,e)=>new ae({innerType:n,typeName:q.ZodNullable,...A0(e)});class mn extends r0{_parse(e){const{ctx:t}=this._processInputParams(e);let A=t.data;return t.parsedType===L.undefined&&(A=this._def.defaultValue()),this._def.innerType._parse({data:A,path:t.path,parent:t})}removeDefault(){return this._def.innerType}}mn.create=(n,e)=>new mn({innerType:n,typeName:q.ZodDefault,defaultValue:typeof e.default=="function"?e.default:()=>e.default,...A0(e)});class Cn extends r0{_parse(e){const{ctx:t}=this._processInputParams(e),A={...t,common:{...t.common,issues:[]}},i=this._def.innerType._parse({data:A.data,path:A.path,parent:{...A}});return ft(i)?i.then(o=>({status:"valid",value:o.status==="valid"?o.value:this._def.catchValue({get error(){return new d2(A.common.issues)},input:A.data})})):{status:"valid",value:i.status==="valid"?i.value:this._def.catchValue({get error(){return new d2(A.common.issues)},input:A.data})}}removeCatch(){return this._def.innerType}}Cn.create=(n,e)=>new Cn({innerType:n,typeName:q.ZodCatch,catchValue:typeof e.catch=="function"?e.catch:()=>e.catch,...A0(e)});class Pi extends r0{_parse(e){if(this._getType(e)!==L.nan){const A=this._getOrReturnCtx(e);return b(A,{code:z.invalid_type,expected:L.nan,received:A.parsedType}),$}return{status:"valid",value:e.data}}}Pi.create=n=>new Pi({typeName:q.ZodNaN,...A0(n)});class iu extends r0{_parse(e){const{ctx:t}=this._processInputParams(e),A=t.data;return this._def.type._parse({data:A,path:t.path,parent:t})}unwrap(){return this._def.type}}class Mn extends r0{_parse(e){const{status:t,ctx:A}=this._processInputParams(e);if(A.common.async)return(async()=>{const o=await this._def.in._parseAsync({data:A.data,path:A.path,parent:A});return o.status==="aborted"?$:o.status==="dirty"?(t.dirty(),Ne(o.value)):this._def.out._parseAsync({data:o.value,path:A.path,parent:A})})();{const i=this._def.in._parseSync({data:A.data,path:A.path,parent:A});return i.status==="aborted"?$:i.status==="dirty"?(t.dirty(),{status:"dirty",value:i.value}):this._def.out._parseSync({data:i.value,path:A.path,parent:A})}}static create(e,t){return new Mn({in:e,out:t,typeName:q.ZodPipeline})}}class yn extends r0{_parse(e){const t=this._def.innerType._parse(e),A=i=>(Ae(i)&&(i.value=Object.freeze(i.value)),i);return ft(t)?t.then(i=>A(i)):A(t)}unwrap(){return this._def.innerType}}yn.create=(n,e)=>new yn({innerType:n,typeName:q.ZodReadonly,...A0(e)});var q;(function(n){n.ZodString="ZodString",n.ZodNumber="ZodNumber",n.ZodNaN="ZodNaN",n.ZodBigInt="ZodBigInt",n.ZodBoolean="ZodBoolean",n.ZodDate="ZodDate",n.ZodSymbol="ZodSymbol",n.ZodUndefined="ZodUndefined",n.ZodNull="ZodNull",n.ZodAny="ZodAny",n.ZodUnknown="ZodUnknown",n.ZodNever="ZodNever",n.ZodVoid="ZodVoid",n.ZodArray="ZodArray",n.ZodObject="ZodObject",n.ZodUnion="ZodUnion",n.ZodDiscriminatedUnion="ZodDiscriminatedUnion",n.ZodIntersection="ZodIntersection",n.ZodTuple="ZodTuple",n.ZodRecord="ZodRecord",n.ZodMap="ZodMap",n.ZodSet="ZodSet",n.ZodFunction="ZodFunction",n.ZodLazy="ZodLazy",n.ZodLiteral="ZodLiteral",n.ZodEnum="ZodEnum",n.ZodEffects="ZodEffects",n.ZodNativeEnum="ZodNativeEnum",n.ZodOptional="ZodOptional",n.ZodNullable="ZodNullable",n.ZodDefault="ZodDefault",n.ZodCatch="ZodCatch",n.ZodPromise="ZodPromise",n.ZodBranded="ZodBranded",n.ZodPipeline="ZodPipeline",n.ZodReadonly="ZodReadonly"})(q||(q={}));const L2=r2.create,Ji=H2.create;b2.create;const ou=Qt.create;ie.create;const Hi=pn.create;D2.create;const ze=s2.create,ru=y0.create,su=pt.create;ht.create,V2.create;const au=wt.create,cu=wn.create,lu=re.create;mt.create,F2.create,ae.create;const ce={string:(n=>r2.create({...n,coerce:!0})),number:(n=>H2.create({...n,coerce:!0})),boolean:(n=>Qt.create({...n,coerce:!0})),bigint:(n=>b2.create({...n,coerce:!0})),date:(n=>ie.create({...n,coerce:!0}))};/**
97
+ */const ci=ee("Trash2",[["path",{d:"M3 6h18",key:"d0wm0j"}],["path",{d:"M19 6v14c0 1-1 2-2 2H7c-1 0-2-1-2-2V6",key:"4alrt4"}],["path",{d:"M8 6V4c0-1 1-2 2-2h4c1 0 2 1 2 2v2",key:"v07s0e"}],["line",{x1:"10",x2:"10",y1:"11",y2:"17",key:"1uufr5"}],["line",{x1:"14",x2:"14",y1:"11",y2:"17",key:"xtxkd"}]]);var b;(function(o){o.assertEqual=i=>{};function e(i){}o.assertIs=e;function t(i){throw new Error}o.assertNever=t,o.arrayToEnum=i=>{const l={};for(const a of i)l[a]=a;return l},o.getValidEnumValues=i=>{const l=o.objectKeys(i).filter(u=>typeof i[i[u]]!="number"),a={};for(const u of l)a[u]=i[u];return o.objectValues(a)},o.objectValues=i=>o.objectKeys(i).map(function(l){return i[l]}),o.objectKeys=typeof Object.keys=="function"?i=>Object.keys(i):i=>{const l=[];for(const a in i)Object.prototype.hasOwnProperty.call(i,a)&&l.push(a);return l},o.find=(i,l)=>{for(const a of i)if(l(a))return a},o.isInteger=typeof Number.isInteger=="function"?i=>Number.isInteger(i):i=>typeof i=="number"&&Number.isFinite(i)&&Math.floor(i)===i;function n(i,l=" | "){return i.map(a=>typeof a=="string"?`'${a}'`:a).join(l)}o.joinValues=n,o.jsonStringifyReplacer=(i,l)=>typeof l=="bigint"?l.toString():l})(b||(b={}));var qt;(function(o){o.mergeShapes=(e,t)=>({...e,...t})})(qt||(qt={}));const S=b.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]),le=o=>{switch(typeof o){case"undefined":return S.undefined;case"string":return S.string;case"number":return Number.isNaN(o)?S.nan:S.number;case"boolean":return S.boolean;case"function":return S.function;case"bigint":return S.bigint;case"symbol":return S.symbol;case"object":return Array.isArray(o)?S.array:o===null?S.null:o.then&&typeof o.then=="function"&&o.catch&&typeof o.catch=="function"?S.promise:typeof Map<"u"&&o instanceof Map?S.map:typeof Set<"u"&&o instanceof Set?S.set:typeof Date<"u"&&o instanceof Date?S.date:S.object;default:return S.unknown}},T=b.arrayToEnum(["invalid_type","invalid_literal","custom","invalid_union","invalid_union_discriminator","invalid_enum_value","unrecognized_keys","invalid_arguments","invalid_return_type","invalid_date","invalid_string","too_small","too_big","invalid_intersection_types","not_multiple_of","not_finite"]);class se extends Error{get errors(){return this.issues}constructor(e){super(),this.issues=[],this.addIssue=n=>{this.issues=[...this.issues,n]},this.addIssues=(n=[])=>{this.issues=[...this.issues,...n]};const t=new.target.prototype;Object.setPrototypeOf?Object.setPrototypeOf(this,t):this.__proto__=t,this.name="ZodError",this.issues=e}format(e){const t=e||function(l){return l.message},n={_errors:[]},i=l=>{for(const a of l.issues)if(a.code==="invalid_union")a.unionErrors.map(i);else if(a.code==="invalid_return_type")i(a.returnTypeError);else if(a.code==="invalid_arguments")i(a.argumentsError);else if(a.path.length===0)n._errors.push(t(a));else{let u=n,d=0;for(;d<a.path.length;){const c=a.path[d];d===a.path.length-1?(u[c]=u[c]||{_errors:[]},u[c]._errors.push(t(a))):u[c]=u[c]||{_errors:[]},u=u[c],d++}}};return i(this),n}static assert(e){if(!(e instanceof se))throw new Error(`Not a ZodError: ${e}`)}toString(){return this.message}get message(){return JSON.stringify(this.issues,b.jsonStringifyReplacer,2)}get isEmpty(){return this.issues.length===0}flatten(e=t=>t.message){const t={},n=[];for(const i of this.issues)if(i.path.length>0){const l=i.path[0];t[l]=t[l]||[],t[l].push(e(i))}else n.push(e(i));return{formErrors:n,fieldErrors:t}}get formErrors(){return this.flatten()}}se.create=o=>new se(o);const at=(o,e)=>{let t;switch(o.code){case T.invalid_type:o.received===S.undefined?t="Required":t=`Expected ${o.expected}, received ${o.received}`;break;case T.invalid_literal:t=`Invalid literal value, expected ${JSON.stringify(o.expected,b.jsonStringifyReplacer)}`;break;case T.unrecognized_keys:t=`Unrecognized key(s) in object: ${b.joinValues(o.keys,", ")}`;break;case T.invalid_union:t="Invalid input";break;case T.invalid_union_discriminator:t=`Invalid discriminator value. Expected ${b.joinValues(o.options)}`;break;case T.invalid_enum_value:t=`Invalid enum value. Expected ${b.joinValues(o.options)}, received '${o.received}'`;break;case T.invalid_arguments:t="Invalid function arguments";break;case T.invalid_return_type:t="Invalid function return type";break;case T.invalid_date:t="Invalid date";break;case T.invalid_string:typeof o.validation=="object"?"includes"in o.validation?(t=`Invalid input: must include "${o.validation.includes}"`,typeof o.validation.position=="number"&&(t=`${t} at one or more positions greater than or equal to ${o.validation.position}`)):"startsWith"in o.validation?t=`Invalid input: must start with "${o.validation.startsWith}"`:"endsWith"in o.validation?t=`Invalid input: must end with "${o.validation.endsWith}"`:b.assertNever(o.validation):o.validation!=="regex"?t=`Invalid ${o.validation}`:t="Invalid";break;case T.too_small:o.type==="array"?t=`Array must contain ${o.exact?"exactly":o.inclusive?"at least":"more than"} ${o.minimum} element(s)`:o.type==="string"?t=`String must contain ${o.exact?"exactly":o.inclusive?"at least":"over"} ${o.minimum} character(s)`:o.type==="number"?t=`Number must be ${o.exact?"exactly equal to ":o.inclusive?"greater than or equal to ":"greater than "}${o.minimum}`:o.type==="bigint"?t=`Number must be ${o.exact?"exactly equal to ":o.inclusive?"greater than or equal to ":"greater than "}${o.minimum}`:o.type==="date"?t=`Date must be ${o.exact?"exactly equal to ":o.inclusive?"greater than or equal to ":"greater than "}${new Date(Number(o.minimum))}`:t="Invalid input";break;case T.too_big:o.type==="array"?t=`Array must contain ${o.exact?"exactly":o.inclusive?"at most":"less than"} ${o.maximum} element(s)`:o.type==="string"?t=`String must contain ${o.exact?"exactly":o.inclusive?"at most":"under"} ${o.maximum} character(s)`:o.type==="number"?t=`Number must be ${o.exact?"exactly":o.inclusive?"less than or equal to":"less than"} ${o.maximum}`:o.type==="bigint"?t=`BigInt must be ${o.exact?"exactly":o.inclusive?"less than or equal to":"less than"} ${o.maximum}`:o.type==="date"?t=`Date must be ${o.exact?"exactly":o.inclusive?"smaller than or equal to":"smaller than"} ${new Date(Number(o.maximum))}`:t="Invalid input";break;case T.custom:t="Invalid input";break;case T.invalid_intersection_types:t="Intersection results could not be merged";break;case T.not_multiple_of:t=`Number must be a multiple of ${o.multipleOf}`;break;case T.not_finite:t="Number must be finite";break;default:t=e.defaultError,b.assertNever(o)}return{message:t}};let di=at;function fi(){return di}const pi=o=>{const{data:e,path:t,errorMaps:n,issueData:i}=o,l=[...t,...i.path||[]],a={...i,path:l};if(i.message!==void 0)return{...i,path:l,message:i.message};let u="";const d=n.filter(c=>!!c).slice().reverse();for(const c of d)u=c(a,{data:e,defaultError:u}).message;return{...i,path:l,message:u}};function C(o,e){const t=fi(),n=pi({issueData:e,data:o.data,path:o.path,errorMaps:[o.common.contextualErrorMap,o.schemaErrorMap,t,t===at?void 0:at].filter(i=>!!i)});o.common.issues.push(n)}class z{constructor(){this.value="valid"}dirty(){this.value==="valid"&&(this.value="dirty")}abort(){this.value!=="aborted"&&(this.value="aborted")}static mergeArray(e,t){const n=[];for(const i of t){if(i.status==="aborted")return N;i.status==="dirty"&&e.dirty(),n.push(i.value)}return{status:e.value,value:n}}static async mergeObjectAsync(e,t){const n=[];for(const i of t){const l=await i.key,a=await i.value;n.push({key:l,value:a})}return z.mergeObjectSync(e,n)}static mergeObjectSync(e,t){const n={};for(const i of t){const{key:l,value:a}=i;if(l.status==="aborted"||a.status==="aborted")return N;l.status==="dirty"&&e.dirty(),a.status==="dirty"&&e.dirty(),l.value!=="__proto__"&&(typeof a.value<"u"||i.alwaysSet)&&(n[l.value]=a.value)}return{status:e.value,value:n}}}const N=Object.freeze({status:"aborted"}),Ve=o=>({status:"dirty",value:o}),Q=o=>({status:"valid",value:o}),$t=o=>o.status==="aborted",Ot=o=>o.status==="dirty",ve=o=>o.status==="valid",He=o=>typeof Promise<"u"&&o instanceof Promise;var x;(function(o){o.errToObj=e=>typeof e=="string"?{message:e}:e||{},o.toString=e=>typeof e=="string"?e:e==null?void 0:e.message})(x||(x={}));class oe{constructor(e,t,n,i){this._cachedPath=[],this.parent=e,this.data=t,this._path=n,this._key=i}get path(){return this._cachedPath.length||(Array.isArray(this._key)?this._cachedPath.push(...this._path,...this._key):this._cachedPath.push(...this._path,this._key)),this._cachedPath}}const Ht=(o,e)=>{if(ve(e))return{success:!0,data:e.value};if(!o.common.issues.length)throw new Error("Validation failed but no issues detected.");return{success:!1,get error(){if(this._error)return this._error;const t=new se(o.common.issues);return this._error=t,this._error}}};function L(o){if(!o)return{};const{errorMap:e,invalid_type_error:t,required_error:n,description:i}=o;if(e&&(t||n))throw new Error(`Can't use "invalid_type_error" or "required_error" in conjunction with custom error map.`);return e?{errorMap:e,description:i}:{errorMap:(a,u)=>{const{message:d}=o;return a.code==="invalid_enum_value"?{message:d??u.defaultError}:typeof u.data>"u"?{message:d??n??u.defaultError}:a.code!=="invalid_type"?{message:u.defaultError}:{message:d??t??u.defaultError}},description:i}}class U{get description(){return this._def.description}_getType(e){return le(e.data)}_getOrReturnCtx(e,t){return t||{common:e.parent.common,data:e.data,parsedType:le(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}_processInputParams(e){return{status:new z,ctx:{common:e.parent.common,data:e.data,parsedType:le(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}}_parseSync(e){const t=this._parse(e);if(He(t))throw new Error("Synchronous parse encountered promise.");return t}_parseAsync(e){const t=this._parse(e);return Promise.resolve(t)}parse(e,t){const n=this.safeParse(e,t);if(n.success)return n.data;throw n.error}safeParse(e,t){const n={common:{issues:[],async:(t==null?void 0:t.async)??!1,contextualErrorMap:t==null?void 0:t.errorMap},path:(t==null?void 0:t.path)||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:le(e)},i=this._parseSync({data:e,path:n.path,parent:n});return Ht(n,i)}"~validate"(e){var n,i;const t={common:{issues:[],async:!!this["~standard"].async},path:[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:le(e)};if(!this["~standard"].async)try{const l=this._parseSync({data:e,path:[],parent:t});return ve(l)?{value:l.value}:{issues:t.common.issues}}catch(l){(i=(n=l==null?void 0:l.message)==null?void 0:n.toLowerCase())!=null&&i.includes("encountered")&&(this["~standard"].async=!0),t.common={issues:[],async:!0}}return this._parseAsync({data:e,path:[],parent:t}).then(l=>ve(l)?{value:l.value}:{issues:t.common.issues})}async parseAsync(e,t){const n=await this.safeParseAsync(e,t);if(n.success)return n.data;throw n.error}async safeParseAsync(e,t){const n={common:{issues:[],contextualErrorMap:t==null?void 0:t.errorMap,async:!0},path:(t==null?void 0:t.path)||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:le(e)},i=this._parse({data:e,path:n.path,parent:n}),l=await(He(i)?i:Promise.resolve(i));return Ht(n,l)}refine(e,t){const n=i=>typeof t=="string"||typeof t>"u"?{message:t}:typeof t=="function"?t(i):t;return this._refinement((i,l)=>{const a=e(i),u=()=>l.addIssue({code:T.custom,...n(i)});return typeof Promise<"u"&&a instanceof Promise?a.then(d=>d?!0:(u(),!1)):a?!0:(u(),!1)})}refinement(e,t){return this._refinement((n,i)=>e(n)?!0:(i.addIssue(typeof t=="function"?t(n,i):t),!1))}_refinement(e){return new Ee({schema:this,typeName:P.ZodEffects,effect:{type:"refinement",refinement:e}})}superRefine(e){return this._refinement(e)}constructor(e){this.spa=this.safeParseAsync,this._def=e,this.parse=this.parse.bind(this),this.safeParse=this.safeParse.bind(this),this.parseAsync=this.parseAsync.bind(this),this.safeParseAsync=this.safeParseAsync.bind(this),this.spa=this.spa.bind(this),this.refine=this.refine.bind(this),this.refinement=this.refinement.bind(this),this.superRefine=this.superRefine.bind(this),this.optional=this.optional.bind(this),this.nullable=this.nullable.bind(this),this.nullish=this.nullish.bind(this),this.array=this.array.bind(this),this.promise=this.promise.bind(this),this.or=this.or.bind(this),this.and=this.and.bind(this),this.transform=this.transform.bind(this),this.brand=this.brand.bind(this),this.default=this.default.bind(this),this.catch=this.catch.bind(this),this.describe=this.describe.bind(this),this.pipe=this.pipe.bind(this),this.readonly=this.readonly.bind(this),this.isNullable=this.isNullable.bind(this),this.isOptional=this.isOptional.bind(this),this["~standard"]={version:1,vendor:"zod",validate:t=>this["~validate"](t)}}optional(){return ue.create(this,this._def)}nullable(){return Se.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return re.create(this)}promise(){return ze.create(this,this._def)}or(e){return We.create([this,e],this._def)}and(e){return Ye.create(this,e,this._def)}transform(e){return new Ee({...L(this._def),schema:this,typeName:P.ZodEffects,effect:{type:"transform",transform:e}})}default(e){const t=typeof e=="function"?e:()=>e;return new pt({...L(this._def),innerType:this,defaultValue:t,typeName:P.ZodDefault})}brand(){return new Fi({typeName:P.ZodBranded,type:this,...L(this._def)})}catch(e){const t=typeof e=="function"?e:()=>e;return new mt({...L(this._def),innerType:this,catchValue:t,typeName:P.ZodCatch})}describe(e){const t=this.constructor;return new t({...this._def,description:e})}pipe(e){return ht.create(this,e)}readonly(){return gt.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}}const mi=/^c[^\s-]{8,}$/i,hi=/^[0-9a-z]+$/,gi=/^[0-9A-HJKMNP-TV-Z]{26}$/i,yi=/^[0-9a-fA-F]{8}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{12}$/i,vi=/^[a-z0-9_-]{21}$/i,Ti=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,Ci=/^[-+]?P(?!$)(?:(?:[-+]?\d+Y)|(?:[-+]?\d+[.,]\d+Y$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:(?:[-+]?\d+W)|(?:[-+]?\d+[.,]\d+W$))?(?:(?:[-+]?\d+D)|(?:[-+]?\d+[.,]\d+D$))?(?:T(?=[\d+-])(?:(?:[-+]?\d+H)|(?:[-+]?\d+[.,]\d+H$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:[-+]?\d+(?:[.,]\d+)?S)?)??$/,_i=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,Ei="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$";let ut;const Si=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,xi=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/(3[0-2]|[12]?[0-9])$/,Ai=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))$/,Mi=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,Ii=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,Ri=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,Jt="((\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-((0[13578]|1[02])-(0[1-9]|[12]\\d|3[01])|(0[469]|11)-(0[1-9]|[12]\\d|30)|(02)-(0[1-9]|1\\d|2[0-8])))",wi=new RegExp(`^${Jt}$`);function Wt(o){let e="[0-5]\\d";o.precision?e=`${e}\\.\\d{${o.precision}}`:o.precision==null&&(e=`${e}(\\.\\d+)?`);const t=o.precision?"+":"?";return`([01]\\d|2[0-3]):[0-5]\\d(:${e})${t}`}function Pi(o){return new RegExp(`^${Wt(o)}$`)}function Ni(o){let e=`${Jt}T${Wt(o)}`;const t=[];return t.push(o.local?"Z?":"Z"),o.offset&&t.push("([+-]\\d{2}:?\\d{2})"),e=`${e}(${t.join("|")})`,new RegExp(`^${e}$`)}function ki(o,e){return!!((e==="v4"||!e)&&Si.test(o)||(e==="v6"||!e)&&Ai.test(o))}function Di(o,e){if(!Ti.test(o))return!1;try{const[t]=o.split(".");if(!t)return!1;const n=t.replace(/-/g,"+").replace(/_/g,"/").padEnd(t.length+(4-t.length%4)%4,"="),i=JSON.parse(atob(n));return!(typeof i!="object"||i===null||"typ"in i&&(i==null?void 0:i.typ)!=="JWT"||!i.alg||e&&i.alg!==e)}catch{return!1}}function Li(o,e){return!!((e==="v4"||!e)&&xi.test(o)||(e==="v6"||!e)&&Mi.test(o))}class ie extends U{_parse(e){if(this._def.coerce&&(e.data=String(e.data)),this._getType(e)!==S.string){const l=this._getOrReturnCtx(e);return C(l,{code:T.invalid_type,expected:S.string,received:l.parsedType}),N}const n=new z;let i;for(const l of this._def.checks)if(l.kind==="min")e.data.length<l.value&&(i=this._getOrReturnCtx(e,i),C(i,{code:T.too_small,minimum:l.value,type:"string",inclusive:!0,exact:!1,message:l.message}),n.dirty());else if(l.kind==="max")e.data.length>l.value&&(i=this._getOrReturnCtx(e,i),C(i,{code:T.too_big,maximum:l.value,type:"string",inclusive:!0,exact:!1,message:l.message}),n.dirty());else if(l.kind==="length"){const a=e.data.length>l.value,u=e.data.length<l.value;(a||u)&&(i=this._getOrReturnCtx(e,i),a?C(i,{code:T.too_big,maximum:l.value,type:"string",inclusive:!0,exact:!0,message:l.message}):u&&C(i,{code:T.too_small,minimum:l.value,type:"string",inclusive:!0,exact:!0,message:l.message}),n.dirty())}else if(l.kind==="email")_i.test(e.data)||(i=this._getOrReturnCtx(e,i),C(i,{validation:"email",code:T.invalid_string,message:l.message}),n.dirty());else if(l.kind==="emoji")ut||(ut=new RegExp(Ei,"u")),ut.test(e.data)||(i=this._getOrReturnCtx(e,i),C(i,{validation:"emoji",code:T.invalid_string,message:l.message}),n.dirty());else if(l.kind==="uuid")yi.test(e.data)||(i=this._getOrReturnCtx(e,i),C(i,{validation:"uuid",code:T.invalid_string,message:l.message}),n.dirty());else if(l.kind==="nanoid")vi.test(e.data)||(i=this._getOrReturnCtx(e,i),C(i,{validation:"nanoid",code:T.invalid_string,message:l.message}),n.dirty());else if(l.kind==="cuid")mi.test(e.data)||(i=this._getOrReturnCtx(e,i),C(i,{validation:"cuid",code:T.invalid_string,message:l.message}),n.dirty());else if(l.kind==="cuid2")hi.test(e.data)||(i=this._getOrReturnCtx(e,i),C(i,{validation:"cuid2",code:T.invalid_string,message:l.message}),n.dirty());else if(l.kind==="ulid")gi.test(e.data)||(i=this._getOrReturnCtx(e,i),C(i,{validation:"ulid",code:T.invalid_string,message:l.message}),n.dirty());else if(l.kind==="url")try{new URL(e.data)}catch{i=this._getOrReturnCtx(e,i),C(i,{validation:"url",code:T.invalid_string,message:l.message}),n.dirty()}else l.kind==="regex"?(l.regex.lastIndex=0,l.regex.test(e.data)||(i=this._getOrReturnCtx(e,i),C(i,{validation:"regex",code:T.invalid_string,message:l.message}),n.dirty())):l.kind==="trim"?e.data=e.data.trim():l.kind==="includes"?e.data.includes(l.value,l.position)||(i=this._getOrReturnCtx(e,i),C(i,{code:T.invalid_string,validation:{includes:l.value,position:l.position},message:l.message}),n.dirty()):l.kind==="toLowerCase"?e.data=e.data.toLowerCase():l.kind==="toUpperCase"?e.data=e.data.toUpperCase():l.kind==="startsWith"?e.data.startsWith(l.value)||(i=this._getOrReturnCtx(e,i),C(i,{code:T.invalid_string,validation:{startsWith:l.value},message:l.message}),n.dirty()):l.kind==="endsWith"?e.data.endsWith(l.value)||(i=this._getOrReturnCtx(e,i),C(i,{code:T.invalid_string,validation:{endsWith:l.value},message:l.message}),n.dirty()):l.kind==="datetime"?Ni(l).test(e.data)||(i=this._getOrReturnCtx(e,i),C(i,{code:T.invalid_string,validation:"datetime",message:l.message}),n.dirty()):l.kind==="date"?wi.test(e.data)||(i=this._getOrReturnCtx(e,i),C(i,{code:T.invalid_string,validation:"date",message:l.message}),n.dirty()):l.kind==="time"?Pi(l).test(e.data)||(i=this._getOrReturnCtx(e,i),C(i,{code:T.invalid_string,validation:"time",message:l.message}),n.dirty()):l.kind==="duration"?Ci.test(e.data)||(i=this._getOrReturnCtx(e,i),C(i,{validation:"duration",code:T.invalid_string,message:l.message}),n.dirty()):l.kind==="ip"?ki(e.data,l.version)||(i=this._getOrReturnCtx(e,i),C(i,{validation:"ip",code:T.invalid_string,message:l.message}),n.dirty()):l.kind==="jwt"?Di(e.data,l.alg)||(i=this._getOrReturnCtx(e,i),C(i,{validation:"jwt",code:T.invalid_string,message:l.message}),n.dirty()):l.kind==="cidr"?Li(e.data,l.version)||(i=this._getOrReturnCtx(e,i),C(i,{validation:"cidr",code:T.invalid_string,message:l.message}),n.dirty()):l.kind==="base64"?Ii.test(e.data)||(i=this._getOrReturnCtx(e,i),C(i,{validation:"base64",code:T.invalid_string,message:l.message}),n.dirty()):l.kind==="base64url"?Ri.test(e.data)||(i=this._getOrReturnCtx(e,i),C(i,{validation:"base64url",code:T.invalid_string,message:l.message}),n.dirty()):b.assertNever(l);return{status:n.value,value:e.data}}_regex(e,t,n){return this.refinement(i=>e.test(i),{validation:t,code:T.invalid_string,...x.errToObj(n)})}_addCheck(e){return new ie({...this._def,checks:[...this._def.checks,e]})}email(e){return this._addCheck({kind:"email",...x.errToObj(e)})}url(e){return this._addCheck({kind:"url",...x.errToObj(e)})}emoji(e){return this._addCheck({kind:"emoji",...x.errToObj(e)})}uuid(e){return this._addCheck({kind:"uuid",...x.errToObj(e)})}nanoid(e){return this._addCheck({kind:"nanoid",...x.errToObj(e)})}cuid(e){return this._addCheck({kind:"cuid",...x.errToObj(e)})}cuid2(e){return this._addCheck({kind:"cuid2",...x.errToObj(e)})}ulid(e){return this._addCheck({kind:"ulid",...x.errToObj(e)})}base64(e){return this._addCheck({kind:"base64",...x.errToObj(e)})}base64url(e){return this._addCheck({kind:"base64url",...x.errToObj(e)})}jwt(e){return this._addCheck({kind:"jwt",...x.errToObj(e)})}ip(e){return this._addCheck({kind:"ip",...x.errToObj(e)})}cidr(e){return this._addCheck({kind:"cidr",...x.errToObj(e)})}datetime(e){return typeof e=="string"?this._addCheck({kind:"datetime",precision:null,offset:!1,local:!1,message:e}):this._addCheck({kind:"datetime",precision:typeof(e==null?void 0:e.precision)>"u"?null:e==null?void 0:e.precision,offset:(e==null?void 0:e.offset)??!1,local:(e==null?void 0:e.local)??!1,...x.errToObj(e==null?void 0:e.message)})}date(e){return this._addCheck({kind:"date",message:e})}time(e){return typeof e=="string"?this._addCheck({kind:"time",precision:null,message:e}):this._addCheck({kind:"time",precision:typeof(e==null?void 0:e.precision)>"u"?null:e==null?void 0:e.precision,...x.errToObj(e==null?void 0:e.message)})}duration(e){return this._addCheck({kind:"duration",...x.errToObj(e)})}regex(e,t){return this._addCheck({kind:"regex",regex:e,...x.errToObj(t)})}includes(e,t){return this._addCheck({kind:"includes",value:e,position:t==null?void 0:t.position,...x.errToObj(t==null?void 0:t.message)})}startsWith(e,t){return this._addCheck({kind:"startsWith",value:e,...x.errToObj(t)})}endsWith(e,t){return this._addCheck({kind:"endsWith",value:e,...x.errToObj(t)})}min(e,t){return this._addCheck({kind:"min",value:e,...x.errToObj(t)})}max(e,t){return this._addCheck({kind:"max",value:e,...x.errToObj(t)})}length(e,t){return this._addCheck({kind:"length",value:e,...x.errToObj(t)})}nonempty(e){return this.min(1,x.errToObj(e))}trim(){return new ie({...this._def,checks:[...this._def.checks,{kind:"trim"}]})}toLowerCase(){return new ie({...this._def,checks:[...this._def.checks,{kind:"toLowerCase"}]})}toUpperCase(){return new ie({...this._def,checks:[...this._def.checks,{kind:"toUpperCase"}]})}get isDatetime(){return!!this._def.checks.find(e=>e.kind==="datetime")}get isDate(){return!!this._def.checks.find(e=>e.kind==="date")}get isTime(){return!!this._def.checks.find(e=>e.kind==="time")}get isDuration(){return!!this._def.checks.find(e=>e.kind==="duration")}get isEmail(){return!!this._def.checks.find(e=>e.kind==="email")}get isURL(){return!!this._def.checks.find(e=>e.kind==="url")}get isEmoji(){return!!this._def.checks.find(e=>e.kind==="emoji")}get isUUID(){return!!this._def.checks.find(e=>e.kind==="uuid")}get isNANOID(){return!!this._def.checks.find(e=>e.kind==="nanoid")}get isCUID(){return!!this._def.checks.find(e=>e.kind==="cuid")}get isCUID2(){return!!this._def.checks.find(e=>e.kind==="cuid2")}get isULID(){return!!this._def.checks.find(e=>e.kind==="ulid")}get isIP(){return!!this._def.checks.find(e=>e.kind==="ip")}get isCIDR(){return!!this._def.checks.find(e=>e.kind==="cidr")}get isBase64(){return!!this._def.checks.find(e=>e.kind==="base64")}get isBase64url(){return!!this._def.checks.find(e=>e.kind==="base64url")}get minLength(){let e=null;for(const t of this._def.checks)t.kind==="min"&&(e===null||t.value>e)&&(e=t.value);return e}get maxLength(){let e=null;for(const t of this._def.checks)t.kind==="max"&&(e===null||t.value<e)&&(e=t.value);return e}}ie.create=o=>new ie({checks:[],typeName:P.ZodString,coerce:(o==null?void 0:o.coerce)??!1,...L(o)});function Vi(o,e){const t=(o.toString().split(".")[1]||"").length,n=(e.toString().split(".")[1]||"").length,i=t>n?t:n,l=Number.parseInt(o.toFixed(i).replace(".","")),a=Number.parseInt(e.toFixed(i).replace(".",""));return l%a/10**i}class pe extends U{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte,this.step=this.multipleOf}_parse(e){if(this._def.coerce&&(e.data=Number(e.data)),this._getType(e)!==S.number){const l=this._getOrReturnCtx(e);return C(l,{code:T.invalid_type,expected:S.number,received:l.parsedType}),N}let n;const i=new z;for(const l of this._def.checks)l.kind==="int"?b.isInteger(e.data)||(n=this._getOrReturnCtx(e,n),C(n,{code:T.invalid_type,expected:"integer",received:"float",message:l.message}),i.dirty()):l.kind==="min"?(l.inclusive?e.data<l.value:e.data<=l.value)&&(n=this._getOrReturnCtx(e,n),C(n,{code:T.too_small,minimum:l.value,type:"number",inclusive:l.inclusive,exact:!1,message:l.message}),i.dirty()):l.kind==="max"?(l.inclusive?e.data>l.value:e.data>=l.value)&&(n=this._getOrReturnCtx(e,n),C(n,{code:T.too_big,maximum:l.value,type:"number",inclusive:l.inclusive,exact:!1,message:l.message}),i.dirty()):l.kind==="multipleOf"?Vi(e.data,l.value)!==0&&(n=this._getOrReturnCtx(e,n),C(n,{code:T.not_multiple_of,multipleOf:l.value,message:l.message}),i.dirty()):l.kind==="finite"?Number.isFinite(e.data)||(n=this._getOrReturnCtx(e,n),C(n,{code:T.not_finite,message:l.message}),i.dirty()):b.assertNever(l);return{status:i.value,value:e.data}}gte(e,t){return this.setLimit("min",e,!0,x.toString(t))}gt(e,t){return this.setLimit("min",e,!1,x.toString(t))}lte(e,t){return this.setLimit("max",e,!0,x.toString(t))}lt(e,t){return this.setLimit("max",e,!1,x.toString(t))}setLimit(e,t,n,i){return new pe({...this._def,checks:[...this._def.checks,{kind:e,value:t,inclusive:n,message:x.toString(i)}]})}_addCheck(e){return new pe({...this._def,checks:[...this._def.checks,e]})}int(e){return this._addCheck({kind:"int",message:x.toString(e)})}positive(e){return this._addCheck({kind:"min",value:0,inclusive:!1,message:x.toString(e)})}negative(e){return this._addCheck({kind:"max",value:0,inclusive:!1,message:x.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:0,inclusive:!0,message:x.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:0,inclusive:!0,message:x.toString(e)})}multipleOf(e,t){return this._addCheck({kind:"multipleOf",value:e,message:x.toString(t)})}finite(e){return this._addCheck({kind:"finite",message:x.toString(e)})}safe(e){return this._addCheck({kind:"min",inclusive:!0,value:Number.MIN_SAFE_INTEGER,message:x.toString(e)})._addCheck({kind:"max",inclusive:!0,value:Number.MAX_SAFE_INTEGER,message:x.toString(e)})}get minValue(){let e=null;for(const t of this._def.checks)t.kind==="min"&&(e===null||t.value>e)&&(e=t.value);return e}get maxValue(){let e=null;for(const t of this._def.checks)t.kind==="max"&&(e===null||t.value<e)&&(e=t.value);return e}get isInt(){return!!this._def.checks.find(e=>e.kind==="int"||e.kind==="multipleOf"&&b.isInteger(e.value))}get isFinite(){let e=null,t=null;for(const n of this._def.checks){if(n.kind==="finite"||n.kind==="int"||n.kind==="multipleOf")return!0;n.kind==="min"?(t===null||n.value>t)&&(t=n.value):n.kind==="max"&&(e===null||n.value<e)&&(e=n.value)}return Number.isFinite(t)&&Number.isFinite(e)}}pe.create=o=>new pe({checks:[],typeName:P.ZodNumber,coerce:(o==null?void 0:o.coerce)||!1,...L(o)});class me extends U{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte}_parse(e){if(this._def.coerce)try{e.data=BigInt(e.data)}catch{return this._getInvalidInput(e)}if(this._getType(e)!==S.bigint)return this._getInvalidInput(e);let n;const i=new z;for(const l of this._def.checks)l.kind==="min"?(l.inclusive?e.data<l.value:e.data<=l.value)&&(n=this._getOrReturnCtx(e,n),C(n,{code:T.too_small,type:"bigint",minimum:l.value,inclusive:l.inclusive,message:l.message}),i.dirty()):l.kind==="max"?(l.inclusive?e.data>l.value:e.data>=l.value)&&(n=this._getOrReturnCtx(e,n),C(n,{code:T.too_big,type:"bigint",maximum:l.value,inclusive:l.inclusive,message:l.message}),i.dirty()):l.kind==="multipleOf"?e.data%l.value!==BigInt(0)&&(n=this._getOrReturnCtx(e,n),C(n,{code:T.not_multiple_of,multipleOf:l.value,message:l.message}),i.dirty()):b.assertNever(l);return{status:i.value,value:e.data}}_getInvalidInput(e){const t=this._getOrReturnCtx(e);return C(t,{code:T.invalid_type,expected:S.bigint,received:t.parsedType}),N}gte(e,t){return this.setLimit("min",e,!0,x.toString(t))}gt(e,t){return this.setLimit("min",e,!1,x.toString(t))}lte(e,t){return this.setLimit("max",e,!0,x.toString(t))}lt(e,t){return this.setLimit("max",e,!1,x.toString(t))}setLimit(e,t,n,i){return new me({...this._def,checks:[...this._def.checks,{kind:e,value:t,inclusive:n,message:x.toString(i)}]})}_addCheck(e){return new me({...this._def,checks:[...this._def.checks,e]})}positive(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!1,message:x.toString(e)})}negative(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!1,message:x.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!0,message:x.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!0,message:x.toString(e)})}multipleOf(e,t){return this._addCheck({kind:"multipleOf",value:e,message:x.toString(t)})}get minValue(){let e=null;for(const t of this._def.checks)t.kind==="min"&&(e===null||t.value>e)&&(e=t.value);return e}get maxValue(){let e=null;for(const t of this._def.checks)t.kind==="max"&&(e===null||t.value<e)&&(e=t.value);return e}}me.create=o=>new me({checks:[],typeName:P.ZodBigInt,coerce:(o==null?void 0:o.coerce)??!1,...L(o)});class Je extends U{_parse(e){if(this._def.coerce&&(e.data=!!e.data),this._getType(e)!==S.boolean){const n=this._getOrReturnCtx(e);return C(n,{code:T.invalid_type,expected:S.boolean,received:n.parsedType}),N}return Q(e.data)}}Je.create=o=>new Je({typeName:P.ZodBoolean,coerce:(o==null?void 0:o.coerce)||!1,...L(o)});class Te extends U{_parse(e){if(this._def.coerce&&(e.data=new Date(e.data)),this._getType(e)!==S.date){const l=this._getOrReturnCtx(e);return C(l,{code:T.invalid_type,expected:S.date,received:l.parsedType}),N}if(Number.isNaN(e.data.getTime())){const l=this._getOrReturnCtx(e);return C(l,{code:T.invalid_date}),N}const n=new z;let i;for(const l of this._def.checks)l.kind==="min"?e.data.getTime()<l.value&&(i=this._getOrReturnCtx(e,i),C(i,{code:T.too_small,message:l.message,inclusive:!0,exact:!1,minimum:l.value,type:"date"}),n.dirty()):l.kind==="max"?e.data.getTime()>l.value&&(i=this._getOrReturnCtx(e,i),C(i,{code:T.too_big,message:l.message,inclusive:!0,exact:!1,maximum:l.value,type:"date"}),n.dirty()):b.assertNever(l);return{status:n.value,value:new Date(e.data.getTime())}}_addCheck(e){return new Te({...this._def,checks:[...this._def.checks,e]})}min(e,t){return this._addCheck({kind:"min",value:e.getTime(),message:x.toString(t)})}max(e,t){return this._addCheck({kind:"max",value:e.getTime(),message:x.toString(t)})}get minDate(){let e=null;for(const t of this._def.checks)t.kind==="min"&&(e===null||t.value>e)&&(e=t.value);return e!=null?new Date(e):null}get maxDate(){let e=null;for(const t of this._def.checks)t.kind==="max"&&(e===null||t.value<e)&&(e=t.value);return e!=null?new Date(e):null}}Te.create=o=>new Te({checks:[],coerce:(o==null?void 0:o.coerce)||!1,typeName:P.ZodDate,...L(o)});class Yt extends U{_parse(e){if(this._getType(e)!==S.symbol){const n=this._getOrReturnCtx(e);return C(n,{code:T.invalid_type,expected:S.symbol,received:n.parsedType}),N}return Q(e.data)}}Yt.create=o=>new Yt({typeName:P.ZodSymbol,...L(o)});class Zt extends U{_parse(e){if(this._getType(e)!==S.undefined){const n=this._getOrReturnCtx(e);return C(n,{code:T.invalid_type,expected:S.undefined,received:n.parsedType}),N}return Q(e.data)}}Zt.create=o=>new Zt({typeName:P.ZodUndefined,...L(o)});class zt extends U{_parse(e){if(this._getType(e)!==S.null){const n=this._getOrReturnCtx(e);return C(n,{code:T.invalid_type,expected:S.null,received:n.parsedType}),N}return Q(e.data)}}zt.create=o=>new zt({typeName:P.ZodNull,...L(o)});class Kt extends U{constructor(){super(...arguments),this._any=!0}_parse(e){return Q(e.data)}}Kt.create=o=>new Kt({typeName:P.ZodAny,...L(o)});class ct extends U{constructor(){super(...arguments),this._unknown=!0}_parse(e){return Q(e.data)}}ct.create=o=>new ct({typeName:P.ZodUnknown,...L(o)});class ae extends U{_parse(e){const t=this._getOrReturnCtx(e);return C(t,{code:T.invalid_type,expected:S.never,received:t.parsedType}),N}}ae.create=o=>new ae({typeName:P.ZodNever,...L(o)});class Xt extends U{_parse(e){if(this._getType(e)!==S.undefined){const n=this._getOrReturnCtx(e);return C(n,{code:T.invalid_type,expected:S.void,received:n.parsedType}),N}return Q(e.data)}}Xt.create=o=>new Xt({typeName:P.ZodVoid,...L(o)});class re extends U{_parse(e){const{ctx:t,status:n}=this._processInputParams(e),i=this._def;if(t.parsedType!==S.array)return C(t,{code:T.invalid_type,expected:S.array,received:t.parsedType}),N;if(i.exactLength!==null){const a=t.data.length>i.exactLength.value,u=t.data.length<i.exactLength.value;(a||u)&&(C(t,{code:a?T.too_big:T.too_small,minimum:u?i.exactLength.value:void 0,maximum:a?i.exactLength.value:void 0,type:"array",inclusive:!0,exact:!0,message:i.exactLength.message}),n.dirty())}if(i.minLength!==null&&t.data.length<i.minLength.value&&(C(t,{code:T.too_small,minimum:i.minLength.value,type:"array",inclusive:!0,exact:!1,message:i.minLength.message}),n.dirty()),i.maxLength!==null&&t.data.length>i.maxLength.value&&(C(t,{code:T.too_big,maximum:i.maxLength.value,type:"array",inclusive:!0,exact:!1,message:i.maxLength.message}),n.dirty()),t.common.async)return Promise.all([...t.data].map((a,u)=>i.type._parseAsync(new oe(t,a,t.path,u)))).then(a=>z.mergeArray(n,a));const l=[...t.data].map((a,u)=>i.type._parseSync(new oe(t,a,t.path,u)));return z.mergeArray(n,l)}get element(){return this._def.type}min(e,t){return new re({...this._def,minLength:{value:e,message:x.toString(t)}})}max(e,t){return new re({...this._def,maxLength:{value:e,message:x.toString(t)}})}length(e,t){return new re({...this._def,exactLength:{value:e,message:x.toString(t)}})}nonempty(e){return this.min(1,e)}}re.create=(o,e)=>new re({type:o,minLength:null,maxLength:null,exactLength:null,typeName:P.ZodArray,...L(e)});function Ce(o){if(o instanceof H){const e={};for(const t in o.shape){const n=o.shape[t];e[t]=ue.create(Ce(n))}return new H({...o._def,shape:()=>e})}else return o instanceof re?new re({...o._def,type:Ce(o.element)}):o instanceof ue?ue.create(Ce(o.unwrap())):o instanceof Se?Se.create(Ce(o.unwrap())):o instanceof he?he.create(o.items.map(e=>Ce(e))):o}class H extends U{constructor(){super(...arguments),this._cached=null,this.nonstrict=this.passthrough,this.augment=this.extend}_getCached(){if(this._cached!==null)return this._cached;const e=this._def.shape(),t=b.objectKeys(e);return this._cached={shape:e,keys:t},this._cached}_parse(e){if(this._getType(e)!==S.object){const c=this._getOrReturnCtx(e);return C(c,{code:T.invalid_type,expected:S.object,received:c.parsedType}),N}const{status:n,ctx:i}=this._processInputParams(e),{shape:l,keys:a}=this._getCached(),u=[];if(!(this._def.catchall instanceof ae&&this._def.unknownKeys==="strip"))for(const c in i.data)a.includes(c)||u.push(c);const d=[];for(const c of a){const f=l[c],p=i.data[c];d.push({key:{status:"valid",value:c},value:f._parse(new oe(i,p,i.path,c)),alwaysSet:c in i.data})}if(this._def.catchall instanceof ae){const c=this._def.unknownKeys;if(c==="passthrough")for(const f of u)d.push({key:{status:"valid",value:f},value:{status:"valid",value:i.data[f]}});else if(c==="strict")u.length>0&&(C(i,{code:T.unrecognized_keys,keys:u}),n.dirty());else if(c!=="strip")throw new Error("Internal ZodObject error: invalid unknownKeys value.")}else{const c=this._def.catchall;for(const f of u){const p=i.data[f];d.push({key:{status:"valid",value:f},value:c._parse(new oe(i,p,i.path,f)),alwaysSet:f in i.data})}}return i.common.async?Promise.resolve().then(async()=>{const c=[];for(const f of d){const p=await f.key,m=await f.value;c.push({key:p,value:m,alwaysSet:f.alwaysSet})}return c}).then(c=>z.mergeObjectSync(n,c)):z.mergeObjectSync(n,d)}get shape(){return this._def.shape()}strict(e){return x.errToObj,new H({...this._def,unknownKeys:"strict",...e!==void 0?{errorMap:(t,n)=>{var l,a;const i=((a=(l=this._def).errorMap)==null?void 0:a.call(l,t,n).message)??n.defaultError;return t.code==="unrecognized_keys"?{message:x.errToObj(e).message??i}:{message:i}}}:{}})}strip(){return new H({...this._def,unknownKeys:"strip"})}passthrough(){return new H({...this._def,unknownKeys:"passthrough"})}extend(e){return new H({...this._def,shape:()=>({...this._def.shape(),...e})})}merge(e){return new H({unknownKeys:e._def.unknownKeys,catchall:e._def.catchall,shape:()=>({...this._def.shape(),...e._def.shape()}),typeName:P.ZodObject})}setKey(e,t){return this.augment({[e]:t})}catchall(e){return new H({...this._def,catchall:e})}pick(e){const t={};for(const n of b.objectKeys(e))e[n]&&this.shape[n]&&(t[n]=this.shape[n]);return new H({...this._def,shape:()=>t})}omit(e){const t={};for(const n of b.objectKeys(this.shape))e[n]||(t[n]=this.shape[n]);return new H({...this._def,shape:()=>t})}deepPartial(){return Ce(this)}partial(e){const t={};for(const n of b.objectKeys(this.shape)){const i=this.shape[n];e&&!e[n]?t[n]=i:t[n]=i.optional()}return new H({...this._def,shape:()=>t})}required(e){const t={};for(const n of b.objectKeys(this.shape))if(e&&!e[n])t[n]=this.shape[n];else{let l=this.shape[n];for(;l instanceof ue;)l=l._def.innerType;t[n]=l}return new H({...this._def,shape:()=>t})}keyof(){return en(b.objectKeys(this.shape))}}H.create=(o,e)=>new H({shape:()=>o,unknownKeys:"strip",catchall:ae.create(),typeName:P.ZodObject,...L(e)}),H.strictCreate=(o,e)=>new H({shape:()=>o,unknownKeys:"strict",catchall:ae.create(),typeName:P.ZodObject,...L(e)}),H.lazycreate=(o,e)=>new H({shape:o,unknownKeys:"strip",catchall:ae.create(),typeName:P.ZodObject,...L(e)});class We extends U{_parse(e){const{ctx:t}=this._processInputParams(e),n=this._def.options;function i(l){for(const u of l)if(u.result.status==="valid")return u.result;for(const u of l)if(u.result.status==="dirty")return t.common.issues.push(...u.ctx.common.issues),u.result;const a=l.map(u=>new se(u.ctx.common.issues));return C(t,{code:T.invalid_union,unionErrors:a}),N}if(t.common.async)return Promise.all(n.map(async l=>{const a={...t,common:{...t.common,issues:[]},parent:null};return{result:await l._parseAsync({data:t.data,path:t.path,parent:a}),ctx:a}})).then(i);{let l;const a=[];for(const d of n){const c={...t,common:{...t.common,issues:[]},parent:null},f=d._parseSync({data:t.data,path:t.path,parent:c});if(f.status==="valid")return f;f.status==="dirty"&&!l&&(l={result:f,ctx:c}),c.common.issues.length&&a.push(c.common.issues)}if(l)return t.common.issues.push(...l.ctx.common.issues),l.result;const u=a.map(d=>new se(d));return C(t,{code:T.invalid_union,unionErrors:u}),N}}get options(){return this._def.options}}We.create=(o,e)=>new We({options:o,typeName:P.ZodUnion,...L(e)});function dt(o,e){const t=le(o),n=le(e);if(o===e)return{valid:!0,data:o};if(t===S.object&&n===S.object){const i=b.objectKeys(e),l=b.objectKeys(o).filter(u=>i.indexOf(u)!==-1),a={...o,...e};for(const u of l){const d=dt(o[u],e[u]);if(!d.valid)return{valid:!1};a[u]=d.data}return{valid:!0,data:a}}else if(t===S.array&&n===S.array){if(o.length!==e.length)return{valid:!1};const i=[];for(let l=0;l<o.length;l++){const a=o[l],u=e[l],d=dt(a,u);if(!d.valid)return{valid:!1};i.push(d.data)}return{valid:!0,data:i}}else return t===S.date&&n===S.date&&+o==+e?{valid:!0,data:o}:{valid:!1}}class Ye extends U{_parse(e){const{status:t,ctx:n}=this._processInputParams(e),i=(l,a)=>{if($t(l)||$t(a))return N;const u=dt(l.value,a.value);return u.valid?((Ot(l)||Ot(a))&&t.dirty(),{status:t.value,value:u.data}):(C(n,{code:T.invalid_intersection_types}),N)};return n.common.async?Promise.all([this._def.left._parseAsync({data:n.data,path:n.path,parent:n}),this._def.right._parseAsync({data:n.data,path:n.path,parent:n})]).then(([l,a])=>i(l,a)):i(this._def.left._parseSync({data:n.data,path:n.path,parent:n}),this._def.right._parseSync({data:n.data,path:n.path,parent:n}))}}Ye.create=(o,e,t)=>new Ye({left:o,right:e,typeName:P.ZodIntersection,...L(t)});class he extends U{_parse(e){const{status:t,ctx:n}=this._processInputParams(e);if(n.parsedType!==S.array)return C(n,{code:T.invalid_type,expected:S.array,received:n.parsedType}),N;if(n.data.length<this._def.items.length)return C(n,{code:T.too_small,minimum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),N;!this._def.rest&&n.data.length>this._def.items.length&&(C(n,{code:T.too_big,maximum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),t.dirty());const l=[...n.data].map((a,u)=>{const d=this._def.items[u]||this._def.rest;return d?d._parse(new oe(n,a,n.path,u)):null}).filter(a=>!!a);return n.common.async?Promise.all(l).then(a=>z.mergeArray(t,a)):z.mergeArray(t,l)}get items(){return this._def.items}rest(e){return new he({...this._def,rest:e})}}he.create=(o,e)=>{if(!Array.isArray(o))throw new Error("You must pass an array of schemas to z.tuple([ ... ])");return new he({items:o,typeName:P.ZodTuple,rest:null,...L(e)})};class Ze extends U{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){const{status:t,ctx:n}=this._processInputParams(e);if(n.parsedType!==S.object)return C(n,{code:T.invalid_type,expected:S.object,received:n.parsedType}),N;const i=[],l=this._def.keyType,a=this._def.valueType;for(const u in n.data)i.push({key:l._parse(new oe(n,u,n.path,u)),value:a._parse(new oe(n,n.data[u],n.path,u)),alwaysSet:u in n.data});return n.common.async?z.mergeObjectAsync(t,i):z.mergeObjectSync(t,i)}get element(){return this._def.valueType}static create(e,t,n){return t instanceof U?new Ze({keyType:e,valueType:t,typeName:P.ZodRecord,...L(n)}):new Ze({keyType:ie.create(),valueType:e,typeName:P.ZodRecord,...L(t)})}}class Qt extends U{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){const{status:t,ctx:n}=this._processInputParams(e);if(n.parsedType!==S.map)return C(n,{code:T.invalid_type,expected:S.map,received:n.parsedType}),N;const i=this._def.keyType,l=this._def.valueType,a=[...n.data.entries()].map(([u,d],c)=>({key:i._parse(new oe(n,u,n.path,[c,"key"])),value:l._parse(new oe(n,d,n.path,[c,"value"]))}));if(n.common.async){const u=new Map;return Promise.resolve().then(async()=>{for(const d of a){const c=await d.key,f=await d.value;if(c.status==="aborted"||f.status==="aborted")return N;(c.status==="dirty"||f.status==="dirty")&&t.dirty(),u.set(c.value,f.value)}return{status:t.value,value:u}})}else{const u=new Map;for(const d of a){const c=d.key,f=d.value;if(c.status==="aborted"||f.status==="aborted")return N;(c.status==="dirty"||f.status==="dirty")&&t.dirty(),u.set(c.value,f.value)}return{status:t.value,value:u}}}}Qt.create=(o,e,t)=>new Qt({valueType:e,keyType:o,typeName:P.ZodMap,...L(t)});class Fe extends U{_parse(e){const{status:t,ctx:n}=this._processInputParams(e);if(n.parsedType!==S.set)return C(n,{code:T.invalid_type,expected:S.set,received:n.parsedType}),N;const i=this._def;i.minSize!==null&&n.data.size<i.minSize.value&&(C(n,{code:T.too_small,minimum:i.minSize.value,type:"set",inclusive:!0,exact:!1,message:i.minSize.message}),t.dirty()),i.maxSize!==null&&n.data.size>i.maxSize.value&&(C(n,{code:T.too_big,maximum:i.maxSize.value,type:"set",inclusive:!0,exact:!1,message:i.maxSize.message}),t.dirty());const l=this._def.valueType;function a(d){const c=new Set;for(const f of d){if(f.status==="aborted")return N;f.status==="dirty"&&t.dirty(),c.add(f.value)}return{status:t.value,value:c}}const u=[...n.data.values()].map((d,c)=>l._parse(new oe(n,d,n.path,c)));return n.common.async?Promise.all(u).then(d=>a(d)):a(u)}min(e,t){return new Fe({...this._def,minSize:{value:e,message:x.toString(t)}})}max(e,t){return new Fe({...this._def,maxSize:{value:e,message:x.toString(t)}})}size(e,t){return this.min(e,t).max(e,t)}nonempty(e){return this.min(1,e)}}Fe.create=(o,e)=>new Fe({valueType:o,minSize:null,maxSize:null,typeName:P.ZodSet,...L(e)});class ft extends U{get schema(){return this._def.getter()}_parse(e){const{ctx:t}=this._processInputParams(e);return this._def.getter()._parse({data:t.data,path:t.path,parent:t})}}ft.create=(o,e)=>new ft({getter:o,typeName:P.ZodLazy,...L(e)});class jt extends U{_parse(e){if(e.data!==this._def.value){const t=this._getOrReturnCtx(e);return C(t,{received:t.data,code:T.invalid_literal,expected:this._def.value}),N}return{status:"valid",value:e.data}}get value(){return this._def.value}}jt.create=(o,e)=>new jt({value:o,typeName:P.ZodLiteral,...L(e)});function en(o,e){return new _e({values:o,typeName:P.ZodEnum,...L(e)})}class _e extends U{_parse(e){if(typeof e.data!="string"){const t=this._getOrReturnCtx(e),n=this._def.values;return C(t,{expected:b.joinValues(n),received:t.parsedType,code:T.invalid_type}),N}if(this._cache||(this._cache=new Set(this._def.values)),!this._cache.has(e.data)){const t=this._getOrReturnCtx(e),n=this._def.values;return C(t,{received:t.data,code:T.invalid_enum_value,options:n}),N}return Q(e.data)}get options(){return this._def.values}get enum(){const e={};for(const t of this._def.values)e[t]=t;return e}get Values(){const e={};for(const t of this._def.values)e[t]=t;return e}get Enum(){const e={};for(const t of this._def.values)e[t]=t;return e}extract(e,t=this._def){return _e.create(e,{...this._def,...t})}exclude(e,t=this._def){return _e.create(this.options.filter(n=>!e.includes(n)),{...this._def,...t})}}_e.create=en;class tn extends U{_parse(e){const t=b.getValidEnumValues(this._def.values),n=this._getOrReturnCtx(e);if(n.parsedType!==S.string&&n.parsedType!==S.number){const i=b.objectValues(t);return C(n,{expected:b.joinValues(i),received:n.parsedType,code:T.invalid_type}),N}if(this._cache||(this._cache=new Set(b.getValidEnumValues(this._def.values))),!this._cache.has(e.data)){const i=b.objectValues(t);return C(n,{received:n.data,code:T.invalid_enum_value,options:i}),N}return Q(e.data)}get enum(){return this._def.values}}tn.create=(o,e)=>new tn({values:o,typeName:P.ZodNativeEnum,...L(e)});class ze extends U{unwrap(){return this._def.type}_parse(e){const{ctx:t}=this._processInputParams(e);if(t.parsedType!==S.promise&&t.common.async===!1)return C(t,{code:T.invalid_type,expected:S.promise,received:t.parsedType}),N;const n=t.parsedType===S.promise?t.data:Promise.resolve(t.data);return Q(n.then(i=>this._def.type.parseAsync(i,{path:t.path,errorMap:t.common.contextualErrorMap})))}}ze.create=(o,e)=>new ze({type:o,typeName:P.ZodPromise,...L(e)});class Ee extends U{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===P.ZodEffects?this._def.schema.sourceType():this._def.schema}_parse(e){const{status:t,ctx:n}=this._processInputParams(e),i=this._def.effect||null,l={addIssue:a=>{C(n,a),a.fatal?t.abort():t.dirty()},get path(){return n.path}};if(l.addIssue=l.addIssue.bind(l),i.type==="preprocess"){const a=i.transform(n.data,l);if(n.common.async)return Promise.resolve(a).then(async u=>{if(t.value==="aborted")return N;const d=await this._def.schema._parseAsync({data:u,path:n.path,parent:n});return d.status==="aborted"?N:d.status==="dirty"||t.value==="dirty"?Ve(d.value):d});{if(t.value==="aborted")return N;const u=this._def.schema._parseSync({data:a,path:n.path,parent:n});return u.status==="aborted"?N:u.status==="dirty"||t.value==="dirty"?Ve(u.value):u}}if(i.type==="refinement"){const a=u=>{const d=i.refinement(u,l);if(n.common.async)return Promise.resolve(d);if(d instanceof Promise)throw new Error("Async refinement encountered during synchronous parse operation. Use .parseAsync instead.");return u};if(n.common.async===!1){const u=this._def.schema._parseSync({data:n.data,path:n.path,parent:n});return u.status==="aborted"?N:(u.status==="dirty"&&t.dirty(),a(u.value),{status:t.value,value:u.value})}else return this._def.schema._parseAsync({data:n.data,path:n.path,parent:n}).then(u=>u.status==="aborted"?N:(u.status==="dirty"&&t.dirty(),a(u.value).then(()=>({status:t.value,value:u.value}))))}if(i.type==="transform")if(n.common.async===!1){const a=this._def.schema._parseSync({data:n.data,path:n.path,parent:n});if(!ve(a))return N;const u=i.transform(a.value,l);if(u instanceof Promise)throw new Error("Asynchronous transform encountered during synchronous parse operation. Use .parseAsync instead.");return{status:t.value,value:u}}else return this._def.schema._parseAsync({data:n.data,path:n.path,parent:n}).then(a=>ve(a)?Promise.resolve(i.transform(a.value,l)).then(u=>({status:t.value,value:u})):N);b.assertNever(i)}}Ee.create=(o,e,t)=>new Ee({schema:o,typeName:P.ZodEffects,effect:e,...L(t)}),Ee.createWithPreprocess=(o,e,t)=>new Ee({schema:e,effect:{type:"preprocess",transform:o},typeName:P.ZodEffects,...L(t)});class ue extends U{_parse(e){return this._getType(e)===S.undefined?Q(void 0):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}}ue.create=(o,e)=>new ue({innerType:o,typeName:P.ZodOptional,...L(e)});class Se extends U{_parse(e){return this._getType(e)===S.null?Q(null):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}}Se.create=(o,e)=>new Se({innerType:o,typeName:P.ZodNullable,...L(e)});class pt extends U{_parse(e){const{ctx:t}=this._processInputParams(e);let n=t.data;return t.parsedType===S.undefined&&(n=this._def.defaultValue()),this._def.innerType._parse({data:n,path:t.path,parent:t})}removeDefault(){return this._def.innerType}}pt.create=(o,e)=>new pt({innerType:o,typeName:P.ZodDefault,defaultValue:typeof e.default=="function"?e.default:()=>e.default,...L(e)});class mt extends U{_parse(e){const{ctx:t}=this._processInputParams(e),n={...t,common:{...t.common,issues:[]}},i=this._def.innerType._parse({data:n.data,path:n.path,parent:{...n}});return He(i)?i.then(l=>({status:"valid",value:l.status==="valid"?l.value:this._def.catchValue({get error(){return new se(n.common.issues)},input:n.data})})):{status:"valid",value:i.status==="valid"?i.value:this._def.catchValue({get error(){return new se(n.common.issues)},input:n.data})}}removeCatch(){return this._def.innerType}}mt.create=(o,e)=>new mt({innerType:o,typeName:P.ZodCatch,catchValue:typeof e.catch=="function"?e.catch:()=>e.catch,...L(e)});class nn extends U{_parse(e){if(this._getType(e)!==S.nan){const n=this._getOrReturnCtx(e);return C(n,{code:T.invalid_type,expected:S.nan,received:n.parsedType}),N}return{status:"valid",value:e.data}}}nn.create=o=>new nn({typeName:P.ZodNaN,...L(o)});class Fi extends U{_parse(e){const{ctx:t}=this._processInputParams(e),n=t.data;return this._def.type._parse({data:n,path:t.path,parent:t})}unwrap(){return this._def.type}}class ht extends U{_parse(e){const{status:t,ctx:n}=this._processInputParams(e);if(n.common.async)return(async()=>{const l=await this._def.in._parseAsync({data:n.data,path:n.path,parent:n});return l.status==="aborted"?N:l.status==="dirty"?(t.dirty(),Ve(l.value)):this._def.out._parseAsync({data:l.value,path:n.path,parent:n})})();{const i=this._def.in._parseSync({data:n.data,path:n.path,parent:n});return i.status==="aborted"?N:i.status==="dirty"?(t.dirty(),{status:"dirty",value:i.value}):this._def.out._parseSync({data:i.value,path:n.path,parent:n})}}static create(e,t){return new ht({in:e,out:t,typeName:P.ZodPipeline})}}class gt extends U{_parse(e){const t=this._def.innerType._parse(e),n=i=>(ve(i)&&(i.value=Object.freeze(i.value)),i);return He(t)?t.then(i=>n(i)):n(t)}unwrap(){return this._def.innerType}}gt.create=(o,e)=>new gt({innerType:o,typeName:P.ZodReadonly,...L(e)});var P;(function(o){o.ZodString="ZodString",o.ZodNumber="ZodNumber",o.ZodNaN="ZodNaN",o.ZodBigInt="ZodBigInt",o.ZodBoolean="ZodBoolean",o.ZodDate="ZodDate",o.ZodSymbol="ZodSymbol",o.ZodUndefined="ZodUndefined",o.ZodNull="ZodNull",o.ZodAny="ZodAny",o.ZodUnknown="ZodUnknown",o.ZodNever="ZodNever",o.ZodVoid="ZodVoid",o.ZodArray="ZodArray",o.ZodObject="ZodObject",o.ZodUnion="ZodUnion",o.ZodDiscriminatedUnion="ZodDiscriminatedUnion",o.ZodIntersection="ZodIntersection",o.ZodTuple="ZodTuple",o.ZodRecord="ZodRecord",o.ZodMap="ZodMap",o.ZodSet="ZodSet",o.ZodFunction="ZodFunction",o.ZodLazy="ZodLazy",o.ZodLiteral="ZodLiteral",o.ZodEnum="ZodEnum",o.ZodEffects="ZodEffects",o.ZodNativeEnum="ZodNativeEnum",o.ZodOptional="ZodOptional",o.ZodNullable="ZodNullable",o.ZodDefault="ZodDefault",o.ZodCatch="ZodCatch",o.ZodPromise="ZodPromise",o.ZodBranded="ZodBranded",o.ZodPipeline="ZodPipeline",o.ZodReadonly="ZodReadonly"})(P||(P={}));const ge=ie.create,on=pe.create;me.create;const Ui=Je.create;Te.create;const rn=ct.create;ae.create;const Ue=re.create,bi=H.create,Gi=We.create;Ye.create,he.create;const Bi=Ze.create,qi=ft.create,$i=_e.create;ze.create,ue.create,Se.create;const xe={string:(o=>ie.create({...o,coerce:!0})),number:(o=>pe.create({...o,coerce:!0})),boolean:(o=>Je.create({...o,coerce:!0})),bigint:(o=>me.create({...o,coerce:!0})),date:(o=>Te.create({...o,coerce:!0}))};/**
128
98
  * @license
129
99
  * Copyright 2025 Google LLC
130
100
  * SPDX-License-Identifier: Apache-2.0
131
- */let uu,Bu;function gu(){return{geminiUrl:uu,vertexUrl:Bu}}function du(n,e,t){var A,i,o;if(!(!((A=n.httpOptions)===null||A===void 0)&&A.baseUrl)){const a=gu();return n.vertexai?(i=a.vertexUrl)!==null&&i!==void 0?i:e:(o=a.geminiUrl)!==null&&o!==void 0?o:t}return n.httpOptions.baseUrl}/**
101
+ */let Oi,Hi;function Ji(){return{geminiUrl:Oi,vertexUrl:Hi}}function Wi(o,e,t){var n,i,l;if(!(!((n=o.httpOptions)===null||n===void 0)&&n.baseUrl)){const a=Ji();return o.vertexai?(i=a.vertexUrl)!==null&&i!==void 0?i:e:(l=a.geminiUrl)!==null&&l!==void 0?l:t}return o.httpOptions.baseUrl}/**
132
102
  * @license
133
103
  * Copyright 2025 Google LLC
134
104
  * SPDX-License-Identifier: Apache-2.0
135
- */class le{}function Z(n,e){const t=/\{([^}]+)\}/g;return n.replace(t,(A,i)=>{if(Object.prototype.hasOwnProperty.call(e,i)){const o=e[i];return o!=null?String(o):""}else throw new Error(`Key '${i}' not found in valueMap.`)})}function s(n,e,t){for(let o=0;o<e.length-1;o++){const a=e[o];if(a.endsWith("[]")){const c=a.slice(0,-2);if(!(c in n))if(Array.isArray(t))n[c]=Array.from({length:t.length},()=>({}));else throw new Error(`Value must be a list given an array path ${a}`);if(Array.isArray(n[c])){const l=n[c];if(Array.isArray(t))for(let u=0;u<l.length;u++){const B=l[u];s(B,e.slice(o+1),t[u])}else for(const u of l)s(u,e.slice(o+1),t)}return}else if(a.endsWith("[0]")){const c=a.slice(0,-3);c in n||(n[c]=[{}]);const l=n[c];s(l[0],e.slice(o+1),t);return}(!n[a]||typeof n[a]!="object")&&(n[a]={}),n=n[a]}const A=e[e.length-1],i=n[A];if(i!==void 0){if(!t||typeof t=="object"&&Object.keys(t).length===0||t===i)return;if(typeof i=="object"&&typeof t=="object"&&i!==null&&t!==null)Object.assign(i,t);else throw new Error(`Cannot set value for an existing key. Key: ${A}`)}else n[A]=t}function r(n,e){try{if(e.length===1&&e[0]==="_self")return n;for(let t=0;t<e.length;t++){if(typeof n!="object"||n===null)return;const A=e[t];if(A.endsWith("[]")){const i=A.slice(0,-2);if(i in n){const o=n[i];return Array.isArray(o)?o.map(a=>r(a,e.slice(t+1))):void 0}else return}else n=n[A]}return n}catch(t){if(t instanceof TypeError)return;throw t}}/**
105
+ */class Ae{}function I(o,e){const t=/\{([^}]+)\}/g;return o.replace(t,(n,i)=>{if(Object.prototype.hasOwnProperty.call(e,i)){const l=e[i];return l!=null?String(l):""}else throw new Error(`Key '${i}' not found in valueMap.`)})}function s(o,e,t){for(let l=0;l<e.length-1;l++){const a=e[l];if(a.endsWith("[]")){const u=a.slice(0,-2);if(!(u in o))if(Array.isArray(t))o[u]=Array.from({length:t.length},()=>({}));else throw new Error(`Value must be a list given an array path ${a}`);if(Array.isArray(o[u])){const d=o[u];if(Array.isArray(t))for(let c=0;c<d.length;c++){const f=d[c];s(f,e.slice(l+1),t[c])}else for(const c of d)s(c,e.slice(l+1),t)}return}else if(a.endsWith("[0]")){const u=a.slice(0,-3);u in o||(o[u]=[{}]);const d=o[u];s(d[0],e.slice(l+1),t);return}(!o[a]||typeof o[a]!="object")&&(o[a]={}),o=o[a]}const n=e[e.length-1],i=o[n];if(i!==void 0){if(!t||typeof t=="object"&&Object.keys(t).length===0||t===i)return;if(typeof i=="object"&&typeof t=="object"&&i!==null&&t!==null)Object.assign(i,t);else throw new Error(`Cannot set value for an existing key. Key: ${n}`)}else o[n]=t}function r(o,e){try{if(e.length===1&&e[0]==="_self")return o;for(let t=0;t<e.length;t++){if(typeof o!="object"||o===null)return;const n=e[t];if(n.endsWith("[]")){const i=n.slice(0,-2);if(i in o){const l=o[i];return Array.isArray(l)?l.map(a=>r(a,e.slice(t+1))):void 0}else return}else o=o[n]}return o}catch(t){if(t instanceof TypeError)return;throw t}}/**
136
106
  * @license
137
107
  * Copyright 2025 Google LLC
138
108
  * SPDX-License-Identifier: Apache-2.0
139
- */var bi;(function(n){n.OUTCOME_UNSPECIFIED="OUTCOME_UNSPECIFIED",n.OUTCOME_OK="OUTCOME_OK",n.OUTCOME_FAILED="OUTCOME_FAILED",n.OUTCOME_DEADLINE_EXCEEDED="OUTCOME_DEADLINE_EXCEEDED"})(bi||(bi={}));var Vi;(function(n){n.LANGUAGE_UNSPECIFIED="LANGUAGE_UNSPECIFIED",n.PYTHON="PYTHON"})(Vi||(Vi={}));var j0;(function(n){n.TYPE_UNSPECIFIED="TYPE_UNSPECIFIED",n.STRING="STRING",n.NUMBER="NUMBER",n.INTEGER="INTEGER",n.BOOLEAN="BOOLEAN",n.ARRAY="ARRAY",n.OBJECT="OBJECT",n.NULL="NULL"})(j0||(j0={}));var Li;(function(n){n.HARM_CATEGORY_UNSPECIFIED="HARM_CATEGORY_UNSPECIFIED",n.HARM_CATEGORY_HATE_SPEECH="HARM_CATEGORY_HATE_SPEECH",n.HARM_CATEGORY_DANGEROUS_CONTENT="HARM_CATEGORY_DANGEROUS_CONTENT",n.HARM_CATEGORY_HARASSMENT="HARM_CATEGORY_HARASSMENT",n.HARM_CATEGORY_SEXUALLY_EXPLICIT="HARM_CATEGORY_SEXUALLY_EXPLICIT",n.HARM_CATEGORY_CIVIC_INTEGRITY="HARM_CATEGORY_CIVIC_INTEGRITY"})(Li||(Li={}));var Wi;(function(n){n.HARM_BLOCK_METHOD_UNSPECIFIED="HARM_BLOCK_METHOD_UNSPECIFIED",n.SEVERITY="SEVERITY",n.PROBABILITY="PROBABILITY"})(Wi||(Wi={}));var ji;(function(n){n.HARM_BLOCK_THRESHOLD_UNSPECIFIED="HARM_BLOCK_THRESHOLD_UNSPECIFIED",n.BLOCK_LOW_AND_ABOVE="BLOCK_LOW_AND_ABOVE",n.BLOCK_MEDIUM_AND_ABOVE="BLOCK_MEDIUM_AND_ABOVE",n.BLOCK_ONLY_HIGH="BLOCK_ONLY_HIGH",n.BLOCK_NONE="BLOCK_NONE",n.OFF="OFF"})(ji||(ji={}));var _i;(function(n){n.MODE_UNSPECIFIED="MODE_UNSPECIFIED",n.MODE_DYNAMIC="MODE_DYNAMIC"})(_i||(_i={}));var Xi;(function(n){n.AUTH_TYPE_UNSPECIFIED="AUTH_TYPE_UNSPECIFIED",n.NO_AUTH="NO_AUTH",n.API_KEY_AUTH="API_KEY_AUTH",n.HTTP_BASIC_AUTH="HTTP_BASIC_AUTH",n.GOOGLE_SERVICE_ACCOUNT_AUTH="GOOGLE_SERVICE_ACCOUNT_AUTH",n.OAUTH="OAUTH",n.OIDC_AUTH="OIDC_AUTH"})(Xi||(Xi={}));var Oi;(function(n){n.FINISH_REASON_UNSPECIFIED="FINISH_REASON_UNSPECIFIED",n.STOP="STOP",n.MAX_TOKENS="MAX_TOKENS",n.SAFETY="SAFETY",n.RECITATION="RECITATION",n.LANGUAGE="LANGUAGE",n.OTHER="OTHER",n.BLOCKLIST="BLOCKLIST",n.PROHIBITED_CONTENT="PROHIBITED_CONTENT",n.SPII="SPII",n.MALFORMED_FUNCTION_CALL="MALFORMED_FUNCTION_CALL",n.IMAGE_SAFETY="IMAGE_SAFETY",n.UNEXPECTED_TOOL_CALL="UNEXPECTED_TOOL_CALL"})(Oi||(Oi={}));var Ki;(function(n){n.HARM_PROBABILITY_UNSPECIFIED="HARM_PROBABILITY_UNSPECIFIED",n.NEGLIGIBLE="NEGLIGIBLE",n.LOW="LOW",n.MEDIUM="MEDIUM",n.HIGH="HIGH"})(Ki||(Ki={}));var Zi;(function(n){n.HARM_SEVERITY_UNSPECIFIED="HARM_SEVERITY_UNSPECIFIED",n.HARM_SEVERITY_NEGLIGIBLE="HARM_SEVERITY_NEGLIGIBLE",n.HARM_SEVERITY_LOW="HARM_SEVERITY_LOW",n.HARM_SEVERITY_MEDIUM="HARM_SEVERITY_MEDIUM",n.HARM_SEVERITY_HIGH="HARM_SEVERITY_HIGH"})(Zi||(Zi={}));var qi;(function(n){n.BLOCKED_REASON_UNSPECIFIED="BLOCKED_REASON_UNSPECIFIED",n.SAFETY="SAFETY",n.OTHER="OTHER",n.BLOCKLIST="BLOCKLIST",n.PROHIBITED_CONTENT="PROHIBITED_CONTENT"})(qi||(qi={}));var $i;(function(n){n.TRAFFIC_TYPE_UNSPECIFIED="TRAFFIC_TYPE_UNSPECIFIED",n.ON_DEMAND="ON_DEMAND",n.PROVISIONED_THROUGHPUT="PROVISIONED_THROUGHPUT"})($i||($i={}));var Ct;(function(n){n.MODALITY_UNSPECIFIED="MODALITY_UNSPECIFIED",n.TEXT="TEXT",n.IMAGE="IMAGE",n.AUDIO="AUDIO"})(Ct||(Ct={}));var eo;(function(n){n.MEDIA_RESOLUTION_UNSPECIFIED="MEDIA_RESOLUTION_UNSPECIFIED",n.MEDIA_RESOLUTION_LOW="MEDIA_RESOLUTION_LOW",n.MEDIA_RESOLUTION_MEDIUM="MEDIA_RESOLUTION_MEDIUM",n.MEDIA_RESOLUTION_HIGH="MEDIA_RESOLUTION_HIGH"})(eo||(eo={}));var In;(function(n){n.JOB_STATE_UNSPECIFIED="JOB_STATE_UNSPECIFIED",n.JOB_STATE_QUEUED="JOB_STATE_QUEUED",n.JOB_STATE_PENDING="JOB_STATE_PENDING",n.JOB_STATE_RUNNING="JOB_STATE_RUNNING",n.JOB_STATE_SUCCEEDED="JOB_STATE_SUCCEEDED",n.JOB_STATE_FAILED="JOB_STATE_FAILED",n.JOB_STATE_CANCELLING="JOB_STATE_CANCELLING",n.JOB_STATE_CANCELLED="JOB_STATE_CANCELLED",n.JOB_STATE_PAUSED="JOB_STATE_PAUSED",n.JOB_STATE_EXPIRED="JOB_STATE_EXPIRED",n.JOB_STATE_UPDATING="JOB_STATE_UPDATING",n.JOB_STATE_PARTIALLY_SUCCEEDED="JOB_STATE_PARTIALLY_SUCCEEDED"})(In||(In={}));var to;(function(n){n.ADAPTER_SIZE_UNSPECIFIED="ADAPTER_SIZE_UNSPECIFIED",n.ADAPTER_SIZE_ONE="ADAPTER_SIZE_ONE",n.ADAPTER_SIZE_TWO="ADAPTER_SIZE_TWO",n.ADAPTER_SIZE_FOUR="ADAPTER_SIZE_FOUR",n.ADAPTER_SIZE_EIGHT="ADAPTER_SIZE_EIGHT",n.ADAPTER_SIZE_SIXTEEN="ADAPTER_SIZE_SIXTEEN",n.ADAPTER_SIZE_THIRTY_TWO="ADAPTER_SIZE_THIRTY_TWO"})(to||(to={}));var no;(function(n){n.FEATURE_SELECTION_PREFERENCE_UNSPECIFIED="FEATURE_SELECTION_PREFERENCE_UNSPECIFIED",n.PRIORITIZE_QUALITY="PRIORITIZE_QUALITY",n.BALANCED="BALANCED",n.PRIORITIZE_COST="PRIORITIZE_COST"})(no||(no={}));var Ao;(function(n){n.UNSPECIFIED="UNSPECIFIED",n.BLOCKING="BLOCKING",n.NON_BLOCKING="NON_BLOCKING"})(Ao||(Ao={}));var io;(function(n){n.MODE_UNSPECIFIED="MODE_UNSPECIFIED",n.MODE_DYNAMIC="MODE_DYNAMIC"})(io||(io={}));var oo;(function(n){n.MODE_UNSPECIFIED="MODE_UNSPECIFIED",n.AUTO="AUTO",n.ANY="ANY",n.NONE="NONE"})(oo||(oo={}));var ro;(function(n){n.URL_RETRIEVAL_STATUS_UNSPECIFIED="URL_RETRIEVAL_STATUS_UNSPECIFIED",n.URL_RETRIEVAL_STATUS_SUCCESS="URL_RETRIEVAL_STATUS_SUCCESS",n.URL_RETRIEVAL_STATUS_ERROR="URL_RETRIEVAL_STATUS_ERROR"})(ro||(ro={}));var so;(function(n){n.BLOCK_LOW_AND_ABOVE="BLOCK_LOW_AND_ABOVE",n.BLOCK_MEDIUM_AND_ABOVE="BLOCK_MEDIUM_AND_ABOVE",n.BLOCK_ONLY_HIGH="BLOCK_ONLY_HIGH",n.BLOCK_NONE="BLOCK_NONE"})(so||(so={}));var ao;(function(n){n.DONT_ALLOW="DONT_ALLOW",n.ALLOW_ADULT="ALLOW_ADULT",n.ALLOW_ALL="ALLOW_ALL"})(ao||(ao={}));var co;(function(n){n.auto="auto",n.en="en",n.ja="ja",n.ko="ko",n.hi="hi"})(co||(co={}));var lo;(function(n){n.MASK_MODE_DEFAULT="MASK_MODE_DEFAULT",n.MASK_MODE_USER_PROVIDED="MASK_MODE_USER_PROVIDED",n.MASK_MODE_BACKGROUND="MASK_MODE_BACKGROUND",n.MASK_MODE_FOREGROUND="MASK_MODE_FOREGROUND",n.MASK_MODE_SEMANTIC="MASK_MODE_SEMANTIC"})(lo||(lo={}));var uo;(function(n){n.CONTROL_TYPE_DEFAULT="CONTROL_TYPE_DEFAULT",n.CONTROL_TYPE_CANNY="CONTROL_TYPE_CANNY",n.CONTROL_TYPE_SCRIBBLE="CONTROL_TYPE_SCRIBBLE",n.CONTROL_TYPE_FACE_MESH="CONTROL_TYPE_FACE_MESH"})(uo||(uo={}));var Bo;(function(n){n.SUBJECT_TYPE_DEFAULT="SUBJECT_TYPE_DEFAULT",n.SUBJECT_TYPE_PERSON="SUBJECT_TYPE_PERSON",n.SUBJECT_TYPE_ANIMAL="SUBJECT_TYPE_ANIMAL",n.SUBJECT_TYPE_PRODUCT="SUBJECT_TYPE_PRODUCT"})(Bo||(Bo={}));var go;(function(n){n.EDIT_MODE_DEFAULT="EDIT_MODE_DEFAULT",n.EDIT_MODE_INPAINT_REMOVAL="EDIT_MODE_INPAINT_REMOVAL",n.EDIT_MODE_INPAINT_INSERTION="EDIT_MODE_INPAINT_INSERTION",n.EDIT_MODE_OUTPAINT="EDIT_MODE_OUTPAINT",n.EDIT_MODE_CONTROLLED_EDITING="EDIT_MODE_CONTROLLED_EDITING",n.EDIT_MODE_STYLE="EDIT_MODE_STYLE",n.EDIT_MODE_BGSWAP="EDIT_MODE_BGSWAP",n.EDIT_MODE_PRODUCT_IMAGE="EDIT_MODE_PRODUCT_IMAGE"})(go||(go={}));var Eo;(function(n){n.STATE_UNSPECIFIED="STATE_UNSPECIFIED",n.PROCESSING="PROCESSING",n.ACTIVE="ACTIVE",n.FAILED="FAILED"})(Eo||(Eo={}));var fo;(function(n){n.SOURCE_UNSPECIFIED="SOURCE_UNSPECIFIED",n.UPLOADED="UPLOADED",n.GENERATED="GENERATED"})(fo||(fo={}));var Qo;(function(n){n.MODALITY_UNSPECIFIED="MODALITY_UNSPECIFIED",n.TEXT="TEXT",n.IMAGE="IMAGE",n.VIDEO="VIDEO",n.AUDIO="AUDIO",n.DOCUMENT="DOCUMENT"})(Qo||(Qo={}));var po;(function(n){n.START_SENSITIVITY_UNSPECIFIED="START_SENSITIVITY_UNSPECIFIED",n.START_SENSITIVITY_HIGH="START_SENSITIVITY_HIGH",n.START_SENSITIVITY_LOW="START_SENSITIVITY_LOW"})(po||(po={}));var ho;(function(n){n.END_SENSITIVITY_UNSPECIFIED="END_SENSITIVITY_UNSPECIFIED",n.END_SENSITIVITY_HIGH="END_SENSITIVITY_HIGH",n.END_SENSITIVITY_LOW="END_SENSITIVITY_LOW"})(ho||(ho={}));var wo;(function(n){n.ACTIVITY_HANDLING_UNSPECIFIED="ACTIVITY_HANDLING_UNSPECIFIED",n.START_OF_ACTIVITY_INTERRUPTS="START_OF_ACTIVITY_INTERRUPTS",n.NO_INTERRUPTION="NO_INTERRUPTION"})(wo||(wo={}));var mo;(function(n){n.TURN_COVERAGE_UNSPECIFIED="TURN_COVERAGE_UNSPECIFIED",n.TURN_INCLUDES_ONLY_ACTIVITY="TURN_INCLUDES_ONLY_ACTIVITY",n.TURN_INCLUDES_ALL_INPUT="TURN_INCLUDES_ALL_INPUT"})(mo||(mo={}));var Co;(function(n){n.SCHEDULING_UNSPECIFIED="SCHEDULING_UNSPECIFIED",n.SILENT="SILENT",n.WHEN_IDLE="WHEN_IDLE",n.INTERRUPT="INTERRUPT"})(Co||(Co={}));var Mo;(function(n){n.SCALE_UNSPECIFIED="SCALE_UNSPECIFIED",n.C_MAJOR_A_MINOR="C_MAJOR_A_MINOR",n.D_FLAT_MAJOR_B_FLAT_MINOR="D_FLAT_MAJOR_B_FLAT_MINOR",n.D_MAJOR_B_MINOR="D_MAJOR_B_MINOR",n.E_FLAT_MAJOR_C_MINOR="E_FLAT_MAJOR_C_MINOR",n.E_MAJOR_D_FLAT_MINOR="E_MAJOR_D_FLAT_MINOR",n.F_MAJOR_D_MINOR="F_MAJOR_D_MINOR",n.G_FLAT_MAJOR_E_FLAT_MINOR="G_FLAT_MAJOR_E_FLAT_MINOR",n.G_MAJOR_E_MINOR="G_MAJOR_E_MINOR",n.A_FLAT_MAJOR_F_MINOR="A_FLAT_MAJOR_F_MINOR",n.A_MAJOR_G_FLAT_MINOR="A_MAJOR_G_FLAT_MINOR",n.B_FLAT_MAJOR_G_MINOR="B_FLAT_MAJOR_G_MINOR",n.B_MAJOR_A_FLAT_MINOR="B_MAJOR_A_FLAT_MINOR"})(Mo||(Mo={}));var ue;(function(n){n.PLAYBACK_CONTROL_UNSPECIFIED="PLAYBACK_CONTROL_UNSPECIFIED",n.PLAY="PLAY",n.PAUSE="PAUSE",n.STOP="STOP",n.RESET_CONTEXT="RESET_CONTEXT"})(ue||(ue={}));class Se{get text(){var e,t,A,i,o,a,c,l;if(((i=(A=(t=(e=this.candidates)===null||e===void 0?void 0:e[0])===null||t===void 0?void 0:t.content)===null||A===void 0?void 0:A.parts)===null||i===void 0?void 0:i.length)===0)return;this.candidates&&this.candidates.length>1&&console.warn("there are multiple candidates in the response, returning text from the first one.");let u="",B=!1;const d=[];for(const f of(l=(c=(a=(o=this.candidates)===null||o===void 0?void 0:o[0])===null||a===void 0?void 0:a.content)===null||c===void 0?void 0:c.parts)!==null&&l!==void 0?l:[]){for(const[w,y]of Object.entries(f))w!=="text"&&w!=="thought"&&(y!==null||y!==void 0)&&d.push(w);if(typeof f.text=="string"){if(typeof f.thought=="boolean"&&f.thought)continue;B=!0,u+=f.text}}return d.length>0&&console.warn(`there are non-text parts ${d} in the response, returning concatenation of all text parts. Please refer to the non text parts for a full response from model.`),B?u:void 0}get data(){var e,t,A,i,o,a,c,l;if(((i=(A=(t=(e=this.candidates)===null||e===void 0?void 0:e[0])===null||t===void 0?void 0:t.content)===null||A===void 0?void 0:A.parts)===null||i===void 0?void 0:i.length)===0)return;this.candidates&&this.candidates.length>1&&console.warn("there are multiple candidates in the response, returning data from the first one.");let u="";const B=[];for(const d of(l=(c=(a=(o=this.candidates)===null||o===void 0?void 0:o[0])===null||a===void 0?void 0:a.content)===null||c===void 0?void 0:c.parts)!==null&&l!==void 0?l:[]){for(const[f,w]of Object.entries(d))f!=="inlineData"&&(w!==null||w!==void 0)&&B.push(f);d.inlineData&&typeof d.inlineData.data=="string"&&(u+=atob(d.inlineData.data))}return B.length>0&&console.warn(`there are non-data parts ${B} in the response, returning concatenation of all data parts. Please refer to the non data parts for a full response from model.`),u.length>0?btoa(u):void 0}get functionCalls(){var e,t,A,i,o,a,c,l;if(((i=(A=(t=(e=this.candidates)===null||e===void 0?void 0:e[0])===null||t===void 0?void 0:t.content)===null||A===void 0?void 0:A.parts)===null||i===void 0?void 0:i.length)===0)return;this.candidates&&this.candidates.length>1&&console.warn("there are multiple candidates in the response, returning function calls from the first one.");const u=(l=(c=(a=(o=this.candidates)===null||o===void 0?void 0:o[0])===null||a===void 0?void 0:a.content)===null||c===void 0?void 0:c.parts)===null||l===void 0?void 0:l.filter(B=>B.functionCall).map(B=>B.functionCall).filter(B=>B!==void 0);if((u==null?void 0:u.length)!==0)return u}get executableCode(){var e,t,A,i,o,a,c,l,u;if(((i=(A=(t=(e=this.candidates)===null||e===void 0?void 0:e[0])===null||t===void 0?void 0:t.content)===null||A===void 0?void 0:A.parts)===null||i===void 0?void 0:i.length)===0)return;this.candidates&&this.candidates.length>1&&console.warn("there are multiple candidates in the response, returning executable code from the first one.");const B=(l=(c=(a=(o=this.candidates)===null||o===void 0?void 0:o[0])===null||a===void 0?void 0:a.content)===null||c===void 0?void 0:c.parts)===null||l===void 0?void 0:l.filter(d=>d.executableCode).map(d=>d.executableCode).filter(d=>d!==void 0);if((B==null?void 0:B.length)!==0)return(u=B==null?void 0:B[0])===null||u===void 0?void 0:u.code}get codeExecutionResult(){var e,t,A,i,o,a,c,l,u;if(((i=(A=(t=(e=this.candidates)===null||e===void 0?void 0:e[0])===null||t===void 0?void 0:t.content)===null||A===void 0?void 0:A.parts)===null||i===void 0?void 0:i.length)===0)return;this.candidates&&this.candidates.length>1&&console.warn("there are multiple candidates in the response, returning code execution result from the first one.");const B=(l=(c=(a=(o=this.candidates)===null||o===void 0?void 0:o[0])===null||a===void 0?void 0:a.content)===null||c===void 0?void 0:c.parts)===null||l===void 0?void 0:l.filter(d=>d.codeExecutionResult).map(d=>d.codeExecutionResult).filter(d=>d!==void 0);if((B==null?void 0:B.length)!==0)return(u=B==null?void 0:B[0])===null||u===void 0?void 0:u.output}}class yo{}class Io{}class Eu{}class fu{}class Do{}class Fo{}class xo{}class Qu{}class vo{}class Uo{}class Yo{}class pu{}class Dn{constructor(e){const t={};for(const A of e.headers.entries())t[A[0]]=A[1];this.headers=t,this.responseInternal=e}json(){return this.responseInternal.json()}}class hu{}class wu{}class mu{get text(){var e,t,A;let i="",o=!1;const a=[];for(const c of(A=(t=(e=this.serverContent)===null||e===void 0?void 0:e.modelTurn)===null||t===void 0?void 0:t.parts)!==null&&A!==void 0?A:[]){for(const[l,u]of Object.entries(c))l!=="text"&&l!=="thought"&&u!==null&&a.push(l);if(typeof c.text=="string"){if(typeof c.thought=="boolean"&&c.thought)continue;o=!0,i+=c.text}}return a.length>0&&console.warn(`there are non-text parts ${a} in the response, returning concatenation of all text parts. Please refer to the non text parts for a full response from model.`),o?i:void 0}get data(){var e,t,A;let i="";const o=[];for(const a of(A=(t=(e=this.serverContent)===null||e===void 0?void 0:e.modelTurn)===null||t===void 0?void 0:t.parts)!==null&&A!==void 0?A:[]){for(const[c,l]of Object.entries(a))c!=="inlineData"&&l!==null&&o.push(c);a.inlineData&&typeof a.inlineData.data=="string"&&(i+=atob(a.inlineData.data))}return o.length>0&&console.warn(`there are non-data parts ${o} in the response, returning concatenation of all data parts. Please refer to the non data parts for a full response from model.`),i.length>0?btoa(i):void 0}}class Cu{get audioChunk(){if(this.serverContent&&this.serverContent.audioChunks&&this.serverContent.audioChunks.length>0)return this.serverContent.audioChunks[0]}}/**
109
+ */var sn;(function(o){o.OUTCOME_UNSPECIFIED="OUTCOME_UNSPECIFIED",o.OUTCOME_OK="OUTCOME_OK",o.OUTCOME_FAILED="OUTCOME_FAILED",o.OUTCOME_DEADLINE_EXCEEDED="OUTCOME_DEADLINE_EXCEEDED"})(sn||(sn={}));var ln;(function(o){o.LANGUAGE_UNSPECIFIED="LANGUAGE_UNSPECIFIED",o.PYTHON="PYTHON"})(ln||(ln={}));var j;(function(o){o.TYPE_UNSPECIFIED="TYPE_UNSPECIFIED",o.STRING="STRING",o.NUMBER="NUMBER",o.INTEGER="INTEGER",o.BOOLEAN="BOOLEAN",o.ARRAY="ARRAY",o.OBJECT="OBJECT",o.NULL="NULL"})(j||(j={}));var an;(function(o){o.HARM_CATEGORY_UNSPECIFIED="HARM_CATEGORY_UNSPECIFIED",o.HARM_CATEGORY_HATE_SPEECH="HARM_CATEGORY_HATE_SPEECH",o.HARM_CATEGORY_DANGEROUS_CONTENT="HARM_CATEGORY_DANGEROUS_CONTENT",o.HARM_CATEGORY_HARASSMENT="HARM_CATEGORY_HARASSMENT",o.HARM_CATEGORY_SEXUALLY_EXPLICIT="HARM_CATEGORY_SEXUALLY_EXPLICIT",o.HARM_CATEGORY_CIVIC_INTEGRITY="HARM_CATEGORY_CIVIC_INTEGRITY"})(an||(an={}));var un;(function(o){o.HARM_BLOCK_METHOD_UNSPECIFIED="HARM_BLOCK_METHOD_UNSPECIFIED",o.SEVERITY="SEVERITY",o.PROBABILITY="PROBABILITY"})(un||(un={}));var cn;(function(o){o.HARM_BLOCK_THRESHOLD_UNSPECIFIED="HARM_BLOCK_THRESHOLD_UNSPECIFIED",o.BLOCK_LOW_AND_ABOVE="BLOCK_LOW_AND_ABOVE",o.BLOCK_MEDIUM_AND_ABOVE="BLOCK_MEDIUM_AND_ABOVE",o.BLOCK_ONLY_HIGH="BLOCK_ONLY_HIGH",o.BLOCK_NONE="BLOCK_NONE",o.OFF="OFF"})(cn||(cn={}));var dn;(function(o){o.MODE_UNSPECIFIED="MODE_UNSPECIFIED",o.MODE_DYNAMIC="MODE_DYNAMIC"})(dn||(dn={}));var fn;(function(o){o.AUTH_TYPE_UNSPECIFIED="AUTH_TYPE_UNSPECIFIED",o.NO_AUTH="NO_AUTH",o.API_KEY_AUTH="API_KEY_AUTH",o.HTTP_BASIC_AUTH="HTTP_BASIC_AUTH",o.GOOGLE_SERVICE_ACCOUNT_AUTH="GOOGLE_SERVICE_ACCOUNT_AUTH",o.OAUTH="OAUTH",o.OIDC_AUTH="OIDC_AUTH"})(fn||(fn={}));var pn;(function(o){o.FINISH_REASON_UNSPECIFIED="FINISH_REASON_UNSPECIFIED",o.STOP="STOP",o.MAX_TOKENS="MAX_TOKENS",o.SAFETY="SAFETY",o.RECITATION="RECITATION",o.LANGUAGE="LANGUAGE",o.OTHER="OTHER",o.BLOCKLIST="BLOCKLIST",o.PROHIBITED_CONTENT="PROHIBITED_CONTENT",o.SPII="SPII",o.MALFORMED_FUNCTION_CALL="MALFORMED_FUNCTION_CALL",o.IMAGE_SAFETY="IMAGE_SAFETY",o.UNEXPECTED_TOOL_CALL="UNEXPECTED_TOOL_CALL"})(pn||(pn={}));var mn;(function(o){o.HARM_PROBABILITY_UNSPECIFIED="HARM_PROBABILITY_UNSPECIFIED",o.NEGLIGIBLE="NEGLIGIBLE",o.LOW="LOW",o.MEDIUM="MEDIUM",o.HIGH="HIGH"})(mn||(mn={}));var hn;(function(o){o.HARM_SEVERITY_UNSPECIFIED="HARM_SEVERITY_UNSPECIFIED",o.HARM_SEVERITY_NEGLIGIBLE="HARM_SEVERITY_NEGLIGIBLE",o.HARM_SEVERITY_LOW="HARM_SEVERITY_LOW",o.HARM_SEVERITY_MEDIUM="HARM_SEVERITY_MEDIUM",o.HARM_SEVERITY_HIGH="HARM_SEVERITY_HIGH"})(hn||(hn={}));var gn;(function(o){o.BLOCKED_REASON_UNSPECIFIED="BLOCKED_REASON_UNSPECIFIED",o.SAFETY="SAFETY",o.OTHER="OTHER",o.BLOCKLIST="BLOCKLIST",o.PROHIBITED_CONTENT="PROHIBITED_CONTENT"})(gn||(gn={}));var yn;(function(o){o.TRAFFIC_TYPE_UNSPECIFIED="TRAFFIC_TYPE_UNSPECIFIED",o.ON_DEMAND="ON_DEMAND",o.PROVISIONED_THROUGHPUT="PROVISIONED_THROUGHPUT"})(yn||(yn={}));var Ke;(function(o){o.MODALITY_UNSPECIFIED="MODALITY_UNSPECIFIED",o.TEXT="TEXT",o.IMAGE="IMAGE",o.AUDIO="AUDIO"})(Ke||(Ke={}));var vn;(function(o){o.MEDIA_RESOLUTION_UNSPECIFIED="MEDIA_RESOLUTION_UNSPECIFIED",o.MEDIA_RESOLUTION_LOW="MEDIA_RESOLUTION_LOW",o.MEDIA_RESOLUTION_MEDIUM="MEDIA_RESOLUTION_MEDIUM",o.MEDIA_RESOLUTION_HIGH="MEDIA_RESOLUTION_HIGH"})(vn||(vn={}));var yt;(function(o){o.JOB_STATE_UNSPECIFIED="JOB_STATE_UNSPECIFIED",o.JOB_STATE_QUEUED="JOB_STATE_QUEUED",o.JOB_STATE_PENDING="JOB_STATE_PENDING",o.JOB_STATE_RUNNING="JOB_STATE_RUNNING",o.JOB_STATE_SUCCEEDED="JOB_STATE_SUCCEEDED",o.JOB_STATE_FAILED="JOB_STATE_FAILED",o.JOB_STATE_CANCELLING="JOB_STATE_CANCELLING",o.JOB_STATE_CANCELLED="JOB_STATE_CANCELLED",o.JOB_STATE_PAUSED="JOB_STATE_PAUSED",o.JOB_STATE_EXPIRED="JOB_STATE_EXPIRED",o.JOB_STATE_UPDATING="JOB_STATE_UPDATING",o.JOB_STATE_PARTIALLY_SUCCEEDED="JOB_STATE_PARTIALLY_SUCCEEDED"})(yt||(yt={}));var Tn;(function(o){o.ADAPTER_SIZE_UNSPECIFIED="ADAPTER_SIZE_UNSPECIFIED",o.ADAPTER_SIZE_ONE="ADAPTER_SIZE_ONE",o.ADAPTER_SIZE_TWO="ADAPTER_SIZE_TWO",o.ADAPTER_SIZE_FOUR="ADAPTER_SIZE_FOUR",o.ADAPTER_SIZE_EIGHT="ADAPTER_SIZE_EIGHT",o.ADAPTER_SIZE_SIXTEEN="ADAPTER_SIZE_SIXTEEN",o.ADAPTER_SIZE_THIRTY_TWO="ADAPTER_SIZE_THIRTY_TWO"})(Tn||(Tn={}));var Cn;(function(o){o.FEATURE_SELECTION_PREFERENCE_UNSPECIFIED="FEATURE_SELECTION_PREFERENCE_UNSPECIFIED",o.PRIORITIZE_QUALITY="PRIORITIZE_QUALITY",o.BALANCED="BALANCED",o.PRIORITIZE_COST="PRIORITIZE_COST"})(Cn||(Cn={}));var _n;(function(o){o.UNSPECIFIED="UNSPECIFIED",o.BLOCKING="BLOCKING",o.NON_BLOCKING="NON_BLOCKING"})(_n||(_n={}));var En;(function(o){o.MODE_UNSPECIFIED="MODE_UNSPECIFIED",o.MODE_DYNAMIC="MODE_DYNAMIC"})(En||(En={}));var Sn;(function(o){o.MODE_UNSPECIFIED="MODE_UNSPECIFIED",o.AUTO="AUTO",o.ANY="ANY",o.NONE="NONE"})(Sn||(Sn={}));var xn;(function(o){o.URL_RETRIEVAL_STATUS_UNSPECIFIED="URL_RETRIEVAL_STATUS_UNSPECIFIED",o.URL_RETRIEVAL_STATUS_SUCCESS="URL_RETRIEVAL_STATUS_SUCCESS",o.URL_RETRIEVAL_STATUS_ERROR="URL_RETRIEVAL_STATUS_ERROR"})(xn||(xn={}));var An;(function(o){o.BLOCK_LOW_AND_ABOVE="BLOCK_LOW_AND_ABOVE",o.BLOCK_MEDIUM_AND_ABOVE="BLOCK_MEDIUM_AND_ABOVE",o.BLOCK_ONLY_HIGH="BLOCK_ONLY_HIGH",o.BLOCK_NONE="BLOCK_NONE"})(An||(An={}));var Mn;(function(o){o.DONT_ALLOW="DONT_ALLOW",o.ALLOW_ADULT="ALLOW_ADULT",o.ALLOW_ALL="ALLOW_ALL"})(Mn||(Mn={}));var In;(function(o){o.auto="auto",o.en="en",o.ja="ja",o.ko="ko",o.hi="hi"})(In||(In={}));var Rn;(function(o){o.MASK_MODE_DEFAULT="MASK_MODE_DEFAULT",o.MASK_MODE_USER_PROVIDED="MASK_MODE_USER_PROVIDED",o.MASK_MODE_BACKGROUND="MASK_MODE_BACKGROUND",o.MASK_MODE_FOREGROUND="MASK_MODE_FOREGROUND",o.MASK_MODE_SEMANTIC="MASK_MODE_SEMANTIC"})(Rn||(Rn={}));var wn;(function(o){o.CONTROL_TYPE_DEFAULT="CONTROL_TYPE_DEFAULT",o.CONTROL_TYPE_CANNY="CONTROL_TYPE_CANNY",o.CONTROL_TYPE_SCRIBBLE="CONTROL_TYPE_SCRIBBLE",o.CONTROL_TYPE_FACE_MESH="CONTROL_TYPE_FACE_MESH"})(wn||(wn={}));var Pn;(function(o){o.SUBJECT_TYPE_DEFAULT="SUBJECT_TYPE_DEFAULT",o.SUBJECT_TYPE_PERSON="SUBJECT_TYPE_PERSON",o.SUBJECT_TYPE_ANIMAL="SUBJECT_TYPE_ANIMAL",o.SUBJECT_TYPE_PRODUCT="SUBJECT_TYPE_PRODUCT"})(Pn||(Pn={}));var Nn;(function(o){o.EDIT_MODE_DEFAULT="EDIT_MODE_DEFAULT",o.EDIT_MODE_INPAINT_REMOVAL="EDIT_MODE_INPAINT_REMOVAL",o.EDIT_MODE_INPAINT_INSERTION="EDIT_MODE_INPAINT_INSERTION",o.EDIT_MODE_OUTPAINT="EDIT_MODE_OUTPAINT",o.EDIT_MODE_CONTROLLED_EDITING="EDIT_MODE_CONTROLLED_EDITING",o.EDIT_MODE_STYLE="EDIT_MODE_STYLE",o.EDIT_MODE_BGSWAP="EDIT_MODE_BGSWAP",o.EDIT_MODE_PRODUCT_IMAGE="EDIT_MODE_PRODUCT_IMAGE"})(Nn||(Nn={}));var kn;(function(o){o.STATE_UNSPECIFIED="STATE_UNSPECIFIED",o.PROCESSING="PROCESSING",o.ACTIVE="ACTIVE",o.FAILED="FAILED"})(kn||(kn={}));var Dn;(function(o){o.SOURCE_UNSPECIFIED="SOURCE_UNSPECIFIED",o.UPLOADED="UPLOADED",o.GENERATED="GENERATED"})(Dn||(Dn={}));var Ln;(function(o){o.MODALITY_UNSPECIFIED="MODALITY_UNSPECIFIED",o.TEXT="TEXT",o.IMAGE="IMAGE",o.VIDEO="VIDEO",o.AUDIO="AUDIO",o.DOCUMENT="DOCUMENT"})(Ln||(Ln={}));var Vn;(function(o){o.START_SENSITIVITY_UNSPECIFIED="START_SENSITIVITY_UNSPECIFIED",o.START_SENSITIVITY_HIGH="START_SENSITIVITY_HIGH",o.START_SENSITIVITY_LOW="START_SENSITIVITY_LOW"})(Vn||(Vn={}));var Fn;(function(o){o.END_SENSITIVITY_UNSPECIFIED="END_SENSITIVITY_UNSPECIFIED",o.END_SENSITIVITY_HIGH="END_SENSITIVITY_HIGH",o.END_SENSITIVITY_LOW="END_SENSITIVITY_LOW"})(Fn||(Fn={}));var Un;(function(o){o.ACTIVITY_HANDLING_UNSPECIFIED="ACTIVITY_HANDLING_UNSPECIFIED",o.START_OF_ACTIVITY_INTERRUPTS="START_OF_ACTIVITY_INTERRUPTS",o.NO_INTERRUPTION="NO_INTERRUPTION"})(Un||(Un={}));var bn;(function(o){o.TURN_COVERAGE_UNSPECIFIED="TURN_COVERAGE_UNSPECIFIED",o.TURN_INCLUDES_ONLY_ACTIVITY="TURN_INCLUDES_ONLY_ACTIVITY",o.TURN_INCLUDES_ALL_INPUT="TURN_INCLUDES_ALL_INPUT"})(bn||(bn={}));var Gn;(function(o){o.SCHEDULING_UNSPECIFIED="SCHEDULING_UNSPECIFIED",o.SILENT="SILENT",o.WHEN_IDLE="WHEN_IDLE",o.INTERRUPT="INTERRUPT"})(Gn||(Gn={}));var Bn;(function(o){o.SCALE_UNSPECIFIED="SCALE_UNSPECIFIED",o.C_MAJOR_A_MINOR="C_MAJOR_A_MINOR",o.D_FLAT_MAJOR_B_FLAT_MINOR="D_FLAT_MAJOR_B_FLAT_MINOR",o.D_MAJOR_B_MINOR="D_MAJOR_B_MINOR",o.E_FLAT_MAJOR_C_MINOR="E_FLAT_MAJOR_C_MINOR",o.E_MAJOR_D_FLAT_MINOR="E_MAJOR_D_FLAT_MINOR",o.F_MAJOR_D_MINOR="F_MAJOR_D_MINOR",o.G_FLAT_MAJOR_E_FLAT_MINOR="G_FLAT_MAJOR_E_FLAT_MINOR",o.G_MAJOR_E_MINOR="G_MAJOR_E_MINOR",o.A_FLAT_MAJOR_F_MINOR="A_FLAT_MAJOR_F_MINOR",o.A_MAJOR_G_FLAT_MINOR="A_MAJOR_G_FLAT_MINOR",o.B_FLAT_MAJOR_G_MINOR="B_FLAT_MAJOR_G_MINOR",o.B_MAJOR_A_FLAT_MINOR="B_MAJOR_A_FLAT_MINOR"})(Bn||(Bn={}));var Me;(function(o){o.PLAYBACK_CONTROL_UNSPECIFIED="PLAYBACK_CONTROL_UNSPECIFIED",o.PLAY="PLAY",o.PAUSE="PAUSE",o.STOP="STOP",o.RESET_CONTEXT="RESET_CONTEXT"})(Me||(Me={}));class be{get text(){var e,t,n,i,l,a,u,d;if(((i=(n=(t=(e=this.candidates)===null||e===void 0?void 0:e[0])===null||t===void 0?void 0:t.content)===null||n===void 0?void 0:n.parts)===null||i===void 0?void 0:i.length)===0)return;this.candidates&&this.candidates.length>1&&console.warn("there are multiple candidates in the response, returning text from the first one.");let c="",f=!1;const p=[];for(const m of(d=(u=(a=(l=this.candidates)===null||l===void 0?void 0:l[0])===null||a===void 0?void 0:a.content)===null||u===void 0?void 0:u.parts)!==null&&d!==void 0?d:[]){for(const[h,g]of Object.entries(m))h!=="text"&&h!=="thought"&&(g!==null||g!==void 0)&&p.push(h);if(typeof m.text=="string"){if(typeof m.thought=="boolean"&&m.thought)continue;f=!0,c+=m.text}}return p.length>0&&console.warn(`there are non-text parts ${p} in the response, returning concatenation of all text parts. Please refer to the non text parts for a full response from model.`),f?c:void 0}get data(){var e,t,n,i,l,a,u,d;if(((i=(n=(t=(e=this.candidates)===null||e===void 0?void 0:e[0])===null||t===void 0?void 0:t.content)===null||n===void 0?void 0:n.parts)===null||i===void 0?void 0:i.length)===0)return;this.candidates&&this.candidates.length>1&&console.warn("there are multiple candidates in the response, returning data from the first one.");let c="";const f=[];for(const p of(d=(u=(a=(l=this.candidates)===null||l===void 0?void 0:l[0])===null||a===void 0?void 0:a.content)===null||u===void 0?void 0:u.parts)!==null&&d!==void 0?d:[]){for(const[m,h]of Object.entries(p))m!=="inlineData"&&(h!==null||h!==void 0)&&f.push(m);p.inlineData&&typeof p.inlineData.data=="string"&&(c+=atob(p.inlineData.data))}return f.length>0&&console.warn(`there are non-data parts ${f} in the response, returning concatenation of all data parts. Please refer to the non data parts for a full response from model.`),c.length>0?btoa(c):void 0}get functionCalls(){var e,t,n,i,l,a,u,d;if(((i=(n=(t=(e=this.candidates)===null||e===void 0?void 0:e[0])===null||t===void 0?void 0:t.content)===null||n===void 0?void 0:n.parts)===null||i===void 0?void 0:i.length)===0)return;this.candidates&&this.candidates.length>1&&console.warn("there are multiple candidates in the response, returning function calls from the first one.");const c=(d=(u=(a=(l=this.candidates)===null||l===void 0?void 0:l[0])===null||a===void 0?void 0:a.content)===null||u===void 0?void 0:u.parts)===null||d===void 0?void 0:d.filter(f=>f.functionCall).map(f=>f.functionCall).filter(f=>f!==void 0);if((c==null?void 0:c.length)!==0)return c}get executableCode(){var e,t,n,i,l,a,u,d,c;if(((i=(n=(t=(e=this.candidates)===null||e===void 0?void 0:e[0])===null||t===void 0?void 0:t.content)===null||n===void 0?void 0:n.parts)===null||i===void 0?void 0:i.length)===0)return;this.candidates&&this.candidates.length>1&&console.warn("there are multiple candidates in the response, returning executable code from the first one.");const f=(d=(u=(a=(l=this.candidates)===null||l===void 0?void 0:l[0])===null||a===void 0?void 0:a.content)===null||u===void 0?void 0:u.parts)===null||d===void 0?void 0:d.filter(p=>p.executableCode).map(p=>p.executableCode).filter(p=>p!==void 0);if((f==null?void 0:f.length)!==0)return(c=f==null?void 0:f[0])===null||c===void 0?void 0:c.code}get codeExecutionResult(){var e,t,n,i,l,a,u,d,c;if(((i=(n=(t=(e=this.candidates)===null||e===void 0?void 0:e[0])===null||t===void 0?void 0:t.content)===null||n===void 0?void 0:n.parts)===null||i===void 0?void 0:i.length)===0)return;this.candidates&&this.candidates.length>1&&console.warn("there are multiple candidates in the response, returning code execution result from the first one.");const f=(d=(u=(a=(l=this.candidates)===null||l===void 0?void 0:l[0])===null||a===void 0?void 0:a.content)===null||u===void 0?void 0:u.parts)===null||d===void 0?void 0:d.filter(p=>p.codeExecutionResult).map(p=>p.codeExecutionResult).filter(p=>p!==void 0);if((f==null?void 0:f.length)!==0)return(c=f==null?void 0:f[0])===null||c===void 0?void 0:c.output}}class qn{}class $n{}class Yi{}class Zi{}class On{}class Hn{}class Jn{}class zi{}class Wn{}class Yn{}class Zn{}class Ki{}class vt{constructor(e){const t={};for(const n of e.headers.entries())t[n[0]]=n[1];this.headers=t,this.responseInternal=e}json(){return this.responseInternal.json()}}class Xi{}class Qi{}class ji{get text(){var e,t,n;let i="",l=!1;const a=[];for(const u of(n=(t=(e=this.serverContent)===null||e===void 0?void 0:e.modelTurn)===null||t===void 0?void 0:t.parts)!==null&&n!==void 0?n:[]){for(const[d,c]of Object.entries(u))d!=="text"&&d!=="thought"&&c!==null&&a.push(d);if(typeof u.text=="string"){if(typeof u.thought=="boolean"&&u.thought)continue;l=!0,i+=u.text}}return a.length>0&&console.warn(`there are non-text parts ${a} in the response, returning concatenation of all text parts. Please refer to the non text parts for a full response from model.`),l?i:void 0}get data(){var e,t,n;let i="";const l=[];for(const a of(n=(t=(e=this.serverContent)===null||e===void 0?void 0:e.modelTurn)===null||t===void 0?void 0:t.parts)!==null&&n!==void 0?n:[]){for(const[u,d]of Object.entries(a))u!=="inlineData"&&d!==null&&l.push(u);a.inlineData&&typeof a.inlineData.data=="string"&&(i+=atob(a.inlineData.data))}return l.length>0&&console.warn(`there are non-data parts ${l} in the response, returning concatenation of all data parts. Please refer to the non data parts for a full response from model.`),i.length>0?btoa(i):void 0}}class er{get audioChunk(){if(this.serverContent&&this.serverContent.audioChunks&&this.serverContent.audioChunks.length>0)return this.serverContent.audioChunks[0]}}/**
140
110
  * @license
141
111
  * Copyright 2025 Google LLC
142
112
  * SPDX-License-Identifier: Apache-2.0
143
- */function g0(n,e){if(!e||typeof e!="string")throw new Error("model is required and must be a string");if(n.isVertexAI()){if(e.startsWith("publishers/")||e.startsWith("projects/")||e.startsWith("models/"))return e;if(e.indexOf("/")>=0){const t=e.split("/",2);return`publishers/${t[0]}/models/${t[1]}`}else return`publishers/google/models/${e}`}else return e.startsWith("models/")||e.startsWith("tunedModels/")?e:`models/${e}`}function To(n,e){const t=g0(n,e);return t?t.startsWith("publishers/")&&n.isVertexAI()?`projects/${n.getProject()}/locations/${n.getLocation()}/${t}`:t.startsWith("models/")&&n.isVertexAI()?`projects/${n.getProject()}/locations/${n.getLocation()}/publishers/google/${t}`:t:""}function No(n,e){return Array.isArray(e)?e.map(t=>Mt(n,t)):[Mt(n,e)]}function Mt(n,e){if(typeof e=="object"&&e!==null)return e;throw new Error(`Could not parse input as Blob. Unsupported blob type: ${typeof e}`)}function Mu(n,e){const t=Mt(n,e);if(t.mimeType&&t.mimeType.startsWith("image/"))return t;throw new Error(`Unsupported mime type: ${t.mimeType}`)}function yu(n,e){const t=Mt(n,e);if(t.mimeType&&t.mimeType.startsWith("audio/"))return t;throw new Error(`Unsupported mime type: ${t.mimeType}`)}function Ro(n,e){if(e==null)throw new Error("PartUnion is required");if(typeof e=="object")return e;if(typeof e=="string")return{text:e};throw new Error(`Unsupported part type: ${typeof e}`)}function zo(n,e){if(e==null||Array.isArray(e)&&e.length===0)throw new Error("PartListUnion is required");return Array.isArray(e)?e.map(t=>Ro(n,t)):[Ro(n,e)]}function Fn(n){return n!=null&&typeof n=="object"&&"parts"in n&&Array.isArray(n.parts)}function So(n){return n!=null&&typeof n=="object"&&"functionCall"in n}function Go(n){return n!=null&&typeof n=="object"&&"functionResponse"in n}function z0(n,e){if(e==null)throw new Error("ContentUnion is required");return Fn(e)?e:{role:"user",parts:zo(n,e)}}function ko(n,e){if(!e)return[];if(n.isVertexAI()&&Array.isArray(e))return e.flatMap(t=>{const A=z0(n,t);return A.parts&&A.parts.length>0&&A.parts[0].text!==void 0?[A.parts[0].text]:[]});if(n.isVertexAI()){const t=z0(n,e);return t.parts&&t.parts.length>0&&t.parts[0].text!==void 0?[t.parts[0].text]:[]}return Array.isArray(e)?e.map(t=>z0(n,t)):[z0(n,e)]}function Z0(n,e){if(e==null||Array.isArray(e)&&e.length===0)throw new Error("contents are required");if(!Array.isArray(e)){if(So(e)||Go(e))throw new Error("To specify functionCall or functionResponse parts, please wrap them in a Content object, specifying the role for them");return[z0(n,e)]}const t=[],A=[],i=Fn(e[0]);for(const o of e){const a=Fn(o);if(a!=i)throw new Error("Mixing Content and Parts is not supported, please group the parts into a the appropriate Content objects and specify the roles for them");if(a)t.push(o);else{if(So(o)||Go(o))throw new Error("To specify functionCall or functionResponse parts, please wrap them, and any other parts, in Content objects as appropriate, specifying the role for them");A.push(o)}}return i||t.push({role:"user",parts:zo(n,A)}),t}const Iu=new Set(["type","format","title","description","default","items","minItems","maxItems","enum","properties","required","minProperties","maxProperties","minimum","maximum","minLength","maxLength","pattern","anyOf","propertyOrdering"]),Po=lu(["string","number","integer","object","array","boolean","null"]),Du=su([Po,ze(Po)]);function Fu(n=!0){const e=cu(()=>{const t=ru({type:Du.optional(),format:L2().optional(),title:L2().optional(),description:L2().optional(),default:Hi().optional(),items:e.optional(),minItems:ce.string().optional(),maxItems:ce.string().optional(),enum:ze(Hi()).optional(),properties:au(L2(),e).optional(),required:ze(L2()).optional(),minProperties:ce.string().optional(),maxProperties:ce.string().optional(),propertyOrdering:ze(L2()).optional(),minimum:Ji().optional(),maximum:Ji().optional(),minLength:ce.string().optional(),maxLength:ce.string().optional(),pattern:L2().optional(),anyOf:ze(e).optional(),additionalProperties:ou().optional()});return n?t.strict():t});return e}function xu(n,e){n.includes("null")&&(e.nullable=!0);const t=n.filter(A=>A!=="null");if(t.length===1)e.type=Object.keys(j0).includes(t[0].toUpperCase())?j0[t[0].toUpperCase()]:j0.TYPE_UNSPECIFIED;else{e.anyOf=[];for(const A of t)e.anyOf.push({type:Object.keys(j0).includes(A.toUpperCase())?j0[A.toUpperCase()]:j0.TYPE_UNSPECIFIED})}}function Be(n){const e={},t=["items"],A=["anyOf"],i=["properties"];if(n.type&&n.anyOf)throw new Error("type and anyOf cannot be both populated.");const o=n.anyOf;o!=null&&o.length==2&&(o[0].type==="null"?(e.nullable=!0,n=o[1]):o[1].type==="null"&&(e.nullable=!0,n=o[0])),n.type instanceof Array&&xu(n.type,e);for(const[a,c]of Object.entries(n))if(c!=null)if(a=="type"){if(c==="null")throw new Error("type: null can not be the only possible type for the field.");if(c instanceof Array)continue;e.type=Object.keys(j0).includes(c.toUpperCase())?c.toUpperCase():j0.TYPE_UNSPECIFIED}else if(t.includes(a))e[a]=Be(c);else if(A.includes(a)){const l=[];for(const u of c){if(u.type=="null"){e.nullable=!0;continue}l.push(Be(u))}e[a]=l}else if(i.includes(a)){const l={};for(const[u,B]of Object.entries(c))l[u]=Be(B);e[a]=l}else{if(a==="additionalProperties")continue;e[a]=c}return e}function yt(n,e){if(Object.keys(e).includes("$schema")){delete e.$schema;const t=Fu().parse(e);return Be(t)}else return Be(e)}function Jo(n,e){if(typeof e=="object")return e;if(typeof e=="string")return{voiceConfig:{prebuiltVoiceConfig:{voiceName:e}}};throw new Error(`Unsupported speechConfig type: ${typeof e}`)}function xn(n,e){if("multiSpeakerVoiceConfig"in e)throw new Error("multiSpeakerVoiceConfig is not supported in the live API.");return e}function Ge(n,e){if(e.functionDeclarations)for(const t of e.functionDeclarations)t.parameters&&(t.parameters=yt(n,t.parameters)),t.response&&(t.response=yt(n,t.response));return e}function ke(n,e){if(e==null)throw new Error("tools is required");if(!Array.isArray(e))throw new Error("tools is required and must be an array of Tools");const t=[];for(const A of e)t.push(A);return t}function vu(n,e,t,A=1){const i=!e.startsWith(`${t}/`)&&e.split("/").length===A;return n.isVertexAI()?e.startsWith("projects/")?e:e.startsWith("locations/")?`projects/${n.getProject()}/${e}`:e.startsWith(`${t}/`)?`projects/${n.getProject()}/locations/${n.getLocation()}/${e}`:i?`projects/${n.getProject()}/locations/${n.getLocation()}/${t}/${e}`:e:i?`${t}/${e}`:e}function x2(n,e){if(typeof e!="string")throw new Error("name must be a string");return vu(n,e,"cachedContents")}function Ho(n,e){switch(e){case"STATE_UNSPECIFIED":return"JOB_STATE_UNSPECIFIED";case"CREATING":return"JOB_STATE_RUNNING";case"ACTIVE":return"JOB_STATE_SUCCEEDED";case"FAILED":return"JOB_STATE_FAILED";default:return e}}function v2(n,e){if(typeof e!="string")throw new Error("fromImageBytes must be a string");return e}function Uu(n){return n!=null&&typeof n=="object"&&"name"in n}function Yu(n){return n!=null&&typeof n=="object"&&"video"in n}function Tu(n){return n!=null&&typeof n=="object"&&"uri"in n}function bo(n,e){var t;let A;if(Uu(e)&&(A=e.name),!(Tu(e)&&(A=e.uri,A===void 0))&&!(Yu(e)&&(A=(t=e.video)===null||t===void 0?void 0:t.uri,A===void 0))){if(typeof e=="string"&&(A=e),A===void 0)throw new Error("Could not extract file name from the provided input.");if(A.startsWith("https://")){const o=A.split("files/")[1].match(/[a-z0-9]+/);if(o===null)throw new Error(`Could not extract file name from URI ${A}`);A=o[0]}else A.startsWith("files/")&&(A=A.split("files/")[1]);return A}}function Vo(n,e){let t;return n.isVertexAI()?t=e?"publishers/google/models":"models":t=e?"models":"tunedModels",t}function Lo(n,e){for(const t of["models","tunedModels","publisherModels"])if(Nu(e,t))return e[t];return[]}function Nu(n,e){return n!==null&&typeof n=="object"&&e in n}function Ru(n,e={}){const t=n,A={name:t.name,description:t.description,parameters:Be(It(t.inputSchema))};return e.behavior&&(A.behavior=e.behavior),{functionDeclarations:[A]}}function zu(n,e={}){const t=[],A=new Set;for(const i of n){const o=i.name;if(A.has(o))throw new Error(`Duplicate function name ${o} found in MCP tools. Please ensure function names are unique.`);A.add(o);const a=Ru(i,e);a.functionDeclarations&&t.push(...a.functionDeclarations)}return{functionDeclarations:t}}function Su(n){const e=[];for(const t of n)e.push(It(t));return e}function Gu(n){const e={};for(const[t,A]of Object.entries(n)){const i=A;e[t]=It(i)}return e}function It(n){const e=new Set(["items"]),t=new Set(["anyOf"]),A=new Set(["properties"]),i={};for(const[o,a]of Object.entries(n))if(e.has(o))i[o]=It(a);else if(t.has(o))i[o]=Su(a);else if(A.has(o))i[o]=Gu(a);else if(o==="type"){const c=a.toUpperCase();i[o]=Object.keys(j0).includes(c)?c:j0.TYPE_UNSPECIFIED}else Iu.has(o)&&(i[o]=a);return i}/**
113
+ */function q(o,e){if(!e||typeof e!="string")throw new Error("model is required and must be a string");if(o.isVertexAI()){if(e.startsWith("publishers/")||e.startsWith("projects/")||e.startsWith("models/"))return e;if(e.indexOf("/")>=0){const t=e.split("/",2);return`publishers/${t[0]}/models/${t[1]}`}else return`publishers/google/models/${e}`}else return e.startsWith("models/")||e.startsWith("tunedModels/")?e:`models/${e}`}function zn(o,e){const t=q(o,e);return t?t.startsWith("publishers/")&&o.isVertexAI()?`projects/${o.getProject()}/locations/${o.getLocation()}/${t}`:t.startsWith("models/")&&o.isVertexAI()?`projects/${o.getProject()}/locations/${o.getLocation()}/publishers/google/${t}`:t:""}function Kn(o,e){return Array.isArray(e)?e.map(t=>Xe(o,t)):[Xe(o,e)]}function Xe(o,e){if(typeof e=="object"&&e!==null)return e;throw new Error(`Could not parse input as Blob. Unsupported blob type: ${typeof e}`)}function tr(o,e){const t=Xe(o,e);if(t.mimeType&&t.mimeType.startsWith("image/"))return t;throw new Error(`Unsupported mime type: ${t.mimeType}`)}function nr(o,e){const t=Xe(o,e);if(t.mimeType&&t.mimeType.startsWith("audio/"))return t;throw new Error(`Unsupported mime type: ${t.mimeType}`)}function Xn(o,e){if(e==null)throw new Error("PartUnion is required");if(typeof e=="object")return e;if(typeof e=="string")return{text:e};throw new Error(`Unsupported part type: ${typeof e}`)}function Qn(o,e){if(e==null||Array.isArray(e)&&e.length===0)throw new Error("PartListUnion is required");return Array.isArray(e)?e.map(t=>Xn(o,t)):[Xn(o,e)]}function Tt(o){return o!=null&&typeof o=="object"&&"parts"in o&&Array.isArray(o.parts)}function jn(o){return o!=null&&typeof o=="object"&&"functionCall"in o}function eo(o){return o!=null&&typeof o=="object"&&"functionResponse"in o}function K(o,e){if(e==null)throw new Error("ContentUnion is required");return Tt(e)?e:{role:"user",parts:Qn(o,e)}}function to(o,e){if(!e)return[];if(o.isVertexAI()&&Array.isArray(e))return e.flatMap(t=>{const n=K(o,t);return n.parts&&n.parts.length>0&&n.parts[0].text!==void 0?[n.parts[0].text]:[]});if(o.isVertexAI()){const t=K(o,e);return t.parts&&t.parts.length>0&&t.parts[0].text!==void 0?[t.parts[0].text]:[]}return Array.isArray(e)?e.map(t=>K(o,t)):[K(o,e)]}function te(o,e){if(e==null||Array.isArray(e)&&e.length===0)throw new Error("contents are required");if(!Array.isArray(e)){if(jn(e)||eo(e))throw new Error("To specify functionCall or functionResponse parts, please wrap them in a Content object, specifying the role for them");return[K(o,e)]}const t=[],n=[],i=Tt(e[0]);for(const l of e){const a=Tt(l);if(a!=i)throw new Error("Mixing Content and Parts is not supported, please group the parts into a the appropriate Content objects and specify the roles for them");if(a)t.push(l);else{if(jn(l)||eo(l))throw new Error("To specify functionCall or functionResponse parts, please wrap them, and any other parts, in Content objects as appropriate, specifying the role for them");n.push(l)}}return i||t.push({role:"user",parts:Qn(o,n)}),t}const or=new Set(["type","format","title","description","default","items","minItems","maxItems","enum","properties","required","minProperties","maxProperties","minimum","maximum","minLength","maxLength","pattern","anyOf","propertyOrdering"]),no=$i(["string","number","integer","object","array","boolean","null"]),ir=Gi([no,Ue(no)]);function rr(o=!0){const e=qi(()=>{const t=bi({type:ir.optional(),format:ge().optional(),title:ge().optional(),description:ge().optional(),default:rn().optional(),items:e.optional(),minItems:xe.string().optional(),maxItems:xe.string().optional(),enum:Ue(rn()).optional(),properties:Bi(ge(),e).optional(),required:Ue(ge()).optional(),minProperties:xe.string().optional(),maxProperties:xe.string().optional(),propertyOrdering:Ue(ge()).optional(),minimum:on().optional(),maximum:on().optional(),minLength:xe.string().optional(),maxLength:xe.string().optional(),pattern:ge().optional(),anyOf:Ue(e).optional(),additionalProperties:Ui().optional()});return o?t.strict():t});return e}function sr(o,e){o.includes("null")&&(e.nullable=!0);const t=o.filter(n=>n!=="null");if(t.length===1)e.type=Object.keys(j).includes(t[0].toUpperCase())?j[t[0].toUpperCase()]:j.TYPE_UNSPECIFIED;else{e.anyOf=[];for(const n of t)e.anyOf.push({type:Object.keys(j).includes(n.toUpperCase())?j[n.toUpperCase()]:j.TYPE_UNSPECIFIED})}}function Ie(o){const e={},t=["items"],n=["anyOf"],i=["properties"];if(o.type&&o.anyOf)throw new Error("type and anyOf cannot be both populated.");const l=o.anyOf;l!=null&&l.length==2&&(l[0].type==="null"?(e.nullable=!0,o=l[1]):l[1].type==="null"&&(e.nullable=!0,o=l[0])),o.type instanceof Array&&sr(o.type,e);for(const[a,u]of Object.entries(o))if(u!=null)if(a=="type"){if(u==="null")throw new Error("type: null can not be the only possible type for the field.");if(u instanceof Array)continue;e.type=Object.keys(j).includes(u.toUpperCase())?u.toUpperCase():j.TYPE_UNSPECIFIED}else if(t.includes(a))e[a]=Ie(u);else if(n.includes(a)){const d=[];for(const c of u){if(c.type=="null"){e.nullable=!0;continue}d.push(Ie(c))}e[a]=d}else if(i.includes(a)){const d={};for(const[c,f]of Object.entries(u))d[c]=Ie(f);e[a]=d}else{if(a==="additionalProperties")continue;e[a]=u}return e}function Qe(o,e){if(Object.keys(e).includes("$schema")){delete e.$schema;const t=rr().parse(e);return Ie(t)}else return Ie(e)}function oo(o,e){if(typeof e=="object")return e;if(typeof e=="string")return{voiceConfig:{prebuiltVoiceConfig:{voiceName:e}}};throw new Error(`Unsupported speechConfig type: ${typeof e}`)}function Ct(o,e){if("multiSpeakerVoiceConfig"in e)throw new Error("multiSpeakerVoiceConfig is not supported in the live API.");return e}function Ge(o,e){if(e.functionDeclarations)for(const t of e.functionDeclarations)t.parameters&&(t.parameters=Qe(o,t.parameters)),t.response&&(t.response=Qe(o,t.response));return e}function Be(o,e){if(e==null)throw new Error("tools is required");if(!Array.isArray(e))throw new Error("tools is required and must be an array of Tools");const t=[];for(const n of e)t.push(n);return t}function lr(o,e,t,n=1){const i=!e.startsWith(`${t}/`)&&e.split("/").length===n;return o.isVertexAI()?e.startsWith("projects/")?e:e.startsWith("locations/")?`projects/${o.getProject()}/${e}`:e.startsWith(`${t}/`)?`projects/${o.getProject()}/locations/${o.getLocation()}/${e}`:i?`projects/${o.getProject()}/locations/${o.getLocation()}/${t}/${e}`:e:i?`${t}/${e}`:e}function ce(o,e){if(typeof e!="string")throw new Error("name must be a string");return lr(o,e,"cachedContents")}function io(o,e){switch(e){case"STATE_UNSPECIFIED":return"JOB_STATE_UNSPECIFIED";case"CREATING":return"JOB_STATE_RUNNING";case"ACTIVE":return"JOB_STATE_SUCCEEDED";case"FAILED":return"JOB_STATE_FAILED";default:return e}}function de(o,e){if(typeof e!="string")throw new Error("fromImageBytes must be a string");return e}function ar(o){return o!=null&&typeof o=="object"&&"name"in o}function ur(o){return o!=null&&typeof o=="object"&&"video"in o}function cr(o){return o!=null&&typeof o=="object"&&"uri"in o}function ro(o,e){var t;let n;if(ar(e)&&(n=e.name),!(cr(e)&&(n=e.uri,n===void 0))&&!(ur(e)&&(n=(t=e.video)===null||t===void 0?void 0:t.uri,n===void 0))){if(typeof e=="string"&&(n=e),n===void 0)throw new Error("Could not extract file name from the provided input.");if(n.startsWith("https://")){const l=n.split("files/")[1].match(/[a-z0-9]+/);if(l===null)throw new Error(`Could not extract file name from URI ${n}`);n=l[0]}else n.startsWith("files/")&&(n=n.split("files/")[1]);return n}}function so(o,e){let t;return o.isVertexAI()?t=e?"publishers/google/models":"models":t=e?"models":"tunedModels",t}function lo(o,e){for(const t of["models","tunedModels","publisherModels"])if(dr(e,t))return e[t];return[]}function dr(o,e){return o!==null&&typeof o=="object"&&e in o}function fr(o,e={}){const t=o,n={name:t.name,description:t.description,parameters:Ie(je(t.inputSchema))};return e.behavior&&(n.behavior=e.behavior),{functionDeclarations:[n]}}function pr(o,e={}){const t=[],n=new Set;for(const i of o){const l=i.name;if(n.has(l))throw new Error(`Duplicate function name ${l} found in MCP tools. Please ensure function names are unique.`);n.add(l);const a=fr(i,e);a.functionDeclarations&&t.push(...a.functionDeclarations)}return{functionDeclarations:t}}function mr(o){const e=[];for(const t of o)e.push(je(t));return e}function hr(o){const e={};for(const[t,n]of Object.entries(o)){const i=n;e[t]=je(i)}return e}function je(o){const e=new Set(["items"]),t=new Set(["anyOf"]),n=new Set(["properties"]),i={};for(const[l,a]of Object.entries(o))if(e.has(l))i[l]=je(a);else if(t.has(l))i[l]=mr(a);else if(n.has(l))i[l]=hr(a);else if(l==="type"){const u=a.toUpperCase();i[l]=Object.keys(j).includes(u)?u:j.TYPE_UNSPECIFIED}else or.has(l)&&(i[l]=a);return i}/**
144
114
  * @license
145
115
  * Copyright 2025 Google LLC
146
116
  * SPDX-License-Identifier: Apache-2.0
147
- */function ku(n,e){const t={},A=r(e,["fps"]);A!=null&&s(t,["fps"],A);const i=r(e,["endOffset"]);i!=null&&s(t,["endOffset"],i);const o=r(e,["startOffset"]);return o!=null&&s(t,["startOffset"],o),t}function Pu(n,e){const t={};if(r(e,["displayName"])!==void 0)throw new Error("displayName parameter is not supported in Gemini API.");const A=r(e,["data"]);A!=null&&s(t,["data"],A);const i=r(e,["mimeType"]);return i!=null&&s(t,["mimeType"],i),t}function Ju(n,e){const t={};if(r(e,["displayName"])!==void 0)throw new Error("displayName parameter is not supported in Gemini API.");const A=r(e,["fileUri"]);A!=null&&s(t,["fileUri"],A);const i=r(e,["mimeType"]);return i!=null&&s(t,["mimeType"],i),t}function Hu(n,e){const t={},A=r(e,["videoMetadata"]);A!=null&&s(t,["videoMetadata"],ku(n,A));const i=r(e,["thought"]);i!=null&&s(t,["thought"],i);const o=r(e,["inlineData"]);o!=null&&s(t,["inlineData"],Pu(n,o));const a=r(e,["fileData"]);a!=null&&s(t,["fileData"],Ju(n,a));const c=r(e,["thoughtSignature"]);c!=null&&s(t,["thoughtSignature"],c);const l=r(e,["codeExecutionResult"]);l!=null&&s(t,["codeExecutionResult"],l);const u=r(e,["executableCode"]);u!=null&&s(t,["executableCode"],u);const B=r(e,["functionCall"]);B!=null&&s(t,["functionCall"],B);const d=r(e,["functionResponse"]);d!=null&&s(t,["functionResponse"],d);const f=r(e,["text"]);return f!=null&&s(t,["text"],f),t}function Wo(n,e){const t={},A=r(e,["parts"]);if(A!=null){let o=A;Array.isArray(o)&&(o=o.map(a=>Hu(n,a))),s(t,["parts"],o)}const i=r(e,["role"]);return i!=null&&s(t,["role"],i),t}function bu(n,e){const t={},A=r(e,["behavior"]);A!=null&&s(t,["behavior"],A);const i=r(e,["description"]);i!=null&&s(t,["description"],i);const o=r(e,["name"]);o!=null&&s(t,["name"],o);const a=r(e,["parameters"]);a!=null&&s(t,["parameters"],a);const c=r(e,["response"]);return c!=null&&s(t,["response"],c),t}function Vu(n,e){const t={},A=r(e,["startTime"]);A!=null&&s(t,["startTime"],A);const i=r(e,["endTime"]);return i!=null&&s(t,["endTime"],i),t}function Lu(n,e){const t={},A=r(e,["timeRangeFilter"]);return A!=null&&s(t,["timeRangeFilter"],Vu(n,A)),t}function Wu(n,e){const t={},A=r(e,["mode"]);A!=null&&s(t,["mode"],A);const i=r(e,["dynamicThreshold"]);return i!=null&&s(t,["dynamicThreshold"],i),t}function ju(n,e){const t={},A=r(e,["dynamicRetrievalConfig"]);return A!=null&&s(t,["dynamicRetrievalConfig"],Wu(n,A)),t}function _u(){return{}}function Xu(n,e){const t={},A=r(e,["functionDeclarations"]);if(A!=null){let l=A;Array.isArray(l)&&(l=l.map(u=>bu(n,u))),s(t,["functionDeclarations"],l)}if(r(e,["retrieval"])!==void 0)throw new Error("retrieval parameter is not supported in Gemini API.");const i=r(e,["googleSearch"]);i!=null&&s(t,["googleSearch"],Lu(n,i));const o=r(e,["googleSearchRetrieval"]);if(o!=null&&s(t,["googleSearchRetrieval"],ju(n,o)),r(e,["enterpriseWebSearch"])!==void 0)throw new Error("enterpriseWebSearch parameter is not supported in Gemini API.");if(r(e,["googleMaps"])!==void 0)throw new Error("googleMaps parameter is not supported in Gemini API.");r(e,["urlContext"])!=null&&s(t,["urlContext"],_u());const c=r(e,["codeExecution"]);return c!=null&&s(t,["codeExecution"],c),t}function Ou(n,e){const t={},A=r(e,["mode"]);A!=null&&s(t,["mode"],A);const i=r(e,["allowedFunctionNames"]);return i!=null&&s(t,["allowedFunctionNames"],i),t}function Ku(n,e){const t={},A=r(e,["latitude"]);A!=null&&s(t,["latitude"],A);const i=r(e,["longitude"]);return i!=null&&s(t,["longitude"],i),t}function Zu(n,e){const t={},A=r(e,["latLng"]);A!=null&&s(t,["latLng"],Ku(n,A));const i=r(e,["languageCode"]);return i!=null&&s(t,["languageCode"],i),t}function qu(n,e){const t={},A=r(e,["functionCallingConfig"]);A!=null&&s(t,["functionCallingConfig"],Ou(n,A));const i=r(e,["retrievalConfig"]);return i!=null&&s(t,["retrievalConfig"],Zu(n,i)),t}function $u(n,e,t){const A={},i=r(e,["ttl"]);t!==void 0&&i!=null&&s(t,["ttl"],i);const o=r(e,["expireTime"]);t!==void 0&&o!=null&&s(t,["expireTime"],o);const a=r(e,["displayName"]);t!==void 0&&a!=null&&s(t,["displayName"],a);const c=r(e,["contents"]);if(t!==void 0&&c!=null){let d=Z0(n,c);Array.isArray(d)&&(d=d.map(f=>Wo(n,f))),s(t,["contents"],d)}const l=r(e,["systemInstruction"]);t!==void 0&&l!=null&&s(t,["systemInstruction"],Wo(n,z0(n,l)));const u=r(e,["tools"]);if(t!==void 0&&u!=null){let d=u;Array.isArray(d)&&(d=d.map(f=>Xu(n,f))),s(t,["tools"],d)}const B=r(e,["toolConfig"]);if(t!==void 0&&B!=null&&s(t,["toolConfig"],qu(n,B)),r(e,["kmsKeyName"])!==void 0)throw new Error("kmsKeyName parameter is not supported in Gemini API.");return A}function eB(n,e){const t={},A=r(e,["model"]);A!=null&&s(t,["model"],To(n,A));const i=r(e,["config"]);return i!=null&&s(t,["config"],$u(n,i,t)),t}function tB(n,e){const t={},A=r(e,["name"]);A!=null&&s(t,["_url","name"],x2(n,A));const i=r(e,["config"]);return i!=null&&s(t,["config"],i),t}function nB(n,e){const t={},A=r(e,["name"]);A!=null&&s(t,["_url","name"],x2(n,A));const i=r(e,["config"]);return i!=null&&s(t,["config"],i),t}function AB(n,e,t){const A={},i=r(e,["ttl"]);t!==void 0&&i!=null&&s(t,["ttl"],i);const o=r(e,["expireTime"]);return t!==void 0&&o!=null&&s(t,["expireTime"],o),A}function iB(n,e){const t={},A=r(e,["name"]);A!=null&&s(t,["_url","name"],x2(n,A));const i=r(e,["config"]);return i!=null&&s(t,["config"],AB(n,i,t)),t}function oB(n,e,t){const A={},i=r(e,["pageSize"]);t!==void 0&&i!=null&&s(t,["_query","pageSize"],i);const o=r(e,["pageToken"]);return t!==void 0&&o!=null&&s(t,["_query","pageToken"],o),A}function rB(n,e){const t={},A=r(e,["config"]);return A!=null&&s(t,["config"],oB(n,A,t)),t}function sB(n,e){const t={},A=r(e,["fps"]);A!=null&&s(t,["fps"],A);const i=r(e,["endOffset"]);i!=null&&s(t,["endOffset"],i);const o=r(e,["startOffset"]);return o!=null&&s(t,["startOffset"],o),t}function aB(n,e){const t={},A=r(e,["displayName"]);A!=null&&s(t,["displayName"],A);const i=r(e,["data"]);i!=null&&s(t,["data"],i);const o=r(e,["mimeType"]);return o!=null&&s(t,["mimeType"],o),t}function cB(n,e){const t={},A=r(e,["displayName"]);A!=null&&s(t,["displayName"],A);const i=r(e,["fileUri"]);i!=null&&s(t,["fileUri"],i);const o=r(e,["mimeType"]);return o!=null&&s(t,["mimeType"],o),t}function lB(n,e){const t={},A=r(e,["videoMetadata"]);A!=null&&s(t,["videoMetadata"],sB(n,A));const i=r(e,["thought"]);i!=null&&s(t,["thought"],i);const o=r(e,["inlineData"]);o!=null&&s(t,["inlineData"],aB(n,o));const a=r(e,["fileData"]);a!=null&&s(t,["fileData"],cB(n,a));const c=r(e,["thoughtSignature"]);c!=null&&s(t,["thoughtSignature"],c);const l=r(e,["codeExecutionResult"]);l!=null&&s(t,["codeExecutionResult"],l);const u=r(e,["executableCode"]);u!=null&&s(t,["executableCode"],u);const B=r(e,["functionCall"]);B!=null&&s(t,["functionCall"],B);const d=r(e,["functionResponse"]);d!=null&&s(t,["functionResponse"],d);const f=r(e,["text"]);return f!=null&&s(t,["text"],f),t}function jo(n,e){const t={},A=r(e,["parts"]);if(A!=null){let o=A;Array.isArray(o)&&(o=o.map(a=>lB(n,a))),s(t,["parts"],o)}const i=r(e,["role"]);return i!=null&&s(t,["role"],i),t}function uB(n,e){const t={};if(r(e,["behavior"])!==void 0)throw new Error("behavior parameter is not supported in Vertex AI.");const A=r(e,["description"]);A!=null&&s(t,["description"],A);const i=r(e,["name"]);i!=null&&s(t,["name"],i);const o=r(e,["parameters"]);o!=null&&s(t,["parameters"],o);const a=r(e,["response"]);return a!=null&&s(t,["response"],a),t}function BB(n,e){const t={},A=r(e,["startTime"]);A!=null&&s(t,["startTime"],A);const i=r(e,["endTime"]);return i!=null&&s(t,["endTime"],i),t}function gB(n,e){const t={},A=r(e,["timeRangeFilter"]);return A!=null&&s(t,["timeRangeFilter"],BB(n,A)),t}function dB(n,e){const t={},A=r(e,["mode"]);A!=null&&s(t,["mode"],A);const i=r(e,["dynamicThreshold"]);return i!=null&&s(t,["dynamicThreshold"],i),t}function EB(n,e){const t={},A=r(e,["dynamicRetrievalConfig"]);return A!=null&&s(t,["dynamicRetrievalConfig"],dB(n,A)),t}function fB(){return{}}function QB(n,e){const t={},A=r(e,["apiKeyString"]);return A!=null&&s(t,["apiKeyString"],A),t}function pB(n,e){const t={},A=r(e,["apiKeyConfig"]);A!=null&&s(t,["apiKeyConfig"],QB(n,A));const i=r(e,["authType"]);i!=null&&s(t,["authType"],i);const o=r(e,["googleServiceAccountConfig"]);o!=null&&s(t,["googleServiceAccountConfig"],o);const a=r(e,["httpBasicAuthConfig"]);a!=null&&s(t,["httpBasicAuthConfig"],a);const c=r(e,["oauthConfig"]);c!=null&&s(t,["oauthConfig"],c);const l=r(e,["oidcConfig"]);return l!=null&&s(t,["oidcConfig"],l),t}function hB(n,e){const t={},A=r(e,["authConfig"]);return A!=null&&s(t,["authConfig"],pB(n,A)),t}function wB(n,e){const t={},A=r(e,["functionDeclarations"]);if(A!=null){let B=A;Array.isArray(B)&&(B=B.map(d=>uB(n,d))),s(t,["functionDeclarations"],B)}const i=r(e,["retrieval"]);i!=null&&s(t,["retrieval"],i);const o=r(e,["googleSearch"]);o!=null&&s(t,["googleSearch"],gB(n,o));const a=r(e,["googleSearchRetrieval"]);a!=null&&s(t,["googleSearchRetrieval"],EB(n,a)),r(e,["enterpriseWebSearch"])!=null&&s(t,["enterpriseWebSearch"],fB());const l=r(e,["googleMaps"]);if(l!=null&&s(t,["googleMaps"],hB(n,l)),r(e,["urlContext"])!==void 0)throw new Error("urlContext parameter is not supported in Vertex AI.");const u=r(e,["codeExecution"]);return u!=null&&s(t,["codeExecution"],u),t}function mB(n,e){const t={},A=r(e,["mode"]);A!=null&&s(t,["mode"],A);const i=r(e,["allowedFunctionNames"]);return i!=null&&s(t,["allowedFunctionNames"],i),t}function CB(n,e){const t={},A=r(e,["latitude"]);A!=null&&s(t,["latitude"],A);const i=r(e,["longitude"]);return i!=null&&s(t,["longitude"],i),t}function MB(n,e){const t={},A=r(e,["latLng"]);A!=null&&s(t,["latLng"],CB(n,A));const i=r(e,["languageCode"]);return i!=null&&s(t,["languageCode"],i),t}function yB(n,e){const t={},A=r(e,["functionCallingConfig"]);A!=null&&s(t,["functionCallingConfig"],mB(n,A));const i=r(e,["retrievalConfig"]);return i!=null&&s(t,["retrievalConfig"],MB(n,i)),t}function IB(n,e,t){const A={},i=r(e,["ttl"]);t!==void 0&&i!=null&&s(t,["ttl"],i);const o=r(e,["expireTime"]);t!==void 0&&o!=null&&s(t,["expireTime"],o);const a=r(e,["displayName"]);t!==void 0&&a!=null&&s(t,["displayName"],a);const c=r(e,["contents"]);if(t!==void 0&&c!=null){let f=Z0(n,c);Array.isArray(f)&&(f=f.map(w=>jo(n,w))),s(t,["contents"],f)}const l=r(e,["systemInstruction"]);t!==void 0&&l!=null&&s(t,["systemInstruction"],jo(n,z0(n,l)));const u=r(e,["tools"]);if(t!==void 0&&u!=null){let f=u;Array.isArray(f)&&(f=f.map(w=>wB(n,w))),s(t,["tools"],f)}const B=r(e,["toolConfig"]);t!==void 0&&B!=null&&s(t,["toolConfig"],yB(n,B));const d=r(e,["kmsKeyName"]);return t!==void 0&&d!=null&&s(t,["encryption_spec","kmsKeyName"],d),A}function DB(n,e){const t={},A=r(e,["model"]);A!=null&&s(t,["model"],To(n,A));const i=r(e,["config"]);return i!=null&&s(t,["config"],IB(n,i,t)),t}function FB(n,e){const t={},A=r(e,["name"]);A!=null&&s(t,["_url","name"],x2(n,A));const i=r(e,["config"]);return i!=null&&s(t,["config"],i),t}function xB(n,e){const t={},A=r(e,["name"]);A!=null&&s(t,["_url","name"],x2(n,A));const i=r(e,["config"]);return i!=null&&s(t,["config"],i),t}function vB(n,e,t){const A={},i=r(e,["ttl"]);t!==void 0&&i!=null&&s(t,["ttl"],i);const o=r(e,["expireTime"]);return t!==void 0&&o!=null&&s(t,["expireTime"],o),A}function UB(n,e){const t={},A=r(e,["name"]);A!=null&&s(t,["_url","name"],x2(n,A));const i=r(e,["config"]);return i!=null&&s(t,["config"],vB(n,i,t)),t}function YB(n,e,t){const A={},i=r(e,["pageSize"]);t!==void 0&&i!=null&&s(t,["_query","pageSize"],i);const o=r(e,["pageToken"]);return t!==void 0&&o!=null&&s(t,["_query","pageToken"],o),A}function TB(n,e){const t={},A=r(e,["config"]);return A!=null&&s(t,["config"],YB(n,A,t)),t}function Dt(n,e){const t={},A=r(e,["name"]);A!=null&&s(t,["name"],A);const i=r(e,["displayName"]);i!=null&&s(t,["displayName"],i);const o=r(e,["model"]);o!=null&&s(t,["model"],o);const a=r(e,["createTime"]);a!=null&&s(t,["createTime"],a);const c=r(e,["updateTime"]);c!=null&&s(t,["updateTime"],c);const l=r(e,["expireTime"]);l!=null&&s(t,["expireTime"],l);const u=r(e,["usageMetadata"]);return u!=null&&s(t,["usageMetadata"],u),t}function NB(){return{}}function RB(n,e){const t={},A=r(e,["nextPageToken"]);A!=null&&s(t,["nextPageToken"],A);const i=r(e,["cachedContents"]);if(i!=null){let o=i;Array.isArray(o)&&(o=o.map(a=>Dt(n,a))),s(t,["cachedContents"],o)}return t}function Ft(n,e){const t={},A=r(e,["name"]);A!=null&&s(t,["name"],A);const i=r(e,["displayName"]);i!=null&&s(t,["displayName"],i);const o=r(e,["model"]);o!=null&&s(t,["model"],o);const a=r(e,["createTime"]);a!=null&&s(t,["createTime"],a);const c=r(e,["updateTime"]);c!=null&&s(t,["updateTime"],c);const l=r(e,["expireTime"]);l!=null&&s(t,["expireTime"],l);const u=r(e,["usageMetadata"]);return u!=null&&s(t,["usageMetadata"],u),t}function zB(){return{}}function SB(n,e){const t={},A=r(e,["nextPageToken"]);A!=null&&s(t,["nextPageToken"],A);const i=r(e,["cachedContents"]);if(i!=null){let o=i;Array.isArray(o)&&(o=o.map(a=>Ft(n,a))),s(t,["cachedContents"],o)}return t}/**
117
+ */function gr(o,e){const t={},n=r(e,["fps"]);n!=null&&s(t,["fps"],n);const i=r(e,["endOffset"]);i!=null&&s(t,["endOffset"],i);const l=r(e,["startOffset"]);return l!=null&&s(t,["startOffset"],l),t}function yr(o,e){const t={};if(r(e,["displayName"])!==void 0)throw new Error("displayName parameter is not supported in Gemini API.");const n=r(e,["data"]);n!=null&&s(t,["data"],n);const i=r(e,["mimeType"]);return i!=null&&s(t,["mimeType"],i),t}function vr(o,e){const t={};if(r(e,["displayName"])!==void 0)throw new Error("displayName parameter is not supported in Gemini API.");const n=r(e,["fileUri"]);n!=null&&s(t,["fileUri"],n);const i=r(e,["mimeType"]);return i!=null&&s(t,["mimeType"],i),t}function Tr(o,e){const t={},n=r(e,["videoMetadata"]);n!=null&&s(t,["videoMetadata"],gr(o,n));const i=r(e,["thought"]);i!=null&&s(t,["thought"],i);const l=r(e,["inlineData"]);l!=null&&s(t,["inlineData"],yr(o,l));const a=r(e,["fileData"]);a!=null&&s(t,["fileData"],vr(o,a));const u=r(e,["thoughtSignature"]);u!=null&&s(t,["thoughtSignature"],u);const d=r(e,["codeExecutionResult"]);d!=null&&s(t,["codeExecutionResult"],d);const c=r(e,["executableCode"]);c!=null&&s(t,["executableCode"],c);const f=r(e,["functionCall"]);f!=null&&s(t,["functionCall"],f);const p=r(e,["functionResponse"]);p!=null&&s(t,["functionResponse"],p);const m=r(e,["text"]);return m!=null&&s(t,["text"],m),t}function ao(o,e){const t={},n=r(e,["parts"]);if(n!=null){let l=n;Array.isArray(l)&&(l=l.map(a=>Tr(o,a))),s(t,["parts"],l)}const i=r(e,["role"]);return i!=null&&s(t,["role"],i),t}function Cr(o,e){const t={},n=r(e,["behavior"]);n!=null&&s(t,["behavior"],n);const i=r(e,["description"]);i!=null&&s(t,["description"],i);const l=r(e,["name"]);l!=null&&s(t,["name"],l);const a=r(e,["parameters"]);a!=null&&s(t,["parameters"],a);const u=r(e,["response"]);return u!=null&&s(t,["response"],u),t}function _r(o,e){const t={},n=r(e,["startTime"]);n!=null&&s(t,["startTime"],n);const i=r(e,["endTime"]);return i!=null&&s(t,["endTime"],i),t}function Er(o,e){const t={},n=r(e,["timeRangeFilter"]);return n!=null&&s(t,["timeRangeFilter"],_r(o,n)),t}function Sr(o,e){const t={},n=r(e,["mode"]);n!=null&&s(t,["mode"],n);const i=r(e,["dynamicThreshold"]);return i!=null&&s(t,["dynamicThreshold"],i),t}function xr(o,e){const t={},n=r(e,["dynamicRetrievalConfig"]);return n!=null&&s(t,["dynamicRetrievalConfig"],Sr(o,n)),t}function Ar(){return{}}function Mr(o,e){const t={},n=r(e,["functionDeclarations"]);if(n!=null){let d=n;Array.isArray(d)&&(d=d.map(c=>Cr(o,c))),s(t,["functionDeclarations"],d)}if(r(e,["retrieval"])!==void 0)throw new Error("retrieval parameter is not supported in Gemini API.");const i=r(e,["googleSearch"]);i!=null&&s(t,["googleSearch"],Er(o,i));const l=r(e,["googleSearchRetrieval"]);if(l!=null&&s(t,["googleSearchRetrieval"],xr(o,l)),r(e,["enterpriseWebSearch"])!==void 0)throw new Error("enterpriseWebSearch parameter is not supported in Gemini API.");if(r(e,["googleMaps"])!==void 0)throw new Error("googleMaps parameter is not supported in Gemini API.");r(e,["urlContext"])!=null&&s(t,["urlContext"],Ar());const u=r(e,["codeExecution"]);return u!=null&&s(t,["codeExecution"],u),t}function Ir(o,e){const t={},n=r(e,["mode"]);n!=null&&s(t,["mode"],n);const i=r(e,["allowedFunctionNames"]);return i!=null&&s(t,["allowedFunctionNames"],i),t}function Rr(o,e){const t={},n=r(e,["latitude"]);n!=null&&s(t,["latitude"],n);const i=r(e,["longitude"]);return i!=null&&s(t,["longitude"],i),t}function wr(o,e){const t={},n=r(e,["latLng"]);n!=null&&s(t,["latLng"],Rr(o,n));const i=r(e,["languageCode"]);return i!=null&&s(t,["languageCode"],i),t}function Pr(o,e){const t={},n=r(e,["functionCallingConfig"]);n!=null&&s(t,["functionCallingConfig"],Ir(o,n));const i=r(e,["retrievalConfig"]);return i!=null&&s(t,["retrievalConfig"],wr(o,i)),t}function Nr(o,e,t){const n={},i=r(e,["ttl"]);t!==void 0&&i!=null&&s(t,["ttl"],i);const l=r(e,["expireTime"]);t!==void 0&&l!=null&&s(t,["expireTime"],l);const a=r(e,["displayName"]);t!==void 0&&a!=null&&s(t,["displayName"],a);const u=r(e,["contents"]);if(t!==void 0&&u!=null){let p=te(o,u);Array.isArray(p)&&(p=p.map(m=>ao(o,m))),s(t,["contents"],p)}const d=r(e,["systemInstruction"]);t!==void 0&&d!=null&&s(t,["systemInstruction"],ao(o,K(o,d)));const c=r(e,["tools"]);if(t!==void 0&&c!=null){let p=c;Array.isArray(p)&&(p=p.map(m=>Mr(o,m))),s(t,["tools"],p)}const f=r(e,["toolConfig"]);if(t!==void 0&&f!=null&&s(t,["toolConfig"],Pr(o,f)),r(e,["kmsKeyName"])!==void 0)throw new Error("kmsKeyName parameter is not supported in Gemini API.");return n}function kr(o,e){const t={},n=r(e,["model"]);n!=null&&s(t,["model"],zn(o,n));const i=r(e,["config"]);return i!=null&&s(t,["config"],Nr(o,i,t)),t}function Dr(o,e){const t={},n=r(e,["name"]);n!=null&&s(t,["_url","name"],ce(o,n));const i=r(e,["config"]);return i!=null&&s(t,["config"],i),t}function Lr(o,e){const t={},n=r(e,["name"]);n!=null&&s(t,["_url","name"],ce(o,n));const i=r(e,["config"]);return i!=null&&s(t,["config"],i),t}function Vr(o,e,t){const n={},i=r(e,["ttl"]);t!==void 0&&i!=null&&s(t,["ttl"],i);const l=r(e,["expireTime"]);return t!==void 0&&l!=null&&s(t,["expireTime"],l),n}function Fr(o,e){const t={},n=r(e,["name"]);n!=null&&s(t,["_url","name"],ce(o,n));const i=r(e,["config"]);return i!=null&&s(t,["config"],Vr(o,i,t)),t}function Ur(o,e,t){const n={},i=r(e,["pageSize"]);t!==void 0&&i!=null&&s(t,["_query","pageSize"],i);const l=r(e,["pageToken"]);return t!==void 0&&l!=null&&s(t,["_query","pageToken"],l),n}function br(o,e){const t={},n=r(e,["config"]);return n!=null&&s(t,["config"],Ur(o,n,t)),t}function Gr(o,e){const t={},n=r(e,["fps"]);n!=null&&s(t,["fps"],n);const i=r(e,["endOffset"]);i!=null&&s(t,["endOffset"],i);const l=r(e,["startOffset"]);return l!=null&&s(t,["startOffset"],l),t}function Br(o,e){const t={},n=r(e,["displayName"]);n!=null&&s(t,["displayName"],n);const i=r(e,["data"]);i!=null&&s(t,["data"],i);const l=r(e,["mimeType"]);return l!=null&&s(t,["mimeType"],l),t}function qr(o,e){const t={},n=r(e,["displayName"]);n!=null&&s(t,["displayName"],n);const i=r(e,["fileUri"]);i!=null&&s(t,["fileUri"],i);const l=r(e,["mimeType"]);return l!=null&&s(t,["mimeType"],l),t}function $r(o,e){const t={},n=r(e,["videoMetadata"]);n!=null&&s(t,["videoMetadata"],Gr(o,n));const i=r(e,["thought"]);i!=null&&s(t,["thought"],i);const l=r(e,["inlineData"]);l!=null&&s(t,["inlineData"],Br(o,l));const a=r(e,["fileData"]);a!=null&&s(t,["fileData"],qr(o,a));const u=r(e,["thoughtSignature"]);u!=null&&s(t,["thoughtSignature"],u);const d=r(e,["codeExecutionResult"]);d!=null&&s(t,["codeExecutionResult"],d);const c=r(e,["executableCode"]);c!=null&&s(t,["executableCode"],c);const f=r(e,["functionCall"]);f!=null&&s(t,["functionCall"],f);const p=r(e,["functionResponse"]);p!=null&&s(t,["functionResponse"],p);const m=r(e,["text"]);return m!=null&&s(t,["text"],m),t}function uo(o,e){const t={},n=r(e,["parts"]);if(n!=null){let l=n;Array.isArray(l)&&(l=l.map(a=>$r(o,a))),s(t,["parts"],l)}const i=r(e,["role"]);return i!=null&&s(t,["role"],i),t}function Or(o,e){const t={};if(r(e,["behavior"])!==void 0)throw new Error("behavior parameter is not supported in Vertex AI.");const n=r(e,["description"]);n!=null&&s(t,["description"],n);const i=r(e,["name"]);i!=null&&s(t,["name"],i);const l=r(e,["parameters"]);l!=null&&s(t,["parameters"],l);const a=r(e,["response"]);return a!=null&&s(t,["response"],a),t}function Hr(o,e){const t={},n=r(e,["startTime"]);n!=null&&s(t,["startTime"],n);const i=r(e,["endTime"]);return i!=null&&s(t,["endTime"],i),t}function Jr(o,e){const t={},n=r(e,["timeRangeFilter"]);return n!=null&&s(t,["timeRangeFilter"],Hr(o,n)),t}function Wr(o,e){const t={},n=r(e,["mode"]);n!=null&&s(t,["mode"],n);const i=r(e,["dynamicThreshold"]);return i!=null&&s(t,["dynamicThreshold"],i),t}function Yr(o,e){const t={},n=r(e,["dynamicRetrievalConfig"]);return n!=null&&s(t,["dynamicRetrievalConfig"],Wr(o,n)),t}function Zr(){return{}}function zr(o,e){const t={},n=r(e,["apiKeyString"]);return n!=null&&s(t,["apiKeyString"],n),t}function Kr(o,e){const t={},n=r(e,["apiKeyConfig"]);n!=null&&s(t,["apiKeyConfig"],zr(o,n));const i=r(e,["authType"]);i!=null&&s(t,["authType"],i);const l=r(e,["googleServiceAccountConfig"]);l!=null&&s(t,["googleServiceAccountConfig"],l);const a=r(e,["httpBasicAuthConfig"]);a!=null&&s(t,["httpBasicAuthConfig"],a);const u=r(e,["oauthConfig"]);u!=null&&s(t,["oauthConfig"],u);const d=r(e,["oidcConfig"]);return d!=null&&s(t,["oidcConfig"],d),t}function Xr(o,e){const t={},n=r(e,["authConfig"]);return n!=null&&s(t,["authConfig"],Kr(o,n)),t}function Qr(o,e){const t={},n=r(e,["functionDeclarations"]);if(n!=null){let f=n;Array.isArray(f)&&(f=f.map(p=>Or(o,p))),s(t,["functionDeclarations"],f)}const i=r(e,["retrieval"]);i!=null&&s(t,["retrieval"],i);const l=r(e,["googleSearch"]);l!=null&&s(t,["googleSearch"],Jr(o,l));const a=r(e,["googleSearchRetrieval"]);a!=null&&s(t,["googleSearchRetrieval"],Yr(o,a)),r(e,["enterpriseWebSearch"])!=null&&s(t,["enterpriseWebSearch"],Zr());const d=r(e,["googleMaps"]);if(d!=null&&s(t,["googleMaps"],Xr(o,d)),r(e,["urlContext"])!==void 0)throw new Error("urlContext parameter is not supported in Vertex AI.");const c=r(e,["codeExecution"]);return c!=null&&s(t,["codeExecution"],c),t}function jr(o,e){const t={},n=r(e,["mode"]);n!=null&&s(t,["mode"],n);const i=r(e,["allowedFunctionNames"]);return i!=null&&s(t,["allowedFunctionNames"],i),t}function es(o,e){const t={},n=r(e,["latitude"]);n!=null&&s(t,["latitude"],n);const i=r(e,["longitude"]);return i!=null&&s(t,["longitude"],i),t}function ts(o,e){const t={},n=r(e,["latLng"]);n!=null&&s(t,["latLng"],es(o,n));const i=r(e,["languageCode"]);return i!=null&&s(t,["languageCode"],i),t}function ns(o,e){const t={},n=r(e,["functionCallingConfig"]);n!=null&&s(t,["functionCallingConfig"],jr(o,n));const i=r(e,["retrievalConfig"]);return i!=null&&s(t,["retrievalConfig"],ts(o,i)),t}function os(o,e,t){const n={},i=r(e,["ttl"]);t!==void 0&&i!=null&&s(t,["ttl"],i);const l=r(e,["expireTime"]);t!==void 0&&l!=null&&s(t,["expireTime"],l);const a=r(e,["displayName"]);t!==void 0&&a!=null&&s(t,["displayName"],a);const u=r(e,["contents"]);if(t!==void 0&&u!=null){let m=te(o,u);Array.isArray(m)&&(m=m.map(h=>uo(o,h))),s(t,["contents"],m)}const d=r(e,["systemInstruction"]);t!==void 0&&d!=null&&s(t,["systemInstruction"],uo(o,K(o,d)));const c=r(e,["tools"]);if(t!==void 0&&c!=null){let m=c;Array.isArray(m)&&(m=m.map(h=>Qr(o,h))),s(t,["tools"],m)}const f=r(e,["toolConfig"]);t!==void 0&&f!=null&&s(t,["toolConfig"],ns(o,f));const p=r(e,["kmsKeyName"]);return t!==void 0&&p!=null&&s(t,["encryption_spec","kmsKeyName"],p),n}function is(o,e){const t={},n=r(e,["model"]);n!=null&&s(t,["model"],zn(o,n));const i=r(e,["config"]);return i!=null&&s(t,["config"],os(o,i,t)),t}function rs(o,e){const t={},n=r(e,["name"]);n!=null&&s(t,["_url","name"],ce(o,n));const i=r(e,["config"]);return i!=null&&s(t,["config"],i),t}function ss(o,e){const t={},n=r(e,["name"]);n!=null&&s(t,["_url","name"],ce(o,n));const i=r(e,["config"]);return i!=null&&s(t,["config"],i),t}function ls(o,e,t){const n={},i=r(e,["ttl"]);t!==void 0&&i!=null&&s(t,["ttl"],i);const l=r(e,["expireTime"]);return t!==void 0&&l!=null&&s(t,["expireTime"],l),n}function as(o,e){const t={},n=r(e,["name"]);n!=null&&s(t,["_url","name"],ce(o,n));const i=r(e,["config"]);return i!=null&&s(t,["config"],ls(o,i,t)),t}function us(o,e,t){const n={},i=r(e,["pageSize"]);t!==void 0&&i!=null&&s(t,["_query","pageSize"],i);const l=r(e,["pageToken"]);return t!==void 0&&l!=null&&s(t,["_query","pageToken"],l),n}function cs(o,e){const t={},n=r(e,["config"]);return n!=null&&s(t,["config"],us(o,n,t)),t}function et(o,e){const t={},n=r(e,["name"]);n!=null&&s(t,["name"],n);const i=r(e,["displayName"]);i!=null&&s(t,["displayName"],i);const l=r(e,["model"]);l!=null&&s(t,["model"],l);const a=r(e,["createTime"]);a!=null&&s(t,["createTime"],a);const u=r(e,["updateTime"]);u!=null&&s(t,["updateTime"],u);const d=r(e,["expireTime"]);d!=null&&s(t,["expireTime"],d);const c=r(e,["usageMetadata"]);return c!=null&&s(t,["usageMetadata"],c),t}function ds(){return{}}function fs(o,e){const t={},n=r(e,["nextPageToken"]);n!=null&&s(t,["nextPageToken"],n);const i=r(e,["cachedContents"]);if(i!=null){let l=i;Array.isArray(l)&&(l=l.map(a=>et(o,a))),s(t,["cachedContents"],l)}return t}function tt(o,e){const t={},n=r(e,["name"]);n!=null&&s(t,["name"],n);const i=r(e,["displayName"]);i!=null&&s(t,["displayName"],i);const l=r(e,["model"]);l!=null&&s(t,["model"],l);const a=r(e,["createTime"]);a!=null&&s(t,["createTime"],a);const u=r(e,["updateTime"]);u!=null&&s(t,["updateTime"],u);const d=r(e,["expireTime"]);d!=null&&s(t,["expireTime"],d);const c=r(e,["usageMetadata"]);return c!=null&&s(t,["usageMetadata"],c),t}function ps(){return{}}function ms(o,e){const t={},n=r(e,["nextPageToken"]);n!=null&&s(t,["nextPageToken"],n);const i=r(e,["cachedContents"]);if(i!=null){let l=i;Array.isArray(l)&&(l=l.map(a=>tt(o,a))),s(t,["cachedContents"],l)}return t}/**
148
118
  * @license
149
119
  * Copyright 2025 Google LLC
150
120
  * SPDX-License-Identifier: Apache-2.0
151
- */var ge;(function(n){n.PAGED_ITEM_BATCH_JOBS="batchJobs",n.PAGED_ITEM_MODELS="models",n.PAGED_ITEM_TUNING_JOBS="tuningJobs",n.PAGED_ITEM_FILES="files",n.PAGED_ITEM_CACHED_CONTENTS="cachedContents"})(ge||(ge={}));class xt{constructor(e,t,A,i){this.pageInternal=[],this.paramsInternal={},this.requestInternal=t,this.init(e,A,i)}init(e,t,A){var i,o;this.nameInternal=e,this.pageInternal=t[this.nameInternal]||[],this.idxInternal=0;let a={config:{}};A?typeof A=="object"?a=Object.assign({},A):a=A:a={config:{}},a.config&&(a.config.pageToken=t.nextPageToken),this.paramsInternal=a,this.pageInternalSize=(o=(i=a.config)===null||i===void 0?void 0:i.pageSize)!==null&&o!==void 0?o:this.pageInternal.length}initNextPage(e){this.init(this.nameInternal,e,this.paramsInternal)}get page(){return this.pageInternal}get name(){return this.nameInternal}get pageSize(){return this.pageInternalSize}get params(){return this.paramsInternal}get pageLength(){return this.pageInternal.length}getItem(e){return this.pageInternal[e]}[Symbol.asyncIterator](){return{next:async()=>{if(this.idxInternal>=this.pageLength)if(this.hasNextPage())await this.nextPage();else return{value:void 0,done:!0};const e=this.getItem(this.idxInternal);return this.idxInternal+=1,{value:e,done:!1}},return:async()=>({value:void 0,done:!0})}}async nextPage(){if(!this.hasNextPage())throw new Error("No more pages to fetch.");const e=await this.requestInternal(this.params);return this.initNextPage(e),this.page}hasNextPage(){var e;return((e=this.params.config)===null||e===void 0?void 0:e.pageToken)!==void 0}}/**
121
+ */var Re;(function(o){o.PAGED_ITEM_BATCH_JOBS="batchJobs",o.PAGED_ITEM_MODELS="models",o.PAGED_ITEM_TUNING_JOBS="tuningJobs",o.PAGED_ITEM_FILES="files",o.PAGED_ITEM_CACHED_CONTENTS="cachedContents"})(Re||(Re={}));class nt{constructor(e,t,n,i){this.pageInternal=[],this.paramsInternal={},this.requestInternal=t,this.init(e,n,i)}init(e,t,n){var i,l;this.nameInternal=e,this.pageInternal=t[this.nameInternal]||[],this.idxInternal=0;let a={config:{}};n?typeof n=="object"?a=Object.assign({},n):a=n:a={config:{}},a.config&&(a.config.pageToken=t.nextPageToken),this.paramsInternal=a,this.pageInternalSize=(l=(i=a.config)===null||i===void 0?void 0:i.pageSize)!==null&&l!==void 0?l:this.pageInternal.length}initNextPage(e){this.init(this.nameInternal,e,this.paramsInternal)}get page(){return this.pageInternal}get name(){return this.nameInternal}get pageSize(){return this.pageInternalSize}get params(){return this.paramsInternal}get pageLength(){return this.pageInternal.length}getItem(e){return this.pageInternal[e]}[Symbol.asyncIterator](){return{next:async()=>{if(this.idxInternal>=this.pageLength)if(this.hasNextPage())await this.nextPage();else return{value:void 0,done:!0};const e=this.getItem(this.idxInternal);return this.idxInternal+=1,{value:e,done:!1}},return:async()=>({value:void 0,done:!0})}}async nextPage(){if(!this.hasNextPage())throw new Error("No more pages to fetch.");const e=await this.requestInternal(this.params);return this.initNextPage(e),this.page}hasNextPage(){var e;return((e=this.params.config)===null||e===void 0?void 0:e.pageToken)!==void 0}}/**
152
122
  * @license
153
123
  * Copyright 2025 Google LLC
154
124
  * SPDX-License-Identifier: Apache-2.0
155
- */class GB extends le{constructor(e){super(),this.apiClient=e,this.list=async(t={})=>new xt(ge.PAGED_ITEM_CACHED_CONTENTS,A=>this.listInternal(A),await this.listInternal(t),t)}async create(e){var t,A,i,o;let a,c="",l={};if(this.apiClient.isVertexAI()){const u=DB(this.apiClient,e);return c=Z("cachedContents",u._url),l=u._query,delete u.config,delete u._url,delete u._query,a=this.apiClient.request({path:c,queryParams:l,body:JSON.stringify(u),httpMethod:"POST",httpOptions:(t=e.config)===null||t===void 0?void 0:t.httpOptions,abortSignal:(A=e.config)===null||A===void 0?void 0:A.abortSignal}).then(B=>B.json()),a.then(B=>Ft(this.apiClient,B))}else{const u=eB(this.apiClient,e);return c=Z("cachedContents",u._url),l=u._query,delete u.config,delete u._url,delete u._query,a=this.apiClient.request({path:c,queryParams:l,body:JSON.stringify(u),httpMethod:"POST",httpOptions:(i=e.config)===null||i===void 0?void 0:i.httpOptions,abortSignal:(o=e.config)===null||o===void 0?void 0:o.abortSignal}).then(B=>B.json()),a.then(B=>Dt(this.apiClient,B))}}async get(e){var t,A,i,o;let a,c="",l={};if(this.apiClient.isVertexAI()){const u=FB(this.apiClient,e);return c=Z("{name}",u._url),l=u._query,delete u.config,delete u._url,delete u._query,a=this.apiClient.request({path:c,queryParams:l,body:JSON.stringify(u),httpMethod:"GET",httpOptions:(t=e.config)===null||t===void 0?void 0:t.httpOptions,abortSignal:(A=e.config)===null||A===void 0?void 0:A.abortSignal}).then(B=>B.json()),a.then(B=>Ft(this.apiClient,B))}else{const u=tB(this.apiClient,e);return c=Z("{name}",u._url),l=u._query,delete u.config,delete u._url,delete u._query,a=this.apiClient.request({path:c,queryParams:l,body:JSON.stringify(u),httpMethod:"GET",httpOptions:(i=e.config)===null||i===void 0?void 0:i.httpOptions,abortSignal:(o=e.config)===null||o===void 0?void 0:o.abortSignal}).then(B=>B.json()),a.then(B=>Dt(this.apiClient,B))}}async delete(e){var t,A,i,o;let a,c="",l={};if(this.apiClient.isVertexAI()){const u=xB(this.apiClient,e);return c=Z("{name}",u._url),l=u._query,delete u.config,delete u._url,delete u._query,a=this.apiClient.request({path:c,queryParams:l,body:JSON.stringify(u),httpMethod:"DELETE",httpOptions:(t=e.config)===null||t===void 0?void 0:t.httpOptions,abortSignal:(A=e.config)===null||A===void 0?void 0:A.abortSignal}).then(B=>B.json()),a.then(()=>{const B=zB(),d=new Uo;return Object.assign(d,B),d})}else{const u=nB(this.apiClient,e);return c=Z("{name}",u._url),l=u._query,delete u.config,delete u._url,delete u._query,a=this.apiClient.request({path:c,queryParams:l,body:JSON.stringify(u),httpMethod:"DELETE",httpOptions:(i=e.config)===null||i===void 0?void 0:i.httpOptions,abortSignal:(o=e.config)===null||o===void 0?void 0:o.abortSignal}).then(B=>B.json()),a.then(()=>{const B=NB(),d=new Uo;return Object.assign(d,B),d})}}async update(e){var t,A,i,o;let a,c="",l={};if(this.apiClient.isVertexAI()){const u=UB(this.apiClient,e);return c=Z("{name}",u._url),l=u._query,delete u.config,delete u._url,delete u._query,a=this.apiClient.request({path:c,queryParams:l,body:JSON.stringify(u),httpMethod:"PATCH",httpOptions:(t=e.config)===null||t===void 0?void 0:t.httpOptions,abortSignal:(A=e.config)===null||A===void 0?void 0:A.abortSignal}).then(B=>B.json()),a.then(B=>Ft(this.apiClient,B))}else{const u=iB(this.apiClient,e);return c=Z("{name}",u._url),l=u._query,delete u.config,delete u._url,delete u._query,a=this.apiClient.request({path:c,queryParams:l,body:JSON.stringify(u),httpMethod:"PATCH",httpOptions:(i=e.config)===null||i===void 0?void 0:i.httpOptions,abortSignal:(o=e.config)===null||o===void 0?void 0:o.abortSignal}).then(B=>B.json()),a.then(B=>Dt(this.apiClient,B))}}async listInternal(e){var t,A,i,o;let a,c="",l={};if(this.apiClient.isVertexAI()){const u=TB(this.apiClient,e);return c=Z("cachedContents",u._url),l=u._query,delete u.config,delete u._url,delete u._query,a=this.apiClient.request({path:c,queryParams:l,body:JSON.stringify(u),httpMethod:"GET",httpOptions:(t=e.config)===null||t===void 0?void 0:t.httpOptions,abortSignal:(A=e.config)===null||A===void 0?void 0:A.abortSignal}).then(B=>B.json()),a.then(B=>{const d=SB(this.apiClient,B),f=new Yo;return Object.assign(f,d),f})}else{const u=rB(this.apiClient,e);return c=Z("cachedContents",u._url),l=u._query,delete u.config,delete u._url,delete u._query,a=this.apiClient.request({path:c,queryParams:l,body:JSON.stringify(u),httpMethod:"GET",httpOptions:(i=e.config)===null||i===void 0?void 0:i.httpOptions,abortSignal:(o=e.config)===null||o===void 0?void 0:o.abortSignal}).then(B=>B.json()),a.then(B=>{const d=RB(this.apiClient,B),f=new Yo;return Object.assign(f,d),f})}}}function _o(n){var e=typeof Symbol=="function"&&Symbol.iterator,t=e&&n[e],A=0;if(t)return t.call(n);if(n&&typeof n.length=="number")return{next:function(){return n&&A>=n.length&&(n=void 0),{value:n&&n[A++],done:!n}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")}function f0(n){return this instanceof f0?(this.v=n,this):new f0(n)}function de(n,e,t){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var A=t.apply(n,e||[]),i,o=[];return i=Object.create((typeof AsyncIterator=="function"?AsyncIterator:Object).prototype),c("next"),c("throw"),c("return",a),i[Symbol.asyncIterator]=function(){return this},i;function a(w){return function(y){return Promise.resolve(y).then(w,d)}}function c(w,y){A[w]&&(i[w]=function(F){return new Promise(function(R,S){o.push([w,F,R,S])>1||l(w,F)})},y&&(i[w]=y(i[w])))}function l(w,y){try{u(A[w](y))}catch(F){f(o[0][3],F)}}function u(w){w.value instanceof f0?Promise.resolve(w.value.v).then(B,d):f(o[0][2],w)}function B(w){l("next",w)}function d(w){l("throw",w)}function f(w,y){w(y),o.shift(),o.length&&l(o[0][0],o[0][1])}}function Pe(n){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var e=n[Symbol.asyncIterator],t;return e?e.call(n):(n=typeof _o=="function"?_o(n):n[Symbol.iterator](),t={},A("next"),A("throw"),A("return"),t[Symbol.asyncIterator]=function(){return this},t);function A(o){t[o]=n[o]&&function(a){return new Promise(function(c,l){a=n[o](a),i(c,l,a.done,a.value)})}}function i(o,a,c,l){Promise.resolve(l).then(function(u){o({value:u,done:c})},a)}}typeof SuppressedError=="function"&&SuppressedError;/**
125
+ */class hs extends Ae{constructor(e){super(),this.apiClient=e,this.list=async(t={})=>new nt(Re.PAGED_ITEM_CACHED_CONTENTS,n=>this.listInternal(n),await this.listInternal(t),t)}async create(e){var t,n,i,l;let a,u="",d={};if(this.apiClient.isVertexAI()){const c=is(this.apiClient,e);return u=I("cachedContents",c._url),d=c._query,delete c.config,delete c._url,delete c._query,a=this.apiClient.request({path:u,queryParams:d,body:JSON.stringify(c),httpMethod:"POST",httpOptions:(t=e.config)===null||t===void 0?void 0:t.httpOptions,abortSignal:(n=e.config)===null||n===void 0?void 0:n.abortSignal}).then(f=>f.json()),a.then(f=>tt(this.apiClient,f))}else{const c=kr(this.apiClient,e);return u=I("cachedContents",c._url),d=c._query,delete c.config,delete c._url,delete c._query,a=this.apiClient.request({path:u,queryParams:d,body:JSON.stringify(c),httpMethod:"POST",httpOptions:(i=e.config)===null||i===void 0?void 0:i.httpOptions,abortSignal:(l=e.config)===null||l===void 0?void 0:l.abortSignal}).then(f=>f.json()),a.then(f=>et(this.apiClient,f))}}async get(e){var t,n,i,l;let a,u="",d={};if(this.apiClient.isVertexAI()){const c=rs(this.apiClient,e);return u=I("{name}",c._url),d=c._query,delete c.config,delete c._url,delete c._query,a=this.apiClient.request({path:u,queryParams:d,body:JSON.stringify(c),httpMethod:"GET",httpOptions:(t=e.config)===null||t===void 0?void 0:t.httpOptions,abortSignal:(n=e.config)===null||n===void 0?void 0:n.abortSignal}).then(f=>f.json()),a.then(f=>tt(this.apiClient,f))}else{const c=Dr(this.apiClient,e);return u=I("{name}",c._url),d=c._query,delete c.config,delete c._url,delete c._query,a=this.apiClient.request({path:u,queryParams:d,body:JSON.stringify(c),httpMethod:"GET",httpOptions:(i=e.config)===null||i===void 0?void 0:i.httpOptions,abortSignal:(l=e.config)===null||l===void 0?void 0:l.abortSignal}).then(f=>f.json()),a.then(f=>et(this.apiClient,f))}}async delete(e){var t,n,i,l;let a,u="",d={};if(this.apiClient.isVertexAI()){const c=ss(this.apiClient,e);return u=I("{name}",c._url),d=c._query,delete c.config,delete c._url,delete c._query,a=this.apiClient.request({path:u,queryParams:d,body:JSON.stringify(c),httpMethod:"DELETE",httpOptions:(t=e.config)===null||t===void 0?void 0:t.httpOptions,abortSignal:(n=e.config)===null||n===void 0?void 0:n.abortSignal}).then(f=>f.json()),a.then(()=>{const f=ps(),p=new Yn;return Object.assign(p,f),p})}else{const c=Lr(this.apiClient,e);return u=I("{name}",c._url),d=c._query,delete c.config,delete c._url,delete c._query,a=this.apiClient.request({path:u,queryParams:d,body:JSON.stringify(c),httpMethod:"DELETE",httpOptions:(i=e.config)===null||i===void 0?void 0:i.httpOptions,abortSignal:(l=e.config)===null||l===void 0?void 0:l.abortSignal}).then(f=>f.json()),a.then(()=>{const f=ds(),p=new Yn;return Object.assign(p,f),p})}}async update(e){var t,n,i,l;let a,u="",d={};if(this.apiClient.isVertexAI()){const c=as(this.apiClient,e);return u=I("{name}",c._url),d=c._query,delete c.config,delete c._url,delete c._query,a=this.apiClient.request({path:u,queryParams:d,body:JSON.stringify(c),httpMethod:"PATCH",httpOptions:(t=e.config)===null||t===void 0?void 0:t.httpOptions,abortSignal:(n=e.config)===null||n===void 0?void 0:n.abortSignal}).then(f=>f.json()),a.then(f=>tt(this.apiClient,f))}else{const c=Fr(this.apiClient,e);return u=I("{name}",c._url),d=c._query,delete c.config,delete c._url,delete c._query,a=this.apiClient.request({path:u,queryParams:d,body:JSON.stringify(c),httpMethod:"PATCH",httpOptions:(i=e.config)===null||i===void 0?void 0:i.httpOptions,abortSignal:(l=e.config)===null||l===void 0?void 0:l.abortSignal}).then(f=>f.json()),a.then(f=>et(this.apiClient,f))}}async listInternal(e){var t,n,i,l;let a,u="",d={};if(this.apiClient.isVertexAI()){const c=cs(this.apiClient,e);return u=I("cachedContents",c._url),d=c._query,delete c.config,delete c._url,delete c._query,a=this.apiClient.request({path:u,queryParams:d,body:JSON.stringify(c),httpMethod:"GET",httpOptions:(t=e.config)===null||t===void 0?void 0:t.httpOptions,abortSignal:(n=e.config)===null||n===void 0?void 0:n.abortSignal}).then(f=>f.json()),a.then(f=>{const p=ms(this.apiClient,f),m=new Zn;return Object.assign(m,p),m})}else{const c=br(this.apiClient,e);return u=I("cachedContents",c._url),d=c._query,delete c.config,delete c._url,delete c._query,a=this.apiClient.request({path:u,queryParams:d,body:JSON.stringify(c),httpMethod:"GET",httpOptions:(i=e.config)===null||i===void 0?void 0:i.httpOptions,abortSignal:(l=e.config)===null||l===void 0?void 0:l.abortSignal}).then(f=>f.json()),a.then(f=>{const p=fs(this.apiClient,f),m=new Zn;return Object.assign(m,p),m})}}}function co(o){var e=typeof Symbol=="function"&&Symbol.iterator,t=e&&o[e],n=0;if(t)return t.call(o);if(o&&typeof o.length=="number")return{next:function(){return o&&n>=o.length&&(o=void 0),{value:o&&o[n++],done:!o}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")}function $(o){return this instanceof $?(this.v=o,this):new $(o)}function we(o,e,t){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var n=t.apply(o,e||[]),i,l=[];return i=Object.create((typeof AsyncIterator=="function"?AsyncIterator:Object).prototype),u("next"),u("throw"),u("return",a),i[Symbol.asyncIterator]=function(){return this},i;function a(h){return function(g){return Promise.resolve(g).then(h,p)}}function u(h,g){n[h]&&(i[h]=function(v){return new Promise(function(E,M){l.push([h,v,E,M])>1||d(h,v)})},g&&(i[h]=g(i[h])))}function d(h,g){try{c(n[h](g))}catch(v){m(l[0][3],v)}}function c(h){h.value instanceof $?Promise.resolve(h.value.v).then(f,p):m(l[0][2],h)}function f(h){d("next",h)}function p(h){d("throw",h)}function m(h,g){h(g),l.shift(),l.length&&d(l[0][0],l[0][1])}}function qe(o){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var e=o[Symbol.asyncIterator],t;return e?e.call(o):(o=typeof co=="function"?co(o):o[Symbol.iterator](),t={},n("next"),n("throw"),n("return"),t[Symbol.asyncIterator]=function(){return this},t);function n(l){t[l]=o[l]&&function(a){return new Promise(function(u,d){a=o[l](a),i(u,d,a.done,a.value)})}}function i(l,a,u,d){Promise.resolve(d).then(function(c){l({value:c,done:u})},a)}}typeof SuppressedError=="function"&&SuppressedError;/**
156
126
  * @license
157
127
  * Copyright 2025 Google LLC
158
128
  * SPDX-License-Identifier: Apache-2.0
159
- */function kB(n){var e;if(n.candidates==null||n.candidates.length===0)return!1;const t=(e=n.candidates[0])===null||e===void 0?void 0:e.content;return t===void 0?!1:Xo(t)}function Xo(n){if(n.parts===void 0||n.parts.length===0)return!1;for(const e of n.parts)if(e===void 0||Object.keys(e).length===0||!e.thought&&e.text!==void 0&&e.text==="")return!1;return!0}function PB(n){if(n.length!==0){for(const e of n)if(e.role!=="user"&&e.role!=="model")throw new Error(`Role must be user or model, but got ${e.role}.`)}}function Oo(n){if(n===void 0||n.length===0)return[];const e=[],t=n.length;let A=0;for(;A<t;)if(n[A].role==="user")e.push(n[A]),A++;else{const i=[];let o=!0;for(;A<t&&n[A].role==="model";)i.push(n[A]),o&&!Xo(n[A])&&(o=!1),A++;o?e.push(...i):e.pop()}return e}class JB{constructor(e,t){this.modelsModule=e,this.apiClient=t}create(e){return new HB(this.apiClient,this.modelsModule,e.model,e.config,structuredClone(e.history))}}class HB{constructor(e,t,A,i={},o=[]){this.apiClient=e,this.modelsModule=t,this.model=A,this.config=i,this.history=o,this.sendPromise=Promise.resolve(),PB(o)}async sendMessage(e){var t;await this.sendPromise;const A=z0(this.apiClient,e.message),i=this.modelsModule.generateContent({model:this.model,contents:this.getHistory(!0).concat(A),config:(t=e.config)!==null&&t!==void 0?t:this.config});return this.sendPromise=(async()=>{var o,a,c;const l=await i,u=(a=(o=l.candidates)===null||o===void 0?void 0:o[0])===null||a===void 0?void 0:a.content,B=l.automaticFunctionCallingHistory,d=this.getHistory(!0).length;let f=[];B!=null&&(f=(c=B.slice(d))!==null&&c!==void 0?c:[]);const w=u?[u]:[];this.recordHistory(A,w,f)})(),await this.sendPromise.catch(()=>{this.sendPromise=Promise.resolve()}),i}async sendMessageStream(e){var t;await this.sendPromise;const A=z0(this.apiClient,e.message),i=this.modelsModule.generateContentStream({model:this.model,contents:this.getHistory(!0).concat(A),config:(t=e.config)!==null&&t!==void 0?t:this.config});this.sendPromise=i.then(()=>{}).catch(()=>{});const o=await i;return this.processStreamResponse(o,A)}getHistory(e=!1){const t=e?Oo(this.history):this.history;return structuredClone(t)}processStreamResponse(e,t){var A,i;return de(this,arguments,function*(){var a,c,l,u;const B=[];try{for(var d=!0,f=Pe(e),w;w=yield f0(f.next()),a=w.done,!a;d=!0){u=w.value,d=!1;const y=u;if(kB(y)){const F=(i=(A=y.candidates)===null||A===void 0?void 0:A[0])===null||i===void 0?void 0:i.content;F!==void 0&&B.push(F)}yield yield f0(y)}}catch(y){c={error:y}}finally{try{!d&&!a&&(l=f.return)&&(yield f0(l.call(f)))}finally{if(c)throw c.error}}this.recordHistory(t,B)})}recordHistory(e,t,A){let i=[];t.length>0&&t.every(o=>o.role!==void 0)?i=t:i.push({role:"model",parts:[]}),A&&A.length>0?this.history.push(...Oo(A)):this.history.push(e),this.history.push(...i)}}/**
129
+ */function gs(o){var e;if(o.candidates==null||o.candidates.length===0)return!1;const t=(e=o.candidates[0])===null||e===void 0?void 0:e.content;return t===void 0?!1:fo(t)}function fo(o){if(o.parts===void 0||o.parts.length===0)return!1;for(const e of o.parts)if(e===void 0||Object.keys(e).length===0||!e.thought&&e.text!==void 0&&e.text==="")return!1;return!0}function ys(o){if(o.length!==0){for(const e of o)if(e.role!=="user"&&e.role!=="model")throw new Error(`Role must be user or model, but got ${e.role}.`)}}function po(o){if(o===void 0||o.length===0)return[];const e=[],t=o.length;let n=0;for(;n<t;)if(o[n].role==="user")e.push(o[n]),n++;else{const i=[];let l=!0;for(;n<t&&o[n].role==="model";)i.push(o[n]),l&&!fo(o[n])&&(l=!1),n++;l?e.push(...i):e.pop()}return e}class vs{constructor(e,t){this.modelsModule=e,this.apiClient=t}create(e){return new Ts(this.apiClient,this.modelsModule,e.model,e.config,structuredClone(e.history))}}class Ts{constructor(e,t,n,i={},l=[]){this.apiClient=e,this.modelsModule=t,this.model=n,this.config=i,this.history=l,this.sendPromise=Promise.resolve(),ys(l)}async sendMessage(e){var t;await this.sendPromise;const n=K(this.apiClient,e.message),i=this.modelsModule.generateContent({model:this.model,contents:this.getHistory(!0).concat(n),config:(t=e.config)!==null&&t!==void 0?t:this.config});return this.sendPromise=(async()=>{var l,a,u;const d=await i,c=(a=(l=d.candidates)===null||l===void 0?void 0:l[0])===null||a===void 0?void 0:a.content,f=d.automaticFunctionCallingHistory,p=this.getHistory(!0).length;let m=[];f!=null&&(m=(u=f.slice(p))!==null&&u!==void 0?u:[]);const h=c?[c]:[];this.recordHistory(n,h,m)})(),await this.sendPromise.catch(()=>{this.sendPromise=Promise.resolve()}),i}async sendMessageStream(e){var t;await this.sendPromise;const n=K(this.apiClient,e.message),i=this.modelsModule.generateContentStream({model:this.model,contents:this.getHistory(!0).concat(n),config:(t=e.config)!==null&&t!==void 0?t:this.config});this.sendPromise=i.then(()=>{}).catch(()=>{});const l=await i;return this.processStreamResponse(l,n)}getHistory(e=!1){const t=e?po(this.history):this.history;return structuredClone(t)}processStreamResponse(e,t){var n,i;return we(this,arguments,function*(){var a,u,d,c;const f=[];try{for(var p=!0,m=qe(e),h;h=yield $(m.next()),a=h.done,!a;p=!0){c=h.value,p=!1;const g=c;if(gs(g)){const v=(i=(n=g.candidates)===null||n===void 0?void 0:n[0])===null||i===void 0?void 0:i.content;v!==void 0&&f.push(v)}yield yield $(g)}}catch(g){u={error:g}}finally{try{!p&&!a&&(d=m.return)&&(yield $(d.call(m)))}finally{if(u)throw u.error}}this.recordHistory(t,f)})}recordHistory(e,t,n){let i=[];t.length>0&&t.every(l=>l.role!==void 0)?i=t:i.push({role:"model",parts:[]}),n&&n.length>0?this.history.push(...po(n)):this.history.push(e),this.history.push(...i)}}/**
160
130
  * @license
161
131
  * Copyright 2025 Google LLC
162
132
  * SPDX-License-Identifier: Apache-2.0
163
- */function bB(n,e,t){const A={},i=r(e,["pageSize"]);t!==void 0&&i!=null&&s(t,["_query","pageSize"],i);const o=r(e,["pageToken"]);return t!==void 0&&o!=null&&s(t,["_query","pageToken"],o),A}function VB(n,e){const t={},A=r(e,["config"]);return A!=null&&s(t,["config"],bB(n,A,t)),t}function LB(n,e){const t={},A=r(e,["details"]);A!=null&&s(t,["details"],A);const i=r(e,["message"]);i!=null&&s(t,["message"],i);const o=r(e,["code"]);return o!=null&&s(t,["code"],o),t}function WB(n,e){const t={},A=r(e,["name"]);A!=null&&s(t,["name"],A);const i=r(e,["displayName"]);i!=null&&s(t,["displayName"],i);const o=r(e,["mimeType"]);o!=null&&s(t,["mimeType"],o);const a=r(e,["sizeBytes"]);a!=null&&s(t,["sizeBytes"],a);const c=r(e,["createTime"]);c!=null&&s(t,["createTime"],c);const l=r(e,["expirationTime"]);l!=null&&s(t,["expirationTime"],l);const u=r(e,["updateTime"]);u!=null&&s(t,["updateTime"],u);const B=r(e,["sha256Hash"]);B!=null&&s(t,["sha256Hash"],B);const d=r(e,["uri"]);d!=null&&s(t,["uri"],d);const f=r(e,["downloadUri"]);f!=null&&s(t,["downloadUri"],f);const w=r(e,["state"]);w!=null&&s(t,["state"],w);const y=r(e,["source"]);y!=null&&s(t,["source"],y);const F=r(e,["videoMetadata"]);F!=null&&s(t,["videoMetadata"],F);const R=r(e,["error"]);return R!=null&&s(t,["error"],LB(n,R)),t}function jB(n,e){const t={},A=r(e,["file"]);A!=null&&s(t,["file"],WB(n,A));const i=r(e,["config"]);return i!=null&&s(t,["config"],i),t}function _B(n,e){const t={},A=r(e,["name"]);A!=null&&s(t,["_url","file"],bo(n,A));const i=r(e,["config"]);return i!=null&&s(t,["config"],i),t}function XB(n,e){const t={},A=r(e,["name"]);A!=null&&s(t,["_url","file"],bo(n,A));const i=r(e,["config"]);return i!=null&&s(t,["config"],i),t}function OB(n,e){const t={},A=r(e,["details"]);A!=null&&s(t,["details"],A);const i=r(e,["message"]);i!=null&&s(t,["message"],i);const o=r(e,["code"]);return o!=null&&s(t,["code"],o),t}function vn(n,e){const t={},A=r(e,["name"]);A!=null&&s(t,["name"],A);const i=r(e,["displayName"]);i!=null&&s(t,["displayName"],i);const o=r(e,["mimeType"]);o!=null&&s(t,["mimeType"],o);const a=r(e,["sizeBytes"]);a!=null&&s(t,["sizeBytes"],a);const c=r(e,["createTime"]);c!=null&&s(t,["createTime"],c);const l=r(e,["expirationTime"]);l!=null&&s(t,["expirationTime"],l);const u=r(e,["updateTime"]);u!=null&&s(t,["updateTime"],u);const B=r(e,["sha256Hash"]);B!=null&&s(t,["sha256Hash"],B);const d=r(e,["uri"]);d!=null&&s(t,["uri"],d);const f=r(e,["downloadUri"]);f!=null&&s(t,["downloadUri"],f);const w=r(e,["state"]);w!=null&&s(t,["state"],w);const y=r(e,["source"]);y!=null&&s(t,["source"],y);const F=r(e,["videoMetadata"]);F!=null&&s(t,["videoMetadata"],F);const R=r(e,["error"]);return R!=null&&s(t,["error"],OB(n,R)),t}function KB(n,e){const t={},A=r(e,["nextPageToken"]);A!=null&&s(t,["nextPageToken"],A);const i=r(e,["files"]);if(i!=null){let o=i;Array.isArray(o)&&(o=o.map(a=>vn(n,a))),s(t,["files"],o)}return t}function ZB(){return{}}function qB(){return{}}/**
133
+ */function Cs(o,e,t){const n={},i=r(e,["pageSize"]);t!==void 0&&i!=null&&s(t,["_query","pageSize"],i);const l=r(e,["pageToken"]);return t!==void 0&&l!=null&&s(t,["_query","pageToken"],l),n}function _s(o,e){const t={},n=r(e,["config"]);return n!=null&&s(t,["config"],Cs(o,n,t)),t}function Es(o,e){const t={},n=r(e,["details"]);n!=null&&s(t,["details"],n);const i=r(e,["message"]);i!=null&&s(t,["message"],i);const l=r(e,["code"]);return l!=null&&s(t,["code"],l),t}function Ss(o,e){const t={},n=r(e,["name"]);n!=null&&s(t,["name"],n);const i=r(e,["displayName"]);i!=null&&s(t,["displayName"],i);const l=r(e,["mimeType"]);l!=null&&s(t,["mimeType"],l);const a=r(e,["sizeBytes"]);a!=null&&s(t,["sizeBytes"],a);const u=r(e,["createTime"]);u!=null&&s(t,["createTime"],u);const d=r(e,["expirationTime"]);d!=null&&s(t,["expirationTime"],d);const c=r(e,["updateTime"]);c!=null&&s(t,["updateTime"],c);const f=r(e,["sha256Hash"]);f!=null&&s(t,["sha256Hash"],f);const p=r(e,["uri"]);p!=null&&s(t,["uri"],p);const m=r(e,["downloadUri"]);m!=null&&s(t,["downloadUri"],m);const h=r(e,["state"]);h!=null&&s(t,["state"],h);const g=r(e,["source"]);g!=null&&s(t,["source"],g);const v=r(e,["videoMetadata"]);v!=null&&s(t,["videoMetadata"],v);const E=r(e,["error"]);return E!=null&&s(t,["error"],Es(o,E)),t}function xs(o,e){const t={},n=r(e,["file"]);n!=null&&s(t,["file"],Ss(o,n));const i=r(e,["config"]);return i!=null&&s(t,["config"],i),t}function As(o,e){const t={},n=r(e,["name"]);n!=null&&s(t,["_url","file"],ro(o,n));const i=r(e,["config"]);return i!=null&&s(t,["config"],i),t}function Ms(o,e){const t={},n=r(e,["name"]);n!=null&&s(t,["_url","file"],ro(o,n));const i=r(e,["config"]);return i!=null&&s(t,["config"],i),t}function Is(o,e){const t={},n=r(e,["details"]);n!=null&&s(t,["details"],n);const i=r(e,["message"]);i!=null&&s(t,["message"],i);const l=r(e,["code"]);return l!=null&&s(t,["code"],l),t}function _t(o,e){const t={},n=r(e,["name"]);n!=null&&s(t,["name"],n);const i=r(e,["displayName"]);i!=null&&s(t,["displayName"],i);const l=r(e,["mimeType"]);l!=null&&s(t,["mimeType"],l);const a=r(e,["sizeBytes"]);a!=null&&s(t,["sizeBytes"],a);const u=r(e,["createTime"]);u!=null&&s(t,["createTime"],u);const d=r(e,["expirationTime"]);d!=null&&s(t,["expirationTime"],d);const c=r(e,["updateTime"]);c!=null&&s(t,["updateTime"],c);const f=r(e,["sha256Hash"]);f!=null&&s(t,["sha256Hash"],f);const p=r(e,["uri"]);p!=null&&s(t,["uri"],p);const m=r(e,["downloadUri"]);m!=null&&s(t,["downloadUri"],m);const h=r(e,["state"]);h!=null&&s(t,["state"],h);const g=r(e,["source"]);g!=null&&s(t,["source"],g);const v=r(e,["videoMetadata"]);v!=null&&s(t,["videoMetadata"],v);const E=r(e,["error"]);return E!=null&&s(t,["error"],Is(o,E)),t}function Rs(o,e){const t={},n=r(e,["nextPageToken"]);n!=null&&s(t,["nextPageToken"],n);const i=r(e,["files"]);if(i!=null){let l=i;Array.isArray(l)&&(l=l.map(a=>_t(o,a))),s(t,["files"],l)}return t}function ws(){return{}}function Ps(){return{}}/**
164
134
  * @license
165
135
  * Copyright 2025 Google LLC
166
136
  * SPDX-License-Identifier: Apache-2.0
167
- */class $B extends le{constructor(e){super(),this.apiClient=e,this.list=async(t={})=>new xt(ge.PAGED_ITEM_FILES,A=>this.listInternal(A),await this.listInternal(t),t)}async upload(e){if(this.apiClient.isVertexAI())throw new Error("Vertex AI does not support uploading files. You can share files through a GCS bucket.");return this.apiClient.uploadFile(e.file,e.config).then(t=>vn(this.apiClient,t))}async download(e){await this.apiClient.downloadFile(e)}async listInternal(e){var t,A;let i,o="",a={};if(this.apiClient.isVertexAI())throw new Error("This method is only supported by the Gemini Developer API.");{const c=VB(this.apiClient,e);return o=Z("files",c._url),a=c._query,delete c.config,delete c._url,delete c._query,i=this.apiClient.request({path:o,queryParams:a,body:JSON.stringify(c),httpMethod:"GET",httpOptions:(t=e.config)===null||t===void 0?void 0:t.httpOptions,abortSignal:(A=e.config)===null||A===void 0?void 0:A.abortSignal}).then(l=>l.json()),i.then(l=>{const u=KB(this.apiClient,l),B=new pu;return Object.assign(B,u),B})}}async createInternal(e){var t,A;let i,o="",a={};if(this.apiClient.isVertexAI())throw new Error("This method is only supported by the Gemini Developer API.");{const c=jB(this.apiClient,e);return o=Z("upload/v1beta/files",c._url),a=c._query,delete c.config,delete c._url,delete c._query,i=this.apiClient.request({path:o,queryParams:a,body:JSON.stringify(c),httpMethod:"POST",httpOptions:(t=e.config)===null||t===void 0?void 0:t.httpOptions,abortSignal:(A=e.config)===null||A===void 0?void 0:A.abortSignal}).then(l=>l.json()),i.then(()=>{const l=ZB(),u=new hu;return Object.assign(u,l),u})}}async get(e){var t,A;let i,o="",a={};if(this.apiClient.isVertexAI())throw new Error("This method is only supported by the Gemini Developer API.");{const c=_B(this.apiClient,e);return o=Z("files/{file}",c._url),a=c._query,delete c.config,delete c._url,delete c._query,i=this.apiClient.request({path:o,queryParams:a,body:JSON.stringify(c),httpMethod:"GET",httpOptions:(t=e.config)===null||t===void 0?void 0:t.httpOptions,abortSignal:(A=e.config)===null||A===void 0?void 0:A.abortSignal}).then(l=>l.json()),i.then(l=>vn(this.apiClient,l))}}async delete(e){var t,A;let i,o="",a={};if(this.apiClient.isVertexAI())throw new Error("This method is only supported by the Gemini Developer API.");{const c=XB(this.apiClient,e);return o=Z("files/{file}",c._url),a=c._query,delete c.config,delete c._url,delete c._query,i=this.apiClient.request({path:o,queryParams:a,body:JSON.stringify(c),httpMethod:"DELETE",httpOptions:(t=e.config)===null||t===void 0?void 0:t.httpOptions,abortSignal:(A=e.config)===null||A===void 0?void 0:A.abortSignal}).then(l=>l.json()),i.then(()=>{const l=qB(),u=new wu;return Object.assign(u,l),u})}}}/**
137
+ */class Ns extends Ae{constructor(e){super(),this.apiClient=e,this.list=async(t={})=>new nt(Re.PAGED_ITEM_FILES,n=>this.listInternal(n),await this.listInternal(t),t)}async upload(e){if(this.apiClient.isVertexAI())throw new Error("Vertex AI does not support uploading files. You can share files through a GCS bucket.");return this.apiClient.uploadFile(e.file,e.config).then(t=>_t(this.apiClient,t))}async download(e){await this.apiClient.downloadFile(e)}async listInternal(e){var t,n;let i,l="",a={};if(this.apiClient.isVertexAI())throw new Error("This method is only supported by the Gemini Developer API.");{const u=_s(this.apiClient,e);return l=I("files",u._url),a=u._query,delete u.config,delete u._url,delete u._query,i=this.apiClient.request({path:l,queryParams:a,body:JSON.stringify(u),httpMethod:"GET",httpOptions:(t=e.config)===null||t===void 0?void 0:t.httpOptions,abortSignal:(n=e.config)===null||n===void 0?void 0:n.abortSignal}).then(d=>d.json()),i.then(d=>{const c=Rs(this.apiClient,d),f=new Ki;return Object.assign(f,c),f})}}async createInternal(e){var t,n;let i,l="",a={};if(this.apiClient.isVertexAI())throw new Error("This method is only supported by the Gemini Developer API.");{const u=xs(this.apiClient,e);return l=I("upload/v1beta/files",u._url),a=u._query,delete u.config,delete u._url,delete u._query,i=this.apiClient.request({path:l,queryParams:a,body:JSON.stringify(u),httpMethod:"POST",httpOptions:(t=e.config)===null||t===void 0?void 0:t.httpOptions,abortSignal:(n=e.config)===null||n===void 0?void 0:n.abortSignal}).then(d=>d.json()),i.then(()=>{const d=ws(),c=new Xi;return Object.assign(c,d),c})}}async get(e){var t,n;let i,l="",a={};if(this.apiClient.isVertexAI())throw new Error("This method is only supported by the Gemini Developer API.");{const u=As(this.apiClient,e);return l=I("files/{file}",u._url),a=u._query,delete u.config,delete u._url,delete u._query,i=this.apiClient.request({path:l,queryParams:a,body:JSON.stringify(u),httpMethod:"GET",httpOptions:(t=e.config)===null||t===void 0?void 0:t.httpOptions,abortSignal:(n=e.config)===null||n===void 0?void 0:n.abortSignal}).then(d=>d.json()),i.then(d=>_t(this.apiClient,d))}}async delete(e){var t,n;let i,l="",a={};if(this.apiClient.isVertexAI())throw new Error("This method is only supported by the Gemini Developer API.");{const u=Ms(this.apiClient,e);return l=I("files/{file}",u._url),a=u._query,delete u.config,delete u._url,delete u._query,i=this.apiClient.request({path:l,queryParams:a,body:JSON.stringify(u),httpMethod:"DELETE",httpOptions:(t=e.config)===null||t===void 0?void 0:t.httpOptions,abortSignal:(n=e.config)===null||n===void 0?void 0:n.abortSignal}).then(d=>d.json()),i.then(()=>{const d=Ps(),c=new Qi;return Object.assign(c,d),c})}}}/**
168
138
  * @license
169
139
  * Copyright 2025 Google LLC
170
140
  * SPDX-License-Identifier: Apache-2.0
171
- */function eg(n,e){const t={},A=r(e,["voiceName"]);return A!=null&&s(t,["voiceName"],A),t}function tg(n,e){const t={},A=r(e,["voiceName"]);return A!=null&&s(t,["voiceName"],A),t}function Ko(n,e){const t={},A=r(e,["prebuiltVoiceConfig"]);return A!=null&&s(t,["prebuiltVoiceConfig"],eg(n,A)),t}function ng(n,e){const t={},A=r(e,["prebuiltVoiceConfig"]);return A!=null&&s(t,["prebuiltVoiceConfig"],tg(n,A)),t}function Ag(n,e){const t={},A=r(e,["speaker"]);A!=null&&s(t,["speaker"],A);const i=r(e,["voiceConfig"]);return i!=null&&s(t,["voiceConfig"],Ko(n,i)),t}function ig(n,e){const t={},A=r(e,["speakerVoiceConfigs"]);if(A!=null){let i=A;Array.isArray(i)&&(i=i.map(o=>Ag(n,o))),s(t,["speakerVoiceConfigs"],i)}return t}function og(n,e){const t={},A=r(e,["voiceConfig"]);A!=null&&s(t,["voiceConfig"],Ko(n,A));const i=r(e,["multiSpeakerVoiceConfig"]);i!=null&&s(t,["multiSpeakerVoiceConfig"],ig(n,i));const o=r(e,["languageCode"]);return o!=null&&s(t,["languageCode"],o),t}function rg(n,e){const t={},A=r(e,["voiceConfig"]);if(A!=null&&s(t,["voiceConfig"],ng(n,A)),r(e,["multiSpeakerVoiceConfig"])!==void 0)throw new Error("multiSpeakerVoiceConfig parameter is not supported in Vertex AI.");const i=r(e,["languageCode"]);return i!=null&&s(t,["languageCode"],i),t}function sg(n,e){const t={},A=r(e,["fps"]);A!=null&&s(t,["fps"],A);const i=r(e,["endOffset"]);i!=null&&s(t,["endOffset"],i);const o=r(e,["startOffset"]);return o!=null&&s(t,["startOffset"],o),t}function ag(n,e){const t={},A=r(e,["fps"]);A!=null&&s(t,["fps"],A);const i=r(e,["endOffset"]);i!=null&&s(t,["endOffset"],i);const o=r(e,["startOffset"]);return o!=null&&s(t,["startOffset"],o),t}function cg(n,e){const t={};if(r(e,["displayName"])!==void 0)throw new Error("displayName parameter is not supported in Gemini API.");const A=r(e,["data"]);A!=null&&s(t,["data"],A);const i=r(e,["mimeType"]);return i!=null&&s(t,["mimeType"],i),t}function lg(n,e){const t={},A=r(e,["displayName"]);A!=null&&s(t,["displayName"],A);const i=r(e,["data"]);i!=null&&s(t,["data"],i);const o=r(e,["mimeType"]);return o!=null&&s(t,["mimeType"],o),t}function ug(n,e){const t={};if(r(e,["displayName"])!==void 0)throw new Error("displayName parameter is not supported in Gemini API.");const A=r(e,["fileUri"]);A!=null&&s(t,["fileUri"],A);const i=r(e,["mimeType"]);return i!=null&&s(t,["mimeType"],i),t}function Bg(n,e){const t={},A=r(e,["displayName"]);A!=null&&s(t,["displayName"],A);const i=r(e,["fileUri"]);i!=null&&s(t,["fileUri"],i);const o=r(e,["mimeType"]);return o!=null&&s(t,["mimeType"],o),t}function gg(n,e){const t={},A=r(e,["videoMetadata"]);A!=null&&s(t,["videoMetadata"],sg(n,A));const i=r(e,["thought"]);i!=null&&s(t,["thought"],i);const o=r(e,["inlineData"]);o!=null&&s(t,["inlineData"],cg(n,o));const a=r(e,["fileData"]);a!=null&&s(t,["fileData"],ug(n,a));const c=r(e,["thoughtSignature"]);c!=null&&s(t,["thoughtSignature"],c);const l=r(e,["codeExecutionResult"]);l!=null&&s(t,["codeExecutionResult"],l);const u=r(e,["executableCode"]);u!=null&&s(t,["executableCode"],u);const B=r(e,["functionCall"]);B!=null&&s(t,["functionCall"],B);const d=r(e,["functionResponse"]);d!=null&&s(t,["functionResponse"],d);const f=r(e,["text"]);return f!=null&&s(t,["text"],f),t}function dg(n,e){const t={},A=r(e,["videoMetadata"]);A!=null&&s(t,["videoMetadata"],ag(n,A));const i=r(e,["thought"]);i!=null&&s(t,["thought"],i);const o=r(e,["inlineData"]);o!=null&&s(t,["inlineData"],lg(n,o));const a=r(e,["fileData"]);a!=null&&s(t,["fileData"],Bg(n,a));const c=r(e,["thoughtSignature"]);c!=null&&s(t,["thoughtSignature"],c);const l=r(e,["codeExecutionResult"]);l!=null&&s(t,["codeExecutionResult"],l);const u=r(e,["executableCode"]);u!=null&&s(t,["executableCode"],u);const B=r(e,["functionCall"]);B!=null&&s(t,["functionCall"],B);const d=r(e,["functionResponse"]);d!=null&&s(t,["functionResponse"],d);const f=r(e,["text"]);return f!=null&&s(t,["text"],f),t}function Eg(n,e){const t={},A=r(e,["parts"]);if(A!=null){let o=A;Array.isArray(o)&&(o=o.map(a=>gg(n,a))),s(t,["parts"],o)}const i=r(e,["role"]);return i!=null&&s(t,["role"],i),t}function fg(n,e){const t={},A=r(e,["parts"]);if(A!=null){let o=A;Array.isArray(o)&&(o=o.map(a=>dg(n,a))),s(t,["parts"],o)}const i=r(e,["role"]);return i!=null&&s(t,["role"],i),t}function Qg(n,e){const t={},A=r(e,["behavior"]);A!=null&&s(t,["behavior"],A);const i=r(e,["description"]);i!=null&&s(t,["description"],i);const o=r(e,["name"]);o!=null&&s(t,["name"],o);const a=r(e,["parameters"]);a!=null&&s(t,["parameters"],a);const c=r(e,["response"]);return c!=null&&s(t,["response"],c),t}function pg(n,e){const t={};if(r(e,["behavior"])!==void 0)throw new Error("behavior parameter is not supported in Vertex AI.");const A=r(e,["description"]);A!=null&&s(t,["description"],A);const i=r(e,["name"]);i!=null&&s(t,["name"],i);const o=r(e,["parameters"]);o!=null&&s(t,["parameters"],o);const a=r(e,["response"]);return a!=null&&s(t,["response"],a),t}function hg(n,e){const t={},A=r(e,["startTime"]);A!=null&&s(t,["startTime"],A);const i=r(e,["endTime"]);return i!=null&&s(t,["endTime"],i),t}function wg(n,e){const t={},A=r(e,["startTime"]);A!=null&&s(t,["startTime"],A);const i=r(e,["endTime"]);return i!=null&&s(t,["endTime"],i),t}function mg(n,e){const t={},A=r(e,["timeRangeFilter"]);return A!=null&&s(t,["timeRangeFilter"],hg(n,A)),t}function Cg(n,e){const t={},A=r(e,["timeRangeFilter"]);return A!=null&&s(t,["timeRangeFilter"],wg(n,A)),t}function Mg(n,e){const t={},A=r(e,["mode"]);A!=null&&s(t,["mode"],A);const i=r(e,["dynamicThreshold"]);return i!=null&&s(t,["dynamicThreshold"],i),t}function yg(n,e){const t={},A=r(e,["mode"]);A!=null&&s(t,["mode"],A);const i=r(e,["dynamicThreshold"]);return i!=null&&s(t,["dynamicThreshold"],i),t}function Ig(n,e){const t={},A=r(e,["dynamicRetrievalConfig"]);return A!=null&&s(t,["dynamicRetrievalConfig"],Mg(n,A)),t}function Dg(n,e){const t={},A=r(e,["dynamicRetrievalConfig"]);return A!=null&&s(t,["dynamicRetrievalConfig"],yg(n,A)),t}function Fg(){return{}}function xg(n,e){const t={},A=r(e,["apiKeyString"]);return A!=null&&s(t,["apiKeyString"],A),t}function vg(n,e){const t={},A=r(e,["apiKeyConfig"]);A!=null&&s(t,["apiKeyConfig"],xg(n,A));const i=r(e,["authType"]);i!=null&&s(t,["authType"],i);const o=r(e,["googleServiceAccountConfig"]);o!=null&&s(t,["googleServiceAccountConfig"],o);const a=r(e,["httpBasicAuthConfig"]);a!=null&&s(t,["httpBasicAuthConfig"],a);const c=r(e,["oauthConfig"]);c!=null&&s(t,["oauthConfig"],c);const l=r(e,["oidcConfig"]);return l!=null&&s(t,["oidcConfig"],l),t}function Ug(n,e){const t={},A=r(e,["authConfig"]);return A!=null&&s(t,["authConfig"],vg(n,A)),t}function Yg(){return{}}function Tg(n,e){const t={},A=r(e,["functionDeclarations"]);if(A!=null){let l=A;Array.isArray(l)&&(l=l.map(u=>Qg(n,u))),s(t,["functionDeclarations"],l)}if(r(e,["retrieval"])!==void 0)throw new Error("retrieval parameter is not supported in Gemini API.");const i=r(e,["googleSearch"]);i!=null&&s(t,["googleSearch"],mg(n,i));const o=r(e,["googleSearchRetrieval"]);if(o!=null&&s(t,["googleSearchRetrieval"],Ig(n,o)),r(e,["enterpriseWebSearch"])!==void 0)throw new Error("enterpriseWebSearch parameter is not supported in Gemini API.");if(r(e,["googleMaps"])!==void 0)throw new Error("googleMaps parameter is not supported in Gemini API.");r(e,["urlContext"])!=null&&s(t,["urlContext"],Yg());const c=r(e,["codeExecution"]);return c!=null&&s(t,["codeExecution"],c),t}function Ng(n,e){const t={},A=r(e,["functionDeclarations"]);if(A!=null){let B=A;Array.isArray(B)&&(B=B.map(d=>pg(n,d))),s(t,["functionDeclarations"],B)}const i=r(e,["retrieval"]);i!=null&&s(t,["retrieval"],i);const o=r(e,["googleSearch"]);o!=null&&s(t,["googleSearch"],Cg(n,o));const a=r(e,["googleSearchRetrieval"]);a!=null&&s(t,["googleSearchRetrieval"],Dg(n,a)),r(e,["enterpriseWebSearch"])!=null&&s(t,["enterpriseWebSearch"],Fg());const l=r(e,["googleMaps"]);if(l!=null&&s(t,["googleMaps"],Ug(n,l)),r(e,["urlContext"])!==void 0)throw new Error("urlContext parameter is not supported in Vertex AI.");const u=r(e,["codeExecution"]);return u!=null&&s(t,["codeExecution"],u),t}function Rg(n,e){const t={},A=r(e,["handle"]);if(A!=null&&s(t,["handle"],A),r(e,["transparent"])!==void 0)throw new Error("transparent parameter is not supported in Gemini API.");return t}function zg(n,e){const t={},A=r(e,["handle"]);A!=null&&s(t,["handle"],A);const i=r(e,["transparent"]);return i!=null&&s(t,["transparent"],i),t}function Zo(){return{}}function qo(){return{}}function Sg(n,e){const t={},A=r(e,["disabled"]);A!=null&&s(t,["disabled"],A);const i=r(e,["startOfSpeechSensitivity"]);i!=null&&s(t,["startOfSpeechSensitivity"],i);const o=r(e,["endOfSpeechSensitivity"]);o!=null&&s(t,["endOfSpeechSensitivity"],o);const a=r(e,["prefixPaddingMs"]);a!=null&&s(t,["prefixPaddingMs"],a);const c=r(e,["silenceDurationMs"]);return c!=null&&s(t,["silenceDurationMs"],c),t}function Gg(n,e){const t={},A=r(e,["disabled"]);A!=null&&s(t,["disabled"],A);const i=r(e,["startOfSpeechSensitivity"]);i!=null&&s(t,["startOfSpeechSensitivity"],i);const o=r(e,["endOfSpeechSensitivity"]);o!=null&&s(t,["endOfSpeechSensitivity"],o);const a=r(e,["prefixPaddingMs"]);a!=null&&s(t,["prefixPaddingMs"],a);const c=r(e,["silenceDurationMs"]);return c!=null&&s(t,["silenceDurationMs"],c),t}function kg(n,e){const t={},A=r(e,["automaticActivityDetection"]);A!=null&&s(t,["automaticActivityDetection"],Sg(n,A));const i=r(e,["activityHandling"]);i!=null&&s(t,["activityHandling"],i);const o=r(e,["turnCoverage"]);return o!=null&&s(t,["turnCoverage"],o),t}function Pg(n,e){const t={},A=r(e,["automaticActivityDetection"]);A!=null&&s(t,["automaticActivityDetection"],Gg(n,A));const i=r(e,["activityHandling"]);i!=null&&s(t,["activityHandling"],i);const o=r(e,["turnCoverage"]);return o!=null&&s(t,["turnCoverage"],o),t}function Jg(n,e){const t={},A=r(e,["targetTokens"]);return A!=null&&s(t,["targetTokens"],A),t}function Hg(n,e){const t={},A=r(e,["targetTokens"]);return A!=null&&s(t,["targetTokens"],A),t}function bg(n,e){const t={},A=r(e,["triggerTokens"]);A!=null&&s(t,["triggerTokens"],A);const i=r(e,["slidingWindow"]);return i!=null&&s(t,["slidingWindow"],Jg(n,i)),t}function Vg(n,e){const t={},A=r(e,["triggerTokens"]);A!=null&&s(t,["triggerTokens"],A);const i=r(e,["slidingWindow"]);return i!=null&&s(t,["slidingWindow"],Hg(n,i)),t}function Lg(n,e){const t={},A=r(e,["proactiveAudio"]);return A!=null&&s(t,["proactiveAudio"],A),t}function Wg(n,e){const t={},A=r(e,["proactiveAudio"]);return A!=null&&s(t,["proactiveAudio"],A),t}function jg(n,e,t){const A={},i=r(e,["generationConfig"]);t!==void 0&&i!=null&&s(t,["setup","generationConfig"],i);const o=r(e,["responseModalities"]);t!==void 0&&o!=null&&s(t,["setup","generationConfig","responseModalities"],o);const a=r(e,["temperature"]);t!==void 0&&a!=null&&s(t,["setup","generationConfig","temperature"],a);const c=r(e,["topP"]);t!==void 0&&c!=null&&s(t,["setup","generationConfig","topP"],c);const l=r(e,["topK"]);t!==void 0&&l!=null&&s(t,["setup","generationConfig","topK"],l);const u=r(e,["maxOutputTokens"]);t!==void 0&&u!=null&&s(t,["setup","generationConfig","maxOutputTokens"],u);const B=r(e,["mediaResolution"]);t!==void 0&&B!=null&&s(t,["setup","generationConfig","mediaResolution"],B);const d=r(e,["seed"]);t!==void 0&&d!=null&&s(t,["setup","generationConfig","seed"],d);const f=r(e,["speechConfig"]);t!==void 0&&f!=null&&s(t,["setup","generationConfig","speechConfig"],og(n,xn(n,f)));const w=r(e,["enableAffectiveDialog"]);t!==void 0&&w!=null&&s(t,["setup","generationConfig","enableAffectiveDialog"],w);const y=r(e,["systemInstruction"]);t!==void 0&&y!=null&&s(t,["setup","systemInstruction"],Eg(n,z0(n,y)));const F=r(e,["tools"]);if(t!==void 0&&F!=null){let U=ke(n,F);Array.isArray(U)&&(U=U.map(x=>Tg(n,Ge(n,x)))),s(t,["setup","tools"],U)}const R=r(e,["sessionResumption"]);t!==void 0&&R!=null&&s(t,["setup","sessionResumption"],Rg(n,R));const S=r(e,["inputAudioTranscription"]);t!==void 0&&S!=null&&s(t,["setup","inputAudioTranscription"],Zo());const M=r(e,["outputAudioTranscription"]);t!==void 0&&M!=null&&s(t,["setup","outputAudioTranscription"],Zo());const T=r(e,["realtimeInputConfig"]);t!==void 0&&T!=null&&s(t,["setup","realtimeInputConfig"],kg(n,T));const D=r(e,["contextWindowCompression"]);t!==void 0&&D!=null&&s(t,["setup","contextWindowCompression"],bg(n,D));const I=r(e,["proactivity"]);return t!==void 0&&I!=null&&s(t,["setup","proactivity"],Lg(n,I)),A}function _g(n,e,t){const A={},i=r(e,["generationConfig"]);t!==void 0&&i!=null&&s(t,["setup","generationConfig"],i);const o=r(e,["responseModalities"]);t!==void 0&&o!=null&&s(t,["setup","generationConfig","responseModalities"],o);const a=r(e,["temperature"]);t!==void 0&&a!=null&&s(t,["setup","generationConfig","temperature"],a);const c=r(e,["topP"]);t!==void 0&&c!=null&&s(t,["setup","generationConfig","topP"],c);const l=r(e,["topK"]);t!==void 0&&l!=null&&s(t,["setup","generationConfig","topK"],l);const u=r(e,["maxOutputTokens"]);t!==void 0&&u!=null&&s(t,["setup","generationConfig","maxOutputTokens"],u);const B=r(e,["mediaResolution"]);t!==void 0&&B!=null&&s(t,["setup","generationConfig","mediaResolution"],B);const d=r(e,["seed"]);t!==void 0&&d!=null&&s(t,["setup","generationConfig","seed"],d);const f=r(e,["speechConfig"]);t!==void 0&&f!=null&&s(t,["setup","generationConfig","speechConfig"],rg(n,xn(n,f)));const w=r(e,["enableAffectiveDialog"]);t!==void 0&&w!=null&&s(t,["setup","generationConfig","enableAffectiveDialog"],w);const y=r(e,["systemInstruction"]);t!==void 0&&y!=null&&s(t,["setup","systemInstruction"],fg(n,z0(n,y)));const F=r(e,["tools"]);if(t!==void 0&&F!=null){let U=ke(n,F);Array.isArray(U)&&(U=U.map(x=>Ng(n,Ge(n,x)))),s(t,["setup","tools"],U)}const R=r(e,["sessionResumption"]);t!==void 0&&R!=null&&s(t,["setup","sessionResumption"],zg(n,R));const S=r(e,["inputAudioTranscription"]);t!==void 0&&S!=null&&s(t,["setup","inputAudioTranscription"],qo());const M=r(e,["outputAudioTranscription"]);t!==void 0&&M!=null&&s(t,["setup","outputAudioTranscription"],qo());const T=r(e,["realtimeInputConfig"]);t!==void 0&&T!=null&&s(t,["setup","realtimeInputConfig"],Pg(n,T));const D=r(e,["contextWindowCompression"]);t!==void 0&&D!=null&&s(t,["setup","contextWindowCompression"],Vg(n,D));const I=r(e,["proactivity"]);return t!==void 0&&I!=null&&s(t,["setup","proactivity"],Wg(n,I)),A}function Xg(n,e){const t={},A=r(e,["model"]);A!=null&&s(t,["setup","model"],g0(n,A));const i=r(e,["config"]);return i!=null&&s(t,["config"],jg(n,i,t)),t}function Og(n,e){const t={},A=r(e,["model"]);A!=null&&s(t,["setup","model"],g0(n,A));const i=r(e,["config"]);return i!=null&&s(t,["config"],_g(n,i,t)),t}function Kg(){return{}}function Zg(){return{}}function qg(){return{}}function $g(){return{}}function ed(n,e){const t={},A=r(e,["media"]);A!=null&&s(t,["mediaChunks"],No(n,A));const i=r(e,["audio"]);i!=null&&s(t,["audio"],yu(n,i));const o=r(e,["audioStreamEnd"]);o!=null&&s(t,["audioStreamEnd"],o);const a=r(e,["video"]);a!=null&&s(t,["video"],Mu(n,a));const c=r(e,["text"]);return c!=null&&s(t,["text"],c),r(e,["activityStart"])!=null&&s(t,["activityStart"],Kg()),r(e,["activityEnd"])!=null&&s(t,["activityEnd"],qg()),t}function td(n,e){const t={},A=r(e,["media"]);if(A!=null&&s(t,["mediaChunks"],No(n,A)),r(e,["audio"])!==void 0)throw new Error("audio parameter is not supported in Vertex AI.");const i=r(e,["audioStreamEnd"]);if(i!=null&&s(t,["audioStreamEnd"],i),r(e,["video"])!==void 0)throw new Error("video parameter is not supported in Vertex AI.");if(r(e,["text"])!==void 0)throw new Error("text parameter is not supported in Vertex AI.");return r(e,["activityStart"])!=null&&s(t,["activityStart"],Zg()),r(e,["activityEnd"])!=null&&s(t,["activityEnd"],$g()),t}function $o(n,e){const t={},A=r(e,["text"]);A!=null&&s(t,["text"],A);const i=r(e,["weight"]);return i!=null&&s(t,["weight"],i),t}function nd(n,e){const t={},A=r(e,["weightedPrompts"]);if(A!=null){let i=A;Array.isArray(i)&&(i=i.map(o=>$o(n,o))),s(t,["weightedPrompts"],i)}return t}function er(n,e){const t={},A=r(e,["temperature"]);A!=null&&s(t,["temperature"],A);const i=r(e,["topK"]);i!=null&&s(t,["topK"],i);const o=r(e,["seed"]);o!=null&&s(t,["seed"],o);const a=r(e,["guidance"]);a!=null&&s(t,["guidance"],a);const c=r(e,["bpm"]);c!=null&&s(t,["bpm"],c);const l=r(e,["density"]);l!=null&&s(t,["density"],l);const u=r(e,["brightness"]);u!=null&&s(t,["brightness"],u);const B=r(e,["scale"]);B!=null&&s(t,["scale"],B);const d=r(e,["muteBass"]);d!=null&&s(t,["muteBass"],d);const f=r(e,["muteDrums"]);f!=null&&s(t,["muteDrums"],f);const w=r(e,["onlyBassAndDrums"]);return w!=null&&s(t,["onlyBassAndDrums"],w),t}function Ad(n,e){const t={},A=r(e,["musicGenerationConfig"]);return A!=null&&s(t,["musicGenerationConfig"],er(n,A)),t}function tr(n,e){const t={},A=r(e,["model"]);return A!=null&&s(t,["model"],A),t}function nr(n,e){const t={},A=r(e,["weightedPrompts"]);if(A!=null){let i=A;Array.isArray(i)&&(i=i.map(o=>$o(n,o))),s(t,["weightedPrompts"],i)}return t}function Un(n,e){const t={},A=r(e,["setup"]);A!=null&&s(t,["setup"],tr(n,A));const i=r(e,["clientContent"]);i!=null&&s(t,["clientContent"],nr(n,i));const o=r(e,["musicGenerationConfig"]);o!=null&&s(t,["musicGenerationConfig"],er(n,o));const a=r(e,["playbackControl"]);return a!=null&&s(t,["playbackControl"],a),t}function id(){return{}}function od(){return{}}function rd(n,e){const t={},A=r(e,["fps"]);A!=null&&s(t,["fps"],A);const i=r(e,["endOffset"]);i!=null&&s(t,["endOffset"],i);const o=r(e,["startOffset"]);return o!=null&&s(t,["startOffset"],o),t}function sd(n,e){const t={},A=r(e,["fps"]);A!=null&&s(t,["fps"],A);const i=r(e,["endOffset"]);i!=null&&s(t,["endOffset"],i);const o=r(e,["startOffset"]);return o!=null&&s(t,["startOffset"],o),t}function ad(n,e){const t={},A=r(e,["data"]);A!=null&&s(t,["data"],A);const i=r(e,["mimeType"]);return i!=null&&s(t,["mimeType"],i),t}function cd(n,e){const t={},A=r(e,["displayName"]);A!=null&&s(t,["displayName"],A);const i=r(e,["data"]);i!=null&&s(t,["data"],i);const o=r(e,["mimeType"]);return o!=null&&s(t,["mimeType"],o),t}function ld(n,e){const t={},A=r(e,["fileUri"]);A!=null&&s(t,["fileUri"],A);const i=r(e,["mimeType"]);return i!=null&&s(t,["mimeType"],i),t}function ud(n,e){const t={},A=r(e,["displayName"]);A!=null&&s(t,["displayName"],A);const i=r(e,["fileUri"]);i!=null&&s(t,["fileUri"],i);const o=r(e,["mimeType"]);return o!=null&&s(t,["mimeType"],o),t}function Bd(n,e){const t={},A=r(e,["videoMetadata"]);A!=null&&s(t,["videoMetadata"],rd(n,A));const i=r(e,["thought"]);i!=null&&s(t,["thought"],i);const o=r(e,["inlineData"]);o!=null&&s(t,["inlineData"],ad(n,o));const a=r(e,["fileData"]);a!=null&&s(t,["fileData"],ld(n,a));const c=r(e,["thoughtSignature"]);c!=null&&s(t,["thoughtSignature"],c);const l=r(e,["codeExecutionResult"]);l!=null&&s(t,["codeExecutionResult"],l);const u=r(e,["executableCode"]);u!=null&&s(t,["executableCode"],u);const B=r(e,["functionCall"]);B!=null&&s(t,["functionCall"],B);const d=r(e,["functionResponse"]);d!=null&&s(t,["functionResponse"],d);const f=r(e,["text"]);return f!=null&&s(t,["text"],f),t}function gd(n,e){const t={},A=r(e,["videoMetadata"]);A!=null&&s(t,["videoMetadata"],sd(n,A));const i=r(e,["thought"]);i!=null&&s(t,["thought"],i);const o=r(e,["inlineData"]);o!=null&&s(t,["inlineData"],cd(n,o));const a=r(e,["fileData"]);a!=null&&s(t,["fileData"],ud(n,a));const c=r(e,["thoughtSignature"]);c!=null&&s(t,["thoughtSignature"],c);const l=r(e,["codeExecutionResult"]);l!=null&&s(t,["codeExecutionResult"],l);const u=r(e,["executableCode"]);u!=null&&s(t,["executableCode"],u);const B=r(e,["functionCall"]);B!=null&&s(t,["functionCall"],B);const d=r(e,["functionResponse"]);d!=null&&s(t,["functionResponse"],d);const f=r(e,["text"]);return f!=null&&s(t,["text"],f),t}function dd(n,e){const t={},A=r(e,["parts"]);if(A!=null){let o=A;Array.isArray(o)&&(o=o.map(a=>Bd(n,a))),s(t,["parts"],o)}const i=r(e,["role"]);return i!=null&&s(t,["role"],i),t}function Ed(n,e){const t={},A=r(e,["parts"]);if(A!=null){let o=A;Array.isArray(o)&&(o=o.map(a=>gd(n,a))),s(t,["parts"],o)}const i=r(e,["role"]);return i!=null&&s(t,["role"],i),t}function Ar(n,e){const t={},A=r(e,["text"]);A!=null&&s(t,["text"],A);const i=r(e,["finished"]);return i!=null&&s(t,["finished"],i),t}function ir(n,e){const t={},A=r(e,["text"]);A!=null&&s(t,["text"],A);const i=r(e,["finished"]);return i!=null&&s(t,["finished"],i),t}function fd(n,e){const t={},A=r(e,["retrievedUrl"]);A!=null&&s(t,["retrievedUrl"],A);const i=r(e,["urlRetrievalStatus"]);return i!=null&&s(t,["urlRetrievalStatus"],i),t}function Qd(n,e){const t={},A=r(e,["urlMetadata"]);if(A!=null){let i=A;Array.isArray(i)&&(i=i.map(o=>fd(n,o))),s(t,["urlMetadata"],i)}return t}function pd(n,e){const t={},A=r(e,["modelTurn"]);A!=null&&s(t,["modelTurn"],dd(n,A));const i=r(e,["turnComplete"]);i!=null&&s(t,["turnComplete"],i);const o=r(e,["interrupted"]);o!=null&&s(t,["interrupted"],o);const a=r(e,["groundingMetadata"]);a!=null&&s(t,["groundingMetadata"],a);const c=r(e,["generationComplete"]);c!=null&&s(t,["generationComplete"],c);const l=r(e,["inputTranscription"]);l!=null&&s(t,["inputTranscription"],Ar(n,l));const u=r(e,["outputTranscription"]);u!=null&&s(t,["outputTranscription"],Ar(n,u));const B=r(e,["urlContextMetadata"]);return B!=null&&s(t,["urlContextMetadata"],Qd(n,B)),t}function hd(n,e){const t={},A=r(e,["modelTurn"]);A!=null&&s(t,["modelTurn"],Ed(n,A));const i=r(e,["turnComplete"]);i!=null&&s(t,["turnComplete"],i);const o=r(e,["interrupted"]);o!=null&&s(t,["interrupted"],o);const a=r(e,["groundingMetadata"]);a!=null&&s(t,["groundingMetadata"],a);const c=r(e,["generationComplete"]);c!=null&&s(t,["generationComplete"],c);const l=r(e,["inputTranscription"]);l!=null&&s(t,["inputTranscription"],ir(n,l));const u=r(e,["outputTranscription"]);return u!=null&&s(t,["outputTranscription"],ir(n,u)),t}function wd(n,e){const t={},A=r(e,["id"]);A!=null&&s(t,["id"],A);const i=r(e,["args"]);i!=null&&s(t,["args"],i);const o=r(e,["name"]);return o!=null&&s(t,["name"],o),t}function md(n,e){const t={},A=r(e,["args"]);A!=null&&s(t,["args"],A);const i=r(e,["name"]);return i!=null&&s(t,["name"],i),t}function Cd(n,e){const t={},A=r(e,["functionCalls"]);if(A!=null){let i=A;Array.isArray(i)&&(i=i.map(o=>wd(n,o))),s(t,["functionCalls"],i)}return t}function Md(n,e){const t={},A=r(e,["functionCalls"]);if(A!=null){let i=A;Array.isArray(i)&&(i=i.map(o=>md(n,o))),s(t,["functionCalls"],i)}return t}function yd(n,e){const t={},A=r(e,["ids"]);return A!=null&&s(t,["ids"],A),t}function Id(n,e){const t={},A=r(e,["ids"]);return A!=null&&s(t,["ids"],A),t}function vt(n,e){const t={},A=r(e,["modality"]);A!=null&&s(t,["modality"],A);const i=r(e,["tokenCount"]);return i!=null&&s(t,["tokenCount"],i),t}function Ut(n,e){const t={},A=r(e,["modality"]);A!=null&&s(t,["modality"],A);const i=r(e,["tokenCount"]);return i!=null&&s(t,["tokenCount"],i),t}function Dd(n,e){const t={},A=r(e,["promptTokenCount"]);A!=null&&s(t,["promptTokenCount"],A);const i=r(e,["cachedContentTokenCount"]);i!=null&&s(t,["cachedContentTokenCount"],i);const o=r(e,["responseTokenCount"]);o!=null&&s(t,["responseTokenCount"],o);const a=r(e,["toolUsePromptTokenCount"]);a!=null&&s(t,["toolUsePromptTokenCount"],a);const c=r(e,["thoughtsTokenCount"]);c!=null&&s(t,["thoughtsTokenCount"],c);const l=r(e,["totalTokenCount"]);l!=null&&s(t,["totalTokenCount"],l);const u=r(e,["promptTokensDetails"]);if(u!=null){let w=u;Array.isArray(w)&&(w=w.map(y=>vt(n,y))),s(t,["promptTokensDetails"],w)}const B=r(e,["cacheTokensDetails"]);if(B!=null){let w=B;Array.isArray(w)&&(w=w.map(y=>vt(n,y))),s(t,["cacheTokensDetails"],w)}const d=r(e,["responseTokensDetails"]);if(d!=null){let w=d;Array.isArray(w)&&(w=w.map(y=>vt(n,y))),s(t,["responseTokensDetails"],w)}const f=r(e,["toolUsePromptTokensDetails"]);if(f!=null){let w=f;Array.isArray(w)&&(w=w.map(y=>vt(n,y))),s(t,["toolUsePromptTokensDetails"],w)}return t}function Fd(n,e){const t={},A=r(e,["promptTokenCount"]);A!=null&&s(t,["promptTokenCount"],A);const i=r(e,["cachedContentTokenCount"]);i!=null&&s(t,["cachedContentTokenCount"],i);const o=r(e,["candidatesTokenCount"]);o!=null&&s(t,["responseTokenCount"],o);const a=r(e,["toolUsePromptTokenCount"]);a!=null&&s(t,["toolUsePromptTokenCount"],a);const c=r(e,["thoughtsTokenCount"]);c!=null&&s(t,["thoughtsTokenCount"],c);const l=r(e,["totalTokenCount"]);l!=null&&s(t,["totalTokenCount"],l);const u=r(e,["promptTokensDetails"]);if(u!=null){let y=u;Array.isArray(y)&&(y=y.map(F=>Ut(n,F))),s(t,["promptTokensDetails"],y)}const B=r(e,["cacheTokensDetails"]);if(B!=null){let y=B;Array.isArray(y)&&(y=y.map(F=>Ut(n,F))),s(t,["cacheTokensDetails"],y)}const d=r(e,["candidatesTokensDetails"]);if(d!=null){let y=d;Array.isArray(y)&&(y=y.map(F=>Ut(n,F))),s(t,["responseTokensDetails"],y)}const f=r(e,["toolUsePromptTokensDetails"]);if(f!=null){let y=f;Array.isArray(y)&&(y=y.map(F=>Ut(n,F))),s(t,["toolUsePromptTokensDetails"],y)}const w=r(e,["trafficType"]);return w!=null&&s(t,["trafficType"],w),t}function xd(n,e){const t={},A=r(e,["timeLeft"]);return A!=null&&s(t,["timeLeft"],A),t}function vd(n,e){const t={},A=r(e,["timeLeft"]);return A!=null&&s(t,["timeLeft"],A),t}function Ud(n,e){const t={},A=r(e,["newHandle"]);A!=null&&s(t,["newHandle"],A);const i=r(e,["resumable"]);i!=null&&s(t,["resumable"],i);const o=r(e,["lastConsumedClientMessageIndex"]);return o!=null&&s(t,["lastConsumedClientMessageIndex"],o),t}function Yd(n,e){const t={},A=r(e,["newHandle"]);A!=null&&s(t,["newHandle"],A);const i=r(e,["resumable"]);i!=null&&s(t,["resumable"],i);const o=r(e,["lastConsumedClientMessageIndex"]);return o!=null&&s(t,["lastConsumedClientMessageIndex"],o),t}function Td(n,e){const t={};r(e,["setupComplete"])!=null&&s(t,["setupComplete"],id());const i=r(e,["serverContent"]);i!=null&&s(t,["serverContent"],pd(n,i));const o=r(e,["toolCall"]);o!=null&&s(t,["toolCall"],Cd(n,o));const a=r(e,["toolCallCancellation"]);a!=null&&s(t,["toolCallCancellation"],yd(n,a));const c=r(e,["usageMetadata"]);c!=null&&s(t,["usageMetadata"],Dd(n,c));const l=r(e,["goAway"]);l!=null&&s(t,["goAway"],xd(n,l));const u=r(e,["sessionResumptionUpdate"]);return u!=null&&s(t,["sessionResumptionUpdate"],Ud(n,u)),t}function Nd(n,e){const t={};r(e,["setupComplete"])!=null&&s(t,["setupComplete"],od());const i=r(e,["serverContent"]);i!=null&&s(t,["serverContent"],hd(n,i));const o=r(e,["toolCall"]);o!=null&&s(t,["toolCall"],Md(n,o));const a=r(e,["toolCallCancellation"]);a!=null&&s(t,["toolCallCancellation"],Id(n,a));const c=r(e,["usageMetadata"]);c!=null&&s(t,["usageMetadata"],Fd(n,c));const l=r(e,["goAway"]);l!=null&&s(t,["goAway"],vd(n,l));const u=r(e,["sessionResumptionUpdate"]);return u!=null&&s(t,["sessionResumptionUpdate"],Yd(n,u)),t}function Rd(){return{}}function zd(n,e){const t={},A=r(e,["text"]);A!=null&&s(t,["text"],A);const i=r(e,["weight"]);return i!=null&&s(t,["weight"],i),t}function Sd(n,e){const t={},A=r(e,["weightedPrompts"]);if(A!=null){let i=A;Array.isArray(i)&&(i=i.map(o=>zd(n,o))),s(t,["weightedPrompts"],i)}return t}function Gd(n,e){const t={},A=r(e,["temperature"]);A!=null&&s(t,["temperature"],A);const i=r(e,["topK"]);i!=null&&s(t,["topK"],i);const o=r(e,["seed"]);o!=null&&s(t,["seed"],o);const a=r(e,["guidance"]);a!=null&&s(t,["guidance"],a);const c=r(e,["bpm"]);c!=null&&s(t,["bpm"],c);const l=r(e,["density"]);l!=null&&s(t,["density"],l);const u=r(e,["brightness"]);u!=null&&s(t,["brightness"],u);const B=r(e,["scale"]);B!=null&&s(t,["scale"],B);const d=r(e,["muteBass"]);d!=null&&s(t,["muteBass"],d);const f=r(e,["muteDrums"]);f!=null&&s(t,["muteDrums"],f);const w=r(e,["onlyBassAndDrums"]);return w!=null&&s(t,["onlyBassAndDrums"],w),t}function kd(n,e){const t={},A=r(e,["clientContent"]);A!=null&&s(t,["clientContent"],Sd(n,A));const i=r(e,["musicGenerationConfig"]);return i!=null&&s(t,["musicGenerationConfig"],Gd(n,i)),t}function Pd(n,e){const t={},A=r(e,["data"]);A!=null&&s(t,["data"],A);const i=r(e,["mimeType"]);i!=null&&s(t,["mimeType"],i);const o=r(e,["sourceMetadata"]);return o!=null&&s(t,["sourceMetadata"],kd(n,o)),t}function Jd(n,e){const t={},A=r(e,["audioChunks"]);if(A!=null){let i=A;Array.isArray(i)&&(i=i.map(o=>Pd(n,o))),s(t,["audioChunks"],i)}return t}function Hd(n,e){const t={},A=r(e,["text"]);A!=null&&s(t,["text"],A);const i=r(e,["filteredReason"]);return i!=null&&s(t,["filteredReason"],i),t}function bd(n,e){const t={};r(e,["setupComplete"])!=null&&s(t,["setupComplete"],Rd());const i=r(e,["serverContent"]);i!=null&&s(t,["serverContent"],Jd(n,i));const o=r(e,["filteredPrompt"]);return o!=null&&s(t,["filteredPrompt"],Hd(n,o)),t}/**
141
+ */function ks(o,e){const t={},n=r(e,["voiceName"]);return n!=null&&s(t,["voiceName"],n),t}function Ds(o,e){const t={},n=r(e,["voiceName"]);return n!=null&&s(t,["voiceName"],n),t}function mo(o,e){const t={},n=r(e,["prebuiltVoiceConfig"]);return n!=null&&s(t,["prebuiltVoiceConfig"],ks(o,n)),t}function Ls(o,e){const t={},n=r(e,["prebuiltVoiceConfig"]);return n!=null&&s(t,["prebuiltVoiceConfig"],Ds(o,n)),t}function Vs(o,e){const t={},n=r(e,["speaker"]);n!=null&&s(t,["speaker"],n);const i=r(e,["voiceConfig"]);return i!=null&&s(t,["voiceConfig"],mo(o,i)),t}function Fs(o,e){const t={},n=r(e,["speakerVoiceConfigs"]);if(n!=null){let i=n;Array.isArray(i)&&(i=i.map(l=>Vs(o,l))),s(t,["speakerVoiceConfigs"],i)}return t}function Us(o,e){const t={},n=r(e,["voiceConfig"]);n!=null&&s(t,["voiceConfig"],mo(o,n));const i=r(e,["multiSpeakerVoiceConfig"]);i!=null&&s(t,["multiSpeakerVoiceConfig"],Fs(o,i));const l=r(e,["languageCode"]);return l!=null&&s(t,["languageCode"],l),t}function bs(o,e){const t={},n=r(e,["voiceConfig"]);if(n!=null&&s(t,["voiceConfig"],Ls(o,n)),r(e,["multiSpeakerVoiceConfig"])!==void 0)throw new Error("multiSpeakerVoiceConfig parameter is not supported in Vertex AI.");const i=r(e,["languageCode"]);return i!=null&&s(t,["languageCode"],i),t}function Gs(o,e){const t={},n=r(e,["fps"]);n!=null&&s(t,["fps"],n);const i=r(e,["endOffset"]);i!=null&&s(t,["endOffset"],i);const l=r(e,["startOffset"]);return l!=null&&s(t,["startOffset"],l),t}function Bs(o,e){const t={},n=r(e,["fps"]);n!=null&&s(t,["fps"],n);const i=r(e,["endOffset"]);i!=null&&s(t,["endOffset"],i);const l=r(e,["startOffset"]);return l!=null&&s(t,["startOffset"],l),t}function qs(o,e){const t={};if(r(e,["displayName"])!==void 0)throw new Error("displayName parameter is not supported in Gemini API.");const n=r(e,["data"]);n!=null&&s(t,["data"],n);const i=r(e,["mimeType"]);return i!=null&&s(t,["mimeType"],i),t}function $s(o,e){const t={},n=r(e,["displayName"]);n!=null&&s(t,["displayName"],n);const i=r(e,["data"]);i!=null&&s(t,["data"],i);const l=r(e,["mimeType"]);return l!=null&&s(t,["mimeType"],l),t}function Os(o,e){const t={};if(r(e,["displayName"])!==void 0)throw new Error("displayName parameter is not supported in Gemini API.");const n=r(e,["fileUri"]);n!=null&&s(t,["fileUri"],n);const i=r(e,["mimeType"]);return i!=null&&s(t,["mimeType"],i),t}function Hs(o,e){const t={},n=r(e,["displayName"]);n!=null&&s(t,["displayName"],n);const i=r(e,["fileUri"]);i!=null&&s(t,["fileUri"],i);const l=r(e,["mimeType"]);return l!=null&&s(t,["mimeType"],l),t}function Js(o,e){const t={},n=r(e,["videoMetadata"]);n!=null&&s(t,["videoMetadata"],Gs(o,n));const i=r(e,["thought"]);i!=null&&s(t,["thought"],i);const l=r(e,["inlineData"]);l!=null&&s(t,["inlineData"],qs(o,l));const a=r(e,["fileData"]);a!=null&&s(t,["fileData"],Os(o,a));const u=r(e,["thoughtSignature"]);u!=null&&s(t,["thoughtSignature"],u);const d=r(e,["codeExecutionResult"]);d!=null&&s(t,["codeExecutionResult"],d);const c=r(e,["executableCode"]);c!=null&&s(t,["executableCode"],c);const f=r(e,["functionCall"]);f!=null&&s(t,["functionCall"],f);const p=r(e,["functionResponse"]);p!=null&&s(t,["functionResponse"],p);const m=r(e,["text"]);return m!=null&&s(t,["text"],m),t}function Ws(o,e){const t={},n=r(e,["videoMetadata"]);n!=null&&s(t,["videoMetadata"],Bs(o,n));const i=r(e,["thought"]);i!=null&&s(t,["thought"],i);const l=r(e,["inlineData"]);l!=null&&s(t,["inlineData"],$s(o,l));const a=r(e,["fileData"]);a!=null&&s(t,["fileData"],Hs(o,a));const u=r(e,["thoughtSignature"]);u!=null&&s(t,["thoughtSignature"],u);const d=r(e,["codeExecutionResult"]);d!=null&&s(t,["codeExecutionResult"],d);const c=r(e,["executableCode"]);c!=null&&s(t,["executableCode"],c);const f=r(e,["functionCall"]);f!=null&&s(t,["functionCall"],f);const p=r(e,["functionResponse"]);p!=null&&s(t,["functionResponse"],p);const m=r(e,["text"]);return m!=null&&s(t,["text"],m),t}function Ys(o,e){const t={},n=r(e,["parts"]);if(n!=null){let l=n;Array.isArray(l)&&(l=l.map(a=>Js(o,a))),s(t,["parts"],l)}const i=r(e,["role"]);return i!=null&&s(t,["role"],i),t}function Zs(o,e){const t={},n=r(e,["parts"]);if(n!=null){let l=n;Array.isArray(l)&&(l=l.map(a=>Ws(o,a))),s(t,["parts"],l)}const i=r(e,["role"]);return i!=null&&s(t,["role"],i),t}function zs(o,e){const t={},n=r(e,["behavior"]);n!=null&&s(t,["behavior"],n);const i=r(e,["description"]);i!=null&&s(t,["description"],i);const l=r(e,["name"]);l!=null&&s(t,["name"],l);const a=r(e,["parameters"]);a!=null&&s(t,["parameters"],a);const u=r(e,["response"]);return u!=null&&s(t,["response"],u),t}function Ks(o,e){const t={};if(r(e,["behavior"])!==void 0)throw new Error("behavior parameter is not supported in Vertex AI.");const n=r(e,["description"]);n!=null&&s(t,["description"],n);const i=r(e,["name"]);i!=null&&s(t,["name"],i);const l=r(e,["parameters"]);l!=null&&s(t,["parameters"],l);const a=r(e,["response"]);return a!=null&&s(t,["response"],a),t}function Xs(o,e){const t={},n=r(e,["startTime"]);n!=null&&s(t,["startTime"],n);const i=r(e,["endTime"]);return i!=null&&s(t,["endTime"],i),t}function Qs(o,e){const t={},n=r(e,["startTime"]);n!=null&&s(t,["startTime"],n);const i=r(e,["endTime"]);return i!=null&&s(t,["endTime"],i),t}function js(o,e){const t={},n=r(e,["timeRangeFilter"]);return n!=null&&s(t,["timeRangeFilter"],Xs(o,n)),t}function el(o,e){const t={},n=r(e,["timeRangeFilter"]);return n!=null&&s(t,["timeRangeFilter"],Qs(o,n)),t}function tl(o,e){const t={},n=r(e,["mode"]);n!=null&&s(t,["mode"],n);const i=r(e,["dynamicThreshold"]);return i!=null&&s(t,["dynamicThreshold"],i),t}function nl(o,e){const t={},n=r(e,["mode"]);n!=null&&s(t,["mode"],n);const i=r(e,["dynamicThreshold"]);return i!=null&&s(t,["dynamicThreshold"],i),t}function ol(o,e){const t={},n=r(e,["dynamicRetrievalConfig"]);return n!=null&&s(t,["dynamicRetrievalConfig"],tl(o,n)),t}function il(o,e){const t={},n=r(e,["dynamicRetrievalConfig"]);return n!=null&&s(t,["dynamicRetrievalConfig"],nl(o,n)),t}function rl(){return{}}function sl(o,e){const t={},n=r(e,["apiKeyString"]);return n!=null&&s(t,["apiKeyString"],n),t}function ll(o,e){const t={},n=r(e,["apiKeyConfig"]);n!=null&&s(t,["apiKeyConfig"],sl(o,n));const i=r(e,["authType"]);i!=null&&s(t,["authType"],i);const l=r(e,["googleServiceAccountConfig"]);l!=null&&s(t,["googleServiceAccountConfig"],l);const a=r(e,["httpBasicAuthConfig"]);a!=null&&s(t,["httpBasicAuthConfig"],a);const u=r(e,["oauthConfig"]);u!=null&&s(t,["oauthConfig"],u);const d=r(e,["oidcConfig"]);return d!=null&&s(t,["oidcConfig"],d),t}function al(o,e){const t={},n=r(e,["authConfig"]);return n!=null&&s(t,["authConfig"],ll(o,n)),t}function ul(){return{}}function cl(o,e){const t={},n=r(e,["functionDeclarations"]);if(n!=null){let d=n;Array.isArray(d)&&(d=d.map(c=>zs(o,c))),s(t,["functionDeclarations"],d)}if(r(e,["retrieval"])!==void 0)throw new Error("retrieval parameter is not supported in Gemini API.");const i=r(e,["googleSearch"]);i!=null&&s(t,["googleSearch"],js(o,i));const l=r(e,["googleSearchRetrieval"]);if(l!=null&&s(t,["googleSearchRetrieval"],ol(o,l)),r(e,["enterpriseWebSearch"])!==void 0)throw new Error("enterpriseWebSearch parameter is not supported in Gemini API.");if(r(e,["googleMaps"])!==void 0)throw new Error("googleMaps parameter is not supported in Gemini API.");r(e,["urlContext"])!=null&&s(t,["urlContext"],ul());const u=r(e,["codeExecution"]);return u!=null&&s(t,["codeExecution"],u),t}function dl(o,e){const t={},n=r(e,["functionDeclarations"]);if(n!=null){let f=n;Array.isArray(f)&&(f=f.map(p=>Ks(o,p))),s(t,["functionDeclarations"],f)}const i=r(e,["retrieval"]);i!=null&&s(t,["retrieval"],i);const l=r(e,["googleSearch"]);l!=null&&s(t,["googleSearch"],el(o,l));const a=r(e,["googleSearchRetrieval"]);a!=null&&s(t,["googleSearchRetrieval"],il(o,a)),r(e,["enterpriseWebSearch"])!=null&&s(t,["enterpriseWebSearch"],rl());const d=r(e,["googleMaps"]);if(d!=null&&s(t,["googleMaps"],al(o,d)),r(e,["urlContext"])!==void 0)throw new Error("urlContext parameter is not supported in Vertex AI.");const c=r(e,["codeExecution"]);return c!=null&&s(t,["codeExecution"],c),t}function fl(o,e){const t={},n=r(e,["handle"]);if(n!=null&&s(t,["handle"],n),r(e,["transparent"])!==void 0)throw new Error("transparent parameter is not supported in Gemini API.");return t}function pl(o,e){const t={},n=r(e,["handle"]);n!=null&&s(t,["handle"],n);const i=r(e,["transparent"]);return i!=null&&s(t,["transparent"],i),t}function ho(){return{}}function go(){return{}}function ml(o,e){const t={},n=r(e,["disabled"]);n!=null&&s(t,["disabled"],n);const i=r(e,["startOfSpeechSensitivity"]);i!=null&&s(t,["startOfSpeechSensitivity"],i);const l=r(e,["endOfSpeechSensitivity"]);l!=null&&s(t,["endOfSpeechSensitivity"],l);const a=r(e,["prefixPaddingMs"]);a!=null&&s(t,["prefixPaddingMs"],a);const u=r(e,["silenceDurationMs"]);return u!=null&&s(t,["silenceDurationMs"],u),t}function hl(o,e){const t={},n=r(e,["disabled"]);n!=null&&s(t,["disabled"],n);const i=r(e,["startOfSpeechSensitivity"]);i!=null&&s(t,["startOfSpeechSensitivity"],i);const l=r(e,["endOfSpeechSensitivity"]);l!=null&&s(t,["endOfSpeechSensitivity"],l);const a=r(e,["prefixPaddingMs"]);a!=null&&s(t,["prefixPaddingMs"],a);const u=r(e,["silenceDurationMs"]);return u!=null&&s(t,["silenceDurationMs"],u),t}function gl(o,e){const t={},n=r(e,["automaticActivityDetection"]);n!=null&&s(t,["automaticActivityDetection"],ml(o,n));const i=r(e,["activityHandling"]);i!=null&&s(t,["activityHandling"],i);const l=r(e,["turnCoverage"]);return l!=null&&s(t,["turnCoverage"],l),t}function yl(o,e){const t={},n=r(e,["automaticActivityDetection"]);n!=null&&s(t,["automaticActivityDetection"],hl(o,n));const i=r(e,["activityHandling"]);i!=null&&s(t,["activityHandling"],i);const l=r(e,["turnCoverage"]);return l!=null&&s(t,["turnCoverage"],l),t}function vl(o,e){const t={},n=r(e,["targetTokens"]);return n!=null&&s(t,["targetTokens"],n),t}function Tl(o,e){const t={},n=r(e,["targetTokens"]);return n!=null&&s(t,["targetTokens"],n),t}function Cl(o,e){const t={},n=r(e,["triggerTokens"]);n!=null&&s(t,["triggerTokens"],n);const i=r(e,["slidingWindow"]);return i!=null&&s(t,["slidingWindow"],vl(o,i)),t}function _l(o,e){const t={},n=r(e,["triggerTokens"]);n!=null&&s(t,["triggerTokens"],n);const i=r(e,["slidingWindow"]);return i!=null&&s(t,["slidingWindow"],Tl(o,i)),t}function El(o,e){const t={},n=r(e,["proactiveAudio"]);return n!=null&&s(t,["proactiveAudio"],n),t}function Sl(o,e){const t={},n=r(e,["proactiveAudio"]);return n!=null&&s(t,["proactiveAudio"],n),t}function xl(o,e,t){const n={},i=r(e,["generationConfig"]);t!==void 0&&i!=null&&s(t,["setup","generationConfig"],i);const l=r(e,["responseModalities"]);t!==void 0&&l!=null&&s(t,["setup","generationConfig","responseModalities"],l);const a=r(e,["temperature"]);t!==void 0&&a!=null&&s(t,["setup","generationConfig","temperature"],a);const u=r(e,["topP"]);t!==void 0&&u!=null&&s(t,["setup","generationConfig","topP"],u);const d=r(e,["topK"]);t!==void 0&&d!=null&&s(t,["setup","generationConfig","topK"],d);const c=r(e,["maxOutputTokens"]);t!==void 0&&c!=null&&s(t,["setup","generationConfig","maxOutputTokens"],c);const f=r(e,["mediaResolution"]);t!==void 0&&f!=null&&s(t,["setup","generationConfig","mediaResolution"],f);const p=r(e,["seed"]);t!==void 0&&p!=null&&s(t,["setup","generationConfig","seed"],p);const m=r(e,["speechConfig"]);t!==void 0&&m!=null&&s(t,["setup","generationConfig","speechConfig"],Us(o,Ct(o,m)));const h=r(e,["enableAffectiveDialog"]);t!==void 0&&h!=null&&s(t,["setup","generationConfig","enableAffectiveDialog"],h);const g=r(e,["systemInstruction"]);t!==void 0&&g!=null&&s(t,["setup","systemInstruction"],Ys(o,K(o,g)));const v=r(e,["tools"]);if(t!==void 0&&v!=null){let V=Be(o,v);Array.isArray(V)&&(V=V.map(B=>cl(o,Ge(o,B)))),s(t,["setup","tools"],V)}const E=r(e,["sessionResumption"]);t!==void 0&&E!=null&&s(t,["setup","sessionResumption"],fl(o,E));const M=r(e,["inputAudioTranscription"]);t!==void 0&&M!=null&&s(t,["setup","inputAudioTranscription"],ho());const _=r(e,["outputAudioTranscription"]);t!==void 0&&_!=null&&s(t,["setup","outputAudioTranscription"],ho());const A=r(e,["realtimeInputConfig"]);t!==void 0&&A!=null&&s(t,["setup","realtimeInputConfig"],gl(o,A));const R=r(e,["contextWindowCompression"]);t!==void 0&&R!=null&&s(t,["setup","contextWindowCompression"],Cl(o,R));const k=r(e,["proactivity"]);return t!==void 0&&k!=null&&s(t,["setup","proactivity"],El(o,k)),n}function Al(o,e,t){const n={},i=r(e,["generationConfig"]);t!==void 0&&i!=null&&s(t,["setup","generationConfig"],i);const l=r(e,["responseModalities"]);t!==void 0&&l!=null&&s(t,["setup","generationConfig","responseModalities"],l);const a=r(e,["temperature"]);t!==void 0&&a!=null&&s(t,["setup","generationConfig","temperature"],a);const u=r(e,["topP"]);t!==void 0&&u!=null&&s(t,["setup","generationConfig","topP"],u);const d=r(e,["topK"]);t!==void 0&&d!=null&&s(t,["setup","generationConfig","topK"],d);const c=r(e,["maxOutputTokens"]);t!==void 0&&c!=null&&s(t,["setup","generationConfig","maxOutputTokens"],c);const f=r(e,["mediaResolution"]);t!==void 0&&f!=null&&s(t,["setup","generationConfig","mediaResolution"],f);const p=r(e,["seed"]);t!==void 0&&p!=null&&s(t,["setup","generationConfig","seed"],p);const m=r(e,["speechConfig"]);t!==void 0&&m!=null&&s(t,["setup","generationConfig","speechConfig"],bs(o,Ct(o,m)));const h=r(e,["enableAffectiveDialog"]);t!==void 0&&h!=null&&s(t,["setup","generationConfig","enableAffectiveDialog"],h);const g=r(e,["systemInstruction"]);t!==void 0&&g!=null&&s(t,["setup","systemInstruction"],Zs(o,K(o,g)));const v=r(e,["tools"]);if(t!==void 0&&v!=null){let V=Be(o,v);Array.isArray(V)&&(V=V.map(B=>dl(o,Ge(o,B)))),s(t,["setup","tools"],V)}const E=r(e,["sessionResumption"]);t!==void 0&&E!=null&&s(t,["setup","sessionResumption"],pl(o,E));const M=r(e,["inputAudioTranscription"]);t!==void 0&&M!=null&&s(t,["setup","inputAudioTranscription"],go());const _=r(e,["outputAudioTranscription"]);t!==void 0&&_!=null&&s(t,["setup","outputAudioTranscription"],go());const A=r(e,["realtimeInputConfig"]);t!==void 0&&A!=null&&s(t,["setup","realtimeInputConfig"],yl(o,A));const R=r(e,["contextWindowCompression"]);t!==void 0&&R!=null&&s(t,["setup","contextWindowCompression"],_l(o,R));const k=r(e,["proactivity"]);return t!==void 0&&k!=null&&s(t,["setup","proactivity"],Sl(o,k)),n}function Ml(o,e){const t={},n=r(e,["model"]);n!=null&&s(t,["setup","model"],q(o,n));const i=r(e,["config"]);return i!=null&&s(t,["config"],xl(o,i,t)),t}function Il(o,e){const t={},n=r(e,["model"]);n!=null&&s(t,["setup","model"],q(o,n));const i=r(e,["config"]);return i!=null&&s(t,["config"],Al(o,i,t)),t}function Rl(){return{}}function wl(){return{}}function Pl(){return{}}function Nl(){return{}}function kl(o,e){const t={},n=r(e,["media"]);n!=null&&s(t,["mediaChunks"],Kn(o,n));const i=r(e,["audio"]);i!=null&&s(t,["audio"],nr(o,i));const l=r(e,["audioStreamEnd"]);l!=null&&s(t,["audioStreamEnd"],l);const a=r(e,["video"]);a!=null&&s(t,["video"],tr(o,a));const u=r(e,["text"]);return u!=null&&s(t,["text"],u),r(e,["activityStart"])!=null&&s(t,["activityStart"],Rl()),r(e,["activityEnd"])!=null&&s(t,["activityEnd"],Pl()),t}function Dl(o,e){const t={},n=r(e,["media"]);if(n!=null&&s(t,["mediaChunks"],Kn(o,n)),r(e,["audio"])!==void 0)throw new Error("audio parameter is not supported in Vertex AI.");const i=r(e,["audioStreamEnd"]);if(i!=null&&s(t,["audioStreamEnd"],i),r(e,["video"])!==void 0)throw new Error("video parameter is not supported in Vertex AI.");if(r(e,["text"])!==void 0)throw new Error("text parameter is not supported in Vertex AI.");return r(e,["activityStart"])!=null&&s(t,["activityStart"],wl()),r(e,["activityEnd"])!=null&&s(t,["activityEnd"],Nl()),t}function yo(o,e){const t={},n=r(e,["text"]);n!=null&&s(t,["text"],n);const i=r(e,["weight"]);return i!=null&&s(t,["weight"],i),t}function Ll(o,e){const t={},n=r(e,["weightedPrompts"]);if(n!=null){let i=n;Array.isArray(i)&&(i=i.map(l=>yo(o,l))),s(t,["weightedPrompts"],i)}return t}function vo(o,e){const t={},n=r(e,["temperature"]);n!=null&&s(t,["temperature"],n);const i=r(e,["topK"]);i!=null&&s(t,["topK"],i);const l=r(e,["seed"]);l!=null&&s(t,["seed"],l);const a=r(e,["guidance"]);a!=null&&s(t,["guidance"],a);const u=r(e,["bpm"]);u!=null&&s(t,["bpm"],u);const d=r(e,["density"]);d!=null&&s(t,["density"],d);const c=r(e,["brightness"]);c!=null&&s(t,["brightness"],c);const f=r(e,["scale"]);f!=null&&s(t,["scale"],f);const p=r(e,["muteBass"]);p!=null&&s(t,["muteBass"],p);const m=r(e,["muteDrums"]);m!=null&&s(t,["muteDrums"],m);const h=r(e,["onlyBassAndDrums"]);return h!=null&&s(t,["onlyBassAndDrums"],h),t}function Vl(o,e){const t={},n=r(e,["musicGenerationConfig"]);return n!=null&&s(t,["musicGenerationConfig"],vo(o,n)),t}function To(o,e){const t={},n=r(e,["model"]);return n!=null&&s(t,["model"],n),t}function Co(o,e){const t={},n=r(e,["weightedPrompts"]);if(n!=null){let i=n;Array.isArray(i)&&(i=i.map(l=>yo(o,l))),s(t,["weightedPrompts"],i)}return t}function Et(o,e){const t={},n=r(e,["setup"]);n!=null&&s(t,["setup"],To(o,n));const i=r(e,["clientContent"]);i!=null&&s(t,["clientContent"],Co(o,i));const l=r(e,["musicGenerationConfig"]);l!=null&&s(t,["musicGenerationConfig"],vo(o,l));const a=r(e,["playbackControl"]);return a!=null&&s(t,["playbackControl"],a),t}function Fl(){return{}}function Ul(){return{}}function bl(o,e){const t={},n=r(e,["fps"]);n!=null&&s(t,["fps"],n);const i=r(e,["endOffset"]);i!=null&&s(t,["endOffset"],i);const l=r(e,["startOffset"]);return l!=null&&s(t,["startOffset"],l),t}function Gl(o,e){const t={},n=r(e,["fps"]);n!=null&&s(t,["fps"],n);const i=r(e,["endOffset"]);i!=null&&s(t,["endOffset"],i);const l=r(e,["startOffset"]);return l!=null&&s(t,["startOffset"],l),t}function Bl(o,e){const t={},n=r(e,["data"]);n!=null&&s(t,["data"],n);const i=r(e,["mimeType"]);return i!=null&&s(t,["mimeType"],i),t}function ql(o,e){const t={},n=r(e,["displayName"]);n!=null&&s(t,["displayName"],n);const i=r(e,["data"]);i!=null&&s(t,["data"],i);const l=r(e,["mimeType"]);return l!=null&&s(t,["mimeType"],l),t}function $l(o,e){const t={},n=r(e,["fileUri"]);n!=null&&s(t,["fileUri"],n);const i=r(e,["mimeType"]);return i!=null&&s(t,["mimeType"],i),t}function Ol(o,e){const t={},n=r(e,["displayName"]);n!=null&&s(t,["displayName"],n);const i=r(e,["fileUri"]);i!=null&&s(t,["fileUri"],i);const l=r(e,["mimeType"]);return l!=null&&s(t,["mimeType"],l),t}function Hl(o,e){const t={},n=r(e,["videoMetadata"]);n!=null&&s(t,["videoMetadata"],bl(o,n));const i=r(e,["thought"]);i!=null&&s(t,["thought"],i);const l=r(e,["inlineData"]);l!=null&&s(t,["inlineData"],Bl(o,l));const a=r(e,["fileData"]);a!=null&&s(t,["fileData"],$l(o,a));const u=r(e,["thoughtSignature"]);u!=null&&s(t,["thoughtSignature"],u);const d=r(e,["codeExecutionResult"]);d!=null&&s(t,["codeExecutionResult"],d);const c=r(e,["executableCode"]);c!=null&&s(t,["executableCode"],c);const f=r(e,["functionCall"]);f!=null&&s(t,["functionCall"],f);const p=r(e,["functionResponse"]);p!=null&&s(t,["functionResponse"],p);const m=r(e,["text"]);return m!=null&&s(t,["text"],m),t}function Jl(o,e){const t={},n=r(e,["videoMetadata"]);n!=null&&s(t,["videoMetadata"],Gl(o,n));const i=r(e,["thought"]);i!=null&&s(t,["thought"],i);const l=r(e,["inlineData"]);l!=null&&s(t,["inlineData"],ql(o,l));const a=r(e,["fileData"]);a!=null&&s(t,["fileData"],Ol(o,a));const u=r(e,["thoughtSignature"]);u!=null&&s(t,["thoughtSignature"],u);const d=r(e,["codeExecutionResult"]);d!=null&&s(t,["codeExecutionResult"],d);const c=r(e,["executableCode"]);c!=null&&s(t,["executableCode"],c);const f=r(e,["functionCall"]);f!=null&&s(t,["functionCall"],f);const p=r(e,["functionResponse"]);p!=null&&s(t,["functionResponse"],p);const m=r(e,["text"]);return m!=null&&s(t,["text"],m),t}function Wl(o,e){const t={},n=r(e,["parts"]);if(n!=null){let l=n;Array.isArray(l)&&(l=l.map(a=>Hl(o,a))),s(t,["parts"],l)}const i=r(e,["role"]);return i!=null&&s(t,["role"],i),t}function Yl(o,e){const t={},n=r(e,["parts"]);if(n!=null){let l=n;Array.isArray(l)&&(l=l.map(a=>Jl(o,a))),s(t,["parts"],l)}const i=r(e,["role"]);return i!=null&&s(t,["role"],i),t}function _o(o,e){const t={},n=r(e,["text"]);n!=null&&s(t,["text"],n);const i=r(e,["finished"]);return i!=null&&s(t,["finished"],i),t}function Eo(o,e){const t={},n=r(e,["text"]);n!=null&&s(t,["text"],n);const i=r(e,["finished"]);return i!=null&&s(t,["finished"],i),t}function Zl(o,e){const t={},n=r(e,["retrievedUrl"]);n!=null&&s(t,["retrievedUrl"],n);const i=r(e,["urlRetrievalStatus"]);return i!=null&&s(t,["urlRetrievalStatus"],i),t}function zl(o,e){const t={},n=r(e,["urlMetadata"]);if(n!=null){let i=n;Array.isArray(i)&&(i=i.map(l=>Zl(o,l))),s(t,["urlMetadata"],i)}return t}function Kl(o,e){const t={},n=r(e,["modelTurn"]);n!=null&&s(t,["modelTurn"],Wl(o,n));const i=r(e,["turnComplete"]);i!=null&&s(t,["turnComplete"],i);const l=r(e,["interrupted"]);l!=null&&s(t,["interrupted"],l);const a=r(e,["groundingMetadata"]);a!=null&&s(t,["groundingMetadata"],a);const u=r(e,["generationComplete"]);u!=null&&s(t,["generationComplete"],u);const d=r(e,["inputTranscription"]);d!=null&&s(t,["inputTranscription"],_o(o,d));const c=r(e,["outputTranscription"]);c!=null&&s(t,["outputTranscription"],_o(o,c));const f=r(e,["urlContextMetadata"]);return f!=null&&s(t,["urlContextMetadata"],zl(o,f)),t}function Xl(o,e){const t={},n=r(e,["modelTurn"]);n!=null&&s(t,["modelTurn"],Yl(o,n));const i=r(e,["turnComplete"]);i!=null&&s(t,["turnComplete"],i);const l=r(e,["interrupted"]);l!=null&&s(t,["interrupted"],l);const a=r(e,["groundingMetadata"]);a!=null&&s(t,["groundingMetadata"],a);const u=r(e,["generationComplete"]);u!=null&&s(t,["generationComplete"],u);const d=r(e,["inputTranscription"]);d!=null&&s(t,["inputTranscription"],Eo(o,d));const c=r(e,["outputTranscription"]);return c!=null&&s(t,["outputTranscription"],Eo(o,c)),t}function Ql(o,e){const t={},n=r(e,["id"]);n!=null&&s(t,["id"],n);const i=r(e,["args"]);i!=null&&s(t,["args"],i);const l=r(e,["name"]);return l!=null&&s(t,["name"],l),t}function jl(o,e){const t={},n=r(e,["args"]);n!=null&&s(t,["args"],n);const i=r(e,["name"]);return i!=null&&s(t,["name"],i),t}function ea(o,e){const t={},n=r(e,["functionCalls"]);if(n!=null){let i=n;Array.isArray(i)&&(i=i.map(l=>Ql(o,l))),s(t,["functionCalls"],i)}return t}function ta(o,e){const t={},n=r(e,["functionCalls"]);if(n!=null){let i=n;Array.isArray(i)&&(i=i.map(l=>jl(o,l))),s(t,["functionCalls"],i)}return t}function na(o,e){const t={},n=r(e,["ids"]);return n!=null&&s(t,["ids"],n),t}function oa(o,e){const t={},n=r(e,["ids"]);return n!=null&&s(t,["ids"],n),t}function ot(o,e){const t={},n=r(e,["modality"]);n!=null&&s(t,["modality"],n);const i=r(e,["tokenCount"]);return i!=null&&s(t,["tokenCount"],i),t}function it(o,e){const t={},n=r(e,["modality"]);n!=null&&s(t,["modality"],n);const i=r(e,["tokenCount"]);return i!=null&&s(t,["tokenCount"],i),t}function ia(o,e){const t={},n=r(e,["promptTokenCount"]);n!=null&&s(t,["promptTokenCount"],n);const i=r(e,["cachedContentTokenCount"]);i!=null&&s(t,["cachedContentTokenCount"],i);const l=r(e,["responseTokenCount"]);l!=null&&s(t,["responseTokenCount"],l);const a=r(e,["toolUsePromptTokenCount"]);a!=null&&s(t,["toolUsePromptTokenCount"],a);const u=r(e,["thoughtsTokenCount"]);u!=null&&s(t,["thoughtsTokenCount"],u);const d=r(e,["totalTokenCount"]);d!=null&&s(t,["totalTokenCount"],d);const c=r(e,["promptTokensDetails"]);if(c!=null){let h=c;Array.isArray(h)&&(h=h.map(g=>ot(o,g))),s(t,["promptTokensDetails"],h)}const f=r(e,["cacheTokensDetails"]);if(f!=null){let h=f;Array.isArray(h)&&(h=h.map(g=>ot(o,g))),s(t,["cacheTokensDetails"],h)}const p=r(e,["responseTokensDetails"]);if(p!=null){let h=p;Array.isArray(h)&&(h=h.map(g=>ot(o,g))),s(t,["responseTokensDetails"],h)}const m=r(e,["toolUsePromptTokensDetails"]);if(m!=null){let h=m;Array.isArray(h)&&(h=h.map(g=>ot(o,g))),s(t,["toolUsePromptTokensDetails"],h)}return t}function ra(o,e){const t={},n=r(e,["promptTokenCount"]);n!=null&&s(t,["promptTokenCount"],n);const i=r(e,["cachedContentTokenCount"]);i!=null&&s(t,["cachedContentTokenCount"],i);const l=r(e,["candidatesTokenCount"]);l!=null&&s(t,["responseTokenCount"],l);const a=r(e,["toolUsePromptTokenCount"]);a!=null&&s(t,["toolUsePromptTokenCount"],a);const u=r(e,["thoughtsTokenCount"]);u!=null&&s(t,["thoughtsTokenCount"],u);const d=r(e,["totalTokenCount"]);d!=null&&s(t,["totalTokenCount"],d);const c=r(e,["promptTokensDetails"]);if(c!=null){let g=c;Array.isArray(g)&&(g=g.map(v=>it(o,v))),s(t,["promptTokensDetails"],g)}const f=r(e,["cacheTokensDetails"]);if(f!=null){let g=f;Array.isArray(g)&&(g=g.map(v=>it(o,v))),s(t,["cacheTokensDetails"],g)}const p=r(e,["candidatesTokensDetails"]);if(p!=null){let g=p;Array.isArray(g)&&(g=g.map(v=>it(o,v))),s(t,["responseTokensDetails"],g)}const m=r(e,["toolUsePromptTokensDetails"]);if(m!=null){let g=m;Array.isArray(g)&&(g=g.map(v=>it(o,v))),s(t,["toolUsePromptTokensDetails"],g)}const h=r(e,["trafficType"]);return h!=null&&s(t,["trafficType"],h),t}function sa(o,e){const t={},n=r(e,["timeLeft"]);return n!=null&&s(t,["timeLeft"],n),t}function la(o,e){const t={},n=r(e,["timeLeft"]);return n!=null&&s(t,["timeLeft"],n),t}function aa(o,e){const t={},n=r(e,["newHandle"]);n!=null&&s(t,["newHandle"],n);const i=r(e,["resumable"]);i!=null&&s(t,["resumable"],i);const l=r(e,["lastConsumedClientMessageIndex"]);return l!=null&&s(t,["lastConsumedClientMessageIndex"],l),t}function ua(o,e){const t={},n=r(e,["newHandle"]);n!=null&&s(t,["newHandle"],n);const i=r(e,["resumable"]);i!=null&&s(t,["resumable"],i);const l=r(e,["lastConsumedClientMessageIndex"]);return l!=null&&s(t,["lastConsumedClientMessageIndex"],l),t}function ca(o,e){const t={};r(e,["setupComplete"])!=null&&s(t,["setupComplete"],Fl());const i=r(e,["serverContent"]);i!=null&&s(t,["serverContent"],Kl(o,i));const l=r(e,["toolCall"]);l!=null&&s(t,["toolCall"],ea(o,l));const a=r(e,["toolCallCancellation"]);a!=null&&s(t,["toolCallCancellation"],na(o,a));const u=r(e,["usageMetadata"]);u!=null&&s(t,["usageMetadata"],ia(o,u));const d=r(e,["goAway"]);d!=null&&s(t,["goAway"],sa(o,d));const c=r(e,["sessionResumptionUpdate"]);return c!=null&&s(t,["sessionResumptionUpdate"],aa(o,c)),t}function da(o,e){const t={};r(e,["setupComplete"])!=null&&s(t,["setupComplete"],Ul());const i=r(e,["serverContent"]);i!=null&&s(t,["serverContent"],Xl(o,i));const l=r(e,["toolCall"]);l!=null&&s(t,["toolCall"],ta(o,l));const a=r(e,["toolCallCancellation"]);a!=null&&s(t,["toolCallCancellation"],oa(o,a));const u=r(e,["usageMetadata"]);u!=null&&s(t,["usageMetadata"],ra(o,u));const d=r(e,["goAway"]);d!=null&&s(t,["goAway"],la(o,d));const c=r(e,["sessionResumptionUpdate"]);return c!=null&&s(t,["sessionResumptionUpdate"],ua(o,c)),t}function fa(){return{}}function pa(o,e){const t={},n=r(e,["text"]);n!=null&&s(t,["text"],n);const i=r(e,["weight"]);return i!=null&&s(t,["weight"],i),t}function ma(o,e){const t={},n=r(e,["weightedPrompts"]);if(n!=null){let i=n;Array.isArray(i)&&(i=i.map(l=>pa(o,l))),s(t,["weightedPrompts"],i)}return t}function ha(o,e){const t={},n=r(e,["temperature"]);n!=null&&s(t,["temperature"],n);const i=r(e,["topK"]);i!=null&&s(t,["topK"],i);const l=r(e,["seed"]);l!=null&&s(t,["seed"],l);const a=r(e,["guidance"]);a!=null&&s(t,["guidance"],a);const u=r(e,["bpm"]);u!=null&&s(t,["bpm"],u);const d=r(e,["density"]);d!=null&&s(t,["density"],d);const c=r(e,["brightness"]);c!=null&&s(t,["brightness"],c);const f=r(e,["scale"]);f!=null&&s(t,["scale"],f);const p=r(e,["muteBass"]);p!=null&&s(t,["muteBass"],p);const m=r(e,["muteDrums"]);m!=null&&s(t,["muteDrums"],m);const h=r(e,["onlyBassAndDrums"]);return h!=null&&s(t,["onlyBassAndDrums"],h),t}function ga(o,e){const t={},n=r(e,["clientContent"]);n!=null&&s(t,["clientContent"],ma(o,n));const i=r(e,["musicGenerationConfig"]);return i!=null&&s(t,["musicGenerationConfig"],ha(o,i)),t}function ya(o,e){const t={},n=r(e,["data"]);n!=null&&s(t,["data"],n);const i=r(e,["mimeType"]);i!=null&&s(t,["mimeType"],i);const l=r(e,["sourceMetadata"]);return l!=null&&s(t,["sourceMetadata"],ga(o,l)),t}function va(o,e){const t={},n=r(e,["audioChunks"]);if(n!=null){let i=n;Array.isArray(i)&&(i=i.map(l=>ya(o,l))),s(t,["audioChunks"],i)}return t}function Ta(o,e){const t={},n=r(e,["text"]);n!=null&&s(t,["text"],n);const i=r(e,["filteredReason"]);return i!=null&&s(t,["filteredReason"],i),t}function Ca(o,e){const t={};r(e,["setupComplete"])!=null&&s(t,["setupComplete"],fa());const i=r(e,["serverContent"]);i!=null&&s(t,["serverContent"],va(o,i));const l=r(e,["filteredPrompt"]);return l!=null&&s(t,["filteredPrompt"],Ta(o,l)),t}/**
172
142
  * @license
173
143
  * Copyright 2025 Google LLC
174
144
  * SPDX-License-Identifier: Apache-2.0
175
- */function Vd(n,e){const t={},A=r(e,["fps"]);A!=null&&s(t,["fps"],A);const i=r(e,["endOffset"]);i!=null&&s(t,["endOffset"],i);const o=r(e,["startOffset"]);return o!=null&&s(t,["startOffset"],o),t}function Ld(n,e){const t={};if(r(e,["displayName"])!==void 0)throw new Error("displayName parameter is not supported in Gemini API.");const A=r(e,["data"]);A!=null&&s(t,["data"],A);const i=r(e,["mimeType"]);return i!=null&&s(t,["mimeType"],i),t}function Wd(n,e){const t={};if(r(e,["displayName"])!==void 0)throw new Error("displayName parameter is not supported in Gemini API.");const A=r(e,["fileUri"]);A!=null&&s(t,["fileUri"],A);const i=r(e,["mimeType"]);return i!=null&&s(t,["mimeType"],i),t}function jd(n,e){const t={},A=r(e,["videoMetadata"]);A!=null&&s(t,["videoMetadata"],Vd(n,A));const i=r(e,["thought"]);i!=null&&s(t,["thought"],i);const o=r(e,["inlineData"]);o!=null&&s(t,["inlineData"],Ld(n,o));const a=r(e,["fileData"]);a!=null&&s(t,["fileData"],Wd(n,a));const c=r(e,["thoughtSignature"]);c!=null&&s(t,["thoughtSignature"],c);const l=r(e,["codeExecutionResult"]);l!=null&&s(t,["codeExecutionResult"],l);const u=r(e,["executableCode"]);u!=null&&s(t,["executableCode"],u);const B=r(e,["functionCall"]);B!=null&&s(t,["functionCall"],B);const d=r(e,["functionResponse"]);d!=null&&s(t,["functionResponse"],d);const f=r(e,["text"]);return f!=null&&s(t,["text"],f),t}function Yt(n,e){const t={},A=r(e,["parts"]);if(A!=null){let o=A;Array.isArray(o)&&(o=o.map(a=>jd(n,a))),s(t,["parts"],o)}const i=r(e,["role"]);return i!=null&&s(t,["role"],i),t}function _d(n,e){const t={},A=r(e,["anyOf"]);A!=null&&s(t,["anyOf"],A);const i=r(e,["default"]);i!=null&&s(t,["default"],i);const o=r(e,["description"]);o!=null&&s(t,["description"],o);const a=r(e,["enum"]);a!=null&&s(t,["enum"],a);const c=r(e,["example"]);c!=null&&s(t,["example"],c);const l=r(e,["format"]);l!=null&&s(t,["format"],l);const u=r(e,["items"]);u!=null&&s(t,["items"],u);const B=r(e,["maxItems"]);B!=null&&s(t,["maxItems"],B);const d=r(e,["maxLength"]);d!=null&&s(t,["maxLength"],d);const f=r(e,["maxProperties"]);f!=null&&s(t,["maxProperties"],f);const w=r(e,["maximum"]);w!=null&&s(t,["maximum"],w);const y=r(e,["minItems"]);y!=null&&s(t,["minItems"],y);const F=r(e,["minLength"]);F!=null&&s(t,["minLength"],F);const R=r(e,["minProperties"]);R!=null&&s(t,["minProperties"],R);const S=r(e,["minimum"]);S!=null&&s(t,["minimum"],S);const M=r(e,["nullable"]);M!=null&&s(t,["nullable"],M);const T=r(e,["pattern"]);T!=null&&s(t,["pattern"],T);const D=r(e,["properties"]);D!=null&&s(t,["properties"],D);const I=r(e,["propertyOrdering"]);I!=null&&s(t,["propertyOrdering"],I);const U=r(e,["required"]);U!=null&&s(t,["required"],U);const x=r(e,["title"]);x!=null&&s(t,["title"],x);const v=r(e,["type"]);return v!=null&&s(t,["type"],v),t}function Xd(n,e){const t={};if(r(e,["method"])!==void 0)throw new Error("method parameter is not supported in Gemini API.");const A=r(e,["category"]);A!=null&&s(t,["category"],A);const i=r(e,["threshold"]);return i!=null&&s(t,["threshold"],i),t}function Od(n,e){const t={},A=r(e,["behavior"]);A!=null&&s(t,["behavior"],A);const i=r(e,["description"]);i!=null&&s(t,["description"],i);const o=r(e,["name"]);o!=null&&s(t,["name"],o);const a=r(e,["parameters"]);a!=null&&s(t,["parameters"],a);const c=r(e,["response"]);return c!=null&&s(t,["response"],c),t}function Kd(n,e){const t={},A=r(e,["startTime"]);A!=null&&s(t,["startTime"],A);const i=r(e,["endTime"]);return i!=null&&s(t,["endTime"],i),t}function Zd(n,e){const t={},A=r(e,["timeRangeFilter"]);return A!=null&&s(t,["timeRangeFilter"],Kd(n,A)),t}function qd(n,e){const t={},A=r(e,["mode"]);A!=null&&s(t,["mode"],A);const i=r(e,["dynamicThreshold"]);return i!=null&&s(t,["dynamicThreshold"],i),t}function $d(n,e){const t={},A=r(e,["dynamicRetrievalConfig"]);return A!=null&&s(t,["dynamicRetrievalConfig"],qd(n,A)),t}function eE(){return{}}function tE(n,e){const t={},A=r(e,["functionDeclarations"]);if(A!=null){let l=A;Array.isArray(l)&&(l=l.map(u=>Od(n,u))),s(t,["functionDeclarations"],l)}if(r(e,["retrieval"])!==void 0)throw new Error("retrieval parameter is not supported in Gemini API.");const i=r(e,["googleSearch"]);i!=null&&s(t,["googleSearch"],Zd(n,i));const o=r(e,["googleSearchRetrieval"]);if(o!=null&&s(t,["googleSearchRetrieval"],$d(n,o)),r(e,["enterpriseWebSearch"])!==void 0)throw new Error("enterpriseWebSearch parameter is not supported in Gemini API.");if(r(e,["googleMaps"])!==void 0)throw new Error("googleMaps parameter is not supported in Gemini API.");r(e,["urlContext"])!=null&&s(t,["urlContext"],eE());const c=r(e,["codeExecution"]);return c!=null&&s(t,["codeExecution"],c),t}function nE(n,e){const t={},A=r(e,["mode"]);A!=null&&s(t,["mode"],A);const i=r(e,["allowedFunctionNames"]);return i!=null&&s(t,["allowedFunctionNames"],i),t}function AE(n,e){const t={},A=r(e,["latitude"]);A!=null&&s(t,["latitude"],A);const i=r(e,["longitude"]);return i!=null&&s(t,["longitude"],i),t}function iE(n,e){const t={},A=r(e,["latLng"]);A!=null&&s(t,["latLng"],AE(n,A));const i=r(e,["languageCode"]);return i!=null&&s(t,["languageCode"],i),t}function oE(n,e){const t={},A=r(e,["functionCallingConfig"]);A!=null&&s(t,["functionCallingConfig"],nE(n,A));const i=r(e,["retrievalConfig"]);return i!=null&&s(t,["retrievalConfig"],iE(n,i)),t}function rE(n,e){const t={},A=r(e,["voiceName"]);return A!=null&&s(t,["voiceName"],A),t}function or(n,e){const t={},A=r(e,["prebuiltVoiceConfig"]);return A!=null&&s(t,["prebuiltVoiceConfig"],rE(n,A)),t}function sE(n,e){const t={},A=r(e,["speaker"]);A!=null&&s(t,["speaker"],A);const i=r(e,["voiceConfig"]);return i!=null&&s(t,["voiceConfig"],or(n,i)),t}function aE(n,e){const t={},A=r(e,["speakerVoiceConfigs"]);if(A!=null){let i=A;Array.isArray(i)&&(i=i.map(o=>sE(n,o))),s(t,["speakerVoiceConfigs"],i)}return t}function cE(n,e){const t={},A=r(e,["voiceConfig"]);A!=null&&s(t,["voiceConfig"],or(n,A));const i=r(e,["multiSpeakerVoiceConfig"]);i!=null&&s(t,["multiSpeakerVoiceConfig"],aE(n,i));const o=r(e,["languageCode"]);return o!=null&&s(t,["languageCode"],o),t}function lE(n,e){const t={},A=r(e,["includeThoughts"]);A!=null&&s(t,["includeThoughts"],A);const i=r(e,["thinkingBudget"]);return i!=null&&s(t,["thinkingBudget"],i),t}function uE(n,e,t){const A={},i=r(e,["systemInstruction"]);t!==void 0&&i!=null&&s(t,["systemInstruction"],Yt(n,z0(n,i)));const o=r(e,["temperature"]);o!=null&&s(A,["temperature"],o);const a=r(e,["topP"]);a!=null&&s(A,["topP"],a);const c=r(e,["topK"]);c!=null&&s(A,["topK"],c);const l=r(e,["candidateCount"]);l!=null&&s(A,["candidateCount"],l);const u=r(e,["maxOutputTokens"]);u!=null&&s(A,["maxOutputTokens"],u);const B=r(e,["stopSequences"]);B!=null&&s(A,["stopSequences"],B);const d=r(e,["responseLogprobs"]);d!=null&&s(A,["responseLogprobs"],d);const f=r(e,["logprobs"]);f!=null&&s(A,["logprobs"],f);const w=r(e,["presencePenalty"]);w!=null&&s(A,["presencePenalty"],w);const y=r(e,["frequencyPenalty"]);y!=null&&s(A,["frequencyPenalty"],y);const F=r(e,["seed"]);F!=null&&s(A,["seed"],F);const R=r(e,["responseMimeType"]);R!=null&&s(A,["responseMimeType"],R);const S=r(e,["responseSchema"]);if(S!=null&&s(A,["responseSchema"],_d(n,yt(n,S))),r(e,["routingConfig"])!==void 0)throw new Error("routingConfig parameter is not supported in Gemini API.");if(r(e,["modelSelectionConfig"])!==void 0)throw new Error("modelSelectionConfig parameter is not supported in Gemini API.");const M=r(e,["safetySettings"]);if(t!==void 0&&M!=null){let Y=M;Array.isArray(Y)&&(Y=Y.map(P=>Xd(n,P))),s(t,["safetySettings"],Y)}const T=r(e,["tools"]);if(t!==void 0&&T!=null){let Y=ke(n,T);Array.isArray(Y)&&(Y=Y.map(P=>tE(n,Ge(n,P)))),s(t,["tools"],Y)}const D=r(e,["toolConfig"]);if(t!==void 0&&D!=null&&s(t,["toolConfig"],oE(n,D)),r(e,["labels"])!==void 0)throw new Error("labels parameter is not supported in Gemini API.");const I=r(e,["cachedContent"]);t!==void 0&&I!=null&&s(t,["cachedContent"],x2(n,I));const U=r(e,["responseModalities"]);U!=null&&s(A,["responseModalities"],U);const x=r(e,["mediaResolution"]);x!=null&&s(A,["mediaResolution"],x);const v=r(e,["speechConfig"]);if(v!=null&&s(A,["speechConfig"],cE(n,Jo(n,v))),r(e,["audioTimestamp"])!==void 0)throw new Error("audioTimestamp parameter is not supported in Gemini API.");const m=r(e,["thinkingConfig"]);return m!=null&&s(A,["thinkingConfig"],lE(n,m)),A}function rr(n,e){const t={},A=r(e,["model"]);A!=null&&s(t,["_url","model"],g0(n,A));const i=r(e,["contents"]);if(i!=null){let a=Z0(n,i);Array.isArray(a)&&(a=a.map(c=>Yt(n,c))),s(t,["contents"],a)}const o=r(e,["config"]);return o!=null&&s(t,["generationConfig"],uE(n,o,t)),t}function BE(n,e,t){const A={},i=r(e,["taskType"]);t!==void 0&&i!=null&&s(t,["requests[]","taskType"],i);const o=r(e,["title"]);t!==void 0&&o!=null&&s(t,["requests[]","title"],o);const a=r(e,["outputDimensionality"]);if(t!==void 0&&a!=null&&s(t,["requests[]","outputDimensionality"],a),r(e,["mimeType"])!==void 0)throw new Error("mimeType parameter is not supported in Gemini API.");if(r(e,["autoTruncate"])!==void 0)throw new Error("autoTruncate parameter is not supported in Gemini API.");return A}function gE(n,e){const t={},A=r(e,["model"]);A!=null&&s(t,["_url","model"],g0(n,A));const i=r(e,["contents"]);i!=null&&s(t,["requests[]","content"],ko(n,i));const o=r(e,["config"]);o!=null&&s(t,["config"],BE(n,o,t));const a=r(e,["model"]);return a!==void 0&&s(t,["requests[]","model"],g0(n,a)),t}function dE(n,e,t){const A={};if(r(e,["outputGcsUri"])!==void 0)throw new Error("outputGcsUri parameter is not supported in Gemini API.");if(r(e,["negativePrompt"])!==void 0)throw new Error("negativePrompt parameter is not supported in Gemini API.");const i=r(e,["numberOfImages"]);t!==void 0&&i!=null&&s(t,["parameters","sampleCount"],i);const o=r(e,["aspectRatio"]);t!==void 0&&o!=null&&s(t,["parameters","aspectRatio"],o);const a=r(e,["guidanceScale"]);if(t!==void 0&&a!=null&&s(t,["parameters","guidanceScale"],a),r(e,["seed"])!==void 0)throw new Error("seed parameter is not supported in Gemini API.");const c=r(e,["safetyFilterLevel"]);t!==void 0&&c!=null&&s(t,["parameters","safetySetting"],c);const l=r(e,["personGeneration"]);t!==void 0&&l!=null&&s(t,["parameters","personGeneration"],l);const u=r(e,["includeSafetyAttributes"]);t!==void 0&&u!=null&&s(t,["parameters","includeSafetyAttributes"],u);const B=r(e,["includeRaiReason"]);t!==void 0&&B!=null&&s(t,["parameters","includeRaiReason"],B);const d=r(e,["language"]);t!==void 0&&d!=null&&s(t,["parameters","language"],d);const f=r(e,["outputMimeType"]);t!==void 0&&f!=null&&s(t,["parameters","outputOptions","mimeType"],f);const w=r(e,["outputCompressionQuality"]);if(t!==void 0&&w!=null&&s(t,["parameters","outputOptions","compressionQuality"],w),r(e,["addWatermark"])!==void 0)throw new Error("addWatermark parameter is not supported in Gemini API.");if(r(e,["enhancePrompt"])!==void 0)throw new Error("enhancePrompt parameter is not supported in Gemini API.");return A}function EE(n,e){const t={},A=r(e,["model"]);A!=null&&s(t,["_url","model"],g0(n,A));const i=r(e,["prompt"]);i!=null&&s(t,["instances[0]","prompt"],i);const o=r(e,["config"]);return o!=null&&s(t,["config"],dE(n,o,t)),t}function fE(n,e){const t={},A=r(e,["model"]);A!=null&&s(t,["_url","name"],g0(n,A));const i=r(e,["config"]);return i!=null&&s(t,["config"],i),t}function QE(n,e,t){const A={},i=r(e,["pageSize"]);t!==void 0&&i!=null&&s(t,["_query","pageSize"],i);const o=r(e,["pageToken"]);t!==void 0&&o!=null&&s(t,["_query","pageToken"],o);const a=r(e,["filter"]);t!==void 0&&a!=null&&s(t,["_query","filter"],a);const c=r(e,["queryBase"]);return t!==void 0&&c!=null&&s(t,["_url","models_url"],Vo(n,c)),A}function pE(n,e){const t={},A=r(e,["config"]);return A!=null&&s(t,["config"],QE(n,A,t)),t}function hE(n,e,t){const A={},i=r(e,["displayName"]);t!==void 0&&i!=null&&s(t,["displayName"],i);const o=r(e,["description"]);t!==void 0&&o!=null&&s(t,["description"],o);const a=r(e,["defaultCheckpointId"]);return t!==void 0&&a!=null&&s(t,["defaultCheckpointId"],a),A}function wE(n,e){const t={},A=r(e,["model"]);A!=null&&s(t,["_url","name"],g0(n,A));const i=r(e,["config"]);return i!=null&&s(t,["config"],hE(n,i,t)),t}function mE(n,e){const t={},A=r(e,["model"]);A!=null&&s(t,["_url","name"],g0(n,A));const i=r(e,["config"]);return i!=null&&s(t,["config"],i),t}function CE(n,e){const t={};if(r(e,["systemInstruction"])!==void 0)throw new Error("systemInstruction parameter is not supported in Gemini API.");if(r(e,["tools"])!==void 0)throw new Error("tools parameter is not supported in Gemini API.");if(r(e,["generationConfig"])!==void 0)throw new Error("generationConfig parameter is not supported in Gemini API.");return t}function ME(n,e){const t={},A=r(e,["model"]);A!=null&&s(t,["_url","model"],g0(n,A));const i=r(e,["contents"]);if(i!=null){let a=Z0(n,i);Array.isArray(a)&&(a=a.map(c=>Yt(n,c))),s(t,["contents"],a)}const o=r(e,["config"]);return o!=null&&s(t,["config"],CE(n,o)),t}function yE(n,e){const t={};if(r(e,["gcsUri"])!==void 0)throw new Error("gcsUri parameter is not supported in Gemini API.");const A=r(e,["imageBytes"]);A!=null&&s(t,["bytesBase64Encoded"],v2(n,A));const i=r(e,["mimeType"]);return i!=null&&s(t,["mimeType"],i),t}function IE(n,e,t){const A={},i=r(e,["numberOfVideos"]);if(t!==void 0&&i!=null&&s(t,["parameters","sampleCount"],i),r(e,["outputGcsUri"])!==void 0)throw new Error("outputGcsUri parameter is not supported in Gemini API.");if(r(e,["fps"])!==void 0)throw new Error("fps parameter is not supported in Gemini API.");const o=r(e,["durationSeconds"]);if(t!==void 0&&o!=null&&s(t,["parameters","durationSeconds"],o),r(e,["seed"])!==void 0)throw new Error("seed parameter is not supported in Gemini API.");const a=r(e,["aspectRatio"]);if(t!==void 0&&a!=null&&s(t,["parameters","aspectRatio"],a),r(e,["resolution"])!==void 0)throw new Error("resolution parameter is not supported in Gemini API.");const c=r(e,["personGeneration"]);if(t!==void 0&&c!=null&&s(t,["parameters","personGeneration"],c),r(e,["pubsubTopic"])!==void 0)throw new Error("pubsubTopic parameter is not supported in Gemini API.");const l=r(e,["negativePrompt"]);if(t!==void 0&&l!=null&&s(t,["parameters","negativePrompt"],l),r(e,["enhancePrompt"])!==void 0)throw new Error("enhancePrompt parameter is not supported in Gemini API.");if(r(e,["generateAudio"])!==void 0)throw new Error("generateAudio parameter is not supported in Gemini API.");return A}function DE(n,e){const t={},A=r(e,["model"]);A!=null&&s(t,["_url","model"],g0(n,A));const i=r(e,["prompt"]);i!=null&&s(t,["instances[0]","prompt"],i);const o=r(e,["image"]);o!=null&&s(t,["instances[0]","image"],yE(n,o));const a=r(e,["config"]);return a!=null&&s(t,["config"],IE(n,a,t)),t}function FE(n,e){const t={},A=r(e,["fps"]);A!=null&&s(t,["fps"],A);const i=r(e,["endOffset"]);i!=null&&s(t,["endOffset"],i);const o=r(e,["startOffset"]);return o!=null&&s(t,["startOffset"],o),t}function xE(n,e){const t={},A=r(e,["displayName"]);A!=null&&s(t,["displayName"],A);const i=r(e,["data"]);i!=null&&s(t,["data"],i);const o=r(e,["mimeType"]);return o!=null&&s(t,["mimeType"],o),t}function vE(n,e){const t={},A=r(e,["displayName"]);A!=null&&s(t,["displayName"],A);const i=r(e,["fileUri"]);i!=null&&s(t,["fileUri"],i);const o=r(e,["mimeType"]);return o!=null&&s(t,["mimeType"],o),t}function UE(n,e){const t={},A=r(e,["videoMetadata"]);A!=null&&s(t,["videoMetadata"],FE(n,A));const i=r(e,["thought"]);i!=null&&s(t,["thought"],i);const o=r(e,["inlineData"]);o!=null&&s(t,["inlineData"],xE(n,o));const a=r(e,["fileData"]);a!=null&&s(t,["fileData"],vE(n,a));const c=r(e,["thoughtSignature"]);c!=null&&s(t,["thoughtSignature"],c);const l=r(e,["codeExecutionResult"]);l!=null&&s(t,["codeExecutionResult"],l);const u=r(e,["executableCode"]);u!=null&&s(t,["executableCode"],u);const B=r(e,["functionCall"]);B!=null&&s(t,["functionCall"],B);const d=r(e,["functionResponse"]);d!=null&&s(t,["functionResponse"],d);const f=r(e,["text"]);return f!=null&&s(t,["text"],f),t}function Ee(n,e){const t={},A=r(e,["parts"]);if(A!=null){let o=A;Array.isArray(o)&&(o=o.map(a=>UE(n,a))),s(t,["parts"],o)}const i=r(e,["role"]);return i!=null&&s(t,["role"],i),t}function YE(n,e){const t={},A=r(e,["anyOf"]);A!=null&&s(t,["anyOf"],A);const i=r(e,["default"]);i!=null&&s(t,["default"],i);const o=r(e,["description"]);o!=null&&s(t,["description"],o);const a=r(e,["enum"]);a!=null&&s(t,["enum"],a);const c=r(e,["example"]);c!=null&&s(t,["example"],c);const l=r(e,["format"]);l!=null&&s(t,["format"],l);const u=r(e,["items"]);u!=null&&s(t,["items"],u);const B=r(e,["maxItems"]);B!=null&&s(t,["maxItems"],B);const d=r(e,["maxLength"]);d!=null&&s(t,["maxLength"],d);const f=r(e,["maxProperties"]);f!=null&&s(t,["maxProperties"],f);const w=r(e,["maximum"]);w!=null&&s(t,["maximum"],w);const y=r(e,["minItems"]);y!=null&&s(t,["minItems"],y);const F=r(e,["minLength"]);F!=null&&s(t,["minLength"],F);const R=r(e,["minProperties"]);R!=null&&s(t,["minProperties"],R);const S=r(e,["minimum"]);S!=null&&s(t,["minimum"],S);const M=r(e,["nullable"]);M!=null&&s(t,["nullable"],M);const T=r(e,["pattern"]);T!=null&&s(t,["pattern"],T);const D=r(e,["properties"]);D!=null&&s(t,["properties"],D);const I=r(e,["propertyOrdering"]);I!=null&&s(t,["propertyOrdering"],I);const U=r(e,["required"]);U!=null&&s(t,["required"],U);const x=r(e,["title"]);x!=null&&s(t,["title"],x);const v=r(e,["type"]);return v!=null&&s(t,["type"],v),t}function TE(n,e){const t={},A=r(e,["featureSelectionPreference"]);return A!=null&&s(t,["featureSelectionPreference"],A),t}function NE(n,e){const t={},A=r(e,["method"]);A!=null&&s(t,["method"],A);const i=r(e,["category"]);i!=null&&s(t,["category"],i);const o=r(e,["threshold"]);return o!=null&&s(t,["threshold"],o),t}function RE(n,e){const t={};if(r(e,["behavior"])!==void 0)throw new Error("behavior parameter is not supported in Vertex AI.");const A=r(e,["description"]);A!=null&&s(t,["description"],A);const i=r(e,["name"]);i!=null&&s(t,["name"],i);const o=r(e,["parameters"]);o!=null&&s(t,["parameters"],o);const a=r(e,["response"]);return a!=null&&s(t,["response"],a),t}function zE(n,e){const t={},A=r(e,["startTime"]);A!=null&&s(t,["startTime"],A);const i=r(e,["endTime"]);return i!=null&&s(t,["endTime"],i),t}function SE(n,e){const t={},A=r(e,["timeRangeFilter"]);return A!=null&&s(t,["timeRangeFilter"],zE(n,A)),t}function GE(n,e){const t={},A=r(e,["mode"]);A!=null&&s(t,["mode"],A);const i=r(e,["dynamicThreshold"]);return i!=null&&s(t,["dynamicThreshold"],i),t}function kE(n,e){const t={},A=r(e,["dynamicRetrievalConfig"]);return A!=null&&s(t,["dynamicRetrievalConfig"],GE(n,A)),t}function PE(){return{}}function JE(n,e){const t={},A=r(e,["apiKeyString"]);return A!=null&&s(t,["apiKeyString"],A),t}function HE(n,e){const t={},A=r(e,["apiKeyConfig"]);A!=null&&s(t,["apiKeyConfig"],JE(n,A));const i=r(e,["authType"]);i!=null&&s(t,["authType"],i);const o=r(e,["googleServiceAccountConfig"]);o!=null&&s(t,["googleServiceAccountConfig"],o);const a=r(e,["httpBasicAuthConfig"]);a!=null&&s(t,["httpBasicAuthConfig"],a);const c=r(e,["oauthConfig"]);c!=null&&s(t,["oauthConfig"],c);const l=r(e,["oidcConfig"]);return l!=null&&s(t,["oidcConfig"],l),t}function bE(n,e){const t={},A=r(e,["authConfig"]);return A!=null&&s(t,["authConfig"],HE(n,A)),t}function sr(n,e){const t={},A=r(e,["functionDeclarations"]);if(A!=null){let B=A;Array.isArray(B)&&(B=B.map(d=>RE(n,d))),s(t,["functionDeclarations"],B)}const i=r(e,["retrieval"]);i!=null&&s(t,["retrieval"],i);const o=r(e,["googleSearch"]);o!=null&&s(t,["googleSearch"],SE(n,o));const a=r(e,["googleSearchRetrieval"]);a!=null&&s(t,["googleSearchRetrieval"],kE(n,a)),r(e,["enterpriseWebSearch"])!=null&&s(t,["enterpriseWebSearch"],PE());const l=r(e,["googleMaps"]);if(l!=null&&s(t,["googleMaps"],bE(n,l)),r(e,["urlContext"])!==void 0)throw new Error("urlContext parameter is not supported in Vertex AI.");const u=r(e,["codeExecution"]);return u!=null&&s(t,["codeExecution"],u),t}function VE(n,e){const t={},A=r(e,["mode"]);A!=null&&s(t,["mode"],A);const i=r(e,["allowedFunctionNames"]);return i!=null&&s(t,["allowedFunctionNames"],i),t}function LE(n,e){const t={},A=r(e,["latitude"]);A!=null&&s(t,["latitude"],A);const i=r(e,["longitude"]);return i!=null&&s(t,["longitude"],i),t}function WE(n,e){const t={},A=r(e,["latLng"]);A!=null&&s(t,["latLng"],LE(n,A));const i=r(e,["languageCode"]);return i!=null&&s(t,["languageCode"],i),t}function jE(n,e){const t={},A=r(e,["functionCallingConfig"]);A!=null&&s(t,["functionCallingConfig"],VE(n,A));const i=r(e,["retrievalConfig"]);return i!=null&&s(t,["retrievalConfig"],WE(n,i)),t}function _E(n,e){const t={},A=r(e,["voiceName"]);return A!=null&&s(t,["voiceName"],A),t}function XE(n,e){const t={},A=r(e,["prebuiltVoiceConfig"]);return A!=null&&s(t,["prebuiltVoiceConfig"],_E(n,A)),t}function OE(n,e){const t={},A=r(e,["voiceConfig"]);if(A!=null&&s(t,["voiceConfig"],XE(n,A)),r(e,["multiSpeakerVoiceConfig"])!==void 0)throw new Error("multiSpeakerVoiceConfig parameter is not supported in Vertex AI.");const i=r(e,["languageCode"]);return i!=null&&s(t,["languageCode"],i),t}function KE(n,e){const t={},A=r(e,["includeThoughts"]);A!=null&&s(t,["includeThoughts"],A);const i=r(e,["thinkingBudget"]);return i!=null&&s(t,["thinkingBudget"],i),t}function ZE(n,e,t){const A={},i=r(e,["systemInstruction"]);t!==void 0&&i!=null&&s(t,["systemInstruction"],Ee(n,z0(n,i)));const o=r(e,["temperature"]);o!=null&&s(A,["temperature"],o);const a=r(e,["topP"]);a!=null&&s(A,["topP"],a);const c=r(e,["topK"]);c!=null&&s(A,["topK"],c);const l=r(e,["candidateCount"]);l!=null&&s(A,["candidateCount"],l);const u=r(e,["maxOutputTokens"]);u!=null&&s(A,["maxOutputTokens"],u);const B=r(e,["stopSequences"]);B!=null&&s(A,["stopSequences"],B);const d=r(e,["responseLogprobs"]);d!=null&&s(A,["responseLogprobs"],d);const f=r(e,["logprobs"]);f!=null&&s(A,["logprobs"],f);const w=r(e,["presencePenalty"]);w!=null&&s(A,["presencePenalty"],w);const y=r(e,["frequencyPenalty"]);y!=null&&s(A,["frequencyPenalty"],y);const F=r(e,["seed"]);F!=null&&s(A,["seed"],F);const R=r(e,["responseMimeType"]);R!=null&&s(A,["responseMimeType"],R);const S=r(e,["responseSchema"]);S!=null&&s(A,["responseSchema"],YE(n,yt(n,S)));const M=r(e,["routingConfig"]);M!=null&&s(A,["routingConfig"],M);const T=r(e,["modelSelectionConfig"]);T!=null&&s(A,["modelConfig"],TE(n,T));const D=r(e,["safetySettings"]);if(t!==void 0&&D!=null){let t0=D;Array.isArray(t0)&&(t0=t0.map(S0=>NE(n,S0))),s(t,["safetySettings"],t0)}const I=r(e,["tools"]);if(t!==void 0&&I!=null){let t0=ke(n,I);Array.isArray(t0)&&(t0=t0.map(S0=>sr(n,Ge(n,S0)))),s(t,["tools"],t0)}const U=r(e,["toolConfig"]);t!==void 0&&U!=null&&s(t,["toolConfig"],jE(n,U));const x=r(e,["labels"]);t!==void 0&&x!=null&&s(t,["labels"],x);const v=r(e,["cachedContent"]);t!==void 0&&v!=null&&s(t,["cachedContent"],x2(n,v));const m=r(e,["responseModalities"]);m!=null&&s(A,["responseModalities"],m);const Y=r(e,["mediaResolution"]);Y!=null&&s(A,["mediaResolution"],Y);const P=r(e,["speechConfig"]);P!=null&&s(A,["speechConfig"],OE(n,Jo(n,P)));const J=r(e,["audioTimestamp"]);J!=null&&s(A,["audioTimestamp"],J);const H=r(e,["thinkingConfig"]);return H!=null&&s(A,["thinkingConfig"],KE(n,H)),A}function ar(n,e){const t={},A=r(e,["model"]);A!=null&&s(t,["_url","model"],g0(n,A));const i=r(e,["contents"]);if(i!=null){let a=Z0(n,i);Array.isArray(a)&&(a=a.map(c=>Ee(n,c))),s(t,["contents"],a)}const o=r(e,["config"]);return o!=null&&s(t,["generationConfig"],ZE(n,o,t)),t}function qE(n,e,t){const A={},i=r(e,["taskType"]);t!==void 0&&i!=null&&s(t,["instances[]","task_type"],i);const o=r(e,["title"]);t!==void 0&&o!=null&&s(t,["instances[]","title"],o);const a=r(e,["outputDimensionality"]);t!==void 0&&a!=null&&s(t,["parameters","outputDimensionality"],a);const c=r(e,["mimeType"]);t!==void 0&&c!=null&&s(t,["instances[]","mimeType"],c);const l=r(e,["autoTruncate"]);return t!==void 0&&l!=null&&s(t,["parameters","autoTruncate"],l),A}function $E(n,e){const t={},A=r(e,["model"]);A!=null&&s(t,["_url","model"],g0(n,A));const i=r(e,["contents"]);i!=null&&s(t,["instances[]","content"],ko(n,i));const o=r(e,["config"]);return o!=null&&s(t,["config"],qE(n,o,t)),t}function e4(n,e,t){const A={},i=r(e,["outputGcsUri"]);t!==void 0&&i!=null&&s(t,["parameters","storageUri"],i);const o=r(e,["negativePrompt"]);t!==void 0&&o!=null&&s(t,["parameters","negativePrompt"],o);const a=r(e,["numberOfImages"]);t!==void 0&&a!=null&&s(t,["parameters","sampleCount"],a);const c=r(e,["aspectRatio"]);t!==void 0&&c!=null&&s(t,["parameters","aspectRatio"],c);const l=r(e,["guidanceScale"]);t!==void 0&&l!=null&&s(t,["parameters","guidanceScale"],l);const u=r(e,["seed"]);t!==void 0&&u!=null&&s(t,["parameters","seed"],u);const B=r(e,["safetyFilterLevel"]);t!==void 0&&B!=null&&s(t,["parameters","safetySetting"],B);const d=r(e,["personGeneration"]);t!==void 0&&d!=null&&s(t,["parameters","personGeneration"],d);const f=r(e,["includeSafetyAttributes"]);t!==void 0&&f!=null&&s(t,["parameters","includeSafetyAttributes"],f);const w=r(e,["includeRaiReason"]);t!==void 0&&w!=null&&s(t,["parameters","includeRaiReason"],w);const y=r(e,["language"]);t!==void 0&&y!=null&&s(t,["parameters","language"],y);const F=r(e,["outputMimeType"]);t!==void 0&&F!=null&&s(t,["parameters","outputOptions","mimeType"],F);const R=r(e,["outputCompressionQuality"]);t!==void 0&&R!=null&&s(t,["parameters","outputOptions","compressionQuality"],R);const S=r(e,["addWatermark"]);t!==void 0&&S!=null&&s(t,["parameters","addWatermark"],S);const M=r(e,["enhancePrompt"]);return t!==void 0&&M!=null&&s(t,["parameters","enhancePrompt"],M),A}function t4(n,e){const t={},A=r(e,["model"]);A!=null&&s(t,["_url","model"],g0(n,A));const i=r(e,["prompt"]);i!=null&&s(t,["instances[0]","prompt"],i);const o=r(e,["config"]);return o!=null&&s(t,["config"],e4(n,o,t)),t}function Yn(n,e){const t={},A=r(e,["gcsUri"]);A!=null&&s(t,["gcsUri"],A);const i=r(e,["imageBytes"]);i!=null&&s(t,["bytesBase64Encoded"],v2(n,i));const o=r(e,["mimeType"]);return o!=null&&s(t,["mimeType"],o),t}function n4(n,e){const t={},A=r(e,["maskMode"]);A!=null&&s(t,["maskMode"],A);const i=r(e,["segmentationClasses"]);i!=null&&s(t,["maskClasses"],i);const o=r(e,["maskDilation"]);return o!=null&&s(t,["dilation"],o),t}function A4(n,e){const t={},A=r(e,["controlType"]);A!=null&&s(t,["controlType"],A);const i=r(e,["enableControlImageComputation"]);return i!=null&&s(t,["computeControl"],i),t}function i4(n,e){const t={},A=r(e,["styleDescription"]);return A!=null&&s(t,["styleDescription"],A),t}function o4(n,e){const t={},A=r(e,["subjectType"]);A!=null&&s(t,["subjectType"],A);const i=r(e,["subjectDescription"]);return i!=null&&s(t,["subjectDescription"],i),t}function r4(n,e){const t={},A=r(e,["referenceImage"]);A!=null&&s(t,["referenceImage"],Yn(n,A));const i=r(e,["referenceId"]);i!=null&&s(t,["referenceId"],i);const o=r(e,["referenceType"]);o!=null&&s(t,["referenceType"],o);const a=r(e,["maskImageConfig"]);a!=null&&s(t,["maskImageConfig"],n4(n,a));const c=r(e,["controlImageConfig"]);c!=null&&s(t,["controlImageConfig"],A4(n,c));const l=r(e,["styleImageConfig"]);l!=null&&s(t,["styleImageConfig"],i4(n,l));const u=r(e,["subjectImageConfig"]);return u!=null&&s(t,["subjectImageConfig"],o4(n,u)),t}function s4(n,e,t){const A={},i=r(e,["outputGcsUri"]);t!==void 0&&i!=null&&s(t,["parameters","storageUri"],i);const o=r(e,["negativePrompt"]);t!==void 0&&o!=null&&s(t,["parameters","negativePrompt"],o);const a=r(e,["numberOfImages"]);t!==void 0&&a!=null&&s(t,["parameters","sampleCount"],a);const c=r(e,["aspectRatio"]);t!==void 0&&c!=null&&s(t,["parameters","aspectRatio"],c);const l=r(e,["guidanceScale"]);t!==void 0&&l!=null&&s(t,["parameters","guidanceScale"],l);const u=r(e,["seed"]);t!==void 0&&u!=null&&s(t,["parameters","seed"],u);const B=r(e,["safetyFilterLevel"]);t!==void 0&&B!=null&&s(t,["parameters","safetySetting"],B);const d=r(e,["personGeneration"]);t!==void 0&&d!=null&&s(t,["parameters","personGeneration"],d);const f=r(e,["includeSafetyAttributes"]);t!==void 0&&f!=null&&s(t,["parameters","includeSafetyAttributes"],f);const w=r(e,["includeRaiReason"]);t!==void 0&&w!=null&&s(t,["parameters","includeRaiReason"],w);const y=r(e,["language"]);t!==void 0&&y!=null&&s(t,["parameters","language"],y);const F=r(e,["outputMimeType"]);t!==void 0&&F!=null&&s(t,["parameters","outputOptions","mimeType"],F);const R=r(e,["outputCompressionQuality"]);t!==void 0&&R!=null&&s(t,["parameters","outputOptions","compressionQuality"],R);const S=r(e,["editMode"]);t!==void 0&&S!=null&&s(t,["parameters","editMode"],S);const M=r(e,["baseSteps"]);return t!==void 0&&M!=null&&s(t,["parameters","editConfig","baseSteps"],M),A}function a4(n,e){const t={},A=r(e,["model"]);A!=null&&s(t,["_url","model"],g0(n,A));const i=r(e,["prompt"]);i!=null&&s(t,["instances[0]","prompt"],i);const o=r(e,["referenceImages"]);if(o!=null){let c=o;Array.isArray(c)&&(c=c.map(l=>r4(n,l))),s(t,["instances[0]","referenceImages"],c)}const a=r(e,["config"]);return a!=null&&s(t,["config"],s4(n,a,t)),t}function c4(n,e,t){const A={},i=r(e,["includeRaiReason"]);t!==void 0&&i!=null&&s(t,["parameters","includeRaiReason"],i);const o=r(e,["outputMimeType"]);t!==void 0&&o!=null&&s(t,["parameters","outputOptions","mimeType"],o);const a=r(e,["outputCompressionQuality"]);t!==void 0&&a!=null&&s(t,["parameters","outputOptions","compressionQuality"],a);const c=r(e,["numberOfImages"]);t!==void 0&&c!=null&&s(t,["parameters","sampleCount"],c);const l=r(e,["mode"]);return t!==void 0&&l!=null&&s(t,["parameters","mode"],l),A}function l4(n,e){const t={},A=r(e,["model"]);A!=null&&s(t,["_url","model"],g0(n,A));const i=r(e,["image"]);i!=null&&s(t,["instances[0]","image"],Yn(n,i));const o=r(e,["upscaleFactor"]);o!=null&&s(t,["parameters","upscaleConfig","upscaleFactor"],o);const a=r(e,["config"]);return a!=null&&s(t,["config"],c4(n,a,t)),t}function u4(n,e){const t={},A=r(e,["model"]);A!=null&&s(t,["_url","name"],g0(n,A));const i=r(e,["config"]);return i!=null&&s(t,["config"],i),t}function B4(n,e,t){const A={},i=r(e,["pageSize"]);t!==void 0&&i!=null&&s(t,["_query","pageSize"],i);const o=r(e,["pageToken"]);t!==void 0&&o!=null&&s(t,["_query","pageToken"],o);const a=r(e,["filter"]);t!==void 0&&a!=null&&s(t,["_query","filter"],a);const c=r(e,["queryBase"]);return t!==void 0&&c!=null&&s(t,["_url","models_url"],Vo(n,c)),A}function g4(n,e){const t={},A=r(e,["config"]);return A!=null&&s(t,["config"],B4(n,A,t)),t}function d4(n,e,t){const A={},i=r(e,["displayName"]);t!==void 0&&i!=null&&s(t,["displayName"],i);const o=r(e,["description"]);t!==void 0&&o!=null&&s(t,["description"],o);const a=r(e,["defaultCheckpointId"]);return t!==void 0&&a!=null&&s(t,["defaultCheckpointId"],a),A}function E4(n,e){const t={},A=r(e,["model"]);A!=null&&s(t,["_url","model"],g0(n,A));const i=r(e,["config"]);return i!=null&&s(t,["config"],d4(n,i,t)),t}function f4(n,e){const t={},A=r(e,["model"]);A!=null&&s(t,["_url","name"],g0(n,A));const i=r(e,["config"]);return i!=null&&s(t,["config"],i),t}function Q4(n,e,t){const A={},i=r(e,["systemInstruction"]);t!==void 0&&i!=null&&s(t,["systemInstruction"],Ee(n,z0(n,i)));const o=r(e,["tools"]);if(t!==void 0&&o!=null){let c=o;Array.isArray(c)&&(c=c.map(l=>sr(n,l))),s(t,["tools"],c)}const a=r(e,["generationConfig"]);return t!==void 0&&a!=null&&s(t,["generationConfig"],a),A}function p4(n,e){const t={},A=r(e,["model"]);A!=null&&s(t,["_url","model"],g0(n,A));const i=r(e,["contents"]);if(i!=null){let a=Z0(n,i);Array.isArray(a)&&(a=a.map(c=>Ee(n,c))),s(t,["contents"],a)}const o=r(e,["config"]);return o!=null&&s(t,["config"],Q4(n,o,t)),t}function h4(n,e){const t={},A=r(e,["model"]);A!=null&&s(t,["_url","model"],g0(n,A));const i=r(e,["contents"]);if(i!=null){let a=Z0(n,i);Array.isArray(a)&&(a=a.map(c=>Ee(n,c))),s(t,["contents"],a)}const o=r(e,["config"]);return o!=null&&s(t,["config"],o),t}function w4(n,e,t){const A={},i=r(e,["numberOfVideos"]);t!==void 0&&i!=null&&s(t,["parameters","sampleCount"],i);const o=r(e,["outputGcsUri"]);t!==void 0&&o!=null&&s(t,["parameters","storageUri"],o);const a=r(e,["fps"]);t!==void 0&&a!=null&&s(t,["parameters","fps"],a);const c=r(e,["durationSeconds"]);t!==void 0&&c!=null&&s(t,["parameters","durationSeconds"],c);const l=r(e,["seed"]);t!==void 0&&l!=null&&s(t,["parameters","seed"],l);const u=r(e,["aspectRatio"]);t!==void 0&&u!=null&&s(t,["parameters","aspectRatio"],u);const B=r(e,["resolution"]);t!==void 0&&B!=null&&s(t,["parameters","resolution"],B);const d=r(e,["personGeneration"]);t!==void 0&&d!=null&&s(t,["parameters","personGeneration"],d);const f=r(e,["pubsubTopic"]);t!==void 0&&f!=null&&s(t,["parameters","pubsubTopic"],f);const w=r(e,["negativePrompt"]);t!==void 0&&w!=null&&s(t,["parameters","negativePrompt"],w);const y=r(e,["enhancePrompt"]);t!==void 0&&y!=null&&s(t,["parameters","enhancePrompt"],y);const F=r(e,["generateAudio"]);return t!==void 0&&F!=null&&s(t,["parameters","generateAudio"],F),A}function m4(n,e){const t={},A=r(e,["model"]);A!=null&&s(t,["_url","model"],g0(n,A));const i=r(e,["prompt"]);i!=null&&s(t,["instances[0]","prompt"],i);const o=r(e,["image"]);o!=null&&s(t,["instances[0]","image"],Yn(n,o));const a=r(e,["config"]);return a!=null&&s(t,["config"],w4(n,a,t)),t}function C4(n,e){const t={},A=r(e,["fps"]);A!=null&&s(t,["fps"],A);const i=r(e,["endOffset"]);i!=null&&s(t,["endOffset"],i);const o=r(e,["startOffset"]);return o!=null&&s(t,["startOffset"],o),t}function M4(n,e){const t={},A=r(e,["data"]);A!=null&&s(t,["data"],A);const i=r(e,["mimeType"]);return i!=null&&s(t,["mimeType"],i),t}function y4(n,e){const t={},A=r(e,["fileUri"]);A!=null&&s(t,["fileUri"],A);const i=r(e,["mimeType"]);return i!=null&&s(t,["mimeType"],i),t}function I4(n,e){const t={},A=r(e,["videoMetadata"]);A!=null&&s(t,["videoMetadata"],C4(n,A));const i=r(e,["thought"]);i!=null&&s(t,["thought"],i);const o=r(e,["inlineData"]);o!=null&&s(t,["inlineData"],M4(n,o));const a=r(e,["fileData"]);a!=null&&s(t,["fileData"],y4(n,a));const c=r(e,["thoughtSignature"]);c!=null&&s(t,["thoughtSignature"],c);const l=r(e,["codeExecutionResult"]);l!=null&&s(t,["codeExecutionResult"],l);const u=r(e,["executableCode"]);u!=null&&s(t,["executableCode"],u);const B=r(e,["functionCall"]);B!=null&&s(t,["functionCall"],B);const d=r(e,["functionResponse"]);d!=null&&s(t,["functionResponse"],d);const f=r(e,["text"]);return f!=null&&s(t,["text"],f),t}function D4(n,e){const t={},A=r(e,["parts"]);if(A!=null){let o=A;Array.isArray(o)&&(o=o.map(a=>I4(n,a))),s(t,["parts"],o)}const i=r(e,["role"]);return i!=null&&s(t,["role"],i),t}function F4(n,e){const t={},A=r(e,["citationSources"]);return A!=null&&s(t,["citations"],A),t}function x4(n,e){const t={},A=r(e,["retrievedUrl"]);A!=null&&s(t,["retrievedUrl"],A);const i=r(e,["urlRetrievalStatus"]);return i!=null&&s(t,["urlRetrievalStatus"],i),t}function v4(n,e){const t={},A=r(e,["urlMetadata"]);if(A!=null){let i=A;Array.isArray(i)&&(i=i.map(o=>x4(n,o))),s(t,["urlMetadata"],i)}return t}function U4(n,e){const t={},A=r(e,["content"]);A!=null&&s(t,["content"],D4(n,A));const i=r(e,["citationMetadata"]);i!=null&&s(t,["citationMetadata"],F4(n,i));const o=r(e,["tokenCount"]);o!=null&&s(t,["tokenCount"],o);const a=r(e,["finishReason"]);a!=null&&s(t,["finishReason"],a);const c=r(e,["urlContextMetadata"]);c!=null&&s(t,["urlContextMetadata"],v4(n,c));const l=r(e,["avgLogprobs"]);l!=null&&s(t,["avgLogprobs"],l);const u=r(e,["groundingMetadata"]);u!=null&&s(t,["groundingMetadata"],u);const B=r(e,["index"]);B!=null&&s(t,["index"],B);const d=r(e,["logprobsResult"]);d!=null&&s(t,["logprobsResult"],d);const f=r(e,["safetyRatings"]);return f!=null&&s(t,["safetyRatings"],f),t}function cr(n,e){const t={},A=r(e,["candidates"]);if(A!=null){let c=A;Array.isArray(c)&&(c=c.map(l=>U4(n,l))),s(t,["candidates"],c)}const i=r(e,["modelVersion"]);i!=null&&s(t,["modelVersion"],i);const o=r(e,["promptFeedback"]);o!=null&&s(t,["promptFeedback"],o);const a=r(e,["usageMetadata"]);return a!=null&&s(t,["usageMetadata"],a),t}function Y4(n,e){const t={},A=r(e,["values"]);return A!=null&&s(t,["values"],A),t}function T4(){return{}}function N4(n,e){const t={},A=r(e,["embeddings"]);if(A!=null){let o=A;Array.isArray(o)&&(o=o.map(a=>Y4(n,a))),s(t,["embeddings"],o)}return r(e,["metadata"])!=null&&s(t,["metadata"],T4()),t}function R4(n,e){const t={},A=r(e,["bytesBase64Encoded"]);A!=null&&s(t,["imageBytes"],v2(n,A));const i=r(e,["mimeType"]);return i!=null&&s(t,["mimeType"],i),t}function lr(n,e){const t={},A=r(e,["safetyAttributes","categories"]);A!=null&&s(t,["categories"],A);const i=r(e,["safetyAttributes","scores"]);i!=null&&s(t,["scores"],i);const o=r(e,["contentType"]);return o!=null&&s(t,["contentType"],o),t}function z4(n,e){const t={},A=r(e,["_self"]);A!=null&&s(t,["image"],R4(n,A));const i=r(e,["raiFilteredReason"]);i!=null&&s(t,["raiFilteredReason"],i);const o=r(e,["_self"]);return o!=null&&s(t,["safetyAttributes"],lr(n,o)),t}function S4(n,e){const t={},A=r(e,["predictions"]);if(A!=null){let o=A;Array.isArray(o)&&(o=o.map(a=>z4(n,a))),s(t,["generatedImages"],o)}const i=r(e,["positivePromptSafetyAttributes"]);return i!=null&&s(t,["positivePromptSafetyAttributes"],lr(n,i)),t}function G4(n,e){const t={},A=r(e,["baseModel"]);A!=null&&s(t,["baseModel"],A);const i=r(e,["createTime"]);i!=null&&s(t,["createTime"],i);const o=r(e,["updateTime"]);return o!=null&&s(t,["updateTime"],o),t}function Tn(n,e){const t={},A=r(e,["name"]);A!=null&&s(t,["name"],A);const i=r(e,["displayName"]);i!=null&&s(t,["displayName"],i);const o=r(e,["description"]);o!=null&&s(t,["description"],o);const a=r(e,["version"]);a!=null&&s(t,["version"],a);const c=r(e,["_self"]);c!=null&&s(t,["tunedModelInfo"],G4(n,c));const l=r(e,["inputTokenLimit"]);l!=null&&s(t,["inputTokenLimit"],l);const u=r(e,["outputTokenLimit"]);u!=null&&s(t,["outputTokenLimit"],u);const B=r(e,["supportedGenerationMethods"]);return B!=null&&s(t,["supportedActions"],B),t}function k4(n,e){const t={},A=r(e,["nextPageToken"]);A!=null&&s(t,["nextPageToken"],A);const i=r(e,["_self"]);if(i!=null){let o=Lo(n,i);Array.isArray(o)&&(o=o.map(a=>Tn(n,a))),s(t,["models"],o)}return t}function P4(){return{}}function J4(n,e){const t={},A=r(e,["totalTokens"]);A!=null&&s(t,["totalTokens"],A);const i=r(e,["cachedContentTokenCount"]);return i!=null&&s(t,["cachedContentTokenCount"],i),t}function H4(n,e){const t={},A=r(e,["video","uri"]);A!=null&&s(t,["uri"],A);const i=r(e,["video","encodedVideo"]);i!=null&&s(t,["videoBytes"],v2(n,i));const o=r(e,["encoding"]);return o!=null&&s(t,["mimeType"],o),t}function b4(n,e){const t={},A=r(e,["_self"]);return A!=null&&s(t,["video"],H4(n,A)),t}function V4(n,e){const t={},A=r(e,["generatedSamples"]);if(A!=null){let a=A;Array.isArray(a)&&(a=a.map(c=>b4(n,c))),s(t,["generatedVideos"],a)}const i=r(e,["raiMediaFilteredCount"]);i!=null&&s(t,["raiMediaFilteredCount"],i);const o=r(e,["raiMediaFilteredReasons"]);return o!=null&&s(t,["raiMediaFilteredReasons"],o),t}function L4(n,e){const t={},A=r(e,["name"]);A!=null&&s(t,["name"],A);const i=r(e,["metadata"]);i!=null&&s(t,["metadata"],i);const o=r(e,["done"]);o!=null&&s(t,["done"],o);const a=r(e,["error"]);a!=null&&s(t,["error"],a);const c=r(e,["response","generateVideoResponse"]);return c!=null&&s(t,["response"],V4(n,c)),t}function W4(n,e){const t={},A=r(e,["fps"]);A!=null&&s(t,["fps"],A);const i=r(e,["endOffset"]);i!=null&&s(t,["endOffset"],i);const o=r(e,["startOffset"]);return o!=null&&s(t,["startOffset"],o),t}function j4(n,e){const t={},A=r(e,["displayName"]);A!=null&&s(t,["displayName"],A);const i=r(e,["data"]);i!=null&&s(t,["data"],i);const o=r(e,["mimeType"]);return o!=null&&s(t,["mimeType"],o),t}function _4(n,e){const t={},A=r(e,["displayName"]);A!=null&&s(t,["displayName"],A);const i=r(e,["fileUri"]);i!=null&&s(t,["fileUri"],i);const o=r(e,["mimeType"]);return o!=null&&s(t,["mimeType"],o),t}function X4(n,e){const t={},A=r(e,["videoMetadata"]);A!=null&&s(t,["videoMetadata"],W4(n,A));const i=r(e,["thought"]);i!=null&&s(t,["thought"],i);const o=r(e,["inlineData"]);o!=null&&s(t,["inlineData"],j4(n,o));const a=r(e,["fileData"]);a!=null&&s(t,["fileData"],_4(n,a));const c=r(e,["thoughtSignature"]);c!=null&&s(t,["thoughtSignature"],c);const l=r(e,["codeExecutionResult"]);l!=null&&s(t,["codeExecutionResult"],l);const u=r(e,["executableCode"]);u!=null&&s(t,["executableCode"],u);const B=r(e,["functionCall"]);B!=null&&s(t,["functionCall"],B);const d=r(e,["functionResponse"]);d!=null&&s(t,["functionResponse"],d);const f=r(e,["text"]);return f!=null&&s(t,["text"],f),t}function O4(n,e){const t={},A=r(e,["parts"]);if(A!=null){let o=A;Array.isArray(o)&&(o=o.map(a=>X4(n,a))),s(t,["parts"],o)}const i=r(e,["role"]);return i!=null&&s(t,["role"],i),t}function K4(n,e){const t={},A=r(e,["citations"]);return A!=null&&s(t,["citations"],A),t}function Z4(n,e){const t={},A=r(e,["content"]);A!=null&&s(t,["content"],O4(n,A));const i=r(e,["citationMetadata"]);i!=null&&s(t,["citationMetadata"],K4(n,i));const o=r(e,["finishMessage"]);o!=null&&s(t,["finishMessage"],o);const a=r(e,["finishReason"]);a!=null&&s(t,["finishReason"],a);const c=r(e,["avgLogprobs"]);c!=null&&s(t,["avgLogprobs"],c);const l=r(e,["groundingMetadata"]);l!=null&&s(t,["groundingMetadata"],l);const u=r(e,["index"]);u!=null&&s(t,["index"],u);const B=r(e,["logprobsResult"]);B!=null&&s(t,["logprobsResult"],B);const d=r(e,["safetyRatings"]);return d!=null&&s(t,["safetyRatings"],d),t}function ur(n,e){const t={},A=r(e,["candidates"]);if(A!=null){let u=A;Array.isArray(u)&&(u=u.map(B=>Z4(n,B))),s(t,["candidates"],u)}const i=r(e,["createTime"]);i!=null&&s(t,["createTime"],i);const o=r(e,["responseId"]);o!=null&&s(t,["responseId"],o);const a=r(e,["modelVersion"]);a!=null&&s(t,["modelVersion"],a);const c=r(e,["promptFeedback"]);c!=null&&s(t,["promptFeedback"],c);const l=r(e,["usageMetadata"]);return l!=null&&s(t,["usageMetadata"],l),t}function q4(n,e){const t={},A=r(e,["truncated"]);A!=null&&s(t,["truncated"],A);const i=r(e,["token_count"]);return i!=null&&s(t,["tokenCount"],i),t}function $4(n,e){const t={},A=r(e,["values"]);A!=null&&s(t,["values"],A);const i=r(e,["statistics"]);return i!=null&&s(t,["statistics"],q4(n,i)),t}function ef(n,e){const t={},A=r(e,["billableCharacterCount"]);return A!=null&&s(t,["billableCharacterCount"],A),t}function tf(n,e){const t={},A=r(e,["predictions[]","embeddings"]);if(A!=null){let o=A;Array.isArray(o)&&(o=o.map(a=>$4(n,a))),s(t,["embeddings"],o)}const i=r(e,["metadata"]);return i!=null&&s(t,["metadata"],ef(n,i)),t}function nf(n,e){const t={},A=r(e,["gcsUri"]);A!=null&&s(t,["gcsUri"],A);const i=r(e,["bytesBase64Encoded"]);i!=null&&s(t,["imageBytes"],v2(n,i));const o=r(e,["mimeType"]);return o!=null&&s(t,["mimeType"],o),t}function Br(n,e){const t={},A=r(e,["safetyAttributes","categories"]);A!=null&&s(t,["categories"],A);const i=r(e,["safetyAttributes","scores"]);i!=null&&s(t,["scores"],i);const o=r(e,["contentType"]);return o!=null&&s(t,["contentType"],o),t}function Nn(n,e){const t={},A=r(e,["_self"]);A!=null&&s(t,["image"],nf(n,A));const i=r(e,["raiFilteredReason"]);i!=null&&s(t,["raiFilteredReason"],i);const o=r(e,["_self"]);o!=null&&s(t,["safetyAttributes"],Br(n,o));const a=r(e,["prompt"]);return a!=null&&s(t,["enhancedPrompt"],a),t}function Af(n,e){const t={},A=r(e,["predictions"]);if(A!=null){let o=A;Array.isArray(o)&&(o=o.map(a=>Nn(n,a))),s(t,["generatedImages"],o)}const i=r(e,["positivePromptSafetyAttributes"]);return i!=null&&s(t,["positivePromptSafetyAttributes"],Br(n,i)),t}function of(n,e){const t={},A=r(e,["predictions"]);if(A!=null){let i=A;Array.isArray(i)&&(i=i.map(o=>Nn(n,o))),s(t,["generatedImages"],i)}return t}function rf(n,e){const t={},A=r(e,["predictions"]);if(A!=null){let i=A;Array.isArray(i)&&(i=i.map(o=>Nn(n,o))),s(t,["generatedImages"],i)}return t}function sf(n,e){const t={},A=r(e,["endpoint"]);A!=null&&s(t,["name"],A);const i=r(e,["deployedModelId"]);return i!=null&&s(t,["deployedModelId"],i),t}function af(n,e){const t={},A=r(e,["labels","google-vertex-llm-tuning-base-model-id"]);A!=null&&s(t,["baseModel"],A);const i=r(e,["createTime"]);i!=null&&s(t,["createTime"],i);const o=r(e,["updateTime"]);return o!=null&&s(t,["updateTime"],o),t}function cf(n,e){const t={},A=r(e,["checkpointId"]);A!=null&&s(t,["checkpointId"],A);const i=r(e,["epoch"]);i!=null&&s(t,["epoch"],i);const o=r(e,["step"]);return o!=null&&s(t,["step"],o),t}function Rn(n,e){const t={},A=r(e,["name"]);A!=null&&s(t,["name"],A);const i=r(e,["displayName"]);i!=null&&s(t,["displayName"],i);const o=r(e,["description"]);o!=null&&s(t,["description"],o);const a=r(e,["versionId"]);a!=null&&s(t,["version"],a);const c=r(e,["deployedModels"]);if(c!=null){let f=c;Array.isArray(f)&&(f=f.map(w=>sf(n,w))),s(t,["endpoints"],f)}const l=r(e,["labels"]);l!=null&&s(t,["labels"],l);const u=r(e,["_self"]);u!=null&&s(t,["tunedModelInfo"],af(n,u));const B=r(e,["defaultCheckpointId"]);B!=null&&s(t,["defaultCheckpointId"],B);const d=r(e,["checkpoints"]);if(d!=null){let f=d;Array.isArray(f)&&(f=f.map(w=>cf(n,w))),s(t,["checkpoints"],f)}return t}function lf(n,e){const t={},A=r(e,["nextPageToken"]);A!=null&&s(t,["nextPageToken"],A);const i=r(e,["_self"]);if(i!=null){let o=Lo(n,i);Array.isArray(o)&&(o=o.map(a=>Rn(n,a))),s(t,["models"],o)}return t}function uf(){return{}}function Bf(n,e){const t={},A=r(e,["totalTokens"]);return A!=null&&s(t,["totalTokens"],A),t}function gf(n,e){const t={},A=r(e,["tokensInfo"]);return A!=null&&s(t,["tokensInfo"],A),t}function df(n,e){const t={},A=r(e,["gcsUri"]);A!=null&&s(t,["uri"],A);const i=r(e,["bytesBase64Encoded"]);i!=null&&s(t,["videoBytes"],v2(n,i));const o=r(e,["mimeType"]);return o!=null&&s(t,["mimeType"],o),t}function Ef(n,e){const t={},A=r(e,["_self"]);return A!=null&&s(t,["video"],df(n,A)),t}function ff(n,e){const t={},A=r(e,["videos"]);if(A!=null){let a=A;Array.isArray(a)&&(a=a.map(c=>Ef(n,c))),s(t,["generatedVideos"],a)}const i=r(e,["raiMediaFilteredCount"]);i!=null&&s(t,["raiMediaFilteredCount"],i);const o=r(e,["raiMediaFilteredReasons"]);return o!=null&&s(t,["raiMediaFilteredReasons"],o),t}function Qf(n,e){const t={},A=r(e,["name"]);A!=null&&s(t,["name"],A);const i=r(e,["metadata"]);i!=null&&s(t,["metadata"],i);const o=r(e,["done"]);o!=null&&s(t,["done"],o);const a=r(e,["error"]);a!=null&&s(t,["error"],a);const c=r(e,["response"]);return c!=null&&s(t,["response"],ff(n,c)),t}/**
145
+ */function _a(o,e){const t={},n=r(e,["fps"]);n!=null&&s(t,["fps"],n);const i=r(e,["endOffset"]);i!=null&&s(t,["endOffset"],i);const l=r(e,["startOffset"]);return l!=null&&s(t,["startOffset"],l),t}function Ea(o,e){const t={};if(r(e,["displayName"])!==void 0)throw new Error("displayName parameter is not supported in Gemini API.");const n=r(e,["data"]);n!=null&&s(t,["data"],n);const i=r(e,["mimeType"]);return i!=null&&s(t,["mimeType"],i),t}function Sa(o,e){const t={};if(r(e,["displayName"])!==void 0)throw new Error("displayName parameter is not supported in Gemini API.");const n=r(e,["fileUri"]);n!=null&&s(t,["fileUri"],n);const i=r(e,["mimeType"]);return i!=null&&s(t,["mimeType"],i),t}function xa(o,e){const t={},n=r(e,["videoMetadata"]);n!=null&&s(t,["videoMetadata"],_a(o,n));const i=r(e,["thought"]);i!=null&&s(t,["thought"],i);const l=r(e,["inlineData"]);l!=null&&s(t,["inlineData"],Ea(o,l));const a=r(e,["fileData"]);a!=null&&s(t,["fileData"],Sa(o,a));const u=r(e,["thoughtSignature"]);u!=null&&s(t,["thoughtSignature"],u);const d=r(e,["codeExecutionResult"]);d!=null&&s(t,["codeExecutionResult"],d);const c=r(e,["executableCode"]);c!=null&&s(t,["executableCode"],c);const f=r(e,["functionCall"]);f!=null&&s(t,["functionCall"],f);const p=r(e,["functionResponse"]);p!=null&&s(t,["functionResponse"],p);const m=r(e,["text"]);return m!=null&&s(t,["text"],m),t}function rt(o,e){const t={},n=r(e,["parts"]);if(n!=null){let l=n;Array.isArray(l)&&(l=l.map(a=>xa(o,a))),s(t,["parts"],l)}const i=r(e,["role"]);return i!=null&&s(t,["role"],i),t}function Aa(o,e){const t={},n=r(e,["anyOf"]);n!=null&&s(t,["anyOf"],n);const i=r(e,["default"]);i!=null&&s(t,["default"],i);const l=r(e,["description"]);l!=null&&s(t,["description"],l);const a=r(e,["enum"]);a!=null&&s(t,["enum"],a);const u=r(e,["example"]);u!=null&&s(t,["example"],u);const d=r(e,["format"]);d!=null&&s(t,["format"],d);const c=r(e,["items"]);c!=null&&s(t,["items"],c);const f=r(e,["maxItems"]);f!=null&&s(t,["maxItems"],f);const p=r(e,["maxLength"]);p!=null&&s(t,["maxLength"],p);const m=r(e,["maxProperties"]);m!=null&&s(t,["maxProperties"],m);const h=r(e,["maximum"]);h!=null&&s(t,["maximum"],h);const g=r(e,["minItems"]);g!=null&&s(t,["minItems"],g);const v=r(e,["minLength"]);v!=null&&s(t,["minLength"],v);const E=r(e,["minProperties"]);E!=null&&s(t,["minProperties"],E);const M=r(e,["minimum"]);M!=null&&s(t,["minimum"],M);const _=r(e,["nullable"]);_!=null&&s(t,["nullable"],_);const A=r(e,["pattern"]);A!=null&&s(t,["pattern"],A);const R=r(e,["properties"]);R!=null&&s(t,["properties"],R);const k=r(e,["propertyOrdering"]);k!=null&&s(t,["propertyOrdering"],k);const V=r(e,["required"]);V!=null&&s(t,["required"],V);const B=r(e,["title"]);B!=null&&s(t,["title"],B);const J=r(e,["type"]);return J!=null&&s(t,["type"],J),t}function Ma(o,e){const t={};if(r(e,["method"])!==void 0)throw new Error("method parameter is not supported in Gemini API.");const n=r(e,["category"]);n!=null&&s(t,["category"],n);const i=r(e,["threshold"]);return i!=null&&s(t,["threshold"],i),t}function Ia(o,e){const t={},n=r(e,["behavior"]);n!=null&&s(t,["behavior"],n);const i=r(e,["description"]);i!=null&&s(t,["description"],i);const l=r(e,["name"]);l!=null&&s(t,["name"],l);const a=r(e,["parameters"]);a!=null&&s(t,["parameters"],a);const u=r(e,["response"]);return u!=null&&s(t,["response"],u),t}function Ra(o,e){const t={},n=r(e,["startTime"]);n!=null&&s(t,["startTime"],n);const i=r(e,["endTime"]);return i!=null&&s(t,["endTime"],i),t}function wa(o,e){const t={},n=r(e,["timeRangeFilter"]);return n!=null&&s(t,["timeRangeFilter"],Ra(o,n)),t}function Pa(o,e){const t={},n=r(e,["mode"]);n!=null&&s(t,["mode"],n);const i=r(e,["dynamicThreshold"]);return i!=null&&s(t,["dynamicThreshold"],i),t}function Na(o,e){const t={},n=r(e,["dynamicRetrievalConfig"]);return n!=null&&s(t,["dynamicRetrievalConfig"],Pa(o,n)),t}function ka(){return{}}function Da(o,e){const t={},n=r(e,["functionDeclarations"]);if(n!=null){let d=n;Array.isArray(d)&&(d=d.map(c=>Ia(o,c))),s(t,["functionDeclarations"],d)}if(r(e,["retrieval"])!==void 0)throw new Error("retrieval parameter is not supported in Gemini API.");const i=r(e,["googleSearch"]);i!=null&&s(t,["googleSearch"],wa(o,i));const l=r(e,["googleSearchRetrieval"]);if(l!=null&&s(t,["googleSearchRetrieval"],Na(o,l)),r(e,["enterpriseWebSearch"])!==void 0)throw new Error("enterpriseWebSearch parameter is not supported in Gemini API.");if(r(e,["googleMaps"])!==void 0)throw new Error("googleMaps parameter is not supported in Gemini API.");r(e,["urlContext"])!=null&&s(t,["urlContext"],ka());const u=r(e,["codeExecution"]);return u!=null&&s(t,["codeExecution"],u),t}function La(o,e){const t={},n=r(e,["mode"]);n!=null&&s(t,["mode"],n);const i=r(e,["allowedFunctionNames"]);return i!=null&&s(t,["allowedFunctionNames"],i),t}function Va(o,e){const t={},n=r(e,["latitude"]);n!=null&&s(t,["latitude"],n);const i=r(e,["longitude"]);return i!=null&&s(t,["longitude"],i),t}function Fa(o,e){const t={},n=r(e,["latLng"]);n!=null&&s(t,["latLng"],Va(o,n));const i=r(e,["languageCode"]);return i!=null&&s(t,["languageCode"],i),t}function Ua(o,e){const t={},n=r(e,["functionCallingConfig"]);n!=null&&s(t,["functionCallingConfig"],La(o,n));const i=r(e,["retrievalConfig"]);return i!=null&&s(t,["retrievalConfig"],Fa(o,i)),t}function ba(o,e){const t={},n=r(e,["voiceName"]);return n!=null&&s(t,["voiceName"],n),t}function So(o,e){const t={},n=r(e,["prebuiltVoiceConfig"]);return n!=null&&s(t,["prebuiltVoiceConfig"],ba(o,n)),t}function Ga(o,e){const t={},n=r(e,["speaker"]);n!=null&&s(t,["speaker"],n);const i=r(e,["voiceConfig"]);return i!=null&&s(t,["voiceConfig"],So(o,i)),t}function Ba(o,e){const t={},n=r(e,["speakerVoiceConfigs"]);if(n!=null){let i=n;Array.isArray(i)&&(i=i.map(l=>Ga(o,l))),s(t,["speakerVoiceConfigs"],i)}return t}function qa(o,e){const t={},n=r(e,["voiceConfig"]);n!=null&&s(t,["voiceConfig"],So(o,n));const i=r(e,["multiSpeakerVoiceConfig"]);i!=null&&s(t,["multiSpeakerVoiceConfig"],Ba(o,i));const l=r(e,["languageCode"]);return l!=null&&s(t,["languageCode"],l),t}function $a(o,e){const t={},n=r(e,["includeThoughts"]);n!=null&&s(t,["includeThoughts"],n);const i=r(e,["thinkingBudget"]);return i!=null&&s(t,["thinkingBudget"],i),t}function Oa(o,e,t){const n={},i=r(e,["systemInstruction"]);t!==void 0&&i!=null&&s(t,["systemInstruction"],rt(o,K(o,i)));const l=r(e,["temperature"]);l!=null&&s(n,["temperature"],l);const a=r(e,["topP"]);a!=null&&s(n,["topP"],a);const u=r(e,["topK"]);u!=null&&s(n,["topK"],u);const d=r(e,["candidateCount"]);d!=null&&s(n,["candidateCount"],d);const c=r(e,["maxOutputTokens"]);c!=null&&s(n,["maxOutputTokens"],c);const f=r(e,["stopSequences"]);f!=null&&s(n,["stopSequences"],f);const p=r(e,["responseLogprobs"]);p!=null&&s(n,["responseLogprobs"],p);const m=r(e,["logprobs"]);m!=null&&s(n,["logprobs"],m);const h=r(e,["presencePenalty"]);h!=null&&s(n,["presencePenalty"],h);const g=r(e,["frequencyPenalty"]);g!=null&&s(n,["frequencyPenalty"],g);const v=r(e,["seed"]);v!=null&&s(n,["seed"],v);const E=r(e,["responseMimeType"]);E!=null&&s(n,["responseMimeType"],E);const M=r(e,["responseSchema"]);if(M!=null&&s(n,["responseSchema"],Aa(o,Qe(o,M))),r(e,["routingConfig"])!==void 0)throw new Error("routingConfig parameter is not supported in Gemini API.");if(r(e,["modelSelectionConfig"])!==void 0)throw new Error("modelSelectionConfig parameter is not supported in Gemini API.");const _=r(e,["safetySettings"]);if(t!==void 0&&_!=null){let G=_;Array.isArray(G)&&(G=G.map(X=>Ma(o,X))),s(t,["safetySettings"],G)}const A=r(e,["tools"]);if(t!==void 0&&A!=null){let G=Be(o,A);Array.isArray(G)&&(G=G.map(X=>Da(o,Ge(o,X)))),s(t,["tools"],G)}const R=r(e,["toolConfig"]);if(t!==void 0&&R!=null&&s(t,["toolConfig"],Ua(o,R)),r(e,["labels"])!==void 0)throw new Error("labels parameter is not supported in Gemini API.");const k=r(e,["cachedContent"]);t!==void 0&&k!=null&&s(t,["cachedContent"],ce(o,k));const V=r(e,["responseModalities"]);V!=null&&s(n,["responseModalities"],V);const B=r(e,["mediaResolution"]);B!=null&&s(n,["mediaResolution"],B);const J=r(e,["speechConfig"]);if(J!=null&&s(n,["speechConfig"],qa(o,oo(o,J))),r(e,["audioTimestamp"])!==void 0)throw new Error("audioTimestamp parameter is not supported in Gemini API.");const D=r(e,["thinkingConfig"]);return D!=null&&s(n,["thinkingConfig"],$a(o,D)),n}function xo(o,e){const t={},n=r(e,["model"]);n!=null&&s(t,["_url","model"],q(o,n));const i=r(e,["contents"]);if(i!=null){let a=te(o,i);Array.isArray(a)&&(a=a.map(u=>rt(o,u))),s(t,["contents"],a)}const l=r(e,["config"]);return l!=null&&s(t,["generationConfig"],Oa(o,l,t)),t}function Ha(o,e,t){const n={},i=r(e,["taskType"]);t!==void 0&&i!=null&&s(t,["requests[]","taskType"],i);const l=r(e,["title"]);t!==void 0&&l!=null&&s(t,["requests[]","title"],l);const a=r(e,["outputDimensionality"]);if(t!==void 0&&a!=null&&s(t,["requests[]","outputDimensionality"],a),r(e,["mimeType"])!==void 0)throw new Error("mimeType parameter is not supported in Gemini API.");if(r(e,["autoTruncate"])!==void 0)throw new Error("autoTruncate parameter is not supported in Gemini API.");return n}function Ja(o,e){const t={},n=r(e,["model"]);n!=null&&s(t,["_url","model"],q(o,n));const i=r(e,["contents"]);i!=null&&s(t,["requests[]","content"],to(o,i));const l=r(e,["config"]);l!=null&&s(t,["config"],Ha(o,l,t));const a=r(e,["model"]);return a!==void 0&&s(t,["requests[]","model"],q(o,a)),t}function Wa(o,e,t){const n={};if(r(e,["outputGcsUri"])!==void 0)throw new Error("outputGcsUri parameter is not supported in Gemini API.");if(r(e,["negativePrompt"])!==void 0)throw new Error("negativePrompt parameter is not supported in Gemini API.");const i=r(e,["numberOfImages"]);t!==void 0&&i!=null&&s(t,["parameters","sampleCount"],i);const l=r(e,["aspectRatio"]);t!==void 0&&l!=null&&s(t,["parameters","aspectRatio"],l);const a=r(e,["guidanceScale"]);if(t!==void 0&&a!=null&&s(t,["parameters","guidanceScale"],a),r(e,["seed"])!==void 0)throw new Error("seed parameter is not supported in Gemini API.");const u=r(e,["safetyFilterLevel"]);t!==void 0&&u!=null&&s(t,["parameters","safetySetting"],u);const d=r(e,["personGeneration"]);t!==void 0&&d!=null&&s(t,["parameters","personGeneration"],d);const c=r(e,["includeSafetyAttributes"]);t!==void 0&&c!=null&&s(t,["parameters","includeSafetyAttributes"],c);const f=r(e,["includeRaiReason"]);t!==void 0&&f!=null&&s(t,["parameters","includeRaiReason"],f);const p=r(e,["language"]);t!==void 0&&p!=null&&s(t,["parameters","language"],p);const m=r(e,["outputMimeType"]);t!==void 0&&m!=null&&s(t,["parameters","outputOptions","mimeType"],m);const h=r(e,["outputCompressionQuality"]);if(t!==void 0&&h!=null&&s(t,["parameters","outputOptions","compressionQuality"],h),r(e,["addWatermark"])!==void 0)throw new Error("addWatermark parameter is not supported in Gemini API.");if(r(e,["enhancePrompt"])!==void 0)throw new Error("enhancePrompt parameter is not supported in Gemini API.");return n}function Ya(o,e){const t={},n=r(e,["model"]);n!=null&&s(t,["_url","model"],q(o,n));const i=r(e,["prompt"]);i!=null&&s(t,["instances[0]","prompt"],i);const l=r(e,["config"]);return l!=null&&s(t,["config"],Wa(o,l,t)),t}function Za(o,e){const t={},n=r(e,["model"]);n!=null&&s(t,["_url","name"],q(o,n));const i=r(e,["config"]);return i!=null&&s(t,["config"],i),t}function za(o,e,t){const n={},i=r(e,["pageSize"]);t!==void 0&&i!=null&&s(t,["_query","pageSize"],i);const l=r(e,["pageToken"]);t!==void 0&&l!=null&&s(t,["_query","pageToken"],l);const a=r(e,["filter"]);t!==void 0&&a!=null&&s(t,["_query","filter"],a);const u=r(e,["queryBase"]);return t!==void 0&&u!=null&&s(t,["_url","models_url"],so(o,u)),n}function Ka(o,e){const t={},n=r(e,["config"]);return n!=null&&s(t,["config"],za(o,n,t)),t}function Xa(o,e,t){const n={},i=r(e,["displayName"]);t!==void 0&&i!=null&&s(t,["displayName"],i);const l=r(e,["description"]);t!==void 0&&l!=null&&s(t,["description"],l);const a=r(e,["defaultCheckpointId"]);return t!==void 0&&a!=null&&s(t,["defaultCheckpointId"],a),n}function Qa(o,e){const t={},n=r(e,["model"]);n!=null&&s(t,["_url","name"],q(o,n));const i=r(e,["config"]);return i!=null&&s(t,["config"],Xa(o,i,t)),t}function ja(o,e){const t={},n=r(e,["model"]);n!=null&&s(t,["_url","name"],q(o,n));const i=r(e,["config"]);return i!=null&&s(t,["config"],i),t}function eu(o,e){const t={};if(r(e,["systemInstruction"])!==void 0)throw new Error("systemInstruction parameter is not supported in Gemini API.");if(r(e,["tools"])!==void 0)throw new Error("tools parameter is not supported in Gemini API.");if(r(e,["generationConfig"])!==void 0)throw new Error("generationConfig parameter is not supported in Gemini API.");return t}function tu(o,e){const t={},n=r(e,["model"]);n!=null&&s(t,["_url","model"],q(o,n));const i=r(e,["contents"]);if(i!=null){let a=te(o,i);Array.isArray(a)&&(a=a.map(u=>rt(o,u))),s(t,["contents"],a)}const l=r(e,["config"]);return l!=null&&s(t,["config"],eu(o,l)),t}function nu(o,e){const t={};if(r(e,["gcsUri"])!==void 0)throw new Error("gcsUri parameter is not supported in Gemini API.");const n=r(e,["imageBytes"]);n!=null&&s(t,["bytesBase64Encoded"],de(o,n));const i=r(e,["mimeType"]);return i!=null&&s(t,["mimeType"],i),t}function ou(o,e,t){const n={},i=r(e,["numberOfVideos"]);if(t!==void 0&&i!=null&&s(t,["parameters","sampleCount"],i),r(e,["outputGcsUri"])!==void 0)throw new Error("outputGcsUri parameter is not supported in Gemini API.");if(r(e,["fps"])!==void 0)throw new Error("fps parameter is not supported in Gemini API.");const l=r(e,["durationSeconds"]);if(t!==void 0&&l!=null&&s(t,["parameters","durationSeconds"],l),r(e,["seed"])!==void 0)throw new Error("seed parameter is not supported in Gemini API.");const a=r(e,["aspectRatio"]);if(t!==void 0&&a!=null&&s(t,["parameters","aspectRatio"],a),r(e,["resolution"])!==void 0)throw new Error("resolution parameter is not supported in Gemini API.");const u=r(e,["personGeneration"]);if(t!==void 0&&u!=null&&s(t,["parameters","personGeneration"],u),r(e,["pubsubTopic"])!==void 0)throw new Error("pubsubTopic parameter is not supported in Gemini API.");const d=r(e,["negativePrompt"]);if(t!==void 0&&d!=null&&s(t,["parameters","negativePrompt"],d),r(e,["enhancePrompt"])!==void 0)throw new Error("enhancePrompt parameter is not supported in Gemini API.");if(r(e,["generateAudio"])!==void 0)throw new Error("generateAudio parameter is not supported in Gemini API.");return n}function iu(o,e){const t={},n=r(e,["model"]);n!=null&&s(t,["_url","model"],q(o,n));const i=r(e,["prompt"]);i!=null&&s(t,["instances[0]","prompt"],i);const l=r(e,["image"]);l!=null&&s(t,["instances[0]","image"],nu(o,l));const a=r(e,["config"]);return a!=null&&s(t,["config"],ou(o,a,t)),t}function ru(o,e){const t={},n=r(e,["fps"]);n!=null&&s(t,["fps"],n);const i=r(e,["endOffset"]);i!=null&&s(t,["endOffset"],i);const l=r(e,["startOffset"]);return l!=null&&s(t,["startOffset"],l),t}function su(o,e){const t={},n=r(e,["displayName"]);n!=null&&s(t,["displayName"],n);const i=r(e,["data"]);i!=null&&s(t,["data"],i);const l=r(e,["mimeType"]);return l!=null&&s(t,["mimeType"],l),t}function lu(o,e){const t={},n=r(e,["displayName"]);n!=null&&s(t,["displayName"],n);const i=r(e,["fileUri"]);i!=null&&s(t,["fileUri"],i);const l=r(e,["mimeType"]);return l!=null&&s(t,["mimeType"],l),t}function au(o,e){const t={},n=r(e,["videoMetadata"]);n!=null&&s(t,["videoMetadata"],ru(o,n));const i=r(e,["thought"]);i!=null&&s(t,["thought"],i);const l=r(e,["inlineData"]);l!=null&&s(t,["inlineData"],su(o,l));const a=r(e,["fileData"]);a!=null&&s(t,["fileData"],lu(o,a));const u=r(e,["thoughtSignature"]);u!=null&&s(t,["thoughtSignature"],u);const d=r(e,["codeExecutionResult"]);d!=null&&s(t,["codeExecutionResult"],d);const c=r(e,["executableCode"]);c!=null&&s(t,["executableCode"],c);const f=r(e,["functionCall"]);f!=null&&s(t,["functionCall"],f);const p=r(e,["functionResponse"]);p!=null&&s(t,["functionResponse"],p);const m=r(e,["text"]);return m!=null&&s(t,["text"],m),t}function Pe(o,e){const t={},n=r(e,["parts"]);if(n!=null){let l=n;Array.isArray(l)&&(l=l.map(a=>au(o,a))),s(t,["parts"],l)}const i=r(e,["role"]);return i!=null&&s(t,["role"],i),t}function uu(o,e){const t={},n=r(e,["anyOf"]);n!=null&&s(t,["anyOf"],n);const i=r(e,["default"]);i!=null&&s(t,["default"],i);const l=r(e,["description"]);l!=null&&s(t,["description"],l);const a=r(e,["enum"]);a!=null&&s(t,["enum"],a);const u=r(e,["example"]);u!=null&&s(t,["example"],u);const d=r(e,["format"]);d!=null&&s(t,["format"],d);const c=r(e,["items"]);c!=null&&s(t,["items"],c);const f=r(e,["maxItems"]);f!=null&&s(t,["maxItems"],f);const p=r(e,["maxLength"]);p!=null&&s(t,["maxLength"],p);const m=r(e,["maxProperties"]);m!=null&&s(t,["maxProperties"],m);const h=r(e,["maximum"]);h!=null&&s(t,["maximum"],h);const g=r(e,["minItems"]);g!=null&&s(t,["minItems"],g);const v=r(e,["minLength"]);v!=null&&s(t,["minLength"],v);const E=r(e,["minProperties"]);E!=null&&s(t,["minProperties"],E);const M=r(e,["minimum"]);M!=null&&s(t,["minimum"],M);const _=r(e,["nullable"]);_!=null&&s(t,["nullable"],_);const A=r(e,["pattern"]);A!=null&&s(t,["pattern"],A);const R=r(e,["properties"]);R!=null&&s(t,["properties"],R);const k=r(e,["propertyOrdering"]);k!=null&&s(t,["propertyOrdering"],k);const V=r(e,["required"]);V!=null&&s(t,["required"],V);const B=r(e,["title"]);B!=null&&s(t,["title"],B);const J=r(e,["type"]);return J!=null&&s(t,["type"],J),t}function cu(o,e){const t={},n=r(e,["featureSelectionPreference"]);return n!=null&&s(t,["featureSelectionPreference"],n),t}function du(o,e){const t={},n=r(e,["method"]);n!=null&&s(t,["method"],n);const i=r(e,["category"]);i!=null&&s(t,["category"],i);const l=r(e,["threshold"]);return l!=null&&s(t,["threshold"],l),t}function fu(o,e){const t={};if(r(e,["behavior"])!==void 0)throw new Error("behavior parameter is not supported in Vertex AI.");const n=r(e,["description"]);n!=null&&s(t,["description"],n);const i=r(e,["name"]);i!=null&&s(t,["name"],i);const l=r(e,["parameters"]);l!=null&&s(t,["parameters"],l);const a=r(e,["response"]);return a!=null&&s(t,["response"],a),t}function pu(o,e){const t={},n=r(e,["startTime"]);n!=null&&s(t,["startTime"],n);const i=r(e,["endTime"]);return i!=null&&s(t,["endTime"],i),t}function mu(o,e){const t={},n=r(e,["timeRangeFilter"]);return n!=null&&s(t,["timeRangeFilter"],pu(o,n)),t}function hu(o,e){const t={},n=r(e,["mode"]);n!=null&&s(t,["mode"],n);const i=r(e,["dynamicThreshold"]);return i!=null&&s(t,["dynamicThreshold"],i),t}function gu(o,e){const t={},n=r(e,["dynamicRetrievalConfig"]);return n!=null&&s(t,["dynamicRetrievalConfig"],hu(o,n)),t}function yu(){return{}}function vu(o,e){const t={},n=r(e,["apiKeyString"]);return n!=null&&s(t,["apiKeyString"],n),t}function Tu(o,e){const t={},n=r(e,["apiKeyConfig"]);n!=null&&s(t,["apiKeyConfig"],vu(o,n));const i=r(e,["authType"]);i!=null&&s(t,["authType"],i);const l=r(e,["googleServiceAccountConfig"]);l!=null&&s(t,["googleServiceAccountConfig"],l);const a=r(e,["httpBasicAuthConfig"]);a!=null&&s(t,["httpBasicAuthConfig"],a);const u=r(e,["oauthConfig"]);u!=null&&s(t,["oauthConfig"],u);const d=r(e,["oidcConfig"]);return d!=null&&s(t,["oidcConfig"],d),t}function Cu(o,e){const t={},n=r(e,["authConfig"]);return n!=null&&s(t,["authConfig"],Tu(o,n)),t}function Ao(o,e){const t={},n=r(e,["functionDeclarations"]);if(n!=null){let f=n;Array.isArray(f)&&(f=f.map(p=>fu(o,p))),s(t,["functionDeclarations"],f)}const i=r(e,["retrieval"]);i!=null&&s(t,["retrieval"],i);const l=r(e,["googleSearch"]);l!=null&&s(t,["googleSearch"],mu(o,l));const a=r(e,["googleSearchRetrieval"]);a!=null&&s(t,["googleSearchRetrieval"],gu(o,a)),r(e,["enterpriseWebSearch"])!=null&&s(t,["enterpriseWebSearch"],yu());const d=r(e,["googleMaps"]);if(d!=null&&s(t,["googleMaps"],Cu(o,d)),r(e,["urlContext"])!==void 0)throw new Error("urlContext parameter is not supported in Vertex AI.");const c=r(e,["codeExecution"]);return c!=null&&s(t,["codeExecution"],c),t}function _u(o,e){const t={},n=r(e,["mode"]);n!=null&&s(t,["mode"],n);const i=r(e,["allowedFunctionNames"]);return i!=null&&s(t,["allowedFunctionNames"],i),t}function Eu(o,e){const t={},n=r(e,["latitude"]);n!=null&&s(t,["latitude"],n);const i=r(e,["longitude"]);return i!=null&&s(t,["longitude"],i),t}function Su(o,e){const t={},n=r(e,["latLng"]);n!=null&&s(t,["latLng"],Eu(o,n));const i=r(e,["languageCode"]);return i!=null&&s(t,["languageCode"],i),t}function xu(o,e){const t={},n=r(e,["functionCallingConfig"]);n!=null&&s(t,["functionCallingConfig"],_u(o,n));const i=r(e,["retrievalConfig"]);return i!=null&&s(t,["retrievalConfig"],Su(o,i)),t}function Au(o,e){const t={},n=r(e,["voiceName"]);return n!=null&&s(t,["voiceName"],n),t}function Mu(o,e){const t={},n=r(e,["prebuiltVoiceConfig"]);return n!=null&&s(t,["prebuiltVoiceConfig"],Au(o,n)),t}function Iu(o,e){const t={},n=r(e,["voiceConfig"]);if(n!=null&&s(t,["voiceConfig"],Mu(o,n)),r(e,["multiSpeakerVoiceConfig"])!==void 0)throw new Error("multiSpeakerVoiceConfig parameter is not supported in Vertex AI.");const i=r(e,["languageCode"]);return i!=null&&s(t,["languageCode"],i),t}function Ru(o,e){const t={},n=r(e,["includeThoughts"]);n!=null&&s(t,["includeThoughts"],n);const i=r(e,["thinkingBudget"]);return i!=null&&s(t,["thinkingBudget"],i),t}function wu(o,e,t){const n={},i=r(e,["systemInstruction"]);t!==void 0&&i!=null&&s(t,["systemInstruction"],Pe(o,K(o,i)));const l=r(e,["temperature"]);l!=null&&s(n,["temperature"],l);const a=r(e,["topP"]);a!=null&&s(n,["topP"],a);const u=r(e,["topK"]);u!=null&&s(n,["topK"],u);const d=r(e,["candidateCount"]);d!=null&&s(n,["candidateCount"],d);const c=r(e,["maxOutputTokens"]);c!=null&&s(n,["maxOutputTokens"],c);const f=r(e,["stopSequences"]);f!=null&&s(n,["stopSequences"],f);const p=r(e,["responseLogprobs"]);p!=null&&s(n,["responseLogprobs"],p);const m=r(e,["logprobs"]);m!=null&&s(n,["logprobs"],m);const h=r(e,["presencePenalty"]);h!=null&&s(n,["presencePenalty"],h);const g=r(e,["frequencyPenalty"]);g!=null&&s(n,["frequencyPenalty"],g);const v=r(e,["seed"]);v!=null&&s(n,["seed"],v);const E=r(e,["responseMimeType"]);E!=null&&s(n,["responseMimeType"],E);const M=r(e,["responseSchema"]);M!=null&&s(n,["responseSchema"],uu(o,Qe(o,M)));const _=r(e,["routingConfig"]);_!=null&&s(n,["routingConfig"],_);const A=r(e,["modelSelectionConfig"]);A!=null&&s(n,["modelConfig"],cu(o,A));const R=r(e,["safetySettings"]);if(t!==void 0&&R!=null){let ne=R;Array.isArray(ne)&&(ne=ne.map(ye=>du(o,ye))),s(t,["safetySettings"],ne)}const k=r(e,["tools"]);if(t!==void 0&&k!=null){let ne=Be(o,k);Array.isArray(ne)&&(ne=ne.map(ye=>Ao(o,Ge(o,ye)))),s(t,["tools"],ne)}const V=r(e,["toolConfig"]);t!==void 0&&V!=null&&s(t,["toolConfig"],xu(o,V));const B=r(e,["labels"]);t!==void 0&&B!=null&&s(t,["labels"],B);const J=r(e,["cachedContent"]);t!==void 0&&J!=null&&s(t,["cachedContent"],ce(o,J));const D=r(e,["responseModalities"]);D!=null&&s(n,["responseModalities"],D);const G=r(e,["mediaResolution"]);G!=null&&s(n,["mediaResolution"],G);const X=r(e,["speechConfig"]);X!=null&&s(n,["speechConfig"],Iu(o,oo(o,X)));const Ne=r(e,["audioTimestamp"]);Ne!=null&&s(n,["audioTimestamp"],Ne);const $e=r(e,["thinkingConfig"]);return $e!=null&&s(n,["thinkingConfig"],Ru(o,$e)),n}function Mo(o,e){const t={},n=r(e,["model"]);n!=null&&s(t,["_url","model"],q(o,n));const i=r(e,["contents"]);if(i!=null){let a=te(o,i);Array.isArray(a)&&(a=a.map(u=>Pe(o,u))),s(t,["contents"],a)}const l=r(e,["config"]);return l!=null&&s(t,["generationConfig"],wu(o,l,t)),t}function Pu(o,e,t){const n={},i=r(e,["taskType"]);t!==void 0&&i!=null&&s(t,["instances[]","task_type"],i);const l=r(e,["title"]);t!==void 0&&l!=null&&s(t,["instances[]","title"],l);const a=r(e,["outputDimensionality"]);t!==void 0&&a!=null&&s(t,["parameters","outputDimensionality"],a);const u=r(e,["mimeType"]);t!==void 0&&u!=null&&s(t,["instances[]","mimeType"],u);const d=r(e,["autoTruncate"]);return t!==void 0&&d!=null&&s(t,["parameters","autoTruncate"],d),n}function Nu(o,e){const t={},n=r(e,["model"]);n!=null&&s(t,["_url","model"],q(o,n));const i=r(e,["contents"]);i!=null&&s(t,["instances[]","content"],to(o,i));const l=r(e,["config"]);return l!=null&&s(t,["config"],Pu(o,l,t)),t}function ku(o,e,t){const n={},i=r(e,["outputGcsUri"]);t!==void 0&&i!=null&&s(t,["parameters","storageUri"],i);const l=r(e,["negativePrompt"]);t!==void 0&&l!=null&&s(t,["parameters","negativePrompt"],l);const a=r(e,["numberOfImages"]);t!==void 0&&a!=null&&s(t,["parameters","sampleCount"],a);const u=r(e,["aspectRatio"]);t!==void 0&&u!=null&&s(t,["parameters","aspectRatio"],u);const d=r(e,["guidanceScale"]);t!==void 0&&d!=null&&s(t,["parameters","guidanceScale"],d);const c=r(e,["seed"]);t!==void 0&&c!=null&&s(t,["parameters","seed"],c);const f=r(e,["safetyFilterLevel"]);t!==void 0&&f!=null&&s(t,["parameters","safetySetting"],f);const p=r(e,["personGeneration"]);t!==void 0&&p!=null&&s(t,["parameters","personGeneration"],p);const m=r(e,["includeSafetyAttributes"]);t!==void 0&&m!=null&&s(t,["parameters","includeSafetyAttributes"],m);const h=r(e,["includeRaiReason"]);t!==void 0&&h!=null&&s(t,["parameters","includeRaiReason"],h);const g=r(e,["language"]);t!==void 0&&g!=null&&s(t,["parameters","language"],g);const v=r(e,["outputMimeType"]);t!==void 0&&v!=null&&s(t,["parameters","outputOptions","mimeType"],v);const E=r(e,["outputCompressionQuality"]);t!==void 0&&E!=null&&s(t,["parameters","outputOptions","compressionQuality"],E);const M=r(e,["addWatermark"]);t!==void 0&&M!=null&&s(t,["parameters","addWatermark"],M);const _=r(e,["enhancePrompt"]);return t!==void 0&&_!=null&&s(t,["parameters","enhancePrompt"],_),n}function Du(o,e){const t={},n=r(e,["model"]);n!=null&&s(t,["_url","model"],q(o,n));const i=r(e,["prompt"]);i!=null&&s(t,["instances[0]","prompt"],i);const l=r(e,["config"]);return l!=null&&s(t,["config"],ku(o,l,t)),t}function St(o,e){const t={},n=r(e,["gcsUri"]);n!=null&&s(t,["gcsUri"],n);const i=r(e,["imageBytes"]);i!=null&&s(t,["bytesBase64Encoded"],de(o,i));const l=r(e,["mimeType"]);return l!=null&&s(t,["mimeType"],l),t}function Lu(o,e){const t={},n=r(e,["maskMode"]);n!=null&&s(t,["maskMode"],n);const i=r(e,["segmentationClasses"]);i!=null&&s(t,["maskClasses"],i);const l=r(e,["maskDilation"]);return l!=null&&s(t,["dilation"],l),t}function Vu(o,e){const t={},n=r(e,["controlType"]);n!=null&&s(t,["controlType"],n);const i=r(e,["enableControlImageComputation"]);return i!=null&&s(t,["computeControl"],i),t}function Fu(o,e){const t={},n=r(e,["styleDescription"]);return n!=null&&s(t,["styleDescription"],n),t}function Uu(o,e){const t={},n=r(e,["subjectType"]);n!=null&&s(t,["subjectType"],n);const i=r(e,["subjectDescription"]);return i!=null&&s(t,["subjectDescription"],i),t}function bu(o,e){const t={},n=r(e,["referenceImage"]);n!=null&&s(t,["referenceImage"],St(o,n));const i=r(e,["referenceId"]);i!=null&&s(t,["referenceId"],i);const l=r(e,["referenceType"]);l!=null&&s(t,["referenceType"],l);const a=r(e,["maskImageConfig"]);a!=null&&s(t,["maskImageConfig"],Lu(o,a));const u=r(e,["controlImageConfig"]);u!=null&&s(t,["controlImageConfig"],Vu(o,u));const d=r(e,["styleImageConfig"]);d!=null&&s(t,["styleImageConfig"],Fu(o,d));const c=r(e,["subjectImageConfig"]);return c!=null&&s(t,["subjectImageConfig"],Uu(o,c)),t}function Gu(o,e,t){const n={},i=r(e,["outputGcsUri"]);t!==void 0&&i!=null&&s(t,["parameters","storageUri"],i);const l=r(e,["negativePrompt"]);t!==void 0&&l!=null&&s(t,["parameters","negativePrompt"],l);const a=r(e,["numberOfImages"]);t!==void 0&&a!=null&&s(t,["parameters","sampleCount"],a);const u=r(e,["aspectRatio"]);t!==void 0&&u!=null&&s(t,["parameters","aspectRatio"],u);const d=r(e,["guidanceScale"]);t!==void 0&&d!=null&&s(t,["parameters","guidanceScale"],d);const c=r(e,["seed"]);t!==void 0&&c!=null&&s(t,["parameters","seed"],c);const f=r(e,["safetyFilterLevel"]);t!==void 0&&f!=null&&s(t,["parameters","safetySetting"],f);const p=r(e,["personGeneration"]);t!==void 0&&p!=null&&s(t,["parameters","personGeneration"],p);const m=r(e,["includeSafetyAttributes"]);t!==void 0&&m!=null&&s(t,["parameters","includeSafetyAttributes"],m);const h=r(e,["includeRaiReason"]);t!==void 0&&h!=null&&s(t,["parameters","includeRaiReason"],h);const g=r(e,["language"]);t!==void 0&&g!=null&&s(t,["parameters","language"],g);const v=r(e,["outputMimeType"]);t!==void 0&&v!=null&&s(t,["parameters","outputOptions","mimeType"],v);const E=r(e,["outputCompressionQuality"]);t!==void 0&&E!=null&&s(t,["parameters","outputOptions","compressionQuality"],E);const M=r(e,["editMode"]);t!==void 0&&M!=null&&s(t,["parameters","editMode"],M);const _=r(e,["baseSteps"]);return t!==void 0&&_!=null&&s(t,["parameters","editConfig","baseSteps"],_),n}function Bu(o,e){const t={},n=r(e,["model"]);n!=null&&s(t,["_url","model"],q(o,n));const i=r(e,["prompt"]);i!=null&&s(t,["instances[0]","prompt"],i);const l=r(e,["referenceImages"]);if(l!=null){let u=l;Array.isArray(u)&&(u=u.map(d=>bu(o,d))),s(t,["instances[0]","referenceImages"],u)}const a=r(e,["config"]);return a!=null&&s(t,["config"],Gu(o,a,t)),t}function qu(o,e,t){const n={},i=r(e,["includeRaiReason"]);t!==void 0&&i!=null&&s(t,["parameters","includeRaiReason"],i);const l=r(e,["outputMimeType"]);t!==void 0&&l!=null&&s(t,["parameters","outputOptions","mimeType"],l);const a=r(e,["outputCompressionQuality"]);t!==void 0&&a!=null&&s(t,["parameters","outputOptions","compressionQuality"],a);const u=r(e,["numberOfImages"]);t!==void 0&&u!=null&&s(t,["parameters","sampleCount"],u);const d=r(e,["mode"]);return t!==void 0&&d!=null&&s(t,["parameters","mode"],d),n}function $u(o,e){const t={},n=r(e,["model"]);n!=null&&s(t,["_url","model"],q(o,n));const i=r(e,["image"]);i!=null&&s(t,["instances[0]","image"],St(o,i));const l=r(e,["upscaleFactor"]);l!=null&&s(t,["parameters","upscaleConfig","upscaleFactor"],l);const a=r(e,["config"]);return a!=null&&s(t,["config"],qu(o,a,t)),t}function Ou(o,e){const t={},n=r(e,["model"]);n!=null&&s(t,["_url","name"],q(o,n));const i=r(e,["config"]);return i!=null&&s(t,["config"],i),t}function Hu(o,e,t){const n={},i=r(e,["pageSize"]);t!==void 0&&i!=null&&s(t,["_query","pageSize"],i);const l=r(e,["pageToken"]);t!==void 0&&l!=null&&s(t,["_query","pageToken"],l);const a=r(e,["filter"]);t!==void 0&&a!=null&&s(t,["_query","filter"],a);const u=r(e,["queryBase"]);return t!==void 0&&u!=null&&s(t,["_url","models_url"],so(o,u)),n}function Ju(o,e){const t={},n=r(e,["config"]);return n!=null&&s(t,["config"],Hu(o,n,t)),t}function Wu(o,e,t){const n={},i=r(e,["displayName"]);t!==void 0&&i!=null&&s(t,["displayName"],i);const l=r(e,["description"]);t!==void 0&&l!=null&&s(t,["description"],l);const a=r(e,["defaultCheckpointId"]);return t!==void 0&&a!=null&&s(t,["defaultCheckpointId"],a),n}function Yu(o,e){const t={},n=r(e,["model"]);n!=null&&s(t,["_url","model"],q(o,n));const i=r(e,["config"]);return i!=null&&s(t,["config"],Wu(o,i,t)),t}function Zu(o,e){const t={},n=r(e,["model"]);n!=null&&s(t,["_url","name"],q(o,n));const i=r(e,["config"]);return i!=null&&s(t,["config"],i),t}function zu(o,e,t){const n={},i=r(e,["systemInstruction"]);t!==void 0&&i!=null&&s(t,["systemInstruction"],Pe(o,K(o,i)));const l=r(e,["tools"]);if(t!==void 0&&l!=null){let u=l;Array.isArray(u)&&(u=u.map(d=>Ao(o,d))),s(t,["tools"],u)}const a=r(e,["generationConfig"]);return t!==void 0&&a!=null&&s(t,["generationConfig"],a),n}function Ku(o,e){const t={},n=r(e,["model"]);n!=null&&s(t,["_url","model"],q(o,n));const i=r(e,["contents"]);if(i!=null){let a=te(o,i);Array.isArray(a)&&(a=a.map(u=>Pe(o,u))),s(t,["contents"],a)}const l=r(e,["config"]);return l!=null&&s(t,["config"],zu(o,l,t)),t}function Xu(o,e){const t={},n=r(e,["model"]);n!=null&&s(t,["_url","model"],q(o,n));const i=r(e,["contents"]);if(i!=null){let a=te(o,i);Array.isArray(a)&&(a=a.map(u=>Pe(o,u))),s(t,["contents"],a)}const l=r(e,["config"]);return l!=null&&s(t,["config"],l),t}function Qu(o,e,t){const n={},i=r(e,["numberOfVideos"]);t!==void 0&&i!=null&&s(t,["parameters","sampleCount"],i);const l=r(e,["outputGcsUri"]);t!==void 0&&l!=null&&s(t,["parameters","storageUri"],l);const a=r(e,["fps"]);t!==void 0&&a!=null&&s(t,["parameters","fps"],a);const u=r(e,["durationSeconds"]);t!==void 0&&u!=null&&s(t,["parameters","durationSeconds"],u);const d=r(e,["seed"]);t!==void 0&&d!=null&&s(t,["parameters","seed"],d);const c=r(e,["aspectRatio"]);t!==void 0&&c!=null&&s(t,["parameters","aspectRatio"],c);const f=r(e,["resolution"]);t!==void 0&&f!=null&&s(t,["parameters","resolution"],f);const p=r(e,["personGeneration"]);t!==void 0&&p!=null&&s(t,["parameters","personGeneration"],p);const m=r(e,["pubsubTopic"]);t!==void 0&&m!=null&&s(t,["parameters","pubsubTopic"],m);const h=r(e,["negativePrompt"]);t!==void 0&&h!=null&&s(t,["parameters","negativePrompt"],h);const g=r(e,["enhancePrompt"]);t!==void 0&&g!=null&&s(t,["parameters","enhancePrompt"],g);const v=r(e,["generateAudio"]);return t!==void 0&&v!=null&&s(t,["parameters","generateAudio"],v),n}function ju(o,e){const t={},n=r(e,["model"]);n!=null&&s(t,["_url","model"],q(o,n));const i=r(e,["prompt"]);i!=null&&s(t,["instances[0]","prompt"],i);const l=r(e,["image"]);l!=null&&s(t,["instances[0]","image"],St(o,l));const a=r(e,["config"]);return a!=null&&s(t,["config"],Qu(o,a,t)),t}function ec(o,e){const t={},n=r(e,["fps"]);n!=null&&s(t,["fps"],n);const i=r(e,["endOffset"]);i!=null&&s(t,["endOffset"],i);const l=r(e,["startOffset"]);return l!=null&&s(t,["startOffset"],l),t}function tc(o,e){const t={},n=r(e,["data"]);n!=null&&s(t,["data"],n);const i=r(e,["mimeType"]);return i!=null&&s(t,["mimeType"],i),t}function nc(o,e){const t={},n=r(e,["fileUri"]);n!=null&&s(t,["fileUri"],n);const i=r(e,["mimeType"]);return i!=null&&s(t,["mimeType"],i),t}function oc(o,e){const t={},n=r(e,["videoMetadata"]);n!=null&&s(t,["videoMetadata"],ec(o,n));const i=r(e,["thought"]);i!=null&&s(t,["thought"],i);const l=r(e,["inlineData"]);l!=null&&s(t,["inlineData"],tc(o,l));const a=r(e,["fileData"]);a!=null&&s(t,["fileData"],nc(o,a));const u=r(e,["thoughtSignature"]);u!=null&&s(t,["thoughtSignature"],u);const d=r(e,["codeExecutionResult"]);d!=null&&s(t,["codeExecutionResult"],d);const c=r(e,["executableCode"]);c!=null&&s(t,["executableCode"],c);const f=r(e,["functionCall"]);f!=null&&s(t,["functionCall"],f);const p=r(e,["functionResponse"]);p!=null&&s(t,["functionResponse"],p);const m=r(e,["text"]);return m!=null&&s(t,["text"],m),t}function ic(o,e){const t={},n=r(e,["parts"]);if(n!=null){let l=n;Array.isArray(l)&&(l=l.map(a=>oc(o,a))),s(t,["parts"],l)}const i=r(e,["role"]);return i!=null&&s(t,["role"],i),t}function rc(o,e){const t={},n=r(e,["citationSources"]);return n!=null&&s(t,["citations"],n),t}function sc(o,e){const t={},n=r(e,["retrievedUrl"]);n!=null&&s(t,["retrievedUrl"],n);const i=r(e,["urlRetrievalStatus"]);return i!=null&&s(t,["urlRetrievalStatus"],i),t}function lc(o,e){const t={},n=r(e,["urlMetadata"]);if(n!=null){let i=n;Array.isArray(i)&&(i=i.map(l=>sc(o,l))),s(t,["urlMetadata"],i)}return t}function ac(o,e){const t={},n=r(e,["content"]);n!=null&&s(t,["content"],ic(o,n));const i=r(e,["citationMetadata"]);i!=null&&s(t,["citationMetadata"],rc(o,i));const l=r(e,["tokenCount"]);l!=null&&s(t,["tokenCount"],l);const a=r(e,["finishReason"]);a!=null&&s(t,["finishReason"],a);const u=r(e,["urlContextMetadata"]);u!=null&&s(t,["urlContextMetadata"],lc(o,u));const d=r(e,["avgLogprobs"]);d!=null&&s(t,["avgLogprobs"],d);const c=r(e,["groundingMetadata"]);c!=null&&s(t,["groundingMetadata"],c);const f=r(e,["index"]);f!=null&&s(t,["index"],f);const p=r(e,["logprobsResult"]);p!=null&&s(t,["logprobsResult"],p);const m=r(e,["safetyRatings"]);return m!=null&&s(t,["safetyRatings"],m),t}function Io(o,e){const t={},n=r(e,["candidates"]);if(n!=null){let u=n;Array.isArray(u)&&(u=u.map(d=>ac(o,d))),s(t,["candidates"],u)}const i=r(e,["modelVersion"]);i!=null&&s(t,["modelVersion"],i);const l=r(e,["promptFeedback"]);l!=null&&s(t,["promptFeedback"],l);const a=r(e,["usageMetadata"]);return a!=null&&s(t,["usageMetadata"],a),t}function uc(o,e){const t={},n=r(e,["values"]);return n!=null&&s(t,["values"],n),t}function cc(){return{}}function dc(o,e){const t={},n=r(e,["embeddings"]);if(n!=null){let l=n;Array.isArray(l)&&(l=l.map(a=>uc(o,a))),s(t,["embeddings"],l)}return r(e,["metadata"])!=null&&s(t,["metadata"],cc()),t}function fc(o,e){const t={},n=r(e,["bytesBase64Encoded"]);n!=null&&s(t,["imageBytes"],de(o,n));const i=r(e,["mimeType"]);return i!=null&&s(t,["mimeType"],i),t}function Ro(o,e){const t={},n=r(e,["safetyAttributes","categories"]);n!=null&&s(t,["categories"],n);const i=r(e,["safetyAttributes","scores"]);i!=null&&s(t,["scores"],i);const l=r(e,["contentType"]);return l!=null&&s(t,["contentType"],l),t}function pc(o,e){const t={},n=r(e,["_self"]);n!=null&&s(t,["image"],fc(o,n));const i=r(e,["raiFilteredReason"]);i!=null&&s(t,["raiFilteredReason"],i);const l=r(e,["_self"]);return l!=null&&s(t,["safetyAttributes"],Ro(o,l)),t}function mc(o,e){const t={},n=r(e,["predictions"]);if(n!=null){let l=n;Array.isArray(l)&&(l=l.map(a=>pc(o,a))),s(t,["generatedImages"],l)}const i=r(e,["positivePromptSafetyAttributes"]);return i!=null&&s(t,["positivePromptSafetyAttributes"],Ro(o,i)),t}function hc(o,e){const t={},n=r(e,["baseModel"]);n!=null&&s(t,["baseModel"],n);const i=r(e,["createTime"]);i!=null&&s(t,["createTime"],i);const l=r(e,["updateTime"]);return l!=null&&s(t,["updateTime"],l),t}function xt(o,e){const t={},n=r(e,["name"]);n!=null&&s(t,["name"],n);const i=r(e,["displayName"]);i!=null&&s(t,["displayName"],i);const l=r(e,["description"]);l!=null&&s(t,["description"],l);const a=r(e,["version"]);a!=null&&s(t,["version"],a);const u=r(e,["_self"]);u!=null&&s(t,["tunedModelInfo"],hc(o,u));const d=r(e,["inputTokenLimit"]);d!=null&&s(t,["inputTokenLimit"],d);const c=r(e,["outputTokenLimit"]);c!=null&&s(t,["outputTokenLimit"],c);const f=r(e,["supportedGenerationMethods"]);return f!=null&&s(t,["supportedActions"],f),t}function gc(o,e){const t={},n=r(e,["nextPageToken"]);n!=null&&s(t,["nextPageToken"],n);const i=r(e,["_self"]);if(i!=null){let l=lo(o,i);Array.isArray(l)&&(l=l.map(a=>xt(o,a))),s(t,["models"],l)}return t}function yc(){return{}}function vc(o,e){const t={},n=r(e,["totalTokens"]);n!=null&&s(t,["totalTokens"],n);const i=r(e,["cachedContentTokenCount"]);return i!=null&&s(t,["cachedContentTokenCount"],i),t}function Tc(o,e){const t={},n=r(e,["video","uri"]);n!=null&&s(t,["uri"],n);const i=r(e,["video","encodedVideo"]);i!=null&&s(t,["videoBytes"],de(o,i));const l=r(e,["encoding"]);return l!=null&&s(t,["mimeType"],l),t}function Cc(o,e){const t={},n=r(e,["_self"]);return n!=null&&s(t,["video"],Tc(o,n)),t}function _c(o,e){const t={},n=r(e,["generatedSamples"]);if(n!=null){let a=n;Array.isArray(a)&&(a=a.map(u=>Cc(o,u))),s(t,["generatedVideos"],a)}const i=r(e,["raiMediaFilteredCount"]);i!=null&&s(t,["raiMediaFilteredCount"],i);const l=r(e,["raiMediaFilteredReasons"]);return l!=null&&s(t,["raiMediaFilteredReasons"],l),t}function Ec(o,e){const t={},n=r(e,["name"]);n!=null&&s(t,["name"],n);const i=r(e,["metadata"]);i!=null&&s(t,["metadata"],i);const l=r(e,["done"]);l!=null&&s(t,["done"],l);const a=r(e,["error"]);a!=null&&s(t,["error"],a);const u=r(e,["response","generateVideoResponse"]);return u!=null&&s(t,["response"],_c(o,u)),t}function Sc(o,e){const t={},n=r(e,["fps"]);n!=null&&s(t,["fps"],n);const i=r(e,["endOffset"]);i!=null&&s(t,["endOffset"],i);const l=r(e,["startOffset"]);return l!=null&&s(t,["startOffset"],l),t}function xc(o,e){const t={},n=r(e,["displayName"]);n!=null&&s(t,["displayName"],n);const i=r(e,["data"]);i!=null&&s(t,["data"],i);const l=r(e,["mimeType"]);return l!=null&&s(t,["mimeType"],l),t}function Ac(o,e){const t={},n=r(e,["displayName"]);n!=null&&s(t,["displayName"],n);const i=r(e,["fileUri"]);i!=null&&s(t,["fileUri"],i);const l=r(e,["mimeType"]);return l!=null&&s(t,["mimeType"],l),t}function Mc(o,e){const t={},n=r(e,["videoMetadata"]);n!=null&&s(t,["videoMetadata"],Sc(o,n));const i=r(e,["thought"]);i!=null&&s(t,["thought"],i);const l=r(e,["inlineData"]);l!=null&&s(t,["inlineData"],xc(o,l));const a=r(e,["fileData"]);a!=null&&s(t,["fileData"],Ac(o,a));const u=r(e,["thoughtSignature"]);u!=null&&s(t,["thoughtSignature"],u);const d=r(e,["codeExecutionResult"]);d!=null&&s(t,["codeExecutionResult"],d);const c=r(e,["executableCode"]);c!=null&&s(t,["executableCode"],c);const f=r(e,["functionCall"]);f!=null&&s(t,["functionCall"],f);const p=r(e,["functionResponse"]);p!=null&&s(t,["functionResponse"],p);const m=r(e,["text"]);return m!=null&&s(t,["text"],m),t}function Ic(o,e){const t={},n=r(e,["parts"]);if(n!=null){let l=n;Array.isArray(l)&&(l=l.map(a=>Mc(o,a))),s(t,["parts"],l)}const i=r(e,["role"]);return i!=null&&s(t,["role"],i),t}function Rc(o,e){const t={},n=r(e,["citations"]);return n!=null&&s(t,["citations"],n),t}function wc(o,e){const t={},n=r(e,["content"]);n!=null&&s(t,["content"],Ic(o,n));const i=r(e,["citationMetadata"]);i!=null&&s(t,["citationMetadata"],Rc(o,i));const l=r(e,["finishMessage"]);l!=null&&s(t,["finishMessage"],l);const a=r(e,["finishReason"]);a!=null&&s(t,["finishReason"],a);const u=r(e,["avgLogprobs"]);u!=null&&s(t,["avgLogprobs"],u);const d=r(e,["groundingMetadata"]);d!=null&&s(t,["groundingMetadata"],d);const c=r(e,["index"]);c!=null&&s(t,["index"],c);const f=r(e,["logprobsResult"]);f!=null&&s(t,["logprobsResult"],f);const p=r(e,["safetyRatings"]);return p!=null&&s(t,["safetyRatings"],p),t}function wo(o,e){const t={},n=r(e,["candidates"]);if(n!=null){let c=n;Array.isArray(c)&&(c=c.map(f=>wc(o,f))),s(t,["candidates"],c)}const i=r(e,["createTime"]);i!=null&&s(t,["createTime"],i);const l=r(e,["responseId"]);l!=null&&s(t,["responseId"],l);const a=r(e,["modelVersion"]);a!=null&&s(t,["modelVersion"],a);const u=r(e,["promptFeedback"]);u!=null&&s(t,["promptFeedback"],u);const d=r(e,["usageMetadata"]);return d!=null&&s(t,["usageMetadata"],d),t}function Pc(o,e){const t={},n=r(e,["truncated"]);n!=null&&s(t,["truncated"],n);const i=r(e,["token_count"]);return i!=null&&s(t,["tokenCount"],i),t}function Nc(o,e){const t={},n=r(e,["values"]);n!=null&&s(t,["values"],n);const i=r(e,["statistics"]);return i!=null&&s(t,["statistics"],Pc(o,i)),t}function kc(o,e){const t={},n=r(e,["billableCharacterCount"]);return n!=null&&s(t,["billableCharacterCount"],n),t}function Dc(o,e){const t={},n=r(e,["predictions[]","embeddings"]);if(n!=null){let l=n;Array.isArray(l)&&(l=l.map(a=>Nc(o,a))),s(t,["embeddings"],l)}const i=r(e,["metadata"]);return i!=null&&s(t,["metadata"],kc(o,i)),t}function Lc(o,e){const t={},n=r(e,["gcsUri"]);n!=null&&s(t,["gcsUri"],n);const i=r(e,["bytesBase64Encoded"]);i!=null&&s(t,["imageBytes"],de(o,i));const l=r(e,["mimeType"]);return l!=null&&s(t,["mimeType"],l),t}function Po(o,e){const t={},n=r(e,["safetyAttributes","categories"]);n!=null&&s(t,["categories"],n);const i=r(e,["safetyAttributes","scores"]);i!=null&&s(t,["scores"],i);const l=r(e,["contentType"]);return l!=null&&s(t,["contentType"],l),t}function At(o,e){const t={},n=r(e,["_self"]);n!=null&&s(t,["image"],Lc(o,n));const i=r(e,["raiFilteredReason"]);i!=null&&s(t,["raiFilteredReason"],i);const l=r(e,["_self"]);l!=null&&s(t,["safetyAttributes"],Po(o,l));const a=r(e,["prompt"]);return a!=null&&s(t,["enhancedPrompt"],a),t}function Vc(o,e){const t={},n=r(e,["predictions"]);if(n!=null){let l=n;Array.isArray(l)&&(l=l.map(a=>At(o,a))),s(t,["generatedImages"],l)}const i=r(e,["positivePromptSafetyAttributes"]);return i!=null&&s(t,["positivePromptSafetyAttributes"],Po(o,i)),t}function Fc(o,e){const t={},n=r(e,["predictions"]);if(n!=null){let i=n;Array.isArray(i)&&(i=i.map(l=>At(o,l))),s(t,["generatedImages"],i)}return t}function Uc(o,e){const t={},n=r(e,["predictions"]);if(n!=null){let i=n;Array.isArray(i)&&(i=i.map(l=>At(o,l))),s(t,["generatedImages"],i)}return t}function bc(o,e){const t={},n=r(e,["endpoint"]);n!=null&&s(t,["name"],n);const i=r(e,["deployedModelId"]);return i!=null&&s(t,["deployedModelId"],i),t}function Gc(o,e){const t={},n=r(e,["labels","google-vertex-llm-tuning-base-model-id"]);n!=null&&s(t,["baseModel"],n);const i=r(e,["createTime"]);i!=null&&s(t,["createTime"],i);const l=r(e,["updateTime"]);return l!=null&&s(t,["updateTime"],l),t}function Bc(o,e){const t={},n=r(e,["checkpointId"]);n!=null&&s(t,["checkpointId"],n);const i=r(e,["epoch"]);i!=null&&s(t,["epoch"],i);const l=r(e,["step"]);return l!=null&&s(t,["step"],l),t}function Mt(o,e){const t={},n=r(e,["name"]);n!=null&&s(t,["name"],n);const i=r(e,["displayName"]);i!=null&&s(t,["displayName"],i);const l=r(e,["description"]);l!=null&&s(t,["description"],l);const a=r(e,["versionId"]);a!=null&&s(t,["version"],a);const u=r(e,["deployedModels"]);if(u!=null){let m=u;Array.isArray(m)&&(m=m.map(h=>bc(o,h))),s(t,["endpoints"],m)}const d=r(e,["labels"]);d!=null&&s(t,["labels"],d);const c=r(e,["_self"]);c!=null&&s(t,["tunedModelInfo"],Gc(o,c));const f=r(e,["defaultCheckpointId"]);f!=null&&s(t,["defaultCheckpointId"],f);const p=r(e,["checkpoints"]);if(p!=null){let m=p;Array.isArray(m)&&(m=m.map(h=>Bc(o,h))),s(t,["checkpoints"],m)}return t}function qc(o,e){const t={},n=r(e,["nextPageToken"]);n!=null&&s(t,["nextPageToken"],n);const i=r(e,["_self"]);if(i!=null){let l=lo(o,i);Array.isArray(l)&&(l=l.map(a=>Mt(o,a))),s(t,["models"],l)}return t}function $c(){return{}}function Oc(o,e){const t={},n=r(e,["totalTokens"]);return n!=null&&s(t,["totalTokens"],n),t}function Hc(o,e){const t={},n=r(e,["tokensInfo"]);return n!=null&&s(t,["tokensInfo"],n),t}function Jc(o,e){const t={},n=r(e,["gcsUri"]);n!=null&&s(t,["uri"],n);const i=r(e,["bytesBase64Encoded"]);i!=null&&s(t,["videoBytes"],de(o,i));const l=r(e,["mimeType"]);return l!=null&&s(t,["mimeType"],l),t}function Wc(o,e){const t={},n=r(e,["_self"]);return n!=null&&s(t,["video"],Jc(o,n)),t}function Yc(o,e){const t={},n=r(e,["videos"]);if(n!=null){let a=n;Array.isArray(a)&&(a=a.map(u=>Wc(o,u))),s(t,["generatedVideos"],a)}const i=r(e,["raiMediaFilteredCount"]);i!=null&&s(t,["raiMediaFilteredCount"],i);const l=r(e,["raiMediaFilteredReasons"]);return l!=null&&s(t,["raiMediaFilteredReasons"],l),t}function Zc(o,e){const t={},n=r(e,["name"]);n!=null&&s(t,["name"],n);const i=r(e,["metadata"]);i!=null&&s(t,["metadata"],i);const l=r(e,["done"]);l!=null&&s(t,["done"],l);const a=r(e,["error"]);a!=null&&s(t,["error"],a);const u=r(e,["response"]);return u!=null&&s(t,["response"],Yc(o,u)),t}/**
176
146
  * @license
177
147
  * Copyright 2025 Google LLC
178
148
  * SPDX-License-Identifier: Apache-2.0
179
- */const pf="Content-Type",hf="X-Server-Timeout",wf="User-Agent",zn="x-goog-api-client",mf="google-genai-sdk/1.3.0",Cf="v1beta1",Mf="v1beta",gr=/^data: (.*)(?:\n\n|\r\r|\r\n\r\n)/;class dr extends Error{constructor(e,t){t?super(e,{cause:t}):super(e,{cause:new Error().stack}),this.message=e,this.name="ClientError"}}class Sn extends Error{constructor(e,t){t?super(e,{cause:t}):super(e,{cause:new Error().stack}),this.message=e,this.name="ServerError"}}class yf{constructor(e){var t,A;this.clientOptions=Object.assign(Object.assign({},e),{project:e.project,location:e.location,apiKey:e.apiKey,vertexai:e.vertexai});const i={};this.clientOptions.vertexai?(i.apiVersion=(t=this.clientOptions.apiVersion)!==null&&t!==void 0?t:Cf,i.baseUrl=this.baseUrlFromProjectLocation(),this.normalizeAuthParameters()):(i.apiVersion=(A=this.clientOptions.apiVersion)!==null&&A!==void 0?A:Mf,i.baseUrl="https://generativelanguage.googleapis.com/"),i.headers=this.getDefaultHeaders(),this.clientOptions.httpOptions=i,e.httpOptions&&(this.clientOptions.httpOptions=this.patchHttpOptions(i,e.httpOptions))}baseUrlFromProjectLocation(){return this.clientOptions.project&&this.clientOptions.location&&this.clientOptions.location!=="global"?`https://${this.clientOptions.location}-aiplatform.googleapis.com/`:"https://aiplatform.googleapis.com/"}normalizeAuthParameters(){if(this.clientOptions.project&&this.clientOptions.location){this.clientOptions.apiKey=void 0;return}this.clientOptions.project=void 0,this.clientOptions.location=void 0}isVertexAI(){var e;return(e=this.clientOptions.vertexai)!==null&&e!==void 0?e:!1}getProject(){return this.clientOptions.project}getLocation(){return this.clientOptions.location}getApiVersion(){if(this.clientOptions.httpOptions&&this.clientOptions.httpOptions.apiVersion!==void 0)return this.clientOptions.httpOptions.apiVersion;throw new Error("API version is not set.")}getBaseUrl(){if(this.clientOptions.httpOptions&&this.clientOptions.httpOptions.baseUrl!==void 0)return this.clientOptions.httpOptions.baseUrl;throw new Error("Base URL is not set.")}getRequestUrl(){return this.getRequestUrlInternal(this.clientOptions.httpOptions)}getHeaders(){if(this.clientOptions.httpOptions&&this.clientOptions.httpOptions.headers!==void 0)return this.clientOptions.httpOptions.headers;throw new Error("Headers are not set.")}getRequestUrlInternal(e){if(!e||e.baseUrl===void 0||e.apiVersion===void 0)throw new Error("HTTP options are not correctly set.");const A=[e.baseUrl.endsWith("/")?e.baseUrl.slice(0,-1):e.baseUrl];return e.apiVersion&&e.apiVersion!==""&&A.push(e.apiVersion),A.join("/")}getBaseResourcePath(){return`projects/${this.clientOptions.project}/locations/${this.clientOptions.location}`}getApiKey(){return this.clientOptions.apiKey}getWebsocketBaseUrl(){const e=this.getBaseUrl(),t=new URL(e);return t.protocol=t.protocol=="http:"?"ws":"wss",t.toString()}setBaseUrl(e){if(this.clientOptions.httpOptions)this.clientOptions.httpOptions.baseUrl=e;else throw new Error("HTTP options are not correctly set.")}constructUrl(e,t,A){const i=[this.getRequestUrlInternal(t)];return A&&i.push(this.getBaseResourcePath()),e!==""&&i.push(e),new URL(`${i.join("/")}`)}shouldPrependVertexProjectPath(e){return!(this.clientOptions.apiKey||!this.clientOptions.vertexai||e.path.startsWith("projects/")||e.httpMethod==="GET"&&e.path.startsWith("publishers/google/models"))}async request(e){let t=this.clientOptions.httpOptions;e.httpOptions&&(t=this.patchHttpOptions(this.clientOptions.httpOptions,e.httpOptions));const A=this.shouldPrependVertexProjectPath(e),i=this.constructUrl(e.path,t,A);if(e.queryParams)for(const[a,c]of Object.entries(e.queryParams))i.searchParams.append(a,String(c));let o={};if(e.httpMethod==="GET"){if(e.body&&e.body!=="{}")throw new Error("Request body should be empty for GET request, but got non empty request body")}else o.body=e.body;return o=await this.includeExtraHttpOptionsToRequestInit(o,t,e.abortSignal),this.unaryApiCall(i,o,e.httpMethod)}patchHttpOptions(e,t){const A=JSON.parse(JSON.stringify(e));for(const[i,o]of Object.entries(t))typeof o=="object"?A[i]=Object.assign(Object.assign({},A[i]),o):o!==void 0&&(A[i]=o);return A}async requestStream(e){let t=this.clientOptions.httpOptions;e.httpOptions&&(t=this.patchHttpOptions(this.clientOptions.httpOptions,e.httpOptions));const A=this.shouldPrependVertexProjectPath(e),i=this.constructUrl(e.path,t,A);(!i.searchParams.has("alt")||i.searchParams.get("alt")!=="sse")&&i.searchParams.set("alt","sse");let o={};return o.body=e.body,o=await this.includeExtraHttpOptionsToRequestInit(o,t,e.abortSignal),this.streamApiCall(i,o,e.httpMethod)}async includeExtraHttpOptionsToRequestInit(e,t,A){if(t&&t.timeout||A){const i=new AbortController,o=i.signal;t.timeout&&(t==null?void 0:t.timeout)>0&&setTimeout(()=>i.abort(),t.timeout),A&&A.addEventListener("abort",()=>{i.abort()}),e.signal=o}return e.headers=await this.getHeadersInternal(t),e}async unaryApiCall(e,t,A){return this.apiCall(e.toString(),Object.assign(Object.assign({},t),{method:A})).then(async i=>(await Er(i),new Dn(i))).catch(i=>{throw i instanceof Error?i:new Error(JSON.stringify(i))})}async streamApiCall(e,t,A){return this.apiCall(e.toString(),Object.assign(Object.assign({},t),{method:A})).then(async i=>(await Er(i),this.processStreamResponse(i))).catch(i=>{throw i instanceof Error?i:new Error(JSON.stringify(i))})}processStreamResponse(e){var t;return de(this,arguments,function*(){const i=(t=e==null?void 0:e.body)===null||t===void 0?void 0:t.getReader(),o=new TextDecoder("utf-8");if(!i)throw new Error("Response body is empty");try{let a="";for(;;){const{done:c,value:l}=yield f0(i.read());if(c){if(a.trim().length>0)throw new Error("Incomplete JSON segment at the end");break}const u=o.decode(l);try{const d=JSON.parse(u);if("error"in d){const f=JSON.parse(JSON.stringify(d.error)),w=f.status,y=f.code,F=`got status: ${w}. ${JSON.stringify(d)}`;if(y>=400&&y<500)throw new dr(F);if(y>=500&&y<600)throw new Sn(F)}}catch(d){const f=d;if(f.name==="ClientError"||f.name==="ServerError")throw d}a+=u;let B=a.match(gr);for(;B;){const d=B[1];try{const f=new Response(d,{headers:e==null?void 0:e.headers,status:e==null?void 0:e.status,statusText:e==null?void 0:e.statusText});yield yield f0(new Dn(f)),a=a.slice(B[0].length),B=a.match(gr)}catch(f){throw new Error(`exception parsing stream chunk ${d}. ${f}`)}}}}finally{i.releaseLock()}})}async apiCall(e,t){return fetch(e,t).catch(A=>{throw new Error(`exception ${A} sending request`)})}getDefaultHeaders(){const e={},t=mf+" "+this.clientOptions.userAgentExtra;return e[wf]=t,e[zn]=t,e[pf]="application/json",e}async getHeadersInternal(e){const t=new Headers;if(e&&e.headers){for(const[A,i]of Object.entries(e.headers))t.append(A,i);e.timeout&&e.timeout>0&&t.append(hf,String(Math.ceil(e.timeout/1e3)))}return await this.clientOptions.auth.addAuthHeaders(t),t}async uploadFile(e,t){var A;const i={};t!=null&&(i.mimeType=t.mimeType,i.name=t.name,i.displayName=t.displayName),i.name&&!i.name.startsWith("files/")&&(i.name=`files/${i.name}`);const o=this.clientOptions.uploader,a=await o.stat(e);i.sizeBytes=String(a.size);const c=(A=t==null?void 0:t.mimeType)!==null&&A!==void 0?A:a.type;if(c===void 0||c==="")throw new Error("Can not determine mimeType. Please provide mimeType in the config.");i.mimeType=c;const l=await this.fetchUploadUrl(i,t);return o.upload(e,l,this)}async downloadFile(e){await this.clientOptions.downloader.download(e,this)}async fetchUploadUrl(e,t){var A;let i={};t!=null&&t.httpOptions?i=t.httpOptions:i={apiVersion:"",headers:{"Content-Type":"application/json","X-Goog-Upload-Protocol":"resumable","X-Goog-Upload-Command":"start","X-Goog-Upload-Header-Content-Length":`${e.sizeBytes}`,"X-Goog-Upload-Header-Content-Type":`${e.mimeType}`}};const o={file:e},a=await this.request({path:Z("upload/v1beta/files",o._url),body:JSON.stringify(o),httpMethod:"POST",httpOptions:i});if(!a||!(a!=null&&a.headers))throw new Error("Server did not return an HttpResponse or the returned HttpResponse did not have headers.");const c=(A=a==null?void 0:a.headers)===null||A===void 0?void 0:A["x-goog-upload-url"];if(c===void 0)throw new Error("Failed to get upload url. Server did not return the x-google-upload-url in the headers");return c}}async function Er(n){var e;if(n===void 0)throw new Sn("response is undefined");if(!n.ok){const t=n.status,A=n.statusText;let i;!((e=n.headers.get("content-type"))===null||e===void 0)&&e.includes("application/json")?i=await n.json():i={error:{message:await n.text(),code:n.status,status:n.statusText}};const o=`got status: ${t} ${A}. ${JSON.stringify(i)}`;throw t>=400&&t<500?new dr(o):t>=500&&t<600?new Sn(o):new Error(o)}}/**
149
+ */const zc="Content-Type",Kc="X-Server-Timeout",Xc="User-Agent",It="x-goog-api-client",Qc="google-genai-sdk/1.3.0",jc="v1beta1",ed="v1beta",No=/^data: (.*)(?:\n\n|\r\r|\r\n\r\n)/;class ko extends Error{constructor(e,t){t?super(e,{cause:t}):super(e,{cause:new Error().stack}),this.message=e,this.name="ClientError"}}class Rt extends Error{constructor(e,t){t?super(e,{cause:t}):super(e,{cause:new Error().stack}),this.message=e,this.name="ServerError"}}class td{constructor(e){var t,n;this.clientOptions=Object.assign(Object.assign({},e),{project:e.project,location:e.location,apiKey:e.apiKey,vertexai:e.vertexai});const i={};this.clientOptions.vertexai?(i.apiVersion=(t=this.clientOptions.apiVersion)!==null&&t!==void 0?t:jc,i.baseUrl=this.baseUrlFromProjectLocation(),this.normalizeAuthParameters()):(i.apiVersion=(n=this.clientOptions.apiVersion)!==null&&n!==void 0?n:ed,i.baseUrl="https://generativelanguage.googleapis.com/"),i.headers=this.getDefaultHeaders(),this.clientOptions.httpOptions=i,e.httpOptions&&(this.clientOptions.httpOptions=this.patchHttpOptions(i,e.httpOptions))}baseUrlFromProjectLocation(){return this.clientOptions.project&&this.clientOptions.location&&this.clientOptions.location!=="global"?`https://${this.clientOptions.location}-aiplatform.googleapis.com/`:"https://aiplatform.googleapis.com/"}normalizeAuthParameters(){if(this.clientOptions.project&&this.clientOptions.location){this.clientOptions.apiKey=void 0;return}this.clientOptions.project=void 0,this.clientOptions.location=void 0}isVertexAI(){var e;return(e=this.clientOptions.vertexai)!==null&&e!==void 0?e:!1}getProject(){return this.clientOptions.project}getLocation(){return this.clientOptions.location}getApiVersion(){if(this.clientOptions.httpOptions&&this.clientOptions.httpOptions.apiVersion!==void 0)return this.clientOptions.httpOptions.apiVersion;throw new Error("API version is not set.")}getBaseUrl(){if(this.clientOptions.httpOptions&&this.clientOptions.httpOptions.baseUrl!==void 0)return this.clientOptions.httpOptions.baseUrl;throw new Error("Base URL is not set.")}getRequestUrl(){return this.getRequestUrlInternal(this.clientOptions.httpOptions)}getHeaders(){if(this.clientOptions.httpOptions&&this.clientOptions.httpOptions.headers!==void 0)return this.clientOptions.httpOptions.headers;throw new Error("Headers are not set.")}getRequestUrlInternal(e){if(!e||e.baseUrl===void 0||e.apiVersion===void 0)throw new Error("HTTP options are not correctly set.");const n=[e.baseUrl.endsWith("/")?e.baseUrl.slice(0,-1):e.baseUrl];return e.apiVersion&&e.apiVersion!==""&&n.push(e.apiVersion),n.join("/")}getBaseResourcePath(){return`projects/${this.clientOptions.project}/locations/${this.clientOptions.location}`}getApiKey(){return this.clientOptions.apiKey}getWebsocketBaseUrl(){const e=this.getBaseUrl(),t=new URL(e);return t.protocol=t.protocol=="http:"?"ws":"wss",t.toString()}setBaseUrl(e){if(this.clientOptions.httpOptions)this.clientOptions.httpOptions.baseUrl=e;else throw new Error("HTTP options are not correctly set.")}constructUrl(e,t,n){const i=[this.getRequestUrlInternal(t)];return n&&i.push(this.getBaseResourcePath()),e!==""&&i.push(e),new URL(`${i.join("/")}`)}shouldPrependVertexProjectPath(e){return!(this.clientOptions.apiKey||!this.clientOptions.vertexai||e.path.startsWith("projects/")||e.httpMethod==="GET"&&e.path.startsWith("publishers/google/models"))}async request(e){let t=this.clientOptions.httpOptions;e.httpOptions&&(t=this.patchHttpOptions(this.clientOptions.httpOptions,e.httpOptions));const n=this.shouldPrependVertexProjectPath(e),i=this.constructUrl(e.path,t,n);if(e.queryParams)for(const[a,u]of Object.entries(e.queryParams))i.searchParams.append(a,String(u));let l={};if(e.httpMethod==="GET"){if(e.body&&e.body!=="{}")throw new Error("Request body should be empty for GET request, but got non empty request body")}else l.body=e.body;return l=await this.includeExtraHttpOptionsToRequestInit(l,t,e.abortSignal),this.unaryApiCall(i,l,e.httpMethod)}patchHttpOptions(e,t){const n=JSON.parse(JSON.stringify(e));for(const[i,l]of Object.entries(t))typeof l=="object"?n[i]=Object.assign(Object.assign({},n[i]),l):l!==void 0&&(n[i]=l);return n}async requestStream(e){let t=this.clientOptions.httpOptions;e.httpOptions&&(t=this.patchHttpOptions(this.clientOptions.httpOptions,e.httpOptions));const n=this.shouldPrependVertexProjectPath(e),i=this.constructUrl(e.path,t,n);(!i.searchParams.has("alt")||i.searchParams.get("alt")!=="sse")&&i.searchParams.set("alt","sse");let l={};return l.body=e.body,l=await this.includeExtraHttpOptionsToRequestInit(l,t,e.abortSignal),this.streamApiCall(i,l,e.httpMethod)}async includeExtraHttpOptionsToRequestInit(e,t,n){if(t&&t.timeout||n){const i=new AbortController,l=i.signal;t.timeout&&(t==null?void 0:t.timeout)>0&&setTimeout(()=>i.abort(),t.timeout),n&&n.addEventListener("abort",()=>{i.abort()}),e.signal=l}return e.headers=await this.getHeadersInternal(t),e}async unaryApiCall(e,t,n){return this.apiCall(e.toString(),Object.assign(Object.assign({},t),{method:n})).then(async i=>(await Do(i),new vt(i))).catch(i=>{throw i instanceof Error?i:new Error(JSON.stringify(i))})}async streamApiCall(e,t,n){return this.apiCall(e.toString(),Object.assign(Object.assign({},t),{method:n})).then(async i=>(await Do(i),this.processStreamResponse(i))).catch(i=>{throw i instanceof Error?i:new Error(JSON.stringify(i))})}processStreamResponse(e){var t;return we(this,arguments,function*(){const i=(t=e==null?void 0:e.body)===null||t===void 0?void 0:t.getReader(),l=new TextDecoder("utf-8");if(!i)throw new Error("Response body is empty");try{let a="";for(;;){const{done:u,value:d}=yield $(i.read());if(u){if(a.trim().length>0)throw new Error("Incomplete JSON segment at the end");break}const c=l.decode(d);try{const p=JSON.parse(c);if("error"in p){const m=JSON.parse(JSON.stringify(p.error)),h=m.status,g=m.code,v=`got status: ${h}. ${JSON.stringify(p)}`;if(g>=400&&g<500)throw new ko(v);if(g>=500&&g<600)throw new Rt(v)}}catch(p){const m=p;if(m.name==="ClientError"||m.name==="ServerError")throw p}a+=c;let f=a.match(No);for(;f;){const p=f[1];try{const m=new Response(p,{headers:e==null?void 0:e.headers,status:e==null?void 0:e.status,statusText:e==null?void 0:e.statusText});yield yield $(new vt(m)),a=a.slice(f[0].length),f=a.match(No)}catch(m){throw new Error(`exception parsing stream chunk ${p}. ${m}`)}}}}finally{i.releaseLock()}})}async apiCall(e,t){return fetch(e,t).catch(n=>{throw new Error(`exception ${n} sending request`)})}getDefaultHeaders(){const e={},t=Qc+" "+this.clientOptions.userAgentExtra;return e[Xc]=t,e[It]=t,e[zc]="application/json",e}async getHeadersInternal(e){const t=new Headers;if(e&&e.headers){for(const[n,i]of Object.entries(e.headers))t.append(n,i);e.timeout&&e.timeout>0&&t.append(Kc,String(Math.ceil(e.timeout/1e3)))}return await this.clientOptions.auth.addAuthHeaders(t),t}async uploadFile(e,t){var n;const i={};t!=null&&(i.mimeType=t.mimeType,i.name=t.name,i.displayName=t.displayName),i.name&&!i.name.startsWith("files/")&&(i.name=`files/${i.name}`);const l=this.clientOptions.uploader,a=await l.stat(e);i.sizeBytes=String(a.size);const u=(n=t==null?void 0:t.mimeType)!==null&&n!==void 0?n:a.type;if(u===void 0||u==="")throw new Error("Can not determine mimeType. Please provide mimeType in the config.");i.mimeType=u;const d=await this.fetchUploadUrl(i,t);return l.upload(e,d,this)}async downloadFile(e){await this.clientOptions.downloader.download(e,this)}async fetchUploadUrl(e,t){var n;let i={};t!=null&&t.httpOptions?i=t.httpOptions:i={apiVersion:"",headers:{"Content-Type":"application/json","X-Goog-Upload-Protocol":"resumable","X-Goog-Upload-Command":"start","X-Goog-Upload-Header-Content-Length":`${e.sizeBytes}`,"X-Goog-Upload-Header-Content-Type":`${e.mimeType}`}};const l={file:e},a=await this.request({path:I("upload/v1beta/files",l._url),body:JSON.stringify(l),httpMethod:"POST",httpOptions:i});if(!a||!(a!=null&&a.headers))throw new Error("Server did not return an HttpResponse or the returned HttpResponse did not have headers.");const u=(n=a==null?void 0:a.headers)===null||n===void 0?void 0:n["x-goog-upload-url"];if(u===void 0)throw new Error("Failed to get upload url. Server did not return the x-google-upload-url in the headers");return u}}async function Do(o){var e;if(o===void 0)throw new Rt("response is undefined");if(!o.ok){const t=o.status,n=o.statusText;let i;!((e=o.headers.get("content-type"))===null||e===void 0)&&e.includes("application/json")?i=await o.json():i={error:{message:await o.text(),code:o.status,status:o.statusText}};const l=`got status: ${t} ${n}. ${JSON.stringify(i)}`;throw t>=400&&t<500?new ko(l):t>=500&&t<600?new Rt(l):new Error(l)}}/**
180
150
  * @license
181
151
  * Copyright 2025 Google LLC
182
152
  * SPDX-License-Identifier: Apache-2.0
183
- */const If="mcp_used/unknown";function fr(n){for(const e of n)if(Gn(e)||typeof e=="object"&&"inputSchema"in e)return!0;return!1}function Qr(n){var e;const t=(e=n[zn])!==null&&e!==void 0?e:"";n[zn]=(t+` ${If}`).trimStart()}function Df(n){var e,t,A;return(A=(t=(e=n.config)===null||e===void 0?void 0:e.tools)===null||t===void 0?void 0:t.some(i=>Gn(i)))!==null&&A!==void 0?A:!1}function Ff(n){var e,t,A;return(A=(t=(e=n.config)===null||e===void 0?void 0:e.tools)===null||t===void 0?void 0:t.some(i=>!Gn(i)))!==null&&A!==void 0?A:!1}function Gn(n){return n!==null&&typeof n=="object"&&n instanceof kn}function xf(n,e=100){return de(this,arguments,function*(){let A,i=0;for(;i<e;){const o=yield f0(n.listTools({cursor:A}));for(const a of o.tools)yield yield f0(a),i++;if(!o.nextCursor)break;A=o.nextCursor}})}class kn{constructor(e=[],t){this.mcpTools=[],this.functionNameToMcpClient={},this.mcpClients=e,this.config=t}static create(e,t){return new kn(e,t)}async initialize(){var e,t,A,i;if(this.mcpTools.length>0)return;const o={},a=[];for(const B of this.mcpClients)try{for(var c=!0,l=(t=void 0,Pe(xf(B))),u;u=await l.next(),e=u.done,!e;c=!0){i=u.value,c=!1;const d=i;a.push(d);const f=d.name;if(o[f])throw new Error(`Duplicate function name ${f} found in MCP tools. Please ensure function names are unique.`);o[f]=B}}catch(d){t={error:d}}finally{try{!c&&!e&&(A=l.return)&&await A.call(l)}finally{if(t)throw t.error}}this.mcpTools=a,this.functionNameToMcpClient=o}async tool(){return await this.initialize(),zu(this.mcpTools,this.config)}async callTool(e){await this.initialize();const t=[];for(const A of e)if(A.name in this.functionNameToMcpClient){const o=await this.functionNameToMcpClient[A.name].callTool({name:A.name,arguments:A.args});t.push({functionResponse:{name:A.name,response:o.isError?{error:o}:o}})}return t}}/**
153
+ */const nd="mcp_used/unknown";function Lo(o){for(const e of o)if(wt(e)||typeof e=="object"&&"inputSchema"in e)return!0;return!1}function Vo(o){var e;const t=(e=o[It])!==null&&e!==void 0?e:"";o[It]=(t+` ${nd}`).trimStart()}function od(o){var e,t,n;return(n=(t=(e=o.config)===null||e===void 0?void 0:e.tools)===null||t===void 0?void 0:t.some(i=>wt(i)))!==null&&n!==void 0?n:!1}function id(o){var e,t,n;return(n=(t=(e=o.config)===null||e===void 0?void 0:e.tools)===null||t===void 0?void 0:t.some(i=>!wt(i)))!==null&&n!==void 0?n:!1}function wt(o){return o!==null&&typeof o=="object"&&o instanceof Pt}function rd(o,e=100){return we(this,arguments,function*(){let n,i=0;for(;i<e;){const l=yield $(o.listTools({cursor:n}));for(const a of l.tools)yield yield $(a),i++;if(!l.nextCursor)break;n=l.nextCursor}})}class Pt{constructor(e=[],t){this.mcpTools=[],this.functionNameToMcpClient={},this.mcpClients=e,this.config=t}static create(e,t){return new Pt(e,t)}async initialize(){var e,t,n,i;if(this.mcpTools.length>0)return;const l={},a=[];for(const f of this.mcpClients)try{for(var u=!0,d=(t=void 0,qe(rd(f))),c;c=await d.next(),e=c.done,!e;u=!0){i=c.value,u=!1;const p=i;a.push(p);const m=p.name;if(l[m])throw new Error(`Duplicate function name ${m} found in MCP tools. Please ensure function names are unique.`);l[m]=f}}catch(p){t={error:p}}finally{try{!u&&!e&&(n=d.return)&&await n.call(d)}finally{if(t)throw t.error}}this.mcpTools=a,this.functionNameToMcpClient=l}async tool(){return await this.initialize(),pr(this.mcpTools,this.config)}async callTool(e){await this.initialize();const t=[];for(const n of e)if(n.name in this.functionNameToMcpClient){const l=await this.functionNameToMcpClient[n.name].callTool({name:n.name,arguments:n.args});t.push({functionResponse:{name:n.name,response:l.isError?{error:l}:l}})}return t}}/**
184
154
  * @license
185
155
  * Copyright 2025 Google LLC
186
156
  * SPDX-License-Identifier: Apache-2.0
187
- */async function vf(n,e,t){const A=new Cu;let i;t.data instanceof Blob?i=JSON.parse(await t.data.text()):i=JSON.parse(t.data);const o=bd(n,i);Object.assign(A,o),e(A)}class Uf{constructor(e,t,A){this.apiClient=e,this.auth=t,this.webSocketFactory=A}async connect(e){var t,A;if(this.apiClient.isVertexAI())throw new Error("Live music is not supported for Vertex AI.");console.warn("Live music generation is experimental and may change in future versions.");const i=this.apiClient.getWebsocketBaseUrl(),o=this.apiClient.getApiVersion(),a=Nf(this.apiClient.getDefaultHeaders()),c=this.apiClient.getApiKey(),l=`${i}/ws/google.ai.generativelanguage.${o}.GenerativeService.BidiGenerateMusic?key=${c}`;let u=()=>{};const B=new Promise(T=>{u=T}),d=e.callbacks,f=function(){u({})},w=this.apiClient,y={onopen:f,onmessage:T=>{vf(w,d.onmessage,T)},onerror:(t=d==null?void 0:d.onerror)!==null&&t!==void 0?t:function(T){},onclose:(A=d==null?void 0:d.onclose)!==null&&A!==void 0?A:function(T){}},F=this.webSocketFactory.create(l,Tf(a),y);F.connect(),await B;const R=g0(this.apiClient,e.model),S=tr(this.apiClient,{model:R}),M=Un(this.apiClient,{setup:S});return F.send(JSON.stringify(M)),new Yf(F,this.apiClient)}}class Yf{constructor(e,t){this.conn=e,this.apiClient=t}async setWeightedPrompts(e){if(!e.weightedPrompts||Object.keys(e.weightedPrompts).length===0)throw new Error("Weighted prompts must be set and contain at least one entry.");const t=nd(this.apiClient,e),A=nr(this.apiClient,t);this.conn.send(JSON.stringify({clientContent:A}))}async setMusicGenerationConfig(e){e.musicGenerationConfig||(e.musicGenerationConfig={});const t=Ad(this.apiClient,e),A=Un(this.apiClient,t);this.conn.send(JSON.stringify(A))}sendPlaybackControl(e){const t=Un(this.apiClient,{playbackControl:e});this.conn.send(JSON.stringify(t))}play(){this.sendPlaybackControl(ue.PLAY)}pause(){this.sendPlaybackControl(ue.PAUSE)}stop(){this.sendPlaybackControl(ue.STOP)}resetContext(){this.sendPlaybackControl(ue.RESET_CONTEXT)}close(){this.conn.close()}}function Tf(n){const e={};return n.forEach((t,A)=>{e[A]=t}),e}function Nf(n){const e=new Headers;for(const[t,A]of Object.entries(n))e.append(t,A);return e}/**
157
+ */async function sd(o,e,t){const n=new er;let i;t.data instanceof Blob?i=JSON.parse(await t.data.text()):i=JSON.parse(t.data);const l=Ca(o,i);Object.assign(n,l),e(n)}class ld{constructor(e,t,n){this.apiClient=e,this.auth=t,this.webSocketFactory=n}async connect(e){var t,n;if(this.apiClient.isVertexAI())throw new Error("Live music is not supported for Vertex AI.");console.warn("Live music generation is experimental and may change in future versions.");const i=this.apiClient.getWebsocketBaseUrl(),l=this.apiClient.getApiVersion(),a=cd(this.apiClient.getDefaultHeaders()),u=this.apiClient.getApiKey(),d=`${i}/ws/google.ai.generativelanguage.${l}.GenerativeService.BidiGenerateMusic?key=${u}`;let c=()=>{};const f=new Promise(A=>{c=A}),p=e.callbacks,m=function(){c({})},h=this.apiClient,g={onopen:m,onmessage:A=>{sd(h,p.onmessage,A)},onerror:(t=p==null?void 0:p.onerror)!==null&&t!==void 0?t:function(A){},onclose:(n=p==null?void 0:p.onclose)!==null&&n!==void 0?n:function(A){}},v=this.webSocketFactory.create(d,ud(a),g);v.connect(),await f;const E=q(this.apiClient,e.model),M=To(this.apiClient,{model:E}),_=Et(this.apiClient,{setup:M});return v.send(JSON.stringify(_)),new ad(v,this.apiClient)}}class ad{constructor(e,t){this.conn=e,this.apiClient=t}async setWeightedPrompts(e){if(!e.weightedPrompts||Object.keys(e.weightedPrompts).length===0)throw new Error("Weighted prompts must be set and contain at least one entry.");const t=Ll(this.apiClient,e),n=Co(this.apiClient,t);this.conn.send(JSON.stringify({clientContent:n}))}async setMusicGenerationConfig(e){e.musicGenerationConfig||(e.musicGenerationConfig={});const t=Vl(this.apiClient,e),n=Et(this.apiClient,t);this.conn.send(JSON.stringify(n))}sendPlaybackControl(e){const t=Et(this.apiClient,{playbackControl:e});this.conn.send(JSON.stringify(t))}play(){this.sendPlaybackControl(Me.PLAY)}pause(){this.sendPlaybackControl(Me.PAUSE)}stop(){this.sendPlaybackControl(Me.STOP)}resetContext(){this.sendPlaybackControl(Me.RESET_CONTEXT)}close(){this.conn.close()}}function ud(o){const e={};return o.forEach((t,n)=>{e[n]=t}),e}function cd(o){const e=new Headers;for(const[t,n]of Object.entries(o))e.append(t,n);return e}/**
188
158
  * @license
189
159
  * Copyright 2025 Google LLC
190
160
  * SPDX-License-Identifier: Apache-2.0
191
- */const Rf="FunctionResponse request must have an `id` field from the response of a ToolCall.FunctionalCalls in Google AI.";async function zf(n,e,t){const A=new mu;let i;if(t.data instanceof Blob?i=JSON.parse(await t.data.text()):i=JSON.parse(t.data),n.isVertexAI()){const o=Nd(n,i);Object.assign(A,o)}else{const o=Td(n,i);Object.assign(A,o)}e(A)}class Sf{constructor(e,t,A){this.apiClient=e,this.auth=t,this.webSocketFactory=A,this.music=new Uf(this.apiClient,this.auth,this.webSocketFactory)}async connect(e){var t,A,i,o,a,c;const l=this.apiClient.getWebsocketBaseUrl(),u=this.apiClient.getApiVersion();let B;const d=this.apiClient.getDefaultHeaders();e.config&&e.config.tools&&fr(e.config.tools)&&Qr(d);const f=Jf(d);if(this.apiClient.isVertexAI())B=`${l}/ws/google.cloud.aiplatform.${u}.LlmBidiService/BidiGenerateContent`,await this.auth.addAuthHeaders(f);else{const m=this.apiClient.getApiKey();let Y="BidiGenerateContent",P="key";m!=null&&m.startsWith("auth_tokens/")&&(console.warn("Warning: Ephemeral token support is experimental and may change in future versions."),Y="BidiGenerateContentConstrained",P="access_token"),B=`${l}/ws/google.ai.generativelanguage.${u}.GenerativeService.${Y}?${P}=${m}`}let w=()=>{};const y=new Promise(m=>{w=m}),F=e.callbacks,R=function(){var m;(m=F==null?void 0:F.onopen)===null||m===void 0||m.call(F),w({})},S=this.apiClient,M={onopen:R,onmessage:m=>{zf(S,F.onmessage,m)},onerror:(t=F==null?void 0:F.onerror)!==null&&t!==void 0?t:function(m){},onclose:(A=F==null?void 0:F.onclose)!==null&&A!==void 0?A:function(m){}},T=this.webSocketFactory.create(B,Pf(f),M);T.connect(),await y;let D=g0(this.apiClient,e.model);if(this.apiClient.isVertexAI()&&D.startsWith("publishers/")){const m=this.apiClient.getProject(),Y=this.apiClient.getLocation();D=`projects/${m}/locations/${Y}/`+D}let I={};this.apiClient.isVertexAI()&&((i=e.config)===null||i===void 0?void 0:i.responseModalities)===void 0&&(e.config===void 0?e.config={responseModalities:[Ct.AUDIO]}:e.config.responseModalities=[Ct.AUDIO]),!((o=e.config)===null||o===void 0)&&o.generationConfig&&console.warn("Setting `LiveConnectConfig.generation_config` is deprecated, please set the fields on `LiveConnectConfig` directly. This will become an error in a future version (not before Q3 2025).");const U=(c=(a=e.config)===null||a===void 0?void 0:a.tools)!==null&&c!==void 0?c:[],x=[];for(const m of U)if(this.isCallableTool(m)){const Y=m;x.push(await Y.tool())}else x.push(m);x.length>0&&(e.config.tools=x);const v={model:D,config:e.config,callbacks:e.callbacks};return this.apiClient.isVertexAI()?I=Og(this.apiClient,v):I=Xg(this.apiClient,v),delete I.config,T.send(JSON.stringify(I)),new kf(T,this.apiClient)}isCallableTool(e){return"callTool"in e&&typeof e.callTool=="function"}}const Gf={turnComplete:!0};class kf{constructor(e,t){this.conn=e,this.apiClient=t}tLiveClientContent(e,t){if(t.turns!==null&&t.turns!==void 0){let A=[];try{A=Z0(e,t.turns),e.isVertexAI()?A=A.map(i=>Ee(e,i)):A=A.map(i=>Yt(e,i))}catch{throw new Error(`Failed to parse client content "turns", type: '${typeof t.turns}'`)}return{clientContent:{turns:A,turnComplete:t.turnComplete}}}return{clientContent:{turnComplete:t.turnComplete}}}tLiveClienttToolResponse(e,t){let A=[];if(t.functionResponses==null)throw new Error("functionResponses is required.");if(Array.isArray(t.functionResponses)?A=t.functionResponses:A=[t.functionResponses],A.length===0)throw new Error("functionResponses is required.");for(const o of A){if(typeof o!="object"||o===null||!("name"in o)||!("response"in o))throw new Error(`Could not parse function response, type '${typeof o}'.`);if(!e.isVertexAI()&&!("id"in o))throw new Error(Rf)}return{toolResponse:{functionResponses:A}}}sendClientContent(e){e=Object.assign(Object.assign({},Gf),e);const t=this.tLiveClientContent(this.apiClient,e);this.conn.send(JSON.stringify(t))}sendRealtimeInput(e){let t={};this.apiClient.isVertexAI()?t={realtimeInput:td(this.apiClient,e)}:t={realtimeInput:ed(this.apiClient,e)},this.conn.send(JSON.stringify(t))}sendToolResponse(e){if(e.functionResponses==null)throw new Error("Tool response parameters are required.");const t=this.tLiveClienttToolResponse(this.apiClient,e);this.conn.send(JSON.stringify(t))}close(){this.conn.close()}}function Pf(n){const e={};return n.forEach((t,A)=>{e[A]=t}),e}function Jf(n){const e=new Headers;for(const[t,A]of Object.entries(n))e.append(t,A);return e}/**
161
+ */const dd="FunctionResponse request must have an `id` field from the response of a ToolCall.FunctionalCalls in Google AI.";async function fd(o,e,t){const n=new ji;let i;if(t.data instanceof Blob?i=JSON.parse(await t.data.text()):i=JSON.parse(t.data),o.isVertexAI()){const l=da(o,i);Object.assign(n,l)}else{const l=ca(o,i);Object.assign(n,l)}e(n)}class pd{constructor(e,t,n){this.apiClient=e,this.auth=t,this.webSocketFactory=n,this.music=new ld(this.apiClient,this.auth,this.webSocketFactory)}async connect(e){var t,n,i,l,a,u;const d=this.apiClient.getWebsocketBaseUrl(),c=this.apiClient.getApiVersion();let f;const p=this.apiClient.getDefaultHeaders();e.config&&e.config.tools&&Lo(e.config.tools)&&Vo(p);const m=yd(p);if(this.apiClient.isVertexAI())f=`${d}/ws/google.cloud.aiplatform.${c}.LlmBidiService/BidiGenerateContent`,await this.auth.addAuthHeaders(m);else{const D=this.apiClient.getApiKey();let G="BidiGenerateContent",X="key";D!=null&&D.startsWith("auth_tokens/")&&(console.warn("Warning: Ephemeral token support is experimental and may change in future versions."),G="BidiGenerateContentConstrained",X="access_token"),f=`${d}/ws/google.ai.generativelanguage.${c}.GenerativeService.${G}?${X}=${D}`}let h=()=>{};const g=new Promise(D=>{h=D}),v=e.callbacks,E=function(){var D;(D=v==null?void 0:v.onopen)===null||D===void 0||D.call(v),h({})},M=this.apiClient,_={onopen:E,onmessage:D=>{fd(M,v.onmessage,D)},onerror:(t=v==null?void 0:v.onerror)!==null&&t!==void 0?t:function(D){},onclose:(n=v==null?void 0:v.onclose)!==null&&n!==void 0?n:function(D){}},A=this.webSocketFactory.create(f,gd(m),_);A.connect(),await g;let R=q(this.apiClient,e.model);if(this.apiClient.isVertexAI()&&R.startsWith("publishers/")){const D=this.apiClient.getProject(),G=this.apiClient.getLocation();R=`projects/${D}/locations/${G}/`+R}let k={};this.apiClient.isVertexAI()&&((i=e.config)===null||i===void 0?void 0:i.responseModalities)===void 0&&(e.config===void 0?e.config={responseModalities:[Ke.AUDIO]}:e.config.responseModalities=[Ke.AUDIO]),!((l=e.config)===null||l===void 0)&&l.generationConfig&&console.warn("Setting `LiveConnectConfig.generation_config` is deprecated, please set the fields on `LiveConnectConfig` directly. This will become an error in a future version (not before Q3 2025).");const V=(u=(a=e.config)===null||a===void 0?void 0:a.tools)!==null&&u!==void 0?u:[],B=[];for(const D of V)if(this.isCallableTool(D)){const G=D;B.push(await G.tool())}else B.push(D);B.length>0&&(e.config.tools=B);const J={model:R,config:e.config,callbacks:e.callbacks};return this.apiClient.isVertexAI()?k=Il(this.apiClient,J):k=Ml(this.apiClient,J),delete k.config,A.send(JSON.stringify(k)),new hd(A,this.apiClient)}isCallableTool(e){return"callTool"in e&&typeof e.callTool=="function"}}const md={turnComplete:!0};class hd{constructor(e,t){this.conn=e,this.apiClient=t}tLiveClientContent(e,t){if(t.turns!==null&&t.turns!==void 0){let n=[];try{n=te(e,t.turns),e.isVertexAI()?n=n.map(i=>Pe(e,i)):n=n.map(i=>rt(e,i))}catch{throw new Error(`Failed to parse client content "turns", type: '${typeof t.turns}'`)}return{clientContent:{turns:n,turnComplete:t.turnComplete}}}return{clientContent:{turnComplete:t.turnComplete}}}tLiveClienttToolResponse(e,t){let n=[];if(t.functionResponses==null)throw new Error("functionResponses is required.");if(Array.isArray(t.functionResponses)?n=t.functionResponses:n=[t.functionResponses],n.length===0)throw new Error("functionResponses is required.");for(const l of n){if(typeof l!="object"||l===null||!("name"in l)||!("response"in l))throw new Error(`Could not parse function response, type '${typeof l}'.`);if(!e.isVertexAI()&&!("id"in l))throw new Error(dd)}return{toolResponse:{functionResponses:n}}}sendClientContent(e){e=Object.assign(Object.assign({},md),e);const t=this.tLiveClientContent(this.apiClient,e);this.conn.send(JSON.stringify(t))}sendRealtimeInput(e){let t={};this.apiClient.isVertexAI()?t={realtimeInput:Dl(this.apiClient,e)}:t={realtimeInput:kl(this.apiClient,e)},this.conn.send(JSON.stringify(t))}sendToolResponse(e){if(e.functionResponses==null)throw new Error("Tool response parameters are required.");const t=this.tLiveClienttToolResponse(this.apiClient,e);this.conn.send(JSON.stringify(t))}close(){this.conn.close()}}function gd(o){const e={};return o.forEach((t,n)=>{e[n]=t}),e}function yd(o){const e=new Headers;for(const[t,n]of Object.entries(o))e.append(t,n);return e}/**
192
162
  * @license
193
163
  * Copyright 2025 Google LLC
194
164
  * SPDX-License-Identifier: Apache-2.0
195
- */const pr=10;function hr(n){var e,t,A;if(!((e=n==null?void 0:n.automaticFunctionCalling)===null||e===void 0)&&e.disable)return!0;let i=!1;for(const a of(t=n==null?void 0:n.tools)!==null&&t!==void 0?t:[])if(Tt(a)){i=!0;break}if(!i)return!0;const o=(A=n==null?void 0:n.automaticFunctionCalling)===null||A===void 0?void 0:A.maximumRemoteCalls;return o&&(o<0||!Number.isInteger(o))||o==0?(console.warn("Invalid maximumRemoteCalls value provided for automatic function calling. Disabled automatic function calling. Please provide a valid integer value greater than 0. maximumRemoteCalls provided:",o),!0):!1}function Tt(n){return"callTool"in n&&typeof n.callTool=="function"}function wr(n){var e;return!(!((e=n==null?void 0:n.automaticFunctionCalling)===null||e===void 0)&&e.ignoreCallHistory)}/**
165
+ */const Fo=10;function Uo(o){var e,t,n;if(!((e=o==null?void 0:o.automaticFunctionCalling)===null||e===void 0)&&e.disable)return!0;let i=!1;for(const a of(t=o==null?void 0:o.tools)!==null&&t!==void 0?t:[])if(st(a)){i=!0;break}if(!i)return!0;const l=(n=o==null?void 0:o.automaticFunctionCalling)===null||n===void 0?void 0:n.maximumRemoteCalls;return l&&(l<0||!Number.isInteger(l))||l==0?(console.warn("Invalid maximumRemoteCalls value provided for automatic function calling. Disabled automatic function calling. Please provide a valid integer value greater than 0. maximumRemoteCalls provided:",l),!0):!1}function st(o){return"callTool"in o&&typeof o.callTool=="function"}function bo(o){var e;return!(!((e=o==null?void 0:o.automaticFunctionCalling)===null||e===void 0)&&e.ignoreCallHistory)}/**
196
166
  * @license
197
167
  * Copyright 2025 Google LLC
198
168
  * SPDX-License-Identifier: Apache-2.0
199
- */class Hf extends le{constructor(e){super(),this.apiClient=e,this.generateContent=async t=>{var A,i,o,a,c;const l=await this.processParamsForMcpUsage(t);if(!Df(t)||hr(t.config))return await this.generateContentInternal(l);if(Ff(t))throw new Error("Automatic function calling with CallableTools and Tools is not yet supported.");let u,B;const d=Z0(this.apiClient,l.contents),f=(o=(i=(A=l.config)===null||A===void 0?void 0:A.automaticFunctionCalling)===null||i===void 0?void 0:i.maximumRemoteCalls)!==null&&o!==void 0?o:pr;let w=0;for(;w<f&&(u=await this.generateContentInternal(l),!(!u.functionCalls||u.functionCalls.length===0));){const y=u.candidates[0].content,F=[];for(const R of(c=(a=t.config)===null||a===void 0?void 0:a.tools)!==null&&c!==void 0?c:[])if(Tt(R)){const M=await R.callTool(u.functionCalls);F.push(...M)}w++,B={role:"user",parts:F},l.contents=Z0(this.apiClient,l.contents),l.contents.push(y),l.contents.push(B),wr(l.config)&&(d.push(y),d.push(B))}return wr(l.config)&&(u.automaticFunctionCallingHistory=d),u},this.generateContentStream=async t=>{if(hr(t.config)){const A=await this.processParamsForMcpUsage(t);return await this.generateContentStreamInternal(A)}else return await this.processAfcStream(t)},this.generateImages=async t=>await this.generateImagesInternal(t).then(A=>{var i;let o;const a=[];if(A!=null&&A.generatedImages)for(const l of A.generatedImages)l&&(l!=null&&l.safetyAttributes)&&((i=l==null?void 0:l.safetyAttributes)===null||i===void 0?void 0:i.contentType)==="Positive Prompt"?o=l==null?void 0:l.safetyAttributes:a.push(l);let c;return o?c={generatedImages:a,positivePromptSafetyAttributes:o}:c={generatedImages:a},c}),this.list=async t=>{var A;const a={config:Object.assign(Object.assign({},{queryBase:!0}),t==null?void 0:t.config)};if(this.apiClient.isVertexAI()&&!a.config.queryBase){if(!((A=a.config)===null||A===void 0)&&A.filter)throw new Error("Filtering tuned models list for Vertex AI is not currently supported");a.config.filter="labels.tune-type:*"}return new xt(ge.PAGED_ITEM_MODELS,c=>this.listInternal(c),await this.listInternal(a),a)},this.editImage=async t=>{const A={model:t.model,prompt:t.prompt,referenceImages:[],config:t.config};return t.referenceImages&&t.referenceImages&&(A.referenceImages=t.referenceImages.map(i=>i.toReferenceImageAPI())),await this.editImageInternal(A)},this.upscaleImage=async t=>{let A={numberOfImages:1,mode:"upscale"};t.config&&(A=Object.assign(Object.assign({},A),t.config));const i={model:t.model,image:t.image,upscaleFactor:t.upscaleFactor,config:A};return await this.upscaleImageInternal(i)}}async processParamsForMcpUsage(e){var t,A,i;const o=(t=e.config)===null||t===void 0?void 0:t.tools;if(!o)return e;const a=await Promise.all(o.map(async l=>Tt(l)?await l.tool():l)),c={model:e.model,contents:e.contents,config:Object.assign(Object.assign({},e.config),{tools:a})};if(c.config.tools=a,e.config&&e.config.tools&&fr(e.config.tools)){const l=(i=(A=e.config.httpOptions)===null||A===void 0?void 0:A.headers)!==null&&i!==void 0?i:{};let u=Object.assign({},l);Object.keys(u).length===0&&(u=this.apiClient.getDefaultHeaders()),Qr(u),c.config.httpOptions=Object.assign(Object.assign({},e.config.httpOptions),{headers:u})}return c}async initAfcToolsMap(e){var t,A,i;const o=new Map;for(const a of(A=(t=e.config)===null||t===void 0?void 0:t.tools)!==null&&A!==void 0?A:[])if(Tt(a)){const c=a,l=await c.tool();for(const u of(i=l.functionDeclarations)!==null&&i!==void 0?i:[]){if(!u.name)throw new Error("Function declaration name is required.");if(o.has(u.name))throw new Error(`Duplicate tool declaration name: ${u.name}`);o.set(u.name,c)}}return o}async processAfcStream(e){var t,A,i;const o=(i=(A=(t=e.config)===null||t===void 0?void 0:t.automaticFunctionCalling)===null||A===void 0?void 0:A.maximumRemoteCalls)!==null&&i!==void 0?i:pr;let a=!1,c=0;const l=await this.initAfcToolsMap(e);return(function(u,B,d){var f,w;return de(this,arguments,function*(){for(var y,F,R,S;c<o;){a&&(c++,a=!1);const I=yield f0(u.processParamsForMcpUsage(d)),U=yield f0(u.generateContentStreamInternal(I)),x=[],v=[];try{for(var M=!0,T=(F=void 0,Pe(U)),D;D=yield f0(T.next()),y=D.done,!y;M=!0){S=D.value,M=!1;const m=S;if(yield yield f0(m),m.candidates&&(!((f=m.candidates[0])===null||f===void 0)&&f.content)){v.push(m.candidates[0].content);for(const Y of(w=m.candidates[0].content.parts)!==null&&w!==void 0?w:[])if(c<o&&Y.functionCall){if(!Y.functionCall.name)throw new Error("Function call name was not returned by the model.");if(B.has(Y.functionCall.name)){const P=yield f0(B.get(Y.functionCall.name).callTool([Y.functionCall]));x.push(...P)}else throw new Error(`Automatic function calling was requested, but not all the tools the model used implement the CallableTool interface. Available tools: ${B.keys()}, mising tool: ${Y.functionCall.name}`)}}}}catch(m){F={error:m}}finally{try{!M&&!y&&(R=T.return)&&(yield f0(R.call(T)))}finally{if(F)throw F.error}}if(x.length>0){a=!0;const m=new Se;m.candidates=[{content:{role:"user",parts:x}}],yield yield f0(m);const Y=[];Y.push(...v),Y.push({role:"user",parts:x});const P=Z0(u.apiClient,d.contents).concat(Y);d.contents=P}else break}})})(this,l,e)}async generateContentInternal(e){var t,A,i,o;let a,c="",l={};if(this.apiClient.isVertexAI()){const u=ar(this.apiClient,e);return c=Z("{model}:generateContent",u._url),l=u._query,delete u.config,delete u._url,delete u._query,a=this.apiClient.request({path:c,queryParams:l,body:JSON.stringify(u),httpMethod:"POST",httpOptions:(t=e.config)===null||t===void 0?void 0:t.httpOptions,abortSignal:(A=e.config)===null||A===void 0?void 0:A.abortSignal}).then(B=>B.json()),a.then(B=>{const d=ur(this.apiClient,B),f=new Se;return Object.assign(f,d),f})}else{const u=rr(this.apiClient,e);return c=Z("{model}:generateContent",u._url),l=u._query,delete u.config,delete u._url,delete u._query,a=this.apiClient.request({path:c,queryParams:l,body:JSON.stringify(u),httpMethod:"POST",httpOptions:(i=e.config)===null||i===void 0?void 0:i.httpOptions,abortSignal:(o=e.config)===null||o===void 0?void 0:o.abortSignal}).then(B=>B.json()),a.then(B=>{const d=cr(this.apiClient,B),f=new Se;return Object.assign(f,d),f})}}async generateContentStreamInternal(e){var t,A,i,o;let a,c="",l={};if(this.apiClient.isVertexAI()){const u=ar(this.apiClient,e);c=Z("{model}:streamGenerateContent?alt=sse",u._url),l=u._query,delete u.config,delete u._url,delete u._query;const B=this.apiClient;return a=B.requestStream({path:c,queryParams:l,body:JSON.stringify(u),httpMethod:"POST",httpOptions:(t=e.config)===null||t===void 0?void 0:t.httpOptions,abortSignal:(A=e.config)===null||A===void 0?void 0:A.abortSignal}),a.then(function(d){return de(this,arguments,function*(){var f,w,y,F;try{for(var R=!0,S=Pe(d),M;M=yield f0(S.next()),f=M.done,!f;R=!0){F=M.value,R=!1;const D=ur(B,yield f0(F.json())),I=new Se;Object.assign(I,D),yield yield f0(I)}}catch(T){w={error:T}}finally{try{!R&&!f&&(y=S.return)&&(yield f0(y.call(S)))}finally{if(w)throw w.error}}})})}else{const u=rr(this.apiClient,e);c=Z("{model}:streamGenerateContent?alt=sse",u._url),l=u._query,delete u.config,delete u._url,delete u._query;const B=this.apiClient;return a=B.requestStream({path:c,queryParams:l,body:JSON.stringify(u),httpMethod:"POST",httpOptions:(i=e.config)===null||i===void 0?void 0:i.httpOptions,abortSignal:(o=e.config)===null||o===void 0?void 0:o.abortSignal}),a.then(function(d){return de(this,arguments,function*(){var f,w,y,F;try{for(var R=!0,S=Pe(d),M;M=yield f0(S.next()),f=M.done,!f;R=!0){F=M.value,R=!1;const D=cr(B,yield f0(F.json())),I=new Se;Object.assign(I,D),yield yield f0(I)}}catch(T){w={error:T}}finally{try{!R&&!f&&(y=S.return)&&(yield f0(y.call(S)))}finally{if(w)throw w.error}}})})}}async embedContent(e){var t,A,i,o;let a,c="",l={};if(this.apiClient.isVertexAI()){const u=$E(this.apiClient,e);return c=Z("{model}:predict",u._url),l=u._query,delete u.config,delete u._url,delete u._query,a=this.apiClient.request({path:c,queryParams:l,body:JSON.stringify(u),httpMethod:"POST",httpOptions:(t=e.config)===null||t===void 0?void 0:t.httpOptions,abortSignal:(A=e.config)===null||A===void 0?void 0:A.abortSignal}).then(B=>B.json()),a.then(B=>{const d=tf(this.apiClient,B),f=new yo;return Object.assign(f,d),f})}else{const u=gE(this.apiClient,e);return c=Z("{model}:batchEmbedContents",u._url),l=u._query,delete u.config,delete u._url,delete u._query,a=this.apiClient.request({path:c,queryParams:l,body:JSON.stringify(u),httpMethod:"POST",httpOptions:(i=e.config)===null||i===void 0?void 0:i.httpOptions,abortSignal:(o=e.config)===null||o===void 0?void 0:o.abortSignal}).then(B=>B.json()),a.then(B=>{const d=N4(this.apiClient,B),f=new yo;return Object.assign(f,d),f})}}async generateImagesInternal(e){var t,A,i,o;let a,c="",l={};if(this.apiClient.isVertexAI()){const u=t4(this.apiClient,e);return c=Z("{model}:predict",u._url),l=u._query,delete u.config,delete u._url,delete u._query,a=this.apiClient.request({path:c,queryParams:l,body:JSON.stringify(u),httpMethod:"POST",httpOptions:(t=e.config)===null||t===void 0?void 0:t.httpOptions,abortSignal:(A=e.config)===null||A===void 0?void 0:A.abortSignal}).then(B=>B.json()),a.then(B=>{const d=Af(this.apiClient,B),f=new Io;return Object.assign(f,d),f})}else{const u=EE(this.apiClient,e);return c=Z("{model}:predict",u._url),l=u._query,delete u.config,delete u._url,delete u._query,a=this.apiClient.request({path:c,queryParams:l,body:JSON.stringify(u),httpMethod:"POST",httpOptions:(i=e.config)===null||i===void 0?void 0:i.httpOptions,abortSignal:(o=e.config)===null||o===void 0?void 0:o.abortSignal}).then(B=>B.json()),a.then(B=>{const d=S4(this.apiClient,B),f=new Io;return Object.assign(f,d),f})}}async editImageInternal(e){var t,A;let i,o="",a={};if(this.apiClient.isVertexAI()){const c=a4(this.apiClient,e);return o=Z("{model}:predict",c._url),a=c._query,delete c.config,delete c._url,delete c._query,i=this.apiClient.request({path:o,queryParams:a,body:JSON.stringify(c),httpMethod:"POST",httpOptions:(t=e.config)===null||t===void 0?void 0:t.httpOptions,abortSignal:(A=e.config)===null||A===void 0?void 0:A.abortSignal}).then(l=>l.json()),i.then(l=>{const u=of(this.apiClient,l),B=new Eu;return Object.assign(B,u),B})}else throw new Error("This method is only supported by the Vertex AI.")}async upscaleImageInternal(e){var t,A;let i,o="",a={};if(this.apiClient.isVertexAI()){const c=l4(this.apiClient,e);return o=Z("{model}:predict",c._url),a=c._query,delete c.config,delete c._url,delete c._query,i=this.apiClient.request({path:o,queryParams:a,body:JSON.stringify(c),httpMethod:"POST",httpOptions:(t=e.config)===null||t===void 0?void 0:t.httpOptions,abortSignal:(A=e.config)===null||A===void 0?void 0:A.abortSignal}).then(l=>l.json()),i.then(l=>{const u=rf(this.apiClient,l),B=new fu;return Object.assign(B,u),B})}else throw new Error("This method is only supported by the Vertex AI.")}async get(e){var t,A,i,o;let a,c="",l={};if(this.apiClient.isVertexAI()){const u=u4(this.apiClient,e);return c=Z("{name}",u._url),l=u._query,delete u.config,delete u._url,delete u._query,a=this.apiClient.request({path:c,queryParams:l,body:JSON.stringify(u),httpMethod:"GET",httpOptions:(t=e.config)===null||t===void 0?void 0:t.httpOptions,abortSignal:(A=e.config)===null||A===void 0?void 0:A.abortSignal}).then(B=>B.json()),a.then(B=>Rn(this.apiClient,B))}else{const u=fE(this.apiClient,e);return c=Z("{name}",u._url),l=u._query,delete u.config,delete u._url,delete u._query,a=this.apiClient.request({path:c,queryParams:l,body:JSON.stringify(u),httpMethod:"GET",httpOptions:(i=e.config)===null||i===void 0?void 0:i.httpOptions,abortSignal:(o=e.config)===null||o===void 0?void 0:o.abortSignal}).then(B=>B.json()),a.then(B=>Tn(this.apiClient,B))}}async listInternal(e){var t,A,i,o;let a,c="",l={};if(this.apiClient.isVertexAI()){const u=g4(this.apiClient,e);return c=Z("{models_url}",u._url),l=u._query,delete u.config,delete u._url,delete u._query,a=this.apiClient.request({path:c,queryParams:l,body:JSON.stringify(u),httpMethod:"GET",httpOptions:(t=e.config)===null||t===void 0?void 0:t.httpOptions,abortSignal:(A=e.config)===null||A===void 0?void 0:A.abortSignal}).then(B=>B.json()),a.then(B=>{const d=lf(this.apiClient,B),f=new Do;return Object.assign(f,d),f})}else{const u=pE(this.apiClient,e);return c=Z("{models_url}",u._url),l=u._query,delete u.config,delete u._url,delete u._query,a=this.apiClient.request({path:c,queryParams:l,body:JSON.stringify(u),httpMethod:"GET",httpOptions:(i=e.config)===null||i===void 0?void 0:i.httpOptions,abortSignal:(o=e.config)===null||o===void 0?void 0:o.abortSignal}).then(B=>B.json()),a.then(B=>{const d=k4(this.apiClient,B),f=new Do;return Object.assign(f,d),f})}}async update(e){var t,A,i,o;let a,c="",l={};if(this.apiClient.isVertexAI()){const u=E4(this.apiClient,e);return c=Z("{model}",u._url),l=u._query,delete u.config,delete u._url,delete u._query,a=this.apiClient.request({path:c,queryParams:l,body:JSON.stringify(u),httpMethod:"PATCH",httpOptions:(t=e.config)===null||t===void 0?void 0:t.httpOptions,abortSignal:(A=e.config)===null||A===void 0?void 0:A.abortSignal}).then(B=>B.json()),a.then(B=>Rn(this.apiClient,B))}else{const u=wE(this.apiClient,e);return c=Z("{name}",u._url),l=u._query,delete u.config,delete u._url,delete u._query,a=this.apiClient.request({path:c,queryParams:l,body:JSON.stringify(u),httpMethod:"PATCH",httpOptions:(i=e.config)===null||i===void 0?void 0:i.httpOptions,abortSignal:(o=e.config)===null||o===void 0?void 0:o.abortSignal}).then(B=>B.json()),a.then(B=>Tn(this.apiClient,B))}}async delete(e){var t,A,i,o;let a,c="",l={};if(this.apiClient.isVertexAI()){const u=f4(this.apiClient,e);return c=Z("{name}",u._url),l=u._query,delete u.config,delete u._url,delete u._query,a=this.apiClient.request({path:c,queryParams:l,body:JSON.stringify(u),httpMethod:"DELETE",httpOptions:(t=e.config)===null||t===void 0?void 0:t.httpOptions,abortSignal:(A=e.config)===null||A===void 0?void 0:A.abortSignal}).then(B=>B.json()),a.then(()=>{const B=uf(),d=new Fo;return Object.assign(d,B),d})}else{const u=mE(this.apiClient,e);return c=Z("{name}",u._url),l=u._query,delete u.config,delete u._url,delete u._query,a=this.apiClient.request({path:c,queryParams:l,body:JSON.stringify(u),httpMethod:"DELETE",httpOptions:(i=e.config)===null||i===void 0?void 0:i.httpOptions,abortSignal:(o=e.config)===null||o===void 0?void 0:o.abortSignal}).then(B=>B.json()),a.then(()=>{const B=P4(),d=new Fo;return Object.assign(d,B),d})}}async countTokens(e){var t,A,i,o;let a,c="",l={};if(this.apiClient.isVertexAI()){const u=p4(this.apiClient,e);return c=Z("{model}:countTokens",u._url),l=u._query,delete u.config,delete u._url,delete u._query,a=this.apiClient.request({path:c,queryParams:l,body:JSON.stringify(u),httpMethod:"POST",httpOptions:(t=e.config)===null||t===void 0?void 0:t.httpOptions,abortSignal:(A=e.config)===null||A===void 0?void 0:A.abortSignal}).then(B=>B.json()),a.then(B=>{const d=Bf(this.apiClient,B),f=new xo;return Object.assign(f,d),f})}else{const u=ME(this.apiClient,e);return c=Z("{model}:countTokens",u._url),l=u._query,delete u.config,delete u._url,delete u._query,a=this.apiClient.request({path:c,queryParams:l,body:JSON.stringify(u),httpMethod:"POST",httpOptions:(i=e.config)===null||i===void 0?void 0:i.httpOptions,abortSignal:(o=e.config)===null||o===void 0?void 0:o.abortSignal}).then(B=>B.json()),a.then(B=>{const d=J4(this.apiClient,B),f=new xo;return Object.assign(f,d),f})}}async computeTokens(e){var t,A;let i,o="",a={};if(this.apiClient.isVertexAI()){const c=h4(this.apiClient,e);return o=Z("{model}:computeTokens",c._url),a=c._query,delete c.config,delete c._url,delete c._query,i=this.apiClient.request({path:o,queryParams:a,body:JSON.stringify(c),httpMethod:"POST",httpOptions:(t=e.config)===null||t===void 0?void 0:t.httpOptions,abortSignal:(A=e.config)===null||A===void 0?void 0:A.abortSignal}).then(l=>l.json()),i.then(l=>{const u=gf(this.apiClient,l),B=new Qu;return Object.assign(B,u),B})}else throw new Error("This method is only supported by the Vertex AI.")}async generateVideos(e){var t,A,i,o;let a,c="",l={};if(this.apiClient.isVertexAI()){const u=m4(this.apiClient,e);return c=Z("{model}:predictLongRunning",u._url),l=u._query,delete u.config,delete u._url,delete u._query,a=this.apiClient.request({path:c,queryParams:l,body:JSON.stringify(u),httpMethod:"POST",httpOptions:(t=e.config)===null||t===void 0?void 0:t.httpOptions,abortSignal:(A=e.config)===null||A===void 0?void 0:A.abortSignal}).then(B=>B.json()),a.then(B=>Qf(this.apiClient,B))}else{const u=DE(this.apiClient,e);return c=Z("{model}:predictLongRunning",u._url),l=u._query,delete u.config,delete u._url,delete u._query,a=this.apiClient.request({path:c,queryParams:l,body:JSON.stringify(u),httpMethod:"POST",httpOptions:(i=e.config)===null||i===void 0?void 0:i.httpOptions,abortSignal:(o=e.config)===null||o===void 0?void 0:o.abortSignal}).then(B=>B.json()),a.then(B=>L4(this.apiClient,B))}}}/**
169
+ */class vd extends Ae{constructor(e){super(),this.apiClient=e,this.generateContent=async t=>{var n,i,l,a,u;const d=await this.processParamsForMcpUsage(t);if(!od(t)||Uo(t.config))return await this.generateContentInternal(d);if(id(t))throw new Error("Automatic function calling with CallableTools and Tools is not yet supported.");let c,f;const p=te(this.apiClient,d.contents),m=(l=(i=(n=d.config)===null||n===void 0?void 0:n.automaticFunctionCalling)===null||i===void 0?void 0:i.maximumRemoteCalls)!==null&&l!==void 0?l:Fo;let h=0;for(;h<m&&(c=await this.generateContentInternal(d),!(!c.functionCalls||c.functionCalls.length===0));){const g=c.candidates[0].content,v=[];for(const E of(u=(a=t.config)===null||a===void 0?void 0:a.tools)!==null&&u!==void 0?u:[])if(st(E)){const _=await E.callTool(c.functionCalls);v.push(..._)}h++,f={role:"user",parts:v},d.contents=te(this.apiClient,d.contents),d.contents.push(g),d.contents.push(f),bo(d.config)&&(p.push(g),p.push(f))}return bo(d.config)&&(c.automaticFunctionCallingHistory=p),c},this.generateContentStream=async t=>{if(Uo(t.config)){const n=await this.processParamsForMcpUsage(t);return await this.generateContentStreamInternal(n)}else return await this.processAfcStream(t)},this.generateImages=async t=>await this.generateImagesInternal(t).then(n=>{var i;let l;const a=[];if(n!=null&&n.generatedImages)for(const d of n.generatedImages)d&&(d!=null&&d.safetyAttributes)&&((i=d==null?void 0:d.safetyAttributes)===null||i===void 0?void 0:i.contentType)==="Positive Prompt"?l=d==null?void 0:d.safetyAttributes:a.push(d);let u;return l?u={generatedImages:a,positivePromptSafetyAttributes:l}:u={generatedImages:a},u}),this.list=async t=>{var n;const a={config:Object.assign(Object.assign({},{queryBase:!0}),t==null?void 0:t.config)};if(this.apiClient.isVertexAI()&&!a.config.queryBase){if(!((n=a.config)===null||n===void 0)&&n.filter)throw new Error("Filtering tuned models list for Vertex AI is not currently supported");a.config.filter="labels.tune-type:*"}return new nt(Re.PAGED_ITEM_MODELS,u=>this.listInternal(u),await this.listInternal(a),a)},this.editImage=async t=>{const n={model:t.model,prompt:t.prompt,referenceImages:[],config:t.config};return t.referenceImages&&t.referenceImages&&(n.referenceImages=t.referenceImages.map(i=>i.toReferenceImageAPI())),await this.editImageInternal(n)},this.upscaleImage=async t=>{let n={numberOfImages:1,mode:"upscale"};t.config&&(n=Object.assign(Object.assign({},n),t.config));const i={model:t.model,image:t.image,upscaleFactor:t.upscaleFactor,config:n};return await this.upscaleImageInternal(i)}}async processParamsForMcpUsage(e){var t,n,i;const l=(t=e.config)===null||t===void 0?void 0:t.tools;if(!l)return e;const a=await Promise.all(l.map(async d=>st(d)?await d.tool():d)),u={model:e.model,contents:e.contents,config:Object.assign(Object.assign({},e.config),{tools:a})};if(u.config.tools=a,e.config&&e.config.tools&&Lo(e.config.tools)){const d=(i=(n=e.config.httpOptions)===null||n===void 0?void 0:n.headers)!==null&&i!==void 0?i:{};let c=Object.assign({},d);Object.keys(c).length===0&&(c=this.apiClient.getDefaultHeaders()),Vo(c),u.config.httpOptions=Object.assign(Object.assign({},e.config.httpOptions),{headers:c})}return u}async initAfcToolsMap(e){var t,n,i;const l=new Map;for(const a of(n=(t=e.config)===null||t===void 0?void 0:t.tools)!==null&&n!==void 0?n:[])if(st(a)){const u=a,d=await u.tool();for(const c of(i=d.functionDeclarations)!==null&&i!==void 0?i:[]){if(!c.name)throw new Error("Function declaration name is required.");if(l.has(c.name))throw new Error(`Duplicate tool declaration name: ${c.name}`);l.set(c.name,u)}}return l}async processAfcStream(e){var t,n,i;const l=(i=(n=(t=e.config)===null||t===void 0?void 0:t.automaticFunctionCalling)===null||n===void 0?void 0:n.maximumRemoteCalls)!==null&&i!==void 0?i:Fo;let a=!1,u=0;const d=await this.initAfcToolsMap(e);return(function(c,f,p){var m,h;return we(this,arguments,function*(){for(var g,v,E,M;u<l;){a&&(u++,a=!1);const k=yield $(c.processParamsForMcpUsage(p)),V=yield $(c.generateContentStreamInternal(k)),B=[],J=[];try{for(var _=!0,A=(v=void 0,qe(V)),R;R=yield $(A.next()),g=R.done,!g;_=!0){M=R.value,_=!1;const D=M;if(yield yield $(D),D.candidates&&(!((m=D.candidates[0])===null||m===void 0)&&m.content)){J.push(D.candidates[0].content);for(const G of(h=D.candidates[0].content.parts)!==null&&h!==void 0?h:[])if(u<l&&G.functionCall){if(!G.functionCall.name)throw new Error("Function call name was not returned by the model.");if(f.has(G.functionCall.name)){const X=yield $(f.get(G.functionCall.name).callTool([G.functionCall]));B.push(...X)}else throw new Error(`Automatic function calling was requested, but not all the tools the model used implement the CallableTool interface. Available tools: ${f.keys()}, mising tool: ${G.functionCall.name}`)}}}}catch(D){v={error:D}}finally{try{!_&&!g&&(E=A.return)&&(yield $(E.call(A)))}finally{if(v)throw v.error}}if(B.length>0){a=!0;const D=new be;D.candidates=[{content:{role:"user",parts:B}}],yield yield $(D);const G=[];G.push(...J),G.push({role:"user",parts:B});const X=te(c.apiClient,p.contents).concat(G);p.contents=X}else break}})})(this,d,e)}async generateContentInternal(e){var t,n,i,l;let a,u="",d={};if(this.apiClient.isVertexAI()){const c=Mo(this.apiClient,e);return u=I("{model}:generateContent",c._url),d=c._query,delete c.config,delete c._url,delete c._query,a=this.apiClient.request({path:u,queryParams:d,body:JSON.stringify(c),httpMethod:"POST",httpOptions:(t=e.config)===null||t===void 0?void 0:t.httpOptions,abortSignal:(n=e.config)===null||n===void 0?void 0:n.abortSignal}).then(f=>f.json()),a.then(f=>{const p=wo(this.apiClient,f),m=new be;return Object.assign(m,p),m})}else{const c=xo(this.apiClient,e);return u=I("{model}:generateContent",c._url),d=c._query,delete c.config,delete c._url,delete c._query,a=this.apiClient.request({path:u,queryParams:d,body:JSON.stringify(c),httpMethod:"POST",httpOptions:(i=e.config)===null||i===void 0?void 0:i.httpOptions,abortSignal:(l=e.config)===null||l===void 0?void 0:l.abortSignal}).then(f=>f.json()),a.then(f=>{const p=Io(this.apiClient,f),m=new be;return Object.assign(m,p),m})}}async generateContentStreamInternal(e){var t,n,i,l;let a,u="",d={};if(this.apiClient.isVertexAI()){const c=Mo(this.apiClient,e);u=I("{model}:streamGenerateContent?alt=sse",c._url),d=c._query,delete c.config,delete c._url,delete c._query;const f=this.apiClient;return a=f.requestStream({path:u,queryParams:d,body:JSON.stringify(c),httpMethod:"POST",httpOptions:(t=e.config)===null||t===void 0?void 0:t.httpOptions,abortSignal:(n=e.config)===null||n===void 0?void 0:n.abortSignal}),a.then(function(p){return we(this,arguments,function*(){var m,h,g,v;try{for(var E=!0,M=qe(p),_;_=yield $(M.next()),m=_.done,!m;E=!0){v=_.value,E=!1;const R=wo(f,yield $(v.json())),k=new be;Object.assign(k,R),yield yield $(k)}}catch(A){h={error:A}}finally{try{!E&&!m&&(g=M.return)&&(yield $(g.call(M)))}finally{if(h)throw h.error}}})})}else{const c=xo(this.apiClient,e);u=I("{model}:streamGenerateContent?alt=sse",c._url),d=c._query,delete c.config,delete c._url,delete c._query;const f=this.apiClient;return a=f.requestStream({path:u,queryParams:d,body:JSON.stringify(c),httpMethod:"POST",httpOptions:(i=e.config)===null||i===void 0?void 0:i.httpOptions,abortSignal:(l=e.config)===null||l===void 0?void 0:l.abortSignal}),a.then(function(p){return we(this,arguments,function*(){var m,h,g,v;try{for(var E=!0,M=qe(p),_;_=yield $(M.next()),m=_.done,!m;E=!0){v=_.value,E=!1;const R=Io(f,yield $(v.json())),k=new be;Object.assign(k,R),yield yield $(k)}}catch(A){h={error:A}}finally{try{!E&&!m&&(g=M.return)&&(yield $(g.call(M)))}finally{if(h)throw h.error}}})})}}async embedContent(e){var t,n,i,l;let a,u="",d={};if(this.apiClient.isVertexAI()){const c=Nu(this.apiClient,e);return u=I("{model}:predict",c._url),d=c._query,delete c.config,delete c._url,delete c._query,a=this.apiClient.request({path:u,queryParams:d,body:JSON.stringify(c),httpMethod:"POST",httpOptions:(t=e.config)===null||t===void 0?void 0:t.httpOptions,abortSignal:(n=e.config)===null||n===void 0?void 0:n.abortSignal}).then(f=>f.json()),a.then(f=>{const p=Dc(this.apiClient,f),m=new qn;return Object.assign(m,p),m})}else{const c=Ja(this.apiClient,e);return u=I("{model}:batchEmbedContents",c._url),d=c._query,delete c.config,delete c._url,delete c._query,a=this.apiClient.request({path:u,queryParams:d,body:JSON.stringify(c),httpMethod:"POST",httpOptions:(i=e.config)===null||i===void 0?void 0:i.httpOptions,abortSignal:(l=e.config)===null||l===void 0?void 0:l.abortSignal}).then(f=>f.json()),a.then(f=>{const p=dc(this.apiClient,f),m=new qn;return Object.assign(m,p),m})}}async generateImagesInternal(e){var t,n,i,l;let a,u="",d={};if(this.apiClient.isVertexAI()){const c=Du(this.apiClient,e);return u=I("{model}:predict",c._url),d=c._query,delete c.config,delete c._url,delete c._query,a=this.apiClient.request({path:u,queryParams:d,body:JSON.stringify(c),httpMethod:"POST",httpOptions:(t=e.config)===null||t===void 0?void 0:t.httpOptions,abortSignal:(n=e.config)===null||n===void 0?void 0:n.abortSignal}).then(f=>f.json()),a.then(f=>{const p=Vc(this.apiClient,f),m=new $n;return Object.assign(m,p),m})}else{const c=Ya(this.apiClient,e);return u=I("{model}:predict",c._url),d=c._query,delete c.config,delete c._url,delete c._query,a=this.apiClient.request({path:u,queryParams:d,body:JSON.stringify(c),httpMethod:"POST",httpOptions:(i=e.config)===null||i===void 0?void 0:i.httpOptions,abortSignal:(l=e.config)===null||l===void 0?void 0:l.abortSignal}).then(f=>f.json()),a.then(f=>{const p=mc(this.apiClient,f),m=new $n;return Object.assign(m,p),m})}}async editImageInternal(e){var t,n;let i,l="",a={};if(this.apiClient.isVertexAI()){const u=Bu(this.apiClient,e);return l=I("{model}:predict",u._url),a=u._query,delete u.config,delete u._url,delete u._query,i=this.apiClient.request({path:l,queryParams:a,body:JSON.stringify(u),httpMethod:"POST",httpOptions:(t=e.config)===null||t===void 0?void 0:t.httpOptions,abortSignal:(n=e.config)===null||n===void 0?void 0:n.abortSignal}).then(d=>d.json()),i.then(d=>{const c=Fc(this.apiClient,d),f=new Yi;return Object.assign(f,c),f})}else throw new Error("This method is only supported by the Vertex AI.")}async upscaleImageInternal(e){var t,n;let i,l="",a={};if(this.apiClient.isVertexAI()){const u=$u(this.apiClient,e);return l=I("{model}:predict",u._url),a=u._query,delete u.config,delete u._url,delete u._query,i=this.apiClient.request({path:l,queryParams:a,body:JSON.stringify(u),httpMethod:"POST",httpOptions:(t=e.config)===null||t===void 0?void 0:t.httpOptions,abortSignal:(n=e.config)===null||n===void 0?void 0:n.abortSignal}).then(d=>d.json()),i.then(d=>{const c=Uc(this.apiClient,d),f=new Zi;return Object.assign(f,c),f})}else throw new Error("This method is only supported by the Vertex AI.")}async get(e){var t,n,i,l;let a,u="",d={};if(this.apiClient.isVertexAI()){const c=Ou(this.apiClient,e);return u=I("{name}",c._url),d=c._query,delete c.config,delete c._url,delete c._query,a=this.apiClient.request({path:u,queryParams:d,body:JSON.stringify(c),httpMethod:"GET",httpOptions:(t=e.config)===null||t===void 0?void 0:t.httpOptions,abortSignal:(n=e.config)===null||n===void 0?void 0:n.abortSignal}).then(f=>f.json()),a.then(f=>Mt(this.apiClient,f))}else{const c=Za(this.apiClient,e);return u=I("{name}",c._url),d=c._query,delete c.config,delete c._url,delete c._query,a=this.apiClient.request({path:u,queryParams:d,body:JSON.stringify(c),httpMethod:"GET",httpOptions:(i=e.config)===null||i===void 0?void 0:i.httpOptions,abortSignal:(l=e.config)===null||l===void 0?void 0:l.abortSignal}).then(f=>f.json()),a.then(f=>xt(this.apiClient,f))}}async listInternal(e){var t,n,i,l;let a,u="",d={};if(this.apiClient.isVertexAI()){const c=Ju(this.apiClient,e);return u=I("{models_url}",c._url),d=c._query,delete c.config,delete c._url,delete c._query,a=this.apiClient.request({path:u,queryParams:d,body:JSON.stringify(c),httpMethod:"GET",httpOptions:(t=e.config)===null||t===void 0?void 0:t.httpOptions,abortSignal:(n=e.config)===null||n===void 0?void 0:n.abortSignal}).then(f=>f.json()),a.then(f=>{const p=qc(this.apiClient,f),m=new On;return Object.assign(m,p),m})}else{const c=Ka(this.apiClient,e);return u=I("{models_url}",c._url),d=c._query,delete c.config,delete c._url,delete c._query,a=this.apiClient.request({path:u,queryParams:d,body:JSON.stringify(c),httpMethod:"GET",httpOptions:(i=e.config)===null||i===void 0?void 0:i.httpOptions,abortSignal:(l=e.config)===null||l===void 0?void 0:l.abortSignal}).then(f=>f.json()),a.then(f=>{const p=gc(this.apiClient,f),m=new On;return Object.assign(m,p),m})}}async update(e){var t,n,i,l;let a,u="",d={};if(this.apiClient.isVertexAI()){const c=Yu(this.apiClient,e);return u=I("{model}",c._url),d=c._query,delete c.config,delete c._url,delete c._query,a=this.apiClient.request({path:u,queryParams:d,body:JSON.stringify(c),httpMethod:"PATCH",httpOptions:(t=e.config)===null||t===void 0?void 0:t.httpOptions,abortSignal:(n=e.config)===null||n===void 0?void 0:n.abortSignal}).then(f=>f.json()),a.then(f=>Mt(this.apiClient,f))}else{const c=Qa(this.apiClient,e);return u=I("{name}",c._url),d=c._query,delete c.config,delete c._url,delete c._query,a=this.apiClient.request({path:u,queryParams:d,body:JSON.stringify(c),httpMethod:"PATCH",httpOptions:(i=e.config)===null||i===void 0?void 0:i.httpOptions,abortSignal:(l=e.config)===null||l===void 0?void 0:l.abortSignal}).then(f=>f.json()),a.then(f=>xt(this.apiClient,f))}}async delete(e){var t,n,i,l;let a,u="",d={};if(this.apiClient.isVertexAI()){const c=Zu(this.apiClient,e);return u=I("{name}",c._url),d=c._query,delete c.config,delete c._url,delete c._query,a=this.apiClient.request({path:u,queryParams:d,body:JSON.stringify(c),httpMethod:"DELETE",httpOptions:(t=e.config)===null||t===void 0?void 0:t.httpOptions,abortSignal:(n=e.config)===null||n===void 0?void 0:n.abortSignal}).then(f=>f.json()),a.then(()=>{const f=$c(),p=new Hn;return Object.assign(p,f),p})}else{const c=ja(this.apiClient,e);return u=I("{name}",c._url),d=c._query,delete c.config,delete c._url,delete c._query,a=this.apiClient.request({path:u,queryParams:d,body:JSON.stringify(c),httpMethod:"DELETE",httpOptions:(i=e.config)===null||i===void 0?void 0:i.httpOptions,abortSignal:(l=e.config)===null||l===void 0?void 0:l.abortSignal}).then(f=>f.json()),a.then(()=>{const f=yc(),p=new Hn;return Object.assign(p,f),p})}}async countTokens(e){var t,n,i,l;let a,u="",d={};if(this.apiClient.isVertexAI()){const c=Ku(this.apiClient,e);return u=I("{model}:countTokens",c._url),d=c._query,delete c.config,delete c._url,delete c._query,a=this.apiClient.request({path:u,queryParams:d,body:JSON.stringify(c),httpMethod:"POST",httpOptions:(t=e.config)===null||t===void 0?void 0:t.httpOptions,abortSignal:(n=e.config)===null||n===void 0?void 0:n.abortSignal}).then(f=>f.json()),a.then(f=>{const p=Oc(this.apiClient,f),m=new Jn;return Object.assign(m,p),m})}else{const c=tu(this.apiClient,e);return u=I("{model}:countTokens",c._url),d=c._query,delete c.config,delete c._url,delete c._query,a=this.apiClient.request({path:u,queryParams:d,body:JSON.stringify(c),httpMethod:"POST",httpOptions:(i=e.config)===null||i===void 0?void 0:i.httpOptions,abortSignal:(l=e.config)===null||l===void 0?void 0:l.abortSignal}).then(f=>f.json()),a.then(f=>{const p=vc(this.apiClient,f),m=new Jn;return Object.assign(m,p),m})}}async computeTokens(e){var t,n;let i,l="",a={};if(this.apiClient.isVertexAI()){const u=Xu(this.apiClient,e);return l=I("{model}:computeTokens",u._url),a=u._query,delete u.config,delete u._url,delete u._query,i=this.apiClient.request({path:l,queryParams:a,body:JSON.stringify(u),httpMethod:"POST",httpOptions:(t=e.config)===null||t===void 0?void 0:t.httpOptions,abortSignal:(n=e.config)===null||n===void 0?void 0:n.abortSignal}).then(d=>d.json()),i.then(d=>{const c=Hc(this.apiClient,d),f=new zi;return Object.assign(f,c),f})}else throw new Error("This method is only supported by the Vertex AI.")}async generateVideos(e){var t,n,i,l;let a,u="",d={};if(this.apiClient.isVertexAI()){const c=ju(this.apiClient,e);return u=I("{model}:predictLongRunning",c._url),d=c._query,delete c.config,delete c._url,delete c._query,a=this.apiClient.request({path:u,queryParams:d,body:JSON.stringify(c),httpMethod:"POST",httpOptions:(t=e.config)===null||t===void 0?void 0:t.httpOptions,abortSignal:(n=e.config)===null||n===void 0?void 0:n.abortSignal}).then(f=>f.json()),a.then(f=>Zc(this.apiClient,f))}else{const c=iu(this.apiClient,e);return u=I("{model}:predictLongRunning",c._url),d=c._query,delete c.config,delete c._url,delete c._query,a=this.apiClient.request({path:u,queryParams:d,body:JSON.stringify(c),httpMethod:"POST",httpOptions:(i=e.config)===null||i===void 0?void 0:i.httpOptions,abortSignal:(l=e.config)===null||l===void 0?void 0:l.abortSignal}).then(f=>f.json()),a.then(f=>Ec(this.apiClient,f))}}}/**
200
170
  * @license
201
171
  * Copyright 2025 Google LLC
202
172
  * SPDX-License-Identifier: Apache-2.0
203
- */function bf(n,e){const t={},A=r(e,["operationName"]);A!=null&&s(t,["_url","operationName"],A);const i=r(e,["config"]);return i!=null&&s(t,["config"],i),t}function Vf(n,e){const t={},A=r(e,["operationName"]);A!=null&&s(t,["_url","operationName"],A);const i=r(e,["config"]);return i!=null&&s(t,["config"],i),t}function Lf(n,e){const t={},A=r(e,["operationName"]);A!=null&&s(t,["operationName"],A);const i=r(e,["resourceName"]);i!=null&&s(t,["_url","resourceName"],i);const o=r(e,["config"]);return o!=null&&s(t,["config"],o),t}function Wf(n,e){const t={},A=r(e,["video","uri"]);A!=null&&s(t,["uri"],A);const i=r(e,["video","encodedVideo"]);i!=null&&s(t,["videoBytes"],v2(n,i));const o=r(e,["encoding"]);return o!=null&&s(t,["mimeType"],o),t}function jf(n,e){const t={},A=r(e,["_self"]);return A!=null&&s(t,["video"],Wf(n,A)),t}function _f(n,e){const t={},A=r(e,["generatedSamples"]);if(A!=null){let a=A;Array.isArray(a)&&(a=a.map(c=>jf(n,c))),s(t,["generatedVideos"],a)}const i=r(e,["raiMediaFilteredCount"]);i!=null&&s(t,["raiMediaFilteredCount"],i);const o=r(e,["raiMediaFilteredReasons"]);return o!=null&&s(t,["raiMediaFilteredReasons"],o),t}function Xf(n,e){const t={},A=r(e,["name"]);A!=null&&s(t,["name"],A);const i=r(e,["metadata"]);i!=null&&s(t,["metadata"],i);const o=r(e,["done"]);o!=null&&s(t,["done"],o);const a=r(e,["error"]);a!=null&&s(t,["error"],a);const c=r(e,["response","generateVideoResponse"]);return c!=null&&s(t,["response"],_f(n,c)),t}function Of(n,e){const t={},A=r(e,["gcsUri"]);A!=null&&s(t,["uri"],A);const i=r(e,["bytesBase64Encoded"]);i!=null&&s(t,["videoBytes"],v2(n,i));const o=r(e,["mimeType"]);return o!=null&&s(t,["mimeType"],o),t}function Kf(n,e){const t={},A=r(e,["_self"]);return A!=null&&s(t,["video"],Of(n,A)),t}function Zf(n,e){const t={},A=r(e,["videos"]);if(A!=null){let a=A;Array.isArray(a)&&(a=a.map(c=>Kf(n,c))),s(t,["generatedVideos"],a)}const i=r(e,["raiMediaFilteredCount"]);i!=null&&s(t,["raiMediaFilteredCount"],i);const o=r(e,["raiMediaFilteredReasons"]);return o!=null&&s(t,["raiMediaFilteredReasons"],o),t}function mr(n,e){const t={},A=r(e,["name"]);A!=null&&s(t,["name"],A);const i=r(e,["metadata"]);i!=null&&s(t,["metadata"],i);const o=r(e,["done"]);o!=null&&s(t,["done"],o);const a=r(e,["error"]);a!=null&&s(t,["error"],a);const c=r(e,["response"]);return c!=null&&s(t,["response"],Zf(n,c)),t}/**
173
+ */function Td(o,e){const t={},n=r(e,["operationName"]);n!=null&&s(t,["_url","operationName"],n);const i=r(e,["config"]);return i!=null&&s(t,["config"],i),t}function Cd(o,e){const t={},n=r(e,["operationName"]);n!=null&&s(t,["_url","operationName"],n);const i=r(e,["config"]);return i!=null&&s(t,["config"],i),t}function _d(o,e){const t={},n=r(e,["operationName"]);n!=null&&s(t,["operationName"],n);const i=r(e,["resourceName"]);i!=null&&s(t,["_url","resourceName"],i);const l=r(e,["config"]);return l!=null&&s(t,["config"],l),t}function Ed(o,e){const t={},n=r(e,["video","uri"]);n!=null&&s(t,["uri"],n);const i=r(e,["video","encodedVideo"]);i!=null&&s(t,["videoBytes"],de(o,i));const l=r(e,["encoding"]);return l!=null&&s(t,["mimeType"],l),t}function Sd(o,e){const t={},n=r(e,["_self"]);return n!=null&&s(t,["video"],Ed(o,n)),t}function xd(o,e){const t={},n=r(e,["generatedSamples"]);if(n!=null){let a=n;Array.isArray(a)&&(a=a.map(u=>Sd(o,u))),s(t,["generatedVideos"],a)}const i=r(e,["raiMediaFilteredCount"]);i!=null&&s(t,["raiMediaFilteredCount"],i);const l=r(e,["raiMediaFilteredReasons"]);return l!=null&&s(t,["raiMediaFilteredReasons"],l),t}function Ad(o,e){const t={},n=r(e,["name"]);n!=null&&s(t,["name"],n);const i=r(e,["metadata"]);i!=null&&s(t,["metadata"],i);const l=r(e,["done"]);l!=null&&s(t,["done"],l);const a=r(e,["error"]);a!=null&&s(t,["error"],a);const u=r(e,["response","generateVideoResponse"]);return u!=null&&s(t,["response"],xd(o,u)),t}function Md(o,e){const t={},n=r(e,["gcsUri"]);n!=null&&s(t,["uri"],n);const i=r(e,["bytesBase64Encoded"]);i!=null&&s(t,["videoBytes"],de(o,i));const l=r(e,["mimeType"]);return l!=null&&s(t,["mimeType"],l),t}function Id(o,e){const t={},n=r(e,["_self"]);return n!=null&&s(t,["video"],Md(o,n)),t}function Rd(o,e){const t={},n=r(e,["videos"]);if(n!=null){let a=n;Array.isArray(a)&&(a=a.map(u=>Id(o,u))),s(t,["generatedVideos"],a)}const i=r(e,["raiMediaFilteredCount"]);i!=null&&s(t,["raiMediaFilteredCount"],i);const l=r(e,["raiMediaFilteredReasons"]);return l!=null&&s(t,["raiMediaFilteredReasons"],l),t}function Go(o,e){const t={},n=r(e,["name"]);n!=null&&s(t,["name"],n);const i=r(e,["metadata"]);i!=null&&s(t,["metadata"],i);const l=r(e,["done"]);l!=null&&s(t,["done"],l);const a=r(e,["error"]);a!=null&&s(t,["error"],a);const u=r(e,["response"]);return u!=null&&s(t,["response"],Rd(o,u)),t}/**
204
174
  * @license
205
175
  * Copyright 2025 Google LLC
206
176
  * SPDX-License-Identifier: Apache-2.0
207
- */class qf extends le{constructor(e){super(),this.apiClient=e}async getVideosOperation(e){const t=e.operation,A=e.config;if(t.name===void 0||t.name==="")throw new Error("Operation name is required.");if(this.apiClient.isVertexAI()){const i=t.name.split("/operations/")[0];let o;return A&&"httpOptions"in A&&(o=A.httpOptions),this.fetchPredictVideosOperationInternal({operationName:t.name,resourceName:i,config:{httpOptions:o}})}else return this.getVideosOperationInternal({operationName:t.name,config:A})}async getVideosOperationInternal(e){var t,A,i,o;let a,c="",l={};if(this.apiClient.isVertexAI()){const u=Vf(this.apiClient,e);return c=Z("{operationName}",u._url),l=u._query,delete u.config,delete u._url,delete u._query,a=this.apiClient.request({path:c,queryParams:l,body:JSON.stringify(u),httpMethod:"GET",httpOptions:(t=e.config)===null||t===void 0?void 0:t.httpOptions,abortSignal:(A=e.config)===null||A===void 0?void 0:A.abortSignal}).then(B=>B.json()),a.then(B=>mr(this.apiClient,B))}else{const u=bf(this.apiClient,e);return c=Z("{operationName}",u._url),l=u._query,delete u.config,delete u._url,delete u._query,a=this.apiClient.request({path:c,queryParams:l,body:JSON.stringify(u),httpMethod:"GET",httpOptions:(i=e.config)===null||i===void 0?void 0:i.httpOptions,abortSignal:(o=e.config)===null||o===void 0?void 0:o.abortSignal}).then(B=>B.json()),a.then(B=>Xf(this.apiClient,B))}}async fetchPredictVideosOperationInternal(e){var t,A;let i,o="",a={};if(this.apiClient.isVertexAI()){const c=Lf(this.apiClient,e);return o=Z("{resourceName}:fetchPredictOperation",c._url),a=c._query,delete c.config,delete c._url,delete c._query,i=this.apiClient.request({path:o,queryParams:a,body:JSON.stringify(c),httpMethod:"POST",httpOptions:(t=e.config)===null||t===void 0?void 0:t.httpOptions,abortSignal:(A=e.config)===null||A===void 0?void 0:A.abortSignal}).then(l=>l.json()),i.then(l=>mr(this.apiClient,l))}else throw new Error("This method is only supported by the Vertex AI.")}}/**
177
+ */class wd extends Ae{constructor(e){super(),this.apiClient=e}async getVideosOperation(e){const t=e.operation,n=e.config;if(t.name===void 0||t.name==="")throw new Error("Operation name is required.");if(this.apiClient.isVertexAI()){const i=t.name.split("/operations/")[0];let l;return n&&"httpOptions"in n&&(l=n.httpOptions),this.fetchPredictVideosOperationInternal({operationName:t.name,resourceName:i,config:{httpOptions:l}})}else return this.getVideosOperationInternal({operationName:t.name,config:n})}async getVideosOperationInternal(e){var t,n,i,l;let a,u="",d={};if(this.apiClient.isVertexAI()){const c=Cd(this.apiClient,e);return u=I("{operationName}",c._url),d=c._query,delete c.config,delete c._url,delete c._query,a=this.apiClient.request({path:u,queryParams:d,body:JSON.stringify(c),httpMethod:"GET",httpOptions:(t=e.config)===null||t===void 0?void 0:t.httpOptions,abortSignal:(n=e.config)===null||n===void 0?void 0:n.abortSignal}).then(f=>f.json()),a.then(f=>Go(this.apiClient,f))}else{const c=Td(this.apiClient,e);return u=I("{operationName}",c._url),d=c._query,delete c.config,delete c._url,delete c._query,a=this.apiClient.request({path:u,queryParams:d,body:JSON.stringify(c),httpMethod:"GET",httpOptions:(i=e.config)===null||i===void 0?void 0:i.httpOptions,abortSignal:(l=e.config)===null||l===void 0?void 0:l.abortSignal}).then(f=>f.json()),a.then(f=>Ad(this.apiClient,f))}}async fetchPredictVideosOperationInternal(e){var t,n;let i,l="",a={};if(this.apiClient.isVertexAI()){const u=_d(this.apiClient,e);return l=I("{resourceName}:fetchPredictOperation",u._url),a=u._query,delete u.config,delete u._url,delete u._query,i=this.apiClient.request({path:l,queryParams:a,body:JSON.stringify(u),httpMethod:"POST",httpOptions:(t=e.config)===null||t===void 0?void 0:t.httpOptions,abortSignal:(n=e.config)===null||n===void 0?void 0:n.abortSignal}).then(d=>d.json()),i.then(d=>Go(this.apiClient,d))}else throw new Error("This method is only supported by the Vertex AI.")}}/**
208
178
  * @license
209
179
  * Copyright 2025 Google LLC
210
180
  * SPDX-License-Identifier: Apache-2.0
211
- */function $f(n,e){const t={},A=r(e,["voiceName"]);return A!=null&&s(t,["voiceName"],A),t}function Cr(n,e){const t={},A=r(e,["prebuiltVoiceConfig"]);return A!=null&&s(t,["prebuiltVoiceConfig"],$f(n,A)),t}function e3(n,e){const t={},A=r(e,["speaker"]);A!=null&&s(t,["speaker"],A);const i=r(e,["voiceConfig"]);return i!=null&&s(t,["voiceConfig"],Cr(n,i)),t}function t3(n,e){const t={},A=r(e,["speakerVoiceConfigs"]);if(A!=null){let i=A;Array.isArray(i)&&(i=i.map(o=>e3(n,o))),s(t,["speakerVoiceConfigs"],i)}return t}function n3(n,e){const t={},A=r(e,["voiceConfig"]);A!=null&&s(t,["voiceConfig"],Cr(n,A));const i=r(e,["multiSpeakerVoiceConfig"]);i!=null&&s(t,["multiSpeakerVoiceConfig"],t3(n,i));const o=r(e,["languageCode"]);return o!=null&&s(t,["languageCode"],o),t}function A3(n,e){const t={},A=r(e,["fps"]);A!=null&&s(t,["fps"],A);const i=r(e,["endOffset"]);i!=null&&s(t,["endOffset"],i);const o=r(e,["startOffset"]);return o!=null&&s(t,["startOffset"],o),t}function i3(n,e){const t={};if(r(e,["displayName"])!==void 0)throw new Error("displayName parameter is not supported in Gemini API.");const A=r(e,["data"]);A!=null&&s(t,["data"],A);const i=r(e,["mimeType"]);return i!=null&&s(t,["mimeType"],i),t}function o3(n,e){const t={};if(r(e,["displayName"])!==void 0)throw new Error("displayName parameter is not supported in Gemini API.");const A=r(e,["fileUri"]);A!=null&&s(t,["fileUri"],A);const i=r(e,["mimeType"]);return i!=null&&s(t,["mimeType"],i),t}function r3(n,e){const t={},A=r(e,["videoMetadata"]);A!=null&&s(t,["videoMetadata"],A3(n,A));const i=r(e,["thought"]);i!=null&&s(t,["thought"],i);const o=r(e,["inlineData"]);o!=null&&s(t,["inlineData"],i3(n,o));const a=r(e,["fileData"]);a!=null&&s(t,["fileData"],o3(n,a));const c=r(e,["thoughtSignature"]);c!=null&&s(t,["thoughtSignature"],c);const l=r(e,["codeExecutionResult"]);l!=null&&s(t,["codeExecutionResult"],l);const u=r(e,["executableCode"]);u!=null&&s(t,["executableCode"],u);const B=r(e,["functionCall"]);B!=null&&s(t,["functionCall"],B);const d=r(e,["functionResponse"]);d!=null&&s(t,["functionResponse"],d);const f=r(e,["text"]);return f!=null&&s(t,["text"],f),t}function s3(n,e){const t={},A=r(e,["parts"]);if(A!=null){let o=A;Array.isArray(o)&&(o=o.map(a=>r3(n,a))),s(t,["parts"],o)}const i=r(e,["role"]);return i!=null&&s(t,["role"],i),t}function a3(n,e){const t={},A=r(e,["behavior"]);A!=null&&s(t,["behavior"],A);const i=r(e,["description"]);i!=null&&s(t,["description"],i);const o=r(e,["name"]);o!=null&&s(t,["name"],o);const a=r(e,["parameters"]);a!=null&&s(t,["parameters"],a);const c=r(e,["response"]);return c!=null&&s(t,["response"],c),t}function c3(n,e){const t={},A=r(e,["startTime"]);A!=null&&s(t,["startTime"],A);const i=r(e,["endTime"]);return i!=null&&s(t,["endTime"],i),t}function l3(n,e){const t={},A=r(e,["timeRangeFilter"]);return A!=null&&s(t,["timeRangeFilter"],c3(n,A)),t}function u3(n,e){const t={},A=r(e,["mode"]);A!=null&&s(t,["mode"],A);const i=r(e,["dynamicThreshold"]);return i!=null&&s(t,["dynamicThreshold"],i),t}function B3(n,e){const t={},A=r(e,["dynamicRetrievalConfig"]);return A!=null&&s(t,["dynamicRetrievalConfig"],u3(n,A)),t}function g3(){return{}}function d3(n,e){const t={},A=r(e,["functionDeclarations"]);if(A!=null){let l=A;Array.isArray(l)&&(l=l.map(u=>a3(n,u))),s(t,["functionDeclarations"],l)}if(r(e,["retrieval"])!==void 0)throw new Error("retrieval parameter is not supported in Gemini API.");const i=r(e,["googleSearch"]);i!=null&&s(t,["googleSearch"],l3(n,i));const o=r(e,["googleSearchRetrieval"]);if(o!=null&&s(t,["googleSearchRetrieval"],B3(n,o)),r(e,["enterpriseWebSearch"])!==void 0)throw new Error("enterpriseWebSearch parameter is not supported in Gemini API.");if(r(e,["googleMaps"])!==void 0)throw new Error("googleMaps parameter is not supported in Gemini API.");r(e,["urlContext"])!=null&&s(t,["urlContext"],g3());const c=r(e,["codeExecution"]);return c!=null&&s(t,["codeExecution"],c),t}function E3(n,e){const t={},A=r(e,["handle"]);if(A!=null&&s(t,["handle"],A),r(e,["transparent"])!==void 0)throw new Error("transparent parameter is not supported in Gemini API.");return t}function Mr(){return{}}function f3(n,e){const t={},A=r(e,["disabled"]);A!=null&&s(t,["disabled"],A);const i=r(e,["startOfSpeechSensitivity"]);i!=null&&s(t,["startOfSpeechSensitivity"],i);const o=r(e,["endOfSpeechSensitivity"]);o!=null&&s(t,["endOfSpeechSensitivity"],o);const a=r(e,["prefixPaddingMs"]);a!=null&&s(t,["prefixPaddingMs"],a);const c=r(e,["silenceDurationMs"]);return c!=null&&s(t,["silenceDurationMs"],c),t}function Q3(n,e){const t={},A=r(e,["automaticActivityDetection"]);A!=null&&s(t,["automaticActivityDetection"],f3(n,A));const i=r(e,["activityHandling"]);i!=null&&s(t,["activityHandling"],i);const o=r(e,["turnCoverage"]);return o!=null&&s(t,["turnCoverage"],o),t}function p3(n,e){const t={},A=r(e,["targetTokens"]);return A!=null&&s(t,["targetTokens"],A),t}function h3(n,e){const t={},A=r(e,["triggerTokens"]);A!=null&&s(t,["triggerTokens"],A);const i=r(e,["slidingWindow"]);return i!=null&&s(t,["slidingWindow"],p3(n,i)),t}function w3(n,e){const t={},A=r(e,["proactiveAudio"]);return A!=null&&s(t,["proactiveAudio"],A),t}function m3(n,e,t){const A={},i=r(e,["generationConfig"]);t!==void 0&&i!=null&&s(t,["setup","generationConfig"],i);const o=r(e,["responseModalities"]);t!==void 0&&o!=null&&s(t,["setup","generationConfig","responseModalities"],o);const a=r(e,["temperature"]);t!==void 0&&a!=null&&s(t,["setup","generationConfig","temperature"],a);const c=r(e,["topP"]);t!==void 0&&c!=null&&s(t,["setup","generationConfig","topP"],c);const l=r(e,["topK"]);t!==void 0&&l!=null&&s(t,["setup","generationConfig","topK"],l);const u=r(e,["maxOutputTokens"]);t!==void 0&&u!=null&&s(t,["setup","generationConfig","maxOutputTokens"],u);const B=r(e,["mediaResolution"]);t!==void 0&&B!=null&&s(t,["setup","generationConfig","mediaResolution"],B);const d=r(e,["seed"]);t!==void 0&&d!=null&&s(t,["setup","generationConfig","seed"],d);const f=r(e,["speechConfig"]);t!==void 0&&f!=null&&s(t,["setup","generationConfig","speechConfig"],n3(n,xn(n,f)));const w=r(e,["enableAffectiveDialog"]);t!==void 0&&w!=null&&s(t,["setup","generationConfig","enableAffectiveDialog"],w);const y=r(e,["systemInstruction"]);t!==void 0&&y!=null&&s(t,["setup","systemInstruction"],s3(n,z0(n,y)));const F=r(e,["tools"]);if(t!==void 0&&F!=null){let U=ke(n,F);Array.isArray(U)&&(U=U.map(x=>d3(n,Ge(n,x)))),s(t,["setup","tools"],U)}const R=r(e,["sessionResumption"]);t!==void 0&&R!=null&&s(t,["setup","sessionResumption"],E3(n,R));const S=r(e,["inputAudioTranscription"]);t!==void 0&&S!=null&&s(t,["setup","inputAudioTranscription"],Mr());const M=r(e,["outputAudioTranscription"]);t!==void 0&&M!=null&&s(t,["setup","outputAudioTranscription"],Mr());const T=r(e,["realtimeInputConfig"]);t!==void 0&&T!=null&&s(t,["setup","realtimeInputConfig"],Q3(n,T));const D=r(e,["contextWindowCompression"]);t!==void 0&&D!=null&&s(t,["setup","contextWindowCompression"],h3(n,D));const I=r(e,["proactivity"]);return t!==void 0&&I!=null&&s(t,["setup","proactivity"],w3(n,I)),A}function C3(n,e){const t={},A=r(e,["model"]);A!=null&&s(t,["setup","model"],g0(n,A));const i=r(e,["config"]);return i!=null&&s(t,["config"],m3(n,i,t)),t}function M3(n,e,t){const A={},i=r(e,["expireTime"]);t!==void 0&&i!=null&&s(t,["expireTime"],i);const o=r(e,["newSessionExpireTime"]);t!==void 0&&o!=null&&s(t,["newSessionExpireTime"],o);const a=r(e,["uses"]);t!==void 0&&a!=null&&s(t,["uses"],a);const c=r(e,["liveConnectConstraints"]);t!==void 0&&c!=null&&s(t,["bidiGenerateContentSetup"],C3(n,c));const l=r(e,["lockAdditionalFields"]);return t!==void 0&&l!=null&&s(t,["fieldMask"],l),A}function y3(n,e){const t={},A=r(e,["config"]);return A!=null&&s(t,["config"],M3(n,A,t)),t}function I3(n,e){const t={},A=r(e,["name"]);return A!=null&&s(t,["name"],A),t}/**
181
+ */function Pd(o,e){const t={},n=r(e,["voiceName"]);return n!=null&&s(t,["voiceName"],n),t}function Bo(o,e){const t={},n=r(e,["prebuiltVoiceConfig"]);return n!=null&&s(t,["prebuiltVoiceConfig"],Pd(o,n)),t}function Nd(o,e){const t={},n=r(e,["speaker"]);n!=null&&s(t,["speaker"],n);const i=r(e,["voiceConfig"]);return i!=null&&s(t,["voiceConfig"],Bo(o,i)),t}function kd(o,e){const t={},n=r(e,["speakerVoiceConfigs"]);if(n!=null){let i=n;Array.isArray(i)&&(i=i.map(l=>Nd(o,l))),s(t,["speakerVoiceConfigs"],i)}return t}function Dd(o,e){const t={},n=r(e,["voiceConfig"]);n!=null&&s(t,["voiceConfig"],Bo(o,n));const i=r(e,["multiSpeakerVoiceConfig"]);i!=null&&s(t,["multiSpeakerVoiceConfig"],kd(o,i));const l=r(e,["languageCode"]);return l!=null&&s(t,["languageCode"],l),t}function Ld(o,e){const t={},n=r(e,["fps"]);n!=null&&s(t,["fps"],n);const i=r(e,["endOffset"]);i!=null&&s(t,["endOffset"],i);const l=r(e,["startOffset"]);return l!=null&&s(t,["startOffset"],l),t}function Vd(o,e){const t={};if(r(e,["displayName"])!==void 0)throw new Error("displayName parameter is not supported in Gemini API.");const n=r(e,["data"]);n!=null&&s(t,["data"],n);const i=r(e,["mimeType"]);return i!=null&&s(t,["mimeType"],i),t}function Fd(o,e){const t={};if(r(e,["displayName"])!==void 0)throw new Error("displayName parameter is not supported in Gemini API.");const n=r(e,["fileUri"]);n!=null&&s(t,["fileUri"],n);const i=r(e,["mimeType"]);return i!=null&&s(t,["mimeType"],i),t}function Ud(o,e){const t={},n=r(e,["videoMetadata"]);n!=null&&s(t,["videoMetadata"],Ld(o,n));const i=r(e,["thought"]);i!=null&&s(t,["thought"],i);const l=r(e,["inlineData"]);l!=null&&s(t,["inlineData"],Vd(o,l));const a=r(e,["fileData"]);a!=null&&s(t,["fileData"],Fd(o,a));const u=r(e,["thoughtSignature"]);u!=null&&s(t,["thoughtSignature"],u);const d=r(e,["codeExecutionResult"]);d!=null&&s(t,["codeExecutionResult"],d);const c=r(e,["executableCode"]);c!=null&&s(t,["executableCode"],c);const f=r(e,["functionCall"]);f!=null&&s(t,["functionCall"],f);const p=r(e,["functionResponse"]);p!=null&&s(t,["functionResponse"],p);const m=r(e,["text"]);return m!=null&&s(t,["text"],m),t}function bd(o,e){const t={},n=r(e,["parts"]);if(n!=null){let l=n;Array.isArray(l)&&(l=l.map(a=>Ud(o,a))),s(t,["parts"],l)}const i=r(e,["role"]);return i!=null&&s(t,["role"],i),t}function Gd(o,e){const t={},n=r(e,["behavior"]);n!=null&&s(t,["behavior"],n);const i=r(e,["description"]);i!=null&&s(t,["description"],i);const l=r(e,["name"]);l!=null&&s(t,["name"],l);const a=r(e,["parameters"]);a!=null&&s(t,["parameters"],a);const u=r(e,["response"]);return u!=null&&s(t,["response"],u),t}function Bd(o,e){const t={},n=r(e,["startTime"]);n!=null&&s(t,["startTime"],n);const i=r(e,["endTime"]);return i!=null&&s(t,["endTime"],i),t}function qd(o,e){const t={},n=r(e,["timeRangeFilter"]);return n!=null&&s(t,["timeRangeFilter"],Bd(o,n)),t}function $d(o,e){const t={},n=r(e,["mode"]);n!=null&&s(t,["mode"],n);const i=r(e,["dynamicThreshold"]);return i!=null&&s(t,["dynamicThreshold"],i),t}function Od(o,e){const t={},n=r(e,["dynamicRetrievalConfig"]);return n!=null&&s(t,["dynamicRetrievalConfig"],$d(o,n)),t}function Hd(){return{}}function Jd(o,e){const t={},n=r(e,["functionDeclarations"]);if(n!=null){let d=n;Array.isArray(d)&&(d=d.map(c=>Gd(o,c))),s(t,["functionDeclarations"],d)}if(r(e,["retrieval"])!==void 0)throw new Error("retrieval parameter is not supported in Gemini API.");const i=r(e,["googleSearch"]);i!=null&&s(t,["googleSearch"],qd(o,i));const l=r(e,["googleSearchRetrieval"]);if(l!=null&&s(t,["googleSearchRetrieval"],Od(o,l)),r(e,["enterpriseWebSearch"])!==void 0)throw new Error("enterpriseWebSearch parameter is not supported in Gemini API.");if(r(e,["googleMaps"])!==void 0)throw new Error("googleMaps parameter is not supported in Gemini API.");r(e,["urlContext"])!=null&&s(t,["urlContext"],Hd());const u=r(e,["codeExecution"]);return u!=null&&s(t,["codeExecution"],u),t}function Wd(o,e){const t={},n=r(e,["handle"]);if(n!=null&&s(t,["handle"],n),r(e,["transparent"])!==void 0)throw new Error("transparent parameter is not supported in Gemini API.");return t}function qo(){return{}}function Yd(o,e){const t={},n=r(e,["disabled"]);n!=null&&s(t,["disabled"],n);const i=r(e,["startOfSpeechSensitivity"]);i!=null&&s(t,["startOfSpeechSensitivity"],i);const l=r(e,["endOfSpeechSensitivity"]);l!=null&&s(t,["endOfSpeechSensitivity"],l);const a=r(e,["prefixPaddingMs"]);a!=null&&s(t,["prefixPaddingMs"],a);const u=r(e,["silenceDurationMs"]);return u!=null&&s(t,["silenceDurationMs"],u),t}function Zd(o,e){const t={},n=r(e,["automaticActivityDetection"]);n!=null&&s(t,["automaticActivityDetection"],Yd(o,n));const i=r(e,["activityHandling"]);i!=null&&s(t,["activityHandling"],i);const l=r(e,["turnCoverage"]);return l!=null&&s(t,["turnCoverage"],l),t}function zd(o,e){const t={},n=r(e,["targetTokens"]);return n!=null&&s(t,["targetTokens"],n),t}function Kd(o,e){const t={},n=r(e,["triggerTokens"]);n!=null&&s(t,["triggerTokens"],n);const i=r(e,["slidingWindow"]);return i!=null&&s(t,["slidingWindow"],zd(o,i)),t}function Xd(o,e){const t={},n=r(e,["proactiveAudio"]);return n!=null&&s(t,["proactiveAudio"],n),t}function Qd(o,e,t){const n={},i=r(e,["generationConfig"]);t!==void 0&&i!=null&&s(t,["setup","generationConfig"],i);const l=r(e,["responseModalities"]);t!==void 0&&l!=null&&s(t,["setup","generationConfig","responseModalities"],l);const a=r(e,["temperature"]);t!==void 0&&a!=null&&s(t,["setup","generationConfig","temperature"],a);const u=r(e,["topP"]);t!==void 0&&u!=null&&s(t,["setup","generationConfig","topP"],u);const d=r(e,["topK"]);t!==void 0&&d!=null&&s(t,["setup","generationConfig","topK"],d);const c=r(e,["maxOutputTokens"]);t!==void 0&&c!=null&&s(t,["setup","generationConfig","maxOutputTokens"],c);const f=r(e,["mediaResolution"]);t!==void 0&&f!=null&&s(t,["setup","generationConfig","mediaResolution"],f);const p=r(e,["seed"]);t!==void 0&&p!=null&&s(t,["setup","generationConfig","seed"],p);const m=r(e,["speechConfig"]);t!==void 0&&m!=null&&s(t,["setup","generationConfig","speechConfig"],Dd(o,Ct(o,m)));const h=r(e,["enableAffectiveDialog"]);t!==void 0&&h!=null&&s(t,["setup","generationConfig","enableAffectiveDialog"],h);const g=r(e,["systemInstruction"]);t!==void 0&&g!=null&&s(t,["setup","systemInstruction"],bd(o,K(o,g)));const v=r(e,["tools"]);if(t!==void 0&&v!=null){let V=Be(o,v);Array.isArray(V)&&(V=V.map(B=>Jd(o,Ge(o,B)))),s(t,["setup","tools"],V)}const E=r(e,["sessionResumption"]);t!==void 0&&E!=null&&s(t,["setup","sessionResumption"],Wd(o,E));const M=r(e,["inputAudioTranscription"]);t!==void 0&&M!=null&&s(t,["setup","inputAudioTranscription"],qo());const _=r(e,["outputAudioTranscription"]);t!==void 0&&_!=null&&s(t,["setup","outputAudioTranscription"],qo());const A=r(e,["realtimeInputConfig"]);t!==void 0&&A!=null&&s(t,["setup","realtimeInputConfig"],Zd(o,A));const R=r(e,["contextWindowCompression"]);t!==void 0&&R!=null&&s(t,["setup","contextWindowCompression"],Kd(o,R));const k=r(e,["proactivity"]);return t!==void 0&&k!=null&&s(t,["setup","proactivity"],Xd(o,k)),n}function jd(o,e){const t={},n=r(e,["model"]);n!=null&&s(t,["setup","model"],q(o,n));const i=r(e,["config"]);return i!=null&&s(t,["config"],Qd(o,i,t)),t}function ef(o,e,t){const n={},i=r(e,["expireTime"]);t!==void 0&&i!=null&&s(t,["expireTime"],i);const l=r(e,["newSessionExpireTime"]);t!==void 0&&l!=null&&s(t,["newSessionExpireTime"],l);const a=r(e,["uses"]);t!==void 0&&a!=null&&s(t,["uses"],a);const u=r(e,["liveConnectConstraints"]);t!==void 0&&u!=null&&s(t,["bidiGenerateContentSetup"],jd(o,u));const d=r(e,["lockAdditionalFields"]);return t!==void 0&&d!=null&&s(t,["fieldMask"],d),n}function tf(o,e){const t={},n=r(e,["config"]);return n!=null&&s(t,["config"],ef(o,n,t)),t}function nf(o,e){const t={},n=r(e,["name"]);return n!=null&&s(t,["name"],n),t}/**
212
182
  * @license
213
183
  * Copyright 2025 Google LLC
214
184
  * SPDX-License-Identifier: Apache-2.0
215
- */function D3(n){const e=[];for(const t in n)if(Object.prototype.hasOwnProperty.call(n,t)){const A=n[t];if(typeof A=="object"&&A!=null&&Object.keys(A).length>0){const i=Object.keys(A).map(o=>`${t}.${o}`);e.push(...i)}else e.push(t)}return e.join(",")}function F3(n,e){let t=null;const A=n.bidiGenerateContentSetup;if(typeof A=="object"&&A!==null&&"setup"in A){const o=A.setup;typeof o=="object"&&o!==null?(n.bidiGenerateContentSetup=o,t=o):delete n.bidiGenerateContentSetup}else A!==void 0&&delete n.bidiGenerateContentSetup;const i=n.fieldMask;if(t){const o=D3(t);if(Array.isArray(e==null?void 0:e.lockAdditionalFields)&&(e==null?void 0:e.lockAdditionalFields.length)===0)o?n.fieldMask=o:delete n.fieldMask;else if(e!=null&&e.lockAdditionalFields&&e.lockAdditionalFields.length>0&&i!==null&&Array.isArray(i)&&i.length>0){const a=["temperature","topK","topP","maxOutputTokens","responseModalities","seed","speechConfig"];let c=[];i.length>0&&(c=i.map(u=>a.includes(u)?`generationConfig.${u}`:u));const l=[];o&&l.push(o),c.length>0&&l.push(...c),l.length>0?n.fieldMask=l.join(","):delete n.fieldMask}else delete n.fieldMask}else i!==null&&Array.isArray(i)&&i.length>0?n.fieldMask=i.join(","):delete n.fieldMask;return n}class x3 extends le{constructor(e){super(),this.apiClient=e}async create(e){var t,A;let i,o="",a={};if(this.apiClient.isVertexAI())throw new Error("The client.tokens.create method is only supported by the Gemini Developer API.");{const c=y3(this.apiClient,e);o=Z("auth_tokens",c._url),a=c._query,delete c.config,delete c._url,delete c._query;const l=F3(c,e.config);return i=this.apiClient.request({path:o,queryParams:a,body:JSON.stringify(l),httpMethod:"POST",httpOptions:(t=e.config)===null||t===void 0?void 0:t.httpOptions,abortSignal:(A=e.config)===null||A===void 0?void 0:A.abortSignal}).then(u=>u.json()),i.then(u=>I3(this.apiClient,u))}}}/**
185
+ */function of(o){const e=[];for(const t in o)if(Object.prototype.hasOwnProperty.call(o,t)){const n=o[t];if(typeof n=="object"&&n!=null&&Object.keys(n).length>0){const i=Object.keys(n).map(l=>`${t}.${l}`);e.push(...i)}else e.push(t)}return e.join(",")}function rf(o,e){let t=null;const n=o.bidiGenerateContentSetup;if(typeof n=="object"&&n!==null&&"setup"in n){const l=n.setup;typeof l=="object"&&l!==null?(o.bidiGenerateContentSetup=l,t=l):delete o.bidiGenerateContentSetup}else n!==void 0&&delete o.bidiGenerateContentSetup;const i=o.fieldMask;if(t){const l=of(t);if(Array.isArray(e==null?void 0:e.lockAdditionalFields)&&(e==null?void 0:e.lockAdditionalFields.length)===0)l?o.fieldMask=l:delete o.fieldMask;else if(e!=null&&e.lockAdditionalFields&&e.lockAdditionalFields.length>0&&i!==null&&Array.isArray(i)&&i.length>0){const a=["temperature","topK","topP","maxOutputTokens","responseModalities","seed","speechConfig"];let u=[];i.length>0&&(u=i.map(c=>a.includes(c)?`generationConfig.${c}`:c));const d=[];l&&d.push(l),u.length>0&&d.push(...u),d.length>0?o.fieldMask=d.join(","):delete o.fieldMask}else delete o.fieldMask}else i!==null&&Array.isArray(i)&&i.length>0?o.fieldMask=i.join(","):delete o.fieldMask;return o}class sf extends Ae{constructor(e){super(),this.apiClient=e}async create(e){var t,n;let i,l="",a={};if(this.apiClient.isVertexAI())throw new Error("The client.tokens.create method is only supported by the Gemini Developer API.");{const u=tf(this.apiClient,e);l=I("auth_tokens",u._url),a=u._query,delete u.config,delete u._url,delete u._query;const d=rf(u,e.config);return i=this.apiClient.request({path:l,queryParams:a,body:JSON.stringify(d),httpMethod:"POST",httpOptions:(t=e.config)===null||t===void 0?void 0:t.httpOptions,abortSignal:(n=e.config)===null||n===void 0?void 0:n.abortSignal}).then(c=>c.json()),i.then(c=>nf(this.apiClient,c))}}}/**
216
186
  * @license
217
187
  * Copyright 2025 Google LLC
218
188
  * SPDX-License-Identifier: Apache-2.0
219
- */function v3(n,e){const t={},A=r(e,["name"]);A!=null&&s(t,["_url","name"],A);const i=r(e,["config"]);return i!=null&&s(t,["config"],i),t}function U3(n,e,t){const A={},i=r(e,["pageSize"]);t!==void 0&&i!=null&&s(t,["_query","pageSize"],i);const o=r(e,["pageToken"]);t!==void 0&&o!=null&&s(t,["_query","pageToken"],o);const a=r(e,["filter"]);return t!==void 0&&a!=null&&s(t,["_query","filter"],a),A}function Y3(n,e){const t={},A=r(e,["config"]);return A!=null&&s(t,["config"],U3(n,A,t)),t}function T3(n,e){const t={},A=r(e,["textInput"]);A!=null&&s(t,["textInput"],A);const i=r(e,["output"]);return i!=null&&s(t,["output"],i),t}function N3(n,e){const t={};if(r(e,["gcsUri"])!==void 0)throw new Error("gcsUri parameter is not supported in Gemini API.");const A=r(e,["examples"]);if(A!=null){let i=A;Array.isArray(i)&&(i=i.map(o=>T3(n,o))),s(t,["examples","examples"],i)}return t}function R3(n,e,t){const A={};if(r(e,["validationDataset"])!==void 0)throw new Error("validationDataset parameter is not supported in Gemini API.");const i=r(e,["tunedModelDisplayName"]);if(t!==void 0&&i!=null&&s(t,["displayName"],i),r(e,["description"])!==void 0)throw new Error("description parameter is not supported in Gemini API.");const o=r(e,["epochCount"]);t!==void 0&&o!=null&&s(t,["tuningTask","hyperparameters","epochCount"],o);const a=r(e,["learningRateMultiplier"]);if(a!=null&&s(A,["tuningTask","hyperparameters","learningRateMultiplier"],a),r(e,["exportLastCheckpointOnly"])!==void 0)throw new Error("exportLastCheckpointOnly parameter is not supported in Gemini API.");if(r(e,["adapterSize"])!==void 0)throw new Error("adapterSize parameter is not supported in Gemini API.");const c=r(e,["batchSize"]);t!==void 0&&c!=null&&s(t,["tuningTask","hyperparameters","batchSize"],c);const l=r(e,["learningRate"]);return t!==void 0&&l!=null&&s(t,["tuningTask","hyperparameters","learningRate"],l),A}function z3(n,e){const t={},A=r(e,["baseModel"]);A!=null&&s(t,["baseModel"],A);const i=r(e,["trainingDataset"]);i!=null&&s(t,["tuningTask","trainingData"],N3(n,i));const o=r(e,["config"]);return o!=null&&s(t,["config"],R3(n,o,t)),t}function S3(n,e){const t={},A=r(e,["name"]);A!=null&&s(t,["_url","name"],A);const i=r(e,["config"]);return i!=null&&s(t,["config"],i),t}function G3(n,e,t){const A={},i=r(e,["pageSize"]);t!==void 0&&i!=null&&s(t,["_query","pageSize"],i);const o=r(e,["pageToken"]);t!==void 0&&o!=null&&s(t,["_query","pageToken"],o);const a=r(e,["filter"]);return t!==void 0&&a!=null&&s(t,["_query","filter"],a),A}function k3(n,e){const t={},A=r(e,["config"]);return A!=null&&s(t,["config"],G3(n,A,t)),t}function P3(n,e,t){const A={},i=r(e,["gcsUri"]);if(t!==void 0&&i!=null&&s(t,["supervisedTuningSpec","trainingDatasetUri"],i),r(e,["examples"])!==void 0)throw new Error("examples parameter is not supported in Vertex AI.");return A}function J3(n,e){const t={},A=r(e,["gcsUri"]);return A!=null&&s(t,["validationDatasetUri"],A),t}function H3(n,e,t){const A={},i=r(e,["validationDataset"]);t!==void 0&&i!=null&&s(t,["supervisedTuningSpec"],J3(n,i));const o=r(e,["tunedModelDisplayName"]);t!==void 0&&o!=null&&s(t,["tunedModelDisplayName"],o);const a=r(e,["description"]);t!==void 0&&a!=null&&s(t,["description"],a);const c=r(e,["epochCount"]);t!==void 0&&c!=null&&s(t,["supervisedTuningSpec","hyperParameters","epochCount"],c);const l=r(e,["learningRateMultiplier"]);t!==void 0&&l!=null&&s(t,["supervisedTuningSpec","hyperParameters","learningRateMultiplier"],l);const u=r(e,["exportLastCheckpointOnly"]);t!==void 0&&u!=null&&s(t,["supervisedTuningSpec","exportLastCheckpointOnly"],u);const B=r(e,["adapterSize"]);if(t!==void 0&&B!=null&&s(t,["supervisedTuningSpec","hyperParameters","adapterSize"],B),r(e,["batchSize"])!==void 0)throw new Error("batchSize parameter is not supported in Vertex AI.");if(r(e,["learningRate"])!==void 0)throw new Error("learningRate parameter is not supported in Vertex AI.");return A}function b3(n,e){const t={},A=r(e,["baseModel"]);A!=null&&s(t,["baseModel"],A);const i=r(e,["trainingDataset"]);i!=null&&s(t,["supervisedTuningSpec","trainingDatasetUri"],P3(n,i,t));const o=r(e,["config"]);return o!=null&&s(t,["config"],H3(n,o,t)),t}function V3(n,e){const t={},A=r(e,["name"]);A!=null&&s(t,["model"],A);const i=r(e,["name"]);return i!=null&&s(t,["endpoint"],i),t}function yr(n,e){const t={},A=r(e,["name"]);A!=null&&s(t,["name"],A);const i=r(e,["state"]);i!=null&&s(t,["state"],Ho(n,i));const o=r(e,["createTime"]);o!=null&&s(t,["createTime"],o);const a=r(e,["tuningTask","startTime"]);a!=null&&s(t,["startTime"],a);const c=r(e,["tuningTask","completeTime"]);c!=null&&s(t,["endTime"],c);const l=r(e,["updateTime"]);l!=null&&s(t,["updateTime"],l);const u=r(e,["description"]);u!=null&&s(t,["description"],u);const B=r(e,["baseModel"]);B!=null&&s(t,["baseModel"],B);const d=r(e,["_self"]);d!=null&&s(t,["tunedModel"],V3(n,d));const f=r(e,["distillationSpec"]);f!=null&&s(t,["distillationSpec"],f);const w=r(e,["experiment"]);w!=null&&s(t,["experiment"],w);const y=r(e,["labels"]);y!=null&&s(t,["labels"],y);const F=r(e,["pipelineJob"]);F!=null&&s(t,["pipelineJob"],F);const R=r(e,["serviceAccount"]);R!=null&&s(t,["serviceAccount"],R);const S=r(e,["tunedModelDisplayName"]);return S!=null&&s(t,["tunedModelDisplayName"],S),t}function L3(n,e){const t={},A=r(e,["nextPageToken"]);A!=null&&s(t,["nextPageToken"],A);const i=r(e,["tunedModels"]);if(i!=null){let o=i;Array.isArray(o)&&(o=o.map(a=>yr(n,a))),s(t,["tuningJobs"],o)}return t}function W3(n,e){const t={},A=r(e,["name"]);A!=null&&s(t,["name"],A);const i=r(e,["metadata"]);i!=null&&s(t,["metadata"],i);const o=r(e,["done"]);o!=null&&s(t,["done"],o);const a=r(e,["error"]);return a!=null&&s(t,["error"],a),t}function j3(n,e){const t={},A=r(e,["checkpointId"]);A!=null&&s(t,["checkpointId"],A);const i=r(e,["epoch"]);i!=null&&s(t,["epoch"],i);const o=r(e,["step"]);o!=null&&s(t,["step"],o);const a=r(e,["endpoint"]);return a!=null&&s(t,["endpoint"],a),t}function _3(n,e){const t={},A=r(e,["model"]);A!=null&&s(t,["model"],A);const i=r(e,["endpoint"]);i!=null&&s(t,["endpoint"],i);const o=r(e,["checkpoints"]);if(o!=null){let a=o;Array.isArray(a)&&(a=a.map(c=>j3(n,c))),s(t,["checkpoints"],a)}return t}function Pn(n,e){const t={},A=r(e,["name"]);A!=null&&s(t,["name"],A);const i=r(e,["state"]);i!=null&&s(t,["state"],Ho(n,i));const o=r(e,["createTime"]);o!=null&&s(t,["createTime"],o);const a=r(e,["startTime"]);a!=null&&s(t,["startTime"],a);const c=r(e,["endTime"]);c!=null&&s(t,["endTime"],c);const l=r(e,["updateTime"]);l!=null&&s(t,["updateTime"],l);const u=r(e,["error"]);u!=null&&s(t,["error"],u);const B=r(e,["description"]);B!=null&&s(t,["description"],B);const d=r(e,["baseModel"]);d!=null&&s(t,["baseModel"],d);const f=r(e,["tunedModel"]);f!=null&&s(t,["tunedModel"],_3(n,f));const w=r(e,["supervisedTuningSpec"]);w!=null&&s(t,["supervisedTuningSpec"],w);const y=r(e,["tuningDataStats"]);y!=null&&s(t,["tuningDataStats"],y);const F=r(e,["encryptionSpec"]);F!=null&&s(t,["encryptionSpec"],F);const R=r(e,["partnerModelTuningSpec"]);R!=null&&s(t,["partnerModelTuningSpec"],R);const S=r(e,["distillationSpec"]);S!=null&&s(t,["distillationSpec"],S);const M=r(e,["experiment"]);M!=null&&s(t,["experiment"],M);const T=r(e,["labels"]);T!=null&&s(t,["labels"],T);const D=r(e,["pipelineJob"]);D!=null&&s(t,["pipelineJob"],D);const I=r(e,["serviceAccount"]);I!=null&&s(t,["serviceAccount"],I);const U=r(e,["tunedModelDisplayName"]);return U!=null&&s(t,["tunedModelDisplayName"],U),t}function X3(n,e){const t={},A=r(e,["nextPageToken"]);A!=null&&s(t,["nextPageToken"],A);const i=r(e,["tuningJobs"]);if(i!=null){let o=i;Array.isArray(o)&&(o=o.map(a=>Pn(n,a))),s(t,["tuningJobs"],o)}return t}/**
189
+ */function lf(o,e){const t={},n=r(e,["name"]);n!=null&&s(t,["_url","name"],n);const i=r(e,["config"]);return i!=null&&s(t,["config"],i),t}function af(o,e,t){const n={},i=r(e,["pageSize"]);t!==void 0&&i!=null&&s(t,["_query","pageSize"],i);const l=r(e,["pageToken"]);t!==void 0&&l!=null&&s(t,["_query","pageToken"],l);const a=r(e,["filter"]);return t!==void 0&&a!=null&&s(t,["_query","filter"],a),n}function uf(o,e){const t={},n=r(e,["config"]);return n!=null&&s(t,["config"],af(o,n,t)),t}function cf(o,e){const t={},n=r(e,["textInput"]);n!=null&&s(t,["textInput"],n);const i=r(e,["output"]);return i!=null&&s(t,["output"],i),t}function df(o,e){const t={};if(r(e,["gcsUri"])!==void 0)throw new Error("gcsUri parameter is not supported in Gemini API.");const n=r(e,["examples"]);if(n!=null){let i=n;Array.isArray(i)&&(i=i.map(l=>cf(o,l))),s(t,["examples","examples"],i)}return t}function ff(o,e,t){const n={};if(r(e,["validationDataset"])!==void 0)throw new Error("validationDataset parameter is not supported in Gemini API.");const i=r(e,["tunedModelDisplayName"]);if(t!==void 0&&i!=null&&s(t,["displayName"],i),r(e,["description"])!==void 0)throw new Error("description parameter is not supported in Gemini API.");const l=r(e,["epochCount"]);t!==void 0&&l!=null&&s(t,["tuningTask","hyperparameters","epochCount"],l);const a=r(e,["learningRateMultiplier"]);if(a!=null&&s(n,["tuningTask","hyperparameters","learningRateMultiplier"],a),r(e,["exportLastCheckpointOnly"])!==void 0)throw new Error("exportLastCheckpointOnly parameter is not supported in Gemini API.");if(r(e,["adapterSize"])!==void 0)throw new Error("adapterSize parameter is not supported in Gemini API.");const u=r(e,["batchSize"]);t!==void 0&&u!=null&&s(t,["tuningTask","hyperparameters","batchSize"],u);const d=r(e,["learningRate"]);return t!==void 0&&d!=null&&s(t,["tuningTask","hyperparameters","learningRate"],d),n}function pf(o,e){const t={},n=r(e,["baseModel"]);n!=null&&s(t,["baseModel"],n);const i=r(e,["trainingDataset"]);i!=null&&s(t,["tuningTask","trainingData"],df(o,i));const l=r(e,["config"]);return l!=null&&s(t,["config"],ff(o,l,t)),t}function mf(o,e){const t={},n=r(e,["name"]);n!=null&&s(t,["_url","name"],n);const i=r(e,["config"]);return i!=null&&s(t,["config"],i),t}function hf(o,e,t){const n={},i=r(e,["pageSize"]);t!==void 0&&i!=null&&s(t,["_query","pageSize"],i);const l=r(e,["pageToken"]);t!==void 0&&l!=null&&s(t,["_query","pageToken"],l);const a=r(e,["filter"]);return t!==void 0&&a!=null&&s(t,["_query","filter"],a),n}function gf(o,e){const t={},n=r(e,["config"]);return n!=null&&s(t,["config"],hf(o,n,t)),t}function yf(o,e,t){const n={},i=r(e,["gcsUri"]);if(t!==void 0&&i!=null&&s(t,["supervisedTuningSpec","trainingDatasetUri"],i),r(e,["examples"])!==void 0)throw new Error("examples parameter is not supported in Vertex AI.");return n}function vf(o,e){const t={},n=r(e,["gcsUri"]);return n!=null&&s(t,["validationDatasetUri"],n),t}function Tf(o,e,t){const n={},i=r(e,["validationDataset"]);t!==void 0&&i!=null&&s(t,["supervisedTuningSpec"],vf(o,i));const l=r(e,["tunedModelDisplayName"]);t!==void 0&&l!=null&&s(t,["tunedModelDisplayName"],l);const a=r(e,["description"]);t!==void 0&&a!=null&&s(t,["description"],a);const u=r(e,["epochCount"]);t!==void 0&&u!=null&&s(t,["supervisedTuningSpec","hyperParameters","epochCount"],u);const d=r(e,["learningRateMultiplier"]);t!==void 0&&d!=null&&s(t,["supervisedTuningSpec","hyperParameters","learningRateMultiplier"],d);const c=r(e,["exportLastCheckpointOnly"]);t!==void 0&&c!=null&&s(t,["supervisedTuningSpec","exportLastCheckpointOnly"],c);const f=r(e,["adapterSize"]);if(t!==void 0&&f!=null&&s(t,["supervisedTuningSpec","hyperParameters","adapterSize"],f),r(e,["batchSize"])!==void 0)throw new Error("batchSize parameter is not supported in Vertex AI.");if(r(e,["learningRate"])!==void 0)throw new Error("learningRate parameter is not supported in Vertex AI.");return n}function Cf(o,e){const t={},n=r(e,["baseModel"]);n!=null&&s(t,["baseModel"],n);const i=r(e,["trainingDataset"]);i!=null&&s(t,["supervisedTuningSpec","trainingDatasetUri"],yf(o,i,t));const l=r(e,["config"]);return l!=null&&s(t,["config"],Tf(o,l,t)),t}function _f(o,e){const t={},n=r(e,["name"]);n!=null&&s(t,["model"],n);const i=r(e,["name"]);return i!=null&&s(t,["endpoint"],i),t}function $o(o,e){const t={},n=r(e,["name"]);n!=null&&s(t,["name"],n);const i=r(e,["state"]);i!=null&&s(t,["state"],io(o,i));const l=r(e,["createTime"]);l!=null&&s(t,["createTime"],l);const a=r(e,["tuningTask","startTime"]);a!=null&&s(t,["startTime"],a);const u=r(e,["tuningTask","completeTime"]);u!=null&&s(t,["endTime"],u);const d=r(e,["updateTime"]);d!=null&&s(t,["updateTime"],d);const c=r(e,["description"]);c!=null&&s(t,["description"],c);const f=r(e,["baseModel"]);f!=null&&s(t,["baseModel"],f);const p=r(e,["_self"]);p!=null&&s(t,["tunedModel"],_f(o,p));const m=r(e,["distillationSpec"]);m!=null&&s(t,["distillationSpec"],m);const h=r(e,["experiment"]);h!=null&&s(t,["experiment"],h);const g=r(e,["labels"]);g!=null&&s(t,["labels"],g);const v=r(e,["pipelineJob"]);v!=null&&s(t,["pipelineJob"],v);const E=r(e,["serviceAccount"]);E!=null&&s(t,["serviceAccount"],E);const M=r(e,["tunedModelDisplayName"]);return M!=null&&s(t,["tunedModelDisplayName"],M),t}function Ef(o,e){const t={},n=r(e,["nextPageToken"]);n!=null&&s(t,["nextPageToken"],n);const i=r(e,["tunedModels"]);if(i!=null){let l=i;Array.isArray(l)&&(l=l.map(a=>$o(o,a))),s(t,["tuningJobs"],l)}return t}function Sf(o,e){const t={},n=r(e,["name"]);n!=null&&s(t,["name"],n);const i=r(e,["metadata"]);i!=null&&s(t,["metadata"],i);const l=r(e,["done"]);l!=null&&s(t,["done"],l);const a=r(e,["error"]);return a!=null&&s(t,["error"],a),t}function xf(o,e){const t={},n=r(e,["checkpointId"]);n!=null&&s(t,["checkpointId"],n);const i=r(e,["epoch"]);i!=null&&s(t,["epoch"],i);const l=r(e,["step"]);l!=null&&s(t,["step"],l);const a=r(e,["endpoint"]);return a!=null&&s(t,["endpoint"],a),t}function Af(o,e){const t={},n=r(e,["model"]);n!=null&&s(t,["model"],n);const i=r(e,["endpoint"]);i!=null&&s(t,["endpoint"],i);const l=r(e,["checkpoints"]);if(l!=null){let a=l;Array.isArray(a)&&(a=a.map(u=>xf(o,u))),s(t,["checkpoints"],a)}return t}function Nt(o,e){const t={},n=r(e,["name"]);n!=null&&s(t,["name"],n);const i=r(e,["state"]);i!=null&&s(t,["state"],io(o,i));const l=r(e,["createTime"]);l!=null&&s(t,["createTime"],l);const a=r(e,["startTime"]);a!=null&&s(t,["startTime"],a);const u=r(e,["endTime"]);u!=null&&s(t,["endTime"],u);const d=r(e,["updateTime"]);d!=null&&s(t,["updateTime"],d);const c=r(e,["error"]);c!=null&&s(t,["error"],c);const f=r(e,["description"]);f!=null&&s(t,["description"],f);const p=r(e,["baseModel"]);p!=null&&s(t,["baseModel"],p);const m=r(e,["tunedModel"]);m!=null&&s(t,["tunedModel"],Af(o,m));const h=r(e,["supervisedTuningSpec"]);h!=null&&s(t,["supervisedTuningSpec"],h);const g=r(e,["tuningDataStats"]);g!=null&&s(t,["tuningDataStats"],g);const v=r(e,["encryptionSpec"]);v!=null&&s(t,["encryptionSpec"],v);const E=r(e,["partnerModelTuningSpec"]);E!=null&&s(t,["partnerModelTuningSpec"],E);const M=r(e,["distillationSpec"]);M!=null&&s(t,["distillationSpec"],M);const _=r(e,["experiment"]);_!=null&&s(t,["experiment"],_);const A=r(e,["labels"]);A!=null&&s(t,["labels"],A);const R=r(e,["pipelineJob"]);R!=null&&s(t,["pipelineJob"],R);const k=r(e,["serviceAccount"]);k!=null&&s(t,["serviceAccount"],k);const V=r(e,["tunedModelDisplayName"]);return V!=null&&s(t,["tunedModelDisplayName"],V),t}function Mf(o,e){const t={},n=r(e,["nextPageToken"]);n!=null&&s(t,["nextPageToken"],n);const i=r(e,["tuningJobs"]);if(i!=null){let l=i;Array.isArray(l)&&(l=l.map(a=>Nt(o,a))),s(t,["tuningJobs"],l)}return t}/**
220
190
  * @license
221
191
  * Copyright 2025 Google LLC
222
192
  * SPDX-License-Identifier: Apache-2.0
223
- */class O3 extends le{constructor(e){super(),this.apiClient=e,this.get=async t=>await this.getInternal(t),this.list=async(t={})=>new xt(ge.PAGED_ITEM_TUNING_JOBS,A=>this.listInternal(A),await this.listInternal(t),t),this.tune=async t=>{if(this.apiClient.isVertexAI())return await this.tuneInternal(t);{const A=await this.tuneMldevInternal(t);let i="";return A.metadata!==void 0&&A.metadata.tunedModel!==void 0?i=A.metadata.tunedModel:A.name!==void 0&&A.name.includes("/operations/")&&(i=A.name.split("/operations/")[0]),{name:i,state:In.JOB_STATE_QUEUED}}}}async getInternal(e){var t,A,i,o;let a,c="",l={};if(this.apiClient.isVertexAI()){const u=S3(this.apiClient,e);return c=Z("{name}",u._url),l=u._query,delete u.config,delete u._url,delete u._query,a=this.apiClient.request({path:c,queryParams:l,body:JSON.stringify(u),httpMethod:"GET",httpOptions:(t=e.config)===null||t===void 0?void 0:t.httpOptions,abortSignal:(A=e.config)===null||A===void 0?void 0:A.abortSignal}).then(B=>B.json()),a.then(B=>Pn(this.apiClient,B))}else{const u=v3(this.apiClient,e);return c=Z("{name}",u._url),l=u._query,delete u.config,delete u._url,delete u._query,a=this.apiClient.request({path:c,queryParams:l,body:JSON.stringify(u),httpMethod:"GET",httpOptions:(i=e.config)===null||i===void 0?void 0:i.httpOptions,abortSignal:(o=e.config)===null||o===void 0?void 0:o.abortSignal}).then(B=>B.json()),a.then(B=>yr(this.apiClient,B))}}async listInternal(e){var t,A,i,o;let a,c="",l={};if(this.apiClient.isVertexAI()){const u=k3(this.apiClient,e);return c=Z("tuningJobs",u._url),l=u._query,delete u.config,delete u._url,delete u._query,a=this.apiClient.request({path:c,queryParams:l,body:JSON.stringify(u),httpMethod:"GET",httpOptions:(t=e.config)===null||t===void 0?void 0:t.httpOptions,abortSignal:(A=e.config)===null||A===void 0?void 0:A.abortSignal}).then(B=>B.json()),a.then(B=>{const d=X3(this.apiClient,B),f=new vo;return Object.assign(f,d),f})}else{const u=Y3(this.apiClient,e);return c=Z("tunedModels",u._url),l=u._query,delete u.config,delete u._url,delete u._query,a=this.apiClient.request({path:c,queryParams:l,body:JSON.stringify(u),httpMethod:"GET",httpOptions:(i=e.config)===null||i===void 0?void 0:i.httpOptions,abortSignal:(o=e.config)===null||o===void 0?void 0:o.abortSignal}).then(B=>B.json()),a.then(B=>{const d=L3(this.apiClient,B),f=new vo;return Object.assign(f,d),f})}}async tuneInternal(e){var t,A;let i,o="",a={};if(this.apiClient.isVertexAI()){const c=b3(this.apiClient,e);return o=Z("tuningJobs",c._url),a=c._query,delete c.config,delete c._url,delete c._query,i=this.apiClient.request({path:o,queryParams:a,body:JSON.stringify(c),httpMethod:"POST",httpOptions:(t=e.config)===null||t===void 0?void 0:t.httpOptions,abortSignal:(A=e.config)===null||A===void 0?void 0:A.abortSignal}).then(l=>l.json()),i.then(l=>Pn(this.apiClient,l))}else throw new Error("This method is only supported by the Vertex AI.")}async tuneMldevInternal(e){var t,A;let i,o="",a={};if(this.apiClient.isVertexAI())throw new Error("This method is only supported by the Gemini Developer API.");{const c=z3(this.apiClient,e);return o=Z("tunedModels",c._url),a=c._query,delete c.config,delete c._url,delete c._query,i=this.apiClient.request({path:o,queryParams:a,body:JSON.stringify(c),httpMethod:"POST",httpOptions:(t=e.config)===null||t===void 0?void 0:t.httpOptions,abortSignal:(A=e.config)===null||A===void 0?void 0:A.abortSignal}).then(l=>l.json()),i.then(l=>W3(this.apiClient,l))}}}/**
193
+ */class If extends Ae{constructor(e){super(),this.apiClient=e,this.get=async t=>await this.getInternal(t),this.list=async(t={})=>new nt(Re.PAGED_ITEM_TUNING_JOBS,n=>this.listInternal(n),await this.listInternal(t),t),this.tune=async t=>{if(this.apiClient.isVertexAI())return await this.tuneInternal(t);{const n=await this.tuneMldevInternal(t);let i="";return n.metadata!==void 0&&n.metadata.tunedModel!==void 0?i=n.metadata.tunedModel:n.name!==void 0&&n.name.includes("/operations/")&&(i=n.name.split("/operations/")[0]),{name:i,state:yt.JOB_STATE_QUEUED}}}}async getInternal(e){var t,n,i,l;let a,u="",d={};if(this.apiClient.isVertexAI()){const c=mf(this.apiClient,e);return u=I("{name}",c._url),d=c._query,delete c.config,delete c._url,delete c._query,a=this.apiClient.request({path:u,queryParams:d,body:JSON.stringify(c),httpMethod:"GET",httpOptions:(t=e.config)===null||t===void 0?void 0:t.httpOptions,abortSignal:(n=e.config)===null||n===void 0?void 0:n.abortSignal}).then(f=>f.json()),a.then(f=>Nt(this.apiClient,f))}else{const c=lf(this.apiClient,e);return u=I("{name}",c._url),d=c._query,delete c.config,delete c._url,delete c._query,a=this.apiClient.request({path:u,queryParams:d,body:JSON.stringify(c),httpMethod:"GET",httpOptions:(i=e.config)===null||i===void 0?void 0:i.httpOptions,abortSignal:(l=e.config)===null||l===void 0?void 0:l.abortSignal}).then(f=>f.json()),a.then(f=>$o(this.apiClient,f))}}async listInternal(e){var t,n,i,l;let a,u="",d={};if(this.apiClient.isVertexAI()){const c=gf(this.apiClient,e);return u=I("tuningJobs",c._url),d=c._query,delete c.config,delete c._url,delete c._query,a=this.apiClient.request({path:u,queryParams:d,body:JSON.stringify(c),httpMethod:"GET",httpOptions:(t=e.config)===null||t===void 0?void 0:t.httpOptions,abortSignal:(n=e.config)===null||n===void 0?void 0:n.abortSignal}).then(f=>f.json()),a.then(f=>{const p=Mf(this.apiClient,f),m=new Wn;return Object.assign(m,p),m})}else{const c=uf(this.apiClient,e);return u=I("tunedModels",c._url),d=c._query,delete c.config,delete c._url,delete c._query,a=this.apiClient.request({path:u,queryParams:d,body:JSON.stringify(c),httpMethod:"GET",httpOptions:(i=e.config)===null||i===void 0?void 0:i.httpOptions,abortSignal:(l=e.config)===null||l===void 0?void 0:l.abortSignal}).then(f=>f.json()),a.then(f=>{const p=Ef(this.apiClient,f),m=new Wn;return Object.assign(m,p),m})}}async tuneInternal(e){var t,n;let i,l="",a={};if(this.apiClient.isVertexAI()){const u=Cf(this.apiClient,e);return l=I("tuningJobs",u._url),a=u._query,delete u.config,delete u._url,delete u._query,i=this.apiClient.request({path:l,queryParams:a,body:JSON.stringify(u),httpMethod:"POST",httpOptions:(t=e.config)===null||t===void 0?void 0:t.httpOptions,abortSignal:(n=e.config)===null||n===void 0?void 0:n.abortSignal}).then(d=>d.json()),i.then(d=>Nt(this.apiClient,d))}else throw new Error("This method is only supported by the Vertex AI.")}async tuneMldevInternal(e){var t,n;let i,l="",a={};if(this.apiClient.isVertexAI())throw new Error("This method is only supported by the Gemini Developer API.");{const u=pf(this.apiClient,e);return l=I("tunedModels",u._url),a=u._query,delete u.config,delete u._url,delete u._query,i=this.apiClient.request({path:l,queryParams:a,body:JSON.stringify(u),httpMethod:"POST",httpOptions:(t=e.config)===null||t===void 0?void 0:t.httpOptions,abortSignal:(n=e.config)===null||n===void 0?void 0:n.abortSignal}).then(d=>d.json()),i.then(d=>Sf(this.apiClient,d))}}}/**
224
194
  * @license
225
195
  * Copyright 2025 Google LLC
226
196
  * SPDX-License-Identifier: Apache-2.0
227
- */class K3{async download(e,t){throw new Error("Download to file is not supported in the browser, please use a browser compliant download like an <a> tag.")}}const Z3=1024*1024*8,q3=3,$3=1e3,eQ=2,Jn="x-goog-upload-status";async function tQ(n,e,t){var A,i,o;let a=0,c=0,l=new Dn(new Response),u="upload";for(a=n.size;c<a;){const d=Math.min(Z3,a-c),f=n.slice(c,c+d);c+d>=a&&(u+=", finalize");let w=0,y=$3;for(;w<q3&&(l=await t.request({path:"",body:f,httpMethod:"POST",httpOptions:{apiVersion:"",baseUrl:e,headers:{"X-Goog-Upload-Command":u,"X-Goog-Upload-Offset":String(c),"Content-Length":String(d)}}}),!(!((A=l==null?void 0:l.headers)===null||A===void 0)&&A[Jn]));)w++,await AQ(y),y=y*eQ;if(c+=d,((i=l==null?void 0:l.headers)===null||i===void 0?void 0:i[Jn])!=="active")break;if(a<=c)throw new Error("All content has been uploaded, but the upload status is not finalized.")}const B=await(l==null?void 0:l.json());if(((o=l==null?void 0:l.headers)===null||o===void 0?void 0:o[Jn])!=="final")throw new Error("Failed to upload file: Upload status is not finalized.");return B.file}async function nQ(n){return{size:n.size,type:n.type}}function AQ(n){return new Promise(e=>setTimeout(e,n))}class iQ{async upload(e,t,A){if(typeof e=="string")throw new Error("File path is not supported in browser uploader.");return await tQ(e,t,A)}async stat(e){if(typeof e=="string")throw new Error("File path is not supported in browser uploader.");return await nQ(e)}}/**
197
+ */class Rf{async download(e,t){throw new Error("Download to file is not supported in the browser, please use a browser compliant download like an <a> tag.")}}const wf=1024*1024*8,Pf=3,Nf=1e3,kf=2,kt="x-goog-upload-status";async function Df(o,e,t){var n,i,l;let a=0,u=0,d=new vt(new Response),c="upload";for(a=o.size;u<a;){const p=Math.min(wf,a-u),m=o.slice(u,u+p);u+p>=a&&(c+=", finalize");let h=0,g=Nf;for(;h<Pf&&(d=await t.request({path:"",body:m,httpMethod:"POST",httpOptions:{apiVersion:"",baseUrl:e,headers:{"X-Goog-Upload-Command":c,"X-Goog-Upload-Offset":String(u),"Content-Length":String(p)}}}),!(!((n=d==null?void 0:d.headers)===null||n===void 0)&&n[kt]));)h++,await Vf(g),g=g*kf;if(u+=p,((i=d==null?void 0:d.headers)===null||i===void 0?void 0:i[kt])!=="active")break;if(a<=u)throw new Error("All content has been uploaded, but the upload status is not finalized.")}const f=await(d==null?void 0:d.json());if(((l=d==null?void 0:d.headers)===null||l===void 0?void 0:l[kt])!=="final")throw new Error("Failed to upload file: Upload status is not finalized.");return f.file}async function Lf(o){return{size:o.size,type:o.type}}function Vf(o){return new Promise(e=>setTimeout(e,o))}class Ff{async upload(e,t,n){if(typeof e=="string")throw new Error("File path is not supported in browser uploader.");return await Df(e,t,n)}async stat(e){if(typeof e=="string")throw new Error("File path is not supported in browser uploader.");return await Lf(e)}}/**
228
198
  * @license
229
199
  * Copyright 2025 Google LLC
230
200
  * SPDX-License-Identifier: Apache-2.0
231
- */class oQ{create(e,t,A){return new rQ(e,t,A)}}class rQ{constructor(e,t,A){this.url=e,this.headers=t,this.callbacks=A}connect(){this.ws=new WebSocket(this.url),this.ws.onopen=this.callbacks.onopen,this.ws.onerror=this.callbacks.onerror,this.ws.onclose=this.callbacks.onclose,this.ws.onmessage=this.callbacks.onmessage}send(e){if(this.ws===void 0)throw new Error("WebSocket is not connected");this.ws.send(e)}close(){if(this.ws===void 0)throw new Error("WebSocket is not connected");this.ws.close()}}/**
201
+ */class Uf{create(e,t,n){return new bf(e,t,n)}}class bf{constructor(e,t,n){this.url=e,this.headers=t,this.callbacks=n}connect(){this.ws=new WebSocket(this.url),this.ws.onopen=this.callbacks.onopen,this.ws.onerror=this.callbacks.onerror,this.ws.onclose=this.callbacks.onclose,this.ws.onmessage=this.callbacks.onmessage}send(e){if(this.ws===void 0)throw new Error("WebSocket is not connected");this.ws.send(e)}close(){if(this.ws===void 0)throw new Error("WebSocket is not connected");this.ws.close()}}/**
232
202
  * @license
233
203
  * Copyright 2025 Google LLC
234
204
  * SPDX-License-Identifier: Apache-2.0
235
- */const Ir="x-goog-api-key";class sQ{constructor(e){this.apiKey=e}async addAuthHeaders(e){if(e.get(Ir)===null){if(this.apiKey.startsWith("auth_tokens/"))throw new Error("Ephemeral tokens are only supported by the live API.");if(!this.apiKey)throw new Error("API key is missing. Please provide a valid API key.");e.append(Ir,this.apiKey)}}}/**
205
+ */const Oo="x-goog-api-key";class Gf{constructor(e){this.apiKey=e}async addAuthHeaders(e){if(e.get(Oo)===null){if(this.apiKey.startsWith("auth_tokens/"))throw new Error("Ephemeral tokens are only supported by the live API.");if(!this.apiKey)throw new Error("API key is missing. Please provide a valid API key.");e.append(Oo,this.apiKey)}}}/**
236
206
  * @license
237
207
  * Copyright 2025 Google LLC
238
208
  * SPDX-License-Identifier: Apache-2.0
239
- */const aQ="gl-node/";class cQ{constructor(e){var t;if(e.apiKey==null)throw new Error("An API Key must be set when running in a browser");if(e.project||e.location)throw new Error("Vertex AI project based authentication is not supported on browser runtimes. Please do not provide a project or location.");this.vertexai=(t=e.vertexai)!==null&&t!==void 0?t:!1,this.apiKey=e.apiKey;const A=du(e,void 0,void 0);A&&(e.httpOptions?e.httpOptions.baseUrl=A:e.httpOptions={baseUrl:A}),this.apiVersion=e.apiVersion;const i=new sQ(this.apiKey);this.apiClient=new yf({auth:i,apiVersion:this.apiVersion,apiKey:this.apiKey,vertexai:this.vertexai,httpOptions:e.httpOptions,userAgentExtra:aQ+"web",uploader:new iQ,downloader:new K3}),this.models=new Hf(this.apiClient),this.live=new Sf(this.apiClient,i,new oQ),this.chats=new JB(this.models,this.apiClient),this.caches=new GB(this.apiClient),this.files=new $B(this.apiClient),this.operations=new qf(this.apiClient),this.authTokens=new x3(this.apiClient),this.tunings=new O3(this.apiClient)}}const Hn=[{id:"bp1",name:"Order to Cash",capabilities:[{id:"cap1",name:"Order Management",cycles:[{id:"cyc1",name:"Standard Order Processing",type:"cycle",practices:[{id:"pra1",name:"Validate Customer Credit",type:"practice"},{id:"pra3",name:"Check Inventory Availability",type:"practice"}]},{id:"cyc2",name:"Returns Management",type:"cycle",practices:[{id:"pra4",name:"Issue Return Material Auth",type:"practice"}]}]},{id:"cap2",name:"Invoicing & Collections",cycles:[{id:"cyc3",name:"Automated Billing Cycle",type:"cycle",practices:[]}]}]},{id:"bp2",name:"Hire to Retire",capabilities:[{id:"cap3",name:"Talent Acquisition",cycles:[{id:"cyc4",name:"Recruitment Funnel",type:"cycle",practices:[{id:"pra2",name:"Interview Evaluation",type:"practice"},{id:"pra5",name:"Background Verification",type:"practice"}]}]}]}],Dr=`<?xml version="1.0" encoding="UTF-8"?>
209
+ */const Bf="gl-node/";class qf{constructor(e){var t;if(e.apiKey==null)throw new Error("An API Key must be set when running in a browser");if(e.project||e.location)throw new Error("Vertex AI project based authentication is not supported on browser runtimes. Please do not provide a project or location.");this.vertexai=(t=e.vertexai)!==null&&t!==void 0?t:!1,this.apiKey=e.apiKey;const n=Wi(e,void 0,void 0);n&&(e.httpOptions?e.httpOptions.baseUrl=n:e.httpOptions={baseUrl:n}),this.apiVersion=e.apiVersion;const i=new Gf(this.apiKey);this.apiClient=new td({auth:i,apiVersion:this.apiVersion,apiKey:this.apiKey,vertexai:this.vertexai,httpOptions:e.httpOptions,userAgentExtra:Bf+"web",uploader:new Ff,downloader:new Rf}),this.models=new vd(this.apiClient),this.live=new pd(this.apiClient,i,new Uf),this.chats=new vs(this.models,this.apiClient),this.caches=new hs(this.apiClient),this.files=new Ns(this.apiClient),this.operations=new wd(this.apiClient),this.authTokens=new sf(this.apiClient),this.tunings=new If(this.apiClient)}}const Ho=`<?xml version="1.0" encoding="UTF-8"?>
240
210
  <bpmn:definitions xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:bpmn="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI" xmlns:dc="http://www.omg.org/spec/DD/20100524/DC" id="Definitions_1" targetNamespace="http://bpmn.io/schema/bpmn">
241
211
  <bpmn:process id="Process_1" isExecutable="false">
242
212
  <bpmn:startEvent id="StartEvent_1" name="Start" />
@@ -248,4 +218,4 @@ React keys must be passed directly to JSX without using spread:
248
218
  </bpmndi:BPMNShape>
249
219
  </bpmndi:BPMNPlane>
250
220
  </bpmndi:BPMNDiagram>
251
- </bpmn:definitions>`,lQ=()=>{const[n,e]=M0.useState("dashboard"),[t,A]=M0.useState(Hn[0].id),[i,o]=M0.useState(null),a=M0.useRef(null),c=M0.useRef(null),[l,u]=M0.useState(!0),[B,d]=M0.useState(""),[f,w]=M0.useState(!1),[y,F]=M0.useState("");M0.useEffect(()=>{if(n==="designer"&&a.current){const I=setTimeout(()=>{!c.current&&a.current&&(c.current=new dt({container:a.current}),c.current.importXML(Dr).catch(console.error))},50);return()=>clearTimeout(I)}return()=>{if(c.current){try{c.current.destroy()}catch(I){console.warn("Modeler destruction warning",I)}c.current=null}}},[n]);const R=I=>{o(I),e("designer")},S=()=>{e("dashboard"),o(null),d(""),F(""),w(!1)},M=async()=>{if(c.current)try{const{xml:I}=await c.current.saveXML({format:!0}),U=new Blob([I],{type:"application/xml"}),x=document.createElement("a");x.href=URL.createObjectURL(U),x.download=`${(i==null?void 0:i.name.replace(/\s+/g,"_"))||"process"}.bpmn`,x.click()}catch(I){console.error("Error exporting BPMN",I)}},T=async()=>{if(!(!B.trim()||!c.current)){w(!0),F("Drafting flow...");try{let x=(await new cQ({apiKey:"PLACEHOLDER_API_KEY"}).models.generateContent({model:"gemini-3-flash-preview",contents:`Generate a valid BPMN 2.0 XML for a ${i==null?void 0:i.type} named "${i==null?void 0:i.name}". Specific requirements: "${B}". Return ONLY the raw XML code.`})).text||"";x=x.replace(/^```xml\n/,"").replace(/\n```$/,"").trim(),x.includes("<bpmn:definitions")?(await c.current.importXML(x),F("Import successful!"),d("")):F("Generated invalid XML.")}catch(I){console.error("AI Generation error",I),F("Generation failed.")}finally{w(!1),setTimeout(()=>F(""),3e3)}}},D=(I,U)=>{if(!c.current)return;const x=c.current.get("elementFactory"),v=c.current.get("create");let m=x.createShape({type:U});m&&v.start(I,m)};if(n==="dashboard"){const I=Hn.find(U=>U.id===t);return G.jsxs("div",{className:"min-h-screen bg-slate-50 text-slate-900",children:[G.jsx("header",{className:"bg-white border-b border-slate-200 px-8 py-6",children:G.jsxs("div",{className:"max-w-7xl mx-auto flex justify-between items-center",children:[G.jsxs("div",{children:[G.jsxs("h1",{className:"text-2xl font-bold tracking-tight text-slate-900 flex items-center gap-2",children:[G.jsx(m1,{className:"text-indigo-600"}),"Enterprise Blueprint"]}),G.jsx("p",{className:"text-slate-500 text-sm",children:"Organize processes, capabilities, and work cycles."})]}),G.jsxs("button",{className:"bg-indigo-600 text-white px-4 py-2 rounded-lg text-sm font-semibold hover:bg-indigo-700 transition-colors flex items-center gap-2 shadow-sm",children:[G.jsx(x1,{size:18})," New Process"]})]})}),G.jsx("div",{className:"bg-white border-b border-slate-200 sticky top-0 z-10",children:G.jsx("div",{className:"max-w-7xl mx-auto flex gap-8 px-8",children:Hn.map(U=>G.jsx("button",{onClick:()=>A(U.id),className:`py-4 text-sm font-semibold border-b-2 transition-all ${t===U.id?"border-indigo-600 text-indigo-600":"border-transparent text-slate-500 hover:text-slate-700"}`,children:U.name},U.id))})}),G.jsx("main",{className:"max-w-7xl mx-auto p-8",children:G.jsx("div",{className:"grid grid-cols-1 lg:grid-cols-2 gap-8",children:I==null?void 0:I.capabilities.map(U=>G.jsxs("div",{className:"bg-white rounded-2xl border border-slate-200 shadow-sm overflow-hidden flex flex-col h-fit",children:[G.jsxs("div",{className:"p-6 border-b border-slate-100 bg-slate-50/50",children:[G.jsxs("h3",{className:"text-lg font-bold flex items-center gap-2 text-slate-800",children:[G.jsx(Y1,{className:"text-indigo-500 w-5 h-5"}),U.name]}),G.jsx("span",{className:"text-xs font-semibold text-slate-400 uppercase tracking-widest mt-1 block",children:"Capability"})]}),G.jsxs("div",{className:"p-6 space-y-4",children:[G.jsxs("h4",{className:"text-xs font-bold text-slate-400 uppercase tracking-wider mb-2 flex items-center gap-2",children:[G.jsx(Mi,{size:14})," Work Cycles & Practices"]}),G.jsx("div",{className:"space-y-4",children:U.cycles.map(x=>G.jsxs("div",{className:"rounded-xl border border-slate-100 overflow-hidden bg-white shadow-sm",children:[G.jsxs("div",{className:"flex items-center justify-between p-3 bg-slate-50/50 group border-b border-slate-100",children:[G.jsxs("div",{className:"flex items-center gap-2",children:[G.jsx(Mi,{size:14,className:"text-indigo-400"}),G.jsx("span",{className:"text-sm font-bold text-slate-800",children:x.name})]}),G.jsx("button",{onClick:()=>R(x),className:"text-[10px] font-bold text-indigo-600 bg-indigo-100 px-2 py-1 rounded hover:bg-indigo-200 transition-colors uppercase tracking-tight",children:"Design Cycle"})]}),G.jsx("div",{className:"p-2 space-y-1",children:x.practices.length>0?x.practices.map(v=>G.jsxs("div",{className:"flex items-center justify-between p-2 pl-4 rounded-lg hover:bg-indigo-50/50 group transition-all",children:[G.jsxs("div",{className:"flex items-center gap-2",children:[G.jsx(D1,{size:12,className:"text-slate-300"}),G.jsx("span",{className:"text-xs font-medium text-slate-600",children:v.name})]}),G.jsxs("button",{onClick:()=>R(v),className:"text-[10px] font-semibold text-slate-400 opacity-0 group-hover:opacity-100 hover:text-indigo-600 flex items-center gap-1 transition-all",children:["Design Practice ",G.jsx(Et,{size:10})]})]},v.id)):G.jsx("div",{className:"py-2 px-4 text-[10px] italic text-slate-400",children:"No practices defined for this cycle."})})]},x.id))})]})]},U.id))})})]})}return G.jsxs("div",{className:"flex h-screen w-full bg-white overflow-hidden text-slate-800",children:[G.jsxs("div",{className:`${l?"w-80":"w-0"} transition-all duration-300 border-r border-slate-200 bg-slate-50 flex flex-col relative z-20 shadow-xl`,children:[l&&G.jsxs("div",{className:"flex-1 flex flex-col p-6 overflow-y-auto w-80",children:[G.jsxs("div",{className:"flex items-center gap-2 mb-8",children:[G.jsx("button",{onClick:I=>{I.preventDefault(),S()},className:"p-2 hover:bg-slate-200 rounded-lg transition-colors mr-1 flex items-center justify-center text-slate-600 hover:text-indigo-600 active:scale-95 cursor-pointer",title:"Back to Dashboard",children:G.jsx(w1,{size:18})}),G.jsx("h1",{className:"font-bold text-lg tracking-tight text-slate-900 truncate",children:i==null?void 0:i.name})]}),G.jsxs("div",{className:"space-y-6",children:[G.jsxs("section",{children:[G.jsx("h3",{className:"text-xs font-bold uppercase tracking-wider text-slate-400 mb-4 flex items-center gap-2",children:"Palette"}),G.jsx("div",{className:"grid grid-cols-1 gap-2",children:[{type:"bpmn:StartEvent",icon:G.jsx(y1,{size:18}),label:"Start",color:"bg-green-50 text-green-600"},{type:"bpmn:Task",icon:G.jsx(U1,{size:18}),label:"Task",color:"bg-slate-100 text-slate-600"},{type:"bpmn:IntermediateCatchEvent",icon:G.jsx(F1,{size:18}),label:"Event",color:"bg-blue-50 text-blue-600"},{type:"bpmn:EndEvent",icon:G.jsx(M1,{size:18}),label:"End",color:"bg-red-50 text-red-600"}].map(I=>G.jsxs("div",{onMouseDown:U=>D(U,I.type),className:"flex items-center gap-3 p-3 bg-white border border-slate-200 rounded-xl cursor-grab hover:border-indigo-400 hover:shadow-sm transition-all group",children:[G.jsx("div",{className:`p-2 rounded-lg ${I.color}`,children:I.icon}),G.jsx("span",{className:"text-sm font-medium",children:I.label})]},I.type))})]}),G.jsx("hr",{className:"border-slate-200"}),G.jsxs("section",{children:[G.jsxs("label",{className:"block text-xs font-bold uppercase tracking-wider text-slate-400 mb-3 flex items-center gap-2",children:[G.jsx(v1,{className:"w-3 h-3 text-indigo-500"}),"AI Architect"]}),G.jsx("textarea",{className:"w-full h-24 p-3 text-sm border border-slate-300 rounded-xl focus:ring-2 focus:ring-indigo-500 bg-white outline-none resize-none transition-all",placeholder:"Ask AI to draft this process...",value:B,onChange:I=>d(I.target.value)}),G.jsx("button",{onClick:T,disabled:f||!B.trim(),className:"w-full mt-2 bg-indigo-600 hover:bg-indigo-700 disabled:bg-slate-300 text-white font-medium py-2 rounded-xl flex items-center justify-center gap-2 transition-all shadow-md active:scale-95",children:f?"Drafting...":"Generate Flow"}),y&&G.jsx("p",{className:"mt-2 text-[10px] text-center font-medium text-indigo-600",children:y})]}),G.jsx("section",{className:"mt-auto space-y-3 pt-6 border-t border-slate-200",children:G.jsxs("button",{onClick:()=>{c.current&&c.current.importXML(Dr)},className:"w-full flex items-center gap-2 p-2 text-red-500 hover:bg-red-50 rounded-lg text-xs font-medium transition-all",children:[G.jsx(T1,{size:14})," Reset Canvas"]})})]})]}),G.jsx("button",{onClick:()=>u(!l),className:"absolute -right-4 top-1/2 -translate-y-1/2 bg-white border border-slate-200 rounded-full p-1 shadow-md hover:text-indigo-600 transition-all z-50",children:l?G.jsx(C1,{size:20}):G.jsx(Et,{size:20})})]}),G.jsxs("div",{className:"flex-1 relative flex flex-col min-w-0",children:[G.jsxs("header",{className:"h-14 border-b border-slate-200 flex items-center justify-between px-6 bg-white/80 backdrop-blur-md z-10",children:[G.jsxs("div",{className:"flex items-center gap-2 text-xs font-medium",children:[G.jsx("span",{className:"text-slate-400",children:"Architecture"}),G.jsx(Et,{size:12,className:"text-slate-300"}),G.jsx("span",{className:"text-slate-400 uppercase tracking-tighter",children:(i==null?void 0:i.type)==="cycle"?"Cycle":"Practice"}),G.jsx(Et,{size:12,className:"text-slate-300"}),G.jsx("span",{className:"text-slate-900 font-bold",children:i==null?void 0:i.name})]}),G.jsx("div",{className:"flex gap-2",children:G.jsxs("button",{onClick:M,className:"text-xs font-bold text-white bg-indigo-600 hover:bg-indigo-700 px-4 py-2 rounded-lg shadow-sm flex items-center gap-2 transition-all active:scale-95",children:[G.jsx(I1,{size:14})," Export BPMN"]})})]}),G.jsxs("div",{className:"flex-1 relative overflow-hidden bg-white",children:[G.jsx("div",{className:"absolute inset-0 bg-[radial-gradient(#e5e7eb_1px,transparent_1px)] [background-size:24px_24px] pointer-events-none opacity-40"}),G.jsx("div",{ref:a,className:"h-full w-full bpmn-io-style relative"})]})]})]})};Y2.BpmnFlowDesigner=lQ,Object.defineProperty(Y2,Symbol.toStringTag,{value:"Module"})}));
221
+ </bpmn:definitions>`,$f=({initialXml:o=Ho,onSave:e,onBack:t,title:n="Flow Designer",geminiApiKey:i})=>{const l=Z.useRef(null),a=Z.useRef(null),[u,d]=Z.useState(!0),[c,f]=Z.useState(""),[p,m]=Z.useState(!1),[h,g]=Z.useState("");Z.useEffect(()=>{const A=setTimeout(async()=>{if(l.current){a.current&&a.current.destroy(),a.current=new BpmnJS({container:l.current,keyboard:{}});try{await a.current.importXML(o)}catch(R){console.error("Error importing BPMN XML",R)}}},50);return()=>{clearTimeout(A),a.current&&(a.current.destroy(),a.current=null)}},[o]);const v=async()=>{if(a.current)try{const{xml:_}=await a.current.saveXML({format:!0});e&&e(_);const A=new Blob([_],{type:"application/xml"}),R=document.createElement("a");R.href=URL.createObjectURL(A),R.download="process-design.bpmn",R.click()}catch(_){console.error("Error exporting BPMN",_)}},E=async()=>{const _=i||"PLACEHOLDER_API_KEY";if(!(!c.trim()||!a.current||!_)){m(!0),g("Drafting flow...");try{let k=(await new qf({apiKey:_}).models.generateContent({model:"gemini-3-flash-preview",contents:`Generate a valid BPMN 2.0 XML based on this description: "${c}". Return ONLY the raw XML code without markdown blocks.`})).text||"";k=k.replace(/^```xml\n/,"").replace(/\n```$/,"").trim(),k.includes("<bpmn:definitions")?(await a.current.importXML(k),g("Import successful!"),f("")):g("Generated invalid XML. Try again.")}catch(A){console.error("AI Generation error",A),g("Generation failed.")}finally{m(!1),setTimeout(()=>g(""),3e3)}}},M=(_,A)=>{if(!a.current)return;const R=a.current.get("elementFactory"),k=a.current.get("create");let V=R.createShape({type:A});V&&k.start(_,V)};return w.jsxs("div",{className:"flex h-screen w-full bg-white overflow-hidden text-slate-800 font-sans border border-slate-200 rounded-lg",children:[w.jsxs("div",{className:`${u?"w-80":"w-0"} transition-all duration-300 border-r border-slate-200 bg-slate-50 flex flex-col relative z-20 shadow-xl overflow-hidden`,children:[u&&w.jsxs("div",{className:"flex-1 flex flex-col p-6 overflow-y-auto w-80",children:[w.jsxs("div",{className:"flex items-center gap-2 mb-8",children:[t&&w.jsx("button",{onClick:t,className:"p-2 hover:bg-slate-200 rounded-lg transition-colors mr-1 text-slate-600 cursor-pointer",children:w.jsx(ni,{size:18})}),w.jsx("h1",{className:"font-bold text-lg tracking-tight text-slate-900 truncate",children:n})]}),w.jsxs("div",{className:"space-y-6",children:[w.jsxs("section",{children:[w.jsx("h3",{className:"text-xs font-bold uppercase tracking-wider text-slate-400 mb-4",children:"Tools"}),w.jsx("div",{className:"grid grid-cols-1 gap-2",children:[{type:"bpmn:StartEvent",icon:w.jsx(ri,{size:18}),label:"Start Event",color:"bg-green-50 text-green-600"},{type:"bpmn:Task",icon:w.jsx(ui,{size:18}),label:"User Task",color:"bg-slate-100 text-slate-600"},{type:"bpmn:IntermediateCatchEvent",icon:w.jsx(li,{size:18}),label:"Message Catch",color:"bg-blue-50 text-blue-600"},{type:"bpmn:EndEvent",icon:w.jsx(ii,{size:18}),label:"End Event",color:"bg-red-50 text-red-600"}].map(_=>w.jsxs("div",{onMouseDown:A=>M(A,_.type),className:"flex items-center gap-3 p-3 bg-white border border-slate-200 rounded-xl cursor-grab hover:border-indigo-400 hover:shadow-sm transition-all group active:scale-95",children:[w.jsx("div",{className:`p-2 rounded-lg ${_.color}`,children:_.icon}),w.jsx("span",{className:"text-sm font-medium",children:_.label})]},_.type))})]}),w.jsx("hr",{className:"border-slate-200"}),w.jsxs("section",{children:[w.jsxs("label",{className:"block text-xs font-bold uppercase tracking-wider text-slate-400 mb-3 flex items-center gap-2",children:[w.jsx(Bt,{className:"w-3 h-3 text-indigo-500"}),"AI Architect"]}),w.jsx("textarea",{className:"w-full h-24 p-3 text-sm border border-slate-300 rounded-xl focus:ring-2 focus:ring-indigo-500 bg-white outline-none resize-none transition-all",placeholder:"Describe your business process...",value:c,onChange:_=>f(_.target.value)}),w.jsxs("button",{onClick:E,disabled:p||!c.trim(),className:"w-full mt-2 bg-indigo-600 hover:bg-indigo-700 disabled:bg-slate-300 text-white font-medium py-2 rounded-xl flex items-center justify-center gap-2 transition-all shadow-md active:scale-95",children:[p?w.jsx(ai,{className:"animate-spin",size:16}):w.jsx(Bt,{size:16}),p?"Processing...":"Generate Diagram"]}),h&&w.jsx("p",{className:"mt-2 text-[10px] text-center font-bold text-indigo-600",children:h})]}),w.jsx("section",{className:"mt-auto space-y-3 pt-6 border-t border-slate-200",children:w.jsxs("button",{onClick:()=>{var _;return(_=a.current)==null?void 0:_.importXML(Ho)},className:"w-full flex items-center gap-2 p-2 text-red-500 hover:bg-red-50 rounded-lg text-xs font-medium transition-all",children:[w.jsx(ci,{size:14})," Reset Canvas"]})})]})]}),w.jsx("button",{onClick:()=>d(!u),className:"absolute -right-4 top-1/2 -translate-y-1/2 bg-white border border-slate-200 rounded-full p-1 shadow-md hover:text-indigo-600 transition-all z-50 focus:outline-none",children:u?w.jsx(oi,{size:20}):w.jsx(Gt,{size:20})})]}),w.jsxs("div",{className:"flex-1 relative flex flex-col min-w-0",children:[w.jsxs("header",{className:"h-14 border-b border-slate-200 flex items-center justify-between px-6 bg-white/80 backdrop-blur-md z-10",children:[w.jsxs("div",{className:"flex items-center gap-2 text-xs font-medium",children:[w.jsx("span",{className:"text-slate-400",children:"Project"}),w.jsx(Gt,{size:12,className:"text-slate-300"}),w.jsx("span",{className:"text-slate-900 font-bold",children:n})]}),w.jsx("div",{className:"flex gap-2",children:w.jsxs("button",{onClick:v,className:"text-xs font-bold text-white bg-indigo-600 hover:bg-indigo-700 px-4 py-2 rounded-lg shadow-sm flex items-center gap-2 transition-all active:scale-95",children:[w.jsx(si,{size:14})," Save & Export"]})})]}),w.jsxs("div",{className:"flex-1 relative overflow-hidden bg-white",children:[w.jsx("div",{className:"absolute inset-0 bg-[radial-gradient(#e5e7eb_1px,transparent_1px)] [background-size:24px_24px] pointer-events-none opacity-40"}),w.jsx("div",{ref:l,className:"h-full w-full bpmn-io-style relative"})]})]})]})},Of=()=>w.jsx($f,{title:"Sample Process Design",onSave:o=>console.log("Saved XML:",o)});fe.BPMNFlowDesigner=Of,Object.defineProperty(fe,Symbol.toStringTag,{value:"Module"})}));