PhysicsSystemUpdate.drawio 79 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551
  1. <mxfile host="Electron" modified="2023-09-24T13:05:17.254Z" agent="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) draw.io/21.7.5 Chrome/114.0.5735.289 Electron/25.8.1 Safari/537.36" etag="y67BJ_dSAoWEx4PTNBpq" version="21.7.5" type="device">
  2. <diagram id="rLFVS3KHCrdhIcSo5p6n" name="Page-1">
  3. <mxGraphModel dx="1548" dy="894" grid="1" gridSize="10" guides="1" tooltips="1" connect="1" arrows="1" fold="1" page="1" pageScale="1" pageWidth="850" pageHeight="1100" background="#FFFFFF" math="0" shadow="0">
  4. <root>
  5. <mxCell id="0" />
  6. <mxCell id="1" parent="0" />
  7. <mxCell id="2" style="shape=rect;shadow=0;strokeWidth=2;fillColor=#d9d9d9;strokeColor=#333333;gradientColor=#FFFFFF;gradientDirection=north;opacity=100.0;gliffyId=319;" parent="1" vertex="1">
  8. <mxGeometry x="22.5" y="101.75" width="2167.5" height="478" as="geometry" />
  9. </mxCell>
  10. <mxCell id="4" value="&lt;div style=&#39;width: 93.0px;height:auto;word-break: break-word;&#39;&gt;&lt;div align=&quot;center&quot;&gt;&lt;span style=&quot;font-size: 12px; font-family: Arial; white-space: pre-wrap; text-decoration: none; line-height: 14px; color: rgb(0, 0, 0);&quot;&gt;Apply Gravity &lt;/span&gt;&lt;/div&gt;&lt;div align=&quot;center&quot;&gt;&lt;span style=&quot;font-size: 12px; font-family: Arial; white-space: pre-wrap; text-decoration: none; line-height: 14px; color: rgb(0, 0, 0);&quot;&gt;(in batches)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;" style="shape=rect;shadow=0;strokeWidth=2;fillColor=#fff2cc;strokeColor=#333333;opacity=100.0;html=1;nl2Br=0;verticalAlign=middle;align=center;spacingLeft=2.0;spacingRight=0;whiteSpace=wrap;gliffyId=3;" parent="1" vertex="1">
  11. <mxGeometry x="209.8640594482422" y="458.3939208984375" width="100" height="65.1060791015625" as="geometry" />
  12. </mxCell>
  13. <mxCell id="5" style="shape=ellipse;perimeter=ellipsePerimeter;shadow=0;strokeWidth=2;fillColor=#ffffff;strokeColor=#333333;opacity=100.0;gliffyId=8;" parent="1" vertex="1">
  14. <mxGeometry x="34.15999984741211" y="406.5" width="15" height="15" as="geometry" />
  15. </mxCell>
  16. <mxCell id="6" style="shape=filledEdge;strokeWidth=2;strokeColor=#000000;fillColor=none;startArrow=none;startFill=0;startSize=6;endArrow=block;endFill=1;endSize=6;rounded=0;gliffyId=11;edgeStyle=orthogonalEdgeStyle;" parent="1" source="5" target="37" edge="1">
  17. <mxGeometry width="100" height="100" relative="1" as="geometry">
  18. <Array as="points">
  19. <mxPoint x="41.660003662109375" y="406.5" />
  20. <mxPoint x="41.660003662109375" y="169.875" />
  21. <mxPoint x="150" y="169.875" />
  22. </Array>
  23. </mxGeometry>
  24. </mxCell>
  25. <mxCell id="7" style="shape=filledEdge;strokeWidth=2;strokeColor=#000000;fillColor=none;startArrow=none;startFill=0;startSize=6;endArrow=block;endFill=1;endSize=6;rounded=0;gliffyId=15;exitX=1.0;exitY=0.5;exitPerimeter=0;entryX=0.0;entryY=0.5;entryPerimeter=0;" parent="1" source="112" target="4" edge="1">
  26. <mxGeometry width="100" height="100" relative="1" as="geometry">
  27. <Array as="points">
  28. <mxPoint x="182.5" y="413.80303955078125" />
  29. <mxPoint x="209.8640594482422" y="490.94696044921875" />
  30. </Array>
  31. </mxGeometry>
  32. </mxCell>
  33. <mxCell id="8" value="&lt;div style=&#39;width: 93.0px;height:auto;word-break: break-word;&#39;&gt;&lt;div align=&quot;center&quot;&gt;&lt;span style=&quot;font-size: 12px; font-family: Arial; white-space: pre-wrap; text-decoration: none; line-height: 14px; color: rgb(0, 0, 0);&quot;&gt;Setup Velocity Constraints&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;" style="shape=rect;shadow=0;strokeWidth=2;fillColor=#ffffff;strokeColor=#333333;opacity=100.0;html=1;nl2Br=0;verticalAlign=middle;align=center;spacingLeft=2.0;spacingRight=0;whiteSpace=wrap;gliffyId=30;" parent="1" vertex="1">
  34. <mxGeometry x="360.3299865722656" y="197.25" width="100" height="62.75" as="geometry" />
  35. </mxCell>
  36. <mxCell id="9" value="&lt;div style=&#39;width: 93.0px;height:auto;word-break: break-word;&#39;&gt;&lt;div align=&quot;center&quot;&gt;&lt;span style=&quot;font-size: 12px; font-family: Arial; white-space: pre-wrap; text-decoration: none; line-height: 14px; color: rgb(0, 0, 0);&quot;&gt;Pre Integrate&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;" style="shape=rect;shadow=0;strokeWidth=2;fillColor=#ffffff;strokeColor=#333333;opacity=100.0;html=1;nl2Br=0;verticalAlign=middle;align=center;spacingLeft=2.0;spacingRight=0;whiteSpace=wrap;gliffyId=48;" parent="1" vertex="1">
  37. <mxGeometry x="848" y="144.25" width="100" height="75" as="geometry" />
  38. </mxCell>
  39. <mxCell id="10" value="&lt;div style=&#39;width: 93.0px;height:auto;word-break: break-word;&#39;&gt;&lt;div align=&quot;center&quot;&gt;&lt;span style=&quot;font-size: 12px; font-family: Arial; white-space: pre-wrap; text-decoration: none; line-height: 14px; color: rgb(0, 0, 0);&quot;&gt;Finalize Islands&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;" style="shape=rect;shadow=0;strokeWidth=2;fillColor=#ffffff;strokeColor=#333333;opacity=100.0;html=1;nl2Br=0;verticalAlign=middle;align=center;spacingLeft=2.0;spacingRight=0;whiteSpace=wrap;gliffyId=53;" parent="1" vertex="1">
  40. <mxGeometry x="565" y="315.69696044921875" width="100" height="65.1060791015625" as="geometry" />
  41. </mxCell>
  42. <mxCell id="11" style="shape=filledEdge;strokeWidth=2;strokeColor=#000000;fillColor=none;startArrow=none;startFill=0;startSize=6;endArrow=block;endFill=1;endSize=6;rounded=0;gliffyId=73;exitX=1.0;exitY=0.5;exitPerimeter=0;entryX=0.0;entryY=0.7071067690849304;entryPerimeter=0;" parent="1" source="10" target="41" edge="1">
  43. <mxGeometry width="100" height="100" relative="1" as="geometry">
  44. <Array as="points">
  45. <mxPoint x="665" y="348.25" />
  46. <mxPoint x="713.6599731445312" y="244.7830047607422" />
  47. </Array>
  48. </mxGeometry>
  49. </mxCell>
  50. <mxCell id="12" style="shape=filledEdge;strokeWidth=2;strokeColor=#000000;fillColor=none;startArrow=none;startFill=0;startSize=6;endArrow=block;endFill=1;endSize=6;rounded=0;gliffyId=88;exitX=1.0;exitY=0.5;exitPerimeter=0;entryX=0.0;entryY=0.5;entryPerimeter=0;" parent="1" source="37" target="54" edge="1">
  51. <mxGeometry width="100" height="100" relative="1" as="geometry">
  52. <Array as="points">
  53. <mxPoint x="250" y="169.875" />
  54. <mxPoint x="565" y="169.75" />
  55. </Array>
  56. </mxGeometry>
  57. </mxCell>
  58. <mxCell id="13" value="&lt;div style=&#39;width: 93.0px;height:auto;word-break: break-word;&#39;&gt;&lt;div align=&quot;center&quot;&gt;&lt;span style=&quot;font-size: 12px; font-family: Arial; white-space: pre-wrap; text-decoration: none; line-height: 14px; color: rgb(0, 0, 0);&quot;&gt;Solve Position Constraints, &lt;/span&gt;&lt;/div&gt;&lt;div align=&quot;center&quot;&gt;&lt;span style=&quot;font-size: 12px; font-family: Arial; white-space: pre-wrap; text-decoration: none; line-height: 14px; color: rgb(0, 0, 0);&quot;&gt;Update Bodies Broadphase &lt;/span&gt;&lt;/div&gt;&lt;div align=&quot;center&quot;&gt;&lt;span style=&quot;font-size: 12px; font-family: Arial; white-space: pre-wrap; text-decoration: none; line-height: 14px; color: rgb(0, 0, 0);&quot;&gt;(per island)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;" style="shape=rect;shadow=0;strokeWidth=2;fillColor=#fff2cc;strokeColor=#333333;opacity=100.0;html=1;nl2Br=0;verticalAlign=middle;align=center;spacingLeft=2.0;spacingRight=0;whiteSpace=wrap;gliffyId=96;" parent="1" vertex="1">
  59. <mxGeometry x="1456.2425537109375" y="136.25" width="100" height="92" as="geometry" />
  60. </mxCell>
  61. <mxCell id="14" style="shape=ellipse;perimeter=ellipsePerimeter;shadow=0;strokeWidth=2;fillColor=#000000;strokeColor=#333333;opacity=100.0;gliffyId=100;" parent="1" vertex="1">
  62. <mxGeometry x="2210.0025537109377" y="332.7" width="15" height="15" as="geometry" />
  63. </mxCell>
  64. <mxCell id="15" style="shape=filledEdge;strokeWidth=2;strokeColor=#000000;fillColor=none;startArrow=none;startFill=0;startSize=6;endArrow=block;endFill=1;endSize=6;rounded=0;gliffyId=114;exitX=1.0;exitY=0.5;exitPerimeter=0;entryX=1.1102230246251565E-16;entryY=0.2928932309150696;entryPerimeter=0;" parent="1" source="77" target="71" edge="1">
  65. <mxGeometry width="100" height="100" relative="1" as="geometry">
  66. <Array as="points">
  67. <mxPoint x="310.5" y="349" />
  68. <mxPoint x="359.5240478515625" y="477.4320068359375" />
  69. </Array>
  70. </mxGeometry>
  71. </mxCell>
  72. <mxCell id="16" style="shape=filledEdge;strokeWidth=2;strokeColor=#000000;fillColor=none;startArrow=none;startFill=0;startSize=6;endArrow=block;endFill=1;endSize=6;rounded=0;gliffyId=117;exitX=1.0;exitY=0.5;exitPerimeter=0;entryX=0.0;entryY=0.5;entryPerimeter=0;" parent="1" source="8" target="41" edge="1">
  73. <mxGeometry width="100" height="100" relative="1" as="geometry">
  74. <Array as="points">
  75. <mxPoint x="460.33001708984375" y="228.625" />
  76. <mxPoint x="713.6600341796875" y="229.25" />
  77. </Array>
  78. </mxGeometry>
  79. </mxCell>
  80. <mxCell id="17" style="shape=filledEdge;strokeWidth=2;strokeColor=#000000;fillColor=none;startArrow=none;startFill=0;startSize=6;endArrow=block;endFill=1;endSize=6;rounded=0;gliffyId=120;exitX=1.0;exitY=0.5;exitPerimeter=0;entryX=0.0;entryY=0.7071067690849304;entryPerimeter=0;" parent="1" source="41" target="9" edge="1">
  81. <mxGeometry width="100" height="100" relative="1" as="geometry">
  82. <Array as="points">
  83. <mxPoint x="813.6599731445312" y="229.25" />
  84. <mxPoint x="848" y="197.28302001953125" />
  85. </Array>
  86. </mxGeometry>
  87. </mxCell>
  88. <mxCell id="18" style="shape=filledEdge;strokeWidth=2;strokeColor=#000000;fillColor=none;startArrow=none;startFill=0;startSize=6;endArrow=block;endFill=1;endSize=6;rounded=0;dashed=1;fixDash=1;dashPattern=2.0 2.0;gliffyId=123;exitX=1.0;exitY=0.5;exitPerimeter=0;entryX=0.0;entryY=0.5;entryPerimeter=0;" parent="1" source="117" target="86" edge="1">
  89. <mxGeometry width="100" height="100" relative="1" as="geometry">
  90. <Array as="points">
  91. <mxPoint x="1184.232421875" y="180.75" />
  92. <mxPoint x="1208.242431640625" y="181.25" />
  93. </Array>
  94. </mxGeometry>
  95. </mxCell>
  96. <mxCell id="20" style="shape=filledEdge;strokeWidth=2;strokeColor=#000000;fillColor=none;startArrow=none;startFill=0;startSize=6;endArrow=block;endFill=1;endSize=6;rounded=0;gliffyId=135;exitX=1.0;exitY=0.5;exitPerimeter=0;entryX=0.0;entryY=0.5;entryPerimeter=0;" parent="1" source="112" target="77" edge="1">
  97. <mxGeometry width="100" height="100" relative="1" as="geometry">
  98. <Array as="points">
  99. <mxPoint x="182.5" y="413.80303955078125" />
  100. <mxPoint x="210.5" y="349" />
  101. </Array>
  102. </mxGeometry>
  103. </mxCell>
  104. <mxCell id="21" style="shape=filledEdge;strokeWidth=2;strokeColor=#000000;fillColor=none;startArrow=none;startFill=0;startSize=6;endArrow=block;endFill=1;endSize=6;rounded=0;gliffyId=139;exitX=1.0;exitY=0.5;exitPerimeter=0;entryX=0.0;entryY=0.5;entryPerimeter=0;" parent="1" source="66" target="10" edge="1">
  105. <mxGeometry width="100" height="100" relative="1" as="geometry">
  106. <Array as="points">
  107. <mxPoint x="459.5240478515625" y="349" />
  108. <mxPoint x="565" y="348.25" />
  109. </Array>
  110. </mxGeometry>
  111. </mxCell>
  112. <mxCell id="22" value="&lt;div style=&#39;width: 141.96px;height:auto;word-break: break-word;&#39;&gt;&lt;div align=&quot;center&quot;&gt;&lt;span style=&quot;font-size: 12px; font-family: Arial; white-space: pre-wrap; text-decoration: none; line-height: 14px; color: rgb(0, 0, 0);&quot;&gt;Set Body Island Idx&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;" style="shape=rect;shadow=0;strokeWidth=2;fillColor=#ffffff;strokeColor=#333333;opacity=100.0;html=1;nl2Br=0;verticalAlign=middle;align=center;spacingLeft=3.02;spacingRight=0;whiteSpace=wrap;gliffyId=152;" parent="1" vertex="1">
  113. <mxGeometry x="1399.9999731445314" y="436.7460791015625" width="151" height="65.1060791015625" as="geometry" />
  114. </mxCell>
  115. <mxCell id="23" style="shape=filledEdge;strokeWidth=2;strokeColor=#000000;fillColor=none;startArrow=none;startFill=0;startSize=6;endArrow=block;endFill=1;endSize=6;rounded=0;gliffyId=154;exitX=1.0;exitY=0.5;exitPerimeter=0;entryX=0.0;entryY=0.5;entryPerimeter=0;" parent="1" source="10" target="22" edge="1">
  116. <mxGeometry width="100" height="100" relative="1" as="geometry">
  117. <Array as="points">
  118. <mxPoint x="665" y="348.25" />
  119. <mxPoint x="713.6600341796875" y="469.15911865234375" />
  120. </Array>
  121. </mxGeometry>
  122. </mxCell>
  123. <mxCell id="24" style="shape=filledEdge;strokeWidth=2;strokeColor=#000000;fillColor=none;startArrow=none;startFill=0;startSize=6;endArrow=block;endFill=1;endSize=6;rounded=0;gliffyId=155;edgeStyle=orthogonalEdgeStyle;entryX=0;entryY=0.5;entryDx=0;entryDy=0;" parent="1" source="22" target="2HlbSkl1Hx2XcQlONuJN-122" edge="1">
  124. <mxGeometry width="100" height="100" relative="1" as="geometry">
  125. <Array as="points">
  126. <mxPoint x="1580" y="469" />
  127. <mxPoint x="1580" y="340" />
  128. </Array>
  129. </mxGeometry>
  130. </mxCell>
  131. <mxCell id="26" style="shape=filledEdge;strokeWidth=2;strokeColor=#000000;fillColor=none;startArrow=none;startFill=0;startSize=6;endArrow=block;endFill=1;endSize=6;rounded=0;gliffyId=171;edgeStyle=orthogonalEdgeStyle;exitX=1;exitY=0.5;exitDx=0;exitDy=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;" parent="1" source="13" target="2HlbSkl1Hx2XcQlONuJN-122" edge="1">
  132. <mxGeometry width="100" height="100" relative="1" as="geometry">
  133. <Array as="points">
  134. <mxPoint x="1580" y="182" />
  135. <mxPoint x="1580" y="340" />
  136. </Array>
  137. <mxPoint x="1623.1999999999998" y="182.2862958122704" as="sourcePoint" />
  138. </mxGeometry>
  139. </mxCell>
  140. <mxCell id="28" value="&lt;div style=&#39;width: 13.32px;height:auto;word-break: break-word;&#39;&gt;&lt;div align=&quot;center&quot;&gt;&lt;span style=&quot;font-size: 12px; font-family: Arial; white-space: pre-wrap; text-decoration: none; line-height: 14px; color: rgb(0, 0, 0);&quot;&gt;P&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;" style="shape=rect;shadow=0;strokeWidth=2;fillColor=#00ff00;strokeColor=#333333;gradientColor=#AAFFAA;gradientDirection=north;opacity=100.0;html=1;nl2Br=0;verticalAlign=middle;align=center;spacingLeft=0.34;spacingRight=0;whiteSpace=wrap;gliffyId=191;" parent="1" vertex="1">
  141. <mxGeometry x="23.5" y="12" width="17" height="17" as="geometry" />
  142. </mxCell>
  143. <mxCell id="29" value="&lt;div style=&#39;width: 13.32px;height:auto;word-break: break-word;&#39;&gt;&lt;div align=&quot;center&quot;&gt;&lt;span style=&quot;font-size: 12px; font-family: Arial; white-space: pre-wrap; text-decoration: none; line-height: 14px; color: rgb(0, 0, 0);&quot;&gt;V&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;" style="shape=rect;shadow=0;strokeWidth=2;fillColor=#00ff00;strokeColor=#333333;gradientColor=#AAFFAA;gradientDirection=north;opacity=100.0;html=1;nl2Br=0;verticalAlign=middle;align=center;spacingLeft=0.34;spacingRight=0;whiteSpace=wrap;gliffyId=194;" parent="1" vertex="1">
  144. <mxGeometry x="23.5" y="46" width="17" height="17" as="geometry" />
  145. </mxCell>
  146. <mxCell id="30" value="&lt;div style=&#39;width: 13.32px;height:auto;word-break: break-word;&#39;&gt;&lt;div align=&quot;center&quot;&gt;&lt;span style=&quot;font-size: 12px; font-family: Arial; white-space: pre-wrap; text-decoration: none; line-height: 14px; color: rgb(0, 0, 0);&quot;&gt;P&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;" style="shape=rect;shadow=0;strokeWidth=2;fillColor=#ff0000;strokeColor=#333333;gradientColor=#FFAAAA;gradientDirection=north;opacity=100.0;html=1;nl2Br=0;verticalAlign=middle;align=center;spacingLeft=0.34;spacingRight=0;whiteSpace=wrap;gliffyId=200;" parent="1" vertex="1">
  147. <mxGeometry x="23.5" y="29" width="17" height="17" as="geometry" />
  148. </mxCell>
  149. <mxCell id="31" value="&lt;div style=&#39;width: 13.32px;height:auto;word-break: break-word;&#39;&gt;&lt;div align=&quot;center&quot;&gt;&lt;span style=&quot;font-size: 12px; font-family: Arial; white-space: pre-wrap; text-decoration: none; line-height: 14px; color: rgb(0, 0, 0);&quot;&gt;V&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;" style="shape=rect;shadow=0;strokeWidth=2;fillColor=#ff0000;strokeColor=#333333;gradientColor=#FFAAAA;gradientDirection=north;opacity=100.0;html=1;nl2Br=0;verticalAlign=middle;align=center;spacingLeft=0.34;spacingRight=0;whiteSpace=wrap;gliffyId=198;" parent="1" vertex="1">
  150. <mxGeometry x="23.5" y="63" width="17" height="17" as="geometry" />
  151. </mxCell>
  152. <mxCell id="32" value="&lt;div style=&#39;width: 147.0px;height:auto;word-break: break-word;&#39;&gt;&lt;div align=&quot;left&quot;&gt;&lt;span style=&quot;font-size: 12px; font-family: Arial; white-space: pre-wrap; text-decoration: none; line-height: 14px; color: rgb(0, 0, 0);&quot;&gt;Read position&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;" style="text;html=1;nl2Br=0;html=1;nl2Br=0;verticalAlign=middle;align=left;spacingLeft=0.0;spacingRight=0;whiteSpace=wrap;gliffyId=205;" parent="1" vertex="1">
  153. <mxGeometry x="46.15999984741211" y="14" width="150" height="14" as="geometry" />
  154. </mxCell>
  155. <mxCell id="33" value="&lt;div style=&#39;width: 147.0px;height:auto;word-break: break-word;&#39;&gt;&lt;div align=&quot;left&quot;&gt;&lt;span style=&quot;font-size: 12px; font-family: Arial; white-space: pre-wrap; text-decoration: none; line-height: 14px; color: rgb(0, 0, 0);&quot;&gt;Read/write position&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;" style="text;html=1;nl2Br=0;html=1;nl2Br=0;verticalAlign=middle;align=left;spacingLeft=0.0;spacingRight=0;whiteSpace=wrap;gliffyId=206;" parent="1" vertex="1">
  156. <mxGeometry x="46.15999984741211" y="30.5" width="150" height="14" as="geometry" />
  157. </mxCell>
  158. <mxCell id="34" value="&lt;div style=&#39;width: 147.0px;height:auto;word-break: break-word;&#39;&gt;&lt;div align=&quot;left&quot;&gt;&lt;span style=&quot;font-size: 12px; font-family: Arial; white-space: pre-wrap; text-decoration: none; line-height: 14px; color: rgb(0, 0, 0);&quot;&gt;Read velocity&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;" style="text;html=1;nl2Br=0;html=1;nl2Br=0;verticalAlign=middle;align=left;spacingLeft=0.0;spacingRight=0;whiteSpace=wrap;gliffyId=207;" parent="1" vertex="1">
  159. <mxGeometry x="44.15999984741211" y="47.5" width="150" height="14" as="geometry" />
  160. </mxCell>
  161. <mxCell id="35" value="&lt;div style=&#39;width: 147.0px;height:auto;word-break: break-word;&#39;&gt;&lt;div align=&quot;left&quot;&gt;&lt;span style=&quot;font-size: 12px; font-family: Arial; white-space: pre-wrap; text-decoration: none; line-height: 14px; color: rgb(0, 0, 0);&quot;&gt;Read/write velocity&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;" style="text;html=1;nl2Br=0;html=1;nl2Br=0;verticalAlign=middle;align=left;spacingLeft=0.0;spacingRight=0;whiteSpace=wrap;gliffyId=208;" parent="1" vertex="1">
  162. <mxGeometry x="44.15999984741211" y="63" width="150" height="14" as="geometry" />
  163. </mxCell>
  164. <mxCell id="36" style="group;gliffyId=598;" parent="1" vertex="1">
  165. <mxGeometry x="150" y="135.75" width="100" height="85.25" as="geometry" />
  166. </mxCell>
  167. <mxCell id="37" value="&lt;div style=&#39;width: 93.0px;height:auto;word-break: break-word;&#39;&gt;&lt;div align=&quot;center&quot;&gt;&lt;span style=&quot;font-size: 12px; font-family: Arial; white-space: pre-wrap; text-decoration: none; line-height: 14px; color: rgb(0, 0, 0);&quot;&gt;Broad Phase Update Prepare&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;" style="shape=rect;shadow=0;strokeWidth=2;fillColor=#ffffff;strokeColor=#333333;opacity=100.0;html=1;nl2Br=0;verticalAlign=middle;align=center;spacingLeft=2.0;spacingRight=0;whiteSpace=wrap;gliffyId=0;" parent="36" vertex="1">
  168. <mxGeometry width="100" height="68.25" as="geometry" />
  169. </mxCell>
  170. <mxCell id="38" value="&lt;div style=&#39;width: 13.32px;height:auto;word-break: break-word;&#39;&gt;&lt;div align=&quot;center&quot;&gt;&lt;span style=&quot;font-size: 12px; font-family: Arial; white-space: pre-wrap; text-decoration: none; line-height: 14px; color: rgb(0, 0, 0);&quot;&gt;P&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;" style="shape=rect;shadow=0;strokeWidth=2;fillColor=#00ff00;strokeColor=#333333;gradientColor=#AAFFAA;gradientDirection=north;opacity=100.0;html=1;nl2Br=0;verticalAlign=middle;align=center;spacingLeft=0.34;spacingRight=0;whiteSpace=wrap;gliffyId=211;" parent="36" vertex="1">
  171. <mxGeometry x="0.6359397172927856" y="68.25" width="17" height="17" as="geometry" />
  172. </mxCell>
  173. <mxCell id="39" value="&lt;div style=&#39;width: 13.32px;height:auto;word-break: break-word;&#39;&gt;&lt;div align=&quot;center&quot;&gt;&lt;span style=&quot;font-size: 12px; font-family: Arial; white-space: pre-wrap; text-decoration: none; line-height: 14px; color: rgb(0, 0, 0);&quot;&gt;P&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;" style="shape=rect;shadow=0;strokeWidth=2;fillColor=#00ff00;strokeColor=#333333;gradientColor=#AAFFAA;gradientDirection=north;opacity=100.0;html=1;nl2Br=0;verticalAlign=middle;align=center;spacingLeft=0.34;spacingRight=0;whiteSpace=wrap;gliffyId=213;" parent="1" vertex="1">
  174. <mxGeometry x="360.3299865722656" y="260.5" width="17" height="17" as="geometry" />
  175. </mxCell>
  176. <mxCell id="40" style="group;gliffyId=596;" parent="1" vertex="1">
  177. <mxGeometry x="713.6599731445312" y="191.75" width="100" height="92" as="geometry" />
  178. </mxCell>
  179. <mxCell id="41" value="&lt;div style=&#39;width: 93.0px;height:auto;word-break: break-word;&#39;&gt;&lt;div align=&quot;center&quot;&gt;&lt;span style=&quot;font-size: 12px; font-family: Arial; white-space: pre-wrap; text-decoration: none; line-height: 14px; color: rgb(0, 0, 0);&quot;&gt;Solve Velocity Constraints &lt;/span&gt;&lt;/div&gt;&lt;div align=&quot;center&quot;&gt;&lt;span style=&quot;font-size: 12px; font-family: Arial; white-space: pre-wrap; text-decoration: none; line-height: 14px; color: rgb(0, 0, 0);&quot;&gt;(per island)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;" style="shape=rect;shadow=0;strokeWidth=2;fillColor=#fff2cc;strokeColor=#333333;opacity=100.0;html=1;nl2Br=0;verticalAlign=middle;align=center;spacingLeft=2.0;spacingRight=0;whiteSpace=wrap;gliffyId=44;" parent="40" vertex="1">
  180. <mxGeometry width="100" height="75" as="geometry" />
  181. </mxCell>
  182. <mxCell id="42" value="&lt;div style=&#39;width: 13.32px;height:auto;word-break: break-word;&#39;&gt;&lt;div align=&quot;center&quot;&gt;&lt;span style=&quot;font-size: 12px; font-family: Arial; white-space: pre-wrap; text-decoration: none; line-height: 14px; color: rgb(0, 0, 0);&quot;&gt;V&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;" style="shape=rect;shadow=0;strokeWidth=2;fillColor=#ff0000;strokeColor=#333333;gradientColor=#FFAAAA;gradientDirection=north;opacity=100.0;html=1;nl2Br=0;verticalAlign=middle;align=center;spacingLeft=0.34;spacingRight=0;whiteSpace=wrap;gliffyId=226;" parent="40" vertex="1">
  183. <mxGeometry x="18.65999984741211" y="75" width="17" height="17" as="geometry" />
  184. </mxCell>
  185. <mxCell id="43" value="&lt;div style=&#39;width: 13.32px;height:auto;word-break: break-word;&#39;&gt;&lt;div align=&quot;center&quot;&gt;&lt;span style=&quot;font-size: 12px; font-family: Arial; white-space: pre-wrap; text-decoration: none; line-height: 14px; color: rgb(0, 0, 0);&quot;&gt;P&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;" style="shape=rect;shadow=0;strokeWidth=2;fillColor=#00ff00;strokeColor=#333333;gradientColor=#AAFFAA;gradientDirection=north;opacity=100.0;html=1;nl2Br=0;verticalAlign=middle;align=center;spacingLeft=0.34;spacingRight=0;whiteSpace=wrap;gliffyId=224;" parent="40" vertex="1">
  186. <mxGeometry x="1.1368683772161603e-13" y="75" width="17" height="17" as="geometry" />
  187. </mxCell>
  188. <mxCell id="48" value="&lt;div style=&#39;width: 13.32px;height:auto;word-break: break-word;&#39;&gt;&lt;div align=&quot;center&quot;&gt;&lt;span style=&quot;font-size: 12px; font-family: Arial; white-space: pre-wrap; text-decoration: none; line-height: 14px; color: rgb(0, 0, 0);&quot;&gt;V&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;" style="shape=rect;shadow=0;strokeWidth=2;fillColor=#ff0000;strokeColor=#333333;gradientColor=#FFAAAA;gradientDirection=north;opacity=100.0;html=1;nl2Br=0;verticalAlign=middle;align=center;spacingLeft=0.34;spacingRight=0;whiteSpace=wrap;gliffyId=240;" parent="1" vertex="1">
  189. <mxGeometry x="228.52406311035156" y="523.5" width="17" height="17" as="geometry" />
  190. </mxCell>
  191. <mxCell id="49" value="&lt;div style=&#39;width: 13.32px;height:auto;word-break: break-word;&#39;&gt;&lt;div align=&quot;center&quot;&gt;&lt;span style=&quot;font-size: 12px; font-family: Arial; white-space: pre-wrap; text-decoration: none; line-height: 14px; color: rgb(0, 0, 0);&quot;&gt;P&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;" style="shape=rect;shadow=0;strokeWidth=2;fillColor=#00ff00;strokeColor=#333333;gradientColor=#AAFFAA;gradientDirection=north;opacity=100.0;html=1;nl2Br=0;verticalAlign=middle;align=center;spacingLeft=0.34;spacingRight=0;whiteSpace=wrap;gliffyId=238;" parent="1" vertex="1">
  192. <mxGeometry x="209.8640594482422" y="523.5" width="17" height="17" as="geometry" />
  193. </mxCell>
  194. <mxCell id="50" value="&lt;div style=&#39;width: 13.32px;height:auto;word-break: break-word;&#39;&gt;&lt;div align=&quot;center&quot;&gt;&lt;span style=&quot;font-size: 12px; font-family: Arial; white-space: pre-wrap; text-decoration: none; line-height: 14px; color: rgb(0, 0, 0);&quot;&gt;V&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;" style="shape=rect;shadow=0;strokeWidth=2;fillColor=#ff0000;strokeColor=#333333;gradientColor=#FFAAAA;gradientDirection=north;opacity=100.0;html=1;nl2Br=0;verticalAlign=middle;align=center;spacingLeft=0.34;spacingRight=0;whiteSpace=wrap;gliffyId=258;" parent="1" vertex="1">
  195. <mxGeometry x="984.6599731445312" y="219.75" width="17" height="17" as="geometry" />
  196. </mxCell>
  197. <mxCell id="51" value="&lt;div style=&#39;width: 13.32px;height:auto;word-break: break-word;&#39;&gt;&lt;div align=&quot;center&quot;&gt;&lt;span style=&quot;font-size: 12px; font-family: Arial; white-space: pre-wrap; text-decoration: none; line-height: 14px; color: rgb(0, 0, 0);&quot;&gt;P&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;" style="shape=rect;shadow=0;strokeWidth=2;fillColor=#ff0000;strokeColor=#333333;gradientColor=#FFAAAA;gradientDirection=north;opacity=100.0;html=1;nl2Br=0;verticalAlign=middle;align=center;spacingLeft=0.34;spacingRight=0;whiteSpace=wrap;gliffyId=256;" parent="1" vertex="1">
  198. <mxGeometry x="966" y="219.75" width="17" height="17" as="geometry" />
  199. </mxCell>
  200. <mxCell id="52" value="&lt;div style=&#39;width: 13.32px;height:auto;word-break: break-word;&#39;&gt;&lt;div align=&quot;center&quot;&gt;&lt;span style=&quot;font-size: 12px; font-family: Arial; white-space: pre-wrap; text-decoration: none; line-height: 14px; color: rgb(0, 0, 0);&quot;&gt;P&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;" style="shape=rect;shadow=0;strokeWidth=2;fillColor=#ff0000;strokeColor=#333333;gradientColor=#FFAAAA;gradientDirection=north;opacity=100.0;html=1;nl2Br=0;verticalAlign=middle;align=center;spacingLeft=0.34;spacingRight=0;whiteSpace=wrap;gliffyId=270;" parent="1" vertex="1">
  201. <mxGeometry x="1456.2425537109375" y="228.25" width="17" height="17" as="geometry" />
  202. </mxCell>
  203. <mxCell id="53" style="shape=filledEdge;strokeWidth=2;strokeColor=#000000;fillColor=none;startArrow=none;startFill=0;startSize=6;endArrow=block;endFill=1;endSize=6;rounded=0;gliffyId=295;exitX=1.0;exitY=0.5;exitPerimeter=0;entryX=0.0;entryY=0.5;entryPerimeter=0;" parent="1" source="4" target="71" edge="1">
  204. <mxGeometry width="100" height="100" relative="1" as="geometry">
  205. <Array as="points">
  206. <mxPoint x="309.86407470703125" y="490.94696044921875" />
  207. <mxPoint x="359.5240783691406" y="490.8939208984375" />
  208. </Array>
  209. </mxGeometry>
  210. </mxCell>
  211. <mxCell id="54" value="&lt;div style=&#39;width: 93.0px;height:auto;word-break: break-word;&#39;&gt;&lt;div align=&quot;center&quot;&gt;&lt;span style=&quot;font-size: 12px; font-family: Arial; white-space: pre-wrap; text-decoration: none; line-height: 14px; color: rgb(0, 0, 0);&quot;&gt;Broad Phase Update Finalize&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;" style="shape=rect;shadow=0;strokeWidth=2;fillColor=#ffffff;strokeColor=#333333;opacity=100.0;html=1;nl2Br=0;verticalAlign=middle;align=center;spacingLeft=2.0;spacingRight=0;whiteSpace=wrap;gliffyId=296;" parent="1" vertex="1">
  212. <mxGeometry x="565" y="132.25" width="100" height="75" as="geometry" />
  213. </mxCell>
  214. <mxCell id="55" style="shape=filledEdge;strokeWidth=2;strokeColor=#000000;fillColor=none;startArrow=none;startFill=0;startSize=6;endArrow=block;endFill=1;endSize=6;rounded=0;gliffyId=298;exitX=1.0;exitY=0.7071067690849304;exitPerimeter=0;entryX=0.0;entryY=0.7071067690849304;entryPerimeter=0;" parent="1" source="71" target="54" edge="1">
  215. <mxGeometry width="100" height="100" relative="1" as="geometry">
  216. <Array as="points">
  217. <mxPoint x="459.5240478515625" y="504.3558654785156" />
  218. <mxPoint x="565" y="185.2830047607422" />
  219. </Array>
  220. </mxGeometry>
  221. </mxCell>
  222. <mxCell id="56" style="shape=filledEdge;strokeWidth=2;strokeColor=#000000;fillColor=none;startArrow=none;startFill=0;startSize=6;endArrow=block;endFill=1;endSize=6;rounded=0;gliffyId=299;exitX=1.0;exitY=0.5;exitPerimeter=0;entryX=0.0;entryY=0.5;entryPerimeter=0;" parent="1" source="54" target="9" edge="1">
  223. <mxGeometry width="100" height="100" relative="1" as="geometry">
  224. <Array as="points">
  225. <mxPoint x="665" y="169.75" />
  226. <mxPoint x="848" y="181.75" />
  227. </Array>
  228. </mxGeometry>
  229. </mxCell>
  230. <mxCell id="57" value="&lt;div style=&#39;width: 93.0px;height:auto;word-break: break-word;&#39;&gt;&lt;div align=&quot;center&quot;&gt;&lt;span style=&quot;font-size: 12px; font-family: Arial; white-space: pre-wrap; text-decoration: none; line-height: 14px; color: rgb(0, 0, 0);&quot;&gt;Start Next Step&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;" style="shape=rect;shadow=0;strokeWidth=2;fillColor=#ffffff;strokeColor=#333333;opacity=100.0;html=1;nl2Br=0;verticalAlign=middle;align=center;spacingLeft=2.0;spacingRight=0;whiteSpace=wrap;gliffyId=311;" parent="1" vertex="1">
  231. <mxGeometry x="1979.997548828125" y="531" width="100" height="37.3939208984375" as="geometry" />
  232. </mxCell>
  233. <mxCell id="58" style="shape=filledEdge;strokeWidth=2;strokeColor=#000000;fillColor=none;startArrow=none;startFill=0;startSize=6;endArrow=block;endFill=1;endSize=6;rounded=0;gliffyId=313;exitX=1.0;exitY=0.5;exitPerimeter=0;entryX=0.0;entryY=0.5;entryPerimeter=0;" parent="1" source="104" target="14" edge="1">
  234. <mxGeometry width="100" height="100" relative="1" as="geometry">
  235. <Array as="points">
  236. <mxPoint x="2147.252431640625" y="340.8" />
  237. </Array>
  238. </mxGeometry>
  239. </mxCell>
  240. <mxCell id="59" value="&lt;div style=&#39;width: 178.16px;height:auto;word-break: break-word;&#39;&gt;&lt;div align=&quot;left&quot;&gt;&lt;span style=&quot;font-size: 12px; font-family: Arial; white-space: pre-wrap; line-height: 14px; color: rgb(0, 0, 0);&quot;&gt;Repeat CollisionStep Times&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;" style="text;html=1;nl2Br=0;html=1;nl2Br=0;verticalAlign=middle;align=left;spacingLeft=0.0;spacingRight=0;whiteSpace=wrap;gliffyId=323;" parent="1" vertex="1">
  241. <mxGeometry x="148" y="101.75" width="181.16000366210938" height="14" as="geometry" />
  242. </mxCell>
  243. <mxCell id="60" style="shape=filledEdge;strokeWidth=2;strokeColor=#000000;fillColor=none;startArrow=none;startFill=0;startSize=6;endArrow=block;endFill=1;endSize=6;rounded=0;gliffyId=327;edgeStyle=orthogonalEdgeStyle;" parent="1" source="57" target="5" edge="1">
  244. <mxGeometry width="100" height="100" relative="1" as="geometry">
  245. <Array as="points">
  246. <mxPoint x="42" y="550" />
  247. </Array>
  248. </mxGeometry>
  249. </mxCell>
  250. <mxCell id="61" value="&lt;div style=&#39;width: 13.32px;height:auto;word-break: break-word;&#39;&gt;&lt;div align=&quot;center&quot;&gt;&lt;span style=&quot;font-size: 12px; font-family: Arial; white-space: pre-wrap; text-decoration: none; line-height: 14px; color: rgb(0, 0, 0);&quot;&gt;A&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;" style="shape=rect;shadow=0;strokeWidth=2;fillColor=#00ff00;strokeColor=#333333;gradientColor=#AAFFAA;gradientDirection=north;opacity=100.0;html=1;nl2Br=0;verticalAlign=middle;align=center;spacingLeft=0.34;spacingRight=0;whiteSpace=wrap;gliffyId=343;" parent="1" vertex="1">
  251. <mxGeometry x="181.5" y="12" width="17" height="17" as="geometry" />
  252. </mxCell>
  253. <mxCell id="62" value="&lt;div style=&#39;width: 13.32px;height:auto;word-break: break-word;&#39;&gt;&lt;div align=&quot;center&quot;&gt;&lt;span style=&quot;font-size: 12px; font-family: Arial; white-space: pre-wrap; text-decoration: none; line-height: 14px; color: rgb(0, 0, 0);&quot;&gt;A&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;" style="shape=rect;shadow=0;strokeWidth=2;fillColor=#ff0000;strokeColor=#333333;gradientColor=#FFAAAA;gradientDirection=north;opacity=100.0;html=1;nl2Br=0;verticalAlign=middle;align=center;spacingLeft=0.34;spacingRight=0;whiteSpace=wrap;gliffyId=341;" parent="1" vertex="1">
  254. <mxGeometry x="181.8640594482422" y="47.5" width="17" height="17" as="geometry" />
  255. </mxCell>
  256. <mxCell id="63" value="&lt;div style=&#39;width: 147.0px;height:auto;word-break: break-word;&#39;&gt;&lt;div align=&quot;left&quot;&gt;&lt;span style=&quot;font-size: 12px; font-family: Arial; white-space: pre-wrap; text-decoration: none; line-height: 14px; color: rgb(0, 0, 0);&quot;&gt;Reads active bodies&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;" style="text;html=1;nl2Br=0;html=1;nl2Br=0;verticalAlign=middle;align=left;spacingLeft=0.0;spacingRight=0;whiteSpace=wrap;gliffyId=340;" parent="1" vertex="1">
  257. <mxGeometry x="205.16000366210938" y="14" width="150" height="14" as="geometry" />
  258. </mxCell>
  259. <mxCell id="64" value="&lt;div style=&#39;width: 147.0px;height:auto;word-break: break-word;&#39;&gt;&lt;div align=&quot;left&quot;&gt;&lt;span style=&quot;font-size: 12px; font-family: Arial; white-space: pre-wrap; text-decoration: none; line-height: 14px; color: rgb(0, 0, 0);&quot;&gt;Deactivates bodies&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;" style="text;html=1;nl2Br=0;html=1;nl2Br=0;verticalAlign=middle;align=left;spacingLeft=0.0;spacingRight=0;whiteSpace=wrap;gliffyId=339;" parent="1" vertex="1">
  260. <mxGeometry x="204.52406311035156" y="49" width="150" height="14" as="geometry" />
  261. </mxCell>
  262. <mxCell id="65" style="group;gliffyId=450;" parent="1" vertex="1">
  263. <mxGeometry x="359.5240478515625" y="319" width="100" height="77" as="geometry" />
  264. </mxCell>
  265. <mxCell id="66" value="&lt;div style=&#39;width: 93.0px;height:auto;word-break: break-word;&#39;&gt;&lt;div align=&quot;center&quot;&gt;&lt;span style=&quot;font-size: 12px; font-family: Arial; white-space: pre-wrap; text-decoration: none; line-height: 14px; color: rgb(0, 0, 0);&quot;&gt;Build Islands from Constraints&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;" style="shape=rect;shadow=0;strokeWidth=2;fillColor=#ffffff;strokeColor=#333333;opacity=100.0;html=1;nl2Br=0;verticalAlign=middle;align=center;spacingLeft=2.0;spacingRight=0;whiteSpace=wrap;gliffyId=133;" parent="65" vertex="1">
  266. <mxGeometry width="100" height="60" as="geometry" />
  267. </mxCell>
  268. <mxCell id="67" value="&lt;div style=&#39;width: 13.32px;height:auto;word-break: break-word;&#39;&gt;&lt;div align=&quot;center&quot;&gt;&lt;span style=&quot;font-size: 12px; font-family: Arial; white-space: pre-wrap; text-decoration: none; line-height: 14px; color: rgb(0, 0, 0);&quot;&gt;P&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;" style="shape=rect;shadow=0;strokeWidth=2;fillColor=#00ff00;strokeColor=#333333;gradientColor=#AAFFAA;gradientDirection=north;opacity=100.0;html=1;nl2Br=0;verticalAlign=middle;align=center;spacingLeft=0.34;spacingRight=0;whiteSpace=wrap;gliffyId=334;" parent="65" vertex="1">
  269. <mxGeometry y="60" width="17" height="17" as="geometry" />
  270. </mxCell>
  271. <mxCell id="68" value="&lt;div style=&#39;width: 13.32px;height:auto;word-break: break-word;&#39;&gt;&lt;div align=&quot;center&quot;&gt;&lt;span style=&quot;font-size: 12px; font-family: Arial; white-space: pre-wrap; text-decoration: none; line-height: 14px; color: rgb(0, 0, 0);&quot;&gt;A&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;" style="shape=rect;shadow=0;strokeWidth=2;fillColor=#ff9900;strokeColor=#333333;gradientColor=#FFFFAA;gradientDirection=north;opacity=100.0;html=1;nl2Br=0;verticalAlign=middle;align=center;spacingLeft=0.34;spacingRight=0;whiteSpace=wrap;gliffyId=346;" parent="65" vertex="1">
  272. <mxGeometry x="18.65999984741211" y="60" width="17" height="17" as="geometry" />
  273. </mxCell>
  274. <mxCell id="69" value="&lt;div style=&#39;width: 13.32px;height:auto;word-break: break-word;&#39;&gt;&lt;div align=&quot;center&quot;&gt;&lt;span style=&quot;font-size: 12px; font-family: Arial; white-space: pre-wrap; text-decoration: none; line-height: 14px; color: rgb(0, 0, 0);&quot;&gt;A&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;" style="shape=rect;shadow=0;strokeWidth=2;fillColor=#ff0000;strokeColor=#333333;gradientColor=#FFAAAA;gradientDirection=north;opacity=100.0;html=1;nl2Br=0;verticalAlign=middle;align=center;spacingLeft=0.34;spacingRight=0;whiteSpace=wrap;gliffyId=350;" parent="1" vertex="1">
  275. <mxGeometry x="1474.9024658203125" y="227.75" width="17" height="17" as="geometry" />
  276. </mxCell>
  277. <mxCell id="70" style="group;gliffyId=555;" parent="1" vertex="1">
  278. <mxGeometry x="359.5240478515625" y="458.3939208984375" width="100" height="82.1060791015625" as="geometry" />
  279. </mxCell>
  280. <mxCell id="71" value="&lt;div style=&#39;width: 93.0px;height:auto;word-break: break-word;&#39;&gt;&lt;div align=&quot;center&quot;&gt;&lt;span style=&quot;font-size: 12px; font-family: Arial; white-space: pre-wrap; text-decoration: none; line-height: 14px; color: rgb(0, 0, 0);&quot;&gt;Find Collisions &lt;/span&gt;&lt;/div&gt;&lt;div align=&quot;center&quot;&gt;&lt;span style=&quot;font-size: 12px; font-family: Arial; white-space: pre-wrap; text-decoration: none; line-height: 14px; color: rgb(0, 0, 0);&quot;&gt;(per batch of active bodies and per pair)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;" style="shape=rect;shadow=0;strokeWidth=2;fillColor=#fff2cc;strokeColor=#333333;opacity=100.0;html=1;nl2Br=0;verticalAlign=middle;align=center;spacingLeft=2.0;spacingRight=0;whiteSpace=wrap;gliffyId=6;" parent="70" vertex="1">
  281. <mxGeometry width="100" height="65" as="geometry" />
  282. </mxCell>
  283. <mxCell id="72" value="&lt;div style=&#39;width: 13.32px;height:auto;word-break: break-word;&#39;&gt;&lt;div align=&quot;center&quot;&gt;&lt;span style=&quot;font-size: 12px; font-family: Arial; white-space: pre-wrap; text-decoration: none; line-height: 14px; color: rgb(0, 0, 0);&quot;&gt;P&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;" style="shape=rect;shadow=0;strokeWidth=2;fillColor=#00ff00;strokeColor=#333333;gradientColor=#AAFFAA;gradientDirection=north;opacity=100.0;html=1;nl2Br=0;verticalAlign=middle;align=center;spacingLeft=0.34;spacingRight=0;whiteSpace=wrap;gliffyId=215;" parent="70" vertex="1">
  284. <mxGeometry y="65.1060791015625" width="17" height="17" as="geometry" />
  285. </mxCell>
  286. <mxCell id="73" value="&lt;div style=&#39;width: 13.32px;height:auto;word-break: break-word;&#39;&gt;&lt;div align=&quot;center&quot;&gt;&lt;span style=&quot;font-size: 12px; font-family: Arial; white-space: pre-wrap; text-decoration: none; line-height: 14px; color: rgb(0, 0, 0);&quot;&gt;V&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;" style="shape=rect;shadow=0;strokeWidth=2;fillColor=#00ff00;strokeColor=#333333;gradientColor=#AAFFAA;gradientDirection=north;opacity=100.0;html=1;nl2Br=0;verticalAlign=middle;align=center;spacingLeft=0.34;spacingRight=0;whiteSpace=wrap;gliffyId=354;" parent="70" vertex="1">
  287. <mxGeometry x="18.65999984741211" y="65.1060791015625" width="17" height="17" as="geometry" />
  288. </mxCell>
  289. <mxCell id="74" value="&lt;div style=&#39;width: 13.32px;height:auto;word-break: break-word;&#39;&gt;&lt;div align=&quot;center&quot;&gt;&lt;span style=&quot;font-size: 12px; font-family: Arial; white-space: pre-wrap; text-decoration: none; line-height: 14px; color: rgb(0, 0, 0);&quot;&gt;A&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;" style="shape=rect;shadow=0;strokeWidth=2;fillColor=#ff9900;strokeColor=#333333;gradientColor=#FFFFAA;gradientDirection=north;opacity=100.0;html=1;nl2Br=0;verticalAlign=middle;align=center;spacingLeft=0.34;spacingRight=0;whiteSpace=wrap;gliffyId=362;" parent="70" vertex="1">
  290. <mxGeometry x="37.31999969482422" y="65" width="17" height="17" as="geometry" />
  291. </mxCell>
  292. <mxCell id="75" style="shape=rect;shadow=0;strokeWidth=2;fillColor=#fff2cc;strokeColor=#333333;opacity=100.0;gliffyId=380;" parent="1" vertex="1">
  293. <mxGeometry x="182.5" y="69.25" width="15.65999984741211" height="15.5" as="geometry" />
  294. </mxCell>
  295. <mxCell id="76" value="&lt;div style=&#39;width: 147.0px;height:auto;word-break: break-word;&#39;&gt;&lt;div align=&quot;left&quot;&gt;&lt;span style=&quot;font-size: 12px; font-family: Arial; white-space: pre-wrap; text-decoration: none; line-height: 14px; color: rgb(0, 0, 0);&quot;&gt;Multiple concurrent jobs&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;" style="text;html=1;nl2Br=0;html=1;nl2Br=0;verticalAlign=middle;align=left;spacingLeft=0.0;spacingRight=0;whiteSpace=wrap;gliffyId=382;" parent="1" vertex="1">
  296. <mxGeometry x="205.3300018310547" y="70.75" width="150" height="14" as="geometry" />
  297. </mxCell>
  298. <mxCell id="77" value="&lt;div style=&#39;width: 93.0px;height:auto;word-break: break-word;&#39;&gt;&lt;div align=&quot;center&quot;&gt;&lt;span style=&quot;font-size: 12px; font-family: Arial; white-space: pre-wrap; text-decoration: none; line-height: 14px; color: rgb(0, 0, 0);&quot;&gt;Determine Active Constraints &lt;/span&gt;&lt;/div&gt;&lt;div align=&quot;center&quot;&gt;&lt;span style=&quot;font-size: 12px; font-family: Arial; white-space: pre-wrap; text-decoration: none; line-height: 14px; color: rgb(0, 0, 0);&quot;&gt;(in batches)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;" style="shape=rect;shadow=0;strokeWidth=2;fillColor=#fff2cc;strokeColor=#333333;opacity=100.0;html=1;nl2Br=0;verticalAlign=middle;align=center;spacingLeft=2.0;spacingRight=0;whiteSpace=wrap;gliffyId=392;" parent="1" vertex="1">
  299. <mxGeometry x="210.5" y="319" width="100" height="60" as="geometry" />
  300. </mxCell>
  301. <mxCell id="78" style="shape=filledEdge;strokeWidth=2;strokeColor=#000000;fillColor=none;startArrow=none;startFill=0;startSize=6;endArrow=block;endFill=1;endSize=6;rounded=0;gliffyId=394;edgeStyle=orthogonalEdgeStyle;" parent="1" source="77" target="66" edge="1">
  302. <mxGeometry width="100" height="100" relative="1" as="geometry">
  303. <Array as="points">
  304. <mxPoint x="310.5" y="349" />
  305. <mxPoint x="326.8413391113281" y="349" />
  306. <mxPoint x="343.1827087402344" y="349" />
  307. <mxPoint x="359.5240478515625" y="349" />
  308. </Array>
  309. </mxGeometry>
  310. </mxCell>
  311. <mxCell id="79" style="shape=filledEdge;strokeWidth=2;strokeColor=#000000;fillColor=none;startArrow=none;startFill=0;startSize=6;endArrow=block;endFill=1;endSize=6;rounded=0;gliffyId=399;exitX=1.0;exitY=0.5;exitPerimeter=0;entryX=0.0;entryY=0.5;entryPerimeter=0;" parent="1" source="77" target="8" edge="1">
  312. <mxGeometry width="100" height="100" relative="1" as="geometry">
  313. <Array as="points">
  314. <mxPoint x="310.5" y="349" />
  315. <mxPoint x="360.3299865722656" y="228.625" />
  316. </Array>
  317. </mxGeometry>
  318. </mxCell>
  319. <mxCell id="80" value="&lt;div style=&#39;width: 13.32px;height:auto;word-break: break-word;&#39;&gt;&lt;div align=&quot;center&quot;&gt;&lt;span style=&quot;font-size: 12px; font-family: Arial; white-space: pre-wrap; text-decoration: none; line-height: 14px; color: rgb(0, 0, 0);&quot;&gt;A&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;" style="shape=rect;shadow=0;strokeWidth=2;fillColor=#ff9900;strokeColor=#333333;gradientColor=#FFFFAA;gradientDirection=north;opacity=100.0;html=1;nl2Br=0;verticalAlign=middle;align=center;spacingLeft=0.34;spacingRight=0;whiteSpace=wrap;gliffyId=438;" parent="1" vertex="1">
  320. <mxGeometry x="181.8640594482422" y="29.5" width="17" height="17" as="geometry" />
  321. </mxCell>
  322. <mxCell id="81" value="&lt;div style=&#39;width: 147.0px;height:auto;word-break: break-word;&#39;&gt;&lt;div align=&quot;left&quot;&gt;&lt;span style=&quot;font-size: 12px; font-family: Arial; white-space: pre-wrap; text-decoration: none; line-height: 14px; color: rgb(0, 0, 0);&quot;&gt;Activates bodies&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;" style="text;html=1;nl2Br=0;html=1;nl2Br=0;verticalAlign=middle;align=left;spacingLeft=0.0;spacingRight=0;whiteSpace=wrap;gliffyId=437;" parent="1" vertex="1">
  323. <mxGeometry x="204.52406311035156" y="31" width="150" height="14" as="geometry" />
  324. </mxCell>
  325. <mxCell id="82" value="&lt;div style=&#39;width: 13.32px;height:auto;word-break: break-word;&#39;&gt;&lt;div align=&quot;center&quot;&gt;&lt;span style=&quot;font-size: 12px; font-family: Arial; white-space: pre-wrap; text-decoration: none; line-height: 14px; color: rgb(0, 0, 0);&quot;&gt;A&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;" style="shape=rect;shadow=0;strokeWidth=2;fillColor=#00ff00;strokeColor=#333333;gradientColor=#AAFFAA;gradientDirection=north;opacity=100.0;html=1;nl2Br=0;verticalAlign=middle;align=center;spacingLeft=0.34;spacingRight=0;whiteSpace=wrap;gliffyId=444;" parent="1" vertex="1">
  326. <mxGeometry x="210.5" y="379" width="17" height="17" as="geometry" />
  327. </mxCell>
  328. <mxCell id="83" style="shape=filledEdge;strokeWidth=2;strokeColor=#000000;fillColor=none;startArrow=none;startFill=0;startSize=6;endArrow=block;endFill=1;endSize=6;rounded=0;gliffyId=468;exitX=1.0;exitY=0.7071067690849304;exitPerimeter=0;entryX=0.0;entryY=0.7071067690849304;entryPerimeter=0;" parent="1" source="71" target="10" edge="1">
  329. <mxGeometry width="100" height="100" relative="1" as="geometry">
  330. <Array as="points">
  331. <mxPoint x="459.5240478515625" y="504.3558654785156" />
  332. <mxPoint x="565" y="361.7339172363281" />
  333. </Array>
  334. </mxGeometry>
  335. </mxCell>
  336. <mxCell id="84" style="shape=filledEdge;strokeWidth=2;strokeColor=#000000;fillColor=none;startArrow=none;startFill=0;startSize=6;endArrow=block;endFill=1;endSize=6;rounded=0;dashed=1;fixDash=1;dashPattern=2.0 2.0;gliffyId=471;edgeStyle=orthogonalEdgeStyle;" parent="1" source="71" target="71" edge="1">
  337. <mxGeometry width="100" height="100" relative="1" as="geometry">
  338. <Array as="points">
  339. <mxPoint x="430.2347412109375" y="458.3939208984375" />
  340. <mxPoint x="430.2347412109375" y="437.8939208984375" />
  341. <mxPoint x="388.8133850097656" y="437.8939208984375" />
  342. <mxPoint x="388.8133850097656" y="458.3939208984375" />
  343. </Array>
  344. </mxGeometry>
  345. </mxCell>
  346. <mxCell id="85" value="&lt;div style=&#39;width: 67.0px;height:auto;word-break: break-word;&#39;&gt;&lt;div align=&quot;left&quot;&gt;&lt;span style=&quot;font-size: 12px; font-family: Arial; white-space: pre-wrap; text-decoration: none; line-height: 14px; color: rgb(0, 0, 0);&quot;&gt;Can spawn &lt;/span&gt;&lt;/div&gt;&lt;div align=&quot;left&quot;&gt;&lt;span style=&quot;font-size: 12px; font-family: Arial; white-space: pre-wrap; text-decoration: none; line-height: 14px; color: rgb(0, 0, 0);&quot;&gt;more jobs&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;" style="text;html=1;nl2Br=0;html=1;nl2Br=0;verticalAlign=middle;align=left;spacingLeft=0.0;spacingRight=0;whiteSpace=wrap;gliffyId=472;" parent="1" vertex="1">
  347. <mxGeometry x="380.5040588378906" y="408.75" width="70" height="28" as="geometry" />
  348. </mxCell>
  349. <mxCell id="86" value="&lt;div style=&#39;width: 93.0px;height:auto;word-break: break-word;&#39;&gt;&lt;div align=&quot;center&quot;&gt;&lt;span style=&quot;font-size: 12px; font-family: Arial; white-space: pre-wrap; text-decoration: none; line-height: 14px; color: rgb(0, 0, 0);&quot;&gt;Find CCD Contacts &lt;/span&gt;&lt;/div&gt;&lt;div align=&quot;center&quot;&gt;&lt;span style=&quot;font-size: 12px; font-family: Arial; white-space: pre-wrap; text-decoration: none; line-height: 14px; color: rgb(0, 0, 0);&quot;&gt;(per body)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;" style="shape=rect;shadow=0;strokeWidth=2;fillColor=#fff2cc;strokeColor=#333333;opacity=100.0;html=1;nl2Br=0;verticalAlign=middle;align=center;spacingLeft=2.0;spacingRight=0;whiteSpace=wrap;gliffyId=484;" parent="1" vertex="1">
  350. <mxGeometry x="1208.2425537109375" y="143.75" width="100" height="75" as="geometry" />
  351. </mxCell>
  352. <mxCell id="87" value="&lt;div style=&#39;width: 93.0px;height:auto;word-break: break-word;&#39;&gt;&lt;div align=&quot;center&quot;&gt;&lt;span style=&quot;font-size: 12px; font-family: Arial; white-space: pre-wrap; text-decoration: none; line-height: 14px; color: rgb(0, 0, 0);&quot;&gt;Resolve CCD Contacts &lt;/span&gt;&lt;/div&gt;&lt;div align=&quot;center&quot;&gt;&lt;span style=&quot;font-size: 12px; font-family: Arial; white-space: pre-wrap; text-decoration: none; line-height: 14px; color: rgb(0, 0, 0);&quot;&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;" style="shape=rect;shadow=0;strokeWidth=2;fillColor=#ffffff;strokeColor=#333333;opacity=100.0;html=1;nl2Br=0;verticalAlign=middle;align=center;spacingLeft=2.0;spacingRight=0;whiteSpace=wrap;gliffyId=486;" parent="1" vertex="1">
  353. <mxGeometry x="1330.2425537109375" y="143.75" width="100" height="75" as="geometry" />
  354. </mxCell>
  355. <mxCell id="88" style="shape=filledEdge;strokeWidth=2;strokeColor=#000000;fillColor=none;startArrow=none;startFill=0;startSize=6;endArrow=block;endFill=1;endSize=6;rounded=0;gliffyId=488;exitX=1.0;exitY=0.5;exitPerimeter=0;entryX=0.0;entryY=0.5;entryPerimeter=0;" parent="1" source="87" target="13" edge="1">
  356. <mxGeometry width="100" height="100" relative="1" as="geometry">
  357. <Array as="points">
  358. <mxPoint x="1430.2425537109375" y="181.25" />
  359. <mxPoint x="1456.2425537109375" y="182.25" />
  360. </Array>
  361. </mxGeometry>
  362. </mxCell>
  363. <mxCell id="89" style="shape=filledEdge;strokeWidth=2;strokeColor=#000000;fillColor=none;startArrow=none;startFill=0;startSize=6;endArrow=block;endFill=1;endSize=6;rounded=0;gliffyId=489;edgeStyle=orthogonalEdgeStyle;" parent="1" source="86" target="87" edge="1">
  364. <mxGeometry width="100" height="100" relative="1" as="geometry">
  365. <Array as="points">
  366. <mxPoint x="1308.2425537109375" y="181.25" />
  367. <mxPoint x="1330.2425537109375" y="181.25" />
  368. </Array>
  369. </mxGeometry>
  370. </mxCell>
  371. <mxCell id="90" style="shape=filledEdge;strokeWidth=2;strokeColor=#000000;fillColor=none;startArrow=none;startFill=0;startSize=6;endArrow=block;endFill=1;endSize=6;rounded=0;dashed=1;fixDash=1;dashPattern=2.0 2.0;gliffyId=490;edgeStyle=orthogonalEdgeStyle;" parent="1" source="117" target="87" edge="1">
  372. <mxGeometry width="100" height="100" relative="1" as="geometry">
  373. <Array as="points">
  374. <mxPoint x="1134.232421875" y="143.25" />
  375. <mxPoint x="1134.232421875" y="125.75" />
  376. <mxPoint x="1380.242431640625" y="125.75" />
  377. <mxPoint x="1380.242431640625" y="143.75" />
  378. </Array>
  379. </mxGeometry>
  380. </mxCell>
  381. <mxCell id="91" value="&lt;div style=&#39;width: 13.32px;height:auto;word-break: break-word;&#39;&gt;&lt;div align=&quot;center&quot;&gt;&lt;span style=&quot;font-size: 12px; font-family: Arial; white-space: pre-wrap; text-decoration: none; line-height: 14px; color: rgb(0, 0, 0);&quot;&gt;V&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;" style="shape=rect;shadow=0;strokeWidth=2;fillColor=#ff0000;strokeColor=#333333;gradientColor=#FFAAAA;gradientDirection=north;opacity=100.0;html=1;nl2Br=0;verticalAlign=middle;align=center;spacingLeft=0.34;spacingRight=0;whiteSpace=wrap;gliffyId=496;" parent="1" vertex="1">
  382. <mxGeometry x="1348.9024658203125" y="218.75" width="17" height="17" as="geometry" />
  383. </mxCell>
  384. <mxCell id="92" value="&lt;div style=&#39;width: 13.32px;height:auto;word-break: break-word;&#39;&gt;&lt;div align=&quot;center&quot;&gt;&lt;span style=&quot;font-size: 12px; font-family: Arial; white-space: pre-wrap; text-decoration: none; line-height: 14px; color: rgb(0, 0, 0);&quot;&gt;P&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;" style="shape=rect;shadow=0;strokeWidth=2;fillColor=#ff0000;strokeColor=#333333;gradientColor=#FFAAAA;gradientDirection=north;opacity=100.0;html=1;nl2Br=0;verticalAlign=middle;align=center;spacingLeft=0.34;spacingRight=0;whiteSpace=wrap;gliffyId=494;" parent="1" vertex="1">
  385. <mxGeometry x="1330.2425537109375" y="218.75" width="17" height="17" as="geometry" />
  386. </mxCell>
  387. <mxCell id="93" value="&lt;div style=&#39;width: 13.32px;height:auto;word-break: break-word;&#39;&gt;&lt;div align=&quot;center&quot;&gt;&lt;span style=&quot;font-size: 12px; font-family: Arial; white-space: pre-wrap; text-decoration: none; line-height: 14px; color: rgb(0, 0, 0);&quot;&gt;A&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;" style="shape=rect;shadow=0;strokeWidth=2;fillColor=#ff9900;strokeColor=#333333;gradientColor=#FFFFAA;gradientDirection=north;opacity=100.0;html=1;nl2Br=0;verticalAlign=middle;align=center;spacingLeft=0.34;spacingRight=0;whiteSpace=wrap;gliffyId=498;" parent="1" vertex="1">
  388. <mxGeometry x="1367.5625" y="218.75" width="17" height="17" as="geometry" />
  389. </mxCell>
  390. <mxCell id="94" value="&lt;div style=&#39;width: 13.32px;height:auto;word-break: break-word;&#39;&gt;&lt;div align=&quot;center&quot;&gt;&lt;span style=&quot;font-size: 12px; font-family: Arial; white-space: pre-wrap; text-decoration: none; line-height: 14px; color: rgb(0, 0, 0);&quot;&gt;P&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;" style="shape=rect;shadow=0;strokeWidth=2;fillColor=#00ff00;strokeColor=#333333;gradientColor=#AAFFAA;gradientDirection=north;opacity=100.0;html=1;nl2Br=0;verticalAlign=middle;align=center;spacingLeft=0.34;spacingRight=0;whiteSpace=wrap;gliffyId=532;" parent="1" vertex="1">
  391. <mxGeometry x="1208.2425537109375" y="218.75" width="17" height="17" as="geometry" />
  392. </mxCell>
  393. <mxCell id="95" value="&lt;div style=&#39;width: 165.0px;height:auto;word-break: break-word;&#39;&gt;&lt;div align=&quot;center&quot;&gt;&lt;span style=&quot;font-size: 12px; font-family: Arial; white-space: pre-wrap; text-decoration: none; line-height: 14px; color: rgb(0, 0, 0);&quot;&gt;Finalize Contact Cache, &lt;/span&gt;&lt;/div&gt;&lt;div align=&quot;center&quot;&gt;&lt;span style=&quot;font-size: 12px; font-family: Arial; white-space: pre-wrap; text-decoration: none; line-height: 14px; color: rgb(0, 0, 0);&quot;&gt;Contact Removed Callbacks&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;" style="shape=rect;shadow=0;strokeWidth=2;fillColor=#ffffff;strokeColor=#333333;opacity=100.0;html=1;nl2Br=0;verticalAlign=middle;align=center;spacingLeft=3.5;spacingRight=0;whiteSpace=wrap;gliffyId=538;" parent="1" vertex="1">
  394. <mxGeometry x="1381.2425097656248" y="310.4015197753906" width="175" height="60.69696044921875" as="geometry" />
  395. </mxCell>
  396. <mxCell id="96" style="shape=filledEdge;strokeWidth=2;strokeColor=#000000;fillColor=none;startArrow=none;startFill=0;startSize=6;endArrow=block;endFill=1;endSize=6;rounded=0;fixDash=1;gliffyId=540;edgeStyle=orthogonalEdgeStyle;" parent="1" source="86" target="95" edge="1">
  397. <mxGeometry width="100" height="100" relative="1" as="geometry">
  398. <Array as="points">
  399. <mxPoint x="1258" y="341" />
  400. </Array>
  401. </mxGeometry>
  402. </mxCell>
  403. <mxCell id="97" style="shape=filledEdge;strokeWidth=2;strokeColor=#000000;fillColor=none;startArrow=none;startFill=0;startSize=6;endArrow=block;endFill=1;endSize=6;rounded=0;gliffyId=542;exitX=1.0;exitY=0.5;exitPerimeter=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;" parent="1" source="95" target="2HlbSkl1Hx2XcQlONuJN-122" edge="1">
  404. <mxGeometry width="100" height="100" relative="1" as="geometry">
  405. <Array as="points">
  406. <mxPoint x="1590" y="340" />
  407. </Array>
  408. </mxGeometry>
  409. </mxCell>
  410. <mxCell id="98" value="&lt;div style=&#39;width: 13.32px;height:auto;word-break: break-word;&#39;&gt;&lt;div align=&quot;center&quot;&gt;&lt;span style=&quot;font-size: 12px; font-family: Arial; white-space: pre-wrap; text-decoration: none; line-height: 14px; color: rgb(0, 0, 0);&quot;&gt;V&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;" style="shape=rect;shadow=0;strokeWidth=2;fillColor=#00ff00;strokeColor=#333333;gradientColor=#AAFFAA;gradientDirection=north;opacity=100.0;html=1;nl2Br=0;verticalAlign=middle;align=center;spacingLeft=0.34;spacingRight=0;whiteSpace=wrap;gliffyId=543;" parent="1" vertex="1">
  411. <mxGeometry x="1226.9024658203125" y="218.75" width="17" height="17" as="geometry" />
  412. </mxCell>
  413. <mxCell id="104" style="shape=rhombus;perimeter=rhombusPerimeter;shadow=0;strokeWidth=2;fillColor=#FFFFFF;strokeColor=#333333;opacity=100.0;gliffyId=566;" parent="1" vertex="1">
  414. <mxGeometry x="2091.0025537109377" y="326.3" width="34" height="29" as="geometry" />
  415. </mxCell>
  416. <mxCell id="105" style="shape=filledEdge;strokeWidth=2;strokeColor=#000000;fillColor=none;startArrow=none;startFill=0;startSize=6;endArrow=block;endFill=1;endSize=6;rounded=0;gliffyId=568;edgeStyle=orthogonalEdgeStyle;entryX=1;entryY=0.5;entryDx=0;entryDy=0;exitX=0.5;exitY=1;exitDx=0;exitDy=0;" parent="1" source="104" target="57" edge="1">
  417. <mxGeometry width="100" height="100" relative="1" as="geometry">
  418. <mxPoint x="2089.997548828125" y="488.3" as="targetPoint" />
  419. </mxGeometry>
  420. </mxCell>
  421. <mxCell id="106" value="&lt;div style=&#39;width: 64.0px;height:auto;word-break: break-word;&#39;&gt;&lt;div align=&quot;left&quot;&gt;&lt;span style=&quot;font-size: 12px; font-family: Arial; white-space: pre-wrap; text-decoration: none; line-height: 14px; color: rgb(0, 0, 0);&quot;&gt;Not &lt;/span&gt;&lt;/div&gt;&lt;div align=&quot;left&quot;&gt;&lt;span style=&quot;font-size: 12px; font-family: Arial; white-space: pre-wrap; text-decoration: none; line-height: 14px; color: rgb(0, 0, 0);&quot;&gt;Last &lt;/span&gt;&lt;/div&gt;&lt;div align=&quot;left&quot;&gt;&lt;span style=&quot;font-size: 12px; font-family: Arial; white-space: pre-wrap; text-decoration: none; line-height: 14px; color: rgb(0, 0, 0);&quot;&gt;Step&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;" style="text;html=1;nl2Br=0;html=1;nl2Br=0;verticalAlign=middle;align=left;spacingLeft=0.0;spacingRight=0;whiteSpace=wrap;gliffyId=570;" parent="1" vertex="1">
  422. <mxGeometry x="2117.75" y="355.3" width="35.25" height="42" as="geometry" />
  423. </mxCell>
  424. <mxCell id="107" value="&lt;div style=&#39;width: 68.5px;height:auto;word-break: break-word;&#39;&gt;&lt;div align=&quot;left&quot;&gt;&lt;span style=&quot;font-size: 12px; font-family: Arial; white-space: pre-wrap; text-decoration: none; line-height: 14px; color: rgb(0, 0, 0);&quot;&gt;Last Step&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;" style="text;html=1;nl2Br=0;html=1;nl2Br=0;verticalAlign=middle;align=left;spacingLeft=0.0;spacingRight=0;whiteSpace=wrap;gliffyId=571;" parent="1" vertex="1">
  425. <mxGeometry x="2125.0025537109377" y="319.00303955078124" width="71.5" height="14" as="geometry" />
  426. </mxCell>
  427. <mxCell id="110" style="shape=filledEdge;strokeWidth=2;strokeColor=#000000;fillColor=none;startArrow=none;startFill=0;startSize=6;endArrow=block;endFill=1;endSize=6;rounded=0;gliffyId=581;exitX=1.0;exitY=0.5;exitPerimeter=0;entryX=0.0;entryY=0.5;entryPerimeter=0;" parent="1" source="5" target="112" edge="1">
  428. <mxGeometry width="100" height="100" relative="1" as="geometry">
  429. <Array as="points">
  430. <mxPoint x="49.160003662109375" y="414" />
  431. <mxPoint x="82.5" y="413.80303955078125" />
  432. </Array>
  433. </mxGeometry>
  434. </mxCell>
  435. <mxCell id="111" style="group;gliffyId=607;" parent="1" vertex="1">
  436. <mxGeometry x="82.5" y="383.80303955078125" width="100" height="77" as="geometry" />
  437. </mxCell>
  438. <mxCell id="112" value="&lt;div style=&#39;width: 93.0px;height:auto;word-break: break-word;&#39;&gt;&lt;div align=&quot;center&quot;&gt;&lt;span style=&quot;font-size: 12px; font-family: Arial; white-space: pre-wrap; text-decoration: none; line-height: 14px; color: rgb(0, 0, 0);&quot;&gt;Step Listeners &lt;/span&gt;&lt;/div&gt;&lt;div align=&quot;center&quot;&gt;&lt;span style=&quot;font-size: 12px; font-family: Arial; white-space: pre-wrap; text-decoration: none; line-height: 14px; color: rgb(0, 0, 0);&quot;&gt;(in batches)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;" style="shape=rect;shadow=0;strokeWidth=2;fillColor=#fff2cc;strokeColor=#333333;opacity=100.0;html=1;nl2Br=0;verticalAlign=middle;align=center;spacingLeft=2.0;spacingRight=0;whiteSpace=wrap;gliffyId=579;" parent="111" vertex="1">
  439. <mxGeometry width="100" height="60" as="geometry" />
  440. </mxCell>
  441. <mxCell id="113" value="&lt;div style=&#39;width: 13.32px;height:auto;word-break: break-word;&#39;&gt;&lt;div align=&quot;center&quot;&gt;&lt;span style=&quot;font-size: 12px; font-family: Arial; white-space: pre-wrap; text-decoration: none; line-height: 14px; color: rgb(0, 0, 0);&quot;&gt;P&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;" style="shape=rect;shadow=0;strokeWidth=2;fillColor=#00ff00;strokeColor=#333333;gradientColor=#AAFFAA;gradientDirection=north;opacity=100.0;html=1;nl2Br=0;verticalAlign=middle;align=center;spacingLeft=0.34;spacingRight=0;whiteSpace=wrap;gliffyId=583;" parent="111" vertex="1">
  442. <mxGeometry y="60" width="17" height="17" as="geometry" />
  443. </mxCell>
  444. <mxCell id="114" value="&lt;div style=&#39;width: 13.32px;height:auto;word-break: break-word;&#39;&gt;&lt;div align=&quot;center&quot;&gt;&lt;span style=&quot;font-size: 12px; font-family: Arial; white-space: pre-wrap; text-decoration: none; line-height: 14px; color: rgb(0, 0, 0);&quot;&gt;V&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;" style="shape=rect;shadow=0;strokeWidth=2;fillColor=#ff0000;strokeColor=#333333;gradientColor=#FFAAAA;gradientDirection=north;opacity=100.0;html=1;nl2Br=0;verticalAlign=middle;align=center;spacingLeft=0.34;spacingRight=0;whiteSpace=wrap;gliffyId=585;" parent="111" vertex="1">
  445. <mxGeometry x="18.65999984741211" y="60" width="17" height="17" as="geometry" />
  446. </mxCell>
  447. <mxCell id="115" value="&lt;div style=&#39;width: 13.32px;height:auto;word-break: break-word;&#39;&gt;&lt;div align=&quot;center&quot;&gt;&lt;span style=&quot;font-size: 12px; font-family: Arial; white-space: pre-wrap; text-decoration: none; line-height: 14px; color: rgb(0, 0, 0);&quot;&gt;A&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;" style="shape=rect;shadow=0;strokeWidth=2;fillColor=#ff9900;strokeColor=#333333;gradientColor=#FFFFAA;gradientDirection=north;opacity=100.0;html=1;nl2Br=0;verticalAlign=middle;align=center;spacingLeft=0.34;spacingRight=0;whiteSpace=wrap;gliffyId=587;" parent="111" vertex="1">
  448. <mxGeometry x="36.31999969482422" y="60" width="17" height="17" as="geometry" />
  449. </mxCell>
  450. <mxCell id="116" value="&lt;div style=&#39;width: 93.0px;height:auto;word-break: break-word;&#39;&gt;&lt;div align=&quot;center&quot;&gt;&lt;span style=&quot;font-size: 12px; font-family: Arial; white-space: pre-wrap; text-decoration: none; line-height: 14px; color: rgb(0, 0, 0);&quot;&gt;Integrate &amp;amp; Clamp Velocities (in batches)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;" style="shape=rect;shadow=0;strokeWidth=2;fillColor=#fff2cc;strokeColor=#333333;opacity=100.0;html=1;nl2Br=0;verticalAlign=middle;align=center;spacingLeft=2.0;spacingRight=0;whiteSpace=wrap;gliffyId=609;" parent="1" vertex="1">
  451. <mxGeometry x="966" y="144.25" width="100" height="75" as="geometry" />
  452. </mxCell>
  453. <mxCell id="117" value="&lt;div style=&#39;width: 93.0px;height:auto;word-break: break-word;&#39;&gt;&lt;div align=&quot;center&quot;&gt;&lt;span style=&quot;font-size: 12px; font-family: Arial; white-space: pre-wrap; text-decoration: none; line-height: 14px; color: rgb(0, 0, 0);&quot;&gt;Post Integrate&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;" style="shape=rect;shadow=0;strokeWidth=2;fillColor=#ffffff;strokeColor=#333333;opacity=100.0;html=1;nl2Br=0;verticalAlign=middle;align=center;spacingLeft=2.0;spacingRight=0;whiteSpace=wrap;gliffyId=611;" parent="1" vertex="1">
  454. <mxGeometry x="1084.2325439453125" y="143.25" width="100" height="75" as="geometry" />
  455. </mxCell>
  456. <mxCell id="118" style="shape=filledEdge;strokeWidth=2;strokeColor=#000000;fillColor=none;startArrow=none;startFill=0;startSize=6;endArrow=block;endFill=1;endSize=6;rounded=0;gliffyId=615;exitX=1.0;exitY=0.5;exitPerimeter=0;entryX=0.0;entryY=0.5;entryPerimeter=0;" parent="1" source="116" target="117" edge="1">
  457. <mxGeometry width="100" height="100" relative="1" as="geometry">
  458. <Array as="points">
  459. <mxPoint x="1066" y="181.75" />
  460. <mxPoint x="1084.2325439453125" y="180.75" />
  461. </Array>
  462. </mxGeometry>
  463. </mxCell>
  464. <mxCell id="119" style="shape=filledEdge;strokeWidth=2;strokeColor=#000000;fillColor=none;startArrow=none;startFill=0;startSize=6;endArrow=block;endFill=1;endSize=6;rounded=0;gliffyId=616;edgeStyle=orthogonalEdgeStyle;" parent="1" source="9" target="116" edge="1">
  465. <mxGeometry width="100" height="100" relative="1" as="geometry">
  466. <Array as="points">
  467. <mxPoint x="948" y="181.75" />
  468. <mxPoint x="966" y="181.75" />
  469. </Array>
  470. </mxGeometry>
  471. </mxCell>
  472. <mxCell id="120" value="&lt;div style=&#39;width: 147.0px;height:auto;word-break: break-word;&#39;&gt;&lt;div align=&quot;center&quot;&gt;&lt;span style=&quot;font-size: 12px; font-family: Arial; white-space: pre-wrap; text-decoration: none; line-height: 14px; color: rgb(0, 0, 0);&quot;&gt;If no CCD bodies&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;" style="text;html=1;nl2Br=0;html=1;nl2Br=0;verticalAlign=middle;align=center;spacingLeft=0.0;spacingRight=0;whiteSpace=wrap;gliffyId=617;" parent="1" vertex="1">
  473. <mxGeometry x="1108.2425537109375" y="108.75" width="150" height="14" as="geometry" />
  474. </mxCell>
  475. <mxCell id="121" style="shape=filledEdge;strokeWidth=2;strokeColor=#000000;fillColor=none;startArrow=none;startFill=0;startSize=6;endArrow=block;endFill=1;endSize=6;rounded=0;dashed=1;fixDash=1;dashPattern=2.0 2.0;gliffyId=618;edgeStyle=orthogonalEdgeStyle;" parent="1" source="66" target="71" edge="1">
  476. <mxGeometry width="100" height="100" relative="1" as="geometry">
  477. <Array as="points">
  478. <mxPoint x="459.5240783691406" y="361.4263916015625" />
  479. <mxPoint x="483.5240783691406" y="361.4263916015625" />
  480. <mxPoint x="483.5240783691406" y="490.8939208984375" />
  481. <mxPoint x="459.5240783691406" y="490.8939208984375" />
  482. </Array>
  483. </mxGeometry>
  484. </mxCell>
  485. <mxCell id="122" value="&lt;div style=&#39;width: 67.0px;height:auto;word-break: break-word;&#39;&gt;&lt;div align=&quot;left&quot;&gt;&lt;span style=&quot;font-size: 12px; font-family: Arial; white-space: pre-wrap; text-decoration: none; line-height: 14px; color: rgb(0, 0, 0);&quot;&gt;Starts the final job&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;" style="text;html=1;nl2Br=0;html=1;nl2Br=0;verticalAlign=middle;align=left;spacingLeft=0.0;spacingRight=0;whiteSpace=wrap;gliffyId=619;" parent="1" vertex="1">
  486. <mxGeometry x="427" y="381.94696044921875" width="70" height="28" as="geometry" />
  487. </mxCell>
  488. <mxCell id="2HlbSkl1Hx2XcQlONuJN-122" value="&lt;div style=&quot;width: 93.0px;height:auto;word-break: break-word;&quot;&gt;&lt;div align=&quot;center&quot;&gt;&lt;font face=&quot;Arial&quot; color=&quot;#000000&quot;&gt;&lt;span style=&quot;white-space-collapse: preserve;&quot;&gt;Soft Body Prepare&lt;/span&gt;&lt;/font&gt;&lt;/div&gt;&lt;/div&gt;" style="shape=rect;shadow=0;strokeWidth=2;fillColor=#ffffff;strokeColor=#333333;opacity=100.0;html=1;nl2Br=0;verticalAlign=middle;align=center;spacingLeft=2.0;spacingRight=0;whiteSpace=wrap;gliffyId=48;" parent="1" vertex="1">
  489. <mxGeometry x="1600" y="310.4" width="100" height="59.6" as="geometry" />
  490. </mxCell>
  491. <mxCell id="2HlbSkl1Hx2XcQlONuJN-123" value="&lt;div style=&quot;width: 93.0px;height:auto;word-break: break-word;&quot;&gt;&lt;div&gt;&lt;font face=&quot;Arial&quot; color=&quot;#000000&quot;&gt;&lt;span style=&quot;white-space-collapse: preserve;&quot;&gt;Soft Body &lt;/span&gt;&lt;/font&gt;&lt;span style=&quot;white-space-collapse: preserve; color: rgb(0, 0, 0); font-family: Arial; background-color: initial;&quot;&gt;Collide&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;" style="shape=rect;shadow=0;strokeWidth=2;fillColor=#FFF2CC;strokeColor=#333333;opacity=100.0;html=1;nl2Br=0;verticalAlign=middle;align=center;spacingLeft=2.0;spacingRight=0;whiteSpace=wrap;gliffyId=48;" parent="1" vertex="1">
  492. <mxGeometry x="1720" y="310.4" width="110" height="59.6" as="geometry" />
  493. </mxCell>
  494. <mxCell id="2HlbSkl1Hx2XcQlONuJN-124" value="&lt;div style=&quot;width: 93.0px;height:auto;word-break: break-word;&quot;&gt;&lt;div align=&quot;center&quot;&gt;&lt;font face=&quot;Arial&quot; color=&quot;#000000&quot;&gt;&lt;span style=&quot;white-space-collapse: preserve;&quot;&gt;Soft Body Simulate&lt;/span&gt;&lt;/font&gt;&lt;/div&gt;&lt;/div&gt;" style="shape=rect;shadow=0;strokeWidth=2;fillColor=#FFF2CC;strokeColor=#333333;opacity=100.0;html=1;nl2Br=0;verticalAlign=middle;align=center;spacingLeft=2.0;spacingRight=0;whiteSpace=wrap;gliffyId=48;" parent="1" vertex="1">
  495. <mxGeometry x="1850" y="310.4" width="100" height="59.6" as="geometry" />
  496. </mxCell>
  497. <mxCell id="2HlbSkl1Hx2XcQlONuJN-125" value="&lt;div style=&quot;width: 93.0px;height:auto;word-break: break-word;&quot;&gt;&lt;div align=&quot;center&quot;&gt;&lt;font face=&quot;Arial&quot; color=&quot;#000000&quot;&gt;&lt;span style=&quot;white-space-collapse: preserve;&quot;&gt;Soft Body Finalize&lt;/span&gt;&lt;/font&gt;&lt;/div&gt;&lt;/div&gt;" style="shape=rect;shadow=0;strokeWidth=2;fillColor=#ffffff;strokeColor=#333333;opacity=100.0;html=1;nl2Br=0;verticalAlign=middle;align=center;spacingLeft=2.0;spacingRight=0;whiteSpace=wrap;gliffyId=48;" parent="1" vertex="1">
  498. <mxGeometry x="1970" y="310.4" width="100" height="59.6" as="geometry" />
  499. </mxCell>
  500. <mxCell id="2HlbSkl1Hx2XcQlONuJN-127" value="" style="endArrow=block;html=1;rounded=0;exitX=1;exitY=0.5;exitDx=0;exitDy=0;strokeWidth=2;strokeColor=#000000;endFill=1;" parent="1" source="2HlbSkl1Hx2XcQlONuJN-122" target="2HlbSkl1Hx2XcQlONuJN-123" edge="1">
  501. <mxGeometry width="50" height="50" relative="1" as="geometry">
  502. <mxPoint x="2230" y="277.50000000000006" as="sourcePoint" />
  503. <mxPoint x="2252.25" y="277.50000000000006" as="targetPoint" />
  504. </mxGeometry>
  505. </mxCell>
  506. <mxCell id="2HlbSkl1Hx2XcQlONuJN-128" value="" style="endArrow=block;html=1;rounded=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;exitX=1;exitY=0.5;exitDx=0;exitDy=0;strokeWidth=2;strokeColor=#000000;endFill=1;" parent="1" source="2HlbSkl1Hx2XcQlONuJN-123" target="2HlbSkl1Hx2XcQlONuJN-124" edge="1">
  507. <mxGeometry width="50" height="50" relative="1" as="geometry">
  508. <mxPoint x="1708" y="350" as="sourcePoint" />
  509. <mxPoint x="1730" y="350" as="targetPoint" />
  510. </mxGeometry>
  511. </mxCell>
  512. <mxCell id="2HlbSkl1Hx2XcQlONuJN-129" value="" style="endArrow=block;html=1;rounded=0;exitX=1;exitY=0.5;exitDx=0;exitDy=0;strokeWidth=2;strokeColor=#000000;endFill=1;" parent="1" source="2HlbSkl1Hx2XcQlONuJN-124" target="2HlbSkl1Hx2XcQlONuJN-125" edge="1">
  513. <mxGeometry width="50" height="50" relative="1" as="geometry">
  514. <mxPoint x="1718" y="360" as="sourcePoint" />
  515. <mxPoint x="1740" y="360" as="targetPoint" />
  516. </mxGeometry>
  517. </mxCell>
  518. <mxCell id="2HlbSkl1Hx2XcQlONuJN-130" value="" style="endArrow=block;html=1;rounded=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;exitX=1;exitY=0.5;exitDx=0;exitDy=0;strokeWidth=2;strokeColor=#000000;endFill=1;" parent="1" source="2HlbSkl1Hx2XcQlONuJN-125" target="104" edge="1">
  519. <mxGeometry width="50" height="50" relative="1" as="geometry">
  520. <mxPoint x="1728" y="370" as="sourcePoint" />
  521. <mxPoint x="1750" y="370" as="targetPoint" />
  522. </mxGeometry>
  523. </mxCell>
  524. <mxCell id="2HlbSkl1Hx2XcQlONuJN-134" value="&lt;div style=&#39;width: 13.32px;height:auto;word-break: break-word;&#39;&gt;&lt;div align=&quot;center&quot;&gt;&lt;span style=&quot;font-size: 12px; font-family: Arial; white-space: pre-wrap; text-decoration: none; line-height: 14px; color: rgb(0, 0, 0);&quot;&gt;P&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;" style="shape=rect;shadow=0;strokeWidth=2;fillColor=#00ff00;strokeColor=#333333;gradientColor=#AAFFAA;gradientDirection=north;opacity=100.0;html=1;nl2Br=0;verticalAlign=middle;align=center;spacingLeft=0.34;spacingRight=0;whiteSpace=wrap;gliffyId=191;" parent="1" vertex="1">
  525. <mxGeometry x="1600" y="371.1" width="17" height="17" as="geometry" />
  526. </mxCell>
  527. <mxCell id="2HlbSkl1Hx2XcQlONuJN-136" value="&lt;div style=&#39;width: 13.32px;height:auto;word-break: break-word;&#39;&gt;&lt;div align=&quot;center&quot;&gt;&lt;span style=&quot;font-size: 12px; font-family: Arial; white-space: pre-wrap; text-decoration: none; line-height: 14px; color: rgb(0, 0, 0);&quot;&gt;P&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;" style="shape=rect;shadow=0;strokeWidth=2;fillColor=#ff0000;strokeColor=#333333;gradientColor=#FFAAAA;gradientDirection=north;opacity=100.0;html=1;nl2Br=0;verticalAlign=middle;align=center;spacingLeft=0.34;spacingRight=0;whiteSpace=wrap;gliffyId=200;" parent="1" vertex="1">
  528. <mxGeometry x="1970" y="370" width="17" height="17" as="geometry" />
  529. </mxCell>
  530. <mxCell id="2HlbSkl1Hx2XcQlONuJN-137" value="&lt;div style=&#39;width: 13.32px;height:auto;word-break: break-word;&#39;&gt;&lt;div align=&quot;center&quot;&gt;&lt;span style=&quot;font-size: 12px; font-family: Arial; white-space: pre-wrap; text-decoration: none; line-height: 14px; color: rgb(0, 0, 0);&quot;&gt;V&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;" style="shape=rect;shadow=0;strokeWidth=2;fillColor=#ff0000;strokeColor=#333333;gradientColor=#FFAAAA;gradientDirection=north;opacity=100.0;html=1;nl2Br=0;verticalAlign=middle;align=center;spacingLeft=0.34;spacingRight=0;whiteSpace=wrap;gliffyId=198;" parent="1" vertex="1">
  531. <mxGeometry x="1987" y="370" width="17" height="17" as="geometry" />
  532. </mxCell>
  533. <mxCell id="2HlbSkl1Hx2XcQlONuJN-138" value="&lt;div style=&#39;width: 13.32px;height:auto;word-break: break-word;&#39;&gt;&lt;div align=&quot;center&quot;&gt;&lt;span style=&quot;font-size: 12px; font-family: Arial; white-space: pre-wrap; text-decoration: none; line-height: 14px; color: rgb(0, 0, 0);&quot;&gt;P&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;" style="shape=rect;shadow=0;strokeWidth=2;fillColor=#00ff00;strokeColor=#333333;gradientColor=#AAFFAA;gradientDirection=north;opacity=100.0;html=1;nl2Br=0;verticalAlign=middle;align=center;spacingLeft=0.34;spacingRight=0;whiteSpace=wrap;gliffyId=191;" parent="1" vertex="1">
  534. <mxGeometry x="1720" y="370" width="17" height="17" as="geometry" />
  535. </mxCell>
  536. <mxCell id="2HlbSkl1Hx2XcQlONuJN-139" value="&lt;div style=&#39;width: 13.32px;height:auto;word-break: break-word;&#39;&gt;&lt;div align=&quot;center&quot;&gt;&lt;span style=&quot;font-size: 12px; font-family: Arial; white-space: pre-wrap; text-decoration: none; line-height: 14px; color: rgb(0, 0, 0);&quot;&gt;V&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;" style="shape=rect;shadow=0;strokeWidth=2;fillColor=#00ff00;strokeColor=#333333;gradientColor=#AAFFAA;gradientDirection=north;opacity=100.0;html=1;nl2Br=0;verticalAlign=middle;align=center;spacingLeft=0.34;spacingRight=0;whiteSpace=wrap;gliffyId=194;" parent="1" vertex="1">
  537. <mxGeometry x="1737.6599999999999" y="370" width="17" height="17" as="geometry" />
  538. </mxCell>
  539. <mxCell id="2HlbSkl1Hx2XcQlONuJN-140" value="&lt;div style=&#39;width: 13.32px;height:auto;word-break: break-word;&#39;&gt;&lt;div align=&quot;center&quot;&gt;&lt;span style=&quot;font-size: 12px; font-family: Arial; white-space: pre-wrap; text-decoration: none; line-height: 14px; color: rgb(0, 0, 0);&quot;&gt;V&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;" style="shape=rect;shadow=0;strokeWidth=2;fillColor=#ff0000;strokeColor=#333333;gradientColor=#FFAAAA;gradientDirection=north;opacity=100.0;html=1;nl2Br=0;verticalAlign=middle;align=center;spacingLeft=0.34;spacingRight=0;whiteSpace=wrap;gliffyId=198;" parent="1" vertex="1">
  540. <mxGeometry x="1850" y="371.1" width="17" height="17" as="geometry" />
  541. </mxCell>
  542. <mxCell id="1HMQW9uxuVFfJUHc01B5-122" value="&lt;div style=&#39;width: 13.32px;height:auto;word-break: break-word;&#39;&gt;&lt;div align=&quot;center&quot;&gt;&lt;span style=&quot;font-size: 12px; font-family: Arial; white-space: pre-wrap; text-decoration: none; line-height: 14px; color: rgb(0, 0, 0);&quot;&gt;A&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;" style="shape=rect;shadow=0;strokeWidth=2;fillColor=#ff9900;strokeColor=#333333;gradientColor=#FFFFAA;gradientDirection=north;opacity=100.0;html=1;nl2Br=0;verticalAlign=middle;align=center;spacingLeft=0.34;spacingRight=0;whiteSpace=wrap;gliffyId=438;" vertex="1" parent="1">
  543. <mxGeometry x="2004.0040594482423" y="370" width="17" height="17" as="geometry" />
  544. </mxCell>
  545. <mxCell id="1HMQW9uxuVFfJUHc01B5-123" value="&lt;div style=&#39;width: 13.32px;height:auto;word-break: break-word;&#39;&gt;&lt;div align=&quot;center&quot;&gt;&lt;span style=&quot;font-size: 12px; font-family: Arial; white-space: pre-wrap; text-decoration: none; line-height: 14px; color: rgb(0, 0, 0);&quot;&gt;A&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;" style="shape=rect;shadow=0;strokeWidth=2;fillColor=#ff0000;strokeColor=#333333;gradientColor=#FFAAAA;gradientDirection=north;opacity=100.0;html=1;nl2Br=0;verticalAlign=middle;align=center;spacingLeft=0.34;spacingRight=0;whiteSpace=wrap;gliffyId=341;" vertex="1" parent="1">
  546. <mxGeometry x="2021.0040594482423" y="370" width="17" height="17" as="geometry" />
  547. </mxCell>
  548. </root>
  549. </mxGraphModel>
  550. </diagram>
  551. </mxfile>