PhysicsSystemUpdate.svg 103 KB

123
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
  3. <svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" width="1616px" height="570px" viewBox="-0.5 -0.5 1616 570" content="&lt;mxfile host=&quot;app.diagrams.net&quot; modified=&quot;2021-06-13T11:09:39.660Z&quot; agent=&quot;5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.77 Safari/537.36&quot; version=&quot;14.7.7&quot; etag=&quot;OPi3LnJAhzIdlKEe_Koz&quot; type=&quot;device&quot;&gt;&lt;diagram id=&quot;Y8j1GFCJFzZWERzWb-ch&quot; name=&quot;Page-1&quot;&gt;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&lt;/diagram&gt;&lt;/mxfile&gt;" style="background-color: rgb(255, 255, 255);"><defs><linearGradient x1="0%" y1="100%" x2="0%" y2="0%" id="mx-gradient-ffffff-1-d9d9d9-1-s-0"><stop offset="0%" style="stop-color:#d9d9d9"/><stop offset="100%" style="stop-color:#FFFFFF"/></linearGradient><linearGradient x1="0%" y1="100%" x2="0%" y2="0%" id="mx-gradient-ffffff-1-b7b7b7-1-s-0"><stop offset="0%" style="stop-color:#b7b7b7"/><stop offset="100%" style="stop-color:#FFFFFF"/></linearGradient><linearGradient x1="0%" y1="100%" x2="0%" y2="0%" id="mx-gradient-aaffaa-1-00ff00-1-s-0"><stop offset="0%" style="stop-color:#00ff00"/><stop offset="100%" style="stop-color:#AAFFAA"/></linearGradient><linearGradient x1="0%" y1="100%" x2="0%" y2="0%" id="mx-gradient-ffaaaa-1-ff0000-1-s-0"><stop offset="0%" style="stop-color:#ff0000"/><stop offset="100%" style="stop-color:#FFAAAA"/></linearGradient><linearGradient x1="0%" y1="100%" x2="0%" y2="0%" id="mx-gradient-ffffaa-1-ff9900-1-s-0"><stop offset="0%" style="stop-color:#ff9900"/><stop offset="100%" style="stop-color:#FFFFAA"/></linearGradient></defs><g><rect x="0.5" y="90.75" width="1572" height="478" fill="url(#mx-gradient-ffffff-1-d9d9d9-1-s-0)" stroke="#333333" stroke-width="2" pointer-events="all"/><rect x="806.99" y="97.75" width="642.51" height="246.75" fill="url(#mx-gradient-ffffff-1-b7b7b7-1-s-0)" stroke="#333333" stroke-width="2" pointer-events="all"/><rect x="187.86" y="447.39" width="100" height="65.11" fill="#fff2cc" stroke="#333333" stroke-width="2" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 96px; height: 1px; padding-top: 480px; margin-left: 191px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; "><div style="width: 93.0px ; height: auto ; word-break: break-word"><div align="center"><span style="font-size: 12px ; font-family: &quot;arial&quot; ; white-space: pre-wrap ; text-decoration: none ; line-height: 14px ; color: rgb(0 , 0 , 0)">Apply Gravity&#xa;</span></div><div align="center"><span style="font-size: 12px ; font-family: &quot;arial&quot; ; white-space: pre-wrap ; text-decoration: none ; line-height: 14px ; color: rgb(0 , 0 , 0)">(in batches)</span></div></div></div></div></div></foreignObject><text x="239" y="484" fill="#000000" font-family="Helvetica" font-size="12px" text-anchor="middle">Apply Gravity...</text></switch></g><ellipse cx="19.66" cy="403" rx="7.5" ry="7.5" fill="#ffffff" stroke="#333333" stroke-width="2" pointer-events="all"/><path d="M 19.66 395.5 L 19.7 158.9 L 117.76 158.9" fill="none" stroke="#000000" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 125.76 158.9 L 117.76 162.9 L 117.76 154.9 Z" fill="#000000" stroke="#000000" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/><path d="M 160.5 402.8 L 184.44 470.3" fill="none" stroke="#000000" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 187.12 477.84 L 180.67 471.64 L 188.21 468.96 Z" fill="#000000" stroke="#000000" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/><rect x="338.33" y="186.25" width="100" height="62.75" fill="#ffffff" stroke="#333333" stroke-width="2" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 96px; height: 1px; padding-top: 218px; margin-left: 341px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; "><div style="width: 93.0px ; height: auto ; word-break: break-word"><div align="center"><span style="font-size: 12px ; font-family: &quot;arial&quot; ; white-space: pre-wrap ; text-decoration: none ; line-height: 14px ; color: rgb(0 , 0 , 0)">Setup Velocity Constraints</span></div></div></div></div></div></foreignObject><text x="389" y="221" fill="#000000" font-family="Helvetica" font-size="12px" text-anchor="middle">Setup Velocity C...</text></switch></g><rect x="826" y="133.25" width="100" height="75" fill="#ffffff" stroke="#333333" stroke-width="2" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 96px; height: 1px; padding-top: 171px; margin-left: 829px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; "><div style="width: 93.0px ; height: auto ; word-break: break-word"><div align="center"><span style="font-size: 12px ; font-family: &quot;arial&quot; ; white-space: pre-wrap ; text-decoration: none ; line-height: 14px ; color: rgb(0 , 0 , 0)">Integrate &amp; Clamp Velocities</span></div></div></div></div></div></foreignObject><text x="877" y="174" fill="#000000" font-family="Helvetica" font-size="12px" text-anchor="middle">Integrate &amp; Clam...</text></switch></g><rect x="543" y="304.7" width="100" height="65.11" fill="#ffffff" stroke="#333333" stroke-width="2" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 96px; height: 1px; padding-top: 337px; margin-left: 546px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; "><div style="width: 93.0px ; height: auto ; word-break: break-word"><div align="center"><span style="font-size: 12px ; font-family: &quot;arial&quot; ; white-space: pre-wrap ; text-decoration: none ; line-height: 14px ; color: rgb(0 , 0 , 0)">Finalize Islands</span></div></div></div></div></div></foreignObject><text x="594" y="341" fill="#000000" font-family="Helvetica" font-size="12px" text-anchor="middle">Finalize Islands</text></switch></g><path d="M 643 337.25 L 687.3 243.05" fill="none" stroke="#000000" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 690.71 235.81 L 690.92 244.75 L 683.68 241.34 Z" fill="#000000" stroke="#000000" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/><path d="M 228 158.88 L 532.76 158.75" fill="none" stroke="#000000" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 540.76 158.75 L 532.77 162.75 L 532.76 154.75 Z" fill="#000000" stroke="#000000" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/><rect x="1197" y="125.75" width="100" height="92" fill="#fff2cc" stroke="#333333" stroke-width="2" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 96px; height: 1px; padding-top: 172px; margin-left: 1200px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; "><div style="width: 93.0px ; height: auto ; word-break: break-word"><div align="center"><span style="font-size: 12px ; font-family: &quot;arial&quot; ; white-space: pre-wrap ; text-decoration: none ; line-height: 14px ; color: rgb(0 , 0 , 0)">Solve Position Constraints,&#xa;</span></div><div align="center"><span style="font-size: 12px ; font-family: &quot;arial&quot; ; white-space: pre-wrap ; text-decoration: none ; line-height: 14px ; color: rgb(0 , 0 , 0)">Update Bodies Broadphase&#xa;</span></div><div align="center"><span style="font-size: 12px ; font-family: &quot;arial&quot; ; white-space: pre-wrap ; text-decoration: none ; line-height: 14px ; color: rgb(0 , 0 , 0)">(per island)</span></div></div></div></div></div></foreignObject><text x="1248" y="175" fill="#000000" font-family="Helvetica" font-size="12px" text-anchor="middle">Solve Position C...</text></switch></g><ellipse cx="1607" cy="392.25" rx="7.5" ry="7.5" fill="#000000" stroke="#333333" stroke-width="2" pointer-events="all"/><path d="M 288.5 338 L 333.87 456.87" fill="none" stroke="#000000" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 336.73 464.34 L 330.14 458.3 L 337.61 455.44 Z" fill="#000000" stroke="#000000" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/><path d="M 438.33 217.63 L 681.42 218.22" fill="none" stroke="#000000" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 689.42 218.24 L 681.41 222.22 L 681.43 214.22 Z" fill="#000000" stroke="#000000" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/><path d="M 791.66 218.25 L 818.51 193.26" fill="none" stroke="#000000" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 824.36 187.81 L 821.23 196.19 L 815.78 190.33 Z" fill="#000000" stroke="#000000" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/><path d="M 926 170.75 L 938.76 170.75" fill="none" stroke="#000000" stroke-width="2" stroke-miterlimit="10" stroke-dasharray="2 2" pointer-events="stroke"/><path d="M 946.76 170.75 L 938.76 174.75 L 938.76 166.75 Z" fill="#000000" stroke="#000000" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/><path d="M 1297 171.75 L 1319.76 171.75" fill="none" stroke="#000000" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 1327.76 171.75 L 1319.76 175.75 L 1319.76 167.75 Z" fill="#000000" stroke="#000000" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/><path d="M 160.5 402.8 L 184.44 347.4" fill="none" stroke="#000000" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 187.61 340.05 L 188.11 348.98 L 180.77 345.81 Z" fill="#000000" stroke="#000000" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/><path d="M 437.52 338 L 532.76 337.32" fill="none" stroke="#000000" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 540.76 337.27 L 532.79 341.32 L 532.74 333.32 Z" fill="#000000" stroke="#000000" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/><rect x="691.66" y="425.61" width="151" height="65.11" fill="#ffffff" stroke="#333333" stroke-width="2" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 146px; height: 1px; padding-top: 458px; margin-left: 696px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; "><div style="width: 141.96px ; height: auto ; word-break: break-word"><div align="center"><span style="font-size: 12px ; font-family: &quot;arial&quot; ; white-space: pre-wrap ; text-decoration: none ; line-height: 14px ; color: rgb(0 , 0 , 0)">Set Body Island Idx</span></div></div></div></div></div></foreignObject><text x="769" y="462" fill="#000000" font-family="Helvetica" font-size="12px" text-anchor="middle">Set Body Island Idx</text></switch></g><path d="M 643 337.25 L 687.84 448.66" fill="none" stroke="#000000" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 690.83 456.08 L 684.13 450.16 L 691.55 447.17 Z" fill="#000000" stroke="#000000" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/><path d="M 842.66 458.2 L 1460.2 458.2 L 1460.2 392.5 L 1471.76 392.5" fill="none" stroke="#000000" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 1479.76 392.5 L 1471.76 396.5 L 1471.76 388.5 Z" fill="#000000" stroke="#000000" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/><path d="M 1077 278.5 L 876 278.5 L 876 218.49" fill="none" stroke="#000000" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 876 210.49 L 880 218.49 L 872 218.49 Z" fill="#000000" stroke="#000000" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/><path d="M 1363.94 171.8 L 1460.5 171.8 L 1460.5 392.5 L 1471.76 392.5" fill="none" stroke="#000000" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 1479.76 392.5 L 1471.76 396.5 L 1471.76 388.5 Z" fill="#000000" stroke="#000000" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/><rect x="806.99" y="97.75" width="200" height="14" fill="none" stroke="none" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe flex-start; width: 198px; height: 1px; padding-top: 105px; margin-left: 809px;"><div style="box-sizing: border-box; font-size: 0; text-align: left; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; "><div style="width: 197.0px ; height: auto ; word-break: break-word"><div align="left"><span style="font-size: 12px ; font-family: &quot;arial&quot; ; white-space: pre-wrap ; text-decoration: none ; line-height: 14px ; color: rgb(0 , 0 , 0)">Repeat IntegrationSubSteps Times</span></div></div></div></div></div></foreignObject><text x="809" y="108" fill="#000000" font-family="Helvetica" font-size="12px">Repeat IntegrationSubSteps Times</text></switch></g><rect x="1.5" y="1" width="17" height="17" fill="url(#mx-gradient-aaffaa-1-00ff00-1-s-0)" stroke="#333333" stroke-width="2" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 15px; height: 1px; padding-top: 10px; margin-left: 3px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; "><div style="width: 13.32px ; height: auto ; word-break: break-word"><div align="center"><span style="font-size: 12px ; font-family: &quot;arial&quot; ; white-space: pre-wrap ; text-decoration: none ; line-height: 14px ; color: rgb(0 , 0 , 0)">P</span></div></div></div></div></div></foreignObject><text x="10" y="13" fill="#000000" font-family="Helvetica" font-size="12px" text-anchor="middle">P</text></switch></g><rect x="1.5" y="35" width="17" height="17" fill="url(#mx-gradient-aaffaa-1-00ff00-1-s-0)" stroke="#333333" stroke-width="2" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 15px; height: 1px; padding-top: 44px; margin-left: 3px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; "><div style="width: 13.32px ; height: auto ; word-break: break-word"><div align="center"><span style="font-size: 12px ; font-family: &quot;arial&quot; ; white-space: pre-wrap ; text-decoration: none ; line-height: 14px ; color: rgb(0 , 0 , 0)">V</span></div></div></div></div></div></foreignObject><text x="10" y="47" fill="#000000" font-family="Helvetica" font-size="12px" text-anchor="middle">V</text></switch></g><rect x="1.5" y="18" width="17" height="17" fill="url(#mx-gradient-ffaaaa-1-ff0000-1-s-0)" stroke="#333333" stroke-width="2" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 15px; height: 1px; padding-top: 27px; margin-left: 3px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; "><div style="width: 13.32px ; height: auto ; word-break: break-word"><div align="center"><span style="font-size: 12px ; font-family: &quot;arial&quot; ; white-space: pre-wrap ; text-decoration: none ; line-height: 14px ; color: rgb(0 , 0 , 0)">P</span></div></div></div></div></div></foreignObject><text x="10" y="30" fill="#000000" font-family="Helvetica" font-size="12px" text-anchor="middle">P</text></switch></g><rect x="1.5" y="52" width="17" height="17" fill="url(#mx-gradient-ffaaaa-1-ff0000-1-s-0)" stroke="#333333" stroke-width="2" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 15px; height: 1px; padding-top: 61px; margin-left: 3px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; "><div style="width: 13.32px ; height: auto ; word-break: break-word"><div align="center"><span style="font-size: 12px ; font-family: &quot;arial&quot; ; white-space: pre-wrap ; text-decoration: none ; line-height: 14px ; color: rgb(0 , 0 , 0)">V</span></div></div></div></div></div></foreignObject><text x="10" y="64" fill="#000000" font-family="Helvetica" font-size="12px" text-anchor="middle">V</text></switch></g><rect x="24.16" y="3" width="150" height="14" fill="none" stroke="none" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe flex-start; width: 148px; height: 1px; padding-top: 10px; margin-left: 26px;"><div style="box-sizing: border-box; font-size: 0; text-align: left; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; "><div style="width: 147.0px ; height: auto ; word-break: break-word"><div align="left"><span style="font-size: 12px ; font-family: &quot;arial&quot; ; white-space: pre-wrap ; text-decoration: none ; line-height: 14px ; color: rgb(0 , 0 , 0)">Read position</span></div></div></div></div></div></foreignObject><text x="26" y="14" fill="#000000" font-family="Helvetica" font-size="12px">Read position</text></switch></g><rect x="24.16" y="19.5" width="150" height="14" fill="none" stroke="none" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe flex-start; width: 148px; height: 1px; padding-top: 27px; margin-left: 26px;"><div style="box-sizing: border-box; font-size: 0; text-align: left; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; "><div style="width: 147.0px ; height: auto ; word-break: break-word"><div align="left"><span style="font-size: 12px ; font-family: &quot;arial&quot; ; white-space: pre-wrap ; text-decoration: none ; line-height: 14px ; color: rgb(0 , 0 , 0)">Read/write position</span></div></div></div></div></div></foreignObject><text x="26" y="30" fill="#000000" font-family="Helvetica" font-size="12px">Read/write position</text></switch></g><rect x="22.16" y="36.5" width="150" height="14" fill="none" stroke="none" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe flex-start; width: 148px; height: 1px; padding-top: 44px; margin-left: 24px;"><div style="box-sizing: border-box; font-size: 0; text-align: left; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; "><div style="width: 147.0px ; height: auto ; word-break: break-word"><div align="left"><span style="font-size: 12px ; font-family: &quot;arial&quot; ; white-space: pre-wrap ; text-decoration: none ; line-height: 14px ; color: rgb(0 , 0 , 0)">Read velocity</span></div></div></div></div></div></foreignObject><text x="24" y="47" fill="#000000" font-family="Helvetica" font-size="12px">Read velocity</text></switch></g><rect x="22.16" y="52" width="150" height="14" fill="none" stroke="none" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe flex-start; width: 148px; height: 1px; padding-top: 59px; margin-left: 24px;"><div style="box-sizing: border-box; font-size: 0; text-align: left; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; "><div style="width: 147.0px ; height: auto ; word-break: break-word"><div align="left"><span style="font-size: 12px ; font-family: &quot;arial&quot; ; white-space: pre-wrap ; text-decoration: none ; line-height: 14px ; color: rgb(0 , 0 , 0)">Read/write velocity</span></div></div></div></div></div></foreignObject><text x="24" y="63" fill="#000000" font-family="Helvetica" font-size="12px">Read/write velocity</text></switch></g><rect x="338.33" y="249.5" width="17" height="17" fill="url(#mx-gradient-aaffaa-1-00ff00-1-s-0)" stroke="#333333" stroke-width="2" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 15px; height: 1px; padding-top: 258px; margin-left: 339px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; "><div style="width: 13.32px ; height: auto ; word-break: break-word"><div align="center"><span style="font-size: 12px ; font-family: &quot;arial&quot; ; white-space: pre-wrap ; text-decoration: none ; line-height: 14px ; color: rgb(0 , 0 , 0)">P</span></div></div></div></div></div></foreignObject><text x="347" y="262" fill="#000000" font-family="Helvetica" font-size="12px" text-anchor="middle">P</text></switch></g><rect x="206.52" y="512.5" width="17" height="17" fill="url(#mx-gradient-ffaaaa-1-ff0000-1-s-0)" stroke="#333333" stroke-width="2" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 15px; height: 1px; padding-top: 521px; margin-left: 208px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; "><div style="width: 13.32px ; height: auto ; word-break: break-word"><div align="center"><span style="font-size: 12px ; font-family: &quot;arial&quot; ; white-space: pre-wrap ; text-decoration: none ; line-height: 14px ; color: rgb(0 , 0 , 0)">V</span></div></div></div></div></div></foreignObject><text x="215" y="525" fill="#000000" font-family="Helvetica" font-size="12px" text-anchor="middle">V</text></switch></g><rect x="187.86" y="512.5" width="17" height="17" fill="url(#mx-gradient-aaffaa-1-00ff00-1-s-0)" stroke="#333333" stroke-width="2" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 15px; height: 1px; padding-top: 521px; margin-left: 189px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; "><div style="width: 13.32px ; height: auto ; word-break: break-word"><div align="center"><span style="font-size: 12px ; font-family: &quot;arial&quot; ; white-space: pre-wrap ; text-decoration: none ; line-height: 14px ; color: rgb(0 , 0 , 0)">P</span></div></div></div></div></div></foreignObject><text x="196" y="525" fill="#000000" font-family="Helvetica" font-size="12px" text-anchor="middle">P</text></switch></g><rect x="844.66" y="208.25" width="17" height="17" fill="url(#mx-gradient-ffaaaa-1-ff0000-1-s-0)" stroke="#333333" stroke-width="2" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 15px; height: 1px; padding-top: 217px; margin-left: 846px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; "><div style="width: 13.32px ; height: auto ; word-break: break-word"><div align="center"><span style="font-size: 12px ; font-family: &quot;arial&quot; ; white-space: pre-wrap ; text-decoration: none ; line-height: 14px ; color: rgb(0 , 0 , 0)">V</span></div></div></div></div></div></foreignObject><text x="853" y="220" fill="#000000" font-family="Helvetica" font-size="12px" text-anchor="middle">V</text></switch></g><rect x="826" y="208.25" width="17" height="17" fill="url(#mx-gradient-ffaaaa-1-ff0000-1-s-0)" stroke="#333333" stroke-width="2" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 15px; height: 1px; padding-top: 217px; margin-left: 827px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; "><div style="width: 13.32px ; height: auto ; word-break: break-word"><div align="center"><span style="font-size: 12px ; font-family: &quot;arial&quot; ; white-space: pre-wrap ; text-decoration: none ; line-height: 14px ; color: rgb(0 , 0 , 0)">P</span></div></div></div></div></div></foreignObject><text x="835" y="220" fill="#000000" font-family="Helvetica" font-size="12px" text-anchor="middle">P</text></switch></g><rect x="1197" y="217.75" width="17" height="17" fill="url(#mx-gradient-ffaaaa-1-ff0000-1-s-0)" stroke="#333333" stroke-width="2" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 15px; height: 1px; padding-top: 226px; margin-left: 1198px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; "><div style="width: 13.32px ; height: auto ; word-break: break-word"><div align="center"><span style="font-size: 12px ; font-family: &quot;arial&quot; ; white-space: pre-wrap ; text-decoration: none ; line-height: 14px ; color: rgb(0 , 0 , 0)">P</span></div></div></div></div></div></foreignObject><text x="1206" y="230" fill="#000000" font-family="Helvetica" font-size="12px" text-anchor="middle">P</text></switch></g><path d="M 287.86 479.95 L 327.29 479.9" fill="none" stroke="#000000" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 335.29 479.9 L 327.29 483.9 L 327.28 475.9 Z" fill="#000000" stroke="#000000" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/><rect x="543" y="121.25" width="100" height="75" fill="#ffffff" stroke="#333333" stroke-width="2" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 96px; height: 1px; padding-top: 159px; margin-left: 546px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; "><div style="width: 93.0px ; height: auto ; word-break: break-word"><div align="center"><span style="font-size: 12px ; font-family: &quot;arial&quot; ; white-space: pre-wrap ; text-decoration: none ; line-height: 14px ; color: rgb(0 , 0 , 0)">Broad Phase Update Finalize</span></div></div></div></div></div></foreignObject><text x="594" y="162" fill="#000000" font-family="Helvetica" font-size="12px" text-anchor="middle">Broad Phase Upda...</text></switch></g><path d="M 437.52 493.36 L 539.79 184" fill="none" stroke="#000000" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 542.3 176.41 L 543.59 185.26 L 535.99 182.75 Z" fill="#000000" stroke="#000000" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/><path d="M 643 158.75 L 815.79 170.08" fill="none" stroke="#000000" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 823.77 170.6 L 815.52 174.07 L 816.05 166.09 Z" fill="#000000" stroke="#000000" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/><rect x="1349.49" y="521" width="100" height="37.39" fill="#ffffff" stroke="#333333" stroke-width="2" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 96px; height: 1px; padding-top: 540px; margin-left: 1352px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; "><div style="width: 93.0px ; height: auto ; word-break: break-word"><div align="center"><span style="font-size: 12px ; font-family: &quot;arial&quot; ; white-space: pre-wrap ; text-decoration: none ; line-height: 14px ; color: rgb(0 , 0 , 0)">Start Next Step</span></div></div></div></div></div></foreignObject><text x="1400" y="543" fill="#000000" font-family="Helvetica" font-size="12px" text-anchor="middle">Start Next Step</text></switch></g><path d="M 1516 392.5 L 1589.26 392.28" fill="none" stroke="#000000" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 1597.26 392.26 L 1589.28 396.28 L 1589.25 388.28 Z" fill="#000000" stroke="#000000" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/><rect x="126" y="90.75" width="181.16" height="14" fill="none" stroke="none" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe flex-start; width: 179px; height: 1px; padding-top: 98px; margin-left: 128px;"><div style="box-sizing: border-box; font-size: 0; text-align: left; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; "><div style="width: 178.16px ; height: auto ; word-break: break-word"><div align="left"><span style="font-size: 12px ; font-family: &quot;arial&quot; ; white-space: pre-wrap ; line-height: 14px ; color: rgb(0 , 0 , 0)">Repeat CollisionStep Times</span></div></div></div></div></div></foreignObject><text x="128" y="101" fill="#000000" font-family="Helvetica" font-size="12px">Repeat CollisionStep Times</text></switch></g><path d="M 1349.5 539.7 L 19.7 539.7 L 19.66 420.74" fill="none" stroke="#000000" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 19.66 412.74 L 23.66 420.73 L 15.66 420.74 Z" fill="#000000" stroke="#000000" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/><rect x="159.5" y="1" width="17" height="17" fill="url(#mx-gradient-aaffaa-1-00ff00-1-s-0)" stroke="#333333" stroke-width="2" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 15px; height: 1px; padding-top: 10px; margin-left: 161px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; "><div style="width: 13.32px ; height: auto ; word-break: break-word"><div align="center"><span style="font-size: 12px ; font-family: &quot;arial&quot; ; white-space: pre-wrap ; text-decoration: none ; line-height: 14px ; color: rgb(0 , 0 , 0)">A</span></div></div></div></div></div></foreignObject><text x="168" y="13" fill="#000000" font-family="Helvetica" font-size="12px" text-anchor="middle">A</text></switch></g><rect x="159.86" y="36.5" width="17" height="17" fill="url(#mx-gradient-ffaaaa-1-ff0000-1-s-0)" stroke="#333333" stroke-width="2" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 15px; height: 1px; padding-top: 45px; margin-left: 161px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; "><div style="width: 13.32px ; height: auto ; word-break: break-word"><div align="center"><span style="font-size: 12px ; font-family: &quot;arial&quot; ; white-space: pre-wrap ; text-decoration: none ; line-height: 14px ; color: rgb(0 , 0 , 0)">A</span></div></div></div></div></div></foreignObject><text x="168" y="49" fill="#000000" font-family="Helvetica" font-size="12px" text-anchor="middle">A</text></switch></g><rect x="183.16" y="3" width="150" height="14" fill="none" stroke="none" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe flex-start; width: 148px; height: 1px; padding-top: 10px; margin-left: 185px;"><div style="box-sizing: border-box; font-size: 0; text-align: left; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; "><div style="width: 147.0px ; height: auto ; word-break: break-word"><div align="left"><span style="font-size: 12px ; font-family: &quot;arial&quot; ; white-space: pre-wrap ; text-decoration: none ; line-height: 14px ; color: rgb(0 , 0 , 0)">Reads active bodies</span></div></div></div></div></div></foreignObject><text x="185" y="14" fill="#000000" font-family="Helvetica" font-size="12px">Reads active bodies</text></switch></g><rect x="182.52" y="38" width="150" height="14" fill="none" stroke="none" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe flex-start; width: 148px; height: 1px; padding-top: 45px; margin-left: 185px;"><div style="box-sizing: border-box; font-size: 0; text-align: left; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; "><div style="width: 147.0px ; height: auto ; word-break: break-word"><div align="left"><span style="font-size: 12px ; font-family: &quot;arial&quot; ; white-space: pre-wrap ; text-decoration: none ; line-height: 14px ; color: rgb(0 , 0 , 0)">Deactivates bodies</span></div></div></div></div></div></foreignObject><text x="185" y="49" fill="#000000" font-family="Helvetica" font-size="12px">Deactivates bodies</text></switch></g><rect x="1215.66" y="217.25" width="17" height="17" fill="url(#mx-gradient-ffaaaa-1-ff0000-1-s-0)" stroke="#333333" stroke-width="2" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 15px; height: 1px; padding-top: 226px; margin-left: 1217px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; "><div style="width: 13.32px ; height: auto ; word-break: break-word"><div align="center"><span style="font-size: 12px ; font-family: &quot;arial&quot; ; white-space: pre-wrap ; text-decoration: none ; line-height: 14px ; color: rgb(0 , 0 , 0)">A</span></div></div></div></div></div></foreignObject><text x="1224" y="229" fill="#000000" font-family="Helvetica" font-size="12px" text-anchor="middle">A</text></switch></g><rect x="160.5" y="58.25" width="15.66" height="15.5" fill="#fff2cc" stroke="#333333" stroke-width="2" pointer-events="all"/><rect x="183.33" y="59.75" width="150" height="14" fill="none" stroke="none" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe flex-start; width: 148px; height: 1px; padding-top: 67px; margin-left: 185px;"><div style="box-sizing: border-box; font-size: 0; text-align: left; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; "><div style="width: 147.0px ; height: auto ; word-break: break-word"><div align="left"><span style="font-size: 12px ; font-family: &quot;arial&quot; ; white-space: pre-wrap ; text-decoration: none ; line-height: 14px ; color: rgb(0 , 0 , 0)">Multiple concurrent jobs</span></div></div></div></div></div></foreignObject><text x="185" y="70" fill="#000000" font-family="Helvetica" font-size="12px">Multiple concurrent jobs</text></switch></g><rect x="188.5" y="308" width="100" height="60" fill="#fff2cc" stroke="#333333" stroke-width="2" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 96px; height: 1px; padding-top: 338px; margin-left: 192px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; "><div style="width: 93.0px ; height: auto ; word-break: break-word"><div align="center"><span style="font-size: 12px ; font-family: &quot;arial&quot; ; white-space: pre-wrap ; text-decoration: none ; line-height: 14px ; color: rgb(0 , 0 , 0)">Determine Active Constraints&#xa;</span></div><div align="center"><span style="font-size: 12px ; font-family: &quot;arial&quot; ; white-space: pre-wrap ; text-decoration: none ; line-height: 14px ; color: rgb(0 , 0 , 0)">(in batches)</span></div></div></div></div></div></foreignObject><text x="240" y="342" fill="#000000" font-family="Helvetica" font-size="12px" text-anchor="middle">Determine Active...</text></switch></g><path d="M 288.5 338 L 321.2 338 L 327.29 338" fill="none" stroke="#000000" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 335.29 338 L 327.29 342 L 327.29 334 Z" fill="#000000" stroke="#000000" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/><path d="M 288.5 338 L 334.41 227.08" fill="none" stroke="#000000" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 337.47 219.69 L 338.11 228.61 L 330.72 225.55 Z" fill="#000000" stroke="#000000" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/><rect x="159.86" y="18.5" width="17" height="17" fill="url(#mx-gradient-ffffaa-1-ff9900-1-s-0)" stroke="#333333" stroke-width="2" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 15px; height: 1px; padding-top: 27px; margin-left: 161px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; "><div style="width: 13.32px ; height: auto ; word-break: break-word"><div align="center"><span style="font-size: 12px ; font-family: &quot;arial&quot; ; white-space: pre-wrap ; text-decoration: none ; line-height: 14px ; color: rgb(0 , 0 , 0)">A</span></div></div></div></div></div></foreignObject><text x="168" y="31" fill="#000000" font-family="Helvetica" font-size="12px" text-anchor="middle">A</text></switch></g><rect x="182.52" y="20" width="150" height="14" fill="none" stroke="none" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe flex-start; width: 148px; height: 1px; padding-top: 27px; margin-left: 185px;"><div style="box-sizing: border-box; font-size: 0; text-align: left; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; "><div style="width: 147.0px ; height: auto ; word-break: break-word"><div align="left"><span style="font-size: 12px ; font-family: &quot;arial&quot; ; white-space: pre-wrap ; text-decoration: none ; line-height: 14px ; color: rgb(0 , 0 , 0)">Activates bodies</span></div></div></div></div></div></foreignObject><text x="185" y="31" fill="#000000" font-family="Helvetica" font-size="12px">Activates bodies</text></switch></g><rect x="188.5" y="368" width="17" height="17" fill="url(#mx-gradient-aaffaa-1-00ff00-1-s-0)" stroke="#333333" stroke-width="2" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 15px; height: 1px; padding-top: 377px; margin-left: 190px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; "><div style="width: 13.32px ; height: auto ; word-break: break-word"><div align="center"><span style="font-size: 12px ; font-family: &quot;arial&quot; ; white-space: pre-wrap ; text-decoration: none ; line-height: 14px ; color: rgb(0 , 0 , 0)">A</span></div></div></div></div></div></foreignObject><text x="197" y="380" fill="#000000" font-family="Helvetica" font-size="12px" text-anchor="middle">A</text></switch></g><rect x="337.52" y="308" width="100" height="60" fill="#ffffff" stroke="#333333" stroke-width="2" pointer-events="none"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 96px; height: 1px; padding-top: 338px; margin-left: 341px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: none; white-space: normal; word-wrap: normal; "><div style="width: 93.0px ; height: auto ; word-break: break-word"><div align="center"><span style="font-size: 12px ; font-family: &quot;arial&quot; ; white-space: pre-wrap ; text-decoration: none ; line-height: 14px ; color: rgb(0 , 0 , 0)">Build Islands from Constraints</span></div></div></div></div></div></foreignObject><text x="389" y="342" fill="#000000" font-family="Helvetica" font-size="12px" text-anchor="middle">Build Islands fr...</text></switch></g><rect x="337.52" y="368" width="17" height="17" fill="url(#mx-gradient-aaffaa-1-00ff00-1-s-0)" stroke="#333333" stroke-width="2" pointer-events="none"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 15px; height: 1px; padding-top: 377px; margin-left: 339px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: none; white-space: normal; word-wrap: normal; "><div style="width: 13.32px ; height: auto ; word-break: break-word"><div align="center"><span style="font-size: 12px ; font-family: &quot;arial&quot; ; white-space: pre-wrap ; text-decoration: none ; line-height: 14px ; color: rgb(0 , 0 , 0)">P</span></div></div></div></div></div></foreignObject><text x="346" y="380" fill="#000000" font-family="Helvetica" font-size="12px" text-anchor="middle">P</text></switch></g><rect x="356.18" y="368" width="17" height="17" fill="url(#mx-gradient-ffffaa-1-ff9900-1-s-0)" stroke="#333333" stroke-width="2" pointer-events="none"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 15px; height: 1px; padding-top: 377px; margin-left: 357px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: none; white-space: normal; word-wrap: normal; "><div style="width: 13.32px ; height: auto ; word-break: break-word"><div align="center"><span style="font-size: 12px ; font-family: &quot;arial&quot; ; white-space: pre-wrap ; text-decoration: none ; line-height: 14px ; color: rgb(0 , 0 , 0)">A</span></div></div></div></div></div></foreignObject><text x="365" y="380" fill="#000000" font-family="Helvetica" font-size="12px" text-anchor="middle">A</text></switch></g><path d="M 437.52 493.36 L 536.91 358.96" fill="none" stroke="#000000" stroke-width="2" stroke-miterlimit="10" pointer-events="none"/><path d="M 541.67 352.53 L 540.13 361.34 L 533.7 356.59 Z" fill="#000000" stroke="#000000" stroke-width="2" stroke-miterlimit="10" pointer-events="none"/><path d="M 408.2 447.39 L 408.2 426.9 L 366.8 426.9 L 366.8 437.16" fill="none" stroke="#000000" stroke-width="2" stroke-miterlimit="10" stroke-dasharray="2 2" pointer-events="none"/><path d="M 366.8 445.16 L 362.8 437.16 L 370.8 437.16 Z" fill="#000000" stroke="#000000" stroke-width="2" stroke-miterlimit="10" pointer-events="none"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe flex-start; width: 68px; height: 1px; padding-top: 413px; margin-left: 361px;"><div style="box-sizing: border-box; font-size: 0; text-align: left; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: none; white-space: normal; word-wrap: normal; "><div style="width: 67.0px ; height: auto ; word-break: break-word"><div align="left"><span style="font-size: 12px ; font-family: &quot;arial&quot; ; white-space: pre-wrap ; text-decoration: none ; line-height: 14px ; color: rgb(0 , 0 , 0)">Can spawn &#xa;</span></div><div align="left"><span style="font-size: 12px ; font-family: &quot;arial&quot; ; white-space: pre-wrap ; text-decoration: none ; line-height: 14px ; color: rgb(0 , 0 , 0)">more jobs</span></div></div></div></div></div></foreignObject><text x="361" y="417" fill="#000000" font-family="Helvetica" font-size="12px">Can spawn...</text></switch></g><rect x="949" y="133.25" width="100" height="75" fill="#fff2cc" stroke="#333333" stroke-width="2" pointer-events="none"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 96px; height: 1px; padding-top: 171px; margin-left: 952px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: none; white-space: normal; word-wrap: normal; "><div style="width: 93.0px ; height: auto ; word-break: break-word"><div align="center"><span style="font-size: 12px ; font-family: &quot;arial&quot; ; white-space: pre-wrap ; text-decoration: none ; line-height: 14px ; color: rgb(0 , 0 , 0)">Find CCD Contacts&#xa;</span></div><div align="center"><span style="font-size: 12px ; font-family: &quot;arial&quot; ; white-space: pre-wrap ; text-decoration: none ; line-height: 14px ; color: rgb(0 , 0 , 0)">(per body)</span></div></div></div></div></div></foreignObject><text x="1000" y="174" fill="#000000" font-family="Helvetica" font-size="12px" text-anchor="middle">Find CCD Contact...</text></switch></g><rect x="1071" y="133.25" width="100" height="75" fill="#ffffff" stroke="#333333" stroke-width="2" pointer-events="none"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 96px; height: 1px; padding-top: 171px; margin-left: 1074px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: none; white-space: normal; word-wrap: normal; "><div style="width: 93.0px ; height: auto ; word-break: break-word"><div align="center"><span style="font-size: 12px ; font-family: &quot;arial&quot; ; white-space: pre-wrap ; text-decoration: none ; line-height: 14px ; color: rgb(0 , 0 , 0)">Resolve CCD Contacts&#xa;</span></div><div align="center"><span style="font-size: 12px ; font-family: &quot;arial&quot; ; white-space: pre-wrap ; text-decoration: none ; line-height: 14px ; color: rgb(0 , 0 , 0)"></span></div></div></div></div></div></foreignObject><text x="1122" y="174" fill="#000000" font-family="Helvetica" font-size="12px" text-anchor="middle">Resolve CCD Cont...</text></switch></g><path d="M 1171 170.75 L 1186.77 171.36" fill="none" stroke="#000000" stroke-width="2" stroke-miterlimit="10" pointer-events="none"/><path d="M 1194.77 171.66 L 1186.62 175.35 L 1186.93 167.36 Z" fill="#000000" stroke="#000000" stroke-width="2" stroke-miterlimit="10" pointer-events="none"/><path d="M 1049 170.75 L 1060.76 170.75" fill="none" stroke="#000000" stroke-width="2" stroke-miterlimit="10" pointer-events="none"/><path d="M 1068.76 170.75 L 1060.76 174.75 L 1060.76 166.75 Z" fill="#000000" stroke="#000000" stroke-width="2" stroke-miterlimit="10" pointer-events="none"/><path d="M 876 133.25 L 876 117.3 L 1121 117.3 L 1121 123.01" fill="none" stroke="#000000" stroke-width="2" stroke-miterlimit="10" pointer-events="none"/><path d="M 1121 131.01 L 1117 123.01 L 1125 123.01 Z" fill="#000000" stroke="#000000" stroke-width="2" stroke-miterlimit="10" pointer-events="none"/><rect x="1089.66" y="208.25" width="17" height="17" fill="url(#mx-gradient-ffaaaa-1-ff0000-1-s-0)" stroke="#333333" stroke-width="2" pointer-events="none"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 15px; height: 1px; padding-top: 217px; margin-left: 1091px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: none; white-space: normal; word-wrap: normal; "><div style="width: 13.32px ; height: auto ; word-break: break-word"><div align="center"><span style="font-size: 12px ; font-family: &quot;arial&quot; ; white-space: pre-wrap ; text-decoration: none ; line-height: 14px ; color: rgb(0 , 0 , 0)">V</span></div></div></div></div></div></foreignObject><text x="1098" y="220" fill="#000000" font-family="Helvetica" font-size="12px" text-anchor="middle">V</text></switch></g><rect x="1071" y="208.25" width="17" height="17" fill="url(#mx-gradient-ffaaaa-1-ff0000-1-s-0)" stroke="#333333" stroke-width="2" pointer-events="none"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 15px; height: 1px; padding-top: 217px; margin-left: 1072px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: none; white-space: normal; word-wrap: normal; "><div style="width: 13.32px ; height: auto ; word-break: break-word"><div align="center"><span style="font-size: 12px ; font-family: &quot;arial&quot; ; white-space: pre-wrap ; text-decoration: none ; line-height: 14px ; color: rgb(0 , 0 , 0)">P</span></div></div></div></div></div></foreignObject><text x="1080" y="220" fill="#000000" font-family="Helvetica" font-size="12px" text-anchor="middle">P</text></switch></g><rect x="1108.32" y="208.25" width="17" height="17" fill="url(#mx-gradient-ffffaa-1-ff9900-1-s-0)" stroke="#333333" stroke-width="2" pointer-events="none"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 15px; height: 1px; padding-top: 217px; margin-left: 1109px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: none; white-space: normal; word-wrap: normal; "><div style="width: 13.32px ; height: auto ; word-break: break-word"><div align="center"><span style="font-size: 12px ; font-family: &quot;arial&quot; ; white-space: pre-wrap ; text-decoration: none ; line-height: 14px ; color: rgb(0 , 0 , 0)">A</span></div></div></div></div></div></foreignObject><text x="1117" y="220" fill="#000000" font-family="Helvetica" font-size="12px" text-anchor="middle">A</text></switch></g><rect x="949" y="208.25" width="17" height="17" fill="url(#mx-gradient-aaffaa-1-00ff00-1-s-0)" stroke="#333333" stroke-width="2" pointer-events="none"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 15px; height: 1px; padding-top: 217px; margin-left: 950px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: none; white-space: normal; word-wrap: normal; "><div style="width: 13.32px ; height: auto ; word-break: break-word"><div align="center"><span style="font-size: 12px ; font-family: &quot;arial&quot; ; white-space: pre-wrap ; text-decoration: none ; line-height: 14px ; color: rgb(0 , 0 , 0)">P</span></div></div></div></div></div></foreignObject><text x="958" y="220" fill="#000000" font-family="Helvetica" font-size="12px" text-anchor="middle">P</text></switch></g><rect x="1131.33" y="361.9" width="175" height="60.7" fill="#ffffff" stroke="#333333" stroke-width="2" pointer-events="none"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 170px; height: 1px; padding-top: 392px; margin-left: 1135px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: none; white-space: normal; word-wrap: normal; "><div style="width: 165.0px ; height: auto ; word-break: break-word"><div align="center"><span style="font-size: 12px ; font-family: &quot;arial&quot; ; white-space: pre-wrap ; text-decoration: none ; line-height: 14px ; color: rgb(0 , 0 , 0)">Finalize Contact Cache,&#xa;</span></div><div align="center"><span style="font-size: 12px ; font-family: &quot;arial&quot; ; white-space: pre-wrap ; text-decoration: none ; line-height: 14px ; color: rgb(0 , 0 , 0)">Contact Removed Callbacks</span></div></div></div></div></div></foreignObject><text x="1220" y="396" fill="#000000" font-family="Helvetica" font-size="12px" text-anchor="middle">Finalize Contact Cache,...</text></switch></g><path d="M 999 208.25 L 999 392.3 L 1121.09 392.3" fill="none" stroke="#000000" stroke-width="2" stroke-miterlimit="10" stroke-dasharray="2 2" pointer-events="none"/><path d="M 1129.09 392.3 L 1121.09 396.3 L 1121.09 388.3 Z" fill="#000000" stroke="#000000" stroke-width="2" stroke-miterlimit="10" pointer-events="none"/><path d="M 1306.33 392.25 L 1471.76 392.49" fill="none" stroke="#000000" stroke-width="2" stroke-miterlimit="10" pointer-events="none"/><path d="M 1479.76 392.5 L 1471.76 396.49 L 1471.77 388.49 Z" fill="#000000" stroke="#000000" stroke-width="2" stroke-miterlimit="10" pointer-events="none"/><rect x="967.66" y="208.25" width="17" height="17" fill="url(#mx-gradient-aaffaa-1-00ff00-1-s-0)" stroke="#333333" stroke-width="2" pointer-events="none"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 15px; height: 1px; padding-top: 217px; margin-left: 969px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: none; white-space: normal; word-wrap: normal; "><div style="width: 13.32px ; height: auto ; word-break: break-word"><div align="center"><span style="font-size: 12px ; font-family: &quot;arial&quot; ; white-space: pre-wrap ; text-decoration: none ; line-height: 14px ; color: rgb(0 , 0 , 0)">V</span></div></div></div></div></div></foreignObject><text x="976" y="220" fill="#000000" font-family="Helvetica" font-size="12px" text-anchor="middle">V</text></switch></g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 148px; height: 1px; padding-top: 412px; margin-left: 983px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: none; white-space: normal; word-wrap: normal; "><div style="width: 147.0px ; height: auto ; word-break: break-word"><div align="center"><span style="font-size: 12px ; font-family: &quot;arial&quot; ; white-space: pre-wrap ; text-decoration: none ; line-height: 14px ; color: rgb(0 , 0 , 0)">Triggered during last integration sub step</span></div></div></div></div></div></foreignObject><text x="1057" y="416" fill="#000000" font-family="Helvetica" font-size="12px" text-anchor="middle">Triggered during last int...</text></switch></g><rect x="337.52" y="447.39" width="100" height="65" fill="#fff2cc" stroke="#333333" stroke-width="2" pointer-events="none"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 96px; height: 1px; padding-top: 480px; margin-left: 341px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: none; white-space: normal; word-wrap: normal; "><div style="width: 93.0px ; height: auto ; word-break: break-word"><div align="center"><span style="font-size: 12px ; font-family: &quot;arial&quot; ; white-space: pre-wrap ; text-decoration: none ; line-height: 14px ; color: rgb(0 , 0 , 0)">Find Collisions&#xa;</span></div><div align="center"><span style="font-size: 12px ; font-family: &quot;arial&quot; ; white-space: pre-wrap ; text-decoration: none ; line-height: 14px ; color: rgb(0 , 0 , 0)">(per batch of active bodies and per pair)</span></div></div></div></div></div></foreignObject><text x="389" y="483" fill="#000000" font-family="Helvetica" font-size="12px" text-anchor="middle">Find Collisions...</text></switch></g><rect x="337.52" y="512.5" width="17" height="17" fill="url(#mx-gradient-aaffaa-1-00ff00-1-s-0)" stroke="#333333" stroke-width="2" pointer-events="none"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 15px; height: 1px; padding-top: 521px; margin-left: 339px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: none; white-space: normal; word-wrap: normal; "><div style="width: 13.32px ; height: auto ; word-break: break-word"><div align="center"><span style="font-size: 12px ; font-family: &quot;arial&quot; ; white-space: pre-wrap ; text-decoration: none ; line-height: 14px ; color: rgb(0 , 0 , 0)">P</span></div></div></div></div></div></foreignObject><text x="346" y="525" fill="#000000" font-family="Helvetica" font-size="12px" text-anchor="middle">P</text></switch></g><rect x="356.18" y="512.5" width="17" height="17" fill="url(#mx-gradient-aaffaa-1-00ff00-1-s-0)" stroke="#333333" stroke-width="2" pointer-events="none"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 15px; height: 1px; padding-top: 521px; margin-left: 357px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: none; white-space: normal; word-wrap: normal; "><div style="width: 13.32px ; height: auto ; word-break: break-word"><div align="center"><span style="font-size: 12px ; font-family: &quot;arial&quot; ; white-space: pre-wrap ; text-decoration: none ; line-height: 14px ; color: rgb(0 , 0 , 0)">V</span></div></div></div></div></div></foreignObject><text x="365" y="525" fill="#000000" font-family="Helvetica" font-size="12px" text-anchor="middle">V</text></switch></g><rect x="374.84" y="512.39" width="17" height="17" fill="url(#mx-gradient-ffffaa-1-ff9900-1-s-0)" stroke="#333333" stroke-width="2" pointer-events="none"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 15px; height: 1px; padding-top: 521px; margin-left: 376px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: none; white-space: normal; word-wrap: normal; "><div style="width: 13.32px ; height: auto ; word-break: break-word"><div align="center"><span style="font-size: 12px ; font-family: &quot;arial&quot; ; white-space: pre-wrap ; text-decoration: none ; line-height: 14px ; color: rgb(0 , 0 , 0)">A</span></div></div></div></div></div></foreignObject><text x="383" y="524" fill="#000000" font-family="Helvetica" font-size="12px" text-anchor="middle">A</text></switch></g><rect x="1076.98" y="236.5" width="100" height="84" fill="#fff2cc" stroke="#333333" stroke-width="2" pointer-events="none"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 96px; height: 1px; padding-top: 279px; margin-left: 1080px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: none; white-space: normal; word-wrap: normal; "><div style="width: 93.0px ; height: auto ; word-break: break-word"><div align="center"><span style="font-size: 12px ; font-family: &quot;arial&quot; ; white-space: pre-wrap ; text-decoration: none ; line-height: 14px ; color: rgb(0 , 0 , 0)">Apply Gravity, Setup/Solve Velocity Constraints&#xa;</span></div><div align="center"><span style="font-size: 12px ; font-family: &quot;arial&quot; ; white-space: pre-wrap ; text-decoration: none ; line-height: 14px ; color: rgb(0 , 0 , 0)">(per island)</span></div></div></div></div></div></foreignObject><text x="1128" y="282" fill="#000000" font-family="Helvetica" font-size="12px" text-anchor="middle">Apply Gravity, S...</text></switch></g><rect x="1095.64" y="321" width="17" height="17" fill="url(#mx-gradient-ffaaaa-1-ff0000-1-s-0)" stroke="#333333" stroke-width="2" pointer-events="none"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 15px; height: 1px; padding-top: 330px; margin-left: 1097px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: none; white-space: normal; word-wrap: normal; "><div style="width: 13.32px ; height: auto ; word-break: break-word"><div align="center"><span style="font-size: 12px ; font-family: &quot;arial&quot; ; white-space: pre-wrap ; text-decoration: none ; line-height: 14px ; color: rgb(0 , 0 , 0)">V</span></div></div></div></div></div></foreignObject><text x="1104" y="333" fill="#000000" font-family="Helvetica" font-size="12px" text-anchor="middle">V</text></switch></g><rect x="1076.98" y="321" width="17" height="17" fill="url(#mx-gradient-aaffaa-1-00ff00-1-s-0)" stroke="#333333" stroke-width="2" pointer-events="none"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 15px; height: 1px; padding-top: 330px; margin-left: 1078px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: none; white-space: normal; word-wrap: normal; "><div style="width: 13.32px ; height: auto ; word-break: break-word"><div align="center"><span style="font-size: 12px ; font-family: &quot;arial&quot; ; white-space: pre-wrap ; text-decoration: none ; line-height: 14px ; color: rgb(0 , 0 , 0)">P</span></div></div></div></div></div></foreignObject><text x="1085" y="333" fill="#000000" font-family="Helvetica" font-size="12px" text-anchor="middle">P</text></switch></g><path d="M 1347 157.25 L 1364 171.75 L 1347 186.25 L 1330 171.75 Z" fill="#ffffff" stroke="#333333" stroke-width="2" stroke-miterlimit="10" pointer-events="none"/><path d="M 1347 186.25 L 1347 249.57" fill="none" stroke="#000000" stroke-width="2" stroke-miterlimit="10" pointer-events="none"/><path d="M 1347 257.57 L 1343 249.57 L 1351 249.57 Z" fill="#000000" stroke="#000000" stroke-width="2" stroke-miterlimit="10" pointer-events="none"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe flex-start; width: 83px; height: 1px; padding-top: 165px; margin-left: 1366px;"><div style="box-sizing: border-box; font-size: 0; text-align: left; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: none; white-space: normal; word-wrap: normal; "><div style="width: 82.495px ; height: auto ; word-break: break-word"><div align="left"><span style="font-size: 12px ; font-family: &quot;arial&quot; ; white-space: pre-wrap ; text-decoration: none ; line-height: 14px ; color: rgb(0 , 0 , 0)">Last Sub Step</span></div></div></div></div></div></foreignObject><text x="1366" y="168" fill="#000000" font-family="Helvetica" font-size="12px">Last Sub Step</text></switch></g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe flex-start; width: 65px; height: 1px; padding-top: 205px; margin-left: 1351px;"><div style="box-sizing: border-box; font-size: 0; text-align: left; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: none; white-space: normal; word-wrap: normal; "><div style="width: 64.0px ; height: auto ; word-break: break-word"><div align="left"><span style="font-size: 12px ; font-family: &quot;arial&quot; ; white-space: pre-wrap ; text-decoration: none ; line-height: 14px ; color: rgb(0 , 0 , 0)">Not&#xa;</span></div><div align="left"><span style="font-size: 12px ; font-family: &quot;arial&quot; ; white-space: pre-wrap ; text-decoration: none ; line-height: 14px ; color: rgb(0 , 0 , 0)">Last &#xa;</span></div><div align="left"><span style="font-size: 12px ; font-family: &quot;arial&quot; ; white-space: pre-wrap ; text-decoration: none ; line-height: 14px ; color: rgb(0 , 0 , 0)">Sub Step</span></div></div></div></div></div></foreignObject><text x="1351" y="208" fill="#000000" font-family="Helvetica" font-size="12px">Not...</text></switch></g><path d="M 1499 378 L 1516 392.5 L 1499 407 L 1482 392.5 Z" fill="#ffffff" stroke="#333333" stroke-width="2" stroke-miterlimit="10" pointer-events="none"/><path d="M 1499 407 L 1499 539.7 L 1459.73 539.7" fill="none" stroke="#000000" stroke-width="2" stroke-miterlimit="10" pointer-events="none"/><path d="M 1451.73 539.7 L 1459.73 535.7 L 1459.73 543.7 Z" fill="#000000" stroke="#000000" stroke-width="2" stroke-miterlimit="10" pointer-events="none"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe flex-start; width: 65px; height: 1px; padding-top: 428px; margin-left: 1506px;"><div style="box-sizing: border-box; font-size: 0; text-align: left; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: none; white-space: normal; word-wrap: normal; "><div style="width: 64.0px ; height: auto ; word-break: break-word"><div align="left"><span style="font-size: 12px ; font-family: &quot;arial&quot; ; white-space: pre-wrap ; text-decoration: none ; line-height: 14px ; color: rgb(0 , 0 , 0)">Not&#xa;</span></div><div align="left"><span style="font-size: 12px ; font-family: &quot;arial&quot; ; white-space: pre-wrap ; text-decoration: none ; line-height: 14px ; color: rgb(0 , 0 , 0)">Last &#xa;</span></div><div align="left"><span style="font-size: 12px ; font-family: &quot;arial&quot; ; white-space: pre-wrap ; text-decoration: none ; line-height: 14px ; color: rgb(0 , 0 , 0)">Step</span></div></div></div></div></div></foreignObject><text x="1506" y="431" fill="#000000" font-family="Helvetica" font-size="12px">Not...</text></switch></g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe flex-start; width: 70px; height: 1px; padding-top: 380px; margin-left: 1516px;"><div style="box-sizing: border-box; font-size: 0; text-align: left; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: none; white-space: normal; word-wrap: normal; "><div style="width: 68.5px ; height: auto ; word-break: break-word"><div align="left"><span style="font-size: 12px ; font-family: &quot;arial&quot; ; white-space: pre-wrap ; text-decoration: none ; line-height: 14px ; color: rgb(0 , 0 , 0)">Last Step</span></div></div></div></div></div></foreignObject><text x="1516" y="383" fill="#000000" font-family="Helvetica" font-size="12px">Last Step</text></switch></g><rect x="1288" y="259.8" width="118" height="37.39" fill="#ffffff" stroke="#333333" stroke-width="2" pointer-events="none"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 114px; height: 1px; padding-top: 279px; margin-left: 1291px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: none; white-space: normal; word-wrap: normal; "><div style="width: 110.28px ; height: auto ; word-break: break-word"><div align="center"><span style="font-size: 12px ; font-family: &quot;arial&quot; ; white-space: pre-wrap ; text-decoration: none ; line-height: 14px ; color: rgb(0 , 0 , 0)">Start Next Sub Step</span></div></div></div></div></div></foreignObject><text x="1348" y="282" fill="#000000" font-family="Helvetica" font-size="12px" text-anchor="middle">Start Next Sub Step</text></switch></g><path d="M 1288 278.5 L 1187.22 278.5" fill="none" stroke="#000000" stroke-width="2" stroke-miterlimit="10" pointer-events="none"/><path d="M 1179.22 278.5 L 1187.22 274.5 L 1187.22 282.5 Z" fill="#000000" stroke="#000000" stroke-width="2" stroke-miterlimit="10" pointer-events="none"/><path d="M 27.16 403 L 50.26 402.86" fill="none" stroke="#000000" stroke-width="2" stroke-miterlimit="10" pointer-events="none"/><path d="M 58.26 402.82 L 50.29 406.86 L 50.24 398.86 Z" fill="#000000" stroke="#000000" stroke-width="2" stroke-miterlimit="10" pointer-events="none"/><rect x="691.66" y="180.75" width="100" height="75" fill="#fff2cc" stroke="#333333" stroke-width="2" pointer-events="none"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 96px; height: 1px; padding-top: 218px; margin-left: 695px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: none; white-space: normal; word-wrap: normal; "><div style="width: 93.0px ; height: auto ; word-break: break-word"><div align="center"><span style="font-size: 12px ; font-family: &quot;arial&quot; ; white-space: pre-wrap ; text-decoration: none ; line-height: 14px ; color: rgb(0 , 0 , 0)">Solve Velocity Constraints&#xa;</span></div><div align="center"><span style="font-size: 12px ; font-family: &quot;arial&quot; ; white-space: pre-wrap ; text-decoration: none ; line-height: 14px ; color: rgb(0 , 0 , 0)">(per island)</span></div></div></div></div></div></foreignObject><text x="743" y="222" fill="#000000" font-family="Helvetica" font-size="12px" text-anchor="middle">Solve Velocity C...</text></switch></g><rect x="710.32" y="255.75" width="17" height="17" fill="url(#mx-gradient-ffaaaa-1-ff0000-1-s-0)" stroke="#333333" stroke-width="2" pointer-events="none"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 15px; height: 1px; padding-top: 264px; margin-left: 711px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: none; white-space: normal; word-wrap: normal; "><div style="width: 13.32px ; height: auto ; word-break: break-word"><div align="center"><span style="font-size: 12px ; font-family: &quot;arial&quot; ; white-space: pre-wrap ; text-decoration: none ; line-height: 14px ; color: rgb(0 , 0 , 0)">V</span></div></div></div></div></div></foreignObject><text x="719" y="268" fill="#000000" font-family="Helvetica" font-size="12px" text-anchor="middle">V</text></switch></g><rect x="691.66" y="255.75" width="17" height="17" fill="url(#mx-gradient-aaffaa-1-00ff00-1-s-0)" stroke="#333333" stroke-width="2" pointer-events="none"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 15px; height: 1px; padding-top: 264px; margin-left: 693px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: none; white-space: normal; word-wrap: normal; "><div style="width: 13.32px ; height: auto ; word-break: break-word"><div align="center"><span style="font-size: 12px ; font-family: &quot;arial&quot; ; white-space: pre-wrap ; text-decoration: none ; line-height: 14px ; color: rgb(0 , 0 , 0)">P</span></div></div></div></div></div></foreignObject><text x="700" y="268" fill="#000000" font-family="Helvetica" font-size="12px" text-anchor="middle">P</text></switch></g><rect x="128" y="124.75" width="100" height="68.25" fill="#ffffff" stroke="#333333" stroke-width="2" pointer-events="none"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 96px; height: 1px; padding-top: 159px; margin-left: 131px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: none; white-space: normal; word-wrap: normal; "><div style="width: 93.0px ; height: auto ; word-break: break-word"><div align="center"><span style="font-size: 12px ; font-family: &quot;arial&quot; ; white-space: pre-wrap ; text-decoration: none ; line-height: 14px ; color: rgb(0 , 0 , 0)">Broad Phase Update Prepare</span></div></div></div></div></div></foreignObject><text x="179" y="162" fill="#000000" font-family="Helvetica" font-size="12px" text-anchor="middle">Broad Phase Upda...</text></switch></g><rect x="128.64" y="193" width="17" height="17" fill="url(#mx-gradient-aaffaa-1-00ff00-1-s-0)" stroke="#333333" stroke-width="2" pointer-events="none"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 15px; height: 1px; padding-top: 202px; margin-left: 130px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: none; white-space: normal; word-wrap: normal; "><div style="width: 13.32px ; height: auto ; word-break: break-word"><div align="center"><span style="font-size: 12px ; font-family: &quot;arial&quot; ; white-space: pre-wrap ; text-decoration: none ; line-height: 14px ; color: rgb(0 , 0 , 0)">P</span></div></div></div></div></div></foreignObject><text x="137" y="205" fill="#000000" font-family="Helvetica" font-size="12px" text-anchor="middle">P</text></switch></g><rect x="60.5" y="372.8" width="100" height="60" fill="#fff2cc" stroke="#333333" stroke-width="2" pointer-events="none"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 96px; height: 1px; padding-top: 403px; margin-left: 64px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: none; white-space: normal; word-wrap: normal; "><div style="width: 93.0px ; height: auto ; word-break: break-word"><div align="center"><span style="font-size: 12px ; font-family: &quot;arial&quot; ; white-space: pre-wrap ; text-decoration: none ; line-height: 14px ; color: rgb(0 , 0 , 0)">Step Listeners&#xa;</span></div><div align="center"><span style="font-size: 12px ; font-family: &quot;arial&quot; ; white-space: pre-wrap ; text-decoration: none ; line-height: 14px ; color: rgb(0 , 0 , 0)">(in batches)</span></div></div></div></div></div></foreignObject><text x="112" y="406" fill="#000000" font-family="Helvetica" font-size="12px" text-anchor="middle">Step Listeners...</text></switch></g><rect x="60.5" y="432.8" width="17" height="17" fill="url(#mx-gradient-aaffaa-1-00ff00-1-s-0)" stroke="#333333" stroke-width="2" pointer-events="none"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 15px; height: 1px; padding-top: 441px; margin-left: 62px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: none; white-space: normal; word-wrap: normal; "><div style="width: 13.32px ; height: auto ; word-break: break-word"><div align="center"><span style="font-size: 12px ; font-family: &quot;arial&quot; ; white-space: pre-wrap ; text-decoration: none ; line-height: 14px ; color: rgb(0 , 0 , 0)">P</span></div></div></div></div></div></foreignObject><text x="69" y="445" fill="#000000" font-family="Helvetica" font-size="12px" text-anchor="middle">P</text></switch></g><rect x="79.16" y="432.8" width="17" height="17" fill="url(#mx-gradient-ffaaaa-1-ff0000-1-s-0)" stroke="#333333" stroke-width="2" pointer-events="none"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 15px; height: 1px; padding-top: 441px; margin-left: 80px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: none; white-space: normal; word-wrap: normal; "><div style="width: 13.32px ; height: auto ; word-break: break-word"><div align="center"><span style="font-size: 12px ; font-family: &quot;arial&quot; ; white-space: pre-wrap ; text-decoration: none ; line-height: 14px ; color: rgb(0 , 0 , 0)">V</span></div></div></div></div></div></foreignObject><text x="88" y="445" fill="#000000" font-family="Helvetica" font-size="12px" text-anchor="middle">V</text></switch></g><rect x="96.82" y="432.8" width="17" height="17" fill="url(#mx-gradient-ffffaa-1-ff9900-1-s-0)" stroke="#333333" stroke-width="2" pointer-events="none"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 15px; height: 1px; padding-top: 441px; margin-left: 98px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: none; white-space: normal; word-wrap: normal; "><div style="width: 13.32px ; height: auto ; word-break: break-word"><div align="center"><span style="font-size: 12px ; font-family: &quot;arial&quot; ; white-space: pre-wrap ; text-decoration: none ; line-height: 14px ; color: rgb(0 , 0 , 0)">A</span></div></div></div></div></div></foreignObject><text x="105" y="445" fill="#000000" font-family="Helvetica" font-size="12px" text-anchor="middle">A</text></switch></g></g><switch><g requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"/><a transform="translate(0,-5)" xlink:href="https://www.diagrams.net/doc/faq/svg-export-text-problems" target="_blank"><text text-anchor="middle" font-size="10px" x="50%" y="100%">Viewer does not support full SVG 1.1</text></a></switch></svg>