{"templateId":"markdown","sharedDataIds":{"sidebar":"sidebar-sidebars.yaml"},"props":{"metadata":{"markdoc":{"tagList":["admonition"]},"type":"markdown"},"seo":{"title":"Generate a loan tape for a single investor","siteUrl":"https://docs.peachfinance.com","description":"API and product documentation for Peach Finance, a lending-as-a-service platform."},"dynamicMarkdocComponents":[],"compilationErrors":[],"ast":{"$$mdtype":"Tag","name":"article","attributes":{},"children":[{"$$mdtype":"Tag","name":"Heading","attributes":{"level":1,"id":"generate-a-loan-tape-for-a-single-investor","__idx":0},"children":["Generate a loan tape for a single investor"]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"overview","__idx":1},"children":["Overview"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["A loan tape is a scheduled CSV export that delivers loan or payment data to an investor over SFTP. When an investor owns only part of your portfolio, you scope a tape to that investor so its file contains only the loans associated with them. This runbook walks an integration engineer through configuring an investor-filtered tape, generating it, and confirming that the file was produced and delivered."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["The filter is set once, when you create the tape: a tape carries a single ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["investorId"]},", and every time that tape generates, Peach includes only the loans currently associated with that investor."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["This page covers the procedure end to end — from the prerequisite loan-investor association through confirming a delivered file. It does ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["not"]}," cover:"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["The full SFTP, encryption, and file-naming configuration — see ",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/data-reporting/data-delivery-setup"},"children":["Set up data delivery"]},"."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["The Admin Portal equivalent of this API flow — see ",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/servicing-operations/admin-portal/admin-portal-loan-tapes"},"children":["Manage loan tapes and loan tape types"]},"."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["The field-level contract for every tape column — see ",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/data-reporting/loan-tape-reference"},"children":["Loan tape field reference"]}," and the ",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/api-docs/api-public/#tag/Loan-Tapes"},"children":["Loan Tapes API"]},"."]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"before-you-begin","__idx":2},"children":["Before you begin"]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"prerequisites","__idx":3},"children":["Prerequisites"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["An investor record"]}," exists for your company, and you have its ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["investorId"]}," (format ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["IR-XXXX-XXXX"]},"). Retrieve it from the Admin Portal; the programmatic investor-list endpoint is Peach-internal, not part of the public API."]}]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Each loan that should appear on the tape is associated with that investor."]}," A loan joins the tape only through an active ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["LoanInvestorAssociation"]},"; loans with no association to the tape's investor are excluded. Set the association with ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["PUT /api/people/{personId}/loans/{loanId}/investors"]},":"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"json","header":{"controls":{"copy":{}}},"source":"PUT /api/people/{personId}/loans/{loanId}/investors\nContent-Type: application/json\n\n{\n  \"effectiveDate\": \"2026-05-01\",\n  \"investors\": [\n    {\n      \"investorId\": \"IR-7F3A-9K2D\",\n      \"share\": 1.0\n    }\n  ]\n}\n","lang":"json"},"children":[]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["investorId"]}," and ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["share"]}," are required per investor; ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["share"]}," is the ownership fraction in decimal form, where ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["1.0"]}," is 100% and ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["0.15"]}," is 15%. This ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["share"]}," is what the tape reports as ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["investorOwnershipPercentage"]},"."]}]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["A loan tape type"]}," is configured, or you create one in Step 1. The tape type defines which fields the CSV carries, its money unit, and its reporting rules."]}]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["An SFTP destination"]}," is reachable, and a GPG public key is available if you encrypt the file. These credentials are supplied by the receiving investor or your own delivery team — Peach does not generate them."]}]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Permissions"]}," on your API credential: ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["loan.investors:update"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["loan.tape.type:create"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["loan.tape:create"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["loan.tape:generate"]},", and ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["loan.tape.record:list"]},"."]}]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"assumed-knowledge","__idx":4},"children":["Assumed knowledge"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/data-reporting/loan-tape-reference"},"children":["Loan tape field reference"]}," — the loan and payment columns a tape can carry, and where each comes from."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/data-reporting/replica-database"},"children":["Snapshots and the replica database"]}," — tapes read each loan's daily snapshot, so a loan with no snapshot for the report date cannot be reported."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/servicing-operations/admin-portal/admin-portal-loan-tapes"},"children":["Manage loan tapes and loan tape types"]}," — the Admin Portal view of the same objects."]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"key-concepts","__idx":5},"children":["Key concepts"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Loan tape type"]}," — the reusable template that defines a tape's fields, money unit, and reporting rules. Many tapes can share one type."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Loan tape"]}," — a single delivery configuration: one tape type plus one SFTP destination and, optionally, one ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["investorId"]}," filter."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Investor association"]}," — the ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["LoanInvestorAssociation"]}," linking a loan to an investor with an ownership ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["share"]},"; it is what the investor filter joins against. "]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Snapshot dependency"]}," — each tape row is built from the loan's snapshot for the report date; missing snapshots are handled by the tape type's ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["actionOnMissingData"]}," setting."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Asynchronous generation"]}," — generating a tape fires a background job and returns immediately with an ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["operationId"]},"; the file is produced and uploaded by a worker, and you observe completion through the tape's records. "]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"the-procedure","__idx":6},"children":["The procedure"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["The diagram below shows the full sequence: the prerequisite association, configuring the tape type and the investor-filtered tape, generating asynchronously, and monitoring the records."]},{"$$mdtype":"Tag","name":"Diagram","attributes":{"data-language":"mermaid","diagramType":"mermaid","diagramSource":"sequenceDiagram\n    participant L as Lender\n    participant P as Peach API\n    participant W as Tape worker\n\n    Note over L,P: Prerequisite — associate loans with the investor\n    L->>P: PUT /people/{personId}/loans/{loanId}/investors\n    P-->>L: 204 (LoanInvestorAssociation set)\n\n    Note over L,P: Configure\n    L->>P: POST /companies/{companyId}/loan-tape-types\n    P-->>L: 201 loanTapeTypeId (TY-...)\n    L->>P: POST /companies/{companyId}/loan-tapes (investorId set)\n    P-->>L: 201 loanTapeId (TA-...)\n\n    Note over L,P: Generate (asynchronous)\n    L->>P: POST /companies/{companyId}/loan-tapes/generate (reportDates)\n    P-->>L: 201 [{ loanTapeId, operationId, reportDate }]\n    P->>W: fire LoanTapeCreateFileEvent\n    W->>W: join loans on LoanInvestorAssociation, build CSV, upload to SFTP\n\n    Note over L,P: Monitor\n    L->>P: GET /companies/{companyId}/loan-tapes/{loanTapeId}/records\n    P-->>L: records with status (null → created → succeeded / failed)\n","diagramHtml":"<svg id=\"diagram-1fca544f209c066d7dbd9cd95bbb22d67ba42e40a6a77ae501ebf3c9f58e865f\" width=\"100%\" xmlns=\"http://www.w3.org/2000/svg\" style=\"max-width: 1230px;\" viewBox=\"-50 -10 1230 944\" role=\"graphics-document document\" aria-roledescription=\"sequence\"><style>\n    #diagram-1fca544f209c066d7dbd9cd95bbb22d67ba42e40a6a77ae501ebf3c9f58e865f foreignObject {\n      overflow: visible;\n    }\n  </style><g><rect x=\"820\" y=\"858\" fill=\"#eaeaea\" stroke=\"#666\" width=\"150\" height=\"65\" name=\"W\" rx=\"3\" ry=\"3\" class=\"actor actor-bottom\"></rect><text x=\"895\" y=\"890.5\" dominant-baseline=\"central\" alignment-baseline=\"central\" class=\"actor actor-box\" style=\"text-anchor: middle; font-size: 16px; font-weight: 400; font-family: &quot;Redocly Mermaid Sans&quot;, Arial, &quot;Liberation Sans&quot;, Arimo, Helvetica, &quot;Redocly Mermaid CJK&quot;, sans-serif;\"><tspan x=\"895\" dy=\"0\">Tape worker</tspan></text></g><g><rect x=\"538\" y=\"858\" fill=\"#eaeaea\" stroke=\"#666\" width=\"150\" height=\"65\" name=\"P\" rx=\"3\" ry=\"3\" class=\"actor actor-bottom\"></rect><text x=\"613\" y=\"890.5\" dominant-baseline=\"central\" alignment-baseline=\"central\" class=\"actor actor-box\" style=\"text-anchor: middle; font-size: 16px; font-weight: 400; font-family: &quot;Redocly Mermaid Sans&quot;, Arial, &quot;Liberation Sans&quot;, Arimo, Helvetica, &quot;Redocly Mermaid CJK&quot;, sans-serif;\"><tspan x=\"613\" dy=\"0\">Peach API</tspan></text></g><g><rect x=\"0\" y=\"858\" fill=\"#eaeaea\" stroke=\"#666\" width=\"150\" height=\"65\" name=\"L\" rx=\"3\" ry=\"3\" class=\"actor actor-bottom\"></rect><text x=\"75\" y=\"890.5\" dominant-baseline=\"central\" alignment-baseline=\"central\" class=\"actor actor-box\" style=\"text-anchor: middle; font-size: 16px; font-weight: 400; font-family: &quot;Redocly Mermaid Sans&quot;, Arial, &quot;Liberation Sans&quot;, Arimo, Helvetica, &quot;Redocly Mermaid CJK&quot;, sans-serif;\"><tspan x=\"75\" dy=\"0\">Lender</tspan></text></g><g><line id=\"actor2\" x1=\"895\" y1=\"65\" x2=\"895\" y2=\"858\" class=\"actor-line 200\" stroke-width=\"0.5px\" stroke=\"#999\" name=\"W\" data-et=\"life-line\" data-id=\"W\"></line><g id=\"root-2\" data-et=\"participant\" data-type=\"participant\" data-id=\"W\"><rect x=\"820\" y=\"0\" fill=\"#eaeaea\" stroke=\"#666\" width=\"150\" height=\"65\" name=\"W\" rx=\"3\" ry=\"3\" class=\"actor actor-top\"></rect><text x=\"895\" y=\"32.5\" dominant-baseline=\"central\" alignment-baseline=\"central\" class=\"actor actor-box\" style=\"text-anchor: middle; font-size: 16px; font-weight: 400; font-family: &quot;Redocly Mermaid Sans&quot;, Arial, &quot;Liberation Sans&quot;, Arimo, Helvetica, &quot;Redocly Mermaid CJK&quot;, sans-serif;\"><tspan x=\"895\" dy=\"0\">Tape worker</tspan></text></g></g><g><line id=\"actor1\" x1=\"613\" y1=\"65\" x2=\"613\" y2=\"858\" class=\"actor-line 200\" stroke-width=\"0.5px\" stroke=\"#999\" name=\"P\" data-et=\"life-line\" data-id=\"P\"></line><g id=\"root-1\" data-et=\"participant\" data-type=\"participant\" data-id=\"P\"><rect x=\"538\" y=\"0\" fill=\"#eaeaea\" stroke=\"#666\" width=\"150\" height=\"65\" name=\"P\" rx=\"3\" ry=\"3\" class=\"actor actor-top\"></rect><text x=\"613\" y=\"32.5\" dominant-baseline=\"central\" alignment-baseline=\"central\" class=\"actor actor-box\" style=\"text-anchor: middle; font-size: 16px; font-weight: 400; font-family: &quot;Redocly Mermaid Sans&quot;, Arial, &quot;Liberation Sans&quot;, Arimo, Helvetica, &quot;Redocly Mermaid CJK&quot;, sans-serif;\"><tspan x=\"613\" dy=\"0\">Peach API</tspan></text></g></g><g><line id=\"actor0\" x1=\"75\" y1=\"65\" x2=\"75\" y2=\"858\" class=\"actor-line 200\" stroke-width=\"0.5px\" stroke=\"#999\" name=\"L\" data-et=\"life-line\" data-id=\"L\"></line><g id=\"root-0\" data-et=\"participant\" data-type=\"participant\" data-id=\"L\"><rect x=\"0\" y=\"0\" fill=\"#eaeaea\" stroke=\"#666\" width=\"150\" height=\"65\" name=\"L\" rx=\"3\" ry=\"3\" class=\"actor actor-top\"></rect><text x=\"75\" y=\"32.5\" dominant-baseline=\"central\" alignment-baseline=\"central\" class=\"actor actor-box\" style=\"text-anchor: middle; font-size: 16px; font-weight: 400; font-family: &quot;Redocly Mermaid Sans&quot;, Arial, &quot;Liberation Sans&quot;, Arimo, Helvetica, &quot;Redocly Mermaid CJK&quot;, sans-serif;\"><tspan x=\"75\" dy=\"0\">Lender</tspan></text></g></g><style>#diagram-1fca544f209c066d7dbd9cd95bbb22d67ba42e40a6a77ae501ebf3c9f58e865f{font-family:\"Redocly Mermaid Sans\",Arial,\"Liberation Sans\",Arimo,Helvetica,\"Redocly Mermaid CJK\",sans-serif;font-size:16px;fill:#333;}@keyframes edge-animation-frame{from{stroke-dashoffset:0;}}@keyframes dash{to{stroke-dashoffset:0;}}#diagram-1fca544f209c066d7dbd9cd95bbb22d67ba42e40a6a77ae501ebf3c9f58e865f .edge-animation-slow{stroke-dasharray:9,5!important;stroke-dashoffset:900;animation:dash 50s linear infinite;stroke-linecap:round;}#diagram-1fca544f209c066d7dbd9cd95bbb22d67ba42e40a6a77ae501ebf3c9f58e865f .edge-animation-fast{stroke-dasharray:9,5!important;stroke-dashoffset:900;animation:dash 20s linear infinite;stroke-linecap:round;}#diagram-1fca544f209c066d7dbd9cd95bbb22d67ba42e40a6a77ae501ebf3c9f58e865f .error-icon{fill:#552222;}#diagram-1fca544f209c066d7dbd9cd95bbb22d67ba42e40a6a77ae501ebf3c9f58e865f .error-text{fill:#552222;stroke:#552222;}#diagram-1fca544f209c066d7dbd9cd95bbb22d67ba42e40a6a77ae501ebf3c9f58e865f .edge-thickness-normal{stroke-width:1px;}#diagram-1fca544f209c066d7dbd9cd95bbb22d67ba42e40a6a77ae501ebf3c9f58e865f .edge-thickness-thick{stroke-width:3.5px;}#diagram-1fca544f209c066d7dbd9cd95bbb22d67ba42e40a6a77ae501ebf3c9f58e865f .edge-pattern-solid{stroke-dasharray:0;}#diagram-1fca544f209c066d7dbd9cd95bbb22d67ba42e40a6a77ae501ebf3c9f58e865f .edge-thickness-invisible{stroke-width:0;fill:none;}#diagram-1fca544f209c066d7dbd9cd95bbb22d67ba42e40a6a77ae501ebf3c9f58e865f .edge-pattern-dashed{stroke-dasharray:3;}#diagram-1fca544f209c066d7dbd9cd95bbb22d67ba42e40a6a77ae501ebf3c9f58e865f .edge-pattern-dotted{stroke-dasharray:2;}#diagram-1fca544f209c066d7dbd9cd95bbb22d67ba42e40a6a77ae501ebf3c9f58e865f .marker{fill:#333333;stroke:#333333;}#diagram-1fca544f209c066d7dbd9cd95bbb22d67ba42e40a6a77ae501ebf3c9f58e865f .marker.cross{stroke:#333333;}#diagram-1fca544f209c066d7dbd9cd95bbb22d67ba42e40a6a77ae501ebf3c9f58e865f svg{font-family:\"Redocly Mermaid Sans\",Arial,\"Liberation Sans\",Arimo,Helvetica,\"Redocly Mermaid CJK\",sans-serif;font-size:16px;}#diagram-1fca544f209c066d7dbd9cd95bbb22d67ba42e40a6a77ae501ebf3c9f58e865f p{margin:0;}#diagram-1fca544f209c066d7dbd9cd95bbb22d67ba42e40a6a77ae501ebf3c9f58e865f .actor{stroke:#9370DB;fill:#ECECFF;stroke-width:1;}#diagram-1fca544f209c066d7dbd9cd95bbb22d67ba42e40a6a77ae501ebf3c9f58e865f rect.actor.outer-path[data-look=\"neo\"]{filter:drop-shadow(1px 2px 2px rgba(185, 185, 185, 1));}#diagram-1fca544f209c066d7dbd9cd95bbb22d67ba42e40a6a77ae501ebf3c9f58e865f rect.note[data-look=\"neo\"]{stroke:#aaaa33;fill:#fff5ad;filter:drop-shadow(1px 2px 2px rgba(185, 185, 185, 1));}#diagram-1fca544f209c066d7dbd9cd95bbb22d67ba42e40a6a77ae501ebf3c9f58e865f text.actor&gt;tspan{fill:black;stroke:none;}#diagram-1fca544f209c066d7dbd9cd95bbb22d67ba42e40a6a77ae501ebf3c9f58e865f .actor-line{stroke:#9370DB;}#diagram-1fca544f209c066d7dbd9cd95bbb22d67ba42e40a6a77ae501ebf3c9f58e865f .innerArc{stroke-width:1.5;stroke-dasharray:none;}#diagram-1fca544f209c066d7dbd9cd95bbb22d67ba42e40a6a77ae501ebf3c9f58e865f .messageLine0{stroke-width:1.5;stroke-dasharray:none;stroke:#333;}#diagram-1fca544f209c066d7dbd9cd95bbb22d67ba42e40a6a77ae501ebf3c9f58e865f .messageLine1{stroke-width:1.5;stroke-dasharray:2,2;stroke:#333;}#diagram-1fca544f209c066d7dbd9cd95bbb22d67ba42e40a6a77ae501ebf3c9f58e865f [id$=\"-arrowhead\"] path{fill:#333;stroke:#333;}#diagram-1fca544f209c066d7dbd9cd95bbb22d67ba42e40a6a77ae501ebf3c9f58e865f .sequenceNumber{fill:white;}#diagram-1fca544f209c066d7dbd9cd95bbb22d67ba42e40a6a77ae501ebf3c9f58e865f [id$=\"-sequencenumber\"]{fill:#333;}#diagram-1fca544f209c066d7dbd9cd95bbb22d67ba42e40a6a77ae501ebf3c9f58e865f [id$=\"-crosshead\"] path{fill:#333;stroke:#333;}#diagram-1fca544f209c066d7dbd9cd95bbb22d67ba42e40a6a77ae501ebf3c9f58e865f .messageText{fill:#333;stroke:none;}#diagram-1fca544f209c066d7dbd9cd95bbb22d67ba42e40a6a77ae501ebf3c9f58e865f .labelBox{stroke:#9370DB;fill:#ECECFF;filter:none;}#diagram-1fca544f209c066d7dbd9cd95bbb22d67ba42e40a6a77ae501ebf3c9f58e865f .labelText,#diagram-1fca544f209c066d7dbd9cd95bbb22d67ba42e40a6a77ae501ebf3c9f58e865f .labelText&gt;tspan{fill:black;stroke:none;}#diagram-1fca544f209c066d7dbd9cd95bbb22d67ba42e40a6a77ae501ebf3c9f58e865f .loopText,#diagram-1fca544f209c066d7dbd9cd95bbb22d67ba42e40a6a77ae501ebf3c9f58e865f .loopText&gt;tspan{fill:black;stroke:none;}#diagram-1fca544f209c066d7dbd9cd95bbb22d67ba42e40a6a77ae501ebf3c9f58e865f .sectionTitle,#diagram-1fca544f209c066d7dbd9cd95bbb22d67ba42e40a6a77ae501ebf3c9f58e865f .sectionTitle&gt;tspan{fill:black;stroke:none;}#diagram-1fca544f209c066d7dbd9cd95bbb22d67ba42e40a6a77ae501ebf3c9f58e865f .loopLine{stroke-width:2px;stroke-dasharray:2,2;stroke:#9370DB;fill:#9370DB;}#diagram-1fca544f209c066d7dbd9cd95bbb22d67ba42e40a6a77ae501ebf3c9f58e865f .note{stroke:#aaaa33;fill:#fff5ad;}#diagram-1fca544f209c066d7dbd9cd95bbb22d67ba42e40a6a77ae501ebf3c9f58e865f .noteText,#diagram-1fca544f209c066d7dbd9cd95bbb22d67ba42e40a6a77ae501ebf3c9f58e865f .noteText&gt;tspan{fill:black;stroke:none;font-weight:normal;}#diagram-1fca544f209c066d7dbd9cd95bbb22d67ba42e40a6a77ae501ebf3c9f58e865f .activation0{fill:#f4f4f4;stroke:#666;}#diagram-1fca544f209c066d7dbd9cd95bbb22d67ba42e40a6a77ae501ebf3c9f58e865f .activation1{fill:#f4f4f4;stroke:#666;}#diagram-1fca544f209c066d7dbd9cd95bbb22d67ba42e40a6a77ae501ebf3c9f58e865f .activation2{fill:#f4f4f4;stroke:#666;}#diagram-1fca544f209c066d7dbd9cd95bbb22d67ba42e40a6a77ae501ebf3c9f58e865f .actorPopupMenu{position:absolute;}#diagram-1fca544f209c066d7dbd9cd95bbb22d67ba42e40a6a77ae501ebf3c9f58e865f .actorPopupMenuPanel{position:absolute;fill:#ECECFF;box-shadow:0px 8px 16px 0px rgba(0,0,0,0.2);filter:drop-shadow(3px 5px 2px rgb(0 0 0 / 0.4));}#diagram-1fca544f209c066d7dbd9cd95bbb22d67ba42e40a6a77ae501ebf3c9f58e865f .actor-man circle,#diagram-1fca544f209c066d7dbd9cd95bbb22d67ba42e40a6a77ae501ebf3c9f58e865f line{fill:#ECECFF;stroke-width:2px;}#diagram-1fca544f209c066d7dbd9cd95bbb22d67ba42e40a6a77ae501ebf3c9f58e865f g rect.rect{filter:drop-shadow(1px 2px 2px rgba(185, 185, 185, 1));stroke:#9370DB;}#diagram-1fca544f209c066d7dbd9cd95bbb22d67ba42e40a6a77ae501ebf3c9f58e865f .node .neo-node{stroke:#9370DB;}#diagram-1fca544f209c066d7dbd9cd95bbb22d67ba42e40a6a77ae501ebf3c9f58e865f [data-look=\"neo\"].node rect,#diagram-1fca544f209c066d7dbd9cd95bbb22d67ba42e40a6a77ae501ebf3c9f58e865f [data-look=\"neo\"].cluster rect,#diagram-1fca544f209c066d7dbd9cd95bbb22d67ba42e40a6a77ae501ebf3c9f58e865f [data-look=\"neo\"].node polygon{stroke:#9370DB;filter:drop-shadow(1px 2px 2px rgba(185, 185, 185, 1));}#diagram-1fca544f209c066d7dbd9cd95bbb22d67ba42e40a6a77ae501ebf3c9f58e865f [data-look=\"neo\"].swimlane.cluster rect{filter:none;}#diagram-1fca544f209c066d7dbd9cd95bbb22d67ba42e40a6a77ae501ebf3c9f58e865f [data-look=\"neo\"].node path{stroke:#9370DB;stroke-width:1px;}#diagram-1fca544f209c066d7dbd9cd95bbb22d67ba42e40a6a77ae501ebf3c9f58e865f [data-look=\"neo\"].node .outer-path{filter:drop-shadow(1px 2px 2px rgba(185, 185, 185, 1));}#diagram-1fca544f209c066d7dbd9cd95bbb22d67ba42e40a6a77ae501ebf3c9f58e865f [data-look=\"neo\"].node .neo-line path{stroke:#9370DB;filter:none;}#diagram-1fca544f209c066d7dbd9cd95bbb22d67ba42e40a6a77ae501ebf3c9f58e865f [data-look=\"neo\"].node circle{stroke:#9370DB;filter:drop-shadow(1px 2px 2px rgba(185, 185, 185, 1));}#diagram-1fca544f209c066d7dbd9cd95bbb22d67ba42e40a6a77ae501ebf3c9f58e865f [data-look=\"neo\"].node circle .state-start{fill:#000000;}#diagram-1fca544f209c066d7dbd9cd95bbb22d67ba42e40a6a77ae501ebf3c9f58e865f [data-look=\"neo\"].icon-shape .icon{fill:#9370DB;filter:drop-shadow(1px 2px 2px rgba(185, 185, 185, 1));}#diagram-1fca544f209c066d7dbd9cd95bbb22d67ba42e40a6a77ae501ebf3c9f58e865f [data-look=\"neo\"].icon-shape .icon-neo path{stroke:#9370DB;filter:drop-shadow(1px 2px 2px rgba(185, 185, 185, 1));}#diagram-1fca544f209c066d7dbd9cd95bbb22d67ba42e40a6a77ae501ebf3c9f58e865f :root{--mermaid-font-family:\"Redocly Mermaid Sans\",Arial,\"Liberation Sans\",Arimo,Helvetica,\"Redocly Mermaid CJK\",sans-serif;}</style><g></g><defs><symbol id=\"diagram-1fca544f209c066d7dbd9cd95bbb22d67ba42e40a6a77ae501ebf3c9f58e865f-computer\" width=\"24\" height=\"24\"><path transform=\"scale(.5)\" d=\"M2 2v13h20v-13h-20zm18 11h-16v-9h16v9zm-10.228 6l.466-1h3.524l.467 1h-4.457zm14.228 3h-24l2-6h2.104l-1.33 4h18.45l-1.297-4h2.073l2 6zm-5-10h-14v-7h14v7z\"></path></symbol></defs><defs><symbol id=\"diagram-1fca544f209c066d7dbd9cd95bbb22d67ba42e40a6a77ae501ebf3c9f58e865f-database\" fill-rule=\"evenodd\" clip-rule=\"evenodd\"><path transform=\"scale(.5)\" d=\"M12.258.001l.256.004.255.005.253.008.251.01.249.012.247.015.246.016.242.019.241.02.239.023.236.024.233.027.231.028.229.031.225.032.223.034.22.036.217.038.214.04.211.041.208.043.205.045.201.046.198.048.194.05.191.051.187.053.183.054.18.056.175.057.172.059.168.06.163.061.16.063.155.064.15.066.074.033.073.033.071.034.07.034.069.035.068.035.067.035.066.035.064.036.064.036.062.036.06.036.06.037.058.037.058.037.055.038.055.038.053.038.052.038.051.039.05.039.048.039.047.039.045.04.044.04.043.04.041.04.04.041.039.041.037.041.036.041.034.041.033.042.032.042.03.042.029.042.027.042.026.043.024.043.023.043.021.043.02.043.018.044.017.043.015.044.013.044.012.044.011.045.009.044.007.045.006.045.004.045.002.045.001.045v17l-.001.045-.002.045-.004.045-.006.045-.007.045-.009.044-.011.045-.012.044-.013.044-.015.044-.017.043-.018.044-.02.043-.021.043-.023.043-.024.043-.026.043-.027.042-.029.042-.03.042-.032.042-.033.042-.034.041-.036.041-.037.041-.039.041-.04.041-.041.04-.043.04-.044.04-.045.04-.047.039-.048.039-.05.039-.051.039-.052.038-.053.038-.055.038-.055.038-.058.037-.058.037-.06.037-.06.036-.062.036-.064.036-.064.036-.066.035-.067.035-.068.035-.069.035-.07.034-.071.034-.073.033-.074.033-.15.066-.155.064-.16.063-.163.061-.168.06-.172.059-.175.057-.18.056-.183.054-.187.053-.191.051-.194.05-.198.048-.201.046-.205.045-.208.043-.211.041-.214.04-.217.038-.22.036-.223.034-.225.032-.229.031-.231.028-.233.027-.236.024-.239.023-.241.02-.242.019-.246.016-.247.015-.249.012-.251.01-.253.008-.255.005-.256.004-.258.001-.258-.001-.256-.004-.255-.005-.253-.008-.251-.01-.249-.012-.247-.015-.245-.016-.243-.019-.241-.02-.238-.023-.236-.024-.234-.027-.231-.028-.228-.031-.226-.032-.223-.034-.22-.036-.217-.038-.214-.04-.211-.041-.208-.043-.204-.045-.201-.046-.198-.048-.195-.05-.19-.051-.187-.053-.184-.054-.179-.056-.176-.057-.172-.059-.167-.06-.164-.061-.159-.063-.155-.064-.151-.066-.074-.033-.072-.033-.072-.034-.07-.034-.069-.035-.068-.035-.067-.035-.066-.035-.064-.036-.063-.036-.062-.036-.061-.036-.06-.037-.058-.037-.057-.037-.056-.038-.055-.038-.053-.038-.052-.038-.051-.039-.049-.039-.049-.039-.046-.039-.046-.04-.044-.04-.043-.04-.041-.04-.04-.041-.039-.041-.037-.041-.036-.041-.034-.041-.033-.042-.032-.042-.03-.042-.029-.042-.027-.042-.026-.043-.024-.043-.023-.043-.021-.043-.02-.043-.018-.044-.017-.043-.015-.044-.013-.044-.012-.044-.011-.045-.009-.044-.007-.045-.006-.045-.004-.045-.002-.045-.001-.045v-17l.001-.045.002-.045.004-.045.006-.045.007-.045.009-.044.011-.045.012-.044.013-.044.015-.044.017-.043.018-.044.02-.043.021-.043.023-.043.024-.043.026-.043.027-.042.029-.042.03-.042.032-.042.033-.042.034-.041.036-.041.037-.041.039-.041.04-.041.041-.04.043-.04.044-.04.046-.04.046-.039.049-.039.049-.039.051-.039.052-.038.053-.038.055-.038.056-.038.057-.037.058-.037.06-.037.061-.036.062-.036.063-.036.064-.036.066-.035.067-.035.068-.035.069-.035.07-.034.072-.034.072-.033.074-.033.151-.066.155-.064.159-.063.164-.061.167-.06.172-.059.176-.057.179-.056.184-.054.187-.053.19-.051.195-.05.198-.048.201-.046.204-.045.208-.043.211-.041.214-.04.217-.038.22-.036.223-.034.226-.032.228-.031.231-.028.234-.027.236-.024.238-.023.241-.02.243-.019.245-.016.247-.015.249-.012.251-.01.253-.008.255-.005.256-.004.258-.001.258.001zm-9.258 20.499v.01l.001.021.003.021.004.022.005.021.006.022.007.022.009.023.01.022.011.023.012.023.013.023.015.023.016.024.017.023.018.024.019.024.021.024.022.025.023.024.024.025.052.049.056.05.061.051.066.051.07.051.075.051.079.052.084.052.088.052.092.052.097.052.102.051.105.052.11.052.114.051.119.051.123.051.127.05.131.05.135.05.139.048.144.049.147.047.152.047.155.047.16.045.163.045.167.043.171.043.176.041.178.041.183.039.187.039.19.037.194.035.197.035.202.033.204.031.209.03.212.029.216.027.219.025.222.024.226.021.23.02.233.018.236.016.24.015.243.012.246.01.249.008.253.005.256.004.259.001.26-.001.257-.004.254-.005.25-.008.247-.011.244-.012.241-.014.237-.016.233-.018.231-.021.226-.021.224-.024.22-.026.216-.027.212-.028.21-.031.205-.031.202-.034.198-.034.194-.036.191-.037.187-.039.183-.04.179-.04.175-.042.172-.043.168-.044.163-.045.16-.046.155-.046.152-.047.148-.048.143-.049.139-.049.136-.05.131-.05.126-.05.123-.051.118-.052.114-.051.11-.052.106-.052.101-.052.096-.052.092-.052.088-.053.083-.051.079-.052.074-.052.07-.051.065-.051.06-.051.056-.05.051-.05.023-.024.023-.025.021-.024.02-.024.019-.024.018-.024.017-.024.015-.023.014-.024.013-.023.012-.023.01-.023.01-.022.008-.022.006-.022.006-.022.004-.022.004-.021.001-.021.001-.021v-4.127l-.077.055-.08.053-.083.054-.085.053-.087.052-.09.052-.093.051-.095.05-.097.05-.1.049-.102.049-.105.048-.106.047-.109.047-.111.046-.114.045-.115.045-.118.044-.12.043-.122.042-.124.042-.126.041-.128.04-.13.04-.132.038-.134.038-.135.037-.138.037-.139.035-.142.035-.143.034-.144.033-.147.032-.148.031-.15.03-.151.03-.153.029-.154.027-.156.027-.158.026-.159.025-.161.024-.162.023-.163.022-.165.021-.166.02-.167.019-.169.018-.169.017-.171.016-.173.015-.173.014-.175.013-.175.012-.177.011-.178.01-.179.008-.179.008-.181.006-.182.005-.182.004-.184.003-.184.002h-.37l-.184-.002-.184-.003-.182-.004-.182-.005-.181-.006-.179-.008-.179-.008-.178-.01-.176-.011-.176-.012-.175-.013-.173-.014-.172-.015-.171-.016-.17-.017-.169-.018-.167-.019-.166-.02-.165-.021-.163-.022-.162-.023-.161-.024-.159-.025-.157-.026-.156-.027-.155-.027-.153-.029-.151-.03-.15-.03-.148-.031-.146-.032-.145-.033-.143-.034-.141-.035-.14-.035-.137-.037-.136-.037-.134-.038-.132-.038-.13-.04-.128-.04-.126-.041-.124-.042-.122-.042-.12-.044-.117-.043-.116-.045-.113-.045-.112-.046-.109-.047-.106-.047-.105-.048-.102-.049-.1-.049-.097-.05-.095-.05-.093-.052-.09-.051-.087-.052-.085-.053-.083-.054-.08-.054-.077-.054v4.127zm0-5.654v.011l.001.021.003.021.004.021.005.022.006.022.007.022.009.022.01.022.011.023.012.023.013.023.015.024.016.023.017.024.018.024.019.024.021.024.022.024.023.025.024.024.052.05.056.05.061.05.066.051.07.051.075.052.079.051.084.052.088.052.092.052.097.052.102.052.105.052.11.051.114.051.119.052.123.05.127.051.131.05.135.049.139.049.144.048.147.048.152.047.155.046.16.045.163.045.167.044.171.042.176.042.178.04.183.04.187.038.19.037.194.036.197.034.202.033.204.032.209.03.212.028.216.027.219.025.222.024.226.022.23.02.233.018.236.016.24.014.243.012.246.01.249.008.253.006.256.003.259.001.26-.001.257-.003.254-.006.25-.008.247-.01.244-.012.241-.015.237-.016.233-.018.231-.02.226-.022.224-.024.22-.025.216-.027.212-.029.21-.03.205-.032.202-.033.198-.035.194-.036.191-.037.187-.039.183-.039.179-.041.175-.042.172-.043.168-.044.163-.045.16-.045.155-.047.152-.047.148-.048.143-.048.139-.05.136-.049.131-.05.126-.051.123-.051.118-.051.114-.052.11-.052.106-.052.101-.052.096-.052.092-.052.088-.052.083-.052.079-.052.074-.051.07-.052.065-.051.06-.05.056-.051.051-.049.023-.025.023-.024.021-.025.02-.024.019-.024.018-.024.017-.024.015-.023.014-.023.013-.024.012-.022.01-.023.01-.023.008-.022.006-.022.006-.022.004-.021.004-.022.001-.021.001-.021v-4.139l-.077.054-.08.054-.083.054-.085.052-.087.053-.09.051-.093.051-.095.051-.097.05-.1.049-.102.049-.105.048-.106.047-.109.047-.111.046-.114.045-.115.044-.118.044-.12.044-.122.042-.124.042-.126.041-.128.04-.13.039-.132.039-.134.038-.135.037-.138.036-.139.036-.142.035-.143.033-.144.033-.147.033-.148.031-.15.03-.151.03-.153.028-.154.028-.156.027-.158.026-.159.025-.161.024-.162.023-.163.022-.165.021-.166.02-.167.019-.169.018-.169.017-.171.016-.173.015-.173.014-.175.013-.175.012-.177.011-.178.009-.179.009-.179.007-.181.007-.182.005-.182.004-.184.003-.184.002h-.37l-.184-.002-.184-.003-.182-.004-.182-.005-.181-.007-.179-.007-.179-.009-.178-.009-.176-.011-.176-.012-.175-.013-.173-.014-.172-.015-.171-.016-.17-.017-.169-.018-.167-.019-.166-.02-.165-.021-.163-.022-.162-.023-.161-.024-.159-.025-.157-.026-.156-.027-.155-.028-.153-.028-.151-.03-.15-.03-.148-.031-.146-.033-.145-.033-.143-.033-.141-.035-.14-.036-.137-.036-.136-.037-.134-.038-.132-.039-.13-.039-.128-.04-.126-.041-.124-.042-.122-.043-.12-.043-.117-.044-.116-.044-.113-.046-.112-.046-.109-.046-.106-.047-.105-.048-.102-.049-.1-.049-.097-.05-.095-.051-.093-.051-.09-.051-.087-.053-.085-.052-.083-.054-.08-.054-.077-.054v4.139zm0-5.666v.011l.001.02.003.022.004.021.005.022.006.021.007.022.009.023.01.022.011.023.012.023.013.023.015.023.016.024.017.024.018.023.019.024.021.025.022.024.023.024.024.025.052.05.056.05.061.05.066.051.07.051.075.052.079.051.084.052.088.052.092.052.097.052.102.052.105.051.11.052.114.051.119.051.123.051.127.05.131.05.135.05.139.049.144.048.147.048.152.047.155.046.16.045.163.045.167.043.171.043.176.042.178.04.183.04.187.038.19.037.194.036.197.034.202.033.204.032.209.03.212.028.216.027.219.025.222.024.226.021.23.02.233.018.236.017.24.014.243.012.246.01.249.008.253.006.256.003.259.001.26-.001.257-.003.254-.006.25-.008.247-.01.244-.013.241-.014.237-.016.233-.018.231-.02.226-.022.224-.024.22-.025.216-.027.212-.029.21-.03.205-.032.202-.033.198-.035.194-.036.191-.037.187-.039.183-.039.179-.041.175-.042.172-.043.168-.044.163-.045.16-.045.155-.047.152-.047.148-.048.143-.049.139-.049.136-.049.131-.051.126-.05.123-.051.118-.052.114-.051.11-.052.106-.052.101-.052.096-.052.092-.052.088-.052.083-.052.079-.052.074-.052.07-.051.065-.051.06-.051.056-.05.051-.049.023-.025.023-.025.021-.024.02-.024.019-.024.018-.024.017-.024.015-.023.014-.024.013-.023.012-.023.01-.022.01-.023.008-.022.006-.022.006-.022.004-.022.004-.021.001-.021.001-.021v-4.153l-.077.054-.08.054-.083.053-.085.053-.087.053-.09.051-.093.051-.095.051-.097.05-.1.049-.102.048-.105.048-.106.048-.109.046-.111.046-.114.046-.115.044-.118.044-.12.043-.122.043-.124.042-.126.041-.128.04-.13.039-.132.039-.134.038-.135.037-.138.036-.139.036-.142.034-.143.034-.144.033-.147.032-.148.032-.15.03-.151.03-.153.028-.154.028-.156.027-.158.026-.159.024-.161.024-.162.023-.163.023-.165.021-.166.02-.167.019-.169.018-.169.017-.171.016-.173.015-.173.014-.175.013-.175.012-.177.01-.178.01-.179.009-.179.007-.181.006-.182.006-.182.004-.184.003-.184.001-.185.001-.185-.001-.184-.001-.184-.003-.182-.004-.182-.006-.181-.006-.179-.007-.179-.009-.178-.01-.176-.01-.176-.012-.175-.013-.173-.014-.172-.015-.171-.016-.17-.017-.169-.018-.167-.019-.166-.02-.165-.021-.163-.023-.162-.023-.161-.024-.159-.024-.157-.026-.156-.027-.155-.028-.153-.028-.151-.03-.15-.03-.148-.032-.146-.032-.145-.033-.143-.034-.141-.034-.14-.036-.137-.036-.136-.037-.134-.038-.132-.039-.13-.039-.128-.041-.126-.041-.124-.041-.122-.043-.12-.043-.117-.044-.116-.044-.113-.046-.112-.046-.109-.046-.106-.048-.105-.048-.102-.048-.1-.05-.097-.049-.095-.051-.093-.051-.09-.052-.087-.052-.085-.053-.083-.053-.08-.054-.077-.054v4.153zm8.74-8.179l-.257.004-.254.005-.25.008-.247.011-.244.012-.241.014-.237.016-.233.018-.231.021-.226.022-.224.023-.22.026-.216.027-.212.028-.21.031-.205.032-.202.033-.198.034-.194.036-.191.038-.187.038-.183.04-.179.041-.175.042-.172.043-.168.043-.163.045-.16.046-.155.046-.152.048-.148.048-.143.048-.139.049-.136.05-.131.05-.126.051-.123.051-.118.051-.114.052-.11.052-.106.052-.101.052-.096.052-.092.052-.088.052-.083.052-.079.052-.074.051-.07.052-.065.051-.06.05-.056.05-.051.05-.023.025-.023.024-.021.024-.02.025-.019.024-.018.024-.017.023-.015.024-.014.023-.013.023-.012.023-.01.023-.01.022-.008.022-.006.023-.006.021-.004.022-.004.021-.001.021-.001.021.001.021.001.021.004.021.004.022.006.021.006.023.008.022.01.022.01.023.012.023.013.023.014.023.015.024.017.023.018.024.019.024.02.025.021.024.023.024.023.025.051.05.056.05.06.05.065.051.07.052.074.051.079.052.083.052.088.052.092.052.096.052.101.052.106.052.11.052.114.052.118.051.123.051.126.051.131.05.136.05.139.049.143.048.148.048.152.048.155.046.16.046.163.045.168.043.172.043.175.042.179.041.183.04.187.038.191.038.194.036.198.034.202.033.205.032.21.031.212.028.216.027.22.026.224.023.226.022.231.021.233.018.237.016.241.014.244.012.247.011.25.008.254.005.257.004.26.001.26-.001.257-.004.254-.005.25-.008.247-.011.244-.012.241-.014.237-.016.233-.018.231-.021.226-.022.224-.023.22-.026.216-.027.212-.028.21-.031.205-.032.202-.033.198-.034.194-.036.191-.038.187-.038.183-.04.179-.041.175-.042.172-.043.168-.043.163-.045.16-.046.155-.046.152-.048.148-.048.143-.048.139-.049.136-.05.131-.05.126-.051.123-.051.118-.051.114-.052.11-.052.106-.052.101-.052.096-.052.092-.052.088-.052.083-.052.079-.052.074-.051.07-.052.065-.051.06-.05.056-.05.051-.05.023-.025.023-.024.021-.024.02-.025.019-.024.018-.024.017-.023.015-.024.014-.023.013-.023.012-.023.01-.023.01-.022.008-.022.006-.023.006-.021.004-.022.004-.021.001-.021.001-.021-.001-.021-.001-.021-.004-.021-.004-.022-.006-.021-.006-.023-.008-.022-.01-.022-.01-.023-.012-.023-.013-.023-.014-.023-.015-.024-.017-.023-.018-.024-.019-.024-.02-.025-.021-.024-.023-.024-.023-.025-.051-.05-.056-.05-.06-.05-.065-.051-.07-.052-.074-.051-.079-.052-.083-.052-.088-.052-.092-.052-.096-.052-.101-.052-.106-.052-.11-.052-.114-.052-.118-.051-.123-.051-.126-.051-.131-.05-.136-.05-.139-.049-.143-.048-.148-.048-.152-.048-.155-.046-.16-.046-.163-.045-.168-.043-.172-.043-.175-.042-.179-.041-.183-.04-.187-.038-.191-.038-.194-.036-.198-.034-.202-.033-.205-.032-.21-.031-.212-.028-.216-.027-.22-.026-.224-.023-.226-.022-.231-.021-.233-.018-.237-.016-.241-.014-.244-.012-.247-.011-.25-.008-.254-.005-.257-.004-.26-.001-.26.001z\"></path></symbol></defs><defs><symbol id=\"diagram-1fca544f209c066d7dbd9cd95bbb22d67ba42e40a6a77ae501ebf3c9f58e865f-clock\" width=\"24\" height=\"24\"><path transform=\"scale(.5)\" d=\"M12 2c5.514 0 10 4.486 10 10s-4.486 10-10 10-10-4.486-10-10 4.486-10 10-10zm0-2c-6.627 0-12 5.373-12 12s5.373 12 12 12 12-5.373 12-12-5.373-12-12-12zm5.848 12.459c.202.038.202.333.001.372-1.907.361-6.045 1.111-6.547 1.111-.719 0-1.301-.582-1.301-1.301 0-.512.77-5.447 1.125-7.445.034-.192.312-.181.343.014l.985 6.238 5.394 1.011z\"></path></symbol></defs><defs><marker id=\"diagram-1fca544f209c066d7dbd9cd95bbb22d67ba42e40a6a77ae501ebf3c9f58e865f-arrowhead\" refX=\"7.9\" refY=\"5\" markerUnits=\"userSpaceOnUse\" markerWidth=\"12\" markerHeight=\"12\" orient=\"auto-start-reverse\"><path d=\"M -1 0 L 10 5 L 0 10 z\"></path></marker></defs><defs><marker id=\"diagram-1fca544f209c066d7dbd9cd95bbb22d67ba42e40a6a77ae501ebf3c9f58e865f-crosshead\" markerWidth=\"15\" markerHeight=\"8\" orient=\"auto\" refX=\"4\" refY=\"4.5\"><path fill=\"none\" stroke=\"#000000\" stroke-width=\"1pt\" d=\"M 1,2 L 6,7 M 6,2 L 1,7\" style=\"stroke-dasharray: 0, 0;\"></path></marker></defs><defs><marker id=\"diagram-1fca544f209c066d7dbd9cd95bbb22d67ba42e40a6a77ae501ebf3c9f58e865f-filled-head\" refX=\"15.5\" refY=\"7\" markerWidth=\"20\" markerHeight=\"28\" orient=\"auto\"><path d=\"M 18,7 L9,13 L14,7 L9,1 Z\"></path></marker></defs><defs><marker id=\"diagram-1fca544f209c066d7dbd9cd95bbb22d67ba42e40a6a77ae501ebf3c9f58e865f-sequencenumber\" refX=\"15\" refY=\"15\" markerWidth=\"60\" markerHeight=\"40\" orient=\"auto\"><circle cx=\"15\" cy=\"15\" r=\"6\"></circle></marker></defs><defs><marker id=\"diagram-1fca544f209c066d7dbd9cd95bbb22d67ba42e40a6a77ae501ebf3c9f58e865f-solidTopArrowHead\" refX=\"7.9\" refY=\"7.25\" markerUnits=\"userSpaceOnUse\" markerWidth=\"12\" markerHeight=\"12\" orient=\"auto-start-reverse\"><path d=\"M 0 0 L 10 8 L 0 8 z\"></path></marker></defs><defs><marker id=\"diagram-1fca544f209c066d7dbd9cd95bbb22d67ba42e40a6a77ae501ebf3c9f58e865f-solidBottomArrowHead\" refX=\"7.9\" refY=\"0.75\" markerUnits=\"userSpaceOnUse\" markerWidth=\"12\" markerHeight=\"12\" orient=\"auto-start-reverse\"><path d=\"M 0 0 L 10 0 L 0 8 z\"></path></marker></defs><defs><marker id=\"diagram-1fca544f209c066d7dbd9cd95bbb22d67ba42e40a6a77ae501ebf3c9f58e865f-stickTopArrowHead\" refX=\"7.5\" refY=\"7\" markerUnits=\"userSpaceOnUse\" markerWidth=\"12\" markerHeight=\"12\" orient=\"auto-start-reverse\"><path d=\"M 0 0 L 7 7\" stroke=\"black\" stroke-width=\"1.5\" fill=\"none\"></path></marker></defs><defs><marker id=\"diagram-1fca544f209c066d7dbd9cd95bbb22d67ba42e40a6a77ae501ebf3c9f58e865f-stickBottomArrowHead\" refX=\"7.5\" refY=\"0\" markerUnits=\"userSpaceOnUse\" markerWidth=\"12\" markerHeight=\"12\" orient=\"auto-start-reverse\"><path d=\"M 0 7 L 7 0\" stroke=\"black\" stroke-width=\"1.5\" fill=\"none\"></path></marker></defs><g data-et=\"note\" data-id=\"i0\"><rect x=\"50\" y=\"75\" fill=\"#EDF2AE\" stroke=\"#666\" width=\"588\" height=\"38\" class=\"note\"></rect><text x=\"344\" y=\"80\" text-anchor=\"middle\" dominant-baseline=\"middle\" alignment-baseline=\"middle\" class=\"noteText\" dy=\"1em\" style=\"font-family: &quot;Redocly Mermaid Sans&quot;, Arial, &quot;Liberation Sans&quot;, Arimo, Helvetica, &quot;Redocly Mermaid CJK&quot;, sans-serif; font-size: 16px; font-weight: 400;\"><tspan x=\"344\">Prerequisite — associate loans with the investor</tspan></text></g><g data-et=\"note\" data-id=\"i3\"><rect x=\"50\" y=\"215\" fill=\"#EDF2AE\" stroke=\"#666\" width=\"588\" height=\"38\" class=\"note\"></rect><text x=\"344\" y=\"220\" text-anchor=\"middle\" dominant-baseline=\"middle\" alignment-baseline=\"middle\" class=\"noteText\" dy=\"1em\" style=\"font-family: &quot;Redocly Mermaid Sans&quot;, Arial, &quot;Liberation Sans&quot;, Arimo, Helvetica, &quot;Redocly Mermaid CJK&quot;, sans-serif; font-size: 16px; font-weight: 400;\"><tspan x=\"344\">Configure</tspan></text></g><g data-et=\"note\" data-id=\"i8\"><rect x=\"50\" y=\"447\" fill=\"#EDF2AE\" stroke=\"#666\" width=\"588\" height=\"38\" class=\"note\"></rect><text x=\"344\" y=\"452\" text-anchor=\"middle\" dominant-baseline=\"middle\" alignment-baseline=\"middle\" class=\"noteText\" dy=\"1em\" style=\"font-family: &quot;Redocly Mermaid Sans&quot;, Arial, &quot;Liberation Sans&quot;, Arimo, Helvetica, &quot;Redocly Mermaid CJK&quot;, sans-serif; font-size: 16px; font-weight: 400;\"><tspan x=\"344\">Generate (asynchronous)</tspan></text></g><g data-et=\"note\" data-id=\"i13\"><rect x=\"50\" y=\"709\" fill=\"#EDF2AE\" stroke=\"#666\" width=\"588\" height=\"37\" class=\"note\"></rect><text x=\"344\" y=\"714\" text-anchor=\"middle\" dominant-baseline=\"middle\" alignment-baseline=\"middle\" class=\"noteText\" dy=\"1em\" style=\"font-family: &quot;Redocly Mermaid Sans&quot;, Arial, &quot;Liberation Sans&quot;, Arimo, Helvetica, &quot;Redocly Mermaid CJK&quot;, sans-serif; font-size: 16px; font-weight: 400;\"><tspan x=\"344\">Monitor</tspan></text></g><text x=\"343\" y=\"128\" text-anchor=\"middle\" dominant-baseline=\"middle\" alignment-baseline=\"middle\" class=\"messageText\" dy=\"1em\" style=\"font-family: &quot;Redocly Mermaid Sans&quot;, Arial, &quot;Liberation Sans&quot;, Arimo, Helvetica, &quot;Redocly Mermaid CJK&quot;, sans-serif; font-size: 16px; font-weight: 400;\">PUT /people/{personId}/loans/{loanId}/investors</text><line x1=\"76\" y1=\"159\" x2=\"609\" y2=\"159\" class=\"messageLine0\" data-et=\"message\" data-id=\"i1\" data-from=\"L\" data-to=\"P\" stroke-width=\"2\" stroke=\"none\" marker-end=\"url(#diagram-1fca544f209c066d7dbd9cd95bbb22d67ba42e40a6a77ae501ebf3c9f58e865f-arrowhead)\" style=\"fill: none;\"></line><text x=\"346\" y=\"174\" text-anchor=\"middle\" dominant-baseline=\"middle\" alignment-baseline=\"middle\" class=\"messageText\" dy=\"1em\" style=\"font-family: &quot;Redocly Mermaid Sans&quot;, Arial, &quot;Liberation Sans&quot;, Arimo, Helvetica, &quot;Redocly Mermaid CJK&quot;, sans-serif; font-size: 16px; font-weight: 400;\">204 (LoanInvestorAssociation set)</text><line x1=\"612\" y1=\"205\" x2=\"79\" y2=\"205\" class=\"messageLine1\" data-et=\"message\" data-id=\"i2\" data-from=\"P\" data-to=\"L\" stroke-width=\"2\" stroke=\"none\" marker-end=\"url(#diagram-1fca544f209c066d7dbd9cd95bbb22d67ba42e40a6a77ae501ebf3c9f58e865f-arrowhead)\" style=\"stroke-dasharray: 3, 3; fill: none;\"></line><text x=\"343\" y=\"268\" text-anchor=\"middle\" dominant-baseline=\"middle\" alignment-baseline=\"middle\" class=\"messageText\" dy=\"1em\" style=\"font-family: &quot;Redocly Mermaid Sans&quot;, Arial, &quot;Liberation Sans&quot;, Arimo, Helvetica, &quot;Redocly Mermaid CJK&quot;, sans-serif; font-size: 16px; font-weight: 400;\">POST /companies/{companyId}/loan-tape-types</text><line x1=\"76\" y1=\"299\" x2=\"609\" y2=\"299\" class=\"messageLine0\" data-et=\"message\" data-id=\"i4\" data-from=\"L\" data-to=\"P\" stroke-width=\"2\" stroke=\"none\" marker-end=\"url(#diagram-1fca544f209c066d7dbd9cd95bbb22d67ba42e40a6a77ae501ebf3c9f58e865f-arrowhead)\" style=\"fill: none;\"></line><text x=\"346\" y=\"314\" text-anchor=\"middle\" dominant-baseline=\"middle\" alignment-baseline=\"middle\" class=\"messageText\" dy=\"1em\" style=\"font-family: &quot;Redocly Mermaid Sans&quot;, Arial, &quot;Liberation Sans&quot;, Arimo, Helvetica, &quot;Redocly Mermaid CJK&quot;, sans-serif; font-size: 16px; font-weight: 400;\">201 loanTapeTypeId (TY-...)</text><line x1=\"612\" y1=\"345\" x2=\"79\" y2=\"345\" class=\"messageLine1\" data-et=\"message\" data-id=\"i5\" data-from=\"P\" data-to=\"L\" stroke-width=\"2\" stroke=\"none\" marker-end=\"url(#diagram-1fca544f209c066d7dbd9cd95bbb22d67ba42e40a6a77ae501ebf3c9f58e865f-arrowhead)\" style=\"stroke-dasharray: 3, 3; fill: none;\"></line><text x=\"343\" y=\"360\" text-anchor=\"middle\" dominant-baseline=\"middle\" alignment-baseline=\"middle\" class=\"messageText\" dy=\"1em\" style=\"font-family: &quot;Redocly Mermaid Sans&quot;, Arial, &quot;Liberation Sans&quot;, Arimo, Helvetica, &quot;Redocly Mermaid CJK&quot;, sans-serif; font-size: 16px; font-weight: 400;\">POST /companies/{companyId}/loan-tapes (investorId set)</text><line x1=\"76\" y1=\"391\" x2=\"609\" y2=\"391\" class=\"messageLine0\" data-et=\"message\" data-id=\"i6\" data-from=\"L\" data-to=\"P\" stroke-width=\"2\" stroke=\"none\" marker-end=\"url(#diagram-1fca544f209c066d7dbd9cd95bbb22d67ba42e40a6a77ae501ebf3c9f58e865f-arrowhead)\" style=\"fill: none;\"></line><text x=\"346\" y=\"406\" text-anchor=\"middle\" dominant-baseline=\"middle\" alignment-baseline=\"middle\" class=\"messageText\" dy=\"1em\" style=\"font-family: &quot;Redocly Mermaid Sans&quot;, Arial, &quot;Liberation Sans&quot;, Arimo, Helvetica, &quot;Redocly Mermaid CJK&quot;, sans-serif; font-size: 16px; font-weight: 400;\">201 loanTapeId (TA-...)</text><line x1=\"612\" y1=\"437\" x2=\"79\" y2=\"437\" class=\"messageLine1\" data-et=\"message\" data-id=\"i7\" data-from=\"P\" data-to=\"L\" stroke-width=\"2\" stroke=\"none\" marker-end=\"url(#diagram-1fca544f209c066d7dbd9cd95bbb22d67ba42e40a6a77ae501ebf3c9f58e865f-arrowhead)\" style=\"stroke-dasharray: 3, 3; fill: none;\"></line><text x=\"343\" y=\"500\" text-anchor=\"middle\" dominant-baseline=\"middle\" alignment-baseline=\"middle\" class=\"messageText\" dy=\"1em\" style=\"font-family: &quot;Redocly Mermaid Sans&quot;, Arial, &quot;Liberation Sans&quot;, Arimo, Helvetica, &quot;Redocly Mermaid CJK&quot;, sans-serif; font-size: 16px; font-weight: 400;\">POST /companies/{companyId}/loan-tapes/generate (reportDates)</text><line x1=\"76\" y1=\"531\" x2=\"609\" y2=\"531\" class=\"messageLine0\" data-et=\"message\" data-id=\"i9\" data-from=\"L\" data-to=\"P\" stroke-width=\"2\" stroke=\"none\" marker-end=\"url(#diagram-1fca544f209c066d7dbd9cd95bbb22d67ba42e40a6a77ae501ebf3c9f58e865f-arrowhead)\" style=\"fill: none;\"></line><text x=\"346\" y=\"546\" text-anchor=\"middle\" dominant-baseline=\"middle\" alignment-baseline=\"middle\" class=\"messageText\" dy=\"1em\" style=\"font-family: &quot;Redocly Mermaid Sans&quot;, Arial, &quot;Liberation Sans&quot;, Arimo, Helvetica, &quot;Redocly Mermaid CJK&quot;, sans-serif; font-size: 16px; font-weight: 400;\">201 [{ loanTapeId, operationId, reportDate }]</text><line x1=\"612\" y1=\"577\" x2=\"79\" y2=\"577\" class=\"messageLine1\" data-et=\"message\" data-id=\"i10\" data-from=\"P\" data-to=\"L\" stroke-width=\"2\" stroke=\"none\" marker-end=\"url(#diagram-1fca544f209c066d7dbd9cd95bbb22d67ba42e40a6a77ae501ebf3c9f58e865f-arrowhead)\" style=\"stroke-dasharray: 3, 3; fill: none;\"></line><text x=\"753\" y=\"592\" text-anchor=\"middle\" dominant-baseline=\"middle\" alignment-baseline=\"middle\" class=\"messageText\" dy=\"1em\" style=\"font-family: &quot;Redocly Mermaid Sans&quot;, Arial, &quot;Liberation Sans&quot;, Arimo, Helvetica, &quot;Redocly Mermaid CJK&quot;, sans-serif; font-size: 16px; font-weight: 400;\">fire LoanTapeCreateFileEvent</text><line x1=\"614\" y1=\"623\" x2=\"891\" y2=\"623\" class=\"messageLine0\" data-et=\"message\" data-id=\"i11\" data-from=\"P\" data-to=\"W\" stroke-width=\"2\" stroke=\"none\" marker-end=\"url(#diagram-1fca544f209c066d7dbd9cd95bbb22d67ba42e40a6a77ae501ebf3c9f58e865f-arrowhead)\" style=\"fill: none;\"></line><text x=\"896\" y=\"638\" text-anchor=\"middle\" dominant-baseline=\"middle\" alignment-baseline=\"middle\" class=\"messageText\" dy=\"1em\" style=\"font-family: &quot;Redocly Mermaid Sans&quot;, Arial, &quot;Liberation Sans&quot;, Arimo, Helvetica, &quot;Redocly Mermaid CJK&quot;, sans-serif; font-size: 16px; font-weight: 400;\">join loans on LoanInvestorAssociation, build CSV, upload to SFTP</text><path d=\"M 896,669 C 956,659 956,699 896,689\" class=\"messageLine0\" data-et=\"message\" data-id=\"i12\" data-from=\"W\" data-to=\"W\" stroke-width=\"2\" stroke=\"none\" marker-end=\"url(#diagram-1fca544f209c066d7dbd9cd95bbb22d67ba42e40a6a77ae501ebf3c9f58e865f-arrowhead)\" style=\"fill: none;\"></path><text x=\"343\" y=\"761\" text-anchor=\"middle\" dominant-baseline=\"middle\" alignment-baseline=\"middle\" class=\"messageText\" dy=\"1em\" style=\"font-family: &quot;Redocly Mermaid Sans&quot;, Arial, &quot;Liberation Sans&quot;, Arimo, Helvetica, &quot;Redocly Mermaid CJK&quot;, sans-serif; font-size: 16px; font-weight: 400;\">GET /companies/{companyId}/loan-tapes/{loanTapeId}/records</text><line x1=\"76\" y1=\"792\" x2=\"609\" y2=\"792\" class=\"messageLine0\" data-et=\"message\" data-id=\"i14\" data-from=\"L\" data-to=\"P\" stroke-width=\"2\" stroke=\"none\" marker-end=\"url(#diagram-1fca544f209c066d7dbd9cd95bbb22d67ba42e40a6a77ae501ebf3c9f58e865f-arrowhead)\" style=\"fill: none;\"></line><text x=\"346\" y=\"807\" text-anchor=\"middle\" dominant-baseline=\"middle\" alignment-baseline=\"middle\" class=\"messageText\" dy=\"1em\" style=\"font-family: &quot;Redocly Mermaid Sans&quot;, Arial, &quot;Liberation Sans&quot;, Arimo, Helvetica, &quot;Redocly Mermaid CJK&quot;, sans-serif; font-size: 16px; font-weight: 400;\">records with status (null → created → succeeded / failed)</text><line x1=\"612\" y1=\"838\" x2=\"79\" y2=\"838\" class=\"messageLine1\" data-et=\"message\" data-id=\"i15\" data-from=\"P\" data-to=\"L\" stroke-width=\"2\" stroke=\"none\" marker-end=\"url(#diagram-1fca544f209c066d7dbd9cd95bbb22d67ba42e40a6a77ae501ebf3c9f58e865f-arrowhead)\" style=\"stroke-dasharray: 3, 3; fill: none;\"></line></svg>","diagramHtmlDark":"<svg id=\"diagram-01ee26b6756d102fb783ee12f11f957c1b840988e4eff591eddd1e0bf8fa3c8b\" width=\"100%\" xmlns=\"http://www.w3.org/2000/svg\" style=\"max-width: 1230px;\" viewBox=\"-50 -10 1230 944\" role=\"graphics-document document\" aria-roledescription=\"sequence\"><style>\n    #diagram-01ee26b6756d102fb783ee12f11f957c1b840988e4eff591eddd1e0bf8fa3c8b foreignObject {\n      overflow: visible;\n    }\n  </style><g><rect x=\"820\" y=\"858\" fill=\"#eaeaea\" stroke=\"#666\" width=\"150\" height=\"65\" name=\"W\" rx=\"3\" ry=\"3\" class=\"actor actor-bottom\"></rect><text x=\"895\" y=\"890.5\" dominant-baseline=\"central\" alignment-baseline=\"central\" class=\"actor actor-box\" style=\"text-anchor: middle; font-size: 16px; font-weight: 400; font-family: &quot;Redocly Mermaid Sans&quot;, Arial, &quot;Liberation Sans&quot;, Arimo, Helvetica, &quot;Redocly Mermaid CJK&quot;, sans-serif;\"><tspan x=\"895\" dy=\"0\">Tape worker</tspan></text></g><g><rect x=\"538\" y=\"858\" fill=\"#eaeaea\" stroke=\"#666\" width=\"150\" height=\"65\" name=\"P\" rx=\"3\" ry=\"3\" class=\"actor actor-bottom\"></rect><text x=\"613\" y=\"890.5\" dominant-baseline=\"central\" alignment-baseline=\"central\" class=\"actor actor-box\" style=\"text-anchor: middle; font-size: 16px; font-weight: 400; font-family: &quot;Redocly Mermaid Sans&quot;, Arial, &quot;Liberation Sans&quot;, Arimo, Helvetica, &quot;Redocly Mermaid CJK&quot;, sans-serif;\"><tspan x=\"613\" dy=\"0\">Peach API</tspan></text></g><g><rect x=\"0\" y=\"858\" fill=\"#eaeaea\" stroke=\"#666\" width=\"150\" height=\"65\" name=\"L\" rx=\"3\" ry=\"3\" class=\"actor actor-bottom\"></rect><text x=\"75\" y=\"890.5\" dominant-baseline=\"central\" alignment-baseline=\"central\" class=\"actor actor-box\" style=\"text-anchor: middle; font-size: 16px; font-weight: 400; font-family: &quot;Redocly Mermaid Sans&quot;, Arial, &quot;Liberation Sans&quot;, Arimo, Helvetica, &quot;Redocly Mermaid CJK&quot;, sans-serif;\"><tspan x=\"75\" dy=\"0\">Lender</tspan></text></g><g><line id=\"actor2\" x1=\"895\" y1=\"65\" x2=\"895\" y2=\"858\" class=\"actor-line 200\" stroke-width=\"0.5px\" stroke=\"#999\" name=\"W\" data-et=\"life-line\" data-id=\"W\"></line><g id=\"root-2\" data-et=\"participant\" data-type=\"participant\" data-id=\"W\"><rect x=\"820\" y=\"0\" fill=\"#eaeaea\" stroke=\"#666\" width=\"150\" height=\"65\" name=\"W\" rx=\"3\" ry=\"3\" class=\"actor actor-top\"></rect><text x=\"895\" y=\"32.5\" dominant-baseline=\"central\" alignment-baseline=\"central\" class=\"actor actor-box\" style=\"text-anchor: middle; font-size: 16px; font-weight: 400; font-family: &quot;Redocly Mermaid Sans&quot;, Arial, &quot;Liberation Sans&quot;, Arimo, Helvetica, &quot;Redocly Mermaid CJK&quot;, sans-serif;\"><tspan x=\"895\" dy=\"0\">Tape worker</tspan></text></g></g><g><line id=\"actor1\" x1=\"613\" y1=\"65\" x2=\"613\" y2=\"858\" class=\"actor-line 200\" stroke-width=\"0.5px\" stroke=\"#999\" name=\"P\" data-et=\"life-line\" data-id=\"P\"></line><g id=\"root-1\" data-et=\"participant\" data-type=\"participant\" data-id=\"P\"><rect x=\"538\" y=\"0\" fill=\"#eaeaea\" stroke=\"#666\" width=\"150\" height=\"65\" name=\"P\" rx=\"3\" ry=\"3\" class=\"actor actor-top\"></rect><text x=\"613\" y=\"32.5\" dominant-baseline=\"central\" alignment-baseline=\"central\" class=\"actor actor-box\" style=\"text-anchor: middle; font-size: 16px; font-weight: 400; font-family: &quot;Redocly Mermaid Sans&quot;, Arial, &quot;Liberation Sans&quot;, Arimo, Helvetica, &quot;Redocly Mermaid CJK&quot;, sans-serif;\"><tspan x=\"613\" dy=\"0\">Peach API</tspan></text></g></g><g><line id=\"actor0\" x1=\"75\" y1=\"65\" x2=\"75\" y2=\"858\" class=\"actor-line 200\" stroke-width=\"0.5px\" stroke=\"#999\" name=\"L\" data-et=\"life-line\" data-id=\"L\"></line><g id=\"root-0\" data-et=\"participant\" data-type=\"participant\" data-id=\"L\"><rect x=\"0\" y=\"0\" fill=\"#eaeaea\" stroke=\"#666\" width=\"150\" height=\"65\" name=\"L\" rx=\"3\" ry=\"3\" class=\"actor actor-top\"></rect><text x=\"75\" y=\"32.5\" dominant-baseline=\"central\" alignment-baseline=\"central\" class=\"actor actor-box\" style=\"text-anchor: middle; font-size: 16px; font-weight: 400; font-family: &quot;Redocly Mermaid Sans&quot;, Arial, &quot;Liberation Sans&quot;, Arimo, Helvetica, &quot;Redocly Mermaid CJK&quot;, sans-serif;\"><tspan x=\"75\" dy=\"0\">Lender</tspan></text></g></g><style>#diagram-01ee26b6756d102fb783ee12f11f957c1b840988e4eff591eddd1e0bf8fa3c8b{font-family:\"Redocly Mermaid Sans\",Arial,\"Liberation Sans\",Arimo,Helvetica,\"Redocly Mermaid CJK\",sans-serif;font-size:16px;fill:#ccc;}@keyframes edge-animation-frame{from{stroke-dashoffset:0;}}@keyframes dash{to{stroke-dashoffset:0;}}#diagram-01ee26b6756d102fb783ee12f11f957c1b840988e4eff591eddd1e0bf8fa3c8b .edge-animation-slow{stroke-dasharray:9,5!important;stroke-dashoffset:900;animation:dash 50s linear infinite;stroke-linecap:round;}#diagram-01ee26b6756d102fb783ee12f11f957c1b840988e4eff591eddd1e0bf8fa3c8b .edge-animation-fast{stroke-dasharray:9,5!important;stroke-dashoffset:900;animation:dash 20s linear infinite;stroke-linecap:round;}#diagram-01ee26b6756d102fb783ee12f11f957c1b840988e4eff591eddd1e0bf8fa3c8b .error-icon{fill:#a44141;}#diagram-01ee26b6756d102fb783ee12f11f957c1b840988e4eff591eddd1e0bf8fa3c8b .error-text{fill:#ddd;stroke:#ddd;}#diagram-01ee26b6756d102fb783ee12f11f957c1b840988e4eff591eddd1e0bf8fa3c8b .edge-thickness-normal{stroke-width:1px;}#diagram-01ee26b6756d102fb783ee12f11f957c1b840988e4eff591eddd1e0bf8fa3c8b .edge-thickness-thick{stroke-width:3.5px;}#diagram-01ee26b6756d102fb783ee12f11f957c1b840988e4eff591eddd1e0bf8fa3c8b .edge-pattern-solid{stroke-dasharray:0;}#diagram-01ee26b6756d102fb783ee12f11f957c1b840988e4eff591eddd1e0bf8fa3c8b .edge-thickness-invisible{stroke-width:0;fill:none;}#diagram-01ee26b6756d102fb783ee12f11f957c1b840988e4eff591eddd1e0bf8fa3c8b .edge-pattern-dashed{stroke-dasharray:3;}#diagram-01ee26b6756d102fb783ee12f11f957c1b840988e4eff591eddd1e0bf8fa3c8b .edge-pattern-dotted{stroke-dasharray:2;}#diagram-01ee26b6756d102fb783ee12f11f957c1b840988e4eff591eddd1e0bf8fa3c8b .marker{fill:lightgrey;stroke:lightgrey;}#diagram-01ee26b6756d102fb783ee12f11f957c1b840988e4eff591eddd1e0bf8fa3c8b .marker.cross{stroke:lightgrey;}#diagram-01ee26b6756d102fb783ee12f11f957c1b840988e4eff591eddd1e0bf8fa3c8b svg{font-family:\"Redocly Mermaid Sans\",Arial,\"Liberation Sans\",Arimo,Helvetica,\"Redocly Mermaid CJK\",sans-serif;font-size:16px;}#diagram-01ee26b6756d102fb783ee12f11f957c1b840988e4eff591eddd1e0bf8fa3c8b p{margin:0;}#diagram-01ee26b6756d102fb783ee12f11f957c1b840988e4eff591eddd1e0bf8fa3c8b .actor{stroke:#ccc;fill:#1f2020;stroke-width:1;}#diagram-01ee26b6756d102fb783ee12f11f957c1b840988e4eff591eddd1e0bf8fa3c8b rect.actor.outer-path[data-look=\"neo\"]{filter:drop-shadow( 1px 2px 2px rgba(185,185,185,1));}#diagram-01ee26b6756d102fb783ee12f11f957c1b840988e4eff591eddd1e0bf8fa3c8b rect.note[data-look=\"neo\"]{stroke:hsl(180, 0%, 18.3529411765%);fill:hsl(180, 1.5873015873%, 28.3529411765%);filter:drop-shadow( 1px 2px 2px rgba(185,185,185,1));}#diagram-01ee26b6756d102fb783ee12f11f957c1b840988e4eff591eddd1e0bf8fa3c8b text.actor&gt;tspan{fill:lightgrey;stroke:none;}#diagram-01ee26b6756d102fb783ee12f11f957c1b840988e4eff591eddd1e0bf8fa3c8b .actor-line{stroke:#ccc;}#diagram-01ee26b6756d102fb783ee12f11f957c1b840988e4eff591eddd1e0bf8fa3c8b .innerArc{stroke-width:1.5;stroke-dasharray:none;}#diagram-01ee26b6756d102fb783ee12f11f957c1b840988e4eff591eddd1e0bf8fa3c8b .messageLine0{stroke-width:1.5;stroke-dasharray:none;stroke:lightgrey;}#diagram-01ee26b6756d102fb783ee12f11f957c1b840988e4eff591eddd1e0bf8fa3c8b .messageLine1{stroke-width:1.5;stroke-dasharray:2,2;stroke:lightgrey;}#diagram-01ee26b6756d102fb783ee12f11f957c1b840988e4eff591eddd1e0bf8fa3c8b [id$=\"-arrowhead\"] path{fill:lightgrey;stroke:lightgrey;}#diagram-01ee26b6756d102fb783ee12f11f957c1b840988e4eff591eddd1e0bf8fa3c8b .sequenceNumber{fill:black;}#diagram-01ee26b6756d102fb783ee12f11f957c1b840988e4eff591eddd1e0bf8fa3c8b [id$=\"-sequencenumber\"]{fill:lightgrey;}#diagram-01ee26b6756d102fb783ee12f11f957c1b840988e4eff591eddd1e0bf8fa3c8b [id$=\"-crosshead\"] path{fill:lightgrey;stroke:lightgrey;}#diagram-01ee26b6756d102fb783ee12f11f957c1b840988e4eff591eddd1e0bf8fa3c8b .messageText{fill:lightgrey;stroke:none;}#diagram-01ee26b6756d102fb783ee12f11f957c1b840988e4eff591eddd1e0bf8fa3c8b .labelBox{stroke:#ccc;fill:#1f2020;filter:none;}#diagram-01ee26b6756d102fb783ee12f11f957c1b840988e4eff591eddd1e0bf8fa3c8b .labelText,#diagram-01ee26b6756d102fb783ee12f11f957c1b840988e4eff591eddd1e0bf8fa3c8b .labelText&gt;tspan{fill:lightgrey;stroke:none;}#diagram-01ee26b6756d102fb783ee12f11f957c1b840988e4eff591eddd1e0bf8fa3c8b .loopText,#diagram-01ee26b6756d102fb783ee12f11f957c1b840988e4eff591eddd1e0bf8fa3c8b .loopText&gt;tspan{fill:lightgrey;stroke:none;}#diagram-01ee26b6756d102fb783ee12f11f957c1b840988e4eff591eddd1e0bf8fa3c8b .sectionTitle,#diagram-01ee26b6756d102fb783ee12f11f957c1b840988e4eff591eddd1e0bf8fa3c8b .sectionTitle&gt;tspan{fill:lightgrey;stroke:none;}#diagram-01ee26b6756d102fb783ee12f11f957c1b840988e4eff591eddd1e0bf8fa3c8b .loopLine{stroke-width:2px;stroke-dasharray:2,2;stroke:#ccc;fill:#ccc;}#diagram-01ee26b6756d102fb783ee12f11f957c1b840988e4eff591eddd1e0bf8fa3c8b .note{stroke:hsl(180, 0%, 18.3529411765%);fill:hsl(180, 1.5873015873%, 28.3529411765%);}#diagram-01ee26b6756d102fb783ee12f11f957c1b840988e4eff591eddd1e0bf8fa3c8b .noteText,#diagram-01ee26b6756d102fb783ee12f11f957c1b840988e4eff591eddd1e0bf8fa3c8b .noteText&gt;tspan{fill:rgb(183.8476190475, 181.5523809523, 181.5523809523);stroke:none;font-weight:normal;}#diagram-01ee26b6756d102fb783ee12f11f957c1b840988e4eff591eddd1e0bf8fa3c8b .activation0{fill:hsl(180, 1.5873015873%, 28.3529411765%);stroke:#ccc;}#diagram-01ee26b6756d102fb783ee12f11f957c1b840988e4eff591eddd1e0bf8fa3c8b .activation1{fill:hsl(180, 1.5873015873%, 28.3529411765%);stroke:#ccc;}#diagram-01ee26b6756d102fb783ee12f11f957c1b840988e4eff591eddd1e0bf8fa3c8b .activation2{fill:hsl(180, 1.5873015873%, 28.3529411765%);stroke:#ccc;}#diagram-01ee26b6756d102fb783ee12f11f957c1b840988e4eff591eddd1e0bf8fa3c8b .actorPopupMenu{position:absolute;}#diagram-01ee26b6756d102fb783ee12f11f957c1b840988e4eff591eddd1e0bf8fa3c8b .actorPopupMenuPanel{position:absolute;fill:#1f2020;box-shadow:0px 8px 16px 0px rgba(0,0,0,0.2);filter:drop-shadow(3px 5px 2px rgb(0 0 0 / 0.4));}#diagram-01ee26b6756d102fb783ee12f11f957c1b840988e4eff591eddd1e0bf8fa3c8b .actor-man circle,#diagram-01ee26b6756d102fb783ee12f11f957c1b840988e4eff591eddd1e0bf8fa3c8b line{fill:#1f2020;stroke-width:2px;}#diagram-01ee26b6756d102fb783ee12f11f957c1b840988e4eff591eddd1e0bf8fa3c8b g rect.rect{filter:drop-shadow( 1px 2px 2px rgba(185,185,185,1));stroke:#ccc;}#diagram-01ee26b6756d102fb783ee12f11f957c1b840988e4eff591eddd1e0bf8fa3c8b .node .neo-node{stroke:#ccc;}#diagram-01ee26b6756d102fb783ee12f11f957c1b840988e4eff591eddd1e0bf8fa3c8b [data-look=\"neo\"].node rect,#diagram-01ee26b6756d102fb783ee12f11f957c1b840988e4eff591eddd1e0bf8fa3c8b [data-look=\"neo\"].cluster rect,#diagram-01ee26b6756d102fb783ee12f11f957c1b840988e4eff591eddd1e0bf8fa3c8b [data-look=\"neo\"].node polygon{stroke:url(#diagram-01ee26b6756d102fb783ee12f11f957c1b840988e4eff591eddd1e0bf8fa3c8b-gradient);filter:drop-shadow( 1px 2px 2px rgba(185,185,185,1));}#diagram-01ee26b6756d102fb783ee12f11f957c1b840988e4eff591eddd1e0bf8fa3c8b [data-look=\"neo\"].swimlane.cluster rect{filter:none;}#diagram-01ee26b6756d102fb783ee12f11f957c1b840988e4eff591eddd1e0bf8fa3c8b [data-look=\"neo\"].node path{stroke:url(#diagram-01ee26b6756d102fb783ee12f11f957c1b840988e4eff591eddd1e0bf8fa3c8b-gradient);stroke-width:1px;}#diagram-01ee26b6756d102fb783ee12f11f957c1b840988e4eff591eddd1e0bf8fa3c8b [data-look=\"neo\"].node .outer-path{filter:drop-shadow( 1px 2px 2px rgba(185,185,185,1));}#diagram-01ee26b6756d102fb783ee12f11f957c1b840988e4eff591eddd1e0bf8fa3c8b [data-look=\"neo\"].node .neo-line path{stroke:#ccc;filter:none;}#diagram-01ee26b6756d102fb783ee12f11f957c1b840988e4eff591eddd1e0bf8fa3c8b [data-look=\"neo\"].node circle{stroke:url(#diagram-01ee26b6756d102fb783ee12f11f957c1b840988e4eff591eddd1e0bf8fa3c8b-gradient);filter:drop-shadow( 1px 2px 2px rgba(185,185,185,1));}#diagram-01ee26b6756d102fb783ee12f11f957c1b840988e4eff591eddd1e0bf8fa3c8b [data-look=\"neo\"].node circle .state-start{fill:#000000;}#diagram-01ee26b6756d102fb783ee12f11f957c1b840988e4eff591eddd1e0bf8fa3c8b [data-look=\"neo\"].icon-shape .icon{fill:url(#diagram-01ee26b6756d102fb783ee12f11f957c1b840988e4eff591eddd1e0bf8fa3c8b-gradient);filter:drop-shadow( 1px 2px 2px rgba(185,185,185,1));}#diagram-01ee26b6756d102fb783ee12f11f957c1b840988e4eff591eddd1e0bf8fa3c8b [data-look=\"neo\"].icon-shape .icon-neo path{stroke:url(#diagram-01ee26b6756d102fb783ee12f11f957c1b840988e4eff591eddd1e0bf8fa3c8b-gradient);filter:drop-shadow( 1px 2px 2px rgba(185,185,185,1));}#diagram-01ee26b6756d102fb783ee12f11f957c1b840988e4eff591eddd1e0bf8fa3c8b :root{--mermaid-font-family:\"Redocly Mermaid Sans\",Arial,\"Liberation Sans\",Arimo,Helvetica,\"Redocly Mermaid CJK\",sans-serif;}</style><g></g><defs><symbol id=\"diagram-01ee26b6756d102fb783ee12f11f957c1b840988e4eff591eddd1e0bf8fa3c8b-computer\" width=\"24\" height=\"24\"><path transform=\"scale(.5)\" d=\"M2 2v13h20v-13h-20zm18 11h-16v-9h16v9zm-10.228 6l.466-1h3.524l.467 1h-4.457zm14.228 3h-24l2-6h2.104l-1.33 4h18.45l-1.297-4h2.073l2 6zm-5-10h-14v-7h14v7z\"></path></symbol></defs><defs><symbol id=\"diagram-01ee26b6756d102fb783ee12f11f957c1b840988e4eff591eddd1e0bf8fa3c8b-database\" fill-rule=\"evenodd\" clip-rule=\"evenodd\"><path transform=\"scale(.5)\" d=\"M12.258.001l.256.004.255.005.253.008.251.01.249.012.247.015.246.016.242.019.241.02.239.023.236.024.233.027.231.028.229.031.225.032.223.034.22.036.217.038.214.04.211.041.208.043.205.045.201.046.198.048.194.05.191.051.187.053.183.054.18.056.175.057.172.059.168.06.163.061.16.063.155.064.15.066.074.033.073.033.071.034.07.034.069.035.068.035.067.035.066.035.064.036.064.036.062.036.06.036.06.037.058.037.058.037.055.038.055.038.053.038.052.038.051.039.05.039.048.039.047.039.045.04.044.04.043.04.041.04.04.041.039.041.037.041.036.041.034.041.033.042.032.042.03.042.029.042.027.042.026.043.024.043.023.043.021.043.02.043.018.044.017.043.015.044.013.044.012.044.011.045.009.044.007.045.006.045.004.045.002.045.001.045v17l-.001.045-.002.045-.004.045-.006.045-.007.045-.009.044-.011.045-.012.044-.013.044-.015.044-.017.043-.018.044-.02.043-.021.043-.023.043-.024.043-.026.043-.027.042-.029.042-.03.042-.032.042-.033.042-.034.041-.036.041-.037.041-.039.041-.04.041-.041.04-.043.04-.044.04-.045.04-.047.039-.048.039-.05.039-.051.039-.052.038-.053.038-.055.038-.055.038-.058.037-.058.037-.06.037-.06.036-.062.036-.064.036-.064.036-.066.035-.067.035-.068.035-.069.035-.07.034-.071.034-.073.033-.074.033-.15.066-.155.064-.16.063-.163.061-.168.06-.172.059-.175.057-.18.056-.183.054-.187.053-.191.051-.194.05-.198.048-.201.046-.205.045-.208.043-.211.041-.214.04-.217.038-.22.036-.223.034-.225.032-.229.031-.231.028-.233.027-.236.024-.239.023-.241.02-.242.019-.246.016-.247.015-.249.012-.251.01-.253.008-.255.005-.256.004-.258.001-.258-.001-.256-.004-.255-.005-.253-.008-.251-.01-.249-.012-.247-.015-.245-.016-.243-.019-.241-.02-.238-.023-.236-.024-.234-.027-.231-.028-.228-.031-.226-.032-.223-.034-.22-.036-.217-.038-.214-.04-.211-.041-.208-.043-.204-.045-.201-.046-.198-.048-.195-.05-.19-.051-.187-.053-.184-.054-.179-.056-.176-.057-.172-.059-.167-.06-.164-.061-.159-.063-.155-.064-.151-.066-.074-.033-.072-.033-.072-.034-.07-.034-.069-.035-.068-.035-.067-.035-.066-.035-.064-.036-.063-.036-.062-.036-.061-.036-.06-.037-.058-.037-.057-.037-.056-.038-.055-.038-.053-.038-.052-.038-.051-.039-.049-.039-.049-.039-.046-.039-.046-.04-.044-.04-.043-.04-.041-.04-.04-.041-.039-.041-.037-.041-.036-.041-.034-.041-.033-.042-.032-.042-.03-.042-.029-.042-.027-.042-.026-.043-.024-.043-.023-.043-.021-.043-.02-.043-.018-.044-.017-.043-.015-.044-.013-.044-.012-.044-.011-.045-.009-.044-.007-.045-.006-.045-.004-.045-.002-.045-.001-.045v-17l.001-.045.002-.045.004-.045.006-.045.007-.045.009-.044.011-.045.012-.044.013-.044.015-.044.017-.043.018-.044.02-.043.021-.043.023-.043.024-.043.026-.043.027-.042.029-.042.03-.042.032-.042.033-.042.034-.041.036-.041.037-.041.039-.041.04-.041.041-.04.043-.04.044-.04.046-.04.046-.039.049-.039.049-.039.051-.039.052-.038.053-.038.055-.038.056-.038.057-.037.058-.037.06-.037.061-.036.062-.036.063-.036.064-.036.066-.035.067-.035.068-.035.069-.035.07-.034.072-.034.072-.033.074-.033.151-.066.155-.064.159-.063.164-.061.167-.06.172-.059.176-.057.179-.056.184-.054.187-.053.19-.051.195-.05.198-.048.201-.046.204-.045.208-.043.211-.041.214-.04.217-.038.22-.036.223-.034.226-.032.228-.031.231-.028.234-.027.236-.024.238-.023.241-.02.243-.019.245-.016.247-.015.249-.012.251-.01.253-.008.255-.005.256-.004.258-.001.258.001zm-9.258 20.499v.01l.001.021.003.021.004.022.005.021.006.022.007.022.009.023.01.022.011.023.012.023.013.023.015.023.016.024.017.023.018.024.019.024.021.024.022.025.023.024.024.025.052.049.056.05.061.051.066.051.07.051.075.051.079.052.084.052.088.052.092.052.097.052.102.051.105.052.11.052.114.051.119.051.123.051.127.05.131.05.135.05.139.048.144.049.147.047.152.047.155.047.16.045.163.045.167.043.171.043.176.041.178.041.183.039.187.039.19.037.194.035.197.035.202.033.204.031.209.03.212.029.216.027.219.025.222.024.226.021.23.02.233.018.236.016.24.015.243.012.246.01.249.008.253.005.256.004.259.001.26-.001.257-.004.254-.005.25-.008.247-.011.244-.012.241-.014.237-.016.233-.018.231-.021.226-.021.224-.024.22-.026.216-.027.212-.028.21-.031.205-.031.202-.034.198-.034.194-.036.191-.037.187-.039.183-.04.179-.04.175-.042.172-.043.168-.044.163-.045.16-.046.155-.046.152-.047.148-.048.143-.049.139-.049.136-.05.131-.05.126-.05.123-.051.118-.052.114-.051.11-.052.106-.052.101-.052.096-.052.092-.052.088-.053.083-.051.079-.052.074-.052.07-.051.065-.051.06-.051.056-.05.051-.05.023-.024.023-.025.021-.024.02-.024.019-.024.018-.024.017-.024.015-.023.014-.024.013-.023.012-.023.01-.023.01-.022.008-.022.006-.022.006-.022.004-.022.004-.021.001-.021.001-.021v-4.127l-.077.055-.08.053-.083.054-.085.053-.087.052-.09.052-.093.051-.095.05-.097.05-.1.049-.102.049-.105.048-.106.047-.109.047-.111.046-.114.045-.115.045-.118.044-.12.043-.122.042-.124.042-.126.041-.128.04-.13.04-.132.038-.134.038-.135.037-.138.037-.139.035-.142.035-.143.034-.144.033-.147.032-.148.031-.15.03-.151.03-.153.029-.154.027-.156.027-.158.026-.159.025-.161.024-.162.023-.163.022-.165.021-.166.02-.167.019-.169.018-.169.017-.171.016-.173.015-.173.014-.175.013-.175.012-.177.011-.178.01-.179.008-.179.008-.181.006-.182.005-.182.004-.184.003-.184.002h-.37l-.184-.002-.184-.003-.182-.004-.182-.005-.181-.006-.179-.008-.179-.008-.178-.01-.176-.011-.176-.012-.175-.013-.173-.014-.172-.015-.171-.016-.17-.017-.169-.018-.167-.019-.166-.02-.165-.021-.163-.022-.162-.023-.161-.024-.159-.025-.157-.026-.156-.027-.155-.027-.153-.029-.151-.03-.15-.03-.148-.031-.146-.032-.145-.033-.143-.034-.141-.035-.14-.035-.137-.037-.136-.037-.134-.038-.132-.038-.13-.04-.128-.04-.126-.041-.124-.042-.122-.042-.12-.044-.117-.043-.116-.045-.113-.045-.112-.046-.109-.047-.106-.047-.105-.048-.102-.049-.1-.049-.097-.05-.095-.05-.093-.052-.09-.051-.087-.052-.085-.053-.083-.054-.08-.054-.077-.054v4.127zm0-5.654v.011l.001.021.003.021.004.021.005.022.006.022.007.022.009.022.01.022.011.023.012.023.013.023.015.024.016.023.017.024.018.024.019.024.021.024.022.024.023.025.024.024.052.05.056.05.061.05.066.051.07.051.075.052.079.051.084.052.088.052.092.052.097.052.102.052.105.052.11.051.114.051.119.052.123.05.127.051.131.05.135.049.139.049.144.048.147.048.152.047.155.046.16.045.163.045.167.044.171.042.176.042.178.04.183.04.187.038.19.037.194.036.197.034.202.033.204.032.209.03.212.028.216.027.219.025.222.024.226.022.23.02.233.018.236.016.24.014.243.012.246.01.249.008.253.006.256.003.259.001.26-.001.257-.003.254-.006.25-.008.247-.01.244-.012.241-.015.237-.016.233-.018.231-.02.226-.022.224-.024.22-.025.216-.027.212-.029.21-.03.205-.032.202-.033.198-.035.194-.036.191-.037.187-.039.183-.039.179-.041.175-.042.172-.043.168-.044.163-.045.16-.045.155-.047.152-.047.148-.048.143-.048.139-.05.136-.049.131-.05.126-.051.123-.051.118-.051.114-.052.11-.052.106-.052.101-.052.096-.052.092-.052.088-.052.083-.052.079-.052.074-.051.07-.052.065-.051.06-.05.056-.051.051-.049.023-.025.023-.024.021-.025.02-.024.019-.024.018-.024.017-.024.015-.023.014-.023.013-.024.012-.022.01-.023.01-.023.008-.022.006-.022.006-.022.004-.021.004-.022.001-.021.001-.021v-4.139l-.077.054-.08.054-.083.054-.085.052-.087.053-.09.051-.093.051-.095.051-.097.05-.1.049-.102.049-.105.048-.106.047-.109.047-.111.046-.114.045-.115.044-.118.044-.12.044-.122.042-.124.042-.126.041-.128.04-.13.039-.132.039-.134.038-.135.037-.138.036-.139.036-.142.035-.143.033-.144.033-.147.033-.148.031-.15.03-.151.03-.153.028-.154.028-.156.027-.158.026-.159.025-.161.024-.162.023-.163.022-.165.021-.166.02-.167.019-.169.018-.169.017-.171.016-.173.015-.173.014-.175.013-.175.012-.177.011-.178.009-.179.009-.179.007-.181.007-.182.005-.182.004-.184.003-.184.002h-.37l-.184-.002-.184-.003-.182-.004-.182-.005-.181-.007-.179-.007-.179-.009-.178-.009-.176-.011-.176-.012-.175-.013-.173-.014-.172-.015-.171-.016-.17-.017-.169-.018-.167-.019-.166-.02-.165-.021-.163-.022-.162-.023-.161-.024-.159-.025-.157-.026-.156-.027-.155-.028-.153-.028-.151-.03-.15-.03-.148-.031-.146-.033-.145-.033-.143-.033-.141-.035-.14-.036-.137-.036-.136-.037-.134-.038-.132-.039-.13-.039-.128-.04-.126-.041-.124-.042-.122-.043-.12-.043-.117-.044-.116-.044-.113-.046-.112-.046-.109-.046-.106-.047-.105-.048-.102-.049-.1-.049-.097-.05-.095-.051-.093-.051-.09-.051-.087-.053-.085-.052-.083-.054-.08-.054-.077-.054v4.139zm0-5.666v.011l.001.02.003.022.004.021.005.022.006.021.007.022.009.023.01.022.011.023.012.023.013.023.015.023.016.024.017.024.018.023.019.024.021.025.022.024.023.024.024.025.052.05.056.05.061.05.066.051.07.051.075.052.079.051.084.052.088.052.092.052.097.052.102.052.105.051.11.052.114.051.119.051.123.051.127.05.131.05.135.05.139.049.144.048.147.048.152.047.155.046.16.045.163.045.167.043.171.043.176.042.178.04.183.04.187.038.19.037.194.036.197.034.202.033.204.032.209.03.212.028.216.027.219.025.222.024.226.021.23.02.233.018.236.017.24.014.243.012.246.01.249.008.253.006.256.003.259.001.26-.001.257-.003.254-.006.25-.008.247-.01.244-.013.241-.014.237-.016.233-.018.231-.02.226-.022.224-.024.22-.025.216-.027.212-.029.21-.03.205-.032.202-.033.198-.035.194-.036.191-.037.187-.039.183-.039.179-.041.175-.042.172-.043.168-.044.163-.045.16-.045.155-.047.152-.047.148-.048.143-.049.139-.049.136-.049.131-.051.126-.05.123-.051.118-.052.114-.051.11-.052.106-.052.101-.052.096-.052.092-.052.088-.052.083-.052.079-.052.074-.052.07-.051.065-.051.06-.051.056-.05.051-.049.023-.025.023-.025.021-.024.02-.024.019-.024.018-.024.017-.024.015-.023.014-.024.013-.023.012-.023.01-.022.01-.023.008-.022.006-.022.006-.022.004-.022.004-.021.001-.021.001-.021v-4.153l-.077.054-.08.054-.083.053-.085.053-.087.053-.09.051-.093.051-.095.051-.097.05-.1.049-.102.048-.105.048-.106.048-.109.046-.111.046-.114.046-.115.044-.118.044-.12.043-.122.043-.124.042-.126.041-.128.04-.13.039-.132.039-.134.038-.135.037-.138.036-.139.036-.142.034-.143.034-.144.033-.147.032-.148.032-.15.03-.151.03-.153.028-.154.028-.156.027-.158.026-.159.024-.161.024-.162.023-.163.023-.165.021-.166.02-.167.019-.169.018-.169.017-.171.016-.173.015-.173.014-.175.013-.175.012-.177.01-.178.01-.179.009-.179.007-.181.006-.182.006-.182.004-.184.003-.184.001-.185.001-.185-.001-.184-.001-.184-.003-.182-.004-.182-.006-.181-.006-.179-.007-.179-.009-.178-.01-.176-.01-.176-.012-.175-.013-.173-.014-.172-.015-.171-.016-.17-.017-.169-.018-.167-.019-.166-.02-.165-.021-.163-.023-.162-.023-.161-.024-.159-.024-.157-.026-.156-.027-.155-.028-.153-.028-.151-.03-.15-.03-.148-.032-.146-.032-.145-.033-.143-.034-.141-.034-.14-.036-.137-.036-.136-.037-.134-.038-.132-.039-.13-.039-.128-.041-.126-.041-.124-.041-.122-.043-.12-.043-.117-.044-.116-.044-.113-.046-.112-.046-.109-.046-.106-.048-.105-.048-.102-.048-.1-.05-.097-.049-.095-.051-.093-.051-.09-.052-.087-.052-.085-.053-.083-.053-.08-.054-.077-.054v4.153zm8.74-8.179l-.257.004-.254.005-.25.008-.247.011-.244.012-.241.014-.237.016-.233.018-.231.021-.226.022-.224.023-.22.026-.216.027-.212.028-.21.031-.205.032-.202.033-.198.034-.194.036-.191.038-.187.038-.183.04-.179.041-.175.042-.172.043-.168.043-.163.045-.16.046-.155.046-.152.048-.148.048-.143.048-.139.049-.136.05-.131.05-.126.051-.123.051-.118.051-.114.052-.11.052-.106.052-.101.052-.096.052-.092.052-.088.052-.083.052-.079.052-.074.051-.07.052-.065.051-.06.05-.056.05-.051.05-.023.025-.023.024-.021.024-.02.025-.019.024-.018.024-.017.023-.015.024-.014.023-.013.023-.012.023-.01.023-.01.022-.008.022-.006.023-.006.021-.004.022-.004.021-.001.021-.001.021.001.021.001.021.004.021.004.022.006.021.006.023.008.022.01.022.01.023.012.023.013.023.014.023.015.024.017.023.018.024.019.024.02.025.021.024.023.024.023.025.051.05.056.05.06.05.065.051.07.052.074.051.079.052.083.052.088.052.092.052.096.052.101.052.106.052.11.052.114.052.118.051.123.051.126.051.131.05.136.05.139.049.143.048.148.048.152.048.155.046.16.046.163.045.168.043.172.043.175.042.179.041.183.04.187.038.191.038.194.036.198.034.202.033.205.032.21.031.212.028.216.027.22.026.224.023.226.022.231.021.233.018.237.016.241.014.244.012.247.011.25.008.254.005.257.004.26.001.26-.001.257-.004.254-.005.25-.008.247-.011.244-.012.241-.014.237-.016.233-.018.231-.021.226-.022.224-.023.22-.026.216-.027.212-.028.21-.031.205-.032.202-.033.198-.034.194-.036.191-.038.187-.038.183-.04.179-.041.175-.042.172-.043.168-.043.163-.045.16-.046.155-.046.152-.048.148-.048.143-.048.139-.049.136-.05.131-.05.126-.051.123-.051.118-.051.114-.052.11-.052.106-.052.101-.052.096-.052.092-.052.088-.052.083-.052.079-.052.074-.051.07-.052.065-.051.06-.05.056-.05.051-.05.023-.025.023-.024.021-.024.02-.025.019-.024.018-.024.017-.023.015-.024.014-.023.013-.023.012-.023.01-.023.01-.022.008-.022.006-.023.006-.021.004-.022.004-.021.001-.021.001-.021-.001-.021-.001-.021-.004-.021-.004-.022-.006-.021-.006-.023-.008-.022-.01-.022-.01-.023-.012-.023-.013-.023-.014-.023-.015-.024-.017-.023-.018-.024-.019-.024-.02-.025-.021-.024-.023-.024-.023-.025-.051-.05-.056-.05-.06-.05-.065-.051-.07-.052-.074-.051-.079-.052-.083-.052-.088-.052-.092-.052-.096-.052-.101-.052-.106-.052-.11-.052-.114-.052-.118-.051-.123-.051-.126-.051-.131-.05-.136-.05-.139-.049-.143-.048-.148-.048-.152-.048-.155-.046-.16-.046-.163-.045-.168-.043-.172-.043-.175-.042-.179-.041-.183-.04-.187-.038-.191-.038-.194-.036-.198-.034-.202-.033-.205-.032-.21-.031-.212-.028-.216-.027-.22-.026-.224-.023-.226-.022-.231-.021-.233-.018-.237-.016-.241-.014-.244-.012-.247-.011-.25-.008-.254-.005-.257-.004-.26-.001-.26.001z\"></path></symbol></defs><defs><symbol id=\"diagram-01ee26b6756d102fb783ee12f11f957c1b840988e4eff591eddd1e0bf8fa3c8b-clock\" width=\"24\" height=\"24\"><path transform=\"scale(.5)\" d=\"M12 2c5.514 0 10 4.486 10 10s-4.486 10-10 10-10-4.486-10-10 4.486-10 10-10zm0-2c-6.627 0-12 5.373-12 12s5.373 12 12 12 12-5.373 12-12-5.373-12-12-12zm5.848 12.459c.202.038.202.333.001.372-1.907.361-6.045 1.111-6.547 1.111-.719 0-1.301-.582-1.301-1.301 0-.512.77-5.447 1.125-7.445.034-.192.312-.181.343.014l.985 6.238 5.394 1.011z\"></path></symbol></defs><defs><marker id=\"diagram-01ee26b6756d102fb783ee12f11f957c1b840988e4eff591eddd1e0bf8fa3c8b-arrowhead\" refX=\"7.9\" refY=\"5\" markerUnits=\"userSpaceOnUse\" markerWidth=\"12\" markerHeight=\"12\" orient=\"auto-start-reverse\"><path d=\"M -1 0 L 10 5 L 0 10 z\"></path></marker></defs><defs><marker id=\"diagram-01ee26b6756d102fb783ee12f11f957c1b840988e4eff591eddd1e0bf8fa3c8b-crosshead\" markerWidth=\"15\" markerHeight=\"8\" orient=\"auto\" refX=\"4\" refY=\"4.5\"><path fill=\"none\" stroke=\"#000000\" stroke-width=\"1pt\" d=\"M 1,2 L 6,7 M 6,2 L 1,7\" style=\"stroke-dasharray: 0, 0;\"></path></marker></defs><defs><marker id=\"diagram-01ee26b6756d102fb783ee12f11f957c1b840988e4eff591eddd1e0bf8fa3c8b-filled-head\" refX=\"15.5\" refY=\"7\" markerWidth=\"20\" markerHeight=\"28\" orient=\"auto\"><path d=\"M 18,7 L9,13 L14,7 L9,1 Z\"></path></marker></defs><defs><marker id=\"diagram-01ee26b6756d102fb783ee12f11f957c1b840988e4eff591eddd1e0bf8fa3c8b-sequencenumber\" refX=\"15\" refY=\"15\" markerWidth=\"60\" markerHeight=\"40\" orient=\"auto\"><circle cx=\"15\" cy=\"15\" r=\"6\"></circle></marker></defs><defs><marker id=\"diagram-01ee26b6756d102fb783ee12f11f957c1b840988e4eff591eddd1e0bf8fa3c8b-solidTopArrowHead\" refX=\"7.9\" refY=\"7.25\" markerUnits=\"userSpaceOnUse\" markerWidth=\"12\" markerHeight=\"12\" orient=\"auto-start-reverse\"><path d=\"M 0 0 L 10 8 L 0 8 z\"></path></marker></defs><defs><marker id=\"diagram-01ee26b6756d102fb783ee12f11f957c1b840988e4eff591eddd1e0bf8fa3c8b-solidBottomArrowHead\" refX=\"7.9\" refY=\"0.75\" markerUnits=\"userSpaceOnUse\" markerWidth=\"12\" markerHeight=\"12\" orient=\"auto-start-reverse\"><path d=\"M 0 0 L 10 0 L 0 8 z\"></path></marker></defs><defs><marker id=\"diagram-01ee26b6756d102fb783ee12f11f957c1b840988e4eff591eddd1e0bf8fa3c8b-stickTopArrowHead\" refX=\"7.5\" refY=\"7\" markerUnits=\"userSpaceOnUse\" markerWidth=\"12\" markerHeight=\"12\" orient=\"auto-start-reverse\"><path d=\"M 0 0 L 7 7\" stroke=\"black\" stroke-width=\"1.5\" fill=\"none\"></path></marker></defs><defs><marker id=\"diagram-01ee26b6756d102fb783ee12f11f957c1b840988e4eff591eddd1e0bf8fa3c8b-stickBottomArrowHead\" refX=\"7.5\" refY=\"0\" markerUnits=\"userSpaceOnUse\" markerWidth=\"12\" markerHeight=\"12\" orient=\"auto-start-reverse\"><path d=\"M 0 7 L 7 0\" stroke=\"black\" stroke-width=\"1.5\" fill=\"none\"></path></marker></defs><g data-et=\"note\" data-id=\"i0\"><rect x=\"50\" y=\"75\" fill=\"#EDF2AE\" stroke=\"#666\" width=\"588\" height=\"38\" class=\"note\"></rect><text x=\"344\" y=\"80\" text-anchor=\"middle\" dominant-baseline=\"middle\" alignment-baseline=\"middle\" class=\"noteText\" dy=\"1em\" style=\"font-family: &quot;Redocly Mermaid Sans&quot;, Arial, &quot;Liberation Sans&quot;, Arimo, Helvetica, &quot;Redocly Mermaid CJK&quot;, sans-serif; font-size: 16px; font-weight: 400;\"><tspan x=\"344\">Prerequisite — associate loans with the investor</tspan></text></g><g data-et=\"note\" data-id=\"i3\"><rect x=\"50\" y=\"215\" fill=\"#EDF2AE\" stroke=\"#666\" width=\"588\" height=\"38\" class=\"note\"></rect><text x=\"344\" y=\"220\" text-anchor=\"middle\" dominant-baseline=\"middle\" alignment-baseline=\"middle\" class=\"noteText\" dy=\"1em\" style=\"font-family: &quot;Redocly Mermaid Sans&quot;, Arial, &quot;Liberation Sans&quot;, Arimo, Helvetica, &quot;Redocly Mermaid CJK&quot;, sans-serif; font-size: 16px; font-weight: 400;\"><tspan x=\"344\">Configure</tspan></text></g><g data-et=\"note\" data-id=\"i8\"><rect x=\"50\" y=\"447\" fill=\"#EDF2AE\" stroke=\"#666\" width=\"588\" height=\"38\" class=\"note\"></rect><text x=\"344\" y=\"452\" text-anchor=\"middle\" dominant-baseline=\"middle\" alignment-baseline=\"middle\" class=\"noteText\" dy=\"1em\" style=\"font-family: &quot;Redocly Mermaid Sans&quot;, Arial, &quot;Liberation Sans&quot;, Arimo, Helvetica, &quot;Redocly Mermaid CJK&quot;, sans-serif; font-size: 16px; font-weight: 400;\"><tspan x=\"344\">Generate (asynchronous)</tspan></text></g><g data-et=\"note\" data-id=\"i13\"><rect x=\"50\" y=\"709\" fill=\"#EDF2AE\" stroke=\"#666\" width=\"588\" height=\"37\" class=\"note\"></rect><text x=\"344\" y=\"714\" text-anchor=\"middle\" dominant-baseline=\"middle\" alignment-baseline=\"middle\" class=\"noteText\" dy=\"1em\" style=\"font-family: &quot;Redocly Mermaid Sans&quot;, Arial, &quot;Liberation Sans&quot;, Arimo, Helvetica, &quot;Redocly Mermaid CJK&quot;, sans-serif; font-size: 16px; font-weight: 400;\"><tspan x=\"344\">Monitor</tspan></text></g><text x=\"343\" y=\"128\" text-anchor=\"middle\" dominant-baseline=\"middle\" alignment-baseline=\"middle\" class=\"messageText\" dy=\"1em\" style=\"font-family: &quot;Redocly Mermaid Sans&quot;, Arial, &quot;Liberation Sans&quot;, Arimo, Helvetica, &quot;Redocly Mermaid CJK&quot;, sans-serif; font-size: 16px; font-weight: 400;\">PUT /people/{personId}/loans/{loanId}/investors</text><line x1=\"76\" y1=\"159\" x2=\"609\" y2=\"159\" class=\"messageLine0\" data-et=\"message\" data-id=\"i1\" data-from=\"L\" data-to=\"P\" stroke-width=\"2\" stroke=\"none\" marker-end=\"url(#diagram-01ee26b6756d102fb783ee12f11f957c1b840988e4eff591eddd1e0bf8fa3c8b-arrowhead)\" style=\"fill: none;\"></line><text x=\"346\" y=\"174\" text-anchor=\"middle\" dominant-baseline=\"middle\" alignment-baseline=\"middle\" class=\"messageText\" dy=\"1em\" style=\"font-family: &quot;Redocly Mermaid Sans&quot;, Arial, &quot;Liberation Sans&quot;, Arimo, Helvetica, &quot;Redocly Mermaid CJK&quot;, sans-serif; font-size: 16px; font-weight: 400;\">204 (LoanInvestorAssociation set)</text><line x1=\"612\" y1=\"205\" x2=\"79\" y2=\"205\" class=\"messageLine1\" data-et=\"message\" data-id=\"i2\" data-from=\"P\" data-to=\"L\" stroke-width=\"2\" stroke=\"none\" marker-end=\"url(#diagram-01ee26b6756d102fb783ee12f11f957c1b840988e4eff591eddd1e0bf8fa3c8b-arrowhead)\" style=\"stroke-dasharray: 3, 3; fill: none;\"></line><text x=\"343\" y=\"268\" text-anchor=\"middle\" dominant-baseline=\"middle\" alignment-baseline=\"middle\" class=\"messageText\" dy=\"1em\" style=\"font-family: &quot;Redocly Mermaid Sans&quot;, Arial, &quot;Liberation Sans&quot;, Arimo, Helvetica, &quot;Redocly Mermaid CJK&quot;, sans-serif; font-size: 16px; font-weight: 400;\">POST /companies/{companyId}/loan-tape-types</text><line x1=\"76\" y1=\"299\" x2=\"609\" y2=\"299\" class=\"messageLine0\" data-et=\"message\" data-id=\"i4\" data-from=\"L\" data-to=\"P\" stroke-width=\"2\" stroke=\"none\" marker-end=\"url(#diagram-01ee26b6756d102fb783ee12f11f957c1b840988e4eff591eddd1e0bf8fa3c8b-arrowhead)\" style=\"fill: none;\"></line><text x=\"346\" y=\"314\" text-anchor=\"middle\" dominant-baseline=\"middle\" alignment-baseline=\"middle\" class=\"messageText\" dy=\"1em\" style=\"font-family: &quot;Redocly Mermaid Sans&quot;, Arial, &quot;Liberation Sans&quot;, Arimo, Helvetica, &quot;Redocly Mermaid CJK&quot;, sans-serif; font-size: 16px; font-weight: 400;\">201 loanTapeTypeId (TY-...)</text><line x1=\"612\" y1=\"345\" x2=\"79\" y2=\"345\" class=\"messageLine1\" data-et=\"message\" data-id=\"i5\" data-from=\"P\" data-to=\"L\" stroke-width=\"2\" stroke=\"none\" marker-end=\"url(#diagram-01ee26b6756d102fb783ee12f11f957c1b840988e4eff591eddd1e0bf8fa3c8b-arrowhead)\" style=\"stroke-dasharray: 3, 3; fill: none;\"></line><text x=\"343\" y=\"360\" text-anchor=\"middle\" dominant-baseline=\"middle\" alignment-baseline=\"middle\" class=\"messageText\" dy=\"1em\" style=\"font-family: &quot;Redocly Mermaid Sans&quot;, Arial, &quot;Liberation Sans&quot;, Arimo, Helvetica, &quot;Redocly Mermaid CJK&quot;, sans-serif; font-size: 16px; font-weight: 400;\">POST /companies/{companyId}/loan-tapes (investorId set)</text><line x1=\"76\" y1=\"391\" x2=\"609\" y2=\"391\" class=\"messageLine0\" data-et=\"message\" data-id=\"i6\" data-from=\"L\" data-to=\"P\" stroke-width=\"2\" stroke=\"none\" marker-end=\"url(#diagram-01ee26b6756d102fb783ee12f11f957c1b840988e4eff591eddd1e0bf8fa3c8b-arrowhead)\" style=\"fill: none;\"></line><text x=\"346\" y=\"406\" text-anchor=\"middle\" dominant-baseline=\"middle\" alignment-baseline=\"middle\" class=\"messageText\" dy=\"1em\" style=\"font-family: &quot;Redocly Mermaid Sans&quot;, Arial, &quot;Liberation Sans&quot;, Arimo, Helvetica, &quot;Redocly Mermaid CJK&quot;, sans-serif; font-size: 16px; font-weight: 400;\">201 loanTapeId (TA-...)</text><line x1=\"612\" y1=\"437\" x2=\"79\" y2=\"437\" class=\"messageLine1\" data-et=\"message\" data-id=\"i7\" data-from=\"P\" data-to=\"L\" stroke-width=\"2\" stroke=\"none\" marker-end=\"url(#diagram-01ee26b6756d102fb783ee12f11f957c1b840988e4eff591eddd1e0bf8fa3c8b-arrowhead)\" style=\"stroke-dasharray: 3, 3; fill: none;\"></line><text x=\"343\" y=\"500\" text-anchor=\"middle\" dominant-baseline=\"middle\" alignment-baseline=\"middle\" class=\"messageText\" dy=\"1em\" style=\"font-family: &quot;Redocly Mermaid Sans&quot;, Arial, &quot;Liberation Sans&quot;, Arimo, Helvetica, &quot;Redocly Mermaid CJK&quot;, sans-serif; font-size: 16px; font-weight: 400;\">POST /companies/{companyId}/loan-tapes/generate (reportDates)</text><line x1=\"76\" y1=\"531\" x2=\"609\" y2=\"531\" class=\"messageLine0\" data-et=\"message\" data-id=\"i9\" data-from=\"L\" data-to=\"P\" stroke-width=\"2\" stroke=\"none\" marker-end=\"url(#diagram-01ee26b6756d102fb783ee12f11f957c1b840988e4eff591eddd1e0bf8fa3c8b-arrowhead)\" style=\"fill: none;\"></line><text x=\"346\" y=\"546\" text-anchor=\"middle\" dominant-baseline=\"middle\" alignment-baseline=\"middle\" class=\"messageText\" dy=\"1em\" style=\"font-family: &quot;Redocly Mermaid Sans&quot;, Arial, &quot;Liberation Sans&quot;, Arimo, Helvetica, &quot;Redocly Mermaid CJK&quot;, sans-serif; font-size: 16px; font-weight: 400;\">201 [{ loanTapeId, operationId, reportDate }]</text><line x1=\"612\" y1=\"577\" x2=\"79\" y2=\"577\" class=\"messageLine1\" data-et=\"message\" data-id=\"i10\" data-from=\"P\" data-to=\"L\" stroke-width=\"2\" stroke=\"none\" marker-end=\"url(#diagram-01ee26b6756d102fb783ee12f11f957c1b840988e4eff591eddd1e0bf8fa3c8b-arrowhead)\" style=\"stroke-dasharray: 3, 3; fill: none;\"></line><text x=\"753\" y=\"592\" text-anchor=\"middle\" dominant-baseline=\"middle\" alignment-baseline=\"middle\" class=\"messageText\" dy=\"1em\" style=\"font-family: &quot;Redocly Mermaid Sans&quot;, Arial, &quot;Liberation Sans&quot;, Arimo, Helvetica, &quot;Redocly Mermaid CJK&quot;, sans-serif; font-size: 16px; font-weight: 400;\">fire LoanTapeCreateFileEvent</text><line x1=\"614\" y1=\"623\" x2=\"891\" y2=\"623\" class=\"messageLine0\" data-et=\"message\" data-id=\"i11\" data-from=\"P\" data-to=\"W\" stroke-width=\"2\" stroke=\"none\" marker-end=\"url(#diagram-01ee26b6756d102fb783ee12f11f957c1b840988e4eff591eddd1e0bf8fa3c8b-arrowhead)\" style=\"fill: none;\"></line><text x=\"896\" y=\"638\" text-anchor=\"middle\" dominant-baseline=\"middle\" alignment-baseline=\"middle\" class=\"messageText\" dy=\"1em\" style=\"font-family: &quot;Redocly Mermaid Sans&quot;, Arial, &quot;Liberation Sans&quot;, Arimo, Helvetica, &quot;Redocly Mermaid CJK&quot;, sans-serif; font-size: 16px; font-weight: 400;\">join loans on LoanInvestorAssociation, build CSV, upload to SFTP</text><path d=\"M 896,669 C 956,659 956,699 896,689\" class=\"messageLine0\" data-et=\"message\" data-id=\"i12\" data-from=\"W\" data-to=\"W\" stroke-width=\"2\" stroke=\"none\" marker-end=\"url(#diagram-01ee26b6756d102fb783ee12f11f957c1b840988e4eff591eddd1e0bf8fa3c8b-arrowhead)\" style=\"fill: none;\"></path><text x=\"343\" y=\"761\" text-anchor=\"middle\" dominant-baseline=\"middle\" alignment-baseline=\"middle\" class=\"messageText\" dy=\"1em\" style=\"font-family: &quot;Redocly Mermaid Sans&quot;, Arial, &quot;Liberation Sans&quot;, Arimo, Helvetica, &quot;Redocly Mermaid CJK&quot;, sans-serif; font-size: 16px; font-weight: 400;\">GET /companies/{companyId}/loan-tapes/{loanTapeId}/records</text><line x1=\"76\" y1=\"792\" x2=\"609\" y2=\"792\" class=\"messageLine0\" data-et=\"message\" data-id=\"i14\" data-from=\"L\" data-to=\"P\" stroke-width=\"2\" stroke=\"none\" marker-end=\"url(#diagram-01ee26b6756d102fb783ee12f11f957c1b840988e4eff591eddd1e0bf8fa3c8b-arrowhead)\" style=\"fill: none;\"></line><text x=\"346\" y=\"807\" text-anchor=\"middle\" dominant-baseline=\"middle\" alignment-baseline=\"middle\" class=\"messageText\" dy=\"1em\" style=\"font-family: &quot;Redocly Mermaid Sans&quot;, Arial, &quot;Liberation Sans&quot;, Arimo, Helvetica, &quot;Redocly Mermaid CJK&quot;, sans-serif; font-size: 16px; font-weight: 400;\">records with status (null → created → succeeded / failed)</text><line x1=\"612\" y1=\"838\" x2=\"79\" y2=\"838\" class=\"messageLine1\" data-et=\"message\" data-id=\"i15\" data-from=\"P\" data-to=\"L\" stroke-width=\"2\" stroke=\"none\" marker-end=\"url(#diagram-01ee26b6756d102fb783ee12f11f957c1b840988e4eff591eddd1e0bf8fa3c8b-arrowhead)\" style=\"stroke-dasharray: 3, 3; fill: none;\"></line></svg>"},"children":["sequenceDiagram\n    participant L as Lender\n    participant P as Peach API\n    participant W as Tape worker\n\n    Note over L,P: Prerequisite — associate loans with the investor\n    L->>P: PUT /people/{personId}/loans/{loanId}/investors\n    P-->>L: 204 (LoanInvestorAssociation set)\n\n    Note over L,P: Configure\n    L->>P: POST /companies/{companyId}/loan-tape-types\n    P-->>L: 201 loanTapeTypeId (TY-...)\n    L->>P: POST /companies/{companyId}/loan-tapes (investorId set)\n    P-->>L: 201 loanTapeId (TA-...)\n\n    Note over L,P: Generate (asynchronous)\n    L->>P: POST /companies/{companyId}/loan-tapes/generate (reportDates)\n    P-->>L: 201 [{ loanTapeId, operationId, reportDate }]\n    P->>W: fire LoanTapeCreateFileEvent\n    W->>W: join loans on LoanInvestorAssociation, build CSV, upload to SFTP\n\n    Note over L,P: Monitor\n    L->>P: GET /companies/{companyId}/loan-tapes/{loanTapeId}/records\n    P-->>L: records with status (null → created → succeeded / failed)\n"]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"step-1-create-or-select-the-loan-tape-type","__idx":7},"children":["Step 1: Create or select the loan tape type"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["A tape type fixes the column set and reporting rules. Create one if you don't already have a suitable type, or list existing types with ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["GET /api/companies/{companyId}/loan-tape-types"]}," and reuse one."]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"json","header":{"controls":{"copy":{}}},"source":"POST /api/companies/{companyId}/loan-tape-types\nContent-Type: application/json\n\n{\n  \"tapeName\": \"Investor portfolio — loans\",\n  \"tapeType\": \"loans\",\n  \"fields\": [\n    \"reportDate\",\n    \"loanId\",\n    \"investorId\",\n    \"investorOwnershipPercentage\",\n    \"loanStatus\",\n    \"outstandingBalanceTotalAmount\"\n  ],\n  \"moneyUnit\": \"subUnit100\",\n  \"reportDaysWhenPaidOff\": 10\n}\n","lang":"json"},"children":[]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["tapeType"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["tapeName"]},", and ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["fields"]}," are required. Amounts default to ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["subUnit100"]}," (integer pennies); set ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["moneyUnit"]}," to ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["fullUnit"]}," for decimal dollars. ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["reportDaysWhenPaidOff"]}," has a minimum of 10, and any lower value is raised to 10."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["For the complete field catalog and per-field meanings, see the ",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/data-reporting/loan-tape-reference"},"children":["Loan tape field reference"]}," — do not enumerate all fields here."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Expected result:"]}," The response returns ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["201"]}," with the new ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["loanTapeTypeId"]}," (format ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["TY-XXXX-XXXX"]},"). Save it for Step 2."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"step-2-create-the-investor-filtered-loan-tape","__idx":8},"children":["Step 2: Create the investor-filtered loan tape"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Create the tape that ties the tape type to a delivery destination, and set ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["investorId"]}," to scope it to one investor. This is the switch that turns a portfolio-wide tape into an investor-filtered one."]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"json","header":{"controls":{"copy":{}}},"source":"POST /api/companies/{companyId}/loan-tapes\nContent-Type: application/json\n\n{\n  \"loanTapeTypeId\": \"TY-4M8X-2P9Q\",\n  \"investorId\": \"IR-7F3A-9K2D\",\n  \"sftpHostname\": \"sftp.example-investor.com\",\n  \"sftpAccessMethod\": \"usernamePassword\",\n  \"sftpUsername\": \"<your-sftp-username>\",\n  \"sftpPassword\": \"<your-sftp-password>\"\n}\n","lang":"json"},"children":[]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["loanTapeTypeId"]}," and ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["sftpHostname"]}," are required. When ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["sftpAccessMethod"]}," is ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["usernamePassword"]}," (the default), supply ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["sftpUsername"]}," and ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["sftpPassword"]},". To encrypt the file, set ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["encryptionMethod"]}," to ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["GPG"]}," and provide the investor's ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["publicKey"]},"."]},{"$$mdtype":"Tag","name":"Admonition","attributes":{"type":"warning","name":"Never paste real credentials"},"children":[{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["sftpPassword"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["sftpUsername"]},", and ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["publicKey"]}," are real request fields that carry secrets supplied by the receiving investor. Use a secret manager and clearly-marked placeholders in any shared example. Never commit a literal password or key to a repository, ticket, or document."]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Leaving ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["investorId"]}," unset produces a tape covering every loan for the company; setting it restricts the tape to that one investor for the life of the tape."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Expected result:"]}," The response returns ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["201"]}," with the new ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["loanTapeId"]}," (format ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["TA-XXXX-XXXX"]},") and echoes the ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["investorId"]}," you set. Save the ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["loanTapeId"]}," for Step 3 and for monitoring."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"execute","__idx":9},"children":["Execute"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Generate the tape for one or more report dates. Generation is ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["asynchronous"]},": the call validates the request, fires one background job per tape and report date, and returns immediately. It does not return the file."]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"json","header":{"controls":{"copy":{}}},"source":"POST /api/companies/{companyId}/loan-tapes/generate\nContent-Type: application/json\n\n{\n  \"loanTapeIds\": [\"TA-DJEK-CVDE\"],\n  \"reportDates\": [\"2026-05-31\"],\n  \"forceReplace\": false,\n  \"uploadFile\": true\n}\n","lang":"json"},"children":[]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["reportDates"]}," is required (ISO ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["YYYY-MM-DD"]},"). If you omit ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["loanTapeIds"]},", Peach generates every tape configured for the company. ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["forceReplace"]}," (default ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["false"]},") creates a new record even when one already exists for that tape and date; ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["uploadFile"]}," (default ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["true"]},") controls whether the worker uploads the file to SFTP after building it."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Expected result:"]}," The response returns ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["201"]}," with one entry per tape and date, each carrying a ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["loanTapeId"]},", the ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["reportDate"]},", and an ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["operationId"]}," you can use to trace the background job."]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"json","header":{"controls":{"copy":{}}},"source":"{\n  \"data\": [\n    {\n      \"loanTapeId\": \"TA-DJEK-CVDE\",\n      \"reportDate\": \"2026-05-31\",\n      \"operationId\": \"8c1f0e6a-2d4b-4f9a-9b27-1a2b3c4d5e6f\"\n    }\n  ]\n}\n","lang":"json"},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"after-completion","__idx":10},"children":["After completion"]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"validate","__idx":11},"children":["Validate"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Poll the tape's records to track the job and confirm delivery. Records are returned sorted by ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["createdAt"]}," descending, so the most recent generation is first."]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"http","header":{"controls":{"copy":{}}},"source":"GET /api/companies/{companyId}/loan-tapes/{loanTapeId}/records\n","lang":"http"},"children":[]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Read the record's ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["status"]}," to determine where the job is:"]},{"$$mdtype":"Tag","name":"div","attributes":{"className":"md-table-wrapper"},"children":[{"$$mdtype":"Tag","name":"table","attributes":{"className":"md"},"children":[{"$$mdtype":"Tag","name":"thead","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"th","attributes":{"align":"left","data-label":"status"},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["status"]}]},{"$$mdtype":"Tag","name":"th","attributes":{"align":"left","data-label":"Meaning"},"children":["Meaning"]}]}]},{"$$mdtype":"Tag","name":"tbody","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{"align":"left"},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["null"]}]},{"$$mdtype":"Tag","name":"td","attributes":{"align":"left"},"children":["Generation is in progress — the record was created when the job triggered and has not reached a terminal state."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{"align":"left"},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["created"]}]},{"$$mdtype":"Tag","name":"td","attributes":{"align":"left"},"children":["The file was built but has not yet been uploaded to SFTP."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{"align":"left"},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["succeeded"]}]},{"$$mdtype":"Tag","name":"td","attributes":{"align":"left"},"children":["The tape was generated and, if configured, uploaded."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{"align":"left"},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["failed"]}]},{"$$mdtype":"Tag","name":"td","attributes":{"align":"left"},"children":["Generation failed; read ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["failureDescription"]}," for the reason."]}]}]}]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["The status moves through these states as the worker runs:"]},{"$$mdtype":"Tag","name":"Diagram","attributes":{"data-language":"mermaid","diagramType":"mermaid","diagramSource":"stateDiagram-v2\n    [*] --> InProgress: generate fired (status null)\n    InProgress --> Created: file built, awaiting SFTP upload\n    InProgress --> Succeeded: file built, upload skipped (uploadFile=false)\n    Created --> Succeeded: uploaded to SFTP\n    InProgress --> Failed: see failureDescription\n    Created --> Failed: upload failed\n    Succeeded --> [*]\n    Failed --> [*]\n","diagramHtml":"<svg id=\"diagram-4b86f133bd9639c71aeb6603a068d96a564f9e0e1a65e31ecbc221b0574b02fa\" width=\"100%\" xmlns=\"http://www.w3.org/2000/svg\" class=\"statediagram\" style=\"max-width: 512.78125px;\" viewBox=\"0 0 512.78125 468\" role=\"graphics-document document\" aria-roledescription=\"stateDiagram\"><style>\n    #diagram-4b86f133bd9639c71aeb6603a068d96a564f9e0e1a65e31ecbc221b0574b02fa foreignObject {\n      overflow: visible;\n    }\n  </style><style>#diagram-4b86f133bd9639c71aeb6603a068d96a564f9e0e1a65e31ecbc221b0574b02fa{font-family:\"Redocly Mermaid Sans\",Arial,\"Liberation Sans\",Arimo,Helvetica,\"Redocly Mermaid CJK\",sans-serif;font-size:16px;fill:#333;}@keyframes edge-animation-frame{from{stroke-dashoffset:0;}}@keyframes dash{to{stroke-dashoffset:0;}}#diagram-4b86f133bd9639c71aeb6603a068d96a564f9e0e1a65e31ecbc221b0574b02fa .edge-animation-slow{stroke-dasharray:9,5!important;stroke-dashoffset:900;animation:dash 50s linear infinite;stroke-linecap:round;}#diagram-4b86f133bd9639c71aeb6603a068d96a564f9e0e1a65e31ecbc221b0574b02fa .edge-animation-fast{stroke-dasharray:9,5!important;stroke-dashoffset:900;animation:dash 20s linear infinite;stroke-linecap:round;}#diagram-4b86f133bd9639c71aeb6603a068d96a564f9e0e1a65e31ecbc221b0574b02fa .error-icon{fill:#552222;}#diagram-4b86f133bd9639c71aeb6603a068d96a564f9e0e1a65e31ecbc221b0574b02fa .error-text{fill:#552222;stroke:#552222;}#diagram-4b86f133bd9639c71aeb6603a068d96a564f9e0e1a65e31ecbc221b0574b02fa .edge-thickness-normal{stroke-width:1px;}#diagram-4b86f133bd9639c71aeb6603a068d96a564f9e0e1a65e31ecbc221b0574b02fa .edge-thickness-thick{stroke-width:3.5px;}#diagram-4b86f133bd9639c71aeb6603a068d96a564f9e0e1a65e31ecbc221b0574b02fa .edge-pattern-solid{stroke-dasharray:0;}#diagram-4b86f133bd9639c71aeb6603a068d96a564f9e0e1a65e31ecbc221b0574b02fa .edge-thickness-invisible{stroke-width:0;fill:none;}#diagram-4b86f133bd9639c71aeb6603a068d96a564f9e0e1a65e31ecbc221b0574b02fa .edge-pattern-dashed{stroke-dasharray:3;}#diagram-4b86f133bd9639c71aeb6603a068d96a564f9e0e1a65e31ecbc221b0574b02fa .edge-pattern-dotted{stroke-dasharray:2;}#diagram-4b86f133bd9639c71aeb6603a068d96a564f9e0e1a65e31ecbc221b0574b02fa .marker{fill:#333333;stroke:#333333;}#diagram-4b86f133bd9639c71aeb6603a068d96a564f9e0e1a65e31ecbc221b0574b02fa .marker.cross{stroke:#333333;}#diagram-4b86f133bd9639c71aeb6603a068d96a564f9e0e1a65e31ecbc221b0574b02fa svg{font-family:\"Redocly Mermaid Sans\",Arial,\"Liberation Sans\",Arimo,Helvetica,\"Redocly Mermaid CJK\",sans-serif;font-size:16px;}#diagram-4b86f133bd9639c71aeb6603a068d96a564f9e0e1a65e31ecbc221b0574b02fa p{margin:0;}#diagram-4b86f133bd9639c71aeb6603a068d96a564f9e0e1a65e31ecbc221b0574b02fa defs [id$=\"-barbEnd\"]{fill:#333333;stroke:#333333;}#diagram-4b86f133bd9639c71aeb6603a068d96a564f9e0e1a65e31ecbc221b0574b02fa g.stateGroup text{fill:#9370DB;stroke:none;font-size:10px;}#diagram-4b86f133bd9639c71aeb6603a068d96a564f9e0e1a65e31ecbc221b0574b02fa g.stateGroup text{fill:#333;stroke:none;font-size:10px;}#diagram-4b86f133bd9639c71aeb6603a068d96a564f9e0e1a65e31ecbc221b0574b02fa g.stateGroup .state-title{font-weight:bolder;fill:#131300;}#diagram-4b86f133bd9639c71aeb6603a068d96a564f9e0e1a65e31ecbc221b0574b02fa g.stateGroup rect{fill:#ECECFF;stroke:#9370DB;}#diagram-4b86f133bd9639c71aeb6603a068d96a564f9e0e1a65e31ecbc221b0574b02fa g.stateGroup line{stroke:#333333;stroke-width:1;}#diagram-4b86f133bd9639c71aeb6603a068d96a564f9e0e1a65e31ecbc221b0574b02fa .transition{stroke:#333333;stroke-width:1;fill:none;}#diagram-4b86f133bd9639c71aeb6603a068d96a564f9e0e1a65e31ecbc221b0574b02fa .stateGroup .composit{fill:white;border-bottom:1px;}#diagram-4b86f133bd9639c71aeb6603a068d96a564f9e0e1a65e31ecbc221b0574b02fa .stateGroup .alt-composit{fill:#e0e0e0;border-bottom:1px;}#diagram-4b86f133bd9639c71aeb6603a068d96a564f9e0e1a65e31ecbc221b0574b02fa .state-note{stroke:#aaaa33;fill:#fff5ad;}#diagram-4b86f133bd9639c71aeb6603a068d96a564f9e0e1a65e31ecbc221b0574b02fa .state-note text{fill:black;stroke:none;font-size:10px;}#diagram-4b86f133bd9639c71aeb6603a068d96a564f9e0e1a65e31ecbc221b0574b02fa .stateLabel .box{stroke:none;stroke-width:0;fill:#ECECFF;opacity:0.5;}#diagram-4b86f133bd9639c71aeb6603a068d96a564f9e0e1a65e31ecbc221b0574b02fa .edgeLabel .label rect{fill:#ECECFF;opacity:0.5;}#diagram-4b86f133bd9639c71aeb6603a068d96a564f9e0e1a65e31ecbc221b0574b02fa .edgeLabel{background-color:rgba(232,232,232, 0.8);text-align:center;}#diagram-4b86f133bd9639c71aeb6603a068d96a564f9e0e1a65e31ecbc221b0574b02fa .edgeLabel p{background-color:rgba(232,232,232, 0.8);}#diagram-4b86f133bd9639c71aeb6603a068d96a564f9e0e1a65e31ecbc221b0574b02fa .edgeLabel rect{opacity:0.5;background-color:rgba(232,232,232, 0.8);fill:rgba(232,232,232, 0.8);}#diagram-4b86f133bd9639c71aeb6603a068d96a564f9e0e1a65e31ecbc221b0574b02fa .edgeLabel .label text{fill:#333;}#diagram-4b86f133bd9639c71aeb6603a068d96a564f9e0e1a65e31ecbc221b0574b02fa .label div .edgeLabel{color:#333;}#diagram-4b86f133bd9639c71aeb6603a068d96a564f9e0e1a65e31ecbc221b0574b02fa .stateLabel text{fill:#131300;font-size:10px;font-weight:bold;}#diagram-4b86f133bd9639c71aeb6603a068d96a564f9e0e1a65e31ecbc221b0574b02fa .node circle.state-start{fill:#333333;stroke:#333333;}#diagram-4b86f133bd9639c71aeb6603a068d96a564f9e0e1a65e31ecbc221b0574b02fa .node .fork-join{fill:#333333;stroke:#333333;}#diagram-4b86f133bd9639c71aeb6603a068d96a564f9e0e1a65e31ecbc221b0574b02fa .node circle.state-end{fill:#9370DB;stroke:white;stroke-width:1.5;}#diagram-4b86f133bd9639c71aeb6603a068d96a564f9e0e1a65e31ecbc221b0574b02fa .end-state-inner{fill:white;stroke-width:1.5;}#diagram-4b86f133bd9639c71aeb6603a068d96a564f9e0e1a65e31ecbc221b0574b02fa .node rect{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#diagram-4b86f133bd9639c71aeb6603a068d96a564f9e0e1a65e31ecbc221b0574b02fa .node polygon{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#diagram-4b86f133bd9639c71aeb6603a068d96a564f9e0e1a65e31ecbc221b0574b02fa [id$=\"-barbEnd\"]{fill:#333333;}#diagram-4b86f133bd9639c71aeb6603a068d96a564f9e0e1a65e31ecbc221b0574b02fa .statediagram-cluster rect{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#diagram-4b86f133bd9639c71aeb6603a068d96a564f9e0e1a65e31ecbc221b0574b02fa .cluster-label,#diagram-4b86f133bd9639c71aeb6603a068d96a564f9e0e1a65e31ecbc221b0574b02fa .nodeLabel{color:#131300;}#diagram-4b86f133bd9639c71aeb6603a068d96a564f9e0e1a65e31ecbc221b0574b02fa .statediagram-cluster rect.outer{rx:5px;ry:5px;}#diagram-4b86f133bd9639c71aeb6603a068d96a564f9e0e1a65e31ecbc221b0574b02fa .statediagram-state .divider{stroke:#9370DB;}#diagram-4b86f133bd9639c71aeb6603a068d96a564f9e0e1a65e31ecbc221b0574b02fa .statediagram-state .title-state{rx:5px;ry:5px;}#diagram-4b86f133bd9639c71aeb6603a068d96a564f9e0e1a65e31ecbc221b0574b02fa .statediagram-cluster.statediagram-cluster .inner{fill:white;}#diagram-4b86f133bd9639c71aeb6603a068d96a564f9e0e1a65e31ecbc221b0574b02fa .statediagram-cluster.statediagram-cluster-alt .inner{fill:#f0f0f0;}#diagram-4b86f133bd9639c71aeb6603a068d96a564f9e0e1a65e31ecbc221b0574b02fa .statediagram-cluster .inner{rx:0;ry:0;}#diagram-4b86f133bd9639c71aeb6603a068d96a564f9e0e1a65e31ecbc221b0574b02fa .statediagram-state rect.basic{rx:5px;ry:5px;}#diagram-4b86f133bd9639c71aeb6603a068d96a564f9e0e1a65e31ecbc221b0574b02fa .statediagram-state rect.divider{stroke-dasharray:10,10;fill:#f0f0f0;}#diagram-4b86f133bd9639c71aeb6603a068d96a564f9e0e1a65e31ecbc221b0574b02fa .note-edge{stroke-dasharray:5;}#diagram-4b86f133bd9639c71aeb6603a068d96a564f9e0e1a65e31ecbc221b0574b02fa .statediagram-note rect{fill:#fff5ad;stroke:#aaaa33;stroke-width:1px;rx:0;ry:0;}#diagram-4b86f133bd9639c71aeb6603a068d96a564f9e0e1a65e31ecbc221b0574b02fa .statediagram-note rect{fill:#fff5ad;stroke:#aaaa33;stroke-width:1px;rx:0;ry:0;}#diagram-4b86f133bd9639c71aeb6603a068d96a564f9e0e1a65e31ecbc221b0574b02fa .statediagram-note text{fill:black;}#diagram-4b86f133bd9639c71aeb6603a068d96a564f9e0e1a65e31ecbc221b0574b02fa .statediagram-note .nodeLabel{color:black;}#diagram-4b86f133bd9639c71aeb6603a068d96a564f9e0e1a65e31ecbc221b0574b02fa .statediagram .edgeLabel{color:red;}#diagram-4b86f133bd9639c71aeb6603a068d96a564f9e0e1a65e31ecbc221b0574b02fa [id$=\"-dependencyStart\"],#diagram-4b86f133bd9639c71aeb6603a068d96a564f9e0e1a65e31ecbc221b0574b02fa [id$=\"-dependencyEnd\"]{fill:#333333;stroke:#333333;stroke-width:1;}#diagram-4b86f133bd9639c71aeb6603a068d96a564f9e0e1a65e31ecbc221b0574b02fa .statediagramTitleText{text-anchor:middle;font-size:18px;fill:#333;}#diagram-4b86f133bd9639c71aeb6603a068d96a564f9e0e1a65e31ecbc221b0574b02fa [data-look=\"neo\"].statediagram-cluster rect{fill:#ECECFF;stroke:#9370DB;stroke-width:1;}#diagram-4b86f133bd9639c71aeb6603a068d96a564f9e0e1a65e31ecbc221b0574b02fa [data-look=\"neo\"].statediagram-cluster rect.outer{rx:5px;ry:5px;filter:drop-shadow(1px 2px 2px rgba(185, 185, 185, 1));}#diagram-4b86f133bd9639c71aeb6603a068d96a564f9e0e1a65e31ecbc221b0574b02fa .node .neo-node{stroke:#9370DB;}#diagram-4b86f133bd9639c71aeb6603a068d96a564f9e0e1a65e31ecbc221b0574b02fa [data-look=\"neo\"].node rect,#diagram-4b86f133bd9639c71aeb6603a068d96a564f9e0e1a65e31ecbc221b0574b02fa [data-look=\"neo\"].cluster rect,#diagram-4b86f133bd9639c71aeb6603a068d96a564f9e0e1a65e31ecbc221b0574b02fa [data-look=\"neo\"].node polygon{stroke:#9370DB;filter:drop-shadow(1px 2px 2px rgba(185, 185, 185, 1));}#diagram-4b86f133bd9639c71aeb6603a068d96a564f9e0e1a65e31ecbc221b0574b02fa [data-look=\"neo\"].swimlane.cluster rect{filter:none;}#diagram-4b86f133bd9639c71aeb6603a068d96a564f9e0e1a65e31ecbc221b0574b02fa [data-look=\"neo\"].node path{stroke:#9370DB;stroke-width:1px;}#diagram-4b86f133bd9639c71aeb6603a068d96a564f9e0e1a65e31ecbc221b0574b02fa [data-look=\"neo\"].node .outer-path{filter:drop-shadow(1px 2px 2px rgba(185, 185, 185, 1));}#diagram-4b86f133bd9639c71aeb6603a068d96a564f9e0e1a65e31ecbc221b0574b02fa [data-look=\"neo\"].node .neo-line path{stroke:#9370DB;filter:none;}#diagram-4b86f133bd9639c71aeb6603a068d96a564f9e0e1a65e31ecbc221b0574b02fa [data-look=\"neo\"].node circle{stroke:#9370DB;filter:drop-shadow(1px 2px 2px rgba(185, 185, 185, 1));}#diagram-4b86f133bd9639c71aeb6603a068d96a564f9e0e1a65e31ecbc221b0574b02fa [data-look=\"neo\"].node circle .state-start{fill:#000000;}#diagram-4b86f133bd9639c71aeb6603a068d96a564f9e0e1a65e31ecbc221b0574b02fa [data-look=\"neo\"].icon-shape .icon{fill:#9370DB;filter:drop-shadow(1px 2px 2px rgba(185, 185, 185, 1));}#diagram-4b86f133bd9639c71aeb6603a068d96a564f9e0e1a65e31ecbc221b0574b02fa [data-look=\"neo\"].icon-shape .icon-neo path{stroke:#9370DB;filter:drop-shadow(1px 2px 2px rgba(185, 185, 185, 1));}#diagram-4b86f133bd9639c71aeb6603a068d96a564f9e0e1a65e31ecbc221b0574b02fa :root{--mermaid-font-family:\"Redocly Mermaid Sans\",Arial,\"Liberation Sans\",Arimo,Helvetica,\"Redocly Mermaid CJK\",sans-serif;}</style><g><defs><marker id=\"diagram-4b86f133bd9639c71aeb6603a068d96a564f9e0e1a65e31ecbc221b0574b02fa_stateDiagram-barbEnd\" refX=\"19\" refY=\"7\" markerWidth=\"20\" markerHeight=\"14\" markerUnits=\"userSpaceOnUse\" orient=\"auto\"><path d=\"M 19,7 L9,13 L14,7 L9,1 Z\"></path></marker></defs><g class=\"root\"><g class=\"clusters\"></g><g class=\"edgePaths\"><path d=\"M279.461,22L279.461,28.167C279.461,34.333,279.461,46.667,279.461,59C279.461,71.333,279.461,83.667,279.461,89.833L279.461,96\" id=\"diagram-4b86f133bd9639c71aeb6603a068d96a564f9e0e1a65e31ecbc221b0574b02fa-edge0\" class=\"edge-thickness-normal edge-pattern-solid transition\" style=\"fill:none;;;fill:none\" data-edge=\"true\" data-et=\"edge\" data-id=\"edge0\" data-points=\"W3sieCI6Mjc5LjQ2MDkzNzUsInkiOjIyfSx7IngiOjI3OS40NjA5Mzc1LCJ5Ijo1OX0seyJ4IjoyNzkuNDYwOTM3NSwieSI6OTZ9XQ==\" data-look=\"classic\" marker-end=\"url(#diagram-4b86f133bd9639c71aeb6603a068d96a564f9e0e1a65e31ecbc221b0574b02fa_stateDiagram-barbEnd)\"></path><path d=\"M279.461,136L279.461,144.167C279.461,152.333,279.461,168.667,279.461,185.667C279.461,202.667,279.461,220.333,279.461,229.167L279.461,238\" id=\"diagram-4b86f133bd9639c71aeb6603a068d96a564f9e0e1a65e31ecbc221b0574b02fa-edge1\" class=\"edge-thickness-normal edge-pattern-solid transition\" style=\"fill:none;;;fill:none\" data-edge=\"true\" data-et=\"edge\" data-id=\"edge1\" data-points=\"W3sieCI6Mjc5LjQ2MDkzNzUsInkiOjEzNn0seyJ4IjoyNzkuNDYwOTM3NSwieSI6MTg1fSx7IngiOjI3OS40NjA5Mzc1LCJ5IjoyMzh9XQ==\" data-look=\"classic\" marker-end=\"url(#diagram-4b86f133bd9639c71aeb6603a068d96a564f9e0e1a65e31ecbc221b0574b02fa_stateDiagram-barbEnd)\"></path><path d=\"M232.773,134.788L211.978,143.157C191.182,151.525,149.591,168.263,128.796,188.798C108,209.333,108,233.667,108,256C108,278.333,108,298.667,117.275,315C126.55,331.333,145.1,343.667,154.375,349.833L163.65,356\" id=\"diagram-4b86f133bd9639c71aeb6603a068d96a564f9e0e1a65e31ecbc221b0574b02fa-edge2\" class=\"edge-thickness-normal edge-pattern-solid transition\" style=\"fill:none;;;fill:none\" data-edge=\"true\" data-et=\"edge\" data-id=\"edge2\" data-points=\"W3sieCI6MjMyLjc3MzQzNzUsInkiOjEzNC43ODgxNzE1MDQwNzh9LHsieCI6MTA4LCJ5IjoxODV9LHsieCI6MTA4LCJ5IjoyNTh9LHsieCI6MTA4LCJ5IjozMTl9LHsieCI6MTYzLjY0OTYwMjUyMTkyOTg0LCJ5IjozNTZ9XQ==\" data-look=\"classic\" marker-end=\"url(#diagram-4b86f133bd9639c71aeb6603a068d96a564f9e0e1a65e31ecbc221b0574b02fa_stateDiagram-barbEnd)\"></path><path d=\"M279.461,278L279.461,284.833C279.461,291.667,279.461,305.333,270.186,318.333C260.911,331.333,242.361,343.667,233.086,349.833L223.811,356\" id=\"diagram-4b86f133bd9639c71aeb6603a068d96a564f9e0e1a65e31ecbc221b0574b02fa-edge3\" class=\"edge-thickness-normal edge-pattern-solid transition\" style=\"fill:none;;;fill:none\" data-edge=\"true\" data-et=\"edge\" data-id=\"edge3\" data-points=\"W3sieCI6Mjc5LjQ2MDkzNzUsInkiOjI3OH0seyJ4IjoyNzkuNDYwOTM3NSwieSI6MzE5fSx7IngiOjIyMy44MTEzMzQ5NzgwNzAxNiwieSI6MzU2fV0=\" data-look=\"classic\" marker-end=\"url(#diagram-4b86f133bd9639c71aeb6603a068d96a564f9e0e1a65e31ecbc221b0574b02fa_stateDiagram-barbEnd)\"></path><path d=\"M322.473,136L340.036,144.167C357.599,152.333,392.725,168.667,410.288,189C427.852,209.333,427.852,233.667,427.852,256C427.852,278.333,427.852,298.667,431.388,315C434.924,331.333,441.997,343.667,445.533,349.833L449.07,356\" id=\"diagram-4b86f133bd9639c71aeb6603a068d96a564f9e0e1a65e31ecbc221b0574b02fa-edge4\" class=\"edge-thickness-normal edge-pattern-solid transition\" style=\"fill:none;;;fill:none\" data-edge=\"true\" data-et=\"edge\" data-id=\"edge4\" data-points=\"W3sieCI6MzIyLjQ3MjcxMjg2MjMxODksInkiOjEzNn0seyJ4Ijo0MjcuODUxNTYyNSwieSI6MTg1fSx7IngiOjQyNy44NTE1NjI1LCJ5IjoyNTh9LHsieCI6NDI3Ljg1MTU2MjUsInkiOjMxOX0seyJ4Ijo0NDkuMDY5NzY0MjU0Mzg2LCJ5IjozNTZ9XQ==\" data-look=\"classic\" marker-end=\"url(#diagram-4b86f133bd9639c71aeb6603a068d96a564f9e0e1a65e31ecbc221b0574b02fa_stateDiagram-barbEnd)\"></path><path d=\"M315.922,268.404L345.473,276.837C375.023,285.27,434.125,302.135,460.139,316.734C486.154,331.333,479.081,343.667,475.545,349.833L472.008,356\" id=\"diagram-4b86f133bd9639c71aeb6603a068d96a564f9e0e1a65e31ecbc221b0574b02fa-edge5\" class=\"edge-thickness-normal edge-pattern-solid transition\" style=\"fill:none;;;fill:none\" data-edge=\"true\" data-et=\"edge\" data-id=\"edge5\" data-points=\"W3sieCI6MzE1LjkyMTg3NSwieSI6MjY4LjQwNDQ2NjA0NzgwMzV9LHsieCI6NDkzLjIyNjU2MjUsInkiOjMxOX0seyJ4Ijo0NzIuMDA4MzYwNzQ1NjE0LCJ5IjozNTZ9XQ==\" data-look=\"classic\" marker-end=\"url(#diagram-4b86f133bd9639c71aeb6603a068d96a564f9e0e1a65e31ecbc221b0574b02fa_stateDiagram-barbEnd)\"></path><path d=\"M193.73,396L193.73,400.167C193.73,404.333,193.73,412.667,210.426,421.832C227.121,430.997,260.511,440.994,277.206,445.992L293.901,450.99\" id=\"diagram-4b86f133bd9639c71aeb6603a068d96a564f9e0e1a65e31ecbc221b0574b02fa-edge6\" class=\"edge-thickness-normal edge-pattern-solid transition\" style=\"fill:none;;;fill:none\" data-edge=\"true\" data-et=\"edge\" data-id=\"edge6\" data-points=\"W3sieCI6MTkzLjczMDQ2ODc1LCJ5IjozOTZ9LHsieCI6MTkzLjczMDQ2ODc1LCJ5Ijo0MjF9LHsieCI6MjkzLjkwMTAxMTE4MjkxODcsInkiOjQ1MC45OTAzOTExODUyMzc1N31d\" data-look=\"classic\" marker-end=\"url(#diagram-4b86f133bd9639c71aeb6603a068d96a564f9e0e1a65e31ecbc221b0574b02fa_stateDiagram-barbEnd)\"></path><path d=\"M460.539,396L460.539,400.167C460.539,404.333,460.539,412.667,435.03,421.938C409.521,431.208,358.502,441.417,332.993,446.521L307.484,451.625\" id=\"diagram-4b86f133bd9639c71aeb6603a068d96a564f9e0e1a65e31ecbc221b0574b02fa-edge7\" class=\"edge-thickness-normal edge-pattern-solid transition\" style=\"fill:none;;;fill:none\" data-edge=\"true\" data-et=\"edge\" data-id=\"edge7\" data-points=\"W3sieCI6NDYwLjUzOTA2MjUsInkiOjM5Nn0seyJ4Ijo0NjAuNTM5MDYyNSwieSI6NDIxfSx7IngiOjMwNy40ODM3NDA4Nzk0Mjk1LCJ5Ijo0NTEuNjI1MjcwMzgyMTUyN31d\" data-look=\"classic\" marker-end=\"url(#diagram-4b86f133bd9639c71aeb6603a068d96a564f9e0e1a65e31ecbc221b0574b02fa_stateDiagram-barbEnd)\"></path></g><g class=\"edgeLabels\"><g class=\"edgeLabel\" transform=\"translate(279.4609375, 59)\"><g class=\"label\" data-id=\"edge0\" transform=\"translate(-92.9375, -12)\"><foreignObject width=\"185.875\" height=\"24\"><div xmlns=\"http://www.w3.org/1999/xhtml\" class=\"labelBkg\" style=\"display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;\"><span class=\"edgeLabel\"><p>generate fired (status null)</p></span></div></foreignObject></g></g><g class=\"edgeLabel\" transform=\"translate(279.4609375, 185)\"><g class=\"label\" data-id=\"edge1\" transform=\"translate(-100, -24)\"><foreignObject width=\"200\" height=\"48\"><div xmlns=\"http://www.w3.org/1999/xhtml\" class=\"labelBkg\" style=\"display: table; white-space: break-spaces; line-height: 1.5; max-width: 200px; text-align: center; width: 200px;\"><span class=\"edgeLabel\"><p>file built, awaiting SFTP upload</p></span></div></foreignObject></g></g><g class=\"edgeLabel\" transform=\"translate(108, 258)\"><g class=\"label\" data-id=\"edge2\" transform=\"translate(-100, -24)\"><foreignObject width=\"200\" height=\"48\"><div xmlns=\"http://www.w3.org/1999/xhtml\" class=\"labelBkg\" style=\"display: table; white-space: break-spaces; line-height: 1.5; max-width: 200px; text-align: center; width: 200px;\"><span class=\"edgeLabel\"><p>file built, upload skipped (uploadFile=false)</p></span></div></foreignObject></g></g><g class=\"edgeLabel\" transform=\"translate(279.4609375, 319)\"><g class=\"label\" data-id=\"edge3\" transform=\"translate(-64.484375, -12)\"><foreignObject width=\"128.96875\" height=\"24\"><div xmlns=\"http://www.w3.org/1999/xhtml\" class=\"labelBkg\" style=\"display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;\"><span class=\"edgeLabel\"><p>uploaded to SFTP</p></span></div></foreignObject></g></g><g class=\"edgeLabel\" transform=\"translate(427.8515625, 258)\"><g class=\"label\" data-id=\"edge4\" transform=\"translate(-76.9296875, -12)\"><foreignObject width=\"153.859375\" height=\"24\"><div xmlns=\"http://www.w3.org/1999/xhtml\" class=\"labelBkg\" style=\"display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;\"><span class=\"edgeLabel\"><p>see failureDescription</p></span></div></foreignObject></g></g><g class=\"edgeLabel\" transform=\"translate(425.08171, 299.55423)\"><g class=\"label\" data-id=\"edge5\" transform=\"translate(-45.375, -12)\"><foreignObject width=\"90.75\" height=\"24\"><div xmlns=\"http://www.w3.org/1999/xhtml\" class=\"labelBkg\" style=\"display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;\"><span class=\"edgeLabel\"><p>upload failed</p></span></div></foreignObject></g></g><g class=\"edgeLabel\"><g class=\"label\" data-id=\"edge6\" transform=\"translate(0, 0)\"><foreignObject width=\"0\" height=\"0\"><div xmlns=\"http://www.w3.org/1999/xhtml\" class=\"labelBkg\" style=\"display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;\"><span class=\"edgeLabel\"></span></div></foreignObject></g></g><g class=\"edgeLabel\"><g class=\"label\" data-id=\"edge7\" transform=\"translate(0, 0)\"><foreignObject width=\"0\" height=\"0\"><div xmlns=\"http://www.w3.org/1999/xhtml\" class=\"labelBkg\" style=\"display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;\"><span class=\"edgeLabel\"></span></div></foreignObject></g></g></g><g class=\"nodes\"><g class=\"node default\" id=\"diagram-4b86f133bd9639c71aeb6603a068d96a564f9e0e1a65e31ecbc221b0574b02fa-state-root_start-0\" data-look=\"classic\" transform=\"translate(279.4609375, 15)\"><circle class=\"state-start\" r=\"7\" width=\"14\" height=\"14\"></circle></g><g class=\"node  statediagram-state\" id=\"diagram-4b86f133bd9639c71aeb6603a068d96a564f9e0e1a65e31ecbc221b0574b02fa-state-InProgress-4\" data-look=\"classic\" transform=\"translate(279.4609375, 116)\"><rect class=\"basic label-container\" style=\"\" rx=\"5\" ry=\"5\" x=\"-46.6875\" y=\"-20\" width=\"93.375\" height=\"40\"></rect><g class=\"label\" style=\"\" transform=\"translate(-38.6875, -12)\"><rect></rect><foreignObject width=\"77.375\" height=\"24\"><div xmlns=\"http://www.w3.org/1999/xhtml\" style=\"display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;\"><span class=\"nodeLabel markdown-node-label\"><p>InProgress</p></span></div></foreignObject></g></g><g class=\"node  statediagram-state\" id=\"diagram-4b86f133bd9639c71aeb6603a068d96a564f9e0e1a65e31ecbc221b0574b02fa-state-Created-5\" data-look=\"classic\" transform=\"translate(279.4609375, 258)\"><rect class=\"basic label-container\" style=\"\" rx=\"5\" ry=\"5\" x=\"-36.4609375\" y=\"-20\" width=\"72.921875\" height=\"40\"></rect><g class=\"label\" style=\"\" transform=\"translate(-28.4609375, -12)\"><rect></rect><foreignObject width=\"56.921875\" height=\"24\"><div xmlns=\"http://www.w3.org/1999/xhtml\" style=\"display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;\"><span class=\"nodeLabel markdown-node-label\"><p>Created</p></span></div></foreignObject></g></g><g class=\"node  statediagram-state\" id=\"diagram-4b86f133bd9639c71aeb6603a068d96a564f9e0e1a65e31ecbc221b0574b02fa-state-Succeeded-6\" data-look=\"classic\" transform=\"translate(193.73046875, 376)\"><rect class=\"basic label-container\" style=\"\" rx=\"5\" ry=\"5\" x=\"-48.03125\" y=\"-20\" width=\"96.0625\" height=\"40\"></rect><g class=\"label\" style=\"\" transform=\"translate(-40.03125, -12)\"><rect></rect><foreignObject width=\"80.0625\" height=\"24\"><div xmlns=\"http://www.w3.org/1999/xhtml\" style=\"display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;\"><span class=\"nodeLabel markdown-node-label\"><p>Succeeded</p></span></div></foreignObject></g></g><g class=\"node  statediagram-state\" id=\"diagram-4b86f133bd9639c71aeb6603a068d96a564f9e0e1a65e31ecbc221b0574b02fa-state-Failed-7\" data-look=\"classic\" transform=\"translate(460.5390625, 376)\"><rect class=\"basic label-container\" style=\"\" rx=\"5\" ry=\"5\" x=\"-29.7890625\" y=\"-20\" width=\"59.578125\" height=\"40\"></rect><g class=\"label\" style=\"\" transform=\"translate(-21.7890625, -12)\"><rect></rect><foreignObject width=\"43.578125\" height=\"24\"><div xmlns=\"http://www.w3.org/1999/xhtml\" style=\"display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;\"><span class=\"nodeLabel markdown-node-label\"><p>Failed</p></span></div></foreignObject></g></g><g class=\"node default\" id=\"diagram-4b86f133bd9639c71aeb6603a068d96a564f9e0e1a65e31ecbc221b0574b02fa-state-root_end-7\" data-look=\"classic\" transform=\"translate(300.61328125, 453)\"><g class=\"outer-path\"><path d=\"M7 0 C7 0.40517908122283747, 6.964012880168563 0.816513743121899, 6.893654271085456 1.2155372436685123 C6.823295662002349 1.6145607442151257, 6.716427752933756 2.013397210557766, 6.5778483455013586 2.394141003279681 C6.439268938068961 2.7748847960015954, 6.26476736710249 3.149104622578984, 6.062177826491071 3.4999999999999996 C5.859588285879653 3.8508953774210153, 5.622755194947063 4.189128084166967, 5.362311101832846 4.499513267805774 C5.10186700871863 4.809898451444582, 4.809898451444583 5.10186700871863, 4.499513267805775 5.362311101832846 C4.189128084166968 5.622755194947063, 3.8508953774210166 5.859588285879652, 3.500000000000001 6.06217782649107 C3.149104622578985 6.264767367102489, 2.7748847960015963 6.439268938068961, 2.3941410032796817 6.5778483455013586 C2.013397210557767 6.716427752933756, 1.6145607442151264 6.823295662002349, 1.2155372436685128 6.893654271085456 C0.8165137431218992 6.964012880168563, 0.4051790812228379 7, 4.286263797015736e-16 7 C-0.405179081222837 7, -0.8165137431218985 6.964012880168563, -1.2155372436685121 6.893654271085456 C-1.6145607442151257 6.823295662002349, -2.0133972105577667 6.716427752933756, -2.394141003279681 6.5778483455013586 C-2.774884796001595 6.439268938068961, -3.149104622578983 6.26476736710249, -3.4999999999999982 6.062177826491071 C-3.8508953774210135 5.859588285879653, -4.189128084166966 5.6227551949470636, -4.499513267805773 5.362311101832848 C-4.809898451444581 5.101867008718632, -5.101867008718628 4.809898451444586, -5.3623111018328435 4.499513267805779 C-5.622755194947059 4.189128084166971, -5.859588285879649 3.8508953774210206, -6.062177826491068 3.5000000000000053 C-6.264767367102486 3.14910462257899, -6.439268938068958 2.774884796001602, -6.577848345501356 2.394141003279688 C-6.716427752933754 2.0133972105577738, -6.823295662002347 1.614560744215134, -6.893654271085454 1.215537243668521 C-6.9640128801685615 0.816513743121908, -6.999999999999999 0.4051790812228472, -7 1.0183126166254463e-14 C-7.000000000000001 -0.40517908122282686, -6.964012880168565 -0.8165137431218878, -6.893654271085459 -1.215537243668501 C-6.823295662002352 -1.6145607442151142, -6.716427752933759 -2.0133972105577542, -6.577848345501363 -2.394141003279669 C-6.439268938068967 -2.7748847960015834, -6.264767367102496 -3.149104622578972, -6.062177826491078 -3.4999999999999876 C-5.859588285879661 -3.8508953774210033, -5.6227551949470715 -4.1891280841669545, -5.362311101832856 -4.499513267805763 C-5.10186700871864 -4.809898451444571, -4.809898451444594 -5.10186700871862, -4.499513267805787 -5.362311101832836 C-4.189128084166979 -5.622755194947053, -3.850895377421028 -5.859588285879643, -3.5000000000000133 -6.062177826491062 C-3.1491046225789985 -6.264767367102482, -2.774884796001611 -6.439268938068954, -2.3941410032796973 -6.577848345501353 C-2.0133972105577835 -6.716427752933752, -1.6145607442151435 -6.823295662002345, -1.2155372436685306 -6.893654271085453 C-0.8165137431219176 -6.9640128801685615, -0.40517908122285695 -6.999999999999999, -1.9937625952807352e-14 -7 C0.4051790812228171 -7.000000000000001, 0.8165137431218781 -6.964012880168565, 1.2155372436684913 -6.89365427108546 C1.6145607442151044 -6.823295662002354, 2.013397210557745 -6.716427752933763, 2.3941410032796595 -6.5778483455013665 C2.774884796001574 -6.43926893806897, 3.149104622578963 -6.2647673671025, 3.499999999999979 -6.062177826491083 C3.8508953774209953 -5.859588285879665, 4.189128084166947 -5.622755194947077, 4.499513267805756 -5.362311101832862 C4.809898451444564 -5.1018670087186475, 5.101867008718613 -4.809898451444602, 5.362311101832829 -4.499513267805796 C5.622755194947046 -4.189128084166989, 5.859588285879637 -3.8508953774210393, 6.062177826491056 -3.500000000000025 C6.2647673671024755 -3.1491046225790105, 6.439268938068949 -2.774884796001623, 6.577848345501348 -2.3941410032797092 C6.716427752933747 -2.0133972105577955, 6.823295662002342 -1.6145607442151562, 6.893654271085451 -1.2155372436685434 C6.96401288016856 -0.8165137431219307, 6.982275711847575 -0.2025895406114567, 7 -3.2800750208310675e-14 C7.017724288152425 0.2025895406113911, 7.017724288152424 -0.2025895406114242, 7 0\" stroke=\"none\" stroke-width=\"0\" fill=\"#ECECFF\" style=\"\"></path><path d=\"M7 0 C7 0.40517908122283747, 6.964012880168563 0.816513743121899, 6.893654271085456 1.2155372436685123 C6.823295662002349 1.6145607442151257, 6.716427752933756 2.013397210557766, 6.5778483455013586 2.394141003279681 C6.439268938068961 2.7748847960015954, 6.26476736710249 3.149104622578984, 6.062177826491071 3.4999999999999996 C5.859588285879653 3.8508953774210153, 5.622755194947063 4.189128084166967, 5.362311101832846 4.499513267805774 C5.10186700871863 4.809898451444582, 4.809898451444583 5.10186700871863, 4.499513267805775 5.362311101832846 C4.189128084166968 5.622755194947063, 3.8508953774210166 5.859588285879652, 3.500000000000001 6.06217782649107 C3.149104622578985 6.264767367102489, 2.7748847960015963 6.439268938068961, 2.3941410032796817 6.5778483455013586 C2.013397210557767 6.716427752933756, 1.6145607442151264 6.823295662002349, 1.2155372436685128 6.893654271085456 C0.8165137431218992 6.964012880168563, 0.4051790812228379 7, 4.286263797015736e-16 7 C-0.405179081222837 7, -0.8165137431218985 6.964012880168563, -1.2155372436685121 6.893654271085456 C-1.6145607442151257 6.823295662002349, -2.0133972105577667 6.716427752933756, -2.394141003279681 6.5778483455013586 C-2.774884796001595 6.439268938068961, -3.149104622578983 6.26476736710249, -3.4999999999999982 6.062177826491071 C-3.8508953774210135 5.859588285879653, -4.189128084166966 5.6227551949470636, -4.499513267805773 5.362311101832848 C-4.809898451444581 5.101867008718632, -5.101867008718628 4.809898451444586, -5.3623111018328435 4.499513267805779 C-5.622755194947059 4.189128084166971, -5.859588285879649 3.8508953774210206, -6.062177826491068 3.5000000000000053 C-6.264767367102486 3.14910462257899, -6.439268938068958 2.774884796001602, -6.577848345501356 2.394141003279688 C-6.716427752933754 2.0133972105577738, -6.823295662002347 1.614560744215134, -6.893654271085454 1.215537243668521 C-6.9640128801685615 0.816513743121908, -6.999999999999999 0.4051790812228472, -7 1.0183126166254463e-14 C-7.000000000000001 -0.40517908122282686, -6.964012880168565 -0.8165137431218878, -6.893654271085459 -1.215537243668501 C-6.823295662002352 -1.6145607442151142, -6.716427752933759 -2.0133972105577542, -6.577848345501363 -2.394141003279669 C-6.439268938068967 -2.7748847960015834, -6.264767367102496 -3.149104622578972, -6.062177826491078 -3.4999999999999876 C-5.859588285879661 -3.8508953774210033, -5.6227551949470715 -4.1891280841669545, -5.362311101832856 -4.499513267805763 C-5.10186700871864 -4.809898451444571, -4.809898451444594 -5.10186700871862, -4.499513267805787 -5.362311101832836 C-4.189128084166979 -5.622755194947053, -3.850895377421028 -5.859588285879643, -3.5000000000000133 -6.062177826491062 C-3.1491046225789985 -6.264767367102482, -2.774884796001611 -6.439268938068954, -2.3941410032796973 -6.577848345501353 C-2.0133972105577835 -6.716427752933752, -1.6145607442151435 -6.823295662002345, -1.2155372436685306 -6.893654271085453 C-0.8165137431219176 -6.9640128801685615, -0.40517908122285695 -6.999999999999999, -1.9937625952807352e-14 -7 C0.4051790812228171 -7.000000000000001, 0.8165137431218781 -6.964012880168565, 1.2155372436684913 -6.89365427108546 C1.6145607442151044 -6.823295662002354, 2.013397210557745 -6.716427752933763, 2.3941410032796595 -6.5778483455013665 C2.774884796001574 -6.43926893806897, 3.149104622578963 -6.2647673671025, 3.499999999999979 -6.062177826491083 C3.8508953774209953 -5.859588285879665, 4.189128084166947 -5.622755194947077, 4.499513267805756 -5.362311101832862 C4.809898451444564 -5.1018670087186475, 5.101867008718613 -4.809898451444602, 5.362311101832829 -4.499513267805796 C5.622755194947046 -4.189128084166989, 5.859588285879637 -3.8508953774210393, 6.062177826491056 -3.500000000000025 C6.2647673671024755 -3.1491046225790105, 6.439268938068949 -2.774884796001623, 6.577848345501348 -2.3941410032797092 C6.716427752933747 -2.0133972105577955, 6.823295662002342 -1.6145607442151562, 6.893654271085451 -1.2155372436685434 C6.96401288016856 -0.8165137431219307, 6.982275711847575 -0.2025895406114567, 7 -3.2800750208310675e-14 C7.017724288152425 0.2025895406113911, 7.017724288152424 -0.2025895406114242, 7 0\" stroke=\"#333333\" stroke-width=\"2\" fill=\"none\" stroke-dasharray=\"0 0\" style=\"\"></path><g><path d=\"M2.5 0 C2.5 0.14470681472244193, 2.487147457203058 0.29161205111496386, 2.46201938253052 0.4341204441673258 C2.436891307857982 0.5766288372196877, 2.3987241974763416 0.7190704323420595, 2.3492315519647713 0.8550503583141718 C2.299738906453201 0.991030284286284, 2.2374169168223177 1.124680222349637, 2.165063509461097 1.2499999999999998 C2.092710102099876 1.3753197776503625, 2.0081268553382365 1.496117172916774, 1.915111107797445 1.6069690242163481 C1.8220953602566536 1.7178208755159223, 1.7178208755159226 1.8220953602566536, 1.6069690242163484 1.915111107797445 C1.4961171729167742 2.0081268553382365, 1.375319777650363 2.0927101020998755, 1.2500000000000002 2.1650635094610964 C1.1246802223496375 2.2374169168223172, 0.9910302842862845 2.2997389064532, 0.8550503583141721 2.349231551964771 C0.7190704323420597 2.3987241974763416, 0.576628837219688 2.436891307857982, 0.43412044416732604 2.46201938253052 C0.291612051114964 2.487147457203058, 0.14470681472244212 2.5, 1.5308084989341916e-16 2.5 C-0.1447068147224418 2.5, -0.2916120511149638 2.487147457203058, -0.43412044416732576 2.46201938253052 C-0.5766288372196877 2.436891307857982, -0.7190704323420595 2.3987241974763416, -0.8550503583141718 2.3492315519647713 C-0.991030284286284 2.299738906453201, -1.124680222349637 2.2374169168223177, -1.2499999999999996 2.165063509461097 C-1.375319777650362 2.092710102099876, -1.4961171729167733 2.008126855338237, -1.6069690242163475 1.9151111077974459 C-1.7178208755159217 1.8220953602566548, -1.822095360256653 1.7178208755159234, -1.9151111077974443 1.6069690242163495 C-2.0081268553382357 1.4961171729167755, -2.0927101020998746 1.3753197776503645, -2.1650635094610955 1.250000000000002 C-2.2374169168223164 1.1246802223496395, -2.2997389064531992 0.9910302842862865, -2.34923155196477 0.8550503583141743 C-2.3987241974763407 0.7190704323420621, -2.436891307857981 0.5766288372196907, -2.4620193825305194 0.434120444167329 C-2.487147457203058 0.29161205111496724, -2.5 0.14470681472244545, -2.5 3.636830773662308e-15 C-2.5 -0.14470681472243818, -2.4871474572030587 -0.2916120511149599, -2.4620193825305208 -0.4341204441673218 C-2.436891307857983 -0.5766288372196837, -2.398724197476343 -0.7190704323420553, -2.3492315519647726 -0.8550503583141675 C-2.2997389064532023 -0.9910302842862798, -2.23741691682232 -1.1246802223496328, -2.165063509461099 -1.2499999999999956 C-2.092710102099878 -1.3753197776503583, -2.00812685533824 -1.4961171729167695, -1.9151111077974488 -1.606969024216344 C-1.8220953602566576 -1.7178208755159183, -1.7178208755159263 -1.82209536025665, -1.6069690242163523 -1.9151111077974416 C-1.4961171729167784 -2.0081268553382334, -1.3753197776503672 -2.0927101020998724, -1.2500000000000047 -2.1650635094610937 C-1.1246802223496422 -2.237416916822315, -0.9910302842862897 -2.299738906453198, -0.8550503583141776 -2.3492315519647686 C-0.7190704323420656 -2.3987241974763394, -0.5766288372196942 -2.4368913078579806, -0.43412044416733236 -2.462019382530519 C-0.29161205111497057 -2.4871474572030574, -0.1447068147224489 -2.4999999999999996, -7.120580697431198e-15 -2.5 C0.14470681472243463 -2.5000000000000004, 0.29161205111495647 -2.487147457203059, 0.4341204441673183 -2.4620193825305217 C0.5766288372196802 -2.436891307857984, 0.7190704323420518 -2.3987241974763442, 0.8550503583141642 -2.349231551964774 C0.9910302842862766 -2.2997389064532037, 1.1246802223496295 -2.2374169168223212, 1.2499999999999925 -2.165063509461101 C1.3753197776503554 -2.0927101020998804, 1.4961171729167668 -2.008126855338242, 1.6069690242163412 -1.915111107797451 C1.7178208755159157 -1.82209536025666, 1.8220953602566472 -1.7178208755159294, 1.915111107797439 -1.6069690242163557 C2.0081268553382308 -1.496117172916782, 2.09271010209987 -1.3753197776503712, 2.1650635094610915 -1.2500000000000089 C2.237416916822313 -1.1246802223496466, 2.299738906453196 -0.9910302842862939, 2.3492315519647673 -0.855050358314182 C2.3987241974763385 -0.71907043234207, 2.4368913078579792 -0.5766288372196986, 2.462019382530518 -0.4341204441673369 C2.487147457203057 -0.29161205111497523, 2.4936698970884197 -0.07235340736123454, 2.5 -1.1714553645825241e-14 C2.5063301029115803 0.07235340736121111, 2.50633010291158 -0.07235340736122292, 2.5 0\" stroke=\"none\" stroke-width=\"0\" fill=\"#9370DB\" style=\"\"></path><path d=\"M2.5 0 C2.5 0.14470681472244193, 2.487147457203058 0.29161205111496386, 2.46201938253052 0.4341204441673258 C2.436891307857982 0.5766288372196877, 2.3987241974763416 0.7190704323420595, 2.3492315519647713 0.8550503583141718 C2.299738906453201 0.991030284286284, 2.2374169168223177 1.124680222349637, 2.165063509461097 1.2499999999999998 C2.092710102099876 1.3753197776503625, 2.0081268553382365 1.496117172916774, 1.915111107797445 1.6069690242163481 C1.8220953602566536 1.7178208755159223, 1.7178208755159226 1.8220953602566536, 1.6069690242163484 1.915111107797445 C1.4961171729167742 2.0081268553382365, 1.375319777650363 2.0927101020998755, 1.2500000000000002 2.1650635094610964 C1.1246802223496375 2.2374169168223172, 0.9910302842862845 2.2997389064532, 0.8550503583141721 2.349231551964771 C0.7190704323420597 2.3987241974763416, 0.576628837219688 2.436891307857982, 0.43412044416732604 2.46201938253052 C0.291612051114964 2.487147457203058, 0.14470681472244212 2.5, 1.5308084989341916e-16 2.5 C-0.1447068147224418 2.5, -0.2916120511149638 2.487147457203058, -0.43412044416732576 2.46201938253052 C-0.5766288372196877 2.436891307857982, -0.7190704323420595 2.3987241974763416, -0.8550503583141718 2.3492315519647713 C-0.991030284286284 2.299738906453201, -1.124680222349637 2.2374169168223177, -1.2499999999999996 2.165063509461097 C-1.375319777650362 2.092710102099876, -1.4961171729167733 2.008126855338237, -1.6069690242163475 1.9151111077974459 C-1.7178208755159217 1.8220953602566548, -1.822095360256653 1.7178208755159234, -1.9151111077974443 1.6069690242163495 C-2.0081268553382357 1.4961171729167755, -2.0927101020998746 1.3753197776503645, -2.1650635094610955 1.250000000000002 C-2.2374169168223164 1.1246802223496395, -2.2997389064531992 0.9910302842862865, -2.34923155196477 0.8550503583141743 C-2.3987241974763407 0.7190704323420621, -2.436891307857981 0.5766288372196907, -2.4620193825305194 0.434120444167329 C-2.487147457203058 0.29161205111496724, -2.5 0.14470681472244545, -2.5 3.636830773662308e-15 C-2.5 -0.14470681472243818, -2.4871474572030587 -0.2916120511149599, -2.4620193825305208 -0.4341204441673218 C-2.436891307857983 -0.5766288372196837, -2.398724197476343 -0.7190704323420553, -2.3492315519647726 -0.8550503583141675 C-2.2997389064532023 -0.9910302842862798, -2.23741691682232 -1.1246802223496328, -2.165063509461099 -1.2499999999999956 C-2.092710102099878 -1.3753197776503583, -2.00812685533824 -1.4961171729167695, -1.9151111077974488 -1.606969024216344 C-1.8220953602566576 -1.7178208755159183, -1.7178208755159263 -1.82209536025665, -1.6069690242163523 -1.9151111077974416 C-1.4961171729167784 -2.0081268553382334, -1.3753197776503672 -2.0927101020998724, -1.2500000000000047 -2.1650635094610937 C-1.1246802223496422 -2.237416916822315, -0.9910302842862897 -2.299738906453198, -0.8550503583141776 -2.3492315519647686 C-0.7190704323420656 -2.3987241974763394, -0.5766288372196942 -2.4368913078579806, -0.43412044416733236 -2.462019382530519 C-0.29161205111497057 -2.4871474572030574, -0.1447068147224489 -2.4999999999999996, -7.120580697431198e-15 -2.5 C0.14470681472243463 -2.5000000000000004, 0.29161205111495647 -2.487147457203059, 0.4341204441673183 -2.4620193825305217 C0.5766288372196802 -2.436891307857984, 0.7190704323420518 -2.3987241974763442, 0.8550503583141642 -2.349231551964774 C0.9910302842862766 -2.2997389064532037, 1.1246802223496295 -2.2374169168223212, 1.2499999999999925 -2.165063509461101 C1.3753197776503554 -2.0927101020998804, 1.4961171729167668 -2.008126855338242, 1.6069690242163412 -1.915111107797451 C1.7178208755159157 -1.82209536025666, 1.8220953602566472 -1.7178208755159294, 1.915111107797439 -1.6069690242163557 C2.0081268553382308 -1.496117172916782, 2.09271010209987 -1.3753197776503712, 2.1650635094610915 -1.2500000000000089 C2.237416916822313 -1.1246802223496466, 2.299738906453196 -0.9910302842862939, 2.3492315519647673 -0.855050358314182 C2.3987241974763385 -0.71907043234207, 2.4368913078579792 -0.5766288372196986, 2.462019382530518 -0.4341204441673369 C2.487147457203057 -0.29161205111497523, 2.4936698970884197 -0.07235340736123454, 2.5 -1.1714553645825241e-14 C2.5063301029115803 0.07235340736121111, 2.50633010291158 -0.07235340736122292, 2.5 0\" stroke=\"#9370DB\" stroke-width=\"2\" fill=\"none\" stroke-dasharray=\"0 0\" style=\"\"></path></g></g></g></g></g></g><defs><filter id=\"diagram-4b86f133bd9639c71aeb6603a068d96a564f9e0e1a65e31ecbc221b0574b02fa-drop-shadow\" height=\"130%\" width=\"130%\"><feDropShadow dx=\"4\" dy=\"4\" stdDeviation=\"0\" flood-opacity=\"0.06\" flood-color=\"#000000\"></feDropShadow></filter></defs><defs><filter id=\"diagram-4b86f133bd9639c71aeb6603a068d96a564f9e0e1a65e31ecbc221b0574b02fa-drop-shadow-small\" height=\"150%\" width=\"150%\"><feDropShadow dx=\"2\" dy=\"2\" stdDeviation=\"0\" flood-opacity=\"0.06\" flood-color=\"#000000\"></feDropShadow></filter></defs></svg>","diagramHtmlDark":"<svg id=\"diagram-85161272b882e468039bab95ca05b556bca0dfb6459d4d72b2358dcad5a9c826\" width=\"100%\" xmlns=\"http://www.w3.org/2000/svg\" class=\"statediagram\" style=\"max-width: 512.78125px;\" viewBox=\"0 0 512.78125 468\" role=\"graphics-document document\" aria-roledescription=\"stateDiagram\"><style>\n    #diagram-85161272b882e468039bab95ca05b556bca0dfb6459d4d72b2358dcad5a9c826 foreignObject {\n      overflow: visible;\n    }\n  </style><style>#diagram-85161272b882e468039bab95ca05b556bca0dfb6459d4d72b2358dcad5a9c826{font-family:\"Redocly Mermaid Sans\",Arial,\"Liberation Sans\",Arimo,Helvetica,\"Redocly Mermaid CJK\",sans-serif;font-size:16px;fill:#ccc;}@keyframes edge-animation-frame{from{stroke-dashoffset:0;}}@keyframes dash{to{stroke-dashoffset:0;}}#diagram-85161272b882e468039bab95ca05b556bca0dfb6459d4d72b2358dcad5a9c826 .edge-animation-slow{stroke-dasharray:9,5!important;stroke-dashoffset:900;animation:dash 50s linear infinite;stroke-linecap:round;}#diagram-85161272b882e468039bab95ca05b556bca0dfb6459d4d72b2358dcad5a9c826 .edge-animation-fast{stroke-dasharray:9,5!important;stroke-dashoffset:900;animation:dash 20s linear infinite;stroke-linecap:round;}#diagram-85161272b882e468039bab95ca05b556bca0dfb6459d4d72b2358dcad5a9c826 .error-icon{fill:#a44141;}#diagram-85161272b882e468039bab95ca05b556bca0dfb6459d4d72b2358dcad5a9c826 .error-text{fill:#ddd;stroke:#ddd;}#diagram-85161272b882e468039bab95ca05b556bca0dfb6459d4d72b2358dcad5a9c826 .edge-thickness-normal{stroke-width:1px;}#diagram-85161272b882e468039bab95ca05b556bca0dfb6459d4d72b2358dcad5a9c826 .edge-thickness-thick{stroke-width:3.5px;}#diagram-85161272b882e468039bab95ca05b556bca0dfb6459d4d72b2358dcad5a9c826 .edge-pattern-solid{stroke-dasharray:0;}#diagram-85161272b882e468039bab95ca05b556bca0dfb6459d4d72b2358dcad5a9c826 .edge-thickness-invisible{stroke-width:0;fill:none;}#diagram-85161272b882e468039bab95ca05b556bca0dfb6459d4d72b2358dcad5a9c826 .edge-pattern-dashed{stroke-dasharray:3;}#diagram-85161272b882e468039bab95ca05b556bca0dfb6459d4d72b2358dcad5a9c826 .edge-pattern-dotted{stroke-dasharray:2;}#diagram-85161272b882e468039bab95ca05b556bca0dfb6459d4d72b2358dcad5a9c826 .marker{fill:lightgrey;stroke:lightgrey;}#diagram-85161272b882e468039bab95ca05b556bca0dfb6459d4d72b2358dcad5a9c826 .marker.cross{stroke:lightgrey;}#diagram-85161272b882e468039bab95ca05b556bca0dfb6459d4d72b2358dcad5a9c826 svg{font-family:\"Redocly Mermaid Sans\",Arial,\"Liberation Sans\",Arimo,Helvetica,\"Redocly Mermaid CJK\",sans-serif;font-size:16px;}#diagram-85161272b882e468039bab95ca05b556bca0dfb6459d4d72b2358dcad5a9c826 p{margin:0;}#diagram-85161272b882e468039bab95ca05b556bca0dfb6459d4d72b2358dcad5a9c826 defs [id$=\"-barbEnd\"]{fill:lightgrey;stroke:lightgrey;}#diagram-85161272b882e468039bab95ca05b556bca0dfb6459d4d72b2358dcad5a9c826 g.stateGroup text{fill:#ccc;stroke:none;font-size:10px;}#diagram-85161272b882e468039bab95ca05b556bca0dfb6459d4d72b2358dcad5a9c826 g.stateGroup text{fill:#ccc;stroke:none;font-size:10px;}#diagram-85161272b882e468039bab95ca05b556bca0dfb6459d4d72b2358dcad5a9c826 g.stateGroup .state-title{font-weight:bolder;fill:#e0dfdf;}#diagram-85161272b882e468039bab95ca05b556bca0dfb6459d4d72b2358dcad5a9c826 g.stateGroup rect{fill:#1f2020;stroke:#ccc;}#diagram-85161272b882e468039bab95ca05b556bca0dfb6459d4d72b2358dcad5a9c826 g.stateGroup line{stroke:lightgrey;stroke-width:1;}#diagram-85161272b882e468039bab95ca05b556bca0dfb6459d4d72b2358dcad5a9c826 .transition{stroke:lightgrey;stroke-width:1;fill:none;}#diagram-85161272b882e468039bab95ca05b556bca0dfb6459d4d72b2358dcad5a9c826 .stateGroup .composit{fill:#333;border-bottom:1px;}#diagram-85161272b882e468039bab95ca05b556bca0dfb6459d4d72b2358dcad5a9c826 .stateGroup .alt-composit{fill:#e0e0e0;border-bottom:1px;}#diagram-85161272b882e468039bab95ca05b556bca0dfb6459d4d72b2358dcad5a9c826 .state-note{stroke:hsl(180, 0%, 18.3529411765%);fill:hsl(180, 1.5873015873%, 28.3529411765%);}#diagram-85161272b882e468039bab95ca05b556bca0dfb6459d4d72b2358dcad5a9c826 .state-note text{fill:rgb(183.8476190475, 181.5523809523, 181.5523809523);stroke:none;font-size:10px;}#diagram-85161272b882e468039bab95ca05b556bca0dfb6459d4d72b2358dcad5a9c826 .stateLabel .box{stroke:none;stroke-width:0;fill:#1f2020;opacity:0.5;}#diagram-85161272b882e468039bab95ca05b556bca0dfb6459d4d72b2358dcad5a9c826 .edgeLabel .label rect{fill:#1f2020;opacity:0.5;}#diagram-85161272b882e468039bab95ca05b556bca0dfb6459d4d72b2358dcad5a9c826 .edgeLabel{background-color:hsl(0, 0%, 34.4117647059%);text-align:center;}#diagram-85161272b882e468039bab95ca05b556bca0dfb6459d4d72b2358dcad5a9c826 .edgeLabel p{background-color:hsl(0, 0%, 34.4117647059%);}#diagram-85161272b882e468039bab95ca05b556bca0dfb6459d4d72b2358dcad5a9c826 .edgeLabel rect{opacity:0.5;background-color:hsl(0, 0%, 34.4117647059%);fill:hsl(0, 0%, 34.4117647059%);}#diagram-85161272b882e468039bab95ca05b556bca0dfb6459d4d72b2358dcad5a9c826 .edgeLabel .label text{fill:#ccc;}#diagram-85161272b882e468039bab95ca05b556bca0dfb6459d4d72b2358dcad5a9c826 .label div .edgeLabel{color:#ccc;}#diagram-85161272b882e468039bab95ca05b556bca0dfb6459d4d72b2358dcad5a9c826 .stateLabel text{fill:#e0dfdf;font-size:10px;font-weight:bold;}#diagram-85161272b882e468039bab95ca05b556bca0dfb6459d4d72b2358dcad5a9c826 .node circle.state-start{fill:#f4f4f4;stroke:#f4f4f4;}#diagram-85161272b882e468039bab95ca05b556bca0dfb6459d4d72b2358dcad5a9c826 .node .fork-join{fill:#f4f4f4;stroke:#f4f4f4;}#diagram-85161272b882e468039bab95ca05b556bca0dfb6459d4d72b2358dcad5a9c826 .node circle.state-end{fill:#cccccc;stroke:#333;stroke-width:1.5;}#diagram-85161272b882e468039bab95ca05b556bca0dfb6459d4d72b2358dcad5a9c826 .end-state-inner{fill:#333;stroke-width:1.5;}#diagram-85161272b882e468039bab95ca05b556bca0dfb6459d4d72b2358dcad5a9c826 .node rect{fill:#1f2020;stroke:#ccc;stroke-width:1px;}#diagram-85161272b882e468039bab95ca05b556bca0dfb6459d4d72b2358dcad5a9c826 .node polygon{fill:#1f2020;stroke:#ccc;stroke-width:1px;}#diagram-85161272b882e468039bab95ca05b556bca0dfb6459d4d72b2358dcad5a9c826 [id$=\"-barbEnd\"]{fill:lightgrey;}#diagram-85161272b882e468039bab95ca05b556bca0dfb6459d4d72b2358dcad5a9c826 .statediagram-cluster rect{fill:#1f2020;stroke:#ccc;stroke-width:1px;}#diagram-85161272b882e468039bab95ca05b556bca0dfb6459d4d72b2358dcad5a9c826 .cluster-label,#diagram-85161272b882e468039bab95ca05b556bca0dfb6459d4d72b2358dcad5a9c826 .nodeLabel{color:#e0dfdf;}#diagram-85161272b882e468039bab95ca05b556bca0dfb6459d4d72b2358dcad5a9c826 .statediagram-cluster rect.outer{rx:5px;ry:5px;}#diagram-85161272b882e468039bab95ca05b556bca0dfb6459d4d72b2358dcad5a9c826 .statediagram-state .divider{stroke:#ccc;}#diagram-85161272b882e468039bab95ca05b556bca0dfb6459d4d72b2358dcad5a9c826 .statediagram-state .title-state{rx:5px;ry:5px;}#diagram-85161272b882e468039bab95ca05b556bca0dfb6459d4d72b2358dcad5a9c826 .statediagram-cluster.statediagram-cluster .inner{fill:#333;}#diagram-85161272b882e468039bab95ca05b556bca0dfb6459d4d72b2358dcad5a9c826 .statediagram-cluster.statediagram-cluster-alt .inner{fill:#555;}#diagram-85161272b882e468039bab95ca05b556bca0dfb6459d4d72b2358dcad5a9c826 .statediagram-cluster .inner{rx:0;ry:0;}#diagram-85161272b882e468039bab95ca05b556bca0dfb6459d4d72b2358dcad5a9c826 .statediagram-state rect.basic{rx:5px;ry:5px;}#diagram-85161272b882e468039bab95ca05b556bca0dfb6459d4d72b2358dcad5a9c826 .statediagram-state rect.divider{stroke-dasharray:10,10;fill:#555;}#diagram-85161272b882e468039bab95ca05b556bca0dfb6459d4d72b2358dcad5a9c826 .note-edge{stroke-dasharray:5;}#diagram-85161272b882e468039bab95ca05b556bca0dfb6459d4d72b2358dcad5a9c826 .statediagram-note rect{fill:hsl(180, 1.5873015873%, 28.3529411765%);stroke:hsl(180, 0%, 18.3529411765%);stroke-width:1px;rx:0;ry:0;}#diagram-85161272b882e468039bab95ca05b556bca0dfb6459d4d72b2358dcad5a9c826 .statediagram-note rect{fill:hsl(180, 1.5873015873%, 28.3529411765%);stroke:hsl(180, 0%, 18.3529411765%);stroke-width:1px;rx:0;ry:0;}#diagram-85161272b882e468039bab95ca05b556bca0dfb6459d4d72b2358dcad5a9c826 .statediagram-note text{fill:rgb(183.8476190475, 181.5523809523, 181.5523809523);}#diagram-85161272b882e468039bab95ca05b556bca0dfb6459d4d72b2358dcad5a9c826 .statediagram-note .nodeLabel{color:rgb(183.8476190475, 181.5523809523, 181.5523809523);}#diagram-85161272b882e468039bab95ca05b556bca0dfb6459d4d72b2358dcad5a9c826 .statediagram .edgeLabel{color:red;}#diagram-85161272b882e468039bab95ca05b556bca0dfb6459d4d72b2358dcad5a9c826 [id$=\"-dependencyStart\"],#diagram-85161272b882e468039bab95ca05b556bca0dfb6459d4d72b2358dcad5a9c826 [id$=\"-dependencyEnd\"]{fill:lightgrey;stroke:lightgrey;stroke-width:1;}#diagram-85161272b882e468039bab95ca05b556bca0dfb6459d4d72b2358dcad5a9c826 .statediagramTitleText{text-anchor:middle;font-size:18px;fill:#ccc;}#diagram-85161272b882e468039bab95ca05b556bca0dfb6459d4d72b2358dcad5a9c826 [data-look=\"neo\"].statediagram-cluster rect{fill:#1f2020;stroke:url(#diagram-85161272b882e468039bab95ca05b556bca0dfb6459d4d72b2358dcad5a9c826-gradient);stroke-width:1;}#diagram-85161272b882e468039bab95ca05b556bca0dfb6459d4d72b2358dcad5a9c826 [data-look=\"neo\"].statediagram-cluster rect.outer{rx:5px;ry:5px;filter:drop-shadow( 1px 2px 2px rgba(185,185,185,1));}#diagram-85161272b882e468039bab95ca05b556bca0dfb6459d4d72b2358dcad5a9c826 .node .neo-node{stroke:#ccc;}#diagram-85161272b882e468039bab95ca05b556bca0dfb6459d4d72b2358dcad5a9c826 [data-look=\"neo\"].node rect,#diagram-85161272b882e468039bab95ca05b556bca0dfb6459d4d72b2358dcad5a9c826 [data-look=\"neo\"].cluster rect,#diagram-85161272b882e468039bab95ca05b556bca0dfb6459d4d72b2358dcad5a9c826 [data-look=\"neo\"].node polygon{stroke:url(#diagram-85161272b882e468039bab95ca05b556bca0dfb6459d4d72b2358dcad5a9c826-gradient);filter:drop-shadow( 1px 2px 2px rgba(185,185,185,1));}#diagram-85161272b882e468039bab95ca05b556bca0dfb6459d4d72b2358dcad5a9c826 [data-look=\"neo\"].swimlane.cluster rect{filter:none;}#diagram-85161272b882e468039bab95ca05b556bca0dfb6459d4d72b2358dcad5a9c826 [data-look=\"neo\"].node path{stroke:url(#diagram-85161272b882e468039bab95ca05b556bca0dfb6459d4d72b2358dcad5a9c826-gradient);stroke-width:1px;}#diagram-85161272b882e468039bab95ca05b556bca0dfb6459d4d72b2358dcad5a9c826 [data-look=\"neo\"].node .outer-path{filter:drop-shadow( 1px 2px 2px rgba(185,185,185,1));}#diagram-85161272b882e468039bab95ca05b556bca0dfb6459d4d72b2358dcad5a9c826 [data-look=\"neo\"].node .neo-line path{stroke:#ccc;filter:none;}#diagram-85161272b882e468039bab95ca05b556bca0dfb6459d4d72b2358dcad5a9c826 [data-look=\"neo\"].node circle{stroke:url(#diagram-85161272b882e468039bab95ca05b556bca0dfb6459d4d72b2358dcad5a9c826-gradient);filter:drop-shadow( 1px 2px 2px rgba(185,185,185,1));}#diagram-85161272b882e468039bab95ca05b556bca0dfb6459d4d72b2358dcad5a9c826 [data-look=\"neo\"].node circle .state-start{fill:#000000;}#diagram-85161272b882e468039bab95ca05b556bca0dfb6459d4d72b2358dcad5a9c826 [data-look=\"neo\"].icon-shape .icon{fill:url(#diagram-85161272b882e468039bab95ca05b556bca0dfb6459d4d72b2358dcad5a9c826-gradient);filter:drop-shadow( 1px 2px 2px rgba(185,185,185,1));}#diagram-85161272b882e468039bab95ca05b556bca0dfb6459d4d72b2358dcad5a9c826 [data-look=\"neo\"].icon-shape .icon-neo path{stroke:url(#diagram-85161272b882e468039bab95ca05b556bca0dfb6459d4d72b2358dcad5a9c826-gradient);filter:drop-shadow( 1px 2px 2px rgba(185,185,185,1));}#diagram-85161272b882e468039bab95ca05b556bca0dfb6459d4d72b2358dcad5a9c826 :root{--mermaid-font-family:\"Redocly Mermaid Sans\",Arial,\"Liberation Sans\",Arimo,Helvetica,\"Redocly Mermaid CJK\",sans-serif;}</style><g><defs><marker id=\"diagram-85161272b882e468039bab95ca05b556bca0dfb6459d4d72b2358dcad5a9c826_stateDiagram-barbEnd\" refX=\"19\" refY=\"7\" markerWidth=\"20\" markerHeight=\"14\" markerUnits=\"userSpaceOnUse\" orient=\"auto\"><path d=\"M 19,7 L9,13 L14,7 L9,1 Z\"></path></marker></defs><g class=\"root\"><g class=\"clusters\"></g><g class=\"edgePaths\"><path d=\"M279.461,22L279.461,28.167C279.461,34.333,279.461,46.667,279.461,59C279.461,71.333,279.461,83.667,279.461,89.833L279.461,96\" id=\"diagram-85161272b882e468039bab95ca05b556bca0dfb6459d4d72b2358dcad5a9c826-edge0\" class=\"edge-thickness-normal edge-pattern-solid transition\" style=\"fill:none;;;fill:none\" data-edge=\"true\" data-et=\"edge\" data-id=\"edge0\" data-points=\"W3sieCI6Mjc5LjQ2MDkzNzUsInkiOjIyfSx7IngiOjI3OS40NjA5Mzc1LCJ5Ijo1OX0seyJ4IjoyNzkuNDYwOTM3NSwieSI6OTZ9XQ==\" data-look=\"classic\" marker-end=\"url(#diagram-85161272b882e468039bab95ca05b556bca0dfb6459d4d72b2358dcad5a9c826_stateDiagram-barbEnd)\"></path><path d=\"M279.461,136L279.461,144.167C279.461,152.333,279.461,168.667,279.461,185.667C279.461,202.667,279.461,220.333,279.461,229.167L279.461,238\" id=\"diagram-85161272b882e468039bab95ca05b556bca0dfb6459d4d72b2358dcad5a9c826-edge1\" class=\"edge-thickness-normal edge-pattern-solid transition\" style=\"fill:none;;;fill:none\" data-edge=\"true\" data-et=\"edge\" data-id=\"edge1\" data-points=\"W3sieCI6Mjc5LjQ2MDkzNzUsInkiOjEzNn0seyJ4IjoyNzkuNDYwOTM3NSwieSI6MTg1fSx7IngiOjI3OS40NjA5Mzc1LCJ5IjoyMzh9XQ==\" data-look=\"classic\" marker-end=\"url(#diagram-85161272b882e468039bab95ca05b556bca0dfb6459d4d72b2358dcad5a9c826_stateDiagram-barbEnd)\"></path><path d=\"M232.773,134.788L211.978,143.157C191.182,151.525,149.591,168.263,128.796,188.798C108,209.333,108,233.667,108,256C108,278.333,108,298.667,117.275,315C126.55,331.333,145.1,343.667,154.375,349.833L163.65,356\" id=\"diagram-85161272b882e468039bab95ca05b556bca0dfb6459d4d72b2358dcad5a9c826-edge2\" class=\"edge-thickness-normal edge-pattern-solid transition\" style=\"fill:none;;;fill:none\" data-edge=\"true\" data-et=\"edge\" data-id=\"edge2\" data-points=\"W3sieCI6MjMyLjc3MzQzNzUsInkiOjEzNC43ODgxNzE1MDQwNzh9LHsieCI6MTA4LCJ5IjoxODV9LHsieCI6MTA4LCJ5IjoyNTh9LHsieCI6MTA4LCJ5IjozMTl9LHsieCI6MTYzLjY0OTYwMjUyMTkyOTg0LCJ5IjozNTZ9XQ==\" data-look=\"classic\" marker-end=\"url(#diagram-85161272b882e468039bab95ca05b556bca0dfb6459d4d72b2358dcad5a9c826_stateDiagram-barbEnd)\"></path><path d=\"M279.461,278L279.461,284.833C279.461,291.667,279.461,305.333,270.186,318.333C260.911,331.333,242.361,343.667,233.086,349.833L223.811,356\" id=\"diagram-85161272b882e468039bab95ca05b556bca0dfb6459d4d72b2358dcad5a9c826-edge3\" class=\"edge-thickness-normal edge-pattern-solid transition\" style=\"fill:none;;;fill:none\" data-edge=\"true\" data-et=\"edge\" data-id=\"edge3\" data-points=\"W3sieCI6Mjc5LjQ2MDkzNzUsInkiOjI3OH0seyJ4IjoyNzkuNDYwOTM3NSwieSI6MzE5fSx7IngiOjIyMy44MTEzMzQ5NzgwNzAxNiwieSI6MzU2fV0=\" data-look=\"classic\" marker-end=\"url(#diagram-85161272b882e468039bab95ca05b556bca0dfb6459d4d72b2358dcad5a9c826_stateDiagram-barbEnd)\"></path><path d=\"M322.473,136L340.036,144.167C357.599,152.333,392.725,168.667,410.288,189C427.852,209.333,427.852,233.667,427.852,256C427.852,278.333,427.852,298.667,431.388,315C434.924,331.333,441.997,343.667,445.533,349.833L449.07,356\" id=\"diagram-85161272b882e468039bab95ca05b556bca0dfb6459d4d72b2358dcad5a9c826-edge4\" class=\"edge-thickness-normal edge-pattern-solid transition\" style=\"fill:none;;;fill:none\" data-edge=\"true\" data-et=\"edge\" data-id=\"edge4\" data-points=\"W3sieCI6MzIyLjQ3MjcxMjg2MjMxODksInkiOjEzNn0seyJ4Ijo0MjcuODUxNTYyNSwieSI6MTg1fSx7IngiOjQyNy44NTE1NjI1LCJ5IjoyNTh9LHsieCI6NDI3Ljg1MTU2MjUsInkiOjMxOX0seyJ4Ijo0NDkuMDY5NzY0MjU0Mzg2LCJ5IjozNTZ9XQ==\" data-look=\"classic\" marker-end=\"url(#diagram-85161272b882e468039bab95ca05b556bca0dfb6459d4d72b2358dcad5a9c826_stateDiagram-barbEnd)\"></path><path d=\"M315.922,268.404L345.473,276.837C375.023,285.27,434.125,302.135,460.139,316.734C486.154,331.333,479.081,343.667,475.545,349.833L472.008,356\" id=\"diagram-85161272b882e468039bab95ca05b556bca0dfb6459d4d72b2358dcad5a9c826-edge5\" class=\"edge-thickness-normal edge-pattern-solid transition\" style=\"fill:none;;;fill:none\" data-edge=\"true\" data-et=\"edge\" data-id=\"edge5\" data-points=\"W3sieCI6MzE1LjkyMTg3NSwieSI6MjY4LjQwNDQ2NjA0NzgwMzV9LHsieCI6NDkzLjIyNjU2MjUsInkiOjMxOX0seyJ4Ijo0NzIuMDA4MzYwNzQ1NjE0LCJ5IjozNTZ9XQ==\" data-look=\"classic\" marker-end=\"url(#diagram-85161272b882e468039bab95ca05b556bca0dfb6459d4d72b2358dcad5a9c826_stateDiagram-barbEnd)\"></path><path d=\"M193.73,396L193.73,400.167C193.73,404.333,193.73,412.667,210.426,421.832C227.121,430.997,260.511,440.994,277.206,445.992L293.901,450.99\" id=\"diagram-85161272b882e468039bab95ca05b556bca0dfb6459d4d72b2358dcad5a9c826-edge6\" class=\"edge-thickness-normal edge-pattern-solid transition\" style=\"fill:none;;;fill:none\" data-edge=\"true\" data-et=\"edge\" data-id=\"edge6\" data-points=\"W3sieCI6MTkzLjczMDQ2ODc1LCJ5IjozOTZ9LHsieCI6MTkzLjczMDQ2ODc1LCJ5Ijo0MjF9LHsieCI6MjkzLjkwMTAxMTE4MjkxODcsInkiOjQ1MC45OTAzOTExODUyMzc1N31d\" data-look=\"classic\" marker-end=\"url(#diagram-85161272b882e468039bab95ca05b556bca0dfb6459d4d72b2358dcad5a9c826_stateDiagram-barbEnd)\"></path><path d=\"M460.539,396L460.539,400.167C460.539,404.333,460.539,412.667,435.03,421.938C409.521,431.208,358.502,441.417,332.993,446.521L307.484,451.625\" id=\"diagram-85161272b882e468039bab95ca05b556bca0dfb6459d4d72b2358dcad5a9c826-edge7\" class=\"edge-thickness-normal edge-pattern-solid transition\" style=\"fill:none;;;fill:none\" data-edge=\"true\" data-et=\"edge\" data-id=\"edge7\" data-points=\"W3sieCI6NDYwLjUzOTA2MjUsInkiOjM5Nn0seyJ4Ijo0NjAuNTM5MDYyNSwieSI6NDIxfSx7IngiOjMwNy40ODM3NDA4Nzk0Mjk1LCJ5Ijo0NTEuNjI1MjcwMzgyMTUyN31d\" data-look=\"classic\" marker-end=\"url(#diagram-85161272b882e468039bab95ca05b556bca0dfb6459d4d72b2358dcad5a9c826_stateDiagram-barbEnd)\"></path></g><g class=\"edgeLabels\"><g class=\"edgeLabel\" transform=\"translate(279.4609375, 59)\"><g class=\"label\" data-id=\"edge0\" transform=\"translate(-92.9375, -12)\"><foreignObject width=\"185.875\" height=\"24\"><div xmlns=\"http://www.w3.org/1999/xhtml\" class=\"labelBkg\" style=\"display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;\"><span class=\"edgeLabel\"><p>generate fired (status null)</p></span></div></foreignObject></g></g><g class=\"edgeLabel\" transform=\"translate(279.4609375, 185)\"><g class=\"label\" data-id=\"edge1\" transform=\"translate(-100, -24)\"><foreignObject width=\"200\" height=\"48\"><div xmlns=\"http://www.w3.org/1999/xhtml\" class=\"labelBkg\" style=\"display: table; white-space: break-spaces; line-height: 1.5; max-width: 200px; text-align: center; width: 200px;\"><span class=\"edgeLabel\"><p>file built, awaiting SFTP upload</p></span></div></foreignObject></g></g><g class=\"edgeLabel\" transform=\"translate(108, 258)\"><g class=\"label\" data-id=\"edge2\" transform=\"translate(-100, -24)\"><foreignObject width=\"200\" height=\"48\"><div xmlns=\"http://www.w3.org/1999/xhtml\" class=\"labelBkg\" style=\"display: table; white-space: break-spaces; line-height: 1.5; max-width: 200px; text-align: center; width: 200px;\"><span class=\"edgeLabel\"><p>file built, upload skipped (uploadFile=false)</p></span></div></foreignObject></g></g><g class=\"edgeLabel\" transform=\"translate(279.4609375, 319)\"><g class=\"label\" data-id=\"edge3\" transform=\"translate(-64.484375, -12)\"><foreignObject width=\"128.96875\" height=\"24\"><div xmlns=\"http://www.w3.org/1999/xhtml\" class=\"labelBkg\" style=\"display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;\"><span class=\"edgeLabel\"><p>uploaded to SFTP</p></span></div></foreignObject></g></g><g class=\"edgeLabel\" transform=\"translate(427.8515625, 258)\"><g class=\"label\" data-id=\"edge4\" transform=\"translate(-76.9296875, -12)\"><foreignObject width=\"153.859375\" height=\"24\"><div xmlns=\"http://www.w3.org/1999/xhtml\" class=\"labelBkg\" style=\"display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;\"><span class=\"edgeLabel\"><p>see failureDescription</p></span></div></foreignObject></g></g><g class=\"edgeLabel\" transform=\"translate(425.08171, 299.55423)\"><g class=\"label\" data-id=\"edge5\" transform=\"translate(-45.375, -12)\"><foreignObject width=\"90.75\" height=\"24\"><div xmlns=\"http://www.w3.org/1999/xhtml\" class=\"labelBkg\" style=\"display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;\"><span class=\"edgeLabel\"><p>upload failed</p></span></div></foreignObject></g></g><g class=\"edgeLabel\"><g class=\"label\" data-id=\"edge6\" transform=\"translate(0, 0)\"><foreignObject width=\"0\" height=\"0\"><div xmlns=\"http://www.w3.org/1999/xhtml\" class=\"labelBkg\" style=\"display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;\"><span class=\"edgeLabel\"></span></div></foreignObject></g></g><g class=\"edgeLabel\"><g class=\"label\" data-id=\"edge7\" transform=\"translate(0, 0)\"><foreignObject width=\"0\" height=\"0\"><div xmlns=\"http://www.w3.org/1999/xhtml\" class=\"labelBkg\" style=\"display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;\"><span class=\"edgeLabel\"></span></div></foreignObject></g></g></g><g class=\"nodes\"><g class=\"node default\" id=\"diagram-85161272b882e468039bab95ca05b556bca0dfb6459d4d72b2358dcad5a9c826-state-root_start-0\" data-look=\"classic\" transform=\"translate(279.4609375, 15)\"><circle class=\"state-start\" r=\"7\" width=\"14\" height=\"14\"></circle></g><g class=\"node  statediagram-state\" id=\"diagram-85161272b882e468039bab95ca05b556bca0dfb6459d4d72b2358dcad5a9c826-state-InProgress-4\" data-look=\"classic\" transform=\"translate(279.4609375, 116)\"><rect class=\"basic label-container\" style=\"\" rx=\"5\" ry=\"5\" x=\"-46.6875\" y=\"-20\" width=\"93.375\" height=\"40\"></rect><g class=\"label\" style=\"\" transform=\"translate(-38.6875, -12)\"><rect></rect><foreignObject width=\"77.375\" height=\"24\"><div xmlns=\"http://www.w3.org/1999/xhtml\" style=\"display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;\"><span class=\"nodeLabel markdown-node-label\"><p>InProgress</p></span></div></foreignObject></g></g><g class=\"node  statediagram-state\" id=\"diagram-85161272b882e468039bab95ca05b556bca0dfb6459d4d72b2358dcad5a9c826-state-Created-5\" data-look=\"classic\" transform=\"translate(279.4609375, 258)\"><rect class=\"basic label-container\" style=\"\" rx=\"5\" ry=\"5\" x=\"-36.4609375\" y=\"-20\" width=\"72.921875\" height=\"40\"></rect><g class=\"label\" style=\"\" transform=\"translate(-28.4609375, -12)\"><rect></rect><foreignObject width=\"56.921875\" height=\"24\"><div xmlns=\"http://www.w3.org/1999/xhtml\" style=\"display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;\"><span class=\"nodeLabel markdown-node-label\"><p>Created</p></span></div></foreignObject></g></g><g class=\"node  statediagram-state\" id=\"diagram-85161272b882e468039bab95ca05b556bca0dfb6459d4d72b2358dcad5a9c826-state-Succeeded-6\" data-look=\"classic\" transform=\"translate(193.73046875, 376)\"><rect class=\"basic label-container\" style=\"\" rx=\"5\" ry=\"5\" x=\"-48.03125\" y=\"-20\" width=\"96.0625\" height=\"40\"></rect><g class=\"label\" style=\"\" transform=\"translate(-40.03125, -12)\"><rect></rect><foreignObject width=\"80.0625\" height=\"24\"><div xmlns=\"http://www.w3.org/1999/xhtml\" style=\"display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;\"><span class=\"nodeLabel markdown-node-label\"><p>Succeeded</p></span></div></foreignObject></g></g><g class=\"node  statediagram-state\" id=\"diagram-85161272b882e468039bab95ca05b556bca0dfb6459d4d72b2358dcad5a9c826-state-Failed-7\" data-look=\"classic\" transform=\"translate(460.5390625, 376)\"><rect class=\"basic label-container\" style=\"\" rx=\"5\" ry=\"5\" x=\"-29.7890625\" y=\"-20\" width=\"59.578125\" height=\"40\"></rect><g class=\"label\" style=\"\" transform=\"translate(-21.7890625, -12)\"><rect></rect><foreignObject width=\"43.578125\" height=\"24\"><div xmlns=\"http://www.w3.org/1999/xhtml\" style=\"display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;\"><span class=\"nodeLabel markdown-node-label\"><p>Failed</p></span></div></foreignObject></g></g><g class=\"node default\" id=\"diagram-85161272b882e468039bab95ca05b556bca0dfb6459d4d72b2358dcad5a9c826-state-root_end-7\" data-look=\"classic\" transform=\"translate(300.61328125, 453)\"><g class=\"outer-path\"><path d=\"M7 0 C7 0.40517908122283747, 6.964012880168563 0.816513743121899, 6.893654271085456 1.2155372436685123 C6.823295662002349 1.6145607442151257, 6.716427752933756 2.013397210557766, 6.5778483455013586 2.394141003279681 C6.439268938068961 2.7748847960015954, 6.26476736710249 3.149104622578984, 6.062177826491071 3.4999999999999996 C5.859588285879653 3.8508953774210153, 5.622755194947063 4.189128084166967, 5.362311101832846 4.499513267805774 C5.10186700871863 4.809898451444582, 4.809898451444583 5.10186700871863, 4.499513267805775 5.362311101832846 C4.189128084166968 5.622755194947063, 3.8508953774210166 5.859588285879652, 3.500000000000001 6.06217782649107 C3.149104622578985 6.264767367102489, 2.7748847960015963 6.439268938068961, 2.3941410032796817 6.5778483455013586 C2.013397210557767 6.716427752933756, 1.6145607442151264 6.823295662002349, 1.2155372436685128 6.893654271085456 C0.8165137431218992 6.964012880168563, 0.4051790812228379 7, 4.286263797015736e-16 7 C-0.405179081222837 7, -0.8165137431218985 6.964012880168563, -1.2155372436685121 6.893654271085456 C-1.6145607442151257 6.823295662002349, -2.0133972105577667 6.716427752933756, -2.394141003279681 6.5778483455013586 C-2.774884796001595 6.439268938068961, -3.149104622578983 6.26476736710249, -3.4999999999999982 6.062177826491071 C-3.8508953774210135 5.859588285879653, -4.189128084166966 5.6227551949470636, -4.499513267805773 5.362311101832848 C-4.809898451444581 5.101867008718632, -5.101867008718628 4.809898451444586, -5.3623111018328435 4.499513267805779 C-5.622755194947059 4.189128084166971, -5.859588285879649 3.8508953774210206, -6.062177826491068 3.5000000000000053 C-6.264767367102486 3.14910462257899, -6.439268938068958 2.774884796001602, -6.577848345501356 2.394141003279688 C-6.716427752933754 2.0133972105577738, -6.823295662002347 1.614560744215134, -6.893654271085454 1.215537243668521 C-6.9640128801685615 0.816513743121908, -6.999999999999999 0.4051790812228472, -7 1.0183126166254463e-14 C-7.000000000000001 -0.40517908122282686, -6.964012880168565 -0.8165137431218878, -6.893654271085459 -1.215537243668501 C-6.823295662002352 -1.6145607442151142, -6.716427752933759 -2.0133972105577542, -6.577848345501363 -2.394141003279669 C-6.439268938068967 -2.7748847960015834, -6.264767367102496 -3.149104622578972, -6.062177826491078 -3.4999999999999876 C-5.859588285879661 -3.8508953774210033, -5.6227551949470715 -4.1891280841669545, -5.362311101832856 -4.499513267805763 C-5.10186700871864 -4.809898451444571, -4.809898451444594 -5.10186700871862, -4.499513267805787 -5.362311101832836 C-4.189128084166979 -5.622755194947053, -3.850895377421028 -5.859588285879643, -3.5000000000000133 -6.062177826491062 C-3.1491046225789985 -6.264767367102482, -2.774884796001611 -6.439268938068954, -2.3941410032796973 -6.577848345501353 C-2.0133972105577835 -6.716427752933752, -1.6145607442151435 -6.823295662002345, -1.2155372436685306 -6.893654271085453 C-0.8165137431219176 -6.9640128801685615, -0.40517908122285695 -6.999999999999999, -1.9937625952807352e-14 -7 C0.4051790812228171 -7.000000000000001, 0.8165137431218781 -6.964012880168565, 1.2155372436684913 -6.89365427108546 C1.6145607442151044 -6.823295662002354, 2.013397210557745 -6.716427752933763, 2.3941410032796595 -6.5778483455013665 C2.774884796001574 -6.43926893806897, 3.149104622578963 -6.2647673671025, 3.499999999999979 -6.062177826491083 C3.8508953774209953 -5.859588285879665, 4.189128084166947 -5.622755194947077, 4.499513267805756 -5.362311101832862 C4.809898451444564 -5.1018670087186475, 5.101867008718613 -4.809898451444602, 5.362311101832829 -4.499513267805796 C5.622755194947046 -4.189128084166989, 5.859588285879637 -3.8508953774210393, 6.062177826491056 -3.500000000000025 C6.2647673671024755 -3.1491046225790105, 6.439268938068949 -2.774884796001623, 6.577848345501348 -2.3941410032797092 C6.716427752933747 -2.0133972105577955, 6.823295662002342 -1.6145607442151562, 6.893654271085451 -1.2155372436685434 C6.96401288016856 -0.8165137431219307, 6.982275711847575 -0.2025895406114567, 7 -3.2800750208310675e-14 C7.017724288152425 0.2025895406113911, 7.017724288152424 -0.2025895406114242, 7 0\" stroke=\"none\" stroke-width=\"0\" fill=\"#1f2020\" style=\"\"></path><path d=\"M7 0 C7 0.40517908122283747, 6.964012880168563 0.816513743121899, 6.893654271085456 1.2155372436685123 C6.823295662002349 1.6145607442151257, 6.716427752933756 2.013397210557766, 6.5778483455013586 2.394141003279681 C6.439268938068961 2.7748847960015954, 6.26476736710249 3.149104622578984, 6.062177826491071 3.4999999999999996 C5.859588285879653 3.8508953774210153, 5.622755194947063 4.189128084166967, 5.362311101832846 4.499513267805774 C5.10186700871863 4.809898451444582, 4.809898451444583 5.10186700871863, 4.499513267805775 5.362311101832846 C4.189128084166968 5.622755194947063, 3.8508953774210166 5.859588285879652, 3.500000000000001 6.06217782649107 C3.149104622578985 6.264767367102489, 2.7748847960015963 6.439268938068961, 2.3941410032796817 6.5778483455013586 C2.013397210557767 6.716427752933756, 1.6145607442151264 6.823295662002349, 1.2155372436685128 6.893654271085456 C0.8165137431218992 6.964012880168563, 0.4051790812228379 7, 4.286263797015736e-16 7 C-0.405179081222837 7, -0.8165137431218985 6.964012880168563, -1.2155372436685121 6.893654271085456 C-1.6145607442151257 6.823295662002349, -2.0133972105577667 6.716427752933756, -2.394141003279681 6.5778483455013586 C-2.774884796001595 6.439268938068961, -3.149104622578983 6.26476736710249, -3.4999999999999982 6.062177826491071 C-3.8508953774210135 5.859588285879653, -4.189128084166966 5.6227551949470636, -4.499513267805773 5.362311101832848 C-4.809898451444581 5.101867008718632, -5.101867008718628 4.809898451444586, -5.3623111018328435 4.499513267805779 C-5.622755194947059 4.189128084166971, -5.859588285879649 3.8508953774210206, -6.062177826491068 3.5000000000000053 C-6.264767367102486 3.14910462257899, -6.439268938068958 2.774884796001602, -6.577848345501356 2.394141003279688 C-6.716427752933754 2.0133972105577738, -6.823295662002347 1.614560744215134, -6.893654271085454 1.215537243668521 C-6.9640128801685615 0.816513743121908, -6.999999999999999 0.4051790812228472, -7 1.0183126166254463e-14 C-7.000000000000001 -0.40517908122282686, -6.964012880168565 -0.8165137431218878, -6.893654271085459 -1.215537243668501 C-6.823295662002352 -1.6145607442151142, -6.716427752933759 -2.0133972105577542, -6.577848345501363 -2.394141003279669 C-6.439268938068967 -2.7748847960015834, -6.264767367102496 -3.149104622578972, -6.062177826491078 -3.4999999999999876 C-5.859588285879661 -3.8508953774210033, -5.6227551949470715 -4.1891280841669545, -5.362311101832856 -4.499513267805763 C-5.10186700871864 -4.809898451444571, -4.809898451444594 -5.10186700871862, -4.499513267805787 -5.362311101832836 C-4.189128084166979 -5.622755194947053, -3.850895377421028 -5.859588285879643, -3.5000000000000133 -6.062177826491062 C-3.1491046225789985 -6.264767367102482, -2.774884796001611 -6.439268938068954, -2.3941410032796973 -6.577848345501353 C-2.0133972105577835 -6.716427752933752, -1.6145607442151435 -6.823295662002345, -1.2155372436685306 -6.893654271085453 C-0.8165137431219176 -6.9640128801685615, -0.40517908122285695 -6.999999999999999, -1.9937625952807352e-14 -7 C0.4051790812228171 -7.000000000000001, 0.8165137431218781 -6.964012880168565, 1.2155372436684913 -6.89365427108546 C1.6145607442151044 -6.823295662002354, 2.013397210557745 -6.716427752933763, 2.3941410032796595 -6.5778483455013665 C2.774884796001574 -6.43926893806897, 3.149104622578963 -6.2647673671025, 3.499999999999979 -6.062177826491083 C3.8508953774209953 -5.859588285879665, 4.189128084166947 -5.622755194947077, 4.499513267805756 -5.362311101832862 C4.809898451444564 -5.1018670087186475, 5.101867008718613 -4.809898451444602, 5.362311101832829 -4.499513267805796 C5.622755194947046 -4.189128084166989, 5.859588285879637 -3.8508953774210393, 6.062177826491056 -3.500000000000025 C6.2647673671024755 -3.1491046225790105, 6.439268938068949 -2.774884796001623, 6.577848345501348 -2.3941410032797092 C6.716427752933747 -2.0133972105577955, 6.823295662002342 -1.6145607442151562, 6.893654271085451 -1.2155372436685434 C6.96401288016856 -0.8165137431219307, 6.982275711847575 -0.2025895406114567, 7 -3.2800750208310675e-14 C7.017724288152425 0.2025895406113911, 7.017724288152424 -0.2025895406114242, 7 0\" stroke=\"lightgrey\" stroke-width=\"2\" fill=\"none\" stroke-dasharray=\"0 0\" style=\"\"></path><g><path d=\"M2.5 0 C2.5 0.14470681472244193, 2.487147457203058 0.29161205111496386, 2.46201938253052 0.4341204441673258 C2.436891307857982 0.5766288372196877, 2.3987241974763416 0.7190704323420595, 2.3492315519647713 0.8550503583141718 C2.299738906453201 0.991030284286284, 2.2374169168223177 1.124680222349637, 2.165063509461097 1.2499999999999998 C2.092710102099876 1.3753197776503625, 2.0081268553382365 1.496117172916774, 1.915111107797445 1.6069690242163481 C1.8220953602566536 1.7178208755159223, 1.7178208755159226 1.8220953602566536, 1.6069690242163484 1.915111107797445 C1.4961171729167742 2.0081268553382365, 1.375319777650363 2.0927101020998755, 1.2500000000000002 2.1650635094610964 C1.1246802223496375 2.2374169168223172, 0.9910302842862845 2.2997389064532, 0.8550503583141721 2.349231551964771 C0.7190704323420597 2.3987241974763416, 0.576628837219688 2.436891307857982, 0.43412044416732604 2.46201938253052 C0.291612051114964 2.487147457203058, 0.14470681472244212 2.5, 1.5308084989341916e-16 2.5 C-0.1447068147224418 2.5, -0.2916120511149638 2.487147457203058, -0.43412044416732576 2.46201938253052 C-0.5766288372196877 2.436891307857982, -0.7190704323420595 2.3987241974763416, -0.8550503583141718 2.3492315519647713 C-0.991030284286284 2.299738906453201, -1.124680222349637 2.2374169168223177, -1.2499999999999996 2.165063509461097 C-1.375319777650362 2.092710102099876, -1.4961171729167733 2.008126855338237, -1.6069690242163475 1.9151111077974459 C-1.7178208755159217 1.8220953602566548, -1.822095360256653 1.7178208755159234, -1.9151111077974443 1.6069690242163495 C-2.0081268553382357 1.4961171729167755, -2.0927101020998746 1.3753197776503645, -2.1650635094610955 1.250000000000002 C-2.2374169168223164 1.1246802223496395, -2.2997389064531992 0.9910302842862865, -2.34923155196477 0.8550503583141743 C-2.3987241974763407 0.7190704323420621, -2.436891307857981 0.5766288372196907, -2.4620193825305194 0.434120444167329 C-2.487147457203058 0.29161205111496724, -2.5 0.14470681472244545, -2.5 3.636830773662308e-15 C-2.5 -0.14470681472243818, -2.4871474572030587 -0.2916120511149599, -2.4620193825305208 -0.4341204441673218 C-2.436891307857983 -0.5766288372196837, -2.398724197476343 -0.7190704323420553, -2.3492315519647726 -0.8550503583141675 C-2.2997389064532023 -0.9910302842862798, -2.23741691682232 -1.1246802223496328, -2.165063509461099 -1.2499999999999956 C-2.092710102099878 -1.3753197776503583, -2.00812685533824 -1.4961171729167695, -1.9151111077974488 -1.606969024216344 C-1.8220953602566576 -1.7178208755159183, -1.7178208755159263 -1.82209536025665, -1.6069690242163523 -1.9151111077974416 C-1.4961171729167784 -2.0081268553382334, -1.3753197776503672 -2.0927101020998724, -1.2500000000000047 -2.1650635094610937 C-1.1246802223496422 -2.237416916822315, -0.9910302842862897 -2.299738906453198, -0.8550503583141776 -2.3492315519647686 C-0.7190704323420656 -2.3987241974763394, -0.5766288372196942 -2.4368913078579806, -0.43412044416733236 -2.462019382530519 C-0.29161205111497057 -2.4871474572030574, -0.1447068147224489 -2.4999999999999996, -7.120580697431198e-15 -2.5 C0.14470681472243463 -2.5000000000000004, 0.29161205111495647 -2.487147457203059, 0.4341204441673183 -2.4620193825305217 C0.5766288372196802 -2.436891307857984, 0.7190704323420518 -2.3987241974763442, 0.8550503583141642 -2.349231551964774 C0.9910302842862766 -2.2997389064532037, 1.1246802223496295 -2.2374169168223212, 1.2499999999999925 -2.165063509461101 C1.3753197776503554 -2.0927101020998804, 1.4961171729167668 -2.008126855338242, 1.6069690242163412 -1.915111107797451 C1.7178208755159157 -1.82209536025666, 1.8220953602566472 -1.7178208755159294, 1.915111107797439 -1.6069690242163557 C2.0081268553382308 -1.496117172916782, 2.09271010209987 -1.3753197776503712, 2.1650635094610915 -1.2500000000000089 C2.237416916822313 -1.1246802223496466, 2.299738906453196 -0.9910302842862939, 2.3492315519647673 -0.855050358314182 C2.3987241974763385 -0.71907043234207, 2.4368913078579792 -0.5766288372196986, 2.462019382530518 -0.4341204441673369 C2.487147457203057 -0.29161205111497523, 2.4936698970884197 -0.07235340736123454, 2.5 -1.1714553645825241e-14 C2.5063301029115803 0.07235340736121111, 2.50633010291158 -0.07235340736122292, 2.5 0\" stroke=\"none\" stroke-width=\"0\" fill=\"#ccc\" style=\"\"></path><path d=\"M2.5 0 C2.5 0.14470681472244193, 2.487147457203058 0.29161205111496386, 2.46201938253052 0.4341204441673258 C2.436891307857982 0.5766288372196877, 2.3987241974763416 0.7190704323420595, 2.3492315519647713 0.8550503583141718 C2.299738906453201 0.991030284286284, 2.2374169168223177 1.124680222349637, 2.165063509461097 1.2499999999999998 C2.092710102099876 1.3753197776503625, 2.0081268553382365 1.496117172916774, 1.915111107797445 1.6069690242163481 C1.8220953602566536 1.7178208755159223, 1.7178208755159226 1.8220953602566536, 1.6069690242163484 1.915111107797445 C1.4961171729167742 2.0081268553382365, 1.375319777650363 2.0927101020998755, 1.2500000000000002 2.1650635094610964 C1.1246802223496375 2.2374169168223172, 0.9910302842862845 2.2997389064532, 0.8550503583141721 2.349231551964771 C0.7190704323420597 2.3987241974763416, 0.576628837219688 2.436891307857982, 0.43412044416732604 2.46201938253052 C0.291612051114964 2.487147457203058, 0.14470681472244212 2.5, 1.5308084989341916e-16 2.5 C-0.1447068147224418 2.5, -0.2916120511149638 2.487147457203058, -0.43412044416732576 2.46201938253052 C-0.5766288372196877 2.436891307857982, -0.7190704323420595 2.3987241974763416, -0.8550503583141718 2.3492315519647713 C-0.991030284286284 2.299738906453201, -1.124680222349637 2.2374169168223177, -1.2499999999999996 2.165063509461097 C-1.375319777650362 2.092710102099876, -1.4961171729167733 2.008126855338237, -1.6069690242163475 1.9151111077974459 C-1.7178208755159217 1.8220953602566548, -1.822095360256653 1.7178208755159234, -1.9151111077974443 1.6069690242163495 C-2.0081268553382357 1.4961171729167755, -2.0927101020998746 1.3753197776503645, -2.1650635094610955 1.250000000000002 C-2.2374169168223164 1.1246802223496395, -2.2997389064531992 0.9910302842862865, -2.34923155196477 0.8550503583141743 C-2.3987241974763407 0.7190704323420621, -2.436891307857981 0.5766288372196907, -2.4620193825305194 0.434120444167329 C-2.487147457203058 0.29161205111496724, -2.5 0.14470681472244545, -2.5 3.636830773662308e-15 C-2.5 -0.14470681472243818, -2.4871474572030587 -0.2916120511149599, -2.4620193825305208 -0.4341204441673218 C-2.436891307857983 -0.5766288372196837, -2.398724197476343 -0.7190704323420553, -2.3492315519647726 -0.8550503583141675 C-2.2997389064532023 -0.9910302842862798, -2.23741691682232 -1.1246802223496328, -2.165063509461099 -1.2499999999999956 C-2.092710102099878 -1.3753197776503583, -2.00812685533824 -1.4961171729167695, -1.9151111077974488 -1.606969024216344 C-1.8220953602566576 -1.7178208755159183, -1.7178208755159263 -1.82209536025665, -1.6069690242163523 -1.9151111077974416 C-1.4961171729167784 -2.0081268553382334, -1.3753197776503672 -2.0927101020998724, -1.2500000000000047 -2.1650635094610937 C-1.1246802223496422 -2.237416916822315, -0.9910302842862897 -2.299738906453198, -0.8550503583141776 -2.3492315519647686 C-0.7190704323420656 -2.3987241974763394, -0.5766288372196942 -2.4368913078579806, -0.43412044416733236 -2.462019382530519 C-0.29161205111497057 -2.4871474572030574, -0.1447068147224489 -2.4999999999999996, -7.120580697431198e-15 -2.5 C0.14470681472243463 -2.5000000000000004, 0.29161205111495647 -2.487147457203059, 0.4341204441673183 -2.4620193825305217 C0.5766288372196802 -2.436891307857984, 0.7190704323420518 -2.3987241974763442, 0.8550503583141642 -2.349231551964774 C0.9910302842862766 -2.2997389064532037, 1.1246802223496295 -2.2374169168223212, 1.2499999999999925 -2.165063509461101 C1.3753197776503554 -2.0927101020998804, 1.4961171729167668 -2.008126855338242, 1.6069690242163412 -1.915111107797451 C1.7178208755159157 -1.82209536025666, 1.8220953602566472 -1.7178208755159294, 1.915111107797439 -1.6069690242163557 C2.0081268553382308 -1.496117172916782, 2.09271010209987 -1.3753197776503712, 2.1650635094610915 -1.2500000000000089 C2.237416916822313 -1.1246802223496466, 2.299738906453196 -0.9910302842862939, 2.3492315519647673 -0.855050358314182 C2.3987241974763385 -0.71907043234207, 2.4368913078579792 -0.5766288372196986, 2.462019382530518 -0.4341204441673369 C2.487147457203057 -0.29161205111497523, 2.4936698970884197 -0.07235340736123454, 2.5 -1.1714553645825241e-14 C2.5063301029115803 0.07235340736121111, 2.50633010291158 -0.07235340736122292, 2.5 0\" stroke=\"#ccc\" stroke-width=\"2\" fill=\"none\" stroke-dasharray=\"0 0\" style=\"\"></path></g></g></g></g></g></g><defs><filter id=\"diagram-85161272b882e468039bab95ca05b556bca0dfb6459d4d72b2358dcad5a9c826-drop-shadow\" height=\"130%\" width=\"130%\"><feDropShadow dx=\"4\" dy=\"4\" stdDeviation=\"0\" flood-opacity=\"0.06\" flood-color=\"#FFFFFF\"></feDropShadow></filter></defs><defs><filter id=\"diagram-85161272b882e468039bab95ca05b556bca0dfb6459d4d72b2358dcad5a9c826-drop-shadow-small\" height=\"150%\" width=\"150%\"><feDropShadow dx=\"2\" dy=\"2\" stdDeviation=\"0\" flood-opacity=\"0.06\" flood-color=\"#FFFFFF\"></feDropShadow></filter></defs><linearGradient id=\"diagram-85161272b882e468039bab95ca05b556bca0dfb6459d4d72b2358dcad5a9c826-gradient\" gradientUnits=\"objectBoundingBox\" x1=\"0%\" y1=\"0%\" x2=\"100%\" y2=\"0%\"><stop offset=\"0%\" stop-color=\"#cccccc\" stop-opacity=\"1\"></stop><stop offset=\"100%\" stop-color=\"hsl(180, 0%, 18.3529411765%)\" stop-opacity=\"1\"></stop></linearGradient></svg>"},"children":["stateDiagram-v2\n    [*] --> InProgress: generate fired (status null)\n    InProgress --> Created: file built, awaiting SFTP upload\n    InProgress --> Succeeded: file built, upload skipped (uploadFile=false)\n    Created --> Succeeded: uploaded to SFTP\n    InProgress --> Failed: see failureDescription\n    Created --> Failed: upload failed\n    Succeeded --> [*]\n    Failed --> [*]\n"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["When ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["status"]}," is ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["succeeded"]},", confirm:"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["tapeFileName"]}," is populated and matches the file delivered to the SFTP destination."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["The record's ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["investorId"]}," matches the investor you scoped the tape to."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["The file contains only loans associated with that investor. A loan that should appear but is missing almost always lacks an active ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["LoanInvestorAssociation"]}," to this investor."]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"system-behavior-after-generation","__idx":12},"children":["System behavior after generation"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Generation runs in a worker."]}," The API call only triggers the job. The worker resolves the loan set, builds the CSV, and uploads it; you observe progress through the records, not the generate response. "]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Loan inclusion is status-scoped."]}," A loan is included when its status is ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["Active"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["Accelerated"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["Frozen"]},", or ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["ChargedOff"]},", or when it is ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["PaidOff"]}," and was paid off within the tape type's ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["reportDaysWhenPaidOff"]}," window. "]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Missing snapshot data is governed by ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["actionOnMissingData"]},"."]}," The effective default is ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["includeIDsAndEmptyData"]},": a loan with no snapshot for the report date is still reported, with only its identifier columns populated and ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["dataStatus"]}," set to ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["missingData"]},". With ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["excludeFromTape"]},", such loans are dropped from the file entirely. "]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Line-of-credit draws"]}," can be reported as separate rows when the tape type sets ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["shouldReportDrawsSeparately"]},"; otherwise an LOC is reported on an aggregated level. "]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"known-limitations","__idx":13},"children":["Known limitations"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["The investor filter depends on the association being present and not soft-deleted."]}," ",{"$$mdtype":"Tag","name":"em","attributes":{},"children":["Known limitation."]}," The worker joins loans to the investor through ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["LoanInvestorAssociation"]}," and excludes associations with a ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["deleted_at"]}," value. A loan removed from the investor, or never associated, silently does not appear — the tape does not warn you. "]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Generation is asynchronous."]}," ",{"$$mdtype":"Tag","name":"em","attributes":{},"children":["By design."]}," The generate call returns ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["operationId"]},"s, not a file. Treat the records ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["status"]}," as the source of truth for completion. "]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["One tape filters to one investor."]}," ",{"$$mdtype":"Tag","name":"em","attributes":{},"children":["By design."]}," ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["investorId"]}," is a single, nullable value on the tape. To deliver to several investors, create one tape per investor; leave ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["investorId"]}," blank only when you want every company loan on one file. "]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["excludeFromTape"]}," shifts validation onto you."]}," ",{"$$mdtype":"Tag","name":"em","attributes":{},"children":["By design."]}," When a tape type uses ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["excludeFromTape"]},", loans with missing data are dropped without notice, so you are responsible for reconciling the loan count against your own records. "]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Membership-fee columns are gated."]}," ",{"$$mdtype":"Tag","name":"em","attributes":{},"children":["On the roadmap."]}," The ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["*MembershipFeesAmount"]}," tape fields populate only when the membership-fee feature is enabled. "]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"if-it-fails","__idx":14},"children":["If it fails"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["status"]}," is ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["failed"]},"."]}," Read ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["failureDescription"]}," on the record. A common cause is an SFTP problem — an unreachable host, a rejected credential, or a missing target directory. Correct the tape's SFTP settings (or the destination), then regenerate. "]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["The tape is empty or missing expected loans."]}," The loans most likely have no active ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["LoanInvestorAssociation"]}," to this investor, or they fall outside the included statuses, or they have no snapshot for the report date and the tape type uses ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["excludeFromTape"]},". Verify the associations first, then the loan statuses, then the snapshots. "]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["A record already exists for that tape and date."]}," Re-running generate without ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["forceReplace"]}," will not overwrite an existing record. Set ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["forceReplace: true"]}," to create a fresh record for the same date. "]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Generation never reaches a terminal state."]}," A ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["status"]}," that stays ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["null"]}," for an extended period points to a stalled worker job; use the ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["operationId"]}," from the generate response when contacting Peach support."]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"troubleshooting","__idx":15},"children":["Troubleshooting"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Why does the tape include fewer loans than I expect?"]}," ","A loan appears only if it has an active association to the tape's investor ",{"$$mdtype":"Tag","name":"em","attributes":{},"children":["and"]}," falls within the included statuses ",{"$$mdtype":"Tag","name":"em","attributes":{},"children":["and"]}," (under ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["excludeFromTape"]},") has a snapshot for the report date. Check those three conditions in that order. "]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["I generated the tape but no file arrived at the SFTP destination."]}," ","Check the record ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["status"]},". If it is ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["created"]},", the file was built but the upload has not completed or failed; if it is ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["failed"]},", read ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["failureDescription"]},". Confirm you generated with ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["uploadFile: true"]}," — ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["false"]}," builds the record without delivering a file. "]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Can I change which investor a tape reports?"]}," ","The ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["investorId"]}," is part of the tape's configuration. Update the tape, or create a new tape for the other investor. The association data itself is changed through ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["PUT /api/people/{personId}/loans/{loanId}/investors"]},". "]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["The amounts look off by a factor of 100."]}," ","Amounts default to ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["subUnit100"]}," (pennies). Set the tape type's ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["moneyUnit"]}," to ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["fullUnit"]}," for decimal dollars. "]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"api-quick-reference","__idx":16},"children":["API quick reference"]},{"$$mdtype":"Tag","name":"div","attributes":{"className":"md-table-wrapper"},"children":[{"$$mdtype":"Tag","name":"table","attributes":{"className":"md"},"children":[{"$$mdtype":"Tag","name":"thead","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"th","attributes":{"align":"left","data-label":"Action"},"children":["Action"]},{"$$mdtype":"Tag","name":"th","attributes":{"align":"left","data-label":"Method"},"children":["Method"]},{"$$mdtype":"Tag","name":"th","attributes":{"align":"left","data-label":"Endpoint"},"children":["Endpoint"]}]}]},{"$$mdtype":"Tag","name":"tbody","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{"align":"left"},"children":["Associate loan with investor"]},{"$$mdtype":"Tag","name":"td","attributes":{"align":"left"},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["PUT"]}]},{"$$mdtype":"Tag","name":"td","attributes":{"align":"left"},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["/api/people/{personId}/loans/{loanId}/investors"]}]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{"align":"left"},"children":["Create loan tape type"]},{"$$mdtype":"Tag","name":"td","attributes":{"align":"left"},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["POST"]}]},{"$$mdtype":"Tag","name":"td","attributes":{"align":"left"},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["/api/companies/{companyId}/loan-tape-types"]}]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{"align":"left"},"children":["List loan tape types"]},{"$$mdtype":"Tag","name":"td","attributes":{"align":"left"},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["GET"]}]},{"$$mdtype":"Tag","name":"td","attributes":{"align":"left"},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["/api/companies/{companyId}/loan-tape-types"]}]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{"align":"left"},"children":["Create loan tape (set ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["investorId"]},")"]},{"$$mdtype":"Tag","name":"td","attributes":{"align":"left"},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["POST"]}]},{"$$mdtype":"Tag","name":"td","attributes":{"align":"left"},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["/api/companies/{companyId}/loan-tapes"]}]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{"align":"left"},"children":["Generate loan tapes"]},{"$$mdtype":"Tag","name":"td","attributes":{"align":"left"},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["POST"]}]},{"$$mdtype":"Tag","name":"td","attributes":{"align":"left"},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["/api/companies/{companyId}/loan-tapes/generate"]}]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{"align":"left"},"children":["List loan tape records"]},{"$$mdtype":"Tag","name":"td","attributes":{"align":"left"},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["GET"]}]},{"$$mdtype":"Tag","name":"td","attributes":{"align":"left"},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["/api/companies/{companyId}/loan-tapes/{loanTapeId}/records"]}]}]}]}]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["For full field contracts, see the ",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/api-docs/api-public/#tag/Loan-Tapes"},"children":["Loan Tapes API"]},", ",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/api-docs/api-public/#tag/Loan-Tape-Types"},"children":["Loan Tape Types API"]},", and ",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/api-docs/api-public/#tag/LoansInvestors"},"children":["Loan investors API"]},"."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"see-also","__idx":17},"children":["See also"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/data-reporting/loan-tape-reference"},"children":["Loan tape field reference"]}," — every loan and payment column a tape can carry."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/data-reporting/snapshot-reference"},"children":["Snapshot field reference"]}," — the daily loan state that tape rows are built from."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/data-reporting/data-delivery-setup"},"children":["Set up data delivery"]}," — SFTP, encryption, and file-naming configuration."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/servicing-operations/admin-portal/admin-portal-loan-tapes"},"children":["Manage loan tapes and loan tape types"]}," — the Admin Portal equivalent of this flow."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/api-docs/api-public/#tag/Loan-Tapes"},"children":["Loan Tapes API"]}," — the canonical endpoint reference."]}]}]},"headings":[{"value":"Generate a loan tape for a single investor","id":"generate-a-loan-tape-for-a-single-investor","depth":1},{"value":"Overview","id":"overview","depth":2},{"value":"Before you begin","id":"before-you-begin","depth":2},{"value":"Prerequisites","id":"prerequisites","depth":3},{"value":"Assumed knowledge","id":"assumed-knowledge","depth":3},{"value":"Key concepts","id":"key-concepts","depth":2},{"value":"The procedure","id":"the-procedure","depth":2},{"value":"Step 1: Create or select the loan tape type","id":"step-1-create-or-select-the-loan-tape-type","depth":3},{"value":"Step 2: Create the investor-filtered loan tape","id":"step-2-create-the-investor-filtered-loan-tape","depth":3},{"value":"Execute","id":"execute","depth":2},{"value":"After completion","id":"after-completion","depth":2},{"value":"Validate","id":"validate","depth":3},{"value":"System behavior after generation","id":"system-behavior-after-generation","depth":3},{"value":"Known limitations","id":"known-limitations","depth":3},{"value":"If it fails","id":"if-it-fails","depth":2},{"value":"Troubleshooting","id":"troubleshooting","depth":2},{"value":"API quick reference","id":"api-quick-reference","depth":2},{"value":"See also","id":"see-also","depth":2}],"frontmatter":{"title":"Generate a loan tape for a single investor","description":"Configure an investor-filtered loan tape, generate it asynchronously, and confirm delivery by polling the loan tape records and their status.","verifiedDate":"2026-06-30T00:00:00.000Z","verifiedRef":"peach@40d305f5","verifiedSpec":"openapi/loantapes.yml","seo":{"title":"Generate a loan tape for a single investor"}},"lastModified":"2026-06-30T18:58:29.000Z","pagePropGetterError":{"message":"","name":""}},"slug":"/data-reporting/loan-tape-by-investor","userData":{"isAuthenticated":false,"teams":["anonymous"]},"isPublic":true}